PluginProbe
Elementor Website Builder – more than just a page builder / 3.22.2
Elementor Website Builder – more than just a page builder v3.22.2
4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 All 454 releases
← All changes | assets/js/ai-layout.js +12972 -8773 4.3.0 → 3.22.2 View file →
@@ -1,8943 +1,13142 @@
1 -(function(_wordpress_i18n, react, react_dom, _elementor_ui, _elementor_icons) {
1 +/*! elementor - v3.22.0 - 24-06-2024 */
2 +/******/ (() => { // webpackBootstrap
3 +/******/ var __webpack_modules__ = ({
2 4
3 -//#region \0rolldown/runtime.js
4 - var __create = Object.create;
5 - var __defProp = Object.defineProperty;
6 - var __name = (target, value) => __defProp(target, "name", {
7 - value,
8 - configurable: true
9 - });
10 - var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11 - var __getOwnPropNames = Object.getOwnPropertyNames;
12 - var __getProtoOf = Object.getPrototypeOf;
13 - var __hasOwnProp = Object.prototype.hasOwnProperty;
14 - var __esmMin = (fn, res, err) => () => {
15 - if (err) throw err[0];
16 - try {
17 - return fn && (res = fn(fn = 0)), res;
18 - } catch (e) {
19 - throw err = [e], e;
20 - }
21 - };
22 - var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
23 - var __exportAll = (all, no_symbols) => {
24 - let target = {};
25 - for (var name in all) {
26 - __defProp(target, name, {
27 - get: all[name],
28 - enumerable: true
29 - });
30 - }
31 - if (!no_symbols) {
32 - __defProp(target, Symbol.toStringTag, { value: "Module" });
33 - }
34 - return target;
35 - };
36 - var __copyProps = (to, from, except, desc) => {
37 - if (from && typeof from === "object" || typeof from === "function") {
38 - for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
39 - key = keys[i];
40 - if (!__hasOwnProp.call(to, key) && key !== except) {
41 - __defProp(to, key, {
42 - get: ((k) => from[k]).bind(null, key),
43 - enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
44 - });
45 - }
46 - }
47 - }
48 - return to;
49 - };
50 - var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
51 - value: mod,
52 - enumerable: true
53 - }) : target, mod));
54 - var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
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__) => {
55 10
56 -//#endregion
57 -react = __toESM(react);
58 -react_dom = __toESM(react_dom);
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");
59 17
60 -//#region node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
61 - function asyncGeneratorStep$1(n, t, e, r, o, a, c) {
62 - try {
63 - var i = n[a](c);
64 - var u = i.value;
65 - } catch (n) {
66 - e(n);
67 - return;
68 - }
69 - i.done ? t(u) : Promise.resolve(u).then(r, o);
70 - }
71 - function _asyncToGenerator$1(n) {
72 - return function() {
73 - var t = this;
74 - var e = arguments;
75 - return new Promise(function(r, o) {
76 - var a = n.apply(t, e);
77 - function _next(n) {
78 - asyncGeneratorStep$1(a, r, o, _next, _throw, "next", n);
79 - }
80 - function _throw(n) {
81 - asyncGeneratorStep$1(a, r, o, _next, _throw, "throw", n);
82 - }
83 - _next(void 0);
84 - });
85 - };
86 - }
87 - var init_asyncToGenerator$1 = __esmMin((() => {
88 - __name(asyncGeneratorStep$1, "asyncGeneratorStep");
89 - __name(_asyncToGenerator$1, "_asyncToGenerator");
90 - }));
91 18
92 -//#endregion
93 -//#region node_modules/@babel/runtime/helpers/esm/classCallCheck.js
94 - function _classCallCheck(a, n) {
95 - if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function");
96 - }
97 - var init_classCallCheck = __esmMin((() => {}));
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
98 20
99 -//#endregion
100 -//#region node_modules/@babel/runtime/helpers/esm/typeof.js
101 - function _typeof$1(o) {
102 - "@babel/helpers - typeof";
103 - return _typeof$1 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
104 - return typeof o;
105 - } : function(o) {
106 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
107 - }, _typeof$1(o);
108 - }
109 - var init_typeof$1 = __esmMin((() => {
110 - __name(_typeof$1, "_typeof");
111 - }));
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 +);
112 30
113 -//#endregion
114 -//#region node_modules/@babel/runtime/helpers/esm/toPrimitive.js
115 - function toPrimitive$1(t, r) {
116 - if ("object" != _typeof$1(t) || !t) return t;
117 - var e = t[Symbol.toPrimitive];
118 - if (void 0 !== e) {
119 - var i = e.call(t, r || "default");
120 - if ("object" != _typeof$1(i)) return i;
121 - throw new TypeError("@@toPrimitive must return a primitive value.");
122 - }
123 - return ("string" === r ? String : Number)(t);
124 - }
125 - var init_toPrimitive$1 = __esmMin((() => {
126 - init_typeof$1();
127 - __name(toPrimitive$1, "toPrimitive");
128 - }));
129 31
130 -//#endregion
131 -//#region node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
132 - function toPropertyKey$1(t) {
133 - var i = toPrimitive$1(t, "string");
134 - return "symbol" == _typeof$1(i) ? i : i + "";
135 - }
136 - var init_toPropertyKey$1 = __esmMin((() => {
137 - init_typeof$1();
138 - init_toPrimitive$1();
139 - __name(toPropertyKey$1, "toPropertyKey");
140 - }));
141 32
142 -//#endregion
143 -//#region node_modules/@babel/runtime/helpers/esm/createClass.js
144 - function _defineProperties(e, r) {
145 - for (var t = 0; t < r.length; t++) {
146 - var o = r[t];
147 - o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, toPropertyKey$1(o.key), o);
148 - }
149 - }
150 - function _createClass(e, r, t) {
151 - return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
152 - }
153 - var init_createClass = __esmMin((() => {
154 - init_toPropertyKey$1();
155 - }));
156 33
157 -//#endregion
158 -//#region node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
159 -init_asyncToGenerator$1();
160 -init_classCallCheck();
161 -init_createClass();
162 - function _assertThisInitialized(e) {
163 - if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
164 - return e;
165 - }
34 +/***/ }),
166 35
167 -//#endregion
168 -//#region node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
169 - init_typeof$1();
170 - function _possibleConstructorReturn(t, e) {
171 - if (e && ("object" == _typeof$1(e) || "function" == typeof e)) return e;
172 - if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined");
173 - return _assertThisInitialized(t);
174 - }
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__) => {
175 41
176 -//#endregion
177 -//#region node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
178 - function _getPrototypeOf(t) {
179 - return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
180 - return t.__proto__ || Object.getPrototypeOf(t);
181 - }, _getPrototypeOf(t);
182 - }
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 +}
183 54
184 -//#endregion
185 -//#region node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
186 - function _setPrototypeOf(t, e) {
187 - return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(t, e) {
188 - return t.__proto__ = e, t;
189 - }, _setPrototypeOf(t, e);
190 - }
191 55
192 -//#endregion
193 -//#region node_modules/@babel/runtime/helpers/esm/inherits.js
194 - function _inherits(t, e) {
195 - if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function");
196 - t.prototype = Object.create(e && e.prototype, { constructor: {
197 - value: t,
198 - writable: !0,
199 - configurable: !0
200 - } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e);
201 - }
202 56
203 -//#endregion
204 -//#region node_modules/@babel/runtime/helpers/esm/defineProperty.js
205 - function _defineProperty$1(e, r, t) {
206 - return (r = toPropertyKey$1(r)) in e ? Object.defineProperty(e, r, {
207 - value: t,
208 - enumerable: !0,
209 - configurable: !0,
210 - writable: !0
211 - }) : e[r] = t, e;
212 - }
213 - var init_defineProperty$1 = __esmMin((() => {
214 - init_toPropertyKey$1();
215 - __name(_defineProperty$1, "_defineProperty");
216 - }));
217 57
218 -//#endregion
219 -//#region node_modules/@babel/runtime/helpers/OverloadYield.js
220 - var require_OverloadYield = /* @__PURE__ */ __commonJSMin(((exports, module) => {
221 - function _OverloadYield(e, d) {
222 - this.v = e, this.k = d;
223 - }
224 - module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports;
225 - }));
58 +/***/ }),
226 59
227 -//#endregion
228 -//#region node_modules/@babel/runtime/helpers/regeneratorDefine.js
229 - var require_regeneratorDefine = /* @__PURE__ */ __commonJSMin(((exports, module) => {
230 - function _regeneratorDefine(e, r, n, t) {
231 - var i = Object.defineProperty;
232 - try {
233 - i({}, "", {});
234 - } catch (e) {
235 - i = 0;
236 - }
237 - module.exports = _regeneratorDefine = function regeneratorDefine(e, r, n, t) {
238 - function o(r, n) {
239 - _regeneratorDefine(e, r, function(e) {
240 - return this._invoke(r, n, e);
241 - });
242 - }
243 - r ? i ? i(e, r, {
244 - value: n,
245 - enumerable: !t,
246 - configurable: !t,
247 - writable: !t
248 - }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2));
249 - }, module.exports.__esModule = true, module.exports["default"] = module.exports, _regeneratorDefine(e, r, n, t);
250 - }
251 - module.exports = _regeneratorDefine, module.exports.__esModule = true, module.exports["default"] = module.exports;
252 - }));
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__) => {
253 65
254 -//#endregion
255 -//#region node_modules/@babel/runtime/helpers/regenerator.js
256 - var require_regenerator$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
257 - var regeneratorDefine = require_regeneratorDefine();
258 - function _regenerator() {
259 - /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
260 - var e;
261 - var t;
262 - var r = "function" == typeof Symbol ? Symbol : {};
263 - var n = r.iterator || "@@iterator";
264 - var o = r.toStringTag || "@@toStringTag";
265 - function i(r, n, o, i) {
266 - var c = n && n.prototype instanceof Generator ? n : Generator;
267 - var u = Object.create(c.prototype);
268 - return regeneratorDefine(u, "_invoke", function(r, n, o) {
269 - var i;
270 - var c;
271 - var u;
272 - var f = 0;
273 - var p = o || [];
274 - var y = !1;
275 - var G = {
276 - p: 0,
277 - n: 0,
278 - v: e,
279 - a: d,
280 - f: d.bind(e, 4),
281 - d: function d(t, r) {
282 - return i = t, c = 0, u = e, G.n = r, a;
283 - }
284 - };
285 - function d(r, n) {
286 - for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) {
287 - var o;
288 - var i = p[t];
289 - var d = G.p;
290 - var l = i[2];
291 - r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0));
292 - }
293 - if (o || r > 1) return a;
294 - throw y = !0, n;
295 - }
296 - return function(o, p, l) {
297 - if (f > 1) throw TypeError("Generator is already running");
298 - for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) {
299 - i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u);
300 - try {
301 - if (f = 2, i) {
302 - if (c || (o = "next"), t = i[o]) {
303 - if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object");
304 - if (!t.done) return t;
305 - u = t.value, c < 2 && (c = 0);
306 - } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1);
307 - i = e;
308 - } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break;
309 - } catch (t) {
310 - i = e, c = 1, u = t;
311 - } finally {
312 - f = 1;
313 - }
314 - }
315 - return {
316 - value: t,
317 - done: y
318 - };
319 - };
320 - }(r, o, i), !0), u;
321 - }
322 - var a = {};
323 - function Generator() {}
324 - function GeneratorFunction() {}
325 - function GeneratorFunctionPrototype() {}
326 - t = Object.getPrototypeOf;
327 - var c = [][n] ? t(t([][n]())) : (regeneratorDefine(t = {}, n, function() {
328 - return this;
329 - }), t);
330 - var u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c);
331 - function f(e) {
332 - return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, regeneratorDefine(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e;
333 - }
334 - return GeneratorFunction.prototype = GeneratorFunctionPrototype, regeneratorDefine(u, "constructor", GeneratorFunctionPrototype), regeneratorDefine(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", regeneratorDefine(GeneratorFunctionPrototype, o, "GeneratorFunction"), regeneratorDefine(u), regeneratorDefine(u, o, "Generator"), regeneratorDefine(u, n, function() {
335 - return this;
336 - }), regeneratorDefine(u, "toString", function() {
337 - return "[object Generator]";
338 - }), (module.exports = _regenerator = function _regenerator() {
339 - return {
340 - w: i,
341 - m: f
342 - };
343 - }, module.exports.__esModule = true, module.exports["default"] = module.exports)();
344 - }
345 - module.exports = _regenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
346 - }));
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++);
347 76
348 -//#endregion
349 -//#region node_modules/@babel/runtime/helpers/regeneratorAsyncIterator.js
350 - var require_regeneratorAsyncIterator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
351 - var OverloadYield = require_OverloadYield();
352 - var regeneratorDefine = require_regeneratorDefine();
353 - function AsyncIterator(t, e) {
354 - function n(r, o, i, f) {
355 - try {
356 - var c = t[r](o);
357 - var u = c.value;
358 - return u instanceof OverloadYield ? e.resolve(u.v).then(function(t) {
359 - n("next", t, i, f);
360 - }, function(t) {
361 - n("throw", t, i, f);
362 - }) : e.resolve(u).then(function(t) {
363 - c.value = t, i(c);
364 - }, function(t) {
365 - return n("throw", t, i, f);
366 - });
367 - } catch (t) {
368 - f(t);
369 - }
370 - }
371 - var r;
372 - this.next || (regeneratorDefine(AsyncIterator.prototype), regeneratorDefine(AsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function() {
373 - return this;
374 - })), regeneratorDefine(this, "_invoke", function(t, o, i) {
375 - function f() {
376 - return new e(function(e, r) {
377 - n(t, i, e, r);
378 - });
379 - }
380 - return r = r ? r.then(f, f) : f();
381 - }, !0);
382 - }
383 - module.exports = AsyncIterator, module.exports.__esModule = true, module.exports["default"] = module.exports;
384 - }));
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;
385 86
386 -//#endregion
387 -//#region node_modules/@babel/runtime/helpers/regeneratorAsyncGen.js
388 - var require_regeneratorAsyncGen = /* @__PURE__ */ __commonJSMin(((exports, module) => {
389 - var regenerator = require_regenerator$1();
390 - var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
391 - function _regeneratorAsyncGen(r, e, t, o, n) {
392 - return new regeneratorAsyncIterator(regenerator().w(r, e, t, o), n || Promise);
393 - }
394 - module.exports = _regeneratorAsyncGen, module.exports.__esModule = true, module.exports["default"] = module.exports;
395 - }));
87 + default:
88 + f += e.charAt(l);
89 + }
396 90
397 -//#endregion
398 -//#region node_modules/@babel/runtime/helpers/regeneratorAsync.js
399 - var require_regeneratorAsync = /* @__PURE__ */ __commonJSMin(((exports, module) => {
400 - var regeneratorAsyncGen = require_regeneratorAsyncGen();
401 - function _regeneratorAsync(n, e, r, t, o) {
402 - var a = regeneratorAsyncGen(n, e, r, t, o);
403 - return a.next().then(function(n) {
404 - return n.done ? n.value : a.next();
405 - });
406 - }
407 - module.exports = _regeneratorAsync, module.exports.__esModule = true, module.exports["default"] = module.exports;
408 - }));
91 + g = 59;
92 + }
409 93
410 -//#endregion
411 -//#region node_modules/@babel/runtime/helpers/regeneratorKeys.js
412 - var require_regeneratorKeys = /* @__PURE__ */ __commonJSMin(((exports, module) => {
413 - function _regeneratorKeys(e) {
414 - var n = Object(e);
415 - var r = [];
416 - for (var t in n) r.unshift(t);
417 - return function e() {
418 - for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e;
419 - return e.done = !0, e;
420 - };
421 - }
422 - module.exports = _regeneratorKeys, module.exports.__esModule = true, module.exports["default"] = module.exports;
423 - }));
94 + switch (g) {
95 + case 123:
96 + f = f.trim();
97 + q = f.charCodeAt(0);
98 + k = 1;
424 99
425 -//#endregion
426 -//#region node_modules/@babel/runtime/helpers/typeof.js
427 - var require_typeof = /* @__PURE__ */ __commonJSMin(((exports, module) => {
428 - function _typeof(o) {
429 - "@babel/helpers - typeof";
430 - return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
431 - return typeof o;
432 - } : function(o) {
433 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
434 - }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
435 - }
436 - module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
437 - }));
100 + for (t = ++l; l < B;) {
101 + switch (g = e.charCodeAt(l)) {
102 + case 123:
103 + k++;
104 + break;
438 105
439 -//#endregion
440 -//#region node_modules/@babel/runtime/helpers/regeneratorValues.js
441 - var require_regeneratorValues = /* @__PURE__ */ __commonJSMin(((exports, module) => {
442 - var _typeof = require_typeof()["default"];
443 - function _regeneratorValues(e) {
444 - if (null != e) {
445 - var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"];
446 - var r = 0;
447 - if (t) return t.call(e);
448 - if ("function" == typeof e.next) return e;
449 - if (!isNaN(e.length)) return { next: function next() {
450 - return e && r >= e.length && (e = void 0), {
451 - value: e && e[r++],
452 - done: !e
453 - };
454 - } };
455 - }
456 - throw new TypeError(_typeof(e) + " is not iterable");
457 - }
458 - module.exports = _regeneratorValues, module.exports.__esModule = true, module.exports["default"] = module.exports;
459 - }));
106 + case 125:
107 + k--;
108 + break;
460 109
461 -//#endregion
462 -//#region node_modules/@babel/runtime/helpers/regeneratorRuntime.js
463 - var require_regeneratorRuntime = /* @__PURE__ */ __commonJSMin(((exports, module) => {
464 - var OverloadYield = require_OverloadYield();
465 - var regenerator = require_regenerator$1();
466 - var regeneratorAsync = require_regeneratorAsync();
467 - var regeneratorAsyncGen = require_regeneratorAsyncGen();
468 - var regeneratorAsyncIterator = require_regeneratorAsyncIterator();
469 - var regeneratorKeys = require_regeneratorKeys();
470 - var regeneratorValues = require_regeneratorValues();
471 - function _regeneratorRuntime() {
472 - "use strict";
473 - var r = regenerator();
474 - var e = r.m(_regeneratorRuntime);
475 - var t = (Object.getPrototypeOf ? Object.getPrototypeOf(e) : e.__proto__).constructor;
476 - function n(r) {
477 - var e = "function" == typeof r && r.constructor;
478 - return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name));
479 - }
480 - var o = {
481 - "throw": 1,
482 - "return": 2,
483 - "break": 3,
484 - "continue": 3
485 - };
486 - function a(r) {
487 - var e;
488 - var t;
489 - return function(n) {
490 - e || (e = {
491 - stop: function stop() {
492 - return t(n.a, 2);
493 - },
494 - "catch": function _catch() {
495 - return n.v;
496 - },
497 - abrupt: function abrupt(r, e) {
498 - return t(n.a, o[r], e);
499 - },
500 - delegateYield: function delegateYield(r, o, a) {
501 - return e.resultName = o, t(n.d, regeneratorValues(r), a);
502 - },
503 - finish: function finish(r) {
504 - return t(n.f, r);
505 - }
506 - }, t = function t(r, _t, o) {
507 - n.p = e.prev, n.n = e.next;
508 - try {
509 - return r(_t, o);
510 - } finally {
511 - e.next = n.n;
512 - }
513 - }), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n;
514 - try {
515 - return r.call(this, e);
516 - } finally {
517 - n.p = e.prev, n.n = e.next;
518 - }
519 - };
520 - }
521 - return (module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
522 - return {
523 - wrap: function wrap(e, t, n, o) {
524 - return r.w(a(e), t, n, o && o.reverse());
525 - },
526 - isGeneratorFunction: n,
527 - mark: r.m,
528 - awrap: function awrap(r, e) {
529 - return new OverloadYield(r, e);
530 - },
531 - AsyncIterator: regeneratorAsyncIterator,
532 - async: function async(r, e, t, o, u) {
533 - return (n(e) ? regeneratorAsyncGen : regeneratorAsync)(a(r), e, t, o, u);
534 - },
535 - keys: regeneratorKeys,
536 - values: regeneratorValues
537 - };
538 - }, module.exports.__esModule = true, module.exports["default"] = module.exports)();
539 - }
540 - module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
541 - }));
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 + }
542 122
543 -//#endregion
544 -//#region node_modules/@babel/runtime/regenerator/index.js
545 - var require_regenerator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
546 - var runtime = require_regeneratorRuntime()();
547 - module.exports = runtime;
548 - try {
549 - regeneratorRuntime = runtime;
550 - } catch (accidentalStrictMode) {
551 - if (typeof globalThis === "object") globalThis.regeneratorRuntime = runtime;
552 - else Function("r", "regeneratorRuntime = r")(runtime);
553 - }
554 - }));
123 + break;
555 124
556 -//#endregion
557 -//#region node_modules/react-dom/client.js
558 - var require_client = /* @__PURE__ */ __commonJSMin(((exports) => {
559 - var m = (globalThis.ReactDOM);
560 - var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
561 - exports.createRoot = function(c, o) {
562 - i.usingClientEntryPoint = true;
563 - try {
564 - return m.createRoot(c, o);
565 - } finally {
566 - i.usingClientEntryPoint = false;
567 - }
568 - };
569 - }));
125 + case 10:
126 + if (47 === g) {
127 + l = u + 1;
128 + break a;
129 + }
570 130
571 -//#endregion
572 -//#region assets/dev/js/utils/react.js
131 + }
132 + }
133 +
134 + l = u;
135 + }
136 +
137 + }
138 +
139 + break;
140 +
141 + case 91:
142 + g++;
143 +
144 + case 40:
145 + g++;
146 +
147 + case 34:
148 + case 39:
149 + for (; l++ < J && e.charCodeAt(l) !== g;) {
150 + }
151 +
152 + }
153 +
154 + if (0 === k) break;
155 + l++;
156 + }
157 +
158 + k = e.substring(t, l);
159 + 0 === q && (q = (f = f.replace(ca, '').trim()).charCodeAt(0));
160 +
161 + switch (q) {
162 + case 64:
163 + 0 < r && (f = f.replace(N, ''));
164 + g = f.charCodeAt(1);
165 +
166 + switch (g) {
167 + case 100:
168 + case 109:
169 + case 115:
170 + case 45:
171 + r = c;
172 + break;
173 +
174 + default:
175 + r = O;
176 + }
177 +
178 + k = M(c, r, k, g, a + 1);
179 + t = k.length;
180 + 0 < A && (r = X(O, f, I), C = H(3, k, r, c, D, z, t, g, a, h), f = r.join(''), void 0 !== C && 0 === (t = (k = C.trim()).length) && (g = 0, k = ''));
181 + if (0 < t) switch (g) {
182 + case 115:
183 + f = f.replace(da, ea);
184 +
185 + case 100:
186 + case 109:
187 + case 45:
188 + k = f + '{' + k + '}';
189 + break;
190 +
191 + case 107:
192 + f = f.replace(fa, '$1 $2');
193 + k = f + '{' + k + '}';
194 + k = 1 === w || 2 === w && L('@' + k, 3) ? '@-webkit-' + k + '@' + k : '@' + k;
195 + break;
196 +
197 + default:
198 + k = f + k, 112 === h && (k = (p += k, ''));
199 + } else k = '';
200 + break;
201 +
202 + default:
203 + k = M(c, X(c, f, I), k, h, a + 1);
204 + }
205 +
206 + F += k;
207 + k = I = r = u = q = 0;
208 + f = '';
209 + g = e.charCodeAt(++l);
210 + break;
211 +
212 + case 125:
213 + case 59:
214 + f = (0 < r ? f.replace(N, '') : f).trim();
215 + if (1 < (t = f.length)) switch (0 === u && (q = f.charCodeAt(0), 45 === q || 96 < q && 123 > q) && (t = (f = f.replace(' ', ':')).length), 0 < A && void 0 !== (C = H(1, f, c, d, D, z, p.length, h, a, h)) && 0 === (t = (f = C.trim()).length) && (f = '\x00\x00'), q = f.charCodeAt(0), g = f.charCodeAt(1), q) {
216 + case 0:
217 + break;
218 +
219 + case 64:
220 + if (105 === g || 99 === g) {
221 + G += f + e.charAt(l);
222 + break;
223 + }
224 +
225 + default:
226 + 58 !== f.charCodeAt(t - 1) && (p += P(f, q, g, f.charCodeAt(2)));
227 + }
228 + I = r = u = q = 0;
229 + f = '';
230 + g = e.charCodeAt(++l);
231 + }
232 + }
233 +
234 + switch (g) {
235 + case 13:
236 + case 10:
237 + 47 === b ? b = 0 : 0 === 1 + q && 107 !== h && 0 < f.length && (r = 1, f += '\x00');
238 + 0 < A * Y && H(0, f, c, d, D, z, p.length, h, a, h);
239 + z = 1;
240 + D++;
241 + break;
242 +
243 + case 59:
244 + case 125:
245 + if (0 === b + n + v + m) {
246 + z++;
247 + break;
248 + }
249 +
250 + default:
251 + z++;
252 + y = e.charAt(l);
253 +
254 + switch (g) {
255 + case 9:
256 + case 32:
257 + if (0 === n + m + b) switch (x) {
258 + case 44:
259 + case 58:
260 + case 9:
261 + case 32:
262 + y = '';
263 + break;
264 +
265 + default:
266 + 32 !== g && (y = ' ');
267 + }
268 + break;
269 +
270 + case 0:
271 + y = '\\0';
272 + break;
273 +
274 + case 12:
275 + y = '\\f';
276 + break;
277 +
278 + case 11:
279 + y = '\\v';
280 + break;
281 +
282 + case 38:
283 + 0 === n + b + m && (r = I = 1, y = '\f' + y);
284 + break;
285 +
286 + case 108:
287 + if (0 === n + b + m + E && 0 < u) switch (l - u) {
288 + case 2:
289 + 112 === x && 58 === e.charCodeAt(l - 3) && (E = x);
290 +
291 + case 8:
292 + 111 === K && (E = K);
293 + }
294 + break;
295 +
296 + case 58:
297 + 0 === n + b + m && (u = l);
298 + break;
299 +
300 + case 44:
301 + 0 === b + v + n + m && (r = 1, y += '\r');
302 + break;
303 +
304 + case 34:
305 + case 39:
306 + 0 === b && (n = n === g ? 0 : 0 === n ? g : n);
307 + break;
308 +
309 + case 91:
310 + 0 === n + b + v && m++;
311 + break;
312 +
313 + case 93:
314 + 0 === n + b + v && m--;
315 + break;
316 +
317 + case 41:
318 + 0 === n + b + m && v--;
319 + break;
320 +
321 + case 40:
322 + if (0 === n + b + m) {
323 + if (0 === q) switch (2 * x + 3 * K) {
324 + case 533:
325 + break;
326 +
327 + default:
328 + q = 1;
329 + }
330 + v++;
331 + }
332 +
333 + break;
334 +
335 + case 64:
336 + 0 === b + v + n + m + u + k && (k = 1);
337 + break;
338 +
339 + case 42:
340 + case 47:
341 + if (!(0 < n + m + v)) switch (b) {
342 + case 0:
343 + switch (2 * g + 3 * e.charCodeAt(l + 1)) {
344 + case 235:
345 + b = 47;
346 + break;
347 +
348 + case 220:
349 + t = l, b = 42;
350 + }
351 +
352 + break;
353 +
354 + case 42:
355 + 47 === g && 42 === x && t + 2 !== l && (33 === e.charCodeAt(t + 2) && (p += e.substring(t, l + 1)), y = '', b = 0);
356 + }
357 + }
358 +
359 + 0 === b && (f += y);
360 + }
361 +
362 + K = x;
363 + x = g;
364 + l++;
365 + }
366 +
367 + t = p.length;
368 +
369 + if (0 < t) {
370 + r = c;
371 + if (0 < A && (C = H(2, p, r, d, D, z, t, h, a, h), void 0 !== C && 0 === (p = C).length)) return G + p + F;
372 + p = r.join(',') + '{' + p + '}';
373 +
374 + if (0 !== w * E) {
375 + 2 !== w || L(p, 2) || (E = 0);
376 +
377 + switch (E) {
378 + case 111:
379 + p = p.replace(ha, ':-moz-$1') + p;
380 + break;
381 +
382 + case 112:
383 + p = p.replace(Q, '::-webkit-input-$1') + p.replace(Q, '::-moz-$1') + p.replace(Q, ':-ms-input-$1') + p;
384 + }
385 +
386 + E = 0;
387 + }
388 + }
389 +
390 + return G + p + F;
391 + }
392 +
393 + function X(d, c, e) {
394 + var h = c.trim().split(ia);
395 + c = h;
396 + var a = h.length,
397 + m = d.length;
398 +
399 + switch (m) {
400 + case 0:
401 + case 1:
402 + var b = 0;
403 +
404 + for (d = 0 === m ? '' : d[0] + ' '; b < a; ++b) {
405 + c[b] = Z(d, c[b], e).trim();
406 + }
407 +
408 + break;
409 +
410 + default:
411 + var v = b = 0;
412 +
413 + for (c = []; b < a; ++b) {
414 + for (var n = 0; n < m; ++n) {
415 + c[v++] = Z(d[n] + ' ', h[b], e).trim();
416 + }
417 + }
418 +
419 + }
420 +
421 + return c;
422 + }
423 +
424 + function Z(d, c, e) {
425 + var h = c.charCodeAt(0);
426 + 33 > h && (h = (c = c.trim()).charCodeAt(0));
427 +
428 + switch (h) {
429 + case 38:
430 + return c.replace(F, '$1' + d.trim());
431 +
432 + case 58:
433 + return d.trim() + c.replace(F, '$1' + d.trim());
434 +
435 + default:
436 + if (0 < 1 * e && 0 < c.indexOf('\f')) return c.replace(F, (58 === d.charCodeAt(0) ? '' : '$1') + d.trim());
437 + }
438 +
439 + return d + c;
440 + }
441 +
442 + function P(d, c, e, h) {
443 + var a = d + ';',
444 + m = 2 * c + 3 * e + 4 * h;
445 +
446 + if (944 === m) {
447 + d = a.indexOf(':', 9) + 1;
448 + var b = a.substring(d, a.length - 1).trim();
449 + b = a.substring(0, d).trim() + b + ';';
450 + return 1 === w || 2 === w && L(b, 1) ? '-webkit-' + b + b : b;
451 + }
452 +
453 + if (0 === w || 2 === w && !L(a, 1)) return a;
454 +
455 + switch (m) {
456 + case 1015:
457 + return 97 === a.charCodeAt(10) ? '-webkit-' + a + a : a;
458 +
459 + case 951:
460 + return 116 === a.charCodeAt(3) ? '-webkit-' + a + a : a;
461 +
462 + case 963:
463 + return 110 === a.charCodeAt(5) ? '-webkit-' + a + a : a;
464 +
465 + case 1009:
466 + if (100 !== a.charCodeAt(4)) break;
467 +
468 + case 969:
469 + case 942:
470 + return '-webkit-' + a + a;
471 +
472 + case 978:
473 + return '-webkit-' + a + '-moz-' + a + a;
474 +
475 + case 1019:
476 + case 983:
477 + return '-webkit-' + a + '-moz-' + a + '-ms-' + a + a;
478 +
479 + case 883:
480 + if (45 === a.charCodeAt(8)) return '-webkit-' + a + a;
481 + if (0 < a.indexOf('image-set(', 11)) return a.replace(ja, '$1-webkit-$2') + a;
482 + break;
483 +
484 + case 932:
485 + if (45 === a.charCodeAt(4)) switch (a.charCodeAt(5)) {
486 + case 103:
487 + return '-webkit-box-' + a.replace('-grow', '') + '-webkit-' + a + '-ms-' + a.replace('grow', 'positive') + a;
488 +
489 + case 115:
490 + return '-webkit-' + a + '-ms-' + a.replace('shrink', 'negative') + a;
491 +
492 + case 98:
493 + return '-webkit-' + a + '-ms-' + a.replace('basis', 'preferred-size') + a;
494 + }
495 + return '-webkit-' + a + '-ms-' + a + a;
496 +
497 + case 964:
498 + return '-webkit-' + a + '-ms-flex-' + a + a;
499 +
500 + case 1023:
501 + if (99 !== a.charCodeAt(8)) break;
502 + b = a.substring(a.indexOf(':', 15)).replace('flex-', '').replace('space-between', 'justify');
503 + return '-webkit-box-pack' + b + '-webkit-' + a + '-ms-flex-pack' + b + a;
504 +
505 + case 1005:
506 + return ka.test(a) ? a.replace(aa, ':-webkit-') + a.replace(aa, ':-moz-') + a : a;
507 +
508 + case 1e3:
509 + b = a.substring(13).trim();
510 + c = b.indexOf('-') + 1;
511 +
512 + switch (b.charCodeAt(0) + b.charCodeAt(c)) {
513 + case 226:
514 + b = a.replace(G, 'tb');
515 + break;
516 +
517 + case 232:
518 + b = a.replace(G, 'tb-rl');
519 + break;
520 +
521 + case 220:
522 + b = a.replace(G, 'lr');
523 + break;
524 +
525 + default:
526 + return a;
527 + }
528 +
529 + return '-webkit-' + a + '-ms-' + b + a;
530 +
531 + case 1017:
532 + if (-1 === a.indexOf('sticky', 9)) break;
533 +
534 + case 975:
535 + c = (a = d).length - 10;
536 + b = (33 === a.charCodeAt(c) ? a.substring(0, c) : a).substring(d.indexOf(':', 7) + 1).trim();
537 +
538 + switch (m = b.charCodeAt(0) + (b.charCodeAt(7) | 0)) {
539 + case 203:
540 + if (111 > b.charCodeAt(8)) break;
541 +
542 + case 115:
543 + a = a.replace(b, '-webkit-' + b) + ';' + a;
544 + break;
545 +
546 + case 207:
547 + case 102:
548 + a = a.replace(b, '-webkit-' + (102 < m ? 'inline-' : '') + 'box') + ';' + a.replace(b, '-webkit-' + b) + ';' + a.replace(b, '-ms-' + b + 'box') + ';' + a;
549 + }
550 +
551 + return a + ';';
552 +
553 + case 938:
554 + if (45 === a.charCodeAt(5)) switch (a.charCodeAt(6)) {
555 + case 105:
556 + return b = a.replace('-items', ''), '-webkit-' + a + '-webkit-box-' + b + '-ms-flex-' + b + a;
557 +
558 + case 115:
559 + return '-webkit-' + a + '-ms-flex-item-' + a.replace(ba, '') + a;
560 +
561 + default:
562 + return '-webkit-' + a + '-ms-flex-line-pack' + a.replace('align-content', '').replace(ba, '') + a;
563 + }
564 + break;
565 +
566 + case 973:
567 + case 989:
568 + if (45 !== a.charCodeAt(3) || 122 === a.charCodeAt(4)) break;
569 +
570 + case 931:
571 + case 953:
572 + if (!0 === la.test(d)) return 115 === (b = d.substring(d.indexOf(':') + 1)).charCodeAt(0) ? P(d.replace('stretch', 'fill-available'), c, e, h).replace(':fill-available', ':stretch') : a.replace(b, '-webkit-' + b) + a.replace(b, '-moz-' + b.replace('fill-', '')) + a;
573 + break;
574 +
575 + case 962:
576 + if (a = '-webkit-' + a + (102 === a.charCodeAt(5) ? '-ms-' + a : '') + a, 211 === e + h && 105 === a.charCodeAt(13) && 0 < a.indexOf('transform', 10)) return a.substring(0, a.indexOf(';', 27) + 1).replace(ma, '$1-webkit-$2') + a;
577 + }
578 +
579 + return a;
580 + }
581 +
582 + function L(d, c) {
583 + var e = d.indexOf(1 === c ? ':' : '{'),
584 + h = d.substring(0, 3 !== c ? e : 10);
585 + e = d.substring(e + 1, d.length - 1);
586 + return R(2 !== c ? h : h.replace(na, '$1'), e, c);
587 + }
588 +
589 + function ea(d, c) {
590 + var e = P(c, c.charCodeAt(0), c.charCodeAt(1), c.charCodeAt(2));
591 + return e !== c + ';' ? e.replace(oa, ' or ($1)').substring(4) : '(' + c + ')';
592 + }
593 +
594 + function H(d, c, e, h, a, m, b, v, n, q) {
595 + for (var g = 0, x = c, w; g < A; ++g) {
596 + switch (w = S[g].call(B, d, x, e, h, a, m, b, v, n, q)) {
597 + case void 0:
598 + case !1:
599 + case !0:
600 + case null:
601 + break;
602 +
603 + default:
604 + x = w;
605 + }
606 + }
607 +
608 + if (x !== c) return x;
609 + }
610 +
611 + function T(d) {
612 + switch (d) {
613 + case void 0:
614 + case null:
615 + A = S.length = 0;
616 + break;
617 +
618 + default:
619 + if ('function' === typeof d) S[A++] = d;else if ('object' === typeof d) for (var c = 0, e = d.length; c < e; ++c) {
620 + T(d[c]);
621 + } else Y = !!d | 0;
622 + }
623 +
624 + return T;
625 + }
626 +
627 + function U(d) {
628 + d = d.prefix;
629 + void 0 !== d && (R = null, d ? 'function' !== typeof d ? w = 1 : (w = 2, R = d) : w = 0);
630 + return U;
631 + }
632 +
633 + function B(d, c) {
634 + var e = d;
635 + 33 > e.charCodeAt(0) && (e = e.trim());
636 + V = e;
637 + e = [V];
638 +
639 + if (0 < A) {
640 + var h = H(-1, c, e, e, D, z, 0, 0, 0, 0);
641 + void 0 !== h && 'string' === typeof h && (c = h);
642 + }
643 +
644 + var a = M(O, e, c, 0, 0);
645 + 0 < A && (h = H(-2, a, e, e, D, z, a.length, 0, 0, 0), void 0 !== h && (a = h));
646 + V = '';
647 + E = 0;
648 + z = D = 1;
649 + return a;
650 + }
651 +
652 + var ca = /^\0+/g,
653 + N = /[\0\r\f]/g,
654 + aa = /: */g,
655 + ka = /zoo|gra/,
656 + ma = /([,: ])(transform)/g,
657 + ia = /,\r+?/g,
658 + F = /([\t\r\n ])*\f?&/g,
659 + fa = /@(k\w+)\s*(\S*)\s*/,
660 + Q = /::(place)/g,
661 + ha = /:(read-only)/g,
662 + G = /[svh]\w+-[tblr]{2}/,
663 + da = /\(\s*(.*)\s*\)/g,
664 + oa = /([\s\S]*?);/g,
665 + ba = /-self|flex-/g,
666 + na = /[^]*?(:[rp][el]a[\w-]+)[^]*/,
667 + la = /stretch|:\s*\w+\-(?:conte|avail)/,
668 + ja = /([^-])(image-set\()/,
669 + z = 1,
670 + D = 1,
671 + E = 0,
672 + w = 1,
673 + O = [],
674 + S = [],
675 + A = 0,
676 + R = null,
677 + Y = 0,
678 + V = '';
679 + B.use = T;
680 + B.set = U;
681 + void 0 !== W && U(W);
682 + return B;
683 +}
684 +
685 +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (stylis_min);
686 +
687 +
688 +/***/ }),
689 +
690 +/***/ "../assets/dev/js/utils/react.js":
691 +/*!***************************************!*\
692 + !*** ../assets/dev/js/utils/react.js ***!
693 + \***************************************/
694 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
695 +
696 +"use strict";
697 +
698 +
699 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
700 +Object.defineProperty(exports, "__esModule", ({
701 + value: true
702 +}));
703 +exports["default"] = void 0;
704 +var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
705 +var ReactDOM = _interopRequireWildcard(__webpack_require__(/*! react-dom */ "react-dom"));
706 +var _client = __webpack_require__(/*! react-dom/client */ "../node_modules/react-dom/client.js");
707 +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
708 +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
573 709 /**
574 - * Support conditional rendering of a React App to the DOM, based on the React version.
575 - * We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
576 - *
577 - * @param {Promise.resolve(React).ReactElement} app The app to render.
578 - * @param {HTMLElement} domElement The DOM element to render the app into.
579 - *
580 - * @return {{ unmount: () => void }} The unmount function.
581 - */
582 - function render(app, domElement) {
583 - var unmountFunction;
584 - try {
585 - var root = (0, import_client.createRoot)(domElement);
586 - root.render(app);
587 - unmountFunction = function unmountFunction() {
588 - root.unmount();
589 - };
590 - } catch (e) {
591 - react_dom.render(app, domElement);
592 - unmountFunction = function unmountFunction() {
593 - react_dom.unmountComponentAtNode(domElement);
594 - };
595 - }
596 - return { unmount: unmountFunction };
597 - }
598 - var import_client, react_default;
599 - var init_react = __esmMin((() => {
600 - import_client = require_client();
601 - react_default = { render };
602 - }));
710 + * Support conditional rendering of a React App to the DOM, based on the React version.
711 + * We use `createRoot` when available, but fallback to `ReactDOM.render` for older versions.
712 + *
713 + * @param { React.ReactElement } app The app to render.
714 + * @param { HTMLElement } domElement The DOM element to render the app into.
715 + *
716 + * @return {{ unmount: () => void }} The unmount function.
717 + */
718 +function render(app, domElement) {
719 + var unmountFunction;
720 + try {
721 + var root = (0, _client.createRoot)(domElement);
722 + root.render(app);
723 + unmountFunction = function unmountFunction() {
724 + root.unmount();
725 + };
726 + } catch (e) {
727 + // eslint-disable-next-line react/no-deprecated
728 + ReactDOM.render(app, domElement);
729 + unmountFunction = function unmountFunction() {
730 + // eslint-disable-next-line react/no-deprecated
731 + ReactDOM.unmountComponentAtNode(domElement);
732 + };
733 + }
734 + return {
735 + unmount: unmountFunction
736 + };
737 +}
738 +var _default = {
739 + render: render
740 +};
741 +exports["default"] = _default;
603 742
604 -//#endregion
605 -//#region node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
606 - function _arrayLikeToArray(r, a) {
607 - (null == a || a > r.length) && (a = r.length);
608 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
609 - return n;
610 - }
611 - var init_arrayLikeToArray = __esmMin((() => {}));
743 +/***/ }),
612 744
613 -//#endregion
614 -//#region node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
615 - function _arrayWithoutHoles(r) {
616 - if (Array.isArray(r)) return _arrayLikeToArray(r);
617 - }
618 - var init_arrayWithoutHoles = __esmMin((() => {
619 - init_arrayLikeToArray();
620 - }));
745 +/***/ "../modules/ai/assets/js/editor/ai-layout-behavior.js":
746 +/*!************************************************************!*\
747 + !*** ../modules/ai/assets/js/editor/ai-layout-behavior.js ***!
748 + \************************************************************/
749 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
621 750
622 -//#endregion
623 -//#region node_modules/@babel/runtime/helpers/esm/iterableToArray.js
624 - function _iterableToArray(r) {
625 - if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
626 - }
627 - var init_iterableToArray = __esmMin((() => {}));
751 +"use strict";
628 752
629 -//#endregion
630 -//#region node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
631 - function _unsupportedIterableToArray(r, a) {
632 - if (r) {
633 - if ("string" == typeof r) return _arrayLikeToArray(r, a);
634 - var t = {}.toString.call(r).slice(8, -1);
635 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
636 - }
637 - }
638 - var init_unsupportedIterableToArray = __esmMin((() => {
639 - init_arrayLikeToArray();
640 - }));
641 753
642 -//#endregion
643 -//#region node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
644 - function _nonIterableSpread() {
645 - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
646 - }
647 - var init_nonIterableSpread = __esmMin((() => {}));
754 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
755 +Object.defineProperty(exports, "__esModule", ({
756 + value: true
757 +}));
758 +exports["default"] = void 0;
759 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
760 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
761 +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
762 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
763 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
764 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
765 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
766 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
767 +var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
768 +var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
769 +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
770 +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
771 +var AiLayoutBehavior = /*#__PURE__*/function (_Marionette$Behavior) {
772 + (0, _inherits2.default)(AiLayoutBehavior, _Marionette$Behavior);
773 + var _super = _createSuper(AiLayoutBehavior);
774 + function AiLayoutBehavior() {
775 + var _this;
776 + (0, _classCallCheck2.default)(this, AiLayoutBehavior);
777 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
778 + args[_key] = arguments[_key];
779 + }
780 + _this = _super.call.apply(_super, [this].concat(args));
781 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewContainer", null);
782 + return _this;
783 + }
784 + (0, _createClass2.default)(AiLayoutBehavior, [{
785 + key: "ui",
786 + value: function ui() {
787 + return {
788 + aiButton: '.e-ai-layout-button',
789 + addTemplateButton: '.elementor-add-template-button'
790 + };
791 + }
792 + }, {
793 + key: "events",
794 + value: function events() {
795 + return {
796 + 'click @ui.aiButton': 'onAiButtonClick'
797 + };
798 + }
799 + }, {
800 + key: "onAiButtonClick",
801 + value: function onAiButtonClick(e) {
802 + e.stopPropagation();
803 + window.elementorAiCurrentContext = this.getOption('context');
804 + (0, _editorIntegration.renderLayoutApp)({
805 + parentContainer: elementor.getPreviewContainer(),
806 + mode: _config.MODE_LAYOUT,
807 + at: this.view.getOption('at'),
808 + onInsert: this.onInsert.bind(this),
809 + onRenderApp: function onRenderApp(args) {
810 + args.previewContainer.init();
811 + },
812 + onGenerate: function onGenerate(args) {
813 + args.previewContainer.reset();
814 + }
815 + });
816 + }
817 + }, {
818 + key: "hideDropArea",
819 + value: function hideDropArea() {
820 + this.view.onCloseButtonClick();
821 + }
822 + }, {
823 + key: "onInsert",
824 + value: function onInsert(template) {
825 + this.hideDropArea();
826 + (0, _editorIntegration.importToEditor)({
827 + parentContainer: elementor.getPreviewContainer(),
828 + at: this.view.getOption('at'),
829 + template: template,
830 + historyTitle: (0, _i18n.__)('AI Layout', 'elementor')
831 + });
832 + }
833 + }, {
834 + key: "onRender",
835 + value: function onRender() {
836 + var $button = jQuery('<div>', {
837 + class: 'e-ai-layout-button elementor-add-section-area-button e-button-primary',
838 + title: (0, _i18n.__)('Build with AI', 'elementor'),
839 + role: 'button'
840 + });
841 + $button.html("\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<div class=\"e-ai-layout-button--sparkle\"></div>\n\t\t\t<i class=\"eicon-ai\"></i>\n\t\t");
842 + this.ui.addTemplateButton.after($button);
843 + }
844 + }]);
845 + return AiLayoutBehavior;
846 +}(Marionette.Behavior);
847 +exports["default"] = AiLayoutBehavior;
648 848
649 -//#endregion
650 -//#region node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
651 - function _toConsumableArray(r) {
652 - return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
653 - }
654 - var init_toConsumableArray = __esmMin((() => {
655 - init_arrayWithoutHoles();
656 - init_iterableToArray();
657 - init_unsupportedIterableToArray();
658 - init_nonIterableSpread();
659 - }));
849 +/***/ }),
660 850
661 -//#endregion
662 -//#region modules/ai/assets/js/editor/utils/history.js
663 - function toggleHistory(isActive) {
664 - elementor.documents.getCurrent().history.setActive(isActive);
665 - }
666 - /**
667 - * @param {Object} options
668 - * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
669 - * @param { string } options.title
670 - *
671 - * @return {*}
672 - */
673 - function startHistoryLog(_ref) {
674 - var type = _ref.type;
675 - var title = _ref.title;
676 - var id = $e.internal("document/history/start-log", {
677 - type,
678 - title
679 - });
680 - return function() {
681 - return $e.internal("document/history/end-log", { id });
682 - };
683 - }
684 - var init_history = __esmMin((() => {}));
851 +/***/ "../modules/ai/assets/js/editor/api/index.js":
852 +/*!***************************************************!*\
853 + !*** ../modules/ai/assets/js/editor/api/index.js ***!
854 + \***************************************************/
855 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
685 856
686 -//#endregion
687 -//#region modules/ai/assets/js/editor/utils/preview-container.js
688 - function ownKeys$12(e, r) {
689 - var t = Object.keys(e);
690 - if (Object.getOwnPropertySymbols) {
691 - var o = Object.getOwnPropertySymbols(e);
692 - r && (o = o.filter(function(r) {
693 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
694 - })), t.push.apply(t, o);
695 - }
696 - return t;
697 - }
698 - function _objectSpread$11(e) {
699 - for (var r = 1; r < arguments.length; r++) {
700 - var t = null != arguments[r] ? arguments[r] : {};
701 - r % 2 ? ownKeys$12(Object(t), !0).forEach(function(r) {
702 - _defineProperty$1(e, r, t[r]);
703 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$12(Object(t)).forEach(function(r) {
704 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
705 - });
706 - }
707 - return e;
708 - }
709 - /**
710 - * @param {Container} parentContainer
711 - * @param {{}} containerOptions
712 - * @return {{init, setContent, reset, destroy}}
713 - */
714 - function createPreviewContainer(parentContainer) {
715 - var containerOptions = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
716 - var createdContainers = /* @__PURE__ */ new Map();
717 - var idleContainer = createIdleContainer(parentContainer, containerOptions);
718 - function init() {
719 - showContainer(idleContainer);
720 - }
721 - function getAllContainers() {
722 - return [].concat(_toConsumableArray(createdContainers.values()), [idleContainer]);
723 - }
724 - function reset() {
725 - deleteContainers(_toConsumableArray(createdContainers.values()));
726 - createdContainers.clear();
727 - showContainer(idleContainer);
728 - }
729 - function setContent(template) {
730 - if (!template) return;
731 - hideContainers(getAllContainers());
732 - if (!createdContainers.has(template)) {
733 - var newContainer = createContainer$1(parentContainer, template, containerOptions);
734 - createdContainers.set(template, newContainer);
735 - }
736 - showContainer(createdContainers.get(template));
737 - }
738 - function destroy() {
739 - deleteContainers(getAllContainers());
740 - createdContainers.clear();
741 - }
742 - return {
743 - init,
744 - reset,
745 - setContent,
746 - destroy
747 - };
748 - }
749 - /**
750 - * @param {Container} parentContainer
751 - * @param {{}} model
752 - * @param {{}} options
753 - * @return {*}
754 - */
755 - function createContainer$1(parentContainer, model) {
756 - var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
757 - toggleHistory(false);
758 - var container = $e.run("document/elements/create", {
759 - container: parentContainer,
760 - model: _objectSpread$11(_objectSpread$11({}, model), {}, { id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString()) }),
761 - options: _objectSpread$11(_objectSpread$11({}, options), {}, { edit: false })
762 - });
763 - toggleHistory(true);
764 - container.view.$el.addClass(CLASS_HIDDEN);
765 - return container;
766 - }
767 - /**
768 - * @param {Container} parentContainer
769 - * @param {{}} containerOptions
770 - * @return {*}
771 - */
772 - function createIdleContainer(parentContainer) {
773 - var container = createContainer$1(parentContainer, { elType: "container" }, arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {});
774 - container.view.$el.addClass(CLASS_IDLE);
775 - return container;
776 - }
777 - function hideContainers(containers) {
778 - containers.forEach(function(container) {
779 - container.view.$el.addClass(CLASS_HIDDEN);
780 - });
781 - }
782 - function showContainer(container) {
783 - container.view.$el.removeClass(CLASS_HIDDEN);
784 - setTimeout(function() {
785 - container.view.$el[0].scrollIntoView({
786 - behavior: "smooth",
787 - block: "start"
788 - });
789 - });
790 - }
791 - function deleteContainers(containers) {
792 - toggleHistory(false);
793 - $e.run("document/elements/delete", { containers });
794 - toggleHistory(true);
795 - }
796 - var PREFIX, CLASS_HIDDEN, CLASS_IDLE;
797 - var init_preview_container = __esmMin((() => {
798 - init_defineProperty$1();
799 - init_toConsumableArray();
800 - init_history();
801 - __name(ownKeys$12, "ownKeys");
802 - __name(_objectSpread$11, "_objectSpread");
803 - PREFIX = "e-ai-preview-container";
804 - CLASS_HIDDEN = PREFIX + "--hidden";
805 - CLASS_IDLE = PREFIX + "--idle";
806 - __name(createContainer$1, "createContainer");
807 - }));
857 +"use strict";
808 858
809 -//#endregion
810 -//#region node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js
811 -/** @license React v16.13.1
812 - * react-is.development.js
813 - *
814 - * Copyright (c) Facebook, Inc. and its affiliates.
815 - *
816 - * This source code is licensed under the MIT license found in the
817 - * LICENSE file in the root directory of this source tree.
818 - */
819 - var require_react_is_development = /* @__PURE__ */ __commonJSMin(((exports) => {
820 - (function() {
821 - "use strict";
822 - var hasSymbol = typeof Symbol === "function" && Symbol.for;
823 - var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for("react.element") : 60103;
824 - var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for("react.portal") : 60106;
825 - var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for("react.fragment") : 60107;
826 - var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for("react.strict_mode") : 60108;
827 - var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for("react.profiler") : 60114;
828 - var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for("react.provider") : 60109;
829 - var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for("react.context") : 60110;
830 - var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for("react.async_mode") : 60111;
831 - var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for("react.concurrent_mode") : 60111;
832 - var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for("react.forward_ref") : 60112;
833 - var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for("react.suspense") : 60113;
834 - var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for("react.suspense_list") : 60120;
835 - var REACT_MEMO_TYPE = hasSymbol ? Symbol.for("react.memo") : 60115;
836 - var REACT_LAZY_TYPE = hasSymbol ? Symbol.for("react.lazy") : 60116;
837 - var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for("react.block") : 60121;
838 - var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for("react.fundamental") : 60117;
839 - var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for("react.responder") : 60118;
840 - var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for("react.scope") : 60119;
841 - function isValidElementType(type) {
842 - return typeof type === "string" || typeof type === "function" || 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);
843 - }
844 - function typeOf(object) {
845 - if (typeof object === "object" && object !== null) {
846 - var $$typeof = object.$$typeof;
847 - switch ($$typeof) {
848 - case REACT_ELEMENT_TYPE:
849 - var type = object.type;
850 - switch (type) {
851 - case REACT_ASYNC_MODE_TYPE:
852 - case REACT_CONCURRENT_MODE_TYPE:
853 - case REACT_FRAGMENT_TYPE:
854 - case REACT_PROFILER_TYPE:
855 - case REACT_STRICT_MODE_TYPE:
856 - case REACT_SUSPENSE_TYPE: return type;
857 - default:
858 - var $$typeofType = type && type.$$typeof;
859 - switch ($$typeofType) {
860 - case REACT_CONTEXT_TYPE:
861 - case REACT_FORWARD_REF_TYPE:
862 - case REACT_LAZY_TYPE:
863 - case REACT_MEMO_TYPE:
864 - case REACT_PROVIDER_TYPE: return $$typeofType;
865 - default: return $$typeof;
866 - }
867 - }
868 - case REACT_PORTAL_TYPE: return $$typeof;
869 - }
870 - }
871 - }
872 - var AsyncMode = REACT_ASYNC_MODE_TYPE;
873 - var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
874 - var ContextConsumer = REACT_CONTEXT_TYPE;
875 - var ContextProvider = REACT_PROVIDER_TYPE;
876 - var Element = REACT_ELEMENT_TYPE;
877 - var ForwardRef = REACT_FORWARD_REF_TYPE;
878 - var Fragment = REACT_FRAGMENT_TYPE;
879 - var Lazy = REACT_LAZY_TYPE;
880 - var Memo = REACT_MEMO_TYPE;
881 - var Portal = REACT_PORTAL_TYPE;
882 - var Profiler = REACT_PROFILER_TYPE;
883 - var StrictMode = REACT_STRICT_MODE_TYPE;
884 - var Suspense = REACT_SUSPENSE_TYPE;
885 - var hasWarnedAboutDeprecatedIsAsyncMode = false;
886 - function isAsyncMode(object) {
887 - if (!hasWarnedAboutDeprecatedIsAsyncMode) {
888 - hasWarnedAboutDeprecatedIsAsyncMode = true;
889 - 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.");
890 - }
891 - return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
892 - }
893 - function isConcurrentMode(object) {
894 - return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
895 - }
896 - function isContextConsumer(object) {
897 - return typeOf(object) === REACT_CONTEXT_TYPE;
898 - }
899 - function isContextProvider(object) {
900 - return typeOf(object) === REACT_PROVIDER_TYPE;
901 - }
902 - function isElement(object) {
903 - return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
904 - }
905 - function isForwardRef(object) {
906 - return typeOf(object) === REACT_FORWARD_REF_TYPE;
907 - }
908 - function isFragment(object) {
909 - return typeOf(object) === REACT_FRAGMENT_TYPE;
910 - }
911 - function isLazy(object) {
912 - return typeOf(object) === REACT_LAZY_TYPE;
913 - }
914 - function isMemo(object) {
915 - return typeOf(object) === REACT_MEMO_TYPE;
916 - }
917 - function isPortal(object) {
918 - return typeOf(object) === REACT_PORTAL_TYPE;
919 - }
920 - function isProfiler(object) {
921 - return typeOf(object) === REACT_PROFILER_TYPE;
922 - }
923 - function isStrictMode(object) {
924 - return typeOf(object) === REACT_STRICT_MODE_TYPE;
925 - }
926 - function isSuspense(object) {
927 - return typeOf(object) === REACT_SUSPENSE_TYPE;
928 - }
929 - exports.AsyncMode = AsyncMode;
930 - exports.ConcurrentMode = ConcurrentMode;
931 - exports.ContextConsumer = ContextConsumer;
932 - exports.ContextProvider = ContextProvider;
933 - exports.Element = Element;
934 - exports.ForwardRef = ForwardRef;
935 - exports.Fragment = Fragment;
936 - exports.Lazy = Lazy;
937 - exports.Memo = Memo;
938 - exports.Portal = Portal;
939 - exports.Profiler = Profiler;
940 - exports.StrictMode = StrictMode;
941 - exports.Suspense = Suspense;
942 - exports.isAsyncMode = isAsyncMode;
943 - exports.isConcurrentMode = isConcurrentMode;
944 - exports.isContextConsumer = isContextConsumer;
945 - exports.isContextProvider = isContextProvider;
946 - exports.isElement = isElement;
947 - exports.isForwardRef = isForwardRef;
948 - exports.isFragment = isFragment;
949 - exports.isLazy = isLazy;
950 - exports.isMemo = isMemo;
951 - exports.isPortal = isPortal;
952 - exports.isProfiler = isProfiler;
953 - exports.isStrictMode = isStrictMode;
954 - exports.isSuspense = isSuspense;
955 - exports.isValidElementType = isValidElementType;
956 - exports.typeOf = typeOf;
957 - })();
958 - }));
959 859
960 -//#endregion
961 -//#region node_modules/prop-types/node_modules/react-is/index.js
962 - var require_react_is = /* @__PURE__ */ __commonJSMin(((exports, module) => {
963 - module.exports = require_react_is_development();
964 - }));
860 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
861 +Object.defineProperty(exports, "__esModule", ({
862 + value: true
863 +}));
864 +exports.uploadImage = exports.toggleFavoriteHistoryItem = exports.setStatusFeedback = exports.setGetStarted = exports.getUserInformation = exports.getTextToImageGeneration = exports.getRemoteConfig = exports.getLayoutPromptEnhanced = exports.getImageToImageUpscale = exports.getImageToImageReplaceBackground = exports.getImageToImageRemoveText = exports.getImageToImageRemoveBackground = exports.getImageToImageOutPainting = exports.getImageToImageMaskGeneration = exports.getImageToImageGeneration = exports.getImagePromptEnhanced = exports.getHistory = exports.getExcerpt = exports.getEditText = exports.getCustomCode = exports.getCustomCSS = exports.getCompletionText = exports.generateLayout = exports.deleteHistoryItem = void 0;
865 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
866 +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
867 +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
868 +var request = function request(endpoint) {
869 + var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
870 + var immediately = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
871 + var signal = arguments.length > 3 ? arguments[3] : undefined;
872 + if (Object.keys(data).length) {
873 + data.context = window.elementorAiCurrentContext;
874 + }
875 + return new Promise(function (resolve, reject) {
876 + var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
877 + success: resolve,
878 + error: reject,
879 + data: data
880 + }, immediately);
881 + if (signal && ajaxData.jqXhr) {
882 + signal.addEventListener('abort', ajaxData.jqXhr.abort);
883 + }
884 + });
885 +};
886 +var getUserInformation = function getUserInformation(immediately) {
887 + return request('ai_get_user_information', undefined, immediately);
888 +};
889 +exports.getUserInformation = getUserInformation;
890 +var getRemoteConfig = function getRemoteConfig() {
891 + return request('ai_get_remote_config');
892 +};
893 +exports.getRemoteConfig = getRemoteConfig;
894 +var getCompletionText = function getCompletionText(payload) {
895 + return request('ai_get_completion_text', {
896 + payload: payload
897 + });
898 +};
899 +exports.getCompletionText = getCompletionText;
900 +var getExcerpt = function getExcerpt(payload) {
901 + return request('ai_get_excerpt', {
902 + payload: payload
903 + });
904 +};
905 +exports.getExcerpt = getExcerpt;
906 +var getEditText = function getEditText(payload) {
907 + return request('ai_get_edit_text', {
908 + payload: payload
909 + });
910 +};
911 +exports.getEditText = getEditText;
912 +var getCustomCode = function getCustomCode(payload) {
913 + return request('ai_get_custom_code', {
914 + payload: payload
915 + });
916 +};
917 +exports.getCustomCode = getCustomCode;
918 +var getCustomCSS = function getCustomCSS(payload) {
919 + return request('ai_get_custom_css', {
920 + payload: payload
921 + });
922 +};
923 +exports.getCustomCSS = getCustomCSS;
924 +var setGetStarted = function setGetStarted() {
925 + return request('ai_set_get_started');
926 +};
927 +exports.setGetStarted = setGetStarted;
928 +var setStatusFeedback = function setStatusFeedback(responseId) {
929 + return request('ai_set_status_feedback', {
930 + response_id: responseId
931 + });
932 +};
933 +exports.setStatusFeedback = setStatusFeedback;
934 +var getTextToImageGeneration = function getTextToImageGeneration(payload) {
935 + return request('ai_get_text_to_image', {
936 + payload: payload
937 + });
938 +};
939 +exports.getTextToImageGeneration = getTextToImageGeneration;
940 +var getImageToImageGeneration = function getImageToImageGeneration(payload) {
941 + return request('ai_get_image_to_image', {
942 + payload: payload
943 + });
944 +};
945 +exports.getImageToImageGeneration = getImageToImageGeneration;
946 +var getImageToImageMaskGeneration = function getImageToImageMaskGeneration(payload) {
947 + return request('ai_get_image_to_image_mask', {
948 + payload: payload
949 + });
950 +};
951 +exports.getImageToImageMaskGeneration = getImageToImageMaskGeneration;
952 +var getImageToImageOutPainting = function getImageToImageOutPainting(payload) {
953 + return request('ai_get_image_to_image_outpainting', {
954 + payload: payload
955 + });
956 +};
957 +exports.getImageToImageOutPainting = getImageToImageOutPainting;
958 +var getImageToImageUpscale = function getImageToImageUpscale(payload) {
959 + return request('ai_get_image_to_image_upscale', {
960 + payload: payload
961 + });
962 +};
963 +exports.getImageToImageUpscale = getImageToImageUpscale;
964 +var getImageToImageRemoveBackground = function getImageToImageRemoveBackground(payload) {
965 + return request('ai_get_image_to_image_remove_background', {
966 + payload: payload
967 + });
968 +};
969 +exports.getImageToImageRemoveBackground = getImageToImageRemoveBackground;
970 +var getImageToImageReplaceBackground = function getImageToImageReplaceBackground(payload) {
971 + return request('ai_get_image_to_image_replace_background', {
972 + payload: payload
973 + });
974 +};
975 +exports.getImageToImageReplaceBackground = getImageToImageReplaceBackground;
976 +var getImageToImageRemoveText = function getImageToImageRemoveText(image) {
977 + return request('ai_get_image_to_image_remove_text', {
978 + image: image
979 + });
980 +};
981 +exports.getImageToImageRemoveText = getImageToImageRemoveText;
982 +var getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
983 + return request('ai_get_image_prompt_enhancer', {
984 + prompt: prompt
985 + });
986 +};
987 +exports.getImagePromptEnhanced = getImagePromptEnhanced;
988 +var uploadImage = function uploadImage(image) {
989 + return request('ai_upload_image', _objectSpread({}, image));
990 +};
965 991
966 -//#endregion
967 -//#region node_modules/object-assign/index.js
968 -/*
969 - object-assign
970 - (c) Sindre Sorhus
971 - @license MIT
972 - */
973 - var require_object_assign = /* @__PURE__ */ __commonJSMin(((exports, module) => {
974 - var getOwnPropertySymbols = Object.getOwnPropertySymbols;
975 - var hasOwnProperty = Object.prototype.hasOwnProperty;
976 - var propIsEnumerable = Object.prototype.propertyIsEnumerable;
977 - function toObject(val) {
978 - if (val === null || val === void 0) throw new TypeError("Object.assign cannot be called with null or undefined");
979 - return Object(val);
980 - }
981 - function shouldUseNative() {
982 - try {
983 - if (!Object.assign) return false;
984 - var test1 = /* @__PURE__ */ new String("abc");
985 - test1[5] = "de";
986 - if (Object.getOwnPropertyNames(test1)[0] === "5") return false;
987 - var test2 = {};
988 - for (var i = 0; i < 10; i++) test2["_" + String.fromCharCode(i)] = i;
989 - if (Object.getOwnPropertyNames(test2).map(function(n) {
990 - return test2[n];
991 - }).join("") !== "0123456789") return false;
992 - var test3 = {};
993 - "abcdefghijklmnopqrst".split("").forEach(function(letter) {
994 - test3[letter] = letter;
995 - });
996 - if (Object.keys(Object.assign({}, test3)).join("") !== "abcdefghijklmnopqrst") return false;
997 - return true;
998 - } catch (err) {
999 - return false;
1000 - }
1001 - }
1002 - module.exports = shouldUseNative() ? Object.assign : function(target, source) {
1003 - var from;
1004 - var to = toObject(target);
1005 - var symbols;
1006 - for (var s = 1; s < arguments.length; s++) {
1007 - from = Object(arguments[s]);
1008 - for (var key in from) if (hasOwnProperty.call(from, key)) to[key] = from[key];
1009 - if (getOwnPropertySymbols) {
1010 - symbols = getOwnPropertySymbols(from);
1011 - for (var i = 0; i < symbols.length; i++) if (propIsEnumerable.call(from, symbols[i])) to[symbols[i]] = from[symbols[i]];
1012 - }
1013 - }
1014 - return to;
1015 - };
1016 - }));
992 +/**
993 + * @typedef {Object} AttachmentPropType - See ./types/attachment.js
994 + * @typedef {Object} requestBody
995 + * @property {string} prompt - Prompt to generate the layout from.
996 + * @property {0|1|2} [variationType] - Type of the layout to generate (actually it's a position).
997 + * @property {string[]} [prevGeneratedIds] - Previously generated ids for exclusion on regeneration.
998 + * @property {AttachmentPropType[]} [attachments] - Attachments to use for the generation. currently only `json` type is supported - a container JSON to generate variations from.
999 + */
1017 1000
1018 -//#endregion
1019 -//#region node_modules/prop-types/lib/ReactPropTypesSecret.js
1020 1001 /**
1021 - * Copyright (c) 2013-present, Facebook, Inc.
1022 - *
1023 - * This source code is licensed under the MIT license found in the
1024 - * LICENSE file in the root directory of this source tree.
1025 - */
1026 - var require_ReactPropTypesSecret = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1027 - var ReactPropTypesSecret = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
1028 - module.exports = ReactPropTypesSecret;
1029 - }));
1002 + * @param {requestBody} requestBody
1003 + * @param {AbortSignal} [signal]
1004 + */
1005 +exports.uploadImage = uploadImage;
1006 +var generateLayout = function generateLayout(requestBody, signal) {
1007 + return request('ai_generate_layout', requestBody, true, signal);
1008 +};
1009 +exports.generateLayout = generateLayout;
1010 +var getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
1011 + return request('ai_get_layout_prompt_enhancer', {
1012 + prompt: prompt,
1013 + enhance_type: enhanceType
1014 + });
1015 +};
1016 +exports.getLayoutPromptEnhanced = getLayoutPromptEnhanced;
1017 +var getHistory = function getHistory(type, page, limit) {
1018 + return request('ai_get_history', {
1019 + type: type,
1020 + page: page,
1021 + limit: limit
1022 + });
1023 +};
1024 +exports.getHistory = getHistory;
1025 +var deleteHistoryItem = function deleteHistoryItem(id) {
1026 + return request('ai_delete_history_item', {
1027 + id: id
1028 + });
1029 +};
1030 +exports.deleteHistoryItem = deleteHistoryItem;
1031 +var toggleFavoriteHistoryItem = function toggleFavoriteHistoryItem(id) {
1032 + return request('ai_toggle_favorite_history_item', {
1033 + id: id
1034 + });
1035 +};
1036 +exports.toggleFavoriteHistoryItem = toggleFavoriteHistoryItem;
1030 1037
1031 -//#endregion
1032 -//#region node_modules/prop-types/lib/has.js
1033 - var require_has = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1034 - module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
1035 - }));
1038 +/***/ }),
1036 1039
1037 -//#endregion
1038 -//#region node_modules/prop-types/checkPropTypes.js
1040 +/***/ "../modules/ai/assets/js/editor/components/alert-dialog.js":
1041 +/*!*****************************************************************!*\
1042 + !*** ../modules/ai/assets/js/editor/components/alert-dialog.js ***!
1043 + \*****************************************************************/
1044 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1045 +
1046 +"use strict";
1047 +
1048 +
1049 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1050 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1051 +Object.defineProperty(exports, "__esModule", ({
1052 + value: true
1053 +}));
1054 +exports.AlertDialog = void 0;
1055 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1056 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1057 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1058 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1059 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1060 +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); }
1061 +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; }
1062 +var AlertDialog = function AlertDialog(props) {
1063 + var _useState = (0, _react.useState)(true),
1064 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1065 + isShown = _useState2[0],
1066 + setIsShown = _useState2[1];
1067 + if (!isShown) {
1068 + return null;
1069 + }
1070 + return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1071 + open: true,
1072 + maxWidth: "lg"
1073 + }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
1074 + sx: {
1075 + padding: 0
1076 + }
1077 + }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1078 + sx: {
1079 + textAlign: 'center',
1080 + padding: 3
1081 + }
1082 + }, props.message), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1083 + alignItems: "center",
1084 + spacing: 2,
1085 + marginBottom: 2
1086 + }, /*#__PURE__*/_react.default.createElement(_ui.Button, {
1087 + variant: "contained",
1088 + type: "button",
1089 + color: "primary",
1090 + onClick: function onClick() {
1091 + var _props$onClose;
1092 + setIsShown(false);
1093 + (_props$onClose = props.onClose) === null || _props$onClose === void 0 ? void 0 : _props$onClose.call(props);
1094 + }
1095 + }, (0, _i18n.__)('Close', 'elementor')))));
1096 +};
1097 +exports.AlertDialog = AlertDialog;
1098 +AlertDialog.propTypes = {
1099 + message: _propTypes.default.string.isRequired,
1100 + onClose: _propTypes.default.func
1101 +};
1102 +
1103 +/***/ }),
1104 +
1105 +/***/ "../modules/ai/assets/js/editor/components/dialog-header.js":
1106 +/*!******************************************************************!*\
1107 + !*** ../modules/ai/assets/js/editor/components/dialog-header.js ***!
1108 + \******************************************************************/
1109 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1110 +
1111 +"use strict";
1112 +
1113 +
1114 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1115 +Object.defineProperty(exports, "__esModule", ({
1116 + value: true
1117 +}));
1118 +exports["default"] = void 0;
1119 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1120 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1121 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1122 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1123 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1124 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1125 +var ElementorLogo = function ElementorLogo(props) {
1126 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
1127 + viewBox: "0 0 32 32"
1128 + }, props), /*#__PURE__*/_react.default.createElement("path", {
1129 + fillRule: "evenodd",
1130 + clipRule: "evenodd",
1131 + 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"
1132 + }));
1133 +};
1134 +var StyledElementorLogo = (0, _ui.styled)(ElementorLogo)(function (_ref) {
1135 + var theme = _ref.theme;
1136 + return {
1137 + width: theme.spacing(3),
1138 + height: theme.spacing(3),
1139 + '& path': {
1140 + fill: theme.palette.text.primary
1141 + }
1142 + };
1143 +});
1144 +var DialogHeader = function DialogHeader(props) {
1145 + return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
1146 + sx: {
1147 + fontWeight: 'normal'
1148 + },
1149 + color: "transparent",
1150 + position: "relative"
1151 + }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
1152 + variant: "dense"
1153 + }, /*#__PURE__*/_react.default.createElement(StyledElementorLogo, {
1154 + sx: {
1155 + mr: 1
1156 + }
1157 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1158 + component: "span",
1159 + variant: "subtitle2",
1160 + sx: {
1161 + fontWeight: 'bold',
1162 + textTransform: 'uppercase'
1163 + }
1164 + }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
1165 + label: (0, _i18n.__)('Beta', 'elementor'),
1166 + color: "default",
1167 + size: "small",
1168 + sx: {
1169 + ml: 1
1170 + }
1171 + }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
1172 + direction: "row",
1173 + spacing: 1,
1174 + alignItems: "center",
1175 + sx: {
1176 + ml: 'auto'
1177 + }
1178 + }, props.children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
1179 + size: "small",
1180 + "aria-label": "close",
1181 + onClick: props.onClose,
1182 + sx: {
1183 + '&.MuiButtonBase-root': {
1184 + mr: -1
1185 + }
1186 + }
1187 + }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
1188 +};
1189 +DialogHeader.propTypes = {
1190 + onClose: _propTypes.default.func.isRequired,
1191 + children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node])
1192 +};
1193 +var _default = DialogHeader;
1194 +exports["default"] = _default;
1195 +
1196 +/***/ }),
1197 +
1198 +/***/ "../modules/ai/assets/js/editor/components/loader.js":
1199 +/*!***********************************************************!*\
1200 + !*** ../modules/ai/assets/js/editor/components/loader.js ***!
1201 + \***********************************************************/
1202 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1203 +
1204 +"use strict";
1205 +
1206 +
1207 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1208 +Object.defineProperty(exports, "__esModule", ({
1209 + value: true
1210 +}));
1211 +exports["default"] = void 0;
1212 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1213 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1214 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1215 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1216 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1217 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1218 +var _excluded = ["sx", "BoxProps"];
1219 +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; }
1220 +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; }
1221 +var Loader = function Loader(_ref) {
1222 + var _ref$sx = _ref.sx,
1223 + sx = _ref$sx === void 0 ? {} : _ref$sx,
1224 + _ref$BoxProps = _ref.BoxProps,
1225 + BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps,
1226 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1227 + return /*#__PURE__*/_react.default.createElement(_ui.Box, (0, _extends2.default)({
1228 + width: "100%",
1229 + display: "flex",
1230 + alignItems: "center"
1231 + }, BoxProps, {
1232 + sx: _objectSpread({
1233 + px: 1.5,
1234 + minHeight: function minHeight(theme) {
1235 + return theme.spacing(5);
1236 + }
1237 + }, BoxProps.sx || {})
1238 + }), /*#__PURE__*/_react.default.createElement(_ui.LinearProgress, (0, _extends2.default)({
1239 + color: "secondary"
1240 + }, props, {
1241 + sx: _objectSpread({
1242 + width: '100%'
1243 + }, sx)
1244 + })));
1245 +};
1246 +Loader.propTypes = {
1247 + sx: _propTypes.default.object,
1248 + BoxProps: _propTypes.default.object
1249 +};
1250 +var _default = Loader;
1251 +exports["default"] = _default;
1252 +
1253 +/***/ }),
1254 +
1255 +/***/ "../modules/ai/assets/js/editor/components/prompt-dialog.js":
1256 +/*!******************************************************************!*\
1257 + !*** ../modules/ai/assets/js/editor/components/prompt-dialog.js ***!
1258 + \******************************************************************/
1259 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1260 +
1261 +"use strict";
1262 +
1263 +
1264 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1265 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1266 +Object.defineProperty(exports, "__esModule", ({
1267 + value: true
1268 +}));
1269 +exports["default"] = void 0;
1270 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1271 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1272 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1273 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1274 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1275 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1276 +var _reactDraggable = _interopRequireDefault(__webpack_require__(/*! react-draggable */ "../node_modules/react-draggable/build/cjs/cjs.js"));
1277 +var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1278 +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); }
1279 +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; }
1280 +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; }
1281 +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; }
1282 +var DraggablePaper = function DraggablePaper(props) {
1283 + var _useState = (0, _react.useState)({
1284 + x: 0,
1285 + y: 0
1286 + }),
1287 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1288 + position = _useState2[0],
1289 + setPosition = _useState2[1];
1290 + var paperRef = (0, _react.useRef)(null);
1291 + var timeout = (0, _react.useRef)(null);
1292 + var onDrag = function onDrag(_e, _ref) {
1293 + var x = _ref.x,
1294 + y = _ref.y;
1295 + return setPosition({
1296 + x: x,
1297 + y: y
1298 + });
1299 + };
1300 + var handlePositionBoundaries = function handlePositionBoundaries() {
1301 + clearTimeout(timeout.current);
1302 +
1303 + // Ensuring the dialog header, which is used as the dialog dragging handle, does not exceed the screen.
1304 + timeout.current = setTimeout(function () {
1305 + var _paperRef$current;
1306 + var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
1307 + if (dialogTop < 0) {
1308 + setPosition(function (prev) {
1309 + return _objectSpread(_objectSpread({}, prev), {}, {
1310 + y: prev.y - dialogTop
1311 + });
1312 + });
1313 + }
1314 + }, 50);
1315 + };
1316 + (0, _react.useEffect)(function () {
1317 + var resizeObserver = new ResizeObserver(handlePositionBoundaries);
1318 + resizeObserver.observe(paperRef.current);
1319 + return function () {
1320 + resizeObserver.disconnect();
1321 + };
1322 + }, []);
1323 + return /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
1324 + position: position,
1325 + onDrag: onDrag,
1326 + handle: ".MuiAppBar-root",
1327 + cancel: '[class*="MuiDialogContent-root"]',
1328 + bounds: "parent"
1329 + }, /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
1330 + ref: paperRef
1331 + })));
1332 +};
1333 +var PromptDialog = function PromptDialog(props) {
1334 + return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
1335 + scroll: "paper",
1336 + open: true,
1337 + fullWidth: true,
1338 + hideBackdrop: true,
1339 + PaperComponent: DraggablePaper,
1340 + disableScrollLock: true,
1341 + sx: {
1342 + '& .MuiDialog-container': {
1343 + alignItems: 'flex-start',
1344 + mt: '18vh'
1345 + }
1346 + },
1347 + PaperProps: {
1348 + sx: {
1349 + m: 0,
1350 + maxHeight: '76vh'
1351 + }
1352 + }
1353 + }, props), props.children);
1354 +};
1355 +PromptDialog.propTypes = {
1356 + onClose: _propTypes.default.func.isRequired,
1357 + children: _propTypes.default.node,
1358 + maxWidth: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'xl', false])
1359 +};
1360 +PromptDialog.Header = _dialogHeader.default;
1361 +PromptDialog.Content = _ui.DialogContent;
1362 +var _default = PromptDialog;
1363 +exports["default"] = _default;
1364 +
1365 +/***/ }),
1366 +
1367 +/***/ "../modules/ai/assets/js/editor/components/prompt-error-message.js":
1368 +/*!*************************************************************************!*\
1369 + !*** ../modules/ai/assets/js/editor/components/prompt-error-message.js ***!
1370 + \*************************************************************************/
1371 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1372 +
1373 +"use strict";
1374 +/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
1375 +
1376 +
1377 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1378 +Object.defineProperty(exports, "__esModule", ({
1379 + value: true
1380 +}));
1381 +exports["default"] = void 0;
1382 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1383 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1384 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1385 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1386 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1387 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1388 +var _excluded = ["error", "onRetry", "actionPosition"];
1389 +var PromptErrorMessage = function PromptErrorMessage(_ref) {
1390 + var error = _ref.error,
1391 + _ref$onRetry = _ref.onRetry,
1392 + onRetry = _ref$onRetry === void 0 ? function () {} : _ref$onRetry,
1393 + _ref$actionPosition = _ref.actionPosition,
1394 + actionPosition = _ref$actionPosition === void 0 ? 'default' : _ref$actionPosition,
1395 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1396 + function getQuotaReachedTrailMessage(featureName) {
1397 + if (!featureName) {
1398 + return {
1399 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('It\'s time to upgrade.', 'elementor')),
1400 + description: (0, _i18n.__)('Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.', 'elementor'),
1401 + buttonText: (0, _i18n.__)('Upgrade', 'elementor'),
1402 + buttonAction: function buttonAction() {
1403 + return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1404 + }
1405 + };
1406 + }
1407 + return {
1408 + // Translators: %s is the feature name.
1409 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, sprintf((0, _i18n.__)('You\'ve used all AI credits for %s.', 'elementor'), featureName.toLowerCase())),
1410 + description: (0, _i18n.__)('Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)', 'elementor'),
1411 + buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1412 + buttonAction: function buttonAction() {
1413 + return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1414 + }
1415 + };
1416 + }
1417 + function getErrorMessage() {
1418 + var _error$extra_data;
1419 + var errMsg = error.message || error;
1420 + var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
1421 + var messages = {
1422 + default: {
1423 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1424 + description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1425 + buttonText: (0, _i18n.__)('Try again', 'elementor'),
1426 + buttonAction: onRetry
1427 + },
1428 + service_outage_internal: {
1429 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1430 + description: (0, _i18n.__)('Wait a moment and give it another go.', 'elementor'),
1431 + buttonText: (0, _i18n.__)('Try again', 'elementor'),
1432 + buttonAction: onRetry
1433 + },
1434 + invalid_connect_data: {
1435 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1436 + description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'), ' ', /*#__PURE__*/_react.default.createElement("a", {
1437 + href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1438 + target: "_blank",
1439 + rel: "noreferrer"
1440 + }, (0, _i18n.__)('Show me how', 'elementor'))),
1441 + buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1442 + buttonAction: function buttonAction() {
1443 + return window.open(window.ElementorAiConfig.connect_url);
1444 + }
1445 + },
1446 + not_connected: {
1447 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('You aren\'t connected to Elementor AI.', 'elementor')),
1448 + description: (0, _i18n.__)('Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.', 'elementor'),
1449 + buttonText: (0, _i18n.__)('Connect', 'elementor'),
1450 + buttonAction: function buttonAction() {
1451 + return window.open(window.ElementorAiConfig.connect_url);
1452 + }
1453 + },
1454 + quota_reached_trail: getQuotaReachedTrailMessage(featureName),
1455 + quota_reached_subscription: {
1456 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Looks like you\'re out of credits.', 'elementor')),
1457 + description: (0, _i18n.__)('Ready to take it to the next level?', 'elementor'),
1458 + buttonText: (0, _i18n.__)('Upgrade now', 'elementor'),
1459 + buttonAction: function buttonAction() {
1460 + return window.open('https://go.elementor.com/ai-popup-purchase-limit-reached/', '_blank');
1461 + }
1462 + },
1463 + rate_limit_network: {
1464 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Whoa! Slow down there.', 'elementor')),
1465 + description: (0, _i18n.__)('We can’t process that many requests so fast. Try again in 15 minutes.', 'elementor')
1466 + },
1467 + invalid_prompts: {
1468 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('We were unable to generate that prompt.', 'elementor')),
1469 + description: (0, _i18n.__)('Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.', 'elementor')
1470 + },
1471 + service_unavailable: {
1472 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1473 + description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1474 + buttonText: (0, _i18n.__)('Try again', 'elementor'),
1475 + buttonAction: onRetry
1476 + },
1477 + request_timeout_error: {
1478 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('There was a glitch.', 'elementor')),
1479 + description: (0, _i18n.__)('Wait a moment and give it another go, or try tweaking the prompt.', 'elementor'),
1480 + buttonText: (0, _i18n.__)('Try again', 'elementor'),
1481 + buttonAction: onRetry
1482 + },
1483 + invalid_token: {
1484 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('Try again', 'elementor')),
1485 + description: (0, _i18n.__)('Try exiting Elementor and sign in again.', 'elementor'),
1486 + buttonText: (0, _i18n.__)('Reconnect', 'elementor'),
1487 + buttonAction: onRetry
1488 + },
1489 + file_too_large: {
1490 + text: /*#__PURE__*/_react.default.createElement(_ui.AlertTitle, null, (0, _i18n.__)('The file is too large.', 'elementor')),
1491 + description: (0, _i18n.__)('Please upload a file that is less than 4MB.', 'elementor')
1492 + }
1493 + };
1494 + return messages[errMsg] || messages.default;
1495 + }
1496 + var message = getErrorMessage();
1497 + var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/_react.default.createElement(_ui.Button, {
1498 + color: "inherit",
1499 + size: "small",
1500 + variant: "outlined",
1501 + onClick: message.buttonAction
1502 + }, message.buttonText);
1503 + return /*#__PURE__*/_react.default.createElement(_ui.Alert, (0, _extends2.default)({
1504 + severity: message.severity || 'error',
1505 + action: 'default' === actionPosition && action
1506 + }, props), message.text, message.description, 'bottom' === actionPosition && /*#__PURE__*/_react.default.createElement(_ui.Box, {
1507 + sx: {
1508 + mt: 1
1509 + }
1510 + }, action));
1511 +};
1512 +PromptErrorMessage.propTypes = {
1513 + error: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.string]),
1514 + onRetry: _propTypes.default.func,
1515 + actionPosition: _propTypes.default.oneOf(['default', 'bottom'])
1516 +};
1517 +var _default = PromptErrorMessage;
1518 +exports["default"] = _default;
1519 +
1520 +/***/ }),
1521 +
1522 +/***/ "../modules/ai/assets/js/editor/components/prompt-library-link.js":
1523 +/*!************************************************************************!*\
1524 + !*** ../modules/ai/assets/js/editor/components/prompt-library-link.js ***!
1525 + \************************************************************************/
1526 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1527 +
1528 +"use strict";
1529 +
1530 +
1531 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1532 +Object.defineProperty(exports, "__esModule", ({
1533 + value: true
1534 +}));
1535 +exports["default"] = void 0;
1536 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1537 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1538 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1539 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1540 +var PromptLibraryLink = function PromptLibraryLink(props) {
1541 + return /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1542 + variant: "body2",
1543 + color: "text.secondary"
1544 + }, (0, _i18n.__)('For more suggestions, explore our'), ' ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
1545 + href: props.libraryLink,
1546 + className: "elementor-clickable",
1547 + target: "_blank"
1548 + }, (0, _i18n.__)('prompt library')));
1549 +};
1550 +PromptLibraryLink.propTypes = {
1551 + libraryLink: _propTypes.default.string
1552 +};
1553 +var _default = PromptLibraryLink;
1554 +exports["default"] = _default;
1555 +
1556 +/***/ }),
1557 +
1558 +/***/ "../modules/ai/assets/js/editor/components/upgrade-chip.js":
1559 +/*!*****************************************************************!*\
1560 + !*** ../modules/ai/assets/js/editor/components/upgrade-chip.js ***!
1561 + \*****************************************************************/
1562 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1563 +
1564 +"use strict";
1565 +
1566 +
1567 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1568 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1569 +Object.defineProperty(exports, "__esModule", ({
1570 + value: true
1571 +}));
1572 +exports["default"] = void 0;
1573 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1574 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1575 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1576 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
1577 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1578 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
1579 +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); }
1580 +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; }
1581 +var popoverId = 'e-ai-upgrade-popover';
1582 +var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
1583 + var theme = _ref.theme;
1584 + return {
1585 + position: 'relative',
1586 + '[data-popper-placement="top"] &': {
1587 + marginBottom: theme.spacing(2.5)
1588 + },
1589 + '[data-popper-placement="bottom"] &': {
1590 + marginTop: theme.spacing(2.5)
1591 + },
1592 + padding: theme.spacing(3),
1593 + boxShadow: theme.shadows[4],
1594 + zIndex: '9999'
1595 + };
1596 +});
1597 +var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
1598 + var theme = _ref2.theme;
1599 + return {
1600 + width: theme.spacing(5),
1601 + height: theme.spacing(2.5),
1602 + position: 'absolute',
1603 + overflow: 'hidden',
1604 + // Override Popper inline styles.
1605 + left: '50% !important',
1606 + transform: 'translateX(-50%) rotate(var(--rotate, 0deg)) !important',
1607 + '[data-popper-placement="top"] &': {
1608 + top: '100%'
1609 + },
1610 + '[data-popper-placement="bottom"] &': {
1611 + '--rotate': '180deg',
1612 + top: "calc(".concat(theme.spacing(2.5), " * -1)")
1613 + },
1614 + '&::after': {
1615 + backgroundColor: theme.palette.background.paper,
1616 + content: '""',
1617 + display: 'block',
1618 + position: 'absolute',
1619 + width: theme.spacing(2.5),
1620 + height: theme.spacing(2.5),
1621 + top: 0,
1622 + left: '50%',
1623 + transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
1624 + boxShadow: '1px 1px 5px 0px rgba(0, 0, 0, 0.2)',
1625 + backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
1626 + }
1627 + };
1628 +});
1629 +var upgradeBullets = [(0, _i18n.__)('Get spot-on suggestions from AI Copilot and AI Context with appropriate designs, layouts, and content for your business.', 'elementor'), (0, _i18n.__)('Generate professional texts about any topic, in any tone.', 'elementor'), (0, _i18n.__)('Effortlessly create or enhance stunning images and bring your ideas to life.', 'elementor'), (0, _i18n.__)('Unleash infinite possibilities with the custom code generator.', 'elementor'), (0, _i18n.__)('Access 30-days of AI History with the AI Starter plan and 90-days with the Power plan.', 'elementor')];
1630 +var Chip = (0, _ui.styled)(_ui.Chip)(function () {
1631 + return {
1632 + '& .MuiChip-label': {
1633 + lineHeight: 1.5
1634 + },
1635 + '& .MuiSvgIcon-root.MuiChip-icon': {
1636 + fontSize: '1.25rem'
1637 + }
1638 + };
1639 +});
1640 +var UpgradeChip = function UpgradeChip(_ref3) {
1641 + var _ref3$hasSubscription = _ref3.hasSubscription,
1642 + hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription,
1643 + _ref3$usagePercentage = _ref3.usagePercentage,
1644 + usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
1645 + var _useState = (0, _react.useState)(false),
1646 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1647 + isPopoverOpen = _useState2[0],
1648 + setIsPopoverOpen = _useState2[1];
1649 + var anchorEl = (0, _react.useRef)(null);
1650 + var arrowEl = (0, _react.useRef)(null);
1651 + var showPopover = function showPopover() {
1652 + return setIsPopoverOpen(true);
1653 + };
1654 + var hidePopover = function hidePopover() {
1655 + return setIsPopoverOpen(false);
1656 + };
1657 + var actionUrl = 'https://go.elementor.com/ai-popup-purchase-dropdown/';
1658 + if (hasSubscription) {
1659 + actionUrl = usagePercentage >= 100 ? 'https://go.elementor.com/ai-popup-upgrade-limit-reached/' : 'https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/';
1660 + }
1661 + var actionLabel = hasSubscription ? (0, _i18n.__)('Upgrade Elementor AI', 'elementor') : (0, _i18n.__)('Get Elementor AI', 'elementor');
1662 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1663 + component: "span",
1664 + "aria-owns": isPopoverOpen ? popoverId : undefined,
1665 + "aria-haspopup": "true",
1666 + onMouseEnter: showPopover,
1667 + onMouseLeave: hidePopover,
1668 + ref: anchorEl,
1669 + display: "flex",
1670 + alignItems: "center"
1671 + }, /*#__PURE__*/_react.default.createElement(Chip, {
1672 + color: "promotion",
1673 + label: (0, _i18n.__)('Upgrade', 'elementor'),
1674 + icon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1675 + size: "small"
1676 + }), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
1677 + open: isPopoverOpen,
1678 + anchorEl: anchorEl.current,
1679 + sx: {
1680 + zIndex: '9999',
1681 + maxWidth: 300
1682 + },
1683 + modifiers: [{
1684 + name: 'arrow',
1685 + enabled: true,
1686 + options: {
1687 + element: arrowEl.current
1688 + }
1689 + }]
1690 + }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
1691 + ref: arrowEl
1692 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1693 + variant: "h5",
1694 + color: "text.primary"
1695 + }, (0, _i18n.__)('Unlimited access to Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.List, {
1696 + sx: {
1697 + mb: 1
1698 + }
1699 + }, upgradeBullets.map(function (bullet, index) {
1700 + return /*#__PURE__*/_react.default.createElement(_ui.ListItem, {
1701 + key: index,
1702 + disableGutters: true,
1703 + sx: {
1704 + alignItems: 'flex-start'
1705 + }
1706 + }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(_icons.CheckedCircleIcon, null)), /*#__PURE__*/_react.default.createElement(_ui.ListItemText, {
1707 + sx: {
1708 + m: 0
1709 + }
1710 + }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
1711 + variant: "body2"
1712 + }, bullet)));
1713 + })), /*#__PURE__*/_react.default.createElement(_ui.Button, {
1714 + variant: "contained",
1715 + color: "promotion",
1716 + size: "small",
1717 + href: actionUrl,
1718 + target: "_blank",
1719 + startIcon: /*#__PURE__*/_react.default.createElement(_icons.AIIcon, null),
1720 + sx: {
1721 + '&:hover': {
1722 + color: 'promotion.contrastText'
1723 + }
1724 + }
1725 + }, actionLabel))));
1726 +};
1727 +var _default = UpgradeChip;
1728 +exports["default"] = _default;
1729 +UpgradeChip.propTypes = {
1730 + hasSubscription: _propTypes.default.bool,
1731 + usagePercentage: _propTypes.default.number
1732 +};
1733 +
1734 +/***/ }),
1735 +
1736 +/***/ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js":
1737 +/*!**************************************************************************!*\
1738 + !*** ../modules/ai/assets/js/editor/components/voice-promotion-alert.js ***!
1739 + \**************************************************************************/
1740 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1741 +
1742 +"use strict";
1743 +/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
1744 +/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
1745 +
1746 +
1747 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1748 +Object.defineProperty(exports, "__esModule", ({
1749 + value: true
1750 +}));
1751 +exports["default"] = exports.VoicePromotionAlert = void 0;
1752 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1753 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1754 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1755 +var _bulbIcon = _interopRequireDefault(__webpack_require__(/*! ../icons/bulb-icon */ "../modules/ai/assets/js/editor/icons/bulb-icon.js"));
1756 +var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
1757 +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; }
1758 +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; }
1759 +var VoicePromotionAlert = function VoicePromotionAlert(props) {
1760 + var _useIntroduction = (0, _useIntroduction2.default)(props.introductionKey),
1761 + isViewed = _useIntroduction.isViewed,
1762 + markAsViewed = _useIntroduction.markAsViewed;
1763 + if (isViewed) {
1764 + return null;
1765 + }
1766 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
1767 + sx: _objectSpread({
1768 + mt: 2
1769 + }, props.sx),
1770 + alignItems: "top"
1771 + }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
1772 + severity: "info",
1773 + variant: "standard",
1774 + icon: /*#__PURE__*/_react.default.createElement(_bulbIcon.default, {
1775 + sx: {
1776 + alignSelf: 'flex-start'
1777 + }
1778 + }),
1779 + onClose: markAsViewed
1780 + }, __('Get improved results from AI by adding personal context.', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
1781 + onClick: function onClick() {
1782 + return $e.route('panel/global/menu');
1783 + },
1784 + className: "elementor-clickable",
1785 + style: {
1786 + textDecoration: 'none'
1787 + },
1788 + color: "info.main",
1789 + href: "#"
1790 + }, __('Let’s do it', 'elementor'))));
1791 +};
1792 +exports.VoicePromotionAlert = VoicePromotionAlert;
1793 +VoicePromotionAlert.propTypes = {
1794 + sx: PropTypes.object,
1795 + introductionKey: PropTypes.string
1796 +};
1797 +var _default = VoicePromotionAlert;
1798 +exports["default"] = _default;
1799 +
1800 +/***/ }),
1801 +
1802 +/***/ "../modules/ai/assets/js/editor/components/wizard-dialog.js":
1803 +/*!******************************************************************!*\
1804 + !*** ../modules/ai/assets/js/editor/components/wizard-dialog.js ***!
1805 + \******************************************************************/
1806 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1807 +
1808 +"use strict";
1809 +
1810 +
1811 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1812 +Object.defineProperty(exports, "__esModule", ({
1813 + value: true
1814 +}));
1815 +exports["default"] = void 0;
1816 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
1817 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
1818 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
1819 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
1820 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
1821 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1822 +var _dialogHeader = _interopRequireDefault(__webpack_require__(/*! ./dialog-header */ "../modules/ai/assets/js/editor/components/dialog-header.js"));
1823 +var _excluded = ["sx"];
1824 +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; }
1825 +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; }
1826 +var WizardDialog = function WizardDialog(props) {
1827 + return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
1828 + open: true,
1829 + onClose: props.onClose,
1830 + fullWidth: true,
1831 + hideBackdrop: true,
1832 + maxWidth: "lg",
1833 + PaperProps: {
1834 + sx: {
1835 + height: '88vh'
1836 + }
1837 + },
1838 + sx: {
1839 + zIndex: 9999
1840 + }
1841 + }, props.children);
1842 +};
1843 +WizardDialog.propTypes = {
1844 + onClose: _propTypes.default.func.isRequired,
1845 + children: _propTypes.default.node.isRequired
1846 +};
1847 +var WizardDialogContent = function WizardDialogContent(_ref) {
1848 + var _ref$sx = _ref.sx,
1849 + sx = _ref$sx === void 0 ? {} : _ref$sx,
1850 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
1851 + return /*#__PURE__*/_react.default.createElement(_ui.DialogContent, (0, _extends2.default)({}, props, {
1852 + sx: _objectSpread({
1853 + display: 'flex',
1854 + flexDirection: 'column',
1855 + justifyContent: 'center'
1856 + }, sx)
1857 + }));
1858 +};
1859 +WizardDialogContent.propTypes = {
1860 + sx: _propTypes.default.object
1861 +};
1862 +WizardDialog.Header = _dialogHeader.default;
1863 +WizardDialog.Content = WizardDialogContent;
1864 +var _default = WizardDialog;
1865 +exports["default"] = _default;
1866 +
1867 +/***/ }),
1868 +
1869 +/***/ "../modules/ai/assets/js/editor/context/requests-ids.js":
1870 +/*!**************************************************************!*\
1871 + !*** ../modules/ai/assets/js/editor/context/requests-ids.js ***!
1872 + \**************************************************************/
1873 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1874 +
1875 +"use strict";
1876 +
1877 +
1878 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1879 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
1880 +Object.defineProperty(exports, "__esModule", ({
1881 + value: true
1882 +}));
1883 +exports["default"] = exports.RequestIdsProvider = void 0;
1884 +exports.generateIds = generateIds;
1885 +exports.useRequestIds = exports.getUniqueId = void 0;
1886 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
1887 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
1888 +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); }
1889 +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; }
1890 +var Context = (0, _react.createContext)({});
1891 +var useRequestIds = function useRequestIds() {
1892 + var context = (0, _react.useContext)(Context);
1893 + if (!context) {
1894 + throw new Error('useRequestIds must be used within a RequestIdsProvider');
1895 + }
1896 + return context;
1897 +};
1898 +exports.useRequestIds = useRequestIds;
1899 +var getUniqueId = function getUniqueId(prefix) {
1900 + return prefix + '-' + Math.random().toString(16).substr(2, 7);
1901 +};
1902 +exports.getUniqueId = getUniqueId;
1903 +window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId('editor-session');
1904 +function generateIds(template) {
1905 + var _template$elements;
1906 + template.id = getUniqueId().toString();
1907 + if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) {
1908 + template.elements.map(function (child) {
1909 + return generateIds(child);
1910 + });
1911 + }
1912 + return template;
1913 +}
1914 +var RequestIdsProvider = function RequestIdsProvider(props) {
1915 + var editorSessionId = (0, _react.useRef)(window.EDITOR_SESSION_ID);
1916 + var sessionId = (0, _react.useRef)('');
1917 + var generateId = (0, _react.useRef)('');
1918 + var batchId = (0, _react.useRef)('');
1919 + var requestId = (0, _react.useRef)('');
1920 + sessionId.current = getUniqueId('session');
1921 + var setGenerate = function setGenerate() {
1922 + generateId.current = getUniqueId('generate');
1923 + return generateId;
1924 + };
1925 + var setBatch = function setBatch() {
1926 + batchId.current = getUniqueId('batch');
1927 + return batchId;
1928 + };
1929 + var setRequest = function setRequest() {
1930 + requestId.current = getUniqueId('request');
1931 + return requestId;
1932 + };
1933 + return /*#__PURE__*/_react.default.createElement(Context.Provider, {
1934 + value: {
1935 + editorSessionId: editorSessionId,
1936 + sessionId: sessionId,
1937 + generateId: generateId,
1938 + batchId: batchId,
1939 + requestId: requestId,
1940 + setGenerate: setGenerate,
1941 + setBatch: setBatch,
1942 + setRequest: setRequest
1943 + }
1944 + }, props.children);
1945 +};
1946 +exports.RequestIdsProvider = RequestIdsProvider;
1947 +RequestIdsProvider.propTypes = {
1948 + children: _propTypes.default.node.isRequired
1949 +};
1950 +var _default = Context;
1951 +exports["default"] = _default;
1952 +
1953 +/***/ }),
1954 +
1955 +/***/ "../modules/ai/assets/js/editor/hooks/use-introduction.js":
1956 +/*!****************************************************************!*\
1957 + !*** ../modules/ai/assets/js/editor/hooks/use-introduction.js ***!
1958 + \****************************************************************/
1959 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1960 +
1961 +"use strict";
1962 +
1963 +
1964 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
1965 +Object.defineProperty(exports, "__esModule", ({
1966 + value: true
1967 +}));
1968 +exports["default"] = useIntroduction;
1969 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
1970 +var _react = __webpack_require__(/*! react */ "react");
1971 +function useIntroduction(key) {
1972 + var _window$elementor$con, _window$elementorAdmi, _window$elementorAdmi2, _globalConfig$introdu;
1973 + 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;
1974 + var _useState = (0, _react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])),
1975 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
1976 + isViewed = _useState2[0],
1977 + setIsViewed = _useState2[1];
1978 + function markAsViewed() {
1979 + if (!key) {
1980 + return Promise.reject();
1981 + }
1982 + return new Promise(function (resolve, reject) {
1983 + if (isViewed) {
1984 + reject();
1985 + }
1986 + setIsViewed(true);
1987 + elementorCommon.ajax.addRequest('introduction_viewed', {
1988 + data: {
1989 + introductionKey: key
1990 + },
1991 + error: function error() {
1992 + setIsViewed(false);
1993 + reject();
1994 + },
1995 + success: function success() {
1996 + setIsViewed(true);
1997 + if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) {
1998 + globalConfig.introduction[key] = true;
1999 + }
2000 + resolve();
2001 + }
2002 + });
2003 + });
2004 + }
2005 + return {
2006 + isViewed: isViewed,
2007 + markAsViewed: markAsViewed
2008 + };
2009 +}
2010 +
2011 +/***/ }),
2012 +
2013 +/***/ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js":
2014 +/*!*******************************************************************!*\
2015 + !*** ../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js ***!
2016 + \*******************************************************************/
2017 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2018 +
2019 +"use strict";
2020 +
2021 +
2022 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2023 +Object.defineProperty(exports, "__esModule", ({
2024 + value: true
2025 +}));
2026 +exports["default"] = void 0;
2027 +var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2028 +var _usePrompt2 = _interopRequireDefault(__webpack_require__(/*! ./use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
2029 +var _config = __webpack_require__(/*! ../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2030 +var enhancePromptMap = new Map([['media', _api.getImagePromptEnhanced], ['layout', _api.getLayoutPromptEnhanced]]);
2031 +var getResult = function getResult(prompt, type, enhanceType) {
2032 + if (!enhancePromptMap.has(type)) {
2033 + throw new Error("Invalid prompt type: ".concat(type));
2034 + }
2035 + return enhancePromptMap.get(type)(prompt, enhanceType);
2036 +};
2037 +
1039 2038 /**
1040 - * Copyright (c) 2013-present, Facebook, Inc.
1041 - *
1042 - * This source code is licensed under the MIT license found in the
1043 - * LICENSE file in the root directory of this source tree.
1044 - */
1045 - var require_checkPropTypes = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1046 - var printWarning = function() {};
1047 - var ReactPropTypesSecret = require_ReactPropTypesSecret();
1048 - var loggedTypeFailures = {};
1049 - var has = require_has();
1050 - printWarning = function(text) {
1051 - var message = "Warning: " + text;
1052 - if (typeof console !== "undefined") console.error(message);
1053 - try {
1054 - throw new Error(message);
1055 - } catch (x) {}
1056 - };
1057 - /**
1058 - * Assert that the values match with the type specs.
1059 - * Error messages are memorized and will only be shown once.
1060 - *
1061 - * @param {object} typeSpecs Map of name to a ReactPropType
1062 - * @param {object} values Runtime values that need to be type-checked
1063 - * @param {string} location e.g. "prop", "context", "child context"
1064 - * @param {string} componentName Name of the component for error messages.
1065 - * @param {?Function} getStack Returns the component stack.
1066 - * @private
1067 - */
1068 - function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
1069 - for (var typeSpecName in typeSpecs) if (has(typeSpecs, typeSpecName)) {
1070 - var error;
1071 - try {
1072 - if (typeof typeSpecs[typeSpecName] !== "function") {
1073 - var err = Error((componentName || "React class") + ": " + location + " type `" + typeSpecName + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof typeSpecs[typeSpecName] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
1074 - err.name = "Invariant Violation";
1075 - throw err;
1076 - }
1077 - error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
1078 - } catch (ex) {
1079 - error = ex;
1080 - }
1081 - if (error && !(error instanceof Error)) printWarning((componentName || "React class") + ": type specification of " + location + " `" + typeSpecName + "` is invalid; the type checker function must return `null` or an `Error` but returned a " + typeof error + ". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).");
1082 - if (error instanceof Error && !(error.message in loggedTypeFailures)) {
1083 - loggedTypeFailures[error.message] = true;
1084 - var stack = getStack ? getStack() : "";
1085 - printWarning("Failed " + location + " type: " + error.message + (stack != null ? stack : ""));
1086 - }
1087 - }
1088 - }
1089 - /**
1090 - * Resets warning cache when testing.
1091 - *
1092 - * @private
1093 - */
1094 - checkPropTypes.resetWarningCache = function() {
1095 - loggedTypeFailures = {};
1096 - };
1097 - module.exports = checkPropTypes;
1098 - }));
2039 + * Hook to enhance a prompt.
2040 + *
2041 + * @param {string} prompt
2042 + * @param {'media' | 'layout'} type
2043 + * @return {{enhancedPrompt: string | undefined, isEnhancing: boolean, enhance: (function(...[*]): Promise)}}
2044 + */
2045 +var usePromptEnhancer = function usePromptEnhancer(prompt, type) {
2046 + var _useConfig = (0, _config.useConfig)(),
2047 + mode = _useConfig.mode;
2048 + var _usePrompt = (0, _usePrompt2.default)(function () {
2049 + return getResult(prompt, type, mode);
2050 + }, prompt),
2051 + enhancedData = _usePrompt.data,
2052 + isEnhancing = _usePrompt.isLoading,
2053 + enhance = _usePrompt.send;
2054 + return {
2055 + enhance: enhance,
2056 + isEnhancing: isEnhancing,
2057 + enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
2058 + };
2059 +};
2060 +var _default = usePromptEnhancer;
2061 +exports["default"] = _default;
1099 2062
1100 -//#endregion
1101 -//#region node_modules/prop-types/factoryWithTypeCheckers.js
2063 +/***/ }),
2064 +
2065 +/***/ "../modules/ai/assets/js/editor/hooks/use-prompt.js":
2066 +/*!**********************************************************!*\
2067 + !*** ../modules/ai/assets/js/editor/hooks/use-prompt.js ***!
2068 + \**********************************************************/
2069 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2070 +
2071 +"use strict";
2072 +
2073 +
2074 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2075 +Object.defineProperty(exports, "__esModule", ({
2076 + value: true
2077 +}));
2078 +exports["default"] = void 0;
2079 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2080 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2081 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2082 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2083 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
2084 +var _react = __webpack_require__(/*! react */ "react");
2085 +var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2086 +var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2087 +var _excluded = ["text", "response_id", "usage", "images"];
2088 +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; }
2089 +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; }
2090 +var normalizeResponse = function normalizeResponse(_ref) {
2091 + var text = _ref.text,
2092 + responseId = _ref.response_id,
2093 + usage = _ref.usage,
2094 + images = _ref.images,
2095 + optional = (0, _objectWithoutProperties2.default)(_ref, _excluded);
2096 + var creditsData = usage ? usage.quota - usage.usedQuota : 0;
2097 + var credits = Math.max(creditsData, 0);
2098 + var result = text || images;
2099 + var normalized = {
2100 + result: result,
2101 + responseId: responseId,
2102 + credits: credits
2103 + };
2104 + if (optional.base_template_id) {
2105 + normalized.baseTemplateId = optional.base_template_id;
2106 + }
2107 + normalized.type = optional.template_type;
2108 + return normalized;
2109 +};
2110 +var usePrompt = function usePrompt(fetchData, initialState) {
2111 + var _useState = (0, _react.useState)(false),
2112 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2113 + isLoading = _useState2[0],
2114 + setIsLoading = _useState2[1];
2115 + var _useState3 = (0, _react.useState)(''),
2116 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2117 + error = _useState4[0],
2118 + setError = _useState4[1];
2119 + var _useState5 = (0, _react.useState)(initialState),
2120 + _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2121 + data = _useState6[0],
2122 + setData = _useState6[1];
2123 + var _useRequestIds = (0, _requestsIds.useRequestIds)(),
2124 + setRequest = _useRequestIds.setRequest,
2125 + editorSessionId = _useRequestIds.editorSessionId,
2126 + sessionId = _useRequestIds.sessionId,
2127 + generateId = _useRequestIds.generateId,
2128 + batchId = _useRequestIds.batchId;
2129 + var send = /*#__PURE__*/function () {
2130 + var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
2131 + return _regenerator.default.wrap(function _callee$(_context) {
2132 + while (1) switch (_context.prev = _context.next) {
2133 + case 0:
2134 + return _context.abrupt("return", new Promise(function (resolve, reject) {
2135 + setError('');
2136 + setIsLoading(true);
2137 + var requestId = setRequest();
2138 + var requestIds = {
2139 + editorSessionId: editorSessionId.current,
2140 + sessionId: sessionId.current,
2141 + generateId: generateId.current,
2142 + batchId: batchId.current,
2143 + requestId: requestId.current
2144 + };
2145 + payload = _objectSpread(_objectSpread({}, payload), {}, {
2146 + requestIds: requestIds
2147 + });
2148 + fetchData(payload).then(function (result) {
2149 + var normalizedData = normalizeResponse(result);
2150 + setData(normalizedData);
2151 + resolve(normalizedData);
2152 + }).catch(function (err) {
2153 + var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
2154 + setError(finalError);
2155 + reject(finalError);
2156 + }).finally(function () {
2157 + return setIsLoading(false);
2158 + });
2159 + }));
2160 + case 1:
2161 + case "end":
2162 + return _context.stop();
2163 + }
2164 + }, _callee);
2165 + }));
2166 + return function send(_x) {
2167 + return _ref2.apply(this, arguments);
2168 + };
2169 + }();
2170 + var sendUsageData = function sendUsageData() {
2171 + var usageData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : data;
2172 + return usageData.responseId && (0, _api.setStatusFeedback)(usageData.responseId);
2173 + };
2174 + var reset = function reset() {
2175 + setData(function (_ref3) {
2176 + var credits = _ref3.credits;
2177 + return {
2178 + credits: credits,
2179 + result: '',
2180 + responseId: ''
2181 + };
2182 + });
2183 + setError('');
2184 + setIsLoading(false);
2185 + };
2186 + var setResult = function setResult(result) {
2187 + var responseId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
2188 + var updatedResult = _objectSpread({}, data);
2189 + updatedResult.result = result;
2190 + if (responseId) {
2191 + updatedResult.responseId = responseId;
2192 + }
2193 + setData(updatedResult);
2194 + };
2195 + return {
2196 + isLoading: isLoading,
2197 + error: error,
2198 + data: data,
2199 + setResult: setResult,
2200 + reset: reset,
2201 + send: send,
2202 + sendUsageData: sendUsageData
2203 + };
2204 +};
2205 +var _default = usePrompt;
2206 +exports["default"] = _default;
2207 +
2208 +/***/ }),
2209 +
2210 +/***/ "../modules/ai/assets/js/editor/hooks/use-timeout.js":
2211 +/*!***********************************************************!*\
2212 + !*** ../modules/ai/assets/js/editor/hooks/use-timeout.js ***!
2213 + \***********************************************************/
2214 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2215 +
2216 +"use strict";
2217 +
2218 +
2219 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2220 +Object.defineProperty(exports, "__esModule", ({
2221 + value: true
2222 +}));
2223 +exports.useTimeout = void 0;
2224 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2225 +var _react = __webpack_require__(/*! react */ "react");
2226 +var useTimeout = function useTimeout(delay) {
2227 + var _useState = (0, _react.useState)(false),
2228 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2229 + isTimeout = _useState2[0],
2230 + setIsTimeout = _useState2[1];
2231 + var timeoutIdRef = (0, _react.useRef)(null);
2232 + var turnOffTimeout = function turnOffTimeout() {
2233 + clearTimeout(timeoutIdRef.current);
2234 + setIsTimeout(false);
2235 + };
2236 + (0, _react.useEffect)(function () {
2237 + timeoutIdRef.current = setTimeout(function () {
2238 + setIsTimeout(true);
2239 + }, delay);
2240 + return function () {
2241 + clearTimeout(timeoutIdRef.current);
2242 + };
2243 + }, [delay]);
2244 + return [isTimeout, turnOffTimeout];
2245 +};
2246 +exports.useTimeout = useTimeout;
2247 +
2248 +/***/ }),
2249 +
2250 +/***/ "../modules/ai/assets/js/editor/hooks/use-user-info.js":
2251 +/*!*************************************************************!*\
2252 + !*** ../modules/ai/assets/js/editor/hooks/use-user-info.js ***!
2253 + \*************************************************************/
2254 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2255 +
2256 +"use strict";
2257 +
2258 +
2259 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2260 +Object.defineProperty(exports, "__esModule", ({
2261 + value: true
2262 +}));
2263 +exports["default"] = void 0;
2264 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
2265 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
2266 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
2267 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
2268 +var _react = __webpack_require__(/*! react */ "react");
2269 +var _api = __webpack_require__(/*! ../api */ "../modules/ai/assets/js/editor/api/index.js");
2270 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2271 +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; }
2272 +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; }
2273 +var useUserInfo = function useUserInfo() {
2274 + var immediately = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
2275 + var _useState = (0, _react.useState)(false),
2276 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
2277 + isLoaded = _useState2[0],
2278 + setIsLoaded = _useState2[1];
2279 + var _useState3 = (0, _react.useState)(false),
2280 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
2281 + isLoading = _useState4[0],
2282 + setIsLoading = _useState4[1];
2283 + var _useState5 = (0, _react.useState)({
2284 + is_connected: false,
2285 + is_get_started: false,
2286 + connect_url: '',
2287 + usage: {
2288 + hasAiSubscription: false,
2289 + quota: 0,
2290 + usedQuota: 0
2291 + }
2292 + }),
2293 + _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
2294 + userInfo = _useState6[0],
2295 + setUserInfo = _useState6[1];
2296 + var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
2297 + var usagePercentage = userInfo.usage.usedQuota / userInfo.usage.quota * 100;
2298 + var fetchData = /*#__PURE__*/function () {
2299 + var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
2300 + var userInfoResult;
2301 + return _regenerator.default.wrap(function _callee$(_context) {
2302 + while (1) switch (_context.prev = _context.next) {
2303 + case 0:
2304 + setIsLoading(true);
2305 + _context.next = 3;
2306 + return (0, _api.getUserInformation)(immediately);
2307 + case 3:
2308 + userInfoResult = _context.sent;
2309 + setUserInfo(function (prevState) {
2310 + return _objectSpread(_objectSpread({}, prevState), userInfoResult);
2311 + });
2312 + setIsLoaded(true);
2313 + setIsLoading(false);
2314 + case 7:
2315 + case "end":
2316 + return _context.stop();
2317 + }
2318 + }, _callee);
2319 + }));
2320 + return function fetchData() {
2321 + return _ref.apply(this, arguments);
2322 + };
2323 + }();
2324 + if (!isLoaded && !isLoading) {
2325 + fetchData();
2326 + }
2327 + return {
2328 + isLoading: isLoading,
2329 + isLoaded: isLoaded,
2330 + isConnected: userInfo.is_connected,
2331 + isGetStarted: userInfo.is_get_started,
2332 + connectUrl: userInfo.connect_url,
2333 + builderUrl: userInfo.usage.builderUrl,
2334 + hasSubscription: userInfo.usage.hasAiSubscription,
2335 + credits: credits < 0 ? 0 : credits,
2336 + usagePercentage: Math.round(usagePercentage),
2337 + fetchData: fetchData
2338 + };
2339 +};
2340 +useUserInfo.propTypes = {
2341 + immediately: _propTypes.default.bool
2342 +};
2343 +var _default = useUserInfo;
2344 +exports["default"] = _default;
2345 +
2346 +/***/ }),
2347 +
2348 +/***/ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js":
2349 +/*!***************************************************************!*\
2350 + !*** ../modules/ai/assets/js/editor/icons/arrow-left-icon.js ***!
2351 + \***************************************************************/
2352 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2353 +
2354 +"use strict";
2355 +
2356 +
2357 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2358 +Object.defineProperty(exports, "__esModule", ({
2359 + value: true
2360 +}));
2361 +exports["default"] = void 0;
2362 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2363 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2364 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2365 +var ArrowLeftIcon = _react.default.forwardRef(function (props, ref) {
2366 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2367 + viewBox: "0 0 24 24"
2368 + }, props, {
2369 + ref: ref
2370 + }), /*#__PURE__*/_react.default.createElement("path", {
2371 + fillRule: "evenodd",
2372 + clipRule: "evenodd",
2373 + 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"
2374 + }));
2375 +});
2376 +var _default = ArrowLeftIcon;
2377 +exports["default"] = _default;
2378 +
2379 +/***/ }),
2380 +
2381 +/***/ "../modules/ai/assets/js/editor/icons/bulb-icon.js":
2382 +/*!*********************************************************!*\
2383 + !*** ../modules/ai/assets/js/editor/icons/bulb-icon.js ***!
2384 + \*********************************************************/
2385 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2386 +
2387 +"use strict";
2388 +
2389 +
2390 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2391 +Object.defineProperty(exports, "__esModule", ({
2392 + value: true
2393 +}));
2394 +exports["default"] = void 0;
2395 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2396 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2397 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2398 +var BulbIcon = _react.default.forwardRef(function (props, ref) {
2399 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({}, props, {
2400 + ref: ref
2401 + }), /*#__PURE__*/_react.default.createElement("svg", {
2402 + width: "22",
2403 + height: "22",
2404 + viewBox: "0 0 22 22",
2405 + fill: "none",
2406 + xmlns: "http://www.w3.org/2000/svg"
2407 + }, /*#__PURE__*/_react.default.createElement("g", {
2408 + clipPath: "url(#clip0_10743_8902)"
2409 + }, /*#__PURE__*/_react.default.createElement("path", {
2410 + 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",
2411 + stroke: "#2563EB",
2412 + strokeWidth: "1.5",
2413 + strokeLinecap: "round",
2414 + strokeLinejoin: "round"
2415 + }), /*#__PURE__*/_react.default.createElement("path", {
2416 + 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",
2417 + stroke: "#2563EB",
2418 + strokeWidth: "1.5",
2419 + strokeLinecap: "round",
2420 + strokeLinejoin: "round"
2421 + }), /*#__PURE__*/_react.default.createElement("path", {
2422 + d: "M10.0833 16.5H11.9166",
2423 + stroke: "#2563EB",
2424 + strokeWidth: "1.5",
2425 + strokeLinecap: "round",
2426 + strokeLinejoin: "round"
2427 + })), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("clipPath", {
2428 + id: "clip0_10743_8902"
2429 + }, /*#__PURE__*/_react.default.createElement("rect", {
2430 + width: "22",
2431 + height: "22",
2432 + fill: "white"
2433 + })))));
2434 +});
2435 +var _default = BulbIcon;
2436 +exports["default"] = _default;
2437 +
2438 +/***/ }),
2439 +
2440 +/***/ "../modules/ai/assets/js/editor/icons/copy-page-icon.js":
2441 +/*!**************************************************************!*\
2442 + !*** ../modules/ai/assets/js/editor/icons/copy-page-icon.js ***!
2443 + \**************************************************************/
2444 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2445 +
2446 +"use strict";
2447 +
2448 +
2449 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2450 +Object.defineProperty(exports, "__esModule", ({
2451 + value: true
2452 +}));
2453 +exports["default"] = void 0;
2454 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2455 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2456 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2457 +var CopyPageIcon = _react.default.forwardRef(function (props, ref) {
2458 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2459 + viewBox: "0 0 24 24"
2460 + }, props, {
2461 + ref: ref
2462 + }), /*#__PURE__*/_react.default.createElement("path", {
2463 + fillRule: "evenodd",
2464 + clipRule: "evenodd",
2465 + 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"
2466 + }));
2467 +});
2468 +var _default = CopyPageIcon;
2469 +exports["default"] = _default;
2470 +
2471 +/***/ }),
2472 +
2473 +/***/ "../modules/ai/assets/js/editor/icons/edit-icon.js":
2474 +/*!*********************************************************!*\
2475 + !*** ../modules/ai/assets/js/editor/icons/edit-icon.js ***!
2476 + \*********************************************************/
2477 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2478 +
2479 +"use strict";
2480 +
2481 +
2482 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2483 +Object.defineProperty(exports, "__esModule", ({
2484 + value: true
2485 +}));
2486 +exports["default"] = void 0;
2487 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2488 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2489 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2490 +var EditIcon = _react.default.forwardRef(function (props, ref) {
2491 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2492 + viewBox: "0 0 24 24"
2493 + }, props, {
2494 + ref: ref
2495 + }), /*#__PURE__*/_react.default.createElement("path", {
2496 + fillRule: "evenodd",
2497 + clipRule: "evenodd",
2498 + 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"
2499 + }), /*#__PURE__*/_react.default.createElement("path", {
2500 + fillRule: "evenodd",
2501 + clipRule: "evenodd",
2502 + 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"
2503 + }));
2504 +});
2505 +var _default = EditIcon;
2506 +exports["default"] = _default;
2507 +
2508 +/***/ }),
2509 +
2510 +/***/ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js":
2511 +/*!********************************************************************!*\
2512 + !*** ../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js ***!
2513 + \********************************************************************/
2514 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2515 +
2516 +"use strict";
2517 +
2518 +
2519 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2520 +Object.defineProperty(exports, "__esModule", ({
2521 + value: true
2522 +}));
2523 +exports["default"] = void 0;
2524 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2525 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2526 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2527 +var ExpandDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2528 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2529 + viewBox: "0 0 24 24"
2530 + }, props, {
2531 + ref: ref
2532 + }), /*#__PURE__*/_react.default.createElement("path", {
2533 + fillRule: "evenodd",
2534 + clipRule: "evenodd",
2535 + 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"
2536 + }));
2537 +});
2538 +var _default = ExpandDiagonalIcon;
2539 +exports["default"] = _default;
2540 +
2541 +/***/ }),
2542 +
2543 +/***/ "../modules/ai/assets/js/editor/icons/lock-icon.js":
2544 +/*!*********************************************************!*\
2545 + !*** ../modules/ai/assets/js/editor/icons/lock-icon.js ***!
2546 + \*********************************************************/
2547 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2548 +
2549 +"use strict";
2550 +
2551 +
2552 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2553 +Object.defineProperty(exports, "__esModule", ({
2554 + value: true
2555 +}));
2556 +exports["default"] = void 0;
2557 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2558 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2559 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2560 +var LockIcon = _react.default.forwardRef(function (props, ref) {
2561 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2562 + viewBox: "0 0 24 24"
2563 + }, props, {
2564 + ref: ref
2565 + }), /*#__PURE__*/_react.default.createElement("path", {
2566 + fillRule: "evenodd",
2567 + clipRule: "evenodd",
2568 + 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"
2569 + }), /*#__PURE__*/_react.default.createElement("path", {
2570 + fillRule: "evenodd",
2571 + clipRule: "evenodd",
2572 + 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"
2573 + }), /*#__PURE__*/_react.default.createElement("path", {
2574 + d: "M6 12H19V20H6V12Z"
2575 + }));
2576 +});
2577 +var _default = LockIcon;
2578 +exports["default"] = _default;
2579 +
2580 +/***/ }),
2581 +
2582 +/***/ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js":
2583 +/*!**********************************************************************!*\
2584 + !*** ../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js ***!
2585 + \**********************************************************************/
2586 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2587 +
2588 +"use strict";
2589 +
2590 +
2591 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2592 +Object.defineProperty(exports, "__esModule", ({
2593 + value: true
2594 +}));
2595 +exports["default"] = void 0;
2596 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2597 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2598 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2599 +var MinimizeDiagonalIcon = _react.default.forwardRef(function (props, ref) {
2600 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2601 + viewBox: "0 0 24 24"
2602 + }, props, {
2603 + ref: ref
2604 + }), /*#__PURE__*/_react.default.createElement("path", {
2605 + fillRule: "evenodd",
2606 + clipRule: "evenodd",
2607 + 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"
2608 + }));
2609 +});
2610 +var _default = MinimizeDiagonalIcon;
2611 +exports["default"] = _default;
2612 +
2613 +/***/ }),
2614 +
2615 +/***/ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js":
2616 +/*!****************************************************************!*\
2617 + !*** ../modules/ai/assets/js/editor/icons/plus-circle-icon.js ***!
2618 + \****************************************************************/
2619 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2620 +
2621 +"use strict";
2622 +
2623 +
2624 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2625 +Object.defineProperty(exports, "__esModule", ({
2626 + value: true
2627 +}));
2628 +exports["default"] = void 0;
2629 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2630 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2631 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2632 +var PlusCircleIcon = _react.default.forwardRef(function (props, ref) {
2633 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2634 + viewBox: "0 0 24 24"
2635 + }, props, {
2636 + ref: ref
2637 + }), /*#__PURE__*/_react.default.createElement("path", {
2638 + 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"
2639 + }));
2640 +});
2641 +var _default = PlusCircleIcon;
2642 +exports["default"] = _default;
2643 +
2644 +/***/ }),
2645 +
2646 +/***/ "../modules/ai/assets/js/editor/icons/refresh-icon.js":
2647 +/*!************************************************************!*\
2648 + !*** ../modules/ai/assets/js/editor/icons/refresh-icon.js ***!
2649 + \************************************************************/
2650 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2651 +
2652 +"use strict";
2653 +
2654 +
2655 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2656 +Object.defineProperty(exports, "__esModule", ({
2657 + value: true
2658 +}));
2659 +exports["default"] = void 0;
2660 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2661 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2662 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2663 +var RefreshIcon = _react.default.forwardRef(function (props, ref) {
2664 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2665 + viewBox: "0 0 24 24"
2666 + }, props, {
2667 + ref: ref
2668 + }), /*#__PURE__*/_react.default.createElement("path", {
2669 + fillRule: "evenodd",
2670 + clipRule: "evenodd",
2671 + 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"
2672 + }), /*#__PURE__*/_react.default.createElement("path", {
2673 + fillRule: "evenodd",
2674 + clipRule: "evenodd",
2675 + 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"
2676 + }));
2677 +});
2678 +var _default = RefreshIcon;
2679 +exports["default"] = _default;
2680 +
2681 +/***/ }),
2682 +
2683 +/***/ "../modules/ai/assets/js/editor/icons/wand-icon.js":
2684 +/*!*********************************************************!*\
2685 + !*** ../modules/ai/assets/js/editor/icons/wand-icon.js ***!
2686 + \*********************************************************/
2687 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2688 +
2689 +"use strict";
2690 +
2691 +
2692 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2693 +Object.defineProperty(exports, "__esModule", ({
2694 + value: true
2695 +}));
2696 +exports["default"] = void 0;
2697 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2698 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2699 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2700 +var WandIcon = _react.default.forwardRef(function (props, ref) {
2701 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2702 + viewBox: "0 0 24 24"
2703 + }, props, {
2704 + ref: ref
2705 + }), /*#__PURE__*/_react.default.createElement("path", {
2706 + fillRule: "evenodd",
2707 + clipRule: "evenodd",
2708 + 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"
2709 + }), /*#__PURE__*/_react.default.createElement("path", {
2710 + fillRule: "evenodd",
2711 + clipRule: "evenodd",
2712 + 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"
2713 + }), /*#__PURE__*/_react.default.createElement("path", {
2714 + fillRule: "evenodd",
2715 + clipRule: "evenodd",
2716 + 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"
2717 + }));
2718 +});
2719 +var _default = WandIcon;
2720 +exports["default"] = _default;
2721 +
2722 +/***/ }),
2723 +
2724 +/***/ "../modules/ai/assets/js/editor/icons/website-icon.js":
2725 +/*!************************************************************!*\
2726 + !*** ../modules/ai/assets/js/editor/icons/website-icon.js ***!
2727 + \************************************************************/
2728 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2729 +
2730 +"use strict";
2731 +
2732 +
2733 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2734 +Object.defineProperty(exports, "__esModule", ({
2735 + value: true
2736 +}));
2737 +exports["default"] = void 0;
2738 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2739 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2740 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2741 +var WebsiteIcon = _react.default.forwardRef(function (props, ref) {
2742 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2743 + viewBox: "0 0 24 24"
2744 + }, props, {
2745 + ref: ref
2746 + }), /*#__PURE__*/_react.default.createElement("path", {
2747 + fillRule: "evenodd",
2748 + clipRule: "evenodd",
2749 + 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"
2750 + }));
2751 +});
2752 +var _default = WebsiteIcon;
2753 +exports["default"] = _default;
2754 +
2755 +/***/ }),
2756 +
2757 +/***/ "../modules/ai/assets/js/editor/icons/x-circle-icon.js":
2758 +/*!*************************************************************!*\
2759 + !*** ../modules/ai/assets/js/editor/icons/x-circle-icon.js ***!
2760 + \*************************************************************/
2761 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2762 +
2763 +"use strict";
2764 +
2765 +
2766 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2767 +Object.defineProperty(exports, "__esModule", ({
2768 + value: true
2769 +}));
2770 +exports["default"] = void 0;
2771 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
2772 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2773 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2774 +var XCircleIcon = _react.default.forwardRef(function (props, ref) {
2775 + return /*#__PURE__*/_react.default.createElement(_ui.SvgIcon, (0, _extends2.default)({
2776 + viewBox: "0 0 24 24"
2777 + }, props, {
2778 + ref: ref
2779 + }), /*#__PURE__*/_react.default.createElement("path", {
2780 + 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"
2781 + }));
2782 +});
2783 +var _default = XCircleIcon;
2784 +exports["default"] = _default;
2785 +
2786 +/***/ }),
2787 +
2788 +/***/ "../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js":
2789 +/*!********************************************************************************************!*\
2790 + !*** ../modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js ***!
2791 + \********************************************************************************************/
2792 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2793 +
2794 +"use strict";
2795 +
2796 +
2797 +var _require = __webpack_require__(/*! ../../utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js"),
2798 + renderLayoutApp = _require.renderLayoutApp,
2799 + importToEditor = _require.importToEditor;
2800 +var _require2 = __webpack_require__(/*! ../../pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js"),
2801 + MODE_VARIATION = _require2.MODE_VARIATION;
2802 +var _require3 = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"),
2803 + __ = _require3.__;
2804 +var _require4 = __webpack_require__(/*! ../../pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"),
2805 + ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON,
2806 + ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
2807 +var ApplyTemplateForAiBehavior;
2808 +ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
2809 + ui: {
2810 + applyButton: '.elementor-template-library-template-apply-ai',
2811 + generateVariation: '.elementor-template-library-template-generate-variation'
2812 + },
2813 + events: {
2814 + 'click @ui.applyButton': 'onApplyButtonClick',
2815 + 'click @ui.generateVariation': 'onGenerateVariationClick'
2816 + },
2817 + onGenerateVariationClick: function onGenerateVariationClick() {
2818 + var _libraryComponent$man, _libraryComponent$man2;
2819 + var args = {
2820 + model: this.view.model
2821 + };
2822 + var libraryComponent = $e.components.get('library');
2823 + 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;
2824 + libraryComponent.downloadTemplate(args, function (data) {
2825 + var model = args.model;
2826 + var attachment = {
2827 + type: ATTACHMENT_TYPE_JSON,
2828 + previewHTML: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
2829 + content: data.content[0],
2830 + label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
2831 + source: ELEMENTOR_LIBRARY_SOURCE
2832 + };
2833 + renderLayoutApp({
2834 + parentContainer: elementor.getPreviewContainer(),
2835 + mode: MODE_VARIATION,
2836 + at: at,
2837 + attachments: [attachment],
2838 + onInsert: function onInsert(template) {
2839 + importToEditor({
2840 + parentContainer: elementor.getPreviewContainer(),
2841 + at: at,
2842 + template: template,
2843 + historyTitle: __('AI Variation from library', 'elementor')
2844 + });
2845 + }
2846 + });
2847 + $e.run('library/close');
2848 + });
2849 + },
2850 + onApplyButtonClick: function onApplyButtonClick() {
2851 + var args = {
2852 + model: this.view.model
2853 + };
2854 + this.ui.applyButton.addClass('elementor-disabled');
2855 + if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
2856 + $e.route('library/connect', args);
2857 + return;
2858 + }
2859 + $e.run('library/generate-ai-variation', args);
2860 + }
2861 +});
2862 +module.exports = ApplyTemplateForAiBehavior;
2863 +
2864 +/***/ }),
2865 +
2866 +/***/ "../modules/ai/assets/js/editor/layout-app-wrapper.js":
2867 +/*!************************************************************!*\
2868 + !*** ../modules/ai/assets/js/editor/layout-app-wrapper.js ***!
2869 + \************************************************************/
2870 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2871 +
2872 +"use strict";
2873 +
2874 +
2875 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2876 +Object.defineProperty(exports, "__esModule", ({
2877 + value: true
2878 +}));
2879 +exports["default"] = void 0;
2880 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2881 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
2882 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2883 +var LayoutAppWrapper = function LayoutAppWrapper(props) {
2884 + return /*#__PURE__*/_react.default.createElement(_ui.DirectionProvider, {
2885 + rtl: props.isRTL
2886 + }, /*#__PURE__*/_react.default.createElement(_ui.ThemeProvider, {
2887 + colorScheme: props.colorScheme
2888 + }, props.children));
2889 +};
2890 +LayoutAppWrapper.propTypes = {
2891 + children: _propTypes.default.node,
2892 + isRTL: _propTypes.default.bool,
2893 + colorScheme: _propTypes.default.oneOf(['auto', 'light', 'dark'])
2894 +};
2895 +var _default = LayoutAppWrapper;
2896 +exports["default"] = _default;
2897 +
2898 +/***/ }),
2899 +
2900 +/***/ "../modules/ai/assets/js/editor/layout-app.js":
2901 +/*!****************************************************!*\
2902 + !*** ../modules/ai/assets/js/editor/layout-app.js ***!
2903 + \****************************************************/
2904 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2905 +
2906 +"use strict";
2907 +
2908 +
2909 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2910 +Object.defineProperty(exports, "__esModule", ({
2911 + value: true
2912 +}));
2913 +exports["default"] = void 0;
2914 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2915 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2916 +var _layoutContent = _interopRequireDefault(__webpack_require__(/*! ./layout-content */ "../modules/ai/assets/js/editor/layout-content.js"));
2917 +var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2918 +var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2919 +var _remoteConfig = __webpack_require__(/*! ./pages/form-layout/context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
2920 +var _requestsIds = __webpack_require__(/*! ./context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
2921 +var LayoutApp = function LayoutApp(props) {
2922 + return /*#__PURE__*/_react.default.createElement(_remoteConfig.RemoteConfigProvider, {
2923 + onError: props.onClose
2924 + }, /*#__PURE__*/_react.default.createElement(_requestsIds.RequestIdsProvider, null, /*#__PURE__*/_react.default.createElement(_config.ConfigProvider, {
2925 + mode: props.mode,
2926 + attachmentsTypes: props.attachmentsTypes,
2927 + onClose: props.onClose,
2928 + onConnect: props.onConnect,
2929 + onData: props.onData,
2930 + onInsert: props.onInsert,
2931 + onSelect: props.onSelect,
2932 + onGenerate: props.onGenerate,
2933 + currentContext: props.currentContext,
2934 + hasPro: props.hasPro
2935 + }, /*#__PURE__*/_react.default.createElement(_layoutContent.default, {
2936 + attachments: props.attachments
2937 + }))));
2938 +};
2939 +LayoutApp.propTypes = {
2940 + mode: _propTypes.default.oneOf(_config.LAYOUT_APP_MODES).isRequired,
2941 + attachmentsTypes: _attachment.AttachmentsTypesPropType,
2942 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
2943 + onClose: _propTypes.default.func.isRequired,
2944 + onConnect: _propTypes.default.func.isRequired,
2945 + onData: _propTypes.default.func.isRequired,
2946 + onInsert: _propTypes.default.func.isRequired,
2947 + onSelect: _propTypes.default.func.isRequired,
2948 + onGenerate: _propTypes.default.func.isRequired,
2949 + currentContext: _propTypes.default.object,
2950 + hasPro: _propTypes.default.bool
2951 +};
2952 +var _default = LayoutApp;
2953 +exports["default"] = _default;
2954 +
2955 +/***/ }),
2956 +
2957 +/***/ "../modules/ai/assets/js/editor/layout-content.js":
2958 +/*!********************************************************!*\
2959 + !*** ../modules/ai/assets/js/editor/layout-content.js ***!
2960 + \********************************************************/
2961 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
2962 +
2963 +"use strict";
2964 +
2965 +
2966 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
2967 +Object.defineProperty(exports, "__esModule", ({
2968 + value: true
2969 +}));
2970 +exports["default"] = void 0;
2971 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
2972 +var _connect = _interopRequireDefault(__webpack_require__(/*! ./pages/connect */ "../modules/ai/assets/js/editor/pages/connect/index.js"));
2973 +var _formLayout = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout */ "../modules/ai/assets/js/editor/pages/form-layout/index.js"));
2974 +var _getStarted = _interopRequireDefault(__webpack_require__(/*! ./pages/get-started */ "../modules/ai/assets/js/editor/pages/get-started/index.js"));
2975 +var _loader = _interopRequireDefault(__webpack_require__(/*! ./components/loader */ "../modules/ai/assets/js/editor/components/loader.js"));
2976 +var _upgradeChip = _interopRequireDefault(__webpack_require__(/*! ./components/upgrade-chip */ "../modules/ai/assets/js/editor/components/upgrade-chip.js"));
2977 +var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
2978 +var _wizardDialog = _interopRequireDefault(__webpack_require__(/*! ./components/wizard-dialog */ "../modules/ai/assets/js/editor/components/wizard-dialog.js"));
2979 +var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./pages/form-layout/components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
2980 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
2981 +var _attachment = __webpack_require__(/*! ./types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
2982 +var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
2983 +var LayoutContent = function LayoutContent(props) {
2984 + var _useUserInfo = (0, _useUserInfo2.default)(),
2985 + isLoading = _useUserInfo.isLoading,
2986 + isConnected = _useUserInfo.isConnected,
2987 + isGetStarted = _useUserInfo.isGetStarted,
2988 + connectUrl = _useUserInfo.connectUrl,
2989 + fetchData = _useUserInfo.fetchData,
2990 + hasSubscription = _useUserInfo.hasSubscription,
2991 + usagePercentage = _useUserInfo.usagePercentage;
2992 + var _useConfig = (0, _config.useConfig)(),
2993 + onClose = _useConfig.onClose,
2994 + onConnect = _useConfig.onConnect;
2995 + if (isLoading) {
2996 + return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
2997 + onClose: onClose
2998 + }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, {
2999 + onClose: onClose
3000 + }), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, {
3001 + dividers: true
3002 + }, /*#__PURE__*/_react.default.createElement(_loader.default, {
3003 + BoxProps: {
3004 + sx: {
3005 + px: 3
3006 + }
3007 + }
3008 + })));
3009 + }
3010 + if (!isConnected) {
3011 + return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3012 + onClose: onClose
3013 + }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3014 + onClose: onClose
3015 + }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3016 + dividers: true
3017 + }, /*#__PURE__*/_react.default.createElement(_connect.default, {
3018 + connectUrl: connectUrl,
3019 + onSuccess: function onSuccess(data) {
3020 + onConnect(data);
3021 + fetchData();
3022 + }
3023 + })));
3024 + }
3025 + if (!isGetStarted) {
3026 + return /*#__PURE__*/_react.default.createElement(_wizardDialog.default, {
3027 + onClose: onClose
3028 + }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
3029 + onClose: onClose
3030 + }), /*#__PURE__*/_react.default.createElement(_wizardDialog.default.Content, {
3031 + dividers: true
3032 + }, /*#__PURE__*/_react.default.createElement(_getStarted.default, {
3033 + onSuccess: fetchData
3034 + })));
3035 + }
3036 + var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
3037 + return /*#__PURE__*/_react.default.createElement(_formLayout.default, {
3038 + attachments: props.attachments,
3039 + DialogHeaderProps: {
3040 + children: showUpgradeChip && /*#__PURE__*/_react.default.createElement(_upgradeChip.default, {
3041 + hasSubscription: hasSubscription,
3042 + usagePercentage: usagePercentage
3043 + })
3044 + }
3045 + });
3046 +};
3047 +LayoutContent.propTypes = {
3048 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
3049 +};
3050 +var _default = LayoutContent;
3051 +exports["default"] = _default;
3052 +
3053 +/***/ }),
3054 +
3055 +/***/ "../modules/ai/assets/js/editor/pages/connect/index.js":
3056 +/*!*************************************************************!*\
3057 + !*** ../modules/ai/assets/js/editor/pages/connect/index.js ***!
3058 + \*************************************************************/
3059 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3060 +
3061 +"use strict";
3062 +
3063 +
3064 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3065 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3066 +Object.defineProperty(exports, "__esModule", ({
3067 + value: true
3068 +}));
3069 +exports["default"] = void 0;
3070 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3071 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3072 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3073 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3074 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3075 +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); }
3076 +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; }
3077 +var Connect = function Connect(_ref) {
3078 + var connectUrl = _ref.connectUrl,
3079 + onSuccess = _ref.onSuccess;
3080 + var approveButtonRef = (0, _react.useRef)();
3081 + (0, _react.useEffect)(function () {
3082 + // On local dev (as a standalone app), the connect lib is not loaded.
3083 + if (!jQuery.fn.elementorConnect) {
3084 + return;
3085 + }
3086 + jQuery(approveButtonRef.current).elementorConnect({
3087 + success: function success(_, data) {
3088 + return onSuccess(data);
3089 + },
3090 + error: function error() {
3091 + throw new Error('Elementor AI: Failed to connect.');
3092 + }
3093 + });
3094 + }, []);
3095 + return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3096 + alignItems: "center",
3097 + gap: 2
3098 + }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3099 + sx: {
3100 + color: 'text.primary',
3101 + fontSize: '60px',
3102 + mb: 1
3103 + }
3104 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3105 + variant: "h4",
3106 + sx: {
3107 + color: 'text.primary'
3108 + }
3109 + }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3110 + variant: "body2"
3111 + }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3112 + variant: "caption",
3113 + sx: {
3114 + maxWidth: 520,
3115 + textAlign: 'center'
3116 + }
3117 + }, (0, _i18n.__)('By clicking "Connect", I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
3118 + href: "https://go.elementor.com/ai-terms/",
3119 + target: "_blank",
3120 + color: "info.main"
3121 + }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
3122 + href: "https://go.elementor.com/ai-privacy-policy/",
3123 + target: "_blank",
3124 + color: "info.main"
3125 + }, (0, _i18n.__)('Privacy Policy', 'elementor')), (0, _i18n.__)(' of the Elementor AI service.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
3126 + ref: approveButtonRef,
3127 + href: connectUrl,
3128 + variant: "contained",
3129 + sx: {
3130 + mt: 1,
3131 + '&:hover': {
3132 + color: 'primary.contrastText'
3133 + }
3134 + }
3135 + }, (0, _i18n.__)('Connect', 'elementor')));
3136 +};
3137 +Connect.propTypes = {
3138 + connectUrl: _propTypes.default.string.isRequired,
3139 + onSuccess: _propTypes.default.func.isRequired
3140 +};
3141 +var _default = Connect;
3142 +exports["default"] = _default;
3143 +
3144 +/***/ }),
3145 +
3146 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js":
3147 +/*!**********************************************************************************!*\
3148 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js ***!
3149 + \**********************************************************************************/
3150 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3151 +
3152 +"use strict";
3153 +
3154 +
3155 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3156 +Object.defineProperty(exports, "__esModule", ({
3157 + value: true
3158 +}));
3159 +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;
3160 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3161 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3162 +var _menu = __webpack_require__(/*! ./attachments/menu */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js");
3163 +var _thumbnailJson = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-json */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js"));
3164 +var _thumbnailUrl = _interopRequireDefault(__webpack_require__(/*! ./attachments/thumbnail-url */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js"));
3165 +var _websiteIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/website-icon */ "../modules/ai/assets/js/editor/icons/website-icon.js"));
3166 +var _copyPageIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/copy-page-icon */ "../modules/ai/assets/js/editor/icons/copy-page-icon.js"));
3167 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3168 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3169 +var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3170 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3171 +var ATTACHMENT_TYPE_JSON = 'json';
3172 +exports.ATTACHMENT_TYPE_JSON = ATTACHMENT_TYPE_JSON;
3173 +var ATTACHMENT_TYPE_URL = 'url';
3174 +exports.ATTACHMENT_TYPE_URL = ATTACHMENT_TYPE_URL;
3175 +var MENU_TYPE_LIBRARY = 'library';
3176 +exports.MENU_TYPE_LIBRARY = MENU_TYPE_LIBRARY;
3177 +var USER_VARIATION_SOURCE = 'user-variation';
3178 +exports.USER_VARIATION_SOURCE = USER_VARIATION_SOURCE;
3179 +var ELEMENTOR_LIBRARY_SOURCE = 'elementor-library';
3180 +exports.ELEMENTOR_LIBRARY_SOURCE = ELEMENTOR_LIBRARY_SOURCE;
3181 +var USER_URL_SOURCE = 'user-url';
3182 +exports.USER_URL_SOURCE = USER_URL_SOURCE;
3183 +var Attachments = function Attachments(props) {
3184 + if (!props.attachments.length) {
3185 + return /*#__PURE__*/_react.default.createElement(_menu.Menu, {
3186 + disabled: props.disabled,
3187 + onAttach: props.onAttach,
3188 + items: [{
3189 + title: (0, _i18n.__)('Reference a website', 'elementor'),
3190 + icon: _websiteIcon.default,
3191 + type: ATTACHMENT_TYPE_URL
3192 + }, {
3193 + title: (0, _i18n.__)('Create variations from Template Library', 'elementor'),
3194 + icon: _copyPageIcon.default,
3195 + type: MENU_TYPE_LIBRARY
3196 + }]
3197 + });
3198 + }
3199 + return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3200 + direction: "row",
3201 + spacing: 1
3202 + }, props.attachments.map(function (attachment, index) {
3203 + switch (attachment.type) {
3204 + case ATTACHMENT_TYPE_JSON:
3205 + return /*#__PURE__*/_react.default.createElement(_thumbnailJson.default, (0, _extends2.default)({
3206 + key: index
3207 + }, props));
3208 + case ATTACHMENT_TYPE_URL:
3209 + return /*#__PURE__*/_react.default.createElement(_thumbnailUrl.default, (0, _extends2.default)({
3210 + key: index
3211 + }, props));
3212 + default:
3213 + return null;
3214 + }
3215 + }));
3216 +};
3217 +Attachments.propTypes = {
3218 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3219 + onAttach: _propTypes.default.func.isRequired,
3220 + onDetach: _propTypes.default.func,
3221 + disabled: _propTypes.default.bool
3222 +};
3223 +var _default = Attachments;
3224 +exports["default"] = _default;
3225 +
3226 +/***/ }),
3227 +
3228 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js":
3229 +/*!************************************************************************************************!*\
3230 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js ***!
3231 + \************************************************************************************************/
3232 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3233 +
3234 +"use strict";
3235 +
3236 +
3237 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3238 +Object.defineProperty(exports, "__esModule", ({
3239 + value: true
3240 +}));
3241 +exports["default"] = exports.AttachDialog = void 0;
3242 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3243 +var _urlDialog = __webpack_require__(/*! ./url-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js");
3244 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3245 +var _libraryDialog = __webpack_require__(/*! ./library-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js");
3246 +var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3247 +var AttachDialog = function AttachDialog(props) {
3248 + var type = props.type;
3249 + var url = props.url;
3250 + switch (type) {
3251 + case _attachments.ATTACHMENT_TYPE_URL:
3252 + return /*#__PURE__*/_react.default.createElement(_urlDialog.UrlDialog, {
3253 + url: url,
3254 + onAttach: props.onAttach,
3255 + onClose: props.onClose
3256 + });
3257 + case _attachments.MENU_TYPE_LIBRARY:
3258 + return /*#__PURE__*/_react.default.createElement(_libraryDialog.LibraryDialog, {
3259 + onAttach: props.onAttach,
3260 + onClose: props.onClose
3261 + });
3262 + }
3263 + return null;
3264 +};
3265 +exports.AttachDialog = AttachDialog;
3266 +AttachDialog.propTypes = {
3267 + type: _propTypes.default.string,
3268 + onAttach: _propTypes.default.func,
3269 + onClose: _propTypes.default.func,
3270 + url: _propTypes.default.string
3271 +};
3272 +var _default = AttachDialog;
3273 +exports["default"] = _default;
3274 +
3275 +/***/ }),
3276 +
3277 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js":
3278 +/*!*************************************************************************************************!*\
3279 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js ***!
3280 + \*************************************************************************************************/
3281 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3282 +
3283 +"use strict";
3284 +
3285 +
3286 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3287 +Object.defineProperty(exports, "__esModule", ({
3288 + value: true
3289 +}));
3290 +exports.LibraryDialog = void 0;
3291 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3292 +var _react = __webpack_require__(/*! react */ "react");
3293 +var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3294 +var LibraryDialog = function LibraryDialog(props) {
3295 + var isApplyingTemplate = (0, _react.useRef)(false);
3296 + (0, _react.useEffect)(function () {
3297 + var onLibraryHide = function onLibraryHide() {
3298 + if (isApplyingTemplate.current) {
3299 + return;
3300 + }
3301 + props.onClose();
3302 + };
3303 + $e.components.get('library').layout.getModal().on('hide', onLibraryHide);
3304 + return function () {
3305 + $e.components.get('library').layout.getModal().off('hide', onLibraryHide);
3306 + };
3307 + }, [props]);
3308 + (0, _react.useEffect)(function () {
3309 + var onMessage = function onMessage(event) {
3310 + var _event$data = event.data,
3311 + type = _event$data.type,
3312 + json = _event$data.json,
3313 + html = _event$data.html,
3314 + label = _event$data.label,
3315 + source = _event$data.source;
3316 + switch (type) {
3317 + case 'library/attach:start':
3318 + isApplyingTemplate.current = true;
3319 + break;
3320 + case 'library/attach':
3321 + props.onAttach([{
3322 + type: _attachments.ATTACHMENT_TYPE_JSON,
3323 + previewHTML: html,
3324 + content: json,
3325 + label: label,
3326 + source: source
3327 + }]);
3328 + isApplyingTemplate.current = false;
3329 + props.onClose();
3330 + break;
3331 + }
3332 + };
3333 + window.addEventListener('message', onMessage);
3334 + return function () {
3335 + window.removeEventListener('message', onMessage);
3336 + };
3337 + });
3338 + $e.run('library/open', {
3339 + toDefault: true,
3340 + mode: 'ai-attachment'
3341 + });
3342 + isApplyingTemplate.current = false;
3343 + return null;
3344 +};
3345 +exports.LibraryDialog = LibraryDialog;
3346 +LibraryDialog.propTypes = {
3347 + onAttach: _propTypes.default.func.isRequired,
3348 + onClose: _propTypes.default.func.isRequired
3349 +};
3350 +
3351 +/***/ }),
3352 +
3353 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js":
3354 +/*!***************************************************************************************!*\
3355 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js ***!
3356 + \***************************************************************************************/
3357 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3358 +
3359 +"use strict";
3360 +
3361 +
3362 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3363 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3364 +Object.defineProperty(exports, "__esModule", ({
3365 + value: true
3366 +}));
3367 +exports.Menu = void 0;
3368 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3369 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3370 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3371 +var _xCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/x-circle-icon */ "../modules/ai/assets/js/editor/icons/x-circle-icon.js"));
3372 +var _plusCircleIcon = _interopRequireDefault(__webpack_require__(/*! ../../../../icons/plus-circle-icon */ "../modules/ai/assets/js/editor/icons/plus-circle-icon.js"));
3373 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3374 +var _attachDialog = __webpack_require__(/*! ./attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js");
3375 +var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3376 +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); }
3377 +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; }
3378 +var Menu = function Menu(props) {
3379 + var _useState = (0, _react.useState)(false),
3380 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
3381 + isOpen = _useState2[0],
3382 + setIsOpen = _useState2[1];
3383 + var _useState3 = (0, _react.useState)(null),
3384 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
3385 + selectedType = _useState4[0],
3386 + setSelectedType = _useState4[1];
3387 + var _useTheme = (0, _ui.useTheme)(),
3388 + direction = _useTheme.direction;
3389 + var anchorRef = (0, _react.useRef)(null);
3390 + var _useIntroduction = (0, _useIntroduction2.default)('e-ai-attachment-badge'),
3391 + isViewed = _useIntroduction.isViewed,
3392 + markAsViewed = _useIntroduction.markAsViewed;
3393 + return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3394 + size: "small",
3395 + ref: anchorRef,
3396 + disabled: props.disabled,
3397 + onClick: function onClick() {
3398 + setIsOpen(true);
3399 + if (!isViewed) {
3400 + markAsViewed();
3401 + }
3402 + },
3403 + color: "secondary"
3404 + }, function () {
3405 + if (isOpen) {
3406 + return /*#__PURE__*/_react.default.createElement(_xCircleIcon.default, {
3407 + fontSize: "small"
3408 + });
3409 + } else if (isViewed) {
3410 + return /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3411 + fontSize: "small"
3412 + });
3413 + }
3414 + return /*#__PURE__*/_react.default.createElement(_ui.Badge, {
3415 + color: "primary",
3416 + badgeContent: " ",
3417 + variant: "dot"
3418 + }, /*#__PURE__*/_react.default.createElement(_plusCircleIcon.default, {
3419 + fontSize: "small"
3420 + }));
3421 + }()), /*#__PURE__*/_react.default.createElement(_ui.Popover, {
3422 + open: isOpen,
3423 + anchorEl: anchorRef.current,
3424 + onClose: function onClose() {
3425 + return setIsOpen(false);
3426 + },
3427 + anchorOrigin: {
3428 + vertical: 'bottom',
3429 + horizontal: 'rtl' === direction ? 'right' : 'left'
3430 + },
3431 + transformOrigin: {
3432 + vertical: 'top',
3433 + horizontal: 'rtl' === direction ? 'right' : 'left'
3434 + }
3435 + }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3436 + sx: {
3437 + width: 440
3438 + }
3439 + }, props.items.map(function (item) {
3440 + var IconComponent = item.icon;
3441 + return /*#__PURE__*/_react.default.createElement(_ui.MenuItem, {
3442 + key: item.type,
3443 + onClick: function onClick() {
3444 + setSelectedType(item.type);
3445 + setIsOpen(false);
3446 + }
3447 + }, /*#__PURE__*/_react.default.createElement(_ui.ListItemIcon, null, /*#__PURE__*/_react.default.createElement(IconComponent, null)), item.title);
3448 + }))), /*#__PURE__*/_react.default.createElement(_attachDialog.AttachDialog, {
3449 + type: selectedType,
3450 + onAttach: props.onAttach,
3451 + onClose: function onClose() {
3452 + setIsOpen(false);
3453 + setSelectedType(null);
3454 + }
3455 + }));
3456 +};
3457 +exports.Menu = Menu;
3458 +Menu.propTypes = {
3459 + items: _propTypes.default.arrayOf(_propTypes.default.shape({
3460 + title: _propTypes.default.string.isRequired,
3461 + type: _propTypes.default.string.isRequired,
3462 + icon: _propTypes.default.elementType
3463 + })).isRequired,
3464 + onAttach: _propTypes.default.func.isRequired,
3465 + disabled: _propTypes.default.bool
3466 +};
3467 +
3468 +/***/ }),
3469 +
3470 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js":
3471 +/*!******************************************************************************************************!*\
3472 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js ***!
3473 + \******************************************************************************************************/
3474 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3475 +
3476 +"use strict";
3477 +
3478 +
3479 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3480 +Object.defineProperty(exports, "__esModule", ({
3481 + value: true
3482 +}));
3483 +exports.PromptPowerNotice = void 0;
3484 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3485 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3486 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3487 +var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
3488 +var PromptPowerNotice = function PromptPowerNotice() {
3489 + var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-attachments-power'),
3490 + isViewed = _useIntroduction.isViewed,
3491 + markAsViewed = _useIntroduction.markAsViewed;
3492 + if (isViewed) {
3493 + return null;
3494 + }
3495 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3496 + sx: {
3497 + pt: 2,
3498 + px: 2,
3499 + pb: 0
3500 + }
3501 + }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
3502 + severity: "info",
3503 + onClose: function onClose() {
3504 + return markAsViewed();
3505 + }
3506 + }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3507 + variant: "body2",
3508 + display: "inline-block",
3509 + sx: {
3510 + paddingInlineEnd: 1
3511 + }
3512 + }, (0, _i18n.__)('You’ve got the power.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3513 + variant: "body2",
3514 + display: "inline-block"
3515 + }, (0, _i18n.__)('Craft your prompt to affect content, images and/or colors - whichever you decide.', 'elementor'))));
3516 +};
3517 +exports.PromptPowerNotice = PromptPowerNotice;
3518 +
3519 +/***/ }),
3520 +
3521 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js":
3522 +/*!*************************************************************************************************!*\
3523 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js ***!
3524 + \*************************************************************************************************/
3525 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3526 +
3527 +"use strict";
3528 +
3529 +
3530 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3531 +Object.defineProperty(exports, "__esModule", ({
3532 + value: true
3533 +}));
3534 +exports["default"] = exports.ThumbnailJson = void 0;
3535 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3536 +var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3537 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3538 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3539 +var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3540 +var ThumbnailJson = function ThumbnailJson(props) {
3541 + var _props$attachments;
3542 + var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3543 + return 'json' === item.type;
3544 + });
3545 + if (!attachment) {
3546 + return null;
3547 + }
3548 + if (!attachment.previewHTML) {
3549 + return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
3550 + animation: "wave",
3551 + variant: "rounded",
3552 + width: 60,
3553 + height: 60
3554 + });
3555 + }
3556 + return /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3557 + html: attachment.previewHTML,
3558 + disabled: props.disabled
3559 + });
3560 +};
3561 +exports.ThumbnailJson = ThumbnailJson;
3562 +ThumbnailJson.propTypes = {
3563 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3564 + disabled: _propTypes.default.bool
3565 +};
3566 +var _default = ThumbnailJson;
3567 +exports["default"] = _default;
3568 +
3569 +/***/ }),
3570 +
3571 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js":
3572 +/*!************************************************************************************************!*\
3573 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js ***!
3574 + \************************************************************************************************/
3575 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3576 +
3577 +"use strict";
3578 +
3579 +
3580 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3581 +Object.defineProperty(exports, "__esModule", ({
3582 + value: true
3583 +}));
3584 +exports["default"] = exports.ThumbnailUrl = void 0;
3585 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3586 +var _thumbnail = __webpack_require__(/*! ./thumbnail */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js");
3587 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3588 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3589 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3590 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3591 +var _attachment = __webpack_require__(/*! ../../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
3592 +var ThumbnailUrl = function ThumbnailUrl(props) {
3593 + var _props$attachments;
3594 + var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function (item) {
3595 + return 'url' === item.type;
3596 + });
3597 + if (!attachment) {
3598 + return null;
3599 + }
3600 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3601 + sx: {
3602 + position: 'relative',
3603 + '&:hover::before': {
3604 + content: '""',
3605 + position: 'absolute',
3606 + userSelect: 'none',
3607 + inset: 0,
3608 + backgroundColor: 'rgba(0,0,0,0.6)',
3609 + borderRadius: 1,
3610 + zIndex: 1
3611 + },
3612 + '&:hover .remove-attachment': {
3613 + display: 'flex'
3614 + }
3615 + }
3616 + }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3617 + className: "remove-attachment",
3618 + size: "small",
3619 + "aria-label": (0, _i18n.__)('Remove', 'elementor'),
3620 + disabled: props.disabled,
3621 + onClick: function onClick(event) {
3622 + event.stopPropagation();
3623 + props.onDetach();
3624 + },
3625 + sx: {
3626 + display: 'none',
3627 + position: 'absolute',
3628 + insetInlineEnd: 4,
3629 + insetBlockStart: 4,
3630 + backgroundColor: 'secondary.main',
3631 + zIndex: 1,
3632 + borderRadius: 1,
3633 + p: '3px',
3634 + '&:hover': {
3635 + backgroundColor: 'secondary.dark'
3636 + }
3637 + }
3638 + }, /*#__PURE__*/_react.default.createElement(_icons.TrashIcon, {
3639 + sx: {
3640 + fontSize: '1.125rem',
3641 + color: 'common.white'
3642 + }
3643 + })), /*#__PURE__*/_react.default.createElement(_thumbnail.Thumbnail, {
3644 + disabled: props.disabled,
3645 + html: attachment.previewHTML
3646 + }));
3647 +};
3648 +exports.ThumbnailUrl = ThumbnailUrl;
3649 +ThumbnailUrl.propTypes = {
3650 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType).isRequired,
3651 + disabled: _propTypes.default.bool,
3652 + onDetach: _propTypes.default.func
3653 +};
3654 +var _default = ThumbnailUrl;
3655 +exports["default"] = _default;
3656 +
3657 +/***/ }),
3658 +
3659 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js":
3660 +/*!********************************************************************************************!*\
3661 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js ***!
3662 + \********************************************************************************************/
3663 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3664 +
3665 +"use strict";
3666 +
3667 +
3668 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3669 +Object.defineProperty(exports, "__esModule", ({
3670 + value: true
3671 +}));
3672 +exports.Thumbnail = exports.THUMBNAIL_SIZE = void 0;
3673 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
3674 +var _taggedTemplateLiteral2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js"));
3675 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3676 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3677 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3678 +var _styledComponents = _interopRequireDefault(__webpack_require__(/*! styled-components */ "../node_modules/styled-components/dist/styled-components.browser.esm.js"));
3679 +var _templateObject;
3680 +var THUMBNAIL_SIZE = 64;
3681 +exports.THUMBNAIL_SIZE = THUMBNAIL_SIZE;
3682 +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);
3683 +var Thumbnail = function Thumbnail(props) {
3684 + var _props$html$match, _props$html$match$gro, _props$html$match2, _props$html$match2$gr;
3685 + 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;
3686 + 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;
3687 + var width = dataWidth ? parseInt(dataWidth) : THUMBNAIL_SIZE;
3688 + var height = dataHeight ? parseInt(dataHeight) : THUMBNAIL_SIZE;
3689 + var scaleFactor = Math.min(height, width);
3690 + var scale = THUMBNAIL_SIZE / scaleFactor;
3691 +
3692 + // Center the preview
3693 + var top = height > width ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (height / width)) / 2 : 0;
3694 + var left = width > height ? (THUMBNAIL_SIZE - THUMBNAIL_SIZE * (width / height)) / 2 : 0;
3695 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
3696 + dir: "ltr",
3697 + sx: {
3698 + position: 'relative',
3699 + cursor: 'default',
3700 + overflow: 'hidden',
3701 + border: '1px solid',
3702 + borderColor: 'grey.300',
3703 + borderRadius: 1,
3704 + boxSizing: 'border-box',
3705 + width: THUMBNAIL_SIZE,
3706 + height: THUMBNAIL_SIZE,
3707 + opacity: props.disabled ? 0.5 : 1
3708 + }
3709 + }, /*#__PURE__*/_react.default.createElement("iframe", {
3710 + title: (0, _i18n.__)('Preview', 'elementor'),
3711 + sandbox: "",
3712 + srcDoc: "<style>" + StyledBody.componentStyle.rules.join('') + "</style>" + props.html,
3713 + style: {
3714 + border: 'none',
3715 + overflow: 'hidden',
3716 + width: width,
3717 + height: height,
3718 + transform: "scale(".concat(scale, ")"),
3719 + transformOrigin: "".concat(left, "px ").concat(top, "px")
3720 + }
3721 + }));
3722 +};
3723 +exports.Thumbnail = Thumbnail;
3724 +Thumbnail.propTypes = {
3725 + html: _propTypes.default.string.isRequired,
3726 + disabled: _propTypes.default.bool
3727 +};
3728 +
3729 +/***/ }),
3730 +
3731 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js":
3732 +/*!*********************************************************************************************!*\
3733 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js ***!
3734 + \*********************************************************************************************/
3735 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3736 +
3737 +"use strict";
3738 +
3739 +
3740 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3741 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3742 +Object.defineProperty(exports, "__esModule", ({
3743 + value: true
3744 +}));
3745 +exports.UrlDialog = void 0;
3746 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3747 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3748 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3749 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3750 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3751 +var _useAttachUrlService2 = __webpack_require__(/*! ../../hooks/use-attach-url-service */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js");
3752 +var _alertDialog = __webpack_require__(/*! ../../../../components/alert-dialog */ "../modules/ai/assets/js/editor/components/alert-dialog.js");
3753 +var _useTimeout3 = __webpack_require__(/*! ../../../../hooks/use-timeout */ "../modules/ai/assets/js/editor/hooks/use-timeout.js");
3754 +var _attachments = __webpack_require__(/*! ../attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
3755 +var _remoteConfig = __webpack_require__(/*! ../../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
3756 +var _useUserInfo2 = _interopRequireDefault(__webpack_require__(/*! ../../../../hooks/use-user-info */ "../modules/ai/assets/js/editor/hooks/use-user-info.js"));
3757 +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); }
3758 +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; }
3759 +var UrlDialog = function UrlDialog(props) {
3760 + var iframeRef = (0, _react.useRef)(null);
3761 + var _useAttachUrlService = (0, _useAttachUrlService2.useAttachUrlService)({
3762 + targetUrl: props.url
3763 + }),
3764 + iframeSource = _useAttachUrlService.iframeSource;
3765 + var iframeOrigin = iframeSource ? new URL(iframeSource).origin : '';
3766 + var _useTimeout = (0, _useTimeout3.useTimeout)(10000),
3767 + _useTimeout2 = (0, _slicedToArray2.default)(_useTimeout, 2),
3768 + isTimeout = _useTimeout2[0],
3769 + turnOffTimeout = _useTimeout2[1];
3770 + var _useUserInfo = (0, _useUserInfo2.default)(),
3771 + isConnected = _useUserInfo.isConnected,
3772 + hasSubscription = _useUserInfo.hasSubscription,
3773 + credits = _useUserInfo.credits,
3774 + usagePercentage = _useUserInfo.usagePercentage;
3775 + var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
3776 + isLoaded = _useRemoteConfig.isLoaded,
3777 + isError = _useRemoteConfig.isError,
3778 + remoteConfig = _useRemoteConfig.remoteConfig;
3779 + (0, _react.useEffect)(function () {
3780 + var onMessage = function onMessage(event) {
3781 + if (event.origin !== iframeOrigin) {
3782 + return;
3783 + }
3784 + var _event$data = event.data,
3785 + type = _event$data.type,
3786 + html = _event$data.html,
3787 + url = _event$data.url;
3788 + switch (type) {
3789 + case 'element-selector/close':
3790 + props.onClose();
3791 + break;
3792 + case 'element-selector/loaded':
3793 + turnOffTimeout();
3794 + break;
3795 + case 'element-selector/attach':
3796 + props.onAttach([{
3797 + type: 'url',
3798 + previewHTML: html,
3799 + content: html,
3800 + label: url ? new URL(url).host : '',
3801 + source: _attachments.USER_URL_SOURCE
3802 + }]);
3803 + break;
3804 + }
3805 + };
3806 + window.addEventListener('message', onMessage);
3807 + return function () {
3808 + window.removeEventListener('message', onMessage);
3809 + };
3810 + }, [iframeOrigin, iframeSource, props, turnOffTimeout]);
3811 + if (!iframeSource) {
3812 + return /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3813 + message: (0, _i18n.__)('The app is not available. Please try again later.', 'elementor'),
3814 + onClose: props.onClose
3815 + });
3816 + }
3817 + if (!isLoaded || isError) {
3818 + return null;
3819 + }
3820 + return /*#__PURE__*/_react.default.createElement(_ui.Dialog, {
3821 + open: true,
3822 + fullScreen: true,
3823 + hideBackdrop: true,
3824 + maxWidth: "md",
3825 + sx: {
3826 + '& .MuiPaper-root': {
3827 + backgroundColor: 'transparent'
3828 + }
3829 + }
3830 + }, /*#__PURE__*/_react.default.createElement(_ui.DialogContent, {
3831 + sx: {
3832 + padding: 0
3833 + }
3834 + }, isTimeout && /*#__PURE__*/_react.default.createElement(_alertDialog.AlertDialog, {
3835 + message: (0, _i18n.__)('The app is not responding. Please try again later.', 'elementor'),
3836 + onClose: props.onClose
3837 + }), !isTimeout && /*#__PURE__*/_react.default.createElement("iframe", {
3838 + ref: iframeRef,
3839 + title: (0, _i18n.__)('URL as a reference', 'elementor'),
3840 + src: iframeSource,
3841 + onLoad: function onLoad() {
3842 + var _window$elementorAppC = window.elementorAppConfig['kit-library'],
3843 + accessLevel = _window$elementorAppC.access_level,
3844 + accessTier = _window$elementorAppC.access_tier,
3845 + isPro = _window$elementorAppC.is_pro;
3846 + iframeRef.current.contentWindow.postMessage({
3847 + type: 'referrer/info',
3848 + info: {
3849 + page: {
3850 + url: window.location.href
3851 + },
3852 + authToken: remoteConfig[_remoteConfig.CONFIG_KEYS.AUTH_TOKEN] || '',
3853 + products: {
3854 + core: {
3855 + version: window.elementor.config.version
3856 + },
3857 + pro: {
3858 + isPro: isPro,
3859 + accessLevel: accessLevel,
3860 + accessTier: accessTier
3861 + },
3862 + ai: {
3863 + isConnected: isConnected,
3864 + hasSubscription: hasSubscription,
3865 + credits: credits,
3866 + usagePercentage: usagePercentage
3867 + }
3868 + },
3869 + user: {
3870 + isAdmin: window.elementor.config.user.is_administrator
3871 + }
3872 + }
3873 + }, iframeOrigin);
3874 + },
3875 + style: {
3876 + border: 'none',
3877 + overflow: 'scroll',
3878 + width: '100%',
3879 + height: '100%',
3880 + backgroundColor: 'rgba(255,255,255,0.6)'
3881 + }
3882 + })));
3883 +};
3884 +exports.UrlDialog = UrlDialog;
3885 +UrlDialog.propTypes = {
3886 + onAttach: _propTypes.default.func.isRequired,
3887 + onClose: _propTypes.default.func.isRequired,
3888 + url: _propTypes.default.string
3889 +};
3890 +
3891 +/***/ }),
3892 +
3893 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js":
3894 +/*!************************************************************************************!*\
3895 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js ***!
3896 + \************************************************************************************/
3897 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3898 +
3899 +"use strict";
3900 +
3901 +
3902 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
3903 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
3904 +Object.defineProperty(exports, "__esModule", ({
3905 + value: true
3906 +}));
3907 +exports["default"] = void 0;
3908 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
3909 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
3910 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
3911 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
3912 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
3913 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
3914 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
3915 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
3916 +var _promptDialog = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-dialog */ "../modules/ai/assets/js/editor/components/prompt-dialog.js"));
3917 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
3918 +var _excluded = ["sx", "PaperProps"];
3919 +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); }
3920 +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; }
3921 +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; }
3922 +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; }
3923 +var StyledDialog = (0, _ui.styled)(_promptDialog.default)(function () {
3924 + return {
3925 + '& .MuiDialog-container': {
3926 + marginTop: 0,
3927 + alignItems: 'flex-end',
3928 + paddingBottom: '16vh'
3929 + },
3930 + '& .MuiPaper-root': {
3931 + margin: 0,
3932 + maxHeight: '55vh'
3933 + }
3934 + };
3935 +});
3936 +var DialogHeader = function DialogHeader(_ref) {
3937 + var onClose = _ref.onClose,
3938 + children = _ref.children;
3939 + return /*#__PURE__*/_react.default.createElement(_ui.AppBar, {
3940 + sx: {
3941 + fontWeight: 'normal'
3942 + },
3943 + color: "transparent",
3944 + position: "relative"
3945 + }, /*#__PURE__*/_react.default.createElement(_ui.Toolbar, {
3946 + variant: "dense"
3947 + }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
3948 + sx: {
3949 + mr: 1
3950 + }
3951 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
3952 + component: "span",
3953 + variant: "subtitle2",
3954 + sx: {
3955 + fontWeight: 'bold',
3956 + textTransform: 'uppercase'
3957 + }
3958 + }, (0, _i18n.__)('AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Chip, {
3959 + label: (0, _i18n.__)('Beta', 'elementor'),
3960 + color: "default",
3961 + size: "small",
3962 + sx: {
3963 + ml: 1
3964 + }
3965 + }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
3966 + direction: "row",
3967 + spacing: 1,
3968 + alignItems: "center",
3969 + sx: {
3970 + ml: 'auto'
3971 + }
3972 + }, children, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
3973 + size: "small",
3974 + "aria-label": "close",
3975 + onClick: onClose,
3976 + sx: {
3977 + '&.MuiButtonBase-root': {
3978 + mr: -1
3979 + }
3980 + }
3981 + }, /*#__PURE__*/_react.default.createElement(_icons.XIcon, null)))));
3982 +};
3983 +DialogHeader.propTypes = {
3984 + children: _propTypes.default.node,
3985 + onClose: _propTypes.default.func.isRequired
3986 +};
3987 +var StyledDialogContent = (0, _ui.styled)(_promptDialog.default.Content)(function () {
3988 + return {
3989 + '&.MuiDialogContent-root': {
3990 + padding: 0
3991 + }
3992 + };
3993 +});
3994 +var LayoutDialog = function LayoutDialog(_ref2) {
3995 + var _ref2$sx = _ref2.sx,
3996 + sx = _ref2$sx === void 0 ? {} : _ref2$sx,
3997 + _ref2$PaperProps = _ref2.PaperProps,
3998 + PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps,
3999 + props = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
4000 + var _useState = (0, _react.useState)({
4001 + pointerEvents: 'none'
4002 + }),
4003 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4004 + sxStyle = _useState2[0],
4005 + setSxStyle = _useState2[1];
4006 + var timeoutRef = (0, _react.useRef)(null);
4007 +
4008 + /**
4009 + * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
4010 + * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
4011 + * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
4012 + */
4013 + return /*#__PURE__*/_react.default.createElement(StyledDialog, (0, _extends2.default)({
4014 + maxWidth: "md",
4015 + PaperProps: _objectSpread({
4016 + sx: {
4017 + pointerEvents: 'auto'
4018 + },
4019 + onMouseEnter: function onMouseEnter() {
4020 + clearTimeout(timeoutRef.current);
4021 + setSxStyle({
4022 + pointerEvents: 'all'
4023 + });
4024 + },
4025 + onMouseLeave: function onMouseLeave() {
4026 + clearTimeout(timeoutRef.current);
4027 + timeoutRef.current = setTimeout(function () {
4028 + setSxStyle({
4029 + pointerEvents: 'none'
4030 + });
4031 + }, 200);
4032 + }
4033 + }, PaperProps)
4034 + }, props, {
4035 + sx: _objectSpread(_objectSpread({}, sxStyle), sx)
4036 + }));
4037 +};
4038 +LayoutDialog.propTypes = {
4039 + sx: _propTypes.default.object,
4040 + PaperProps: _propTypes.default.object
4041 +};
4042 +LayoutDialog.Header = DialogHeader;
4043 +LayoutDialog.Content = StyledDialogContent;
4044 +var _default = LayoutDialog;
4045 +exports["default"] = _default;
4046 +
4047 +/***/ }),
4048 +
4049 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js":
4050 +/*!*********************************************************************************************!*\
4051 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js ***!
4052 + \*********************************************************************************************/
4053 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4054 +
4055 +"use strict";
4056 +
4057 +
4058 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4059 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4060 +Object.defineProperty(exports, "__esModule", ({
4061 + value: true
4062 +}));
4063 +exports.ProTemplateIndicator = void 0;
4064 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4065 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4066 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4067 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4068 +var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4069 +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); }
4070 +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; }
4071 +var popoverId = 'e-pro-upgrade-popover';
4072 +var StyledContent = (0, _ui.styled)(_ui.Paper)(function (_ref) {
4073 + var theme = _ref.theme;
4074 + return {
4075 + position: 'relative',
4076 + padding: theme.spacing(3),
4077 + boxShadow: theme.shadows[4],
4078 + zIndex: '9999'
4079 + };
4080 +});
4081 +var StyledArrow = (0, _ui.styled)(_ui.Box)(function (_ref2) {
4082 + var theme = _ref2.theme;
4083 + return {
4084 + position: 'absolute',
4085 + width: theme.spacing(5),
4086 + height: theme.spacing(5),
4087 + overflow: 'hidden',
4088 + // Override Popper inline styles.
4089 + left: '100% !important',
4090 + transform: 'translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important',
4091 + '&::after': {
4092 + backgroundColor: theme.palette.background.paper,
4093 + content: '""',
4094 + display: 'block',
4095 + position: 'absolute',
4096 + width: theme.spacing(2.5),
4097 + height: theme.spacing(2.5),
4098 + top: '50%',
4099 + left: '50%',
4100 + transform: 'translateX(-50%) translateY(-50%) rotate(45deg)',
4101 + boxShadow: '5px -5px 5px 0px rgba(0, 0, 0, 0.2)',
4102 + backgroundImage: 'linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))'
4103 + }
4104 + };
4105 +});
4106 +var ProTemplateIndicator = function ProTemplateIndicator() {
4107 + var actionUrl = 'https://go.elementor.com/go-pro-ai/';
4108 + var actionLabel = (0, _i18n.__)('Go Pro', 'elementor');
4109 + var _useState = (0, _react.useState)(false),
4110 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4111 + isPopoverOpen = _useState2[0],
4112 + setIsPopoverOpen = _useState2[1];
4113 + var anchorEl = (0, _react.useRef)(null);
4114 + var arrowEl = (0, _react.useRef)(null);
4115 + var showPopover = function showPopover() {
4116 + return setIsPopoverOpen(true);
4117 + };
4118 + var hidePopover = function hidePopover() {
4119 + return setIsPopoverOpen(false);
4120 + };
4121 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4122 + flexDirection: "row-reverse",
4123 + component: "span",
4124 + display: "flex",
4125 + onMouseLeave: hidePopover,
4126 + alignItems: "center"
4127 + }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
4128 + ref: anchorEl,
4129 + onMouseEnter: showPopover,
4130 + onClick: function onClick(e) {
4131 + return e.stopPropagation();
4132 + } /* Do nothing */,
4133 + "aria-owns": isPopoverOpen ? popoverId : undefined,
4134 + "aria-haspopup": "true",
4135 + sx: {
4136 + m: 1,
4137 + '&:hover': {
4138 + backgroundColor: 'action.selected'
4139 + }
4140 + }
4141 + }, /*#__PURE__*/_react.default.createElement(_lockIcon.default, {
4142 + sx: {
4143 + color: 'text.primary'
4144 + }
4145 + })), /*#__PURE__*/_react.default.createElement(_ui.Popper, {
4146 + open: isPopoverOpen,
4147 + popperOptions: {
4148 + placement: 'left-start',
4149 + modifiers: [{
4150 + name: 'arrow',
4151 + enabled: true,
4152 + options: {
4153 + element: arrowEl.current,
4154 + padding: 5
4155 + }
4156 + }, {
4157 + name: 'offset',
4158 + options: {
4159 + offset: [0, 10]
4160 + }
4161 + }]
4162 + },
4163 + anchorEl: anchorEl.current,
4164 + sx: {
4165 + zIndex: '9999',
4166 + maxWidth: 300
4167 + }
4168 + }, /*#__PURE__*/_react.default.createElement(StyledContent, null, /*#__PURE__*/_react.default.createElement(StyledArrow, {
4169 + ref: arrowEl
4170 + }), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4171 + alignItems: "start",
4172 + spacing: 2
4173 + }, /*#__PURE__*/_react.default.createElement(_ui.Chip, {
4174 + color: "promotion",
4175 + variant: "outlined",
4176 + size: "small",
4177 + label: (0, _i18n.__)('Pro', 'elementor'),
4178 + icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null)
4179 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4180 + variant: "body2"
4181 + }, (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, {
4182 + variant: "contained",
4183 + color: "promotion",
4184 + size: "small",
4185 + href: actionUrl,
4186 + target: "_blank",
4187 + sx: {
4188 + alignSelf: 'flex-end'
4189 + }
4190 + }, actionLabel)))));
4191 +};
4192 +exports.ProTemplateIndicator = ProTemplateIndicator;
4193 +
4194 +/***/ }),
4195 +
4196 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js":
4197 +/*!*****************************************************************************************!*\
4198 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js ***!
4199 + \*****************************************************************************************/
4200 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4201 +
4202 +"use strict";
4203 +
4204 +
4205 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4206 +Object.defineProperty(exports, "__esModule", ({
4207 + value: true
4208 +}));
4209 +exports.ProWidgetsNotice = void 0;
4210 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4211 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4212 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4213 +var _lockIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/lock-icon */ "../modules/ai/assets/js/editor/icons/lock-icon.js"));
4214 +var _useIntroduction2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-introduction */ "../modules/ai/assets/js/editor/hooks/use-introduction.js"));
4215 +var ProWidgetsNotice = function ProWidgetsNotice() {
4216 + var _useIntroduction = (0, _useIntroduction2.default)('e-ai-builder-pro-widget'),
4217 + isViewed = _useIntroduction.isViewed,
4218 + markAsViewed = _useIntroduction.markAsViewed;
4219 + if (isViewed) {
4220 + return null;
4221 + }
4222 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4223 + sx: {
4224 + pt: 2,
4225 + px: 2,
4226 + pb: 0
4227 + }
4228 + }, /*#__PURE__*/_react.default.createElement(_ui.Alert, {
4229 + severity: "info",
4230 + variant: "filled",
4231 + color: "promotion",
4232 + onClose: function onClose() {
4233 + return markAsViewed();
4234 + },
4235 + icon: /*#__PURE__*/_react.default.createElement(_lockIcon.default, null),
4236 + sx: {
4237 + '& .MuiAlert-message': {
4238 + width: '100%'
4239 + }
4240 + }
4241 + }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4242 + flexDirection: "row",
4243 + alignItems: "baseline",
4244 + justifyContent: "space-between"
4245 + }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4246 + variant: "body2",
4247 + component: "span",
4248 + sx: {
4249 + paddingInlineEnd: 0.5
4250 + }
4251 + }, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4252 + variant: "subtitle2",
4253 + component: "span",
4254 + sx: {
4255 + paddingInlineEnd: 1
4256 + }
4257 + }, (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, {
4258 + variant: "outlined",
4259 + size: "small",
4260 + onClick: function onClick() {
4261 + return window.open('https://go.elementor.com/upgrade-pro/', '_blank');
4262 + },
4263 + color: "inherit"
4264 + }, (0, _i18n.__)('Go Pro', 'elementor')))));
4265 +};
4266 +exports.ProWidgetsNotice = ProWidgetsNotice;
4267 +
4268 +/***/ }),
4269 +
4270 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js":
4271 +/*!******************************************************************************************!*\
4272 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js ***!
4273 + \******************************************************************************************/
4274 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4275 +
4276 +"use strict";
4277 +
4278 +
4279 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4280 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4281 +Object.defineProperty(exports, "__esModule", ({
4282 + value: true
4283 +}));
4284 +exports["default"] = void 0;
4285 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4286 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4287 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4288 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4289 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4290 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4291 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4292 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4293 +var _promptLibraryLink = _interopRequireDefault(__webpack_require__(/*! ../../../components/prompt-library-link */ "../modules/ai/assets/js/editor/components/prompt-library-link.js"));
4294 +var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4295 +var _excluded = ["onSubmit"];
4296 +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); }
4297 +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; }
4298 +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; }
4299 +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; }
4300 +var TextInput = (0, _react.forwardRef)(function (props, ref) {
4301 + return /*#__PURE__*/_react.default.createElement(_ui.TextField
4302 + // eslint-disable-next-line jsx-a11y/no-autofocus
4303 + , (0, _extends2.default)({
4304 + autoFocus: true,
4305 + multiline: true,
4306 + size: "small",
4307 + maxRows: 3,
4308 + color: "secondary",
4309 + variant: "standard"
4310 + }, props, {
4311 + inputRef: ref,
4312 + InputProps: _objectSpread(_objectSpread({}, props.InputProps), {}, {
4313 + type: 'search',
4314 + sx: {
4315 + pt: 0
4316 + }
4317 + })
4318 + }));
4319 +});
4320 +TextInput.propTypes = {
4321 + InputProps: _propTypes.default.object
4322 +};
4323 +var PaperComponent = function PaperComponent(props) {
4324 + var _useConfig = (0, _config.useConfig)(),
4325 + mode = _useConfig.mode;
4326 + var libraryLink = _config.MODE_VARIATION === mode ? 'https://go.elementor.com/ai-prompt-library-variations/' : 'https://go.elementor.com/ai-prompt-library-containers/';
4327 + return /*#__PURE__*/_react.default.createElement(_ui.Paper, (0, _extends2.default)({}, props, {
4328 + elevation: 8,
4329 + sx: {
4330 + borderRadius: 2
4331 + }
4332 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
4333 + component: _ui.Box,
4334 + color: function color(theme) {
4335 + return theme.palette.text.tertiary;
4336 + },
4337 + variant: "caption",
4338 + paddingX: 2,
4339 + paddingY: 1
4340 + }, (0, _i18n.__)('Suggested Prompts', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Divider, null), props.children, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4341 + sx: {
4342 + m: 2
4343 + }
4344 + }, /*#__PURE__*/_react.default.createElement(_promptLibraryLink.default, {
4345 + libraryLink: libraryLink
4346 + })));
4347 +};
4348 +PaperComponent.propTypes = {
4349 + children: _propTypes.default.node
4350 +};
4351 +var PromptAutocomplete = function PromptAutocomplete(_ref) {
4352 + var onSubmit = _ref.onSubmit,
4353 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4354 + var _useState = (0, _react.useState)(false),
4355 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4356 + showSuggestions = _useState2[0],
4357 + setShowSuggestions = _useState2[1];
4358 + var theme = (0, _ui.useTheme)();
4359 + var itemHeight = parseInt(theme.spacing(4));
4360 + var maxItems = 5;
4361 + return /*#__PURE__*/_react.default.createElement(_ui.Autocomplete, (0, _extends2.default)({
4362 + PaperComponent: PaperComponent,
4363 + ListboxProps: {
4364 + sx: {
4365 + maxHeight: maxItems * itemHeight
4366 + }
4367 + },
4368 + renderOption: function renderOption(optionProps, option) {
4369 + return /*#__PURE__*/_react.default.createElement(_ui.Typography, (0, _extends2.default)({}, optionProps, {
4370 + title: option.text,
4371 + noWrap: true,
4372 + variant: "body2",
4373 + component: _ui.Box,
4374 + sx: {
4375 + '&.MuiAutocomplete-option': {
4376 + display: 'block',
4377 + minHeight: itemHeight
4378 + }
4379 + }
4380 + }), option.text);
4381 + },
4382 + freeSolo: true,
4383 + fullWidth: true,
4384 + disableClearable: true,
4385 + open: showSuggestions,
4386 + onClose: function onClose(e) {
4387 + var _e$relatedTarget;
4388 + return setShowSuggestions('A' === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
4389 + },
4390 + onKeyDown: function onKeyDown(e) {
4391 + if ('Enter' === e.key && !e.shiftKey && !showSuggestions) {
4392 + onSubmit(e);
4393 + } else if ('/' === e.key && '' === e.target.value) {
4394 + e.preventDefault();
4395 + setShowSuggestions(true);
4396 + }
4397 + }
4398 + }, props));
4399 +};
4400 +PromptAutocomplete.propTypes = {
4401 + onSubmit: _propTypes.default.func.isRequired
4402 +};
4403 +PromptAutocomplete.TextInput = TextInput;
4404 +var _default = PromptAutocomplete;
4405 +exports["default"] = _default;
4406 +
4407 +/***/ }),
4408 +
4409 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js":
4410 +/*!**********************************************************************************!*\
4411 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js ***!
4412 + \**********************************************************************************/
4413 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4414 +
4415 +"use strict";
4416 +
4417 +
4418 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4419 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4420 +Object.defineProperty(exports, "__esModule", ({
4421 + value: true
4422 +}));
4423 +exports["default"] = void 0;
4424 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4425 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4426 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4427 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4428 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4429 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4430 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4431 +var _promptAutocomplete = _interopRequireDefault(__webpack_require__(/*! ./prompt-autocomplete */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js"));
4432 +var _enhanceButton = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/enhance-button */ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js"));
4433 +var _generateSubmit = _interopRequireDefault(__webpack_require__(/*! ../../form-media/components/generate-submit */ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js"));
4434 +var _arrowLeftIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/arrow-left-icon */ "../modules/ai/assets/js/editor/icons/arrow-left-icon.js"));
4435 +var _editIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/edit-icon */ "../modules/ai/assets/js/editor/icons/edit-icon.js"));
4436 +var _usePromptEnhancer2 = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt-enhancer */ "../modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js"));
4437 +var _attachments = _interopRequireDefault(__webpack_require__(/*! ./attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js"));
4438 +var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4439 +var _attachment = __webpack_require__(/*! ../../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
4440 +var _excluded = ["tooltip"];
4441 +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); }
4442 +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; }
4443 +var PROMPT_SUGGESTIONS = Object.freeze([{
4444 + text: (0, _i18n.__)('Hero section on [topic] with heading, text, buttons on the right, and an image on the left', 'elementor.com')
4445 +}, {
4446 + text: (0, _i18n.__)('About Us section on [topic] with heading, text, and big image below', 'elementor.com')
4447 +}, {
4448 + text: (0, _i18n.__)('Team section with four image boxes showcasing team members', 'elementor.com')
4449 +}, {
4450 + text: (0, _i18n.__)('FAQ section with a toggle widget showcasing FAQs about [topic]', 'elementor.com')
4451 +}, {
4452 + text: (0, _i18n.__)('Gallery section with a carousel displaying three images at once', 'elementor.com')
4453 +}, {
4454 + text: (0, _i18n.__)('Contact section with a form for [topic]', 'elementor.com')
4455 +}, {
4456 + text: (0, _i18n.__)('Client section featuring companies\' logos', 'elementor.com')
4457 +}, {
4458 + text: (0, _i18n.__)('Testimonial section with testimonials, each featuring a star rating and an image', 'elementor.com')
4459 +}, {
4460 + text: (0, _i18n.__)('Service section about [topic], showcasing four services with buttons', 'elementor.com')
4461 +}, {
4462 + text: (0, _i18n.__)('Stats section with counters displaying data about [topic]', 'elementor.com')
4463 +}, {
4464 + text: (0, _i18n.__)('Quote section with colored background, featuring a centered quote', 'elementor.com')
4465 +}, {
4466 + text: (0, _i18n.__)('Pricing section for [topic] with a pricing list', 'elementor.com')
4467 +}, {
4468 + text: (0, _i18n.__)('Subscribe section featuring a simple email form, inviting users to stay informed on [topic]', 'elementor.com')
4469 +}]);
4470 +var IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4471 + var tooltip = _ref.tooltip,
4472 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4473 + return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
4474 + title: tooltip
4475 + }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
4476 + component: "span",
4477 + sx: {
4478 + cursor: props.disabled ? 'default' : 'pointer'
4479 + }
4480 + }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, props)));
4481 +};
4482 +IconButtonWithTooltip.propTypes = {
4483 + tooltip: _propTypes.default.string,
4484 + disabled: _propTypes.default.bool
4485 +};
4486 +var BackButton = function BackButton(props) {
4487 + return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4488 + size: "small",
4489 + color: "secondary",
4490 + tooltip: (0, _i18n.__)('Back to results', 'elementor')
4491 + }, props), /*#__PURE__*/_react.default.createElement(_arrowLeftIcon.default, null));
4492 +};
4493 +var EditButton = function EditButton(props) {
4494 + return /*#__PURE__*/_react.default.createElement(IconButtonWithTooltip, (0, _extends2.default)({
4495 + size: "small",
4496 + color: "primary",
4497 + tooltip: (0, _i18n.__)('Edit prompt', 'elementor')
4498 + }, props), /*#__PURE__*/_react.default.createElement(_editIcon.default, null));
4499 +};
4500 +var GenerateButton = function GenerateButton(props) {
4501 + return /*#__PURE__*/_react.default.createElement(_generateSubmit.default, (0, _extends2.default)({
4502 + size: "small",
4503 + fullWidth: false
4504 + }, props), (0, _i18n.__)('Generate', 'elementor'));
4505 +};
4506 +var PromptForm = (0, _react.forwardRef)(function (_ref2, ref) {
4507 + var _attachments$;
4508 + var attachments = _ref2.attachments,
4509 + isActive = _ref2.isActive,
4510 + isLoading = _ref2.isLoading,
4511 + _ref2$showActions = _ref2.showActions,
4512 + showActions = _ref2$showActions === void 0 ? false : _ref2$showActions,
4513 + onAttach = _ref2.onAttach,
4514 + onDetach = _ref2.onDetach,
4515 + _onSubmit = _ref2.onSubmit,
4516 + onBack = _ref2.onBack,
4517 + onEdit = _ref2.onEdit,
4518 + _ref2$shouldResetProm = _ref2.shouldResetPrompt,
4519 + shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4520 + var _useState = (0, _react.useState)(''),
4521 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
4522 + prompt = _useState2[0],
4523 + setPrompt = _useState2[1];
4524 + (0, _react.useEffect)(function () {
4525 + if (shouldResetPrompt) {
4526 + setPrompt('');
4527 + }
4528 + }, [shouldResetPrompt]);
4529 + var _usePromptEnhancer = (0, _usePromptEnhancer2.default)(prompt, 'layout'),
4530 + isEnhancing = _usePromptEnhancer.isEnhancing,
4531 + enhance = _usePromptEnhancer.enhance;
4532 + var previousPrompt = (0, _react.useRef)('');
4533 + var _useConfig = (0, _config.useConfig)(),
4534 + attachmentsTypes = _useConfig.attachmentsTypes;
4535 + var isInputDisabled = isLoading || isEnhancing || !isActive;
4536 + var isInputEmpty = '' === prompt && !attachments.length;
4537 + var isGenerateDisabled = isInputDisabled || isInputEmpty;
4538 + var attachmentsType = ((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || '';
4539 + var attachmentsConfig = attachmentsTypes[attachmentsType];
4540 + var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4541 + 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');
4542 + var handleBack = function handleBack() {
4543 + setPrompt(previousPrompt.current);
4544 + onBack();
4545 + };
4546 + var handleEdit = function handleEdit() {
4547 + previousPrompt.current = prompt;
4548 + onEdit();
4549 + };
4550 + return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4551 + component: "form",
4552 + onSubmit: function onSubmit(e) {
4553 + return _onSubmit(e, prompt);
4554 + },
4555 + direction: "row",
4556 + sx: {
4557 + p: 3
4558 + },
4559 + alignItems: "start",
4560 + gap: 1
4561 + }, /*#__PURE__*/_react.default.createElement(_ui.Stack, {
4562 + direction: "row",
4563 + alignItems: "start",
4564 + flexGrow: 1,
4565 + spacing: 2
4566 + }, showActions && (isActive ? /*#__PURE__*/_react.default.createElement(BackButton, {
4567 + disabled: isLoading || isEnhancing,
4568 + onClick: handleBack
4569 + }) : /*#__PURE__*/_react.default.createElement(EditButton, {
4570 + disabled: isLoading,
4571 + onClick: handleEdit
4572 + })), /*#__PURE__*/_react.default.createElement(_attachments.default, {
4573 + attachments: attachments,
4574 + onAttach: onAttach,
4575 + onDetach: onDetach,
4576 + disabled: isInputDisabled
4577 + }), /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default, {
4578 + value: prompt,
4579 + disabled: isInputDisabled,
4580 + onSubmit: function onSubmit(e) {
4581 + return _onSubmit(e, prompt);
4582 + },
4583 + options: promptSuggestions,
4584 + onChange: function onChange(_, selectedValue) {
4585 + return setPrompt(selectedValue.text + ' ');
4586 + },
4587 + renderInput: function renderInput(params) {
4588 + return /*#__PURE__*/_react.default.createElement(_promptAutocomplete.default.TextInput, (0, _extends2.default)({}, params, {
4589 + ref: ref,
4590 + onChange: function onChange(e) {
4591 + return setPrompt(e.target.value);
4592 + },
4593 + placeholder: promptPlaceholder
4594 + }));
4595 + }
4596 + })), /*#__PURE__*/_react.default.createElement(_enhanceButton.default, {
4597 + size: "small",
4598 + disabled: isGenerateDisabled || '' === prompt,
4599 + isLoading: isEnhancing,
4600 + onClick: function onClick() {
4601 + return enhance().then(function (_ref3) {
4602 + var result = _ref3.result;
4603 + return setPrompt(result);
4604 + });
4605 + }
4606 + }), /*#__PURE__*/_react.default.createElement(GenerateButton, {
4607 + disabled: isGenerateDisabled
4608 + }));
4609 +});
4610 +PromptForm.propTypes = {
4611 + isActive: _propTypes.default.bool,
4612 + onAttach: _propTypes.default.func,
4613 + onDetach: _propTypes.default.func,
4614 + isLoading: _propTypes.default.bool,
4615 + showActions: _propTypes.default.bool,
4616 + onSubmit: _propTypes.default.func.isRequired,
4617 + onBack: _propTypes.default.func.isRequired,
4618 + onEdit: _propTypes.default.func.isRequired,
4619 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType),
4620 + shouldResetPrompt: _propTypes.default.bool
4621 +};
4622 +var _default = PromptForm;
4623 +exports["default"] = _default;
4624 +
4625 +/***/ }),
4626 +
4627 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js":
4628 +/*!*******************************************************************************************!*\
4629 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js ***!
4630 + \*******************************************************************************************/
4631 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4632 +
4633 +"use strict";
4634 +
4635 +
4636 +Object.defineProperty(exports, "__esModule", ({
4637 + value: true
4638 +}));
4639 +exports["default"] = void 0;
4640 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4641 +var ScreenshotContainer = (0, _ui.styled)(_ui.Box, {
4642 + shouldForwardProp: function shouldForwardProp(prop) {
4643 + return prop !== 'outlineOffset';
4644 + }
4645 +})(function (_ref) {
4646 + var theme = _ref.theme,
4647 + selected = _ref.selected,
4648 + height = _ref.height,
4649 + disabled = _ref.disabled,
4650 + _ref$outlineOffset = _ref.outlineOffset,
4651 + outlineOffset = _ref$outlineOffset === void 0 ? '0px' : _ref$outlineOffset;
4652 + var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4653 + var outline = "2px solid ".concat(outlineColor);
4654 + return {
4655 + height: height,
4656 + cursor: disabled ? 'default' : 'pointer',
4657 + overflow: 'hidden',
4658 + boxSizing: 'border-box',
4659 + backgroundPosition: 'top center',
4660 + backgroundSize: '100% auto',
4661 + backgroundRepeat: 'no-repeat',
4662 + backgroundColor: theme.palette.common.white,
4663 + borderRadius: theme.shape.borderRadius * 0.5,
4664 + outlineOffset: outlineOffset,
4665 + outline: outline,
4666 + opacity: disabled ? '0.4' : '1',
4667 + transition: "all 50ms linear",
4668 + '&:hover': disabled ? {} : {
4669 + outlineColor: theme.palette.text.primary
4670 + }
4671 + };
4672 +});
4673 +var _default = ScreenshotContainer;
4674 +exports["default"] = _default;
4675 +
4676 +/***/ }),
4677 +
4678 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js":
4679 +/*!*********************************************************************************************!*\
4680 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js ***!
4681 + \*********************************************************************************************/
4682 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4683 +
4684 +"use strict";
4685 +
4686 +
4687 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4688 +Object.defineProperty(exports, "__esModule", ({
4689 + value: true
4690 +}));
4691 +exports["default"] = ScreenshotUnavailable;
4692 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4693 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4694 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4695 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4696 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4697 +var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4698 +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; }
4699 +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; }
4700 +function ScreenshotUnavailable(props) {
4701 + return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, (0, _extends2.default)({}, props, {
4702 + sx: _objectSpread(_objectSpread({}, props.sx || {}), {}, {
4703 + display: 'flex',
4704 + alignItems: 'center',
4705 + justifyContent: 'center',
4706 + backgroundColor: 'background.paper',
4707 + color: 'text.tertiary',
4708 + fontStyle: 'italic',
4709 + fontSize: '12px',
4710 + paddingInline: 12,
4711 + textAlign: 'center',
4712 + lineHeight: 1.5
4713 + })
4714 + }), (0, _i18n.__)('Preview unavailable', 'elementor'));
4715 +}
4716 +ScreenshotUnavailable.propTypes = {
4717 + sx: _propTypes.default.object
4718 +};
4719 +
4720 +/***/ }),
4721 +
4722 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js":
4723 +/*!*********************************************************************************!*\
4724 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.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 _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
4738 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4739 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4740 +var _screenshotContainer = _interopRequireDefault(__webpack_require__(/*! ./screenshot-container */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js"));
4741 +var _screenshotUnavailable = _interopRequireDefault(__webpack_require__(/*! ./screenshot-unavailable */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js"));
4742 +var _templateBadge = _interopRequireDefault(__webpack_require__(/*! ./template-badge */ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js"));
4743 +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; }
4744 +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; }
4745 +var SCREENSHOT_HEIGHT = '138px';
4746 +var Screenshot = function Screenshot(_ref) {
4747 + var url = _ref.url,
4748 + type = _ref.type,
4749 + _ref$isLoading = _ref.isLoading,
4750 + isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
4751 + _ref$isSelected = _ref.isSelected,
4752 + isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
4753 + isPlaceholder = _ref.isPlaceholder,
4754 + disabled = _ref.disabled,
4755 + onClick = _ref.onClick,
4756 + _ref$sx = _ref.sx,
4757 + sx = _ref$sx === void 0 ? {} : _ref$sx,
4758 + outlineOffset = _ref.outlineOffset;
4759 + if (isPlaceholder) {
4760 + return /*#__PURE__*/_react.default.createElement(_ui.Box, {
4761 + sx: _objectSpread({
4762 + height: SCREENSHOT_HEIGHT
4763 + }, sx)
4764 + });
4765 + }
4766 + if (isLoading) {
4767 + return /*#__PURE__*/_react.default.createElement(_ui.Skeleton, {
4768 + width: "100%",
4769 + animation: "wave",
4770 + variant: "rounded",
4771 + height: SCREENSHOT_HEIGHT,
4772 + sx: sx
4773 + });
4774 + }
4775 + if (!url) {
4776 + return /*#__PURE__*/_react.default.createElement(_screenshotUnavailable.default, {
4777 + selected: isSelected,
4778 + disabled: disabled,
4779 + sx: sx,
4780 + onClick: onClick,
4781 + height: SCREENSHOT_HEIGHT,
4782 + outlineOffset: outlineOffset
4783 + });
4784 + }
4785 + return /*#__PURE__*/_react.default.createElement(_screenshotContainer.default, {
4786 + selected: isSelected,
4787 + disabled: disabled,
4788 + sx: _objectSpread({
4789 + backgroundImage: "url('".concat(url, "')")
4790 + }, sx),
4791 + onClick: onClick,
4792 + height: SCREENSHOT_HEIGHT,
4793 + outlineOffset: outlineOffset
4794 + }, /*#__PURE__*/_react.default.createElement(_templateBadge.default, {
4795 + type: type
4796 + }));
4797 +};
4798 +Screenshot.propTypes = {
4799 + isSelected: _propTypes.default.bool,
4800 + isLoading: _propTypes.default.bool,
4801 + isPlaceholder: _propTypes.default.bool,
4802 + disabled: _propTypes.default.bool,
4803 + onClick: _propTypes.default.func.isRequired,
4804 + url: _propTypes.default.string,
4805 + type: _propTypes.default.string,
4806 + sx: _propTypes.default.object,
4807 + outlineOffset: _propTypes.default.string
4808 +};
4809 +var _default = Screenshot;
4810 +exports["default"] = _default;
4811 +
4812 +/***/ }),
4813 +
4814 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js":
4815 +/*!*************************************************************************************!*\
4816 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js ***!
4817 + \*************************************************************************************/
4818 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4819 +
4820 +"use strict";
4821 +
4822 +
4823 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4824 +Object.defineProperty(exports, "__esModule", ({
4825 + value: true
4826 +}));
4827 +exports["default"] = void 0;
4828 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4829 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4830 +var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
4831 +var _proTemplateIndicator = __webpack_require__(/*! ./pro-template-indicator */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js");
4832 +var TemplateBadge = function TemplateBadge(props) {
4833 + var _useConfig = (0, _config.useConfig)(),
4834 + hasPro = _useConfig.hasPro;
4835 + if ('Pro' === props.type && !hasPro) {
4836 + return /*#__PURE__*/_react.default.createElement(_proTemplateIndicator.ProTemplateIndicator, null);
4837 + }
4838 + return null;
4839 +};
4840 +var _default = TemplateBadge;
4841 +exports["default"] = _default;
4842 +TemplateBadge.propTypes = {
4843 + type: _propTypes.default.string
4844 +};
4845 +
4846 +/***/ }),
4847 +
4848 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js":
4849 +/*!********************************************************************************************!*\
4850 + !*** ../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js ***!
4851 + \********************************************************************************************/
4852 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4853 +
4854 +"use strict";
4855 +
4856 +
4857 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4858 +Object.defineProperty(exports, "__esModule", ({
4859 + value: true
4860 +}));
4861 +exports["default"] = void 0;
4862 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4863 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
4864 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
4865 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
4866 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
4867 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4868 +var _excluded = ["onClose", "onCancel", "title", "text"];
4869 +var UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
4870 + var onClose = _ref.onClose,
4871 + onCancel = _ref.onCancel,
4872 + title = _ref.title,
4873 + text = _ref.text,
4874 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
4875 + return /*#__PURE__*/_react.default.createElement(_ui.Dialog, (0, _extends2.default)({
4876 + "aria-labelledby": "unsaved-changes-alert-title",
4877 + "aria-describedby": "unsaved-changes-alert-description"
4878 + }, props), /*#__PURE__*/_react.default.createElement(_ui.DialogTitle, {
4879 + id: "unsaved-changes-alert-title"
4880 + }, title), /*#__PURE__*/_react.default.createElement(_ui.DialogContent, null, /*#__PURE__*/_react.default.createElement(_ui.DialogContentText, {
4881 + id: "unsaved-changes-alert-description"
4882 + }, text)), /*#__PURE__*/_react.default.createElement(_ui.DialogActions, null, /*#__PURE__*/_react.default.createElement(_ui.Button, {
4883 + onClick: onCancel,
4884 + color: "secondary"
4885 + }, (0, _i18n.__)('Cancel', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Button, {
4886 + onClick: onClose,
4887 + color: "error",
4888 + variant: "contained"
4889 + }, (0, _i18n.__)('Yes, leave', 'elementor'))));
4890 +};
4891 +UnsavedChangesAlert.propTypes = {
4892 + title: _propTypes.default.string,
4893 + text: _propTypes.default.string,
4894 + onCancel: _propTypes.default.func,
4895 + onClose: _propTypes.default.func
4896 +};
4897 +var _default = UnsavedChangesAlert;
4898 +exports["default"] = _default;
4899 +
4900 +/***/ }),
4901 +
4902 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js":
4903 +/*!**************************************************************************!*\
4904 + !*** ../modules/ai/assets/js/editor/pages/form-layout/context/config.js ***!
4905 + \**************************************************************************/
4906 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4907 +
4908 +"use strict";
4909 +
4910 +
4911 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4912 +Object.defineProperty(exports, "__esModule", ({
4913 + value: true
4914 +}));
4915 +exports.useConfig = exports["default"] = exports.MODE_VARIATION = exports.MODE_LAYOUT = exports.LAYOUT_APP_MODES = exports.ConfigProvider = void 0;
4916 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
4917 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4918 +var MODE_LAYOUT = 'layout';
4919 +exports.MODE_LAYOUT = MODE_LAYOUT;
4920 +var MODE_VARIATION = 'variation';
4921 +exports.MODE_VARIATION = MODE_VARIATION;
4922 +var LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
4923 +exports.LAYOUT_APP_MODES = LAYOUT_APP_MODES;
4924 +var ConfigContext = _react.default.createContext({});
4925 +var useConfig = function useConfig() {
4926 + return _react.default.useContext(ConfigContext);
4927 +};
4928 +exports.useConfig = useConfig;
4929 +var ConfigProvider = function ConfigProvider(props) {
4930 + return /*#__PURE__*/_react.default.createElement(ConfigContext.Provider, {
4931 + value: {
4932 + mode: props.mode,
4933 + attachmentsTypes: props.attachmentsTypes,
4934 + onClose: props.onClose,
4935 + onConnect: props.onConnect,
4936 + onData: props.onData,
4937 + onInsert: props.onInsert,
4938 + onSelect: props.onSelect,
4939 + onGenerate: props.onGenerate,
4940 + currentContext: props.currentContext,
4941 + hasPro: props.hasPro
4942 + }
4943 + }, props.children);
4944 +};
4945 +exports.ConfigProvider = ConfigProvider;
4946 +ConfigProvider.propTypes = {
4947 + mode: _propTypes.default.oneOf(LAYOUT_APP_MODES).isRequired,
4948 + children: _propTypes.default.node.isRequired,
4949 + attachmentsTypes: _propTypes.default.object.isRequired,
4950 + onClose: _propTypes.default.func.isRequired,
4951 + onConnect: _propTypes.default.func.isRequired,
4952 + onData: _propTypes.default.func.isRequired,
4953 + onInsert: _propTypes.default.func.isRequired,
4954 + onSelect: _propTypes.default.func.isRequired,
4955 + onGenerate: _propTypes.default.func.isRequired,
4956 + currentContext: _propTypes.default.object,
4957 + hasPro: _propTypes.default.bool
4958 +};
4959 +var _default = ConfigContext;
4960 +exports["default"] = _default;
4961 +
4962 +/***/ }),
4963 +
4964 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js":
4965 +/*!*********************************************************************************!*\
4966 + !*** ../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js ***!
4967 + \*********************************************************************************/
4968 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4969 +
4970 +"use strict";
4971 +
4972 +
4973 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
4974 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
4975 +Object.defineProperty(exports, "__esModule", ({
4976 + value: true
4977 +}));
4978 +exports.useRemoteConfig = exports.RemoteConfigProvider = exports.CONFIG_KEYS = void 0;
4979 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
4980 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
4981 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
4982 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
4983 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
4984 +var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
4985 +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); }
4986 +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; }
4987 +var RemoteConfigContext = _react.default.createContext({});
4988 +var useRemoteConfig = function useRemoteConfig() {
4989 + return _react.default.useContext(RemoteConfigContext);
4990 +};
4991 +exports.useRemoteConfig = useRemoteConfig;
4992 +var CONFIG_KEYS = {
4993 + WEB_BASED_BUILDER_URL: 'webBasedBuilderUrl',
4994 + AUTH_TOKEN: 'jwt'
4995 +};
4996 +exports.CONFIG_KEYS = CONFIG_KEYS;
4997 +var RemoteConfigProvider = function RemoteConfigProvider(props) {
4998 + var _useState = (0, _react.useState)(false),
4999 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5000 + isLoading = _useState2[0],
5001 + setIsLoading = _useState2[1];
5002 + var _useState3 = (0, _react.useState)(false),
5003 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5004 + isLoaded = _useState4[0],
5005 + setIsLoaded = _useState4[1];
5006 + var _useState5 = (0, _react.useState)(false),
5007 + _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5008 + isError = _useState6[0],
5009 + setIsError = _useState6[1];
5010 + var _useState7 = (0, _react.useState)({}),
5011 + _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5012 + remoteConfig = _useState8[0],
5013 + setRemoteConfig = _useState8[1];
5014 + var fetchData = /*#__PURE__*/function () {
5015 + var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5016 + var result;
5017 + return _regenerator.default.wrap(function _callee$(_context) {
5018 + while (1) switch (_context.prev = _context.next) {
5019 + case 0:
5020 + setIsLoading(true);
5021 + _context.prev = 1;
5022 + _context.next = 4;
5023 + return (0, _api.getRemoteConfig)().finally(function () {
5024 + setIsLoaded(true);
5025 + setIsLoading(false);
5026 + });
5027 + case 4:
5028 + result = _context.sent;
5029 + if (result.config) {
5030 + _context.next = 7;
5031 + break;
5032 + }
5033 + throw new Error('Invalid remote config');
5034 + case 7:
5035 + setRemoteConfig(result.config);
5036 + _context.next = 15;
5037 + break;
5038 + case 10:
5039 + _context.prev = 10;
5040 + _context.t0 = _context["catch"](1);
5041 + setIsError(true);
5042 + setIsLoaded(true);
5043 + setIsLoading(false);
5044 + case 15:
5045 + case "end":
5046 + return _context.stop();
5047 + }
5048 + }, _callee, null, [[1, 10]]);
5049 + }));
5050 + return function fetchData() {
5051 + return _ref.apply(this, arguments);
5052 + };
5053 + }();
5054 + if (!isLoaded && !isLoading) {
5055 + fetchData();
5056 + }
5057 + return /*#__PURE__*/_react.default.createElement(RemoteConfigContext.Provider, {
5058 + value: {
5059 + isLoading: isLoading,
5060 + isLoaded: isLoaded,
5061 + isError: isError,
5062 + remoteConfig: remoteConfig
5063 + }
5064 + }, props.children);
5065 +};
5066 +exports.RemoteConfigProvider = RemoteConfigProvider;
5067 +RemoteConfigProvider.propTypes = {
5068 + children: _propTypes.default.node.isRequired,
5069 + onError: _propTypes.default.func.isRequired
5070 +};
5071 +
5072 +/***/ }),
5073 +
5074 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js":
5075 +/*!****************************************************************************************!*\
5076 + !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-attach-url-service.js ***!
5077 + \****************************************************************************************/
5078 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5079 +
5080 +"use strict";
5081 +
5082 +
5083 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5084 +Object.defineProperty(exports, "__esModule", ({
5085 + value: true
5086 +}));
5087 +exports.useAttachUrlService = void 0;
5088 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5089 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5090 +var _react = __webpack_require__(/*! react */ "react");
5091 +var _remoteConfig = __webpack_require__(/*! ../context/remote-config */ "../modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js");
5092 +var useAttachUrlService = function useAttachUrlService(args) {
5093 + var _window$elementorComm, _window$elementorComm2;
5094 + var _useState = (0, _react.useState)(args.targetUrl),
5095 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5096 + currentUrl = _useState2[0],
5097 + setCurrentUrl = _useState2[1];
5098 + var theme = (0, _ui.useTheme)();
5099 + var _useRemoteConfig = (0, _remoteConfig.useRemoteConfig)(),
5100 + isLoaded = _useRemoteConfig.isLoaded,
5101 + isError = _useRemoteConfig.isError,
5102 + remoteConfig = _useRemoteConfig.remoteConfig;
5103 + if (!isLoaded || isError || !remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]) {
5104 + return {
5105 + iframeSource: '',
5106 + currentUrl: currentUrl,
5107 + setCurrentUrl: setCurrentUrl
5108 + };
5109 + }
5110 + var urlObject = new URL(remoteConfig[_remoteConfig.CONFIG_KEYS.WEB_BASED_BUILDER_URL]);
5111 + urlObject.searchParams.append('colorScheme', theme.palette.mode);
5112 + urlObject.searchParams.append('isRTL', 'rtl' === theme.direction ? 'true' : 'false');
5113 + 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);
5114 + if (currentUrl) {
5115 + urlObject.searchParams.append('url', currentUrl);
5116 + }
5117 + return {
5118 + iframeSource: urlObject.toString(),
5119 + currentUrl: currentUrl,
5120 + setCurrentUrl: setCurrentUrl
5121 + };
5122 +};
5123 +exports.useAttachUrlService = useAttachUrlService;
5124 +
5125 +/***/ }),
5126 +
5127 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js":
5128 +/*!***********************************************************************************!*\
5129 + !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js ***!
5130 + \***********************************************************************************/
5131 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5132 +
5133 +"use strict";
5134 +
5135 +
5136 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5137 +Object.defineProperty(exports, "__esModule", ({
5138 + value: true
5139 +}));
5140 +exports["default"] = void 0;
5141 +var _api = __webpack_require__(/*! ../../../api */ "../modules/ai/assets/js/editor/api/index.js");
5142 +var _usePrompt = _interopRequireDefault(__webpack_require__(/*! ../../../hooks/use-prompt */ "../modules/ai/assets/js/editor/hooks/use-prompt.js"));
5143 +var useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5144 + return (0, _usePrompt.default)(function (requestBody, signal) {
5145 + requestBody.variationType = type;
5146 + return (0, _api.generateLayout)(requestBody, signal);
5147 + }, initialValue);
5148 +};
5149 +var _default = useLayoutPrompt;
5150 +exports["default"] = _default;
5151 +
5152 +/***/ }),
5153 +
5154 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js":
5155 +/*!********************************************************************************!*\
5156 + !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js ***!
5157 + \********************************************************************************/
5158 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5159 +
5160 +"use strict";
5161 +
5162 +
5163 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5164 +Object.defineProperty(exports, "__esModule", ({
5165 + value: true
5166 +}));
5167 +exports["default"] = void 0;
5168 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5169 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5170 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5171 +var _react = __webpack_require__(/*! react */ "react");
5172 +var _useLayoutPrompt = _interopRequireDefault(__webpack_require__(/*! ./use-layout-prompt */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js"));
5173 +var ERROR_INITIAL_VALUE = '';
5174 +var useScreenshot = function useScreenshot(type, onData) {
5175 + var _useState = (0, _react.useState)(ERROR_INITIAL_VALUE),
5176 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5177 + error = _useState2[0],
5178 + setError = _useState2[1];
5179 + var _useState3 = (0, _react.useState)(false),
5180 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5181 + isLoading = _useState4[0],
5182 + setIsLoading = _useState4[1];
5183 + var layoutData = (0, _useLayoutPrompt.default)(type, null);
5184 + var generate = function generate(requestBody, signal) {
5185 + setIsLoading(true);
5186 + setError(ERROR_INITIAL_VALUE);
5187 + return layoutData.send(requestBody, signal).then( /*#__PURE__*/function () {
5188 + var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(data) {
5189 + var createdScreenshot;
5190 + return _regenerator.default.wrap(function _callee$(_context) {
5191 + while (1) switch (_context.prev = _context.next) {
5192 + case 0:
5193 + _context.next = 2;
5194 + return onData(data.result);
5195 + case 2:
5196 + createdScreenshot = _context.sent;
5197 + createdScreenshot.sendUsageData = function () {
5198 + return layoutData.sendUsageData(data);
5199 + };
5200 + createdScreenshot.baseTemplateId = data.baseTemplateId;
5201 + createdScreenshot.type = data.type;
5202 + return _context.abrupt("return", createdScreenshot);
5203 + case 7:
5204 + case "end":
5205 + return _context.stop();
5206 + }
5207 + }, _callee);
5208 + }));
5209 + return function (_x) {
5210 + return _ref.apply(this, arguments);
5211 + };
5212 + }()).catch(function (err) {
5213 + setError(err.extra_data ? err : err.message || err);
5214 + throw err;
5215 + }).finally(function () {
5216 + return setIsLoading(false);
5217 + });
5218 + };
5219 + return {
5220 + generate: generate,
5221 + error: error,
5222 + isLoading: isLoading
5223 + };
5224 +};
5225 +var _default = useScreenshot;
5226 +exports["default"] = _default;
5227 +
5228 +/***/ }),
5229 +
5230 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js":
5231 +/*!*********************************************************************************!*\
5232 + !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js ***!
5233 + \*********************************************************************************/
5234 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5235 +
5236 +"use strict";
5237 +
5238 +
5239 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5240 +Object.defineProperty(exports, "__esModule", ({
5241 + value: true
5242 +}));
5243 +exports["default"] = void 0;
5244 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5245 +var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5246 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5247 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5248 +var _react = __webpack_require__(/*! react */ "react");
5249 +var _useScreenshot = _interopRequireDefault(__webpack_require__(/*! ./use-screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js"));
5250 +var _config = __webpack_require__(/*! ../context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5251 +var _requestsIds = __webpack_require__(/*! ../../../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
5252 +var PENDING_VALUE = {
5253 + isPending: true
5254 +};
5255 +var useScreenshots = function useScreenshots(_ref) {
5256 + var onData = _ref.onData;
5257 + var _useState = (0, _react.useState)([]),
5258 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5259 + screenshots = _useState2[0],
5260 + setScreenshots = _useState2[1];
5261 +
5262 + /**
5263 + * The ids for each request are:
5264 + * - editorSessionId: a unique id for each editor opening
5265 + * - sessionId: a unique id for each session. (open the AI builder)
5266 + * - generateId: a unique id for each generate request. (prompt change)
5267 + * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5268 + * - requestId: a unique id for each generate request.
5269 + */
5270 +
5271 + var _useConfig = (0, _config.useConfig)(),
5272 + currentContext = _useConfig.currentContext;
5273 + var _useRequestIds = (0, _requestsIds.useRequestIds)(),
5274 + editorSessionId = _useRequestIds.editorSessionId,
5275 + sessionId = _useRequestIds.sessionId,
5276 + setRequest = _useRequestIds.setRequest,
5277 + setBatch = _useRequestIds.setBatch,
5278 + setGenerate = _useRequestIds.setGenerate;
5279 + var generateIdRef = (0, _react.useRef)('');
5280 + var batchId = setBatch();
5281 + var screenshotsData = [(0, _useScreenshot.default)(0, onData), (0, _useScreenshot.default)(1, onData), (0, _useScreenshot.default)(2, onData)];
5282 + var screenshotsGroupCount = screenshotsData.length;
5283 + var error = screenshotsData.every(function (s) {
5284 + return s === null || s === void 0 ? void 0 : s.error;
5285 + }) ? screenshotsData[0].error : '';
5286 + var isLoading = screenshotsData.some(function (s) {
5287 + return s === null || s === void 0 ? void 0 : s.isLoading;
5288 + });
5289 + var abortController = (0, _react.useRef)(null);
5290 + var abort = function abort() {
5291 + var _abortController$curr;
5292 + return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5293 + };
5294 + var createScreenshots = /*#__PURE__*/function () {
5295 + var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(prompt, attachments) {
5296 + var onGenerate, onError, promises, results, isAllFailed;
5297 + return _regenerator.default.wrap(function _callee$(_context) {
5298 + while (1) switch (_context.prev = _context.next) {
5299 + case 0:
5300 + abortController.current = new AbortController();
5301 + onGenerate = function onGenerate(screenshot) {
5302 + setScreenshots(function (prev) {
5303 + var updatedData = (0, _toConsumableArray2.default)(prev);
5304 + var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5305 + updatedData[pendingIndex] = screenshot;
5306 + return updatedData;
5307 + });
5308 + return true;
5309 + };
5310 + onError = function onError() {
5311 + setScreenshots(function (prev) {
5312 + var updatedData = (0, _toConsumableArray2.default)(prev);
5313 + var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5314 + updatedData[pendingIndex] = {
5315 + isError: true
5316 + };
5317 + return updatedData;
5318 + });
5319 + return false;
5320 + };
5321 + promises = screenshotsData.map(function (_ref3) {
5322 + var generate = _ref3.generate;
5323 + var prevGeneratedIds = screenshots.map(function (screenshot) {
5324 + return screenshot.baseTemplateId || '';
5325 + });
5326 + var requestBody = {
5327 + prompt: prompt,
5328 + prevGeneratedIds: prevGeneratedIds,
5329 + currentContext: currentContext,
5330 + ids: {
5331 + editorSessionId: editorSessionId.current,
5332 + sessionId: sessionId.current,
5333 + generateId: generateIdRef.current,
5334 + batchId: batchId.current,
5335 + requestId: setRequest().current
5336 + },
5337 + attachments: attachments.map(function (_ref4) {
5338 + var type = _ref4.type,
5339 + content = _ref4.content,
5340 + label = _ref4.label,
5341 + source = _ref4.source;
5342 + // Send only the data that is needed for the generation.
5343 + return {
5344 + type: type,
5345 + content: content,
5346 + label: label,
5347 + source: source
5348 + };
5349 + })
5350 + };
5351 + return generate(requestBody, abortController.current.signal).then(onGenerate).catch(onError);
5352 + });
5353 + _context.next = 6;
5354 + return Promise.all(promises);
5355 + case 6:
5356 + results = _context.sent;
5357 + isAllFailed = results.every(function (value) {
5358 + return false === value;
5359 + });
5360 + if (isAllFailed) {
5361 + setScreenshots(function (prev) {
5362 + var updatedData = (0, _toConsumableArray2.default)(prev);
5363 + updatedData.splice(screenshotsGroupCount * -1);
5364 + return updatedData;
5365 + });
5366 + }
5367 + case 9:
5368 + case "end":
5369 + return _context.stop();
5370 + }
5371 + }, _callee);
5372 + }));
5373 + return function createScreenshots(_x, _x2) {
5374 + return _ref2.apply(this, arguments);
5375 + };
5376 + }();
5377 + var generate = function generate(prompt, attachments) {
5378 + var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5379 + generateIdRef.current = setGenerate().current;
5380 + setScreenshots(placeholders);
5381 + createScreenshots(prompt, attachments);
5382 + };
5383 + var regenerate = function regenerate(prompt, attachments) {
5384 + var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5385 + setScreenshots(function (prev) {
5386 + return [].concat((0, _toConsumableArray2.default)(prev), (0, _toConsumableArray2.default)(placeholders));
5387 + });
5388 + createScreenshots(prompt, attachments);
5389 + };
5390 + return {
5391 + generate: generate,
5392 + regenerate: regenerate,
5393 + screenshots: screenshots,
5394 + isLoading: isLoading,
5395 + error: error,
5396 + abort: abort
5397 + };
5398 +};
5399 +var _default = useScreenshots;
5400 +exports["default"] = _default;
5401 +
5402 +/***/ }),
5403 +
5404 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js":
5405 +/*!****************************************************************************!*\
5406 + !*** ../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js ***!
5407 + \****************************************************************************/
5408 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5409 +
5410 +"use strict";
5411 +
5412 +
5413 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5414 +Object.defineProperty(exports, "__esModule", ({
5415 + value: true
5416 +}));
5417 +exports["default"] = exports.SCREENSHOTS_PER_PAGE = exports.MAX_PAGES = void 0;
5418 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5419 +var _react = __webpack_require__(/*! react */ "react");
5420 +var SCREENSHOTS_PER_PAGE = 3;
5421 +exports.SCREENSHOTS_PER_PAGE = SCREENSHOTS_PER_PAGE;
5422 +var MAX_PAGES = 5;
5423 +exports.MAX_PAGES = MAX_PAGES;
5424 +var useSlider = function useSlider() {
5425 + var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
5426 + _ref$slidesCount = _ref.slidesCount,
5427 + slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount,
5428 + _ref$slidesPerPage = _ref.slidesPerPage,
5429 + slidesPerPage = _ref$slidesPerPage === void 0 ? SCREENSHOTS_PER_PAGE : _ref$slidesPerPage,
5430 + _ref$gapPercentage = _ref.gapPercentage,
5431 + gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5432 + var _useState = (0, _react.useState)(1),
5433 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5434 + currentPage = _useState2[0],
5435 + setCurrentPage = _useState2[1];
5436 + var gapsCount = slidesPerPage - 1;
5437 + var slideWidthPercentage = (100 - gapPercentage * gapsCount) / slidesPerPage;
5438 + var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5439 + var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5440 + (0, _react.useEffect)(function () {
5441 + // In cases when the slidesCount value was reduced, we need to navigate to the last page.
5442 + if (currentPage > 1 && currentPage > pagesCount) {
5443 + setCurrentPage(pagesCount);
5444 + }
5445 + }, [pagesCount]);
5446 + return {
5447 + currentPage: currentPage,
5448 + setCurrentPage: setCurrentPage,
5449 + pagesCount: pagesCount,
5450 + slidesPerPage: slidesPerPage,
5451 + gapPercentage: gapPercentage,
5452 + offsetXPercentage: offsetXPercentage,
5453 + slideWidthPercentage: slideWidthPercentage
5454 + };
5455 +};
5456 +var _default = useSlider;
5457 +exports["default"] = _default;
5458 +
5459 +/***/ }),
5460 +
5461 +/***/ "../modules/ai/assets/js/editor/pages/form-layout/index.js":
5462 +/*!*****************************************************************!*\
5463 + !*** ../modules/ai/assets/js/editor/pages/form-layout/index.js ***!
5464 + \*****************************************************************/
5465 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
5466 +
5467 +"use strict";
5468 +
5469 +
5470 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5471 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5472 +Object.defineProperty(exports, "__esModule", ({
5473 + value: true
5474 +}));
5475 +exports["default"] = void 0;
5476 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5477 +var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
5478 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5479 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5480 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5481 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5482 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5483 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5484 +var _promptErrorMessage = _interopRequireDefault(__webpack_require__(/*! ../../components/prompt-error-message */ "../modules/ai/assets/js/editor/components/prompt-error-message.js"));
5485 +var _unsavedChangesAlert = _interopRequireDefault(__webpack_require__(/*! ./components/unsaved-changes-alert */ "../modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js"));
5486 +var _layoutDialog = _interopRequireDefault(__webpack_require__(/*! ./components/layout-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js"));
5487 +var _promptForm = _interopRequireDefault(__webpack_require__(/*! ./components/prompt-form */ "../modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js"));
5488 +var _refreshIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/refresh-icon */ "../modules/ai/assets/js/editor/icons/refresh-icon.js"));
5489 +var _screenshot = _interopRequireDefault(__webpack_require__(/*! ./components/screenshot */ "../modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js"));
5490 +var _useScreenshots2 = _interopRequireDefault(__webpack_require__(/*! ./hooks/use-screenshots */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js"));
5491 +var _useSlider2 = _interopRequireWildcard(__webpack_require__(/*! ./hooks/use-slider */ "../modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js"));
5492 +var _minimizeDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/minimize-diagonal-icon */ "../modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js"));
5493 +var _expandDiagonalIcon = _interopRequireDefault(__webpack_require__(/*! ../../icons/expand-diagonal-icon */ "../modules/ai/assets/js/editor/icons/expand-diagonal-icon.js"));
5494 +var _config = __webpack_require__(/*! ./context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
5495 +var _attachment = __webpack_require__(/*! ../../types/attachment */ "../modules/ai/assets/js/editor/types/attachment.js");
5496 +var _promptPowerNotice = __webpack_require__(/*! ./components/attachments/prompt-power-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js");
5497 +var _proWidgetsNotice = __webpack_require__(/*! ./components/pro-widgets-notice */ "../modules/ai/assets/js/editor/pages/form-layout/components/pro-widgets-notice.js");
5498 +var _attachments = __webpack_require__(/*! ./components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
5499 +var _attachDialog = _interopRequireDefault(__webpack_require__(/*! ./components/attachments/attach-dialog */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js"));
5500 +var _isURL = _interopRequireDefault(__webpack_require__(/*! validator/lib/isURL */ "../node_modules/validator/lib/isURL.js"));
5501 +var _voicePromotionAlert = __webpack_require__(/*! ../../components/voice-promotion-alert */ "../modules/ai/assets/js/editor/components/voice-promotion-alert.js");
5502 +var _excluded = ["children"];
5503 +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); }
5504 +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; }
5505 +var DirectionalMinimizeDiagonalIcon = (0, _ui.withDirection)(_minimizeDiagonalIcon.default);
5506 +var DirectionalExpandDiagonalIcon = (0, _ui.withDirection)(_expandDiagonalIcon.default);
5507 +
1102 5508 /**
1103 - * Copyright (c) 2013-present, Facebook, Inc.
1104 - *
1105 - * This source code is licensed under the MIT license found in the
1106 - * LICENSE file in the root directory of this source tree.
1107 - */
1108 - var require_factoryWithTypeCheckers = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1109 - var ReactIs = require_react_is();
1110 - var assign = require_object_assign();
1111 - var ReactPropTypesSecret = require_ReactPropTypesSecret();
1112 - var has = require_has();
1113 - var checkPropTypes = require_checkPropTypes();
1114 - var printWarning = function() {};
1115 - printWarning = function(text) {
1116 - var message = "Warning: " + text;
1117 - if (typeof console !== "undefined") console.error(message);
1118 - try {
1119 - throw new Error(message);
1120 - } catch (x) {}
1121 - };
1122 - function emptyFunctionThatReturnsNull() {
1123 - return null;
1124 - }
1125 - module.exports = function(isValidElement, throwOnDirectAccess) {
1126 - var ITERATOR_SYMBOL = typeof Symbol === "function" && Symbol.iterator;
1127 - var FAUX_ITERATOR_SYMBOL = "@@iterator";
1128 - /**
1129 - * Returns the iterator method function contained on the iterable object.
1130 - *
1131 - * Be sure to invoke the function with the iterable as context:
1132 - *
1133 - * var iteratorFn = getIteratorFn(myIterable);
1134 - * if (iteratorFn) {
1135 - * var iterator = iteratorFn.call(myIterable);
1136 - * ...
1137 - * }
1138 - *
1139 - * @param {?object} maybeIterable
1140 - * @return {?function}
1141 - */
1142 - function getIteratorFn(maybeIterable) {
1143 - var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
1144 - if (typeof iteratorFn === "function") return iteratorFn;
1145 - }
1146 - /**
1147 - * Collection of methods that allow declaration and validation of props that are
1148 - * supplied to React components. Example usage:
1149 - *
1150 - * var Props = require('ReactPropTypes');
1151 - * var MyArticle = React.createClass({
1152 - * propTypes: {
1153 - * // An optional string prop named "description".
1154 - * description: Props.string,
1155 - *
1156 - * // A required enum prop named "category".
1157 - * category: Props.oneOf(['News','Photos']).isRequired,
1158 - *
1159 - * // A prop named "dialog" that requires an instance of Dialog.
1160 - * dialog: Props.instanceOf(Dialog).isRequired
1161 - * },
1162 - * render: function() { ... }
1163 - * });
1164 - *
1165 - * A more formal specification of how these methods are used:
1166 - *
1167 - * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
1168 - * decl := ReactPropTypes.{type}(.isRequired)?
1169 - *
1170 - * Each and every declaration produces a function with the same signature. This
1171 - * allows the creation of custom validation functions. For example:
1172 - *
1173 - * var MyLink = React.createClass({
1174 - * propTypes: {
1175 - * // An optional string or URI prop named "href".
1176 - * href: function(props, propName, componentName) {
1177 - * var propValue = props[propName];
1178 - * if (propValue != null && typeof propValue !== 'string' &&
1179 - * !(propValue instanceof URI)) {
1180 - * return new Error(
1181 - * 'Expected a string or an URI for ' + propName + ' in ' +
1182 - * componentName
1183 - * );
1184 - * }
1185 - * }
1186 - * },
1187 - * render: function() {...}
1188 - * });
1189 - *
1190 - * @internal
1191 - */
1192 - var ANONYMOUS = "<<anonymous>>";
1193 - var ReactPropTypes = {
1194 - array: createPrimitiveTypeChecker("array"),
1195 - bigint: createPrimitiveTypeChecker("bigint"),
1196 - bool: createPrimitiveTypeChecker("boolean"),
1197 - func: createPrimitiveTypeChecker("function"),
1198 - number: createPrimitiveTypeChecker("number"),
1199 - object: createPrimitiveTypeChecker("object"),
1200 - string: createPrimitiveTypeChecker("string"),
1201 - symbol: createPrimitiveTypeChecker("symbol"),
1202 - any: createAnyTypeChecker(),
1203 - arrayOf: createArrayOfTypeChecker,
1204 - element: createElementTypeChecker(),
1205 - elementType: createElementTypeTypeChecker(),
1206 - instanceOf: createInstanceTypeChecker,
1207 - node: createNodeChecker(),
1208 - objectOf: createObjectOfTypeChecker,
1209 - oneOf: createEnumTypeChecker,
1210 - oneOfType: createUnionTypeChecker,
1211 - shape: createShapeTypeChecker,
1212 - exact: createStrictShapeTypeChecker
1213 - };
1214 - /**
1215 - * inlined Object.is polyfill to avoid requiring consumers ship their own
1216 - * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
1217 - */
1218 - function is(x, y) {
1219 - if (x === y) return x !== 0 || 1 / x === 1 / y;
1220 - else return x !== x && y !== y;
1221 - }
1222 - /**
1223 - * We use an Error-like object for backward compatibility as people may call
1224 - * PropTypes directly and inspect their output. However, we don't use real
1225 - * Errors anymore. We don't inspect their stack anyway, and creating them
1226 - * is prohibitively expensive if they are created too often, such as what
1227 - * happens in oneOfType() for any type before the one that matched.
1228 - */
1229 - function PropTypeError(message, data) {
1230 - this.message = message;
1231 - this.data = data && typeof data === "object" ? data : {};
1232 - this.stack = "";
1233 - }
1234 - PropTypeError.prototype = Error.prototype;
1235 - function createChainableTypeChecker(validate) {
1236 - var manualPropTypeCallCache = {};
1237 - var manualPropTypeWarningCount = 0;
1238 - function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
1239 - componentName = componentName || ANONYMOUS;
1240 - propFullName = propFullName || propName;
1241 - if (secret !== ReactPropTypesSecret) {
1242 - if (throwOnDirectAccess) {
1243 - var err = /* @__PURE__ */ new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");
1244 - err.name = "Invariant Violation";
1245 - throw err;
1246 - } else if (typeof console !== "undefined") {
1247 - var cacheKey = componentName + ":" + propName;
1248 - if (!manualPropTypeCallCache[cacheKey] && manualPropTypeWarningCount < 3) {
1249 - printWarning("You are manually calling a React.PropTypes validation function for the `" + propFullName + "` prop on `" + componentName + "`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.");
1250 - manualPropTypeCallCache[cacheKey] = true;
1251 - manualPropTypeWarningCount++;
1252 - }
1253 - }
1254 - }
1255 - if (props[propName] == null) {
1256 - if (isRequired) {
1257 - if (props[propName] === null) return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required " + ("in `" + componentName + "`, but its value is `null`."));
1258 - return new PropTypeError("The " + location + " `" + propFullName + "` is marked as required in " + ("`" + componentName + "`, but its value is `undefined`."));
1259 - }
1260 - return null;
1261 - } else return validate(props, propName, componentName, location, propFullName);
1262 - }
1263 - var chainedCheckType = checkType.bind(null, false);
1264 - chainedCheckType.isRequired = checkType.bind(null, true);
1265 - return chainedCheckType;
1266 - }
1267 - function createPrimitiveTypeChecker(expectedType) {
1268 - function validate(props, propName, componentName, location, propFullName, secret) {
1269 - var propValue = props[propName];
1270 - if (getPropType(propValue) !== expectedType) {
1271 - var preciseType = getPreciseType(propValue);
1272 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + preciseType + "` supplied to `" + componentName + "`, expected ") + ("`" + expectedType + "`."), { expectedType });
1273 - }
1274 - return null;
1275 - }
1276 - return createChainableTypeChecker(validate);
1277 - }
1278 - function createAnyTypeChecker() {
1279 - return createChainableTypeChecker(emptyFunctionThatReturnsNull);
1280 - }
1281 - function createArrayOfTypeChecker(typeChecker) {
1282 - function validate(props, propName, componentName, location, propFullName) {
1283 - if (typeof typeChecker !== "function") return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside arrayOf.");
1284 - var propValue = props[propName];
1285 - if (!Array.isArray(propValue)) {
1286 - var propType = getPropType(propValue);
1287 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an array."));
1288 - }
1289 - for (var i = 0; i < propValue.length; i++) {
1290 - var error = typeChecker(propValue, i, componentName, location, propFullName + "[" + i + "]", ReactPropTypesSecret);
1291 - if (error instanceof Error) return error;
1292 - }
1293 - return null;
1294 - }
1295 - return createChainableTypeChecker(validate);
1296 - }
1297 - function createElementTypeChecker() {
1298 - function validate(props, propName, componentName, location, propFullName) {
1299 - var propValue = props[propName];
1300 - if (!isValidElement(propValue)) {
1301 - var propType = getPropType(propValue);
1302 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement."));
1303 - }
1304 - return null;
1305 - }
1306 - return createChainableTypeChecker(validate);
1307 - }
1308 - function createElementTypeTypeChecker() {
1309 - function validate(props, propName, componentName, location, propFullName) {
1310 - var propValue = props[propName];
1311 - if (!ReactIs.isValidElementType(propValue)) {
1312 - var propType = getPropType(propValue);
1313 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected a single ReactElement type."));
1314 - }
1315 - return null;
1316 - }
1317 - return createChainableTypeChecker(validate);
1318 - }
1319 - function createInstanceTypeChecker(expectedClass) {
1320 - function validate(props, propName, componentName, location, propFullName) {
1321 - if (!(props[propName] instanceof expectedClass)) {
1322 - var expectedClassName = expectedClass.name || ANONYMOUS;
1323 - var actualClassName = getClassName(props[propName]);
1324 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + actualClassName + "` supplied to `" + componentName + "`, expected ") + ("instance of `" + expectedClassName + "`."));
1325 - }
1326 - return null;
1327 - }
1328 - return createChainableTypeChecker(validate);
1329 - }
1330 - function createEnumTypeChecker(expectedValues) {
1331 - if (!Array.isArray(expectedValues)) {
1332 - if (arguments.length > 1) printWarning("Invalid arguments supplied to oneOf, expected an array, got " + arguments.length + " arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).");
1333 - else printWarning("Invalid argument supplied to oneOf, expected an array.");
1334 - return emptyFunctionThatReturnsNull;
1335 - }
1336 - function validate(props, propName, componentName, location, propFullName) {
1337 - var propValue = props[propName];
1338 - for (var i = 0; i < expectedValues.length; i++) if (is(propValue, expectedValues[i])) return null;
1339 - var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
1340 - if (getPreciseType(value) === "symbol") return String(value);
1341 - return value;
1342 - });
1343 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` of value `" + String(propValue) + "` " + ("supplied to `" + componentName + "`, expected one of " + valuesString + "."));
1344 - }
1345 - return createChainableTypeChecker(validate);
1346 - }
1347 - function createObjectOfTypeChecker(typeChecker) {
1348 - function validate(props, propName, componentName, location, propFullName) {
1349 - if (typeof typeChecker !== "function") return new PropTypeError("Property `" + propFullName + "` of component `" + componentName + "` has invalid PropType notation inside objectOf.");
1350 - var propValue = props[propName];
1351 - var propType = getPropType(propValue);
1352 - if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type " + ("`" + propType + "` supplied to `" + componentName + "`, expected an object."));
1353 - for (var key in propValue) if (has(propValue, key)) {
1354 - var error = typeChecker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
1355 - if (error instanceof Error) return error;
1356 - }
1357 - return null;
1358 - }
1359 - return createChainableTypeChecker(validate);
1360 - }
1361 - function createUnionTypeChecker(arrayOfTypeCheckers) {
1362 - if (!Array.isArray(arrayOfTypeCheckers)) {
1363 - printWarning("Invalid argument supplied to oneOfType, expected an instance of array.");
1364 - return emptyFunctionThatReturnsNull;
1365 - }
1366 - for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
1367 - var checker = arrayOfTypeCheckers[i];
1368 - if (typeof checker !== "function") {
1369 - printWarning("Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + getPostfixForTypeWarning(checker) + " at index " + i + ".");
1370 - return emptyFunctionThatReturnsNull;
1371 - }
1372 - }
1373 - function validate(props, propName, componentName, location, propFullName) {
1374 - var expectedTypes = [];
1375 - for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
1376 - var checker = arrayOfTypeCheckers[i];
1377 - var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
1378 - if (checkerResult == null) return null;
1379 - if (checkerResult.data && has(checkerResult.data, "expectedType")) expectedTypes.push(checkerResult.data.expectedType);
1380 - }
1381 - var expectedTypesMessage = expectedTypes.length > 0 ? ", expected one of type [" + expectedTypes.join(", ") + "]" : "";
1382 - return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`" + expectedTypesMessage + "."));
1383 - }
1384 - return createChainableTypeChecker(validate);
1385 - }
1386 - function createNodeChecker() {
1387 - function validate(props, propName, componentName, location, propFullName) {
1388 - if (!isNode(props[propName])) return new PropTypeError("Invalid " + location + " `" + propFullName + "` supplied to " + ("`" + componentName + "`, expected a ReactNode."));
1389 - return null;
1390 - }
1391 - return createChainableTypeChecker(validate);
1392 - }
1393 - function invalidValidatorError(componentName, location, propFullName, key, type) {
1394 - return new PropTypeError((componentName || "React class") + ": " + location + " type `" + propFullName + "." + key + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + type + "`.");
1395 - }
1396 - function createShapeTypeChecker(shapeTypes) {
1397 - function validate(props, propName, componentName, location, propFullName) {
1398 - var propValue = props[propName];
1399 - var propType = getPropType(propValue);
1400 - if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`."));
1401 - for (var key in shapeTypes) {
1402 - var checker = shapeTypes[key];
1403 - if (typeof checker !== "function") return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
1404 - var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
1405 - if (error) return error;
1406 - }
1407 - return null;
1408 - }
1409 - return createChainableTypeChecker(validate);
1410 - }
1411 - function createStrictShapeTypeChecker(shapeTypes) {
1412 - function validate(props, propName, componentName, location, propFullName) {
1413 - var propValue = props[propName];
1414 - var propType = getPropType(propValue);
1415 - if (propType !== "object") return new PropTypeError("Invalid " + location + " `" + propFullName + "` of type `" + propType + "` " + ("supplied to `" + componentName + "`, expected `object`."));
1416 - for (var key in assign({}, props[propName], shapeTypes)) {
1417 - var checker = shapeTypes[key];
1418 - if (has(shapeTypes, key) && typeof checker !== "function") return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
1419 - if (!checker) return new PropTypeError("Invalid " + location + " `" + propFullName + "` key `" + key + "` supplied to `" + componentName + "`.\nBad object: " + JSON.stringify(props[propName], null, " ") + "\nValid keys: " + JSON.stringify(Object.keys(shapeTypes), null, " "));
1420 - var error = checker(propValue, key, componentName, location, propFullName + "." + key, ReactPropTypesSecret);
1421 - if (error) return error;
1422 - }
1423 - return null;
1424 - }
1425 - return createChainableTypeChecker(validate);
1426 - }
1427 - function isNode(propValue) {
1428 - switch (typeof propValue) {
1429 - case "number":
1430 - case "string":
1431 - case "undefined": return true;
1432 - case "boolean": return !propValue;
1433 - case "object":
1434 - if (Array.isArray(propValue)) return propValue.every(isNode);
1435 - if (propValue === null || isValidElement(propValue)) return true;
1436 - var iteratorFn = getIteratorFn(propValue);
1437 - if (iteratorFn) {
1438 - var iterator = iteratorFn.call(propValue);
1439 - var step;
1440 - if (iteratorFn !== propValue.entries) {
1441 - while (!(step = iterator.next()).done) if (!isNode(step.value)) return false;
1442 - } else while (!(step = iterator.next()).done) {
1443 - var entry = step.value;
1444 - if (entry) {
1445 - if (!isNode(entry[1])) return false;
1446 - }
1447 - }
1448 - } else return false;
1449 - return true;
1450 - default: return false;
1451 - }
1452 - }
1453 - function isSymbol(propType, propValue) {
1454 - if (propType === "symbol") return true;
1455 - if (!propValue) return false;
1456 - if (propValue["@@toStringTag"] === "Symbol") return true;
1457 - if (typeof Symbol === "function" && propValue instanceof Symbol) return true;
1458 - return false;
1459 - }
1460 - function getPropType(propValue) {
1461 - var propType = typeof propValue;
1462 - if (Array.isArray(propValue)) return "array";
1463 - if (propValue instanceof RegExp) return "object";
1464 - if (isSymbol(propType, propValue)) return "symbol";
1465 - return propType;
1466 - }
1467 - function getPreciseType(propValue) {
1468 - if (typeof propValue === "undefined" || propValue === null) return "" + propValue;
1469 - var propType = getPropType(propValue);
1470 - if (propType === "object") {
1471 - if (propValue instanceof Date) return "date";
1472 - else if (propValue instanceof RegExp) return "regexp";
1473 - }
1474 - return propType;
1475 - }
1476 - function getPostfixForTypeWarning(value) {
1477 - var type = getPreciseType(value);
1478 - switch (type) {
1479 - case "array":
1480 - case "object": return "an " + type;
1481 - case "boolean":
1482 - case "date":
1483 - case "regexp": return "a " + type;
1484 - default: return type;
1485 - }
1486 - }
1487 - function getClassName(propValue) {
1488 - if (!propValue.constructor || !propValue.constructor.name) return ANONYMOUS;
1489 - return propValue.constructor.name;
1490 - }
1491 - ReactPropTypes.checkPropTypes = checkPropTypes;
1492 - ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
1493 - ReactPropTypes.PropTypes = ReactPropTypes;
1494 - return ReactPropTypes;
1495 - };
1496 - }));
5509 + * @typedef {Object} Attachment
5510 + * @property {('json')} type - The type of the attachment, currently only `json` is supported.
5511 + * @property {string} previewHTML - HTML content as a string, representing a preview.
5512 + * @property {string} content - Actual content of the attachment as a string.
5513 + * @property {string} label - Label for the attachment.
5514 + */
1497 5515
1498 -//#endregion
1499 -//#region node_modules/prop-types/index.js
1500 - var require_prop_types = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1501 - var ReactIs = require_react_is();
1502 - var throwOnDirectAccess = true;
1503 - module.exports = require_factoryWithTypeCheckers()(ReactIs.isElement, throwOnDirectAccess);
1504 - }));
5516 +var RegenerateButton = function RegenerateButton(props) {
5517 + return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5518 + size: "small",
5519 + color: "secondary",
5520 + startIcon: /*#__PURE__*/_react.default.createElement(_refreshIcon.default, null)
5521 + }, props), (0, _i18n.__)('Regenerate', 'elementor'));
5522 +};
5523 +var UseLayoutButton = function UseLayoutButton(props) {
5524 + return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5525 + size: "small",
5526 + variant: "contained"
5527 + }, props), (0, _i18n.__)('Use Layout', 'elementor'));
5528 +};
5529 +UseLayoutButton.propTypes = {
5530 + sx: _propTypes.default.object
5531 +};
5532 +var isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
5533 + if (isLoading || isPromptFormActive) {
5534 + return true;
5535 + }
5536 + return screenshots.length >= _useSlider2.SCREENSHOTS_PER_PAGE * _useSlider2.MAX_PAGES;
5537 +};
5538 +var FormLayout = function FormLayout(_ref) {
5539 + var _screenshots$selected, _screenshots$2;
5540 + var _ref$DialogHeaderProp = _ref.DialogHeaderProps,
5541 + DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp,
5542 + _ref$DialogContentPro = _ref.DialogContentProps,
5543 + DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro,
5544 + initialAttachments = _ref.attachments;
5545 + var _useConfig = (0, _config.useConfig)(),
5546 + attachmentsTypes = _useConfig.attachmentsTypes,
5547 + onData = _useConfig.onData,
5548 + onInsert = _useConfig.onInsert,
5549 + onSelect = _useConfig.onSelect,
5550 + onClose = _useConfig.onClose,
5551 + onGenerate = _useConfig.onGenerate,
5552 + hasPro = _useConfig.hasPro;
5553 + var _useScreenshots = (0, _useScreenshots2.default)({
5554 + onData: onData
5555 + }),
5556 + screenshots = _useScreenshots.screenshots,
5557 + generate = _useScreenshots.generate,
5558 + regenerate = _useScreenshots.regenerate,
5559 + isLoading = _useScreenshots.isLoading,
5560 + error = _useScreenshots.error,
5561 + abort = _useScreenshots.abort;
5562 + var screenshotOutlineOffset = '2px';
5563 + var _useSlider = (0, _useSlider2.default)({
5564 + slidesCount: screenshots.length
5565 + }),
5566 + currentPage = _useSlider.currentPage,
5567 + setCurrentPage = _useSlider.setCurrentPage,
5568 + pagesCount = _useSlider.pagesCount,
5569 + gapPercentage = _useSlider.gapPercentage,
5570 + slidesPerPage = _useSlider.slidesPerPage,
5571 + offsetXPercentage = _useSlider.offsetXPercentage,
5572 + slideWidthPercentage = _useSlider.slideWidthPercentage;
5573 + var _useState = (0, _react.useState)(-1),
5574 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5575 + selectedScreenshotIndex = _useState2[0],
5576 + setSelectedScreenshotIndex = _useState2[1];
5577 + var _useState3 = (0, _react.useState)(false),
5578 + _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
5579 + showUnsavedChangesAlert = _useState4[0],
5580 + setShowUnsavedChangesAlert = _useState4[1];
5581 + var _useState5 = (0, _react.useState)(true),
5582 + _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
5583 + isPromptEditable = _useState6[0],
5584 + setIsPromptEditable = _useState6[1];
5585 + var _useState7 = (0, _react.useState)([]),
5586 + _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
5587 + attachments = _useState8[0],
5588 + setAttachments = _useState8[1];
5589 + var _useState9 = (0, _react.useState)(false),
5590 + _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
5591 + shouldRenderWebApp = _useState10[0],
5592 + setShouldRenderWebApp = _useState10[1];
5593 + var _useState11 = (0, _react.useState)(false),
5594 + _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
5595 + isMinimized = _useState12[0],
5596 + setIsMinimized = _useState12[1];
5597 + var lastRun = (0, _react.useRef)(function () {});
5598 + var promptInputRef = (0, _react.useRef)(null);
5599 + var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
5600 + var dialogContentChildren = DialogContentProps.children,
5601 + dialogContentProps = (0, _objectWithoutProperties2.default)(DialogContentProps, _excluded);
1505 5602
1506 -//#endregion
1507 -//#region node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
1508 - function _arrayWithHoles(r) {
1509 - if (Array.isArray(r)) return r;
1510 - }
1511 - var init_arrayWithHoles = __esmMin((() => {}));
5603 + // When there are no screenshots the prompt field should be editable.
5604 + var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
5605 + var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
5606 + var mayContainProWidgets = 0 === attachments.length || attachments.some(function (attachment) {
5607 + return _attachments.ATTACHMENT_TYPE_URL === attachment.type;
5608 + });
5609 + var abortAndClose = function abortAndClose() {
5610 + abort();
5611 + onClose();
5612 + };
5613 + var onCloseIntent = function onCloseIntent() {
5614 + var hasUnsavedChanges = promptInputRef.current.value.trim() !== '' || screenshots.length > 0;
5615 + if (hasUnsavedChanges) {
5616 + return setShowUnsavedChangesAlert(true);
5617 + }
5618 + abortAndClose();
5619 + };
5620 + var handleGenerate = function handleGenerate(event, prompt) {
5621 + event.preventDefault();
5622 + if ('' === prompt.trim() && 0 === attachments.length) {
5623 + return;
5624 + }
5625 + if ((0, _isURL.default)(prompt)) {
5626 + setShouldRenderWebApp(true);
5627 + return;
5628 + }
5629 + onGenerate();
5630 + lastRun.current = function () {
5631 + setSelectedScreenshotIndex(-1);
5632 + generate(prompt, attachments);
5633 + };
5634 + lastRun.current();
5635 + setIsPromptEditable(false);
5636 + setCurrentPage(1);
5637 + };
5638 + var handleRegenerate = function handleRegenerate() {
5639 + lastRun.current = function () {
5640 + regenerate(promptInputRef.current.value, attachments);
5641 + // Changing the current page to the next page number.
5642 + setCurrentPage(pagesCount + 1);
5643 + };
5644 + lastRun.current();
5645 + };
5646 + var applyTemplate = function applyTemplate() {
5647 + onInsert(selectedTemplate);
5648 + screenshots[selectedScreenshotIndex].sendUsageData();
5649 + abortAndClose();
5650 + };
5651 + var handleScreenshotClick = function handleScreenshotClick(index, template) {
5652 + return function () {
5653 + if (isPromptFormActive) {
5654 + return;
5655 + }
5656 + setSelectedScreenshotIndex(index);
5657 + onSelect(template);
5658 + };
5659 + };
1512 5660
1513 -//#endregion
1514 -//#region node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
1515 - function _iterableToArrayLimit(r, l) {
1516 - var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
1517 - if (null != t) {
1518 - var e;
1519 - var n;
1520 - var i;
1521 - var u;
1522 - var a = [];
1523 - var f = !0;
1524 - var o = !1;
1525 - try {
1526 - if (i = (t = t.call(r)).next, 0 === l) {
1527 - if (Object(t) !== t) return;
1528 - f = !1;
1529 - } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
1530 - } catch (r) {
1531 - o = !0, n = r;
1532 - } finally {
1533 - try {
1534 - if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
1535 - } finally {
1536 - if (o) throw n;
1537 - }
1538 - }
1539 - return a;
1540 - }
1541 - }
1542 - var init_iterableToArrayLimit = __esmMin((() => {}));
5661 + /**
5662 + * @param {Attachment[]} items
5663 + */
5664 + var onAttach = function onAttach(items) {
5665 + items.forEach(function (item) {
5666 + if (!attachmentsTypes[item.type]) {
5667 + throw new Error("Invalid attachment type: ".concat(item.type));
5668 + }
5669 + var typeConfig = attachmentsTypes[item.type];
5670 + if (!item.previewHTML && typeConfig.previewGenerator) {
5671 + typeConfig.previewGenerator(item.content).then(function (html) {
5672 + item.previewHTML = html;
5673 + setAttachments(function (prev) {
5674 + // Replace the attachment with the updated one.
5675 + return prev.map(function (attachment) {
5676 + if (attachment.content === item.content) {
5677 + return item;
5678 + }
5679 + return attachment;
5680 + });
5681 + });
5682 + });
5683 + }
5684 + });
5685 + setAttachments(items);
5686 + setShouldRenderWebApp(false);
5687 + setIsPromptEditable(true);
5688 + };
5689 + (0, _react.useEffect)(function () {
5690 + var _screenshots$;
5691 + var isFirstTemplateExist = (_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template;
5692 + if (isFirstTemplateExist) {
5693 + onSelect(screenshots[0].template);
5694 + setSelectedScreenshotIndex(0);
5695 + }
5696 + }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
5697 + (0, _react.useEffect)(function () {
5698 + if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) {
5699 + onAttach(initialAttachments);
5700 + }
5701 + }, []);
5702 + return /*#__PURE__*/_react.default.createElement(_layoutDialog.default, {
5703 + onClose: onCloseIntent
5704 + }, /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Header, (0, _extends2.default)({
5705 + onClose: onCloseIntent
5706 + }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5707 + title: isMinimized ? (0, _i18n.__)('Expand', 'elementor') : (0, _i18n.__)('Minimize', 'elementor')
5708 + }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, {
5709 + size: "small",
5710 + "aria-label": "minimize",
5711 + onClick: function onClick() {
5712 + return setIsMinimized(function (prev) {
5713 + return !prev;
5714 + });
5715 + }
5716 + }, isMinimized ? /*#__PURE__*/_react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/_react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/_react.default.createElement(_layoutDialog.default.Content, (0, _extends2.default)({
5717 + dividers: true
5718 + }, dialogContentProps), /*#__PURE__*/_react.default.createElement(_ui.Collapse, {
5719 + in: !isMinimized
5720 + }, dialogContentChildren && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5721 + sx: {
5722 + pt: 2,
5723 + px: 2,
5724 + pb: 0
5725 + }
5726 + }, 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, {
5727 + sx: {
5728 + pt: 2,
5729 + px: 2,
5730 + pb: 0
5731 + }
5732 + }, /*#__PURE__*/_react.default.createElement(_promptErrorMessage.default, {
5733 + error: error,
5734 + onRetry: lastRun.current
5735 + })), showUnsavedChangesAlert && /*#__PURE__*/_react.default.createElement(_unsavedChangesAlert.default, {
5736 + open: showUnsavedChangesAlert,
5737 + title: (0, _i18n.__)('Leave Elementor AI?', 'elementor'),
5738 + text: (0, _i18n.__)("Your progress will be deleted, and can't be recovered.", 'elementor'),
5739 + onClose: abortAndClose,
5740 + onCancel: function onCancel() {
5741 + return setShowUnsavedChangesAlert(false);
5742 + }
5743 + }), shouldRenderWebApp && /*#__PURE__*/_react.default.createElement(_attachDialog.default, {
5744 + type: _attachments.ATTACHMENT_TYPE_URL,
5745 + url: promptInputRef.current.value,
5746 + onAttach: onAttach,
5747 + onClose: function onClose() {
5748 + setShouldRenderWebApp(false);
5749 + }
5750 + }), /*#__PURE__*/_react.default.createElement(_promptForm.default, {
5751 + shouldResetPrompt: shouldRenderWebApp,
5752 + ref: promptInputRef,
5753 + isActive: isPromptFormActive,
5754 + isLoading: isLoading,
5755 + showActions: screenshots.length > 0 || isLoading,
5756 + attachmentsTypes: attachmentsTypes,
5757 + attachments: attachments,
5758 + onAttach: onAttach,
5759 + onDetach: function onDetach(index) {
5760 + setAttachments(function (prev) {
5761 + var newAttachments = (0, _toConsumableArray2.default)(prev);
5762 + newAttachments.splice(index, 1);
5763 + return newAttachments;
5764 + });
5765 + setIsPromptEditable(true);
5766 + },
5767 + onSubmit: handleGenerate,
5768 + onBack: function onBack() {
5769 + return setIsPromptEditable(false);
5770 + },
5771 + onEdit: function onEdit() {
5772 + return setIsPromptEditable(true);
5773 + }
5774 + }), (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, {
5775 + sx: {
5776 + p: 1.5
5777 + }
5778 + }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5779 + sx: {
5780 + overflow: 'hidden',
5781 + p: 0.5
5782 + }
5783 + }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5784 + sx: {
5785 + display: 'flex',
5786 + transition: 'all 0.4s ease',
5787 + gap: "".concat(gapPercentage, "%"),
5788 + transform: "translateX(".concat(offsetXPercentage, "%)")
5789 + }
5790 + }, screenshots.map(function (_ref2, index) {
5791 + var screenshot = _ref2.screenshot,
5792 + type = _ref2.type,
5793 + template = _ref2.template,
5794 + isError = _ref2.isError,
5795 + isPending = _ref2.isPending;
5796 + return /*#__PURE__*/_react.default.createElement(_screenshot.default, {
5797 + key: index,
5798 + url: screenshot,
5799 + type: type,
5800 + disabled: isPromptFormActive,
5801 + isPlaceholder: isError,
5802 + isLoading: isPending,
5803 + isSelected: selectedScreenshotIndex === index,
5804 + onClick: handleScreenshotClick(index, template),
5805 + outlineOffset: screenshotOutlineOffset,
5806 + sx: {
5807 + flex: "0 0 ".concat(slideWidthPercentage, "%")
5808 + }
5809 + });
5810 + }))), /*#__PURE__*/_react.default.createElement(_voicePromotionAlert.VoicePromotionAlert, {
5811 + introductionKey: "ai-context-layout-promotion"
5812 + })), screenshots.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.Box, {
5813 + sx: {
5814 + pt: 0,
5815 + px: 2,
5816 + pb: 2
5817 + },
5818 + display: "grid",
5819 + gridTemplateColumns: "repeat(3, 1fr)",
5820 + justifyItems: "center"
5821 + }, /*#__PURE__*/_react.default.createElement(RegenerateButton, {
5822 + onClick: handleRegenerate,
5823 + disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
5824 + sx: {
5825 + justifySelf: 'start'
5826 + }
5827 + }), screenshots.length > slidesPerPage && /*#__PURE__*/_react.default.createElement(_ui.Pagination, {
5828 + page: currentPage,
5829 + count: pagesCount,
5830 + disabled: isPromptFormActive,
5831 + onChange: function onChange(_, page) {
5832 + return setCurrentPage(page);
5833 + }
5834 + }), /*#__PURE__*/_react.default.createElement(UseLayoutButton, {
5835 + onClick: applyTemplate,
5836 + disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
5837 + sx: {
5838 + justifySelf: 'end',
5839 + gridColumn: 3
5840 + }
5841 + }))))));
5842 +};
5843 +FormLayout.propTypes = {
5844 + DialogHeaderProps: _propTypes.default.object,
5845 + DialogContentProps: _propTypes.default.object,
5846 + attachments: _propTypes.default.arrayOf(_attachment.AttachmentPropType)
5847 +};
5848 +var _default = FormLayout;
5849 +exports["default"] = _default;
1543 5850
1544 -//#endregion
1545 -//#region node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
1546 - function _nonIterableRest() {
1547 - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1548 - }
1549 - var init_nonIterableRest = __esmMin((() => {}));
5851 +/***/ }),
1550 5852
1551 -//#endregion
1552 -//#region node_modules/@babel/runtime/helpers/esm/slicedToArray.js
1553 - function _slicedToArray(r, e) {
1554 - return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
1555 - }
1556 - var init_slicedToArray = __esmMin((() => {
1557 - init_arrayWithHoles();
1558 - init_iterableToArrayLimit();
1559 - init_unsupportedIterableToArray();
1560 - init_nonIterableRest();
1561 - }));
5853 +/***/ "../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js":
5854 +/*!************************************************************************************!*\
5855 + !*** ../modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js ***!
5856 + \************************************************************************************/
5857 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1562 5858
1563 -//#endregion
1564 -//#region modules/ai/assets/js/editor/pages/connect/index.js
1565 - var import_prop_types$36, Connect;
1566 - var init_connect = __esmMin((() => {
1567 - import_prop_types$36 = /* @__PURE__ */ __toESM(require_prop_types());
1568 - Connect = function Connect(_ref) {
1569 - var connectUrl = _ref.connectUrl;
1570 - var onSuccess = _ref.onSuccess;
1571 - var approveButtonRef = (0, react.useRef)();
1572 - (0, react.useEffect)(function() {
1573 - if (!jQuery.fn.elementorConnect) return;
1574 - jQuery(approveButtonRef.current).elementorConnect({
1575 - success: function success(_, data) {
1576 - return onSuccess(data);
1577 - },
1578 - error: function error() {
1579 - throw new Error("Elementor AI: Failed to connect.");
1580 - }
1581 - });
1582 - }, []);
1583 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
1584 - alignItems: "center",
1585 - gap: 2
1586 - }, /*#__PURE__*/ react.default.createElement(_elementor_icons.AIIcon, { sx: {
1587 - color: "text.primary",
1588 - fontSize: "60px",
1589 - mb: 1
1590 - } }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
1591 - variant: "h4",
1592 - sx: { color: "text.primary" }
1593 - }, (0, _wordpress_i18n.__)("Step into the future with Elementor AI", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { variant: "body2" }, (0, _wordpress_i18n.__)("Create smarter with AI text and code generators built right into the editor.", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
1594 - variant: "caption",
1595 - sx: {
1596 - maxWidth: 520,
1597 - textAlign: "center"
1598 - }
1599 - }, " ", (0, _wordpress_i18n.__)("By clicking \"Connect\", I approve the ", "elementor"), /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
1600 - href: "https://go.elementor.com/ai-terms/",
1601 - target: "_blank",
1602 - color: "info.main"
1603 - }, (0, _wordpress_i18n.__)("Terms of Service", "elementor")), " & ", /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
1604 - href: "https://go.elementor.com/ai-privacy-policy/",
1605 - target: "_blank",
1606 - color: "info.main"
1607 - }, (0, _wordpress_i18n.__)("Privacy Policy", "elementor")), (0, _wordpress_i18n.__)(" of the Elementor AI service.", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
1608 - ref: approveButtonRef,
1609 - href: connectUrl,
1610 - variant: "contained",
1611 - sx: {
1612 - mt: 1,
1613 - "&:hover": { color: "primary.contrastText" }
1614 - }
1615 - }, (0, _wordpress_i18n.__)("Connect", "elementor")));
1616 - };
1617 - Connect.propTypes = {
1618 - connectUrl: import_prop_types$36.default.string.isRequired,
1619 - onSuccess: import_prop_types$36.default.func.isRequired
1620 - };
1621 - }));
5859 +"use strict";
1622 5860
1623 -//#endregion
1624 -//#region node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
1625 - function _objectWithoutPropertiesLoose$1(r, e) {
1626 - if (null == r) return {};
1627 - var t = {};
1628 - for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
1629 - if (-1 !== e.indexOf(n)) continue;
1630 - t[n] = r[n];
1631 - }
1632 - return t;
1633 - }
1634 - var init_objectWithoutPropertiesLoose$1 = __esmMin((() => {
1635 - __name(_objectWithoutPropertiesLoose$1, "_objectWithoutPropertiesLoose");
1636 - }));
1637 5861
1638 -//#endregion
1639 -//#region node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
1640 - function _objectWithoutProperties$1(e, t) {
1641 - if (null == e) return {};
1642 - var o;
1643 - var r;
1644 - var i = _objectWithoutPropertiesLoose$1(e, t);
1645 - if (Object.getOwnPropertySymbols) {
1646 - var n = Object.getOwnPropertySymbols(e);
1647 - for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
1648 - }
1649 - return i;
1650 - }
1651 - var init_objectWithoutProperties$1 = __esmMin((() => {
1652 - init_objectWithoutPropertiesLoose$1();
1653 - __name(_objectWithoutProperties$1, "_objectWithoutProperties");
1654 - }));
5862 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5863 +Object.defineProperty(exports, "__esModule", ({
5864 + value: true
5865 +}));
5866 +exports["default"] = void 0;
5867 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5868 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5869 +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"));
5870 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5871 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5872 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5873 +var _wandIcon = _interopRequireDefault(__webpack_require__(/*! ../../../icons/wand-icon */ "../modules/ai/assets/js/editor/icons/wand-icon.js"));
5874 +var _excluded = ["isLoading"];
5875 +var StyledWandIcon = (0, _ui.withDirection)(_wandIcon.default);
5876 +var EnhanceButton = function EnhanceButton(_ref) {
5877 + var isLoading = _ref.isLoading,
5878 + props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
5879 + return /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
5880 + title: (0, _i18n.__)('Enhance prompt', 'elementor')
5881 + }, /*#__PURE__*/_react.default.createElement(_ui.Box, {
5882 + component: "span",
5883 + sx: {
5884 + cursor: props.disabled ? 'default' : 'pointer'
5885 + }
5886 + }, /*#__PURE__*/_react.default.createElement(_ui.IconButton, (0, _extends2.default)({
5887 + size: "small",
5888 + color: "secondary"
5889 + }, props), isLoading ? /*#__PURE__*/_react.default.createElement(_ui.CircularProgress, {
5890 + color: "secondary",
5891 + size: 20
5892 + }) : /*#__PURE__*/_react.default.createElement(StyledWandIcon, {
5893 + fontSize: "small"
5894 + }))));
5895 +};
5896 +EnhanceButton.propTypes = {
5897 + disabled: _propTypes.default.bool,
5898 + isLoading: _propTypes.default.bool
5899 +};
5900 +var _default = EnhanceButton;
5901 +exports["default"] = _default;
1655 5902
1656 -//#endregion
1657 -//#region node_modules/@babel/runtime/helpers/esm/extends.js
1658 - function _extends() {
1659 - return _extends = Object.assign ? Object.assign.bind() : function(n) {
1660 - for (var e = 1; e < arguments.length; e++) {
1661 - var t = arguments[e];
1662 - for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
1663 - }
1664 - return n;
1665 - }, _extends.apply(null, arguments);
1666 - }
1667 - var init_extends = __esmMin((() => {}));
5903 +/***/ }),
1668 5904
1669 -//#endregion
1670 -//#region modules/ai/assets/js/editor/components/prompt-error-message.js
1671 - var import_prop_types$35, _excluded$9, PromptErrorMessage;
1672 - var init_prompt_error_message = __esmMin((() => {
1673 - init_extends();
1674 - init_objectWithoutProperties$1();
1675 - import_prop_types$35 = /* @__PURE__ */ __toESM(require_prop_types());
1676 - _excluded$9 = [
1677 - "error",
1678 - "onRetry",
1679 - "actionPosition"
1680 - ];
1681 - PromptErrorMessage = function PromptErrorMessage(_ref) {
1682 - var error = _ref.error;
1683 - var _ref$onRetry = _ref.onRetry;
1684 - var onRetry = _ref$onRetry === void 0 ? function() {} : _ref$onRetry;
1685 - var _ref$actionPosition = _ref.actionPosition;
1686 - var actionPosition = _ref$actionPosition === void 0 ? "default" : _ref$actionPosition;
1687 - var props = _objectWithoutProperties$1(_ref, _excluded$9);
1688 - function getQuotaReachedTrailMessage(featureName) {
1689 - if (!featureName) return {
1690 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("It's time to upgrade.", "elementor")),
1691 - description: (0, _wordpress_i18n.__)("Enjoy the free trial? Upgrade now for unlimited access to built-in image, text and custom code generators.", "elementor"),
1692 - buttonText: (0, _wordpress_i18n.__)("Upgrade", "elementor"),
1693 - buttonAction: function buttonAction() {
1694 - return window.open("https://go.elementor.com/ai-popup-purchase-limit-reached/", "_blank");
1695 - }
1696 - };
1697 - return {
1698 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.sprintf)((0, _wordpress_i18n.__)("You've used all AI credits for %s.", "elementor"), featureName.toLowerCase())),
1699 - description: (0, _wordpress_i18n.__)("Upgrade now to keep using this feature. You still have credits for other AI features (Text, Code, Images, Containers, etc.)", "elementor"),
1700 - buttonText: (0, _wordpress_i18n.__)("Upgrade now", "elementor"),
1701 - buttonAction: function buttonAction() {
1702 - return window.open("https://go.elementor.com/ai-popup-purchase-limit-reached/", "_blank");
1703 - }
1704 - };
1705 - }
1706 - function getErrorMessage() {
1707 - var _error$extra_data;
1708 - var errMsg = error.message || error;
1709 - var featureName = (_error$extra_data = error.extra_data) === null || _error$extra_data === void 0 ? void 0 : _error$extra_data.featureName;
1710 - var messages = {
1711 - default: {
1712 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("There was a glitch.", "elementor")),
1713 - description: (0, _wordpress_i18n.__)("Wait a moment and give it another go, or try tweaking the prompt.", "elementor"),
1714 - buttonText: (0, _wordpress_i18n.__)("Try again", "elementor"),
1715 - buttonAction: onRetry
1716 - },
1717 - service_outage_internal: {
1718 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("There was a glitch.", "elementor")),
1719 - description: (0, _wordpress_i18n.__)("Wait a moment and give it another go.", "elementor"),
1720 - buttonText: (0, _wordpress_i18n.__)("Try again", "elementor"),
1721 - buttonAction: onRetry
1722 - },
1723 - invalid_connect_data: {
1724 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("There was a glitch.", "elementor")),
1725 - description: /*#__PURE__*/ react.default.createElement(react.default.Fragment, null, (0, _wordpress_i18n.__)("Try exiting Elementor and sign in again.", "elementor"), " ", /*#__PURE__*/ react.default.createElement("a", {
1726 - href: "https://elementor.com/help/disconnecting-reconnecting-your-elementor-account/",
1727 - target: "_blank",
1728 - rel: "noreferrer"
1729 - }, (0, _wordpress_i18n.__)("Show me how", "elementor"))),
1730 - buttonText: (0, _wordpress_i18n.__)("Reconnect", "elementor"),
1731 - buttonAction: function buttonAction() {
1732 - return window.open(window.ElementorAiConfig.connect_url);
1733 - }
1734 - },
1735 - not_connected: {
1736 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("You aren't connected to Elementor AI.", "elementor")),
1737 - description: (0, _wordpress_i18n.__)("Elementor AI is just a few clicks away. Connect your account to instantly create texts and custom code.", "elementor"),
1738 - buttonText: (0, _wordpress_i18n.__)("Connect", "elementor"),
1739 - buttonAction: function buttonAction() {
1740 - return window.open(window.ElementorAiConfig.connect_url);
1741 - }
1742 - },
1743 - quota_reached_trail: getQuotaReachedTrailMessage(featureName),
1744 - quota_reached_subscription: {
1745 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("Looks like you're out of credits.", "elementor")),
1746 - description: (0, _wordpress_i18n.__)("Ready to take it to the next level?", "elementor"),
1747 - buttonText: (0, _wordpress_i18n.__)("Upgrade now", "elementor"),
1748 - buttonAction: function buttonAction() {
1749 - return window.open("https://go.elementor.com/ai-popup-purchase-limit-reached/", "_blank");
1750 - }
1751 - },
1752 - rate_limit_network: {
1753 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("Whoa! Slow down there.", "elementor")),
1754 - description: (0, _wordpress_i18n.__)("We can’t process that many requests so fast. Try again in 15 minutes.", "elementor")
1755 - },
1756 - invalid_prompts: {
1757 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("We were unable to generate that prompt.", "elementor")),
1758 - description: (0, _wordpress_i18n.__)("Seems like the prompt contains words that could generate harmful content. Write a different prompt to continue.", "elementor")
1759 - },
1760 - service_unavailable: {
1761 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("There was a glitch.", "elementor")),
1762 - description: (0, _wordpress_i18n.__)("Wait a moment and give it another go, or try tweaking the prompt.", "elementor"),
1763 - buttonText: (0, _wordpress_i18n.__)("Try again", "elementor"),
1764 - buttonAction: onRetry
1765 - },
1766 - request_timeout_error: {
1767 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("There was a glitch.", "elementor")),
1768 - description: (0, _wordpress_i18n.__)("Wait a moment and give it another go, or try tweaking the prompt.", "elementor"),
1769 - buttonText: (0, _wordpress_i18n.__)("Try again", "elementor"),
1770 - buttonAction: onRetry
1771 - },
1772 - invalid_token: {
1773 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("Try again", "elementor")),
1774 - description: (0, _wordpress_i18n.__)("Try exiting Elementor and sign in again.", "elementor"),
1775 - buttonText: (0, _wordpress_i18n.__)("Reconnect", "elementor"),
1776 - buttonAction: onRetry
1777 - },
1778 - file_too_large: {
1779 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("The file is too large.", "elementor")),
1780 - description: (0, _wordpress_i18n.__)("Please upload a file that is less than 4MB.", "elementor")
1781 - },
1782 - image_resolution_maximum_exceeded: {
1783 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("The image resolution exceeds the maximum allowed size.", "elementor")),
1784 - description: (0, _wordpress_i18n.__)("Please upload a file with dimensions less than 2048x2048 pixels.", "elementor")
1785 - },
1786 - external_service_unavailable: {
1787 - text: /*#__PURE__*/ react.default.createElement(_elementor_ui.AlertTitle, null, (0, _wordpress_i18n.__)("Temporary external service issue", "elementor")),
1788 - description: (0, _wordpress_i18n.__)("It seems that one of our partner services is temporarily unavailable. Please try again in a few minutes.", "elementor"),
1789 - buttonText: (0, _wordpress_i18n.__)("Try Again", "elementor"),
1790 - buttonAction: onRetry
1791 - }
1792 - };
1793 - return messages[errMsg] || messages.default;
1794 - }
1795 - var message = getErrorMessage();
1796 - var action = (message === null || message === void 0 ? void 0 : message.buttonText) && /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
1797 - color: "inherit",
1798 - size: "small",
1799 - variant: "outlined",
1800 - onClick: message.buttonAction
1801 - }, message.buttonText);
1802 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Alert, _extends({
1803 - severity: message.severity || "error",
1804 - action: "default" === actionPosition && action
1805 - }, props), message.text, message.description, "bottom" === actionPosition && /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: { mt: 1 } }, action));
1806 - };
1807 - PromptErrorMessage.propTypes = {
1808 - error: import_prop_types$35.default.oneOfType([import_prop_types$35.default.object, import_prop_types$35.default.string]),
1809 - onRetry: import_prop_types$35.default.func,
1810 - actionPosition: import_prop_types$35.default.oneOf(["default", "bottom"])
1811 - };
1812 - }));
5905 +/***/ "../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js":
5906 +/*!*************************************************************************************!*\
5907 + !*** ../modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js ***!
5908 + \*************************************************************************************/
5909 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1813 5910
1814 -//#endregion
1815 -//#region modules/ai/assets/js/editor/pages/form-layout/components/unsaved-changes-alert.js
1816 - var import_prop_types$34, _excluded$8, UnsavedChangesAlert;
1817 - var init_unsaved_changes_alert = __esmMin((() => {
1818 - init_extends();
1819 - init_objectWithoutProperties$1();
1820 - import_prop_types$34 = /* @__PURE__ */ __toESM(require_prop_types());
1821 - _excluded$8 = [
1822 - "onClose",
1823 - "onCancel",
1824 - "title",
1825 - "text"
1826 - ];
1827 - UnsavedChangesAlert = function UnsavedChangesAlert(_ref) {
1828 - var onClose = _ref.onClose;
1829 - var onCancel = _ref.onCancel;
1830 - var title = _ref.title;
1831 - var text = _ref.text;
1832 - var props = _objectWithoutProperties$1(_ref, _excluded$8);
1833 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Dialog, _extends({
1834 - "aria-labelledby": "unsaved-changes-alert-title",
1835 - "aria-describedby": "unsaved-changes-alert-description"
1836 - }, props), /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogTitle, { id: "unsaved-changes-alert-title" }, title), /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogContent, null, /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogContentText, { id: "unsaved-changes-alert-description" }, text)), /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogActions, null, /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
1837 - onClick: onCancel,
1838 - color: "secondary"
1839 - }, (0, _wordpress_i18n.__)("Cancel", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
1840 - onClick: onClose,
1841 - color: "error",
1842 - variant: "contained"
1843 - }, (0, _wordpress_i18n.__)("Yes, leave", "elementor"))));
1844 - };
1845 - UnsavedChangesAlert.propTypes = {
1846 - title: import_prop_types$34.default.string,
1847 - text: import_prop_types$34.default.string,
1848 - onCancel: import_prop_types$34.default.func,
1849 - onClose: import_prop_types$34.default.func
1850 - };
1851 - }));
5911 +"use strict";
1852 5912
1853 -//#endregion
1854 -//#region \0@[email protected]/helpers/esm/typeof.js
1855 - function _typeof(o) {
1856 - "@babel/helpers - typeof";
1857 - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
1858 - return typeof o;
1859 - } : function(o) {
1860 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
1861 - }, _typeof(o);
1862 - }
1863 - var init_typeof = __esmMin((() => {}));
1864 5913
1865 -//#endregion
1866 -//#region \0@[email protected]/helpers/esm/toPrimitive.js
1867 - function toPrimitive(t, r) {
1868 - if ("object" != _typeof(t) || !t) return t;
1869 - var e = t[Symbol.toPrimitive];
1870 - if (void 0 !== e) {
1871 - var i = e.call(t, r || "default");
1872 - if ("object" != _typeof(i)) return i;
1873 - throw new TypeError("@@toPrimitive must return a primitive value.");
1874 - }
1875 - return ("string" === r ? String : Number)(t);
1876 - }
1877 - var init_toPrimitive = __esmMin((() => {
1878 - init_typeof();
1879 - }));
5914 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5915 +Object.defineProperty(exports, "__esModule", ({
5916 + value: true
5917 +}));
5918 +exports["default"] = void 0;
5919 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
5920 +var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ "../node_modules/@babel/runtime/helpers/extends.js"));
5921 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5922 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5923 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5924 +var GenerateSubmit = function GenerateSubmit(props) {
5925 + return /*#__PURE__*/_react.default.createElement(_ui.Button, (0, _extends2.default)({
5926 + fullWidth: true,
5927 + size: "medium",
5928 + type: "submit",
5929 + variant: "contained"
5930 + }, props), props.children || (0, _i18n.__)('Generate', 'elementor'));
5931 +};
5932 +GenerateSubmit.propTypes = {
5933 + children: _propTypes.default.node
5934 +};
5935 +var _default = GenerateSubmit;
5936 +exports["default"] = _default;
1880 5937
1881 -//#endregion
1882 -//#region \0@[email protected]/helpers/esm/toPropertyKey.js
1883 - function toPropertyKey(t) {
1884 - var i = toPrimitive(t, "string");
1885 - return "symbol" == _typeof(i) ? i : i + "";
1886 - }
1887 - var init_toPropertyKey = __esmMin((() => {
1888 - init_typeof();
1889 - init_toPrimitive();
1890 - }));
5938 +/***/ }),
1891 5939
1892 -//#endregion
1893 -//#region \0@[email protected]/helpers/esm/defineProperty.js
1894 - function _defineProperty(e, r, t) {
1895 - return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
1896 - value: t,
1897 - enumerable: !0,
1898 - configurable: !0,
1899 - writable: !0
1900 - }) : e[r] = t, e;
1901 - }
1902 - var init_defineProperty = __esmMin((() => {
1903 - init_toPropertyKey();
1904 - }));
5940 +/***/ "../modules/ai/assets/js/editor/pages/get-started/index.js":
5941 +/*!*****************************************************************!*\
5942 + !*** ../modules/ai/assets/js/editor/pages/get-started/index.js ***!
5943 + \*****************************************************************/
5944 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1905 5945
1906 -//#endregion
1907 -//#region \0@[email protected]/helpers/esm/objectSpread2.js
1908 - function ownKeys$11(e, r) {
1909 - var t = Object.keys(e);
1910 - if (Object.getOwnPropertySymbols) {
1911 - var o = Object.getOwnPropertySymbols(e);
1912 - r && (o = o.filter(function(r) {
1913 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
1914 - })), t.push.apply(t, o);
1915 - }
1916 - return t;
5946 +"use strict";
5947 +
5948 +
5949 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
5950 +var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js");
5951 +Object.defineProperty(exports, "__esModule", ({
5952 + value: true
5953 +}));
5954 +exports["default"] = void 0;
5955 +var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
5956 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
5957 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
5958 +var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js"));
5959 +var _ui = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
5960 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
5961 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
5962 +var _api = __webpack_require__(/*! ../../api */ "../modules/ai/assets/js/editor/api/index.js");
5963 +var _icons = __webpack_require__(/*! @elementor/icons */ "@elementor/icons");
5964 +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); }
5965 +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; }
5966 +var GetStarted = function GetStarted(_ref) {
5967 + var onSuccess = _ref.onSuccess;
5968 + var _useState = (0, _react.useState)(false),
5969 + _useState2 = (0, _slicedToArray2.default)(_useState, 2),
5970 + isTermsChecked = _useState2[0],
5971 + setIsTermsChecked = _useState2[1];
5972 + var onGetStartedClick = /*#__PURE__*/function () {
5973 + var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
5974 + return _regenerator.default.wrap(function _callee$(_context) {
5975 + while (1) switch (_context.prev = _context.next) {
5976 + case 0:
5977 + _context.next = 2;
5978 + return (0, _api.setGetStarted)();
5979 + case 2:
5980 + onSuccess();
5981 + case 3:
5982 + case "end":
5983 + return _context.stop();
5984 + }
5985 + }, _callee);
5986 + }));
5987 + return function onGetStartedClick() {
5988 + return _ref2.apply(this, arguments);
5989 + };
5990 + }();
5991 + return /*#__PURE__*/_react.default.createElement(_ui.Stack, {
5992 + alignItems: "center",
5993 + gap: 1.5
5994 + }, /*#__PURE__*/_react.default.createElement(_icons.AIIcon, {
5995 + sx: {
5996 + color: 'text.primary',
5997 + fontSize: '60px',
5998 + mb: 1
5999 + }
6000 + }), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6001 + variant: "h4",
6002 + sx: {
6003 + color: 'text.primary'
6004 + }
6005 + }, (0, _i18n.__)('Step into the future with Elementor AI', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6006 + variant: "body2"
6007 + }, (0, _i18n.__)('Create smarter with AI text and code generators built right into the editor.', 'elementor')), /*#__PURE__*/_react.default.createElement(_ui.Stack, {
6008 + direction: "row",
6009 + gap: 1.5,
6010 + alignItems: "flex-start"
6011 + }, /*#__PURE__*/_react.default.createElement(_ui.Checkbox, {
6012 + id: "e-ai-terms-approval",
6013 + color: "secondary",
6014 + checked: isTermsChecked,
6015 + onClick: function onClick() {
6016 + return setIsTermsChecked(function (prevState) {
6017 + return !prevState;
6018 + });
6019 + }
6020 + }), /*#__PURE__*/_react.default.createElement(_ui.Stack, null, /*#__PURE__*/_react.default.createElement(_ui.Typography, {
6021 + variant: "caption",
6022 + sx: {
6023 + maxWidth: 520
6024 + },
6025 + component: "label",
6026 + htmlFor: "e-ai-terms-approval"
6027 + }, (0, _i18n.__)('I approve the ', 'elementor'), /*#__PURE__*/_react.default.createElement(_ui.Link, {
6028 + href: "https://go.elementor.com/ai-terms/",
6029 + target: "_blank",
6030 + color: "info.main"
6031 + }, (0, _i18n.__)('Terms of Service', 'elementor')), ' & ', /*#__PURE__*/_react.default.createElement(_ui.Link, {
6032 + href: "https://go.elementor.com/ai-privacy-policy/",
6033 + target: "_blank",
6034 + color: "info.main"
6035 + }, (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, {
6036 + disabled: !isTermsChecked,
6037 + variant: "contained",
6038 + onClick: onGetStartedClick,
6039 + sx: {
6040 + mt: 1,
6041 + '&:hover': {
6042 + color: 'primary.contrastText'
6043 + }
6044 + }
6045 + }, (0, _i18n.__)('Get Started', 'elementor')));
6046 +};
6047 +GetStarted.propTypes = {
6048 + onSuccess: _propTypes.default.func.isRequired
6049 +};
6050 +var _default = GetStarted;
6051 +exports["default"] = _default;
6052 +
6053 +/***/ }),
6054 +
6055 +/***/ "../modules/ai/assets/js/editor/types/attachment.js":
6056 +/*!**********************************************************!*\
6057 + !*** ../modules/ai/assets/js/editor/types/attachment.js ***!
6058 + \**********************************************************/
6059 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6060 +
6061 +"use strict";
6062 +
6063 +
6064 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6065 +Object.defineProperty(exports, "__esModule", ({
6066 + value: true
6067 +}));
6068 +exports.AttachmentsTypesPropType = exports.AttachmentPropType = void 0;
6069 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
6070 +var AttachmentPropType = _propTypes.default.shape({
6071 + type: _propTypes.default.string,
6072 + previewHTML: _propTypes.default.string,
6073 + content: _propTypes.default.string,
6074 + label: _propTypes.default.string,
6075 + source: _propTypes.default.string
6076 +});
6077 +exports.AttachmentPropType = AttachmentPropType;
6078 +var AttachmentsTypesPropType = _propTypes.default.shape({
6079 + type: _propTypes.default.shape({
6080 + promptPlaceholder: _propTypes.default.string,
6081 + promptSuggestions: _propTypes.default.arrayOf(_propTypes.default.shape({
6082 + text: _propTypes.default.string.isRequired
6083 + })),
6084 + previewGenerator: _propTypes.default.func
6085 + })
6086 +});
6087 +exports.AttachmentsTypesPropType = AttachmentsTypesPropType;
6088 +
6089 +/***/ }),
6090 +
6091 +/***/ "../modules/ai/assets/js/editor/utils/editor-integration.js":
6092 +/*!******************************************************************!*\
6093 + !*** ../modules/ai/assets/js/editor/utils/editor-integration.js ***!
6094 + \******************************************************************/
6095 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6096 +
6097 +"use strict";
6098 +
6099 +
6100 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6101 +Object.defineProperty(exports, "__esModule", ({
6102 + value: true
6103 +}));
6104 +exports.renderLayoutApp = exports.openPanel = exports.onConnect = exports.importToEditor = exports.getUiConfig = exports.closePanel = void 0;
6105 +var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));
6106 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6107 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6108 +var _react2 = _interopRequireDefault(__webpack_require__(/*! elementor-utils/react */ "../assets/dev/js/utils/react.js"));
6109 +var _previewContainer = __webpack_require__(/*! ./preview-container */ "../modules/ai/assets/js/editor/utils/preview-container.js");
6110 +var _layoutApp = _interopRequireDefault(__webpack_require__(/*! ../layout-app */ "../modules/ai/assets/js/editor/layout-app.js"));
6111 +var _screenshot = __webpack_require__(/*! ./screenshot */ "../modules/ai/assets/js/editor/utils/screenshot.js");
6112 +var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6113 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
6114 +var _layoutAppWrapper = _interopRequireDefault(__webpack_require__(/*! ../layout-app-wrapper */ "../modules/ai/assets/js/editor/layout-app-wrapper.js"));
6115 +var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6116 +var closePanel = function closePanel() {
6117 + $e.run('panel/close');
6118 + $e.components.get('panel').blockUserInteractions();
6119 +};
6120 +exports.closePanel = closePanel;
6121 +var openPanel = function openPanel() {
6122 + $e.run('panel/open');
6123 + $e.components.get('panel').unblockUserInteractions();
6124 +};
6125 +exports.openPanel = openPanel;
6126 +var onConnect = function onConnect(data) {
6127 + elementorCommon.config.library_connect.is_connected = true;
6128 + elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
6129 + elementorCommon.config.library_connect.current_access_tier = data.access_tier;
6130 +};
6131 +exports.onConnect = onConnect;
6132 +var getUiConfig = function getUiConfig() {
6133 + var _elementor, _elementor$getPrefere;
6134 + 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';
6135 + var isRTL = elementorCommon.config.isRTL;
6136 + return {
6137 + colorScheme: colorScheme,
6138 + isRTL: isRTL
6139 + };
6140 +};
6141 +exports.getUiConfig = getUiConfig;
6142 +var VARIATIONS_PROMPTS = [{
6143 + text: (0, _i18n.__)('Change the content to be about [topic]', 'elementor')
6144 +}, {
6145 + text: (0, _i18n.__)('Generate lorem ipsum placeholder text for all paragraphs', 'elementor')
6146 +}, {
6147 + text: (0, _i18n.__)('Revise the content to focus on [topic] and then translate it into Spanish', 'elementor')
6148 +}, {
6149 + text: (0, _i18n.__)('Shift the focus of the content to [topic] in order to showcase our company\'s mission and values', 'elementor')
6150 +}, {
6151 + text: (0, _i18n.__)('Alter the content to provide helpful tips related to [topic]', 'elementor')
6152 +}, {
6153 + text: (0, _i18n.__)('Adjust the content to include FAQs and answers for common inquiries about [topic]', 'elementor')
6154 +}];
6155 +var PROMPT_PLACEHOLDER = (0, _i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", 'elementor');
6156 +var renderLayoutApp = function renderLayoutApp() {
6157 + var _options$onRenderApp;
6158 + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
6159 + parentContainer: null,
6160 + mode: '',
6161 + at: null,
6162 + onClose: null,
6163 + onGenerate: null,
6164 + onInsert: null,
6165 + onRenderApp: null,
6166 + onSelect: null,
6167 + attachments: []
6168 + };
6169 + closePanel();
6170 + var previewContainer = (0, _previewContainer.createPreviewContainer)(options.parentContainer, {
6171 + // Create the container at the "drag widget here" area position.
6172 + at: options.at
6173 + });
6174 + var _getUiConfig = getUiConfig(),
6175 + colorScheme = _getUiConfig.colorScheme,
6176 + isRTL = _getUiConfig.isRTL;
6177 + var rootElement = document.createElement('div');
6178 + document.body.append(rootElement);
6179 + var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
6180 + var _ReactUtils$render = _react2.default.render( /*#__PURE__*/_react.default.createElement(_layoutAppWrapper.default, {
6181 + isRTL: isRTL,
6182 + colorScheme: colorScheme
6183 + }, /*#__PURE__*/_react.default.createElement(_layoutApp.default, {
6184 + mode: options.mode,
6185 + currentContext: {
6186 + body: {
6187 + backgroundColor: bodyStyle.backgroundColor,
6188 + backgroundImage: bodyStyle.backgroundImage
6189 + }
6190 + },
6191 + attachmentsTypes: {
6192 + json: {
6193 + promptSuggestions: VARIATIONS_PROMPTS,
6194 + promptPlaceholder: PROMPT_PLACEHOLDER,
6195 + previewGenerator: function () {
6196 + var _previewGenerator = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(json) {
6197 + var screenshot;
6198 + return _regenerator.default.wrap(function _callee$(_context) {
6199 + while (1) switch (_context.prev = _context.next) {
6200 + case 0:
6201 + _context.next = 2;
6202 + return (0, _screenshot.takeScreenshot)(json);
6203 + case 2:
6204 + screenshot = _context.sent;
6205 + return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
6206 + case 4:
6207 + case "end":
6208 + return _context.stop();
6209 + }
6210 + }, _callee);
6211 + }));
6212 + function previewGenerator(_x) {
6213 + return _previewGenerator.apply(this, arguments);
6214 + }
6215 + return previewGenerator;
6216 + }()
6217 + },
6218 + url: {
6219 + promptPlaceholder: PROMPT_PLACEHOLDER,
6220 + promptSuggestions: VARIATIONS_PROMPTS
6221 + }
6222 + },
6223 + attachments: options.attachments || [],
6224 + onClose: function onClose() {
6225 + var _options$onClose;
6226 + previewContainer.destroy();
6227 + (_options$onClose = options.onClose) === null || _options$onClose === void 0 ? void 0 : _options$onClose.call(options);
6228 + unmount();
6229 + rootElement.remove();
6230 + openPanel();
6231 + },
6232 + onConnect: onConnect,
6233 + onGenerate: function onGenerate() {
6234 + var _options$onGenerate;
6235 + (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 ? void 0 : _options$onGenerate.call(options, {
6236 + previewContainer: previewContainer
6237 + });
6238 + },
6239 + onData: /*#__PURE__*/function () {
6240 + var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(template) {
6241 + var screenshot;
6242 + return _regenerator.default.wrap(function _callee2$(_context2) {
6243 + while (1) switch (_context2.prev = _context2.next) {
6244 + case 0:
6245 + _context2.next = 2;
6246 + return (0, _screenshot.takeScreenshot)(template);
6247 + case 2:
6248 + screenshot = _context2.sent;
6249 + return _context2.abrupt("return", {
6250 + screenshot: screenshot,
6251 + template: template
6252 + });
6253 + case 4:
6254 + case "end":
6255 + return _context2.stop();
6256 + }
6257 + }, _callee2);
6258 + }));
6259 + return function (_x2) {
6260 + return _ref.apply(this, arguments);
6261 + };
6262 + }(),
6263 + onSelect: function onSelect(template) {
6264 + var _options$onSelect;
6265 + (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 ? void 0 : _options$onSelect.call(options);
6266 + previewContainer.setContent(template);
6267 + },
6268 + onInsert: options.onInsert,
6269 + hasPro: elementor.helpers.hasPro()
6270 + })), rootElement),
6271 + unmount = _ReactUtils$render.unmount;
6272 + (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 ? void 0 : _options$onRenderApp.call(options, {
6273 + previewContainer: previewContainer
6274 + });
6275 +};
6276 +exports.renderLayoutApp = renderLayoutApp;
6277 +var importToEditor = function importToEditor(_ref2) {
6278 + var parentContainer = _ref2.parentContainer,
6279 + at = _ref2.at,
6280 + template = _ref2.template,
6281 + historyTitle = _ref2.historyTitle,
6282 + _ref2$replace = _ref2.replace,
6283 + replace = _ref2$replace === void 0 ? false : _ref2$replace;
6284 + var endHistoryLog = (0, _history.startHistoryLog)({
6285 + type: 'import',
6286 + title: historyTitle
6287 + });
6288 + if (replace) {
6289 + $e.run('document/elements/delete', {
6290 + container: parentContainer.children.at(at)
6291 + });
6292 + }
6293 + $e.run('document/elements/create', {
6294 + container: parentContainer,
6295 + model: (0, _requestsIds.generateIds)(template),
6296 + options: {
6297 + at: at,
6298 + edit: true
6299 + }
6300 + });
6301 + endHistoryLog();
6302 +};
6303 +exports.importToEditor = importToEditor;
6304 +
6305 +/***/ }),
6306 +
6307 +/***/ "../modules/ai/assets/js/editor/utils/history.js":
6308 +/*!*******************************************************!*\
6309 + !*** ../modules/ai/assets/js/editor/utils/history.js ***!
6310 + \*******************************************************/
6311 +/***/ ((__unused_webpack_module, exports) => {
6312 +
6313 +"use strict";
6314 +
6315 +
6316 +Object.defineProperty(exports, "__esModule", ({
6317 + value: true
6318 +}));
6319 +exports.startHistoryLog = startHistoryLog;
6320 +exports.toggleHistory = toggleHistory;
6321 +function toggleHistory(isActive) {
6322 + elementor.documents.getCurrent().history.setActive(isActive);
6323 +}
6324 +
6325 +/**
6326 + * @param {Object} options
6327 + * @param { 'add' | 'change' | 'disable' | 'duplicate' | 'enable' | 'import' | 'move' | 'paste' | 'paste_style' | 'remove' | 'reset_settings' | 'reset_style' | 'selected' } options.type
6328 + * @param { string } options.title
6329 + *
6330 + * @return {*}
6331 + */
6332 +function startHistoryLog(_ref) {
6333 + var type = _ref.type,
6334 + title = _ref.title;
6335 + var id = $e.internal('document/history/start-log', {
6336 + type: type,
6337 + title: title
6338 + });
6339 + return function () {
6340 + return $e.internal('document/history/end-log', {
6341 + id: id
6342 + });
6343 + };
6344 +}
6345 +
6346 +/***/ }),
6347 +
6348 +/***/ "../modules/ai/assets/js/editor/utils/preview-container.js":
6349 +/*!*****************************************************************!*\
6350 + !*** ../modules/ai/assets/js/editor/utils/preview-container.js ***!
6351 + \*****************************************************************/
6352 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6353 +
6354 +"use strict";
6355 +
6356 +
6357 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6358 +Object.defineProperty(exports, "__esModule", ({
6359 + value: true
6360 +}));
6361 +exports.createPreviewContainer = createPreviewContainer;
6362 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
6363 +var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6364 +var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6365 +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; }
6366 +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; }
6367 +/**
6368 + * @typedef {import('elementor/assets/dev/js/editor/container/container')} Container
6369 + */
6370 +
6371 +var PREFIX = 'e-ai-preview-container';
6372 +var CLASS_HIDDEN = PREFIX + '--hidden';
6373 +var CLASS_IDLE = PREFIX + '--idle';
6374 +
6375 +/**
6376 + * @param {Container} parentContainer
6377 + * @param {{}} containerOptions
6378 + * @return {{init, setContent, reset, destroy}}
6379 + */
6380 +
6381 +function createPreviewContainer(parentContainer) {
6382 + var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6383 + var createdContainers = new Map();
6384 + var idleContainer = createIdleContainer(parentContainer, containerOptions);
6385 + function init() {
6386 + showContainer(idleContainer);
6387 + }
6388 + function getAllContainers() {
6389 + return [].concat((0, _toConsumableArray2.default)(createdContainers.values()), [idleContainer]);
6390 + }
6391 + function reset() {
6392 + deleteContainers((0, _toConsumableArray2.default)(createdContainers.values()));
6393 + createdContainers.clear();
6394 + showContainer(idleContainer);
6395 + }
6396 + function setContent(template) {
6397 + if (!template) {
6398 + return;
6399 + }
6400 + hideContainers(getAllContainers());
6401 + if (!createdContainers.has(template)) {
6402 + var newContainer = createContainer(parentContainer, template, containerOptions);
6403 + createdContainers.set(template, newContainer);
6404 + }
6405 + showContainer(createdContainers.get(template));
6406 + }
6407 + function destroy() {
6408 + deleteContainers(getAllContainers());
6409 + createdContainers.clear();
6410 + }
6411 + return {
6412 + init: init,
6413 + reset: reset,
6414 + setContent: setContent,
6415 + destroy: destroy
6416 + };
6417 +}
6418 +
6419 +/**
6420 + * @param {Container} parentContainer
6421 + * @param {{}} model
6422 + * @param {{}} options
6423 + * @return {*}
6424 + */
6425 +function createContainer(parentContainer, model) {
6426 + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
6427 + (0, _history.toggleHistory)(false);
6428 + var container = $e.run('document/elements/create', {
6429 + container: parentContainer,
6430 + model: _objectSpread(_objectSpread({}, model), {}, {
6431 + id: "".concat(PREFIX, "-").concat(elementorCommon.helpers.getUniqueId().toString())
6432 + }),
6433 + options: _objectSpread(_objectSpread({}, options), {}, {
6434 + edit: false
6435 + })
6436 + });
6437 + (0, _history.toggleHistory)(true);
6438 + container.view.$el.addClass(CLASS_HIDDEN);
6439 + return container;
6440 +}
6441 +
6442 +/**
6443 + * @param {Container} parentContainer
6444 + * @param {{}} containerOptions
6445 + * @return {*}
6446 + */
6447 +function createIdleContainer(parentContainer) {
6448 + var containerOptions = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
6449 + // Create an empty container that'll be used of UI purposes.
6450 + var container = createContainer(parentContainer, {
6451 + elType: 'container'
6452 + }, containerOptions);
6453 + container.view.$el.addClass(CLASS_IDLE);
6454 + return container;
6455 +}
6456 +function hideContainers(containers) {
6457 + containers.forEach(function (container) {
6458 + container.view.$el.addClass(CLASS_HIDDEN);
6459 + });
6460 +}
6461 +function showContainer(container) {
6462 + container.view.$el.removeClass(CLASS_HIDDEN);
6463 +
6464 + // Delay the scroll to avoid UI jumps when toggling between containers.
6465 + setTimeout(function () {
6466 + container.view.$el[0].scrollIntoView({
6467 + behavior: 'smooth',
6468 + block: 'start'
6469 + });
6470 + });
6471 +}
6472 +function deleteContainers(containers) {
6473 + (0, _history.toggleHistory)(false);
6474 + $e.run('document/elements/delete', {
6475 + containers: containers
6476 + });
6477 + (0, _history.toggleHistory)(true);
6478 +}
6479 +
6480 +/***/ }),
6481 +
6482 +/***/ "../modules/ai/assets/js/editor/utils/screenshot.js":
6483 +/*!**********************************************************!*\
6484 + !*** ../modules/ai/assets/js/editor/utils/screenshot.js ***!
6485 + \**********************************************************/
6486 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6487 +
6488 +"use strict";
6489 +
6490 +
6491 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
6492 +Object.defineProperty(exports, "__esModule", ({
6493 + value: true
6494 +}));
6495 +exports.takeScreenshot = void 0;
6496 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
6497 +var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js"));
6498 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
6499 +var _htmlToImage = __webpack_require__(/*! html-to-image */ "../node_modules/html-to-image/es/index.js");
6500 +var _history = __webpack_require__(/*! ./history */ "../modules/ai/assets/js/editor/utils/history.js");
6501 +var _requestsIds = __webpack_require__(/*! ../context/requests-ids */ "../modules/ai/assets/js/editor/context/requests-ids.js");
6502 +var takeScreenshot = /*#__PURE__*/function () {
6503 + var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(template) {
6504 + var hiddenWrapper, container, screenshot;
6505 + return _regenerator.default.wrap(function _callee$(_context) {
6506 + while (1) switch (_context.prev = _context.next) {
6507 + case 0:
6508 + if (template) {
6509 + _context.next = 2;
6510 + break;
6511 + }
6512 + return _context.abrupt("return", '');
6513 + case 2:
6514 + // Disable history so the Editor won't show our hidden container as a user action.
6515 + (0, _history.toggleHistory)(false);
6516 + hiddenWrapper = createHiddenWrapper();
6517 + container = createContainer(template);
6518 + wrapContainer(container, hiddenWrapper);
6519 + elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
6520 +
6521 + // Wait for the container to render.
6522 + _context.next = 9;
6523 + return waitForContainer(container.id);
6524 + case 9:
6525 + if (!template.elements.length) {
6526 + _context.next = 12;
6527 + break;
6528 + }
6529 + _context.next = 12;
6530 + return Promise.all(template.elements.map(function (child) {
6531 + return waitForContainer(child.id);
6532 + }));
6533 + case 12:
6534 + _context.prev = 12;
6535 + _context.next = 15;
6536 + return screenshotNode(container.view.$el[0]);
6537 + case 15:
6538 + screenshot = _context.sent;
6539 + _context.next = 21;
6540 + break;
6541 + case 18:
6542 + _context.prev = 18;
6543 + _context.t0 = _context["catch"](12);
6544 + // Return an empty image url if the screenshot failed.
6545 + screenshot = '';
6546 + case 21:
6547 + deleteContainer(container);
6548 + hiddenWrapper.remove();
6549 + (0, _history.toggleHistory)(true);
6550 + return _context.abrupt("return", screenshot);
6551 + case 25:
6552 + case "end":
6553 + return _context.stop();
6554 + }
6555 + }, _callee, null, [[12, 18]]);
6556 + }));
6557 + return function takeScreenshot(_x) {
6558 + return _ref.apply(this, arguments);
6559 + };
6560 +}();
6561 +exports.takeScreenshot = takeScreenshot;
6562 +function screenshotNode(node) {
6563 + return toWebp(node, {
6564 + quality: 0.01,
6565 + // Transparent 1x1 pixel.
6566 + imagePlaceholder: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII='
6567 + });
6568 +}
6569 +function toWebp(_x2) {
6570 + return _toWebp.apply(this, arguments);
6571 +}
6572 +function _toWebp() {
6573 + _toWebp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(node) {
6574 + var _options$quality;
6575 + var options,
6576 + canvas,
6577 + _args3 = arguments;
6578 + return _regenerator.default.wrap(function _callee3$(_context3) {
6579 + while (1) switch (_context3.prev = _context3.next) {
6580 + case 0:
6581 + options = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
6582 + _context3.next = 3;
6583 + return (0, _htmlToImage.toCanvas)(node, options);
6584 + case 3:
6585 + canvas = _context3.sent;
6586 + return _context3.abrupt("return", canvas.toDataURL('image/webp', (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
6587 + case 5:
6588 + case "end":
6589 + return _context3.stop();
6590 + }
6591 + }, _callee3);
6592 + }));
6593 + return _toWebp.apply(this, arguments);
6594 +}
6595 +function createHiddenWrapper() {
6596 + var wrapper = document.createElement('div');
6597 + wrapper.style.position = 'fixed';
6598 + wrapper.style.opacity = '0';
6599 + wrapper.style.inset = '0';
6600 + return wrapper;
6601 +}
6602 +function createContainer(template) {
6603 + var model = (0, _requestsIds.generateIds)(template);
6604 +
6605 + // Set a custom ID, so it can be used later on in the backend.
6606 + model.id = "e-ai-screenshot-container-".concat(model.id);
6607 + return $e.run('document/elements/create', {
6608 + container: elementor.getPreviewContainer(),
6609 + model: model,
6610 + options: {
6611 + edit: false
6612 + }
6613 + });
6614 +}
6615 +function deleteContainer(container) {
6616 + return $e.run('document/elements/delete', {
6617 + container: container
6618 + });
6619 +}
6620 +function waitForContainer(id) {
6621 + var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
6622 + var timeoutPromise = sleep(timeout);
6623 + var waitPromise = new Promise(function (resolve) {
6624 + elementorFrontend.hooks.addAction('frontend/element_ready/global', /*#__PURE__*/function () {
6625 + var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2($element) {
6626 + var images;
6627 + return _regenerator.default.wrap(function _callee2$(_context2) {
6628 + while (1) switch (_context2.prev = _context2.next) {
6629 + case 0:
6630 + if (!($element.data('id') === id)) {
6631 + _context2.next = 5;
6632 + break;
6633 + }
6634 + images = (0, _toConsumableArray2.default)($element[0].querySelectorAll('img')); // Wait for all images to load.
6635 + _context2.next = 4;
6636 + return Promise.all(images.map(waitForImage));
6637 + case 4:
6638 + resolve();
6639 + case 5:
6640 + case "end":
6641 + return _context2.stop();
6642 + }
6643 + }, _callee2);
6644 + }));
6645 + return function (_x3) {
6646 + return _ref2.apply(this, arguments);
6647 + };
6648 + }());
6649 + });
6650 + return Promise.any([timeoutPromise, waitPromise]);
6651 +}
6652 +function waitForImage(image) {
6653 + if (image.complete) {
6654 + return Promise.resolve();
6655 + }
6656 + return new Promise(function (resolve) {
6657 + image.addEventListener('load', resolve);
6658 + image.addEventListener('error', function () {
6659 + // Remove the image to make sure it won't break the screenshot.
6660 + image.remove();
6661 + resolve();
6662 + });
6663 + });
6664 +}
6665 +function sleep(ms) {
6666 + return new Promise(function (resolve) {
6667 + return setTimeout(resolve, ms);
6668 + });
6669 +}
6670 +function wrapContainer(container, wrapper) {
6671 + var el = container.view.$el[0];
6672 + el.parentNode.insertBefore(wrapper, el);
6673 + wrapper.appendChild(el);
6674 +}
6675 +
6676 +/***/ }),
6677 +
6678 +/***/ "../node_modules/clsx/dist/clsx.m.js":
6679 +/*!*******************************************!*\
6680 + !*** ../node_modules/clsx/dist/clsx.m.js ***!
6681 + \*******************************************/
6682 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6683 +
6684 +"use strict";
6685 +__webpack_require__.r(__webpack_exports__);
6686 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
6687 +/* harmony export */ clsx: () => (/* binding */ clsx),
6688 +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
6689 +/* harmony export */ });
6690 +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);
6691 +
6692 +/***/ }),
6693 +
6694 +/***/ "../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js":
6695 +/*!***********************************************************************************!*\
6696 + !*** ../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js ***!
6697 + \***********************************************************************************/
6698 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
6699 +
6700 +"use strict";
6701 +
6702 +
6703 +var reactIs = __webpack_require__(/*! react-is */ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js");
6704 +
6705 +/**
6706 + * Copyright 2015, Yahoo! Inc.
6707 + * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
6708 + */
6709 +var REACT_STATICS = {
6710 + childContextTypes: true,
6711 + contextType: true,
6712 + contextTypes: true,
6713 + defaultProps: true,
6714 + displayName: true,
6715 + getDefaultProps: true,
6716 + getDerivedStateFromError: true,
6717 + getDerivedStateFromProps: true,
6718 + mixins: true,
6719 + propTypes: true,
6720 + type: true
6721 +};
6722 +var KNOWN_STATICS = {
6723 + name: true,
6724 + length: true,
6725 + prototype: true,
6726 + caller: true,
6727 + callee: true,
6728 + arguments: true,
6729 + arity: true
6730 +};
6731 +var FORWARD_REF_STATICS = {
6732 + '$$typeof': true,
6733 + render: true,
6734 + defaultProps: true,
6735 + displayName: true,
6736 + propTypes: true
6737 +};
6738 +var MEMO_STATICS = {
6739 + '$$typeof': true,
6740 + compare: true,
6741 + defaultProps: true,
6742 + displayName: true,
6743 + propTypes: true,
6744 + type: true
6745 +};
6746 +var TYPE_STATICS = {};
6747 +TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
6748 +TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
6749 +
6750 +function getStatics(component) {
6751 + // React v16.11 and below
6752 + if (reactIs.isMemo(component)) {
6753 + return MEMO_STATICS;
6754 + } // React v16.12 and above
6755 +
6756 +
6757 + return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
6758 +}
6759 +
6760 +var defineProperty = Object.defineProperty;
6761 +var getOwnPropertyNames = Object.getOwnPropertyNames;
6762 +var getOwnPropertySymbols = Object.getOwnPropertySymbols;
6763 +var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
6764 +var getPrototypeOf = Object.getPrototypeOf;
6765 +var objectPrototype = Object.prototype;
6766 +function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
6767 + if (typeof sourceComponent !== 'string') {
6768 + // don't hoist over string (html) components
6769 + if (objectPrototype) {
6770 + var inheritedComponent = getPrototypeOf(sourceComponent);
6771 +
6772 + if (inheritedComponent && inheritedComponent !== objectPrototype) {
6773 + hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
6774 + }
6775 + }
6776 +
6777 + var keys = getOwnPropertyNames(sourceComponent);
6778 +
6779 + if (getOwnPropertySymbols) {
6780 + keys = keys.concat(getOwnPropertySymbols(sourceComponent));
6781 + }
6782 +
6783 + var targetStatics = getStatics(targetComponent);
6784 + var sourceStatics = getStatics(sourceComponent);
6785 +
6786 + for (var i = 0; i < keys.length; ++i) {
6787 + var key = keys[i];
6788 +
6789 + if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
6790 + var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
6791 +
6792 + try {
6793 + // Avoid failures from read-only properties
6794 + defineProperty(targetComponent, key, descriptor);
6795 + } catch (e) {}
6796 + }
6797 + }
6798 + }
6799 +
6800 + return targetComponent;
6801 +}
6802 +
6803 +module.exports = hoistNonReactStatics;
6804 +
6805 +
6806 +/***/ }),
6807 +
6808 +/***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js":
6809 +/*!*************************************************************************************************!*\
6810 + !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js ***!
6811 + \*************************************************************************************************/
6812 +/***/ ((__unused_webpack_module, exports) => {
6813 +
6814 +"use strict";
6815 +/** @license React v16.13.1
6816 + * react-is.development.js
6817 + *
6818 + * Copyright (c) Facebook, Inc. and its affiliates.
6819 + *
6820 + * This source code is licensed under the MIT license found in the
6821 + * LICENSE file in the root directory of this source tree.
6822 + */
6823 +
6824 +
6825 +
6826 +
6827 +
6828 +if (true) {
6829 + (function() {
6830 +'use strict';
6831 +
6832 +// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
6833 +// nor polyfill, then a plain number is used for performance.
6834 +var hasSymbol = typeof Symbol === 'function' && Symbol.for;
6835 +var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
6836 +var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
6837 +var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
6838 +var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
6839 +var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
6840 +var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
6841 +var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
6842 +// (unstable) APIs that have been removed. Can we remove the symbols?
6843 +
6844 +var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
6845 +var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
6846 +var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
6847 +var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
6848 +var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
6849 +var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
6850 +var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
6851 +var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
6852 +var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
6853 +var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
6854 +var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
6855 +
6856 +function isValidElementType(type) {
6857 + return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
6858 + 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);
6859 +}
6860 +
6861 +function typeOf(object) {
6862 + if (typeof object === 'object' && object !== null) {
6863 + var $$typeof = object.$$typeof;
6864 +
6865 + switch ($$typeof) {
6866 + case REACT_ELEMENT_TYPE:
6867 + var type = object.type;
6868 +
6869 + switch (type) {
6870 + case REACT_ASYNC_MODE_TYPE:
6871 + case REACT_CONCURRENT_MODE_TYPE:
6872 + case REACT_FRAGMENT_TYPE:
6873 + case REACT_PROFILER_TYPE:
6874 + case REACT_STRICT_MODE_TYPE:
6875 + case REACT_SUSPENSE_TYPE:
6876 + return type;
6877 +
6878 + default:
6879 + var $$typeofType = type && type.$$typeof;
6880 +
6881 + switch ($$typeofType) {
6882 + case REACT_CONTEXT_TYPE:
6883 + case REACT_FORWARD_REF_TYPE:
6884 + case REACT_LAZY_TYPE:
6885 + case REACT_MEMO_TYPE:
6886 + case REACT_PROVIDER_TYPE:
6887 + return $$typeofType;
6888 +
6889 + default:
6890 + return $$typeof;
6891 + }
6892 +
6893 + }
6894 +
6895 + case REACT_PORTAL_TYPE:
6896 + return $$typeof;
6897 + }
6898 + }
6899 +
6900 + return undefined;
6901 +} // AsyncMode is deprecated along with isAsyncMode
6902 +
6903 +var AsyncMode = REACT_ASYNC_MODE_TYPE;
6904 +var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
6905 +var ContextConsumer = REACT_CONTEXT_TYPE;
6906 +var ContextProvider = REACT_PROVIDER_TYPE;
6907 +var Element = REACT_ELEMENT_TYPE;
6908 +var ForwardRef = REACT_FORWARD_REF_TYPE;
6909 +var Fragment = REACT_FRAGMENT_TYPE;
6910 +var Lazy = REACT_LAZY_TYPE;
6911 +var Memo = REACT_MEMO_TYPE;
6912 +var Portal = REACT_PORTAL_TYPE;
6913 +var Profiler = REACT_PROFILER_TYPE;
6914 +var StrictMode = REACT_STRICT_MODE_TYPE;
6915 +var Suspense = REACT_SUSPENSE_TYPE;
6916 +var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
6917 +
6918 +function isAsyncMode(object) {
6919 + {
6920 + if (!hasWarnedAboutDeprecatedIsAsyncMode) {
6921 + hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
6922 +
6923 + 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.');
6924 + }
6925 + }
6926 +
6927 + return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
6928 +}
6929 +function isConcurrentMode(object) {
6930 + return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
6931 +}
6932 +function isContextConsumer(object) {
6933 + return typeOf(object) === REACT_CONTEXT_TYPE;
6934 +}
6935 +function isContextProvider(object) {
6936 + return typeOf(object) === REACT_PROVIDER_TYPE;
6937 +}
6938 +function isElement(object) {
6939 + return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
6940 +}
6941 +function isForwardRef(object) {
6942 + return typeOf(object) === REACT_FORWARD_REF_TYPE;
6943 +}
6944 +function isFragment(object) {
6945 + return typeOf(object) === REACT_FRAGMENT_TYPE;
6946 +}
6947 +function isLazy(object) {
6948 + return typeOf(object) === REACT_LAZY_TYPE;
6949 +}
6950 +function isMemo(object) {
6951 + return typeOf(object) === REACT_MEMO_TYPE;
6952 +}
6953 +function isPortal(object) {
6954 + return typeOf(object) === REACT_PORTAL_TYPE;
6955 +}
6956 +function isProfiler(object) {
6957 + return typeOf(object) === REACT_PROFILER_TYPE;
6958 +}
6959 +function isStrictMode(object) {
6960 + return typeOf(object) === REACT_STRICT_MODE_TYPE;
6961 +}
6962 +function isSuspense(object) {
6963 + return typeOf(object) === REACT_SUSPENSE_TYPE;
6964 +}
6965 +
6966 +exports.AsyncMode = AsyncMode;
6967 +exports.ConcurrentMode = ConcurrentMode;
6968 +exports.ContextConsumer = ContextConsumer;
6969 +exports.ContextProvider = ContextProvider;
6970 +exports.Element = Element;
6971 +exports.ForwardRef = ForwardRef;
6972 +exports.Fragment = Fragment;
6973 +exports.Lazy = Lazy;
6974 +exports.Memo = Memo;
6975 +exports.Portal = Portal;
6976 +exports.Profiler = Profiler;
6977 +exports.StrictMode = StrictMode;
6978 +exports.Suspense = Suspense;
6979 +exports.isAsyncMode = isAsyncMode;
6980 +exports.isConcurrentMode = isConcurrentMode;
6981 +exports.isContextConsumer = isContextConsumer;
6982 +exports.isContextProvider = isContextProvider;
6983 +exports.isElement = isElement;
6984 +exports.isForwardRef = isForwardRef;
6985 +exports.isFragment = isFragment;
6986 +exports.isLazy = isLazy;
6987 +exports.isMemo = isMemo;
6988 +exports.isPortal = isPortal;
6989 +exports.isProfiler = isProfiler;
6990 +exports.isStrictMode = isStrictMode;
6991 +exports.isSuspense = isSuspense;
6992 +exports.isValidElementType = isValidElementType;
6993 +exports.typeOf = typeOf;
6994 + })();
6995 +}
6996 +
6997 +
6998 +/***/ }),
6999 +
7000 +/***/ "../node_modules/hoist-non-react-statics/node_modules/react-is/index.js":
7001 +/*!******************************************************************************!*\
7002 + !*** ../node_modules/hoist-non-react-statics/node_modules/react-is/index.js ***!
7003 + \******************************************************************************/
7004 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7005 +
7006 +"use strict";
7007 +
7008 +
7009 +if (false) {} else {
7010 + module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.development.js");
7011 +}
7012 +
7013 +
7014 +/***/ }),
7015 +
7016 +/***/ "../node_modules/html-to-image/es/apply-style.js":
7017 +/*!*******************************************************!*\
7018 + !*** ../node_modules/html-to-image/es/apply-style.js ***!
7019 + \*******************************************************/
7020 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7021 +
7022 +"use strict";
7023 +__webpack_require__.r(__webpack_exports__);
7024 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7025 +/* harmony export */ applyStyle: () => (/* binding */ applyStyle)
7026 +/* harmony export */ });
7027 +function applyStyle(node, options) {
7028 + const { style } = node;
7029 + if (options.backgroundColor) {
7030 + style.backgroundColor = options.backgroundColor;
7031 + }
7032 + if (options.width) {
7033 + style.width = `${options.width}px`;
7034 + }
7035 + if (options.height) {
7036 + style.height = `${options.height}px`;
7037 + }
7038 + const manual = options.style;
7039 + if (manual != null) {
7040 + Object.keys(manual).forEach((key) => {
7041 + style[key] = manual[key];
7042 + });
7043 + }
7044 + return node;
7045 +}
7046 +//# sourceMappingURL=apply-style.js.map
7047 +
7048 +/***/ }),
7049 +
7050 +/***/ "../node_modules/html-to-image/es/clone-node.js":
7051 +/*!******************************************************!*\
7052 + !*** ../node_modules/html-to-image/es/clone-node.js ***!
7053 + \******************************************************/
7054 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7055 +
7056 +"use strict";
7057 +__webpack_require__.r(__webpack_exports__);
7058 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7059 +/* harmony export */ cloneNode: () => (/* binding */ cloneNode)
7060 +/* harmony export */ });
7061 +/* harmony import */ var _clone_pseudos__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-pseudos */ "../node_modules/html-to-image/es/clone-pseudos.js");
7062 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7063 +/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7064 +/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7065 +
7066 +
7067 +
7068 +
7069 +async function cloneCanvasElement(canvas) {
7070 + const dataURL = canvas.toDataURL();
7071 + if (dataURL === 'data:,') {
7072 + return canvas.cloneNode(false);
7073 + }
7074 + return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7075 +}
7076 +async function cloneVideoElement(video, options) {
7077 + if (video.currentSrc) {
7078 + const canvas = document.createElement('canvas');
7079 + const ctx = canvas.getContext('2d');
7080 + canvas.width = video.clientWidth;
7081 + canvas.height = video.clientHeight;
7082 + ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
7083 + const dataURL = canvas.toDataURL();
7084 + return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7085 + }
7086 + const poster = video.poster;
7087 + const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_2__.getMimeType)(poster);
7088 + const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_3__.resourceToDataURL)(poster, contentType, options);
7089 + return (0,_util__WEBPACK_IMPORTED_MODULE_1__.createImage)(dataURL);
7090 +}
7091 +async function cloneIFrameElement(iframe) {
7092 + var _a;
7093 + try {
7094 + if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) {
7095 + return (await cloneNode(iframe.contentDocument.body, {}, true));
7096 + }
7097 + }
7098 + catch (_b) {
7099 + // Failed to clone iframe
7100 + }
7101 + return iframe.cloneNode(false);
7102 +}
7103 +async function cloneSingleNode(node, options) {
7104 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLCanvasElement)) {
7105 + return cloneCanvasElement(node);
7106 + }
7107 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLVideoElement)) {
7108 + return cloneVideoElement(node, options);
7109 + }
7110 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(node, HTMLIFrameElement)) {
7111 + return cloneIFrameElement(node);
7112 + }
7113 + return node.cloneNode(false);
7114 +}
7115 +const isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === 'SLOT';
7116 +async function cloneChildren(nativeNode, clonedNode, options) {
7117 + var _a, _b;
7118 + let children = [];
7119 + if (isSlotElement(nativeNode) && nativeNode.assignedNodes) {
7120 + children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.assignedNodes());
7121 + }
7122 + else if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7123 + ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {
7124 + children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(nativeNode.contentDocument.body.childNodes);
7125 + }
7126 + else {
7127 + children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7128 + }
7129 + if (children.length === 0 ||
7130 + (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLVideoElement)) {
7131 + return clonedNode;
7132 + }
7133 + await children.reduce((deferred, child) => deferred
7134 + .then(() => cloneNode(child, options))
7135 + .then((clonedChild) => {
7136 + if (clonedChild) {
7137 + clonedNode.appendChild(clonedChild);
7138 + }
7139 + }), Promise.resolve());
7140 + return clonedNode;
7141 +}
7142 +function cloneCSSStyle(nativeNode, clonedNode) {
7143 + const targetStyle = clonedNode.style;
7144 + if (!targetStyle) {
7145 + return;
7146 + }
7147 + const sourceStyle = window.getComputedStyle(nativeNode);
7148 + if (sourceStyle.cssText) {
7149 + targetStyle.cssText = sourceStyle.cssText;
7150 + targetStyle.transformOrigin = sourceStyle.transformOrigin;
7151 + }
7152 + else {
7153 + (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(sourceStyle).forEach((name) => {
7154 + let value = sourceStyle.getPropertyValue(name);
7155 + if (name === 'font-size' && value.endsWith('px')) {
7156 + const reducedFont = Math.floor(parseFloat(value.substring(0, value.length - 2))) - 0.1;
7157 + value = `${reducedFont}px`;
7158 + }
7159 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLIFrameElement) &&
7160 + name === 'display' &&
7161 + value === 'inline') {
7162 + value = 'block';
7163 + }
7164 + if (name === 'd' && clonedNode.getAttribute('d')) {
7165 + value = `path(${clonedNode.getAttribute('d')})`;
7166 + }
7167 + targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7168 + });
7169 + }
7170 +}
7171 +function cloneInputValue(nativeNode, clonedNode) {
7172 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLTextAreaElement)) {
7173 + clonedNode.innerHTML = nativeNode.value;
7174 + }
7175 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLInputElement)) {
7176 + clonedNode.setAttribute('value', nativeNode.value);
7177 + }
7178 +}
7179 +function cloneSelectValue(nativeNode, clonedNode) {
7180 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(nativeNode, HTMLSelectElement)) {
7181 + const clonedSelect = clonedNode;
7182 + const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute('value'));
7183 + if (selectedOption) {
7184 + selectedOption.setAttribute('selected', '');
7185 + }
7186 + }
7187 +}
7188 +function decorate(nativeNode, clonedNode) {
7189 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7190 + cloneCSSStyle(nativeNode, clonedNode);
7191 + (0,_clone_pseudos__WEBPACK_IMPORTED_MODULE_0__.clonePseudoElements)(nativeNode, clonedNode);
7192 + cloneInputValue(nativeNode, clonedNode);
7193 + cloneSelectValue(nativeNode, clonedNode);
7194 + }
7195 + return clonedNode;
7196 +}
7197 +async function ensureSVGSymbols(clone, options) {
7198 + const uses = clone.querySelectorAll ? clone.querySelectorAll('use') : [];
7199 + if (uses.length === 0) {
7200 + return clone;
7201 + }
7202 + const processedDefs = {};
7203 + for (let i = 0; i < uses.length; i++) {
7204 + const use = uses[i];
7205 + const id = use.getAttribute('xlink:href');
7206 + if (id) {
7207 + const exist = clone.querySelector(id);
7208 + const definition = document.querySelector(id);
7209 + if (!exist && definition && !processedDefs[id]) {
7210 + // eslint-disable-next-line no-await-in-loop
7211 + processedDefs[id] = (await cloneNode(definition, options, true));
7212 + }
7213 + }
7214 + }
7215 + const nodes = Object.values(processedDefs);
7216 + if (nodes.length) {
7217 + const ns = 'http://www.w3.org/1999/xhtml';
7218 + const svg = document.createElementNS(ns, 'svg');
7219 + svg.setAttribute('xmlns', ns);
7220 + svg.style.position = 'absolute';
7221 + svg.style.width = '0';
7222 + svg.style.height = '0';
7223 + svg.style.overflow = 'hidden';
7224 + svg.style.display = 'none';
7225 + const defs = document.createElementNS(ns, 'defs');
7226 + svg.appendChild(defs);
7227 + for (let i = 0; i < nodes.length; i++) {
7228 + defs.appendChild(nodes[i]);
7229 + }
7230 + clone.appendChild(svg);
7231 + }
7232 + return clone;
7233 +}
7234 +async function cloneNode(node, options, isRoot) {
7235 + if (!isRoot && options.filter && !options.filter(node)) {
7236 + return null;
7237 + }
7238 + return Promise.resolve(node)
7239 + .then((clonedNode) => cloneSingleNode(clonedNode, options))
7240 + .then((clonedNode) => cloneChildren(node, clonedNode, options))
7241 + .then((clonedNode) => decorate(node, clonedNode))
7242 + .then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7243 +}
7244 +//# sourceMappingURL=clone-node.js.map
7245 +
7246 +/***/ }),
7247 +
7248 +/***/ "../node_modules/html-to-image/es/clone-pseudos.js":
7249 +/*!*********************************************************!*\
7250 + !*** ../node_modules/html-to-image/es/clone-pseudos.js ***!
7251 + \*********************************************************/
7252 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7253 +
7254 +"use strict";
7255 +__webpack_require__.r(__webpack_exports__);
7256 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7257 +/* harmony export */ clonePseudoElements: () => (/* binding */ clonePseudoElements)
7258 +/* harmony export */ });
7259 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7260 +
7261 +function formatCSSText(style) {
7262 + const content = style.getPropertyValue('content');
7263 + return `${style.cssText} content: '${content.replace(/'|"/g, '')}';`;
7264 +}
7265 +function formatCSSProperties(style) {
7266 + return (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(style)
7267 + .map((name) => {
7268 + const value = style.getPropertyValue(name);
7269 + const priority = style.getPropertyPriority(name);
7270 + return `${name}: ${value}${priority ? ' !important' : ''};`;
7271 + })
7272 + .join(' ');
7273 +}
7274 +function getPseudoElementStyle(className, pseudo, style) {
7275 + const selector = `.${className}:${pseudo}`;
7276 + const cssText = style.cssText
7277 + ? formatCSSText(style)
7278 + : formatCSSProperties(style);
7279 + return document.createTextNode(`${selector}{${cssText}}`);
7280 +}
7281 +function clonePseudoElement(nativeNode, clonedNode, pseudo) {
7282 + const style = window.getComputedStyle(nativeNode, pseudo);
7283 + const content = style.getPropertyValue('content');
7284 + if (content === '' || content === 'none') {
7285 + return;
7286 + }
7287 + const className = (0,_util__WEBPACK_IMPORTED_MODULE_0__.uuid)();
7288 + try {
7289 + clonedNode.className = `${clonedNode.className} ${className}`;
7290 + }
7291 + catch (err) {
7292 + return;
7293 + }
7294 + const styleElement = document.createElement('style');
7295 + styleElement.appendChild(getPseudoElementStyle(className, pseudo, style));
7296 + clonedNode.appendChild(styleElement);
7297 +}
7298 +function clonePseudoElements(nativeNode, clonedNode) {
7299 + clonePseudoElement(nativeNode, clonedNode, ':before');
7300 + clonePseudoElement(nativeNode, clonedNode, ':after');
7301 +}
7302 +//# sourceMappingURL=clone-pseudos.js.map
7303 +
7304 +/***/ }),
7305 +
7306 +/***/ "../node_modules/html-to-image/es/dataurl.js":
7307 +/*!***************************************************!*\
7308 + !*** ../node_modules/html-to-image/es/dataurl.js ***!
7309 + \***************************************************/
7310 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7311 +
7312 +"use strict";
7313 +__webpack_require__.r(__webpack_exports__);
7314 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7315 +/* harmony export */ fetchAsDataURL: () => (/* binding */ fetchAsDataURL),
7316 +/* harmony export */ isDataUrl: () => (/* binding */ isDataUrl),
7317 +/* harmony export */ makeDataUrl: () => (/* binding */ makeDataUrl),
7318 +/* harmony export */ resourceToDataURL: () => (/* binding */ resourceToDataURL)
7319 +/* harmony export */ });
7320 +function getContentFromDataUrl(dataURL) {
7321 + return dataURL.split(/,/)[1];
7322 +}
7323 +function isDataUrl(url) {
7324 + return url.search(/^(data:)/) !== -1;
7325 +}
7326 +function makeDataUrl(content, mimeType) {
7327 + return `data:${mimeType};base64,${content}`;
7328 +}
7329 +async function fetchAsDataURL(url, init, process) {
7330 + const res = await fetch(url, init);
7331 + if (res.status === 404) {
7332 + throw new Error(`Resource "${res.url}" not found`);
7333 + }
7334 + const blob = await res.blob();
7335 + return new Promise((resolve, reject) => {
7336 + const reader = new FileReader();
7337 + reader.onerror = reject;
7338 + reader.onloadend = () => {
7339 + try {
7340 + resolve(process({ res, result: reader.result }));
7341 + }
7342 + catch (error) {
7343 + reject(error);
7344 + }
7345 + };
7346 + reader.readAsDataURL(blob);
7347 + });
7348 +}
7349 +const cache = {};
7350 +function getCacheKey(url, contentType, includeQueryParams) {
7351 + let key = url.replace(/\?.*/, '');
7352 + if (includeQueryParams) {
7353 + key = url;
7354 + }
7355 + // font resource
7356 + if (/ttf|otf|eot|woff2?/i.test(key)) {
7357 + key = key.replace(/.*\//, '');
7358 + }
7359 + return contentType ? `[${contentType}]${key}` : key;
7360 +}
7361 +async function resourceToDataURL(resourceUrl, contentType, options) {
7362 + const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7363 + if (cache[cacheKey] != null) {
7364 + return cache[cacheKey];
7365 + }
7366 + // ref: https://developer.mozilla.org/en/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Bypassing_the_cache
7367 + if (options.cacheBust) {
7368 + // eslint-disable-next-line no-param-reassign
7369 + resourceUrl += (/\?/.test(resourceUrl) ? '&' : '?') + new Date().getTime();
7370 + }
7371 + let dataURL;
7372 + try {
7373 + const content = await fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7374 + if (!contentType) {
7375 + // eslint-disable-next-line no-param-reassign
7376 + contentType = res.headers.get('Content-Type') || '';
7377 + }
7378 + return getContentFromDataUrl(result);
7379 + });
7380 + dataURL = makeDataUrl(content, contentType);
7381 + }
7382 + catch (error) {
7383 + dataURL = options.imagePlaceholder || '';
7384 + let msg = `Failed to fetch resource: ${resourceUrl}`;
7385 + if (error) {
7386 + msg = typeof error === 'string' ? error : error.message;
7387 + }
7388 + if (msg) {
7389 + console.warn(msg);
7390 + }
7391 + }
7392 + cache[cacheKey] = dataURL;
7393 + return dataURL;
7394 +}
7395 +//# sourceMappingURL=dataurl.js.map
7396 +
7397 +/***/ }),
7398 +
7399 +/***/ "../node_modules/html-to-image/es/embed-images.js":
7400 +/*!********************************************************!*\
7401 + !*** ../node_modules/html-to-image/es/embed-images.js ***!
7402 + \********************************************************/
7403 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7404 +
7405 +"use strict";
7406 +__webpack_require__.r(__webpack_exports__);
7407 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7408 +/* harmony export */ embedImages: () => (/* binding */ embedImages)
7409 +/* harmony export */ });
7410 +/* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7411 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7412 +/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7413 +/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7414 +
7415 +
7416 +
7417 +
7418 +async function embedProp(propName, node, options) {
7419 + var _a;
7420 + const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7421 + if (propValue) {
7422 + const cssString = await (0,_embed_resources__WEBPACK_IMPORTED_MODULE_0__.embedResources)(propValue, null, options);
7423 + node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7424 + return true;
7425 + }
7426 + return false;
7427 +}
7428 +async function embedBackground(clonedNode, options) {
7429 + if (!(await embedProp('background', clonedNode, options))) {
7430 + await embedProp('background-image', clonedNode, options);
7431 + }
7432 + if (!(await embedProp('mask', clonedNode, options))) {
7433 + await embedProp('mask-image', clonedNode, options);
7434 + }
7435 +}
7436 +async function embedImageNode(clonedNode, options) {
7437 + const isImageElement = (0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, HTMLImageElement);
7438 + if (!(isImageElement && !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.src)) &&
7439 + !((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, SVGImageElement) &&
7440 + !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(clonedNode.href.baseVal))) {
7441 + return;
7442 + }
7443 + const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7444 + const dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(url, (0,_mimes__WEBPACK_IMPORTED_MODULE_3__.getMimeType)(url), options);
7445 + await new Promise((resolve, reject) => {
7446 + clonedNode.onload = resolve;
7447 + clonedNode.onerror = reject;
7448 + const image = clonedNode;
7449 + if (image.decode) {
7450 + image.decode = resolve;
7451 + }
7452 + if (image.loading === 'lazy') {
7453 + image.loading = 'eager';
7454 + }
7455 + if (isImageElement) {
7456 + clonedNode.srcset = '';
7457 + clonedNode.src = dataURL;
7458 + }
7459 + else {
7460 + clonedNode.href.baseVal = dataURL;
7461 + }
7462 + });
7463 +}
7464 +async function embedChildren(clonedNode, options) {
7465 + const children = (0,_util__WEBPACK_IMPORTED_MODULE_1__.toArray)(clonedNode.childNodes);
7466 + const deferreds = children.map((child) => embedImages(child, options));
7467 + await Promise.all(deferreds).then(() => clonedNode);
7468 +}
7469 +async function embedImages(clonedNode, options) {
7470 + if ((0,_util__WEBPACK_IMPORTED_MODULE_1__.isInstanceOfElement)(clonedNode, Element)) {
7471 + await embedBackground(clonedNode, options);
7472 + await embedImageNode(clonedNode, options);
7473 + await embedChildren(clonedNode, options);
7474 + }
7475 +}
7476 +//# sourceMappingURL=embed-images.js.map
7477 +
7478 +/***/ }),
7479 +
7480 +/***/ "../node_modules/html-to-image/es/embed-resources.js":
7481 +/*!***********************************************************!*\
7482 + !*** ../node_modules/html-to-image/es/embed-resources.js ***!
7483 + \***********************************************************/
7484 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7485 +
7486 +"use strict";
7487 +__webpack_require__.r(__webpack_exports__);
7488 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7489 +/* harmony export */ embed: () => (/* binding */ embed),
7490 +/* harmony export */ embedResources: () => (/* binding */ embedResources),
7491 +/* harmony export */ parseURLs: () => (/* binding */ parseURLs),
7492 +/* harmony export */ shouldEmbed: () => (/* binding */ shouldEmbed)
7493 +/* harmony export */ });
7494 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7495 +/* harmony import */ var _mimes__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mimes */ "../node_modules/html-to-image/es/mimes.js");
7496 +/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7497 +
7498 +
7499 +
7500 +const URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7501 +const URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7502 +const FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7503 +function toRegex(url) {
7504 + // eslint-disable-next-line no-useless-escape
7505 + const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, '\\$1');
7506 + return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, 'g');
7507 +}
7508 +function parseURLs(cssText) {
7509 + const urls = [];
7510 + cssText.replace(URL_REGEX, (raw, quotation, url) => {
7511 + urls.push(url);
7512 + return raw;
7513 + });
7514 + return urls.filter((url) => !(0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.isDataUrl)(url));
7515 +}
7516 +async function embed(cssText, resourceURL, baseURL, options, getContentFromUrl) {
7517 + try {
7518 + const resolvedURL = baseURL ? (0,_util__WEBPACK_IMPORTED_MODULE_0__.resolveUrl)(resourceURL, baseURL) : resourceURL;
7519 + const contentType = (0,_mimes__WEBPACK_IMPORTED_MODULE_1__.getMimeType)(resourceURL);
7520 + let dataURL;
7521 + if (getContentFromUrl) {
7522 + const content = await getContentFromUrl(resolvedURL);
7523 + dataURL = (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.makeDataUrl)(content, contentType);
7524 + }
7525 + else {
7526 + dataURL = await (0,_dataurl__WEBPACK_IMPORTED_MODULE_2__.resourceToDataURL)(resolvedURL, contentType, options);
7527 + }
7528 + return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7529 + }
7530 + catch (error) {
7531 + // pass
7532 + }
7533 + return cssText;
7534 +}
7535 +function filterPreferredFontFormat(str, { preferredFontFormat }) {
7536 + return !preferredFontFormat
7537 + ? str
7538 + : str.replace(FONT_SRC_REGEX, (match) => {
7539 + // eslint-disable-next-line no-constant-condition
7540 + while (true) {
7541 + const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7542 + if (!format) {
7543 + return '';
7544 + }
7545 + if (format === preferredFontFormat) {
7546 + return `src: ${src};`;
7547 + }
7548 + }
7549 + });
7550 +}
7551 +function shouldEmbed(url) {
7552 + return url.search(URL_REGEX) !== -1;
7553 +}
7554 +async function embedResources(cssText, baseUrl, options) {
7555 + if (!shouldEmbed(cssText)) {
7556 + return cssText;
7557 + }
7558 + const filteredCSSText = filterPreferredFontFormat(cssText, options);
7559 + const urls = parseURLs(filteredCSSText);
7560 + return urls.reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7561 +}
7562 +//# sourceMappingURL=embed-resources.js.map
7563 +
7564 +/***/ }),
7565 +
7566 +/***/ "../node_modules/html-to-image/es/embed-webfonts.js":
7567 +/*!**********************************************************!*\
7568 + !*** ../node_modules/html-to-image/es/embed-webfonts.js ***!
7569 + \**********************************************************/
7570 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7571 +
7572 +"use strict";
7573 +__webpack_require__.r(__webpack_exports__);
7574 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7575 +/* harmony export */ embedWebFonts: () => (/* binding */ embedWebFonts),
7576 +/* harmony export */ getWebFontCSS: () => (/* binding */ getWebFontCSS)
7577 +/* harmony export */ });
7578 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7579 +/* harmony import */ var _dataurl__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dataurl */ "../node_modules/html-to-image/es/dataurl.js");
7580 +/* harmony import */ var _embed_resources__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./embed-resources */ "../node_modules/html-to-image/es/embed-resources.js");
7581 +
7582 +
7583 +
7584 +const cssFetchCache = {};
7585 +async function fetchCSS(url) {
7586 + let cache = cssFetchCache[url];
7587 + if (cache != null) {
7588 + return cache;
7589 + }
7590 + const res = await fetch(url);
7591 + const cssText = await res.text();
7592 + cache = { url, cssText };
7593 + cssFetchCache[url] = cache;
7594 + return cache;
7595 +}
7596 +async function embedFonts(data, options) {
7597 + let cssText = data.cssText;
7598 + const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7599 + const fontLocs = cssText.match(/url\([^)]+\)/g) || [];
7600 + const loadFonts = fontLocs.map(async (loc) => {
7601 + let url = loc.replace(regexUrl, '$1');
7602 + if (!url.startsWith('https://')) {
7603 + url = new URL(url, data.url).href;
7604 + }
7605 + return (0,_dataurl__WEBPACK_IMPORTED_MODULE_1__.fetchAsDataURL)(url, options.fetchRequestInit, ({ result }) => {
7606 + cssText = cssText.replace(loc, `url(${result})`);
7607 + return [loc, result];
7608 + });
7609 + });
7610 + return Promise.all(loadFonts).then(() => cssText);
7611 +}
7612 +function parseCSS(source) {
7613 + if (source == null) {
7614 + return [];
7615 + }
7616 + const result = [];
7617 + const commentsRegex = /(\/\*[\s\S]*?\*\/)/gi;
7618 + // strip out comments
7619 + let cssText = source.replace(commentsRegex, '');
7620 + // eslint-disable-next-line prefer-regex-literals
7621 + const keyframesRegex = new RegExp('((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})', 'gi');
7622 + // eslint-disable-next-line no-constant-condition
7623 + while (true) {
7624 + const matches = keyframesRegex.exec(cssText);
7625 + if (matches === null) {
7626 + break;
7627 + }
7628 + result.push(matches[0]);
7629 + }
7630 + cssText = cssText.replace(keyframesRegex, '');
7631 + const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7632 + // to match css & media queries together
7633 + const combinedCSSRegex = '((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]' +
7634 + '*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})';
7635 + // unified regex
7636 + const unifiedRegex = new RegExp(combinedCSSRegex, 'gi');
7637 + // eslint-disable-next-line no-constant-condition
7638 + while (true) {
7639 + let matches = importRegex.exec(cssText);
7640 + if (matches === null) {
7641 + matches = unifiedRegex.exec(cssText);
7642 + if (matches === null) {
7643 + break;
7644 + }
7645 + else {
7646 + importRegex.lastIndex = unifiedRegex.lastIndex;
7647 + }
7648 + }
7649 + else {
7650 + unifiedRegex.lastIndex = importRegex.lastIndex;
7651 + }
7652 + result.push(matches[0]);
7653 + }
7654 + return result;
7655 +}
7656 +async function getCSSRules(styleSheets, options) {
7657 + const ret = [];
7658 + const deferreds = [];
7659 + // First loop inlines imports
7660 + styleSheets.forEach((sheet) => {
7661 + if ('cssRules' in sheet) {
7662 + try {
7663 + (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item, index) => {
7664 + if (item.type === CSSRule.IMPORT_RULE) {
7665 + let importIndex = index + 1;
7666 + const url = item.href;
7667 + const deferred = fetchCSS(url)
7668 + .then((metadata) => embedFonts(metadata, options))
7669 + .then((cssText) => parseCSS(cssText).forEach((rule) => {
7670 + try {
7671 + sheet.insertRule(rule, rule.startsWith('@import')
7672 + ? (importIndex += 1)
7673 + : sheet.cssRules.length);
7674 + }
7675 + catch (error) {
7676 + console.error('Error inserting rule from remote css', {
7677 + rule,
7678 + error,
7679 + });
7680 + }
7681 + }))
7682 + .catch((e) => {
7683 + console.error('Error loading remote css', e.toString());
7684 + });
7685 + deferreds.push(deferred);
7686 + }
7687 + });
7688 + }
7689 + catch (e) {
7690 + const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7691 + if (sheet.href != null) {
7692 + deferreds.push(fetchCSS(sheet.href)
7693 + .then((metadata) => embedFonts(metadata, options))
7694 + .then((cssText) => parseCSS(cssText).forEach((rule) => {
7695 + inline.insertRule(rule, sheet.cssRules.length);
7696 + }))
7697 + .catch((err) => {
7698 + console.error('Error loading remote stylesheet', err);
7699 + }));
7700 + }
7701 + console.error('Error inlining remote css file', e);
7702 + }
7703 + }
7704 + });
7705 + return Promise.all(deferreds).then(() => {
7706 + // Second loop parses rules
7707 + styleSheets.forEach((sheet) => {
7708 + if ('cssRules' in sheet) {
7709 + try {
7710 + (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(sheet.cssRules || []).forEach((item) => {
7711 + ret.push(item);
7712 + });
7713 + }
7714 + catch (e) {
7715 + console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7716 + }
7717 + }
7718 + });
7719 + return ret;
7720 + });
7721 +}
7722 +function getWebFontRules(cssRules) {
7723 + return cssRules
7724 + .filter((rule) => rule.type === CSSRule.FONT_FACE_RULE)
7725 + .filter((rule) => (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.shouldEmbed)(rule.style.getPropertyValue('src')));
7726 +}
7727 +async function parseWebFontRules(node, options) {
7728 + if (node.ownerDocument == null) {
7729 + throw new Error('Provided element is not within a Document');
7730 + }
7731 + const styleSheets = (0,_util__WEBPACK_IMPORTED_MODULE_0__.toArray)(node.ownerDocument.styleSheets);
7732 + const cssRules = await getCSSRules(styleSheets, options);
7733 + return getWebFontRules(cssRules);
7734 +}
7735 +async function getWebFontCSS(node, options) {
7736 + const rules = await parseWebFontRules(node, options);
7737 + const cssTexts = await Promise.all(rules.map((rule) => {
7738 + const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7739 + return (0,_embed_resources__WEBPACK_IMPORTED_MODULE_2__.embedResources)(rule.cssText, baseUrl, options);
7740 + }));
7741 + return cssTexts.join('\n');
7742 +}
7743 +async function embedWebFonts(clonedNode, options) {
7744 + const cssText = options.fontEmbedCSS != null
7745 + ? options.fontEmbedCSS
7746 + : options.skipFonts
7747 + ? null
7748 + : await getWebFontCSS(clonedNode, options);
7749 + if (cssText) {
7750 + const styleNode = document.createElement('style');
7751 + const sytleContent = document.createTextNode(cssText);
7752 + styleNode.appendChild(sytleContent);
7753 + if (clonedNode.firstChild) {
7754 + clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7755 + }
7756 + else {
7757 + clonedNode.appendChild(styleNode);
7758 + }
7759 + }
7760 +}
7761 +//# sourceMappingURL=embed-webfonts.js.map
7762 +
7763 +/***/ }),
7764 +
7765 +/***/ "../node_modules/html-to-image/es/index.js":
7766 +/*!*************************************************!*\
7767 + !*** ../node_modules/html-to-image/es/index.js ***!
7768 + \*************************************************/
7769 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7770 +
7771 +"use strict";
7772 +__webpack_require__.r(__webpack_exports__);
7773 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7774 +/* harmony export */ getFontEmbedCSS: () => (/* binding */ getFontEmbedCSS),
7775 +/* harmony export */ toBlob: () => (/* binding */ toBlob),
7776 +/* harmony export */ toCanvas: () => (/* binding */ toCanvas),
7777 +/* harmony export */ toJpeg: () => (/* binding */ toJpeg),
7778 +/* harmony export */ toPixelData: () => (/* binding */ toPixelData),
7779 +/* harmony export */ toPng: () => (/* binding */ toPng),
7780 +/* harmony export */ toSvg: () => (/* binding */ toSvg)
7781 +/* harmony export */ });
7782 +/* harmony import */ var _clone_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clone-node */ "../node_modules/html-to-image/es/clone-node.js");
7783 +/* harmony import */ var _embed_images__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./embed-images */ "../node_modules/html-to-image/es/embed-images.js");
7784 +/* harmony import */ var _apply_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./apply-style */ "../node_modules/html-to-image/es/apply-style.js");
7785 +/* harmony import */ var _embed_webfonts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./embed-webfonts */ "../node_modules/html-to-image/es/embed-webfonts.js");
7786 +/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./util */ "../node_modules/html-to-image/es/util.js");
7787 +
7788 +
7789 +
7790 +
7791 +
7792 +async function toSvg(node, options = {}) {
7793 + const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7794 + const clonedNode = (await (0,_clone_node__WEBPACK_IMPORTED_MODULE_0__.cloneNode)(node, options, true));
7795 + await (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.embedWebFonts)(clonedNode, options);
7796 + await (0,_embed_images__WEBPACK_IMPORTED_MODULE_1__.embedImages)(clonedNode, options);
7797 + (0,_apply_style__WEBPACK_IMPORTED_MODULE_2__.applyStyle)(clonedNode, options);
7798 + const datauri = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.nodeToDataURL)(clonedNode, width, height);
7799 + return datauri;
7800 +}
7801 +async function toCanvas(node, options = {}) {
7802 + const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7803 + const svg = await toSvg(node, options);
7804 + const img = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.createImage)(svg);
7805 + const canvas = document.createElement('canvas');
7806 + const context = canvas.getContext('2d');
7807 + const ratio = options.pixelRatio || (0,_util__WEBPACK_IMPORTED_MODULE_4__.getPixelRatio)();
7808 + const canvasWidth = options.canvasWidth || width;
7809 + const canvasHeight = options.canvasHeight || height;
7810 + canvas.width = canvasWidth * ratio;
7811 + canvas.height = canvasHeight * ratio;
7812 + if (!options.skipAutoScale) {
7813 + (0,_util__WEBPACK_IMPORTED_MODULE_4__.checkCanvasDimensions)(canvas);
7814 + }
7815 + canvas.style.width = `${canvasWidth}`;
7816 + canvas.style.height = `${canvasHeight}`;
7817 + if (options.backgroundColor) {
7818 + context.fillStyle = options.backgroundColor;
7819 + context.fillRect(0, 0, canvas.width, canvas.height);
7820 + }
7821 + context.drawImage(img, 0, 0, canvas.width, canvas.height);
7822 + return canvas;
7823 +}
7824 +async function toPixelData(node, options = {}) {
7825 + const { width, height } = (0,_util__WEBPACK_IMPORTED_MODULE_4__.getImageSize)(node, options);
7826 + const canvas = await toCanvas(node, options);
7827 + const ctx = canvas.getContext('2d');
7828 + return ctx.getImageData(0, 0, width, height).data;
7829 +}
7830 +async function toPng(node, options = {}) {
7831 + const canvas = await toCanvas(node, options);
7832 + return canvas.toDataURL();
7833 +}
7834 +async function toJpeg(node, options = {}) {
7835 + const canvas = await toCanvas(node, options);
7836 + return canvas.toDataURL('image/jpeg', options.quality || 1);
7837 +}
7838 +async function toBlob(node, options = {}) {
7839 + const canvas = await toCanvas(node, options);
7840 + const blob = await (0,_util__WEBPACK_IMPORTED_MODULE_4__.canvasToBlob)(canvas);
7841 + return blob;
7842 +}
7843 +async function getFontEmbedCSS(node, options = {}) {
7844 + return (0,_embed_webfonts__WEBPACK_IMPORTED_MODULE_3__.getWebFontCSS)(node, options);
7845 +}
7846 +//# sourceMappingURL=index.js.map
7847 +
7848 +/***/ }),
7849 +
7850 +/***/ "../node_modules/html-to-image/es/mimes.js":
7851 +/*!*************************************************!*\
7852 + !*** ../node_modules/html-to-image/es/mimes.js ***!
7853 + \*************************************************/
7854 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7855 +
7856 +"use strict";
7857 +__webpack_require__.r(__webpack_exports__);
7858 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7859 +/* harmony export */ getMimeType: () => (/* binding */ getMimeType)
7860 +/* harmony export */ });
7861 +const WOFF = 'application/font-woff';
7862 +const JPEG = 'image/jpeg';
7863 +const mimes = {
7864 + woff: WOFF,
7865 + woff2: WOFF,
7866 + ttf: 'application/font-truetype',
7867 + eot: 'application/vnd.ms-fontobject',
7868 + png: 'image/png',
7869 + jpg: JPEG,
7870 + jpeg: JPEG,
7871 + gif: 'image/gif',
7872 + tiff: 'image/tiff',
7873 + svg: 'image/svg+xml',
7874 + webp: 'image/webp',
7875 +};
7876 +function getExtension(url) {
7877 + const match = /\.([^./]*?)$/g.exec(url);
7878 + return match ? match[1] : '';
7879 +}
7880 +function getMimeType(url) {
7881 + const extension = getExtension(url).toLowerCase();
7882 + return mimes[extension] || '';
7883 +}
7884 +//# sourceMappingURL=mimes.js.map
7885 +
7886 +/***/ }),
7887 +
7888 +/***/ "../node_modules/html-to-image/es/util.js":
7889 +/*!************************************************!*\
7890 + !*** ../node_modules/html-to-image/es/util.js ***!
7891 + \************************************************/
7892 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7893 +
7894 +"use strict";
7895 +__webpack_require__.r(__webpack_exports__);
7896 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
7897 +/* harmony export */ canvasToBlob: () => (/* binding */ canvasToBlob),
7898 +/* harmony export */ checkCanvasDimensions: () => (/* binding */ checkCanvasDimensions),
7899 +/* harmony export */ createImage: () => (/* binding */ createImage),
7900 +/* harmony export */ delay: () => (/* binding */ delay),
7901 +/* harmony export */ getImageSize: () => (/* binding */ getImageSize),
7902 +/* harmony export */ getPixelRatio: () => (/* binding */ getPixelRatio),
7903 +/* harmony export */ isInstanceOfElement: () => (/* binding */ isInstanceOfElement),
7904 +/* harmony export */ nodeToDataURL: () => (/* binding */ nodeToDataURL),
7905 +/* harmony export */ resolveUrl: () => (/* binding */ resolveUrl),
7906 +/* harmony export */ svgToDataURL: () => (/* binding */ svgToDataURL),
7907 +/* harmony export */ toArray: () => (/* binding */ toArray),
7908 +/* harmony export */ uuid: () => (/* binding */ uuid)
7909 +/* harmony export */ });
7910 +function resolveUrl(url, baseUrl) {
7911 + // url is absolute already
7912 + if (url.match(/^[a-z]+:\/\//i)) {
7913 + return url;
7914 + }
7915 + // url is absolute already, without protocol
7916 + if (url.match(/^\/\//)) {
7917 + return window.location.protocol + url;
7918 + }
7919 + // dataURI, mailto:, tel:, etc.
7920 + if (url.match(/^[a-z]+:/i)) {
7921 + return url;
7922 + }
7923 + const doc = document.implementation.createHTMLDocument();
7924 + const base = doc.createElement('base');
7925 + const a = doc.createElement('a');
7926 + doc.head.appendChild(base);
7927 + doc.body.appendChild(a);
7928 + if (baseUrl) {
7929 + base.href = baseUrl;
7930 + }
7931 + a.href = url;
7932 + return a.href;
7933 +}
7934 +const uuid = (() => {
7935 + // generate uuid for className of pseudo elements.
7936 + // We should not use GUIDs, otherwise pseudo elements sometimes cannot be captured.
7937 + let counter = 0;
7938 + // ref: http://stackoverflow.com/a/6248722/2519373
7939 + const random = () =>
7940 + // eslint-disable-next-line no-bitwise
7941 + `0000${((Math.random() * 36 ** 4) << 0).toString(36)}`.slice(-4);
7942 + return () => {
7943 + counter += 1;
7944 + return `u${random()}${counter}`;
7945 + };
7946 +})();
7947 +function delay(ms) {
7948 + return (args) => new Promise((resolve) => {
7949 + setTimeout(() => resolve(args), ms);
7950 + });
7951 +}
7952 +function toArray(arrayLike) {
7953 + const arr = [];
7954 + for (let i = 0, l = arrayLike.length; i < l; i++) {
7955 + arr.push(arrayLike[i]);
7956 + }
7957 + return arr;
7958 +}
7959 +function px(node, styleProperty) {
7960 + const win = node.ownerDocument.defaultView || window;
7961 + const val = win.getComputedStyle(node).getPropertyValue(styleProperty);
7962 + return val ? parseFloat(val.replace('px', '')) : 0;
7963 +}
7964 +function getNodeWidth(node) {
7965 + const leftBorder = px(node, 'border-left-width');
7966 + const rightBorder = px(node, 'border-right-width');
7967 + return node.clientWidth + leftBorder + rightBorder;
7968 +}
7969 +function getNodeHeight(node) {
7970 + const topBorder = px(node, 'border-top-width');
7971 + const bottomBorder = px(node, 'border-bottom-width');
7972 + return node.clientHeight + topBorder + bottomBorder;
7973 +}
7974 +function getImageSize(targetNode, options = {}) {
7975 + const width = options.width || getNodeWidth(targetNode);
7976 + const height = options.height || getNodeHeight(targetNode);
7977 + return { width, height };
7978 +}
7979 +function getPixelRatio() {
7980 + let ratio;
7981 + let FINAL_PROCESS;
7982 + try {
7983 + FINAL_PROCESS = process;
7984 + }
7985 + catch (e) {
7986 + // pass
7987 + }
7988 + const val = FINAL_PROCESS && FINAL_PROCESS.env
7989 + ? FINAL_PROCESS.env.devicePixelRatio
7990 + : null;
7991 + if (val) {
7992 + ratio = parseInt(val, 10);
7993 + if (Number.isNaN(ratio)) {
7994 + ratio = 1;
7995 + }
7996 + }
7997 + return ratio || window.devicePixelRatio || 1;
7998 +}
7999 +// @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas#maximum_canvas_size
8000 +const canvasDimensionLimit = 16384;
8001 +function checkCanvasDimensions(canvas) {
8002 + if (canvas.width > canvasDimensionLimit ||
8003 + canvas.height > canvasDimensionLimit) {
8004 + if (canvas.width > canvasDimensionLimit &&
8005 + canvas.height > canvasDimensionLimit) {
8006 + if (canvas.width > canvas.height) {
8007 + canvas.height *= canvasDimensionLimit / canvas.width;
8008 + canvas.width = canvasDimensionLimit;
8009 + }
8010 + else {
8011 + canvas.width *= canvasDimensionLimit / canvas.height;
8012 + canvas.height = canvasDimensionLimit;
8013 + }
8014 + }
8015 + else if (canvas.width > canvasDimensionLimit) {
8016 + canvas.height *= canvasDimensionLimit / canvas.width;
8017 + canvas.width = canvasDimensionLimit;
8018 + }
8019 + else {
8020 + canvas.width *= canvasDimensionLimit / canvas.height;
8021 + canvas.height = canvasDimensionLimit;
8022 + }
8023 + }
8024 +}
8025 +function canvasToBlob(canvas, options = {}) {
8026 + if (canvas.toBlob) {
8027 + return new Promise((resolve) => {
8028 + canvas.toBlob(resolve, options.type ? options.type : 'image/png', options.quality ? options.quality : 1);
8029 + });
8030 + }
8031 + return new Promise((resolve) => {
8032 + const binaryString = window.atob(canvas
8033 + .toDataURL(options.type ? options.type : undefined, options.quality ? options.quality : undefined)
8034 + .split(',')[1]);
8035 + const len = binaryString.length;
8036 + const binaryArray = new Uint8Array(len);
8037 + for (let i = 0; i < len; i += 1) {
8038 + binaryArray[i] = binaryString.charCodeAt(i);
8039 + }
8040 + resolve(new Blob([binaryArray], {
8041 + type: options.type ? options.type : 'image/png',
8042 + }));
8043 + });
8044 +}
8045 +function createImage(url) {
8046 + return new Promise((resolve, reject) => {
8047 + const img = new Image();
8048 + img.decode = () => resolve(img);
8049 + img.onload = () => resolve(img);
8050 + img.onerror = reject;
8051 + img.crossOrigin = 'anonymous';
8052 + img.decoding = 'async';
8053 + img.src = url;
8054 + });
8055 +}
8056 +async function svgToDataURL(svg) {
8057 + return Promise.resolve()
8058 + .then(() => new XMLSerializer().serializeToString(svg))
8059 + .then(encodeURIComponent)
8060 + .then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
8061 +}
8062 +async function nodeToDataURL(node, width, height) {
8063 + const xmlns = 'http://www.w3.org/2000/svg';
8064 + const svg = document.createElementNS(xmlns, 'svg');
8065 + const foreignObject = document.createElementNS(xmlns, 'foreignObject');
8066 + svg.setAttribute('width', `${width}`);
8067 + svg.setAttribute('height', `${height}`);
8068 + svg.setAttribute('viewBox', `0 0 ${width} ${height}`);
8069 + foreignObject.setAttribute('width', '100%');
8070 + foreignObject.setAttribute('height', '100%');
8071 + foreignObject.setAttribute('x', '0');
8072 + foreignObject.setAttribute('y', '0');
8073 + foreignObject.setAttribute('externalResourcesRequired', 'true');
8074 + svg.appendChild(foreignObject);
8075 + foreignObject.appendChild(node);
8076 + return svgToDataURL(svg);
8077 +}
8078 +const isInstanceOfElement = (node, instance) => {
8079 + if (node instanceof instance)
8080 + return true;
8081 + const nodePrototype = Object.getPrototypeOf(node);
8082 + if (nodePrototype === null)
8083 + return false;
8084 + return (nodePrototype.constructor.name === instance.name ||
8085 + isInstanceOfElement(nodePrototype, instance));
8086 +};
8087 +//# sourceMappingURL=util.js.map
8088 +
8089 +/***/ }),
8090 +
8091 +/***/ "../node_modules/object-assign/index.js":
8092 +/*!**********************************************!*\
8093 + !*** ../node_modules/object-assign/index.js ***!
8094 + \**********************************************/
8095 +/***/ ((module) => {
8096 +
8097 +"use strict";
8098 +/*
8099 +object-assign
8100 +(c) Sindre Sorhus
8101 +@license MIT
8102 +*/
8103 +
8104 +
8105 +/* eslint-disable no-unused-vars */
8106 +var getOwnPropertySymbols = Object.getOwnPropertySymbols;
8107 +var hasOwnProperty = Object.prototype.hasOwnProperty;
8108 +var propIsEnumerable = Object.prototype.propertyIsEnumerable;
8109 +
8110 +function toObject(val) {
8111 + if (val === null || val === undefined) {
8112 + throw new TypeError('Object.assign cannot be called with null or undefined');
1917 8113 }
1918 - function _objectSpread2(e) {
1919 - for (var r = 1; r < arguments.length; r++) {
1920 - var t = null != arguments[r] ? arguments[r] : {};
1921 - r % 2 ? ownKeys$11(Object(t), !0).forEach(function(r) {
1922 - _defineProperty(e, r, t[r]);
1923 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$11(Object(t)).forEach(function(r) {
1924 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
1925 - });
1926 - }
1927 - return e;
1928 - }
1929 - var init_objectSpread2 = __esmMin((() => {
1930 - init_defineProperty();
1931 - __name(ownKeys$11, "ownKeys");
1932 - }));
1933 8114
1934 -//#endregion
1935 -//#region \0@[email protected]/helpers/esm/objectWithoutPropertiesLoose.js
1936 - function _objectWithoutPropertiesLoose(r, e) {
1937 - if (null == r) return {};
1938 - var t = {};
1939 - for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
1940 - if (e.includes(n)) continue;
1941 - t[n] = r[n];
1942 - }
1943 - return t;
1944 - }
1945 - var init_objectWithoutPropertiesLoose = __esmMin((() => {}));
8115 + return Object(val);
8116 +}
1946 8117
1947 -//#endregion
1948 -//#region \0@[email protected]/helpers/esm/objectWithoutProperties.js
1949 - function _objectWithoutProperties(e, t) {
1950 - if (null == e) return {};
1951 - var o;
1952 - var r;
1953 - var i = _objectWithoutPropertiesLoose(e, t);
1954 - if (Object.getOwnPropertySymbols) {
1955 - var s = Object.getOwnPropertySymbols(e);
1956 - for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
8118 +function shouldUseNative() {
8119 + try {
8120 + if (!Object.assign) {
8121 + return false;
1957 8122 }
1958 - return i;
1959 - }
1960 - var init_objectWithoutProperties = __esmMin((() => {
1961 - init_objectWithoutPropertiesLoose();
1962 - }));
1963 8123
1964 -//#endregion
1965 -//#region node_modules/react-draggable/node_modules/clsx/dist/clsx.js
1966 - var require_clsx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
1967 - function r(e) {
1968 - var o;
1969 - var t;
1970 - var f = "";
1971 - if ("string" == typeof e || "number" == typeof e) f += e;
1972 - else if ("object" == typeof e) if (Array.isArray(e)) {
1973 - var n = e.length;
1974 - for (o = 0; o < n; o++) e[o] && (t = r(e[o])) && (f && (f += " "), f += t);
1975 - } else for (t in e) e[t] && (f && (f += " "), f += t);
1976 - return f;
1977 - }
1978 - function e() {
1979 - for (var e, o, t = 0, f = "", n = arguments.length; t < n; t++) (e = arguments[t]) && (o = r(e)) && (f && (f += " "), f += o);
1980 - return f;
1981 - }
1982 - module.exports = e, module.exports.clsx = e;
1983 - }));
8124 + // Detect buggy property enumeration order in older V8 versions.
1984 8125
1985 -//#endregion
1986 -//#region node_modules/react-draggable/build/cjs/utils/shims.js
1987 - var require_shims = /* @__PURE__ */ __commonJSMin(((exports) => {
1988 - Object.defineProperty(exports, "__esModule", { value: true });
1989 - exports.dontSetMe = dontSetMe;
1990 - exports.findInArray = findInArray;
1991 - exports.int = int;
1992 - exports.isFunction = isFunction;
1993 - exports.isNum = isNum;
1994 - function findInArray(array, callback) {
1995 - for (let i = 0, length = array.length; i < length; i++) if (callback.apply(callback, [
1996 - array[i],
1997 - i,
1998 - array
1999 - ])) return array[i];
8126 + // https://bugs.chromium.org/p/v8/issues/detail?id=4118
8127 + var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
8128 + test1[5] = 'de';
8129 + if (Object.getOwnPropertyNames(test1)[0] === '5') {
8130 + return false;
2000 8131 }
2001 - function isFunction(func) {
2002 - return typeof func === "function" || Object.prototype.toString.call(func) === "[object Function]";
2003 - }
2004 - function isNum(num) {
2005 - return typeof num === "number" && !isNaN(num);
2006 - }
2007 - function int(a) {
2008 - return parseInt(a, 10);
2009 - }
2010 - function dontSetMe(props, propName, componentName) {
2011 - if (props[propName]) return /* @__PURE__ */ new Error(`Invalid prop ${propName} passed to ${componentName} - do not set this, set it on the child.`);
2012 - }
2013 - }));
2014 8132
2015 -//#endregion
2016 -//#region node_modules/react-draggable/build/cjs/utils/getPrefix.js
2017 - var require_getPrefix = /* @__PURE__ */ __commonJSMin(((exports) => {
2018 - Object.defineProperty(exports, "__esModule", { value: true });
2019 - exports.browserPrefixToKey = browserPrefixToKey;
2020 - exports.browserPrefixToStyle = browserPrefixToStyle;
2021 - exports.default = void 0;
2022 - exports.getPrefix = getPrefix;
2023 - var prefixes = [
2024 - "Moz",
2025 - "Webkit",
2026 - "O",
2027 - "ms"
2028 - ];
2029 - function getPrefix() {
2030 - var _window$document;
2031 - let prop = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "transform";
2032 - if (typeof window === "undefined") return "";
2033 - const style = (_window$document = window.document) === null || _window$document === void 0 || (_window$document = _window$document.documentElement) === null || _window$document === void 0 ? void 0 : _window$document.style;
2034 - if (!style) return "";
2035 - if (prop in style) return "";
2036 - for (let i = 0; i < prefixes.length; i++) if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
2037 - return "";
8133 + // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8134 + var test2 = {};
8135 + for (var i = 0; i < 10; i++) {
8136 + test2['_' + String.fromCharCode(i)] = i;
2038 8137 }
2039 - function browserPrefixToKey(prop, prefix) {
2040 - return prefix ? `${prefix}${kebabToTitleCase(prop)}` : prop;
8138 + var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
8139 + return test2[n];
8140 + });
8141 + if (order2.join('') !== '0123456789') {
8142 + return false;
2041 8143 }
2042 - function browserPrefixToStyle(prop, prefix) {
2043 - return prefix ? `-${prefix.toLowerCase()}-${prop}` : prop;
2044 - }
2045 - function kebabToTitleCase(str) {
2046 - let out = "";
2047 - let shouldCapitalize = true;
2048 - for (let i = 0; i < str.length; i++) if (shouldCapitalize) {
2049 - out += str[i].toUpperCase();
2050 - shouldCapitalize = false;
2051 - } else if (str[i] === "-") shouldCapitalize = true;
2052 - else out += str[i];
2053 - return out;
2054 - }
2055 - exports.default = getPrefix();
2056 - }));
2057 8144
2058 -//#endregion
2059 -//#region node_modules/react-draggable/build/cjs/utils/domFns.js
2060 - var require_domFns = /* @__PURE__ */ __commonJSMin(((exports) => {
2061 - init_objectSpread2();
2062 - Object.defineProperty(exports, "__esModule", { value: true });
2063 - exports.addClassName = addClassName;
2064 - exports.addEvent = addEvent;
2065 - exports.addUserSelectStyles = addUserSelectStyles;
2066 - exports.createCSSTransform = createCSSTransform;
2067 - exports.createSVGTransform = createSVGTransform;
2068 - exports.getTouch = getTouch;
2069 - exports.getTouchIdentifier = getTouchIdentifier;
2070 - exports.getTranslation = getTranslation;
2071 - exports.innerHeight = innerHeight;
2072 - exports.innerWidth = innerWidth;
2073 - exports.matchesSelector = matchesSelector;
2074 - exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
2075 - exports.offsetXYFromParent = offsetXYFromParent;
2076 - exports.outerHeight = outerHeight;
2077 - exports.outerWidth = outerWidth;
2078 - exports.removeClassName = removeClassName;
2079 - exports.removeEvent = removeEvent;
2080 - exports.scheduleRemoveUserSelectStyles = scheduleRemoveUserSelectStyles;
2081 - var _shims = require_shims();
2082 - var _getPrefix = _interopRequireWildcard(require_getPrefix());
2083 - function _interopRequireWildcard(e, t) {
2084 - if ("function" == typeof WeakMap) {
2085 - var r = /* @__PURE__ */ new WeakMap();
2086 - var n = /* @__PURE__ */ new WeakMap();
2087 - }
2088 - return (_interopRequireWildcard = function(e, t) {
2089 - if (!t && e && e.__esModule) return e;
2090 - var o;
2091 - var i;
2092 - var f = {
2093 - __proto__: null,
2094 - default: e
2095 - };
2096 - if (null === e || "object" != typeof e && "function" != typeof e) return f;
2097 - if (o = t ? n : r) {
2098 - if (o.has(e)) return o.get(e);
2099 - o.set(e, f);
2100 - }
2101 - for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]);
2102 - return f;
2103 - })(e, t);
2104 - }
2105 - var matchesSelectorFunc = "";
2106 - function matchesSelector(el, selector) {
2107 - if (!matchesSelectorFunc) matchesSelectorFunc = (0, _shims.findInArray)([
2108 - "matches",
2109 - "webkitMatchesSelector",
2110 - "mozMatchesSelector",
2111 - "msMatchesSelector",
2112 - "oMatchesSelector"
2113 - ], function(method) {
2114 - return (0, _shims.isFunction)(el[method]);
2115 - });
2116 - if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false;
2117 - return el[matchesSelectorFunc](selector);
2118 - }
2119 - function matchesSelectorAndParentsTo(el, selector, baseNode) {
2120 - let node = el;
2121 - do {
2122 - if (matchesSelector(node, selector)) return true;
2123 - if (node === baseNode) return false;
2124 - node = node.parentNode;
2125 - } while (node);
8145 + // https://bugs.chromium.org/p/v8/issues/detail?id=3056
8146 + var test3 = {};
8147 + 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
8148 + test3[letter] = letter;
8149 + });
8150 + if (Object.keys(Object.assign({}, test3)).join('') !==
8151 + 'abcdefghijklmnopqrst') {
2126 8152 return false;
2127 8153 }
2128 - function addEvent(el, event, handler, inputOptions) {
2129 - if (!el) return;
2130 - const options = _objectSpread2({ capture: true }, inputOptions);
2131 - if (el.addEventListener) el.addEventListener(event, handler, options);
2132 - else if (el.attachEvent) el.attachEvent("on" + event, handler);
2133 - else el["on" + event] = handler;
2134 - }
2135 - function removeEvent(el, event, handler, inputOptions) {
2136 - if (!el) return;
2137 - const options = _objectSpread2({ capture: true }, inputOptions);
2138 - if (el.removeEventListener) el.removeEventListener(event, handler, options);
2139 - else if (el.detachEvent) el.detachEvent("on" + event, handler);
2140 - else el["on" + event] = null;
2141 - }
2142 - function outerHeight(node) {
2143 - let height = node.clientHeight;
2144 - const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
2145 - height += (0, _shims.int)(computedStyle.borderTopWidth);
2146 - height += (0, _shims.int)(computedStyle.borderBottomWidth);
2147 - return height;
2148 - }
2149 - function outerWidth(node) {
2150 - let width = node.clientWidth;
2151 - const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
2152 - width += (0, _shims.int)(computedStyle.borderLeftWidth);
2153 - width += (0, _shims.int)(computedStyle.borderRightWidth);
2154 - return width;
2155 - }
2156 - function innerHeight(node) {
2157 - let height = node.clientHeight;
2158 - const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
2159 - height -= (0, _shims.int)(computedStyle.paddingTop);
2160 - height -= (0, _shims.int)(computedStyle.paddingBottom);
2161 - return height;
2162 - }
2163 - function innerWidth(node) {
2164 - let width = node.clientWidth;
2165 - const computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
2166 - width -= (0, _shims.int)(computedStyle.paddingLeft);
2167 - width -= (0, _shims.int)(computedStyle.paddingRight);
2168 - return width;
2169 - }
2170 - function offsetXYFromParent(evt, offsetParent, scale) {
2171 - const offsetParentRect = offsetParent === offsetParent.ownerDocument.body ? {
2172 - left: 0,
2173 - top: 0
2174 - } : offsetParent.getBoundingClientRect();
2175 - return {
2176 - x: (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale,
2177 - y: (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale
2178 - };
2179 - }
2180 - function createCSSTransform(controlPos, positionOffset) {
2181 - const translation = getTranslation(controlPos, positionOffset, "px");
2182 - return { [(0, _getPrefix.browserPrefixToKey)("transform", _getPrefix.default)]: translation };
2183 - }
2184 - function createSVGTransform(controlPos, positionOffset) {
2185 - return getTranslation(controlPos, positionOffset, "");
2186 - }
2187 - function getTranslation(_ref, positionOffset, unitSuffix) {
2188 - let { x, y } = _ref;
2189 - let translation = `translate(${x}${unitSuffix},${y}${unitSuffix})`;
2190 - if (positionOffset) translation = `translate(${`${typeof positionOffset.x === "string" ? positionOffset.x : positionOffset.x + unitSuffix}`}, ${`${typeof positionOffset.y === "string" ? positionOffset.y : positionOffset.y + unitSuffix}`})` + translation;
2191 - return translation;
2192 - }
2193 - function getTouch(e, identifier) {
2194 - return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, (t) => identifier === t.identifier) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, (t) => identifier === t.identifier);
2195 - }
2196 - function getTouchIdentifier(e) {
2197 - if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
2198 - if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
2199 - }
2200 - function addUserSelectStyles(doc) {
2201 - if (!doc) return;
2202 - let styleEl = doc.getElementById("react-draggable-style-el");
2203 - if (!styleEl) {
2204 - styleEl = doc.createElement("style");
2205 - styleEl.type = "text/css";
2206 - styleEl.id = "react-draggable-style-el";
2207 - styleEl.innerHTML = ".react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n";
2208 - styleEl.innerHTML += ".react-draggable-transparent-selection *::selection {all: inherit;}\n";
2209 - doc.getElementsByTagName("head")[0].appendChild(styleEl);
2210 - }
2211 - if (doc.body) addClassName(doc.body, "react-draggable-transparent-selection");
2212 - }
2213 - function scheduleRemoveUserSelectStyles(doc) {
2214 - if (window.requestAnimationFrame) window.requestAnimationFrame(() => {
2215 - removeUserSelectStyles(doc);
2216 - });
2217 - else removeUserSelectStyles(doc);
2218 - }
2219 - function removeUserSelectStyles(doc) {
2220 - if (!doc) return;
2221 - try {
2222 - if (doc.body) removeClassName(doc.body, "react-draggable-transparent-selection");
2223 - if (doc.selection) doc.selection.empty();
2224 - else {
2225 - const selection = (doc.defaultView || window).getSelection();
2226 - if (selection && selection.type !== "Caret") selection.removeAllRanges();
2227 - }
2228 - } catch (e) {}
2229 - }
2230 - function addClassName(el, className) {
2231 - if (el.classList) el.classList.add(className);
2232 - else if (!el.className.match(new RegExp(`(?:^|\\s)${className}(?!\\S)`))) el.className += ` ${className}`;
2233 - }
2234 - function removeClassName(el, className) {
2235 - if (el.classList) el.classList.remove(className);
2236 - else el.className = el.className.replace(new RegExp(`(?:^|\\s)${className}(?!\\S)`, "g"), "");
2237 - }
2238 - }));
2239 8154
2240 -//#endregion
2241 -//#region node_modules/react-draggable/build/cjs/utils/positionFns.js
2242 - var require_positionFns = /* @__PURE__ */ __commonJSMin(((exports) => {
2243 - Object.defineProperty(exports, "__esModule", { value: true });
2244 - exports.canDragX = canDragX;
2245 - exports.canDragY = canDragY;
2246 - exports.createCoreData = createCoreData;
2247 - exports.createDraggableData = createDraggableData;
2248 - exports.getBoundPosition = getBoundPosition;
2249 - exports.getControlPosition = getControlPosition;
2250 - exports.snapToGrid = snapToGrid;
2251 - var _shims = require_shims();
2252 - var _domFns = require_domFns();
2253 - function getBoundPosition(draggable, x, y) {
2254 - if (!draggable.props.bounds) return [x, y];
2255 - let { bounds } = draggable.props;
2256 - bounds = typeof bounds === "string" ? bounds : cloneBounds(bounds);
2257 - const node = findDOMNode(draggable);
2258 - if (typeof bounds === "string") {
2259 - const { ownerDocument } = node;
2260 - const ownerWindow = ownerDocument.defaultView;
2261 - let boundNode;
2262 - if (bounds === "parent") boundNode = node.parentNode;
2263 - else boundNode = node.getRootNode().querySelector(bounds);
2264 - if (!(boundNode instanceof ownerWindow.HTMLElement)) throw new Error("Bounds selector \"" + bounds + "\" could not find an element.");
2265 - const boundNodeEl = boundNode;
2266 - const nodeStyle = ownerWindow.getComputedStyle(node);
2267 - const boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl);
2268 - bounds = {
2269 - left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
2270 - top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
2271 - right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
2272 - bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
2273 - };
2274 - }
2275 - if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
2276 - if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom);
2277 - if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
2278 - if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
2279 - return [x, y];
2280 - }
2281 - function snapToGrid(grid, pendingX, pendingY) {
2282 - return [Math.round(pendingX / grid[0]) * grid[0], Math.round(pendingY / grid[1]) * grid[1]];
2283 - }
2284 - function canDragX(draggable) {
2285 - return draggable.props.axis === "both" || draggable.props.axis === "x";
2286 - }
2287 - function canDragY(draggable) {
2288 - return draggable.props.axis === "both" || draggable.props.axis === "y";
2289 - }
2290 - function getControlPosition(e, touchIdentifier, draggableCore) {
2291 - const touchObj = typeof touchIdentifier === "number" ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
2292 - if (typeof touchIdentifier === "number" && !touchObj) return null;
2293 - const node = findDOMNode(draggableCore);
2294 - const offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
2295 - return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
2296 - }
2297 - function createCoreData(draggable, x, y) {
2298 - const isStart = !(0, _shims.isNum)(draggable.lastX);
2299 - const node = findDOMNode(draggable);
2300 - if (isStart) return {
2301 - node,
2302 - deltaX: 0,
2303 - deltaY: 0,
2304 - lastX: x,
2305 - lastY: y,
2306 - x,
2307 - y
2308 - };
2309 - else return {
2310 - node,
2311 - deltaX: x - draggable.lastX,
2312 - deltaY: y - draggable.lastY,
2313 - lastX: draggable.lastX,
2314 - lastY: draggable.lastY,
2315 - x,
2316 - y
2317 - };
2318 - }
2319 - function createDraggableData(draggable, coreData) {
2320 - const scale = draggable.props.scale;
2321 - return {
2322 - node: coreData.node,
2323 - x: draggable.state.x + coreData.deltaX / scale,
2324 - y: draggable.state.y + coreData.deltaY / scale,
2325 - deltaX: coreData.deltaX / scale,
2326 - deltaY: coreData.deltaY / scale,
2327 - lastX: draggable.state.x,
2328 - lastY: draggable.state.y
2329 - };
2330 - }
2331 - function cloneBounds(bounds) {
2332 - return {
2333 - left: bounds.left,
2334 - top: bounds.top,
2335 - right: bounds.right,
2336 - bottom: bounds.bottom
2337 - };
2338 - }
2339 - function findDOMNode(draggable) {
2340 - const node = draggable.findDOMNode();
2341 - if (!node) throw new Error("<DraggableCore>: Unmounted during event!");
2342 - return node;
2343 - }
2344 - }));
8155 + return true;
8156 + } catch (err) {
8157 + // We don't expect any of the above to throw, but better to be safe.
8158 + return false;
8159 + }
8160 +}
2345 8161
2346 -//#endregion
2347 -//#region node_modules/react-draggable/build/cjs/utils/log.js
2348 - var require_log = /* @__PURE__ */ __commonJSMin(((exports) => {
2349 - Object.defineProperty(exports, "__esModule", { value: true });
2350 - exports.default = log;
2351 - function log() {}
2352 - }));
8162 +module.exports = shouldUseNative() ? Object.assign : function (target, source) {
8163 + var from;
8164 + var to = toObject(target);
8165 + var symbols;
2353 8166
2354 -//#endregion
2355 -//#region node_modules/react-draggable/build/cjs/DraggableCore.js
2356 - var require_DraggableCore = /* @__PURE__ */ __commonJSMin(((exports) => {
2357 - Object.defineProperty(exports, "__esModule", { value: true });
2358 - exports.default = void 0;
2359 - var React$47 = _interopRequireWildcard((globalThis.React));
2360 - var _propTypes = _interopRequireDefault(require_prop_types());
2361 - var _reactDom$1 = _interopRequireDefault((globalThis.ReactDOM));
2362 - var _domFns = require_domFns();
2363 - var _positionFns = require_positionFns();
2364 - var _shims = require_shims();
2365 - var _log = _interopRequireDefault(require_log());
2366 - function _interopRequireDefault(e) {
2367 - return e && e.__esModule ? e : { default: e };
2368 - }
2369 - function _interopRequireWildcard(e, t) {
2370 - if ("function" == typeof WeakMap) {
2371 - var r = /* @__PURE__ */ new WeakMap();
2372 - var n = /* @__PURE__ */ new WeakMap();
8167 + for (var s = 1; s < arguments.length; s++) {
8168 + from = Object(arguments[s]);
8169 +
8170 + for (var key in from) {
8171 + if (hasOwnProperty.call(from, key)) {
8172 + to[key] = from[key];
2373 8173 }
2374 - return (_interopRequireWildcard = function(e, t) {
2375 - if (!t && e && e.__esModule) return e;
2376 - var o;
2377 - var i;
2378 - var f = {
2379 - __proto__: null,
2380 - default: e
2381 - };
2382 - if (null === e || "object" != typeof e && "function" != typeof e) return f;
2383 - if (o = t ? n : r) {
2384 - if (o.has(e)) return o.get(e);
2385 - o.set(e, f);
2386 - }
2387 - for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]);
2388 - return f;
2389 - })(e, t);
2390 8174 }
2391 - function _defineProperty(e, r, t) {
2392 - return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
2393 - value: t,
2394 - enumerable: !0,
2395 - configurable: !0,
2396 - writable: !0
2397 - }) : e[r] = t, e;
2398 - }
2399 - function _toPropertyKey(t) {
2400 - var i = _toPrimitive(t, "string");
2401 - return "symbol" == typeof i ? i : i + "";
2402 - }
2403 - function _toPrimitive(t, r) {
2404 - if ("object" != typeof t || !t) return t;
2405 - var e = t[Symbol.toPrimitive];
2406 - if (void 0 !== e) {
2407 - var i = e.call(t, r || "default");
2408 - if ("object" != typeof i) return i;
2409 - throw new TypeError("@@toPrimitive must return a primitive value.");
2410 - }
2411 - return ("string" === r ? String : Number)(t);
2412 - }
2413 - var eventsFor = {
2414 - touch: {
2415 - start: "touchstart",
2416 - move: "touchmove",
2417 - stop: "touchend"
2418 - },
2419 - mouse: {
2420 - start: "mousedown",
2421 - move: "mousemove",
2422 - stop: "mouseup"
2423 - }
2424 - };
2425 - var dragEventFor = eventsFor.mouse;
2426 - var DraggableCore = class extends React$47.Component {
2427 - constructor() {
2428 - super(...arguments);
2429 - _defineProperty(this, "dragging", false);
2430 - _defineProperty(this, "lastX", NaN);
2431 - _defineProperty(this, "lastY", NaN);
2432 - _defineProperty(this, "touchIdentifier", null);
2433 - _defineProperty(this, "mounted", false);
2434 - _defineProperty(this, "handleDragStart", (e) => {
2435 - this.props.onMouseDown(e);
2436 - if (!this.props.allowAnyClick && typeof e.button === "number" && e.button !== 0) return false;
2437 - const thisNode = this.findDOMNode();
2438 - if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) throw new Error("<DraggableCore> not mounted on DragStart!");
2439 - const { ownerDocument } = thisNode;
2440 - 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)) return;
2441 - if (e.type === "touchstart" && !this.props.allowMobileScroll) e.preventDefault();
2442 - const touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
2443 - this.touchIdentifier = touchIdentifier;
2444 - const position = (0, _positionFns.getControlPosition)(e, touchIdentifier, this);
2445 - if (position == null) return;
2446 - const { x, y } = position;
2447 - const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
2448 - (0, _log.default)("DraggableCore: handleDragStart: %j", coreEvent);
2449 - (0, _log.default)("calling", this.props.onStart);
2450 - if (this.props.onStart(e, coreEvent) === false || this.mounted === false) return;
2451 - if (this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument);
2452 - this.dragging = true;
2453 - this.lastX = x;
2454 - this.lastY = y;
2455 - (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, this.handleDrag);
2456 - (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, this.handleDragStop);
2457 - });
2458 - _defineProperty(this, "handleDrag", (e) => {
2459 - const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);
2460 - if (position == null) return;
2461 - let { x, y } = position;
2462 - if (Array.isArray(this.props.grid)) {
2463 - let deltaX = x - this.lastX;
2464 - let deltaY = y - this.lastY;
2465 - [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);
2466 - if (!deltaX && !deltaY) return;
2467 - x = this.lastX + deltaX, y = this.lastY + deltaY;
2468 - }
2469 - const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
2470 - (0, _log.default)("DraggableCore: handleDrag: %j", coreEvent);
2471 - if (this.props.onDrag(e, coreEvent) === false || this.mounted === false) {
2472 - try {
2473 - this.handleDragStop(new MouseEvent("mouseup"));
2474 - } catch (err) {
2475 - const event = document.createEvent("MouseEvents");
2476 - event.initMouseEvent("mouseup", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
2477 - this.handleDragStop(event);
2478 - }
2479 - return;
2480 - }
2481 - this.lastX = x;
2482 - this.lastY = y;
2483 - });
2484 - _defineProperty(this, "handleDragStop", (e) => {
2485 - if (!this.dragging) return;
2486 - const position = (0, _positionFns.getControlPosition)(e, this.touchIdentifier, this);
2487 - if (position == null) return;
2488 - let { x, y } = position;
2489 - if (Array.isArray(this.props.grid)) {
2490 - let deltaX = x - this.lastX || 0;
2491 - let deltaY = y - this.lastY || 0;
2492 - [deltaX, deltaY] = (0, _positionFns.snapToGrid)(this.props.grid, deltaX, deltaY);
2493 - x = this.lastX + deltaX, y = this.lastY + deltaY;
2494 - }
2495 - const coreEvent = (0, _positionFns.createCoreData)(this, x, y);
2496 - if (this.props.onStop(e, coreEvent) === false || this.mounted === false) return false;
2497 - const thisNode = this.findDOMNode();
2498 - if (thisNode) {
2499 - if (this.props.enableUserSelectHack) (0, _domFns.scheduleRemoveUserSelectStyles)(thisNode.ownerDocument);
2500 - }
2501 - (0, _log.default)("DraggableCore: handleDragStop: %j", coreEvent);
2502 - this.dragging = false;
2503 - this.lastX = NaN;
2504 - this.lastY = NaN;
2505 - if (thisNode) {
2506 - (0, _log.default)("DraggableCore: Removing handlers");
2507 - (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, this.handleDrag);
2508 - (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, this.handleDragStop);
2509 - }
2510 - });
2511 - _defineProperty(this, "onMouseDown", (e) => {
2512 - dragEventFor = eventsFor.mouse;
2513 - return this.handleDragStart(e);
2514 - });
2515 - _defineProperty(this, "onMouseUp", (e) => {
2516 - dragEventFor = eventsFor.mouse;
2517 - return this.handleDragStop(e);
2518 - });
2519 - _defineProperty(this, "onTouchStart", (e) => {
2520 - dragEventFor = eventsFor.touch;
2521 - return this.handleDragStart(e);
2522 - });
2523 - _defineProperty(this, "onTouchEnd", (e) => {
2524 - dragEventFor = eventsFor.touch;
2525 - return this.handleDragStop(e);
2526 - });
2527 - }
2528 - componentDidMount() {
2529 - this.mounted = true;
2530 - const thisNode = this.findDOMNode();
2531 - if (thisNode) (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, { passive: false });
2532 - }
2533 - componentWillUnmount() {
2534 - this.mounted = false;
2535 - const thisNode = this.findDOMNode();
2536 - if (thisNode) {
2537 - const { ownerDocument } = thisNode;
2538 - (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
2539 - (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
2540 - (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
2541 - (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
2542 - (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, { passive: false });
2543 - if (this.props.enableUserSelectHack) (0, _domFns.scheduleRemoveUserSelectStyles)(ownerDocument);
2544 - }
2545 - }
2546 - findDOMNode() {
2547 - var _this$props;
2548 - var _this$props2;
2549 - return ((_this$props = this.props) === null || _this$props === void 0 ? void 0 : _this$props.nodeRef) ? (_this$props2 = this.props) === null || _this$props2 === void 0 || (_this$props2 = _this$props2.nodeRef) === null || _this$props2 === void 0 ? void 0 : _this$props2.current : _reactDom$1.default.findDOMNode(this);
2550 - }
2551 - render() {
2552 - return /*#__PURE__*/ React$47.cloneElement(React$47.Children.only(this.props.children), {
2553 - onMouseDown: this.onMouseDown,
2554 - onMouseUp: this.onMouseUp,
2555 - onTouchEnd: this.onTouchEnd
2556 - });
2557 - }
2558 - };
2559 - exports.default = DraggableCore;
2560 - _defineProperty(DraggableCore, "displayName", "DraggableCore");
2561 - _defineProperty(DraggableCore, "propTypes", {
2562 - /**
2563 - * `allowAnyClick` allows dragging using any mouse button.
2564 - * By default, we only accept the left button.
2565 - *
2566 - * Defaults to `false`.
2567 - */
2568 - allowAnyClick: _propTypes.default.bool,
2569 - /**
2570 - * `allowMobileScroll` turns off cancellation of the 'touchstart' event
2571 - * on mobile devices. Only enable this if you are having trouble with click
2572 - * events. Prefer using 'handle' / 'cancel' instead.
2573 - *
2574 - * Defaults to `false`.
2575 - */
2576 - allowMobileScroll: _propTypes.default.bool,
2577 - children: _propTypes.default.node.isRequired,
2578 - /**
2579 - * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
2580 - * with the exception of `onMouseDown`, will not fire.
2581 - */
2582 - disabled: _propTypes.default.bool,
2583 - /**
2584 - * By default, we add 'user-select:none' attributes to the document body
2585 - * to prevent ugly text selection during drag. If this is causing problems
2586 - * for your app, set this to `false`.
2587 - */
2588 - enableUserSelectHack: _propTypes.default.bool,
2589 - /**
2590 - * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
2591 - * instead of using the parent node.
2592 - */
2593 - offsetParent: function(props, propName) {
2594 - if (props[propName] && props[propName].nodeType !== 1) throw new Error("Draggable's offsetParent must be a DOM Node.");
2595 - },
2596 - /**
2597 - * `grid` specifies the x and y that dragging should snap to.
2598 - */
2599 - grid: _propTypes.default.arrayOf(_propTypes.default.number),
2600 - /**
2601 - * `handle` specifies a selector to be used as the handle that initiates drag.
2602 - *
2603 - * Example:
2604 - *
2605 - * ```jsx
2606 - * let App = React.createClass({
2607 - * render: function () {
2608 - * return (
2609 - * <Draggable handle=".handle">
2610 - * <div>
2611 - * <div className="handle">Click me to drag</div>
2612 - * <div>This is some other content</div>
2613 - * </div>
2614 - * </Draggable>
2615 - * );
2616 - * }
2617 - * });
2618 - * ```
2619 - */
2620 - handle: _propTypes.default.string,
2621 - /**
2622 - * `cancel` specifies a selector to be used to prevent drag initialization.
2623 - *
2624 - * Example:
2625 - *
2626 - * ```jsx
2627 - * let App = React.createClass({
2628 - * render: function () {
2629 - * return(
2630 - * <Draggable cancel=".cancel">
2631 - * <div>
2632 - * <div className="cancel">You can't drag from here</div>
2633 - * <div>Dragging here works fine</div>
2634 - * </div>
2635 - * </Draggable>
2636 - * );
2637 - * }
2638 - * });
2639 - * ```
2640 - */
2641 - cancel: _propTypes.default.string,
2642 - nodeRef: _propTypes.default.object,
2643 - /**
2644 - * Called when dragging starts.
2645 - * If this function returns the boolean false, dragging will be canceled.
2646 - */
2647 - onStart: _propTypes.default.func,
2648 - /**
2649 - * Called while dragging.
2650 - * If this function returns the boolean false, dragging will be canceled.
2651 - */
2652 - onDrag: _propTypes.default.func,
2653 - /**
2654 - * Called when dragging stops.
2655 - * If this function returns the boolean false, the drag will remain active.
2656 - */
2657 - onStop: _propTypes.default.func,
2658 - /**
2659 - * A workaround option which can be passed if onMouseDown needs to be accessed,
2660 - * since it'll always be blocked (as there is internal use of onMouseDown)
2661 - */
2662 - onMouseDown: _propTypes.default.func,
2663 - /**
2664 - * `scale`, if set, applies scaling while dragging an element
2665 - */
2666 - scale: _propTypes.default.number,
2667 - /**
2668 - * These properties should be defined on the child, not here.
2669 - */
2670 - className: _shims.dontSetMe,
2671 - style: _shims.dontSetMe,
2672 - transform: _shims.dontSetMe
2673 - });
2674 - _defineProperty(DraggableCore, "defaultProps", {
2675 - allowAnyClick: false,
2676 - allowMobileScroll: false,
2677 - disabled: false,
2678 - enableUserSelectHack: true,
2679 - onStart: function() {},
2680 - onDrag: function() {},
2681 - onStop: function() {},
2682 - onMouseDown: function() {},
2683 - scale: 1
2684 - });
2685 - }));
2686 8175
2687 -//#endregion
2688 -//#region node_modules/react-draggable/build/cjs/Draggable.js
2689 - var require_Draggable = /* @__PURE__ */ __commonJSMin(((exports) => {
2690 - init_objectSpread2();
2691 - init_objectWithoutProperties();
2692 - var _excluded = [
2693 - "axis",
2694 - "bounds",
2695 - "children",
2696 - "defaultPosition",
2697 - "defaultClassName",
2698 - "defaultClassNameDragging",
2699 - "defaultClassNameDragged",
2700 - "position",
2701 - "positionOffset",
2702 - "scale"
2703 - ];
2704 - Object.defineProperty(exports, "__esModule", { value: true });
2705 - Object.defineProperty(exports, "DraggableCore", {
2706 - enumerable: true,
2707 - get: function() {
2708 - return _DraggableCore.default;
2709 - }
2710 - });
2711 - exports.default = void 0;
2712 - var React$46 = _interopRequireWildcard((globalThis.React));
2713 - var _propTypes = _interopRequireDefault(require_prop_types());
2714 - var _reactDom = _interopRequireDefault((globalThis.ReactDOM));
2715 - var _clsx = require_clsx();
2716 - var _domFns = require_domFns();
2717 - var _positionFns = require_positionFns();
2718 - var _shims = require_shims();
2719 - var _DraggableCore = _interopRequireDefault(require_DraggableCore());
2720 - var _log = _interopRequireDefault(require_log());
2721 - function _interopRequireDefault(e) {
2722 - return e && e.__esModule ? e : { default: e };
2723 - }
2724 - function _interopRequireWildcard(e, t) {
2725 - if ("function" == typeof WeakMap) {
2726 - var r = /* @__PURE__ */ new WeakMap();
2727 - var n = /* @__PURE__ */ new WeakMap();
2728 - }
2729 - return (_interopRequireWildcard = function(e, t) {
2730 - if (!t && e && e.__esModule) return e;
2731 - var o;
2732 - var i;
2733 - var f = {
2734 - __proto__: null,
2735 - default: e
2736 - };
2737 - if (null === e || "object" != typeof e && "function" != typeof e) return f;
2738 - if (o = t ? n : r) {
2739 - if (o.has(e)) return o.get(e);
2740 - o.set(e, f);
8176 + if (getOwnPropertySymbols) {
8177 + symbols = getOwnPropertySymbols(from);
8178 + for (var i = 0; i < symbols.length; i++) {
8179 + if (propIsEnumerable.call(from, symbols[i])) {
8180 + to[symbols[i]] = from[symbols[i]];
2741 8181 }
2742 - for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]);
2743 - return f;
2744 - })(e, t);
2745 - }
2746 - function _extends() {
2747 - return _extends = Object.assign ? Object.assign.bind() : function(n) {
2748 - for (var e = 1; e < arguments.length; e++) {
2749 - var t = arguments[e];
2750 - for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
2751 - }
2752 - return n;
2753 - }, _extends.apply(null, arguments);
2754 - }
2755 - function _defineProperty(e, r, t) {
2756 - return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
2757 - value: t,
2758 - enumerable: !0,
2759 - configurable: !0,
2760 - writable: !0
2761 - }) : e[r] = t, e;
2762 - }
2763 - function _toPropertyKey(t) {
2764 - var i = _toPrimitive(t, "string");
2765 - return "symbol" == typeof i ? i : i + "";
2766 - }
2767 - function _toPrimitive(t, r) {
2768 - if ("object" != typeof t || !t) return t;
2769 - var e = t[Symbol.toPrimitive];
2770 - if (void 0 !== e) {
2771 - var i = e.call(t, r || "default");
2772 - if ("object" != typeof i) return i;
2773 - throw new TypeError("@@toPrimitive must return a primitive value.");
2774 8182 }
2775 - return ("string" === r ? String : Number)(t);
2776 8183 }
2777 - var Draggable = class extends React$46.Component {
2778 - static getDerivedStateFromProps(_ref, _ref2) {
2779 - let { position } = _ref;
2780 - let { prevPropsPosition } = _ref2;
2781 - if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
2782 - (0, _log.default)("Draggable: getDerivedStateFromProps %j", {
2783 - position,
2784 - prevPropsPosition
2785 - });
2786 - return {
2787 - x: position.x,
2788 - y: position.y,
2789 - prevPropsPosition: _objectSpread2({}, position)
2790 - };
2791 - }
2792 - return null;
2793 - }
2794 - constructor(props) {
2795 - super(props);
2796 - _defineProperty(this, "onDragStart", (e, coreData) => {
2797 - (0, _log.default)("Draggable: onDragStart: %j", coreData);
2798 - if (this.props.onStart(e, (0, _positionFns.createDraggableData)(this, coreData)) === false) return false;
2799 - this.setState({
2800 - dragging: true,
2801 - dragged: true
2802 - });
2803 - });
2804 - _defineProperty(this, "onDrag", (e, coreData) => {
2805 - if (!this.state.dragging) return false;
2806 - (0, _log.default)("Draggable: onDrag: %j", coreData);
2807 - const uiData = (0, _positionFns.createDraggableData)(this, coreData);
2808 - const newState = {
2809 - x: uiData.x,
2810 - y: uiData.y,
2811 - slackX: 0,
2812 - slackY: 0
2813 - };
2814 - if (this.props.bounds) {
2815 - const { x, y } = newState;
2816 - newState.x += this.state.slackX;
2817 - newState.y += this.state.slackY;
2818 - const [newStateX, newStateY] = (0, _positionFns.getBoundPosition)(this, newState.x, newState.y);
2819 - newState.x = newStateX;
2820 - newState.y = newStateY;
2821 - newState.slackX = this.state.slackX + (x - newState.x);
2822 - newState.slackY = this.state.slackY + (y - newState.y);
2823 - uiData.x = newState.x;
2824 - uiData.y = newState.y;
2825 - uiData.deltaX = newState.x - this.state.x;
2826 - uiData.deltaY = newState.y - this.state.y;
2827 - }
2828 - if (this.props.onDrag(e, uiData) === false) return false;
2829 - this.setState(newState);
2830 - });
2831 - _defineProperty(this, "onDragStop", (e, coreData) => {
2832 - if (!this.state.dragging) return false;
2833 - if (this.props.onStop(e, (0, _positionFns.createDraggableData)(this, coreData)) === false) return false;
2834 - (0, _log.default)("Draggable: onDragStop: %j", coreData);
2835 - const newState = {
2836 - dragging: false,
2837 - slackX: 0,
2838 - slackY: 0
2839 - };
2840 - if (Boolean(this.props.position)) {
2841 - const { x, y } = this.props.position;
2842 - newState.x = x;
2843 - newState.y = y;
2844 - }
2845 - this.setState(newState);
2846 - });
2847 - this.state = {
2848 - dragging: false,
2849 - dragged: false,
2850 - x: props.position ? props.position.x : props.defaultPosition.x,
2851 - y: props.position ? props.position.y : props.defaultPosition.y,
2852 - prevPropsPosition: _objectSpread2({}, props.position),
2853 - slackX: 0,
2854 - slackY: 0,
2855 - isElementSVG: false
2856 - };
2857 - if (props.position && !(props.onDrag || props.onStop)) 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.");
2858 - }
2859 - componentDidMount() {
2860 - if (typeof window.SVGElement !== "undefined" && this.findDOMNode() instanceof window.SVGElement) this.setState({ isElementSVG: true });
2861 - }
2862 - componentWillUnmount() {
2863 - if (this.state.dragging) this.setState({ dragging: false });
2864 - }
2865 - findDOMNode() {
2866 - var _this$props$nodeRef$c;
2867 - var _this$props;
2868 - return (_this$props$nodeRef$c = (_this$props = this.props) === null || _this$props === void 0 || (_this$props = _this$props.nodeRef) === null || _this$props === void 0 ? void 0 : _this$props.current) !== null && _this$props$nodeRef$c !== void 0 ? _this$props$nodeRef$c : _reactDom.default.findDOMNode(this);
2869 - }
2870 - render() {
2871 - const _this$props2 = this.props, { axis, bounds, children, defaultPosition, defaultClassName, defaultClassNameDragging, defaultClassNameDragged, position, positionOffset, scale } = _this$props2, draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
2872 - let style = {};
2873 - let svgTransform = null;
2874 - const draggable = !Boolean(position) || this.state.dragging;
2875 - const validPosition = position || defaultPosition;
2876 - const transformOpts = {
2877 - x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
2878 - y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
2879 - };
2880 - if (this.state.isElementSVG) svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
2881 - else style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
2882 - const className = (0, _clsx.clsx)(children.props.className || "", defaultClassName, {
2883 - [defaultClassNameDragging]: this.state.dragging,
2884 - [defaultClassNameDragged]: this.state.dragged
2885 - });
2886 - return /*#__PURE__*/ React$46.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
2887 - onStart: this.onDragStart,
2888 - onDrag: this.onDrag,
2889 - onStop: this.onDragStop
2890 - }), /*#__PURE__*/ React$46.cloneElement(React$46.Children.only(children), {
2891 - className,
2892 - style: _objectSpread2(_objectSpread2({}, children.props.style), style),
2893 - transform: svgTransform
2894 - }));
2895 - }
2896 - };
2897 - exports.default = Draggable;
2898 - _defineProperty(Draggable, "displayName", "Draggable");
2899 - _defineProperty(Draggable, "propTypes", _objectSpread2(_objectSpread2({}, _DraggableCore.default.propTypes), {}, {
2900 - /**
2901 - * `axis` determines which axis the draggable can move.
2902 - *
2903 - * Note that all callbacks will still return data as normal. This only
2904 - * controls flushing to the DOM.
2905 - *
2906 - * 'both' allows movement horizontally and vertically.
2907 - * 'x' limits movement to horizontal axis.
2908 - * 'y' limits movement to vertical axis.
2909 - * 'none' limits all movement.
2910 - *
2911 - * Defaults to 'both'.
2912 - */
2913 - axis: _propTypes.default.oneOf([
2914 - "both",
2915 - "x",
2916 - "y",
2917 - "none"
2918 - ]),
2919 - /**
2920 - * `bounds` determines the range of movement available to the element.
2921 - * Available values are:
2922 - *
2923 - * 'parent' restricts movement within the Draggable's parent node.
2924 - *
2925 - * Alternatively, pass an object with the following properties, all of which are optional:
2926 - *
2927 - * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
2928 - *
2929 - * All values are in px.
2930 - *
2931 - * Example:
2932 - *
2933 - * ```jsx
2934 - * let App = React.createClass({
2935 - * render: function () {
2936 - * return (
2937 - * <Draggable bounds={{right: 300, bottom: 300}}>
2938 - * <div>Content</div>
2939 - * </Draggable>
2940 - * );
2941 - * }
2942 - * });
2943 - * ```
2944 - */
2945 - bounds: _propTypes.default.oneOfType([
2946 - _propTypes.default.shape({
2947 - left: _propTypes.default.number,
2948 - right: _propTypes.default.number,
2949 - top: _propTypes.default.number,
2950 - bottom: _propTypes.default.number
2951 - }),
2952 - _propTypes.default.string,
2953 - _propTypes.default.oneOf([false])
2954 - ]),
2955 - defaultClassName: _propTypes.default.string,
2956 - defaultClassNameDragging: _propTypes.default.string,
2957 - defaultClassNameDragged: _propTypes.default.string,
2958 - /**
2959 - * `defaultPosition` specifies the x and y that the dragged item should start at
2960 - *
2961 - * Example:
2962 - *
2963 - * ```jsx
2964 - * let App = React.createClass({
2965 - * render: function () {
2966 - * return (
2967 - * <Draggable defaultPosition={{x: 25, y: 25}}>
2968 - * <div>I start with transformX: 25px and transformY: 25px;</div>
2969 - * </Draggable>
2970 - * );
2971 - * }
2972 - * });
2973 - * ```
2974 - */
2975 - defaultPosition: _propTypes.default.shape({
2976 - x: _propTypes.default.number,
2977 - y: _propTypes.default.number
2978 - }),
2979 - positionOffset: _propTypes.default.shape({
2980 - x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
2981 - y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
2982 - }),
2983 - /**
2984 - * `position`, if present, defines the current position of the element.
2985 - *
2986 - * This is similar to how form elements in React work - if no `position` is supplied, the component
2987 - * is uncontrolled.
2988 - *
2989 - * Example:
2990 - *
2991 - * ```jsx
2992 - * let App = React.createClass({
2993 - * render: function () {
2994 - * return (
2995 - * <Draggable position={{x: 25, y: 25}}>
2996 - * <div>I start with transformX: 25px and transformY: 25px;</div>
2997 - * </Draggable>
2998 - * );
2999 - * }
3000 - * });
3001 - * ```
3002 - */
3003 - position: _propTypes.default.shape({
3004 - x: _propTypes.default.number,
3005 - y: _propTypes.default.number
3006 - }),
3007 - /**
3008 - * These properties should be defined on the child, not here.
3009 - */
3010 - className: _shims.dontSetMe,
3011 - style: _shims.dontSetMe,
3012 - transform: _shims.dontSetMe
3013 - }));
3014 - _defineProperty(Draggable, "defaultProps", _objectSpread2(_objectSpread2({}, _DraggableCore.default.defaultProps), {}, {
3015 - axis: "both",
3016 - bounds: false,
3017 - defaultClassName: "react-draggable",
3018 - defaultClassNameDragging: "react-draggable-dragging",
3019 - defaultClassNameDragged: "react-draggable-dragged",
3020 - defaultPosition: {
3021 - x: 0,
3022 - y: 0
3023 - },
3024 - scale: 1
3025 - }));
3026 - }));
8184 + }
3027 8185
3028 -//#endregion
3029 -//#region node_modules/react-draggable/build/cjs/cjs.js
3030 - var require_cjs = /* @__PURE__ */ __commonJSMin(((exports, module) => {
3031 - var { default: Draggable, DraggableCore } = require_Draggable();
3032 - module.exports = Draggable;
3033 - module.exports.default = Draggable;
3034 - module.exports.DraggableCore = DraggableCore;
3035 - }));
8186 + return to;
8187 +};
3036 8188
3037 -//#endregion
3038 -//#region modules/ai/assets/js/editor/components/dialog-header.js
3039 - var import_prop_types$33, StyledElementorLogo, DialogHeader$1;
3040 - var init_dialog_header = __esmMin((() => {
3041 - init_extends();
3042 - import_prop_types$33 = /* @__PURE__ */ __toESM(require_prop_types());
3043 - StyledElementorLogo = (0, _elementor_ui.styled)(function ElementorLogo(props) {
3044 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 32 32" }, props), /*#__PURE__*/ react.default.createElement("path", {
3045 - fillRule: "evenodd",
3046 - clipRule: "evenodd",
3047 - 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"
3048 - }));
3049 - })(function(_ref) {
3050 - var theme = _ref.theme;
3051 - return {
3052 - width: theme.spacing(3),
3053 - height: theme.spacing(3),
3054 - "& path": { fill: theme.palette.text.primary }
3055 - };
3056 - });
3057 - DialogHeader$1 = function DialogHeader(props) {
3058 - var hideAiBetaLogo = props.hideAiBetaLogo;
3059 - var onClose = props.onClose;
3060 - var children = props.children;
3061 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.AppBar, {
3062 - sx: { fontWeight: "normal" },
3063 - color: "transparent",
3064 - position: "relative"
3065 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Toolbar, { variant: "dense" }, !hideAiBetaLogo && /*#__PURE__*/ react.default.createElement(react.default.Fragment, null, /*#__PURE__*/ react.default.createElement(StyledElementorLogo, { sx: { mr: 1 } }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
3066 - component: "span",
3067 - variant: "subtitle2",
3068 - sx: {
3069 - fontWeight: "bold",
3070 - textTransform: "uppercase"
3071 - }
3072 - }, (0, _wordpress_i18n.__)("AI", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Chip, {
3073 - label: (0, _wordpress_i18n.__)("Beta", "elementor"),
3074 - color: "default",
3075 - size: "small",
3076 - sx: { ml: 1 }
3077 - })), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
3078 - direction: "row",
3079 - spacing: 1,
3080 - alignItems: "center",
3081 - sx: { ml: hideAiBetaLogo ? 0 : "auto" }
3082 - }, children, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
3083 - size: "small",
3084 - "aria-label": "close",
3085 - onClick: onClose,
3086 - sx: { "&.MuiButtonBase-root": { mr: -1 } }
3087 - }, /*#__PURE__*/ react.default.createElement(_elementor_icons.XIcon, null)))));
3088 - };
3089 - DialogHeader$1.propTypes = {
3090 - onClose: import_prop_types$33.default.func.isRequired,
3091 - hideAiBetaLogo: import_prop_types$33.default.bool,
3092 - children: import_prop_types$33.default.oneOfType([import_prop_types$33.default.arrayOf(import_prop_types$33.default.node), import_prop_types$33.default.node])
3093 - };
3094 - }));
3095 8189
3096 -//#endregion
3097 -//#region modules/ai/assets/js/editor/components/prompt-dialog.js
3098 - function ownKeys$10(e, r) {
3099 - var t = Object.keys(e);
3100 - if (Object.getOwnPropertySymbols) {
3101 - var o = Object.getOwnPropertySymbols(e);
3102 - r && (o = o.filter(function(r) {
3103 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
3104 - })), t.push.apply(t, o);
3105 - }
3106 - return t;
3107 - }
3108 - function _objectSpread$10(e) {
3109 - for (var r = 1; r < arguments.length; r++) {
3110 - var t = null != arguments[r] ? arguments[r] : {};
3111 - r % 2 ? ownKeys$10(Object(t), !0).forEach(function(r) {
3112 - _defineProperty$1(e, r, t[r]);
3113 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$10(Object(t)).forEach(function(r) {
3114 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
3115 - });
3116 - }
3117 - return e;
3118 - }
3119 - var import_prop_types$32, import_cjs, DraggablePaper, PromptDialog;
3120 - var init_prompt_dialog = __esmMin((() => {
3121 - init_extends();
3122 - init_defineProperty$1();
3123 - init_slicedToArray();
3124 - import_prop_types$32 = /* @__PURE__ */ __toESM(require_prop_types());
3125 - import_cjs = /* @__PURE__ */ __toESM(require_cjs());
3126 - init_dialog_header();
3127 - __name(ownKeys$10, "ownKeys");
3128 - __name(_objectSpread$10, "_objectSpread");
3129 - DraggablePaper = function DraggablePaper(props) {
3130 - var _useState2 = _slicedToArray((0, react.useState)({
3131 - x: 0,
3132 - y: 0
3133 - }), 2);
3134 - var position = _useState2[0];
3135 - var setPosition = _useState2[1];
3136 - var paperRef = (0, react.useRef)(null);
3137 - var timeout = (0, react.useRef)(null);
3138 - var onDrag = function onDrag(_e, _ref) {
3139 - var x = _ref.x;
3140 - var y = _ref.y;
3141 - return setPosition({
3142 - x,
3143 - y
3144 - });
3145 - };
3146 - var handlePositionBoundaries = function handlePositionBoundaries() {
3147 - clearTimeout(timeout.current);
3148 - timeout.current = setTimeout(function() {
3149 - var _paperRef$current;
3150 - var dialogTop = (_paperRef$current = paperRef.current) === null || _paperRef$current === void 0 ? void 0 : _paperRef$current.getBoundingClientRect().top;
3151 - if (dialogTop < 0) setPosition(function(prev) {
3152 - return _objectSpread$10(_objectSpread$10({}, prev), {}, { y: prev.y - dialogTop });
3153 - });
3154 - }, 50);
3155 - };
3156 - (0, react.useEffect)(function() {
3157 - var resizeObserver = new ResizeObserver(handlePositionBoundaries);
3158 - resizeObserver.observe(paperRef.current);
3159 - return function() {
3160 - resizeObserver.disconnect();
3161 - };
3162 - }, []);
3163 - return /*#__PURE__*/ react.default.createElement(import_cjs.default, {
3164 - position,
3165 - onDrag,
3166 - handle: ".MuiAppBar-root",
3167 - cancel: "[class*=\"MuiDialogContent-root\"]",
3168 - bounds: "parent"
3169 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Paper, _extends({}, props, { ref: paperRef })));
3170 - };
3171 - PromptDialog = function PromptDialog(props) {
3172 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Dialog, _extends({
3173 - scroll: "paper",
3174 - open: true,
3175 - fullWidth: true,
3176 - hideBackdrop: true,
3177 - PaperComponent: DraggablePaper,
3178 - disableScrollLock: true,
3179 - sx: { "& .MuiDialog-container": {
3180 - alignItems: "flex-start",
3181 - mt: "18vh"
3182 - } },
3183 - PaperProps: { sx: {
3184 - m: 0,
3185 - maxHeight: "76vh"
3186 - } }
3187 - }, props), props.children);
3188 - };
3189 - PromptDialog.propTypes = {
3190 - onClose: import_prop_types$32.default.func.isRequired,
3191 - children: import_prop_types$32.default.node,
3192 - maxWidth: import_prop_types$32.default.oneOf([
3193 - "xs",
3194 - "sm",
3195 - "md",
3196 - "lg",
3197 - "xl",
3198 - false
3199 - ])
3200 - };
3201 - PromptDialog.Header = DialogHeader$1;
3202 - PromptDialog.Content = _elementor_ui.DialogContent;
3203 - }));
8190 +/***/ }),
3204 8191
3205 -//#endregion
3206 -//#region modules/ai/assets/js/editor/pages/form-layout/components/layout-dialog.js
3207 - function ownKeys$9(e, r) {
3208 - var t = Object.keys(e);
3209 - if (Object.getOwnPropertySymbols) {
3210 - var o = Object.getOwnPropertySymbols(e);
3211 - r && (o = o.filter(function(r) {
3212 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
3213 - })), t.push.apply(t, o);
3214 - }
3215 - return t;
3216 - }
3217 - function _objectSpread$9(e) {
3218 - for (var r = 1; r < arguments.length; r++) {
3219 - var t = null != arguments[r] ? arguments[r] : {};
3220 - r % 2 ? ownKeys$9(Object(t), !0).forEach(function(r) {
3221 - _defineProperty$1(e, r, t[r]);
3222 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function(r) {
3223 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
3224 - });
3225 - }
3226 - return e;
3227 - }
3228 - var import_prop_types$31, _excluded$7, StyledDialog, DialogHeader, StyledDialogContent, LayoutDialog;
3229 - var init_layout_dialog = __esmMin((() => {
3230 - init_extends();
3231 - init_defineProperty$1();
3232 - init_slicedToArray();
3233 - init_objectWithoutProperties$1();
3234 - import_prop_types$31 = /* @__PURE__ */ __toESM(require_prop_types());
3235 - init_prompt_dialog();
3236 - _excluded$7 = ["sx", "PaperProps"];
3237 - __name(ownKeys$9, "ownKeys");
3238 - __name(_objectSpread$9, "_objectSpread");
3239 - StyledDialog = (0, _elementor_ui.styled)(PromptDialog)(function() {
3240 - return {
3241 - "& .MuiDialog-container": {
3242 - marginTop: 0,
3243 - alignItems: "flex-end",
3244 - paddingBottom: "16vh"
3245 - },
3246 - "& .MuiPaper-root": {
3247 - margin: 0,
3248 - maxHeight: "80vh"
3249 - }
3250 - };
3251 - });
3252 - DialogHeader = function DialogHeader(_ref) {
3253 - var onClose = _ref.onClose;
3254 - var children = _ref.children;
3255 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.AppBar, {
3256 - sx: { fontWeight: "normal" },
3257 - color: "transparent",
3258 - position: "relative"
3259 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Toolbar, { variant: "dense" }, /*#__PURE__*/ react.default.createElement(_elementor_icons.AIIcon, { sx: { mr: 1 } }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
3260 - component: "span",
3261 - variant: "subtitle2",
3262 - sx: {
3263 - fontWeight: "bold",
3264 - textTransform: "uppercase"
3265 - }
3266 - }, (0, _wordpress_i18n.__)("AI", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Chip, {
3267 - label: (0, _wordpress_i18n.__)("Beta", "elementor"),
3268 - color: "default",
3269 - size: "small",
3270 - sx: { ml: 1 }
3271 - }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
3272 - direction: "row",
3273 - spacing: 1,
3274 - alignItems: "center",
3275 - sx: { ml: "auto" }
3276 - }, children, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
3277 - size: "small",
3278 - "aria-label": "close",
3279 - onClick: onClose,
3280 - sx: { "&.MuiButtonBase-root": { mr: -1 } }
3281 - }, /*#__PURE__*/ react.default.createElement(_elementor_icons.XIcon, null)))));
3282 - };
3283 - DialogHeader.propTypes = {
3284 - children: import_prop_types$31.default.node,
3285 - onClose: import_prop_types$31.default.func.isRequired
3286 - };
3287 - StyledDialogContent = (0, _elementor_ui.styled)(PromptDialog.Content)(function() {
3288 - return { "&.MuiDialogContent-root": { padding: 0 } };
3289 - });
3290 - LayoutDialog = function LayoutDialog(_ref2) {
3291 - var _ref2$sx = _ref2.sx;
3292 - var sx = _ref2$sx === void 0 ? {} : _ref2$sx;
3293 - var _ref2$PaperProps = _ref2.PaperProps;
3294 - var PaperProps = _ref2$PaperProps === void 0 ? {} : _ref2$PaperProps;
3295 - var props = _objectWithoutProperties$1(_ref2, _excluded$7);
3296 - var _useState2 = _slicedToArray((0, react.useState)({ pointerEvents: "none" }), 2);
3297 - var sxStyle = _useState2[0];
3298 - var setSxStyle = _useState2[1];
3299 - var timeoutRef = (0, react.useRef)(null);
3300 - /**
3301 - * The PromptDialog is using disableScrollLock in order to allow scrolling the page when the Dialog is opened.
3302 - * When using the react-draggable library inside the editor, the background page scroll is not working smoothly.
3303 - * Therefore, we need to delay the pointerEvents: none, which allowing to scroll the page content.
3304 - */
3305 - return /*#__PURE__*/ react.default.createElement(StyledDialog, _extends({
3306 - maxWidth: "md",
3307 - PaperProps: _objectSpread$9({
3308 - sx: { pointerEvents: "auto" },
3309 - onMouseEnter: function onMouseEnter() {
3310 - clearTimeout(timeoutRef.current);
3311 - setSxStyle({ pointerEvents: "all" });
3312 - },
3313 - onMouseLeave: function onMouseLeave() {
3314 - clearTimeout(timeoutRef.current);
3315 - timeoutRef.current = setTimeout(function() {
3316 - setSxStyle({ pointerEvents: "none" });
3317 - }, 200);
3318 - }
3319 - }, PaperProps)
3320 - }, props, { sx: _objectSpread$9(_objectSpread$9({}, sxStyle), sx) }));
3321 - };
3322 - LayoutDialog.propTypes = {
3323 - sx: import_prop_types$31.default.object,
3324 - PaperProps: import_prop_types$31.default.object
3325 - };
3326 - LayoutDialog.Header = DialogHeader;
3327 - LayoutDialog.Content = StyledDialogContent;
3328 - }));
8192 +/***/ "../node_modules/prop-types/checkPropTypes.js":
8193 +/*!****************************************************!*\
8194 + !*** ../node_modules/prop-types/checkPropTypes.js ***!
8195 + \****************************************************/
8196 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3329 8197
3330 -//#endregion
3331 -//#region modules/ai/assets/js/editor/components/prompt-library-link.js
3332 - var import_prop_types$30, PromptLibraryLink;
3333 - var init_prompt_library_link = __esmMin((() => {
3334 - import_prop_types$30 = /* @__PURE__ */ __toESM(require_prop_types());
3335 - PromptLibraryLink = function PromptLibraryLink(props) {
3336 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
3337 - variant: "body2",
3338 - color: "text.secondary"
3339 - }, (0, _wordpress_i18n.__)("For more suggestions, explore our"), " ", /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
3340 - href: props.libraryLink,
3341 - className: "elementor-clickable",
3342 - target: "_blank"
3343 - }, (0, _wordpress_i18n.__)("prompt library")));
3344 - };
3345 - PromptLibraryLink.propTypes = { libraryLink: import_prop_types$30.default.string };
3346 - }));
8198 +"use strict";
8199 +/**
8200 + * Copyright (c) 2013-present, Facebook, Inc.
8201 + *
8202 + * This source code is licensed under the MIT license found in the
8203 + * LICENSE file in the root directory of this source tree.
8204 + */
3347 8205
3348 -//#endregion
3349 -//#region modules/ai/assets/js/editor/pages/form-layout/context/config.js
3350 - var config_exports = /* @__PURE__ */ __exportAll({
3351 - ConfigProvider: () => ConfigProvider,
3352 - LAYOUT_APP_MODES: () => LAYOUT_APP_MODES,
3353 - MODE_LAYOUT: () => MODE_LAYOUT,
3354 - MODE_VARIATION: () => MODE_VARIATION,
3355 - default: () => ConfigContext,
3356 - useConfig: () => useConfig
3357 - });
3358 - var import_prop_types$29, MODE_LAYOUT, MODE_VARIATION, LAYOUT_APP_MODES, ConfigContext, useConfig, ConfigProvider;
3359 - var init_config = __esmMin((() => {
3360 - import_prop_types$29 = /* @__PURE__ */ __toESM(require_prop_types());
3361 - MODE_LAYOUT = "layout";
3362 - MODE_VARIATION = "variation";
3363 - LAYOUT_APP_MODES = [MODE_LAYOUT, MODE_VARIATION];
3364 - ConfigContext = react.default.createContext({});
3365 - useConfig = function useConfig() {
3366 - return react.default.useContext(ConfigContext);
3367 - };
3368 - ConfigProvider = function ConfigProvider(props) {
3369 - return /*#__PURE__*/ react.default.createElement(ConfigContext.Provider, { value: {
3370 - mode: props.mode,
3371 - attachmentsTypes: props.attachmentsTypes,
3372 - onClose: props.onClose,
3373 - onConnect: props.onConnect,
3374 - onData: props.onData,
3375 - onInsert: props.onInsert,
3376 - onSelect: props.onSelect,
3377 - onGenerate: props.onGenerate,
3378 - currentContext: props.currentContext,
3379 - hasPro: props.hasPro
3380 - } }, props.children);
3381 - };
3382 - ConfigProvider.propTypes = {
3383 - mode: import_prop_types$29.default.oneOf(LAYOUT_APP_MODES).isRequired,
3384 - children: import_prop_types$29.default.node.isRequired,
3385 - attachmentsTypes: import_prop_types$29.default.object.isRequired,
3386 - onClose: import_prop_types$29.default.func.isRequired,
3387 - onConnect: import_prop_types$29.default.func.isRequired,
3388 - onData: import_prop_types$29.default.func.isRequired,
3389 - onInsert: import_prop_types$29.default.func.isRequired,
3390 - onSelect: import_prop_types$29.default.func.isRequired,
3391 - onGenerate: import_prop_types$29.default.func.isRequired,
3392 - currentContext: import_prop_types$29.default.object,
3393 - hasPro: import_prop_types$29.default.bool
3394 - };
3395 - }));
3396 8206
3397 -//#endregion
3398 -//#region modules/ai/assets/js/editor/pages/form-layout/components/prompt-autocomplete.js
3399 - function ownKeys$8(e, r) {
3400 - var t = Object.keys(e);
3401 - if (Object.getOwnPropertySymbols) {
3402 - var o = Object.getOwnPropertySymbols(e);
3403 - r && (o = o.filter(function(r) {
3404 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
3405 - })), t.push.apply(t, o);
3406 - }
3407 - return t;
3408 - }
3409 - function _objectSpread$8(e) {
3410 - for (var r = 1; r < arguments.length; r++) {
3411 - var t = null != arguments[r] ? arguments[r] : {};
3412 - r % 2 ? ownKeys$8(Object(t), !0).forEach(function(r) {
3413 - _defineProperty$1(e, r, t[r]);
3414 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function(r) {
3415 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
3416 - });
3417 - }
3418 - return e;
3419 - }
3420 - var import_prop_types$28, _excluded$6, TextInput, PaperComponent, PromptAutocomplete;
3421 - var init_prompt_autocomplete = __esmMin((() => {
3422 - init_slicedToArray();
3423 - init_objectWithoutProperties$1();
3424 - init_extends();
3425 - init_defineProperty$1();
3426 - import_prop_types$28 = /* @__PURE__ */ __toESM(require_prop_types());
3427 - init_prompt_library_link();
3428 - init_config();
3429 - _excluded$6 = ["onSubmit"];
3430 - __name(ownKeys$8, "ownKeys");
3431 - __name(_objectSpread$8, "_objectSpread");
3432 - TextInput = (0, react.forwardRef)(function(props, ref) {
3433 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.TextField, _extends({
3434 - autoFocus: true,
3435 - multiline: true,
3436 - size: "small",
3437 - maxRows: 3,
3438 - color: "secondary",
3439 - variant: "standard"
3440 - }, props, {
3441 - inputRef: ref,
3442 - InputProps: _objectSpread$8(_objectSpread$8({}, props.InputProps), {}, {
3443 - type: "search",
3444 - sx: { pt: 0 }
3445 - })
3446 - }));
3447 - });
3448 - TextInput.propTypes = { InputProps: import_prop_types$28.default.object };
3449 - PaperComponent = function PaperComponent(props) {
3450 - var libraryLink = "variation" === useConfig().mode ? "https://go.elementor.com/ai-prompt-library-variations/" : "https://go.elementor.com/ai-prompt-library-containers/";
3451 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Paper, _extends({}, props, {
3452 - elevation: 8,
3453 - sx: { borderRadius: 2 }
3454 - }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
3455 - component: _elementor_ui.Box,
3456 - color: function color(theme) {
3457 - return theme.palette.text.tertiary;
3458 - },
3459 - variant: "caption",
3460 - paddingX: 2,
3461 - paddingY: 1
3462 - }, (0, _wordpress_i18n.__)("Suggested Prompts", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Divider, null), props.children, /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, { sx: { m: 2 } }, /*#__PURE__*/ react.default.createElement(PromptLibraryLink, { libraryLink })));
3463 - };
3464 - PaperComponent.propTypes = { children: import_prop_types$28.default.node };
3465 - PromptAutocomplete = function PromptAutocomplete(_ref) {
3466 - var onSubmit = _ref.onSubmit;
3467 - var props = _objectWithoutProperties$1(_ref, _excluded$6);
3468 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
3469 - var showSuggestions = _useState2[0];
3470 - var setShowSuggestions = _useState2[1];
3471 - var theme = (0, _elementor_ui.useTheme)();
3472 - var itemHeight = parseInt(theme.spacing(4));
3473 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Autocomplete, _extends({
3474 - PaperComponent,
3475 - ListboxProps: { sx: { maxHeight: 5 * itemHeight } },
3476 - renderOption: function renderOption(optionProps, option) {
3477 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, _extends({}, optionProps, {
3478 - title: option.text,
3479 - noWrap: true,
3480 - variant: "body2",
3481 - component: _elementor_ui.Box,
3482 - sx: { "&.MuiAutocomplete-option": {
3483 - display: "block",
3484 - minHeight: itemHeight
3485 - } }
3486 - }), option.text);
3487 - },
3488 - freeSolo: true,
3489 - fullWidth: true,
3490 - disableClearable: true,
3491 - open: showSuggestions,
3492 - onClose: function onClose(e) {
3493 - var _e$relatedTarget;
3494 - return setShowSuggestions("A" === ((_e$relatedTarget = e.relatedTarget) === null || _e$relatedTarget === void 0 ? void 0 : _e$relatedTarget.tagName));
3495 - },
3496 - onKeyDown: function onKeyDown(e) {
3497 - if ("Enter" === e.key && !e.shiftKey && !showSuggestions) onSubmit(e);
3498 - else if ("/" === e.key && "" === e.target.value) {
3499 - e.preventDefault();
3500 - setShowSuggestions(true);
3501 - }
3502 - }
3503 - }, props));
3504 - };
3505 - PromptAutocomplete.propTypes = { onSubmit: import_prop_types$28.default.func.isRequired };
3506 - PromptAutocomplete.TextInput = TextInput;
3507 - }));
3508 8207
3509 -//#endregion
3510 -//#region modules/ai/assets/js/editor/icons/wand-icon.js
3511 - var WandIcon;
3512 - var init_wand_icon = __esmMin((() => {
3513 - init_extends();
3514 - WandIcon = react.default.forwardRef(function(props, ref) {
3515 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
3516 - fillRule: "evenodd",
3517 - clipRule: "evenodd",
3518 - 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"
3519 - }), /*#__PURE__*/ react.default.createElement("path", {
3520 - fillRule: "evenodd",
3521 - clipRule: "evenodd",
3522 - 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"
3523 - }), /*#__PURE__*/ react.default.createElement("path", {
3524 - fillRule: "evenodd",
3525 - clipRule: "evenodd",
3526 - 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"
3527 - }));
3528 - });
3529 - }));
8208 +var printWarning = function() {};
3530 8209
3531 -//#endregion
3532 -//#region modules/ai/assets/js/editor/pages/form-media/components/enhance-button.js
3533 - var import_prop_types$27, _excluded$5, StyledWandIcon, EnhanceButton;
3534 - var init_enhance_button = __esmMin((() => {
3535 - init_extends();
3536 - init_objectWithoutProperties$1();
3537 - import_prop_types$27 = /* @__PURE__ */ __toESM(require_prop_types());
3538 - init_wand_icon();
3539 - _excluded$5 = ["isLoading"];
3540 - StyledWandIcon = (0, _elementor_ui.withDirection)(WandIcon);
3541 - EnhanceButton = function EnhanceButton(_ref) {
3542 - var isLoading = _ref.isLoading;
3543 - var props = _objectWithoutProperties$1(_ref, _excluded$5);
3544 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Tooltip, { title: (0, _wordpress_i18n.__)("Enhance prompt", "elementor") }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
3545 - component: "span",
3546 - sx: { cursor: props.disabled ? "default" : "pointer" }
3547 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, _extends({
3548 - size: "small",
3549 - color: "secondary"
3550 - }, props), isLoading ? /*#__PURE__*/ react.default.createElement(_elementor_ui.CircularProgress, {
3551 - color: "secondary",
3552 - size: 20
3553 - }) : /*#__PURE__*/ react.default.createElement(StyledWandIcon, { fontSize: "small" }))));
3554 - };
3555 - EnhanceButton.propTypes = {
3556 - disabled: import_prop_types$27.default.bool,
3557 - isLoading: import_prop_types$27.default.bool
3558 - };
3559 - }));
8210 +if (true) {
8211 + var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8212 + var loggedTypeFailures = {};
8213 + var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
3560 8214
3561 -//#endregion
3562 -//#region modules/ai/assets/js/editor/pages/form-media/components/generate-submit.js
3563 - var import_prop_types$26, GenerateSubmit;
3564 - var init_generate_submit = __esmMin((() => {
3565 - init_extends();
3566 - import_prop_types$26 = /* @__PURE__ */ __toESM(require_prop_types());
3567 - GenerateSubmit = function GenerateSubmit(props) {
3568 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, _extends({
3569 - fullWidth: true,
3570 - size: "medium",
3571 - type: "submit",
3572 - variant: "contained"
3573 - }, props), props.children || (0, _wordpress_i18n.__)("Generate", "elementor"));
3574 - };
3575 - GenerateSubmit.propTypes = { children: import_prop_types$26.default.node };
3576 - }));
8215 + printWarning = function(text) {
8216 + var message = 'Warning: ' + text;
8217 + if (typeof console !== 'undefined') {
8218 + console.error(message);
8219 + }
8220 + try {
8221 + // --- Welcome to debugging React ---
8222 + // This error was thrown as a convenience so that you can use this stack
8223 + // to find the callsite that caused this warning to fire.
8224 + throw new Error(message);
8225 + } catch (x) { /**/ }
8226 + };
8227 +}
3577 8228
3578 -//#endregion
3579 -//#region modules/ai/assets/js/editor/icons/arrow-left-icon.js
3580 - var ArrowLeftIcon;
3581 - var init_arrow_left_icon = __esmMin((() => {
3582 - init_extends();
3583 - ArrowLeftIcon = react.default.forwardRef(function(props, ref) {
3584 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
3585 - fillRule: "evenodd",
3586 - clipRule: "evenodd",
3587 - 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"
3588 - }));
3589 - });
3590 - }));
8229 +/**
8230 + * Assert that the values match with the type specs.
8231 + * Error messages are memorized and will only be shown once.
8232 + *
8233 + * @param {object} typeSpecs Map of name to a ReactPropType
8234 + * @param {object} values Runtime values that need to be type-checked
8235 + * @param {string} location e.g. "prop", "context", "child context"
8236 + * @param {string} componentName Name of the component for error messages.
8237 + * @param {?Function} getStack Returns the component stack.
8238 + * @private
8239 + */
8240 +function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
8241 + if (true) {
8242 + for (var typeSpecName in typeSpecs) {
8243 + if (has(typeSpecs, typeSpecName)) {
8244 + var error;
8245 + // Prop type validation may throw. In case they do, we don't want to
8246 + // fail the render phase where it didn't fail before. So we log it.
8247 + // After these have been cleaned up, we'll let them throw.
8248 + try {
8249 + // This is intentionally an invariant that gets caught. It's the same
8250 + // behavior as without this statement except with a better message.
8251 + if (typeof typeSpecs[typeSpecName] !== 'function') {
8252 + var err = Error(
8253 + (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
8254 + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +
8255 + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'
8256 + );
8257 + err.name = 'Invariant Violation';
8258 + throw err;
8259 + }
8260 + error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
8261 + } catch (ex) {
8262 + error = ex;
8263 + }
8264 + if (error && !(error instanceof Error)) {
8265 + printWarning(
8266 + (componentName || 'React class') + ': type specification of ' +
8267 + location + ' `' + typeSpecName + '` is invalid; the type checker ' +
8268 + 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
8269 + 'You may have forgotten to pass an argument to the type checker ' +
8270 + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
8271 + 'shape all require an argument).'
8272 + );
8273 + }
8274 + if (error instanceof Error && !(error.message in loggedTypeFailures)) {
8275 + // Only monitor this failure once because there tends to be a lot of the
8276 + // same error.
8277 + loggedTypeFailures[error.message] = true;
3591 8278
3592 -//#endregion
3593 -//#region modules/ai/assets/js/editor/icons/edit-icon.js
3594 - var EditIcon;
3595 - var init_edit_icon = __esmMin((() => {
3596 - init_extends();
3597 - EditIcon = react.default.forwardRef(function(props, ref) {
3598 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
3599 - fillRule: "evenodd",
3600 - clipRule: "evenodd",
3601 - 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"
3602 - }), /*#__PURE__*/ react.default.createElement("path", {
3603 - fillRule: "evenodd",
3604 - clipRule: "evenodd",
3605 - 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"
3606 - }));
3607 - });
3608 - }));
8279 + var stack = getStack ? getStack() : '';
3609 8280
3610 -//#endregion
3611 -//#region modules/ai/assets/js/editor/api/index.js
3612 - var request, getUserInformation, getRemoteConfig, setGetStarted, setStatusFeedback, getImagePromptEnhanced, generateLayout, getLayoutPromptEnhanced;
3613 - var init_api = __esmMin((() => {
3614 - request = function request(endpoint) {
3615 - var data = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
3616 - var immediately = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false;
3617 - var signal = arguments.length > 3 ? arguments[3] : void 0;
3618 - if (Object.keys(data).length) if (window.elementorAiCurrentContext) data.context = window.elementorAiCurrentContext;
3619 - else data.context = window.elementorWpAiCurrentContext;
3620 - return new Promise(function(resolve, reject) {
3621 - var ajaxData = elementorCommon.ajax.addRequest(endpoint, {
3622 - success: resolve,
3623 - error: reject,
3624 - data,
3625 - unique_id: data.unique_id
3626 - }, immediately);
3627 - if (signal && ajaxData.jqXhr) signal.addEventListener("abort", ajaxData.jqXhr.abort);
3628 - });
3629 - };
3630 - getUserInformation = function getUserInformation(immediately) {
3631 - return request("ai_get_user_information", void 0, immediately);
3632 - };
3633 - getRemoteConfig = function getRemoteConfig() {
3634 - return request("ai_get_remote_config");
3635 - };
3636 - setGetStarted = function setGetStarted() {
3637 - return request("ai_set_get_started");
3638 - };
3639 - setStatusFeedback = function setStatusFeedback(responseId) {
3640 - return request("ai_set_status_feedback", { response_id: responseId }, true);
3641 - };
3642 - getImagePromptEnhanced = function getImagePromptEnhanced(prompt) {
3643 - return request("ai_get_image_prompt_enhancer", { prompt });
3644 - };
3645 - generateLayout = function generateLayout(requestBody, signal) {
3646 - return request("ai_generate_layout", requestBody, true, signal);
3647 - };
3648 - getLayoutPromptEnhanced = function getLayoutPromptEnhanced(prompt, enhanceType) {
3649 - return request("ai_get_layout_prompt_enhancer", {
3650 - prompt,
3651 - enhance_type: enhanceType
3652 - });
3653 - };
3654 - }));
8281 + printWarning(
8282 + 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
8283 + );
8284 + }
8285 + }
8286 + }
8287 + }
8288 +}
3655 8289
3656 -//#endregion
3657 -//#region modules/ai/assets/js/editor/context/requests-ids.js
3658 - function generateIds(template) {
3659 - var _template$elements;
3660 - template.id = getUniqueId().toString();
3661 - if ((_template$elements = template.elements) !== null && _template$elements !== void 0 && _template$elements.length) template.elements.map(function(child) {
3662 - return generateIds(child);
3663 - });
3664 - return template;
3665 - }
3666 - var import_prop_types$25, Context, useRequestIds, getUniqueId, RequestIdsProvider;
3667 - var init_requests_ids = __esmMin((() => {
3668 - init_slicedToArray();
3669 - import_prop_types$25 = /* @__PURE__ */ __toESM(require_prop_types());
3670 - Context = (0, react.createContext)({});
3671 - useRequestIds = function useRequestIds() {
3672 - var context = (0, react.useContext)(Context);
3673 - if (!context) throw new Error("useRequestIds must be used within a RequestIdsProvider");
3674 - return context;
3675 - };
3676 - getUniqueId = function getUniqueId(prefix) {
3677 - return prefix + "-" + Math.random().toString(16).substr(2, 7);
3678 - };
3679 - window.EDITOR_SESSION_ID = window.EDITOR_SESSION_ID || getUniqueId("editor-session");
3680 - RequestIdsProvider = function RequestIdsProvider(props) {
3681 - var editorSessionId = (0, react.useRef)(window.EDITOR_SESSION_ID);
3682 - var sessionId = (0, react.useRef)("");
3683 - var generateId = (0, react.useRef)("");
3684 - var batchId = (0, react.useRef)("");
3685 - var requestId = (0, react.useRef)("");
3686 - sessionId.current = getUniqueId("session");
3687 - var setGenerate = function setGenerate() {
3688 - generateId.current = getUniqueId("generate");
3689 - return generateId;
3690 - };
3691 - var setBatch = function setBatch() {
3692 - batchId.current = getUniqueId("batch");
3693 - return batchId;
3694 - };
3695 - var setRequest = function setRequest() {
3696 - requestId.current = getUniqueId("request");
3697 - return requestId;
3698 - };
3699 - var _useState2 = _slicedToArray((0, react.useState)(0), 2);
3700 - var usagePercentage = _useState2[0];
3701 - var setUsagePercentage = _useState2[1];
3702 - return /*#__PURE__*/ react.default.createElement(Context.Provider, { value: {
3703 - editorSessionId,
3704 - sessionId,
3705 - generateId,
3706 - batchId,
3707 - requestId,
3708 - setGenerate,
3709 - setBatch,
3710 - setRequest,
3711 - usagePercentage,
3712 - updateUsagePercentage: function updateUsagePercentage(newPercentage) {
3713 - setUsagePercentage(newPercentage);
3714 - }
3715 - } }, props.children);
3716 - };
3717 - RequestIdsProvider.propTypes = { children: import_prop_types$25.default.node.isRequired };
3718 - }));
8290 +/**
8291 + * Resets warning cache when testing.
8292 + *
8293 + * @private
8294 + */
8295 +checkPropTypes.resetWarningCache = function() {
8296 + if (true) {
8297 + loggedTypeFailures = {};
8298 + }
8299 +}
3719 8300
3720 -//#endregion
3721 -//#region modules/ai/assets/js/editor/hooks/use-prompt.js
3722 - function ownKeys$7(e, r) {
3723 - var t = Object.keys(e);
3724 - if (Object.getOwnPropertySymbols) {
3725 - var o = Object.getOwnPropertySymbols(e);
3726 - r && (o = o.filter(function(r) {
3727 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
3728 - })), t.push.apply(t, o);
3729 - }
3730 - return t;
3731 - }
3732 - function _objectSpread$7(e) {
3733 - for (var r = 1; r < arguments.length; r++) {
3734 - var t = null != arguments[r] ? arguments[r] : {};
3735 - r % 2 ? ownKeys$7(Object(t), !0).forEach(function(r) {
3736 - _defineProperty$1(e, r, t[r]);
3737 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function(r) {
3738 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
3739 - });
3740 - }
3741 - return e;
3742 - }
3743 - var import_regenerator$8, _excluded$4, normalizeResponse, usePrompt;
3744 - var init_use_prompt = __esmMin((() => {
3745 - init_defineProperty$1();
3746 - init_slicedToArray();
3747 - init_objectWithoutProperties$1();
3748 - import_regenerator$8 = /* @__PURE__ */ __toESM(require_regenerator());
3749 - init_api();
3750 - init_requests_ids();
3751 - _excluded$4 = [
3752 - "text",
3753 - "response_id",
3754 - "usage",
3755 - "images"
3756 - ];
3757 - __name(ownKeys$7, "ownKeys");
3758 - __name(_objectSpread$7, "_objectSpread");
3759 - normalizeResponse = function normalizeResponse(_ref) {
3760 - var text = _ref.text;
3761 - var responseId = _ref.response_id;
3762 - var usage = _ref.usage;
3763 - var images = _ref.images;
3764 - var optional = _objectWithoutProperties$1(_ref, _excluded$4);
3765 - var creditsData = usage ? usage.quota - usage.usedQuota : 0;
3766 - var normalized = {
3767 - result: text || images,
3768 - responseId,
3769 - credits: Math.max(creditsData, 0),
3770 - usagePercentage: usage === null || usage === void 0 ? void 0 : usage.usagePercentage
3771 - };
3772 - if (optional.base_template_id) normalized.baseTemplateId = optional.base_template_id;
3773 - normalized.type = optional.template_type;
3774 - return normalized;
3775 - };
3776 - usePrompt = function usePrompt(fetchData, initialState) {
3777 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
3778 - var isLoading = _useState2[0];
3779 - var setIsLoading = _useState2[1];
3780 - var _useState4 = _slicedToArray((0, react.useState)(""), 2);
3781 - var error = _useState4[0];
3782 - var setError = _useState4[1];
3783 - var _useState6 = _slicedToArray((0, react.useState)(initialState), 2);
3784 - var data = _useState6[0];
3785 - var setData = _useState6[1];
3786 - var _useRequestIds = useRequestIds();
3787 - var updateUsagePercentage = _useRequestIds.updateUsagePercentage;
3788 - var usagePercentage = _useRequestIds.usagePercentage;
3789 - var send = (0, react.useRef)(/*#__PURE__*/ function() {
3790 - var _ref2 = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$8.default.mark(function _callee(payload) {
3791 - return import_regenerator$8.default.wrap(function(_context) {
3792 - while (1) switch (_context.prev = _context.next) {
3793 - case 0: return _context.abrupt("return", payload);
3794 - case 1:
3795 - case "end": return _context.stop();
3796 - }
3797 - }, _callee);
3798 - }));
3799 - return function(_x) {
3800 - return _ref2.apply(this, arguments);
3801 - };
3802 - }());
3803 - var sendUsageData = (0, react.useRef)(function() {});
3804 - (0, react.useEffect)(function() {
3805 - var newUsageValue = data === null || data === void 0 ? void 0 : data.usagePercentage;
3806 - if (newUsageValue && newUsageValue !== usagePercentage) updateUsagePercentage(newUsageValue);
3807 - }, [
3808 - data,
3809 - usagePercentage,
3810 - updateUsagePercentage
3811 - ]);
3812 - var _useRequestIds2 = useRequestIds();
3813 - var setRequest = _useRequestIds2.setRequest;
3814 - var editorSessionId = _useRequestIds2.editorSessionId;
3815 - var sessionId = _useRequestIds2.sessionId;
3816 - var generateId = _useRequestIds2.generateId;
3817 - var batchId = _useRequestIds2.batchId;
3818 - send.current = (0, react.useCallback)(/*#__PURE__*/ function() {
3819 - var _ref3 = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$8.default.mark(function _callee2(payload) {
3820 - return import_regenerator$8.default.wrap(function(_context2) {
3821 - while (1) switch (_context2.prev = _context2.next) {
3822 - case 0: return _context2.abrupt("return", new Promise(function(resolve, reject) {
3823 - setError("");
3824 - setIsLoading(true);
3825 - var requestId = setRequest();
3826 - var requestIds = {
3827 - editorSessionId: editorSessionId.current,
3828 - sessionId: sessionId.current,
3829 - generateId: generateId.current,
3830 - batchId: batchId.current,
3831 - requestId: requestId.current
3832 - };
3833 - payload = _objectSpread$7(_objectSpread$7({}, payload), {}, { requestIds });
3834 - fetchData(payload).then(function(result) {
3835 - var normalizedData = normalizeResponse(result);
3836 - setData(normalizedData);
3837 - resolve(normalizedData);
3838 - }).catch(function(err) {
3839 - var finalError = (err === null || err === void 0 ? void 0 : err.responseText) || err;
3840 - setError(finalError);
3841 - reject(finalError);
3842 - }).finally(function() {
3843 - return setIsLoading(false);
3844 - });
3845 - }));
3846 - case 1:
3847 - case "end": return _context2.stop();
3848 - }
3849 - }, _callee2);
3850 - }));
3851 - return function(_x2) {
3852 - return _ref3.apply(this, arguments);
3853 - };
3854 - }(), [
3855 - batchId,
3856 - editorSessionId,
3857 - fetchData,
3858 - generateId,
3859 - sessionId,
3860 - setRequest
3861 - ]);
3862 - sendUsageData.current = (0, react.useCallback)(function() {
3863 - var usageData = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : data;
3864 - return usageData.responseId && setStatusFeedback(usageData.responseId);
3865 - }, [data]);
3866 - return {
3867 - isLoading,
3868 - error,
3869 - data,
3870 - setResult: function setResult(result) {
3871 - var responseId = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
3872 - var updatedResult = _objectSpread$7({}, data);
3873 - updatedResult.result = result;
3874 - if (responseId) updatedResult.responseId = responseId;
3875 - setData(updatedResult);
3876 - },
3877 - reset: function reset() {
3878 - setData(function(_ref4) {
3879 - return {
3880 - credits: _ref4.credits,
3881 - result: "",
3882 - responseId: ""
3883 - };
3884 - });
3885 - setError("");
3886 - setIsLoading(false);
3887 - },
3888 - send: send.current,
3889 - sendUsageData: sendUsageData.current
3890 - };
3891 - };
3892 - }));
8301 +module.exports = checkPropTypes;
3893 8302
3894 -//#endregion
3895 -//#region modules/ai/assets/js/editor/hooks/use-prompt-enhancer.js
3896 - var enhancePromptMap, getResult, usePromptEnhancer;
3897 - var init_use_prompt_enhancer = __esmMin((() => {
3898 - init_api();
3899 - init_use_prompt();
3900 - init_config();
3901 - enhancePromptMap = /* @__PURE__ */ new Map([["media", getImagePromptEnhanced], ["layout", getLayoutPromptEnhanced]]);
3902 - getResult = function getResult(prompt, type, enhanceType) {
3903 - if (!enhancePromptMap.has(type)) throw new Error("Invalid prompt type: ".concat(type));
3904 - return enhancePromptMap.get(type)(prompt, enhanceType);
3905 - };
3906 - usePromptEnhancer = function usePromptEnhancer(prompt, type) {
3907 - var mode = useConfig().mode;
3908 - var _usePrompt = usePrompt(function() {
3909 - return getResult(prompt, type, mode);
3910 - }, prompt);
3911 - var enhancedData = _usePrompt.data;
3912 - var isEnhancing = _usePrompt.isLoading;
3913 - return {
3914 - enhance: _usePrompt.send,
3915 - isEnhancing,
3916 - enhancedPrompt: enhancedData === null || enhancedData === void 0 ? void 0 : enhancedData.result
3917 - };
3918 - };
3919 - }));
3920 8303
3921 -//#endregion
3922 -//#region modules/ai/assets/js/editor/icons/x-circle-icon.js
3923 - var XCircleIcon;
3924 - var init_x_circle_icon = __esmMin((() => {
3925 - init_extends();
3926 - XCircleIcon = react.default.forwardRef(function(props, ref) {
3927 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", { 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" }));
3928 - });
3929 - }));
8304 +/***/ }),
3930 8305
3931 -//#endregion
3932 -//#region modules/ai/assets/js/editor/icons/plus-circle-icon.js
3933 - var PlusCircleIcon;
3934 - var init_plus_circle_icon = __esmMin((() => {
3935 - init_extends();
3936 - PlusCircleIcon = react.default.forwardRef(function(props, ref) {
3937 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", { 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" }));
3938 - });
3939 - }));
8306 +/***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
8307 +/*!*************************************************************!*\
8308 + !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
8309 + \*************************************************************/
8310 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3940 8311
3941 -//#endregion
3942 -//#region modules/ai/assets/js/editor/components/alert-dialog.js
3943 - var import_prop_types$24, AlertDialog;
3944 - var init_alert_dialog = __esmMin((() => {
3945 - init_slicedToArray();
3946 - import_prop_types$24 = /* @__PURE__ */ __toESM(require_prop_types());
3947 - AlertDialog = function AlertDialog(props) {
3948 - var _useState2 = _slicedToArray((0, react.useState)(true), 2);
3949 - var isShown = _useState2[0];
3950 - var setIsShown = _useState2[1];
3951 - if (!isShown) return null;
3952 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Dialog, {
3953 - open: true,
3954 - maxWidth: "lg"
3955 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogContent, { sx: { padding: 0 } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { sx: {
3956 - textAlign: "center",
3957 - padding: 3
3958 - } }, props.message), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
3959 - alignItems: "center",
3960 - spacing: 2,
3961 - marginBottom: 2
3962 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
3963 - variant: "contained",
3964 - type: "button",
3965 - color: "primary",
3966 - onClick: function onClick() {
3967 - var _props$onClose;
3968 - setIsShown(false);
3969 - (_props$onClose = props.onClose) === null || _props$onClose === void 0 || _props$onClose.call(props);
3970 - }
3971 - }, (0, _wordpress_i18n.__)("Close", "elementor")))));
3972 - };
3973 - AlertDialog.propTypes = {
3974 - message: import_prop_types$24.default.string.isRequired,
3975 - onClose: import_prop_types$24.default.func
3976 - };
3977 - }));
8312 +"use strict";
8313 +/**
8314 + * Copyright (c) 2013-present, Facebook, Inc.
8315 + *
8316 + * This source code is licensed under the MIT license found in the
8317 + * LICENSE file in the root directory of this source tree.
8318 + */
3978 8319
3979 -//#endregion
3980 -//#region modules/ai/assets/js/editor/hooks/use-timeout.js
3981 - var useTimeout;
3982 - var init_use_timeout = __esmMin((() => {
3983 - init_slicedToArray();
3984 - useTimeout = function useTimeout(delay) {
3985 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
3986 - var isTimeout = _useState2[0];
3987 - var setIsTimeout = _useState2[1];
3988 - var timeoutIdRef = (0, react.useRef)(null);
3989 - var turnOffTimeout = function turnOffTimeout() {
3990 - clearTimeout(timeoutIdRef.current);
3991 - setIsTimeout(false);
3992 - };
3993 - (0, react.useEffect)(function() {
3994 - timeoutIdRef.current = setTimeout(function() {
3995 - setIsTimeout(true);
3996 - }, delay);
3997 - return function() {
3998 - clearTimeout(timeoutIdRef.current);
3999 - };
4000 - }, [delay]);
4001 - return [isTimeout, turnOffTimeout];
4002 - };
4003 - }));
4004 8320
4005 -//#endregion
4006 -//#region modules/ai/assets/js/editor/pages/form-layout/context/remote-config.js
4007 - var import_regenerator$7, import_prop_types$23, RemoteConfigContext, useRemoteConfig, CONFIG_KEYS, RemoteConfigProvider;
4008 - var init_remote_config = __esmMin((() => {
4009 - init_asyncToGenerator$1();
4010 - init_slicedToArray();
4011 - import_regenerator$7 = /* @__PURE__ */ __toESM(require_regenerator());
4012 - import_prop_types$23 = /* @__PURE__ */ __toESM(require_prop_types());
4013 - init_api();
4014 - RemoteConfigContext = react.default.createContext({});
4015 - useRemoteConfig = function useRemoteConfig() {
4016 - return react.default.useContext(RemoteConfigContext);
4017 - };
4018 - CONFIG_KEYS = {
4019 - WEB_BASED_BUILDER_URL: "webBasedBuilderUrl",
4020 - AUTH_TOKEN: "jwt"
4021 - };
4022 - RemoteConfigProvider = function RemoteConfigProvider(props) {
4023 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
4024 - var isLoading = _useState2[0];
4025 - var setIsLoading = _useState2[1];
4026 - var _useState4 = _slicedToArray((0, react.useState)(false), 2);
4027 - var isLoaded = _useState4[0];
4028 - var setIsLoaded = _useState4[1];
4029 - var _useState6 = _slicedToArray((0, react.useState)(false), 2);
4030 - var isError = _useState6[0];
4031 - var setIsError = _useState6[1];
4032 - var _useState8 = _slicedToArray((0, react.useState)({}), 2);
4033 - var remoteConfig = _useState8[0];
4034 - var setRemoteConfig = _useState8[1];
4035 - var fetchData = /*#__PURE__*/ function() {
4036 - var _ref = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$7.default.mark(function _callee() {
4037 - var result;
4038 - return import_regenerator$7.default.wrap(function(_context) {
4039 - while (1) switch (_context.prev = _context.next) {
4040 - case 0:
4041 - setIsLoading(true);
4042 - setIsError(false);
4043 - _context.prev = 1;
4044 - _context.next = 2;
4045 - return getRemoteConfig().finally(function() {
4046 - setIsLoaded(true);
4047 - setIsLoading(false);
4048 - });
4049 - case 2:
4050 - result = _context.sent;
4051 - if (result.config) {
4052 - _context.next = 3;
4053 - break;
4054 - }
4055 - throw new Error("Invalid remote config");
4056 - case 3:
4057 - setRemoteConfig(result.config);
4058 - _context.next = 5;
4059 - break;
4060 - case 4:
4061 - _context.prev = 4;
4062 - _context["catch"](1);
4063 - setIsError(true);
4064 - setIsLoaded(true);
4065 - setIsLoading(false);
4066 - case 5:
4067 - case "end": return _context.stop();
4068 - }
4069 - }, _callee, null, [[1, 4]]);
4070 - }));
4071 - return function fetchData() {
4072 - return _ref.apply(this, arguments);
4073 - };
4074 - }();
4075 - (0, react.useEffect)(function() {
4076 - window.addEventListener("elementor/connect/success", fetchData);
4077 - return function() {
4078 - window.removeEventListener("elementor/connect/success", fetchData);
4079 - };
4080 - }, []);
4081 - if (!isLoaded && !isLoading) fetchData();
4082 - return /*#__PURE__*/ react.default.createElement(RemoteConfigContext.Provider, { value: {
4083 - isLoading,
4084 - isLoaded,
4085 - isError,
4086 - remoteConfig
4087 - } }, props.children);
4088 - };
4089 - RemoteConfigProvider.propTypes = {
4090 - children: import_prop_types$23.default.node.isRequired,
4091 - onError: import_prop_types$23.default.func.isRequired
4092 - };
4093 - }));
4094 8321
4095 -//#endregion
4096 -//#region modules/ai/assets/js/editor/hooks/use-user-info.js
4097 - function ownKeys$6(e, r) {
4098 - var t = Object.keys(e);
4099 - if (Object.getOwnPropertySymbols) {
4100 - var o = Object.getOwnPropertySymbols(e);
4101 - r && (o = o.filter(function(r) {
4102 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
4103 - })), t.push.apply(t, o);
4104 - }
4105 - return t;
4106 - }
4107 - function _objectSpread$6(e) {
4108 - for (var r = 1; r < arguments.length; r++) {
4109 - var t = null != arguments[r] ? arguments[r] : {};
4110 - r % 2 ? ownKeys$6(Object(t), !0).forEach(function(r) {
4111 - _defineProperty$1(e, r, t[r]);
4112 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function(r) {
4113 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
4114 - });
4115 - }
4116 - return e;
4117 - }
4118 - var import_regenerator$6, import_prop_types$22, useUserInfo;
4119 - var init_use_user_info = __esmMin((() => {
4120 - init_defineProperty$1();
4121 - init_asyncToGenerator$1();
4122 - init_slicedToArray();
4123 - import_regenerator$6 = /* @__PURE__ */ __toESM(require_regenerator());
4124 - init_api();
4125 - import_prop_types$22 = /* @__PURE__ */ __toESM(require_prop_types());
4126 - __name(ownKeys$6, "ownKeys");
4127 - __name(_objectSpread$6, "_objectSpread");
4128 - useUserInfo = function useUserInfo() {
4129 - var immediately = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : false;
4130 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
4131 - var isLoaded = _useState2[0];
4132 - var setIsLoaded = _useState2[1];
4133 - var _useState4 = _slicedToArray((0, react.useState)(false), 2);
4134 - var isLoading = _useState4[0];
4135 - var setIsLoading = _useState4[1];
4136 - var _useState6 = _slicedToArray((0, react.useState)({
4137 - is_connected: false,
4138 - is_get_started: false,
4139 - connect_url: "",
4140 - usage: {
4141 - hasAiSubscription: false,
4142 - quota: 0,
4143 - usedQuota: 0
4144 - }
4145 - }), 2);
4146 - var userInfo = _useState6[0];
4147 - var setUserInfo = _useState6[1];
4148 - var credits = userInfo.usage.quota - userInfo.usage.usedQuota;
4149 - var usagePercentage = userInfo.usage.quota ? userInfo.usage.usedQuota / userInfo.usage.quota * 100 : 0;
4150 - var fetchData = /*#__PURE__*/ function() {
4151 - var _ref = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$6.default.mark(function _callee() {
4152 - var userInfoResult;
4153 - return import_regenerator$6.default.wrap(function(_context) {
4154 - while (1) switch (_context.prev = _context.next) {
4155 - case 0:
4156 - setIsLoading(true);
4157 - _context.next = 1;
4158 - return getUserInformation(immediately);
4159 - case 1:
4160 - userInfoResult = _context.sent;
4161 - setUserInfo(function(prevState) {
4162 - return _objectSpread$6(_objectSpread$6({}, prevState), userInfoResult);
4163 - });
4164 - setIsLoaded(true);
4165 - setIsLoading(false);
4166 - case 2:
4167 - case "end": return _context.stop();
4168 - }
4169 - }, _callee);
4170 - }));
4171 - return function fetchData() {
4172 - return _ref.apply(this, arguments);
4173 - };
4174 - }();
4175 - if (!isLoaded && !isLoading) fetchData();
4176 - return {
4177 - isLoading,
4178 - isLoaded,
4179 - isConnected: userInfo.is_connected,
4180 - isGetStarted: userInfo.is_get_started,
4181 - connectUrl: userInfo.connect_url,
4182 - builderUrl: userInfo.usage.builderUrl,
4183 - hasSubscription: userInfo.usage.hasAiSubscription,
4184 - credits: credits < 0 ? 0 : credits,
4185 - usagePercentage: Math.round(usagePercentage),
4186 - fetchData
4187 - };
4188 - };
4189 - useUserInfo.propTypes = { immediately: import_prop_types$22.default.bool };
4190 - }));
8322 +var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
8323 +var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");
4191 8324
4192 -//#endregion
4193 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/url-dialog.js
4194 - var import_prop_types$21, UrlDialog;
4195 - var init_url_dialog = __esmMin((() => {
4196 - init_slicedToArray();
4197 - import_prop_types$21 = /* @__PURE__ */ __toESM(require_prop_types());
4198 - init_alert_dialog();
4199 - init_use_timeout();
4200 - init_attachments();
4201 - init_remote_config();
4202 - init_use_user_info();
4203 - init_requests_ids();
4204 - UrlDialog = function UrlDialog(props) {
4205 - var _useTimeout2 = _slicedToArray(useTimeout(1e4), 2);
4206 - var isTimeout = _useTimeout2[0];
4207 - var turnOffTimeout = _useTimeout2[1];
4208 - var _useUserInfo = useUserInfo();
4209 - var isLoading = _useUserInfo.isLoading;
4210 - var initialUsagePercentage = _useUserInfo.usagePercentage;
4211 - var updateUsagePercentage = useRequestIds().updateUsagePercentage;
4212 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
4213 - var isInitUsageDone = _useState2[0];
4214 - var setIsInitUsageDone = _useState2[1];
4215 - var builderUrl = useRemoteConfig().remoteConfig[CONFIG_KEYS.WEB_BASED_BUILDER_URL];
4216 - var iframeOrigin = (builderUrl ? new URL(builderUrl) : {}).origin;
4217 - var isOpen = (0, react.useRef)(false);
4218 - (0, react.useEffect)(function() {
4219 - if (!isInitUsageDone && !isLoading && (initialUsagePercentage || 0 === initialUsagePercentage)) {
4220 - updateUsagePercentage(initialUsagePercentage);
4221 - setIsInitUsageDone(true);
4222 - }
4223 - }, [
4224 - isLoading,
4225 - initialUsagePercentage,
4226 - isInitUsageDone,
4227 - updateUsagePercentage
4228 - ]);
4229 - (0, react.useEffect)(function() {
4230 - if (!isOpen.current) try {
4231 - window.$e.run("ai-integration/open-choose-element", { url: props.url });
4232 - isOpen.current = true;
4233 - } catch (error) {
4234 - console.error(error);
4235 - }
4236 - }, [isOpen.current]);
4237 - (0, react.useEffect)(function() {
4238 - var onMessage = function onMessage(event) {
4239 - if (event.origin !== iframeOrigin) return;
4240 - var _event$data = event.data;
4241 - var type = _event$data.type;
4242 - var html = _event$data.html;
4243 - var url = _event$data.url;
4244 - switch (type) {
4245 - case "element-selector/close":
4246 - isOpen.current = false;
4247 - props.onClose();
4248 - break;
4249 - case "element-selector/loaded":
4250 - turnOffTimeout();
4251 - isOpen.current = true;
4252 - break;
4253 - case "element-selector/attach":
4254 - props.onAttach([{
4255 - type: "url",
4256 - previewHTML: html,
4257 - content: html,
4258 - label: url ? new URL(url).href : "",
4259 - source: USER_URL_SOURCE
4260 - }]);
4261 - break;
4262 - }
4263 - };
4264 - window.addEventListener("message", onMessage);
4265 - return function() {
4266 - window.removeEventListener("message", onMessage);
4267 - };
4268 - }, [
4269 - iframeOrigin,
4270 - props,
4271 - turnOffTimeout
4272 - ]);
4273 - return /*#__PURE__*/ react.default.createElement(react.default.Fragment, null, !isOpen.current && !isTimeout && /*#__PURE__*/ react.default.createElement(_elementor_ui.Dialog, {
4274 - open: true,
4275 - maxWidth: "lg"
4276 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { sx: {
4277 - textAlign: "center",
4278 - padding: 3
4279 - } }, (0, _wordpress_i18n.__)("Loading...", "elementor"))), isTimeout && /*#__PURE__*/ react.default.createElement(AlertDialog, {
4280 - message: (0, _wordpress_i18n.__)("The app is not responding. Please try again later. (#408)", "elementor"),
4281 - onClose: props.onClose
4282 - }));
4283 - };
4284 - UrlDialog.propTypes = {
4285 - onAttach: import_prop_types$21.default.func.isRequired,
4286 - onClose: import_prop_types$21.default.func.isRequired,
4287 - url: import_prop_types$21.default.string
4288 - };
4289 - }));
8325 +var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
8326 +var has = __webpack_require__(/*! ./lib/has */ "../node_modules/prop-types/lib/has.js");
8327 +var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");
4290 8328
4291 -//#endregion
4292 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/library-dialog.js
4293 - var import_prop_types$20, LibraryDialog;
4294 - var init_library_dialog = __esmMin((() => {
4295 - import_prop_types$20 = /* @__PURE__ */ __toESM(require_prop_types());
4296 - init_attachments();
4297 - LibraryDialog = function LibraryDialog(props) {
4298 - var isApplyingTemplate = (0, react.useRef)(false);
4299 - (0, react.useEffect)(function() {
4300 - var onLibraryHide = function onLibraryHide() {
4301 - if (isApplyingTemplate.current) return;
4302 - props.onClose();
4303 - };
4304 - $e.components.get("library").layout.getModal().on("hide", onLibraryHide);
4305 - return function() {
4306 - $e.components.get("library").layout.getModal().off("hide", onLibraryHide);
4307 - };
4308 - }, [props]);
4309 - (0, react.useEffect)(function() {
4310 - var onMessage = function onMessage(event) {
4311 - var _event$data = event.data;
4312 - var type = _event$data.type;
4313 - var json = _event$data.json;
4314 - var html = _event$data.html;
4315 - var label = _event$data.label;
4316 - var source = _event$data.source;
4317 - switch (type) {
4318 - case "library/attach:start":
4319 - isApplyingTemplate.current = true;
4320 - break;
4321 - case "library/attach":
4322 - props.onAttach([{
4323 - type: ATTACHMENT_TYPE_JSON,
4324 - previewHTML: html,
4325 - content: json,
4326 - label,
4327 - source
4328 - }]);
4329 - isApplyingTemplate.current = false;
4330 - props.onClose();
4331 - break;
4332 - }
4333 - };
4334 - window.addEventListener("message", onMessage);
4335 - return function() {
4336 - window.removeEventListener("message", onMessage);
4337 - };
4338 - });
4339 - $e.run("library/open", {
4340 - toDefault: true,
4341 - mode: "ai-attachment"
4342 - });
4343 - isApplyingTemplate.current = false;
4344 - return null;
4345 - };
4346 - LibraryDialog.propTypes = {
4347 - onAttach: import_prop_types$20.default.func.isRequired,
4348 - onClose: import_prop_types$20.default.func.isRequired
4349 - };
4350 - }));
8329 +var printWarning = function() {};
4351 8330
4352 -//#endregion
4353 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/attach-dialog.js
4354 - var import_prop_types$19, AttachDialog;
4355 - var init_attach_dialog = __esmMin((() => {
4356 - init_url_dialog();
4357 - import_prop_types$19 = /* @__PURE__ */ __toESM(require_prop_types());
4358 - init_library_dialog();
4359 - init_attachments();
4360 - AttachDialog = function AttachDialog(props) {
4361 - var type = props.type;
4362 - var url = props.url;
4363 - switch (type) {
4364 - case "url": return /*#__PURE__*/ react.default.createElement(UrlDialog, {
4365 - url,
4366 - onAttach: props.onAttach,
4367 - onClose: props.onClose
4368 - });
4369 - case MENU_TYPE_LIBRARY: return /*#__PURE__*/ react.default.createElement(LibraryDialog, {
4370 - onAttach: props.onAttach,
4371 - onClose: props.onClose
4372 - });
4373 - }
4374 - return null;
4375 - };
4376 - AttachDialog.propTypes = {
4377 - type: import_prop_types$19.default.string,
4378 - onAttach: import_prop_types$19.default.func,
4379 - onClose: import_prop_types$19.default.func,
4380 - url: import_prop_types$19.default.string
4381 - };
4382 - }));
8331 +if (true) {
8332 + printWarning = function(text) {
8333 + var message = 'Warning: ' + text;
8334 + if (typeof console !== 'undefined') {
8335 + console.error(message);
8336 + }
8337 + try {
8338 + // --- Welcome to debugging React ---
8339 + // This error was thrown as a convenience so that you can use this stack
8340 + // to find the callsite that caused this warning to fire.
8341 + throw new Error(message);
8342 + } catch (x) {}
8343 + };
8344 +}
4383 8345
4384 -//#endregion
4385 -//#region modules/ai/assets/js/editor/hooks/use-introduction.js
4386 - function useIntroduction(key) {
4387 - var _window$elementor$con;
4388 - var _window$elementorAdmi;
4389 - var _globalConfig$introdu;
4390 - var globalConfig = window.elementor ? (_window$elementor$con = window.elementor.config) === null || _window$elementor$con === void 0 ? void 0 : _window$elementor$con.user : (_window$elementorAdmi = window.elementorAdmin) === null || _window$elementorAdmi === void 0 || (_window$elementorAdmi = _window$elementorAdmi.config) === null || _window$elementorAdmi === void 0 ? void 0 : _window$elementorAdmi.user;
4391 - var _useState2 = _slicedToArray((0, react.useState)(!!(globalConfig !== null && globalConfig !== void 0 && (_globalConfig$introdu = globalConfig.introduction) !== null && _globalConfig$introdu !== void 0 && _globalConfig$introdu[key])), 2);
4392 - var isViewed = _useState2[0];
4393 - var setIsViewed = _useState2[1];
4394 - function markAsViewed() {
4395 - if (!key) return Promise.reject();
4396 - return new Promise(function(resolve, reject) {
4397 - if (isViewed) reject();
4398 - setIsViewed(true);
4399 - elementorCommon.ajax.addRequest("introduction_viewed", {
4400 - data: { introductionKey: key },
4401 - error: function error() {
4402 - setIsViewed(false);
4403 - reject();
4404 - },
4405 - success: function success() {
4406 - setIsViewed(true);
4407 - if (globalConfig !== null && globalConfig !== void 0 && globalConfig.introduction) globalConfig.introduction[key] = true;
4408 - resolve();
4409 - }
4410 - });
4411 - });
4412 - }
4413 - return {
4414 - isViewed,
4415 - markAsViewed
4416 - };
4417 - }
4418 - var init_use_introduction = __esmMin((() => {
4419 - init_slicedToArray();
4420 - }));
8346 +function emptyFunctionThatReturnsNull() {
8347 + return null;
8348 +}
4421 8349
4422 -//#endregion
4423 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/menu.js
4424 - var import_prop_types$18, Menu;
4425 - var init_menu = __esmMin((() => {
4426 - init_slicedToArray();
4427 - init_x_circle_icon();
4428 - init_plus_circle_icon();
4429 - import_prop_types$18 = /* @__PURE__ */ __toESM(require_prop_types());
4430 - init_attach_dialog();
4431 - init_use_introduction();
4432 - Menu = function Menu(props) {
4433 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
4434 - var isOpen = _useState2[0];
4435 - var setIsOpen = _useState2[1];
4436 - var _useState4 = _slicedToArray((0, react.useState)(null), 2);
4437 - var selectedType = _useState4[0];
4438 - var setSelectedType = _useState4[1];
4439 - var direction = (0, _elementor_ui.useTheme)().direction;
4440 - var anchorRef = (0, react.useRef)(null);
4441 - var _useIntroduction = useIntroduction("e-ai-attachment-badge");
4442 - var isViewed = _useIntroduction.isViewed;
4443 - var markAsViewed = _useIntroduction.markAsViewed;
4444 - return /*#__PURE__*/ react.default.createElement(react.default.Fragment, null, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
4445 - size: "small",
4446 - ref: anchorRef,
4447 - disabled: props.disabled,
4448 - onClick: function onClick() {
4449 - setIsOpen(true);
4450 - if (!isViewed) markAsViewed();
4451 - },
4452 - color: "secondary"
4453 - }, function() {
4454 - if (isOpen) return /*#__PURE__*/ react.default.createElement(XCircleIcon, { fontSize: "small" });
4455 - else if (isViewed) return /*#__PURE__*/ react.default.createElement(PlusCircleIcon, { fontSize: "small" });
4456 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Badge, {
4457 - color: "primary",
4458 - badgeContent: " ",
4459 - variant: "dot"
4460 - }, /*#__PURE__*/ react.default.createElement(PlusCircleIcon, { fontSize: "small" }));
4461 - }()), /*#__PURE__*/ react.default.createElement(_elementor_ui.Popover, {
4462 - open: isOpen,
4463 - anchorEl: anchorRef.current,
4464 - onClose: function onClose() {
4465 - return setIsOpen(false);
4466 - },
4467 - anchorOrigin: {
4468 - vertical: "bottom",
4469 - horizontal: "rtl" === direction ? "right" : "left"
4470 - },
4471 - transformOrigin: {
4472 - vertical: "top",
4473 - horizontal: "rtl" === direction ? "right" : "left"
4474 - }
4475 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, { sx: { width: 440 } }, props.items.map(function(item) {
4476 - var IconComponent = item.icon;
4477 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.MenuItem, {
4478 - key: item.type,
4479 - onClick: function onClick() {
4480 - setSelectedType(item.type);
4481 - setIsOpen(false);
4482 - }
4483 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.ListItemIcon, null, /*#__PURE__*/ react.default.createElement(IconComponent, null)), item.title);
4484 - }))), /*#__PURE__*/ react.default.createElement(AttachDialog, {
4485 - type: selectedType,
4486 - onAttach: props.onAttach,
4487 - onClose: function onClose() {
4488 - setIsOpen(false);
4489 - setSelectedType(null);
4490 - }
4491 - }));
4492 - };
4493 - Menu.propTypes = {
4494 - items: import_prop_types$18.default.arrayOf(import_prop_types$18.default.shape({
4495 - title: import_prop_types$18.default.string.isRequired,
4496 - type: import_prop_types$18.default.string.isRequired,
4497 - icon: import_prop_types$18.default.elementType
4498 - })).isRequired,
4499 - onAttach: import_prop_types$18.default.func.isRequired,
4500 - disabled: import_prop_types$18.default.bool
4501 - };
4502 - }));
8350 +module.exports = function(isValidElement, throwOnDirectAccess) {
8351 + /* global Symbol */
8352 + var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
8353 + var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
4503 8354
4504 -//#endregion
4505 -//#region node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js
4506 - function _taggedTemplateLiteral(e, t) {
4507 - return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } }));
4508 - }
4509 - var init_taggedTemplateLiteral = __esmMin((() => {}));
8355 + /**
8356 + * Returns the iterator method function contained on the iterable object.
8357 + *
8358 + * Be sure to invoke the function with the iterable as context:
8359 + *
8360 + * var iteratorFn = getIteratorFn(myIterable);
8361 + * if (iteratorFn) {
8362 + * var iterator = iteratorFn.call(myIterable);
8363 + * ...
8364 + * }
8365 + *
8366 + * @param {?object} maybeIterable
8367 + * @return {?function}
8368 + */
8369 + function getIteratorFn(maybeIterable) {
8370 + var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
8371 + if (typeof iteratorFn === 'function') {
8372 + return iteratorFn;
8373 + }
8374 + }
4510 8375
4511 -//#endregion
4512 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail.js
4513 - var import_prop_types$17, _templateObject, THUMBNAIL_SIZE, StyledBody, Thumbnail;
4514 - var init_thumbnail = __esmMin((() => {
4515 - init_taggedTemplateLiteral();
4516 - import_prop_types$17 = /* @__PURE__ */ __toESM(require_prop_types());
4517 - ;
4518 - THUMBNAIL_SIZE = 64;
4519 - StyledBody = (0, _elementor_ui.styled)("body")(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n html, body {\n margin: 0;\n padding: 0;\n overflow: hidden;\n }\n\n body > * {\n width: 100% !important;\n }\n\n body > img {\n height: 100%;\n object-fit: cover;\n }\n\n body:has(> img) {\n height: ", "px\n }\n"])), 64);
4520 - Thumbnail = function Thumbnail(props) {
4521 - var _props$html$match;
4522 - var _props$html$match2;
4523 - var dataWidth = (_props$html$match = props.html.match("data-width=\"(?<width>\\d+)\"")) === null || _props$html$match === void 0 || (_props$html$match = _props$html$match.groups) === null || _props$html$match === void 0 ? void 0 : _props$html$match.width;
4524 - var dataHeight = (_props$html$match2 = props.html.match("data-height=\"(?<height>\\d+)\"")) === null || _props$html$match2 === void 0 || (_props$html$match2 = _props$html$match2.groups) === null || _props$html$match2 === void 0 ? void 0 : _props$html$match2.height;
4525 - var width = dataWidth ? parseInt(dataWidth) : 64;
4526 - var height = dataHeight ? parseInt(dataHeight) : 64;
4527 - var scale = 64 / Math.min(height, width);
4528 - var top = height > width ? (64 - 64 * (height / width)) / 2 : 0;
4529 - var left = width > height ? (64 - 64 * (width / height)) / 2 : 0;
4530 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
4531 - dir: "ltr",
4532 - sx: {
4533 - position: "relative",
4534 - cursor: "default",
4535 - overflow: "hidden",
4536 - border: "1px solid",
4537 - borderColor: "grey.300",
4538 - borderRadius: 1,
4539 - boxSizing: "border-box",
4540 - width: 64,
4541 - height: 64,
4542 - opacity: props.disabled ? .5 : 1
4543 - }
4544 - }, /*#__PURE__*/ react.default.createElement("iframe", {
4545 - title: (0, _wordpress_i18n.__)("Preview", "elementor"),
4546 - sandbox: "",
4547 - srcDoc: "<style>" + StyledBody.componentStyle.rules.join("") + "</style>" + props.html,
4548 - style: {
4549 - border: "none",
4550 - overflow: "hidden",
4551 - width,
4552 - height,
4553 - transform: "scale(".concat(scale, ")"),
4554 - transformOrigin: "".concat(left, "px ").concat(top, "px")
4555 - }
4556 - }));
4557 - };
4558 - Thumbnail.propTypes = {
4559 - html: import_prop_types$17.default.string.isRequired,
4560 - disabled: import_prop_types$17.default.bool
4561 - };
4562 - }));
8376 + /**
8377 + * Collection of methods that allow declaration and validation of props that are
8378 + * supplied to React components. Example usage:
8379 + *
8380 + * var Props = require('ReactPropTypes');
8381 + * var MyArticle = React.createClass({
8382 + * propTypes: {
8383 + * // An optional string prop named "description".
8384 + * description: Props.string,
8385 + *
8386 + * // A required enum prop named "category".
8387 + * category: Props.oneOf(['News','Photos']).isRequired,
8388 + *
8389 + * // A prop named "dialog" that requires an instance of Dialog.
8390 + * dialog: Props.instanceOf(Dialog).isRequired
8391 + * },
8392 + * render: function() { ... }
8393 + * });
8394 + *
8395 + * A more formal specification of how these methods are used:
8396 + *
8397 + * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
8398 + * decl := ReactPropTypes.{type}(.isRequired)?
8399 + *
8400 + * Each and every declaration produces a function with the same signature. This
8401 + * allows the creation of custom validation functions. For example:
8402 + *
8403 + * var MyLink = React.createClass({
8404 + * propTypes: {
8405 + * // An optional string or URI prop named "href".
8406 + * href: function(props, propName, componentName) {
8407 + * var propValue = props[propName];
8408 + * if (propValue != null && typeof propValue !== 'string' &&
8409 + * !(propValue instanceof URI)) {
8410 + * return new Error(
8411 + * 'Expected a string or an URI for ' + propName + ' in ' +
8412 + * componentName
8413 + * );
8414 + * }
8415 + * }
8416 + * },
8417 + * render: function() {...}
8418 + * });
8419 + *
8420 + * @internal
8421 + */
4563 8422
4564 -//#endregion
4565 -//#region modules/ai/assets/js/editor/types/attachment.js
4566 - var import_prop_types$16, AttachmentPropType, AttachmentsTypesPropType;
4567 - var init_attachment = __esmMin((() => {
4568 - import_prop_types$16 = /* @__PURE__ */ __toESM(require_prop_types());
4569 - AttachmentPropType = import_prop_types$16.default.shape({
4570 - type: import_prop_types$16.default.string,
4571 - previewHTML: import_prop_types$16.default.string,
4572 - content: import_prop_types$16.default.string,
4573 - label: import_prop_types$16.default.string,
4574 - source: import_prop_types$16.default.string
4575 - });
4576 - AttachmentsTypesPropType = import_prop_types$16.default.shape({ type: import_prop_types$16.default.shape({
4577 - promptPlaceholder: import_prop_types$16.default.string,
4578 - promptSuggestions: import_prop_types$16.default.arrayOf(import_prop_types$16.default.shape({ text: import_prop_types$16.default.string.isRequired })),
4579 - previewGenerator: import_prop_types$16.default.func
4580 - }) });
4581 - }));
8423 + var ANONYMOUS = '<<anonymous>>';
4582 8424
4583 -//#endregion
4584 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-json.js
4585 - var import_prop_types$15, ThumbnailJson;
4586 - var init_thumbnail_json = __esmMin((() => {
4587 - init_thumbnail();
4588 - import_prop_types$15 = /* @__PURE__ */ __toESM(require_prop_types());
4589 - init_attachment();
4590 - ThumbnailJson = function ThumbnailJson(props) {
4591 - var _props$attachments;
4592 - var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function(item) {
4593 - return "json" === item.type;
4594 - });
4595 - if (!attachment) return null;
4596 - if (!attachment.previewHTML) return /*#__PURE__*/ react.default.createElement(_elementor_ui.Skeleton, {
4597 - animation: "wave",
4598 - variant: "rounded",
4599 - width: 60,
4600 - height: 60
4601 - });
4602 - return /*#__PURE__*/ react.default.createElement(Thumbnail, {
4603 - html: attachment.previewHTML,
4604 - disabled: props.disabled
4605 - });
4606 - };
4607 - ThumbnailJson.propTypes = {
4608 - attachments: import_prop_types$15.default.arrayOf(AttachmentPropType).isRequired,
4609 - disabled: import_prop_types$15.default.bool
4610 - };
4611 - }));
8425 + // Important!
8426 + // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
8427 + var ReactPropTypes = {
8428 + array: createPrimitiveTypeChecker('array'),
8429 + bigint: createPrimitiveTypeChecker('bigint'),
8430 + bool: createPrimitiveTypeChecker('boolean'),
8431 + func: createPrimitiveTypeChecker('function'),
8432 + number: createPrimitiveTypeChecker('number'),
8433 + object: createPrimitiveTypeChecker('object'),
8434 + string: createPrimitiveTypeChecker('string'),
8435 + symbol: createPrimitiveTypeChecker('symbol'),
4612 8436
4613 -//#endregion
4614 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/thumbnail-url.js
4615 - var import_prop_types$14, ThumbnailUrl;
4616 - var init_thumbnail_url = __esmMin((() => {
4617 - init_thumbnail();
4618 - import_prop_types$14 = /* @__PURE__ */ __toESM(require_prop_types());
4619 - init_attachment();
4620 - ThumbnailUrl = function ThumbnailUrl(props) {
4621 - var _props$attachments;
4622 - var attachment = (_props$attachments = props.attachments) === null || _props$attachments === void 0 ? void 0 : _props$attachments.find(function(item) {
4623 - return "url" === item.type;
4624 - });
4625 - if (!attachment) return null;
4626 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
4627 - position: "relative",
4628 - "&:hover::before": {
4629 - content: "\"\"",
4630 - position: "absolute",
4631 - userSelect: "none",
4632 - inset: 0,
4633 - backgroundColor: "rgba(0,0,0,0.6)",
4634 - borderRadius: 1,
4635 - zIndex: 1
4636 - },
4637 - "&:hover .remove-attachment": { display: "flex" }
4638 - } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
4639 - className: "remove-attachment",
4640 - size: "small",
4641 - "aria-label": (0, _wordpress_i18n.__)("Remove", "elementor"),
4642 - disabled: props.disabled,
4643 - onClick: function onClick(event) {
4644 - event.stopPropagation();
4645 - props.onDetach();
4646 - },
4647 - sx: {
4648 - display: "none",
4649 - position: "absolute",
4650 - insetInlineEnd: 4,
4651 - insetBlockStart: 4,
4652 - backgroundColor: "secondary.main",
4653 - zIndex: 1,
4654 - borderRadius: 1,
4655 - p: "3px",
4656 - "&:hover": { backgroundColor: "secondary.dark" }
4657 - }
4658 - }, /*#__PURE__*/ react.default.createElement(_elementor_icons.TrashIcon, { sx: {
4659 - fontSize: "1.125rem",
4660 - color: "common.white"
4661 - } })), /*#__PURE__*/ react.default.createElement(Thumbnail, {
4662 - disabled: props.disabled,
4663 - html: attachment.previewHTML
4664 - }));
4665 - };
4666 - ThumbnailUrl.propTypes = {
4667 - attachments: import_prop_types$14.default.arrayOf(AttachmentPropType).isRequired,
4668 - disabled: import_prop_types$14.default.bool,
4669 - onDetach: import_prop_types$14.default.func
4670 - };
4671 - }));
8437 + any: createAnyTypeChecker(),
8438 + arrayOf: createArrayOfTypeChecker,
8439 + element: createElementTypeChecker(),
8440 + elementType: createElementTypeTypeChecker(),
8441 + instanceOf: createInstanceTypeChecker,
8442 + node: createNodeChecker(),
8443 + objectOf: createObjectOfTypeChecker,
8444 + oneOf: createEnumTypeChecker,
8445 + oneOfType: createUnionTypeChecker,
8446 + shape: createShapeTypeChecker,
8447 + exact: createStrictShapeTypeChecker,
8448 + };
4672 8449
4673 -//#endregion
4674 -//#region modules/ai/assets/js/editor/icons/website-icon.js
4675 - var WebsiteIcon;
4676 - var init_website_icon = __esmMin((() => {
4677 - init_extends();
4678 - WebsiteIcon = react.default.forwardRef(function(props, ref) {
4679 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
4680 - fillRule: "evenodd",
4681 - clipRule: "evenodd",
4682 - 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"
4683 - }));
4684 - });
4685 - }));
8450 + /**
8451 + * inlined Object.is polyfill to avoid requiring consumers ship their own
8452 + * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
8453 + */
8454 + /*eslint-disable no-self-compare*/
8455 + function is(x, y) {
8456 + // SameValue algorithm
8457 + if (x === y) {
8458 + // Steps 1-5, 7-10
8459 + // Steps 6.b-6.e: +0 != -0
8460 + return x !== 0 || 1 / x === 1 / y;
8461 + } else {
8462 + // Step 6.a: NaN == NaN
8463 + return x !== x && y !== y;
8464 + }
8465 + }
8466 + /*eslint-enable no-self-compare*/
4686 8467
4687 -//#endregion
4688 -//#region modules/ai/assets/js/editor/icons/copy-page-icon.js
4689 - var CopyPageIcon;
4690 - var init_copy_page_icon = __esmMin((() => {
4691 - init_extends();
4692 - CopyPageIcon = react.default.forwardRef(function(props, ref) {
4693 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
4694 - fillRule: "evenodd",
4695 - clipRule: "evenodd",
4696 - 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"
4697 - }));
4698 - });
4699 - }));
8468 + /**
8469 + * We use an Error-like object for backward compatibility as people may call
8470 + * PropTypes directly and inspect their output. However, we don't use real
8471 + * Errors anymore. We don't inspect their stack anyway, and creating them
8472 + * is prohibitively expensive if they are created too often, such as what
8473 + * happens in oneOfType() for any type before the one that matched.
8474 + */
8475 + function PropTypeError(message, data) {
8476 + this.message = message;
8477 + this.data = data && typeof data === 'object' ? data: {};
8478 + this.stack = '';
8479 + }
8480 + // Make `instanceof Error` still work for returned errors.
8481 + PropTypeError.prototype = Error.prototype;
4700 8482
4701 -//#endregion
4702 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments.js
4703 - var attachments_exports = /* @__PURE__ */ __exportAll({
4704 - ATTACHMENT_TYPE_JSON: () => ATTACHMENT_TYPE_JSON,
4705 - ATTACHMENT_TYPE_URL: () => "url",
4706 - ELEMENTOR_LIBRARY_SOURCE: () => ELEMENTOR_LIBRARY_SOURCE,
4707 - MENU_TYPE_LIBRARY: () => MENU_TYPE_LIBRARY,
4708 - USER_URL_SOURCE: () => USER_URL_SOURCE,
4709 - USER_VARIATION_SOURCE: () => USER_VARIATION_SOURCE,
4710 - default: () => Attachments
4711 - });
4712 - var import_prop_types$13, ATTACHMENT_TYPE_JSON, ATTACHMENT_TYPE_URL, MENU_TYPE_LIBRARY, USER_VARIATION_SOURCE, ELEMENTOR_LIBRARY_SOURCE, USER_URL_SOURCE, Attachments;
4713 - var init_attachments = __esmMin((() => {
4714 - init_extends();
4715 - init_menu();
4716 - init_thumbnail_json();
4717 - init_thumbnail_url();
4718 - init_website_icon();
4719 - init_copy_page_icon();
4720 - import_prop_types$13 = /* @__PURE__ */ __toESM(require_prop_types());
4721 - init_attachment();
4722 - ATTACHMENT_TYPE_JSON = "json";
4723 - ATTACHMENT_TYPE_URL = "url";
4724 - MENU_TYPE_LIBRARY = "library";
4725 - USER_VARIATION_SOURCE = "user-variation";
4726 - ELEMENTOR_LIBRARY_SOURCE = "elementor-library";
4727 - USER_URL_SOURCE = "user-url";
4728 - Attachments = function Attachments(props) {
4729 - if (!props.attachments.length) return /*#__PURE__*/ react.default.createElement(Menu, {
4730 - disabled: props.disabled,
4731 - onAttach: props.onAttach,
4732 - items: [{
4733 - title: (0, _wordpress_i18n.__)("Reference a website", "elementor"),
4734 - icon: WebsiteIcon,
4735 - type: "url"
4736 - }, {
4737 - title: (0, _wordpress_i18n.__)("Create variations from Template Library", "elementor"),
4738 - icon: CopyPageIcon,
4739 - type: MENU_TYPE_LIBRARY
4740 - }]
4741 - });
4742 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
4743 - direction: "row",
4744 - spacing: 1
4745 - }, props.attachments.map(function(attachment, index) {
4746 - switch (attachment.type) {
4747 - case ATTACHMENT_TYPE_JSON: return /*#__PURE__*/ react.default.createElement(ThumbnailJson, _extends({ key: index }, props));
4748 - case "url": return /*#__PURE__*/ react.default.createElement(ThumbnailUrl, _extends({ key: index }, props));
4749 - default: return null;
4750 - }
4751 - }));
4752 - };
4753 - Attachments.propTypes = {
4754 - attachments: import_prop_types$13.default.arrayOf(AttachmentPropType).isRequired,
4755 - onAttach: import_prop_types$13.default.func.isRequired,
4756 - onDetach: import_prop_types$13.default.func,
4757 - disabled: import_prop_types$13.default.bool
4758 - };
4759 - }));
8483 + function createChainableTypeChecker(validate) {
8484 + if (true) {
8485 + var manualPropTypeCallCache = {};
8486 + var manualPropTypeWarningCount = 0;
8487 + }
8488 + function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
8489 + componentName = componentName || ANONYMOUS;
8490 + propFullName = propFullName || propName;
4760 8491
4761 -//#endregion
4762 -//#region modules/ai/assets/js/editor/pages/form-layout/components/prompt-form.js
4763 - var import_prop_types$12, _excluded$3, PROMPT_SUGGESTIONS, IconButtonWithTooltip, BackButton, EditButton, GenerateButton, PromptForm;
4764 - var init_prompt_form = __esmMin((() => {
4765 - init_slicedToArray();
4766 - init_extends();
4767 - init_objectWithoutProperties$1();
4768 - import_prop_types$12 = /* @__PURE__ */ __toESM(require_prop_types());
4769 - init_prompt_autocomplete();
4770 - init_enhance_button();
4771 - init_generate_submit();
4772 - init_arrow_left_icon();
4773 - init_edit_icon();
4774 - init_use_prompt_enhancer();
4775 - init_attachments();
4776 - init_config();
4777 - init_attachment();
4778 - _excluded$3 = ["tooltip"];
4779 - PROMPT_SUGGESTIONS = Object.freeze([
4780 - { text: (0, _wordpress_i18n.__)("Hero section on [topic] with heading, text, buttons on the right, and an image on the left", "elementor.com") },
4781 - { text: (0, _wordpress_i18n.__)("About Us section on [topic] with heading, text, and big image below", "elementor.com") },
4782 - { text: (0, _wordpress_i18n.__)("Team section with four image boxes showcasing team members", "elementor.com") },
4783 - { text: (0, _wordpress_i18n.__)("FAQ section with a toggle widget showcasing FAQs about [topic]", "elementor.com") },
4784 - { text: (0, _wordpress_i18n.__)("Gallery section with a carousel displaying three images at once", "elementor.com") },
4785 - { text: (0, _wordpress_i18n.__)("Contact section with a form for [topic]", "elementor.com") },
4786 - { text: (0, _wordpress_i18n.__)("Client section featuring companies' logos", "elementor.com") },
4787 - { text: (0, _wordpress_i18n.__)("Testimonial section with testimonials, each featuring a star rating and an image", "elementor.com") },
4788 - { text: (0, _wordpress_i18n.__)("Service section about [topic], showcasing four services with buttons", "elementor.com") },
4789 - { text: (0, _wordpress_i18n.__)("Stats section with counters displaying data about [topic]", "elementor.com") },
4790 - { text: (0, _wordpress_i18n.__)("Quote section with colored background, featuring a centered quote", "elementor.com") },
4791 - { text: (0, _wordpress_i18n.__)("Pricing section for [topic] with a pricing list", "elementor.com") },
4792 - { text: (0, _wordpress_i18n.__)("Subscribe section featuring a simple email form, inviting users to stay informed on [topic]", "elementor.com") }
4793 - ]);
4794 - IconButtonWithTooltip = function IconButtonWithTooltip(_ref) {
4795 - var tooltip = _ref.tooltip;
4796 - var props = _objectWithoutProperties$1(_ref, _excluded$3);
4797 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Tooltip, { title: tooltip }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
4798 - component: "span",
4799 - sx: { cursor: props.disabled ? "default" : "pointer" }
4800 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, props)));
4801 - };
4802 - IconButtonWithTooltip.propTypes = {
4803 - tooltip: import_prop_types$12.default.string,
4804 - disabled: import_prop_types$12.default.bool
4805 - };
4806 - BackButton = function BackButton(props) {
4807 - return /*#__PURE__*/ react.default.createElement(IconButtonWithTooltip, _extends({
4808 - size: "small",
4809 - color: "secondary",
4810 - tooltip: (0, _wordpress_i18n.__)("Back to results", "elementor")
4811 - }, props), /*#__PURE__*/ react.default.createElement(ArrowLeftIcon, null));
4812 - };
4813 - EditButton = function EditButton(props) {
4814 - return /*#__PURE__*/ react.default.createElement(IconButtonWithTooltip, _extends({
4815 - size: "small",
4816 - color: "primary",
4817 - tooltip: (0, _wordpress_i18n.__)("Edit prompt", "elementor")
4818 - }, props), /*#__PURE__*/ react.default.createElement(EditIcon, null));
4819 - };
4820 - GenerateButton = function GenerateButton(props) {
4821 - return /*#__PURE__*/ react.default.createElement(GenerateSubmit, _extends({
4822 - size: "small",
4823 - fullWidth: false
4824 - }, props), (0, _wordpress_i18n.__)("Generate", "elementor"));
4825 - };
4826 - PromptForm = (0, react.forwardRef)(function(_ref2, ref) {
4827 - var _attachments$;
4828 - var attachments = _ref2.attachments;
4829 - var isActive = _ref2.isActive;
4830 - var isLoading = _ref2.isLoading;
4831 - var _ref2$showActions = _ref2.showActions;
4832 - var showActions = _ref2$showActions === void 0 ? false : _ref2$showActions;
4833 - var onAttach = _ref2.onAttach;
4834 - var onDetach = _ref2.onDetach;
4835 - var _onSubmit = _ref2.onSubmit;
4836 - var onBack = _ref2.onBack;
4837 - var onEdit = _ref2.onEdit;
4838 - var _ref2$shouldResetProm = _ref2.shouldResetPrompt;
4839 - var shouldResetPrompt = _ref2$shouldResetProm === void 0 ? false : _ref2$shouldResetProm;
4840 - var _useState2 = _slicedToArray((0, react.useState)(""), 2);
4841 - var prompt = _useState2[0];
4842 - var setPrompt = _useState2[1];
4843 - (0, react.useEffect)(function() {
4844 - if (shouldResetPrompt) setPrompt("");
4845 - }, [shouldResetPrompt]);
4846 - var _usePromptEnhancer = usePromptEnhancer(prompt, "layout");
4847 - var isEnhancing = _usePromptEnhancer.isEnhancing;
4848 - var enhance = _usePromptEnhancer.enhance;
4849 - var previousPrompt = (0, react.useRef)("");
4850 - var attachmentsTypes = useConfig().attachmentsTypes;
4851 - var isInputDisabled = isLoading || isEnhancing || !isActive;
4852 - var isInputEmpty = "" === prompt && !attachments.length;
4853 - var isGenerateDisabled = isInputDisabled || isInputEmpty;
4854 - var attachmentsConfig = attachmentsTypes[((_attachments$ = attachments[0]) === null || _attachments$ === void 0 ? void 0 : _attachments$.type) || ""];
4855 - var promptSuggestions = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptSuggestions) || PROMPT_SUGGESTIONS;
4856 - var promptPlaceholder = (attachmentsConfig === null || attachmentsConfig === void 0 ? void 0 : attachmentsConfig.promptPlaceholder) || (0, _wordpress_i18n.__)("Press '/' for suggested prompts or describe the layout you want to create", "elementor");
4857 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
4858 - component: "form",
4859 - onSubmit: function onSubmit(e) {
4860 - return _onSubmit(e, prompt);
4861 - },
4862 - direction: "row",
4863 - sx: { p: 3 },
4864 - alignItems: "start",
4865 - gap: 1
4866 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
4867 - direction: "row",
4868 - alignItems: "start",
4869 - flexGrow: 1,
4870 - spacing: 2
4871 - }, showActions && (isActive ? /*#__PURE__*/ react.default.createElement(BackButton, {
4872 - disabled: isLoading || isEnhancing,
4873 - onClick: function handleBack() {
4874 - setPrompt(previousPrompt.current);
4875 - onBack();
4876 - }
4877 - }) : /*#__PURE__*/ react.default.createElement(EditButton, {
4878 - disabled: isLoading,
4879 - onClick: function handleEdit() {
4880 - previousPrompt.current = prompt;
4881 - onEdit();
4882 - }
4883 - })), /*#__PURE__*/ react.default.createElement(Attachments, {
4884 - attachments,
4885 - onAttach,
4886 - onDetach,
4887 - disabled: isInputDisabled
4888 - }), /*#__PURE__*/ react.default.createElement(PromptAutocomplete, {
4889 - value: prompt,
4890 - disabled: isInputDisabled,
4891 - onSubmit: function onSubmit(e) {
4892 - return _onSubmit(e, prompt);
4893 - },
4894 - options: promptSuggestions,
4895 - onChange: function onChange(_, selectedValue) {
4896 - return setPrompt(selectedValue.text + " ");
4897 - },
4898 - renderInput: function renderInput(params) {
4899 - return /*#__PURE__*/ react.default.createElement(PromptAutocomplete.TextInput, _extends({}, params, {
4900 - ref,
4901 - onChange: function onChange(e) {
4902 - return setPrompt(e.target.value);
4903 - },
4904 - placeholder: promptPlaceholder
4905 - }));
4906 - }
4907 - })), /*#__PURE__*/ react.default.createElement(EnhanceButton, {
4908 - size: "small",
4909 - disabled: isGenerateDisabled || "" === prompt,
4910 - isLoading: isEnhancing,
4911 - onClick: function onClick() {
4912 - return enhance().then(function(_ref3) {
4913 - var result = _ref3.result;
4914 - return setPrompt(result);
4915 - });
4916 - }
4917 - }), /*#__PURE__*/ react.default.createElement(GenerateButton, { disabled: isGenerateDisabled }));
4918 - });
4919 - PromptForm.propTypes = {
4920 - isActive: import_prop_types$12.default.bool,
4921 - onAttach: import_prop_types$12.default.func,
4922 - onDetach: import_prop_types$12.default.func,
4923 - isLoading: import_prop_types$12.default.bool,
4924 - showActions: import_prop_types$12.default.bool,
4925 - onSubmit: import_prop_types$12.default.func.isRequired,
4926 - onBack: import_prop_types$12.default.func.isRequired,
4927 - onEdit: import_prop_types$12.default.func.isRequired,
4928 - attachments: import_prop_types$12.default.arrayOf(AttachmentPropType),
4929 - shouldResetPrompt: import_prop_types$12.default.bool
4930 - };
4931 - }));
8492 + if (secret !== ReactPropTypesSecret) {
8493 + if (throwOnDirectAccess) {
8494 + // New behavior only for users of `prop-types` package
8495 + var err = new Error(
8496 + 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
8497 + 'Use `PropTypes.checkPropTypes()` to call them. ' +
8498 + 'Read more at http://fb.me/use-check-prop-types'
8499 + );
8500 + err.name = 'Invariant Violation';
8501 + throw err;
8502 + } else if ( true && typeof console !== 'undefined') {
8503 + // Old behavior for people using React.PropTypes
8504 + var cacheKey = componentName + ':' + propName;
8505 + if (
8506 + !manualPropTypeCallCache[cacheKey] &&
8507 + // Avoid spamming the console because they are often not actionable except for lib authors
8508 + manualPropTypeWarningCount < 3
8509 + ) {
8510 + printWarning(
8511 + 'You are manually calling a React.PropTypes validation ' +
8512 + 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
8513 + 'and will throw in the standalone `prop-types` package. ' +
8514 + 'You may be seeing this warning due to a third-party PropTypes ' +
8515 + 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
8516 + );
8517 + manualPropTypeCallCache[cacheKey] = true;
8518 + manualPropTypeWarningCount++;
8519 + }
8520 + }
8521 + }
8522 + if (props[propName] == null) {
8523 + if (isRequired) {
8524 + if (props[propName] === null) {
8525 + return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
8526 + }
8527 + return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
8528 + }
8529 + return null;
8530 + } else {
8531 + return validate(props, propName, componentName, location, propFullName);
8532 + }
8533 + }
4932 8534
4933 -//#endregion
4934 -//#region modules/ai/assets/js/editor/icons/refresh-icon.js
4935 - var RefreshIcon;
4936 - var init_refresh_icon = __esmMin((() => {
4937 - init_extends();
4938 - RefreshIcon = react.default.forwardRef(function(props, ref) {
4939 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
4940 - fillRule: "evenodd",
4941 - clipRule: "evenodd",
4942 - 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"
4943 - }), /*#__PURE__*/ react.default.createElement("path", {
4944 - fillRule: "evenodd",
4945 - clipRule: "evenodd",
4946 - 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"
4947 - }));
4948 - });
4949 - }));
8535 + var chainedCheckType = checkType.bind(null, false);
8536 + chainedCheckType.isRequired = checkType.bind(null, true);
4950 8537
4951 -//#endregion
4952 -//#region modules/ai/assets/js/editor/pages/form-layout/components/screenshot-container.js
4953 - var ScreenshotContainer;
4954 - var init_screenshot_container = __esmMin((() => {
4955 - ScreenshotContainer = (0, _elementor_ui.styled)(_elementor_ui.Box, { shouldForwardProp: function shouldForwardProp(prop) {
4956 - return prop !== "outlineOffset";
4957 - } })(function(_ref) {
4958 - var theme = _ref.theme;
4959 - var selected = _ref.selected;
4960 - var height = _ref.height;
4961 - var disabled = _ref.disabled;
4962 - var _ref$outlineOffset = _ref.outlineOffset;
4963 - var outlineOffset = _ref$outlineOffset === void 0 ? "0px" : _ref$outlineOffset;
4964 - var outlineColor = selected ? theme.palette.text.primary : theme.palette.text.disabled;
4965 - var outline = "2px solid ".concat(outlineColor);
4966 - return {
4967 - height,
4968 - cursor: disabled ? "default" : "pointer",
4969 - overflow: "hidden",
4970 - boxSizing: "border-box",
4971 - backgroundPosition: "top center",
4972 - backgroundSize: "100% auto",
4973 - backgroundRepeat: "no-repeat",
4974 - backgroundColor: theme.palette.common.white,
4975 - borderRadius: theme.shape.borderRadius * .5,
4976 - outlineOffset,
4977 - outline,
4978 - opacity: disabled ? "0.4" : "1",
4979 - transition: "all 50ms linear",
4980 - "&:hover": disabled ? {} : { outlineColor: theme.palette.text.primary }
4981 - };
4982 - });
4983 - }));
8538 + return chainedCheckType;
8539 + }
4984 8540
4985 -//#endregion
4986 -//#region modules/ai/assets/js/editor/pages/form-layout/components/screenshot-unavailable.js
4987 - function ownKeys$5(e, r) {
4988 - var t = Object.keys(e);
4989 - if (Object.getOwnPropertySymbols) {
4990 - var o = Object.getOwnPropertySymbols(e);
4991 - r && (o = o.filter(function(r) {
4992 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
4993 - })), t.push.apply(t, o);
4994 - }
4995 - return t;
4996 - }
4997 - function _objectSpread$5(e) {
4998 - for (var r = 1; r < arguments.length; r++) {
4999 - var t = null != arguments[r] ? arguments[r] : {};
5000 - r % 2 ? ownKeys$5(Object(t), !0).forEach(function(r) {
5001 - _defineProperty$1(e, r, t[r]);
5002 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function(r) {
5003 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
5004 - });
5005 - }
5006 - return e;
5007 - }
5008 - function ScreenshotUnavailable(props) {
5009 - return /*#__PURE__*/ react.default.createElement(ScreenshotContainer, _extends({}, props, { sx: _objectSpread$5(_objectSpread$5({}, props.sx || {}), {}, {
5010 - display: "flex",
5011 - alignItems: "center",
5012 - justifyContent: "center",
5013 - backgroundColor: "background.paper",
5014 - color: "text.tertiary",
5015 - fontStyle: "italic",
5016 - fontSize: "12px",
5017 - paddingInline: 12,
5018 - textAlign: "center",
5019 - lineHeight: 1.5
5020 - }) }), (0, _wordpress_i18n.__)("Preview unavailable", "elementor"));
5021 - }
5022 - var import_prop_types$11;
5023 - var init_screenshot_unavailable = __esmMin((() => {
5024 - init_extends();
5025 - init_defineProperty$1();
5026 - import_prop_types$11 = /* @__PURE__ */ __toESM(require_prop_types());
5027 - init_screenshot_container();
5028 - __name(ownKeys$5, "ownKeys");
5029 - __name(_objectSpread$5, "_objectSpread");
5030 - ScreenshotUnavailable.propTypes = { sx: import_prop_types$11.default.object };
5031 - }));
8541 + function createPrimitiveTypeChecker(expectedType) {
8542 + function validate(props, propName, componentName, location, propFullName, secret) {
8543 + var propValue = props[propName];
8544 + var propType = getPropType(propValue);
8545 + if (propType !== expectedType) {
8546 + // `propValue` being instance of, say, date/regexp, pass the 'object'
8547 + // check, but we can offer a more precise error message here rather than
8548 + // 'of type `object`'.
8549 + var preciseType = getPreciseType(propValue);
5032 8550
5033 -//#endregion
5034 -//#region modules/ai/assets/js/editor/icons/lock-icon.js
5035 - var LockIcon;
5036 - var init_lock_icon = __esmMin((() => {
5037 - init_extends();
5038 - LockIcon = react.default.forwardRef(function(props, ref) {
5039 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
5040 - fillRule: "evenodd",
5041 - clipRule: "evenodd",
5042 - 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"
5043 - }), /*#__PURE__*/ react.default.createElement("path", {
5044 - fillRule: "evenodd",
5045 - clipRule: "evenodd",
5046 - 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"
5047 - }), /*#__PURE__*/ react.default.createElement("path", { d: "M6 12H19V20H6V12Z" }));
5048 - });
5049 - }));
8551 + return new PropTypeError(
8552 + 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),
8553 + {expectedType: expectedType}
8554 + );
8555 + }
8556 + return null;
8557 + }
8558 + return createChainableTypeChecker(validate);
8559 + }
5050 8560
5051 -//#endregion
5052 -//#region modules/ai/assets/js/editor/pages/form-layout/components/pro-template-indicator.js
5053 - var popoverId$1, StyledContent$1, StyledArrow$1, ProTemplateIndicator;
5054 - var init_pro_template_indicator = __esmMin((() => {
5055 - init_slicedToArray();
5056 - init_lock_icon();
5057 - popoverId$1 = "e-pro-upgrade-popover";
5058 - StyledContent$1 = (0, _elementor_ui.styled)(_elementor_ui.Paper)(function(_ref) {
5059 - var theme = _ref.theme;
5060 - return {
5061 - position: "relative",
5062 - padding: theme.spacing(3),
5063 - boxShadow: theme.shadows[4],
5064 - zIndex: "9999"
5065 - };
5066 - });
5067 - StyledArrow$1 = (0, _elementor_ui.styled)(_elementor_ui.Box)(function(_ref2) {
5068 - var theme = _ref2.theme;
5069 - return {
5070 - position: "absolute",
5071 - width: theme.spacing(5),
5072 - height: theme.spacing(5),
5073 - overflow: "hidden",
5074 - left: "100% !important",
5075 - transform: "translateX(-50%) translateY(-50%) rotate(var(--rotate, 0deg)) !important",
5076 - "&::after": {
5077 - backgroundColor: theme.palette.background.paper,
5078 - content: "\"\"",
5079 - display: "block",
5080 - position: "absolute",
5081 - width: theme.spacing(2.5),
5082 - height: theme.spacing(2.5),
5083 - top: "50%",
5084 - left: "50%",
5085 - transform: "translateX(-50%) translateY(-50%) rotate(45deg)",
5086 - boxShadow: "5px -5px 5px 0px rgba(0, 0, 0, 0.2)",
5087 - backgroundImage: "linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"
5088 - }
5089 - };
5090 - });
5091 - ProTemplateIndicator = function ProTemplateIndicator() {
5092 - var actionUrl = "https://go.elementor.com/go-pro-ai/";
5093 - var actionLabel = (0, _wordpress_i18n.__)("Go Pro", "elementor");
5094 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
5095 - var isPopoverOpen = _useState2[0];
5096 - var setIsPopoverOpen = _useState2[1];
5097 - var anchorEl = (0, react.useRef)(null);
5098 - var arrowEl = (0, react.useRef)(null);
5099 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
5100 - flexDirection: "row-reverse",
5101 - component: "span",
5102 - display: "flex",
5103 - onMouseLeave: function hidePopover() {
5104 - return setIsPopoverOpen(false);
5105 - },
5106 - alignItems: "center"
5107 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
5108 - ref: anchorEl,
5109 - onMouseEnter: function showPopover() {
5110 - return setIsPopoverOpen(true);
5111 - },
5112 - onClick: function onClick(e) {
5113 - return e.stopPropagation();
5114 - },
5115 - "aria-owns": isPopoverOpen ? popoverId$1 : void 0,
5116 - "aria-haspopup": "true",
5117 - sx: {
5118 - m: 1,
5119 - "&:hover": { backgroundColor: "action.selected" }
5120 - }
5121 - }, /*#__PURE__*/ react.default.createElement(LockIcon, { sx: { color: "text.primary" } })), /*#__PURE__*/ react.default.createElement(_elementor_ui.Popper, {
5122 - open: isPopoverOpen,
5123 - popperOptions: {
5124 - placement: "left-start",
5125 - modifiers: [{
5126 - name: "arrow",
5127 - enabled: true,
5128 - options: {
5129 - element: arrowEl.current,
5130 - padding: 5
5131 - }
5132 - }, {
5133 - name: "offset",
5134 - options: { offset: [0, 10] }
5135 - }]
5136 - },
5137 - anchorEl: anchorEl.current,
5138 - sx: {
5139 - zIndex: "9999",
5140 - maxWidth: 300
5141 - }
5142 - }, /*#__PURE__*/ react.default.createElement(StyledContent$1, null, /*#__PURE__*/ react.default.createElement(StyledArrow$1, { ref: arrowEl }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
5143 - alignItems: "start",
5144 - spacing: 2
5145 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Chip, {
5146 - color: "promotion",
5147 - variant: "outlined",
5148 - size: "small",
5149 - label: (0, _wordpress_i18n.__)("Pro", "elementor"),
5150 - icon: /*#__PURE__*/ react.default.createElement(LockIcon, null)
5151 - }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { variant: "body2" }, (0, _wordpress_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(_elementor_ui.Button, {
5152 - variant: "contained",
5153 - color: "promotion",
5154 - size: "small",
5155 - href: actionUrl,
5156 - target: "_blank",
5157 - sx: { alignSelf: "flex-end" }
5158 - }, actionLabel)))));
5159 - };
5160 - }));
8561 + function createAnyTypeChecker() {
8562 + return createChainableTypeChecker(emptyFunctionThatReturnsNull);
8563 + }
5161 8564
5162 -//#endregion
5163 -//#region modules/ai/assets/js/editor/pages/form-layout/components/template-badge.js
5164 - var import_prop_types$10, TemplateBadge;
5165 - var init_template_badge = __esmMin((() => {
5166 - import_prop_types$10 = /* @__PURE__ */ __toESM(require_prop_types());
5167 - init_config();
5168 - init_pro_template_indicator();
5169 - TemplateBadge = function TemplateBadge(props) {
5170 - var hasPro = useConfig().hasPro;
5171 - if ("Pro" === props.type && !hasPro) return /*#__PURE__*/ react.default.createElement(ProTemplateIndicator, null);
5172 - return null;
5173 - };
5174 - TemplateBadge.propTypes = { type: import_prop_types$10.default.string };
5175 - }));
8565 + function createArrayOfTypeChecker(typeChecker) {
8566 + function validate(props, propName, componentName, location, propFullName) {
8567 + if (typeof typeChecker !== 'function') {
8568 + return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
8569 + }
8570 + var propValue = props[propName];
8571 + if (!Array.isArray(propValue)) {
8572 + var propType = getPropType(propValue);
8573 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
8574 + }
8575 + for (var i = 0; i < propValue.length; i++) {
8576 + var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
8577 + if (error instanceof Error) {
8578 + return error;
8579 + }
8580 + }
8581 + return null;
8582 + }
8583 + return createChainableTypeChecker(validate);
8584 + }
5176 8585
5177 -//#endregion
5178 -//#region modules/ai/assets/js/editor/pages/form-layout/components/screenshot.js
5179 - function ownKeys$4(e, r) {
5180 - var t = Object.keys(e);
5181 - if (Object.getOwnPropertySymbols) {
5182 - var o = Object.getOwnPropertySymbols(e);
5183 - r && (o = o.filter(function(r) {
5184 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
5185 - })), t.push.apply(t, o);
5186 - }
5187 - return t;
5188 - }
5189 - function _objectSpread$4(e) {
5190 - for (var r = 1; r < arguments.length; r++) {
5191 - var t = null != arguments[r] ? arguments[r] : {};
5192 - r % 2 ? ownKeys$4(Object(t), !0).forEach(function(r) {
5193 - _defineProperty$1(e, r, t[r]);
5194 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function(r) {
5195 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
5196 - });
5197 - }
5198 - return e;
5199 - }
5200 - var import_prop_types$9, SCREENSHOT_HEIGHT, Screenshot;
5201 - var init_screenshot$1 = __esmMin((() => {
5202 - init_defineProperty$1();
5203 - import_prop_types$9 = /* @__PURE__ */ __toESM(require_prop_types());
5204 - init_screenshot_container();
5205 - init_screenshot_unavailable();
5206 - init_template_badge();
5207 - __name(ownKeys$4, "ownKeys");
5208 - __name(_objectSpread$4, "_objectSpread");
5209 - SCREENSHOT_HEIGHT = "138px";
5210 - Screenshot = function Screenshot(_ref) {
5211 - var url = _ref.url;
5212 - var type = _ref.type;
5213 - var _ref$isLoading = _ref.isLoading;
5214 - var isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading;
5215 - var _ref$isSelected = _ref.isSelected;
5216 - var isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected;
5217 - var isPlaceholder = _ref.isPlaceholder;
5218 - var disabled = _ref.disabled;
5219 - var onClick = _ref.onClick;
5220 - var _ref$sx = _ref.sx;
5221 - var sx = _ref$sx === void 0 ? {} : _ref$sx;
5222 - var outlineOffset = _ref.outlineOffset;
5223 - if (isPlaceholder) return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: _objectSpread$4({ height: SCREENSHOT_HEIGHT }, sx) });
5224 - if (isLoading) return /*#__PURE__*/ react.default.createElement(_elementor_ui.Skeleton, {
5225 - width: "100%",
5226 - animation: "wave",
5227 - variant: "rounded",
5228 - height: SCREENSHOT_HEIGHT,
5229 - sx
5230 - });
5231 - if (!url) return /*#__PURE__*/ react.default.createElement(ScreenshotUnavailable, {
5232 - selected: isSelected,
5233 - disabled,
5234 - sx,
5235 - onClick,
5236 - height: SCREENSHOT_HEIGHT,
5237 - outlineOffset
5238 - });
5239 - return /*#__PURE__*/ react.default.createElement(ScreenshotContainer, {
5240 - selected: isSelected,
5241 - disabled,
5242 - sx: _objectSpread$4({ backgroundImage: "url('".concat(url, "')") }, sx),
5243 - onClick,
5244 - height: SCREENSHOT_HEIGHT,
5245 - outlineOffset
5246 - }, /*#__PURE__*/ react.default.createElement(TemplateBadge, { type }));
5247 - };
5248 - Screenshot.propTypes = {
5249 - isSelected: import_prop_types$9.default.bool,
5250 - isLoading: import_prop_types$9.default.bool,
5251 - isPlaceholder: import_prop_types$9.default.bool,
5252 - disabled: import_prop_types$9.default.bool,
5253 - onClick: import_prop_types$9.default.func.isRequired,
5254 - url: import_prop_types$9.default.string,
5255 - type: import_prop_types$9.default.string,
5256 - sx: import_prop_types$9.default.object,
5257 - outlineOffset: import_prop_types$9.default.string
5258 - };
5259 - }));
8586 + function createElementTypeChecker() {
8587 + function validate(props, propName, componentName, location, propFullName) {
8588 + var propValue = props[propName];
8589 + if (!isValidElement(propValue)) {
8590 + var propType = getPropType(propValue);
8591 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
8592 + }
8593 + return null;
8594 + }
8595 + return createChainableTypeChecker(validate);
8596 + }
5260 8597
5261 -//#endregion
5262 -//#region modules/ai/assets/js/editor/pages/form-layout/hooks/use-layout-prompt.js
5263 - var useLayoutPrompt;
5264 - var init_use_layout_prompt = __esmMin((() => {
5265 - init_api();
5266 - init_use_prompt();
5267 - useLayoutPrompt = function useLayoutPrompt(type, initialValue) {
5268 - return usePrompt(function(requestBody, signal) {
5269 - requestBody.variationType = type;
5270 - return generateLayout(requestBody, signal);
5271 - }, initialValue);
5272 - };
5273 - }));
8598 + function createElementTypeTypeChecker() {
8599 + function validate(props, propName, componentName, location, propFullName) {
8600 + var propValue = props[propName];
8601 + if (!ReactIs.isValidElementType(propValue)) {
8602 + var propType = getPropType(propValue);
8603 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
8604 + }
8605 + return null;
8606 + }
8607 + return createChainableTypeChecker(validate);
8608 + }
5274 8609
5275 -//#endregion
5276 -//#region modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshot.js
5277 - var import_regenerator$5, ERROR_INITIAL_VALUE, useScreenshot;
5278 - var init_use_screenshot = __esmMin((() => {
5279 - init_asyncToGenerator$1();
5280 - init_slicedToArray();
5281 - import_regenerator$5 = /* @__PURE__ */ __toESM(require_regenerator());
5282 - init_use_layout_prompt();
5283 - ERROR_INITIAL_VALUE = "";
5284 - useScreenshot = function useScreenshot(type, onData) {
5285 - var _useState2 = _slicedToArray((0, react.useState)(ERROR_INITIAL_VALUE), 2);
5286 - var error = _useState2[0];
5287 - var setError = _useState2[1];
5288 - var _useState4 = _slicedToArray((0, react.useState)(false), 2);
5289 - var isLoading = _useState4[0];
5290 - var setIsLoading = _useState4[1];
5291 - var layoutData = useLayoutPrompt(type, null);
5292 - return {
5293 - generate: function generate(requestBody, signal) {
5294 - setIsLoading(true);
5295 - setError(ERROR_INITIAL_VALUE);
5296 - return layoutData.send(requestBody, signal).then(/*#__PURE__*/ function() {
5297 - var _ref = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$5.default.mark(function _callee(data) {
5298 - var createdScreenshot;
5299 - return import_regenerator$5.default.wrap(function(_context) {
5300 - while (1) switch (_context.prev = _context.next) {
5301 - case 0:
5302 - _context.next = 1;
5303 - return onData(data.result);
5304 - case 1:
5305 - createdScreenshot = _context.sent;
5306 - createdScreenshot.sendUsageData = function() {
5307 - return layoutData.sendUsageData(data);
5308 - };
5309 - createdScreenshot.baseTemplateId = data.baseTemplateId;
5310 - createdScreenshot.type = data.type;
5311 - return _context.abrupt("return", createdScreenshot);
5312 - case 2:
5313 - case "end": return _context.stop();
5314 - }
5315 - }, _callee);
5316 - }));
5317 - return function(_x) {
5318 - return _ref.apply(this, arguments);
5319 - };
5320 - }()).catch(function(err) {
5321 - setError(err.extra_data ? err : err.message || err);
5322 - throw err;
5323 - }).finally(function() {
5324 - return setIsLoading(false);
5325 - });
5326 - },
5327 - error,
5328 - isLoading
5329 - };
5330 - };
5331 - }));
8610 + function createInstanceTypeChecker(expectedClass) {
8611 + function validate(props, propName, componentName, location, propFullName) {
8612 + if (!(props[propName] instanceof expectedClass)) {
8613 + var expectedClassName = expectedClass.name || ANONYMOUS;
8614 + var actualClassName = getClassName(props[propName]);
8615 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
8616 + }
8617 + return null;
8618 + }
8619 + return createChainableTypeChecker(validate);
8620 + }
5332 8621
5333 -//#endregion
5334 -//#region modules/ai/assets/js/editor/pages/form-layout/hooks/use-screenshots.js
5335 - var import_regenerator$4, PENDING_VALUE, useScreenshots;
5336 - var init_use_screenshots = __esmMin((() => {
5337 - init_toConsumableArray();
5338 - init_asyncToGenerator$1();
5339 - init_slicedToArray();
5340 - import_regenerator$4 = /* @__PURE__ */ __toESM(require_regenerator());
5341 - init_use_screenshot();
5342 - init_config();
5343 - init_requests_ids();
5344 - PENDING_VALUE = { isPending: true };
5345 - useScreenshots = function useScreenshots(_ref) {
5346 - var onData = _ref.onData;
5347 - var _useState2 = _slicedToArray((0, react.useState)([]), 2);
5348 - var screenshots = _useState2[0];
5349 - var setScreenshots = _useState2[1];
5350 - /**
5351 - * The ids for each request are:
5352 - * - editorSessionId: a unique id for each editor opening
5353 - * - sessionId: a unique id for each session. (open the AI builder)
5354 - * - generateId: a unique id for each generate request. (prompt change)
5355 - * - batchId: a unique id for each batch of generate requests. (generate, regenerate)
5356 - * - requestId: a unique id for each generate request.
5357 - */
5358 - var currentContext = useConfig().currentContext;
5359 - var _useRequestIds = useRequestIds();
5360 - var editorSessionId = _useRequestIds.editorSessionId;
5361 - var sessionId = _useRequestIds.sessionId;
5362 - var setRequest = _useRequestIds.setRequest;
5363 - var setBatch = _useRequestIds.setBatch;
5364 - var setGenerate = _useRequestIds.setGenerate;
5365 - var generateIdRef = (0, react.useRef)("");
5366 - var batchId = setBatch();
5367 - var screenshotsData = [
5368 - useScreenshot(0, onData),
5369 - useScreenshot(1, onData),
5370 - useScreenshot(2, onData)
5371 - ];
5372 - var screenshotsGroupCount = screenshotsData.length;
5373 - var error = screenshotsData.every(function(s) {
5374 - return s === null || s === void 0 ? void 0 : s.error;
5375 - }) ? screenshotsData[0].error : "";
5376 - var isLoading = screenshotsData.some(function(s) {
5377 - return s === null || s === void 0 ? void 0 : s.isLoading;
5378 - });
5379 - var abortController = (0, react.useRef)(null);
5380 - var abort = function abort() {
5381 - var _abortController$curr;
5382 - return (_abortController$curr = abortController.current) === null || _abortController$curr === void 0 ? void 0 : _abortController$curr.abort();
5383 - };
5384 - var createScreenshots = /*#__PURE__*/ function() {
5385 - var _ref2 = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$4.default.mark(function _callee(prompt, attachments) {
5386 - var onGenerate;
5387 - var onError;
5388 - var promises;
5389 - var results;
5390 - var isAllFailed;
5391 - return import_regenerator$4.default.wrap(function(_context) {
5392 - while (1) switch (_context.prev = _context.next) {
5393 - case 0:
5394 - abortController.current = new AbortController();
5395 - onGenerate = function onGenerate(screenshot) {
5396 - setScreenshots(function(prev) {
5397 - var updatedData = _toConsumableArray(prev);
5398 - var pendingIndex = updatedData.indexOf(PENDING_VALUE);
5399 - updatedData[pendingIndex] = screenshot;
5400 - return updatedData;
5401 - });
5402 - return true;
5403 - };
5404 - onError = function onError() {
5405 - setScreenshots(function(prev) {
5406 - var updatedData = _toConsumableArray(prev);
5407 - var pendingIndex = updatedData.lastIndexOf(PENDING_VALUE);
5408 - updatedData[pendingIndex] = { isError: true };
5409 - return updatedData;
5410 - });
5411 - return false;
5412 - };
5413 - promises = screenshotsData.map(function(_ref3) {
5414 - var generate = _ref3.generate;
5415 - return generate({
5416 - prompt,
5417 - prevGeneratedIds: screenshots.map(function(screenshot) {
5418 - return screenshot.baseTemplateId || "";
5419 - }),
5420 - currentContext,
5421 - ids: {
5422 - editorSessionId: editorSessionId.current,
5423 - sessionId: sessionId.current,
5424 - generateId: generateIdRef.current,
5425 - batchId: batchId.current,
5426 - requestId: setRequest().current
5427 - },
5428 - attachments: attachments.map(function(_ref4) {
5429 - return {
5430 - type: _ref4.type,
5431 - content: _ref4.content,
5432 - label: _ref4.label,
5433 - source: _ref4.source
5434 - };
5435 - })
5436 - }, abortController.current.signal).then(onGenerate).catch(onError);
5437 - });
5438 - _context.next = 1;
5439 - return Promise.all(promises);
5440 - case 1:
5441 - results = _context.sent;
5442 - isAllFailed = results.every(function(value) {
5443 - return false === value;
5444 - });
5445 - if (isAllFailed) setScreenshots(function(prev) {
5446 - var updatedData = _toConsumableArray(prev);
5447 - updatedData.splice(screenshotsGroupCount * -1);
5448 - return updatedData;
5449 - });
5450 - case 2:
5451 - case "end": return _context.stop();
5452 - }
5453 - }, _callee);
5454 - }));
5455 - return function createScreenshots(_x, _x2) {
5456 - return _ref2.apply(this, arguments);
5457 - };
5458 - }();
5459 - return {
5460 - generate: function generate(prompt, attachments) {
5461 - var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5462 - generateIdRef.current = setGenerate().current;
5463 - setScreenshots(placeholders);
5464 - createScreenshots(prompt, attachments);
5465 - },
5466 - regenerate: function regenerate(prompt, attachments) {
5467 - var placeholders = Array(screenshotsGroupCount).fill(PENDING_VALUE);
5468 - setScreenshots(function(prev) {
5469 - return [].concat(_toConsumableArray(prev), _toConsumableArray(placeholders));
5470 - });
5471 - createScreenshots(prompt, attachments);
5472 - },
5473 - screenshots,
5474 - isLoading,
5475 - error,
5476 - abort
5477 - };
5478 - };
5479 - }));
8622 + function createEnumTypeChecker(expectedValues) {
8623 + if (!Array.isArray(expectedValues)) {
8624 + if (true) {
8625 + if (arguments.length > 1) {
8626 + printWarning(
8627 + 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
8628 + 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
8629 + );
8630 + } else {
8631 + printWarning('Invalid argument supplied to oneOf, expected an array.');
8632 + }
8633 + }
8634 + return emptyFunctionThatReturnsNull;
8635 + }
5480 8636
5481 -//#endregion
5482 -//#region modules/ai/assets/js/editor/pages/form-layout/hooks/use-slider.js
5483 - var SCREENSHOTS_PER_PAGE, useSlider;
5484 - var init_use_slider = __esmMin((() => {
5485 - init_slicedToArray();
5486 - SCREENSHOTS_PER_PAGE = 3;
5487 - useSlider = function useSlider() {
5488 - var _ref = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
5489 - var _ref$slidesCount = _ref.slidesCount;
5490 - var slidesCount = _ref$slidesCount === void 0 ? 0 : _ref$slidesCount;
5491 - var _ref$slidesPerPage = _ref.slidesPerPage;
5492 - var slidesPerPage = _ref$slidesPerPage === void 0 ? 3 : _ref$slidesPerPage;
5493 - var _ref$gapPercentage = _ref.gapPercentage;
5494 - var gapPercentage = _ref$gapPercentage === void 0 ? 2 : _ref$gapPercentage;
5495 - var _useState2 = _slicedToArray((0, react.useState)(1), 2);
5496 - var currentPage = _useState2[0];
5497 - var setCurrentPage = _useState2[1];
5498 - var slideWidthPercentage = (100 - gapPercentage * (slidesPerPage - 1)) / slidesPerPage;
5499 - var offsetXPercentage = (slideWidthPercentage + gapPercentage) * slidesPerPage * (currentPage - 1) * -1;
5500 - var pagesCount = Math.ceil(slidesCount / slidesPerPage);
5501 - (0, react.useEffect)(function() {
5502 - if (currentPage > 1 && currentPage > pagesCount) setCurrentPage(pagesCount);
5503 - }, [pagesCount]);
5504 - return {
5505 - currentPage,
5506 - setCurrentPage,
5507 - pagesCount,
5508 - slidesPerPage,
5509 - gapPercentage,
5510 - offsetXPercentage,
5511 - slideWidthPercentage
5512 - };
5513 - };
5514 - }));
8637 + function validate(props, propName, componentName, location, propFullName) {
8638 + var propValue = props[propName];
8639 + for (var i = 0; i < expectedValues.length; i++) {
8640 + if (is(propValue, expectedValues[i])) {
8641 + return null;
8642 + }
8643 + }
5515 8644
5516 -//#endregion
5517 -//#region modules/ai/assets/js/editor/icons/minimize-diagonal-icon.js
5518 - var MinimizeDiagonalIcon;
5519 - var init_minimize_diagonal_icon = __esmMin((() => {
5520 - init_extends();
5521 - MinimizeDiagonalIcon = react.default.forwardRef(function(props, ref) {
5522 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
5523 - fillRule: "evenodd",
5524 - clipRule: "evenodd",
5525 - 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"
5526 - }));
5527 - });
5528 - }));
8645 + var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
8646 + var type = getPreciseType(value);
8647 + if (type === 'symbol') {
8648 + return String(value);
8649 + }
8650 + return value;
8651 + });
8652 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
8653 + }
8654 + return createChainableTypeChecker(validate);
8655 + }
5529 8656
5530 -//#endregion
5531 -//#region modules/ai/assets/js/editor/icons/expand-diagonal-icon.js
5532 - var ExpandDiagonalIcon;
5533 - var init_expand_diagonal_icon = __esmMin((() => {
5534 - init_extends();
5535 - ExpandDiagonalIcon = react.default.forwardRef(function(props, ref) {
5536 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({ viewBox: "0 0 24 24" }, props, { ref }), /*#__PURE__*/ react.default.createElement("path", {
5537 - fillRule: "evenodd",
5538 - clipRule: "evenodd",
5539 - 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"
5540 - }));
5541 - });
5542 - }));
8657 + function createObjectOfTypeChecker(typeChecker) {
8658 + function validate(props, propName, componentName, location, propFullName) {
8659 + if (typeof typeChecker !== 'function') {
8660 + return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
8661 + }
8662 + var propValue = props[propName];
8663 + var propType = getPropType(propValue);
8664 + if (propType !== 'object') {
8665 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
8666 + }
8667 + for (var key in propValue) {
8668 + if (has(propValue, key)) {
8669 + var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8670 + if (error instanceof Error) {
8671 + return error;
8672 + }
8673 + }
8674 + }
8675 + return null;
8676 + }
8677 + return createChainableTypeChecker(validate);
8678 + }
5543 8679
5544 -//#endregion
5545 -//#region modules/ai/assets/js/editor/pages/form-layout/components/attachments/prompt-power-notice.js
5546 - var PromptPowerNotice;
5547 - var init_prompt_power_notice = __esmMin((() => {
5548 - init_use_introduction();
5549 - PromptPowerNotice = function PromptPowerNotice() {
5550 - var _useIntroduction = useIntroduction("e-ai-builder-attachments-power");
5551 - var isViewed = _useIntroduction.isViewed;
5552 - var markAsViewed = _useIntroduction.markAsViewed;
5553 - if (isViewed) return null;
5554 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
5555 - pt: 2,
5556 - px: 2,
5557 - pb: 0
5558 - } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Alert, {
5559 - severity: "info",
5560 - onClose: function onClose() {
5561 - return markAsViewed();
5562 - }
5563 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
5564 - variant: "body2",
5565 - display: "inline-block",
5566 - sx: { paddingInlineEnd: 1 }
5567 - }, (0, _wordpress_i18n.__)("You’ve got the power.", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
5568 - variant: "body2",
5569 - display: "inline-block"
5570 - }, (0, _wordpress_i18n.__)("Craft your prompt to affect content, images and/or colors - whichever you decide.", "elementor"))));
5571 - };
5572 - }));
8680 + function createUnionTypeChecker(arrayOfTypeCheckers) {
8681 + if (!Array.isArray(arrayOfTypeCheckers)) {
8682 + true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
8683 + return emptyFunctionThatReturnsNull;
8684 + }
5573 8685
5574 -//#endregion
5575 -//#region node_modules/validator/lib/util/assertString.js
5576 - var require_assertString = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5577 - Object.defineProperty(exports, "__esModule", { value: true });
5578 - exports.default = assertString;
5579 - function assertString(input) {
5580 - if (input === void 0 || input === null) throw new TypeError("Expected a string but received a ".concat(input));
5581 - if (input.constructor.name !== "String") throw new TypeError("Expected a string but received a ".concat(input.constructor.name));
5582 - }
5583 - module.exports = exports.default;
5584 - module.exports.default = exports.default;
5585 - }));
8686 + for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8687 + var checker = arrayOfTypeCheckers[i];
8688 + if (typeof checker !== 'function') {
8689 + printWarning(
8690 + 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
8691 + 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
8692 + );
8693 + return emptyFunctionThatReturnsNull;
8694 + }
8695 + }
5586 8696
5587 -//#endregion
5588 -//#region node_modules/validator/lib/util/checkHost.js
5589 - var require_checkHost = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5590 - Object.defineProperty(exports, "__esModule", { value: true });
5591 - exports.default = checkHost;
5592 - function isRegExp(obj) {
5593 - return Object.prototype.toString.call(obj) === "[object RegExp]";
5594 - }
5595 - function checkHost(host, matches) {
5596 - for (var i = 0; i < matches.length; i++) {
5597 - var match = matches[i];
5598 - if (host === match || isRegExp(match) && match.test(host)) return true;
5599 - }
5600 - return false;
5601 - }
5602 - module.exports = exports.default;
5603 - module.exports.default = exports.default;
5604 - }));
8697 + function validate(props, propName, componentName, location, propFullName) {
8698 + var expectedTypes = [];
8699 + for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
8700 + var checker = arrayOfTypeCheckers[i];
8701 + var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);
8702 + if (checkerResult == null) {
8703 + return null;
8704 + }
8705 + if (checkerResult.data && has(checkerResult.data, 'expectedType')) {
8706 + expectedTypes.push(checkerResult.data.expectedType);
8707 + }
8708 + }
8709 + var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';
8710 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));
8711 + }
8712 + return createChainableTypeChecker(validate);
8713 + }
5605 8714
5606 -//#endregion
5607 -//#region node_modules/validator/lib/util/includesString.js
5608 - var require_includesString = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5609 - Object.defineProperty(exports, "__esModule", { value: true });
5610 - exports.default = void 0;
5611 - var includes = function includes(str, val) {
5612 - return str.indexOf(val) !== -1;
5613 - };
5614 - exports.default = includes;
5615 - module.exports = exports.default;
5616 - module.exports.default = exports.default;
5617 - }));
8715 + function createNodeChecker() {
8716 + function validate(props, propName, componentName, location, propFullName) {
8717 + if (!isNode(props[propName])) {
8718 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
8719 + }
8720 + return null;
8721 + }
8722 + return createChainableTypeChecker(validate);
8723 + }
5618 8724
5619 -//#endregion
5620 -//#region node_modules/validator/lib/util/merge.js
5621 - var require_merge = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5622 - Object.defineProperty(exports, "__esModule", { value: true });
5623 - exports.default = merge;
5624 - function merge() {
5625 - var obj = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
5626 - var defaults = arguments.length > 1 ? arguments[1] : void 0;
5627 - for (var key in defaults) if (typeof obj[key] === "undefined") obj[key] = defaults[key];
5628 - return obj;
5629 - }
5630 - module.exports = exports.default;
5631 - module.exports.default = exports.default;
5632 - }));
8725 + function invalidValidatorError(componentName, location, propFullName, key, type) {
8726 + return new PropTypeError(
8727 + (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +
8728 + 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'
8729 + );
8730 + }
5633 8731
5634 -//#endregion
5635 -//#region node_modules/validator/lib/isFQDN.js
5636 - var require_isFQDN = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5637 - Object.defineProperty(exports, "__esModule", { value: true });
5638 - exports.default = isFQDN;
5639 - var _assertString = _interopRequireDefault(require_assertString());
5640 - var _merge = _interopRequireDefault(require_merge());
5641 - function _interopRequireDefault(e) {
5642 - return e && e.__esModule ? e : { default: e };
5643 - }
5644 - var default_fqdn_options = {
5645 - require_tld: true,
5646 - allow_underscores: false,
5647 - allow_trailing_dot: false,
5648 - allow_numeric_tld: false,
5649 - allow_wildcard: false,
5650 - ignore_max_length: false
5651 - };
5652 - function isFQDN(str, options) {
5653 - (0, _assertString.default)(str);
5654 - options = (0, _merge.default)(options, default_fqdn_options);
5655 - if (options.allow_trailing_dot && str[str.length - 1] === ".") str = str.substring(0, str.length - 1);
5656 - if (options.allow_wildcard === true && str.indexOf("*.") === 0) str = str.substring(2);
5657 - var parts = str.split(".");
5658 - var tld = parts[parts.length - 1];
5659 - if (options.require_tld) {
5660 - if (parts.length < 2) return false;
5661 - if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) return false;
5662 - if (/\s/.test(tld)) return false;
5663 - }
5664 - if (!options.allow_numeric_tld && /^\d+$/.test(tld)) return false;
5665 - return parts.every(function(part) {
5666 - if (part.length > 63 && !options.ignore_max_length) return false;
5667 - if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) return false;
5668 - if (/[\uff01-\uff5e]/.test(part)) return false;
5669 - if (/^-|-$/.test(part)) return false;
5670 - if (!options.allow_underscores && /_/.test(part)) return false;
5671 - return true;
5672 - });
5673 - }
5674 - module.exports = exports.default;
5675 - module.exports.default = exports.default;
5676 - }));
8732 + function createShapeTypeChecker(shapeTypes) {
8733 + function validate(props, propName, componentName, location, propFullName) {
8734 + var propValue = props[propName];
8735 + var propType = getPropType(propValue);
8736 + if (propType !== 'object') {
8737 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8738 + }
8739 + for (var key in shapeTypes) {
8740 + var checker = shapeTypes[key];
8741 + if (typeof checker !== 'function') {
8742 + return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8743 + }
8744 + var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8745 + if (error) {
8746 + return error;
8747 + }
8748 + }
8749 + return null;
8750 + }
8751 + return createChainableTypeChecker(validate);
8752 + }
5677 8753
5678 -//#endregion
5679 -//#region node_modules/validator/lib/isIP.js
5680 - var require_isIP = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5681 - Object.defineProperty(exports, "__esModule", { value: true });
5682 - exports.default = isIP;
5683 - var _assertString = _interopRequireDefault(require_assertString());
5684 - function _interopRequireDefault(e) {
5685 - return e && e.__esModule ? e : { default: e };
5686 - }
5687 - function _typeof(o) {
5688 - "@babel/helpers - typeof";
5689 - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
5690 - return typeof o;
5691 - } : function(o) {
5692 - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
5693 - }, _typeof(o);
5694 - }
5695 - /**
5696 - 11.3. Examples
5697 -
5698 - The following addresses
5699 -
5700 - fe80::1234 (on the 1st link of the node)
5701 - ff02::5678 (on the 5th link of the node)
5702 - ff08::9abc (on the 10th organization of the node)
5703 -
5704 - would be represented as follows:
5705 -
5706 - fe80::1234%1
5707 - ff02::5678%5
5708 - ff08::9abc%10
5709 -
5710 - (Here we assume a natural translation from a zone index to the
5711 - <zone_id> part, where the Nth zone of any scope is translated into
5712 - "N".)
5713 -
5714 - If we use interface names as <zone_id>, those addresses could also be
5715 - represented as follows:
5716 -
5717 - fe80::1234%ne0
5718 - ff02::5678%pvc1.3
5719 - ff08::9abc%interface10
5720 -
5721 - where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
5722 - to the 5th link, and "interface10" belongs to the 10th organization.
5723 - * * */
5724 - var IPv4SegmentFormat = "(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])";
5725 - var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
5726 - var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
5727 - var IPv6SegmentFormat = "(?:[0-9a-fA-F]{1,4})";
5728 - 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,})?$");
5729 - function isIP(ipAddress) {
5730 - var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
5731 - (0, _assertString.default)(ipAddress);
5732 - var version = (_typeof(options) === "object" ? options.version : arguments[1]) || "";
5733 - if (!version) return isIP(ipAddress, { version: 4 }) || isIP(ipAddress, { version: 6 });
5734 - if (version.toString() === "4") return IPv4AddressRegExp.test(ipAddress);
5735 - if (version.toString() === "6") return IPv6AddressRegExp.test(ipAddress);
5736 - return false;
5737 - }
5738 - module.exports = exports.default;
5739 - module.exports.default = exports.default;
5740 - }));
8754 + function createStrictShapeTypeChecker(shapeTypes) {
8755 + function validate(props, propName, componentName, location, propFullName) {
8756 + var propValue = props[propName];
8757 + var propType = getPropType(propValue);
8758 + if (propType !== 'object') {
8759 + return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
8760 + }
8761 + // We need to check all keys in case some are required but missing from props.
8762 + var allKeys = assign({}, props[propName], shapeTypes);
8763 + for (var key in allKeys) {
8764 + var checker = shapeTypes[key];
8765 + if (has(shapeTypes, key) && typeof checker !== 'function') {
8766 + return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));
8767 + }
8768 + if (!checker) {
8769 + return new PropTypeError(
8770 + 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
8771 + '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
8772 + '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
8773 + );
8774 + }
8775 + var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
8776 + if (error) {
8777 + return error;
8778 + }
8779 + }
8780 + return null;
8781 + }
5741 8782
5742 -//#endregion
5743 -//#region node_modules/validator/lib/isURL.js
5744 - var require_isURL = /* @__PURE__ */ __commonJSMin(((exports, module) => {
5745 - Object.defineProperty(exports, "__esModule", { value: true });
5746 - exports.default = isURL;
5747 - var _assertString = _interopRequireDefault(require_assertString());
5748 - var _checkHost = _interopRequireDefault(require_checkHost());
5749 - var _includesString = _interopRequireDefault(require_includesString());
5750 - var _isFQDN = _interopRequireDefault(require_isFQDN());
5751 - var _isIP = _interopRequireDefault(require_isIP());
5752 - var _merge = _interopRequireDefault(require_merge());
5753 - function _interopRequireDefault(e) {
5754 - return e && e.__esModule ? e : { default: e };
5755 - }
5756 - function _slicedToArray(r, e) {
5757 - return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
5758 - }
5759 - function _nonIterableRest() {
5760 - throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5761 - }
5762 - function _unsupportedIterableToArray(r, a) {
5763 - if (r) {
5764 - if ("string" == typeof r) return _arrayLikeToArray(r, a);
5765 - var t = {}.toString.call(r).slice(8, -1);
5766 - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
5767 - }
5768 - }
5769 - function _arrayLikeToArray(r, a) {
5770 - (null == a || a > r.length) && (a = r.length);
5771 - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
5772 - return n;
5773 - }
5774 - function _iterableToArrayLimit(r, l) {
5775 - var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
5776 - if (null != t) {
5777 - var e;
5778 - var n;
5779 - var i;
5780 - var u;
5781 - var a = [];
5782 - var f = !0;
5783 - var o = !1;
5784 - try {
5785 - if (i = (t = t.call(r)).next, 0 === l) {
5786 - if (Object(t) !== t) return;
5787 - f = !1;
5788 - } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
5789 - } catch (r) {
5790 - o = !0, n = r;
5791 - } finally {
5792 - try {
5793 - if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
5794 - } finally {
5795 - if (o) throw n;
5796 - }
5797 - }
5798 - return a;
5799 - }
5800 - }
5801 - function _arrayWithHoles(r) {
5802 - if (Array.isArray(r)) return r;
5803 - }
5804 - var default_url_options = {
5805 - protocols: [
5806 - "http",
5807 - "https",
5808 - "ftp"
5809 - ],
5810 - require_tld: true,
5811 - require_protocol: false,
5812 - require_host: true,
5813 - require_port: false,
5814 - require_valid_protocol: true,
5815 - allow_underscores: false,
5816 - allow_trailing_dot: false,
5817 - allow_protocol_relative_urls: false,
5818 - allow_fragments: true,
5819 - allow_query_components: true,
5820 - validate_length: true,
5821 - max_allowed_length: 2084
5822 - };
5823 - var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
5824 - function isURL(url, options) {
5825 - (0, _assertString.default)(url);
5826 - if (!url || /[\s<>]/.test(url)) return false;
5827 - if (url.indexOf("mailto:") === 0) return false;
5828 - options = (0, _merge.default)(options, default_url_options);
5829 - if (options.validate_length && url.length > options.max_allowed_length) return false;
5830 - if (!options.allow_fragments && (0, _includesString.default)(url, "#")) return false;
5831 - if (!options.allow_query_components && ((0, _includesString.default)(url, "?") || (0, _includesString.default)(url, "&"))) return false;
5832 - var protocol;
5833 - var auth;
5834 - var host;
5835 - var hostname;
5836 - var port;
5837 - var port_str;
5838 - var split = url.split("#");
5839 - var ipv6;
5840 - url = split.shift();
5841 - split = url.split("?");
5842 - url = split.shift();
5843 - var protocol_match = url.match(/^([a-z][a-z0-9+\-.]*):/i);
5844 - var had_explicit_protocol = false;
5845 - var cleanUpProtocol = function cleanUpProtocol(potential_protocol) {
5846 - had_explicit_protocol = true;
5847 - protocol = potential_protocol.toLowerCase();
5848 - if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) return false;
5849 - return url.substring(protocol_match[0].length);
5850 - };
5851 - if (protocol_match) {
5852 - var potential_protocol = protocol_match[1];
5853 - var after_colon = url.substring(protocol_match[0].length);
5854 - if (!(after_colon.slice(0, 2) === "//")) {
5855 - var first_slash_position = after_colon.indexOf("/");
5856 - var before_slash = first_slash_position === -1 ? after_colon : after_colon.substring(0, first_slash_position);
5857 - var at_position = before_slash.indexOf("@");
5858 - if (at_position !== -1) {
5859 - var before_at = before_slash.substring(0, at_position);
5860 - if (/^[a-zA-Z0-9\-_.%:]*$/.test(before_at)) {
5861 - if (options.require_protocol) return false;
5862 - } else {
5863 - url = cleanUpProtocol(potential_protocol);
5864 - if (url === false) return false;
5865 - }
5866 - } else if (/^[0-9]/.test(after_colon)) {
5867 - if (options.require_protocol) return false;
5868 - } else {
5869 - url = cleanUpProtocol(potential_protocol);
5870 - if (url === false) return false;
5871 - }
5872 - } else {
5873 - url = cleanUpProtocol(potential_protocol);
5874 - if (url === false) return false;
5875 - }
5876 - } else if (options.require_protocol) return false;
5877 - if (url.slice(0, 2) === "//") {
5878 - if (!had_explicit_protocol && !options.allow_protocol_relative_urls) return false;
5879 - url = url.slice(2);
5880 - }
5881 - if (url === "") return false;
5882 - split = url.split("/");
5883 - url = split.shift();
5884 - if (url === "" && !options.require_host) return true;
5885 - split = url.split("@");
5886 - if (split.length > 1) {
5887 - if (options.disallow_auth) return false;
5888 - if (split[0] === "") return false;
5889 - auth = split.shift();
5890 - if (auth.indexOf(":") >= 0 && auth.split(":").length > 2) return false;
5891 - var _auth$split2 = _slicedToArray(auth.split(":"), 2);
5892 - var user = _auth$split2[0];
5893 - var password = _auth$split2[1];
5894 - if (user === "" && password === "") return false;
5895 - }
5896 - hostname = split.join("@");
5897 - port_str = null;
5898 - ipv6 = null;
5899 - var ipv6_match = hostname.match(wrapped_ipv6);
5900 - if (ipv6_match) {
5901 - host = "";
5902 - ipv6 = ipv6_match[1];
5903 - port_str = ipv6_match[2] || null;
5904 - } else {
5905 - split = hostname.split(":");
5906 - host = split.shift();
5907 - if (split.length) port_str = split.join(":");
5908 - }
5909 - if (port_str !== null && port_str.length > 0) {
5910 - port = parseInt(port_str, 10);
5911 - if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) return false;
5912 - } else if (options.require_port) return false;
5913 - if (options.host_whitelist) return (0, _checkHost.default)(host, options.host_whitelist);
5914 - if (host === "" && !options.require_host) return true;
5915 - if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) return false;
5916 - host = host || ipv6;
5917 - if (options.host_blacklist && (0, _checkHost.default)(host, options.host_blacklist)) return false;
5918 - return true;
5919 - }
5920 - module.exports = exports.default;
5921 - module.exports.default = exports.default;
5922 - }));
8783 + return createChainableTypeChecker(validate);
8784 + }
5923 8785
5924 -//#endregion
5925 -//#region modules/ai/assets/js/editor/icons/bulb-icon.js
5926 - var BulbIcon;
5927 - var init_bulb_icon = __esmMin((() => {
5928 - init_extends();
5929 - BulbIcon = react.default.forwardRef(function(props, ref) {
5930 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.SvgIcon, _extends({}, props, { ref }), /*#__PURE__*/ react.default.createElement("svg", {
5931 - width: "22",
5932 - height: "22",
5933 - viewBox: "0 0 22 22",
5934 - fill: "none",
5935 - xmlns: "http://www.w3.org/2000/svg"
5936 - }, /*#__PURE__*/ react.default.createElement("g", { clipPath: "url(#clip0_10743_8902)" }, /*#__PURE__*/ react.default.createElement("path", {
5937 - 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",
5938 - stroke: "#2563EB",
5939 - strokeWidth: "1.5",
5940 - strokeLinecap: "round",
5941 - strokeLinejoin: "round"
5942 - }), /*#__PURE__*/ react.default.createElement("path", {
5943 - 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",
5944 - stroke: "#2563EB",
5945 - strokeWidth: "1.5",
5946 - strokeLinecap: "round",
5947 - strokeLinejoin: "round"
5948 - }), /*#__PURE__*/ react.default.createElement("path", {
5949 - d: "M10.0833 16.5H11.9166",
5950 - stroke: "#2563EB",
5951 - strokeWidth: "1.5",
5952 - strokeLinecap: "round",
5953 - strokeLinejoin: "round"
5954 - })), /*#__PURE__*/ react.default.createElement("defs", null, /*#__PURE__*/ react.default.createElement("clipPath", { id: "clip0_10743_8902" }, /*#__PURE__*/ react.default.createElement("rect", {
5955 - width: "22",
5956 - height: "22",
5957 - fill: "white"
5958 - })))));
5959 - });
5960 - }));
8786 + function isNode(propValue) {
8787 + switch (typeof propValue) {
8788 + case 'number':
8789 + case 'string':
8790 + case 'undefined':
8791 + return true;
8792 + case 'boolean':
8793 + return !propValue;
8794 + case 'object':
8795 + if (Array.isArray(propValue)) {
8796 + return propValue.every(isNode);
8797 + }
8798 + if (propValue === null || isValidElement(propValue)) {
8799 + return true;
8800 + }
5961 8801
5962 -//#endregion
5963 -//#region modules/ai/assets/js/editor/components/voice-promotion-alert.js
5964 - function ownKeys$3(e, r) {
5965 - var t = Object.keys(e);
5966 - if (Object.getOwnPropertySymbols) {
5967 - var o = Object.getOwnPropertySymbols(e);
5968 - r && (o = o.filter(function(r) {
5969 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
5970 - })), t.push.apply(t, o);
5971 - }
5972 - return t;
5973 - }
5974 - function _objectSpread$3(e) {
5975 - for (var r = 1; r < arguments.length; r++) {
5976 - var t = null != arguments[r] ? arguments[r] : {};
5977 - r % 2 ? ownKeys$3(Object(t), !0).forEach(function(r) {
5978 - _defineProperty$1(e, r, t[r]);
5979 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function(r) {
5980 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
5981 - });
5982 - }
5983 - return e;
5984 - }
5985 - var import_prop_types$8, VoicePromotionAlert;
5986 - var init_voice_promotion_alert = __esmMin((() => {
5987 - init_defineProperty$1();
5988 - init_bulb_icon();
5989 - init_use_introduction();
5990 - import_prop_types$8 = /* @__PURE__ */ __toESM(require_prop_types());
5991 - __name(ownKeys$3, "ownKeys");
5992 - __name(_objectSpread$3, "_objectSpread");
5993 - VoicePromotionAlert = function VoicePromotionAlert(props) {
5994 - var _useIntroduction = useIntroduction(props.introductionKey);
5995 - var isViewed = _useIntroduction.isViewed;
5996 - var markAsViewed = _useIntroduction.markAsViewed;
5997 - if (isViewed) return null;
5998 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
5999 - sx: _objectSpread$3({ mt: 2 }, props.sx),
6000 - alignItems: "top"
6001 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Alert, {
6002 - severity: "info",
6003 - variant: "standard",
6004 - icon: /*#__PURE__*/ react.default.createElement(BulbIcon, { sx: { alignSelf: "flex-start" } }),
6005 - onClose: markAsViewed
6006 - }, (0, _wordpress_i18n.__)("Get improved results from AI by adding personal context.", "elementor"), /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
6007 - onClick: function onClick() {
6008 - return $e.route("panel/global/menu");
6009 - },
6010 - className: "elementor-clickable",
6011 - style: { textDecoration: "none" },
6012 - color: "info.main",
6013 - href: "#"
6014 - }, (0, _wordpress_i18n.__)("Let’s do it", "elementor"))));
6015 - };
6016 - VoicePromotionAlert.propTypes = {
6017 - sx: import_prop_types$8.default.object,
6018 - introductionKey: import_prop_types$8.default.string
6019 - };
6020 - }));
8802 + var iteratorFn = getIteratorFn(propValue);
8803 + if (iteratorFn) {
8804 + var iterator = iteratorFn.call(propValue);
8805 + var step;
8806 + if (iteratorFn !== propValue.entries) {
8807 + while (!(step = iterator.next()).done) {
8808 + if (!isNode(step.value)) {
8809 + return false;
8810 + }
8811 + }
8812 + } else {
8813 + // Iterator will provide entry [k,v] tuples rather than values.
8814 + while (!(step = iterator.next()).done) {
8815 + var entry = step.value;
8816 + if (entry) {
8817 + if (!isNode(entry[1])) {
8818 + return false;
8819 + }
8820 + }
8821 + }
8822 + }
8823 + } else {
8824 + return false;
8825 + }
6021 8826
6022 -//#endregion
6023 -//#region modules/ai/assets/js/editor/pages/form-layout/index.js
6024 - var import_prop_types$7, import_isURL, _excluded$2, DirectionalMinimizeDiagonalIcon, DirectionalExpandDiagonalIcon, RegenerateButton, UseLayoutButton, isRegenerateButtonDisabled, FormLayout;
6025 - var init_form_layout = __esmMin((() => {
6026 - init_toConsumableArray();
6027 - init_objectWithoutProperties$1();
6028 - init_slicedToArray();
6029 - init_extends();
6030 - import_prop_types$7 = /* @__PURE__ */ __toESM(require_prop_types());
6031 - init_prompt_error_message();
6032 - init_unsaved_changes_alert();
6033 - init_layout_dialog();
6034 - init_prompt_form();
6035 - init_refresh_icon();
6036 - init_screenshot$1();
6037 - init_use_screenshots();
6038 - init_use_slider();
6039 - init_minimize_diagonal_icon();
6040 - init_expand_diagonal_icon();
6041 - init_config();
6042 - init_attachment();
6043 - init_prompt_power_notice();
6044 - init_attachments();
6045 - init_attach_dialog();
6046 - import_isURL = /* @__PURE__ */ __toESM(require_isURL());
6047 - init_voice_promotion_alert();
6048 - _excluded$2 = ["children"];
6049 - DirectionalMinimizeDiagonalIcon = (0, _elementor_ui.withDirection)(MinimizeDiagonalIcon);
6050 - DirectionalExpandDiagonalIcon = (0, _elementor_ui.withDirection)(ExpandDiagonalIcon);
6051 - RegenerateButton = function RegenerateButton(props) {
6052 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, _extends({
6053 - size: "small",
6054 - color: "secondary",
6055 - startIcon: /*#__PURE__*/ react.default.createElement(RefreshIcon, null)
6056 - }, props), (0, _wordpress_i18n.__)("Regenerate", "elementor"));
6057 - };
6058 - UseLayoutButton = function UseLayoutButton(props) {
6059 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, _extends({
6060 - size: "small",
6061 - variant: "contained"
6062 - }, props), (0, _wordpress_i18n.__)("Use Layout", "elementor"));
6063 - };
6064 - UseLayoutButton.propTypes = { sx: import_prop_types$7.default.object };
6065 - isRegenerateButtonDisabled = function isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive) {
6066 - if (isLoading || isPromptFormActive) return true;
6067 - return screenshots.length >= 3 * 5;
6068 - };
6069 - FormLayout = function FormLayout(_ref) {
6070 - var _screenshots$selected;
6071 - var _screenshots$2;
6072 - var _ref$DialogHeaderProp = _ref.DialogHeaderProps;
6073 - var DialogHeaderProps = _ref$DialogHeaderProp === void 0 ? {} : _ref$DialogHeaderProp;
6074 - var _ref$DialogContentPro = _ref.DialogContentProps;
6075 - var DialogContentProps = _ref$DialogContentPro === void 0 ? {} : _ref$DialogContentPro;
6076 - var initialAttachments = _ref.attachments;
6077 - var _useConfig = useConfig();
6078 - var attachmentsTypes = _useConfig.attachmentsTypes;
6079 - var onData = _useConfig.onData;
6080 - var onInsert = _useConfig.onInsert;
6081 - var onSelect = _useConfig.onSelect;
6082 - var onClose = _useConfig.onClose;
6083 - var onGenerate = _useConfig.onGenerate;
6084 - var _useScreenshots = useScreenshots({ onData });
6085 - var screenshots = _useScreenshots.screenshots;
6086 - var generate = _useScreenshots.generate;
6087 - var regenerate = _useScreenshots.regenerate;
6088 - var isLoading = _useScreenshots.isLoading;
6089 - var error = _useScreenshots.error;
6090 - var abort = _useScreenshots.abort;
6091 - var screenshotOutlineOffset = "2px";
6092 - var _useSlider = useSlider({ slidesCount: screenshots.length });
6093 - var currentPage = _useSlider.currentPage;
6094 - var setCurrentPage = _useSlider.setCurrentPage;
6095 - var pagesCount = _useSlider.pagesCount;
6096 - var gapPercentage = _useSlider.gapPercentage;
6097 - var slidesPerPage = _useSlider.slidesPerPage;
6098 - var offsetXPercentage = _useSlider.offsetXPercentage;
6099 - var slideWidthPercentage = _useSlider.slideWidthPercentage;
6100 - var _useState2 = _slicedToArray((0, react.useState)(-1), 2);
6101 - var selectedScreenshotIndex = _useState2[0];
6102 - var setSelectedScreenshotIndex = _useState2[1];
6103 - var _useState4 = _slicedToArray((0, react.useState)(false), 2);
6104 - var showUnsavedChangesAlert = _useState4[0];
6105 - var setShowUnsavedChangesAlert = _useState4[1];
6106 - var _useState6 = _slicedToArray((0, react.useState)(true), 2);
6107 - var isPromptEditable = _useState6[0];
6108 - var setIsPromptEditable = _useState6[1];
6109 - var _useState8 = _slicedToArray((0, react.useState)([]), 2);
6110 - var attachments = _useState8[0];
6111 - var setAttachments = _useState8[1];
6112 - var _useState0 = _slicedToArray((0, react.useState)(false), 2);
6113 - var shouldRenderWebApp = _useState0[0];
6114 - var setShouldRenderWebApp = _useState0[1];
6115 - var _useState10 = _slicedToArray((0, react.useState)(false), 2);
6116 - var isMinimized = _useState10[0];
6117 - var setIsMinimized = _useState10[1];
6118 - var lastRun = (0, react.useRef)(function() {});
6119 - var promptInputRef = (0, react.useRef)(null);
6120 - var selectedTemplate = (_screenshots$selected = screenshots[selectedScreenshotIndex]) === null || _screenshots$selected === void 0 ? void 0 : _screenshots$selected.template;
6121 - var dialogContentChildren = DialogContentProps.children;
6122 - var dialogContentProps = _objectWithoutProperties$1(DialogContentProps, _excluded$2);
6123 - var shouldFallbackToEditPrompt = !!(error && 0 === screenshots.length);
6124 - var isPromptFormActive = isPromptEditable || shouldFallbackToEditPrompt;
6125 - var abortAndClose = function abortAndClose() {
6126 - abort();
6127 - onClose();
6128 - };
6129 - var onCloseIntent = function onCloseIntent() {
6130 - if (promptInputRef.current.value.trim() !== "" || screenshots.length > 0) return setShowUnsavedChangesAlert(true);
6131 - abortAndClose();
6132 - };
6133 - var handleGenerate = function handleGenerate(event, prompt) {
6134 - event.preventDefault();
6135 - if ("" === prompt.trim() && 0 === attachments.length) return;
6136 - if ((0, import_isURL.default)(prompt)) {
6137 - setShouldRenderWebApp(true);
6138 - return;
6139 - }
6140 - onGenerate();
6141 - lastRun.current = function() {
6142 - setSelectedScreenshotIndex(-1);
6143 - generate(prompt, attachments);
6144 - };
6145 - lastRun.current();
6146 - setIsPromptEditable(false);
6147 - setCurrentPage(1);
6148 - };
6149 - var handleRegenerate = function handleRegenerate() {
6150 - lastRun.current = function() {
6151 - regenerate(promptInputRef.current.value, attachments);
6152 - setCurrentPage(pagesCount + 1);
6153 - };
6154 - lastRun.current();
6155 - };
6156 - var applyTemplate = function applyTemplate() {
6157 - onInsert(selectedTemplate);
6158 - screenshots[selectedScreenshotIndex].sendUsageData();
6159 - abortAndClose();
6160 - };
6161 - var handleScreenshotClick = function handleScreenshotClick(index, template) {
6162 - return function() {
6163 - if (isPromptFormActive) return;
6164 - setSelectedScreenshotIndex(index);
6165 - onSelect(template);
6166 - };
6167 - };
6168 - /**
6169 - * @param {Attachment[]} items
6170 - */
6171 - var onAttach = function onAttach(items) {
6172 - items.forEach(function(item) {
6173 - if (!attachmentsTypes[item.type]) throw new Error("Invalid attachment type: ".concat(item.type));
6174 - var typeConfig = attachmentsTypes[item.type];
6175 - if (!item.previewHTML && typeConfig.previewGenerator) typeConfig.previewGenerator(item.content).then(function(html) {
6176 - item.previewHTML = html;
6177 - setAttachments(function(prev) {
6178 - return prev.map(function(attachment) {
6179 - if (attachment.content === item.content) return item;
6180 - return attachment;
6181 - });
6182 - });
6183 - });
6184 - });
6185 - setAttachments(items);
6186 - setShouldRenderWebApp(false);
6187 - setIsPromptEditable(true);
6188 - };
6189 - (0, react.useEffect)(function() {
6190 - var _screenshots$;
6191 - if ((_screenshots$ = screenshots[0]) === null || _screenshots$ === void 0 ? void 0 : _screenshots$.template) {
6192 - onSelect(screenshots[0].template);
6193 - setSelectedScreenshotIndex(0);
6194 - }
6195 - }, [(_screenshots$2 = screenshots[0]) === null || _screenshots$2 === void 0 ? void 0 : _screenshots$2.template]);
6196 - (0, react.useEffect)(function() {
6197 - if (initialAttachments !== null && initialAttachments !== void 0 && initialAttachments.length) onAttach(initialAttachments);
6198 - }, []);
6199 - return /*#__PURE__*/ react.default.createElement(LayoutDialog, { onClose: onCloseIntent }, /*#__PURE__*/ react.default.createElement(LayoutDialog.Header, _extends({ onClose: onCloseIntent }, DialogHeaderProps), DialogHeaderProps.children, /*#__PURE__*/ react.default.createElement(_elementor_ui.Tooltip, { title: isMinimized ? (0, _wordpress_i18n.__)("Expand", "elementor") : (0, _wordpress_i18n.__)("Minimize", "elementor") }, /*#__PURE__*/ react.default.createElement(_elementor_ui.IconButton, {
6200 - size: "small",
6201 - "aria-label": "minimize",
6202 - onClick: function onClick() {
6203 - return setIsMinimized(function(prev) {
6204 - return !prev;
6205 - });
6206 - }
6207 - }, isMinimized ? /*#__PURE__*/ react.default.createElement(DirectionalExpandDiagonalIcon, null) : /*#__PURE__*/ react.default.createElement(DirectionalMinimizeDiagonalIcon, null)))), /*#__PURE__*/ react.default.createElement(LayoutDialog.Content, _extends({ dividers: true }, dialogContentProps), /*#__PURE__*/ react.default.createElement(_elementor_ui.Collapse, { in: !isMinimized }, dialogContentChildren && /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
6208 - pt: 2,
6209 - px: 2,
6210 - pb: 0
6211 - } }, dialogContentChildren), attachments.length > 0 && /*#__PURE__*/ react.default.createElement(PromptPowerNotice, null), error && /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
6212 - pt: 2,
6213 - px: 2,
6214 - pb: 0
6215 - } }, /*#__PURE__*/ react.default.createElement(PromptErrorMessage, {
6216 - error,
6217 - onRetry: lastRun.current
6218 - })), showUnsavedChangesAlert && /*#__PURE__*/ react.default.createElement(UnsavedChangesAlert, {
6219 - open: showUnsavedChangesAlert,
6220 - title: (0, _wordpress_i18n.__)("Leave Elementor AI?", "elementor"),
6221 - text: (0, _wordpress_i18n.__)("Your progress will be deleted, and can't be recovered.", "elementor"),
6222 - onClose: abortAndClose,
6223 - onCancel: function onCancel() {
6224 - return setShowUnsavedChangesAlert(false);
6225 - }
6226 - }), shouldRenderWebApp && /*#__PURE__*/ react.default.createElement(AttachDialog, {
6227 - type: "url",
6228 - url: promptInputRef.current.value,
6229 - onAttach,
6230 - onClose: function onClose() {
6231 - setShouldRenderWebApp(false);
6232 - }
6233 - }), /*#__PURE__*/ react.default.createElement(PromptForm, {
6234 - shouldResetPrompt: shouldRenderWebApp,
6235 - ref: promptInputRef,
6236 - isActive: isPromptFormActive,
6237 - isLoading,
6238 - showActions: screenshots.length > 0 || isLoading,
6239 - attachmentsTypes,
6240 - attachments,
6241 - onAttach,
6242 - onDetach: function onDetach(index) {
6243 - setAttachments(function(prev) {
6244 - var newAttachments = _toConsumableArray(prev);
6245 - newAttachments.splice(index, 1);
6246 - return newAttachments;
6247 - });
6248 - setIsPromptEditable(true);
6249 - },
6250 - onSubmit: handleGenerate,
6251 - onBack: function onBack() {
6252 - return setIsPromptEditable(false);
6253 - },
6254 - onEdit: function onEdit() {
6255 - return setIsPromptEditable(true);
6256 - }
6257 - }), (screenshots.length > 0 || isLoading) && /*#__PURE__*/ react.default.createElement(react.default.Fragment, null, /*#__PURE__*/ react.default.createElement(_elementor_ui.Divider, null), /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: { p: 1.5 } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
6258 - overflow: "hidden",
6259 - p: .5
6260 - } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, { sx: {
6261 - display: "flex",
6262 - transition: "all 0.4s ease",
6263 - gap: "".concat(gapPercentage, "%"),
6264 - transform: "translateX(".concat(offsetXPercentage, "%)")
6265 - } }, screenshots.map(function(_ref2, index) {
6266 - var screenshot = _ref2.screenshot;
6267 - var type = _ref2.type;
6268 - var template = _ref2.template;
6269 - var isError = _ref2.isError;
6270 - var isPending = _ref2.isPending;
6271 - return /*#__PURE__*/ react.default.createElement(Screenshot, {
6272 - key: index,
6273 - url: screenshot,
6274 - type,
6275 - disabled: isPromptFormActive,
6276 - isPlaceholder: isError,
6277 - isLoading: isPending,
6278 - isSelected: selectedScreenshotIndex === index,
6279 - onClick: handleScreenshotClick(index, template),
6280 - outlineOffset: screenshotOutlineOffset,
6281 - sx: { flex: "0 0 ".concat(slideWidthPercentage, "%") }
6282 - });
6283 - }))), /*#__PURE__*/ react.default.createElement(VoicePromotionAlert, { introductionKey: "ai-context-layout-promotion" })), screenshots.length > 0 && /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
6284 - sx: {
6285 - pt: 0,
6286 - px: 2,
6287 - pb: 2
6288 - },
6289 - display: "grid",
6290 - gridTemplateColumns: "repeat(3, 1fr)",
6291 - justifyItems: "center"
6292 - }, /*#__PURE__*/ react.default.createElement(RegenerateButton, {
6293 - onClick: handleRegenerate,
6294 - disabled: isRegenerateButtonDisabled(screenshots, isLoading, isPromptFormActive),
6295 - sx: { justifySelf: "start" }
6296 - }), screenshots.length > slidesPerPage && /*#__PURE__*/ react.default.createElement(_elementor_ui.Pagination, {
6297 - page: currentPage,
6298 - count: pagesCount,
6299 - disabled: isPromptFormActive,
6300 - onChange: function onChange(_, page) {
6301 - return setCurrentPage(page);
6302 - }
6303 - }), /*#__PURE__*/ react.default.createElement(UseLayoutButton, {
6304 - onClick: applyTemplate,
6305 - disabled: isPromptFormActive || -1 === selectedScreenshotIndex,
6306 - sx: {
6307 - justifySelf: "end",
6308 - gridColumn: 3
6309 - }
6310 - }))))));
6311 - };
6312 - FormLayout.propTypes = {
6313 - DialogHeaderProps: import_prop_types$7.default.object,
6314 - DialogContentProps: import_prop_types$7.default.object,
6315 - attachments: import_prop_types$7.default.arrayOf(AttachmentPropType)
6316 - };
6317 - }));
8827 + return true;
8828 + default:
8829 + return false;
8830 + }
8831 + }
6318 8832
6319 -//#endregion
6320 -//#region modules/ai/assets/js/editor/pages/get-started/index.js
6321 - var import_regenerator$3, import_prop_types$6, GetStarted;
6322 - var init_get_started = __esmMin((() => {
6323 - init_asyncToGenerator$1();
6324 - init_slicedToArray();
6325 - import_regenerator$3 = /* @__PURE__ */ __toESM(require_regenerator());
6326 - import_prop_types$6 = /* @__PURE__ */ __toESM(require_prop_types());
6327 - init_api();
6328 - GetStarted = function GetStarted(_ref) {
6329 - var onSuccess = _ref.onSuccess;
6330 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
6331 - var isTermsChecked = _useState2[0];
6332 - var setIsTermsChecked = _useState2[1];
6333 - var onGetStartedClick = /*#__PURE__*/ function() {
6334 - var _ref2 = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$3.default.mark(function _callee() {
6335 - return import_regenerator$3.default.wrap(function(_context) {
6336 - while (1) switch (_context.prev = _context.next) {
6337 - case 0:
6338 - _context.next = 1;
6339 - return setGetStarted();
6340 - case 1: onSuccess();
6341 - case 2:
6342 - case "end": return _context.stop();
6343 - }
6344 - }, _callee);
6345 - }));
6346 - return function onGetStartedClick() {
6347 - return _ref2.apply(this, arguments);
6348 - };
6349 - }();
6350 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
6351 - alignItems: "center",
6352 - gap: 1.5
6353 - }, /*#__PURE__*/ react.default.createElement(_elementor_icons.AIIcon, { sx: {
6354 - color: "text.primary",
6355 - fontSize: "60px",
6356 - mb: 1
6357 - } }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
6358 - variant: "h4",
6359 - sx: { color: "text.primary" }
6360 - }, (0, _wordpress_i18n.__)("Step into the future with Elementor AI", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { variant: "body2" }, (0, _wordpress_i18n.__)("Create smarter with AI text and code generators built right into the editor.", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, {
6361 - direction: "row",
6362 - gap: 1.5,
6363 - alignItems: "flex-start"
6364 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Checkbox, {
6365 - id: "e-ai-terms-approval",
6366 - color: "secondary",
6367 - checked: isTermsChecked,
6368 - onClick: function onClick() {
6369 - return setIsTermsChecked(function(prevState) {
6370 - return !prevState;
6371 - });
6372 - }
6373 - }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Stack, null, /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
6374 - variant: "caption",
6375 - sx: { maxWidth: 520 },
6376 - component: "label",
6377 - htmlFor: "e-ai-terms-approval"
6378 - }, " ", (0, _wordpress_i18n.__)("I approve the ", "elementor"), /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
6379 - href: "https://go.elementor.com/ai-terms/",
6380 - target: "_blank",
6381 - color: "info.main"
6382 - }, (0, _wordpress_i18n.__)("Terms of Service", "elementor")), " & ", /*#__PURE__*/ react.default.createElement(_elementor_ui.Link, {
6383 - href: "https://go.elementor.com/ai-privacy-policy/",
6384 - target: "_blank",
6385 - color: "info.main"
6386 - }, (0, _wordpress_i18n.__)("Privacy Policy", "elementor")), (0, _wordpress_i18n.__)(" of the Elementor AI service.", "elementor"), /*#__PURE__*/ react.default.createElement("br", null), (0, _wordpress_i18n.__)("This includes consenting to the collection and use of data to improve user experience.", "elementor")))), /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
6387 - disabled: !isTermsChecked,
6388 - variant: "contained",
6389 - onClick: onGetStartedClick,
6390 - sx: {
6391 - mt: 1,
6392 - "&:hover": { color: "primary.contrastText" }
6393 - }
6394 - }, (0, _wordpress_i18n.__)("Get Started", "elementor")));
6395 - };
6396 - GetStarted.propTypes = { onSuccess: import_prop_types$6.default.func.isRequired };
6397 - }));
8833 + function isSymbol(propType, propValue) {
8834 + // Native Symbol.
8835 + if (propType === 'symbol') {
8836 + return true;
8837 + }
6398 8838
6399 -//#endregion
6400 -//#region modules/ai/assets/js/editor/components/loader.js
6401 - function ownKeys$2(e, r) {
6402 - var t = Object.keys(e);
6403 - if (Object.getOwnPropertySymbols) {
6404 - var o = Object.getOwnPropertySymbols(e);
6405 - r && (o = o.filter(function(r) {
6406 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
6407 - })), t.push.apply(t, o);
6408 - }
6409 - return t;
6410 - }
6411 - function _objectSpread$2(e) {
6412 - for (var r = 1; r < arguments.length; r++) {
6413 - var t = null != arguments[r] ? arguments[r] : {};
6414 - r % 2 ? ownKeys$2(Object(t), !0).forEach(function(r) {
6415 - _defineProperty$1(e, r, t[r]);
6416 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function(r) {
6417 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
6418 - });
6419 - }
6420 - return e;
6421 - }
6422 - var import_prop_types$5, _excluded$1, Loader;
6423 - var init_loader = __esmMin((() => {
6424 - init_extends();
6425 - init_defineProperty$1();
6426 - init_objectWithoutProperties$1();
6427 - import_prop_types$5 = /* @__PURE__ */ __toESM(require_prop_types());
6428 - _excluded$1 = ["sx", "BoxProps"];
6429 - __name(ownKeys$2, "ownKeys");
6430 - __name(_objectSpread$2, "_objectSpread");
6431 - Loader = function Loader(_ref) {
6432 - var _ref$sx = _ref.sx;
6433 - var sx = _ref$sx === void 0 ? {} : _ref$sx;
6434 - var _ref$BoxProps = _ref.BoxProps;
6435 - var BoxProps = _ref$BoxProps === void 0 ? {} : _ref$BoxProps;
6436 - var props = _objectWithoutProperties$1(_ref, _excluded$1);
6437 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, _extends({
6438 - width: "100%",
6439 - display: "flex",
6440 - alignItems: "center"
6441 - }, BoxProps, { sx: _objectSpread$2({
6442 - px: 1.5,
6443 - minHeight: function minHeight(theme) {
6444 - return theme.spacing(5);
6445 - }
6446 - }, BoxProps.sx || {}) }), /*#__PURE__*/ react.default.createElement(_elementor_ui.LinearProgress, _extends({ color: "secondary" }, props, { sx: _objectSpread$2({ width: "100%" }, sx) })));
6447 - };
6448 - Loader.propTypes = {
6449 - sx: import_prop_types$5.default.object,
6450 - BoxProps: import_prop_types$5.default.object
6451 - };
6452 - }));
8839 + // falsy value can't be a Symbol
8840 + if (!propValue) {
8841 + return false;
8842 + }
6453 8843
6454 -//#endregion
6455 -//#region modules/ai/assets/js/editor/components/upgrade-chip.js
6456 - var import_prop_types$4, popoverId, StyledContent, StyledArrow, upgradeBullets, Chip, UpgradeChip;
6457 - var init_upgrade_chip = __esmMin((() => {
6458 - init_slicedToArray();
6459 - import_prop_types$4 = /* @__PURE__ */ __toESM(require_prop_types());
6460 - popoverId = "e-ai-upgrade-popover";
6461 - StyledContent = (0, _elementor_ui.styled)(_elementor_ui.Paper)(function(_ref) {
6462 - var theme = _ref.theme;
6463 - return {
6464 - position: "relative",
6465 - "[data-popper-placement=\"top\"] &": { marginBottom: theme.spacing(2.5) },
6466 - "[data-popper-placement=\"bottom\"] &": { marginTop: theme.spacing(2.5) },
6467 - padding: theme.spacing(3),
6468 - boxShadow: theme.shadows[4],
6469 - zIndex: "9999"
6470 - };
6471 - });
6472 - StyledArrow = (0, _elementor_ui.styled)(_elementor_ui.Box)(function(_ref2) {
6473 - var theme = _ref2.theme;
6474 - return {
6475 - width: theme.spacing(5),
6476 - height: theme.spacing(2.5),
6477 - position: "absolute",
6478 - overflow: "hidden",
6479 - left: "50% !important",
6480 - transform: "translateX(-50%) rotate(var(--rotate, 0deg)) !important",
6481 - "[data-popper-placement=\"top\"] &": { top: "100%" },
6482 - "[data-popper-placement=\"bottom\"] &": {
6483 - "--rotate": "180deg",
6484 - top: "calc(".concat(theme.spacing(2.5), " * -1)")
6485 - },
6486 - "&::after": {
6487 - backgroundColor: theme.palette.background.paper,
6488 - content: "\"\"",
6489 - display: "block",
6490 - position: "absolute",
6491 - width: theme.spacing(2.5),
6492 - height: theme.spacing(2.5),
6493 - top: 0,
6494 - left: "50%",
6495 - transform: "translateX(-50%) translateY(-50%) rotate(45deg)",
6496 - boxShadow: "1px 1px 5px 0px rgba(0, 0, 0, 0.2)",
6497 - backgroundImage: "linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"
6498 - }
6499 - };
6500 - });
6501 - upgradeBullets = [
6502 - (0, _wordpress_i18n.__)("Get spot-on suggestions from AI Copilot and AI Context with appropriate designs, layouts, and content for your business.", "elementor"),
6503 - (0, _wordpress_i18n.__)("Generate professional texts about any topic, in any tone.", "elementor"),
6504 - (0, _wordpress_i18n.__)("Effortlessly create or enhance stunning images and bring your ideas to life.", "elementor"),
6505 - (0, _wordpress_i18n.__)("Unleash infinite possibilities with the custom code generator.", "elementor"),
6506 - (0, _wordpress_i18n.__)("Access 30-days of AI History with the AI Starter plan and 90-days with the Power plan.", "elementor")
6507 - ];
6508 - Chip = (0, _elementor_ui.styled)(_elementor_ui.Chip)(function() {
6509 - return {
6510 - "& .MuiChip-label": { lineHeight: 1.5 },
6511 - "& .MuiSvgIcon-root.MuiChip-icon": { fontSize: "1.25rem" }
6512 - };
6513 - });
6514 - UpgradeChip = function UpgradeChip(_ref3) {
6515 - var _ref3$hasSubscription = _ref3.hasSubscription;
6516 - var hasSubscription = _ref3$hasSubscription === void 0 ? false : _ref3$hasSubscription;
6517 - var _ref3$usagePercentage = _ref3.usagePercentage;
6518 - var usagePercentage = _ref3$usagePercentage === void 0 ? 0 : _ref3$usagePercentage;
6519 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
6520 - var isPopoverOpen = _useState2[0];
6521 - var setIsPopoverOpen = _useState2[1];
6522 - var anchorEl = (0, react.useRef)(null);
6523 - var arrowEl = (0, react.useRef)(null);
6524 - var showPopover = function showPopover() {
6525 - return setIsPopoverOpen(true);
6526 - };
6527 - var hidePopover = function hidePopover() {
6528 - return setIsPopoverOpen(false);
6529 - };
6530 - var actionUrl = "https://go.elementor.com/ai-popup-purchase-dropdown/";
6531 - if (hasSubscription) actionUrl = usagePercentage >= 100 ? "https://go.elementor.com/ai-popup-upgrade-limit-reached/" : "https://go.elementor.com/ai-popup-upgrade-limit-reached-80-percent/";
6532 - var actionLabel = hasSubscription ? (0, _wordpress_i18n.__)("Upgrade Elementor AI", "elementor") : (0, _wordpress_i18n.__)("Get Elementor AI", "elementor");
6533 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Box, {
6534 - component: "span",
6535 - "aria-owns": isPopoverOpen ? popoverId : void 0,
6536 - "aria-haspopup": "true",
6537 - onMouseEnter: showPopover,
6538 - onMouseLeave: hidePopover,
6539 - ref: anchorEl,
6540 - display: "flex",
6541 - alignItems: "center"
6542 - }, /*#__PURE__*/ react.default.createElement(Chip, {
6543 - color: "promotion",
6544 - label: (0, _wordpress_i18n.__)("Upgrade", "elementor"),
6545 - icon: /*#__PURE__*/ react.default.createElement(_elementor_icons.AIIcon, null),
6546 - size: "small"
6547 - }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Popper, {
6548 - open: isPopoverOpen,
6549 - anchorEl: anchorEl.current,
6550 - sx: {
6551 - zIndex: "170001",
6552 - maxWidth: 300
6553 - },
6554 - modifiers: [{
6555 - name: "arrow",
6556 - enabled: true,
6557 - options: { element: arrowEl.current }
6558 - }]
6559 - }, /*#__PURE__*/ react.default.createElement(StyledContent, null, /*#__PURE__*/ react.default.createElement(StyledArrow, { ref: arrowEl }), /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, {
6560 - variant: "h5",
6561 - color: "text.primary"
6562 - }, (0, _wordpress_i18n.__)("Unlimited access to Elementor AI", "elementor")), /*#__PURE__*/ react.default.createElement(_elementor_ui.List, { sx: { mb: 1 } }, upgradeBullets.map(function(bullet, index) {
6563 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.ListItem, {
6564 - key: index,
6565 - disableGutters: true,
6566 - sx: { alignItems: "flex-start" }
6567 - }, /*#__PURE__*/ react.default.createElement(_elementor_ui.ListItemIcon, null, /*#__PURE__*/ react.default.createElement(_elementor_icons.CheckedCircleIcon, null)), /*#__PURE__*/ react.default.createElement(_elementor_ui.ListItemText, { sx: { m: 0 } }, /*#__PURE__*/ react.default.createElement(_elementor_ui.Typography, { variant: "body2" }, bullet)));
6568 - })), /*#__PURE__*/ react.default.createElement(_elementor_ui.Button, {
6569 - variant: "contained",
6570 - color: "promotion",
6571 - size: "small",
6572 - href: actionUrl,
6573 - target: "_blank",
6574 - startIcon: /*#__PURE__*/ react.default.createElement(_elementor_icons.AIIcon, null),
6575 - sx: { "&:hover": { color: "promotion.contrastText" } }
6576 - }, actionLabel))));
6577 - };
6578 - UpgradeChip.propTypes = {
6579 - hasSubscription: import_prop_types$4.default.bool,
6580 - usagePercentage: import_prop_types$4.default.number
6581 - };
6582 - }));
8844 + // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
8845 + if (propValue['@@toStringTag'] === 'Symbol') {
8846 + return true;
8847 + }
6583 8848
6584 -//#endregion
6585 -//#region modules/ai/assets/js/editor/components/wizard-dialog.js
6586 - function ownKeys$1(e, r) {
6587 - var t = Object.keys(e);
6588 - if (Object.getOwnPropertySymbols) {
6589 - var o = Object.getOwnPropertySymbols(e);
6590 - r && (o = o.filter(function(r) {
6591 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
6592 - })), t.push.apply(t, o);
6593 - }
6594 - return t;
6595 - }
6596 - function _objectSpread$1(e) {
6597 - for (var r = 1; r < arguments.length; r++) {
6598 - var t = null != arguments[r] ? arguments[r] : {};
6599 - r % 2 ? ownKeys$1(Object(t), !0).forEach(function(r) {
6600 - _defineProperty$1(e, r, t[r]);
6601 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function(r) {
6602 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
6603 - });
6604 - }
6605 - return e;
6606 - }
6607 - var import_prop_types$3, _excluded, WizardDialog, WizardDialogContent;
6608 - var init_wizard_dialog = __esmMin((() => {
6609 - init_extends();
6610 - init_defineProperty$1();
6611 - init_objectWithoutProperties$1();
6612 - import_prop_types$3 = /* @__PURE__ */ __toESM(require_prop_types());
6613 - init_dialog_header();
6614 - _excluded = ["sx"];
6615 - __name(ownKeys$1, "ownKeys");
6616 - __name(_objectSpread$1, "_objectSpread");
6617 - WizardDialog = function WizardDialog(props) {
6618 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.Dialog, {
6619 - open: true,
6620 - onClose: props.onClose,
6621 - fullWidth: true,
6622 - hideBackdrop: true,
6623 - maxWidth: "lg",
6624 - PaperProps: { sx: { height: "88vh" } },
6625 - sx: { zIndex: 9999 }
6626 - }, props.children);
6627 - };
6628 - WizardDialog.propTypes = {
6629 - onClose: import_prop_types$3.default.func.isRequired,
6630 - children: import_prop_types$3.default.node.isRequired
6631 - };
6632 - WizardDialogContent = function WizardDialogContent(_ref) {
6633 - var _ref$sx = _ref.sx;
6634 - var sx = _ref$sx === void 0 ? {} : _ref$sx;
6635 - var props = _objectWithoutProperties$1(_ref, _excluded);
6636 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.DialogContent, _extends({}, props, { sx: _objectSpread$1({
6637 - display: "flex",
6638 - flexDirection: "column",
6639 - justifyContent: "center"
6640 - }, sx) }));
6641 - };
6642 - WizardDialogContent.propTypes = { sx: import_prop_types$3.default.object };
6643 - WizardDialog.Header = DialogHeader$1;
6644 - WizardDialog.Content = WizardDialogContent;
6645 - }));
8849 + // Fallback for non-spec compliant Symbols which are polyfilled.
8850 + if (typeof Symbol === 'function' && propValue instanceof Symbol) {
8851 + return true;
8852 + }
6646 8853
6647 -//#endregion
6648 -//#region modules/ai/assets/js/editor/layout-content.js
6649 - var import_prop_types$2, LayoutContent;
6650 - var init_layout_content = __esmMin((() => {
6651 - init_slicedToArray();
6652 - init_connect();
6653 - init_form_layout();
6654 - init_get_started();
6655 - init_loader();
6656 - init_upgrade_chip();
6657 - init_use_user_info();
6658 - init_wizard_dialog();
6659 - init_layout_dialog();
6660 - import_prop_types$2 = /* @__PURE__ */ __toESM(require_prop_types());
6661 - init_attachment();
6662 - init_config();
6663 - init_requests_ids();
6664 - LayoutContent = function LayoutContent(props) {
6665 - var _useUserInfo = useUserInfo();
6666 - var isLoading = _useUserInfo.isLoading;
6667 - var isConnected = _useUserInfo.isConnected;
6668 - var isGetStarted = _useUserInfo.isGetStarted;
6669 - var connectUrl = _useUserInfo.connectUrl;
6670 - var fetchData = _useUserInfo.fetchData;
6671 - var hasSubscription = _useUserInfo.hasSubscription;
6672 - var initialUsagePercentage = _useUserInfo.usagePercentage;
6673 - var _useConfig = useConfig();
6674 - var onClose = _useConfig.onClose;
6675 - var onConnect = _useConfig.onConnect;
6676 - var _useRequestIds = useRequestIds();
6677 - var updateUsagePercentage = _useRequestIds.updateUsagePercentage;
6678 - var usagePercentage = _useRequestIds.usagePercentage;
6679 - var _useState2 = _slicedToArray((0, react.useState)(false), 2);
6680 - var isInitUsageDone = _useState2[0];
6681 - var setIsInitUsageDone = _useState2[1];
6682 - (0, react.useEffect)(function() {
6683 - if (!isInitUsageDone && !isLoading && (initialUsagePercentage || 0 === initialUsagePercentage)) {
6684 - updateUsagePercentage(initialUsagePercentage);
6685 - setIsInitUsageDone(true);
6686 - }
6687 - }, [
6688 - isLoading,
6689 - initialUsagePercentage,
6690 - isInitUsageDone,
6691 - updateUsagePercentage
6692 - ]);
6693 - if (isLoading || !isInitUsageDone) return /*#__PURE__*/ react.default.createElement(LayoutDialog, { onClose }, /*#__PURE__*/ react.default.createElement(LayoutDialog.Header, { onClose }), /*#__PURE__*/ react.default.createElement(LayoutDialog.Content, { dividers: true }, /*#__PURE__*/ react.default.createElement(Loader, { BoxProps: { sx: { px: 3 } } })));
6694 - if (!isConnected) return /*#__PURE__*/ react.default.createElement(WizardDialog, { onClose }, /*#__PURE__*/ react.default.createElement(LayoutDialog, { onClose }), /*#__PURE__*/ react.default.createElement(WizardDialog.Content, { dividers: true }, /*#__PURE__*/ react.default.createElement(Connect, {
6695 - connectUrl,
6696 - onSuccess: function onSuccess(data) {
6697 - onConnect(data);
6698 - fetchData();
6699 - }
6700 - })));
6701 - if (!isGetStarted) return /*#__PURE__*/ react.default.createElement(WizardDialog, { onClose }, /*#__PURE__*/ react.default.createElement(LayoutDialog, { onClose }), /*#__PURE__*/ react.default.createElement(WizardDialog.Content, { dividers: true }, /*#__PURE__*/ react.default.createElement(GetStarted, { onSuccess: fetchData })));
6702 - var showUpgradeChip = !hasSubscription || 80 <= usagePercentage;
6703 - return /*#__PURE__*/ react.default.createElement(FormLayout, {
6704 - attachments: props.attachments,
6705 - DialogHeaderProps: { children: showUpgradeChip && /*#__PURE__*/ react.default.createElement(UpgradeChip, {
6706 - hasSubscription,
6707 - usagePercentage
6708 - }) }
6709 - });
6710 - };
6711 - LayoutContent.propTypes = { attachments: import_prop_types$2.default.arrayOf(AttachmentPropType) };
6712 - }));
8854 + return false;
8855 + }
6713 8856
6714 -//#endregion
6715 -//#region modules/ai/assets/js/editor/layout-app.js
6716 - var import_prop_types$1, LayoutApp;
6717 - var init_layout_app = __esmMin((() => {
6718 - import_prop_types$1 = /* @__PURE__ */ __toESM(require_prop_types());
6719 - init_layout_content();
6720 - init_attachment();
6721 - init_config();
6722 - init_remote_config();
6723 - init_requests_ids();
6724 - LayoutApp = function LayoutApp(props) {
6725 - return /*#__PURE__*/ react.default.createElement(RemoteConfigProvider, { onError: props.onClose }, /*#__PURE__*/ react.default.createElement(RequestIdsProvider, null, /*#__PURE__*/ react.default.createElement(ConfigProvider, {
6726 - mode: props.mode,
6727 - attachmentsTypes: props.attachmentsTypes,
6728 - onClose: props.onClose,
6729 - onConnect: props.onConnect,
6730 - onData: props.onData,
6731 - onInsert: props.onInsert,
6732 - onSelect: props.onSelect,
6733 - onGenerate: props.onGenerate,
6734 - currentContext: props.currentContext,
6735 - hasPro: props.hasPro
6736 - }, /*#__PURE__*/ react.default.createElement(LayoutContent, { attachments: props.attachments }))));
6737 - };
6738 - LayoutApp.propTypes = {
6739 - mode: import_prop_types$1.default.oneOf(LAYOUT_APP_MODES).isRequired,
6740 - attachmentsTypes: AttachmentsTypesPropType,
6741 - attachments: import_prop_types$1.default.arrayOf(AttachmentPropType),
6742 - onClose: import_prop_types$1.default.func.isRequired,
6743 - onConnect: import_prop_types$1.default.func.isRequired,
6744 - onData: import_prop_types$1.default.func.isRequired,
6745 - onInsert: import_prop_types$1.default.func.isRequired,
6746 - onSelect: import_prop_types$1.default.func.isRequired,
6747 - onGenerate: import_prop_types$1.default.func.isRequired,
6748 - currentContext: import_prop_types$1.default.object,
6749 - hasPro: import_prop_types$1.default.bool
6750 - };
6751 - }));
8857 + // Equivalent of `typeof` but with special handling for array and regexp.
8858 + function getPropType(propValue) {
8859 + var propType = typeof propValue;
8860 + if (Array.isArray(propValue)) {
8861 + return 'array';
8862 + }
8863 + if (propValue instanceof RegExp) {
8864 + // Old webkits (at least until Android 4.0) return 'function' rather than
8865 + // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
8866 + // passes PropTypes.object.
8867 + return 'object';
8868 + }
8869 + if (isSymbol(propType, propValue)) {
8870 + return 'symbol';
8871 + }
8872 + return propType;
8873 + }
6752 8874
6753 -//#endregion
6754 -//#region \0@[email protected]/helpers/esm/asyncToGenerator.js
6755 - function asyncGeneratorStep(n, t, e, r, o, a, c) {
6756 - try {
6757 - var i = n[a](c);
6758 - var u = i.value;
6759 - } catch (n) {
6760 - e(n);
6761 - return;
6762 - }
6763 - i.done ? t(u) : Promise.resolve(u).then(r, o);
6764 - }
6765 - function _asyncToGenerator(n) {
6766 - return function() {
6767 - var t = this;
6768 - var e = arguments;
6769 - return new Promise(function(r, o) {
6770 - var a = n.apply(t, e);
6771 - function _next(n) {
6772 - asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
6773 - }
6774 - function _throw(n) {
6775 - asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
6776 - }
6777 - _next(void 0);
6778 - });
6779 - };
6780 - }
6781 - var init_asyncToGenerator = __esmMin((() => {}));
8875 + // This handles more types than `getPropType`. Only used for error messages.
8876 + // See `createPrimitiveTypeChecker`.
8877 + function getPreciseType(propValue) {
8878 + if (typeof propValue === 'undefined' || propValue === null) {
8879 + return '' + propValue;
8880 + }
8881 + var propType = getPropType(propValue);
8882 + if (propType === 'object') {
8883 + if (propValue instanceof Date) {
8884 + return 'date';
8885 + } else if (propValue instanceof RegExp) {
8886 + return 'regexp';
8887 + }
8888 + }
8889 + return propType;
8890 + }
6782 8891
6783 -//#endregion
6784 -//#region node_modules/html-to-image/es/util.js
6785 - function resolveUrl(url, baseUrl) {
6786 - if (url.match(/^[a-z]+:\/\//i)) return url;
6787 - if (url.match(/^\/\//)) return window.location.protocol + url;
6788 - if (url.match(/^[a-z]+:/i)) return url;
6789 - const doc = document.implementation.createHTMLDocument();
6790 - const base = doc.createElement("base");
6791 - const a = doc.createElement("a");
6792 - doc.head.appendChild(base);
6793 - doc.body.appendChild(a);
6794 - if (baseUrl) base.href = baseUrl;
6795 - a.href = url;
6796 - return a.href;
6797 - }
6798 - function toArray(arrayLike) {
6799 - const arr = [];
6800 - for (let i = 0, l = arrayLike.length; i < l; i++) arr.push(arrayLike[i]);
6801 - return arr;
6802 - }
6803 - function getStyleProperties(options = {}) {
6804 - if (styleProps) return styleProps;
6805 - if (options.includeStyleProperties) {
6806 - styleProps = options.includeStyleProperties;
6807 - return styleProps;
6808 - }
6809 - styleProps = toArray(window.getComputedStyle(document.documentElement));
6810 - return styleProps;
6811 - }
6812 - function px(node, styleProperty) {
6813 - const val = (node.ownerDocument.defaultView || window).getComputedStyle(node).getPropertyValue(styleProperty);
6814 - return val ? parseFloat(val.replace("px", "")) : 0;
6815 - }
6816 - function getNodeWidth(node) {
6817 - const leftBorder = px(node, "border-left-width");
6818 - const rightBorder = px(node, "border-right-width");
6819 - return node.clientWidth + leftBorder + rightBorder;
6820 - }
6821 - function getNodeHeight(node) {
6822 - const topBorder = px(node, "border-top-width");
6823 - const bottomBorder = px(node, "border-bottom-width");
6824 - return node.clientHeight + topBorder + bottomBorder;
6825 - }
6826 - function getImageSize(targetNode, options = {}) {
6827 - return {
6828 - width: options.width || getNodeWidth(targetNode),
6829 - height: options.height || getNodeHeight(targetNode)
6830 - };
6831 - }
6832 - function getPixelRatio() {
6833 - let ratio;
6834 - let FINAL_PROCESS;
6835 - try {
6836 - FINAL_PROCESS = process;
6837 - } catch (e) {}
6838 - const val = FINAL_PROCESS && FINAL_PROCESS.env ? FINAL_PROCESS.env.devicePixelRatio : null;
6839 - if (val) {
6840 - ratio = parseInt(val, 10);
6841 - if (Number.isNaN(ratio)) ratio = 1;
6842 - }
6843 - return ratio || window.devicePixelRatio || 1;
6844 - }
6845 - function checkCanvasDimensions(canvas) {
6846 - if (canvas.width > canvasDimensionLimit || canvas.height > canvasDimensionLimit) if (canvas.width > canvasDimensionLimit && canvas.height > canvasDimensionLimit) if (canvas.width > canvas.height) {
6847 - canvas.height *= canvasDimensionLimit / canvas.width;
6848 - canvas.width = canvasDimensionLimit;
6849 - } else {
6850 - canvas.width *= canvasDimensionLimit / canvas.height;
6851 - canvas.height = canvasDimensionLimit;
6852 - }
6853 - else if (canvas.width > canvasDimensionLimit) {
6854 - canvas.height *= canvasDimensionLimit / canvas.width;
6855 - canvas.width = canvasDimensionLimit;
6856 - } else {
6857 - canvas.width *= canvasDimensionLimit / canvas.height;
6858 - canvas.height = canvasDimensionLimit;
6859 - }
6860 - }
6861 - function createImage(url) {
6862 - return new Promise((resolve, reject) => {
6863 - const img = new Image();
6864 - img.onload = () => {
6865 - img.decode().then(() => {
6866 - requestAnimationFrame(() => resolve(img));
6867 - });
6868 - };
6869 - img.onerror = reject;
6870 - img.crossOrigin = "anonymous";
6871 - img.decoding = "async";
6872 - img.src = url;
6873 - });
6874 - }
6875 - function svgToDataURL(_x) {
6876 - return _svgToDataURL.apply(this, arguments);
6877 - }
6878 - function _svgToDataURL() {
6879 - _svgToDataURL = _asyncToGenerator(function* (svg) {
6880 - return Promise.resolve().then(() => new XMLSerializer().serializeToString(svg)).then(encodeURIComponent).then((html) => `data:image/svg+xml;charset=utf-8,${html}`);
6881 - });
6882 - return _svgToDataURL.apply(this, arguments);
6883 - }
6884 - function nodeToDataURL(_x2, _x3, _x4) {
6885 - return _nodeToDataURL.apply(this, arguments);
6886 - }
6887 - function _nodeToDataURL() {
6888 - _nodeToDataURL = _asyncToGenerator(function* (node, width, height) {
6889 - const xmlns = "http://www.w3.org/2000/svg";
6890 - const svg = document.createElementNS(xmlns, "svg");
6891 - const foreignObject = document.createElementNS(xmlns, "foreignObject");
6892 - svg.setAttribute("width", `${width}`);
6893 - svg.setAttribute("height", `${height}`);
6894 - svg.setAttribute("viewBox", `0 0 ${width} ${height}`);
6895 - foreignObject.setAttribute("width", "100%");
6896 - foreignObject.setAttribute("height", "100%");
6897 - foreignObject.setAttribute("x", "0");
6898 - foreignObject.setAttribute("y", "0");
6899 - foreignObject.setAttribute("externalResourcesRequired", "true");
6900 - svg.appendChild(foreignObject);
6901 - foreignObject.appendChild(node);
6902 - return svgToDataURL(svg);
6903 - });
6904 - return _nodeToDataURL.apply(this, arguments);
6905 - }
6906 - var uuid, styleProps, canvasDimensionLimit, isInstanceOfElement;
6907 - var init_util = __esmMin((() => {
6908 - init_asyncToGenerator();
6909 - uuid = (() => {
6910 - let counter = 0;
6911 - const random = () => `0000${(Math.random() * Math.pow(36, 4) << 0).toString(36)}`.slice(-4);
6912 - return () => {
6913 - counter += 1;
6914 - return `u${random()}${counter}`;
6915 - };
6916 - })();
6917 - styleProps = null;
6918 - canvasDimensionLimit = 16384;
6919 - isInstanceOfElement = (node, instance) => {
6920 - if (node instanceof instance) return true;
6921 - const nodePrototype = Object.getPrototypeOf(node);
6922 - if (nodePrototype === null) return false;
6923 - return nodePrototype.constructor.name === instance.name || isInstanceOfElement(nodePrototype, instance);
6924 - };
6925 - }));
8892 + // Returns a string that is postfixed to a warning about an invalid type.
8893 + // For example, "undefined" or "of type array"
8894 + function getPostfixForTypeWarning(value) {
8895 + var type = getPreciseType(value);
8896 + switch (type) {
8897 + case 'array':
8898 + case 'object':
8899 + return 'an ' + type;
8900 + case 'boolean':
8901 + case 'date':
8902 + case 'regexp':
8903 + return 'a ' + type;
8904 + default:
8905 + return type;
8906 + }
8907 + }
6926 8908
6927 -//#endregion
6928 -//#region node_modules/html-to-image/es/clone-pseudos.js
6929 - function formatCSSText(style) {
6930 - const content = style.getPropertyValue("content");
6931 - return `${style.cssText} content: '${content.replace(/'|"/g, "")}';`;
6932 - }
6933 - function formatCSSProperties(style, options) {
6934 - return getStyleProperties(options).map((name) => {
6935 - return `${name}: ${style.getPropertyValue(name)}${style.getPropertyPriority(name) ? " !important" : ""};`;
6936 - }).join(" ");
6937 - }
6938 - function getPseudoElementStyle(className, pseudo, style, options) {
6939 - const selector = `.${className}:${pseudo}`;
6940 - const cssText = style.cssText ? formatCSSText(style) : formatCSSProperties(style, options);
6941 - return document.createTextNode(`${selector}{${cssText}}`);
6942 - }
6943 - function clonePseudoElement(nativeNode, clonedNode, pseudo, options) {
6944 - const style = window.getComputedStyle(nativeNode, pseudo);
6945 - const content = style.getPropertyValue("content");
6946 - if (content === "" || content === "none") return;
6947 - const className = uuid();
6948 - try {
6949 - clonedNode.className = `${clonedNode.className} ${className}`;
6950 - } catch (err) {
6951 - return;
6952 - }
6953 - const styleElement = document.createElement("style");
6954 - styleElement.appendChild(getPseudoElementStyle(className, pseudo, style, options));
6955 - clonedNode.appendChild(styleElement);
6956 - }
6957 - function clonePseudoElements(nativeNode, clonedNode, options) {
6958 - clonePseudoElement(nativeNode, clonedNode, ":before", options);
6959 - clonePseudoElement(nativeNode, clonedNode, ":after", options);
6960 - }
6961 - var init_clone_pseudos = __esmMin((() => {
6962 - init_util();
6963 - }));
8909 + // Returns class name of the object, if any.
8910 + function getClassName(propValue) {
8911 + if (!propValue.constructor || !propValue.constructor.name) {
8912 + return ANONYMOUS;
8913 + }
8914 + return propValue.constructor.name;
8915 + }
6964 8916
6965 -//#endregion
6966 -//#region node_modules/html-to-image/es/mimes.js
6967 - function getExtension(url) {
6968 - const match = /\.([^./]*?)$/g.exec(url);
6969 - return match ? match[1] : "";
6970 - }
6971 - function getMimeType(url) {
6972 - const extension = getExtension(url).toLowerCase();
6973 - return mimes[extension] || "";
6974 - }
6975 - var WOFF, JPEG, mimes;
6976 - var init_mimes = __esmMin((() => {
6977 - WOFF = "application/font-woff";
6978 - JPEG = "image/jpeg";
6979 - mimes = {
6980 - woff: WOFF,
6981 - woff2: WOFF,
6982 - ttf: "application/font-truetype",
6983 - eot: "application/vnd.ms-fontobject",
6984 - png: "image/png",
6985 - jpg: JPEG,
6986 - jpeg: JPEG,
6987 - gif: "image/gif",
6988 - tiff: "image/tiff",
6989 - svg: "image/svg+xml",
6990 - webp: "image/webp"
6991 - };
6992 - }));
8917 + ReactPropTypes.checkPropTypes = checkPropTypes;
8918 + ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
8919 + ReactPropTypes.PropTypes = ReactPropTypes;
6993 8920
6994 -//#endregion
6995 -//#region node_modules/html-to-image/es/dataurl.js
6996 - function getContentFromDataUrl(dataURL) {
6997 - return dataURL.split(/,/)[1];
6998 - }
6999 - function isDataUrl(url) {
7000 - return url.search(/^(data:)/) !== -1;
7001 - }
7002 - function makeDataUrl(content, mimeType) {
7003 - return `data:${mimeType};base64,${content}`;
7004 - }
7005 - function fetchAsDataURL(_x, _x2, _x3) {
7006 - return _fetchAsDataURL.apply(this, arguments);
7007 - }
7008 - function _fetchAsDataURL() {
7009 - _fetchAsDataURL = _asyncToGenerator(function* (url, init, process) {
7010 - const res = yield fetch(url, init);
7011 - if (res.status === 404) throw new Error(`Resource "${res.url}" not found`);
7012 - const blob = yield res.blob();
7013 - return new Promise((resolve, reject) => {
7014 - const reader = new FileReader();
7015 - reader.onerror = reject;
7016 - reader.onloadend = () => {
7017 - try {
7018 - resolve(process({
7019 - res,
7020 - result: reader.result
7021 - }));
7022 - } catch (error) {
7023 - reject(error);
7024 - }
7025 - };
7026 - reader.readAsDataURL(blob);
7027 - });
7028 - });
7029 - return _fetchAsDataURL.apply(this, arguments);
7030 - }
7031 - function getCacheKey(url, contentType, includeQueryParams) {
7032 - let key = url.replace(/\?.*/, "");
7033 - if (includeQueryParams) key = url;
7034 - if (/ttf|otf|eot|woff2?/i.test(key)) key = key.replace(/.*\//, "");
7035 - return contentType ? `[${contentType}]${key}` : key;
7036 - }
7037 - function resourceToDataURL(_x4, _x5, _x6) {
7038 - return _resourceToDataURL.apply(this, arguments);
7039 - }
7040 - function _resourceToDataURL() {
7041 - _resourceToDataURL = _asyncToGenerator(function* (resourceUrl, contentType, options) {
7042 - const cacheKey = getCacheKey(resourceUrl, contentType, options.includeQueryParams);
7043 - if (cache[cacheKey] != null) return cache[cacheKey];
7044 - if (options.cacheBust) resourceUrl += (/\?/.test(resourceUrl) ? "&" : "?") + (/* @__PURE__ */ new Date()).getTime();
7045 - let dataURL;
7046 - try {
7047 - dataURL = makeDataUrl(yield fetchAsDataURL(resourceUrl, options.fetchRequestInit, ({ res, result }) => {
7048 - if (!contentType) contentType = res.headers.get("Content-Type") || "";
7049 - return getContentFromDataUrl(result);
7050 - }), contentType);
7051 - } catch (error) {
7052 - dataURL = options.imagePlaceholder || "";
7053 - let msg = `Failed to fetch resource: ${resourceUrl}`;
7054 - if (error) msg = typeof error === "string" ? error : error.message;
7055 - if (msg) console.warn(msg);
7056 - }
7057 - cache[cacheKey] = dataURL;
7058 - return dataURL;
7059 - });
7060 - return _resourceToDataURL.apply(this, arguments);
7061 - }
7062 - var cache;
7063 - var init_dataurl = __esmMin((() => {
7064 - init_asyncToGenerator();
7065 - cache = {};
7066 - }));
8921 + return ReactPropTypes;
8922 +};
7067 8923
7068 -//#endregion
7069 -//#region node_modules/html-to-image/es/clone-node.js
7070 - function cloneCanvasElement(_x) {
7071 - return _cloneCanvasElement.apply(this, arguments);
7072 - }
7073 - function _cloneCanvasElement() {
7074 - _cloneCanvasElement = _asyncToGenerator(function* (canvas) {
7075 - const dataURL = canvas.toDataURL();
7076 - if (dataURL === "data:,") return canvas.cloneNode(false);
7077 - return createImage(dataURL);
7078 - });
7079 - return _cloneCanvasElement.apply(this, arguments);
7080 - }
7081 - function cloneVideoElement(_x2, _x3) {
7082 - return _cloneVideoElement.apply(this, arguments);
7083 - }
7084 - function _cloneVideoElement() {
7085 - _cloneVideoElement = _asyncToGenerator(function* (video, options) {
7086 - if (video.currentSrc) {
7087 - const canvas = document.createElement("canvas");
7088 - const ctx = canvas.getContext("2d");
7089 - canvas.width = video.clientWidth;
7090 - canvas.height = video.clientHeight;
7091 - ctx === null || ctx === void 0 || ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
7092 - return createImage(canvas.toDataURL());
7093 - }
7094 - const poster = video.poster;
7095 - return createImage(yield resourceToDataURL(poster, getMimeType(poster), options));
7096 - });
7097 - return _cloneVideoElement.apply(this, arguments);
7098 - }
7099 - function cloneIFrameElement(_x4, _x5) {
7100 - return _cloneIFrameElement.apply(this, arguments);
7101 - }
7102 - function _cloneIFrameElement() {
7103 - _cloneIFrameElement = _asyncToGenerator(function* (iframe, options) {
7104 - var _a;
7105 - try {
7106 - if ((_a = iframe === null || iframe === void 0 ? void 0 : iframe.contentDocument) === null || _a === void 0 ? void 0 : _a.body) return yield cloneNode(iframe.contentDocument.body, options, true);
7107 - } catch (_b) {}
7108 - return iframe.cloneNode(false);
7109 - });
7110 - return _cloneIFrameElement.apply(this, arguments);
7111 - }
7112 - function cloneSingleNode(_x6, _x7) {
7113 - return _cloneSingleNode.apply(this, arguments);
7114 - }
7115 - function _cloneSingleNode() {
7116 - _cloneSingleNode = _asyncToGenerator(function* (node, options) {
7117 - if (isInstanceOfElement(node, HTMLCanvasElement)) return cloneCanvasElement(node);
7118 - if (isInstanceOfElement(node, HTMLVideoElement)) return cloneVideoElement(node, options);
7119 - if (isInstanceOfElement(node, HTMLIFrameElement)) return cloneIFrameElement(node, options);
7120 - return node.cloneNode(isSVGElement(node));
7121 - });
7122 - return _cloneSingleNode.apply(this, arguments);
7123 - }
7124 - function cloneChildren(_x8, _x9, _x10) {
7125 - return _cloneChildren.apply(this, arguments);
7126 - }
7127 - function _cloneChildren() {
7128 - _cloneChildren = _asyncToGenerator(function* (nativeNode, clonedNode, options) {
7129 - var _a;
7130 - var _b;
7131 - if (isSVGElement(clonedNode)) return clonedNode;
7132 - let children = [];
7133 - if (isSlotElement(nativeNode) && nativeNode.assignedNodes) children = toArray(nativeNode.assignedNodes());
7134 - else if (isInstanceOfElement(nativeNode, HTMLIFrameElement) && ((_a = nativeNode.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) children = toArray(nativeNode.contentDocument.body.childNodes);
7135 - else children = toArray(((_b = nativeNode.shadowRoot) !== null && _b !== void 0 ? _b : nativeNode).childNodes);
7136 - if (children.length === 0 || isInstanceOfElement(nativeNode, HTMLVideoElement)) return clonedNode;
7137 - yield children.reduce((deferred, child) => deferred.then(() => cloneNode(child, options)).then((clonedChild) => {
7138 - if (clonedChild) clonedNode.appendChild(clonedChild);
7139 - }), Promise.resolve());
7140 - return clonedNode;
7141 - });
7142 - return _cloneChildren.apply(this, arguments);
7143 - }
7144 - function cloneCSSStyle(nativeNode, clonedNode, options) {
7145 - const targetStyle = clonedNode.style;
7146 - if (!targetStyle) return;
7147 - const sourceStyle = window.getComputedStyle(nativeNode);
7148 - if (sourceStyle.cssText) {
7149 - targetStyle.cssText = sourceStyle.cssText;
7150 - targetStyle.transformOrigin = sourceStyle.transformOrigin;
7151 - } else getStyleProperties(options).forEach((name) => {
7152 - let value = sourceStyle.getPropertyValue(name);
7153 - if (name === "font-size" && value.endsWith("px")) value = `${Math.floor(parseFloat(value.substring(0, value.length - 2))) - .1}px`;
7154 - if (isInstanceOfElement(nativeNode, HTMLIFrameElement) && name === "display" && value === "inline") value = "block";
7155 - if (name === "d" && clonedNode.getAttribute("d")) value = `path(${clonedNode.getAttribute("d")})`;
7156 - targetStyle.setProperty(name, value, sourceStyle.getPropertyPriority(name));
7157 - });
7158 - }
7159 - function cloneInputValue(nativeNode, clonedNode) {
7160 - if (isInstanceOfElement(nativeNode, HTMLTextAreaElement)) clonedNode.innerHTML = nativeNode.value;
7161 - if (isInstanceOfElement(nativeNode, HTMLInputElement)) clonedNode.setAttribute("value", nativeNode.value);
7162 - }
7163 - function cloneSelectValue(nativeNode, clonedNode) {
7164 - if (isInstanceOfElement(nativeNode, HTMLSelectElement)) {
7165 - const clonedSelect = clonedNode;
7166 - const selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute("value"));
7167 - if (selectedOption) selectedOption.setAttribute("selected", "");
7168 - }
7169 - }
7170 - function decorate(nativeNode, clonedNode, options) {
7171 - if (isInstanceOfElement(clonedNode, Element)) {
7172 - cloneCSSStyle(nativeNode, clonedNode, options);
7173 - clonePseudoElements(nativeNode, clonedNode, options);
7174 - cloneInputValue(nativeNode, clonedNode);
7175 - cloneSelectValue(nativeNode, clonedNode);
7176 - }
7177 - return clonedNode;
7178 - }
7179 - function ensureSVGSymbols(_x11, _x12) {
7180 - return _ensureSVGSymbols.apply(this, arguments);
7181 - }
7182 - function _ensureSVGSymbols() {
7183 - _ensureSVGSymbols = _asyncToGenerator(function* (clone, options) {
7184 - const uses = clone.querySelectorAll ? clone.querySelectorAll("use") : [];
7185 - if (uses.length === 0) return clone;
7186 - const processedDefs = {};
7187 - for (let i = 0; i < uses.length; i++) {
7188 - const id = uses[i].getAttribute("xlink:href");
7189 - if (id) {
7190 - const exist = clone.querySelector(id);
7191 - const definition = document.querySelector(id);
7192 - if (!exist && definition && !processedDefs[id]) processedDefs[id] = yield cloneNode(definition, options, true);
7193 - }
7194 - }
7195 - const nodes = Object.values(processedDefs);
7196 - if (nodes.length) {
7197 - const ns = "http://www.w3.org/1999/xhtml";
7198 - const svg = document.createElementNS(ns, "svg");
7199 - svg.setAttribute("xmlns", ns);
7200 - svg.style.position = "absolute";
7201 - svg.style.width = "0";
7202 - svg.style.height = "0";
7203 - svg.style.overflow = "hidden";
7204 - svg.style.display = "none";
7205 - const defs = document.createElementNS(ns, "defs");
7206 - svg.appendChild(defs);
7207 - for (let i = 0; i < nodes.length; i++) defs.appendChild(nodes[i]);
7208 - clone.appendChild(svg);
7209 - }
7210 - return clone;
7211 - });
7212 - return _ensureSVGSymbols.apply(this, arguments);
7213 - }
7214 - function cloneNode(_x13, _x14, _x15) {
7215 - return _cloneNode.apply(this, arguments);
7216 - }
7217 - function _cloneNode() {
7218 - _cloneNode = _asyncToGenerator(function* (node, options, isRoot) {
7219 - if (!isRoot && options.filter && !options.filter(node)) return null;
7220 - return Promise.resolve(node).then((clonedNode) => cloneSingleNode(clonedNode, options)).then((clonedNode) => cloneChildren(node, clonedNode, options)).then((clonedNode) => decorate(node, clonedNode, options)).then((clonedNode) => ensureSVGSymbols(clonedNode, options));
7221 - });
7222 - return _cloneNode.apply(this, arguments);
7223 - }
7224 - var isSlotElement, isSVGElement;
7225 - var init_clone_node = __esmMin((() => {
7226 - init_clone_pseudos();
7227 - init_util();
7228 - init_mimes();
7229 - init_dataurl();
7230 - init_asyncToGenerator();
7231 - isSlotElement = (node) => node.tagName != null && node.tagName.toUpperCase() === "SLOT";
7232 - isSVGElement = (node) => node.tagName != null && node.tagName.toUpperCase() === "SVG";
7233 - }));
7234 8924
7235 -//#endregion
7236 -//#region node_modules/html-to-image/es/embed-resources.js
7237 - function toRegex(url) {
7238 - const escaped = url.replace(/([.*+?^${}()|\[\]\/\\])/g, "\\$1");
7239 - return new RegExp(`(url\\(['"]?)(${escaped})(['"]?\\))`, "g");
7240 - }
7241 - function parseURLs(cssText) {
7242 - const urls = [];
7243 - cssText.replace(URL_REGEX, (raw, quotation, url) => {
7244 - urls.push(url);
7245 - return raw;
7246 - });
7247 - return urls.filter((url) => !isDataUrl(url));
7248 - }
7249 - function embed(_x, _x2, _x3, _x4, _x5) {
7250 - return _embed.apply(this, arguments);
7251 - }
7252 - function _embed() {
7253 - _embed = _asyncToGenerator(function* (cssText, resourceURL, baseURL, options, getContentFromUrl) {
7254 - try {
7255 - const resolvedURL = baseURL ? resolveUrl(resourceURL, baseURL) : resourceURL;
7256 - const contentType = getMimeType(resourceURL);
7257 - let dataURL;
7258 - if (getContentFromUrl) dataURL = makeDataUrl(yield getContentFromUrl(resolvedURL), contentType);
7259 - else dataURL = yield resourceToDataURL(resolvedURL, contentType, options);
7260 - return cssText.replace(toRegex(resourceURL), `$1${dataURL}$3`);
7261 - } catch (error) {}
7262 - return cssText;
7263 - });
7264 - return _embed.apply(this, arguments);
7265 - }
7266 - function filterPreferredFontFormat(str, { preferredFontFormat }) {
7267 - return !preferredFontFormat ? str : str.replace(FONT_SRC_REGEX, (match) => {
7268 - while (true) {
7269 - const [src, , format] = URL_WITH_FORMAT_REGEX.exec(match) || [];
7270 - if (!format) return "";
7271 - if (format === preferredFontFormat) return `src: ${src};`;
7272 - }
7273 - });
7274 - }
7275 - function shouldEmbed(url) {
7276 - return url.search(URL_REGEX) !== -1;
7277 - }
7278 - function embedResources(_x6, _x7, _x8) {
7279 - return _embedResources.apply(this, arguments);
7280 - }
7281 - function _embedResources() {
7282 - _embedResources = _asyncToGenerator(function* (cssText, baseUrl, options) {
7283 - if (!shouldEmbed(cssText)) return cssText;
7284 - const filteredCSSText = filterPreferredFontFormat(cssText, options);
7285 - return parseURLs(filteredCSSText).reduce((deferred, url) => deferred.then((css) => embed(css, url, baseUrl, options)), Promise.resolve(filteredCSSText));
7286 - });
7287 - return _embedResources.apply(this, arguments);
7288 - }
7289 - var URL_REGEX, URL_WITH_FORMAT_REGEX, FONT_SRC_REGEX;
7290 - var init_embed_resources = __esmMin((() => {
7291 - init_util();
7292 - init_mimes();
7293 - init_dataurl();
7294 - init_asyncToGenerator();
7295 - URL_REGEX = /url\((['"]?)([^'"]+?)\1\)/g;
7296 - URL_WITH_FORMAT_REGEX = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
7297 - FONT_SRC_REGEX = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
7298 - }));
8925 +/***/ }),
7299 8926
7300 -//#endregion
7301 -//#region node_modules/html-to-image/es/embed-images.js
7302 - function embedProp(_x, _x2, _x3) {
7303 - return _embedProp.apply(this, arguments);
7304 - }
7305 - function _embedProp() {
7306 - _embedProp = _asyncToGenerator(function* (propName, node, options) {
7307 - var _a;
7308 - const propValue = (_a = node.style) === null || _a === void 0 ? void 0 : _a.getPropertyValue(propName);
7309 - if (propValue) {
7310 - const cssString = yield embedResources(propValue, null, options);
7311 - node.style.setProperty(propName, cssString, node.style.getPropertyPriority(propName));
7312 - return true;
7313 - }
7314 - return false;
7315 - });
7316 - return _embedProp.apply(this, arguments);
7317 - }
7318 - function embedBackground(_x4, _x5) {
7319 - return _embedBackground.apply(this, arguments);
7320 - }
7321 - function _embedBackground() {
7322 - _embedBackground = _asyncToGenerator(function* (clonedNode, options) {
7323 - (yield embedProp("background", clonedNode, options)) || (yield embedProp("background-image", clonedNode, options));
7324 - (yield embedProp("mask", clonedNode, options)) || (yield embedProp("-webkit-mask", clonedNode, options)) || (yield embedProp("mask-image", clonedNode, options)) || (yield embedProp("-webkit-mask-image", clonedNode, options));
7325 - });
7326 - return _embedBackground.apply(this, arguments);
7327 - }
7328 - function embedImageNode(_x6, _x7) {
7329 - return _embedImageNode.apply(this, arguments);
7330 - }
7331 - function _embedImageNode() {
7332 - _embedImageNode = _asyncToGenerator(function* (clonedNode, options) {
7333 - const isImageElement = isInstanceOfElement(clonedNode, HTMLImageElement);
7334 - if (!(isImageElement && !isDataUrl(clonedNode.src)) && !(isInstanceOfElement(clonedNode, SVGImageElement) && !isDataUrl(clonedNode.href.baseVal))) return;
7335 - const url = isImageElement ? clonedNode.src : clonedNode.href.baseVal;
7336 - const dataURL = yield resourceToDataURL(url, getMimeType(url), options);
7337 - yield new Promise((resolve, reject) => {
7338 - clonedNode.onload = resolve;
7339 - clonedNode.onerror = options.onImageErrorHandler ? (...attributes) => {
7340 - try {
7341 - resolve(options.onImageErrorHandler(...attributes));
7342 - } catch (error) {
7343 - reject(error);
7344 - }
7345 - } : reject;
7346 - const image = clonedNode;
7347 - if (image.decode) image.decode = resolve;
7348 - if (image.loading === "lazy") image.loading = "eager";
7349 - if (isImageElement) {
7350 - clonedNode.srcset = "";
7351 - clonedNode.src = dataURL;
7352 - } else clonedNode.href.baseVal = dataURL;
7353 - });
7354 - });
7355 - return _embedImageNode.apply(this, arguments);
7356 - }
7357 - function embedChildren(_x8, _x9) {
7358 - return _embedChildren.apply(this, arguments);
7359 - }
7360 - function _embedChildren() {
7361 - _embedChildren = _asyncToGenerator(function* (clonedNode, options) {
7362 - const deferreds = toArray(clonedNode.childNodes).map((child) => embedImages(child, options));
7363 - yield Promise.all(deferreds).then(() => clonedNode);
7364 - });
7365 - return _embedChildren.apply(this, arguments);
7366 - }
7367 - function embedImages(_x10, _x11) {
7368 - return _embedImages.apply(this, arguments);
7369 - }
7370 - function _embedImages() {
7371 - _embedImages = _asyncToGenerator(function* (clonedNode, options) {
7372 - if (isInstanceOfElement(clonedNode, Element)) {
7373 - yield embedBackground(clonedNode, options);
7374 - yield embedImageNode(clonedNode, options);
7375 - yield embedChildren(clonedNode, options);
7376 - }
7377 - });
7378 - return _embedImages.apply(this, arguments);
7379 - }
7380 - var init_embed_images = __esmMin((() => {
7381 - init_embed_resources();
7382 - init_util();
7383 - init_dataurl();
7384 - init_mimes();
7385 - init_asyncToGenerator();
7386 - }));
8927 +/***/ "../node_modules/prop-types/index.js":
8928 +/*!*******************************************!*\
8929 + !*** ../node_modules/prop-types/index.js ***!
8930 + \*******************************************/
8931 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
7387 8932
7388 -//#endregion
7389 -//#region node_modules/html-to-image/es/apply-style.js
7390 - function applyStyle(node, options) {
7391 - const { style } = node;
7392 - if (options.backgroundColor) style.backgroundColor = options.backgroundColor;
7393 - if (options.width) style.width = `${options.width}px`;
7394 - if (options.height) style.height = `${options.height}px`;
7395 - const manual = options.style;
7396 - if (manual != null) Object.keys(manual).forEach((key) => {
7397 - style[key] = manual[key];
7398 - });
7399 - return node;
7400 - }
7401 - var init_apply_style = __esmMin((() => {}));
8933 +/**
8934 + * Copyright (c) 2013-present, Facebook, Inc.
8935 + *
8936 + * This source code is licensed under the MIT license found in the
8937 + * LICENSE file in the root directory of this source tree.
8938 + */
7402 8939
7403 -//#endregion
7404 -//#region node_modules/html-to-image/es/embed-webfonts.js
7405 - function fetchCSS(_x) {
7406 - return _fetchCSS.apply(this, arguments);
7407 - }
7408 - function _fetchCSS() {
7409 - _fetchCSS = _asyncToGenerator(function* (url) {
7410 - let cache = cssFetchCache[url];
7411 - if (cache != null) return cache;
7412 - cache = {
7413 - url,
7414 - cssText: yield (yield fetch(url)).text()
7415 - };
7416 - cssFetchCache[url] = cache;
7417 - return cache;
7418 - });
7419 - return _fetchCSS.apply(this, arguments);
7420 - }
7421 - function embedFonts(_x3, _x4) {
7422 - return _embedFonts.apply(this, arguments);
7423 - }
7424 - function _embedFonts() {
7425 - _embedFonts = _asyncToGenerator(function* (data, options) {
7426 - let cssText = data.cssText;
7427 - const regexUrl = /url\(["']?([^"')]+)["']?\)/g;
7428 - const loadFonts = (cssText.match(/url\([^)]+\)/g) || []).map(function() {
7429 - var _ref = _asyncToGenerator(function* (loc) {
7430 - let url = loc.replace(regexUrl, "$1");
7431 - if (!url.startsWith("https://")) url = new URL(url, data.url).href;
7432 - return fetchAsDataURL(url, options.fetchRequestInit, ({ result }) => {
7433 - cssText = cssText.replace(loc, `url(${result})`);
7434 - return [loc, result];
7435 - });
7436 - });
7437 - return function(_x2) {
7438 - return _ref.apply(this, arguments);
7439 - };
7440 - }());
7441 - return Promise.all(loadFonts).then(() => cssText);
7442 - });
7443 - return _embedFonts.apply(this, arguments);
7444 - }
7445 - function parseCSS(source) {
7446 - if (source == null) return [];
7447 - const result = [];
7448 - let cssText = source.replace(/(\/\*[\s\S]*?\*\/)/gi, "");
7449 - const keyframesRegex = /* @__PURE__ */ new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})", "gi");
7450 - while (true) {
7451 - const matches = keyframesRegex.exec(cssText);
7452 - if (matches === null) break;
7453 - result.push(matches[0]);
7454 - }
7455 - cssText = cssText.replace(keyframesRegex, "");
7456 - const importRegex = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi;
7457 - const unifiedRegex = /* @__PURE__ */ new RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})", "gi");
7458 - while (true) {
7459 - let matches = importRegex.exec(cssText);
7460 - if (matches === null) {
7461 - matches = unifiedRegex.exec(cssText);
7462 - if (matches === null) break;
7463 - else importRegex.lastIndex = unifiedRegex.lastIndex;
7464 - } else unifiedRegex.lastIndex = importRegex.lastIndex;
7465 - result.push(matches[0]);
7466 - }
7467 - return result;
7468 - }
7469 - function getCSSRules(_x5, _x6) {
7470 - return _getCSSRules.apply(this, arguments);
7471 - }
7472 - function _getCSSRules() {
7473 - _getCSSRules = _asyncToGenerator(function* (styleSheets, options) {
7474 - const ret = [];
7475 - const deferreds = [];
7476 - styleSheets.forEach((sheet) => {
7477 - if ("cssRules" in sheet) try {
7478 - toArray(sheet.cssRules || []).forEach((item, index) => {
7479 - if (item.type === CSSRule.IMPORT_RULE) {
7480 - let importIndex = index + 1;
7481 - const url = item.href;
7482 - const deferred = fetchCSS(url).then((metadata) => embedFonts(metadata, options)).then((cssText) => parseCSS(cssText).forEach((rule) => {
7483 - try {
7484 - sheet.insertRule(rule, rule.startsWith("@import") ? importIndex += 1 : sheet.cssRules.length);
7485 - } catch (error) {
7486 - console.error("Error inserting rule from remote css", {
7487 - rule,
7488 - error
7489 - });
7490 - }
7491 - })).catch((e) => {
7492 - console.error("Error loading remote css", e.toString());
7493 - });
7494 - deferreds.push(deferred);
7495 - }
7496 - });
7497 - } catch (e) {
7498 - const inline = styleSheets.find((a) => a.href == null) || document.styleSheets[0];
7499 - if (sheet.href != null) deferreds.push(fetchCSS(sheet.href).then((metadata) => embedFonts(metadata, options)).then((cssText) => parseCSS(cssText).forEach((rule) => {
7500 - inline.insertRule(rule, inline.cssRules.length);
7501 - })).catch((err) => {
7502 - console.error("Error loading remote stylesheet", err);
7503 - }));
7504 - console.error("Error inlining remote css file", e);
7505 - }
7506 - });
7507 - return Promise.all(deferreds).then(() => {
7508 - styleSheets.forEach((sheet) => {
7509 - if ("cssRules" in sheet) try {
7510 - toArray(sheet.cssRules || []).forEach((item) => {
7511 - ret.push(item);
7512 - });
7513 - } catch (e) {
7514 - console.error(`Error while reading CSS rules from ${sheet.href}`, e);
7515 - }
7516 - });
7517 - return ret;
7518 - });
7519 - });
7520 - return _getCSSRules.apply(this, arguments);
7521 - }
7522 - function getWebFontRules(cssRules) {
7523 - return cssRules.filter((rule) => rule.type === CSSRule.FONT_FACE_RULE).filter((rule) => shouldEmbed(rule.style.getPropertyValue("src")));
7524 - }
7525 - function parseWebFontRules(_x7, _x8) {
7526 - return _parseWebFontRules.apply(this, arguments);
7527 - }
7528 - function _parseWebFontRules() {
7529 - _parseWebFontRules = _asyncToGenerator(function* (node, options) {
7530 - if (node.ownerDocument == null) throw new Error("Provided element is not within a Document");
7531 - return getWebFontRules(yield getCSSRules(toArray(node.ownerDocument.styleSheets), options));
7532 - });
7533 - return _parseWebFontRules.apply(this, arguments);
7534 - }
7535 - function normalizeFontFamily(font) {
7536 - return font.trim().replace(/["']/g, "");
7537 - }
7538 - function getUsedFonts(node) {
7539 - const fonts = /* @__PURE__ */ new Set();
7540 - function traverse(node) {
7541 - (node.style.fontFamily || getComputedStyle(node).fontFamily).split(",").forEach((font) => {
7542 - fonts.add(normalizeFontFamily(font));
7543 - });
7544 - Array.from(node.children).forEach((child) => {
7545 - if (child instanceof HTMLElement) traverse(child);
7546 - });
7547 - }
7548 - traverse(node);
7549 - return fonts;
7550 - }
7551 - function getWebFontCSS(_x9, _x10) {
7552 - return _getWebFontCSS.apply(this, arguments);
7553 - }
7554 - function _getWebFontCSS() {
7555 - _getWebFontCSS = _asyncToGenerator(function* (node, options) {
7556 - const rules = yield parseWebFontRules(node, options);
7557 - const usedFonts = getUsedFonts(node);
7558 - return (yield Promise.all(rules.filter((rule) => usedFonts.has(normalizeFontFamily(rule.style.fontFamily))).map((rule) => {
7559 - const baseUrl = rule.parentStyleSheet ? rule.parentStyleSheet.href : null;
7560 - return embedResources(rule.cssText, baseUrl, options);
7561 - }))).join("\n");
7562 - });
7563 - return _getWebFontCSS.apply(this, arguments);
7564 - }
7565 - function embedWebFonts(_x11, _x12) {
7566 - return _embedWebFonts.apply(this, arguments);
7567 - }
7568 - function _embedWebFonts() {
7569 - _embedWebFonts = _asyncToGenerator(function* (clonedNode, options) {
7570 - const cssText = options.fontEmbedCSS != null ? options.fontEmbedCSS : options.skipFonts ? null : yield getWebFontCSS(clonedNode, options);
7571 - if (cssText) {
7572 - const styleNode = document.createElement("style");
7573 - const sytleContent = document.createTextNode(cssText);
7574 - styleNode.appendChild(sytleContent);
7575 - if (clonedNode.firstChild) clonedNode.insertBefore(styleNode, clonedNode.firstChild);
7576 - else clonedNode.appendChild(styleNode);
7577 - }
7578 - });
7579 - return _embedWebFonts.apply(this, arguments);
7580 - }
7581 - var cssFetchCache;
7582 - var init_embed_webfonts = __esmMin((() => {
7583 - init_util();
7584 - init_dataurl();
7585 - init_embed_resources();
7586 - init_asyncToGenerator();
7587 - cssFetchCache = {};
7588 - }));
8940 +if (true) {
8941 + var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/prop-types/node_modules/react-is/index.js");
7589 8942
7590 -//#endregion
7591 -//#region node_modules/html-to-image/es/index.js
7592 - function toSvg(_x) {
7593 - return _toSvg.apply(this, arguments);
7594 - }
7595 - function _toSvg() {
7596 - _toSvg = _asyncToGenerator(function* (node, options = {}) {
7597 - const { width, height } = getImageSize(node, options);
7598 - const clonedNode = yield cloneNode(node, options, true);
7599 - yield embedWebFonts(clonedNode, options);
7600 - yield embedImages(clonedNode, options);
7601 - applyStyle(clonedNode, options);
7602 - return yield nodeToDataURL(clonedNode, width, height);
7603 - });
7604 - return _toSvg.apply(this, arguments);
7605 - }
7606 - function toCanvas(_x2) {
7607 - return _toCanvas.apply(this, arguments);
7608 - }
7609 - function _toCanvas() {
7610 - _toCanvas = _asyncToGenerator(function* (node, options = {}) {
7611 - const { width, height } = getImageSize(node, options);
7612 - const img = yield createImage(yield toSvg(node, options));
7613 - const canvas = document.createElement("canvas");
7614 - const context = canvas.getContext("2d");
7615 - const ratio = options.pixelRatio || getPixelRatio();
7616 - const canvasWidth = options.canvasWidth || width;
7617 - const canvasHeight = options.canvasHeight || height;
7618 - canvas.width = canvasWidth * ratio;
7619 - canvas.height = canvasHeight * ratio;
7620 - if (!options.skipAutoScale) checkCanvasDimensions(canvas);
7621 - canvas.style.width = `${canvasWidth}`;
7622 - canvas.style.height = `${canvasHeight}`;
7623 - if (options.backgroundColor) {
7624 - context.fillStyle = options.backgroundColor;
7625 - context.fillRect(0, 0, canvas.width, canvas.height);
7626 - }
7627 - context.drawImage(img, 0, 0, canvas.width, canvas.height);
7628 - return canvas;
7629 - });
7630 - return _toCanvas.apply(this, arguments);
7631 - }
7632 - var init_es = __esmMin((() => {
7633 - init_clone_node();
7634 - init_embed_images();
7635 - init_apply_style();
7636 - init_embed_webfonts();
7637 - init_util();
7638 - init_asyncToGenerator();
7639 - }));
8943 + // By explicitly using `prop-types` you are opting into new development behavior.
8944 + // http://fb.me/prop-types-in-prod
8945 + var throwOnDirectAccess = true;
8946 + module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
8947 +} else {}
7640 8948
7641 -//#endregion
7642 -//#region modules/ai/assets/js/editor/utils/screenshot.js
7643 - function screenshotNode(node) {
7644 - return toWebp(node, {
7645 - quality: .01,
7646 - imagePlaceholder: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="
7647 - });
7648 - }
7649 - function toWebp(_x2) {
7650 - return _toWebp.apply(this, arguments);
7651 - }
7652 - function _toWebp() {
7653 - _toWebp = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$2.default.mark(function _callee3(node) {
7654 - var _options$quality;
7655 - var options;
7656 - var canvas;
7657 - var _args3 = arguments;
7658 - return import_regenerator$2.default.wrap(function(_context3) {
7659 - while (1) switch (_context3.prev = _context3.next) {
7660 - case 0:
7661 - options = _args3.length > 1 && _args3[1] !== void 0 ? _args3[1] : {};
7662 - _context3.next = 1;
7663 - return toCanvas(node, options);
7664 - case 1:
7665 - canvas = _context3.sent;
7666 - return _context3.abrupt("return", canvas.toDataURL("image/webp", (_options$quality = options.quality) !== null && _options$quality !== void 0 ? _options$quality : 1));
7667 - case 2:
7668 - case "end": return _context3.stop();
7669 - }
7670 - }, _callee3);
7671 - }));
7672 - return _toWebp.apply(this, arguments);
7673 - }
7674 - function createHiddenWrapper() {
7675 - var wrapper = document.createElement("div");
7676 - wrapper.style.position = "fixed";
7677 - wrapper.style.opacity = "0";
7678 - wrapper.style.inset = "0";
7679 - return wrapper;
7680 - }
7681 - function createContainer(template) {
7682 - var model = generateIds(template);
7683 - model.id = "e-ai-screenshot-container-".concat(model.id);
7684 - return $e.run("document/elements/create", {
7685 - container: elementor.getPreviewContainer(),
7686 - model,
7687 - options: { edit: false }
7688 - });
7689 - }
7690 - function deleteContainer(container) {
7691 - return $e.run("document/elements/delete", { container });
7692 - }
7693 - function waitForContainer(id) {
7694 - var timeoutPromise = sleep(arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 5e3);
7695 - var waitPromise = new Promise(function(resolve) {
7696 - elementorFrontend.hooks.addAction("frontend/element_ready/global", /*#__PURE__*/ function() {
7697 - var _ref2 = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$2.default.mark(function _callee2($element) {
7698 - var images;
7699 - return import_regenerator$2.default.wrap(function(_context2) {
7700 - while (1) switch (_context2.prev = _context2.next) {
7701 - case 0:
7702 - if (!($element.data("id") === id)) {
7703 - _context2.next = 2;
7704 - break;
7705 - }
7706 - images = _toConsumableArray($element[0].querySelectorAll("img"));
7707 - _context2.next = 1;
7708 - return Promise.all(images.map(waitForImage));
7709 - case 1: resolve();
7710 - case 2:
7711 - case "end": return _context2.stop();
7712 - }
7713 - }, _callee2);
7714 - }));
7715 - return function(_x3) {
7716 - return _ref2.apply(this, arguments);
7717 - };
7718 - }());
7719 - });
7720 - return Promise.any([timeoutPromise, waitPromise]);
7721 - }
7722 - function waitForImage(image) {
7723 - if (image.complete) return Promise.resolve();
7724 - return new Promise(function(resolve) {
7725 - image.addEventListener("load", resolve);
7726 - image.addEventListener("error", function() {
7727 - image.remove();
7728 - resolve();
7729 - });
7730 - });
7731 - }
7732 - function sleep(ms) {
7733 - return new Promise(function(resolve) {
7734 - return setTimeout(resolve, ms);
7735 - });
7736 - }
7737 - function wrapContainer(container, wrapper) {
7738 - var el = container.view.$el[0];
7739 - el.parentNode.insertBefore(wrapper, el);
7740 - wrapper.appendChild(el);
7741 - }
7742 - var import_regenerator$2, takeScreenshot;
7743 - var init_screenshot = __esmMin((() => {
7744 - init_toConsumableArray();
7745 - init_asyncToGenerator$1();
7746 - import_regenerator$2 = /* @__PURE__ */ __toESM(require_regenerator());
7747 - init_es();
7748 - init_history();
7749 - init_requests_ids();
7750 - takeScreenshot = /*#__PURE__*/ function() {
7751 - var _ref = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$2.default.mark(function _callee(template) {
7752 - var hiddenWrapper;
7753 - var container;
7754 - var screenshot;
7755 - return import_regenerator$2.default.wrap(function(_context) {
7756 - while (1) switch (_context.prev = _context.next) {
7757 - case 0:
7758 - if (template) {
7759 - _context.next = 1;
7760 - break;
7761 - }
7762 - return _context.abrupt("return", "");
7763 - case 1:
7764 - toggleHistory(false);
7765 - hiddenWrapper = createHiddenWrapper();
7766 - container = createContainer(template);
7767 - wrapContainer(container, hiddenWrapper);
7768 - elementor.getPreviewView().$childViewContainer[0].appendChild(hiddenWrapper);
7769 - _context.next = 2;
7770 - return waitForContainer(container.id);
7771 - case 2:
7772 - if (!template.elements.length) {
7773 - _context.next = 3;
7774 - break;
7775 - }
7776 - _context.next = 3;
7777 - return Promise.all(template.elements.map(function(child) {
7778 - return waitForContainer(child.id);
7779 - }));
7780 - case 3:
7781 - _context.prev = 3;
7782 - _context.next = 4;
7783 - return screenshotNode(container.view.$el[0]);
7784 - case 4:
7785 - screenshot = _context.sent;
7786 - _context.next = 6;
7787 - break;
7788 - case 5:
7789 - _context.prev = 5;
7790 - _context["catch"](3);
7791 - screenshot = "";
7792 - case 6:
7793 - deleteContainer(container);
7794 - hiddenWrapper.remove();
7795 - toggleHistory(true);
7796 - return _context.abrupt("return", screenshot);
7797 - case 7:
7798 - case "end": return _context.stop();
7799 - }
7800 - }, _callee, null, [[3, 5]]);
7801 - }));
7802 - return function takeScreenshot(_x) {
7803 - return _ref.apply(this, arguments);
7804 - };
7805 - }();
7806 - }));
7807 8949
7808 -//#endregion
7809 -//#region modules/ai/assets/js/editor/layout-app-wrapper.js
7810 - var import_prop_types, LayoutAppWrapper;
7811 - var init_layout_app_wrapper = __esmMin((() => {
7812 - import_prop_types = /* @__PURE__ */ __toESM(require_prop_types());
7813 - LayoutAppWrapper = function LayoutAppWrapper(props) {
7814 - return /*#__PURE__*/ react.default.createElement(_elementor_ui.DirectionProvider, { rtl: props.isRTL }, /*#__PURE__*/ react.default.createElement(_elementor_ui.ThemeProvider, { colorScheme: props.colorScheme }, props.children));
7815 - };
7816 - LayoutAppWrapper.propTypes = {
7817 - children: import_prop_types.default.node,
7818 - isRTL: import_prop_types.default.bool,
7819 - colorScheme: import_prop_types.default.oneOf([
7820 - "auto",
7821 - "light",
7822 - "dark"
7823 - ])
7824 - };
7825 - }));
8950 +/***/ }),
7826 8951
7827 -//#endregion
7828 -//#region modules/ai/assets/js/editor/utils/editor-integration.js
7829 - var editor_integration_exports = /* @__PURE__ */ __exportAll({
7830 - VARIATIONS_PROMPTS: () => VARIATIONS_PROMPTS,
7831 - WEB_BASED_PROMPTS: () => WEB_BASED_PROMPTS,
7832 - closePanel: () => closePanel,
7833 - getUiConfig: () => getUiConfig,
7834 - importToEditor: () => importToEditor,
7835 - onConnect: () => onConnect,
7836 - openPanel: () => openPanel,
7837 - renderLayoutApp: () => renderLayoutApp
7838 - });
7839 - var import_regenerator$1, closePanel, openPanel, onConnect, getUiConfig, VARIATIONS_PROMPTS, WEB_BASED_PROMPTS, PROMPT_PLACEHOLDER, renderLayoutApp, importToEditor;
7840 - var init_editor_integration = __esmMin((() => {
7841 - init_asyncToGenerator$1();
7842 - import_regenerator$1 = /* @__PURE__ */ __toESM(require_regenerator());
7843 - init_react();
7844 - init_preview_container();
7845 - init_layout_app();
7846 - init_screenshot();
7847 - init_history();
7848 - init_layout_app_wrapper();
7849 - init_requests_ids();
7850 - closePanel = function closePanel() {
7851 - $e.run("panel/close");
7852 - $e.components.get("panel").blockUserInteractions();
7853 - };
7854 - openPanel = function openPanel() {
7855 - $e.run("panel/open");
7856 - $e.components.get("panel").unblockUserInteractions();
7857 - };
7858 - onConnect = function onConnect(data) {
7859 - elementorCommon.config.library_connect.is_connected = true;
7860 - elementorCommon.config.library_connect.current_access_level = data.kits_access_level || data.access_level || 0;
7861 - elementorCommon.config.library_connect.current_access_tier = data.access_tier;
7862 - elementorCommon.config.library_connect.plan_type = data.plan_type;
7863 - };
7864 - getUiConfig = function getUiConfig() {
7865 - var _elementor;
7866 - var _elementor$getPrefere;
7867 - return {
7868 - colorScheme: ((_elementor = elementor) === null || _elementor === void 0 || (_elementor$getPrefere = _elementor.getPreferences) === null || _elementor$getPrefere === void 0 ? void 0 : _elementor$getPrefere.call(_elementor, "ui_theme")) || "auto",
7869 - isRTL: elementorCommon.config.isRTL
7870 - };
7871 - };
7872 - VARIATIONS_PROMPTS = [
7873 - { text: (0, _wordpress_i18n.__)("Minimalist design with bold typography about", "elementor") },
7874 - { text: (0, _wordpress_i18n.__)("Elegant style with serif fonts discussing", "elementor") },
7875 - { text: (0, _wordpress_i18n.__)("Retro vibe with muted colors and classic fonts about", "elementor") },
7876 - { text: (0, _wordpress_i18n.__)("Futuristic design with neon accents about", "elementor") },
7877 - { text: (0, _wordpress_i18n.__)("Professional look with clean lines for", "elementor") },
7878 - { text: (0, _wordpress_i18n.__)("Earthy tones and organic shapes featuring", "elementor") },
7879 - { text: (0, _wordpress_i18n.__)("Luxurious theme with rich colors discussing", "elementor") },
7880 - { text: (0, _wordpress_i18n.__)("Tech-inspired style with modern fonts about", "elementor") },
7881 - { text: (0, _wordpress_i18n.__)("Warm hues with comforting visuals about", "elementor") }
7882 - ];
7883 - WEB_BASED_PROMPTS = [
7884 - { text: (0, _wordpress_i18n.__)("Change the content to be about [topic]", "elementor") },
7885 - { text: (0, _wordpress_i18n.__)("Generate lorem ipsum placeholder text for all paragraphs", "elementor") },
7886 - { text: (0, _wordpress_i18n.__)("Revise the content to focus on [topic] and then translate it into Spanish", "elementor") },
7887 - { text: (0, _wordpress_i18n.__)("Shift the focus of the content to [topic] in order to showcase our company's mission and values", "elementor") },
7888 - { text: (0, _wordpress_i18n.__)("Alter the content to provide helpful tips related to [topic]", "elementor") },
7889 - { text: (0, _wordpress_i18n.__)("Adjust the content to include FAQs and answers for common inquiries about [topic]", "elementor") }
7890 - ];
7891 - PROMPT_PLACEHOLDER = (0, _wordpress_i18n.__)("Press '/' for suggestions or describe the changes you want to apply (optional)...", "elementor");
7892 - renderLayoutApp = function renderLayoutApp() {
7893 - var _options$onRenderApp;
7894 - var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {
7895 - parentContainer: null,
7896 - mode: "",
7897 - at: null,
7898 - onClose: null,
7899 - onGenerate: null,
7900 - onInsert: null,
7901 - onRenderApp: null,
7902 - onSelect: null,
7903 - attachments: []
7904 - };
7905 - closePanel();
7906 - var previewContainer = createPreviewContainer(options.parentContainer, { at: options.at });
7907 - var _getUiConfig = getUiConfig();
7908 - var colorScheme = _getUiConfig.colorScheme;
7909 - var isRTL = _getUiConfig.isRTL;
7910 - var rootElement = document.createElement("div");
7911 - document.body.append(rootElement);
7912 - var bodyStyle = window.elementorFrontend.elements.$window[0].getComputedStyle(window.elementorFrontend.elements.$body[0]);
7913 - var unmount = react_default.render(/*#__PURE__*/ react.default.createElement(LayoutAppWrapper, {
7914 - isRTL,
7915 - colorScheme
7916 - }, /*#__PURE__*/ react.default.createElement(LayoutApp, {
7917 - mode: options.mode,
7918 - currentContext: { body: {
7919 - backgroundColor: bodyStyle.backgroundColor,
7920 - backgroundImage: bodyStyle.backgroundImage
7921 - } },
7922 - attachmentsTypes: {
7923 - json: {
7924 - promptSuggestions: VARIATIONS_PROMPTS,
7925 - promptPlaceholder: PROMPT_PLACEHOLDER,
7926 - previewGenerator: function() {
7927 - var _previewGenerator = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$1.default.mark(function _callee(json) {
7928 - var screenshot;
7929 - return import_regenerator$1.default.wrap(function(_context) {
7930 - while (1) switch (_context.prev = _context.next) {
7931 - case 0:
7932 - _context.next = 1;
7933 - return takeScreenshot(json);
7934 - case 1:
7935 - screenshot = _context.sent;
7936 - return _context.abrupt("return", "<img src=\"".concat(screenshot, "\" />"));
7937 - case 2:
7938 - case "end": return _context.stop();
7939 - }
7940 - }, _callee);
7941 - }));
7942 - function previewGenerator(_x) {
7943 - return _previewGenerator.apply(this, arguments);
7944 - }
7945 - return previewGenerator;
7946 - }()
7947 - },
7948 - url: {
7949 - promptPlaceholder: PROMPT_PLACEHOLDER,
7950 - promptSuggestions: WEB_BASED_PROMPTS
7951 - }
7952 - },
7953 - attachments: options.attachments || [],
7954 - onClose: function onClose() {
7955 - var _options$onClose;
7956 - previewContainer.destroy();
7957 - (_options$onClose = options.onClose) === null || _options$onClose === void 0 || _options$onClose.call(options);
7958 - unmount();
7959 - rootElement.remove();
7960 - openPanel();
7961 - },
7962 - onConnect,
7963 - onGenerate: function onGenerate() {
7964 - var _options$onGenerate;
7965 - (_options$onGenerate = options.onGenerate) === null || _options$onGenerate === void 0 || _options$onGenerate.call(options, { previewContainer });
7966 - },
7967 - onData: /*#__PURE__*/ function() {
7968 - var _ref = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator$1.default.mark(function _callee2(template) {
7969 - var screenshot;
7970 - return import_regenerator$1.default.wrap(function(_context2) {
7971 - while (1) switch (_context2.prev = _context2.next) {
7972 - case 0:
7973 - _context2.next = 1;
7974 - return takeScreenshot(template);
7975 - case 1:
7976 - screenshot = _context2.sent;
7977 - return _context2.abrupt("return", {
7978 - screenshot,
7979 - template
7980 - });
7981 - case 2:
7982 - case "end": return _context2.stop();
7983 - }
7984 - }, _callee2);
7985 - }));
7986 - return function(_x2) {
7987 - return _ref.apply(this, arguments);
7988 - };
7989 - }(),
7990 - onSelect: function onSelect(template) {
7991 - var _options$onSelect;
7992 - (_options$onSelect = options.onSelect) === null || _options$onSelect === void 0 || _options$onSelect.call(options);
7993 - previewContainer.setContent(template);
7994 - },
7995 - onInsert: options.onInsert,
7996 - hasPro: elementor.helpers.hasPro()
7997 - })), rootElement).unmount;
7998 - (_options$onRenderApp = options.onRenderApp) === null || _options$onRenderApp === void 0 || _options$onRenderApp.call(options, { previewContainer });
7999 - };
8000 - importToEditor = function importToEditor(_ref2) {
8001 - var parentContainer = _ref2.parentContainer;
8002 - var at = _ref2.at;
8003 - var template = _ref2.template;
8004 - var historyTitle = _ref2.historyTitle;
8005 - var _ref2$replace = _ref2.replace;
8006 - var replace = _ref2$replace === void 0 ? false : _ref2$replace;
8007 - var endHistoryLog = startHistoryLog({
8008 - type: "import",
8009 - title: historyTitle
8010 - });
8011 - if (replace) $e.run("document/elements/delete", { container: parentContainer.children.at(at) });
8012 - $e.run("document/elements/create", {
8013 - container: parentContainer,
8014 - model: generateIds(template),
8015 - options: {
8016 - at,
8017 - edit: true
8018 - }
8019 - });
8020 - endHistoryLog();
8021 - };
8022 - }));
8952 +/***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
8953 +/*!**************************************************************!*\
8954 + !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
8955 + \**************************************************************/
8956 +/***/ ((module) => {
8023 8957
8024 -//#endregion
8025 -//#region assets/dev/js/editor/utils/editor-one-events.js
8026 - var editor_one_events_exports = /* @__PURE__ */ __exportAll({
8027 - EditorOneEventManager: () => EditorOneEventManager,
8028 - createDebouncedFinderSearch: () => createDebouncedFinderSearch,
8029 - createDebouncedWidgetPanelSearch: () => createDebouncedWidgetPanelSearch,
8030 - default: () => EditorOneEventManager
8031 - });
8032 - function ownKeys(e, r) {
8033 - var t = Object.keys(e);
8034 - if (Object.getOwnPropertySymbols) {
8035 - var o = Object.getOwnPropertySymbols(e);
8036 - r && (o = o.filter(function(r) {
8037 - return Object.getOwnPropertyDescriptor(e, r).enumerable;
8038 - })), t.push.apply(t, o);
8039 - }
8040 - return t;
8041 - }
8042 - function _objectSpread(e) {
8043 - for (var r = 1; r < arguments.length; r++) {
8044 - var t = null != arguments[r] ? arguments[r] : {};
8045 - r % 2 ? ownKeys(Object(t), !0).forEach(function(r) {
8046 - _defineProperty$1(e, r, t[r]);
8047 - }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r) {
8048 - Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
8049 - });
8050 - }
8051 - return e;
8052 - }
8053 - var EditorOneEventManager, createDebouncedFinderSearch, createDebouncedWidgetPanelSearch;
8054 - var init_editor_one_events = __esmMin((() => {
8055 - init_defineProperty$1();
8056 - EditorOneEventManager = /*#__PURE__*/ function() {
8057 - function EditorOneEventManager() {
8058 - _classCallCheck(this, EditorOneEventManager);
8059 - }
8060 - return _createClass(EditorOneEventManager, null, [
8061 - {
8062 - key: "getEventsManager",
8063 - value: function getEventsManager() {
8064 - var _elementorCommon;
8065 - return (_elementorCommon = elementorCommon) === null || _elementorCommon === void 0 ? void 0 : _elementorCommon.eventsManager;
8066 - }
8067 - },
8068 - {
8069 - key: "getConfig",
8070 - value: function getConfig() {
8071 - var _this$getEventsManage;
8072 - return (_this$getEventsManage = this.getEventsManager()) === null || _this$getEventsManage === void 0 ? void 0 : _this$getEventsManage.config;
8073 - }
8074 - },
8075 - {
8076 - key: "canSendEvents",
8077 - value: function canSendEvents() {
8078 - var _elementorCommon2;
8079 - return ((_elementorCommon2 = elementorCommon) === null || _elementorCommon2 === void 0 || (_elementorCommon2 = _elementorCommon2.config) === null || _elementorCommon2 === void 0 || (_elementorCommon2 = _elementorCommon2.editor_events) === null || _elementorCommon2 === void 0 ? void 0 : _elementorCommon2.can_send_events) || false;
8080 - }
8081 - },
8082 - {
8083 - key: "isEventsManagerAvailable",
8084 - value: function isEventsManagerAvailable() {
8085 - var eventsManager = this.getEventsManager();
8086 - return eventsManager && "function" === typeof eventsManager.dispatchEvent;
8087 - }
8088 - },
8089 - {
8090 - key: "dispatchEvent",
8091 - value: function dispatchEvent(eventName, payload) {
8092 - try {
8093 - if (!this.isEventsManagerAvailable() || !this.canSendEvents()) return false;
8094 - this.getEventsManager().dispatchEvent(eventName, payload);
8095 - return true;
8096 - } catch (error) {
8097 - return false;
8098 - }
8099 - }
8100 - },
8101 - {
8102 - key: "toLowerSnake",
8103 - value: function toLowerSnake(value) {
8104 - if (!value || "string" !== typeof value) return value;
8105 - return value.replace(/\s+/g, "_").toLowerCase();
8106 - }
8107 - },
8108 - {
8109 - key: "decodeHtmlEntities",
8110 - value: function decodeHtmlEntities(text) {
8111 - if (!text || "string" !== typeof text) return text;
8112 - return new DOMParser().parseFromString(text, "text/html").body.textContent || text;
8113 - }
8114 - },
8115 - {
8116 - key: "isInEditorContext",
8117 - value: function isInEditorContext() {
8118 - var _window$elementor;
8119 - return "undefined" !== typeof window.elementor && !!((_window$elementor = window.elementor) !== null && _window$elementor !== void 0 && _window$elementor.documents);
8120 - }
8121 - },
8122 - {
8123 - key: "getFinderContext",
8124 - value: function getFinderContext() {
8125 - var _config$appTypes;
8126 - var _config$appTypes2;
8127 - var _config$locations;
8128 - var _config$locations2;
8129 - var config = this.getConfig();
8130 - var isEditor = this.isInEditorContext();
8131 - return {
8132 - windowName: isEditor ? config === null || config === void 0 || (_config$appTypes = config.appTypes) === null || _config$appTypes === void 0 ? void 0 : _config$appTypes.editor : config === null || config === void 0 || (_config$appTypes2 = config.appTypes) === null || _config$appTypes2 === void 0 ? void 0 : _config$appTypes2.wpAdmin,
8133 - targetLocation: this.toLowerSnake(isEditor ? config === null || config === void 0 || (_config$locations = config.locations) === null || _config$locations === void 0 ? void 0 : _config$locations.topBar : config === null || config === void 0 || (_config$locations2 = config.locations) === null || _config$locations2 === void 0 ? void 0 : _config$locations2.sidebar)
8134 - };
8135 - }
8136 - },
8137 - {
8138 - key: "createBasePayload",
8139 - value: function createBasePayload() {
8140 - var _config$appTypes$edit;
8141 - var _config$appTypes3;
8142 - var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
8143 - var config = this.getConfig();
8144 - return _objectSpread({ window_name: (_config$appTypes$edit = config === null || config === void 0 || (_config$appTypes3 = config.appTypes) === null || _config$appTypes3 === void 0 ? void 0 : _config$appTypes3.editor) !== null && _config$appTypes$edit !== void 0 ? _config$appTypes$edit : "editor" }, overrides);
8145 - }
8146 - },
8147 - {
8148 - key: "sendTopBarPublishDropdown",
8149 - value: function sendTopBarPublishDropdown(targetName) {
8150 - var _config$names;
8151 - var _config$triggers;
8152 - var _config$targetTypes;
8153 - var _config$interactionRe;
8154 - var _config$locations3;
8155 - var _config$secondaryLoca;
8156 - var _config$targetTypes2;
8157 - var config = this.getConfig();
8158 - return this.dispatchEvent(config === null || config === void 0 || (_config$names = config.names) === null || _config$names === void 0 || (_config$names = _config$names.editorOne) === null || _config$names === void 0 ? void 0 : _config$names.topBarPublishDropdown, this.createBasePayload({
8159 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers = config.triggers) === null || _config$triggers === void 0 ? void 0 : _config$triggers.click),
8160 - target_type: config === null || config === void 0 || (_config$targetTypes = config.targetTypes) === null || _config$targetTypes === void 0 ? void 0 : _config$targetTypes.dropdownItem,
8161 - target_name: targetName,
8162 - interaction_result: config === null || config === void 0 || (_config$interactionRe = config.interactionResults) === null || _config$interactionRe === void 0 ? void 0 : _config$interactionRe.actionSelected,
8163 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations3 = config.locations) === null || _config$locations3 === void 0 ? void 0 : _config$locations3.topBar),
8164 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca = config.secondaryLocations) === null || _config$secondaryLoca === void 0 ? void 0 : _config$secondaryLoca.publishDropdown),
8165 - location_l2: config === null || config === void 0 || (_config$targetTypes2 = config.targetTypes) === null || _config$targetTypes2 === void 0 ? void 0 : _config$targetTypes2.dropdownItem,
8166 - interaction_description: "User selected an action from the publish dropdown"
8167 - }));
8168 - }
8169 - },
8170 - {
8171 - key: "sendTopBarPageList",
8172 - value: function sendTopBarPageList(targetName) {
8173 - var _config$names2;
8174 - var _config$triggers2;
8175 - var _config$targetTypes3;
8176 - var _config$interactionRe2;
8177 - var _config$interactionRe3;
8178 - var _config$locations4;
8179 - var _config$secondaryLoca2;
8180 - var _config$targetTypes4;
8181 - var isCreate = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
8182 - var config = this.getConfig();
8183 - return this.dispatchEvent(config === null || config === void 0 || (_config$names2 = config.names) === null || _config$names2 === void 0 || (_config$names2 = _config$names2.editorOne) === null || _config$names2 === void 0 ? void 0 : _config$names2.topBarPageList, this.createBasePayload({
8184 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers2 = config.triggers) === null || _config$triggers2 === void 0 ? void 0 : _config$triggers2.click),
8185 - target_type: config === null || config === void 0 || (_config$targetTypes3 = config.targetTypes) === null || _config$targetTypes3 === void 0 ? void 0 : _config$targetTypes3.dropdownItem,
8186 - target_name: targetName,
8187 - interaction_result: isCreate ? config === null || config === void 0 || (_config$interactionRe2 = config.interactionResults) === null || _config$interactionRe2 === void 0 ? void 0 : _config$interactionRe2.create : config === null || config === void 0 || (_config$interactionRe3 = config.interactionResults) === null || _config$interactionRe3 === void 0 ? void 0 : _config$interactionRe3.navigate,
8188 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations4 = config.locations) === null || _config$locations4 === void 0 ? void 0 : _config$locations4.topBar),
8189 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca2 = config.secondaryLocations) === null || _config$secondaryLoca2 === void 0 ? void 0 : _config$secondaryLoca2.pageListDropdown),
8190 - location_l2: config === null || config === void 0 || (_config$targetTypes4 = config.targetTypes) === null || _config$targetTypes4 === void 0 ? void 0 : _config$targetTypes4.dropdownItem,
8191 - interaction_description: "User selected an action from the page list dropdown"
8192 - }));
8193 - }
8194 - },
8195 - {
8196 - key: "sendSiteSettingsSession",
8197 - value: function sendSiteSettingsSession(_ref) {
8198 - var _config$names3;
8199 - var _config$triggers3;
8200 - var _config$interactionRe4;
8201 - var _config$locations5;
8202 - var _config$secondaryLoca3;
8203 - var targetType = _ref.targetType;
8204 - var _ref$visitedItems = _ref.visitedItems;
8205 - var visitedItems = _ref$visitedItems === void 0 ? [] : _ref$visitedItems;
8206 - var _ref$savedItems = _ref.savedItems;
8207 - var savedItems = _ref$savedItems === void 0 ? [] : _ref$savedItems;
8208 - var state = _ref.state;
8209 - var config = this.getConfig();
8210 - return this.dispatchEvent(config === null || config === void 0 || (_config$names3 = config.names) === null || _config$names3 === void 0 || (_config$names3 = _config$names3.editorOne) === null || _config$names3 === void 0 ? void 0 : _config$names3.siteSettingsSession, this.createBasePayload({
8211 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers3 = config.triggers) === null || _config$triggers3 === void 0 ? void 0 : _config$triggers3.click),
8212 - target_type: targetType,
8213 - target_name: "site_settings",
8214 - interaction_result: config === null || config === void 0 || (_config$interactionRe4 = config.interactionResults) === null || _config$interactionRe4 === void 0 ? void 0 : _config$interactionRe4.sessionEnd,
8215 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations5 = config.locations) === null || _config$locations5 === void 0 ? void 0 : _config$locations5.leftPanel),
8216 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca3 = config.secondaryLocations) === null || _config$secondaryLoca3 === void 0 ? void 0 : _config$secondaryLoca3.siteSettings),
8217 - interaction_description: "Records areas visited as part of the site setting session",
8218 - metadata: {
8219 - visited_items: visitedItems,
8220 - saved_items: savedItems
8221 - },
8222 - state
8223 - }));
8224 - }
8225 - },
8226 - {
8227 - key: "sendELibraryNav",
8228 - value: function sendELibraryNav(tabName) {
8229 - var _config$names4;
8230 - var _config$triggers4;
8231 - var _config$targetTypes5;
8232 - var _config$interactionRe5;
8233 - var _config$locations6;
8234 - var _config$secondaryLoca4;
8235 - var config = this.getConfig();
8236 - return this.dispatchEvent(config === null || config === void 0 || (_config$names4 = config.names) === null || _config$names4 === void 0 || (_config$names4 = _config$names4.editorOne) === null || _config$names4 === void 0 ? void 0 : _config$names4.eLibraryNav, this.createBasePayload({
8237 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers4 = config.triggers) === null || _config$triggers4 === void 0 ? void 0 : _config$triggers4.tabSelect),
8238 - target_type: config === null || config === void 0 || (_config$targetTypes5 = config.targetTypes) === null || _config$targetTypes5 === void 0 ? void 0 : _config$targetTypes5.tab,
8239 - target_name: this.toLowerSnake(tabName),
8240 - interaction_result: config === null || config === void 0 || (_config$interactionRe5 = config.interactionResults) === null || _config$interactionRe5 === void 0 ? void 0 : _config$interactionRe5.tabChanged,
8241 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations6 = config.locations) === null || _config$locations6 === void 0 ? void 0 : _config$locations6.elementorLibrary),
8242 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca4 = config.secondaryLocations) === null || _config$secondaryLoca4 === void 0 ? void 0 : _config$secondaryLoca4.libraryTabs),
8243 - interaction_description: "User navigates within elementor library"
8244 - }));
8245 - }
8246 - },
8247 - {
8248 - key: "sendELibraryInsert",
8249 - value: function sendELibraryInsert(_ref2) {
8250 - var _config$triggers5;
8251 - var _config$targetTypes6;
8252 - var _config$interactionRe6;
8253 - var _config$locations7;
8254 - var _config$secondaryLoca5;
8255 - var _config$names5;
8256 - var assetId = _ref2.assetId;
8257 - var assetName = _ref2.assetName;
8258 - var libraryType = _ref2.libraryType;
8259 - var _ref2$proRequired = _ref2.proRequired;
8260 - var proRequired = _ref2$proRequired === void 0 ? false : _ref2$proRequired;
8261 - var config = this.getConfig();
8262 - var payload = this.createBasePayload({
8263 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers5 = config.triggers) === null || _config$triggers5 === void 0 ? void 0 : _config$triggers5.insert),
8264 - target_type: config === null || config === void 0 || (_config$targetTypes6 = config.targetTypes) === null || _config$targetTypes6 === void 0 ? void 0 : _config$targetTypes6.button,
8265 - target_name: String(assetId),
8266 - interaction_result: config === null || config === void 0 || (_config$interactionRe6 = config.interactionResults) === null || _config$interactionRe6 === void 0 ? void 0 : _config$interactionRe6.assetInserted,
8267 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations7 = config.locations) === null || _config$locations7 === void 0 ? void 0 : _config$locations7.elementorLibrary),
8268 - location_l1: this.toLowerSnake(libraryType),
8269 - location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca5 = config.secondaryLocations) === null || _config$secondaryLoca5 === void 0 ? void 0 : _config$secondaryLoca5.assetCard),
8270 - interaction_description: "User inserts block/pages from elementor library",
8271 - metadata: {
8272 - template_id: String(assetId),
8273 - template_name: this.decodeHtmlEntities(assetName) || ""
8274 - }
8275 - });
8276 - if (proRequired) payload.state = "pro_plan_required";
8277 - return this.dispatchEvent(config === null || config === void 0 || (_config$names5 = config.names) === null || _config$names5 === void 0 || (_config$names5 = _config$names5.editorOne) === null || _config$names5 === void 0 ? void 0 : _config$names5.eLibraryInsert, payload);
8278 - }
8279 - },
8280 - {
8281 - key: "sendELibraryFavorite",
8282 - value: function sendELibraryFavorite(_ref3) {
8283 - var _config$triggers6;
8284 - var _config$targetTypes7;
8285 - var _config$interactionRe7;
8286 - var _config$locations8;
8287 - var _config$secondaryLoca6;
8288 - var _config$names6;
8289 - var assetId = _ref3.assetId;
8290 - var assetName = _ref3.assetName;
8291 - var libraryType = _ref3.libraryType;
8292 - var isFavorite = _ref3.isFavorite;
8293 - var _ref3$proRequired = _ref3.proRequired;
8294 - var proRequired = _ref3$proRequired === void 0 ? false : _ref3$proRequired;
8295 - var config = this.getConfig();
8296 - var payload = this.createBasePayload({
8297 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers6 = config.triggers) === null || _config$triggers6 === void 0 ? void 0 : _config$triggers6.click),
8298 - target_type: config === null || config === void 0 || (_config$targetTypes7 = config.targetTypes) === null || _config$targetTypes7 === void 0 ? void 0 : _config$targetTypes7.toggle,
8299 - target_name: String(assetId),
8300 - interaction_result: config === null || config === void 0 || (_config$interactionRe7 = config.interactionResults) === null || _config$interactionRe7 === void 0 ? void 0 : _config$interactionRe7.assetFavorite,
8301 - target_value: Boolean(isFavorite),
8302 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations8 = config.locations) === null || _config$locations8 === void 0 ? void 0 : _config$locations8.elementorLibrary),
8303 - location_l1: this.toLowerSnake(libraryType),
8304 - location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca6 = config.secondaryLocations) === null || _config$secondaryLoca6 === void 0 ? void 0 : _config$secondaryLoca6.assetCard),
8305 - interaction_description: "User favorite block/pages from elementor library",
8306 - metadata: {
8307 - template_id: String(assetId),
8308 - template_name: this.decodeHtmlEntities(assetName) || ""
8309 - }
8310 - });
8311 - if (proRequired) payload.state = "pro_plan_required";
8312 - return this.dispatchEvent(config === null || config === void 0 || (_config$names6 = config.names) === null || _config$names6 === void 0 || (_config$names6 = _config$names6.editorOne) === null || _config$names6 === void 0 ? void 0 : _config$names6.eLibraryFavorite, payload);
8313 - }
8314 - },
8315 - {
8316 - key: "sendELibraryGenerateAi",
8317 - value: function sendELibraryGenerateAi(_ref4) {
8318 - var _config$names7;
8319 - var _config$triggers7;
8320 - var _config$targetTypes8;
8321 - var _config$interactionRe8;
8322 - var _config$locations9;
8323 - var _config$secondaryLoca7;
8324 - var assetId = _ref4.assetId;
8325 - var assetName = _ref4.assetName;
8326 - var libraryType = _ref4.libraryType;
8327 - var config = this.getConfig();
8328 - return this.dispatchEvent(config === null || config === void 0 || (_config$names7 = config.names) === null || _config$names7 === void 0 || (_config$names7 = _config$names7.editorOne) === null || _config$names7 === void 0 ? void 0 : _config$names7.eLibraryGenerateAi, this.createBasePayload({
8329 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers7 = config.triggers) === null || _config$triggers7 === void 0 ? void 0 : _config$triggers7.click),
8330 - target_type: config === null || config === void 0 || (_config$targetTypes8 = config.targetTypes) === null || _config$targetTypes8 === void 0 ? void 0 : _config$targetTypes8.button,
8331 - target_name: String(assetId),
8332 - interaction_result: config === null || config === void 0 || (_config$interactionRe8 = config.interactionResults) === null || _config$interactionRe8 === void 0 ? void 0 : _config$interactionRe8.aiGenerate,
8333 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations9 = config.locations) === null || _config$locations9 === void 0 ? void 0 : _config$locations9.elementorLibrary),
8334 - location_l1: this.toLowerSnake(libraryType),
8335 - location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca7 = config.secondaryLocations) === null || _config$secondaryLoca7 === void 0 ? void 0 : _config$secondaryLoca7.assetCard),
8336 - interaction_description: "User generated block/page based on a library asset",
8337 - metadata: {
8338 - template_id: String(assetId),
8339 - template_name: this.decodeHtmlEntities(assetName) || ""
8340 - }
8341 - }));
8342 - }
8343 - },
8344 - {
8345 - key: "sendFinderSearchInput",
8346 - value: function sendFinderSearchInput(_ref5) {
8347 - var _config$triggers8;
8348 - var _config$targetTypes9;
8349 - var _config$interactionRe9;
8350 - var _config$interactionRe0;
8351 - var _config$secondaryLoca8;
8352 - var _config$names8;
8353 - var resultsCount = _ref5.resultsCount;
8354 - var _ref5$searchTerm = _ref5.searchTerm;
8355 - var searchTerm = _ref5$searchTerm === void 0 ? null : _ref5$searchTerm;
8356 - var config = this.getConfig();
8357 - var hasResults = resultsCount > 0;
8358 - var finderContext = this.getFinderContext();
8359 - var payload = this.createBasePayload({
8360 - window_name: finderContext.windowName,
8361 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers8 = config.triggers) === null || _config$triggers8 === void 0 ? void 0 : _config$triggers8.typing),
8362 - target_type: config === null || config === void 0 || (_config$targetTypes9 = config.targetTypes) === null || _config$targetTypes9 === void 0 ? void 0 : _config$targetTypes9.searchInput,
8363 - target_name: "finder",
8364 - interaction_result: hasResults ? config === null || config === void 0 || (_config$interactionRe9 = config.interactionResults) === null || _config$interactionRe9 === void 0 ? void 0 : _config$interactionRe9.resultsUpdated : config === null || config === void 0 || (_config$interactionRe0 = config.interactionResults) === null || _config$interactionRe0 === void 0 ? void 0 : _config$interactionRe0.noResults,
8365 - target_location: finderContext.targetLocation,
8366 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca8 = config.secondaryLocations) === null || _config$secondaryLoca8 === void 0 ? void 0 : _config$secondaryLoca8.finder),
8367 - interaction_description: "Finder search input, follows debounce behavior",
8368 - metadata: { results_count: resultsCount }
8369 - });
8370 - if (!hasResults && searchTerm) payload.metadata.search_term = searchTerm;
8371 - return this.dispatchEvent(config === null || config === void 0 || (_config$names8 = config.names) === null || _config$names8 === void 0 || (_config$names8 = _config$names8.editorOne) === null || _config$names8 === void 0 ? void 0 : _config$names8.finderSearchInput, payload);
8372 - }
8373 - },
8374 - {
8375 - key: "sendFinderResultSelect",
8376 - value: function sendFinderResultSelect(choice) {
8377 - var _config$names9;
8378 - var _config$triggers9;
8379 - var _config$targetTypes0;
8380 - var _config$interactionRe1;
8381 - var _config$secondaryLoca9;
8382 - var _config$secondaryLoca0;
8383 - var config = this.getConfig();
8384 - var finderContext = this.getFinderContext();
8385 - return this.dispatchEvent(config === null || config === void 0 || (_config$names9 = config.names) === null || _config$names9 === void 0 || (_config$names9 = _config$names9.editorOne) === null || _config$names9 === void 0 ? void 0 : _config$names9.finderResultSelect, this.createBasePayload({
8386 - window_name: finderContext.windowName,
8387 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers9 = config.triggers) === null || _config$triggers9 === void 0 ? void 0 : _config$triggers9.click),
8388 - target_type: config === null || config === void 0 || (_config$targetTypes0 = config.targetTypes) === null || _config$targetTypes0 === void 0 ? void 0 : _config$targetTypes0.searchResult,
8389 - target_name: choice,
8390 - interaction_result: config === null || config === void 0 || (_config$interactionRe1 = config.interactionResults) === null || _config$interactionRe1 === void 0 ? void 0 : _config$interactionRe1.selected,
8391 - target_location: finderContext.targetLocation,
8392 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca9 = config.secondaryLocations) === null || _config$secondaryLoca9 === void 0 ? void 0 : _config$secondaryLoca9.finder),
8393 - location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca0 = config.secondaryLocations) === null || _config$secondaryLoca0 === void 0 ? void 0 : _config$secondaryLoca0.finderResults),
8394 - interaction_description: "Finder search results was selected"
8395 - }));
8396 - }
8397 - },
8398 - {
8399 - key: "sendCanvasEmptyBoxAction",
8400 - value: function sendCanvasEmptyBoxAction(_ref6) {
8401 - var _config$triggers0;
8402 - var _config$targetTypes1;
8403 - var _config$interactionRe10;
8404 - var _config$locations0;
8405 - var _config$secondaryLoca1;
8406 - var _config$names0;
8407 - var targetName = _ref6.targetName;
8408 - var _ref6$metadata = _ref6.metadata;
8409 - var metadata = _ref6$metadata === void 0 ? {} : _ref6$metadata;
8410 - var _ref6$containerCreate = _ref6.containerCreated;
8411 - var containerCreated = _ref6$containerCreate === void 0 ? null : _ref6$containerCreate;
8412 - var config = this.getConfig();
8413 - var payload = this.createBasePayload({
8414 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers0 = config.triggers) === null || _config$triggers0 === void 0 ? void 0 : _config$triggers0.click),
8415 - target_type: config === null || config === void 0 || (_config$targetTypes1 = config.targetTypes) === null || _config$targetTypes1 === void 0 ? void 0 : _config$targetTypes1.buttons,
8416 - target_name: targetName,
8417 - interaction_result: config === null || config === void 0 || (_config$interactionRe10 = config.interactionResults) === null || _config$interactionRe10 === void 0 ? void 0 : _config$interactionRe10.selected,
8418 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations0 = config.locations) === null || _config$locations0 === void 0 ? void 0 : _config$locations0.canvas),
8419 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca1 = config.secondaryLocations) === null || _config$secondaryLoca1 === void 0 ? void 0 : _config$secondaryLoca1.emptyBox),
8420 - interaction_description: "Empty box on canvas actions"
8421 - });
8422 - if (Object.keys(metadata).length > 0) payload.metadata = metadata;
8423 - if (containerCreated !== null) payload.state = containerCreated;
8424 - return this.dispatchEvent(config === null || config === void 0 || (_config$names0 = config.names) === null || _config$names0 === void 0 || (_config$names0 = _config$names0.editorOne) === null || _config$names0 === void 0 ? void 0 : _config$names0.canvasEmptyBoxAction, payload);
8425 - }
8426 - },
8427 - {
8428 - key: "sendWidgetPanelSearch",
8429 - value: function sendWidgetPanelSearch(_ref7) {
8430 - var _config$triggers1;
8431 - var _config$targetTypes10;
8432 - var _config$interactionRe11;
8433 - var _config$interactionRe12;
8434 - var _config$locations1;
8435 - var _config$locations10;
8436 - var _config$secondaryLoca10;
8437 - var _config$names1;
8438 - var resultsCount = _ref7.resultsCount;
8439 - var _ref7$userInput = _ref7.userInput;
8440 - var userInput = _ref7$userInput === void 0 ? null : _ref7$userInput;
8441 - var config = this.getConfig();
8442 - var hasResults = resultsCount > 0;
8443 - var payload = this.createBasePayload({
8444 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers1 = config.triggers) === null || _config$triggers1 === void 0 ? void 0 : _config$triggers1.typing),
8445 - target_type: config === null || config === void 0 || (_config$targetTypes10 = config.targetTypes) === null || _config$targetTypes10 === void 0 ? void 0 : _config$targetTypes10.searchWidget,
8446 - target_name: "search_widget",
8447 - interaction_result: hasResults ? config === null || config === void 0 || (_config$interactionRe11 = config.interactionResults) === null || _config$interactionRe11 === void 0 ? void 0 : _config$interactionRe11.resultsUpdated : config === null || config === void 0 || (_config$interactionRe12 = config.interactionResults) === null || _config$interactionRe12 === void 0 ? void 0 : _config$interactionRe12.noResults,
8448 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations1 = config.locations) === null || _config$locations1 === void 0 ? void 0 : _config$locations1.leftPanel),
8449 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$locations10 = config.locations) === null || _config$locations10 === void 0 ? void 0 : _config$locations10.widgetPanel),
8450 - location_l2: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca10 = config.secondaryLocations) === null || _config$secondaryLoca10 === void 0 ? void 0 : _config$secondaryLoca10.searchBar),
8451 - interaction_description: "Widget search input, follows debounce behavior"
8452 - });
8453 - if (!hasResults && userInput) payload.metadata = { user_input: userInput };
8454 - return this.dispatchEvent(config === null || config === void 0 || (_config$names1 = config.names) === null || _config$names1 === void 0 || (_config$names1 = _config$names1.editorOne) === null || _config$names1 === void 0 ? void 0 : _config$names1.widgetPanelSearch, payload);
8455 - }
8456 - },
8457 - {
8458 - key: "createWpDashPayload",
8459 - value: function createWpDashPayload() {
8460 - var _config$appTypes$wpDa;
8461 - var _config$appTypes4;
8462 - var _config$locations11;
8463 - var overrides = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
8464 - var config = this.getConfig();
8465 - return this.createBasePayload(_objectSpread({
8466 - window_name: (_config$appTypes$wpDa = config === null || config === void 0 || (_config$appTypes4 = config.appTypes) === null || _config$appTypes4 === void 0 ? void 0 : _config$appTypes4.wpDash) !== null && _config$appTypes$wpDa !== void 0 ? _config$appTypes$wpDa : "wpdash",
8467 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations11 = config.locations) === null || _config$locations11 === void 0 ? void 0 : _config$locations11.wpDashAdmin),
8468 - location_l2: ""
8469 - }, overrides));
8470 - }
8471 - },
8472 - {
8473 - key: "sendWpDashElementorMenuClick",
8474 - value: function sendWpDashElementorMenuClick() {
8475 - var _config$names10;
8476 - var _config$triggers10;
8477 - var _config$targetTypes11;
8478 - var _config$interactionRe13;
8479 - var _config$secondaryLoca11;
8480 - var config = this.getConfig();
8481 - return this.dispatchEvent(config === null || config === void 0 || (_config$names10 = config.names) === null || _config$names10 === void 0 || (_config$names10 = _config$names10.editorOne) === null || _config$names10 === void 0 ? void 0 : _config$names10.wpDashElementorMenuClick, this.createWpDashPayload({
8482 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers10 = config.triggers) === null || _config$triggers10 === void 0 ? void 0 : _config$triggers10.click),
8483 - target_type: config === null || config === void 0 || (_config$targetTypes11 = config.targetTypes) === null || _config$targetTypes11 === void 0 ? void 0 : _config$targetTypes11.wpDashAdminMenuItem,
8484 - target_name: "elementor_menu_item",
8485 - interaction_result: config === null || config === void 0 || (_config$interactionRe13 = config.interactionResults) === null || _config$interactionRe13 === void 0 ? void 0 : _config$interactionRe13.elementorSideMenuOpened,
8486 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca11 = config.secondaryLocations) === null || _config$secondaryLoca11 === void 0 ? void 0 : _config$secondaryLoca11.wpDashElementorCoreMenu),
8487 - interaction_description: "core_user_clicked_elementor_menu_item"
8488 - }));
8489 - }
8490 - },
8491 - {
8492 - key: "sendWpDashEditorSubMenuHover",
8493 - value: function sendWpDashEditorSubMenuHover() {
8494 - var _config$names11;
8495 - var _config$triggers11;
8496 - var _config$targetTypes12;
8497 - var _config$interactionRe14;
8498 - var _config$secondaryLoca12;
8499 - var config = this.getConfig();
8500 - return this.dispatchEvent(config === null || config === void 0 || (_config$names11 = config.names) === null || _config$names11 === void 0 || (_config$names11 = _config$names11.editorOne) === null || _config$names11 === void 0 ? void 0 : _config$names11.wpDashEditorSubMenuHover, this.createWpDashPayload({
8501 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers11 = config.triggers) === null || _config$triggers11 === void 0 ? void 0 : _config$triggers11.hover),
8502 - target_type: config === null || config === void 0 || (_config$targetTypes12 = config.targetTypes) === null || _config$targetTypes12 === void 0 ? void 0 : _config$targetTypes12.wpDashEditorMenu,
8503 - target_name: "wpdash_editor_sub_menu",
8504 - interaction_result: config === null || config === void 0 || (_config$interactionRe14 = config.interactionResults) === null || _config$interactionRe14 === void 0 ? void 0 : _config$interactionRe14.editorSubMenuOpened,
8505 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca12 = config.secondaryLocations) === null || _config$secondaryLoca12 === void 0 ? void 0 : _config$secondaryLoca12.wpDashElementorCoreSubMenu),
8506 - interaction_description: "core_user_hovered_sub_menu"
8507 - }));
8508 - }
8509 - },
8510 - {
8511 - key: "sendWpDashThemeBuilderClick",
8512 - value: function sendWpDashThemeBuilderClick() {
8513 - var _config$names12;
8514 - var _config$triggers12;
8515 - var _config$targetTypes13;
8516 - var _config$interactionRe15;
8517 - var _config$secondaryLoca13;
8518 - var config = this.getConfig();
8519 - return this.dispatchEvent(config === null || config === void 0 || (_config$names12 = config.names) === null || _config$names12 === void 0 || (_config$names12 = _config$names12.editorOne) === null || _config$names12 === void 0 ? void 0 : _config$names12.wpDashThemeBuilderClick, this.createWpDashPayload({
8520 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers12 = config.triggers) === null || _config$triggers12 === void 0 ? void 0 : _config$triggers12.click),
8521 - target_type: config === null || config === void 0 || (_config$targetTypes13 = config.targetTypes) === null || _config$targetTypes13 === void 0 ? void 0 : _config$targetTypes13.wpDashSubMenuItem,
8522 - target_name: "theme_builder_menu_item",
8523 - interaction_result: config === null || config === void 0 || (_config$interactionRe15 = config.interactionResults) === null || _config$interactionRe15 === void 0 ? void 0 : _config$interactionRe15.themeBuilderPromotionWindow,
8524 - location_l1: this.toLowerSnake(config === null || config === void 0 || (_config$secondaryLoca13 = config.secondaryLocations) === null || _config$secondaryLoca13 === void 0 ? void 0 : _config$secondaryLoca13.wpDashThemeBuilder),
8525 - interaction_description: "core_user_clicked_theme_builder_menu_item"
8526 - }));
8527 - }
8528 - },
8529 - {
8530 - key: "sendSidebarMenuItemClicked",
8531 - value: function sendSidebarMenuItemClicked(_ref8) {
8532 - var eventId = _ref8.eventId;
8533 - var groupEventId = _ref8.groupEventId;
8534 - try {
8535 - var _config$windowNames;
8536 - var _config$triggers13;
8537 - var _config$targetTypes14;
8538 - var _config$interactionRe16;
8539 - var _config$locations12;
8540 - var _config$names13;
8541 - var config = this.getConfig();
8542 - var payload = this.createBasePayload({
8543 - window_name: config === null || config === void 0 || (_config$windowNames = config.windowNames) === null || _config$windowNames === void 0 ? void 0 : _config$windowNames.sidebarMenu,
8544 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers13 = config.triggers) === null || _config$triggers13 === void 0 ? void 0 : _config$triggers13.click),
8545 - target_type: config === null || config === void 0 || (_config$targetTypes14 = config.targetTypes) === null || _config$targetTypes14 === void 0 ? void 0 : _config$targetTypes14.link,
8546 - target_name: eventId,
8547 - interaction_result: config === null || config === void 0 || (_config$interactionRe16 = config.interactionResults) === null || _config$interactionRe16 === void 0 ? void 0 : _config$interactionRe16.pageOpened,
8548 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations12 = config.locations) === null || _config$locations12 === void 0 ? void 0 : _config$locations12.sidebar)
8549 - });
8550 - if (groupEventId) payload.location_l1 = groupEventId;
8551 - return this.dispatchEvent(config === null || config === void 0 || (_config$names13 = config.names) === null || _config$names13 === void 0 || (_config$names13 = _config$names13.editorOne) === null || _config$names13 === void 0 ? void 0 : _config$names13.sidebarMenuItemClicked, payload);
8552 - } catch (error) {
8553 - return false;
8554 - }
8555 - }
8556 - },
8557 - {
8558 - key: "sendSidebarMenuGroupToggled",
8559 - value: function sendSidebarMenuGroupToggled(_ref9) {
8560 - var eventId = _ref9.eventId;
8561 - var isExpanded = _ref9.isExpanded;
8562 - try {
8563 - var _config$interactionRe17;
8564 - var _config$interactionRe18;
8565 - var _config$names14;
8566 - var _config$windowNames2;
8567 - var _config$triggers14;
8568 - var _config$targetTypes15;
8569 - var _config$locations13;
8570 - var config = this.getConfig();
8571 - var interactionResult = isExpanded ? config === null || config === void 0 || (_config$interactionRe17 = config.interactionResults) === null || _config$interactionRe17 === void 0 ? void 0 : _config$interactionRe17.expanded : config === null || config === void 0 || (_config$interactionRe18 = config.interactionResults) === null || _config$interactionRe18 === void 0 ? void 0 : _config$interactionRe18.collapsed;
8572 - return this.dispatchEvent(config === null || config === void 0 || (_config$names14 = config.names) === null || _config$names14 === void 0 || (_config$names14 = _config$names14.editorOne) === null || _config$names14 === void 0 ? void 0 : _config$names14.sidebarMenuGroupToggled, this.createBasePayload({
8573 - window_name: config === null || config === void 0 || (_config$windowNames2 = config.windowNames) === null || _config$windowNames2 === void 0 ? void 0 : _config$windowNames2.sidebarMenu,
8574 - interaction_type: this.toLowerSnake(config === null || config === void 0 || (_config$triggers14 = config.triggers) === null || _config$triggers14 === void 0 ? void 0 : _config$triggers14.click),
8575 - target_type: config === null || config === void 0 || (_config$targetTypes15 = config.targetTypes) === null || _config$targetTypes15 === void 0 ? void 0 : _config$targetTypes15.toggle,
8576 - target_name: eventId,
8577 - interaction_result: interactionResult,
8578 - target_location: this.toLowerSnake(config === null || config === void 0 || (_config$locations13 = config.locations) === null || _config$locations13 === void 0 ? void 0 : _config$locations13.sidebar)
8579 - }));
8580 - } catch (error) {
8581 - return false;
8582 - }
8583 - }
8584 - }
8585 - ]);
8586 - }();
8587 - createDebouncedFinderSearch = function createDebouncedFinderSearch() {
8588 - var delay = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 300;
8589 - return _.debounce(function(resultsCount, searchTerm) {
8590 - EditorOneEventManager.sendFinderSearchInput({
8591 - resultsCount,
8592 - searchTerm
8593 - });
8594 - }, delay);
8595 - };
8596 - createDebouncedWidgetPanelSearch = function createDebouncedWidgetPanelSearch() {
8597 - var delay = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 2e3;
8598 - return _.debounce(function(resultsCount, userInput) {
8599 - EditorOneEventManager.sendWidgetPanelSearch({
8600 - resultsCount,
8601 - userInput
8602 - });
8603 - }, delay);
8604 - };
8605 - }));
8958 +"use strict";
8959 +/**
8960 + * Copyright (c) 2013-present, Facebook, Inc.
8961 + *
8962 + * This source code is licensed under the MIT license found in the
8963 + * LICENSE file in the root directory of this source tree.
8964 + */
8606 8965
8607 -//#endregion
8608 -//#region modules/ai/assets/js/editor/ai-layout-behavior.js
8609 - init_classCallCheck();
8610 - init_createClass();
8611 - init_defineProperty$1();
8612 - init_editor_integration();
8613 - init_config();
8614 - init_editor_one_events();
8615 - function _callSuper$1(t, o, e) {
8616 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct$1() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
8617 - }
8618 - __name(_callSuper$1, "_callSuper");
8619 - function _isNativeReflectConstruct$1() {
8620 - try {
8621 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
8622 - } catch (t) {}
8623 - return (_isNativeReflectConstruct$1 = function _isNativeReflectConstruct() {
8624 - return !!t;
8625 - })();
8626 - }
8627 - __name(_isNativeReflectConstruct$1, "_isNativeReflectConstruct");
8628 - var AiLayoutBehavior = /*#__PURE__*/ function(_Marionette$Behavior) {
8629 - function AiLayoutBehavior() {
8630 - var _this;
8631 - _classCallCheck(this, AiLayoutBehavior);
8632 - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
8633 - _this = _callSuper$1(this, AiLayoutBehavior, [].concat(args));
8634 - _defineProperty$1(_this, "previewContainer", null);
8635 - return _this;
8636 - }
8637 - _inherits(AiLayoutBehavior, _Marionette$Behavior);
8638 - return _createClass(AiLayoutBehavior, [
8639 - {
8640 - key: "ui",
8641 - value: function ui() {
8642 - return {
8643 - aiButton: ".e-ai-layout-button",
8644 - addTemplateButton: ".elementor-add-template-button"
8645 - };
8646 - }
8647 - },
8648 - {
8649 - key: "events",
8650 - value: function events() {
8651 - return { "click @ui.aiButton": "onAiButtonClick" };
8652 - }
8653 - },
8654 - {
8655 - key: "onAiButtonClick",
8656 - value: function onAiButtonClick(e) {
8657 - e.stopPropagation();
8658 - EditorOneEventManager.sendCanvasEmptyBoxAction({ targetName: "generate_with_ai" });
8659 - window.elementorAiCurrentContext = this.getOption("context");
8660 - renderLayoutApp({
8661 - parentContainer: elementor.getPreviewContainer(),
8662 - mode: MODE_LAYOUT,
8663 - at: this.view.getOption("at"),
8664 - onInsert: this.onInsert.bind(this),
8665 - onRenderApp: function onRenderApp(args) {
8666 - args.previewContainer.init();
8667 - },
8668 - onGenerate: function onGenerate(args) {
8669 - args.previewContainer.reset();
8670 - }
8671 - });
8672 - }
8673 - },
8674 - {
8675 - key: "hideDropArea",
8676 - value: function hideDropArea() {
8677 - this.view.onCloseButtonClick();
8678 - }
8679 - },
8680 - {
8681 - key: "onInsert",
8682 - value: function onInsert(template) {
8683 - this.hideDropArea();
8684 - importToEditor({
8685 - parentContainer: elementor.getPreviewContainer(),
8686 - at: this.view.getOption("at"),
8687 - template,
8688 - historyTitle: (0, _wordpress_i18n.__)("AI Layout", "elementor")
8689 - });
8690 - }
8691 - },
8692 - {
8693 - key: "onRender",
8694 - value: function onRender() {
8695 - var $button = jQuery("<button>", {
8696 - type: "button",
8697 - class: "e-ai-layout-button elementor-add-section-area-button e-button-primary",
8698 - title: (0, _wordpress_i18n.__)("Build with AI", "elementor"),
8699 - "aria-label": (0, _wordpress_i18n.__)("Build with AI", "elementor")
8700 - });
8701 - $button.html("\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <div class=\"e-ai-layout-button--sparkle\"></div>\n <i class=\"eicon-ai\" aria-hidden=\"true\"></i>\n ");
8702 - this.ui.addTemplateButton.after($button);
8703 - }
8704 - }
8705 - ]);
8706 - }(Marionette.Behavior);
8707 8966
8708 -//#endregion
8709 -//#region modules/ai/assets/js/editor/integration/library/apply-template-for-ai-behavior.js
8710 - var require_apply_template_for_ai_behavior = /* @__PURE__ */ __commonJSMin(((exports, module) => {
8711 - var _require = (init_editor_integration(), __toCommonJS(editor_integration_exports));
8712 - var renderLayoutApp = _require.renderLayoutApp;
8713 - var importToEditor = _require.importToEditor;
8714 - var MODE_VARIATION = (init_config(), __toCommonJS(config_exports)).MODE_VARIATION;
8715 - var __$1 = (globalThis.wp.i18n).__;
8716 - var _require4 = (init_attachments(), __toCommonJS(attachments_exports));
8717 - var ATTACHMENT_TYPE_JSON = _require4.ATTACHMENT_TYPE_JSON;
8718 - var ELEMENTOR_LIBRARY_SOURCE = _require4.ELEMENTOR_LIBRARY_SOURCE;
8719 - var EditorOneEventManager = (init_editor_one_events(), __toCommonJS(editor_one_events_exports)).EditorOneEventManager;
8720 - var ApplyTemplateForAiBehavior = Marionette.Behavior.extend({
8721 - ui: {
8722 - applyButton: ".elementor-template-library-template-apply-ai",
8723 - generateVariation: ".elementor-template-library-template-generate-variation"
8724 - },
8725 - events: {
8726 - "click @ui.applyButton": "onApplyButtonClick",
8727 - "click @ui.generateVariation": "onGenerateVariationClick"
8728 - },
8729 - trackAiGenerate: function trackAiGenerate(model) {
8730 - EditorOneEventManager.sendELibraryGenerateAi({
8731 - assetId: model.get("template_id"),
8732 - assetName: model.get("title"),
8733 - libraryType: model.get("type") || model.get("source")
8734 - });
8735 - },
8736 - onGenerateVariationClick: function onGenerateVariationClick() {
8737 - var _libraryComponent$man;
8738 - var args = { model: this.view.model };
8739 - this.trackAiGenerate(this.view.model);
8740 - var libraryComponent = $e.components.get("library");
8741 - var at = (_libraryComponent$man = libraryComponent.manager.modalConfig) === null || _libraryComponent$man === void 0 || (_libraryComponent$man = _libraryComponent$man.importOptions) === null || _libraryComponent$man === void 0 ? void 0 : _libraryComponent$man.at;
8742 - libraryComponent.downloadTemplate(args, function(data) {
8743 - var model = args.model;
8744 - var attachment = {
8745 - type: ATTACHMENT_TYPE_JSON,
8746 - previewHTML: "<img src=\"".concat(model.get("thumbnail"), "\" />"),
8747 - content: data.content[0],
8748 - label: "".concat(model.get("template_id"), " - ").concat(model.get("title")),
8749 - source: ELEMENTOR_LIBRARY_SOURCE
8750 - };
8751 - renderLayoutApp({
8752 - parentContainer: elementor.getPreviewContainer(),
8753 - mode: MODE_VARIATION,
8754 - at,
8755 - attachments: [attachment],
8756 - onInsert: function onInsert(template) {
8757 - importToEditor({
8758 - parentContainer: elementor.getPreviewContainer(),
8759 - at,
8760 - template,
8761 - historyTitle: __$1("AI Variation from library", "elementor")
8762 - });
8763 - }
8764 - });
8765 - $e.run("library/close");
8766 - });
8767 - },
8768 - onApplyButtonClick: function onApplyButtonClick() {
8769 - var args = { model: this.view.model };
8770 - this.trackAiGenerate(this.view.model);
8771 - this.ui.applyButton.addClass("elementor-disabled");
8772 - var activeSource = args.model.get("source");
8773 - if (elementor.hooks.applyFilters("templates/source/is-remote", "remote" === activeSource, activeSource) && !elementor.config.library_connect.is_connected) {
8774 - $e.route("library/connect", args);
8775 - return;
8776 - }
8777 - $e.run("library/generate-ai-variation", args);
8778 - }
8779 - });
8780 - module.exports = ApplyTemplateForAiBehavior;
8781 - }));
8782 8967
8783 -//#endregion
8784 -//#region modules/ai/assets/js/editor/layout-module.js
8785 - init_asyncToGenerator$1();
8786 - init_classCallCheck();
8787 - init_createClass();
8788 - init_defineProperty$1();
8789 - var import_regenerator = /* @__PURE__ */ __toESM(require_regenerator());
8790 - init_editor_integration();
8791 - init_config();
8792 - var import_apply_template_for_ai_behavior = /* @__PURE__ */ __toESM(require_apply_template_for_ai_behavior());
8793 - init_attachments();
8794 - function _callSuper(t, o, e) {
8795 - return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));
8796 - }
8797 - function _isNativeReflectConstruct() {
8798 - try {
8799 - var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
8800 - } catch (t) {}
8801 - return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {
8802 - return !!t;
8803 - })();
8804 - }
8805 - var AI_ATTACHMENT = "ai-attachment";
8806 - var Module = /*#__PURE__*/ function(_elementorModules$edi) {
8807 - function Module() {
8808 - var _this;
8809 - _classCallCheck(this, Module);
8810 - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
8811 - _this = _callSuper(this, Module, [].concat(args));
8812 - _defineProperty$1(_this, "registerVariationsContextMenu", function(groups, currentElement) {
8813 - var saveGroup = groups.find(function(group) {
8814 - return "save" === group.name;
8815 - });
8816 - if (!saveGroup) return groups;
8817 - var contextMenu = {
8818 - name: "ai",
8819 - icon: "eicon-ai",
8820 - isEnabled: function isEnabled() {
8821 - return 0 !== currentElement.getContainer().children.length;
8822 - },
8823 - title: (0, _wordpress_i18n.__)("Generate variations with AI", "elementor"),
8824 - callback: function() {
8825 - var _callback = _asyncToGenerator$1(/*#__PURE__*/ import_regenerator.default.mark(function _callee() {
8826 - var container;
8827 - var json;
8828 - var attachments;
8829 - return import_regenerator.default.wrap(function(_context) {
8830 - while (1) switch (_context.prev = _context.next) {
8831 - case 0:
8832 - container = currentElement.getContainer();
8833 - json = container.model.toJSON({ remove: ["default"] });
8834 - attachments = [{
8835 - type: "json",
8836 - previewHTML: "",
8837 - content: json,
8838 - label: container.model.get("title"),
8839 - source: USER_VARIATION_SOURCE
8840 - }];
8841 - renderLayoutApp({
8842 - parentContainer: container.parent,
8843 - mode: MODE_VARIATION,
8844 - at: container.view._index,
8845 - attachments,
8846 - onSelect: function onSelect() {
8847 - container.view.$el.hide();
8848 - },
8849 - onClose: function onClose() {
8850 - container.view.$el.show();
8851 - },
8852 - onInsert: function onInsert(template) {
8853 - importToEditor({
8854 - parentContainer: container.parent,
8855 - at: container.view._index,
8856 - template,
8857 - historyTitle: (0, _wordpress_i18n.__)("AI Variation", "elementor"),
8858 - replace: true
8859 - });
8860 - }
8861 - });
8862 - case 1:
8863 - case "end": return _context.stop();
8864 - }
8865 - }, _callee);
8866 - }));
8867 - function callback() {
8868 - return _callback.apply(this, arguments);
8869 - }
8870 - return callback;
8871 - }()
8872 - };
8873 - saveGroup.actions.unshift(contextMenu);
8874 - return groups;
8875 - });
8876 - return _this;
8877 - }
8878 - _inherits(Module, _elementorModules$edi);
8879 - return _createClass(Module, [
8880 - {
8881 - key: "onElementorInit",
8882 - value: function onElementorInit() {
8883 - var _this2 = this;
8884 - elementor.hooks.addFilter("views/add-section/behaviors", this.registerAiLayoutBehavior);
8885 - elementor.hooks.addFilter("elements/container/contextMenuGroups", this.registerVariationsContextMenu);
8886 - elementor.hooks.addFilter("elementor/editor/template-library/template/behaviors", this.registerLibraryActionButtonBehavior);
8887 - elementor.hooks.addFilter("elementor/editor/template-library/template/action-button", this.filterLibraryActionButtonTemplate, 11);
8888 - $e.commands.register("library", "generate-ai-variation", function(args) {
8889 - return _this2.applyTemplate(args);
8890 - });
8891 - }
8892 - },
8893 - {
8894 - key: "applyTemplate",
8895 - value: function applyTemplate(args) {
8896 - window.postMessage({ type: "library/attach:start" });
8897 - $e.components.get("library").downloadTemplate(args, function(data) {
8898 - var model = args.model;
8899 - window.postMessage({
8900 - type: "library/attach",
8901 - json: data.content[0],
8902 - html: "<img src=\"".concat(model.get("thumbnail"), "\" />"),
8903 - label: "".concat(model.get("template_id"), " - ").concat(model.get("title")),
8904 - source: ELEMENTOR_LIBRARY_SOURCE
8905 - }, window.location.origin);
8906 - });
8907 - }
8908 - },
8909 - {
8910 - key: "registerLibraryActionButtonBehavior",
8911 - value: function registerLibraryActionButtonBehavior(behaviors) {
8912 - behaviors.applyAiTemplate = { behaviorClass: import_apply_template_for_ai_behavior.default };
8913 - return behaviors;
8914 - }
8915 - },
8916 - {
8917 - key: "registerAiLayoutBehavior",
8918 - value: function registerAiLayoutBehavior(behaviors) {
8919 - behaviors.ai = {
8920 - behaviorClass: AiLayoutBehavior,
8921 - context: { documentType: window.elementor.documents.getCurrent().config.type }
8922 - };
8923 - return behaviors;
8924 - }
8925 - },
8926 - {
8927 - key: "filterLibraryActionButtonTemplate",
8928 - value: function filterLibraryActionButtonTemplate(viewId) {
8929 - var modalConfig = $e.components.get("library").manager.modalConfig;
8930 - if ("#tmpl-elementor-template-library-insert-button" !== viewId) return viewId;
8931 - if ($e.routes.current.library !== "library/templates/blocks") return viewId;
8932 - if ("ai-attachment" === modalConfig.mode) viewId = "#tmpl-elementor-template-library-apply-ai-button";
8933 - else viewId = "#tmpl-elementor-template-library-insert-and-ai-variations-buttons";
8934 - return viewId;
8935 - }
8936 - }
8937 - ]);
8938 - }(elementorModules.editor.utils.Module);
8939 - new Module();
8968 +var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
8940 8969
8941 -//#endregion
8942 -})(wp.i18n, React, ReactDOM, elementorV2.ui, elementorV2.icons);
8970 +module.exports = ReactPropTypesSecret;
8971 +
8972 +
8973 +/***/ }),
8974 +
8975 +/***/ "../node_modules/prop-types/lib/has.js":
8976 +/*!*********************************************!*\
8977 + !*** ../node_modules/prop-types/lib/has.js ***!
8978 + \*********************************************/
8979 +/***/ ((module) => {
8980 +
8981 +module.exports = Function.call.bind(Object.prototype.hasOwnProperty);
8982 +
8983 +
8984 +/***/ }),
8985 +
8986 +/***/ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js":
8987 +/*!************************************************************************************!*\
8988 + !*** ../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js ***!
8989 + \************************************************************************************/
8990 +/***/ ((__unused_webpack_module, exports) => {
8991 +
8992 +"use strict";
8993 +/** @license React v16.13.1
8994 + * react-is.development.js
8995 + *
8996 + * Copyright (c) Facebook, Inc. and its affiliates.
8997 + *
8998 + * This source code is licensed under the MIT license found in the
8999 + * LICENSE file in the root directory of this source tree.
9000 + */
9001 +
9002 +
9003 +
9004 +
9005 +
9006 +if (true) {
9007 + (function() {
9008 +'use strict';
9009 +
9010 +// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
9011 +// nor polyfill, then a plain number is used for performance.
9012 +var hasSymbol = typeof Symbol === 'function' && Symbol.for;
9013 +var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
9014 +var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
9015 +var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
9016 +var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
9017 +var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
9018 +var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
9019 +var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
9020 +// (unstable) APIs that have been removed. Can we remove the symbols?
9021 +
9022 +var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
9023 +var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
9024 +var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
9025 +var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
9026 +var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
9027 +var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
9028 +var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
9029 +var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
9030 +var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
9031 +var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
9032 +var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;
9033 +
9034 +function isValidElementType(type) {
9035 + return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
9036 + 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);
9037 +}
9038 +
9039 +function typeOf(object) {
9040 + if (typeof object === 'object' && object !== null) {
9041 + var $$typeof = object.$$typeof;
9042 +
9043 + switch ($$typeof) {
9044 + case REACT_ELEMENT_TYPE:
9045 + var type = object.type;
9046 +
9047 + switch (type) {
9048 + case REACT_ASYNC_MODE_TYPE:
9049 + case REACT_CONCURRENT_MODE_TYPE:
9050 + case REACT_FRAGMENT_TYPE:
9051 + case REACT_PROFILER_TYPE:
9052 + case REACT_STRICT_MODE_TYPE:
9053 + case REACT_SUSPENSE_TYPE:
9054 + return type;
9055 +
9056 + default:
9057 + var $$typeofType = type && type.$$typeof;
9058 +
9059 + switch ($$typeofType) {
9060 + case REACT_CONTEXT_TYPE:
9061 + case REACT_FORWARD_REF_TYPE:
9062 + case REACT_LAZY_TYPE:
9063 + case REACT_MEMO_TYPE:
9064 + case REACT_PROVIDER_TYPE:
9065 + return $$typeofType;
9066 +
9067 + default:
9068 + return $$typeof;
9069 + }
9070 +
9071 + }
9072 +
9073 + case REACT_PORTAL_TYPE:
9074 + return $$typeof;
9075 + }
9076 + }
9077 +
9078 + return undefined;
9079 +} // AsyncMode is deprecated along with isAsyncMode
9080 +
9081 +var AsyncMode = REACT_ASYNC_MODE_TYPE;
9082 +var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
9083 +var ContextConsumer = REACT_CONTEXT_TYPE;
9084 +var ContextProvider = REACT_PROVIDER_TYPE;
9085 +var Element = REACT_ELEMENT_TYPE;
9086 +var ForwardRef = REACT_FORWARD_REF_TYPE;
9087 +var Fragment = REACT_FRAGMENT_TYPE;
9088 +var Lazy = REACT_LAZY_TYPE;
9089 +var Memo = REACT_MEMO_TYPE;
9090 +var Portal = REACT_PORTAL_TYPE;
9091 +var Profiler = REACT_PROFILER_TYPE;
9092 +var StrictMode = REACT_STRICT_MODE_TYPE;
9093 +var Suspense = REACT_SUSPENSE_TYPE;
9094 +var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated
9095 +
9096 +function isAsyncMode(object) {
9097 + {
9098 + if (!hasWarnedAboutDeprecatedIsAsyncMode) {
9099 + hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
9100 +
9101 + 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.');
9102 + }
9103 + }
9104 +
9105 + return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
9106 +}
9107 +function isConcurrentMode(object) {
9108 + return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
9109 +}
9110 +function isContextConsumer(object) {
9111 + return typeOf(object) === REACT_CONTEXT_TYPE;
9112 +}
9113 +function isContextProvider(object) {
9114 + return typeOf(object) === REACT_PROVIDER_TYPE;
9115 +}
9116 +function isElement(object) {
9117 + return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
9118 +}
9119 +function isForwardRef(object) {
9120 + return typeOf(object) === REACT_FORWARD_REF_TYPE;
9121 +}
9122 +function isFragment(object) {
9123 + return typeOf(object) === REACT_FRAGMENT_TYPE;
9124 +}
9125 +function isLazy(object) {
9126 + return typeOf(object) === REACT_LAZY_TYPE;
9127 +}
9128 +function isMemo(object) {
9129 + return typeOf(object) === REACT_MEMO_TYPE;
9130 +}
9131 +function isPortal(object) {
9132 + return typeOf(object) === REACT_PORTAL_TYPE;
9133 +}
9134 +function isProfiler(object) {
9135 + return typeOf(object) === REACT_PROFILER_TYPE;
9136 +}
9137 +function isStrictMode(object) {
9138 + return typeOf(object) === REACT_STRICT_MODE_TYPE;
9139 +}
9140 +function isSuspense(object) {
9141 + return typeOf(object) === REACT_SUSPENSE_TYPE;
9142 +}
9143 +
9144 +exports.AsyncMode = AsyncMode;
9145 +exports.ConcurrentMode = ConcurrentMode;
9146 +exports.ContextConsumer = ContextConsumer;
9147 +exports.ContextProvider = ContextProvider;
9148 +exports.Element = Element;
9149 +exports.ForwardRef = ForwardRef;
9150 +exports.Fragment = Fragment;
9151 +exports.Lazy = Lazy;
9152 +exports.Memo = Memo;
9153 +exports.Portal = Portal;
9154 +exports.Profiler = Profiler;
9155 +exports.StrictMode = StrictMode;
9156 +exports.Suspense = Suspense;
9157 +exports.isAsyncMode = isAsyncMode;
9158 +exports.isConcurrentMode = isConcurrentMode;
9159 +exports.isContextConsumer = isContextConsumer;
9160 +exports.isContextProvider = isContextProvider;
9161 +exports.isElement = isElement;
9162 +exports.isForwardRef = isForwardRef;
9163 +exports.isFragment = isFragment;
9164 +exports.isLazy = isLazy;
9165 +exports.isMemo = isMemo;
9166 +exports.isPortal = isPortal;
9167 +exports.isProfiler = isProfiler;
9168 +exports.isStrictMode = isStrictMode;
9169 +exports.isSuspense = isSuspense;
9170 +exports.isValidElementType = isValidElementType;
9171 +exports.typeOf = typeOf;
9172 + })();
9173 +}
9174 +
9175 +
9176 +/***/ }),
9177 +
9178 +/***/ "../node_modules/prop-types/node_modules/react-is/index.js":
9179 +/*!*****************************************************************!*\
9180 + !*** ../node_modules/prop-types/node_modules/react-is/index.js ***!
9181 + \*****************************************************************/
9182 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
9183 +
9184 +"use strict";
9185 +
9186 +
9187 +if (false) {} else {
9188 + module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js");
9189 +}
9190 +
9191 +
9192 +/***/ }),
9193 +
9194 +/***/ "../node_modules/react-dom/client.js":
9195 +/*!*******************************************!*\
9196 + !*** ../node_modules/react-dom/client.js ***!
9197 + \*******************************************/
9198 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9199 +
9200 +"use strict";
9201 +
9202 +
9203 +var m = __webpack_require__(/*! react-dom */ "react-dom");
9204 +if (false) {} else {
9205 + var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
9206 + exports.createRoot = function(c, o) {
9207 + i.usingClientEntryPoint = true;
9208 + try {
9209 + return m.createRoot(c, o);
9210 + } finally {
9211 + i.usingClientEntryPoint = false;
9212 + }
9213 + };
9214 + exports.hydrateRoot = function(c, h, o) {
9215 + i.usingClientEntryPoint = true;
9216 + try {
9217 + return m.hydrateRoot(c, h, o);
9218 + } finally {
9219 + i.usingClientEntryPoint = false;
9220 + }
9221 + };
9222 +}
9223 +
9224 +
9225 +/***/ }),
9226 +
9227 +/***/ "../node_modules/react-draggable/build/cjs/Draggable.js":
9228 +/*!**************************************************************!*\
9229 + !*** ../node_modules/react-draggable/build/cjs/Draggable.js ***!
9230 + \**************************************************************/
9231 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9232 +
9233 +"use strict";
9234 +
9235 +
9236 +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); }
9237 +
9238 +Object.defineProperty(exports, "__esModule", ({
9239 + value: true
9240 +}));
9241 +Object.defineProperty(exports, "DraggableCore", ({
9242 + enumerable: true,
9243 + get: function get() {
9244 + return _DraggableCore.default;
9245 + }
9246 +}));
9247 +exports["default"] = void 0;
9248 +
9249 +var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9250 +
9251 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9252 +
9253 +var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9254 +
9255 +var _clsx2 = _interopRequireDefault(__webpack_require__(/*! clsx */ "../node_modules/clsx/dist/clsx.m.js"));
9256 +
9257 +var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9258 +
9259 +var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9260 +
9261 +var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9262 +
9263 +var _DraggableCore = _interopRequireDefault(__webpack_require__(/*! ./DraggableCore */ "../node_modules/react-draggable/build/cjs/DraggableCore.js"));
9264 +
9265 +var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9266 +
9267 +var _excluded = ["axis", "bounds", "children", "defaultPosition", "defaultClassName", "defaultClassNameDragging", "defaultClassNameDragged", "position", "positionOffset", "scale"];
9268 +
9269 +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9270 +
9271 +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); }
9272 +
9273 +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; }
9274 +
9275 +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); }
9276 +
9277 +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; }
9278 +
9279 +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; }
9280 +
9281 +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; }
9282 +
9283 +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; }
9284 +
9285 +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9286 +
9287 +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."); }
9288 +
9289 +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); }
9290 +
9291 +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; }
9292 +
9293 +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; }
9294 +
9295 +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9296 +
9297 +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9298 +
9299 +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); } }
9300 +
9301 +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9302 +
9303 +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); }
9304 +
9305 +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9306 +
9307 +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); }; }
9308 +
9309 +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); }
9310 +
9311 +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9312 +
9313 +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; } }
9314 +
9315 +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9316 +
9317 +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; }
9318 +
9319 +//
9320 +// Define <Draggable>
9321 +//
9322 +var Draggable = /*#__PURE__*/function (_React$Component) {
9323 + _inherits(Draggable, _React$Component);
9324 +
9325 + var _super = _createSuper(Draggable);
9326 +
9327 + function Draggable(props
9328 + /*: DraggableProps*/
9329 + ) {
9330 + var _this;
9331 +
9332 + _classCallCheck(this, Draggable);
9333 +
9334 + _this = _super.call(this, props);
9335 +
9336 + _defineProperty(_assertThisInitialized(_this), "onDragStart", function (e, coreData) {
9337 + (0, _log.default)('Draggable: onDragStart: %j', coreData); // Short-circuit if user's callback killed it.
9338 +
9339 + 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.
9340 +
9341 +
9342 + if (shouldStart === false) return false;
9343 +
9344 + _this.setState({
9345 + dragging: true,
9346 + dragged: true
9347 + });
9348 + });
9349 +
9350 + _defineProperty(_assertThisInitialized(_this), "onDrag", function (e, coreData) {
9351 + if (!_this.state.dragging) return false;
9352 + (0, _log.default)('Draggable: onDrag: %j', coreData);
9353 + var uiData = (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData);
9354 + var newState
9355 + /*: $Shape<DraggableState>*/
9356 + = {
9357 + x: uiData.x,
9358 + y: uiData.y
9359 + }; // Keep within bounds.
9360 +
9361 + if (_this.props.bounds) {
9362 + // Save original x and y.
9363 + var x = newState.x,
9364 + y = newState.y; // Add slack to the values used to calculate bound position. This will ensure that if
9365 + // we start removing slack, the element won't react to it right away until it's been
9366 + // completely removed.
9367 +
9368 + newState.x += _this.state.slackX;
9369 + newState.y += _this.state.slackY; // Get bound position. This will ceil/floor the x and y within the boundaries.
9370 +
9371 + var _getBoundPosition = (0, _positionFns.getBoundPosition)(_assertThisInitialized(_this), newState.x, newState.y),
9372 + _getBoundPosition2 = _slicedToArray(_getBoundPosition, 2),
9373 + newStateX = _getBoundPosition2[0],
9374 + newStateY = _getBoundPosition2[1];
9375 +
9376 + newState.x = newStateX;
9377 + newState.y = newStateY; // Recalculate slack by noting how much was shaved by the boundPosition handler.
9378 +
9379 + newState.slackX = _this.state.slackX + (x - newState.x);
9380 + newState.slackY = _this.state.slackY + (y - newState.y); // Update the event we fire to reflect what really happened after bounds took effect.
9381 +
9382 + uiData.x = newState.x;
9383 + uiData.y = newState.y;
9384 + uiData.deltaX = newState.x - _this.state.x;
9385 + uiData.deltaY = newState.y - _this.state.y;
9386 + } // Short-circuit if user's callback killed it.
9387 +
9388 +
9389 + var shouldUpdate = _this.props.onDrag(e, uiData);
9390 +
9391 + if (shouldUpdate === false) return false;
9392 +
9393 + _this.setState(newState);
9394 + });
9395 +
9396 + _defineProperty(_assertThisInitialized(_this), "onDragStop", function (e, coreData) {
9397 + if (!_this.state.dragging) return false; // Short-circuit if user's callback killed it.
9398 +
9399 + var shouldContinue = _this.props.onStop(e, (0, _positionFns.createDraggableData)(_assertThisInitialized(_this), coreData));
9400 +
9401 + if (shouldContinue === false) return false;
9402 + (0, _log.default)('Draggable: onDragStop: %j', coreData);
9403 + var newState
9404 + /*: $Shape<DraggableState>*/
9405 + = {
9406 + dragging: false,
9407 + slackX: 0,
9408 + slackY: 0
9409 + }; // If this is a controlled component, the result of this operation will be to
9410 + // revert back to the old position. We expect a handler on `onDragStop`, at the least.
9411 +
9412 + var controlled = Boolean(_this.props.position);
9413 +
9414 + if (controlled) {
9415 + var _this$props$position = _this.props.position,
9416 + x = _this$props$position.x,
9417 + y = _this$props$position.y;
9418 + newState.x = x;
9419 + newState.y = y;
9420 + }
9421 +
9422 + _this.setState(newState);
9423 + });
9424 +
9425 + _this.state = {
9426 + // Whether or not we are currently dragging.
9427 + dragging: false,
9428 + // Whether or not we have been dragged before.
9429 + dragged: false,
9430 + // Current transform x and y.
9431 + x: props.position ? props.position.x : props.defaultPosition.x,
9432 + y: props.position ? props.position.y : props.defaultPosition.y,
9433 + prevPropsPosition: _objectSpread({}, props.position),
9434 + // Used for compensating for out-of-bounds drags
9435 + slackX: 0,
9436 + slackY: 0,
9437 + // Can only determine if SVG after mounting
9438 + isElementSVG: false
9439 + };
9440 +
9441 + if (props.position && !(props.onDrag || props.onStop)) {
9442 + // eslint-disable-next-line no-console
9443 + 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.');
9444 + }
9445 +
9446 + return _this;
9447 + }
9448 +
9449 + _createClass(Draggable, [{
9450 + key: "componentDidMount",
9451 + value: function componentDidMount() {
9452 + // Check to see if the element passed is an instanceof SVGElement
9453 + if (typeof window.SVGElement !== 'undefined' && this.findDOMNode() instanceof window.SVGElement) {
9454 + this.setState({
9455 + isElementSVG: true
9456 + });
9457 + }
9458 + }
9459 + }, {
9460 + key: "componentWillUnmount",
9461 + value: function componentWillUnmount() {
9462 + this.setState({
9463 + dragging: false
9464 + }); // prevents invariant if unmounted while dragging
9465 + } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
9466 + // the underlying DOM node ourselves. See the README for more information.
9467 +
9468 + }, {
9469 + key: "findDOMNode",
9470 + value: function findDOMNode()
9471 + /*: ?HTMLElement*/
9472 + {
9473 + var _this$props$nodeRef$c, _this$props, _this$props$nodeRef;
9474 +
9475 + 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);
9476 + }
9477 + }, {
9478 + key: "render",
9479 + value: function render()
9480 + /*: ReactElement<any>*/
9481 + {
9482 + var _clsx;
9483 +
9484 + var _this$props2 = this.props,
9485 + axis = _this$props2.axis,
9486 + bounds = _this$props2.bounds,
9487 + children = _this$props2.children,
9488 + defaultPosition = _this$props2.defaultPosition,
9489 + defaultClassName = _this$props2.defaultClassName,
9490 + defaultClassNameDragging = _this$props2.defaultClassNameDragging,
9491 + defaultClassNameDragged = _this$props2.defaultClassNameDragged,
9492 + position = _this$props2.position,
9493 + positionOffset = _this$props2.positionOffset,
9494 + scale = _this$props2.scale,
9495 + draggableCoreProps = _objectWithoutProperties(_this$props2, _excluded);
9496 +
9497 + var style = {};
9498 + var svgTransform = null; // If this is controlled, we don't want to move it - unless it's dragging.
9499 +
9500 + var controlled = Boolean(position);
9501 + var draggable = !controlled || this.state.dragging;
9502 + var validPosition = position || defaultPosition;
9503 + var transformOpts = {
9504 + // Set left if horizontal drag is enabled
9505 + x: (0, _positionFns.canDragX)(this) && draggable ? this.state.x : validPosition.x,
9506 + // Set top if vertical drag is enabled
9507 + y: (0, _positionFns.canDragY)(this) && draggable ? this.state.y : validPosition.y
9508 + }; // If this element was SVG, we use the `transform` attribute.
9509 +
9510 + if (this.state.isElementSVG) {
9511 + svgTransform = (0, _domFns.createSVGTransform)(transformOpts, positionOffset);
9512 + } else {
9513 + // Add a CSS transform to move the element around. This allows us to move the element around
9514 + // without worrying about whether or not it is relatively or absolutely positioned.
9515 + // If the item you are dragging already has a transform set, wrap it in a <span> so <Draggable>
9516 + // has a clean slate.
9517 + style = (0, _domFns.createCSSTransform)(transformOpts, positionOffset);
9518 + } // Mark with class while dragging
9519 +
9520 +
9521 + 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
9522 + // This makes it flexible to use whatever element is wanted (div, ul, etc)
9523 +
9524 + return /*#__PURE__*/React.createElement(_DraggableCore.default, _extends({}, draggableCoreProps, {
9525 + onStart: this.onDragStart,
9526 + onDrag: this.onDrag,
9527 + onStop: this.onDragStop
9528 + }), /*#__PURE__*/React.cloneElement(React.Children.only(children), {
9529 + className: className,
9530 + style: _objectSpread(_objectSpread({}, children.props.style), style),
9531 + transform: svgTransform
9532 + }));
9533 + }
9534 + }], [{
9535 + key: "getDerivedStateFromProps",
9536 + value: // React 16.3+
9537 + // Arity (props, state)
9538 + function getDerivedStateFromProps(_ref, _ref2)
9539 + /*: ?$Shape<DraggableState>*/
9540 + {
9541 + var position = _ref.position;
9542 + var prevPropsPosition = _ref2.prevPropsPosition;
9543 +
9544 + // Set x/y if a new position is provided in props that is different than the previous.
9545 + if (position && (!prevPropsPosition || position.x !== prevPropsPosition.x || position.y !== prevPropsPosition.y)) {
9546 + (0, _log.default)('Draggable: getDerivedStateFromProps %j', {
9547 + position: position,
9548 + prevPropsPosition: prevPropsPosition
9549 + });
9550 + return {
9551 + x: position.x,
9552 + y: position.y,
9553 + prevPropsPosition: _objectSpread({}, position)
9554 + };
9555 + }
9556 +
9557 + return null;
9558 + }
9559 + }]);
9560 +
9561 + return Draggable;
9562 +}(React.Component);
9563 +
9564 +exports["default"] = Draggable;
9565 +
9566 +_defineProperty(Draggable, "displayName", 'Draggable');
9567 +
9568 +_defineProperty(Draggable, "propTypes", _objectSpread(_objectSpread({}, _DraggableCore.default.propTypes), {}, {
9569 + /**
9570 + * `axis` determines which axis the draggable can move.
9571 + *
9572 + * Note that all callbacks will still return data as normal. This only
9573 + * controls flushing to the DOM.
9574 + *
9575 + * 'both' allows movement horizontally and vertically.
9576 + * 'x' limits movement to horizontal axis.
9577 + * 'y' limits movement to vertical axis.
9578 + * 'none' limits all movement.
9579 + *
9580 + * Defaults to 'both'.
9581 + */
9582 + axis: _propTypes.default.oneOf(['both', 'x', 'y', 'none']),
9583 +
9584 + /**
9585 + * `bounds` determines the range of movement available to the element.
9586 + * Available values are:
9587 + *
9588 + * 'parent' restricts movement within the Draggable's parent node.
9589 + *
9590 + * Alternatively, pass an object with the following properties, all of which are optional:
9591 + *
9592 + * {left: LEFT_BOUND, right: RIGHT_BOUND, bottom: BOTTOM_BOUND, top: TOP_BOUND}
9593 + *
9594 + * All values are in px.
9595 + *
9596 + * Example:
9597 + *
9598 + * ```jsx
9599 + * let App = React.createClass({
9600 + * render: function () {
9601 + * return (
9602 + * <Draggable bounds={{right: 300, bottom: 300}}>
9603 + * <div>Content</div>
9604 + * </Draggable>
9605 + * );
9606 + * }
9607 + * });
9608 + * ```
9609 + */
9610 + bounds: _propTypes.default.oneOfType([_propTypes.default.shape({
9611 + left: _propTypes.default.number,
9612 + right: _propTypes.default.number,
9613 + top: _propTypes.default.number,
9614 + bottom: _propTypes.default.number
9615 + }), _propTypes.default.string, _propTypes.default.oneOf([false])]),
9616 + defaultClassName: _propTypes.default.string,
9617 + defaultClassNameDragging: _propTypes.default.string,
9618 + defaultClassNameDragged: _propTypes.default.string,
9619 +
9620 + /**
9621 + * `defaultPosition` specifies the x and y that the dragged item should start at
9622 + *
9623 + * Example:
9624 + *
9625 + * ```jsx
9626 + * let App = React.createClass({
9627 + * render: function () {
9628 + * return (
9629 + * <Draggable defaultPosition={{x: 25, y: 25}}>
9630 + * <div>I start with transformX: 25px and transformY: 25px;</div>
9631 + * </Draggable>
9632 + * );
9633 + * }
9634 + * });
9635 + * ```
9636 + */
9637 + defaultPosition: _propTypes.default.shape({
9638 + x: _propTypes.default.number,
9639 + y: _propTypes.default.number
9640 + }),
9641 + positionOffset: _propTypes.default.shape({
9642 + x: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
9643 + y: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
9644 + }),
9645 +
9646 + /**
9647 + * `position`, if present, defines the current position of the element.
9648 + *
9649 + * This is similar to how form elements in React work - if no `position` is supplied, the component
9650 + * is uncontrolled.
9651 + *
9652 + * Example:
9653 + *
9654 + * ```jsx
9655 + * let App = React.createClass({
9656 + * render: function () {
9657 + * return (
9658 + * <Draggable position={{x: 25, y: 25}}>
9659 + * <div>I start with transformX: 25px and transformY: 25px;</div>
9660 + * </Draggable>
9661 + * );
9662 + * }
9663 + * });
9664 + * ```
9665 + */
9666 + position: _propTypes.default.shape({
9667 + x: _propTypes.default.number,
9668 + y: _propTypes.default.number
9669 + }),
9670 +
9671 + /**
9672 + * These properties should be defined on the child, not here.
9673 + */
9674 + className: _shims.dontSetMe,
9675 + style: _shims.dontSetMe,
9676 + transform: _shims.dontSetMe
9677 +}));
9678 +
9679 +_defineProperty(Draggable, "defaultProps", _objectSpread(_objectSpread({}, _DraggableCore.default.defaultProps), {}, {
9680 + axis: 'both',
9681 + bounds: false,
9682 + defaultClassName: 'react-draggable',
9683 + defaultClassNameDragging: 'react-draggable-dragging',
9684 + defaultClassNameDragged: 'react-draggable-dragged',
9685 + defaultPosition: {
9686 + x: 0,
9687 + y: 0
9688 + },
9689 + scale: 1
9690 +}));
9691 +
9692 +/***/ }),
9693 +
9694 +/***/ "../node_modules/react-draggable/build/cjs/DraggableCore.js":
9695 +/*!******************************************************************!*\
9696 + !*** ../node_modules/react-draggable/build/cjs/DraggableCore.js ***!
9697 + \******************************************************************/
9698 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
9699 +
9700 +"use strict";
9701 +
9702 +
9703 +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); }
9704 +
9705 +Object.defineProperty(exports, "__esModule", ({
9706 + value: true
9707 +}));
9708 +exports["default"] = void 0;
9709 +
9710 +var React = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));
9711 +
9712 +var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));
9713 +
9714 +var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));
9715 +
9716 +var _domFns = __webpack_require__(/*! ./utils/domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
9717 +
9718 +var _positionFns = __webpack_require__(/*! ./utils/positionFns */ "../node_modules/react-draggable/build/cjs/utils/positionFns.js");
9719 +
9720 +var _shims = __webpack_require__(/*! ./utils/shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
9721 +
9722 +var _log = _interopRequireDefault(__webpack_require__(/*! ./utils/log */ "../node_modules/react-draggable/build/cjs/utils/log.js"));
9723 +
9724 +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9725 +
9726 +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); }
9727 +
9728 +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; }
9729 +
9730 +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9731 +
9732 +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."); }
9733 +
9734 +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); }
9735 +
9736 +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; }
9737 +
9738 +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; }
9739 +
9740 +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9741 +
9742 +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9743 +
9744 +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); } }
9745 +
9746 +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
9747 +
9748 +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); }
9749 +
9750 +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
9751 +
9752 +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); }; }
9753 +
9754 +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); }
9755 +
9756 +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
9757 +
9758 +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; } }
9759 +
9760 +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
9761 +
9762 +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; }
9763 +
9764 +// Simple abstraction for dragging events names.
9765 +var eventsFor = {
9766 + touch: {
9767 + start: 'touchstart',
9768 + move: 'touchmove',
9769 + stop: 'touchend'
9770 + },
9771 + mouse: {
9772 + start: 'mousedown',
9773 + move: 'mousemove',
9774 + stop: 'mouseup'
9775 + }
9776 +}; // Default to mouse events.
9777 +
9778 +var dragEventFor = eventsFor.mouse;
9779 +/*:: type DraggableCoreState = {
9780 + dragging: boolean,
9781 + lastX: number,
9782 + lastY: number,
9783 + touchIdentifier: ?number
9784 +};*/
9785 +
9786 +/*:: export type DraggableData = {
9787 + node: HTMLElement,
9788 + x: number, y: number,
9789 + deltaX: number, deltaY: number,
9790 + lastX: number, lastY: number,
9791 +};*/
9792 +
9793 +/*:: export type DraggableEventHandler = (e: MouseEvent, data: DraggableData) => void | false;*/
9794 +
9795 +/*:: export type ControlPosition = {x: number, y: number};*/
9796 +
9797 +/*:: export type PositionOffsetControlPosition = {x: number|string, y: number|string};*/
9798 +
9799 +/*:: export type DraggableCoreDefaultProps = {
9800 + allowAnyClick: boolean,
9801 + disabled: boolean,
9802 + enableUserSelectHack: boolean,
9803 + onStart: DraggableEventHandler,
9804 + onDrag: DraggableEventHandler,
9805 + onStop: DraggableEventHandler,
9806 + onMouseDown: (e: MouseEvent) => void,
9807 + scale: number,
9808 +};*/
9809 +
9810 +/*:: export type DraggableCoreProps = {
9811 + ...DraggableCoreDefaultProps,
9812 + cancel: string,
9813 + children: ReactElement<any>,
9814 + offsetParent: HTMLElement,
9815 + grid: [number, number],
9816 + handle: string,
9817 + nodeRef?: ?React.ElementRef<any>,
9818 +};*/
9819 +
9820 +//
9821 +// Define <DraggableCore>.
9822 +//
9823 +// <DraggableCore> is for advanced usage of <Draggable>. It maintains minimal internal state so it can
9824 +// work well with libraries that require more control over the element.
9825 +//
9826 +var DraggableCore = /*#__PURE__*/function (_React$Component) {
9827 + _inherits(DraggableCore, _React$Component);
9828 +
9829 + var _super = _createSuper(DraggableCore);
9830 +
9831 + function DraggableCore() {
9832 + var _this;
9833 +
9834 + _classCallCheck(this, DraggableCore);
9835 +
9836 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9837 + args[_key] = arguments[_key];
9838 + }
9839 +
9840 + _this = _super.call.apply(_super, [this].concat(args));
9841 +
9842 + _defineProperty(_assertThisInitialized(_this), "state", {
9843 + dragging: false,
9844 + // Used while dragging to determine deltas.
9845 + lastX: NaN,
9846 + lastY: NaN,
9847 + touchIdentifier: null
9848 + });
9849 +
9850 + _defineProperty(_assertThisInitialized(_this), "mounted", false);
9851 +
9852 + _defineProperty(_assertThisInitialized(_this), "handleDragStart", function (e) {
9853 + // Make it possible to attach event handlers on top of this one.
9854 + _this.props.onMouseDown(e); // Only accept left-clicks.
9855 +
9856 +
9857 + if (!_this.props.allowAnyClick && typeof e.button === 'number' && e.button !== 0) return false; // Get nodes. Be sure to grab relative document (could be iframed)
9858 +
9859 + var thisNode = _this.findDOMNode();
9860 +
9861 + if (!thisNode || !thisNode.ownerDocument || !thisNode.ownerDocument.body) {
9862 + throw new Error('<DraggableCore> not mounted on DragStart!');
9863 + }
9864 +
9865 + var ownerDocument = thisNode.ownerDocument; // Short circuit if handle or cancel prop was provided and selector doesn't match.
9866 +
9867 + 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)) {
9868 + return;
9869 + } // Prevent scrolling on mobile devices, like ipad/iphone.
9870 + // Important that this is after handle/cancel.
9871 +
9872 +
9873 + if (e.type === 'touchstart') e.preventDefault(); // Set touch identifier in component state if this is a touch event. This allows us to
9874 + // distinguish between individual touches on multitouch screens by identifying which
9875 + // touchpoint was set to this element.
9876 +
9877 + var touchIdentifier = (0, _domFns.getTouchIdentifier)(e);
9878 +
9879 + _this.setState({
9880 + touchIdentifier: touchIdentifier
9881 + }); // Get the current drag point from the event. This is used as the offset.
9882 +
9883 +
9884 + var position = (0, _positionFns.getControlPosition)(e, touchIdentifier, _assertThisInitialized(_this));
9885 + if (position == null) return; // not possible but satisfies flow
9886 +
9887 + var x = position.x,
9888 + y = position.y; // Create an event object with all the data parents need to make a decision here.
9889 +
9890 + var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9891 + (0, _log.default)('DraggableCore: handleDragStart: %j', coreEvent); // Call event handler. If it returns explicit false, cancel.
9892 +
9893 + (0, _log.default)('calling', _this.props.onStart);
9894 +
9895 + var shouldUpdate = _this.props.onStart(e, coreEvent);
9896 +
9897 + if (shouldUpdate === false || _this.mounted === false) return; // Add a style to the body to disable user-select. This prevents text from
9898 + // being selected all over the page.
9899 +
9900 + if (_this.props.enableUserSelectHack) (0, _domFns.addUserSelectStyles)(ownerDocument); // Initiate dragging. Set the current x and y as offsets
9901 + // so we know how much we've moved during the drag. This allows us
9902 + // to drag elements around even if they have been moved, without issue.
9903 +
9904 + _this.setState({
9905 + dragging: true,
9906 + lastX: x,
9907 + lastY: y
9908 + }); // Add events to the document directly so we catch when the user's mouse/touch moves outside of
9909 + // this element. We use different events depending on whether or not we have detected that this
9910 + // is a touch-capable device.
9911 +
9912 +
9913 + (0, _domFns.addEvent)(ownerDocument, dragEventFor.move, _this.handleDrag);
9914 + (0, _domFns.addEvent)(ownerDocument, dragEventFor.stop, _this.handleDragStop);
9915 + });
9916 +
9917 + _defineProperty(_assertThisInitialized(_this), "handleDrag", function (e) {
9918 + // Get the current drag point from the event. This is used as the offset.
9919 + var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9920 + if (position == null) return;
9921 + var x = position.x,
9922 + y = position.y; // Snap to grid if prop has been provided
9923 +
9924 + if (Array.isArray(_this.props.grid)) {
9925 + var deltaX = x - _this.state.lastX,
9926 + deltaY = y - _this.state.lastY;
9927 +
9928 + var _snapToGrid = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9929 +
9930 + var _snapToGrid2 = _slicedToArray(_snapToGrid, 2);
9931 +
9932 + deltaX = _snapToGrid2[0];
9933 + deltaY = _snapToGrid2[1];
9934 + if (!deltaX && !deltaY) return; // skip useless drag
9935 +
9936 + x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9937 + }
9938 +
9939 + var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y);
9940 + (0, _log.default)('DraggableCore: handleDrag: %j', coreEvent); // Call event handler. If it returns explicit false, trigger end.
9941 +
9942 + var shouldUpdate = _this.props.onDrag(e, coreEvent);
9943 +
9944 + if (shouldUpdate === false || _this.mounted === false) {
9945 + try {
9946 + // $FlowIgnore
9947 + _this.handleDragStop(new MouseEvent('mouseup'));
9948 + } catch (err) {
9949 + // Old browsers
9950 + var event = ((document.createEvent('MouseEvents')
9951 + /*: any*/
9952 + )
9953 + /*: MouseTouchEvent*/
9954 + ); // I see why this insanity was deprecated
9955 + // $FlowIgnore
9956 +
9957 + event.initMouseEvent('mouseup', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
9958 +
9959 + _this.handleDragStop(event);
9960 + }
9961 +
9962 + return;
9963 + }
9964 +
9965 + _this.setState({
9966 + lastX: x,
9967 + lastY: y
9968 + });
9969 + });
9970 +
9971 + _defineProperty(_assertThisInitialized(_this), "handleDragStop", function (e) {
9972 + if (!_this.state.dragging) return;
9973 + var position = (0, _positionFns.getControlPosition)(e, _this.state.touchIdentifier, _assertThisInitialized(_this));
9974 + if (position == null) return;
9975 + var x = position.x,
9976 + y = position.y; // Snap to grid if prop has been provided
9977 +
9978 + if (Array.isArray(_this.props.grid)) {
9979 + var deltaX = x - _this.state.lastX || 0;
9980 + var deltaY = y - _this.state.lastY || 0;
9981 +
9982 + var _snapToGrid3 = (0, _positionFns.snapToGrid)(_this.props.grid, deltaX, deltaY);
9983 +
9984 + var _snapToGrid4 = _slicedToArray(_snapToGrid3, 2);
9985 +
9986 + deltaX = _snapToGrid4[0];
9987 + deltaY = _snapToGrid4[1];
9988 + x = _this.state.lastX + deltaX, y = _this.state.lastY + deltaY;
9989 + }
9990 +
9991 + var coreEvent = (0, _positionFns.createCoreData)(_assertThisInitialized(_this), x, y); // Call event handler
9992 +
9993 + var shouldContinue = _this.props.onStop(e, coreEvent);
9994 +
9995 + if (shouldContinue === false || _this.mounted === false) return false;
9996 +
9997 + var thisNode = _this.findDOMNode();
9998 +
9999 + if (thisNode) {
10000 + // Remove user-select hack
10001 + if (_this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(thisNode.ownerDocument);
10002 + }
10003 +
10004 + (0, _log.default)('DraggableCore: handleDragStop: %j', coreEvent); // Reset the el.
10005 +
10006 + _this.setState({
10007 + dragging: false,
10008 + lastX: NaN,
10009 + lastY: NaN
10010 + });
10011 +
10012 + if (thisNode) {
10013 + // Remove event handlers
10014 + (0, _log.default)('DraggableCore: Removing handlers');
10015 + (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.move, _this.handleDrag);
10016 + (0, _domFns.removeEvent)(thisNode.ownerDocument, dragEventFor.stop, _this.handleDragStop);
10017 + }
10018 + });
10019 +
10020 + _defineProperty(_assertThisInitialized(_this), "onMouseDown", function (e) {
10021 + dragEventFor = eventsFor.mouse; // on touchscreen laptops we could switch back to mouse
10022 +
10023 + return _this.handleDragStart(e);
10024 + });
10025 +
10026 + _defineProperty(_assertThisInitialized(_this), "onMouseUp", function (e) {
10027 + dragEventFor = eventsFor.mouse;
10028 + return _this.handleDragStop(e);
10029 + });
10030 +
10031 + _defineProperty(_assertThisInitialized(_this), "onTouchStart", function (e) {
10032 + // We're on a touch device now, so change the event handlers
10033 + dragEventFor = eventsFor.touch;
10034 + return _this.handleDragStart(e);
10035 + });
10036 +
10037 + _defineProperty(_assertThisInitialized(_this), "onTouchEnd", function (e) {
10038 + // We're on a touch device now, so change the event handlers
10039 + dragEventFor = eventsFor.touch;
10040 + return _this.handleDragStop(e);
10041 + });
10042 +
10043 + return _this;
10044 + }
10045 +
10046 + _createClass(DraggableCore, [{
10047 + key: "componentDidMount",
10048 + value: function componentDidMount() {
10049 + this.mounted = true; // Touch handlers must be added with {passive: false} to be cancelable.
10050 + // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10051 +
10052 + var thisNode = this.findDOMNode();
10053 +
10054 + if (thisNode) {
10055 + (0, _domFns.addEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10056 + passive: false
10057 + });
10058 + }
10059 + }
10060 + }, {
10061 + key: "componentWillUnmount",
10062 + value: function componentWillUnmount() {
10063 + this.mounted = false; // Remove any leftover event handlers. Remove both touch and mouse handlers in case
10064 + // some browser quirk caused a touch event to fire during a mouse move, or vice versa.
10065 +
10066 + var thisNode = this.findDOMNode();
10067 +
10068 + if (thisNode) {
10069 + var ownerDocument = thisNode.ownerDocument;
10070 + (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.move, this.handleDrag);
10071 + (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.move, this.handleDrag);
10072 + (0, _domFns.removeEvent)(ownerDocument, eventsFor.mouse.stop, this.handleDragStop);
10073 + (0, _domFns.removeEvent)(ownerDocument, eventsFor.touch.stop, this.handleDragStop);
10074 + (0, _domFns.removeEvent)(thisNode, eventsFor.touch.start, this.onTouchStart, {
10075 + passive: false
10076 + });
10077 + if (this.props.enableUserSelectHack) (0, _domFns.removeUserSelectStyles)(ownerDocument);
10078 + }
10079 + } // React Strict Mode compatibility: if `nodeRef` is passed, we will use it instead of trying to find
10080 + // the underlying DOM node ourselves. See the README for more information.
10081 +
10082 + }, {
10083 + key: "findDOMNode",
10084 + value: function findDOMNode()
10085 + /*: ?HTMLElement*/
10086 + {
10087 + var _this$props, _this$props2, _this$props2$nodeRef;
10088 +
10089 + 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);
10090 + }
10091 + }, {
10092 + key: "render",
10093 + value: function render()
10094 + /*: React.Element<any>*/
10095 + {
10096 + // Reuse the child provided
10097 + // This makes it flexible to use whatever element is wanted (div, ul, etc)
10098 + return /*#__PURE__*/React.cloneElement(React.Children.only(this.props.children), {
10099 + // Note: mouseMove handler is attached to document so it will still function
10100 + // when the user drags quickly and leaves the bounds of the element.
10101 + onMouseDown: this.onMouseDown,
10102 + onMouseUp: this.onMouseUp,
10103 + // onTouchStart is added on `componentDidMount` so they can be added with
10104 + // {passive: false}, which allows it to cancel. See
10105 + // https://developers.google.com/web/updates/2017/01/scrolling-intervention
10106 + onTouchEnd: this.onTouchEnd
10107 + });
10108 + }
10109 + }]);
10110 +
10111 + return DraggableCore;
10112 +}(React.Component);
10113 +
10114 +exports["default"] = DraggableCore;
10115 +
10116 +_defineProperty(DraggableCore, "displayName", 'DraggableCore');
10117 +
10118 +_defineProperty(DraggableCore, "propTypes", {
10119 + /**
10120 + * `allowAnyClick` allows dragging using any mouse button.
10121 + * By default, we only accept the left button.
10122 + *
10123 + * Defaults to `false`.
10124 + */
10125 + allowAnyClick: _propTypes.default.bool,
10126 +
10127 + /**
10128 + * `disabled`, if true, stops the <Draggable> from dragging. All handlers,
10129 + * with the exception of `onMouseDown`, will not fire.
10130 + */
10131 + disabled: _propTypes.default.bool,
10132 +
10133 + /**
10134 + * By default, we add 'user-select:none' attributes to the document body
10135 + * to prevent ugly text selection during drag. If this is causing problems
10136 + * for your app, set this to `false`.
10137 + */
10138 + enableUserSelectHack: _propTypes.default.bool,
10139 +
10140 + /**
10141 + * `offsetParent`, if set, uses the passed DOM node to compute drag offsets
10142 + * instead of using the parent node.
10143 + */
10144 + offsetParent: function offsetParent(props
10145 + /*: DraggableCoreProps*/
10146 + , propName
10147 + /*: $Keys<DraggableCoreProps>*/
10148 + ) {
10149 + if (props[propName] && props[propName].nodeType !== 1) {
10150 + throw new Error('Draggable\'s offsetParent must be a DOM Node.');
10151 + }
10152 + },
10153 +
10154 + /**
10155 + * `grid` specifies the x and y that dragging should snap to.
10156 + */
10157 + grid: _propTypes.default.arrayOf(_propTypes.default.number),
10158 +
10159 + /**
10160 + * `handle` specifies a selector to be used as the handle that initiates drag.
10161 + *
10162 + * Example:
10163 + *
10164 + * ```jsx
10165 + * let App = React.createClass({
10166 + * render: function () {
10167 + * return (
10168 + * <Draggable handle=".handle">
10169 + * <div>
10170 + * <div className="handle">Click me to drag</div>
10171 + * <div>This is some other content</div>
10172 + * </div>
10173 + * </Draggable>
10174 + * );
10175 + * }
10176 + * });
10177 + * ```
10178 + */
10179 + handle: _propTypes.default.string,
10180 +
10181 + /**
10182 + * `cancel` specifies a selector to be used to prevent drag initialization.
10183 + *
10184 + * Example:
10185 + *
10186 + * ```jsx
10187 + * let App = React.createClass({
10188 + * render: function () {
10189 + * return(
10190 + * <Draggable cancel=".cancel">
10191 + * <div>
10192 + * <div className="cancel">You can't drag from here</div>
10193 + * <div>Dragging here works fine</div>
10194 + * </div>
10195 + * </Draggable>
10196 + * );
10197 + * }
10198 + * });
10199 + * ```
10200 + */
10201 + cancel: _propTypes.default.string,
10202 +
10203 + /* If running in React Strict mode, ReactDOM.findDOMNode() is deprecated.
10204 + * Unfortunately, in order for <Draggable> to work properly, we need raw access
10205 + * to the underlying DOM node. If you want to avoid the warning, pass a `nodeRef`
10206 + * as in this example:
10207 + *
10208 + * function MyComponent() {
10209 + * const nodeRef = React.useRef(null);
10210 + * return (
10211 + * <Draggable nodeRef={nodeRef}>
10212 + * <div ref={nodeRef}>Example Target</div>
10213 + * </Draggable>
10214 + * );
10215 + * }
10216 + *
10217 + * This can be used for arbitrarily nested components, so long as the ref ends up
10218 + * pointing to the actual child DOM node and not a custom component.
10219 + */
10220 + nodeRef: _propTypes.default.object,
10221 +
10222 + /**
10223 + * Called when dragging starts.
10224 + * If this function returns the boolean false, dragging will be canceled.
10225 + */
10226 + onStart: _propTypes.default.func,
10227 +
10228 + /**
10229 + * Called while dragging.
10230 + * If this function returns the boolean false, dragging will be canceled.
10231 + */
10232 + onDrag: _propTypes.default.func,
10233 +
10234 + /**
10235 + * Called when dragging stops.
10236 + * If this function returns the boolean false, the drag will remain active.
10237 + */
10238 + onStop: _propTypes.default.func,
10239 +
10240 + /**
10241 + * A workaround option which can be passed if onMouseDown needs to be accessed,
10242 + * since it'll always be blocked (as there is internal use of onMouseDown)
10243 + */
10244 + onMouseDown: _propTypes.default.func,
10245 +
10246 + /**
10247 + * `scale`, if set, applies scaling while dragging an element
10248 + */
10249 + scale: _propTypes.default.number,
10250 +
10251 + /**
10252 + * These properties should be defined on the child, not here.
10253 + */
10254 + className: _shims.dontSetMe,
10255 + style: _shims.dontSetMe,
10256 + transform: _shims.dontSetMe
10257 +});
10258 +
10259 +_defineProperty(DraggableCore, "defaultProps", {
10260 + allowAnyClick: false,
10261 + // by default only accept left click
10262 + disabled: false,
10263 + enableUserSelectHack: true,
10264 + onStart: function onStart() {},
10265 + onDrag: function onDrag() {},
10266 + onStop: function onStop() {},
10267 + onMouseDown: function onMouseDown() {},
10268 + scale: 1
10269 +});
10270 +
10271 +/***/ }),
10272 +
10273 +/***/ "../node_modules/react-draggable/build/cjs/cjs.js":
10274 +/*!********************************************************!*\
10275 + !*** ../node_modules/react-draggable/build/cjs/cjs.js ***!
10276 + \********************************************************/
10277 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
10278 +
10279 +"use strict";
10280 +
10281 +
10282 +var _require = __webpack_require__(/*! ./Draggable */ "../node_modules/react-draggable/build/cjs/Draggable.js"),
10283 + Draggable = _require.default,
10284 + 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'.
10285 +// See https://github.com/mzabriskie/react-draggable/pull/254
10286 +// and https://github.com/mzabriskie/react-draggable/issues/266
10287 +
10288 +
10289 +module.exports = Draggable;
10290 +module.exports["default"] = Draggable;
10291 +module.exports.DraggableCore = DraggableCore;
10292 +
10293 +/***/ }),
10294 +
10295 +/***/ "../node_modules/react-draggable/build/cjs/utils/domFns.js":
10296 +/*!*****************************************************************!*\
10297 + !*** ../node_modules/react-draggable/build/cjs/utils/domFns.js ***!
10298 + \*****************************************************************/
10299 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10300 +
10301 +"use strict";
10302 +
10303 +
10304 +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); }
10305 +
10306 +Object.defineProperty(exports, "__esModule", ({
10307 + value: true
10308 +}));
10309 +exports.addClassName = addClassName;
10310 +exports.addEvent = addEvent;
10311 +exports.addUserSelectStyles = addUserSelectStyles;
10312 +exports.createCSSTransform = createCSSTransform;
10313 +exports.createSVGTransform = createSVGTransform;
10314 +exports.getTouch = getTouch;
10315 +exports.getTouchIdentifier = getTouchIdentifier;
10316 +exports.getTranslation = getTranslation;
10317 +exports.innerHeight = innerHeight;
10318 +exports.innerWidth = innerWidth;
10319 +exports.matchesSelector = matchesSelector;
10320 +exports.matchesSelectorAndParentsTo = matchesSelectorAndParentsTo;
10321 +exports.offsetXYFromParent = offsetXYFromParent;
10322 +exports.outerHeight = outerHeight;
10323 +exports.outerWidth = outerWidth;
10324 +exports.removeClassName = removeClassName;
10325 +exports.removeEvent = removeEvent;
10326 +exports.removeUserSelectStyles = removeUserSelectStyles;
10327 +
10328 +var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10329 +
10330 +var _getPrefix = _interopRequireWildcard(__webpack_require__(/*! ./getPrefix */ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js"));
10331 +
10332 +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); }
10333 +
10334 +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; }
10335 +
10336 +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; }
10337 +
10338 +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; }
10339 +
10340 +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; }
10341 +
10342 +var matchesSelectorFunc = '';
10343 +
10344 +function matchesSelector(el
10345 +/*: Node*/
10346 +, selector
10347 +/*: string*/
10348 +)
10349 +/*: boolean*/
10350 +{
10351 + if (!matchesSelectorFunc) {
10352 + matchesSelectorFunc = (0, _shims.findInArray)(['matches', 'webkitMatchesSelector', 'mozMatchesSelector', 'msMatchesSelector', 'oMatchesSelector'], function (method) {
10353 + // $FlowIgnore: Doesn't think elements are indexable
10354 + return (0, _shims.isFunction)(el[method]);
10355 + });
10356 + } // Might not be found entirely (not an Element?) - in that case, bail
10357 + // $FlowIgnore: Doesn't think elements are indexable
10358 +
10359 +
10360 + if (!(0, _shims.isFunction)(el[matchesSelectorFunc])) return false; // $FlowIgnore: Doesn't think elements are indexable
10361 +
10362 + return el[matchesSelectorFunc](selector);
10363 +} // Works up the tree to the draggable itself attempting to match selector.
10364 +
10365 +
10366 +function matchesSelectorAndParentsTo(el
10367 +/*: Node*/
10368 +, selector
10369 +/*: string*/
10370 +, baseNode
10371 +/*: Node*/
10372 +)
10373 +/*: boolean*/
10374 +{
10375 + var node = el;
10376 +
10377 + do {
10378 + if (matchesSelector(node, selector)) return true;
10379 + if (node === baseNode) return false;
10380 + node = node.parentNode;
10381 + } while (node);
10382 +
10383 + return false;
10384 +}
10385 +
10386 +function addEvent(el
10387 +/*: ?Node*/
10388 +, event
10389 +/*: string*/
10390 +, handler
10391 +/*: Function*/
10392 +, inputOptions
10393 +/*: Object*/
10394 +)
10395 +/*: void*/
10396 +{
10397 + if (!el) return;
10398 +
10399 + var options = _objectSpread({
10400 + capture: true
10401 + }, inputOptions); // $FlowIgnore[method-unbinding]
10402 +
10403 +
10404 + if (el.addEventListener) {
10405 + el.addEventListener(event, handler, options);
10406 + } else if (el.attachEvent) {
10407 + el.attachEvent('on' + event, handler);
10408 + } else {
10409 + // $FlowIgnore: Doesn't think elements are indexable
10410 + el['on' + event] = handler;
10411 + }
10412 +}
10413 +
10414 +function removeEvent(el
10415 +/*: ?Node*/
10416 +, event
10417 +/*: string*/
10418 +, handler
10419 +/*: Function*/
10420 +, inputOptions
10421 +/*: Object*/
10422 +)
10423 +/*: void*/
10424 +{
10425 + if (!el) return;
10426 +
10427 + var options = _objectSpread({
10428 + capture: true
10429 + }, inputOptions); // $FlowIgnore[method-unbinding]
10430 +
10431 +
10432 + if (el.removeEventListener) {
10433 + el.removeEventListener(event, handler, options);
10434 + } else if (el.detachEvent) {
10435 + el.detachEvent('on' + event, handler);
10436 + } else {
10437 + // $FlowIgnore: Doesn't think elements are indexable
10438 + el['on' + event] = null;
10439 + }
10440 +}
10441 +
10442 +function outerHeight(node
10443 +/*: HTMLElement*/
10444 +)
10445 +/*: number*/
10446 +{
10447 + // This is deliberately excluding margin for our calculations, since we are using
10448 + // offsetTop which is including margin. See getBoundPosition
10449 + var height = node.clientHeight;
10450 + var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10451 + height += (0, _shims.int)(computedStyle.borderTopWidth);
10452 + height += (0, _shims.int)(computedStyle.borderBottomWidth);
10453 + return height;
10454 +}
10455 +
10456 +function outerWidth(node
10457 +/*: HTMLElement*/
10458 +)
10459 +/*: number*/
10460 +{
10461 + // This is deliberately excluding margin for our calculations, since we are using
10462 + // offsetLeft which is including margin. See getBoundPosition
10463 + var width = node.clientWidth;
10464 + var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10465 + width += (0, _shims.int)(computedStyle.borderLeftWidth);
10466 + width += (0, _shims.int)(computedStyle.borderRightWidth);
10467 + return width;
10468 +}
10469 +
10470 +function innerHeight(node
10471 +/*: HTMLElement*/
10472 +)
10473 +/*: number*/
10474 +{
10475 + var height = node.clientHeight;
10476 + var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10477 + height -= (0, _shims.int)(computedStyle.paddingTop);
10478 + height -= (0, _shims.int)(computedStyle.paddingBottom);
10479 + return height;
10480 +}
10481 +
10482 +function innerWidth(node
10483 +/*: HTMLElement*/
10484 +)
10485 +/*: number*/
10486 +{
10487 + var width = node.clientWidth;
10488 + var computedStyle = node.ownerDocument.defaultView.getComputedStyle(node);
10489 + width -= (0, _shims.int)(computedStyle.paddingLeft);
10490 + width -= (0, _shims.int)(computedStyle.paddingRight);
10491 + return width;
10492 +}
10493 +/*:: interface EventWithOffset {
10494 + clientX: number, clientY: number
10495 +}*/
10496 +
10497 +
10498 +// Get from offsetParent
10499 +function offsetXYFromParent(evt
10500 +/*: EventWithOffset*/
10501 +, offsetParent
10502 +/*: HTMLElement*/
10503 +, scale
10504 +/*: number*/
10505 +)
10506 +/*: ControlPosition*/
10507 +{
10508 + var isBody = offsetParent === offsetParent.ownerDocument.body;
10509 + var offsetParentRect = isBody ? {
10510 + left: 0,
10511 + top: 0
10512 + } : offsetParent.getBoundingClientRect();
10513 + var x = (evt.clientX + offsetParent.scrollLeft - offsetParentRect.left) / scale;
10514 + var y = (evt.clientY + offsetParent.scrollTop - offsetParentRect.top) / scale;
10515 + return {
10516 + x: x,
10517 + y: y
10518 + };
10519 +}
10520 +
10521 +function createCSSTransform(controlPos
10522 +/*: ControlPosition*/
10523 +, positionOffset
10524 +/*: PositionOffsetControlPosition*/
10525 +)
10526 +/*: Object*/
10527 +{
10528 + var translation = getTranslation(controlPos, positionOffset, 'px');
10529 + return _defineProperty({}, (0, _getPrefix.browserPrefixToKey)('transform', _getPrefix.default), translation);
10530 +}
10531 +
10532 +function createSVGTransform(controlPos
10533 +/*: ControlPosition*/
10534 +, positionOffset
10535 +/*: PositionOffsetControlPosition*/
10536 +)
10537 +/*: string*/
10538 +{
10539 + var translation = getTranslation(controlPos, positionOffset, '');
10540 + return translation;
10541 +}
10542 +
10543 +function getTranslation(_ref2, positionOffset
10544 +/*: PositionOffsetControlPosition*/
10545 +, unitSuffix
10546 +/*: string*/
10547 +)
10548 +/*: string*/
10549 +{
10550 + var x = _ref2.x,
10551 + y = _ref2.y;
10552 + var translation = "translate(".concat(x).concat(unitSuffix, ",").concat(y).concat(unitSuffix, ")");
10553 +
10554 + if (positionOffset) {
10555 + var defaultX = "".concat(typeof positionOffset.x === 'string' ? positionOffset.x : positionOffset.x + unitSuffix);
10556 + var defaultY = "".concat(typeof positionOffset.y === 'string' ? positionOffset.y : positionOffset.y + unitSuffix);
10557 + translation = "translate(".concat(defaultX, ", ").concat(defaultY, ")") + translation;
10558 + }
10559 +
10560 + return translation;
10561 +}
10562 +
10563 +function getTouch(e
10564 +/*: MouseTouchEvent*/
10565 +, identifier
10566 +/*: number*/
10567 +)
10568 +/*: ?{clientX: number, clientY: number}*/
10569 +{
10570 + return e.targetTouches && (0, _shims.findInArray)(e.targetTouches, function (t) {
10571 + return identifier === t.identifier;
10572 + }) || e.changedTouches && (0, _shims.findInArray)(e.changedTouches, function (t) {
10573 + return identifier === t.identifier;
10574 + });
10575 +}
10576 +
10577 +function getTouchIdentifier(e
10578 +/*: MouseTouchEvent*/
10579 +)
10580 +/*: ?number*/
10581 +{
10582 + if (e.targetTouches && e.targetTouches[0]) return e.targetTouches[0].identifier;
10583 + if (e.changedTouches && e.changedTouches[0]) return e.changedTouches[0].identifier;
10584 +} // User-select Hacks:
10585 +//
10586 +// Useful for preventing blue highlights all over everything when dragging.
10587 +// Note we're passing `document` b/c we could be iframed
10588 +
10589 +
10590 +function addUserSelectStyles(doc
10591 +/*: ?Document*/
10592 +) {
10593 + if (!doc) return;
10594 + var styleEl = doc.getElementById('react-draggable-style-el');
10595 +
10596 + if (!styleEl) {
10597 + styleEl = doc.createElement('style');
10598 + styleEl.type = 'text/css';
10599 + styleEl.id = 'react-draggable-style-el';
10600 + styleEl.innerHTML = '.react-draggable-transparent-selection *::-moz-selection {all: inherit;}\n';
10601 + styleEl.innerHTML += '.react-draggable-transparent-selection *::selection {all: inherit;}\n';
10602 + doc.getElementsByTagName('head')[0].appendChild(styleEl);
10603 + }
10604 +
10605 + if (doc.body) addClassName(doc.body, 'react-draggable-transparent-selection');
10606 +}
10607 +
10608 +function removeUserSelectStyles(doc
10609 +/*: ?Document*/
10610 +) {
10611 + if (!doc) return;
10612 +
10613 + try {
10614 + if (doc.body) removeClassName(doc.body, 'react-draggable-transparent-selection'); // $FlowIgnore: IE
10615 +
10616 + if (doc.selection) {
10617 + // $FlowIgnore: IE
10618 + doc.selection.empty();
10619 + } else {
10620 + // Remove selection caused by scroll, unless it's a focused input
10621 + // (we use doc.defaultView in case we're in an iframe)
10622 + var selection = (doc.defaultView || window).getSelection();
10623 +
10624 + if (selection && selection.type !== 'Caret') {
10625 + selection.removeAllRanges();
10626 + }
10627 + }
10628 + } catch (e) {// probably IE
10629 + }
10630 +}
10631 +
10632 +function addClassName(el
10633 +/*: HTMLElement*/
10634 +, className
10635 +/*: string*/
10636 +) {
10637 + if (el.classList) {
10638 + el.classList.add(className);
10639 + } else {
10640 + if (!el.className.match(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)")))) {
10641 + el.className += " ".concat(className);
10642 + }
10643 + }
10644 +}
10645 +
10646 +function removeClassName(el
10647 +/*: HTMLElement*/
10648 +, className
10649 +/*: string*/
10650 +) {
10651 + if (el.classList) {
10652 + el.classList.remove(className);
10653 + } else {
10654 + el.className = el.className.replace(new RegExp("(?:^|\\s)".concat(className, "(?!\\S)"), 'g'), '');
10655 + }
10656 +}
10657 +
10658 +/***/ }),
10659 +
10660 +/***/ "../node_modules/react-draggable/build/cjs/utils/getPrefix.js":
10661 +/*!********************************************************************!*\
10662 + !*** ../node_modules/react-draggable/build/cjs/utils/getPrefix.js ***!
10663 + \********************************************************************/
10664 +/***/ ((__unused_webpack_module, exports) => {
10665 +
10666 +"use strict";
10667 +
10668 +
10669 +Object.defineProperty(exports, "__esModule", ({
10670 + value: true
10671 +}));
10672 +exports.browserPrefixToKey = browserPrefixToKey;
10673 +exports.browserPrefixToStyle = browserPrefixToStyle;
10674 +exports["default"] = void 0;
10675 +exports.getPrefix = getPrefix;
10676 +var prefixes = ['Moz', 'Webkit', 'O', 'ms'];
10677 +
10678 +function getPrefix()
10679 +/*: string*/
10680 +{
10681 + var _window$document, _window$document$docu;
10682 +
10683 + var prop
10684 + /*: string*/
10685 + = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transform';
10686 + // Ensure we're running in an environment where there is actually a global
10687 + // `window` obj
10688 + if (typeof window === 'undefined') return ''; // If we're in a pseudo-browser server-side environment, this access
10689 + // path may not exist, so bail out if it doesn't.
10690 +
10691 + 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;
10692 + if (!style) return '';
10693 + if (prop in style) return '';
10694 +
10695 + for (var i = 0; i < prefixes.length; i++) {
10696 + if (browserPrefixToKey(prop, prefixes[i]) in style) return prefixes[i];
10697 + }
10698 +
10699 + return '';
10700 +}
10701 +
10702 +function browserPrefixToKey(prop
10703 +/*: string*/
10704 +, prefix
10705 +/*: string*/
10706 +)
10707 +/*: string*/
10708 +{
10709 + return prefix ? "".concat(prefix).concat(kebabToTitleCase(prop)) : prop;
10710 +}
10711 +
10712 +function browserPrefixToStyle(prop
10713 +/*: string*/
10714 +, prefix
10715 +/*: string*/
10716 +)
10717 +/*: string*/
10718 +{
10719 + return prefix ? "-".concat(prefix.toLowerCase(), "-").concat(prop) : prop;
10720 +}
10721 +
10722 +function kebabToTitleCase(str
10723 +/*: string*/
10724 +)
10725 +/*: string*/
10726 +{
10727 + var out = '';
10728 + var shouldCapitalize = true;
10729 +
10730 + for (var i = 0; i < str.length; i++) {
10731 + if (shouldCapitalize) {
10732 + out += str[i].toUpperCase();
10733 + shouldCapitalize = false;
10734 + } else if (str[i] === '-') {
10735 + shouldCapitalize = true;
10736 + } else {
10737 + out += str[i];
10738 + }
10739 + }
10740 +
10741 + return out;
10742 +} // Default export is the prefix itself, like 'Moz', 'Webkit', etc
10743 +// Note that you may have to re-test for certain things; for instance, Chrome 50
10744 +// can handle unprefixed `transform`, but not unprefixed `user-select`
10745 +
10746 +
10747 +var _default = (getPrefix()
10748 +/*: string*/
10749 +);
10750 +
10751 +exports["default"] = _default;
10752 +
10753 +/***/ }),
10754 +
10755 +/***/ "../node_modules/react-draggable/build/cjs/utils/log.js":
10756 +/*!**************************************************************!*\
10757 + !*** ../node_modules/react-draggable/build/cjs/utils/log.js ***!
10758 + \**************************************************************/
10759 +/***/ ((__unused_webpack_module, exports) => {
10760 +
10761 +"use strict";
10762 +
10763 +
10764 +Object.defineProperty(exports, "__esModule", ({
10765 + value: true
10766 +}));
10767 +exports["default"] = log;
10768 +
10769 +/*eslint no-console:0*/
10770 +function log() {
10771 + var _console;
10772 +
10773 + if (false) {}
10774 +}
10775 +
10776 +/***/ }),
10777 +
10778 +/***/ "../node_modules/react-draggable/build/cjs/utils/positionFns.js":
10779 +/*!**********************************************************************!*\
10780 + !*** ../node_modules/react-draggable/build/cjs/utils/positionFns.js ***!
10781 + \**********************************************************************/
10782 +/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10783 +
10784 +"use strict";
10785 +
10786 +
10787 +Object.defineProperty(exports, "__esModule", ({
10788 + value: true
10789 +}));
10790 +exports.canDragX = canDragX;
10791 +exports.canDragY = canDragY;
10792 +exports.createCoreData = createCoreData;
10793 +exports.createDraggableData = createDraggableData;
10794 +exports.getBoundPosition = getBoundPosition;
10795 +exports.getControlPosition = getControlPosition;
10796 +exports.snapToGrid = snapToGrid;
10797 +
10798 +var _shims = __webpack_require__(/*! ./shims */ "../node_modules/react-draggable/build/cjs/utils/shims.js");
10799 +
10800 +var _domFns = __webpack_require__(/*! ./domFns */ "../node_modules/react-draggable/build/cjs/utils/domFns.js");
10801 +
10802 +function getBoundPosition(draggable
10803 +/*: Draggable*/
10804 +, x
10805 +/*: number*/
10806 +, y
10807 +/*: number*/
10808 +)
10809 +/*: [number, number]*/
10810 +{
10811 + // If no bounds, short-circuit and move on
10812 + if (!draggable.props.bounds) return [x, y]; // Clone new bounds
10813 +
10814 + var bounds = draggable.props.bounds;
10815 + bounds = typeof bounds === 'string' ? bounds : cloneBounds(bounds);
10816 + var node = findDOMNode(draggable);
10817 +
10818 + if (typeof bounds === 'string') {
10819 + var ownerDocument = node.ownerDocument;
10820 + var ownerWindow = ownerDocument.defaultView;
10821 + var boundNode;
10822 +
10823 + if (bounds === 'parent') {
10824 + boundNode = node.parentNode;
10825 + } else {
10826 + boundNode = ownerDocument.querySelector(bounds);
10827 + }
10828 +
10829 + if (!(boundNode instanceof ownerWindow.HTMLElement)) {
10830 + throw new Error('Bounds selector "' + bounds + '" could not find an element.');
10831 + }
10832 +
10833 + var boundNodeEl
10834 + /*: HTMLElement*/
10835 + = boundNode; // for Flow, can't seem to refine correctly
10836 +
10837 + var nodeStyle = ownerWindow.getComputedStyle(node);
10838 + var boundNodeStyle = ownerWindow.getComputedStyle(boundNodeEl); // Compute bounds. This is a pain with padding and offsets but this gets it exactly right.
10839 +
10840 + bounds = {
10841 + left: -node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingLeft) + (0, _shims.int)(nodeStyle.marginLeft),
10842 + top: -node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingTop) + (0, _shims.int)(nodeStyle.marginTop),
10843 + right: (0, _domFns.innerWidth)(boundNodeEl) - (0, _domFns.outerWidth)(node) - node.offsetLeft + (0, _shims.int)(boundNodeStyle.paddingRight) - (0, _shims.int)(nodeStyle.marginRight),
10844 + bottom: (0, _domFns.innerHeight)(boundNodeEl) - (0, _domFns.outerHeight)(node) - node.offsetTop + (0, _shims.int)(boundNodeStyle.paddingBottom) - (0, _shims.int)(nodeStyle.marginBottom)
10845 + };
10846 + } // Keep x and y below right and bottom limits...
10847 +
10848 +
10849 + if ((0, _shims.isNum)(bounds.right)) x = Math.min(x, bounds.right);
10850 + if ((0, _shims.isNum)(bounds.bottom)) y = Math.min(y, bounds.bottom); // But above left and top limits.
10851 +
10852 + if ((0, _shims.isNum)(bounds.left)) x = Math.max(x, bounds.left);
10853 + if ((0, _shims.isNum)(bounds.top)) y = Math.max(y, bounds.top);
10854 + return [x, y];
10855 +}
10856 +
10857 +function snapToGrid(grid
10858 +/*: [number, number]*/
10859 +, pendingX
10860 +/*: number*/
10861 +, pendingY
10862 +/*: number*/
10863 +)
10864 +/*: [number, number]*/
10865 +{
10866 + var x = Math.round(pendingX / grid[0]) * grid[0];
10867 + var y = Math.round(pendingY / grid[1]) * grid[1];
10868 + return [x, y];
10869 +}
10870 +
10871 +function canDragX(draggable
10872 +/*: Draggable*/
10873 +)
10874 +/*: boolean*/
10875 +{
10876 + return draggable.props.axis === 'both' || draggable.props.axis === 'x';
10877 +}
10878 +
10879 +function canDragY(draggable
10880 +/*: Draggable*/
10881 +)
10882 +/*: boolean*/
10883 +{
10884 + return draggable.props.axis === 'both' || draggable.props.axis === 'y';
10885 +} // Get {x, y} positions from event.
10886 +
10887 +
10888 +function getControlPosition(e
10889 +/*: MouseTouchEvent*/
10890 +, touchIdentifier
10891 +/*: ?number*/
10892 +, draggableCore
10893 +/*: DraggableCore*/
10894 +)
10895 +/*: ?ControlPosition*/
10896 +{
10897 + var touchObj = typeof touchIdentifier === 'number' ? (0, _domFns.getTouch)(e, touchIdentifier) : null;
10898 + if (typeof touchIdentifier === 'number' && !touchObj) return null; // not the right touch
10899 +
10900 + var node = findDOMNode(draggableCore); // User can provide an offsetParent if desired.
10901 +
10902 + var offsetParent = draggableCore.props.offsetParent || node.offsetParent || node.ownerDocument.body;
10903 + return (0, _domFns.offsetXYFromParent)(touchObj || e, offsetParent, draggableCore.props.scale);
10904 +} // Create an data object exposed by <DraggableCore>'s events
10905 +
10906 +
10907 +function createCoreData(draggable
10908 +/*: DraggableCore*/
10909 +, x
10910 +/*: number*/
10911 +, y
10912 +/*: number*/
10913 +)
10914 +/*: DraggableData*/
10915 +{
10916 + var state = draggable.state;
10917 + var isStart = !(0, _shims.isNum)(state.lastX);
10918 + var node = findDOMNode(draggable);
10919 +
10920 + if (isStart) {
10921 + // If this is our first move, use the x and y as last coords.
10922 + return {
10923 + node: node,
10924 + deltaX: 0,
10925 + deltaY: 0,
10926 + lastX: x,
10927 + lastY: y,
10928 + x: x,
10929 + y: y
10930 + };
10931 + } else {
10932 + // Otherwise calculate proper values.
10933 + return {
10934 + node: node,
10935 + deltaX: x - state.lastX,
10936 + deltaY: y - state.lastY,
10937 + lastX: state.lastX,
10938 + lastY: state.lastY,
10939 + x: x,
10940 + y: y
10941 + };
10942 + }
10943 +} // Create an data exposed by <Draggable>'s events
10944 +
10945 +
10946 +function createDraggableData(draggable
10947 +/*: Draggable*/
10948 +, coreData
10949 +/*: DraggableData*/
10950 +)
10951 +/*: DraggableData*/
10952 +{
10953 + var scale = draggable.props.scale;
10954 + return {
10955 + node: coreData.node,
10956 + x: draggable.state.x + coreData.deltaX / scale,
10957 + y: draggable.state.y + coreData.deltaY / scale,
10958 + deltaX: coreData.deltaX / scale,
10959 + deltaY: coreData.deltaY / scale,
10960 + lastX: draggable.state.x,
10961 + lastY: draggable.state.y
10962 + };
10963 +} // A lot faster than stringify/parse
10964 +
10965 +
10966 +function cloneBounds(bounds
10967 +/*: Bounds*/
10968 +)
10969 +/*: Bounds*/
10970 +{
10971 + return {
10972 + left: bounds.left,
10973 + top: bounds.top,
10974 + right: bounds.right,
10975 + bottom: bounds.bottom
10976 + };
10977 +}
10978 +
10979 +function findDOMNode(draggable
10980 +/*: Draggable | DraggableCore*/
10981 +)
10982 +/*: HTMLElement*/
10983 +{
10984 + var node = draggable.findDOMNode();
10985 +
10986 + if (!node) {
10987 + throw new Error('<DraggableCore>: Unmounted during event!');
10988 + } // $FlowIgnore we can't assert on HTMLElement due to tests... FIXME
10989 +
10990 +
10991 + return node;
10992 +}
10993 +
10994 +/***/ }),
10995 +
10996 +/***/ "../node_modules/react-draggable/build/cjs/utils/shims.js":
10997 +/*!****************************************************************!*\
10998 + !*** ../node_modules/react-draggable/build/cjs/utils/shims.js ***!
10999 + \****************************************************************/
11000 +/***/ ((__unused_webpack_module, exports) => {
11001 +
11002 +"use strict";
11003 +
11004 +
11005 +Object.defineProperty(exports, "__esModule", ({
11006 + value: true
11007 +}));
11008 +exports.dontSetMe = dontSetMe;
11009 +exports.findInArray = findInArray;
11010 +exports.int = int;
11011 +exports.isFunction = isFunction;
11012 +exports.isNum = isNum;
11013 +
11014 +// @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
11015 +function findInArray(array
11016 +/*: Array<any> | TouchList*/
11017 +, callback
11018 +/*: Function*/
11019 +)
11020 +/*: any*/
11021 +{
11022 + for (var i = 0, length = array.length; i < length; i++) {
11023 + if (callback.apply(callback, [array[i], i, array])) return array[i];
11024 + }
11025 +}
11026 +
11027 +function isFunction(func
11028 +/*: any*/
11029 +)
11030 +/*: boolean %checks*/
11031 +{
11032 + // $FlowIgnore[method-unbinding]
11033 + return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
11034 +}
11035 +
11036 +function isNum(num
11037 +/*: any*/
11038 +)
11039 +/*: boolean %checks*/
11040 +{
11041 + return typeof num === 'number' && !isNaN(num);
11042 +}
11043 +
11044 +function int(a
11045 +/*: string*/
11046 +)
11047 +/*: number*/
11048 +{
11049 + return parseInt(a, 10);
11050 +}
11051 +
11052 +function dontSetMe(props
11053 +/*: Object*/
11054 +, propName
11055 +/*: string*/
11056 +, componentName
11057 +/*: string*/
11058 +)
11059 +/*: ?Error*/
11060 +{
11061 + if (props[propName]) {
11062 + return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
11063 + }
11064 +}
11065 +
11066 +/***/ }),
11067 +
11068 +/***/ "../node_modules/react-is/cjs/react-is.development.js":
11069 +/*!************************************************************!*\
11070 + !*** ../node_modules/react-is/cjs/react-is.development.js ***!
11071 + \************************************************************/
11072 +/***/ ((__unused_webpack_module, exports) => {
11073 +
11074 +"use strict";
11075 +/**
11076 + * @license React
11077 + * react-is.development.js
11078 + *
11079 + * Copyright (c) Facebook, Inc. and its affiliates.
11080 + *
11081 + * This source code is licensed under the MIT license found in the
11082 + * LICENSE file in the root directory of this source tree.
11083 + */
11084 +
11085 +
11086 +
11087 +if (true) {
11088 + (function() {
11089 +'use strict';
11090 +
11091 +// ATTENTION
11092 +// When adding new symbols to this file,
11093 +// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
11094 +// The Symbol used to tag the ReactElement-like types.
11095 +var REACT_ELEMENT_TYPE = Symbol.for('react.element');
11096 +var REACT_PORTAL_TYPE = Symbol.for('react.portal');
11097 +var REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');
11098 +var REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');
11099 +var REACT_PROFILER_TYPE = Symbol.for('react.profiler');
11100 +var REACT_PROVIDER_TYPE = Symbol.for('react.provider');
11101 +var REACT_CONTEXT_TYPE = Symbol.for('react.context');
11102 +var REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_context');
11103 +var REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');
11104 +var REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');
11105 +var REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');
11106 +var REACT_MEMO_TYPE = Symbol.for('react.memo');
11107 +var REACT_LAZY_TYPE = Symbol.for('react.lazy');
11108 +var REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');
11109 +
11110 +// -----------------------------------------------------------------------------
11111 +
11112 +var enableScopeAPI = false; // Experimental Create Event Handle API.
11113 +var enableCacheElement = false;
11114 +var enableTransitionTracing = false; // No known bugs, but needs performance testing
11115 +
11116 +var enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber
11117 +// stuff. Intended to enable React core members to more easily debug scheduling
11118 +// issues in DEV builds.
11119 +
11120 +var enableDebugTracing = false; // Track which Fiber(s) schedule render work.
11121 +
11122 +var REACT_MODULE_REFERENCE;
11123 +
11124 +{
11125 + REACT_MODULE_REFERENCE = Symbol.for('react.module.reference');
11126 +}
11127 +
11128 +function isValidElementType(type) {
11129 + if (typeof type === 'string' || typeof type === 'function') {
11130 + return true;
11131 + } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).
11132 +
11133 +
11134 + 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 ) {
11135 + return true;
11136 + }
11137 +
11138 + if (typeof type === 'object' && type !== null) {
11139 + 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
11140 + // types supported by any Flight configuration anywhere since
11141 + // we don't know which Flight build this will end up being used
11142 + // with.
11143 + type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== undefined) {
11144 + return true;
11145 + }
11146 + }
11147 +
11148 + return false;
11149 +}
11150 +
11151 +function typeOf(object) {
11152 + if (typeof object === 'object' && object !== null) {
11153 + var $$typeof = object.$$typeof;
11154 +
11155 + switch ($$typeof) {
11156 + case REACT_ELEMENT_TYPE:
11157 + var type = object.type;
11158 +
11159 + switch (type) {
11160 + case REACT_FRAGMENT_TYPE:
11161 + case REACT_PROFILER_TYPE:
11162 + case REACT_STRICT_MODE_TYPE:
11163 + case REACT_SUSPENSE_TYPE:
11164 + case REACT_SUSPENSE_LIST_TYPE:
11165 + return type;
11166 +
11167 + default:
11168 + var $$typeofType = type && type.$$typeof;
11169 +
11170 + switch ($$typeofType) {
11171 + case REACT_SERVER_CONTEXT_TYPE:
11172 + case REACT_CONTEXT_TYPE:
11173 + case REACT_FORWARD_REF_TYPE:
11174 + case REACT_LAZY_TYPE:
11175 + case REACT_MEMO_TYPE:
11176 + case REACT_PROVIDER_TYPE:
11177 + return $$typeofType;
11178 +
11179 + default:
11180 + return $$typeof;
11181 + }
11182 +
11183 + }
11184 +
11185 + case REACT_PORTAL_TYPE:
11186 + return $$typeof;
11187 + }
11188 + }
11189 +
11190 + return undefined;
11191 +}
11192 +var ContextConsumer = REACT_CONTEXT_TYPE;
11193 +var ContextProvider = REACT_PROVIDER_TYPE;
11194 +var Element = REACT_ELEMENT_TYPE;
11195 +var ForwardRef = REACT_FORWARD_REF_TYPE;
11196 +var Fragment = REACT_FRAGMENT_TYPE;
11197 +var Lazy = REACT_LAZY_TYPE;
11198 +var Memo = REACT_MEMO_TYPE;
11199 +var Portal = REACT_PORTAL_TYPE;
11200 +var Profiler = REACT_PROFILER_TYPE;
11201 +var StrictMode = REACT_STRICT_MODE_TYPE;
11202 +var Suspense = REACT_SUSPENSE_TYPE;
11203 +var SuspenseList = REACT_SUSPENSE_LIST_TYPE;
11204 +var hasWarnedAboutDeprecatedIsAsyncMode = false;
11205 +var hasWarnedAboutDeprecatedIsConcurrentMode = false; // AsyncMode should be deprecated
11206 +
11207 +function isAsyncMode(object) {
11208 + {
11209 + if (!hasWarnedAboutDeprecatedIsAsyncMode) {
11210 + hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint
11211 +
11212 + console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11213 + }
11214 + }
11215 +
11216 + return false;
11217 +}
11218 +function isConcurrentMode(object) {
11219 + {
11220 + if (!hasWarnedAboutDeprecatedIsConcurrentMode) {
11221 + hasWarnedAboutDeprecatedIsConcurrentMode = true; // Using console['warn'] to evade Babel and ESLint
11222 +
11223 + console['warn']('The ReactIs.isConcurrentMode() alias has been deprecated, ' + 'and will be removed in React 18+.');
11224 + }
11225 + }
11226 +
11227 + return false;
11228 +}
11229 +function isContextConsumer(object) {
11230 + return typeOf(object) === REACT_CONTEXT_TYPE;
11231 +}
11232 +function isContextProvider(object) {
11233 + return typeOf(object) === REACT_PROVIDER_TYPE;
11234 +}
11235 +function isElement(object) {
11236 + return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
11237 +}
11238 +function isForwardRef(object) {
11239 + return typeOf(object) === REACT_FORWARD_REF_TYPE;
11240 +}
11241 +function isFragment(object) {
11242 + return typeOf(object) === REACT_FRAGMENT_TYPE;
11243 +}
11244 +function isLazy(object) {
11245 + return typeOf(object) === REACT_LAZY_TYPE;
11246 +}
11247 +function isMemo(object) {
11248 + return typeOf(object) === REACT_MEMO_TYPE;
11249 +}
11250 +function isPortal(object) {
11251 + return typeOf(object) === REACT_PORTAL_TYPE;
11252 +}
11253 +function isProfiler(object) {
11254 + return typeOf(object) === REACT_PROFILER_TYPE;
11255 +}
11256 +function isStrictMode(object) {
11257 + return typeOf(object) === REACT_STRICT_MODE_TYPE;
11258 +}
11259 +function isSuspense(object) {
11260 + return typeOf(object) === REACT_SUSPENSE_TYPE;
11261 +}
11262 +function isSuspenseList(object) {
11263 + return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;
11264 +}
11265 +
11266 +exports.ContextConsumer = ContextConsumer;
11267 +exports.ContextProvider = ContextProvider;
11268 +exports.Element = Element;
11269 +exports.ForwardRef = ForwardRef;
11270 +exports.Fragment = Fragment;
11271 +exports.Lazy = Lazy;
11272 +exports.Memo = Memo;
11273 +exports.Portal = Portal;
11274 +exports.Profiler = Profiler;
11275 +exports.StrictMode = StrictMode;
11276 +exports.Suspense = Suspense;
11277 +exports.SuspenseList = SuspenseList;
11278 +exports.isAsyncMode = isAsyncMode;
11279 +exports.isConcurrentMode = isConcurrentMode;
11280 +exports.isContextConsumer = isContextConsumer;
11281 +exports.isContextProvider = isContextProvider;
11282 +exports.isElement = isElement;
11283 +exports.isForwardRef = isForwardRef;
11284 +exports.isFragment = isFragment;
11285 +exports.isLazy = isLazy;
11286 +exports.isMemo = isMemo;
11287 +exports.isPortal = isPortal;
11288 +exports.isProfiler = isProfiler;
11289 +exports.isStrictMode = isStrictMode;
11290 +exports.isSuspense = isSuspense;
11291 +exports.isSuspenseList = isSuspenseList;
11292 +exports.isValidElementType = isValidElementType;
11293 +exports.typeOf = typeOf;
11294 + })();
11295 +}
11296 +
11297 +
11298 +/***/ }),
11299 +
11300 +/***/ "../node_modules/react-is/index.js":
11301 +/*!*****************************************!*\
11302 + !*** ../node_modules/react-is/index.js ***!
11303 + \*****************************************/
11304 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11305 +
11306 +"use strict";
11307 +
11308 +
11309 +if (false) {} else {
11310 + module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
11311 +}
11312 +
11313 +
11314 +/***/ }),
11315 +
11316 +/***/ "../node_modules/shallowequal/index.js":
11317 +/*!*********************************************!*\
11318 + !*** ../node_modules/shallowequal/index.js ***!
11319 + \*********************************************/
11320 +/***/ ((module) => {
11321 +
11322 +//
11323 +
11324 +module.exports = function shallowEqual(objA, objB, compare, compareContext) {
11325 + var ret = compare ? compare.call(compareContext, objA, objB) : void 0;
11326 +
11327 + if (ret !== void 0) {
11328 + return !!ret;
11329 + }
11330 +
11331 + if (objA === objB) {
11332 + return true;
11333 + }
11334 +
11335 + if (typeof objA !== "object" || !objA || typeof objB !== "object" || !objB) {
11336 + return false;
11337 + }
11338 +
11339 + var keysA = Object.keys(objA);
11340 + var keysB = Object.keys(objB);
11341 +
11342 + if (keysA.length !== keysB.length) {
11343 + return false;
11344 + }
11345 +
11346 + var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
11347 +
11348 + // Test for A's keys different from B.
11349 + for (var idx = 0; idx < keysA.length; idx++) {
11350 + var key = keysA[idx];
11351 +
11352 + if (!bHasOwnProperty(key)) {
11353 + return false;
11354 + }
11355 +
11356 + var valueA = objA[key];
11357 + var valueB = objB[key];
11358 +
11359 + ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
11360 +
11361 + if (ret === false || (ret === void 0 && valueA !== valueB)) {
11362 + return false;
11363 + }
11364 + }
11365 +
11366 + return true;
11367 +};
11368 +
11369 +
11370 +/***/ }),
11371 +
11372 +/***/ "../node_modules/styled-components/dist/styled-components.browser.esm.js":
11373 +/*!*******************************************************************************!*\
11374 + !*** ../node_modules/styled-components/dist/styled-components.browser.esm.js ***!
11375 + \*******************************************************************************/
11376 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11377 +
11378 +"use strict";
11379 +__webpack_require__.r(__webpack_exports__);
11380 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
11381 +/* harmony export */ ServerStyleSheet: () => (/* binding */ Ue),
11382 +/* harmony export */ StyleSheetConsumer: () => (/* binding */ ue),
11383 +/* harmony export */ StyleSheetContext: () => (/* binding */ ce),
11384 +/* harmony export */ StyleSheetManager: () => (/* binding */ me),
11385 +/* harmony export */ ThemeConsumer: () => (/* binding */ Ge),
11386 +/* harmony export */ ThemeContext: () => (/* binding */ Me),
11387 +/* harmony export */ ThemeProvider: () => (/* binding */ Le),
11388 +/* harmony export */ __PRIVATE__: () => (/* binding */ Ze),
11389 +/* harmony export */ createGlobalStyle: () => (/* binding */ $e),
11390 +/* harmony export */ css: () => (/* binding */ Ae),
11391 +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
11392 +/* harmony export */ isStyledComponent: () => (/* binding */ _),
11393 +/* harmony export */ keyframes: () => (/* binding */ We),
11394 +/* harmony export */ useTheme: () => (/* binding */ Xe),
11395 +/* harmony export */ version: () => (/* binding */ A),
11396 +/* harmony export */ withTheme: () => (/* binding */ Je)
11397 +/* harmony export */ });
11398 +/* harmony import */ var react_is__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
11399 +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
11400 +/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
11401 +/* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! shallowequal */ "../node_modules/shallowequal/index.js");
11402 +/* harmony import */ var shallowequal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(shallowequal__WEBPACK_IMPORTED_MODULE_2__);
11403 +/* harmony import */ var _emotion_stylis__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @emotion/stylis */ "../node_modules/@emotion/stylis/dist/stylis.browser.esm.js");
11404 +/* 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");
11405 +/* 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");
11406 +/* 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");
11407 +/* harmony import */ var hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(hoist_non_react_statics__WEBPACK_IMPORTED_MODULE_6__);
11408 +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);
11409 +//# sourceMappingURL=styled-components.browser.esm.js.map
11410 +
11411 +
11412 +/***/ }),
11413 +
11414 +/***/ "../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js":
11415 +/*!*****************************************************************************************************!*\
11416 + !*** ../node_modules/styled-components/node_modules/@emotion/unitless/dist/unitless.browser.esm.js ***!
11417 + \*****************************************************************************************************/
11418 +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
11419 +
11420 +"use strict";
11421 +__webpack_require__.r(__webpack_exports__);
11422 +/* harmony export */ __webpack_require__.d(__webpack_exports__, {
11423 +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
11424 +/* harmony export */ });
11425 +var unitlessKeys = {
11426 + animationIterationCount: 1,
11427 + borderImageOutset: 1,
11428 + borderImageSlice: 1,
11429 + borderImageWidth: 1,
11430 + boxFlex: 1,
11431 + boxFlexGroup: 1,
11432 + boxOrdinalGroup: 1,
11433 + columnCount: 1,
11434 + columns: 1,
11435 + flex: 1,
11436 + flexGrow: 1,
11437 + flexPositive: 1,
11438 + flexShrink: 1,
11439 + flexNegative: 1,
11440 + flexOrder: 1,
11441 + gridRow: 1,
11442 + gridRowEnd: 1,
11443 + gridRowSpan: 1,
11444 + gridRowStart: 1,
11445 + gridColumn: 1,
11446 + gridColumnEnd: 1,
11447 + gridColumnSpan: 1,
11448 + gridColumnStart: 1,
11449 + msGridRow: 1,
11450 + msGridRowSpan: 1,
11451 + msGridColumn: 1,
11452 + msGridColumnSpan: 1,
11453 + fontWeight: 1,
11454 + lineHeight: 1,
11455 + opacity: 1,
11456 + order: 1,
11457 + orphans: 1,
11458 + tabSize: 1,
11459 + widows: 1,
11460 + zIndex: 1,
11461 + zoom: 1,
11462 + WebkitLineClamp: 1,
11463 + // SVG-related properties
11464 + fillOpacity: 1,
11465 + floodOpacity: 1,
11466 + stopOpacity: 1,
11467 + strokeDasharray: 1,
11468 + strokeDashoffset: 1,
11469 + strokeMiterlimit: 1,
11470 + strokeOpacity: 1,
11471 + strokeWidth: 1
11472 +};
11473 +
11474 +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (unitlessKeys);
11475 +
11476 +
11477 +/***/ }),
11478 +
11479 +/***/ "../node_modules/validator/lib/isFQDN.js":
11480 +/*!***********************************************!*\
11481 + !*** ../node_modules/validator/lib/isFQDN.js ***!
11482 + \***********************************************/
11483 +/***/ ((module, exports, __webpack_require__) => {
11484 +
11485 +"use strict";
11486 +
11487 +
11488 +Object.defineProperty(exports, "__esModule", ({
11489 + value: true
11490 +}));
11491 +exports["default"] = isFQDN;
11492 +
11493 +var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11494 +
11495 +var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11496 +
11497 +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11498 +
11499 +var default_fqdn_options = {
11500 + require_tld: true,
11501 + allow_underscores: false,
11502 + allow_trailing_dot: false,
11503 + allow_numeric_tld: false,
11504 + allow_wildcard: false,
11505 + ignore_max_length: false
11506 +};
11507 +
11508 +function isFQDN(str, options) {
11509 + (0, _assertString.default)(str);
11510 + options = (0, _merge.default)(options, default_fqdn_options);
11511 + /* Remove the optional trailing dot before checking validity */
11512 +
11513 + if (options.allow_trailing_dot && str[str.length - 1] === '.') {
11514 + str = str.substring(0, str.length - 1);
11515 + }
11516 + /* Remove the optional wildcard before checking validity */
11517 +
11518 +
11519 + if (options.allow_wildcard === true && str.indexOf('*.') === 0) {
11520 + str = str.substring(2);
11521 + }
11522 +
11523 + var parts = str.split('.');
11524 + var tld = parts[parts.length - 1];
11525 +
11526 + if (options.require_tld) {
11527 + // disallow fqdns without tld
11528 + if (parts.length < 2) {
11529 + return false;
11530 + }
11531 +
11532 + if (!options.allow_numeric_tld && !/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {
11533 + return false;
11534 + } // disallow spaces
11535 +
11536 +
11537 + if (/\s/.test(tld)) {
11538 + return false;
11539 + }
11540 + } // reject numeric TLDs
11541 +
11542 +
11543 + if (!options.allow_numeric_tld && /^\d+$/.test(tld)) {
11544 + return false;
11545 + }
11546 +
11547 + return parts.every(function (part) {
11548 + if (part.length > 63 && !options.ignore_max_length) {
11549 + return false;
11550 + }
11551 +
11552 + if (!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(part)) {
11553 + return false;
11554 + } // disallow full-width chars
11555 +
11556 +
11557 + if (/[\uff01-\uff5e]/.test(part)) {
11558 + return false;
11559 + } // disallow parts starting or ending with hyphen
11560 +
11561 +
11562 + if (/^-|-$/.test(part)) {
11563 + return false;
11564 + }
11565 +
11566 + if (!options.allow_underscores && /_/.test(part)) {
11567 + return false;
11568 + }
11569 +
11570 + return true;
11571 + });
11572 +}
11573 +
11574 +module.exports = exports.default;
11575 +module.exports["default"] = exports.default;
11576 +
11577 +/***/ }),
11578 +
11579 +/***/ "../node_modules/validator/lib/isIP.js":
11580 +/*!*********************************************!*\
11581 + !*** ../node_modules/validator/lib/isIP.js ***!
11582 + \*********************************************/
11583 +/***/ ((module, exports, __webpack_require__) => {
11584 +
11585 +"use strict";
11586 +
11587 +
11588 +Object.defineProperty(exports, "__esModule", ({
11589 + value: true
11590 +}));
11591 +exports["default"] = isIP;
11592 +
11593 +var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11594 +
11595 +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11596 +
11597 +/**
11598 +11.3. Examples
11599 +
11600 + The following addresses
11601 +
11602 + fe80::1234 (on the 1st link of the node)
11603 + ff02::5678 (on the 5th link of the node)
11604 + ff08::9abc (on the 10th organization of the node)
11605 +
11606 + would be represented as follows:
11607 +
11608 + fe80::1234%1
11609 + ff02::5678%5
11610 + ff08::9abc%10
11611 +
11612 + (Here we assume a natural translation from a zone index to the
11613 + <zone_id> part, where the Nth zone of any scope is translated into
11614 + "N".)
11615 +
11616 + If we use interface names as <zone_id>, those addresses could also be
11617 + represented as follows:
11618 +
11619 + fe80::1234%ne0
11620 + ff02::5678%pvc1.3
11621 + ff08::9abc%interface10
11622 +
11623 + where the interface "ne0" belongs to the 1st link, "pvc1.3" belongs
11624 + to the 5th link, and "interface10" belongs to the 10th organization.
11625 + * * */
11626 +var IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
11627 +var IPv4AddressFormat = "(".concat(IPv4SegmentFormat, "[.]){3}").concat(IPv4SegmentFormat);
11628 +var IPv4AddressRegExp = new RegExp("^".concat(IPv4AddressFormat, "$"));
11629 +var IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';
11630 +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,})?$');
11631 +
11632 +function isIP(str) {
11633 + var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11634 + (0, _assertString.default)(str);
11635 + version = String(version);
11636 +
11637 + if (!version) {
11638 + return isIP(str, 4) || isIP(str, 6);
11639 + }
11640 +
11641 + if (version === '4') {
11642 + return IPv4AddressRegExp.test(str);
11643 + }
11644 +
11645 + if (version === '6') {
11646 + return IPv6AddressRegExp.test(str);
11647 + }
11648 +
11649 + return false;
11650 +}
11651 +
11652 +module.exports = exports.default;
11653 +module.exports["default"] = exports.default;
11654 +
11655 +/***/ }),
11656 +
11657 +/***/ "../node_modules/validator/lib/isURL.js":
11658 +/*!**********************************************!*\
11659 + !*** ../node_modules/validator/lib/isURL.js ***!
11660 + \**********************************************/
11661 +/***/ ((module, exports, __webpack_require__) => {
11662 +
11663 +"use strict";
11664 +
11665 +
11666 +Object.defineProperty(exports, "__esModule", ({
11667 + value: true
11668 +}));
11669 +exports["default"] = isURL;
11670 +
11671 +var _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ "../node_modules/validator/lib/util/assertString.js"));
11672 +
11673 +var _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ "../node_modules/validator/lib/isFQDN.js"));
11674 +
11675 +var _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ "../node_modules/validator/lib/isIP.js"));
11676 +
11677 +var _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ "../node_modules/validator/lib/util/merge.js"));
11678 +
11679 +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11680 +
11681 +function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11682 +
11683 +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."); }
11684 +
11685 +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); }
11686 +
11687 +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; }
11688 +
11689 +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; }
11690 +
11691 +function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11692 +
11693 +/*
11694 +options for isURL method
11695 +
11696 +require_protocol - if set as true isURL will return false if protocol is not present in the URL
11697 +require_valid_protocol - isURL will check if the URL's protocol is present in the protocols option
11698 +protocols - valid protocols can be modified with this option
11699 +require_host - if set as false isURL will not check if host is present in the URL
11700 +require_port - if set as true isURL will check if port is present in the URL
11701 +allow_protocol_relative_urls - if set as true protocol relative URLs will be allowed
11702 +validate_length - if set as false isURL will skip string length validation (IE maximum is 2083)
11703 +
11704 +*/
11705 +var default_url_options = {
11706 + protocols: ['http', 'https', 'ftp'],
11707 + require_tld: true,
11708 + require_protocol: false,
11709 + require_host: true,
11710 + require_port: false,
11711 + require_valid_protocol: true,
11712 + allow_underscores: false,
11713 + allow_trailing_dot: false,
11714 + allow_protocol_relative_urls: false,
11715 + allow_fragments: true,
11716 + allow_query_components: true,
11717 + validate_length: true
11718 +};
11719 +var wrapped_ipv6 = /^\[([^\]]+)\](?::([0-9]+))?$/;
11720 +
11721 +function isRegExp(obj) {
11722 + return Object.prototype.toString.call(obj) === '[object RegExp]';
11723 +}
11724 +
11725 +function checkHost(host, matches) {
11726 + for (var i = 0; i < matches.length; i++) {
11727 + var match = matches[i];
11728 +
11729 + if (host === match || isRegExp(match) && match.test(host)) {
11730 + return true;
11731 + }
11732 + }
11733 +
11734 + return false;
11735 +}
11736 +
11737 +function isURL(url, options) {
11738 + (0, _assertString.default)(url);
11739 +
11740 + if (!url || /[\s<>]/.test(url)) {
11741 + return false;
11742 + }
11743 +
11744 + if (url.indexOf('mailto:') === 0) {
11745 + return false;
11746 + }
11747 +
11748 + options = (0, _merge.default)(options, default_url_options);
11749 +
11750 + if (options.validate_length && url.length >= 2083) {
11751 + return false;
11752 + }
11753 +
11754 + if (!options.allow_fragments && url.includes('#')) {
11755 + return false;
11756 + }
11757 +
11758 + if (!options.allow_query_components && (url.includes('?') || url.includes('&'))) {
11759 + return false;
11760 + }
11761 +
11762 + var protocol, auth, host, hostname, port, port_str, split, ipv6;
11763 + split = url.split('#');
11764 + url = split.shift();
11765 + split = url.split('?');
11766 + url = split.shift();
11767 + split = url.split('://');
11768 +
11769 + if (split.length > 1) {
11770 + protocol = split.shift().toLowerCase();
11771 +
11772 + if (options.require_valid_protocol && options.protocols.indexOf(protocol) === -1) {
11773 + return false;
11774 + }
11775 + } else if (options.require_protocol) {
11776 + return false;
11777 + } else if (url.slice(0, 2) === '//') {
11778 + if (!options.allow_protocol_relative_urls) {
11779 + return false;
11780 + }
11781 +
11782 + split[0] = url.slice(2);
11783 + }
11784 +
11785 + url = split.join('://');
11786 +
11787 + if (url === '') {
11788 + return false;
11789 + }
11790 +
11791 + split = url.split('/');
11792 + url = split.shift();
11793 +
11794 + if (url === '' && !options.require_host) {
11795 + return true;
11796 + }
11797 +
11798 + split = url.split('@');
11799 +
11800 + if (split.length > 1) {
11801 + if (options.disallow_auth) {
11802 + return false;
11803 + }
11804 +
11805 + if (split[0] === '') {
11806 + return false;
11807 + }
11808 +
11809 + auth = split.shift();
11810 +
11811 + if (auth.indexOf(':') >= 0 && auth.split(':').length > 2) {
11812 + return false;
11813 + }
11814 +
11815 + var _auth$split = auth.split(':'),
11816 + _auth$split2 = _slicedToArray(_auth$split, 2),
11817 + user = _auth$split2[0],
11818 + password = _auth$split2[1];
11819 +
11820 + if (user === '' && password === '') {
11821 + return false;
11822 + }
11823 + }
11824 +
11825 + hostname = split.join('@');
11826 + port_str = null;
11827 + ipv6 = null;
11828 + var ipv6_match = hostname.match(wrapped_ipv6);
11829 +
11830 + if (ipv6_match) {
11831 + host = '';
11832 + ipv6 = ipv6_match[1];
11833 + port_str = ipv6_match[2] || null;
11834 + } else {
11835 + split = hostname.split(':');
11836 + host = split.shift();
11837 +
11838 + if (split.length) {
11839 + port_str = split.join(':');
11840 + }
11841 + }
11842 +
11843 + if (port_str !== null && port_str.length > 0) {
11844 + port = parseInt(port_str, 10);
11845 +
11846 + if (!/^[0-9]+$/.test(port_str) || port <= 0 || port > 65535) {
11847 + return false;
11848 + }
11849 + } else if (options.require_port) {
11850 + return false;
11851 + }
11852 +
11853 + if (options.host_whitelist) {
11854 + return checkHost(host, options.host_whitelist);
11855 + }
11856 +
11857 + if (host === '' && !options.require_host) {
11858 + return true;
11859 + }
11860 +
11861 + if (!(0, _isIP.default)(host) && !(0, _isFQDN.default)(host, options) && (!ipv6 || !(0, _isIP.default)(ipv6, 6))) {
11862 + return false;
11863 + }
11864 +
11865 + host = host || ipv6;
11866 +
11867 + if (options.host_blacklist && checkHost(host, options.host_blacklist)) {
11868 + return false;
11869 + }
11870 +
11871 + return true;
11872 +}
11873 +
11874 +module.exports = exports.default;
11875 +module.exports["default"] = exports.default;
11876 +
11877 +/***/ }),
11878 +
11879 +/***/ "../node_modules/validator/lib/util/assertString.js":
11880 +/*!**********************************************************!*\
11881 + !*** ../node_modules/validator/lib/util/assertString.js ***!
11882 + \**********************************************************/
11883 +/***/ ((module, exports) => {
11884 +
11885 +"use strict";
11886 +
11887 +
11888 +Object.defineProperty(exports, "__esModule", ({
11889 + value: true
11890 +}));
11891 +exports["default"] = assertString;
11892 +
11893 +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); }
11894 +
11895 +function assertString(input) {
11896 + var isString = typeof input === 'string' || input instanceof String;
11897 +
11898 + if (!isString) {
11899 + var invalidType = _typeof(input);
11900 +
11901 + if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;
11902 + throw new TypeError("Expected a string but received a ".concat(invalidType));
11903 + }
11904 +}
11905 +
11906 +module.exports = exports.default;
11907 +module.exports["default"] = exports.default;
11908 +
11909 +/***/ }),
11910 +
11911 +/***/ "../node_modules/validator/lib/util/merge.js":
11912 +/*!***************************************************!*\
11913 + !*** ../node_modules/validator/lib/util/merge.js ***!
11914 + \***************************************************/
11915 +/***/ ((module, exports) => {
11916 +
11917 +"use strict";
11918 +
11919 +
11920 +Object.defineProperty(exports, "__esModule", ({
11921 + value: true
11922 +}));
11923 +exports["default"] = merge;
11924 +
11925 +function merge() {
11926 + var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
11927 + var defaults = arguments.length > 1 ? arguments[1] : undefined;
11928 +
11929 + for (var key in defaults) {
11930 + if (typeof obj[key] === 'undefined') {
11931 + obj[key] = defaults[key];
11932 + }
11933 + }
11934 +
11935 + return obj;
11936 +}
11937 +
11938 +module.exports = exports.default;
11939 +module.exports["default"] = exports.default;
11940 +
11941 +/***/ }),
11942 +
11943 +/***/ "react":
11944 +/*!************************!*\
11945 + !*** external "React" ***!
11946 + \************************/
11947 +/***/ ((module) => {
11948 +
11949 +"use strict";
11950 +module.exports = React;
11951 +
11952 +/***/ }),
11953 +
11954 +/***/ "react-dom":
11955 +/*!***************************!*\
11956 + !*** external "ReactDOM" ***!
11957 + \***************************/
11958 +/***/ ((module) => {
11959 +
11960 +"use strict";
11961 +module.exports = ReactDOM;
11962 +
11963 +/***/ }),
11964 +
11965 +/***/ "@elementor/icons":
11966 +/*!************************************!*\
11967 + !*** external "elementorV2.icons" ***!
11968 + \************************************/
11969 +/***/ ((module) => {
11970 +
11971 +"use strict";
11972 +module.exports = elementorV2.icons;
11973 +
11974 +/***/ }),
11975 +
11976 +/***/ "@elementor/ui":
11977 +/*!*********************************!*\
11978 + !*** external "elementorV2.ui" ***!
11979 + \*********************************/
11980 +/***/ ((module) => {
11981 +
11982 +"use strict";
11983 +module.exports = elementorV2.ui;
11984 +
11985 +/***/ }),
11986 +
11987 +/***/ "@wordpress/i18n":
11988 +/*!**************************!*\
11989 + !*** external "wp.i18n" ***!
11990 + \**************************/
11991 +/***/ ((module) => {
11992 +
11993 +"use strict";
11994 +module.exports = wp.i18n;
11995 +
11996 +/***/ }),
11997 +
11998 +/***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js":
11999 +/*!******************************************************************!*\
12000 + !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
12001 + \******************************************************************/
12002 +/***/ ((module) => {
12003 +
12004 +function _arrayLikeToArray(arr, len) {
12005 + if (len == null || len > arr.length) len = arr.length;
12006 + for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
12007 + return arr2;
12008 +}
12009 +module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12010 +
12011 +/***/ }),
12012 +
12013 +/***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js":
12014 +/*!****************************************************************!*\
12015 + !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
12016 + \****************************************************************/
12017 +/***/ ((module) => {
12018 +
12019 +function _arrayWithHoles(arr) {
12020 + if (Array.isArray(arr)) return arr;
12021 +}
12022 +module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12023 +
12024 +/***/ }),
12025 +
12026 +/***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
12027 +/*!*******************************************************************!*\
12028 + !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
12029 + \*******************************************************************/
12030 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12031 +
12032 +var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12033 +function _arrayWithoutHoles(arr) {
12034 + if (Array.isArray(arr)) return arrayLikeToArray(arr);
12035 +}
12036 +module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
12037 +
12038 +/***/ }),
12039 +
12040 +/***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js":
12041 +/*!***********************************************************************!*\
12042 + !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
12043 + \***********************************************************************/
12044 +/***/ ((module) => {
12045 +
12046 +function _assertThisInitialized(self) {
12047 + if (self === void 0) {
12048 + throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
12049 + }
12050 + return self;
12051 +}
12052 +module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports;
12053 +
12054 +/***/ }),
12055 +
12056 +/***/ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js":
12057 +/*!******************************************************************!*\
12058 + !*** ../node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
12059 + \******************************************************************/
12060 +/***/ ((module) => {
12061 +
12062 +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
12063 + try {
12064 + var info = gen[key](arg);
12065 + var value = info.value;
12066 + } catch (error) {
12067 + reject(error);
12068 + return;
12069 + }
12070 + if (info.done) {
12071 + resolve(value);
12072 + } else {
12073 + Promise.resolve(value).then(_next, _throw);
12074 + }
12075 +}
12076 +function _asyncToGenerator(fn) {
12077 + return function () {
12078 + var self = this,
12079 + args = arguments;
12080 + return new Promise(function (resolve, reject) {
12081 + var gen = fn.apply(self, args);
12082 + function _next(value) {
12083 + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
12084 + }
12085 + function _throw(err) {
12086 + asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
12087 + }
12088 + _next(undefined);
12089 + });
12090 + };
12091 +}
12092 +module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;
12093 +
12094 +/***/ }),
12095 +
12096 +/***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
12097 +/*!****************************************************************!*\
12098 + !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
12099 + \****************************************************************/
12100 +/***/ ((module) => {
12101 +
12102 +function _classCallCheck(instance, Constructor) {
12103 + if (!(instance instanceof Constructor)) {
12104 + throw new TypeError("Cannot call a class as a function");
12105 + }
12106 +}
12107 +module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
12108 +
12109 +/***/ }),
12110 +
12111 +/***/ "../node_modules/@babel/runtime/helpers/createClass.js":
12112 +/*!*************************************************************!*\
12113 + !*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
12114 + \*************************************************************/
12115 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12116 +
12117 +var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12118 +function _defineProperties(target, props) {
12119 + for (var i = 0; i < props.length; i++) {
12120 + var descriptor = props[i];
12121 + descriptor.enumerable = descriptor.enumerable || false;
12122 + descriptor.configurable = true;
12123 + if ("value" in descriptor) descriptor.writable = true;
12124 + Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
12125 + }
12126 +}
12127 +function _createClass(Constructor, protoProps, staticProps) {
12128 + if (protoProps) _defineProperties(Constructor.prototype, protoProps);
12129 + if (staticProps) _defineProperties(Constructor, staticProps);
12130 + Object.defineProperty(Constructor, "prototype", {
12131 + writable: false
12132 + });
12133 + return Constructor;
12134 +}
12135 +module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
12136 +
12137 +/***/ }),
12138 +
12139 +/***/ "../node_modules/@babel/runtime/helpers/defineProperty.js":
12140 +/*!****************************************************************!*\
12141 + !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***!
12142 + \****************************************************************/
12143 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12144 +
12145 +var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
12146 +function _defineProperty(obj, key, value) {
12147 + key = toPropertyKey(key);
12148 + if (key in obj) {
12149 + Object.defineProperty(obj, key, {
12150 + value: value,
12151 + enumerable: true,
12152 + configurable: true,
12153 + writable: true
12154 + });
12155 + } else {
12156 + obj[key] = value;
12157 + }
12158 + return obj;
12159 +}
12160 +module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
12161 +
12162 +/***/ }),
12163 +
12164 +/***/ "../node_modules/@babel/runtime/helpers/extends.js":
12165 +/*!*********************************************************!*\
12166 + !*** ../node_modules/@babel/runtime/helpers/extends.js ***!
12167 + \*********************************************************/
12168 +/***/ ((module) => {
12169 +
12170 +function _extends() {
12171 + module.exports = _extends = Object.assign ? Object.assign.bind() : function (target) {
12172 + for (var i = 1; i < arguments.length; i++) {
12173 + var source = arguments[i];
12174 + for (var key in source) {
12175 + if (Object.prototype.hasOwnProperty.call(source, key)) {
12176 + target[key] = source[key];
12177 + }
12178 + }
12179 + }
12180 + return target;
12181 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12182 + return _extends.apply(this, arguments);
12183 +}
12184 +module.exports = _extends, module.exports.__esModule = true, module.exports["default"] = module.exports;
12185 +
12186 +/***/ }),
12187 +
12188 +/***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js":
12189 +/*!****************************************************************!*\
12190 + !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
12191 + \****************************************************************/
12192 +/***/ ((module) => {
12193 +
12194 +function _getPrototypeOf(o) {
12195 + module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
12196 + return o.__proto__ || Object.getPrototypeOf(o);
12197 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12198 + return _getPrototypeOf(o);
12199 +}
12200 +module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12201 +
12202 +/***/ }),
12203 +
12204 +/***/ "../node_modules/@babel/runtime/helpers/inherits.js":
12205 +/*!**********************************************************!*\
12206 + !*** ../node_modules/@babel/runtime/helpers/inherits.js ***!
12207 + \**********************************************************/
12208 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12209 +
12210 +var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js");
12211 +function _inherits(subClass, superClass) {
12212 + if (typeof superClass !== "function" && superClass !== null) {
12213 + throw new TypeError("Super expression must either be null or a function");
12214 + }
12215 + subClass.prototype = Object.create(superClass && superClass.prototype, {
12216 + constructor: {
12217 + value: subClass,
12218 + writable: true,
12219 + configurable: true
12220 + }
12221 + });
12222 + Object.defineProperty(subClass, "prototype", {
12223 + writable: false
12224 + });
12225 + if (superClass) setPrototypeOf(subClass, superClass);
12226 +}
12227 +module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports;
12228 +
12229 +/***/ }),
12230 +
12231 +/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
12232 +/*!***********************************************************************!*\
12233 + !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
12234 + \***********************************************************************/
12235 +/***/ ((module) => {
12236 +
12237 +function _interopRequireDefault(obj) {
12238 + return obj && obj.__esModule ? obj : {
12239 + "default": obj
12240 + };
12241 +}
12242 +module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
12243 +
12244 +/***/ }),
12245 +
12246 +/***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js":
12247 +/*!*****************************************************************!*\
12248 + !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***!
12249 + \*****************************************************************/
12250 +/***/ ((module) => {
12251 +
12252 +function _iterableToArray(iter) {
12253 + if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12254 +}
12255 +module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12256 +
12257 +/***/ }),
12258 +
12259 +/***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js":
12260 +/*!**********************************************************************!*\
12261 + !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
12262 + \**********************************************************************/
12263 +/***/ ((module) => {
12264 +
12265 +function _iterableToArrayLimit(r, l) {
12266 + var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
12267 + if (null != t) {
12268 + var e,
12269 + n,
12270 + i,
12271 + u,
12272 + a = [],
12273 + f = !0,
12274 + o = !1;
12275 + try {
12276 + if (i = (t = t.call(r)).next, 0 === l) {
12277 + if (Object(t) !== t) return;
12278 + f = !1;
12279 + } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
12280 + } catch (r) {
12281 + o = !0, n = r;
12282 + } finally {
12283 + try {
12284 + if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
12285 + } finally {
12286 + if (o) throw n;
12287 + }
12288 + }
12289 + return a;
12290 + }
12291 +}
12292 +module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;
12293 +
12294 +/***/ }),
12295 +
12296 +/***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js":
12297 +/*!*****************************************************************!*\
12298 + !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
12299 + \*****************************************************************/
12300 +/***/ ((module) => {
12301 +
12302 +function _nonIterableRest() {
12303 + throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12304 +}
12305 +module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;
12306 +
12307 +/***/ }),
12308 +
12309 +/***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js":
12310 +/*!*******************************************************************!*\
12311 + !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
12312 + \*******************************************************************/
12313 +/***/ ((module) => {
12314 +
12315 +function _nonIterableSpread() {
12316 + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12317 +}
12318 +module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
12319 +
12320 +/***/ }),
12321 +
12322 +/***/ "../node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
12323 +/*!*************************************************************************!*\
12324 + !*** ../node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
12325 + \*************************************************************************/
12326 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12327 +
12328 +var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose.js */ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");
12329 +function _objectWithoutProperties(source, excluded) {
12330 + if (source == null) return {};
12331 + var target = objectWithoutPropertiesLoose(source, excluded);
12332 + var key, i;
12333 + if (Object.getOwnPropertySymbols) {
12334 + var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
12335 + for (i = 0; i < sourceSymbolKeys.length; i++) {
12336 + key = sourceSymbolKeys[i];
12337 + if (excluded.indexOf(key) >= 0) continue;
12338 + if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
12339 + target[key] = source[key];
12340 + }
12341 + }
12342 + return target;
12343 +}
12344 +module.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports["default"] = module.exports;
12345 +
12346 +/***/ }),
12347 +
12348 +/***/ "../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
12349 +/*!******************************************************************************!*\
12350 + !*** ../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
12351 + \******************************************************************************/
12352 +/***/ ((module) => {
12353 +
12354 +function _objectWithoutPropertiesLoose(source, excluded) {
12355 + if (source == null) return {};
12356 + var target = {};
12357 + var sourceKeys = Object.keys(source);
12358 + var key, i;
12359 + for (i = 0; i < sourceKeys.length; i++) {
12360 + key = sourceKeys[i];
12361 + if (excluded.indexOf(key) >= 0) continue;
12362 + target[key] = source[key];
12363 + }
12364 + return target;
12365 +}
12366 +module.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports["default"] = module.exports;
12367 +
12368 +/***/ }),
12369 +
12370 +/***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
12371 +/*!***************************************************************************!*\
12372 + !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
12373 + \***************************************************************************/
12374 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12375 +
12376 +var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12377 +var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js");
12378 +function _possibleConstructorReturn(self, call) {
12379 + if (call && (_typeof(call) === "object" || typeof call === "function")) {
12380 + return call;
12381 + } else if (call !== void 0) {
12382 + throw new TypeError("Derived constructors may only return object or undefined");
12383 + }
12384 + return assertThisInitialized(self);
12385 +}
12386 +module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports;
12387 +
12388 +/***/ }),
12389 +
12390 +/***/ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js":
12391 +/*!********************************************************************!*\
12392 + !*** ../node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
12393 + \********************************************************************/
12394 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12395 +
12396 +var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12397 +function _regeneratorRuntime() {
12398 + "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
12399 + module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
12400 + return e;
12401 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12402 + var t,
12403 + e = {},
12404 + r = Object.prototype,
12405 + n = r.hasOwnProperty,
12406 + o = Object.defineProperty || function (t, e, r) {
12407 + t[e] = r.value;
12408 + },
12409 + i = "function" == typeof Symbol ? Symbol : {},
12410 + a = i.iterator || "@@iterator",
12411 + c = i.asyncIterator || "@@asyncIterator",
12412 + u = i.toStringTag || "@@toStringTag";
12413 + function define(t, e, r) {
12414 + return Object.defineProperty(t, e, {
12415 + value: r,
12416 + enumerable: !0,
12417 + configurable: !0,
12418 + writable: !0
12419 + }), t[e];
12420 + }
12421 + try {
12422 + define({}, "");
12423 + } catch (t) {
12424 + define = function define(t, e, r) {
12425 + return t[e] = r;
12426 + };
12427 + }
12428 + function wrap(t, e, r, n) {
12429 + var i = e && e.prototype instanceof Generator ? e : Generator,
12430 + a = Object.create(i.prototype),
12431 + c = new Context(n || []);
12432 + return o(a, "_invoke", {
12433 + value: makeInvokeMethod(t, r, c)
12434 + }), a;
12435 + }
12436 + function tryCatch(t, e, r) {
12437 + try {
12438 + return {
12439 + type: "normal",
12440 + arg: t.call(e, r)
12441 + };
12442 + } catch (t) {
12443 + return {
12444 + type: "throw",
12445 + arg: t
12446 + };
12447 + }
12448 + }
12449 + e.wrap = wrap;
12450 + var h = "suspendedStart",
12451 + l = "suspendedYield",
12452 + f = "executing",
12453 + s = "completed",
12454 + y = {};
12455 + function Generator() {}
12456 + function GeneratorFunction() {}
12457 + function GeneratorFunctionPrototype() {}
12458 + var p = {};
12459 + define(p, a, function () {
12460 + return this;
12461 + });
12462 + var d = Object.getPrototypeOf,
12463 + v = d && d(d(values([])));
12464 + v && v !== r && n.call(v, a) && (p = v);
12465 + var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
12466 + function defineIteratorMethods(t) {
12467 + ["next", "throw", "return"].forEach(function (e) {
12468 + define(t, e, function (t) {
12469 + return this._invoke(e, t);
12470 + });
12471 + });
12472 + }
12473 + function AsyncIterator(t, e) {
12474 + function invoke(r, o, i, a) {
12475 + var c = tryCatch(t[r], t, o);
12476 + if ("throw" !== c.type) {
12477 + var u = c.arg,
12478 + h = u.value;
12479 + return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
12480 + invoke("next", t, i, a);
12481 + }, function (t) {
12482 + invoke("throw", t, i, a);
12483 + }) : e.resolve(h).then(function (t) {
12484 + u.value = t, i(u);
12485 + }, function (t) {
12486 + return invoke("throw", t, i, a);
12487 + });
12488 + }
12489 + a(c.arg);
12490 + }
12491 + var r;
12492 + o(this, "_invoke", {
12493 + value: function value(t, n) {
12494 + function callInvokeWithMethodAndArg() {
12495 + return new e(function (e, r) {
12496 + invoke(t, n, e, r);
12497 + });
12498 + }
12499 + return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
12500 + }
12501 + });
12502 + }
12503 + function makeInvokeMethod(e, r, n) {
12504 + var o = h;
12505 + return function (i, a) {
12506 + if (o === f) throw new Error("Generator is already running");
12507 + if (o === s) {
12508 + if ("throw" === i) throw a;
12509 + return {
12510 + value: t,
12511 + done: !0
12512 + };
12513 + }
12514 + for (n.method = i, n.arg = a;;) {
12515 + var c = n.delegate;
12516 + if (c) {
12517 + var u = maybeInvokeDelegate(c, n);
12518 + if (u) {
12519 + if (u === y) continue;
12520 + return u;
12521 + }
12522 + }
12523 + if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
12524 + if (o === h) throw o = s, n.arg;
12525 + n.dispatchException(n.arg);
12526 + } else "return" === n.method && n.abrupt("return", n.arg);
12527 + o = f;
12528 + var p = tryCatch(e, r, n);
12529 + if ("normal" === p.type) {
12530 + if (o = n.done ? s : l, p.arg === y) continue;
12531 + return {
12532 + value: p.arg,
12533 + done: n.done
12534 + };
12535 + }
12536 + "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
12537 + }
12538 + };
12539 + }
12540 + function maybeInvokeDelegate(e, r) {
12541 + var n = r.method,
12542 + o = e.iterator[n];
12543 + 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;
12544 + var i = tryCatch(o, e.iterator, r.arg);
12545 + if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
12546 + var a = i.arg;
12547 + 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);
12548 + }
12549 + function pushTryEntry(t) {
12550 + var e = {
12551 + tryLoc: t[0]
12552 + };
12553 + 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
12554 + }
12555 + function resetTryEntry(t) {
12556 + var e = t.completion || {};
12557 + e.type = "normal", delete e.arg, t.completion = e;
12558 + }
12559 + function Context(t) {
12560 + this.tryEntries = [{
12561 + tryLoc: "root"
12562 + }], t.forEach(pushTryEntry, this), this.reset(!0);
12563 + }
12564 + function values(e) {
12565 + if (e || "" === e) {
12566 + var r = e[a];
12567 + if (r) return r.call(e);
12568 + if ("function" == typeof e.next) return e;
12569 + if (!isNaN(e.length)) {
12570 + var o = -1,
12571 + i = function next() {
12572 + for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
12573 + return next.value = t, next.done = !0, next;
12574 + };
12575 + return i.next = i;
12576 + }
12577 + }
12578 + throw new TypeError(_typeof(e) + " is not iterable");
12579 + }
12580 + return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
12581 + value: GeneratorFunctionPrototype,
12582 + configurable: !0
12583 + }), o(GeneratorFunctionPrototype, "constructor", {
12584 + value: GeneratorFunction,
12585 + configurable: !0
12586 + }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
12587 + var e = "function" == typeof t && t.constructor;
12588 + return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
12589 + }, e.mark = function (t) {
12590 + return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
12591 + }, e.awrap = function (t) {
12592 + return {
12593 + __await: t
12594 + };
12595 + }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
12596 + return this;
12597 + }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
12598 + void 0 === i && (i = Promise);
12599 + var a = new AsyncIterator(wrap(t, r, n, o), i);
12600 + return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
12601 + return t.done ? t.value : a.next();
12602 + });
12603 + }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
12604 + return this;
12605 + }), define(g, "toString", function () {
12606 + return "[object Generator]";
12607 + }), e.keys = function (t) {
12608 + var e = Object(t),
12609 + r = [];
12610 + for (var n in e) r.push(n);
12611 + return r.reverse(), function next() {
12612 + for (; r.length;) {
12613 + var t = r.pop();
12614 + if (t in e) return next.value = t, next.done = !1, next;
12615 + }
12616 + return next.done = !0, next;
12617 + };
12618 + }, e.values = values, Context.prototype = {
12619 + constructor: Context,
12620 + reset: function reset(e) {
12621 + 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);
12622 + },
12623 + stop: function stop() {
12624 + this.done = !0;
12625 + var t = this.tryEntries[0].completion;
12626 + if ("throw" === t.type) throw t.arg;
12627 + return this.rval;
12628 + },
12629 + dispatchException: function dispatchException(e) {
12630 + if (this.done) throw e;
12631 + var r = this;
12632 + function handle(n, o) {
12633 + return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
12634 + }
12635 + for (var o = this.tryEntries.length - 1; o >= 0; --o) {
12636 + var i = this.tryEntries[o],
12637 + a = i.completion;
12638 + if ("root" === i.tryLoc) return handle("end");
12639 + if (i.tryLoc <= this.prev) {
12640 + var c = n.call(i, "catchLoc"),
12641 + u = n.call(i, "finallyLoc");
12642 + if (c && u) {
12643 + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12644 + if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12645 + } else if (c) {
12646 + if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
12647 + } else {
12648 + if (!u) throw new Error("try statement without catch or finally");
12649 + if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
12650 + }
12651 + }
12652 + }
12653 + },
12654 + abrupt: function abrupt(t, e) {
12655 + for (var r = this.tryEntries.length - 1; r >= 0; --r) {
12656 + var o = this.tryEntries[r];
12657 + if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
12658 + var i = o;
12659 + break;
12660 + }
12661 + }
12662 + i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
12663 + var a = i ? i.completion : {};
12664 + return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
12665 + },
12666 + complete: function complete(t, e) {
12667 + if ("throw" === t.type) throw t.arg;
12668 + 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;
12669 + },
12670 + finish: function finish(t) {
12671 + for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12672 + var r = this.tryEntries[e];
12673 + if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
12674 + }
12675 + },
12676 + "catch": function _catch(t) {
12677 + for (var e = this.tryEntries.length - 1; e >= 0; --e) {
12678 + var r = this.tryEntries[e];
12679 + if (r.tryLoc === t) {
12680 + var n = r.completion;
12681 + if ("throw" === n.type) {
12682 + var o = n.arg;
12683 + resetTryEntry(r);
12684 + }
12685 + return o;
12686 + }
12687 + }
12688 + throw new Error("illegal catch attempt");
12689 + },
12690 + delegateYield: function delegateYield(e, r, n) {
12691 + return this.delegate = {
12692 + iterator: values(e),
12693 + resultName: r,
12694 + nextLoc: n
12695 + }, "next" === this.method && (this.arg = t), y;
12696 + }
12697 + }, e;
12698 +}
12699 +module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;
12700 +
12701 +/***/ }),
12702 +
12703 +/***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js":
12704 +/*!****************************************************************!*\
12705 + !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
12706 + \****************************************************************/
12707 +/***/ ((module) => {
12708 +
12709 +function _setPrototypeOf(o, p) {
12710 + module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
12711 + o.__proto__ = p;
12712 + return o;
12713 + }, module.exports.__esModule = true, module.exports["default"] = module.exports;
12714 + return _setPrototypeOf(o, p);
12715 +}
12716 +module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;
12717 +
12718 +/***/ }),
12719 +
12720 +/***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js":
12721 +/*!***************************************************************!*\
12722 + !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***!
12723 + \***************************************************************/
12724 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12725 +
12726 +var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js");
12727 +var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js");
12728 +var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12729 +var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js");
12730 +function _slicedToArray(arr, i) {
12731 + return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
12732 +}
12733 +module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12734 +
12735 +/***/ }),
12736 +
12737 +/***/ "../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js":
12738 +/*!***********************************************************************!*\
12739 + !*** ../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js ***!
12740 + \***********************************************************************/
12741 +/***/ ((module) => {
12742 +
12743 +function _taggedTemplateLiteral(strings, raw) {
12744 + if (!raw) {
12745 + raw = strings.slice(0);
12746 + }
12747 + return Object.freeze(Object.defineProperties(strings, {
12748 + raw: {
12749 + value: Object.freeze(raw)
12750 + }
12751 + }));
12752 +}
12753 +module.exports = _taggedTemplateLiteral, module.exports.__esModule = true, module.exports["default"] = module.exports;
12754 +
12755 +/***/ }),
12756 +
12757 +/***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js":
12758 +/*!*******************************************************************!*\
12759 + !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
12760 + \*******************************************************************/
12761 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12762 +
12763 +var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js");
12764 +var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js");
12765 +var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js");
12766 +var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js");
12767 +function _toConsumableArray(arr) {
12768 + return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
12769 +}
12770 +module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12771 +
12772 +/***/ }),
12773 +
12774 +/***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
12775 +/*!*************************************************************!*\
12776 + !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
12777 + \*************************************************************/
12778 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12779 +
12780 +var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12781 +function toPrimitive(t, r) {
12782 + if ("object" != _typeof(t) || !t) return t;
12783 + var e = t[Symbol.toPrimitive];
12784 + if (void 0 !== e) {
12785 + var i = e.call(t, r || "default");
12786 + if ("object" != _typeof(i)) return i;
12787 + throw new TypeError("@@toPrimitive must return a primitive value.");
12788 + }
12789 + return ("string" === r ? String : Number)(t);
12790 +}
12791 +module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
12792 +
12793 +/***/ }),
12794 +
12795 +/***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
12796 +/*!***************************************************************!*\
12797 + !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
12798 + \***************************************************************/
12799 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12800 +
12801 +var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
12802 +var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
12803 +function toPropertyKey(t) {
12804 + var i = toPrimitive(t, "string");
12805 + return "symbol" == _typeof(i) ? i : String(i);
12806 +}
12807 +module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
12808 +
12809 +/***/ }),
12810 +
12811 +/***/ "../node_modules/@babel/runtime/helpers/typeof.js":
12812 +/*!********************************************************!*\
12813 + !*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
12814 + \********************************************************/
12815 +/***/ ((module) => {
12816 +
12817 +function _typeof(o) {
12818 + "@babel/helpers - typeof";
12819 +
12820 + return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
12821 + return typeof o;
12822 + } : function (o) {
12823 + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
12824 + }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
12825 +}
12826 +module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
12827 +
12828 +/***/ }),
12829 +
12830 +/***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js":
12831 +/*!****************************************************************************!*\
12832 + !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
12833 + \****************************************************************************/
12834 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12835 +
12836 +var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js");
12837 +function _unsupportedIterableToArray(o, minLen) {
12838 + if (!o) return;
12839 + if (typeof o === "string") return arrayLikeToArray(o, minLen);
12840 + var n = Object.prototype.toString.call(o).slice(8, -1);
12841 + if (n === "Object" && o.constructor) n = o.constructor.name;
12842 + if (n === "Map" || n === "Set") return Array.from(o);
12843 + if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
12844 +}
12845 +module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
12846 +
12847 +/***/ }),
12848 +
12849 +/***/ "../node_modules/@babel/runtime/regenerator/index.js":
12850 +/*!***********************************************************!*\
12851 + !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
12852 + \***********************************************************/
12853 +/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12854 +
12855 +// TODO(Babel 8): Remove this file.
12856 +
12857 +var runtime = __webpack_require__(/*! ../helpers/regeneratorRuntime */ "../node_modules/@babel/runtime/helpers/regeneratorRuntime.js")();
12858 +module.exports = runtime;
12859 +
12860 +// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=
12861 +try {
12862 + regeneratorRuntime = runtime;
12863 +} catch (accidentalStrictMode) {
12864 + if (typeof globalThis === "object") {
12865 + globalThis.regeneratorRuntime = runtime;
12866 + } else {
12867 + Function("r", "regeneratorRuntime = r")(runtime);
12868 + }
12869 +}
12870 +
12871 +
12872 +/***/ })
12873 +
12874 +/******/ });
12875 +/************************************************************************/
12876 +/******/ // The module cache
12877 +/******/ var __webpack_module_cache__ = {};
12878 +/******/
12879 +/******/ // The require function
12880 +/******/ function __webpack_require__(moduleId) {
12881 +/******/ // Check if module is in cache
12882 +/******/ var cachedModule = __webpack_module_cache__[moduleId];
12883 +/******/ if (cachedModule !== undefined) {
12884 +/******/ return cachedModule.exports;
12885 +/******/ }
12886 +/******/ // Create a new module (and put it into the cache)
12887 +/******/ var module = __webpack_module_cache__[moduleId] = {
12888 +/******/ // no module.id needed
12889 +/******/ // no module.loaded needed
12890 +/******/ exports: {}
12891 +/******/ };
12892 +/******/
12893 +/******/ // Execute the module function
12894 +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
12895 +/******/
12896 +/******/ // Return the exports of the module
12897 +/******/ return module.exports;
12898 +/******/ }
12899 +/******/
12900 +/************************************************************************/
12901 +/******/ /* webpack/runtime/compat get default export */
12902 +/******/ (() => {
12903 +/******/ // getDefaultExport function for compatibility with non-harmony modules
12904 +/******/ __webpack_require__.n = (module) => {
12905 +/******/ var getter = module && module.__esModule ?
12906 +/******/ () => (module['default']) :
12907 +/******/ () => (module);
12908 +/******/ __webpack_require__.d(getter, { a: getter });
12909 +/******/ return getter;
12910 +/******/ };
12911 +/******/ })();
12912 +/******/
12913 +/******/ /* webpack/runtime/define property getters */
12914 +/******/ (() => {
12915 +/******/ // define getter functions for harmony exports
12916 +/******/ __webpack_require__.d = (exports, definition) => {
12917 +/******/ for(var key in definition) {
12918 +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
12919 +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
12920 +/******/ }
12921 +/******/ }
12922 +/******/ };
12923 +/******/ })();
12924 +/******/
12925 +/******/ /* webpack/runtime/hasOwnProperty shorthand */
12926 +/******/ (() => {
12927 +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
12928 +/******/ })();
12929 +/******/
12930 +/******/ /* webpack/runtime/make namespace object */
12931 +/******/ (() => {
12932 +/******/ // define __esModule on exports
12933 +/******/ __webpack_require__.r = (exports) => {
12934 +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
12935 +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
12936 +/******/ }
12937 +/******/ Object.defineProperty(exports, '__esModule', { value: true });
12938 +/******/ };
12939 +/******/ })();
12940 +/******/
12941 +/******/ /* webpack/runtime/nonce */
12942 +/******/ (() => {
12943 +/******/ __webpack_require__.nc = undefined;
12944 +/******/ })();
12945 +/******/
12946 +/************************************************************************/
12947 +var __webpack_exports__ = {};
12948 +// This entry need to be wrapped in an IIFE because it need to be in strict mode.
12949 +(() => {
12950 +"use strict";
12951 +var exports = __webpack_exports__;
12952 +/*!*******************************************************!*\
12953 + !*** ../modules/ai/assets/js/editor/layout-module.js ***!
12954 + \*******************************************************/
12955 +
12956 +
12957 +var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
12958 +Object.defineProperty(exports, "__esModule", ({
12959 + value: true
12960 +}));
12961 +exports["default"] = exports.AI_ATTACHMENT = void 0;
12962 +var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));
12963 +var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ "../node_modules/@babel/runtime/helpers/asyncToGenerator.js"));
12964 +var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
12965 +var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
12966 +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"));
12967 +var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js"));
12968 +var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js"));
12969 +var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js"));
12970 +var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js"));
12971 +var _aiLayoutBehavior = _interopRequireDefault(__webpack_require__(/*! ./ai-layout-behavior */ "../modules/ai/assets/js/editor/ai-layout-behavior.js"));
12972 +var _editorIntegration = __webpack_require__(/*! ./utils/editor-integration */ "../modules/ai/assets/js/editor/utils/editor-integration.js");
12973 +var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
12974 +var _config = __webpack_require__(/*! ./pages/form-layout/context/config */ "../modules/ai/assets/js/editor/pages/form-layout/context/config.js");
12975 +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"));
12976 +var _attachments = __webpack_require__(/*! ./pages/form-layout/components/attachments */ "../modules/ai/assets/js/editor/pages/form-layout/components/attachments.js");
12977 +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); }; }
12978 +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; } }
12979 +var AI_ATTACHMENT = 'ai-attachment';
12980 +exports.AI_ATTACHMENT = AI_ATTACHMENT;
12981 +var Module = /*#__PURE__*/function (_elementorModules$edi) {
12982 + (0, _inherits2.default)(Module, _elementorModules$edi);
12983 + var _super = _createSuper(Module);
12984 + function Module() {
12985 + var _this;
12986 + (0, _classCallCheck2.default)(this, Module);
12987 + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12988 + args[_key] = arguments[_key];
12989 + }
12990 + _this = _super.call.apply(_super, [this].concat(args));
12991 + (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registerVariationsContextMenu", function (groups, currentElement) {
12992 + var _ElementorAiConfig, _ElementorAiConfig$us;
12993 + var saveGroup = groups.find(function (group) {
12994 + return 'save' === group.name;
12995 + });
12996 + if (!saveGroup) {
12997 + return groups;
12998 + }
12999 + var contextMenu = {
13000 + name: 'ai',
13001 + icon: 'eicon-ai',
13002 + isEnabled: function isEnabled() {
13003 + return 0 !== currentElement.getContainer().children.length;
13004 + },
13005 + title: (0, _i18n.__)('Generate variations with AI', 'elementor'),
13006 + callback: function () {
13007 + var _callback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
13008 + var container, json, attachments;
13009 + return _regenerator.default.wrap(function _callee$(_context) {
13010 + while (1) switch (_context.prev = _context.next) {
13011 + case 0:
13012 + container = currentElement.getContainer();
13013 + json = container.model.toJSON({
13014 + remove: ['default']
13015 + });
13016 + attachments = [{
13017 + type: 'json',
13018 + previewHTML: '',
13019 + content: json,
13020 + label: container.model.get('title'),
13021 + source: _attachments.USER_VARIATION_SOURCE
13022 + }];
13023 + (0, _editorIntegration.renderLayoutApp)({
13024 + parentContainer: container.parent,
13025 + mode: _config.MODE_VARIATION,
13026 + at: container.view._index,
13027 + attachments: attachments,
13028 + onSelect: function onSelect() {
13029 + container.view.$el.hide();
13030 + },
13031 + onClose: function onClose() {
13032 + container.view.$el.show();
13033 + },
13034 + onInsert: function onInsert(template) {
13035 + (0, _editorIntegration.importToEditor)({
13036 + parentContainer: container.parent,
13037 + at: container.view._index,
13038 + template: template,
13039 + historyTitle: (0, _i18n.__)('AI Variation', 'elementor'),
13040 + replace: true
13041 + });
13042 + }
13043 + });
13044 + case 4:
13045 + case "end":
13046 + return _context.stop();
13047 + }
13048 + }, _callee);
13049 + }));
13050 + function callback() {
13051 + return _callback.apply(this, arguments);
13052 + }
13053 + return callback;
13054 + }()
13055 + };
13056 + if (!((_ElementorAiConfig = ElementorAiConfig) !== null && _ElementorAiConfig !== void 0 && (_ElementorAiConfig$us = _ElementorAiConfig.usage) !== null && _ElementorAiConfig$us !== void 0 && _ElementorAiConfig$us.hasAiSubscription)) {
13057 + 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>";
13058 + contextMenu.shortcut = "<div class=\"elementor-context-menu-list__item__ai-badge\">".concat(svg, "</div>");
13059 + }
13060 +
13061 + // Add on top of save group actions
13062 + saveGroup.actions.unshift(contextMenu);
13063 + return groups;
13064 + });
13065 + return _this;
13066 + }
13067 + (0, _createClass2.default)(Module, [{
13068 + key: "onElementorInit",
13069 + value: function onElementorInit() {
13070 + var _this2 = this;
13071 + elementor.hooks.addFilter('views/add-section/behaviors', this.registerAiLayoutBehavior);
13072 + elementor.hooks.addFilter('elements/container/contextMenuGroups', this.registerVariationsContextMenu);
13073 + elementor.hooks.addFilter('elementor/editor/template-library/template/behaviors', this.registerLibraryActionButtonBehavior);
13074 + elementor.hooks.addFilter('elementor/editor/template-library/template/action-button', this.filterLibraryActionButtonTemplate, 11);
13075 + $e.commands.register('library', 'generate-ai-variation', function (args) {
13076 + return _this2.applyTemplate(args);
13077 + });
13078 + }
13079 + }, {
13080 + key: "applyTemplate",
13081 + value: function applyTemplate(args) {
13082 + window.postMessage({
13083 + type: 'library/attach:start'
13084 + });
13085 + $e.components.get('library').downloadTemplate(args, function (data) {
13086 + var model = args.model;
13087 + window.postMessage({
13088 + type: 'library/attach',
13089 + json: data.content[0],
13090 + html: "<img src=\"".concat(model.get('thumbnail'), "\" />"),
13091 + label: "".concat(model.get('template_id'), " - ").concat(model.get('title')),
13092 + source: _attachments.ELEMENTOR_LIBRARY_SOURCE
13093 + }, window.location.origin);
13094 + });
13095 + }
13096 + }, {
13097 + key: "registerLibraryActionButtonBehavior",
13098 + value: function registerLibraryActionButtonBehavior(behaviors) {
13099 + behaviors.applyAiTemplate = {
13100 + behaviorClass: _applyTemplateForAiBehavior.default
13101 + };
13102 + return behaviors;
13103 + }
13104 + }, {
13105 + key: "registerAiLayoutBehavior",
13106 + value: function registerAiLayoutBehavior(behaviors) {
13107 + behaviors.ai = {
13108 + behaviorClass: _aiLayoutBehavior.default,
13109 + context: {
13110 + documentType: window.elementor.documents.getCurrent().config.type
13111 + }
13112 + };
13113 + return behaviors;
13114 + }
13115 + }, {
13116 + key: "filterLibraryActionButtonTemplate",
13117 + value: function filterLibraryActionButtonTemplate(viewId) {
13118 + var modalConfig = $e.components.get('library').manager.modalConfig;
13119 + var originalCoreViewId = '#tmpl-elementor-template-library-insert-button';
13120 + if (originalCoreViewId !== viewId) {
13121 + return viewId;
13122 + }
13123 + if ($e.routes.current.library !== 'library/templates/blocks') {
13124 + return viewId;
13125 + }
13126 + if (AI_ATTACHMENT === modalConfig.mode) {
13127 + viewId = '#tmpl-elementor-template-library-apply-ai-button';
13128 + } else {
13129 + viewId = '#tmpl-elementor-template-library-insert-and-ai-variations-buttons';
13130 + }
13131 + return viewId;
13132 + }
13133 + }]);
13134 + return Module;
13135 +}(elementorModules.editor.utils.Module);
13136 +exports["default"] = Module;
13137 +new Module();
13138 +})();
13139 +
13140 +/******/ })()
13141 +;
8943 13142 //# sourceMappingURL=ai-layout.js.map