RSILauncherEnhance/main.js
2024-10-18 19:23:57 +08:00

67248 lines
3.2 MiB
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*! For license information please see main.d5394d7f.js.LICENSE.txt */
(() => {
const SC_TOOLBOX_ENABLED_LOCALIZATION = "en";
const SC_TOOLBOX_ENABLE_DOWNLOADER_BOOST = false;
var e = {
1114: (e, t, n) => {
"use strict";
var r = n(1479),
i = n(4811);
function a(e) {
for (var t = "https://reactjs.org/docs/error-decoder.html?invariant=" + e, n = 1; n < arguments.length; n++) t += "&args[]=" + encodeURIComponent(arguments[n]);
return "Minified React error #" + e + "; visit " + t + " for the full message or use the non-minified dev environment for full errors and additional helpful warnings."
}
var o = new Set,
s = {};
function l(e, t) {
c(e, t), c(e + "Capture", t)
}
function c(e, t) {
for (s[e] = t, e = 0; e < t.length; e++) o.add(t[e])
}
var u = !("undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement),
d = Object.prototype.hasOwnProperty,
p = /^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,
h = {},
f = {};
function m(e, t, n, r, i, a, o) {
this.acceptsBooleans = 2 === t || 3 === t || 4 === t, this.attributeName = r, this.attributeNamespace = i, this.mustUseProperty = n, this.propertyName = e, this.type = t, this.sanitizeURL = a, this.removeEmptyString = o
}
var g = {};
"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e) {
g[e] = new m(e, 0, !1, e, null, !1, !1)
})), [
["acceptCharset", "accept-charset"],
["className", "class"],
["htmlFor", "for"],
["httpEquiv", "http-equiv"]
].forEach((function(e) {
var t = e[0];
g[t] = new m(t, 1, !1, e[1], null, !1, !1)
})), ["contentEditable", "draggable", "spellCheck", "value"].forEach((function(e) {
g[e] = new m(e, 2, !1, e.toLowerCase(), null, !1, !1)
})), ["autoReverse", "externalResourcesRequired", "focusable", "preserveAlpha"].forEach((function(e) {
g[e] = new m(e, 2, !1, e, null, !1, !1)
})), "allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e) {
g[e] = new m(e, 3, !1, e.toLowerCase(), null, !1, !1)
})), ["checked", "multiple", "muted", "selected"].forEach((function(e) {
g[e] = new m(e, 3, !0, e, null, !1, !1)
})), ["capture", "download"].forEach((function(e) {
g[e] = new m(e, 4, !1, e, null, !1, !1)
})), ["cols", "rows", "size", "span"].forEach((function(e) {
g[e] = new m(e, 6, !1, e, null, !1, !1)
})), ["rowSpan", "start"].forEach((function(e) {
g[e] = new m(e, 5, !1, e.toLowerCase(), null, !1, !1)
}));
var v = /[\-:]([a-z])/g;
function y(e) {
return e[1].toUpperCase()
}
function _(e, t, n, r) {
var i = g.hasOwnProperty(t) ? g[t] : null;
(null !== i ? 0 !== i.type : r || !(2 < t.length) || "o" !== t[0] && "O" !== t[0] || "n" !== t[1] && "N" !== t[1]) && (function(e, t, n, r) {
if (null === t || "undefined" === typeof t || function(e, t, n, r) {
if (null !== n && 0 === n.type) return !1;
switch (typeof t) {
case "function":
case "symbol":
return !0;
case "boolean":
return !r && (null !== n ? !n.acceptsBooleans : "data-" !== (e = e.toLowerCase().slice(0, 5)) && "aria-" !== e);
default:
return !1
}
}(e, t, n, r)) return !0;
if (r) return !1;
if (null !== n) switch (n.type) {
case 3:
return !t;
case 4:
return !1 === t;
case 5:
return isNaN(t);
case 6:
return isNaN(t) || 1 > t
}
return !1
}(t, n, i, r) && (n = null), r || null === i ? function(e) {
return !!d.call(f, e) || !d.call(h, e) && (p.test(e) ? f[e] = !0 : (h[e] = !0, !1))
}(t) && (null === n ? e.removeAttribute(t) : e.setAttribute(t, "" + n)) : i.mustUseProperty ? e[i.propertyName] = null === n ? 3 !== i.type && "" : n : (t = i.attributeName, r = i.attributeNamespace, null === n ? e.removeAttribute(t) : (n = 3 === (i = i.type) || 4 === i && !0 === n ? "" : "" + n, r ? e.setAttributeNS(r, t, n) : e.setAttribute(t, n))))
}
"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e) {
var t = e.replace(v, y);
g[t] = new m(t, 1, !1, e, null, !1, !1)
})), "xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e) {
var t = e.replace(v, y);
g[t] = new m(t, 1, !1, e, "http://www.w3.org/1999/xlink", !1, !1)
})), ["xml:base", "xml:lang", "xml:space"].forEach((function(e) {
var t = e.replace(v, y);
g[t] = new m(t, 1, !1, e, "http://www.w3.org/XML/1998/namespace", !1, !1)
})), ["tabIndex", "crossOrigin"].forEach((function(e) {
g[e] = new m(e, 1, !1, e.toLowerCase(), null, !1, !1)
})), g.xlinkHref = new m("xlinkHref", 1, !1, "xlink:href", "http://www.w3.org/1999/xlink", !0, !1), ["src", "href", "action", "formAction"].forEach((function(e) {
g[e] = new m(e, 1, !1, e.toLowerCase(), null, !0, !0)
}));
var b = r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,
x = Symbol.for("react.element"),
k = Symbol.for("react.portal"),
w = Symbol.for("react.fragment"),
S = Symbol.for("react.strict_mode"),
E = Symbol.for("react.profiler"),
I = Symbol.for("react.provider"),
O = Symbol.for("react.context"),
C = Symbol.for("react.forward_ref"),
A = Symbol.for("react.suspense"),
P = Symbol.for("react.suspense_list"),
T = Symbol.for("react.memo"),
R = Symbol.for("react.lazy");
Symbol.for("react.scope"), Symbol.for("react.debug_trace_mode");
var D = Symbol.for("react.offscreen");
Symbol.for("react.legacy_hidden"), Symbol.for("react.cache"), Symbol.for("react.tracing_marker");
var L = Symbol.iterator;
function N(e) {
return null === e || "object" !== typeof e ? null : "function" === typeof(e = L && e[L] || e["@@iterator"]) ? e : null
}
var M, j = Object.assign;
function F(e) {
if (void 0 === M) try {
throw Error()
} catch (n) {
var t = n.stack.trim().match(/\n( *(at )?)/);
M = t && t[1] || ""
}
return "\n" + M + e
}
var z = !1;
function V(e, t) {
if (!e || z) return "";
z = !0;
var n = Error.prepareStackTrace;
Error.prepareStackTrace = void 0;
try {
if (t)
if (t = function() {
throw Error()
}, Object.defineProperty(t.prototype, "props", {
set: function() {
throw Error()
}
}), "object" === typeof Reflect && Reflect.construct) {
try {
Reflect.construct(t, [])
} catch (c) {
var r = c
}
Reflect.construct(e, [], t)
} else {
try {
t.call()
} catch (c) {
r = c
}
e.call(t.prototype)
}
else {
try {
throw Error()
} catch (c) {
r = c
}
e()
}
} catch (c) {
if (c && r && "string" === typeof c.stack) {
for (var i = c.stack.split("\n"), a = r.stack.split("\n"), o = i.length - 1, s = a.length - 1; 1 <= o && 0 <= s && i[o] !== a[s];) s--;
for (; 1 <= o && 0 <= s; o--, s--)
if (i[o] !== a[s]) {
if (1 !== o || 1 !== s)
do {
if (o--, 0 > --s || i[o] !== a[s]) {
var l = "\n" + i[o].replace(" at new ", " at ");
return e.displayName && l.includes("<anonymous>") && (l = l.replace("<anonymous>", e.displayName)), l
}
} while (1 <= o && 0 <= s);
break
}
}
} finally {
z = !1, Error.prepareStackTrace = n
}
return (e = e ? e.displayName || e.name : "") ? F(e) : ""
}
function U(e) {
switch (e.tag) {
case 5:
return F(e.type);
case 16:
return F("Lazy");
case 13:
return F("Suspense");
case 19:
return F("SuspenseList");
case 0:
case 2:
case 15:
return e = V(e.type, !1);
case 11:
return e = V(e.type.render, !1);
case 1:
return e = V(e.type, !0);
default:
return ""
}
}
function B(e) {
if (null == e) return null;
if ("function" === typeof e) return e.displayName || e.name || null;
if ("string" === typeof e) return e;
switch (e) {
case w:
return "Fragment";
case k:
return "Portal";
case E:
return "Profiler";
case S:
return "StrictMode";
case A:
return "Suspense";
case P:
return "SuspenseList"
}
if ("object" === typeof e) switch (e.$$typeof) {
case O:
return (e.displayName || "Context") + ".Consumer";
case I:
return (e._context.displayName || "Context") + ".Provider";
case C:
var t = e.render;
return (e = e.displayName) || (e = "" !== (e = t.displayName || t.name || "") ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
case T:
return null !== (t = e.displayName || null) ? t : B(e.type) || "Memo";
case R:
t = e._payload, e = e._init;
try {
return B(e(t))
} catch (n) {}
}
return null
}
function G(e) {
var t = e.type;
switch (e.tag) {
case 24:
return "Cache";
case 9:
return (t.displayName || "Context") + ".Consumer";
case 10:
return (t._context.displayName || "Context") + ".Provider";
case 18:
return "DehydratedFragment";
case 11:
return e = (e = t.render).displayName || e.name || "", t.displayName || ("" !== e ? "ForwardRef(" + e + ")" : "ForwardRef");
case 7:
return "Fragment";
case 5:
return t;
case 4:
return "Portal";
case 3:
return "Root";
case 6:
return "Text";
case 16:
return B(t);
case 8:
return t === S ? "StrictMode" : "Mode";
case 22:
return "Offscreen";
case 12:
return "Profiler";
case 21:
return "Scope";
case 13:
return "Suspense";
case 19:
return "SuspenseList";
case 25:
return "TracingMarker";
case 1:
case 0:
case 17:
case 2:
case 14:
case 15:
if ("function" === typeof t) return t.displayName || t.name || null;
if ("string" === typeof t) return t
}
return null
}
function W(e) {
switch (typeof e) {
case "boolean":
case "number":
case "string":
case "undefined":
case "object":
return e;
default:
return ""
}
}
function $(e) {
var t = e.type;
return (e = e.nodeName) && "input" === e.toLowerCase() && ("checkbox" === t || "radio" === t)
}
function q(e) {
e._valueTracker || (e._valueTracker = function(e) {
var t = $(e) ? "checked" : "value",
n = Object.getOwnPropertyDescriptor(e.constructor.prototype, t),
r = "" + e[t];
if (!e.hasOwnProperty(t) && "undefined" !== typeof n && "function" === typeof n.get && "function" === typeof n.set) {
var i = n.get,
a = n.set;
return Object.defineProperty(e, t, {
configurable: !0,
get: function() {
return i.call(this)
},
set: function(e) {
r = "" + e, a.call(this, e)
}
}), Object.defineProperty(e, t, {
enumerable: n.enumerable
}), {
getValue: function() {
return r
},
setValue: function(e) {
r = "" + e
},
stopTracking: function() {
e._valueTracker = null, delete e[t]
}
}
}
}(e))
}
function H(e) {
if (!e) return !1;
var t = e._valueTracker;
if (!t) return !0;
var n = t.getValue(),
r = "";
return e && (r = $(e) ? e.checked ? "true" : "false" : e.value), (e = r) !== n && (t.setValue(e), !0)
}
function K(e) {
if ("undefined" === typeof(e = e || ("undefined" !== typeof document ? document : void 0))) return null;
try {
return e.activeElement || e.body
} catch (t) {
return e.body
}
}
function Y(e, t) {
var n = t.checked;
return j({}, t, {
defaultChecked: void 0,
defaultValue: void 0,
value: void 0,
checked: null != n ? n : e._wrapperState.initialChecked
})
}
function Q(e, t) {
var n = null == t.defaultValue ? "" : t.defaultValue,
r = null != t.checked ? t.checked : t.defaultChecked;
n = W(null != t.value ? t.value : n), e._wrapperState = {
initialChecked: r,
initialValue: n,
controlled: "checkbox" === t.type || "radio" === t.type ? null != t.checked : null != t.value
}
}
function Z(e, t) {
null != (t = t.checked) && _(e, "checked", t, !1)
}
function X(e, t) {
Z(e, t);
var n = W(t.value),
r = t.type;
if (null != n) "number" === r ? (0 === n && "" === e.value || e.value != n) && (e.value = "" + n) : e.value !== "" + n && (e.value = "" + n);
else if ("submit" === r || "reset" === r) return void e.removeAttribute("value");
t.hasOwnProperty("value") ? ee(e, t.type, n) : t.hasOwnProperty("defaultValue") && ee(e, t.type, W(t.defaultValue)), null == t.checked && null != t.defaultChecked && (e.defaultChecked = !!t.defaultChecked)
}
function J(e, t, n) {
if (t.hasOwnProperty("value") || t.hasOwnProperty("defaultValue")) {
var r = t.type;
if (!("submit" !== r && "reset" !== r || void 0 !== t.value && null !== t.value)) return;
t = "" + e._wrapperState.initialValue, n || t === e.value || (e.value = t), e.defaultValue = t
}
"" !== (n = e.name) && (e.name = ""), e.defaultChecked = !!e._wrapperState.initialChecked, "" !== n && (e.name = n)
}
function ee(e, t, n) {
"number" === t && K(e.ownerDocument) === e || (null == n ? e.defaultValue = "" + e._wrapperState.initialValue : e.defaultValue !== "" + n && (e.defaultValue = "" + n))
}
var te = Array.isArray;
function ne(e, t, n, r) {
if (e = e.options, t) {
t = {};
for (var i = 0; i < n.length; i++) t["$" + n[i]] = !0;
for (n = 0; n < e.length; n++) i = t.hasOwnProperty("$" + e[n].value), e[n].selected !== i && (e[n].selected = i), i && r && (e[n].defaultSelected = !0)
} else {
for (n = "" + W(n), t = null, i = 0; i < e.length; i++) {
if (e[i].value === n) return e[i].selected = !0, void(r && (e[i].defaultSelected = !0));
null !== t || e[i].disabled || (t = e[i])
}
null !== t && (t.selected = !0)
}
}
function re(e, t) {
if (null != t.dangerouslySetInnerHTML) throw Error(a(91));
return j({}, t, {
value: void 0,
defaultValue: void 0,
children: "" + e._wrapperState.initialValue
})
}
function ie(e, t) {
var n = t.value;
if (null == n) {
if (n = t.children, t = t.defaultValue, null != n) {
if (null != t) throw Error(a(92));
if (te(n)) {
if (1 < n.length) throw Error(a(93));
n = n[0]
}
t = n
}
null == t && (t = ""), n = t
}
e._wrapperState = {
initialValue: W(n)
}
}
function ae(e, t) {
var n = W(t.value),
r = W(t.defaultValue);
null != n && ((n = "" + n) !== e.value && (e.value = n), null == t.defaultValue && e.defaultValue !== n && (e.defaultValue = n)), null != r && (e.defaultValue = "" + r)
}
function oe(e) {
var t = e.textContent;
t === e._wrapperState.initialValue && "" !== t && null !== t && (e.value = t)
}
function se(e) {
switch (e) {
case "svg":
return "http://www.w3.org/2000/svg";
case "math":
return "http://www.w3.org/1998/Math/MathML";
default:
return "http://www.w3.org/1999/xhtml"
}
}
function le(e, t) {
return null == e || "http://www.w3.org/1999/xhtml" === e ? se(t) : "http://www.w3.org/2000/svg" === e && "foreignObject" === t ? "http://www.w3.org/1999/xhtml" : e
}
var ce, ue, de = (ue = function(e, t) {
if ("http://www.w3.org/2000/svg" !== e.namespaceURI || "innerHTML" in e) e.innerHTML = t;
else {
for ((ce = ce || document.createElement("div")).innerHTML = "<svg>" + t.valueOf().toString() + "</svg>", t = ce.firstChild; e.firstChild;) e.removeChild(e.firstChild);
for (; t.firstChild;) e.appendChild(t.firstChild)
}
}, "undefined" !== typeof MSApp && MSApp.execUnsafeLocalFunction ? function(e, t, n, r) {
MSApp.execUnsafeLocalFunction((function() {
return ue(e, t)
}))
} : ue);
function pe(e, t) {
if (t) {
var n = e.firstChild;
if (n && n === e.lastChild && 3 === n.nodeType) return void(n.nodeValue = t)
}
e.textContent = t
}
var he = {
animationIterationCount: !0,
aspectRatio: !0,
borderImageOutset: !0,
borderImageSlice: !0,
borderImageWidth: !0,
boxFlex: !0,
boxFlexGroup: !0,
boxOrdinalGroup: !0,
columnCount: !0,
columns: !0,
flex: !0,
flexGrow: !0,
flexPositive: !0,
flexShrink: !0,
flexNegative: !0,
flexOrder: !0,
gridArea: !0,
gridRow: !0,
gridRowEnd: !0,
gridRowSpan: !0,
gridRowStart: !0,
gridColumn: !0,
gridColumnEnd: !0,
gridColumnSpan: !0,
gridColumnStart: !0,
fontWeight: !0,
lineClamp: !0,
lineHeight: !0,
opacity: !0,
order: !0,
orphans: !0,
tabSize: !0,
widows: !0,
zIndex: !0,
zoom: !0,
fillOpacity: !0,
floodOpacity: !0,
stopOpacity: !0,
strokeDasharray: !0,
strokeDashoffset: !0,
strokeMiterlimit: !0,
strokeOpacity: !0,
strokeWidth: !0
},
fe = ["Webkit", "ms", "Moz", "O"];
function me(e, t, n) {
return null == t || "boolean" === typeof t || "" === t ? "" : n || "number" !== typeof t || 0 === t || he.hasOwnProperty(e) && he[e] ? ("" + t).trim() : t + "px"
}
function ge(e, t) {
for (var n in e = e.style, t)
if (t.hasOwnProperty(n)) {
var r = 0 === n.indexOf("--"),
i = me(n, t[n], r);
"float" === n && (n = "cssFloat"), r ? e.setProperty(n, i) : e[n] = i
}
}
Object.keys(he).forEach((function(e) {
fe.forEach((function(t) {
t = t + e.charAt(0).toUpperCase() + e.substring(1), he[t] = he[e]
}))
}));
var ve = j({
menuitem: !0
}, {
area: !0,
base: !0,
br: !0,
col: !0,
embed: !0,
hr: !0,
img: !0,
input: !0,
keygen: !0,
link: !0,
meta: !0,
param: !0,
source: !0,
track: !0,
wbr: !0
});
function ye(e, t) {
if (t) {
if (ve[e] && (null != t.children || null != t.dangerouslySetInnerHTML)) throw Error(a(137, e));
if (null != t.dangerouslySetInnerHTML) {
if (null != t.children) throw Error(a(60));
if ("object" !== typeof t.dangerouslySetInnerHTML || !("__html" in t.dangerouslySetInnerHTML)) throw Error(a(61))
}
if (null != t.style && "object" !== typeof t.style) throw Error(a(62))
}
}
function _e(e, t) {
if (-1 === e.indexOf("-")) return "string" === typeof t.is;
switch (e) {
case "annotation-xml":
case "color-profile":
case "font-face":
case "font-face-src":
case "font-face-uri":
case "font-face-format":
case "font-face-name":
case "missing-glyph":
return !1;
default:
return !0
}
}
var be = null;
function xe(e) {
return (e = e.target || e.srcElement || window).correspondingUseElement && (e = e.correspondingUseElement), 3 === e.nodeType ? e.parentNode : e
}
var ke = null,
we = null,
Se = null;
function Ee(e) {
if (e = _i(e)) {
if ("function" !== typeof ke) throw Error(a(280));
var t = e.stateNode;
t && (t = xi(t), ke(e.stateNode, e.type, t))
}
}
function Ie(e) {
we ? Se ? Se.push(e) : Se = [e] : we = e
}
function Oe() {
if (we) {
var e = we,
t = Se;
if (Se = we = null, Ee(e), t)
for (e = 0; e < t.length; e++) Ee(t[e])
}
}
function Ce(e, t) {
return e(t)
}
function Ae() {}
var Pe = !1;
function Te(e, t, n) {
if (Pe) return e(t, n);
Pe = !0;
try {
return Ce(e, t, n)
} finally {
Pe = !1, (null !== we || null !== Se) && (Ae(), Oe())
}
}
function Re(e, t) {
var n = e.stateNode;
if (null === n) return null;
var r = xi(n);
if (null === r) return null;
n = r[t];
e: switch (t) {
case "onClick":
case "onClickCapture":
case "onDoubleClick":
case "onDoubleClickCapture":
case "onMouseDown":
case "onMouseDownCapture":
case "onMouseMove":
case "onMouseMoveCapture":
case "onMouseUp":
case "onMouseUpCapture":
case "onMouseEnter":
(r = !r.disabled) || (r = !("button" === (e = e.type) || "input" === e || "select" === e || "textarea" === e)), e = !r;
break e;
default:
e = !1
}
if (e) return null;
if (n && "function" !== typeof n) throw Error(a(231, t, typeof n));
return n
}
var De = !1;
if (u) try {
var Le = {};
Object.defineProperty(Le, "passive", {
get: function() {
De = !0
}
}), window.addEventListener("test", Le, Le), window.removeEventListener("test", Le, Le)
} catch (ue) {
De = !1
}
function Ne(e, t, n, r, i, a, o, s, l) {
var c = Array.prototype.slice.call(arguments, 3);
try {
t.apply(n, c)
} catch (u) {
this.onError(u)
}
}
var Me = !1,
je = null,
Fe = !1,
ze = null,
Ve = {
onError: function(e) {
Me = !0, je = e
}
};
function Ue(e, t, n, r, i, a, o, s, l) {
Me = !1, je = null, Ne.apply(Ve, arguments)
}
function Be(e) {
var t = e,
n = e;
if (e.alternate)
for (; t.return;) t = t.return;
else {
e = t;
do {
0 !== (4098 & (t = e).flags) && (n = t.return), e = t.return
} while (e)
}
return 3 === t.tag ? n : null
}
function Ge(e) {
if (13 === e.tag) {
var t = e.memoizedState;
if (null === t && (null !== (e = e.alternate) && (t = e.memoizedState)), null !== t) return t.dehydrated
}
return null
}
function We(e) {
if (Be(e) !== e) throw Error(a(188))
}
function $e(e) {
return null !== (e = function(e) {
var t = e.alternate;
if (!t) {
if (null === (t = Be(e))) throw Error(a(188));
return t !== e ? null : e
}
for (var n = e, r = t;;) {
var i = n.return;
if (null === i) break;
var o = i.alternate;
if (null === o) {
if (null !== (r = i.return)) {
n = r;
continue
}
break
}
if (i.child === o.child) {
for (o = i.child; o;) {
if (o === n) return We(i), e;
if (o === r) return We(i), t;
o = o.sibling
}
throw Error(a(188))
}
if (n.return !== r.return) n = i, r = o;
else {
for (var s = !1, l = i.child; l;) {
if (l === n) {
s = !0, n = i, r = o;
break
}
if (l === r) {
s = !0, r = i, n = o;
break
}
l = l.sibling
}
if (!s) {
for (l = o.child; l;) {
if (l === n) {
s = !0, n = o, r = i;
break
}
if (l === r) {
s = !0, r = o, n = i;
break
}
l = l.sibling
}
if (!s) throw Error(a(189))
}
}
if (n.alternate !== r) throw Error(a(190))
}
if (3 !== n.tag) throw Error(a(188));
return n.stateNode.current === n ? e : t
}(e)) ? qe(e) : null
}
function qe(e) {
if (5 === e.tag || 6 === e.tag) return e;
for (e = e.child; null !== e;) {
var t = qe(e);
if (null !== t) return t;
e = e.sibling
}
return null
}
var He = i.unstable_scheduleCallback,
Ke = i.unstable_cancelCallback,
Ye = i.unstable_shouldYield,
Qe = i.unstable_requestPaint,
Ze = i.unstable_now,
Xe = i.unstable_getCurrentPriorityLevel,
Je = i.unstable_ImmediatePriority,
et = i.unstable_UserBlockingPriority,
tt = i.unstable_NormalPriority,
nt = i.unstable_LowPriority,
rt = i.unstable_IdlePriority,
it = null,
at = null;
var ot = Math.clz32 ? Math.clz32 : function(e) {
return e >>>= 0, 0 === e ? 32 : 31 - (st(e) / lt | 0) | 0
},
st = Math.log,
lt = Math.LN2;
var ct = 64,
ut = 4194304;
function dt(e) {
switch (e & -e) {
case 1:
return 1;
case 2:
return 2;
case 4:
return 4;
case 8:
return 8;
case 16:
return 16;
case 32:
return 32;
case 64:
case 128:
case 256:
case 512:
case 1024:
case 2048:
case 4096:
case 8192:
case 16384:
case 32768:
case 65536:
case 131072:
case 262144:
case 524288:
case 1048576:
case 2097152:
return 4194240 & e;
case 4194304:
case 8388608:
case 16777216:
case 33554432:
case 67108864:
return 130023424 & e;
case 134217728:
return 134217728;
case 268435456:
return 268435456;
case 536870912:
return 536870912;
case 1073741824:
return 1073741824;
default:
return e
}
}
function pt(e, t) {
var n = e.pendingLanes;
if (0 === n) return 0;
var r = 0,
i = e.suspendedLanes,
a = e.pingedLanes,
o = 268435455 & n;
if (0 !== o) {
var s = o & ~i;
0 !== s ? r = dt(s) : 0 !== (a &= o) && (r = dt(a))
} else 0 !== (o = n & ~i) ? r = dt(o) : 0 !== a && (r = dt(a));
if (0 === r) return 0;
if (0 !== t && t !== r && 0 === (t & i) && ((i = r & -r) >= (a = t & -t) || 16 === i && 0 !== (4194240 & a))) return t;
if (0 !== (4 & r) && (r |= 16 & n), 0 !== (t = e.entangledLanes))
for (e = e.entanglements, t &= r; 0 < t;) i = 1 << (n = 31 - ot(t)), r |= e[n], t &= ~i;
return r
}
function ht(e, t) {
switch (e) {
case 1:
case 2:
case 4:
return t + 250;
case 8:
case 16:
case 32:
case 64:
case 128:
case 256:
case 512:
case 1024:
case 2048:
case 4096:
case 8192:
case 16384:
case 32768:
case 65536:
case 131072:
case 262144:
case 524288:
case 1048576:
case 2097152:
return t + 5e3;
default:
return -1
}
}
function ft(e) {
return 0 !== (e = -1073741825 & e.pendingLanes) ? e : 1073741824 & e ? 1073741824 : 0
}
function mt() {
var e = ct;
return 0 === (4194240 & (ct <<= 1)) && (ct = 64), e
}
function gt(e) {
for (var t = [], n = 0; 31 > n; n++) t.push(e);
return t
}
function vt(e, t, n) {
e.pendingLanes |= t, 536870912 !== t && (e.suspendedLanes = 0, e.pingedLanes = 0), (e = e.eventTimes)[t = 31 - ot(t)] = n
}
function yt(e, t) {
var n = e.entangledLanes |= t;
for (e = e.entanglements; n;) {
var r = 31 - ot(n),
i = 1 << r;
i & t | e[r] & t && (e[r] |= t), n &= ~i
}
}
var _t = 0;
function bt(e) {
return 1 < (e &= -e) ? 4 < e ? 0 !== (268435455 & e) ? 16 : 536870912 : 4 : 1
}
var xt, kt, wt, St, Et, It = !1,
Ot = [],
Ct = null,
At = null,
Pt = null,
Tt = new Map,
Rt = new Map,
Dt = [],
Lt = "mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");
function Nt(e, t) {
switch (e) {
case "focusin":
case "focusout":
Ct = null;
break;
case "dragenter":
case "dragleave":
At = null;
break;
case "mouseover":
case "mouseout":
Pt = null;
break;
case "pointerover":
case "pointerout":
Tt.delete(t.pointerId);
break;
case "gotpointercapture":
case "lostpointercapture":
Rt.delete(t.pointerId)
}
}
function Mt(e, t, n, r, i, a) {
return null === e || e.nativeEvent !== a ? (e = {
blockedOn: t,
domEventName: n,
eventSystemFlags: r,
nativeEvent: a,
targetContainers: [i]
}, null !== t && (null !== (t = _i(t)) && kt(t)), e) : (e.eventSystemFlags |= r, t = e.targetContainers, null !== i && -1 === t.indexOf(i) && t.push(i), e)
}
function jt(e) {
var t = yi(e.target);
if (null !== t) {
var n = Be(t);
if (null !== n)
if (13 === (t = n.tag)) {
if (null !== (t = Ge(n))) return e.blockedOn = t, void Et(e.priority, (function() {
wt(n)
}))
} else if (3 === t && n.stateNode.current.memoizedState.isDehydrated) return void(e.blockedOn = 3 === n.tag ? n.stateNode.containerInfo : null)
}
e.blockedOn = null
}
function Ft(e) {
if (null !== e.blockedOn) return !1;
for (var t = e.targetContainers; 0 < t.length;) {
var n = Yt(e.domEventName, e.eventSystemFlags, t[0], e.nativeEvent);
if (null !== n) return null !== (t = _i(n)) && kt(t), e.blockedOn = n, !1;
var r = new(n = e.nativeEvent).constructor(n.type, n);
be = r, n.target.dispatchEvent(r), be = null, t.shift()
}
return !0
}
function zt(e, t, n) {
Ft(e) && n.delete(t)
}
function Vt() {
It = !1, null !== Ct && Ft(Ct) && (Ct = null), null !== At && Ft(At) && (At = null), null !== Pt && Ft(Pt) && (Pt = null), Tt.forEach(zt), Rt.forEach(zt)
}
function Ut(e, t) {
e.blockedOn === t && (e.blockedOn = null, It || (It = !0, i.unstable_scheduleCallback(i.unstable_NormalPriority, Vt)))
}
function Bt(e) {
function t(t) {
return Ut(t, e)
}
if (0 < Ot.length) {
Ut(Ot[0], e);
for (var n = 1; n < Ot.length; n++) {
var r = Ot[n];
r.blockedOn === e && (r.blockedOn = null)
}
}
for (null !== Ct && Ut(Ct, e), null !== At && Ut(At, e), null !== Pt && Ut(Pt, e), Tt.forEach(t), Rt.forEach(t), n = 0; n < Dt.length; n++)(r = Dt[n]).blockedOn === e && (r.blockedOn = null);
for (; 0 < Dt.length && null === (n = Dt[0]).blockedOn;) jt(n), null === n.blockedOn && Dt.shift()
}
var Gt = b.ReactCurrentBatchConfig,
Wt = !0;
function $t(e, t, n, r) {
var i = _t,
a = Gt.transition;
Gt.transition = null;
try {
_t = 1, Ht(e, t, n, r)
} finally {
_t = i, Gt.transition = a
}
}
function qt(e, t, n, r) {
var i = _t,
a = Gt.transition;
Gt.transition = null;
try {
_t = 4, Ht(e, t, n, r)
} finally {
_t = i, Gt.transition = a
}
}
function Ht(e, t, n, r) {
if (Wt) {
var i = Yt(e, t, n, r);
if (null === i) Wr(e, t, r, Kt, n), Nt(e, r);
else if (function(e, t, n, r, i) {
switch (t) {
case "focusin":
return Ct = Mt(Ct, e, t, n, r, i), !0;
case "dragenter":
return At = Mt(At, e, t, n, r, i), !0;
case "mouseover":
return Pt = Mt(Pt, e, t, n, r, i), !0;
case "pointerover":
var a = i.pointerId;
return Tt.set(a, Mt(Tt.get(a) || null, e, t, n, r, i)), !0;
case "gotpointercapture":
return a = i.pointerId, Rt.set(a, Mt(Rt.get(a) || null, e, t, n, r, i)), !0
}
return !1
}(i, e, t, n, r)) r.stopPropagation();
else if (Nt(e, r), 4 & t && -1 < Lt.indexOf(e)) {
for (; null !== i;) {
var a = _i(i);
if (null !== a && xt(a), null === (a = Yt(e, t, n, r)) && Wr(e, t, r, Kt, n), a === i) break;
i = a
}
null !== i && r.stopPropagation()
} else Wr(e, t, r, null, n)
}
}
var Kt = null;
function Yt(e, t, n, r) {
if (Kt = null, null !== (e = yi(e = xe(r))))
if (null === (t = Be(e))) e = null;
else if (13 === (n = t.tag)) {
if (null !== (e = Ge(t))) return e;
e = null
} else if (3 === n) {
if (t.stateNode.current.memoizedState.isDehydrated) return 3 === t.tag ? t.stateNode.containerInfo : null;
e = null
} else t !== e && (e = null);
return Kt = e, null
}
function Qt(e) {
switch (e) {
case "cancel":
case "click":
case "close":
case "contextmenu":
case "copy":
case "cut":
case "auxclick":
case "dblclick":
case "dragend":
case "dragstart":
case "drop":
case "focusin":
case "focusout":
case "input":
case "invalid":
case "keydown":
case "keypress":
case "keyup":
case "mousedown":
case "mouseup":
case "paste":
case "pause":
case "play":
case "pointercancel":
case "pointerdown":
case "pointerup":
case "ratechange":
case "reset":
case "resize":
case "seeked":
case "submit":
case "touchcancel":
case "touchend":
case "touchstart":
case "volumechange":
case "change":
case "selectionchange":
case "textInput":
case "compositionstart":
case "compositionend":
case "compositionupdate":
case "beforeblur":
case "afterblur":
case "beforeinput":
case "blur":
case "fullscreenchange":
case "focus":
case "hashchange":
case "popstate":
case "select":
case "selectstart":
return 1;
case "drag":
case "dragenter":
case "dragexit":
case "dragleave":
case "dragover":
case "mousemove":
case "mouseout":
case "mouseover":
case "pointermove":
case "pointerout":
case "pointerover":
case "scroll":
case "toggle":
case "touchmove":
case "wheel":
case "mouseenter":
case "mouseleave":
case "pointerenter":
case "pointerleave":
return 4;
case "message":
switch (Xe()) {
case Je:
return 1;
case et:
return 4;
case tt:
case nt:
return 16;
case rt:
return 536870912;
default:
return 16
}
default:
return 16
}
}
var Zt = null,
Xt = null,
Jt = null;
function en() {
if (Jt) return Jt;
var e, t, n = Xt,
r = n.length,
i = "value" in Zt ? Zt.value : Zt.textContent,
a = i.length;
for (e = 0; e < r && n[e] === i[e]; e++);
var o = r - e;
for (t = 1; t <= o && n[r - t] === i[a - t]; t++);
return Jt = i.slice(e, 1 < t ? 1 - t : void 0)
}
function tn(e) {
var t = e.keyCode;
return "charCode" in e ? 0 === (e = e.charCode) && 13 === t && (e = 13) : e = t, 10 === e && (e = 13), 32 <= e || 13 === e ? e : 0
}
function nn() {
return !0
}
function rn() {
return !1
}
function an(e) {
function t(t, n, r, i, a) {
for (var o in this._reactName = t, this._targetInst = r, this.type = n, this.nativeEvent = i, this.target = a, this.currentTarget = null, e) e.hasOwnProperty(o) && (t = e[o], this[o] = t ? t(i) : i[o]);
return this.isDefaultPrevented = (null != i.defaultPrevented ? i.defaultPrevented : !1 === i.returnValue) ? nn : rn, this.isPropagationStopped = rn, this
}
return j(t.prototype, {
preventDefault: function() {
this.defaultPrevented = !0;
var e = this.nativeEvent;
e && (e.preventDefault ? e.preventDefault() : "unknown" !== typeof e.returnValue && (e.returnValue = !1), this.isDefaultPrevented = nn)
},
stopPropagation: function() {
var e = this.nativeEvent;
e && (e.stopPropagation ? e.stopPropagation() : "unknown" !== typeof e.cancelBubble && (e.cancelBubble = !0), this.isPropagationStopped = nn)
},
persist: function() {},
isPersistent: nn
}), t
}
var on, sn, ln, cn = {
eventPhase: 0,
bubbles: 0,
cancelable: 0,
timeStamp: function(e) {
return e.timeStamp || Date.now()
},
defaultPrevented: 0,
isTrusted: 0
},
un = an(cn),
dn = j({}, cn, {
view: 0,
detail: 0
}),
pn = an(dn),
hn = j({}, dn, {
screenX: 0,
screenY: 0,
clientX: 0,
clientY: 0,
pageX: 0,
pageY: 0,
ctrlKey: 0,
shiftKey: 0,
altKey: 0,
metaKey: 0,
getModifierState: En,
button: 0,
buttons: 0,
relatedTarget: function(e) {
return void 0 === e.relatedTarget ? e.fromElement === e.srcElement ? e.toElement : e.fromElement : e.relatedTarget
},
movementX: function(e) {
return "movementX" in e ? e.movementX : (e !== ln && (ln && "mousemove" === e.type ? (on = e.screenX - ln.screenX, sn = e.screenY - ln.screenY) : sn = on = 0, ln = e), on)
},
movementY: function(e) {
return "movementY" in e ? e.movementY : sn
}
}),
fn = an(hn),
mn = an(j({}, hn, {
dataTransfer: 0
})),
gn = an(j({}, dn, {
relatedTarget: 0
})),
vn = an(j({}, cn, {
animationName: 0,
elapsedTime: 0,
pseudoElement: 0
})),
yn = j({}, cn, {
clipboardData: function(e) {
return "clipboardData" in e ? e.clipboardData : window.clipboardData
}
}),
_n = an(yn),
bn = an(j({}, cn, {
data: 0
})),
xn = {
Esc: "Escape",
Spacebar: " ",
Left: "ArrowLeft",
Up: "ArrowUp",
Right: "ArrowRight",
Down: "ArrowDown",
Del: "Delete",
Win: "OS",
Menu: "ContextMenu",
Apps: "ContextMenu",
Scroll: "ScrollLock",
MozPrintableKey: "Unidentified"
},
kn = {
8: "Backspace",
9: "Tab",
12: "Clear",
13: "Enter",
16: "Shift",
17: "Control",
18: "Alt",
19: "Pause",
20: "CapsLock",
27: "Escape",
32: " ",
33: "PageUp",
34: "PageDown",
35: "End",
36: "Home",
37: "ArrowLeft",
38: "ArrowUp",
39: "ArrowRight",
40: "ArrowDown",
45: "Insert",
46: "Delete",
112: "F1",
113: "F2",
114: "F3",
115: "F4",
116: "F5",
117: "F6",
118: "F7",
119: "F8",
120: "F9",
121: "F10",
122: "F11",
123: "F12",
144: "NumLock",
145: "ScrollLock",
224: "Meta"
},
wn = {
Alt: "altKey",
Control: "ctrlKey",
Meta: "metaKey",
Shift: "shiftKey"
};
function Sn(e) {
var t = this.nativeEvent;
return t.getModifierState ? t.getModifierState(e) : !!(e = wn[e]) && !!t[e]
}
function En() {
return Sn
}
var In = j({}, dn, {
key: function(e) {
if (e.key) {
var t = xn[e.key] || e.key;
if ("Unidentified" !== t) return t
}
return "keypress" === e.type ? 13 === (e = tn(e)) ? "Enter" : String.fromCharCode(e) : "keydown" === e.type || "keyup" === e.type ? kn[e.keyCode] || "Unidentified" : ""
},
code: 0,
location: 0,
ctrlKey: 0,
shiftKey: 0,
altKey: 0,
metaKey: 0,
repeat: 0,
locale: 0,
getModifierState: En,
charCode: function(e) {
return "keypress" === e.type ? tn(e) : 0
},
keyCode: function(e) {
return "keydown" === e.type || "keyup" === e.type ? e.keyCode : 0
},
which: function(e) {
return "keypress" === e.type ? tn(e) : "keydown" === e.type || "keyup" === e.type ? e.keyCode : 0
}
}),
On = an(In),
Cn = an(j({}, hn, {
pointerId: 0,
width: 0,
height: 0,
pressure: 0,
tangentialPressure: 0,
tiltX: 0,
tiltY: 0,
twist: 0,
pointerType: 0,
isPrimary: 0
})),
An = an(j({}, dn, {
touches: 0,
targetTouches: 0,
changedTouches: 0,
altKey: 0,
metaKey: 0,
ctrlKey: 0,
shiftKey: 0,
getModifierState: En
})),
Pn = an(j({}, cn, {
propertyName: 0,
elapsedTime: 0,
pseudoElement: 0
})),
Tn = j({}, hn, {
deltaX: function(e) {
return "deltaX" in e ? e.deltaX : "wheelDeltaX" in e ? -e.wheelDeltaX : 0
},
deltaY: function(e) {
return "deltaY" in e ? e.deltaY : "wheelDeltaY" in e ? -e.wheelDeltaY : "wheelDelta" in e ? -e.wheelDelta : 0
},
deltaZ: 0,
deltaMode: 0
}),
Rn = an(Tn),
Dn = [9, 13, 27, 32],
Ln = u && "CompositionEvent" in window,
Nn = null;
u && "documentMode" in document && (Nn = document.documentMode);
var Mn = u && "TextEvent" in window && !Nn,
jn = u && (!Ln || Nn && 8 < Nn && 11 >= Nn),
Fn = String.fromCharCode(32),
zn = !1;
function Vn(e, t) {
switch (e) {
case "keyup":
return -1 !== Dn.indexOf(t.keyCode);
case "keydown":
return 229 !== t.keyCode;
case "keypress":
case "mousedown":
case "focusout":
return !0;
default:
return !1
}
}
function Un(e) {
return "object" === typeof(e = e.detail) && "data" in e ? e.data : null
}
var Bn = !1;
var Gn = {
color: !0,
date: !0,
datetime: !0,
"datetime-local": !0,
email: !0,
month: !0,
number: !0,
password: !0,
range: !0,
search: !0,
tel: !0,
text: !0,
time: !0,
url: !0,
week: !0
};
function Wn(e) {
var t = e && e.nodeName && e.nodeName.toLowerCase();
return "input" === t ? !!Gn[e.type] : "textarea" === t
}
function $n(e, t, n, r) {
Ie(r), 0 < (t = qr(t, "onChange")).length && (n = new un("onChange", "change", null, n, r), e.push({
event: n,
listeners: t
}))
}
var qn = null,
Hn = null;
function Kn(e) {
Fr(e, 0)
}
function Yn(e) {
if (H(bi(e))) return e
}
function Qn(e, t) {
if ("change" === e) return t
}
var Zn = !1;
if (u) {
var Xn;
if (u) {
var Jn = "oninput" in document;
if (!Jn) {
var er = document.createElement("div");
er.setAttribute("oninput", "return;"), Jn = "function" === typeof er.oninput
}
Xn = Jn
} else Xn = !1;
Zn = Xn && (!document.documentMode || 9 < document.documentMode)
}
function tr() {
qn && (qn.detachEvent("onpropertychange", nr), Hn = qn = null)
}
function nr(e) {
if ("value" === e.propertyName && Yn(Hn)) {
var t = [];
$n(t, Hn, e, xe(e)), Te(Kn, t)
}
}
function rr(e, t, n) {
"focusin" === e ? (tr(), Hn = n, (qn = t).attachEvent("onpropertychange", nr)) : "focusout" === e && tr()
}
function ir(e) {
if ("selectionchange" === e || "keyup" === e || "keydown" === e) return Yn(Hn)
}
function ar(e, t) {
if ("click" === e) return Yn(t)
}
function or(e, t) {
if ("input" === e || "change" === e) return Yn(t)
}
var sr = "function" === typeof Object.is ? Object.is : function(e, t) {
return e === t && (0 !== e || 1 / e === 1 / t) || e !== e && t !== t
};
function lr(e, t) {
if (sr(e, t)) return !0;
if ("object" !== typeof e || null === e || "object" !== typeof t || null === t) return !1;
var n = Object.keys(e),
r = Object.keys(t);
if (n.length !== r.length) return !1;
for (r = 0; r < n.length; r++) {
var i = n[r];
if (!d.call(t, i) || !sr(e[i], t[i])) return !1
}
return !0
}
function cr(e) {
for (; e && e.firstChild;) e = e.firstChild;
return e
}
function ur(e, t) {
var n, r = cr(e);
for (e = 0; r;) {
if (3 === r.nodeType) {
if (n = e + r.textContent.length, e <= t && n >= t) return {
node: r,
offset: t - e
};
e = n
}
e: {
for (; r;) {
if (r.nextSibling) {
r = r.nextSibling;
break e
}
r = r.parentNode
}
r = void 0
}
r = cr(r)
}
}
function dr(e, t) {
return !(!e || !t) && (e === t || (!e || 3 !== e.nodeType) && (t && 3 === t.nodeType ? dr(e, t.parentNode) : "contains" in e ? e.contains(t) : !!e.compareDocumentPosition && !!(16 & e.compareDocumentPosition(t))))
}
function pr() {
for (var e = window, t = K(); t instanceof e.HTMLIFrameElement;) {
try {
var n = "string" === typeof t.contentWindow.location.href
} catch (r) {
n = !1
}
if (!n) break;
t = K((e = t.contentWindow).document)
}
return t
}
function hr(e) {
var t = e && e.nodeName && e.nodeName.toLowerCase();
return t && ("input" === t && ("text" === e.type || "search" === e.type || "tel" === e.type || "url" === e.type || "password" === e.type) || "textarea" === t || "true" === e.contentEditable)
}
function fr(e) {
var t = pr(),
n = e.focusedElem,
r = e.selectionRange;
if (t !== n && n && n.ownerDocument && dr(n.ownerDocument.documentElement, n)) {
if (null !== r && hr(n))
if (t = r.start, void 0 === (e = r.end) && (e = t), "selectionStart" in n) n.selectionStart = t, n.selectionEnd = Math.min(e, n.value.length);
else if ((e = (t = n.ownerDocument || document) && t.defaultView || window).getSelection) {
e = e.getSelection();
var i = n.textContent.length,
a = Math.min(r.start, i);
r = void 0 === r.end ? a : Math.min(r.end, i), !e.extend && a > r && (i = r, r = a, a = i), i = ur(n, a);
var o = ur(n, r);
i && o && (1 !== e.rangeCount || e.anchorNode !== i.node || e.anchorOffset !== i.offset || e.focusNode !== o.node || e.focusOffset !== o.offset) && ((t = t.createRange()).setStart(i.node, i.offset), e.removeAllRanges(), a > r ? (e.addRange(t), e.extend(o.node, o.offset)) : (t.setEnd(o.node, o.offset), e.addRange(t)))
}
for (t = [], e = n; e = e.parentNode;) 1 === e.nodeType && t.push({
element: e,
left: e.scrollLeft,
top: e.scrollTop
});
for ("function" === typeof n.focus && n.focus(), n = 0; n < t.length; n++)(e = t[n]).element.scrollLeft = e.left, e.element.scrollTop = e.top
}
}
var mr = u && "documentMode" in document && 11 >= document.documentMode,
gr = null,
vr = null,
yr = null,
_r = !1;
function br(e, t, n) {
var r = n.window === n ? n.document : 9 === n.nodeType ? n : n.ownerDocument;
_r || null == gr || gr !== K(r) || ("selectionStart" in (r = gr) && hr(r) ? r = {
start: r.selectionStart,
end: r.selectionEnd
} : r = {
anchorNode: (r = (r.ownerDocument && r.ownerDocument.defaultView || window).getSelection()).anchorNode,
anchorOffset: r.anchorOffset,
focusNode: r.focusNode,
focusOffset: r.focusOffset
}, yr && lr(yr, r) || (yr = r, 0 < (r = qr(vr, "onSelect")).length && (t = new un("onSelect", "select", null, t, n), e.push({
event: t,
listeners: r
}), t.target = gr)))
}
function xr(e, t) {
var n = {};
return n[e.toLowerCase()] = t.toLowerCase(), n["Webkit" + e] = "webkit" + t, n["Moz" + e] = "moz" + t, n
}
var kr = {
animationend: xr("Animation", "AnimationEnd"),
animationiteration: xr("Animation", "AnimationIteration"),
animationstart: xr("Animation", "AnimationStart"),
transitionend: xr("Transition", "TransitionEnd")
},
wr = {},
Sr = {};
function Er(e) {
if (wr[e]) return wr[e];
if (!kr[e]) return e;
var t, n = kr[e];
for (t in n)
if (n.hasOwnProperty(t) && t in Sr) return wr[e] = n[t];
return e
}
u && (Sr = document.createElement("div").style, "AnimationEvent" in window || (delete kr.animationend.animation, delete kr.animationiteration.animation, delete kr.animationstart.animation), "TransitionEvent" in window || delete kr.transitionend.transition);
var Ir = Er("animationend"),
Or = Er("animationiteration"),
Cr = Er("animationstart"),
Ar = Er("transitionend"),
Pr = new Map,
Tr = "abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");
function Rr(e, t) {
Pr.set(e, t), l(t, [e])
}
for (var Dr = 0; Dr < Tr.length; Dr++) {
var Lr = Tr[Dr];
Rr(Lr.toLowerCase(), "on" + (Lr[0].toUpperCase() + Lr.slice(1)))
}
Rr(Ir, "onAnimationEnd"), Rr(Or, "onAnimationIteration"), Rr(Cr, "onAnimationStart"), Rr("dblclick", "onDoubleClick"), Rr("focusin", "onFocus"), Rr("focusout", "onBlur"), Rr(Ar, "onTransitionEnd"), c("onMouseEnter", ["mouseout", "mouseover"]), c("onMouseLeave", ["mouseout", "mouseover"]), c("onPointerEnter", ["pointerout", "pointerover"]), c("onPointerLeave", ["pointerout", "pointerover"]), l("onChange", "change click focusin focusout input keydown keyup selectionchange".split(" ")), l("onSelect", "focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")), l("onBeforeInput", ["compositionend", "keypress", "textInput", "paste"]), l("onCompositionEnd", "compositionend focusout keydown keypress keyup mousedown".split(" ")), l("onCompositionStart", "compositionstart focusout keydown keypress keyup mousedown".split(" ")), l("onCompositionUpdate", "compositionupdate focusout keydown keypress keyup mousedown".split(" "));
var Nr = "abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),
Mr = new Set("cancel close invalid load scroll toggle".split(" ").concat(Nr));
function jr(e, t, n) {
var r = e.type || "unknown-event";
e.currentTarget = n,
function(e, t, n, r, i, o, s, l, c) {
if (Ue.apply(this, arguments), Me) {
if (!Me) throw Error(a(198));
var u = je;
Me = !1, je = null, Fe || (Fe = !0, ze = u)
}
}(r, t, void 0, e), e.currentTarget = null
}
function Fr(e, t) {
t = 0 !== (4 & t);
for (var n = 0; n < e.length; n++) {
var r = e[n],
i = r.event;
r = r.listeners;
e: {
var a = void 0;
if (t)
for (var o = r.length - 1; 0 <= o; o--) {
var s = r[o],
l = s.instance,
c = s.currentTarget;
if (s = s.listener, l !== a && i.isPropagationStopped()) break e;
jr(i, s, c), a = l
} else
for (o = 0; o < r.length; o++) {
if (l = (s = r[o]).instance, c = s.currentTarget, s = s.listener, l !== a && i.isPropagationStopped()) break e;
jr(i, s, c), a = l
}
}
}
if (Fe) throw e = ze, Fe = !1, ze = null, e
}
function zr(e, t) {
var n = t[mi];
void 0 === n && (n = t[mi] = new Set);
var r = e + "__bubble";
n.has(r) || (Gr(t, e, 2, !1), n.add(r))
}
function Vr(e, t, n) {
var r = 0;
t && (r |= 4), Gr(n, e, r, t)
}
var Ur = "_reactListening" + Math.random().toString(36).slice(2);
function Br(e) {
if (!e[Ur]) {
e[Ur] = !0, o.forEach((function(t) {
"selectionchange" !== t && (Mr.has(t) || Vr(t, !1, e), Vr(t, !0, e))
}));
var t = 9 === e.nodeType ? e : e.ownerDocument;
null === t || t[Ur] || (t[Ur] = !0, Vr("selectionchange", !1, t))
}
}
function Gr(e, t, n, r) {
switch (Qt(t)) {
case 1:
var i = $t;
break;
case 4:
i = qt;
break;
default:
i = Ht
}
n = i.bind(null, t, n, e), i = void 0, !De || "touchstart" !== t && "touchmove" !== t && "wheel" !== t || (i = !0), r ? void 0 !== i ? e.addEventListener(t, n, {
capture: !0,
passive: i
}) : e.addEventListener(t, n, !0) : void 0 !== i ? e.addEventListener(t, n, {
passive: i
}) : e.addEventListener(t, n, !1)
}
function Wr(e, t, n, r, i) {
var a = r;
if (0 === (1 & t) && 0 === (2 & t) && null !== r) e: for (;;) {
if (null === r) return;
var o = r.tag;
if (3 === o || 4 === o) {
var s = r.stateNode.containerInfo;
if (s === i || 8 === s.nodeType && s.parentNode === i) break;
if (4 === o)
for (o = r.return; null !== o;) {
var l = o.tag;
if ((3 === l || 4 === l) && ((l = o.stateNode.containerInfo) === i || 8 === l.nodeType && l.parentNode === i)) return;
o = o.return
}
for (; null !== s;) {
if (null === (o = yi(s))) return;
if (5 === (l = o.tag) || 6 === l) {
r = a = o;
continue e
}
s = s.parentNode
}
}
r = r.return
}
Te((function() {
var r = a,
i = xe(n),
o = [];
e: {
var s = Pr.get(e);
if (void 0 !== s) {
var l = un,
c = e;
switch (e) {
case "keypress":
if (0 === tn(n)) break e;
case "keydown":
case "keyup":
l = On;
break;
case "focusin":
c = "focus", l = gn;
break;
case "focusout":
c = "blur", l = gn;
break;
case "beforeblur":
case "afterblur":
l = gn;
break;
case "click":
if (2 === n.button) break e;
case "auxclick":
case "dblclick":
case "mousedown":
case "mousemove":
case "mouseup":
case "mouseout":
case "mouseover":
case "contextmenu":
l = fn;
break;
case "drag":
case "dragend":
case "dragenter":
case "dragexit":
case "dragleave":
case "dragover":
case "dragstart":
case "drop":
l = mn;
break;
case "touchcancel":
case "touchend":
case "touchmove":
case "touchstart":
l = An;
break;
case Ir:
case Or:
case Cr:
l = vn;
break;
case Ar:
l = Pn;
break;
case "scroll":
l = pn;
break;
case "wheel":
l = Rn;
break;
case "copy":
case "cut":
case "paste":
l = _n;
break;
case "gotpointercapture":
case "lostpointercapture":
case "pointercancel":
case "pointerdown":
case "pointermove":
case "pointerout":
case "pointerover":
case "pointerup":
l = Cn
}
var u = 0 !== (4 & t),
d = !u && "scroll" === e,
p = u ? null !== s ? s + "Capture" : null : s;
u = [];
for (var h, f = r; null !== f;) {
var m = (h = f).stateNode;
if (5 === h.tag && null !== m && (h = m, null !== p && (null != (m = Re(f, p)) && u.push($r(f, m, h)))), d) break;
f = f.return
}
0 < u.length && (s = new l(s, c, null, n, i), o.push({
event: s,
listeners: u
}))
}
}
if (0 === (7 & t)) {
if (l = "mouseout" === e || "pointerout" === e, (!(s = "mouseover" === e || "pointerover" === e) || n === be || !(c = n.relatedTarget || n.fromElement) || !yi(c) && !c[fi]) && (l || s) && (s = i.window === i ? i : (s = i.ownerDocument) ? s.defaultView || s.parentWindow : window, l ? (l = r, null !== (c = (c = n.relatedTarget || n.toElement) ? yi(c) : null) && (c !== (d = Be(c)) || 5 !== c.tag && 6 !== c.tag) && (c = null)) : (l = null, c = r), l !== c)) {
if (u = fn, m = "onMouseLeave", p = "onMouseEnter", f = "mouse", "pointerout" !== e && "pointerover" !== e || (u = Cn, m = "onPointerLeave", p = "onPointerEnter", f = "pointer"), d = null == l ? s : bi(l), h = null == c ? s : bi(c), (s = new u(m, f + "leave", l, n, i)).target = d, s.relatedTarget = h, m = null, yi(i) === r && ((u = new u(p, f + "enter", c, n, i)).target = h, u.relatedTarget = d, m = u), d = m, l && c) e: {
for (p = c, f = 0, h = u = l; h; h = Hr(h)) f++;
for (h = 0, m = p; m; m = Hr(m)) h++;
for (; 0 < f - h;) u = Hr(u),
f--;
for (; 0 < h - f;) p = Hr(p),
h--;
for (; f--;) {
if (u === p || null !== p && u === p.alternate) break e;
u = Hr(u), p = Hr(p)
}
u = null
}
else u = null;
null !== l && Kr(o, s, l, u, !1), null !== c && null !== d && Kr(o, d, c, u, !0)
}
if ("select" === (l = (s = r ? bi(r) : window).nodeName && s.nodeName.toLowerCase()) || "input" === l && "file" === s.type) var g = Qn;
else if (Wn(s))
if (Zn) g = or;
else {
g = ir;
var v = rr
}
else(l = s.nodeName) && "input" === l.toLowerCase() && ("checkbox" === s.type || "radio" === s.type) && (g = ar);
switch (g && (g = g(e, r)) ? $n(o, g, n, i) : (v && v(e, s, r), "focusout" === e && (v = s._wrapperState) && v.controlled && "number" === s.type && ee(s, "number", s.value)), v = r ? bi(r) : window, e) {
case "focusin":
(Wn(v) || "true" === v.contentEditable) && (gr = v, vr = r, yr = null);
break;
case "focusout":
yr = vr = gr = null;
break;
case "mousedown":
_r = !0;
break;
case "contextmenu":
case "mouseup":
case "dragend":
_r = !1, br(o, n, i);
break;
case "selectionchange":
if (mr) break;
case "keydown":
case "keyup":
br(o, n, i)
}
var y;
if (Ln) e: {
switch (e) {
case "compositionstart":
var _ = "onCompositionStart";
break e;
case "compositionend":
_ = "onCompositionEnd";
break e;
case "compositionupdate":
_ = "onCompositionUpdate";
break e
}
_ = void 0
}
else Bn ? Vn(e, n) && (_ = "onCompositionEnd") : "keydown" === e && 229 === n.keyCode && (_ = "onCompositionStart");
_ && (jn && "ko" !== n.locale && (Bn || "onCompositionStart" !== _ ? "onCompositionEnd" === _ && Bn && (y = en()) : (Xt = "value" in (Zt = i) ? Zt.value : Zt.textContent, Bn = !0)), 0 < (v = qr(r, _)).length && (_ = new bn(_, e, null, n, i), o.push({
event: _,
listeners: v
}), y ? _.data = y : null !== (y = Un(n)) && (_.data = y))), (y = Mn ? function(e, t) {
switch (e) {
case "compositionend":
return Un(t);
case "keypress":
return 32 !== t.which ? null : (zn = !0, Fn);
case "textInput":
return (e = t.data) === Fn && zn ? null : e;
default:
return null
}
}(e, n) : function(e, t) {
if (Bn) return "compositionend" === e || !Ln && Vn(e, t) ? (e = en(), Jt = Xt = Zt = null, Bn = !1, e) : null;
switch (e) {
case "paste":
default:
return null;
case "keypress":
if (!(t.ctrlKey || t.altKey || t.metaKey) || t.ctrlKey && t.altKey) {
if (t.char && 1 < t.char.length) return t.char;
if (t.which) return String.fromCharCode(t.which)
}
return null;
case "compositionend":
return jn && "ko" !== t.locale ? null : t.data
}
}(e, n)) && (0 < (r = qr(r, "onBeforeInput")).length && (i = new bn("onBeforeInput", "beforeinput", null, n, i), o.push({
event: i,
listeners: r
}), i.data = y))
}
Fr(o, t)
}))
}
function $r(e, t, n) {
return {
instance: e,
listener: t,
currentTarget: n
}
}
function qr(e, t) {
for (var n = t + "Capture", r = []; null !== e;) {
var i = e,
a = i.stateNode;
5 === i.tag && null !== a && (i = a, null != (a = Re(e, n)) && r.unshift($r(e, a, i)), null != (a = Re(e, t)) && r.push($r(e, a, i))), e = e.return
}
return r
}
function Hr(e) {
if (null === e) return null;
do {
e = e.return
} while (e && 5 !== e.tag);
return e || null
}
function Kr(e, t, n, r, i) {
for (var a = t._reactName, o = []; null !== n && n !== r;) {
var s = n,
l = s.alternate,
c = s.stateNode;
if (null !== l && l === r) break;
5 === s.tag && null !== c && (s = c, i ? null != (l = Re(n, a)) && o.unshift($r(n, l, s)) : i || null != (l = Re(n, a)) && o.push($r(n, l, s))), n = n.return
}
0 !== o.length && e.push({
event: t,
listeners: o
})
}
var Yr = /\r\n?/g,
Qr = /\u0000|\uFFFD/g;
function Zr(e) {
return ("string" === typeof e ? e : "" + e).replace(Yr, "\n").replace(Qr, "")
}
function Xr(e, t, n) {
if (t = Zr(t), Zr(e) !== t && n) throw Error(a(425))
}
function Jr() {}
var ei = null,
ti = null;
function ni(e, t) {
return "textarea" === e || "noscript" === e || "string" === typeof t.children || "number" === typeof t.children || "object" === typeof t.dangerouslySetInnerHTML && null !== t.dangerouslySetInnerHTML && null != t.dangerouslySetInnerHTML.__html
}
var ri = "function" === typeof setTimeout ? setTimeout : void 0,
ii = "function" === typeof clearTimeout ? clearTimeout : void 0,
ai = "function" === typeof Promise ? Promise : void 0,
oi = "function" === typeof queueMicrotask ? queueMicrotask : "undefined" !== typeof ai ? function(e) {
return ai.resolve(null).then(e).catch(si)
} : ri;
function si(e) {
setTimeout((function() {
throw e
}))
}
function li(e, t) {
var n = t,
r = 0;
do {
var i = n.nextSibling;
if (e.removeChild(n), i && 8 === i.nodeType)
if ("/$" === (n = i.data)) {
if (0 === r) return e.removeChild(i), void Bt(t);
r--
} else "$" !== n && "$?" !== n && "$!" !== n || r++;
n = i
} while (n);
Bt(t)
}
function ci(e) {
for (; null != e; e = e.nextSibling) {
var t = e.nodeType;
if (1 === t || 3 === t) break;
if (8 === t) {
if ("$" === (t = e.data) || "$!" === t || "$?" === t) break;
if ("/$" === t) return null
}
}
return e
}
function ui(e) {
e = e.previousSibling;
for (var t = 0; e;) {
if (8 === e.nodeType) {
var n = e.data;
if ("$" === n || "$!" === n || "$?" === n) {
if (0 === t) return e;
t--
} else "/$" === n && t++
}
e = e.previousSibling
}
return null
}
var di = Math.random().toString(36).slice(2),
pi = "__reactFiber$" + di,
hi = "__reactProps$" + di,
fi = "__reactContainer$" + di,
mi = "__reactEvents$" + di,
gi = "__reactListeners$" + di,
vi = "__reactHandles$" + di;
function yi(e) {
var t = e[pi];
if (t) return t;
for (var n = e.parentNode; n;) {
if (t = n[fi] || n[pi]) {
if (n = t.alternate, null !== t.child || null !== n && null !== n.child)
for (e = ui(e); null !== e;) {
if (n = e[pi]) return n;
e = ui(e)
}
return t
}
n = (e = n).parentNode
}
return null
}
function _i(e) {
return !(e = e[pi] || e[fi]) || 5 !== e.tag && 6 !== e.tag && 13 !== e.tag && 3 !== e.tag ? null : e
}
function bi(e) {
if (5 === e.tag || 6 === e.tag) return e.stateNode;
throw Error(a(33))
}
function xi(e) {
return e[hi] || null
}
var ki = [],
wi = -1;
function Si(e) {
return {
current: e
}
}
function Ei(e) {
0 > wi || (e.current = ki[wi], ki[wi] = null, wi--)
}
function Ii(e, t) {
wi++, ki[wi] = e.current, e.current = t
}
var Oi = {},
Ci = Si(Oi),
Ai = Si(!1),
Pi = Oi;
function Ti(e, t) {
var n = e.type.contextTypes;
if (!n) return Oi;
var r = e.stateNode;
if (r && r.__reactInternalMemoizedUnmaskedChildContext === t) return r.__reactInternalMemoizedMaskedChildContext;
var i, a = {};
for (i in n) a[i] = t[i];
return r && ((e = e.stateNode).__reactInternalMemoizedUnmaskedChildContext = t, e.__reactInternalMemoizedMaskedChildContext = a), a
}
function Ri(e) {
return null !== (e = e.childContextTypes) && void 0 !== e
}
function Di() {
Ei(Ai), Ei(Ci)
}
function Li(e, t, n) {
if (Ci.current !== Oi) throw Error(a(168));
Ii(Ci, t), Ii(Ai, n)
}
function Ni(e, t, n) {
var r = e.stateNode;
if (t = t.childContextTypes, "function" !== typeof r.getChildContext) return n;
for (var i in r = r.getChildContext())
if (!(i in t)) throw Error(a(108, G(e) || "Unknown", i));
return j({}, n, r)
}
function Mi(e) {
return e = (e = e.stateNode) && e.__reactInternalMemoizedMergedChildContext || Oi, Pi = Ci.current, Ii(Ci, e), Ii(Ai, Ai.current), !0
}
function ji(e, t, n) {
var r = e.stateNode;
if (!r) throw Error(a(169));
n ? (e = Ni(e, t, Pi), r.__reactInternalMemoizedMergedChildContext = e, Ei(Ai), Ei(Ci), Ii(Ci, e)) : Ei(Ai), Ii(Ai, n)
}
var Fi = null,
zi = !1,
Vi = !1;
function Ui(e) {
null === Fi ? Fi = [e] : Fi.push(e)
}
function Bi() {
if (!Vi && null !== Fi) {
Vi = !0;
var e = 0,
t = _t;
try {
var n = Fi;
for (_t = 1; e < n.length; e++) {
var r = n[e];
do {
r = r(!0)
} while (null !== r)
}
Fi = null, zi = !1
} catch (i) {
throw null !== Fi && (Fi = Fi.slice(e + 1)), He(Je, Bi), i
} finally {
_t = t, Vi = !1
}
}
return null
}
var Gi = [],
Wi = 0,
$i = null,
qi = 0,
Hi = [],
Ki = 0,
Yi = null,
Qi = 1,
Zi = "";
function Xi(e, t) {
Gi[Wi++] = qi, Gi[Wi++] = $i, $i = e, qi = t
}
function Ji(e, t, n) {
Hi[Ki++] = Qi, Hi[Ki++] = Zi, Hi[Ki++] = Yi, Yi = e;
var r = Qi;
e = Zi;
var i = 32 - ot(r) - 1;
r &= ~(1 << i), n += 1;
var a = 32 - ot(t) + i;
if (30 < a) {
var o = i - i % 5;
a = (r & (1 << o) - 1).toString(32), r >>= o, i -= o, Qi = 1 << 32 - ot(t) + i | n << i | r, Zi = a + e
} else Qi = 1 << a | n << i | r, Zi = e
}
function ea(e) {
null !== e.return && (Xi(e, 1), Ji(e, 1, 0))
}
function ta(e) {
for (; e === $i;) $i = Gi[--Wi], Gi[Wi] = null, qi = Gi[--Wi], Gi[Wi] = null;
for (; e === Yi;) Yi = Hi[--Ki], Hi[Ki] = null, Zi = Hi[--Ki], Hi[Ki] = null, Qi = Hi[--Ki], Hi[Ki] = null
}
var na = null,
ra = null,
ia = !1,
aa = null;
function oa(e, t) {
var n = Tc(5, null, null, 0);
n.elementType = "DELETED", n.stateNode = t, n.return = e, null === (t = e.deletions) ? (e.deletions = [n], e.flags |= 16) : t.push(n)
}
function sa(e, t) {
switch (e.tag) {
case 5:
var n = e.type;
return null !== (t = 1 !== t.nodeType || n.toLowerCase() !== t.nodeName.toLowerCase() ? null : t) && (e.stateNode = t, na = e, ra = ci(t.firstChild), !0);
case 6:
return null !== (t = "" === e.pendingProps || 3 !== t.nodeType ? null : t) && (e.stateNode = t, na = e, ra = null, !0);
case 13:
return null !== (t = 8 !== t.nodeType ? null : t) && (n = null !== Yi ? {
id: Qi,
overflow: Zi
} : null, e.memoizedState = {
dehydrated: t,
treeContext: n,
retryLane: 1073741824
}, (n = Tc(18, null, null, 0)).stateNode = t, n.return = e, e.child = n, na = e, ra = null, !0);
default:
return !1
}
}
function la(e) {
return 0 !== (1 & e.mode) && 0 === (128 & e.flags)
}
function ca(e) {
if (ia) {
var t = ra;
if (t) {
var n = t;
if (!sa(e, t)) {
if (la(e)) throw Error(a(418));
t = ci(n.nextSibling);
var r = na;
t && sa(e, t) ? oa(r, n) : (e.flags = -4097 & e.flags | 2, ia = !1, na = e)
}
} else {
if (la(e)) throw Error(a(418));
e.flags = -4097 & e.flags | 2, ia = !1, na = e
}
}
}
function ua(e) {
for (e = e.return; null !== e && 5 !== e.tag && 3 !== e.tag && 13 !== e.tag;) e = e.return;
na = e
}
function da(e) {
if (e !== na) return !1;
if (!ia) return ua(e), ia = !0, !1;
var t;
if ((t = 3 !== e.tag) && !(t = 5 !== e.tag) && (t = "head" !== (t = e.type) && "body" !== t && !ni(e.type, e.memoizedProps)), t && (t = ra)) {
if (la(e)) throw pa(), Error(a(418));
for (; t;) oa(e, t), t = ci(t.nextSibling)
}
if (ua(e), 13 === e.tag) {
if (!(e = null !== (e = e.memoizedState) ? e.dehydrated : null)) throw Error(a(317));
e: {
for (e = e.nextSibling, t = 0; e;) {
if (8 === e.nodeType) {
var n = e.data;
if ("/$" === n) {
if (0 === t) {
ra = ci(e.nextSibling);
break e
}
t--
} else "$" !== n && "$!" !== n && "$?" !== n || t++
}
e = e.nextSibling
}
ra = null
}
} else ra = na ? ci(e.stateNode.nextSibling) : null;
return !0
}
function pa() {
for (var e = ra; e;) e = ci(e.nextSibling)
}
function ha() {
ra = na = null, ia = !1
}
function fa(e) {
null === aa ? aa = [e] : aa.push(e)
}
var ma = b.ReactCurrentBatchConfig;
function ga(e, t) {
if (e && e.defaultProps) {
for (var n in t = j({}, t), e = e.defaultProps) void 0 === t[n] && (t[n] = e[n]);
return t
}
return t
}
var va = Si(null),
ya = null,
_a = null,
ba = null;
function xa() {
ba = _a = ya = null
}
function ka(e) {
var t = va.current;
Ei(va), e._currentValue = t
}
function wa(e, t, n) {
for (; null !== e;) {
var r = e.alternate;
if ((e.childLanes & t) !== t ? (e.childLanes |= t, null !== r && (r.childLanes |= t)) : null !== r && (r.childLanes & t) !== t && (r.childLanes |= t), e === n) break;
e = e.return
}
}
function Sa(e, t) {
ya = e, ba = _a = null, null !== (e = e.dependencies) && null !== e.firstContext && (0 !== (e.lanes & t) && (bs = !0), e.firstContext = null)
}
function Ea(e) {
var t = e._currentValue;
if (ba !== e)
if (e = {
context: e,
memoizedValue: t,
next: null
}, null === _a) {
if (null === ya) throw Error(a(308));
_a = e, ya.dependencies = {
lanes: 0,
firstContext: e
}
} else _a = _a.next = e;
return t
}
var Ia = null;
function Oa(e) {
null === Ia ? Ia = [e] : Ia.push(e)
}
function Ca(e, t, n, r) {
var i = t.interleaved;
return null === i ? (n.next = n, Oa(t)) : (n.next = i.next, i.next = n), t.interleaved = n, Aa(e, r)
}
function Aa(e, t) {
e.lanes |= t;
var n = e.alternate;
for (null !== n && (n.lanes |= t), n = e, e = e.return; null !== e;) e.childLanes |= t, null !== (n = e.alternate) && (n.childLanes |= t), n = e, e = e.return;
return 3 === n.tag ? n.stateNode : null
}
var Pa = !1;
function Ta(e) {
e.updateQueue = {
baseState: e.memoizedState,
firstBaseUpdate: null,
lastBaseUpdate: null,
shared: {
pending: null,
interleaved: null,
lanes: 0
},
effects: null
}
}
function Ra(e, t) {
e = e.updateQueue, t.updateQueue === e && (t.updateQueue = {
baseState: e.baseState,
firstBaseUpdate: e.firstBaseUpdate,
lastBaseUpdate: e.lastBaseUpdate,
shared: e.shared,
effects: e.effects
})
}
function Da(e, t) {
return {
eventTime: e,
lane: t,
tag: 0,
payload: null,
callback: null,
next: null
}
}
function La(e, t, n) {
var r = e.updateQueue;
if (null === r) return null;
if (r = r.shared, 0 !== (2 & Cl)) {
var i = r.pending;
return null === i ? t.next = t : (t.next = i.next, i.next = t), r.pending = t, Aa(e, n)
}
return null === (i = r.interleaved) ? (t.next = t, Oa(r)) : (t.next = i.next, i.next = t), r.interleaved = t, Aa(e, n)
}
function Na(e, t, n) {
if (null !== (t = t.updateQueue) && (t = t.shared, 0 !== (4194240 & n))) {
var r = t.lanes;
n |= r &= e.pendingLanes, t.lanes = n, yt(e, n)
}
}
function Ma(e, t) {
var n = e.updateQueue,
r = e.alternate;
if (null !== r && n === (r = r.updateQueue)) {
var i = null,
a = null;
if (null !== (n = n.firstBaseUpdate)) {
do {
var o = {
eventTime: n.eventTime,
lane: n.lane,
tag: n.tag,
payload: n.payload,
callback: n.callback,
next: null
};
null === a ? i = a = o : a = a.next = o, n = n.next
} while (null !== n);
null === a ? i = a = t : a = a.next = t
} else i = a = t;
return n = {
baseState: r.baseState,
firstBaseUpdate: i,
lastBaseUpdate: a,
shared: r.shared,
effects: r.effects
}, void(e.updateQueue = n)
}
null === (e = n.lastBaseUpdate) ? n.firstBaseUpdate = t : e.next = t, n.lastBaseUpdate = t
}
function ja(e, t, n, r) {
var i = e.updateQueue;
Pa = !1;
var a = i.firstBaseUpdate,
o = i.lastBaseUpdate,
s = i.shared.pending;
if (null !== s) {
i.shared.pending = null;
var l = s,
c = l.next;
l.next = null, null === o ? a = c : o.next = c, o = l;
var u = e.alternate;
null !== u && ((s = (u = u.updateQueue).lastBaseUpdate) !== o && (null === s ? u.firstBaseUpdate = c : s.next = c, u.lastBaseUpdate = l))
}
if (null !== a) {
var d = i.baseState;
for (o = 0, u = c = l = null, s = a;;) {
var p = s.lane,
h = s.eventTime;
if ((r & p) === p) {
null !== u && (u = u.next = {
eventTime: h,
lane: 0,
tag: s.tag,
payload: s.payload,
callback: s.callback,
next: null
});
e: {
var f = e,
m = s;
switch (p = t, h = n, m.tag) {
case 1:
if ("function" === typeof(f = m.payload)) {
d = f.call(h, d, p);
break e
}
d = f;
break e;
case 3:
f.flags = -65537 & f.flags | 128;
case 0:
if (null === (p = "function" === typeof(f = m.payload) ? f.call(h, d, p) : f) || void 0 === p) break e;
d = j({}, d, p);
break e;
case 2:
Pa = !0
}
}
null !== s.callback && 0 !== s.lane && (e.flags |= 64, null === (p = i.effects) ? i.effects = [s] : p.push(s))
} else h = {
eventTime: h,
lane: p,
tag: s.tag,
payload: s.payload,
callback: s.callback,
next: null
}, null === u ? (c = u = h, l = d) : u = u.next = h, o |= p;
if (null === (s = s.next)) {
if (null === (s = i.shared.pending)) break;
s = (p = s).next, p.next = null, i.lastBaseUpdate = p, i.shared.pending = null
}
}
if (null === u && (l = d), i.baseState = l, i.firstBaseUpdate = c, i.lastBaseUpdate = u, null !== (t = i.shared.interleaved)) {
i = t;
do {
o |= i.lane, i = i.next
} while (i !== t)
} else null === a && (i.shared.lanes = 0);
Ml |= o, e.lanes = o, e.memoizedState = d
}
}
function Fa(e, t, n) {
if (e = t.effects, t.effects = null, null !== e)
for (t = 0; t < e.length; t++) {
var r = e[t],
i = r.callback;
if (null !== i) {
if (r.callback = null, r = n, "function" !== typeof i) throw Error(a(191, i));
i.call(r)
}
}
}
var za = (new r.Component).refs;
function Va(e, t, n, r) {
n = null === (n = n(r, t = e.memoizedState)) || void 0 === n ? t : j({}, t, n), e.memoizedState = n, 0 === e.lanes && (e.updateQueue.baseState = n)
}
var Ua = {
isMounted: function(e) {
return !!(e = e._reactInternals) && Be(e) === e
},
enqueueSetState: function(e, t, n) {
e = e._reactInternals;
var r = ec(),
i = tc(e),
a = Da(r, i);
a.payload = t, void 0 !== n && null !== n && (a.callback = n), null !== (t = La(e, a, i)) && (nc(t, e, i, r), Na(t, e, i))
},
enqueueReplaceState: function(e, t, n) {
e = e._reactInternals;
var r = ec(),
i = tc(e),
a = Da(r, i);
a.tag = 1, a.payload = t, void 0 !== n && null !== n && (a.callback = n), null !== (t = La(e, a, i)) && (nc(t, e, i, r), Na(t, e, i))
},
enqueueForceUpdate: function(e, t) {
e = e._reactInternals;
var n = ec(),
r = tc(e),
i = Da(n, r);
i.tag = 2, void 0 !== t && null !== t && (i.callback = t), null !== (t = La(e, i, r)) && (nc(t, e, r, n), Na(t, e, r))
}
};
function Ba(e, t, n, r, i, a, o) {
return "function" === typeof(e = e.stateNode).shouldComponentUpdate ? e.shouldComponentUpdate(r, a, o) : !t.prototype || !t.prototype.isPureReactComponent || (!lr(n, r) || !lr(i, a))
}
function Ga(e, t, n) {
var r = !1,
i = Oi,
a = t.contextType;
return "object" === typeof a && null !== a ? a = Ea(a) : (i = Ri(t) ? Pi : Ci.current, a = (r = null !== (r = t.contextTypes) && void 0 !== r) ? Ti(e, i) : Oi), t = new t(n, a), e.memoizedState = null !== t.state && void 0 !== t.state ? t.state : null, t.updater = Ua, e.stateNode = t, t._reactInternals = e, r && ((e = e.stateNode).__reactInternalMemoizedUnmaskedChildContext = i, e.__reactInternalMemoizedMaskedChildContext = a), t
}
function Wa(e, t, n, r) {
e = t.state, "function" === typeof t.componentWillReceiveProps && t.componentWillReceiveProps(n, r), "function" === typeof t.UNSAFE_componentWillReceiveProps && t.UNSAFE_componentWillReceiveProps(n, r), t.state !== e && Ua.enqueueReplaceState(t, t.state, null)
}
function $a(e, t, n, r) {
var i = e.stateNode;
i.props = n, i.state = e.memoizedState, i.refs = za, Ta(e);
var a = t.contextType;
"object" === typeof a && null !== a ? i.context = Ea(a) : (a = Ri(t) ? Pi : Ci.current, i.context = Ti(e, a)), i.state = e.memoizedState, "function" === typeof(a = t.getDerivedStateFromProps) && (Va(e, t, a, n), i.state = e.memoizedState), "function" === typeof t.getDerivedStateFromProps || "function" === typeof i.getSnapshotBeforeUpdate || "function" !== typeof i.UNSAFE_componentWillMount && "function" !== typeof i.componentWillMount || (t = i.state, "function" === typeof i.componentWillMount && i.componentWillMount(), "function" === typeof i.UNSAFE_componentWillMount && i.UNSAFE_componentWillMount(), t !== i.state && Ua.enqueueReplaceState(i, i.state, null), ja(e, n, i, r), i.state = e.memoizedState), "function" === typeof i.componentDidMount && (e.flags |= 4194308)
}
function qa(e, t, n) {
if (null !== (e = n.ref) && "function" !== typeof e && "object" !== typeof e) {
if (n._owner) {
if (n = n._owner) {
if (1 !== n.tag) throw Error(a(309));
var r = n.stateNode
}
if (!r) throw Error(a(147, e));
var i = r,
o = "" + e;
return null !== t && null !== t.ref && "function" === typeof t.ref && t.ref._stringRef === o ? t.ref : (t = function(e) {
var t = i.refs;
t === za && (t = i.refs = {}), null === e ? delete t[o] : t[o] = e
}, t._stringRef = o, t)
}
if ("string" !== typeof e) throw Error(a(284));
if (!n._owner) throw Error(a(290, e))
}
return e
}
function Ha(e, t) {
throw e = Object.prototype.toString.call(t), Error(a(31, "[object Object]" === e ? "object with keys {" + Object.keys(t).join(", ") + "}" : e))
}
function Ka(e) {
return (0, e._init)(e._payload)
}
function Ya(e) {
function t(t, n) {
if (e) {
var r = t.deletions;
null === r ? (t.deletions = [n], t.flags |= 16) : r.push(n)
}
}
function n(n, r) {
if (!e) return null;
for (; null !== r;) t(n, r), r = r.sibling;
return null
}
function r(e, t) {
for (e = new Map; null !== t;) null !== t.key ? e.set(t.key, t) : e.set(t.index, t), t = t.sibling;
return e
}
function i(e, t) {
return (e = Dc(e, t)).index = 0, e.sibling = null, e
}
function o(t, n, r) {
return t.index = r, e ? null !== (r = t.alternate) ? (r = r.index) < n ? (t.flags |= 2, n) : r : (t.flags |= 2, n) : (t.flags |= 1048576, n)
}
function s(t) {
return e && null === t.alternate && (t.flags |= 2), t
}
function l(e, t, n, r) {
return null === t || 6 !== t.tag ? ((t = jc(n, e.mode, r)).return = e, t) : ((t = i(t, n)).return = e, t)
}
function c(e, t, n, r) {
var a = n.type;
return a === w ? d(e, t, n.props.children, r, n.key) : null !== t && (t.elementType === a || "object" === typeof a && null !== a && a.$$typeof === R && Ka(a) === t.type) ? ((r = i(t, n.props)).ref = qa(e, t, n), r.return = e, r) : ((r = Lc(n.type, n.key, n.props, null, e.mode, r)).ref = qa(e, t, n), r.return = e, r)
}
function u(e, t, n, r) {
return null === t || 4 !== t.tag || t.stateNode.containerInfo !== n.containerInfo || t.stateNode.implementation !== n.implementation ? ((t = Fc(n, e.mode, r)).return = e, t) : ((t = i(t, n.children || [])).return = e, t)
}
function d(e, t, n, r, a) {
return null === t || 7 !== t.tag ? ((t = Nc(n, e.mode, r, a)).return = e, t) : ((t = i(t, n)).return = e, t)
}
function p(e, t, n) {
if ("string" === typeof t && "" !== t || "number" === typeof t) return (t = jc("" + t, e.mode, n)).return = e, t;
if ("object" === typeof t && null !== t) {
switch (t.$$typeof) {
case x:
return (n = Lc(t.type, t.key, t.props, null, e.mode, n)).ref = qa(e, null, t), n.return = e, n;
case k:
return (t = Fc(t, e.mode, n)).return = e, t;
case R:
return p(e, (0, t._init)(t._payload), n)
}
if (te(t) || N(t)) return (t = Nc(t, e.mode, n, null)).return = e, t;
Ha(e, t)
}
return null
}
function h(e, t, n, r) {
var i = null !== t ? t.key : null;
if ("string" === typeof n && "" !== n || "number" === typeof n) return null !== i ? null : l(e, t, "" + n, r);
if ("object" === typeof n && null !== n) {
switch (n.$$typeof) {
case x:
return n.key === i ? c(e, t, n, r) : null;
case k:
return n.key === i ? u(e, t, n, r) : null;
case R:
return h(e, t, (i = n._init)(n._payload), r)
}
if (te(n) || N(n)) return null !== i ? null : d(e, t, n, r, null);
Ha(e, n)
}
return null
}
function f(e, t, n, r, i) {
if ("string" === typeof r && "" !== r || "number" === typeof r) return l(t, e = e.get(n) || null, "" + r, i);
if ("object" === typeof r && null !== r) {
switch (r.$$typeof) {
case x:
return c(t, e = e.get(null === r.key ? n : r.key) || null, r, i);
case k:
return u(t, e = e.get(null === r.key ? n : r.key) || null, r, i);
case R:
return f(e, t, n, (0, r._init)(r._payload), i)
}
if (te(r) || N(r)) return d(t, e = e.get(n) || null, r, i, null);
Ha(t, r)
}
return null
}
function m(i, a, s, l) {
for (var c = null, u = null, d = a, m = a = 0, g = null; null !== d && m < s.length; m++) {
d.index > m ? (g = d, d = null) : g = d.sibling;
var v = h(i, d, s[m], l);
if (null === v) {
null === d && (d = g);
break
}
e && d && null === v.alternate && t(i, d), a = o(v, a, m), null === u ? c = v : u.sibling = v, u = v, d = g
}
if (m === s.length) return n(i, d), ia && Xi(i, m), c;
if (null === d) {
for (; m < s.length; m++) null !== (d = p(i, s[m], l)) && (a = o(d, a, m), null === u ? c = d : u.sibling = d, u = d);
return ia && Xi(i, m), c
}
for (d = r(i, d); m < s.length; m++) null !== (g = f(d, i, m, s[m], l)) && (e && null !== g.alternate && d.delete(null === g.key ? m : g.key), a = o(g, a, m), null === u ? c = g : u.sibling = g, u = g);
return e && d.forEach((function(e) {
return t(i, e)
})), ia && Xi(i, m), c
}
function g(i, s, l, c) {
var u = N(l);
if ("function" !== typeof u) throw Error(a(150));
if (null == (l = u.call(l))) throw Error(a(151));
for (var d = u = null, m = s, g = s = 0, v = null, y = l.next(); null !== m && !y.done; g++, y = l.next()) {
m.index > g ? (v = m, m = null) : v = m.sibling;
var _ = h(i, m, y.value, c);
if (null === _) {
null === m && (m = v);
break
}
e && m && null === _.alternate && t(i, m), s = o(_, s, g), null === d ? u = _ : d.sibling = _, d = _, m = v
}
if (y.done) return n(i, m), ia && Xi(i, g), u;
if (null === m) {
for (; !y.done; g++, y = l.next()) null !== (y = p(i, y.value, c)) && (s = o(y, s, g), null === d ? u = y : d.sibling = y, d = y);
return ia && Xi(i, g), u
}
for (m = r(i, m); !y.done; g++, y = l.next()) null !== (y = f(m, i, g, y.value, c)) && (e && null !== y.alternate && m.delete(null === y.key ? g : y.key), s = o(y, s, g), null === d ? u = y : d.sibling = y, d = y);
return e && m.forEach((function(e) {
return t(i, e)
})), ia && Xi(i, g), u
}
return function e(r, a, o, l) {
if ("object" === typeof o && null !== o && o.type === w && null === o.key && (o = o.props.children), "object" === typeof o && null !== o) {
switch (o.$$typeof) {
case x:
e: {
for (var c = o.key, u = a; null !== u;) {
if (u.key === c) {
if ((c = o.type) === w) {
if (7 === u.tag) {
n(r, u.sibling), (a = i(u, o.props.children)).return = r, r = a;
break e
}
} else if (u.elementType === c || "object" === typeof c && null !== c && c.$$typeof === R && Ka(c) === u.type) {
n(r, u.sibling), (a = i(u, o.props)).ref = qa(r, u, o), a.return = r, r = a;
break e
}
n(r, u);
break
}
t(r, u), u = u.sibling
}
o.type === w ? ((a = Nc(o.props.children, r.mode, l, o.key)).return = r, r = a) : ((l = Lc(o.type, o.key, o.props, null, r.mode, l)).ref = qa(r, a, o), l.return = r, r = l)
}
return s(r);
case k:
e: {
for (u = o.key; null !== a;) {
if (a.key === u) {
if (4 === a.tag && a.stateNode.containerInfo === o.containerInfo && a.stateNode.implementation === o.implementation) {
n(r, a.sibling), (a = i(a, o.children || [])).return = r, r = a;
break e
}
n(r, a);
break
}
t(r, a), a = a.sibling
}(a = Fc(o, r.mode, l)).return = r,
r = a
}
return s(r);
case R:
return e(r, a, (u = o._init)(o._payload), l)
}
if (te(o)) return m(r, a, o, l);
if (N(o)) return g(r, a, o, l);
Ha(r, o)
}
return "string" === typeof o && "" !== o || "number" === typeof o ? (o = "" + o, null !== a && 6 === a.tag ? (n(r, a.sibling), (a = i(a, o)).return = r, r = a) : (n(r, a), (a = jc(o, r.mode, l)).return = r, r = a), s(r)) : n(r, a)
}
}
var Qa = Ya(!0),
Za = Ya(!1),
Xa = {},
Ja = Si(Xa),
eo = Si(Xa),
to = Si(Xa);
function no(e) {
if (e === Xa) throw Error(a(174));
return e
}
function ro(e, t) {
switch (Ii(to, t), Ii(eo, e), Ii(Ja, Xa), e = t.nodeType) {
case 9:
case 11:
t = (t = t.documentElement) ? t.namespaceURI : le(null, "");
break;
default:
t = le(t = (e = 8 === e ? t.parentNode : t).namespaceURI || null, e = e.tagName)
}
Ei(Ja), Ii(Ja, t)
}
function io() {
Ei(Ja), Ei(eo), Ei(to)
}
function ao(e) {
no(to.current);
var t = no(Ja.current),
n = le(t, e.type);
t !== n && (Ii(eo, e), Ii(Ja, n))
}
function oo(e) {
eo.current === e && (Ei(Ja), Ei(eo))
}
var so = Si(0);
function lo(e) {
for (var t = e; null !== t;) {
if (13 === t.tag) {
var n = t.memoizedState;
if (null !== n && (null === (n = n.dehydrated) || "$?" === n.data || "$!" === n.data)) return t
} else if (19 === t.tag && void 0 !== t.memoizedProps.revealOrder) {
if (0 !== (128 & t.flags)) return t
} else if (null !== t.child) {
t.child.return = t, t = t.child;
continue
}
if (t === e) break;
for (; null === t.sibling;) {
if (null === t.return || t.return === e) return null;
t = t.return
}
t.sibling.return = t.return, t = t.sibling
}
return null
}
var co = [];
function uo() {
for (var e = 0; e < co.length; e++) co[e]._workInProgressVersionPrimary = null;
co.length = 0
}
var po = b.ReactCurrentDispatcher,
ho = b.ReactCurrentBatchConfig,
fo = 0,
mo = null,
go = null,
vo = null,
yo = !1,
_o = !1,
bo = 0,
xo = 0;
function ko() {
throw Error(a(321))
}
function wo(e, t) {
if (null === t) return !1;
for (var n = 0; n < t.length && n < e.length; n++)
if (!sr(e[n], t[n])) return !1;
return !0
}
function So(e, t, n, r, i, o) {
if (fo = o, mo = t, t.memoizedState = null, t.updateQueue = null, t.lanes = 0, po.current = null === e || null === e.memoizedState ? ss : ls, e = n(r, i), _o) {
o = 0;
do {
if (_o = !1, bo = 0, 25 <= o) throw Error(a(301));
o += 1, vo = go = null, t.updateQueue = null, po.current = cs, e = n(r, i)
} while (_o)
}
if (po.current = os, t = null !== go && null !== go.next, fo = 0, vo = go = mo = null, yo = !1, t) throw Error(a(300));
return e
}
function Eo() {
var e = 0 !== bo;
return bo = 0, e
}
function Io() {
var e = {
memoizedState: null,
baseState: null,
baseQueue: null,
queue: null,
next: null
};
return null === vo ? mo.memoizedState = vo = e : vo = vo.next = e, vo
}
function Oo() {
if (null === go) {
var e = mo.alternate;
e = null !== e ? e.memoizedState : null
} else e = go.next;
var t = null === vo ? mo.memoizedState : vo.next;
if (null !== t) vo = t, go = e;
else {
if (null === e) throw Error(a(310));
e = {
memoizedState: (go = e).memoizedState,
baseState: go.baseState,
baseQueue: go.baseQueue,
queue: go.queue,
next: null
}, null === vo ? mo.memoizedState = vo = e : vo = vo.next = e
}
return vo
}
function Co(e, t) {
return "function" === typeof t ? t(e) : t
}
function Ao(e) {
var t = Oo(),
n = t.queue;
if (null === n) throw Error(a(311));
n.lastRenderedReducer = e;
var r = go,
i = r.baseQueue,
o = n.pending;
if (null !== o) {
if (null !== i) {
var s = i.next;
i.next = o.next, o.next = s
}
r.baseQueue = i = o, n.pending = null
}
if (null !== i) {
o = i.next, r = r.baseState;
var l = s = null,
c = null,
u = o;
do {
var d = u.lane;
if ((fo & d) === d) null !== c && (c = c.next = {
lane: 0,
action: u.action,
hasEagerState: u.hasEagerState,
eagerState: u.eagerState,
next: null
}), r = u.hasEagerState ? u.eagerState : e(r, u.action);
else {
var p = {
lane: d,
action: u.action,
hasEagerState: u.hasEagerState,
eagerState: u.eagerState,
next: null
};
null === c ? (l = c = p, s = r) : c = c.next = p, mo.lanes |= d, Ml |= d
}
u = u.next
} while (null !== u && u !== o);
null === c ? s = r : c.next = l, sr(r, t.memoizedState) || (bs = !0), t.memoizedState = r, t.baseState = s, t.baseQueue = c, n.lastRenderedState = r
}
if (null !== (e = n.interleaved)) {
i = e;
do {
o = i.lane, mo.lanes |= o, Ml |= o, i = i.next
} while (i !== e)
} else null === i && (n.lanes = 0);
return [t.memoizedState, n.dispatch]
}
function Po(e) {
var t = Oo(),
n = t.queue;
if (null === n) throw Error(a(311));
n.lastRenderedReducer = e;
var r = n.dispatch,
i = n.pending,
o = t.memoizedState;
if (null !== i) {
n.pending = null;
var s = i = i.next;
do {
o = e(o, s.action), s = s.next
} while (s !== i);
sr(o, t.memoizedState) || (bs = !0), t.memoizedState = o, null === t.baseQueue && (t.baseState = o), n.lastRenderedState = o
}
return [o, r]
}
function To() {}
function Ro(e, t) {
var n = mo,
r = Oo(),
i = t(),
o = !sr(r.memoizedState, i);
if (o && (r.memoizedState = i, bs = !0), r = r.queue, Wo(No.bind(null, n, r, e), [e]), r.getSnapshot !== t || o || null !== vo && 1 & vo.memoizedState.tag) {
if (n.flags |= 2048, zo(9, Lo.bind(null, n, r, i, t), void 0, null), null === Al) throw Error(a(349));
0 !== (30 & fo) || Do(n, t, i)
}
return i
}
function Do(e, t, n) {
e.flags |= 16384, e = {
getSnapshot: t,
value: n
}, null === (t = mo.updateQueue) ? (t = {
lastEffect: null,
stores: null
}, mo.updateQueue = t, t.stores = [e]) : null === (n = t.stores) ? t.stores = [e] : n.push(e)
}
function Lo(e, t, n, r) {
t.value = n, t.getSnapshot = r, Mo(t) && jo(e)
}
function No(e, t, n) {
return n((function() {
Mo(t) && jo(e)
}))
}
function Mo(e) {
var t = e.getSnapshot;
e = e.value;
try {
var n = t();
return !sr(e, n)
} catch (r) {
return !0
}
}
function jo(e) {
var t = Aa(e, 1);
null !== t && nc(t, e, 1, -1)
}
function Fo(e) {
var t = Io();
return "function" === typeof e && (e = e()), t.memoizedState = t.baseState = e, e = {
pending: null,
interleaved: null,
lanes: 0,
dispatch: null,
lastRenderedReducer: Co,
lastRenderedState: e
}, t.queue = e, e = e.dispatch = ns.bind(null, mo, e), [t.memoizedState, e]
}
function zo(e, t, n, r) {
return e = {
tag: e,
create: t,
destroy: n,
deps: r,
next: null
}, null === (t = mo.updateQueue) ? (t = {
lastEffect: null,
stores: null
}, mo.updateQueue = t, t.lastEffect = e.next = e) : null === (n = t.lastEffect) ? t.lastEffect = e.next = e : (r = n.next, n.next = e, e.next = r, t.lastEffect = e), e
}
function Vo() {
return Oo().memoizedState
}
function Uo(e, t, n, r) {
var i = Io();
mo.flags |= e, i.memoizedState = zo(1 | t, n, void 0, void 0 === r ? null : r)
}
function Bo(e, t, n, r) {
var i = Oo();
r = void 0 === r ? null : r;
var a = void 0;
if (null !== go) {
var o = go.memoizedState;
if (a = o.destroy, null !== r && wo(r, o.deps)) return void(i.memoizedState = zo(t, n, a, r))
}
mo.flags |= e, i.memoizedState = zo(1 | t, n, a, r)
}
function Go(e, t) {
return Uo(8390656, 8, e, t)
}
function Wo(e, t) {
return Bo(2048, 8, e, t)
}
function $o(e, t) {
return Bo(4, 2, e, t)
}
function qo(e, t) {
return Bo(4, 4, e, t)
}
function Ho(e, t) {
return "function" === typeof t ? (e = e(), t(e), function() {
t(null)
}) : null !== t && void 0 !== t ? (e = e(), t.current = e, function() {
t.current = null
}) : void 0
}
function Ko(e, t, n) {
return n = null !== n && void 0 !== n ? n.concat([e]) : null, Bo(4, 4, Ho.bind(null, t, e), n)
}
function Yo() {}
function Qo(e, t) {
var n = Oo();
t = void 0 === t ? null : t;
var r = n.memoizedState;
return null !== r && null !== t && wo(t, r[1]) ? r[0] : (n.memoizedState = [e, t], e)
}
function Zo(e, t) {
var n = Oo();
t = void 0 === t ? null : t;
var r = n.memoizedState;
return null !== r && null !== t && wo(t, r[1]) ? r[0] : (e = e(), n.memoizedState = [e, t], e)
}
function Xo(e, t, n) {
return 0 === (21 & fo) ? (e.baseState && (e.baseState = !1, bs = !0), e.memoizedState = n) : (sr(n, t) || (n = mt(), mo.lanes |= n, Ml |= n, e.baseState = !0), t)
}
function Jo(e, t) {
var n = _t;
_t = 0 !== n && 4 > n ? n : 4, e(!0);
var r = ho.transition;
ho.transition = {};
try {
e(!1), t()
} finally {
_t = n, ho.transition = r
}
}
function es() {
return Oo().memoizedState
}
function ts(e, t, n) {
var r = tc(e);
if (n = {
lane: r,
action: n,
hasEagerState: !1,
eagerState: null,
next: null
}, rs(e)) is(t, n);
else if (null !== (n = Ca(e, t, n, r))) {
nc(n, e, r, ec()), as(n, t, r)
}
}
function ns(e, t, n) {
var r = tc(e),
i = {
lane: r,
action: n,
hasEagerState: !1,
eagerState: null,
next: null
};
if (rs(e)) is(t, i);
else {
var a = e.alternate;
if (0 === e.lanes && (null === a || 0 === a.lanes) && null !== (a = t.lastRenderedReducer)) try {
var o = t.lastRenderedState,
s = a(o, n);
if (i.hasEagerState = !0, i.eagerState = s, sr(s, o)) {
var l = t.interleaved;
return null === l ? (i.next = i, Oa(t)) : (i.next = l.next, l.next = i), void(t.interleaved = i)
}
} catch (c) {}
null !== (n = Ca(e, t, i, r)) && (nc(n, e, r, i = ec()), as(n, t, r))
}
}
function rs(e) {
var t = e.alternate;
return e === mo || null !== t && t === mo
}
function is(e, t) {
_o = yo = !0;
var n = e.pending;
null === n ? t.next = t : (t.next = n.next, n.next = t), e.pending = t
}
function as(e, t, n) {
if (0 !== (4194240 & n)) {
var r = t.lanes;
n |= r &= e.pendingLanes, t.lanes = n, yt(e, n)
}
}
var os = {
readContext: Ea,
useCallback: ko,
useContext: ko,
useEffect: ko,
useImperativeHandle: ko,
useInsertionEffect: ko,
useLayoutEffect: ko,
useMemo: ko,
useReducer: ko,
useRef: ko,
useState: ko,
useDebugValue: ko,
useDeferredValue: ko,
useTransition: ko,
useMutableSource: ko,
useSyncExternalStore: ko,
useId: ko,
unstable_isNewReconciler: !1
},
ss = {
readContext: Ea,
useCallback: function(e, t) {
return Io().memoizedState = [e, void 0 === t ? null : t], e
},
useContext: Ea,
useEffect: Go,
useImperativeHandle: function(e, t, n) {
return n = null !== n && void 0 !== n ? n.concat([e]) : null, Uo(4194308, 4, Ho.bind(null, t, e), n)
},
useLayoutEffect: function(e, t) {
return Uo(4194308, 4, e, t)
},
useInsertionEffect: function(e, t) {
return Uo(4, 2, e, t)
},
useMemo: function(e, t) {
var n = Io();
return t = void 0 === t ? null : t, e = e(), n.memoizedState = [e, t], e
},
useReducer: function(e, t, n) {
var r = Io();
return t = void 0 !== n ? n(t) : t, r.memoizedState = r.baseState = t, e = {
pending: null,
interleaved: null,
lanes: 0,
dispatch: null,
lastRenderedReducer: e,
lastRenderedState: t
}, r.queue = e, e = e.dispatch = ts.bind(null, mo, e), [r.memoizedState, e]
},
useRef: function(e) {
return e = {
current: e
}, Io().memoizedState = e
},
useState: Fo,
useDebugValue: Yo,
useDeferredValue: function(e) {
return Io().memoizedState = e
},
useTransition: function() {
var e = Fo(!1),
t = e[0];
return e = Jo.bind(null, e[1]), Io().memoizedState = e, [t, e]
},
useMutableSource: function() {},
useSyncExternalStore: function(e, t, n) {
var r = mo,
i = Io();
if (ia) {
if (void 0 === n) throw Error(a(407));
n = n()
} else {
if (n = t(), null === Al) throw Error(a(349));
0 !== (30 & fo) || Do(r, t, n)
}
i.memoizedState = n;
var o = {
value: n,
getSnapshot: t
};
return i.queue = o, Go(No.bind(null, r, o, e), [e]), r.flags |= 2048, zo(9, Lo.bind(null, r, o, n, t), void 0, null), n
},
useId: function() {
var e = Io(),
t = Al.identifierPrefix;
if (ia) {
var n = Zi;
t = ":" + t + "R" + (n = (Qi & ~(1 << 32 - ot(Qi) - 1)).toString(32) + n), 0 < (n = bo++) && (t += "H" + n.toString(32)), t += ":"
} else t = ":" + t + "r" + (n = xo++).toString(32) + ":";
return e.memoizedState = t
},
unstable_isNewReconciler: !1
},
ls = {
readContext: Ea,
useCallback: Qo,
useContext: Ea,
useEffect: Wo,
useImperativeHandle: Ko,
useInsertionEffect: $o,
useLayoutEffect: qo,
useMemo: Zo,
useReducer: Ao,
useRef: Vo,
useState: function() {
return Ao(Co)
},
useDebugValue: Yo,
useDeferredValue: function(e) {
return Xo(Oo(), go.memoizedState, e)
},
useTransition: function() {
return [Ao(Co)[0], Oo().memoizedState]
},
useMutableSource: To,
useSyncExternalStore: Ro,
useId: es,
unstable_isNewReconciler: !1
},
cs = {
readContext: Ea,
useCallback: Qo,
useContext: Ea,
useEffect: Wo,
useImperativeHandle: Ko,
useInsertionEffect: $o,
useLayoutEffect: qo,
useMemo: Zo,
useReducer: Po,
useRef: Vo,
useState: function() {
return Po(Co)
},
useDebugValue: Yo,
useDeferredValue: function(e) {
var t = Oo();
return null === go ? t.memoizedState = e : Xo(t, go.memoizedState, e)
},
useTransition: function() {
return [Po(Co)[0], Oo().memoizedState]
},
useMutableSource: To,
useSyncExternalStore: Ro,
useId: es,
unstable_isNewReconciler: !1
};
function us(e, t) {
try {
var n = "",
r = t;
do {
n += U(r), r = r.return
} while (r);
var i = n
} catch (a) {
i = "\nError generating stack: " + a.message + "\n" + a.stack
}
return {
value: e,
source: t,
stack: i,
digest: null
}
}
function ds(e, t, n) {
return {
value: e,
source: null,
stack: null != n ? n : null,
digest: null != t ? t : null
}
}
function ps(e, t) {
try {
console.error(t.value)
} catch (n) {
setTimeout((function() {
throw n
}))
}
}
var hs = "function" === typeof WeakMap ? WeakMap : Map;
function fs(e, t, n) {
(n = Da(-1, n)).tag = 3, n.payload = {
element: null
};
var r = t.value;
return n.callback = function() {
Wl || (Wl = !0, $l = r), ps(0, t)
}, n
}
function ms(e, t, n) {
(n = Da(-1, n)).tag = 3;
var r = e.type.getDerivedStateFromError;
if ("function" === typeof r) {
var i = t.value;
n.payload = function() {
return r(i)
}, n.callback = function() {
ps(0, t)
}
}
var a = e.stateNode;
return null !== a && "function" === typeof a.componentDidCatch && (n.callback = function() {
ps(0, t), "function" !== typeof r && (null === ql ? ql = new Set([this]) : ql.add(this));
var e = t.stack;
this.componentDidCatch(t.value, {
componentStack: null !== e ? e : ""
})
}), n
}
function gs(e, t, n) {
var r = e.pingCache;
if (null === r) {
r = e.pingCache = new hs;
var i = new Set;
r.set(t, i)
} else void 0 === (i = r.get(t)) && (i = new Set, r.set(t, i));
i.has(n) || (i.add(n), e = Ec.bind(null, e, t, n), t.then(e, e))
}
function vs(e) {
do {
var t;
if ((t = 13 === e.tag) && (t = null === (t = e.memoizedState) || null !== t.dehydrated), t) return e;
e = e.return
} while (null !== e);
return null
}
function ys(e, t, n, r, i) {
return 0 === (1 & e.mode) ? (e === t ? e.flags |= 65536 : (e.flags |= 128, n.flags |= 131072, n.flags &= -52805, 1 === n.tag && (null === n.alternate ? n.tag = 17 : ((t = Da(-1, 1)).tag = 2, La(n, t, 1))), n.lanes |= 1), e) : (e.flags |= 65536, e.lanes = i, e)
}
var _s = b.ReactCurrentOwner,
bs = !1;
function xs(e, t, n, r) {
t.child = null === e ? Za(t, null, n, r) : Qa(t, e.child, n, r)
}
function ks(e, t, n, r, i) {
n = n.render;
var a = t.ref;
return Sa(t, i), r = So(e, t, n, r, a, i), n = Eo(), null === e || bs ? (ia && n && ea(t), t.flags |= 1, xs(e, t, r, i), t.child) : (t.updateQueue = e.updateQueue, t.flags &= -2053, e.lanes &= ~i, Ws(e, t, i))
}
function ws(e, t, n, r, i) {
if (null === e) {
var a = n.type;
return "function" !== typeof a || Rc(a) || void 0 !== a.defaultProps || null !== n.compare || void 0 !== n.defaultProps ? ((e = Lc(n.type, null, r, t, t.mode, i)).ref = t.ref, e.return = t, t.child = e) : (t.tag = 15, t.type = a, Ss(e, t, a, r, i))
}
if (a = e.child, 0 === (e.lanes & i)) {
var o = a.memoizedProps;
if ((n = null !== (n = n.compare) ? n : lr)(o, r) && e.ref === t.ref) return Ws(e, t, i)
}
return t.flags |= 1, (e = Dc(a, r)).ref = t.ref, e.return = t, t.child = e
}
function Ss(e, t, n, r, i) {
if (null !== e) {
var a = e.memoizedProps;
if (lr(a, r) && e.ref === t.ref) {
if (bs = !1, t.pendingProps = r = a, 0 === (e.lanes & i)) return t.lanes = e.lanes, Ws(e, t, i);
0 !== (131072 & e.flags) && (bs = !0)
}
}
return Os(e, t, n, r, i)
}
function Es(e, t, n) {
var r = t.pendingProps,
i = r.children,
a = null !== e ? e.memoizedState : null;
if ("hidden" === r.mode)
if (0 === (1 & t.mode)) t.memoizedState = {
baseLanes: 0,
cachePool: null,
transitions: null
}, Ii(Dl, Rl), Rl |= n;
else {
if (0 === (1073741824 & n)) return e = null !== a ? a.baseLanes | n : n, t.lanes = t.childLanes = 1073741824, t.memoizedState = {
baseLanes: e,
cachePool: null,
transitions: null
}, t.updateQueue = null, Ii(Dl, Rl), Rl |= e, null;
t.memoizedState = {
baseLanes: 0,
cachePool: null,
transitions: null
}, r = null !== a ? a.baseLanes : n, Ii(Dl, Rl), Rl |= r
}
else null !== a ? (r = a.baseLanes | n, t.memoizedState = null) : r = n, Ii(Dl, Rl), Rl |= r;
return xs(e, t, i, n), t.child
}
function Is(e, t) {
var n = t.ref;
(null === e && null !== n || null !== e && e.ref !== n) && (t.flags |= 512, t.flags |= 2097152)
}
function Os(e, t, n, r, i) {
var a = Ri(n) ? Pi : Ci.current;
return a = Ti(t, a), Sa(t, i), n = So(e, t, n, r, a, i), r = Eo(), null === e || bs ? (ia && r && ea(t), t.flags |= 1, xs(e, t, n, i), t.child) : (t.updateQueue = e.updateQueue, t.flags &= -2053, e.lanes &= ~i, Ws(e, t, i))
}
function Cs(e, t, n, r, i) {
if (Ri(n)) {
var a = !0;
Mi(t)
} else a = !1;
if (Sa(t, i), null === t.stateNode) Gs(e, t), Ga(t, n, r), $a(t, n, r, i), r = !0;
else if (null === e) {
var o = t.stateNode,
s = t.memoizedProps;
o.props = s;
var l = o.context,
c = n.contextType;
"object" === typeof c && null !== c ? c = Ea(c) : c = Ti(t, c = Ri(n) ? Pi : Ci.current);
var u = n.getDerivedStateFromProps,
d = "function" === typeof u || "function" === typeof o.getSnapshotBeforeUpdate;
d || "function" !== typeof o.UNSAFE_componentWillReceiveProps && "function" !== typeof o.componentWillReceiveProps || (s !== r || l !== c) && Wa(t, o, r, c), Pa = !1;
var p = t.memoizedState;
o.state = p, ja(t, r, o, i), l = t.memoizedState, s !== r || p !== l || Ai.current || Pa ? ("function" === typeof u && (Va(t, n, u, r), l = t.memoizedState), (s = Pa || Ba(t, n, s, r, p, l, c)) ? (d || "function" !== typeof o.UNSAFE_componentWillMount && "function" !== typeof o.componentWillMount || ("function" === typeof o.componentWillMount && o.componentWillMount(), "function" === typeof o.UNSAFE_componentWillMount && o.UNSAFE_componentWillMount()), "function" === typeof o.componentDidMount && (t.flags |= 4194308)) : ("function" === typeof o.componentDidMount && (t.flags |= 4194308), t.memoizedProps = r, t.memoizedState = l), o.props = r, o.state = l, o.context = c, r = s) : ("function" === typeof o.componentDidMount && (t.flags |= 4194308), r = !1)
} else {
o = t.stateNode, Ra(e, t), s = t.memoizedProps, c = t.type === t.elementType ? s : ga(t.type, s), o.props = c, d = t.pendingProps, p = o.context, "object" === typeof(l = n.contextType) && null !== l ? l = Ea(l) : l = Ti(t, l = Ri(n) ? Pi : Ci.current);
var h = n.getDerivedStateFromProps;
(u = "function" === typeof h || "function" === typeof o.getSnapshotBeforeUpdate) || "function" !== typeof o.UNSAFE_componentWillReceiveProps && "function" !== typeof o.componentWillReceiveProps || (s !== d || p !== l) && Wa(t, o, r, l), Pa = !1, p = t.memoizedState, o.state = p, ja(t, r, o, i);
var f = t.memoizedState;
s !== d || p !== f || Ai.current || Pa ? ("function" === typeof h && (Va(t, n, h, r), f = t.memoizedState), (c = Pa || Ba(t, n, c, r, p, f, l) || !1) ? (u || "function" !== typeof o.UNSAFE_componentWillUpdate && "function" !== typeof o.componentWillUpdate || ("function" === typeof o.componentWillUpdate && o.componentWillUpdate(r, f, l), "function" === typeof o.UNSAFE_componentWillUpdate && o.UNSAFE_componentWillUpdate(r, f, l)), "function" === typeof o.componentDidUpdate && (t.flags |= 4), "function" === typeof o.getSnapshotBeforeUpdate && (t.flags |= 1024)) : ("function" !== typeof o.componentDidUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 4), "function" !== typeof o.getSnapshotBeforeUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 1024), t.memoizedProps = r, t.memoizedState = f), o.props = r, o.state = f, o.context = l, r = c) : ("function" !== typeof o.componentDidUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 4), "function" !== typeof o.getSnapshotBeforeUpdate || s === e.memoizedProps && p === e.memoizedState || (t.flags |= 1024), r = !1)
}
return As(e, t, n, r, a, i)
}
function As(e, t, n, r, i, a) {
Is(e, t);
var o = 0 !== (128 & t.flags);
if (!r && !o) return i && ji(t, n, !1), Ws(e, t, a);
r = t.stateNode, _s.current = t;
var s = o && "function" !== typeof n.getDerivedStateFromError ? null : r.render();
return t.flags |= 1, null !== e && o ? (t.child = Qa(t, e.child, null, a), t.child = Qa(t, null, s, a)) : xs(e, t, s, a), t.memoizedState = r.state, i && ji(t, n, !0), t.child
}
function Ps(e) {
var t = e.stateNode;
t.pendingContext ? Li(0, t.pendingContext, t.pendingContext !== t.context) : t.context && Li(0, t.context, !1), ro(e, t.containerInfo)
}
function Ts(e, t, n, r, i) {
return ha(), fa(i), t.flags |= 256, xs(e, t, n, r), t.child
}
var Rs, Ds, Ls, Ns = {
dehydrated: null,
treeContext: null,
retryLane: 0
};
function Ms(e) {
return {
baseLanes: e,
cachePool: null,
transitions: null
}
}
function js(e, t, n) {
var r, i = t.pendingProps,
o = so.current,
s = !1,
l = 0 !== (128 & t.flags);
if ((r = l) || (r = (null === e || null !== e.memoizedState) && 0 !== (2 & o)), r ? (s = !0, t.flags &= -129) : null !== e && null === e.memoizedState || (o |= 1), Ii(so, 1 & o), null === e) return ca(t), null !== (e = t.memoizedState) && null !== (e = e.dehydrated) ? (0 === (1 & t.mode) ? t.lanes = 1 : "$!" === e.data ? t.lanes = 8 : t.lanes = 1073741824, null) : (l = i.children, e = i.fallback, s ? (i = t.mode, s = t.child, l = {
mode: "hidden",
children: l
}, 0 === (1 & i) && null !== s ? (s.childLanes = 0, s.pendingProps = l) : s = Mc(l, i, 0, null), e = Nc(e, i, n, null), s.return = t, e.return = t, s.sibling = e, t.child = s, t.child.memoizedState = Ms(n), t.memoizedState = Ns, e) : Fs(t, l));
if (null !== (o = e.memoizedState) && null !== (r = o.dehydrated)) return function(e, t, n, r, i, o, s) {
if (n) return 256 & t.flags ? (t.flags &= -257, zs(e, t, s, r = ds(Error(a(422))))) : null !== t.memoizedState ? (t.child = e.child, t.flags |= 128, null) : (o = r.fallback, i = t.mode, r = Mc({
mode: "visible",
children: r.children
}, i, 0, null), (o = Nc(o, i, s, null)).flags |= 2, r.return = t, o.return = t, r.sibling = o, t.child = r, 0 !== (1 & t.mode) && Qa(t, e.child, null, s), t.child.memoizedState = Ms(s), t.memoizedState = Ns, o);
if (0 === (1 & t.mode)) return zs(e, t, s, null);
if ("$!" === i.data) {
if (r = i.nextSibling && i.nextSibling.dataset) var l = r.dgst;
return r = l, zs(e, t, s, r = ds(o = Error(a(419)), r, void 0))
}
if (l = 0 !== (s & e.childLanes), bs || l) {
if (null !== (r = Al)) {
switch (s & -s) {
case 4:
i = 2;
break;
case 16:
i = 8;
break;
case 64:
case 128:
case 256:
case 512:
case 1024:
case 2048:
case 4096:
case 8192:
case 16384:
case 32768:
case 65536:
case 131072:
case 262144:
case 524288:
case 1048576:
case 2097152:
case 4194304:
case 8388608:
case 16777216:
case 33554432:
case 67108864:
i = 32;
break;
case 536870912:
i = 268435456;
break;
default:
i = 0
}
0 !== (i = 0 !== (i & (r.suspendedLanes | s)) ? 0 : i) && i !== o.retryLane && (o.retryLane = i, Aa(e, i), nc(r, e, i, -1))
}
return mc(), zs(e, t, s, r = ds(Error(a(421))))
}
return "$?" === i.data ? (t.flags |= 128, t.child = e.child, t = Oc.bind(null, e), i._reactRetry = t, null) : (e = o.treeContext, ra = ci(i.nextSibling), na = t, ia = !0, aa = null, null !== e && (Hi[Ki++] = Qi, Hi[Ki++] = Zi, Hi[Ki++] = Yi, Qi = e.id, Zi = e.overflow, Yi = t), t = Fs(t, r.children), t.flags |= 4096, t)
}(e, t, l, i, r, o, n);
if (s) {
s = i.fallback, l = t.mode, r = (o = e.child).sibling;
var c = {
mode: "hidden",
children: i.children
};
return 0 === (1 & l) && t.child !== o ? ((i = t.child).childLanes = 0, i.pendingProps = c, t.deletions = null) : (i = Dc(o, c)).subtreeFlags = 14680064 & o.subtreeFlags, null !== r ? s = Dc(r, s) : (s = Nc(s, l, n, null)).flags |= 2, s.return = t, i.return = t, i.sibling = s, t.child = i, i = s, s = t.child, l = null === (l = e.child.memoizedState) ? Ms(n) : {
baseLanes: l.baseLanes | n,
cachePool: null,
transitions: l.transitions
}, s.memoizedState = l, s.childLanes = e.childLanes & ~n, t.memoizedState = Ns, i
}
return e = (s = e.child).sibling, i = Dc(s, {
mode: "visible",
children: i.children
}), 0 === (1 & t.mode) && (i.lanes = n), i.return = t, i.sibling = null, null !== e && (null === (n = t.deletions) ? (t.deletions = [e], t.flags |= 16) : n.push(e)), t.child = i, t.memoizedState = null, i
}
function Fs(e, t) {
return (t = Mc({
mode: "visible",
children: t
}, e.mode, 0, null)).return = e, e.child = t
}
function zs(e, t, n, r) {
return null !== r && fa(r), Qa(t, e.child, null, n), (e = Fs(t, t.pendingProps.children)).flags |= 2, t.memoizedState = null, e
}
function Vs(e, t, n) {
e.lanes |= t;
var r = e.alternate;
null !== r && (r.lanes |= t), wa(e.return, t, n)
}
function Us(e, t, n, r, i) {
var a = e.memoizedState;
null === a ? e.memoizedState = {
isBackwards: t,
rendering: null,
renderingStartTime: 0,
last: r,
tail: n,
tailMode: i
} : (a.isBackwards = t, a.rendering = null, a.renderingStartTime = 0, a.last = r, a.tail = n, a.tailMode = i)
}
function Bs(e, t, n) {
var r = t.pendingProps,
i = r.revealOrder,
a = r.tail;
if (xs(e, t, r.children, n), 0 !== (2 & (r = so.current))) r = 1 & r | 2, t.flags |= 128;
else {
if (null !== e && 0 !== (128 & e.flags)) e: for (e = t.child; null !== e;) {
if (13 === e.tag) null !== e.memoizedState && Vs(e, n, t);
else if (19 === e.tag) Vs(e, n, t);
else if (null !== e.child) {
e.child.return = e, e = e.child;
continue
}
if (e === t) break e;
for (; null === e.sibling;) {
if (null === e.return || e.return === t) break e;
e = e.return
}
e.sibling.return = e.return, e = e.sibling
}
r &= 1
}
if (Ii(so, r), 0 === (1 & t.mode)) t.memoizedState = null;
else switch (i) {
case "forwards":
for (n = t.child, i = null; null !== n;) null !== (e = n.alternate) && null === lo(e) && (i = n), n = n.sibling;
null === (n = i) ? (i = t.child, t.child = null) : (i = n.sibling, n.sibling = null), Us(t, !1, i, n, a);
break;
case "backwards":
for (n = null, i = t.child, t.child = null; null !== i;) {
if (null !== (e = i.alternate) && null === lo(e)) {
t.child = i;
break
}
e = i.sibling, i.sibling = n, n = i, i = e
}
Us(t, !0, n, null, a);
break;
case "together":
Us(t, !1, null, null, void 0);
break;
default:
t.memoizedState = null
}
return t.child
}
function Gs(e, t) {
0 === (1 & t.mode) && null !== e && (e.alternate = null, t.alternate = null, t.flags |= 2)
}
function Ws(e, t, n) {
if (null !== e && (t.dependencies = e.dependencies), Ml |= t.lanes, 0 === (n & t.childLanes)) return null;
if (null !== e && t.child !== e.child) throw Error(a(153));
if (null !== t.child) {
for (n = Dc(e = t.child, e.pendingProps), t.child = n, n.return = t; null !== e.sibling;) e = e.sibling, (n = n.sibling = Dc(e, e.pendingProps)).return = t;
n.sibling = null
}
return t.child
}
function $s(e, t) {
if (!ia) switch (e.tailMode) {
case "hidden":
t = e.tail;
for (var n = null; null !== t;) null !== t.alternate && (n = t), t = t.sibling;
null === n ? e.tail = null : n.sibling = null;
break;
case "collapsed":
n = e.tail;
for (var r = null; null !== n;) null !== n.alternate && (r = n), n = n.sibling;
null === r ? t || null === e.tail ? e.tail = null : e.tail.sibling = null : r.sibling = null
}
}
function qs(e) {
var t = null !== e.alternate && e.alternate.child === e.child,
n = 0,
r = 0;
if (t)
for (var i = e.child; null !== i;) n |= i.lanes | i.childLanes, r |= 14680064 & i.subtreeFlags, r |= 14680064 & i.flags, i.return = e, i = i.sibling;
else
for (i = e.child; null !== i;) n |= i.lanes | i.childLanes, r |= i.subtreeFlags, r |= i.flags, i.return = e, i = i.sibling;
return e.subtreeFlags |= r, e.childLanes = n, t
}
function Hs(e, t, n) {
var r = t.pendingProps;
switch (ta(t), t.tag) {
case 2:
case 16:
case 15:
case 0:
case 11:
case 7:
case 8:
case 12:
case 9:
case 14:
return qs(t), null;
case 1:
case 17:
return Ri(t.type) && Di(), qs(t), null;
case 3:
return r = t.stateNode, io(), Ei(Ai), Ei(Ci), uo(), r.pendingContext && (r.context = r.pendingContext, r.pendingContext = null), null !== e && null !== e.child || (da(t) ? t.flags |= 4 : null === e || e.memoizedState.isDehydrated && 0 === (256 & t.flags) || (t.flags |= 1024, null !== aa && (oc(aa), aa = null))), qs(t), null;
case 5:
oo(t);
var i = no(to.current);
if (n = t.type, null !== e && null != t.stateNode) Ds(e, t, n, r), e.ref !== t.ref && (t.flags |= 512, t.flags |= 2097152);
else {
if (!r) {
if (null === t.stateNode) throw Error(a(166));
return qs(t), null
}
if (e = no(Ja.current), da(t)) {
r = t.stateNode, n = t.type;
var o = t.memoizedProps;
switch (r[pi] = t, r[hi] = o, e = 0 !== (1 & t.mode), n) {
case "dialog":
zr("cancel", r), zr("close", r);
break;
case "iframe":
case "object":
case "embed":
zr("load", r);
break;
case "video":
case "audio":
for (i = 0; i < Nr.length; i++) zr(Nr[i], r);
break;
case "source":
zr("error", r);
break;
case "img":
case "image":
case "link":
zr("error", r), zr("load", r);
break;
case "details":
zr("toggle", r);
break;
case "input":
Q(r, o), zr("invalid", r);
break;
case "select":
r._wrapperState = {
wasMultiple: !!o.multiple
}, zr("invalid", r);
break;
case "textarea":
ie(r, o), zr("invalid", r)
}
for (var l in ye(n, o), i = null, o)
if (o.hasOwnProperty(l)) {
var c = o[l];
"children" === l ? "string" === typeof c ? r.textContent !== c && (!0 !== o.suppressHydrationWarning && Xr(r.textContent, c, e), i = ["children", c]) : "number" === typeof c && r.textContent !== "" + c && (!0 !== o.suppressHydrationWarning && Xr(r.textContent, c, e), i = ["children", "" + c]) : s.hasOwnProperty(l) && null != c && "onScroll" === l && zr("scroll", r)
} switch (n) {
case "input":
q(r), J(r, o, !0);
break;
case "textarea":
q(r), oe(r);
break;
case "select":
case "option":
break;
default:
"function" === typeof o.onClick && (r.onclick = Jr)
}
r = i, t.updateQueue = r, null !== r && (t.flags |= 4)
} else {
l = 9 === i.nodeType ? i : i.ownerDocument, "http://www.w3.org/1999/xhtml" === e && (e = se(n)), "http://www.w3.org/1999/xhtml" === e ? "script" === n ? ((e = l.createElement("div")).innerHTML = "<script><\/script>", e = e.removeChild(e.firstChild)) : "string" === typeof r.is ? e = l.createElement(n, {
is: r.is
}) : (e = l.createElement(n), "select" === n && (l = e, r.multiple ? l.multiple = !0 : r.size && (l.size = r.size))) : e = l.createElementNS(e, n), e[pi] = t, e[hi] = r, Rs(e, t), t.stateNode = e;
e: {
switch (l = _e(n, r), n) {
case "dialog":
zr("cancel", e), zr("close", e), i = r;
break;
case "iframe":
case "object":
case "embed":
zr("load", e), i = r;
break;
case "video":
case "audio":
for (i = 0; i < Nr.length; i++) zr(Nr[i], e);
i = r;
break;
case "source":
zr("error", e), i = r;
break;
case "img":
case "image":
case "link":
zr("error", e), zr("load", e), i = r;
break;
case "details":
zr("toggle", e), i = r;
break;
case "input":
Q(e, r), i = Y(e, r), zr("invalid", e);
break;
case "option":
default:
i = r;
break;
case "select":
e._wrapperState = {
wasMultiple: !!r.multiple
}, i = j({}, r, {
value: void 0
}), zr("invalid", e);
break;
case "textarea":
ie(e, r), i = re(e, r), zr("invalid", e)
}
for (o in ye(n, i), c = i)
if (c.hasOwnProperty(o)) {
var u = c[o];
"style" === o ? ge(e, u) : "dangerouslySetInnerHTML" === o ? null != (u = u ? u.__html : void 0) && de(e, u) : "children" === o ? "string" === typeof u ? ("textarea" !== n || "" !== u) && pe(e, u) : "number" === typeof u && pe(e, "" + u) : "suppressContentEditableWarning" !== o && "suppressHydrationWarning" !== o && "autoFocus" !== o && (s.hasOwnProperty(o) ? null != u && "onScroll" === o && zr("scroll", e) : null != u && _(e, o, u, l))
} switch (n) {
case "input":
q(e), J(e, r, !1);
break;
case "textarea":
q(e), oe(e);
break;
case "option":
null != r.value && e.setAttribute("value", "" + W(r.value));
break;
case "select":
e.multiple = !!r.multiple, null != (o = r.value) ? ne(e, !!r.multiple, o, !1) : null != r.defaultValue && ne(e, !!r.multiple, r.defaultValue, !0);
break;
default:
"function" === typeof i.onClick && (e.onclick = Jr)
}
switch (n) {
case "button":
case "input":
case "select":
case "textarea":
r = !!r.autoFocus;
break e;
case "img":
r = !0;
break e;
default:
r = !1
}
}
r && (t.flags |= 4)
}
null !== t.ref && (t.flags |= 512, t.flags |= 2097152)
}
return qs(t), null;
case 6:
if (e && null != t.stateNode) Ls(0, t, e.memoizedProps, r);
else {
if ("string" !== typeof r && null === t.stateNode) throw Error(a(166));
if (n = no(to.current), no(Ja.current), da(t)) {
if (r = t.stateNode, n = t.memoizedProps, r[pi] = t, (o = r.nodeValue !== n) && null !== (e = na)) switch (e.tag) {
case 3:
Xr(r.nodeValue, n, 0 !== (1 & e.mode));
break;
case 5:
!0 !== e.memoizedProps.suppressHydrationWarning && Xr(r.nodeValue, n, 0 !== (1 & e.mode))
}
o && (t.flags |= 4)
} else(r = (9 === n.nodeType ? n : n.ownerDocument).createTextNode(r))[pi] = t, t.stateNode = r
}
return qs(t), null;
case 13:
if (Ei(so), r = t.memoizedState, null === e || null !== e.memoizedState && null !== e.memoizedState.dehydrated) {
if (ia && null !== ra && 0 !== (1 & t.mode) && 0 === (128 & t.flags)) pa(), ha(), t.flags |= 98560, o = !1;
else if (o = da(t), null !== r && null !== r.dehydrated) {
if (null === e) {
if (!o) throw Error(a(318));
if (!(o = null !== (o = t.memoizedState) ? o.dehydrated : null)) throw Error(a(317));
o[pi] = t
} else ha(), 0 === (128 & t.flags) && (t.memoizedState = null), t.flags |= 4;
qs(t), o = !1
} else null !== aa && (oc(aa), aa = null), o = !0;
if (!o) return 65536 & t.flags ? t : null
}
return 0 !== (128 & t.flags) ? (t.lanes = n, t) : ((r = null !== r) !== (null !== e && null !== e.memoizedState) && r && (t.child.flags |= 8192, 0 !== (1 & t.mode) && (null === e || 0 !== (1 & so.current) ? 0 === Ll && (Ll = 3) : mc())), null !== t.updateQueue && (t.flags |= 4), qs(t), null);
case 4:
return io(), null === e && Br(t.stateNode.containerInfo), qs(t), null;
case 10:
return ka(t.type._context), qs(t), null;
case 19:
if (Ei(so), null === (o = t.memoizedState)) return qs(t), null;
if (r = 0 !== (128 & t.flags), null === (l = o.rendering))
if (r) $s(o, !1);
else {
if (0 !== Ll || null !== e && 0 !== (128 & e.flags))
for (e = t.child; null !== e;) {
if (null !== (l = lo(e))) {
for (t.flags |= 128, $s(o, !1), null !== (r = l.updateQueue) && (t.updateQueue = r, t.flags |= 4), t.subtreeFlags = 0, r = n, n = t.child; null !== n;) e = r, (o = n).flags &= 14680066, null === (l = o.alternate) ? (o.childLanes = 0, o.lanes = e, o.child = null, o.subtreeFlags = 0, o.memoizedProps = null, o.memoizedState = null, o.updateQueue = null, o.dependencies = null, o.stateNode = null) : (o.childLanes = l.childLanes, o.lanes = l.lanes, o.child = l.child, o.subtreeFlags = 0, o.deletions = null, o.memoizedProps = l.memoizedProps, o.memoizedState = l.memoizedState, o.updateQueue = l.updateQueue, o.type = l.type, e = l.dependencies, o.dependencies = null === e ? null : {
lanes: e.lanes,
firstContext: e.firstContext
}), n = n.sibling;
return Ii(so, 1 & so.current | 2), t.child
}
e = e.sibling
}
null !== o.tail && Ze() > Bl && (t.flags |= 128, r = !0, $s(o, !1), t.lanes = 4194304)
}
else {
if (!r)
if (null !== (e = lo(l))) {
if (t.flags |= 128, r = !0, null !== (n = e.updateQueue) && (t.updateQueue = n, t.flags |= 4), $s(o, !0), null === o.tail && "hidden" === o.tailMode && !l.alternate && !ia) return qs(t), null
} else 2 * Ze() - o.renderingStartTime > Bl && 1073741824 !== n && (t.flags |= 128, r = !0, $s(o, !1), t.lanes = 4194304);
o.isBackwards ? (l.sibling = t.child, t.child = l) : (null !== (n = o.last) ? n.sibling = l : t.child = l, o.last = l)
}
return null !== o.tail ? (t = o.tail, o.rendering = t, o.tail = t.sibling, o.renderingStartTime = Ze(), t.sibling = null, n = so.current, Ii(so, r ? 1 & n | 2 : 1 & n), t) : (qs(t), null);
case 22:
case 23:
return dc(), r = null !== t.memoizedState, null !== e && null !== e.memoizedState !== r && (t.flags |= 8192), r && 0 !== (1 & t.mode) ? 0 !== (1073741824 & Rl) && (qs(t), 6 & t.subtreeFlags && (t.flags |= 8192)) : qs(t), null;
case 24:
case 25:
return null
}
throw Error(a(156, t.tag))
}
function Ks(e, t) {
switch (ta(t), t.tag) {
case 1:
return Ri(t.type) && Di(), 65536 & (e = t.flags) ? (t.flags = -65537 & e | 128, t) : null;
case 3:
return io(), Ei(Ai), Ei(Ci), uo(), 0 !== (65536 & (e = t.flags)) && 0 === (128 & e) ? (t.flags = -65537 & e | 128, t) : null;
case 5:
return oo(t), null;
case 13:
if (Ei(so), null !== (e = t.memoizedState) && null !== e.dehydrated) {
if (null === t.alternate) throw Error(a(340));
ha()
}
return 65536 & (e = t.flags) ? (t.flags = -65537 & e | 128, t) : null;
case 19:
return Ei(so), null;
case 4:
return io(), null;
case 10:
return ka(t.type._context), null;
case 22:
case 23:
return dc(), null;
default:
return null
}
}
Rs = function(e, t) {
for (var n = t.child; null !== n;) {
if (5 === n.tag || 6 === n.tag) e.appendChild(n.stateNode);
else if (4 !== n.tag && null !== n.child) {
n.child.return = n, n = n.child;
continue
}
if (n === t) break;
for (; null === n.sibling;) {
if (null === n.return || n.return === t) return;
n = n.return
}
n.sibling.return = n.return, n = n.sibling
}
}, Ds = function(e, t, n, r) {
var i = e.memoizedProps;
if (i !== r) {
e = t.stateNode, no(Ja.current);
var a, o = null;
switch (n) {
case "input":
i = Y(e, i), r = Y(e, r), o = [];
break;
case "select":
i = j({}, i, {
value: void 0
}), r = j({}, r, {
value: void 0
}), o = [];
break;
case "textarea":
i = re(e, i), r = re(e, r), o = [];
break;
default:
"function" !== typeof i.onClick && "function" === typeof r.onClick && (e.onclick = Jr)
}
for (u in ye(n, r), n = null, i)
if (!r.hasOwnProperty(u) && i.hasOwnProperty(u) && null != i[u])
if ("style" === u) {
var l = i[u];
for (a in l) l.hasOwnProperty(a) && (n || (n = {}), n[a] = "")
} else "dangerouslySetInnerHTML" !== u && "children" !== u && "suppressContentEditableWarning" !== u && "suppressHydrationWarning" !== u && "autoFocus" !== u && (s.hasOwnProperty(u) ? o || (o = []) : (o = o || []).push(u, null));
for (u in r) {
var c = r[u];
if (l = null != i ? i[u] : void 0, r.hasOwnProperty(u) && c !== l && (null != c || null != l))
if ("style" === u)
if (l) {
for (a in l) !l.hasOwnProperty(a) || c && c.hasOwnProperty(a) || (n || (n = {}), n[a] = "");
for (a in c) c.hasOwnProperty(a) && l[a] !== c[a] && (n || (n = {}), n[a] = c[a])
} else n || (o || (o = []), o.push(u, n)), n = c;
else "dangerouslySetInnerHTML" === u ? (c = c ? c.__html : void 0, l = l ? l.__html : void 0, null != c && l !== c && (o = o || []).push(u, c)) : "children" === u ? "string" !== typeof c && "number" !== typeof c || (o = o || []).push(u, "" + c) : "suppressContentEditableWarning" !== u && "suppressHydrationWarning" !== u && (s.hasOwnProperty(u) ? (null != c && "onScroll" === u && zr("scroll", e), o || l === c || (o = [])) : (o = o || []).push(u, c))
}
n && (o = o || []).push("style", n);
var u = o;
(t.updateQueue = u) && (t.flags |= 4)
}
}, Ls = function(e, t, n, r) {
n !== r && (t.flags |= 4)
};
var Ys = !1,
Qs = !1,
Zs = "function" === typeof WeakSet ? WeakSet : Set,
Xs = null;
function Js(e, t) {
var n = e.ref;
if (null !== n)
if ("function" === typeof n) try {
n(null)
} catch (r) {
Sc(e, t, r)
} else n.current = null
}
function el(e, t, n) {
try {
n()
} catch (r) {
Sc(e, t, r)
}
}
var tl = !1;
function nl(e, t, n) {
var r = t.updateQueue;
if (null !== (r = null !== r ? r.lastEffect : null)) {
var i = r = r.next;
do {
if ((i.tag & e) === e) {
var a = i.destroy;
i.destroy = void 0, void 0 !== a && el(t, n, a)
}
i = i.next
} while (i !== r)
}
}
function rl(e, t) {
if (null !== (t = null !== (t = t.updateQueue) ? t.lastEffect : null)) {
var n = t = t.next;
do {
if ((n.tag & e) === e) {
var r = n.create;
n.destroy = r()
}
n = n.next
} while (n !== t)
}
}
function il(e) {
var t = e.ref;
if (null !== t) {
var n = e.stateNode;
e.tag, e = n, "function" === typeof t ? t(e) : t.current = e
}
}
function al(e) {
var t = e.alternate;
null !== t && (e.alternate = null, al(t)), e.child = null, e.deletions = null, e.sibling = null, 5 === e.tag && (null !== (t = e.stateNode) && (delete t[pi], delete t[hi], delete t[mi], delete t[gi], delete t[vi])), e.stateNode = null, e.return = null, e.dependencies = null, e.memoizedProps = null, e.memoizedState = null, e.pendingProps = null, e.stateNode = null, e.updateQueue = null
}
function ol(e) {
return 5 === e.tag || 3 === e.tag || 4 === e.tag
}
function sl(e) {
e: for (;;) {
for (; null === e.sibling;) {
if (null === e.return || ol(e.return)) return null;
e = e.return
}
for (e.sibling.return = e.return, e = e.sibling; 5 !== e.tag && 6 !== e.tag && 18 !== e.tag;) {
if (2 & e.flags) continue e;
if (null === e.child || 4 === e.tag) continue e;
e.child.return = e, e = e.child
}
if (!(2 & e.flags)) return e.stateNode
}
}
function ll(e, t, n) {
var r = e.tag;
if (5 === r || 6 === r) e = e.stateNode, t ? 8 === n.nodeType ? n.parentNode.insertBefore(e, t) : n.insertBefore(e, t) : (8 === n.nodeType ? (t = n.parentNode).insertBefore(e, n) : (t = n).appendChild(e), null !== (n = n._reactRootContainer) && void 0 !== n || null !== t.onclick || (t.onclick = Jr));
else if (4 !== r && null !== (e = e.child))
for (ll(e, t, n), e = e.sibling; null !== e;) ll(e, t, n), e = e.sibling
}
function cl(e, t, n) {
var r = e.tag;
if (5 === r || 6 === r) e = e.stateNode, t ? n.insertBefore(e, t) : n.appendChild(e);
else if (4 !== r && null !== (e = e.child))
for (cl(e, t, n), e = e.sibling; null !== e;) cl(e, t, n), e = e.sibling
}
var ul = null,
dl = !1;
function pl(e, t, n) {
for (n = n.child; null !== n;) hl(e, t, n), n = n.sibling
}
function hl(e, t, n) {
if (at && "function" === typeof at.onCommitFiberUnmount) try {
at.onCommitFiberUnmount(it, n)
} catch (s) {}
switch (n.tag) {
case 5:
Qs || Js(n, t);
case 6:
var r = ul,
i = dl;
ul = null, pl(e, t, n), dl = i, null !== (ul = r) && (dl ? (e = ul, n = n.stateNode, 8 === e.nodeType ? e.parentNode.removeChild(n) : e.removeChild(n)) : ul.removeChild(n.stateNode));
break;
case 18:
null !== ul && (dl ? (e = ul, n = n.stateNode, 8 === e.nodeType ? li(e.parentNode, n) : 1 === e.nodeType && li(e, n), Bt(e)) : li(ul, n.stateNode));
break;
case 4:
r = ul, i = dl, ul = n.stateNode.containerInfo, dl = !0, pl(e, t, n), ul = r, dl = i;
break;
case 0:
case 11:
case 14:
case 15:
if (!Qs && (null !== (r = n.updateQueue) && null !== (r = r.lastEffect))) {
i = r = r.next;
do {
var a = i,
o = a.destroy;
a = a.tag, void 0 !== o && (0 !== (2 & a) || 0 !== (4 & a)) && el(n, t, o), i = i.next
} while (i !== r)
}
pl(e, t, n);
break;
case 1:
if (!Qs && (Js(n, t), "function" === typeof(r = n.stateNode).componentWillUnmount)) try {
r.props = n.memoizedProps, r.state = n.memoizedState, r.componentWillUnmount()
} catch (s) {
Sc(n, t, s)
}
pl(e, t, n);
break;
case 21:
pl(e, t, n);
break;
case 22:
1 & n.mode ? (Qs = (r = Qs) || null !== n.memoizedState, pl(e, t, n), Qs = r) : pl(e, t, n);
break;
default:
pl(e, t, n)
}
}
function fl(e) {
var t = e.updateQueue;
if (null !== t) {
e.updateQueue = null;
var n = e.stateNode;
null === n && (n = e.stateNode = new Zs), t.forEach((function(t) {
var r = Cc.bind(null, e, t);
n.has(t) || (n.add(t), t.then(r, r))
}))
}
}
function ml(e, t) {
var n = t.deletions;
if (null !== n)
for (var r = 0; r < n.length; r++) {
var i = n[r];
try {
var o = e,
s = t,
l = s;
e: for (; null !== l;) {
switch (l.tag) {
case 5:
ul = l.stateNode, dl = !1;
break e;
case 3:
case 4:
ul = l.stateNode.containerInfo, dl = !0;
break e
}
l = l.return
}
if (null === ul) throw Error(a(160));
hl(o, s, i), ul = null, dl = !1;
var c = i.alternate;
null !== c && (c.return = null), i.return = null
} catch (u) {
Sc(i, t, u)
}
}
if (12854 & t.subtreeFlags)
for (t = t.child; null !== t;) gl(t, e), t = t.sibling
}
function gl(e, t) {
var n = e.alternate,
r = e.flags;
switch (e.tag) {
case 0:
case 11:
case 14:
case 15:
if (ml(t, e), vl(e), 4 & r) {
try {
nl(3, e, e.return), rl(3, e)
} catch (g) {
Sc(e, e.return, g)
}
try {
nl(5, e, e.return)
} catch (g) {
Sc(e, e.return, g)
}
}
break;
case 1:
ml(t, e), vl(e), 512 & r && null !== n && Js(n, n.return);
break;
case 5:
if (ml(t, e), vl(e), 512 & r && null !== n && Js(n, n.return), 32 & e.flags) {
var i = e.stateNode;
try {
pe(i, "")
} catch (g) {
Sc(e, e.return, g)
}
}
if (4 & r && null != (i = e.stateNode)) {
var o = e.memoizedProps,
s = null !== n ? n.memoizedProps : o,
l = e.type,
c = e.updateQueue;
if (e.updateQueue = null, null !== c) try {
"input" === l && "radio" === o.type && null != o.name && Z(i, o), _e(l, s);
var u = _e(l, o);
for (s = 0; s < c.length; s += 2) {
var d = c[s],
p = c[s + 1];
"style" === d ? ge(i, p) : "dangerouslySetInnerHTML" === d ? de(i, p) : "children" === d ? pe(i, p) : _(i, d, p, u)
}
switch (l) {
case "input":
X(i, o);
break;
case "textarea":
ae(i, o);
break;
case "select":
var h = i._wrapperState.wasMultiple;
i._wrapperState.wasMultiple = !!o.multiple;
var f = o.value;
null != f ? ne(i, !!o.multiple, f, !1) : h !== !!o.multiple && (null != o.defaultValue ? ne(i, !!o.multiple, o.defaultValue, !0) : ne(i, !!o.multiple, o.multiple ? [] : "", !1))
}
i[hi] = o
} catch (g) {
Sc(e, e.return, g)
}
}
break;
case 6:
if (ml(t, e), vl(e), 4 & r) {
if (null === e.stateNode) throw Error(a(162));
i = e.stateNode, o = e.memoizedProps;
try {
i.nodeValue = o
} catch (g) {
Sc(e, e.return, g)
}
}
break;
case 3:
if (ml(t, e), vl(e), 4 & r && null !== n && n.memoizedState.isDehydrated) try {
Bt(t.containerInfo)
} catch (g) {
Sc(e, e.return, g)
}
break;
case 4:
default:
ml(t, e), vl(e);
break;
case 13:
ml(t, e), vl(e), 8192 & (i = e.child).flags && (o = null !== i.memoizedState, i.stateNode.isHidden = o, !o || null !== i.alternate && null !== i.alternate.memoizedState || (Ul = Ze())), 4 & r && fl(e);
break;
case 22:
if (d = null !== n && null !== n.memoizedState, 1 & e.mode ? (Qs = (u = Qs) || d, ml(t, e), Qs = u) : ml(t, e), vl(e), 8192 & r) {
if (u = null !== e.memoizedState, (e.stateNode.isHidden = u) && !d && 0 !== (1 & e.mode))
for (Xs = e, d = e.child; null !== d;) {
for (p = Xs = d; null !== Xs;) {
switch (f = (h = Xs).child, h.tag) {
case 0:
case 11:
case 14:
case 15:
nl(4, h, h.return);
break;
case 1:
Js(h, h.return);
var m = h.stateNode;
if ("function" === typeof m.componentWillUnmount) {
r = h, n = h.return;
try {
t = r, m.props = t.memoizedProps, m.state = t.memoizedState, m.componentWillUnmount()
} catch (g) {
Sc(r, n, g)
}
}
break;
case 5:
Js(h, h.return);
break;
case 22:
if (null !== h.memoizedState) {
xl(p);
continue
}
}
null !== f ? (f.return = h, Xs = f) : xl(p)
}
d = d.sibling
}
e: for (d = null, p = e;;) {
if (5 === p.tag) {
if (null === d) {
d = p;
try {
i = p.stateNode, u ? "function" === typeof(o = i.style).setProperty ? o.setProperty("display", "none", "important") : o.display = "none" : (l = p.stateNode, s = void 0 !== (c = p.memoizedProps.style) && null !== c && c.hasOwnProperty("display") ? c.display : null, l.style.display = me("display", s))
} catch (g) {
Sc(e, e.return, g)
}
}
} else if (6 === p.tag) {
if (null === d) try {
p.stateNode.nodeValue = u ? "" : p.memoizedProps
} catch (g) {
Sc(e, e.return, g)
}
} else if ((22 !== p.tag && 23 !== p.tag || null === p.memoizedState || p === e) && null !== p.child) {
p.child.return = p, p = p.child;
continue
}
if (p === e) break e;
for (; null === p.sibling;) {
if (null === p.return || p.return === e) break e;
d === p && (d = null), p = p.return
}
d === p && (d = null), p.sibling.return = p.return, p = p.sibling
}
}
break;
case 19:
ml(t, e), vl(e), 4 & r && fl(e);
case 21:
}
}
function vl(e) {
var t = e.flags;
if (2 & t) {
try {
e: {
for (var n = e.return; null !== n;) {
if (ol(n)) {
var r = n;
break e
}
n = n.return
}
throw Error(a(160))
}
switch (r.tag) {
case 5:
var i = r.stateNode;
32 & r.flags && (pe(i, ""), r.flags &= -33), cl(e, sl(e), i);
break;
case 3:
case 4:
var o = r.stateNode.containerInfo;
ll(e, sl(e), o);
break;
default:
throw Error(a(161))
}
}
catch (s) {
Sc(e, e.return, s)
}
e.flags &= -3
}
4096 & t && (e.flags &= -4097)
}
function yl(e, t, n) {
Xs = e, _l(e, t, n)
}
function _l(e, t, n) {
for (var r = 0 !== (1 & e.mode); null !== Xs;) {
var i = Xs,
a = i.child;
if (22 === i.tag && r) {
var o = null !== i.memoizedState || Ys;
if (!o) {
var s = i.alternate,
l = null !== s && null !== s.memoizedState || Qs;
s = Ys;
var c = Qs;
if (Ys = o, (Qs = l) && !c)
for (Xs = i; null !== Xs;) l = (o = Xs).child, 22 === o.tag && null !== o.memoizedState ? kl(i) : null !== l ? (l.return = o, Xs = l) : kl(i);
for (; null !== a;) Xs = a, _l(a, t, n), a = a.sibling;
Xs = i, Ys = s, Qs = c
}
bl(e)
} else 0 !== (8772 & i.subtreeFlags) && null !== a ? (a.return = i, Xs = a) : bl(e)
}
}
function bl(e) {
for (; null !== Xs;) {
var t = Xs;
if (0 !== (8772 & t.flags)) {
var n = t.alternate;
try {
if (0 !== (8772 & t.flags)) switch (t.tag) {
case 0:
case 11:
case 15:
Qs || rl(5, t);
break;
case 1:
var r = t.stateNode;
if (4 & t.flags && !Qs)
if (null === n) r.componentDidMount();
else {
var i = t.elementType === t.type ? n.memoizedProps : ga(t.type, n.memoizedProps);
r.componentDidUpdate(i, n.memoizedState, r.__reactInternalSnapshotBeforeUpdate)
} var o = t.updateQueue;
null !== o && Fa(t, o, r);
break;
case 3:
var s = t.updateQueue;
if (null !== s) {
if (n = null, null !== t.child) switch (t.child.tag) {
case 5:
case 1:
n = t.child.stateNode
}
Fa(t, s, n)
}
break;
case 5:
var l = t.stateNode;
if (null === n && 4 & t.flags) {
n = l;
var c = t.memoizedProps;
switch (t.type) {
case "button":
case "input":
case "select":
case "textarea":
c.autoFocus && n.focus();
break;
case "img":
c.src && (n.src = c.src)
}
}
break;
case 6:
case 4:
case 12:
case 19:
case 17:
case 21:
case 22:
case 23:
case 25:
break;
case 13:
if (null === t.memoizedState) {
var u = t.alternate;
if (null !== u) {
var d = u.memoizedState;
if (null !== d) {
var p = d.dehydrated;
null !== p && Bt(p)
}
}
}
break;
default:
throw Error(a(163))
}
Qs || 512 & t.flags && il(t)
} catch (h) {
Sc(t, t.return, h)
}
}
if (t === e) {
Xs = null;
break
}
if (null !== (n = t.sibling)) {
n.return = t.return, Xs = n;
break
}
Xs = t.return
}
}
function xl(e) {
for (; null !== Xs;) {
var t = Xs;
if (t === e) {
Xs = null;
break
}
var n = t.sibling;
if (null !== n) {
n.return = t.return, Xs = n;
break
}
Xs = t.return
}
}
function kl(e) {
for (; null !== Xs;) {
var t = Xs;
try {
switch (t.tag) {
case 0:
case 11:
case 15:
var n = t.return;
try {
rl(4, t)
} catch (l) {
Sc(t, n, l)
}
break;
case 1:
var r = t.stateNode;
if ("function" === typeof r.componentDidMount) {
var i = t.return;
try {
r.componentDidMount()
} catch (l) {
Sc(t, i, l)
}
}
var a = t.return;
try {
il(t)
} catch (l) {
Sc(t, a, l)
}
break;
case 5:
var o = t.return;
try {
il(t)
} catch (l) {
Sc(t, o, l)
}
}
} catch (l) {
Sc(t, t.return, l)
}
if (t === e) {
Xs = null;
break
}
var s = t.sibling;
if (null !== s) {
s.return = t.return, Xs = s;
break
}
Xs = t.return
}
}
var wl, Sl = Math.ceil,
El = b.ReactCurrentDispatcher,
Il = b.ReactCurrentOwner,
Ol = b.ReactCurrentBatchConfig,
Cl = 0,
Al = null,
Pl = null,
Tl = 0,
Rl = 0,
Dl = Si(0),
Ll = 0,
Nl = null,
Ml = 0,
jl = 0,
Fl = 0,
zl = null,
Vl = null,
Ul = 0,
Bl = 1 / 0,
Gl = null,
Wl = !1,
$l = null,
ql = null,
Hl = !1,
Kl = null,
Yl = 0,
Ql = 0,
Zl = null,
Xl = -1,
Jl = 0;
function ec() {
return 0 !== (6 & Cl) ? Ze() : -1 !== Xl ? Xl : Xl = Ze()
}
function tc(e) {
return 0 === (1 & e.mode) ? 1 : 0 !== (2 & Cl) && 0 !== Tl ? Tl & -Tl : null !== ma.transition ? (0 === Jl && (Jl = mt()), Jl) : 0 !== (e = _t) ? e : e = void 0 === (e = window.event) ? 16 : Qt(e.type)
}
function nc(e, t, n, r) {
if (50 < Ql) throw Ql = 0, Zl = null, Error(a(185));
vt(e, n, r), 0 !== (2 & Cl) && e === Al || (e === Al && (0 === (2 & Cl) && (jl |= n), 4 === Ll && sc(e, Tl)), rc(e, r), 1 === n && 0 === Cl && 0 === (1 & t.mode) && (Bl = Ze() + 500, zi && Bi()))
}
function rc(e, t) {
var n = e.callbackNode;
! function(e, t) {
for (var n = e.suspendedLanes, r = e.pingedLanes, i = e.expirationTimes, a = e.pendingLanes; 0 < a;) {
var o = 31 - ot(a),
s = 1 << o,
l = i[o]; - 1 === l ? 0 !== (s & n) && 0 === (s & r) || (i[o] = ht(s, t)) : l <= t && (e.expiredLanes |= s), a &= ~s
}
}(e, t);
var r = pt(e, e === Al ? Tl : 0);
if (0 === r) null !== n && Ke(n), e.callbackNode = null, e.callbackPriority = 0;
else if (t = r & -r, e.callbackPriority !== t) {
if (null != n && Ke(n), 1 === t) 0 === e.tag ? function(e) {
zi = !0, Ui(e)
}(lc.bind(null, e)) : Ui(lc.bind(null, e)), oi((function() {
0 === (6 & Cl) && Bi()
})), n = null;
else {
switch (bt(r)) {
case 1:
n = Je;
break;
case 4:
n = et;
break;
case 16:
default:
n = tt;
break;
case 536870912:
n = rt
}
n = Ac(n, ic.bind(null, e))
}
e.callbackPriority = t, e.callbackNode = n
}
}
function ic(e, t) {
if (Xl = -1, Jl = 0, 0 !== (6 & Cl)) throw Error(a(327));
var n = e.callbackNode;
if (kc() && e.callbackNode !== n) return null;
var r = pt(e, e === Al ? Tl : 0);
if (0 === r) return null;
if (0 !== (30 & r) || 0 !== (r & e.expiredLanes) || t) t = gc(e, r);
else {
t = r;
var i = Cl;
Cl |= 2;
var o = fc();
for (Al === e && Tl === t || (Gl = null, Bl = Ze() + 500, pc(e, t));;) try {
yc();
break
} catch (l) {
hc(e, l)
}
xa(), El.current = o, Cl = i, null !== Pl ? t = 0 : (Al = null, Tl = 0, t = Ll)
}
if (0 !== t) {
if (2 === t && (0 !== (i = ft(e)) && (r = i, t = ac(e, i))), 1 === t) throw n = Nl, pc(e, 0), sc(e, r), rc(e, Ze()), n;
if (6 === t) sc(e, r);
else {
if (i = e.current.alternate, 0 === (30 & r) && ! function(e) {
for (var t = e;;) {
if (16384 & t.flags) {
var n = t.updateQueue;
if (null !== n && null !== (n = n.stores))
for (var r = 0; r < n.length; r++) {
var i = n[r],
a = i.getSnapshot;
i = i.value;
try {
if (!sr(a(), i)) return !1
} catch (s) {
return !1
}
}
}
if (n = t.child, 16384 & t.subtreeFlags && null !== n) n.return = t, t = n;
else {
if (t === e) break;
for (; null === t.sibling;) {
if (null === t.return || t.return === e) return !0;
t = t.return
}
t.sibling.return = t.return, t = t.sibling
}
}
return !0
}(i) && (2 === (t = gc(e, r)) && (0 !== (o = ft(e)) && (r = o, t = ac(e, o))), 1 === t)) throw n = Nl, pc(e, 0), sc(e, r), rc(e, Ze()), n;
switch (e.finishedWork = i, e.finishedLanes = r, t) {
case 0:
case 1:
throw Error(a(345));
case 2:
case 5:
xc(e, Vl, Gl);
break;
case 3:
if (sc(e, r), (130023424 & r) === r && 10 < (t = Ul + 500 - Ze())) {
if (0 !== pt(e, 0)) break;
if (((i = e.suspendedLanes) & r) !== r) {
ec(), e.pingedLanes |= e.suspendedLanes & i;
break
}
e.timeoutHandle = ri(xc.bind(null, e, Vl, Gl), t);
break
}
xc(e, Vl, Gl);
break;
case 4:
if (sc(e, r), (4194240 & r) === r) break;
for (t = e.eventTimes, i = -1; 0 < r;) {
var s = 31 - ot(r);
o = 1 << s, (s = t[s]) > i && (i = s), r &= ~o
}
if (r = i, 10 < (r = (120 > (r = Ze() - r) ? 120 : 480 > r ? 480 : 1080 > r ? 1080 : 1920 > r ? 1920 : 3e3 > r ? 3e3 : 4320 > r ? 4320 : 1960 * Sl(r / 1960)) - r)) {
e.timeoutHandle = ri(xc.bind(null, e, Vl, Gl), r);
break
}
xc(e, Vl, Gl);
break;
default:
throw Error(a(329))
}
}
}
return rc(e, Ze()), e.callbackNode === n ? ic.bind(null, e) : null
}
function ac(e, t) {
var n = zl;
return e.current.memoizedState.isDehydrated && (pc(e, t).flags |= 256), 2 !== (e = gc(e, t)) && (t = Vl, Vl = n, null !== t && oc(t)), e
}
function oc(e) {
null === Vl ? Vl = e : Vl.push.apply(Vl, e)
}
function sc(e, t) {
for (t &= ~Fl, t &= ~jl, e.suspendedLanes |= t, e.pingedLanes &= ~t, e = e.expirationTimes; 0 < t;) {
var n = 31 - ot(t),
r = 1 << n;
e[n] = -1, t &= ~r
}
}
function lc(e) {
if (0 !== (6 & Cl)) throw Error(a(327));
kc();
var t = pt(e, 0);
if (0 === (1 & t)) return rc(e, Ze()), null;
var n = gc(e, t);
if (0 !== e.tag && 2 === n) {
var r = ft(e);
0 !== r && (t = r, n = ac(e, r))
}
if (1 === n) throw n = Nl, pc(e, 0), sc(e, t), rc(e, Ze()), n;
if (6 === n) throw Error(a(345));
return e.finishedWork = e.current.alternate, e.finishedLanes = t, xc(e, Vl, Gl), rc(e, Ze()), null
}
function cc(e, t) {
var n = Cl;
Cl |= 1;
try {
return e(t)
} finally {
0 === (Cl = n) && (Bl = Ze() + 500, zi && Bi())
}
}
function uc(e) {
null !== Kl && 0 === Kl.tag && 0 === (6 & Cl) && kc();
var t = Cl;
Cl |= 1;
var n = Ol.transition,
r = _t;
try {
if (Ol.transition = null, _t = 1, e) return e()
} finally {
_t = r, Ol.transition = n, 0 === (6 & (Cl = t)) && Bi()
}
}
function dc() {
Rl = Dl.current, Ei(Dl)
}
function pc(e, t) {
e.finishedWork = null, e.finishedLanes = 0;
var n = e.timeoutHandle;
if (-1 !== n && (e.timeoutHandle = -1, ii(n)), null !== Pl)
for (n = Pl.return; null !== n;) {
var r = n;
switch (ta(r), r.tag) {
case 1:
null !== (r = r.type.childContextTypes) && void 0 !== r && Di();
break;
case 3:
io(), Ei(Ai), Ei(Ci), uo();
break;
case 5:
oo(r);
break;
case 4:
io();
break;
case 13:
case 19:
Ei(so);
break;
case 10:
ka(r.type._context);
break;
case 22:
case 23:
dc()
}
n = n.return
}
if (Al = e, Pl = e = Dc(e.current, null), Tl = Rl = t, Ll = 0, Nl = null, Fl = jl = Ml = 0, Vl = zl = null, null !== Ia) {
for (t = 0; t < Ia.length; t++)
if (null !== (r = (n = Ia[t]).interleaved)) {
n.interleaved = null;
var i = r.next,
a = n.pending;
if (null !== a) {
var o = a.next;
a.next = i, r.next = o
}
n.pending = r
} Ia = null
}
return e
}
function hc(e, t) {
for (;;) {
var n = Pl;
try {
if (xa(), po.current = os, yo) {
for (var r = mo.memoizedState; null !== r;) {
var i = r.queue;
null !== i && (i.pending = null), r = r.next
}
yo = !1
}
if (fo = 0, vo = go = mo = null, _o = !1, bo = 0, Il.current = null, null === n || null === n.return) {
Ll = 1, Nl = t, Pl = null;
break
}
e: {
var o = e,
s = n.return,
l = n,
c = t;
if (t = Tl, l.flags |= 32768, null !== c && "object" === typeof c && "function" === typeof c.then) {
var u = c,
d = l,
p = d.tag;
if (0 === (1 & d.mode) && (0 === p || 11 === p || 15 === p)) {
var h = d.alternate;
h ? (d.updateQueue = h.updateQueue, d.memoizedState = h.memoizedState, d.lanes = h.lanes) : (d.updateQueue = null, d.memoizedState = null)
}
var f = vs(s);
if (null !== f) {
f.flags &= -257, ys(f, s, l, 0, t), 1 & f.mode && gs(o, u, t), c = u;
var m = (t = f).updateQueue;
if (null === m) {
var g = new Set;
g.add(c), t.updateQueue = g
} else m.add(c);
break e
}
if (0 === (1 & t)) {
gs(o, u, t), mc();
break e
}
c = Error(a(426))
} else if (ia && 1 & l.mode) {
var v = vs(s);
if (null !== v) {
0 === (65536 & v.flags) && (v.flags |= 256), ys(v, s, l, 0, t), fa(us(c, l));
break e
}
}
o = c = us(c, l),
4 !== Ll && (Ll = 2),
null === zl ? zl = [o] : zl.push(o),
o = s;do {
switch (o.tag) {
case 3:
o.flags |= 65536, t &= -t, o.lanes |= t, Ma(o, fs(0, c, t));
break e;
case 1:
l = c;
var y = o.type,
_ = o.stateNode;
if (0 === (128 & o.flags) && ("function" === typeof y.getDerivedStateFromError || null !== _ && "function" === typeof _.componentDidCatch && (null === ql || !ql.has(_)))) {
o.flags |= 65536, t &= -t, o.lanes |= t, Ma(o, ms(o, l, t));
break e
}
}
o = o.return
} while (null !== o)
}
bc(n)
} catch (b) {
t = b, Pl === n && null !== n && (Pl = n = n.return);
continue
}
break
}
}
function fc() {
var e = El.current;
return El.current = os, null === e ? os : e
}
function mc() {
0 !== Ll && 3 !== Ll && 2 !== Ll || (Ll = 4), null === Al || 0 === (268435455 & Ml) && 0 === (268435455 & jl) || sc(Al, Tl)
}
function gc(e, t) {
var n = Cl;
Cl |= 2;
var r = fc();
for (Al === e && Tl === t || (Gl = null, pc(e, t));;) try {
vc();
break
} catch (i) {
hc(e, i)
}
if (xa(), Cl = n, El.current = r, null !== Pl) throw Error(a(261));
return Al = null, Tl = 0, Ll
}
function vc() {
for (; null !== Pl;) _c(Pl)
}
function yc() {
for (; null !== Pl && !Ye();) _c(Pl)
}
function _c(e) {
var t = wl(e.alternate, e, Rl);
e.memoizedProps = e.pendingProps, null === t ? bc(e) : Pl = t, Il.current = null
}
function bc(e) {
var t = e;
do {
var n = t.alternate;
if (e = t.return, 0 === (32768 & t.flags)) {
if (null !== (n = Hs(n, t, Rl))) return void(Pl = n)
} else {
if (null !== (n = Ks(n, t))) return n.flags &= 32767, void(Pl = n);
if (null === e) return Ll = 6, void(Pl = null);
e.flags |= 32768, e.subtreeFlags = 0, e.deletions = null
}
if (null !== (t = t.sibling)) return void(Pl = t);
Pl = t = e
} while (null !== t);
0 === Ll && (Ll = 5)
}
function xc(e, t, n) {
var r = _t,
i = Ol.transition;
try {
Ol.transition = null, _t = 1,
function(e, t, n, r) {
do {
kc()
} while (null !== Kl);
if (0 !== (6 & Cl)) throw Error(a(327));
n = e.finishedWork;
var i = e.finishedLanes;
if (null === n) return null;
if (e.finishedWork = null, e.finishedLanes = 0, n === e.current) throw Error(a(177));
e.callbackNode = null, e.callbackPriority = 0;
var o = n.lanes | n.childLanes;
if (function(e, t) {
var n = e.pendingLanes & ~t;
e.pendingLanes = t, e.suspendedLanes = 0, e.pingedLanes = 0, e.expiredLanes &= t, e.mutableReadLanes &= t, e.entangledLanes &= t, t = e.entanglements;
var r = e.eventTimes;
for (e = e.expirationTimes; 0 < n;) {
var i = 31 - ot(n),
a = 1 << i;
t[i] = 0, r[i] = -1, e[i] = -1, n &= ~a
}
}(e, o), e === Al && (Pl = Al = null, Tl = 0), 0 === (2064 & n.subtreeFlags) && 0 === (2064 & n.flags) || Hl || (Hl = !0, Ac(tt, (function() {
return kc(), null
}))), o = 0 !== (15990 & n.flags), 0 !== (15990 & n.subtreeFlags) || o) {
o = Ol.transition, Ol.transition = null;
var s = _t;
_t = 1;
var l = Cl;
Cl |= 4, Il.current = null,
function(e, t) {
if (ei = Wt, hr(e = pr())) {
if ("selectionStart" in e) var n = {
start: e.selectionStart,
end: e.selectionEnd
};
else e: {
var r = (n = (n = e.ownerDocument) && n.defaultView || window).getSelection && n.getSelection();
if (r && 0 !== r.rangeCount) {
n = r.anchorNode;
var i = r.anchorOffset,
o = r.focusNode;
r = r.focusOffset;
try {
n.nodeType, o.nodeType
} catch (x) {
n = null;
break e
}
var s = 0,
l = -1,
c = -1,
u = 0,
d = 0,
p = e,
h = null;
t: for (;;) {
for (var f; p !== n || 0 !== i && 3 !== p.nodeType || (l = s + i), p !== o || 0 !== r && 3 !== p.nodeType || (c = s + r), 3 === p.nodeType && (s += p.nodeValue.length), null !== (f = p.firstChild);) h = p, p = f;
for (;;) {
if (p === e) break t;
if (h === n && ++u === i && (l = s), h === o && ++d === r && (c = s), null !== (f = p.nextSibling)) break;
h = (p = h).parentNode
}
p = f
}
n = -1 === l || -1 === c ? null : {
start: l,
end: c
}
} else n = null
}
n = n || {
start: 0,
end: 0
}
} else n = null;
for (ti = {
focusedElem: e,
selectionRange: n
}, Wt = !1, Xs = t; null !== Xs;)
if (e = (t = Xs).child, 0 !== (1028 & t.subtreeFlags) && null !== e) e.return = t, Xs = e;
else
for (; null !== Xs;) {
t = Xs;
try {
var m = t.alternate;
if (0 !== (1024 & t.flags)) switch (t.tag) {
case 0:
case 11:
case 15:
case 5:
case 6:
case 4:
case 17:
break;
case 1:
if (null !== m) {
var g = m.memoizedProps,
v = m.memoizedState,
y = t.stateNode,
_ = y.getSnapshotBeforeUpdate(t.elementType === t.type ? g : ga(t.type, g), v);
y.__reactInternalSnapshotBeforeUpdate = _
}
break;
case 3:
var b = t.stateNode.containerInfo;
1 === b.nodeType ? b.textContent = "" : 9 === b.nodeType && b.documentElement && b.removeChild(b.documentElement);
break;
default:
throw Error(a(163))
}
} catch (x) {
Sc(t, t.return, x)
}
if (null !== (e = t.sibling)) {
e.return = t.return, Xs = e;
break
}
Xs = t.return
}
m = tl, tl = !1
}(e, n), gl(n, e), fr(ti), Wt = !!ei, ti = ei = null, e.current = n, yl(n, e, i), Qe(), Cl = l, _t = s, Ol.transition = o
} else e.current = n;
if (Hl && (Hl = !1, Kl = e, Yl = i), o = e.pendingLanes, 0 === o && (ql = null), function(e) {
if (at && "function" === typeof at.onCommitFiberRoot) try {
at.onCommitFiberRoot(it, e, void 0, 128 === (128 & e.current.flags))
} catch (t) {}
}(n.stateNode), rc(e, Ze()), null !== t)
for (r = e.onRecoverableError, n = 0; n < t.length; n++) i = t[n], r(i.value, {
componentStack: i.stack,
digest: i.digest
});
if (Wl) throw Wl = !1, e = $l, $l = null, e;
0 !== (1 & Yl) && 0 !== e.tag && kc(), o = e.pendingLanes, 0 !== (1 & o) ? e === Zl ? Ql++ : (Ql = 0, Zl = e) : Ql = 0, Bi()
}(e, t, n, r)
} finally {
Ol.transition = i, _t = r
}
return null
}
function kc() {
if (null !== Kl) {
var e = bt(Yl),
t = Ol.transition,
n = _t;
try {
if (Ol.transition = null, _t = 16 > e ? 16 : e, null === Kl) var r = !1;
else {
if (e = Kl, Kl = null, Yl = 0, 0 !== (6 & Cl)) throw Error(a(331));
var i = Cl;
for (Cl |= 4, Xs = e.current; null !== Xs;) {
var o = Xs,
s = o.child;
if (0 !== (16 & Xs.flags)) {
var l = o.deletions;
if (null !== l) {
for (var c = 0; c < l.length; c++) {
var u = l[c];
for (Xs = u; null !== Xs;) {
var d = Xs;
switch (d.tag) {
case 0:
case 11:
case 15:
nl(8, d, o)
}
var p = d.child;
if (null !== p) p.return = d, Xs = p;
else
for (; null !== Xs;) {
var h = (d = Xs).sibling,
f = d.return;
if (al(d), d === u) {
Xs = null;
break
}
if (null !== h) {
h.return = f, Xs = h;
break
}
Xs = f
}
}
}
var m = o.alternate;
if (null !== m) {
var g = m.child;
if (null !== g) {
m.child = null;
do {
var v = g.sibling;
g.sibling = null, g = v
} while (null !== g)
}
}
Xs = o
}
}
if (0 !== (2064 & o.subtreeFlags) && null !== s) s.return = o, Xs = s;
else e: for (; null !== Xs;) {
if (0 !== (2048 & (o = Xs).flags)) switch (o.tag) {
case 0:
case 11:
case 15:
nl(9, o, o.return)
}
var y = o.sibling;
if (null !== y) {
y.return = o.return, Xs = y;
break e
}
Xs = o.return
}
}
var _ = e.current;
for (Xs = _; null !== Xs;) {
var b = (s = Xs).child;
if (0 !== (2064 & s.subtreeFlags) && null !== b) b.return = s, Xs = b;
else e: for (s = _; null !== Xs;) {
if (0 !== (2048 & (l = Xs).flags)) try {
switch (l.tag) {
case 0:
case 11:
case 15:
rl(9, l)
}
} catch (k) {
Sc(l, l.return, k)
}
if (l === s) {
Xs = null;
break e
}
var x = l.sibling;
if (null !== x) {
x.return = l.return, Xs = x;
break e
}
Xs = l.return
}
}
if (Cl = i, Bi(), at && "function" === typeof at.onPostCommitFiberRoot) try {
at.onPostCommitFiberRoot(it, e)
} catch (k) {}
r = !0
}
return r
} finally {
_t = n, Ol.transition = t
}
}
return !1
}
function wc(e, t, n) {
e = La(e, t = fs(0, t = us(n, t), 1), 1), t = ec(), null !== e && (vt(e, 1, t), rc(e, t))
}
function Sc(e, t, n) {
if (3 === e.tag) wc(e, e, n);
else
for (; null !== t;) {
if (3 === t.tag) {
wc(t, e, n);
break
}
if (1 === t.tag) {
var r = t.stateNode;
if ("function" === typeof t.type.getDerivedStateFromError || "function" === typeof r.componentDidCatch && (null === ql || !ql.has(r))) {
t = La(t, e = ms(t, e = us(n, e), 1), 1), e = ec(), null !== t && (vt(t, 1, e), rc(t, e));
break
}
}
t = t.return
}
}
function Ec(e, t, n) {
var r = e.pingCache;
null !== r && r.delete(t), t = ec(), e.pingedLanes |= e.suspendedLanes & n, Al === e && (Tl & n) === n && (4 === Ll || 3 === Ll && (130023424 & Tl) === Tl && 500 > Ze() - Ul ? pc(e, 0) : Fl |= n), rc(e, t)
}
function Ic(e, t) {
0 === t && (0 === (1 & e.mode) ? t = 1 : (t = ut, 0 === (130023424 & (ut <<= 1)) && (ut = 4194304)));
var n = ec();
null !== (e = Aa(e, t)) && (vt(e, t, n), rc(e, n))
}
function Oc(e) {
var t = e.memoizedState,
n = 0;
null !== t && (n = t.retryLane), Ic(e, n)
}
function Cc(e, t) {
var n = 0;
switch (e.tag) {
case 13:
var r = e.stateNode,
i = e.memoizedState;
null !== i && (n = i.retryLane);
break;
case 19:
r = e.stateNode;
break;
default:
throw Error(a(314))
}
null !== r && r.delete(t), Ic(e, n)
}
function Ac(e, t) {
return He(e, t)
}
function Pc(e, t, n, r) {
this.tag = e, this.key = n, this.sibling = this.child = this.return = this.stateNode = this.type = this.elementType = null, this.index = 0, this.ref = null, this.pendingProps = t, this.dependencies = this.memoizedState = this.updateQueue = this.memoizedProps = null, this.mode = r, this.subtreeFlags = this.flags = 0, this.deletions = null, this.childLanes = this.lanes = 0, this.alternate = null
}
function Tc(e, t, n, r) {
return new Pc(e, t, n, r)
}
function Rc(e) {
return !(!(e = e.prototype) || !e.isReactComponent)
}
function Dc(e, t) {
var n = e.alternate;
return null === n ? ((n = Tc(e.tag, t, e.key, e.mode)).elementType = e.elementType, n.type = e.type, n.stateNode = e.stateNode, n.alternate = e, e.alternate = n) : (n.pendingProps = t, n.type = e.type, n.flags = 0, n.subtreeFlags = 0, n.deletions = null), n.flags = 14680064 & e.flags, n.childLanes = e.childLanes, n.lanes = e.lanes, n.child = e.child, n.memoizedProps = e.memoizedProps, n.memoizedState = e.memoizedState, n.updateQueue = e.updateQueue, t = e.dependencies, n.dependencies = null === t ? null : {
lanes: t.lanes,
firstContext: t.firstContext
}, n.sibling = e.sibling, n.index = e.index, n.ref = e.ref, n
}
function Lc(e, t, n, r, i, o) {
var s = 2;
if (r = e, "function" === typeof e) Rc(e) && (s = 1);
else if ("string" === typeof e) s = 5;
else e: switch (e) {
case w:
return Nc(n.children, i, o, t);
case S:
s = 8, i |= 8;
break;
case E:
return (e = Tc(12, n, t, 2 | i)).elementType = E, e.lanes = o, e;
case A:
return (e = Tc(13, n, t, i)).elementType = A, e.lanes = o, e;
case P:
return (e = Tc(19, n, t, i)).elementType = P, e.lanes = o, e;
case D:
return Mc(n, i, o, t);
default:
if ("object" === typeof e && null !== e) switch (e.$$typeof) {
case I:
s = 10;
break e;
case O:
s = 9;
break e;
case C:
s = 11;
break e;
case T:
s = 14;
break e;
case R:
s = 16, r = null;
break e
}
throw Error(a(130, null == e ? e : typeof e, ""))
}
return (t = Tc(s, n, t, i)).elementType = e, t.type = r, t.lanes = o, t
}
function Nc(e, t, n, r) {
return (e = Tc(7, e, r, t)).lanes = n, e
}
function Mc(e, t, n, r) {
return (e = Tc(22, e, r, t)).elementType = D, e.lanes = n, e.stateNode = {
isHidden: !1
}, e
}
function jc(e, t, n) {
return (e = Tc(6, e, null, t)).lanes = n, e
}
function Fc(e, t, n) {
return (t = Tc(4, null !== e.children ? e.children : [], e.key, t)).lanes = n, t.stateNode = {
containerInfo: e.containerInfo,
pendingChildren: null,
implementation: e.implementation
}, t
}
function zc(e, t, n, r, i) {
this.tag = t, this.containerInfo = e, this.finishedWork = this.pingCache = this.current = this.pendingChildren = null, this.timeoutHandle = -1, this.callbackNode = this.pendingContext = this.context = null, this.callbackPriority = 0, this.eventTimes = gt(0), this.expirationTimes = gt(-1), this.entangledLanes = this.finishedLanes = this.mutableReadLanes = this.expiredLanes = this.pingedLanes = this.suspendedLanes = this.pendingLanes = 0, this.entanglements = gt(0), this.identifierPrefix = r, this.onRecoverableError = i, this.mutableSourceEagerHydrationData = null
}
function Vc(e, t, n, r, i, a, o, s, l) {
return e = new zc(e, t, n, s, l), 1 === t ? (t = 1, !0 === a && (t |= 8)) : t = 0, a = Tc(3, null, null, t), e.current = a, a.stateNode = e, a.memoizedState = {
element: r,
isDehydrated: n,
cache: null,
transitions: null,
pendingSuspenseBoundaries: null
}, Ta(a), e
}
function Uc(e, t, n) {
var r = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
return {
$$typeof: k,
key: null == r ? null : "" + r,
children: e,
containerInfo: t,
implementation: n
}
}
function Bc(e) {
if (!e) return Oi;
e: {
if (Be(e = e._reactInternals) !== e || 1 !== e.tag) throw Error(a(170));
var t = e;do {
switch (t.tag) {
case 3:
t = t.stateNode.context;
break e;
case 1:
if (Ri(t.type)) {
t = t.stateNode.__reactInternalMemoizedMergedChildContext;
break e
}
}
t = t.return
} while (null !== t);
throw Error(a(171))
}
if (1 === e.tag) {
var n = e.type;
if (Ri(n)) return Ni(e, n, t)
}
return t
}
function Gc(e, t, n, r, i, a, o, s, l) {
return (e = Vc(n, r, !0, e, 0, a, 0, s, l)).context = Bc(null), n = e.current, (a = Da(r = ec(), i = tc(n))).callback = void 0 !== t && null !== t ? t : null, La(n, a, i), e.current.lanes = i, vt(e, i, r), rc(e, r), e
}
function Wc(e, t, n, r) {
var i = t.current,
a = ec(),
o = tc(i);
return n = Bc(n), null === t.context ? t.context = n : t.pendingContext = n, (t = Da(a, o)).payload = {
element: e
}, null !== (r = void 0 === r ? null : r) && (t.callback = r), null !== (e = La(i, t, o)) && (nc(e, i, o, a), Na(e, i, o)), o
}
function $c(e) {
return (e = e.current).child ? (e.child.tag, e.child.stateNode) : null
}
function qc(e, t) {
if (null !== (e = e.memoizedState) && null !== e.dehydrated) {
var n = e.retryLane;
e.retryLane = 0 !== n && n < t ? n : t
}
}
function Hc(e, t) {
qc(e, t), (e = e.alternate) && qc(e, t)
}
wl = function(e, t, n) {
if (null !== e)
if (e.memoizedProps !== t.pendingProps || Ai.current) bs = !0;
else {
if (0 === (e.lanes & n) && 0 === (128 & t.flags)) return bs = !1,
function(e, t, n) {
switch (t.tag) {
case 3:
Ps(t), ha();
break;
case 5:
ao(t);
break;
case 1:
Ri(t.type) && Mi(t);
break;
case 4:
ro(t, t.stateNode.containerInfo);
break;
case 10:
var r = t.type._context,
i = t.memoizedProps.value;
Ii(va, r._currentValue), r._currentValue = i;
break;
case 13:
if (null !== (r = t.memoizedState)) return null !== r.dehydrated ? (Ii(so, 1 & so.current), t.flags |= 128, null) : 0 !== (n & t.child.childLanes) ? js(e, t, n) : (Ii(so, 1 & so.current), null !== (e = Ws(e, t, n)) ? e.sibling : null);
Ii(so, 1 & so.current);
break;
case 19:
if (r = 0 !== (n & t.childLanes), 0 !== (128 & e.flags)) {
if (r) return Bs(e, t, n);
t.flags |= 128
}
if (null !== (i = t.memoizedState) && (i.rendering = null, i.tail = null, i.lastEffect = null), Ii(so, so.current), r) break;
return null;
case 22:
case 23:
return t.lanes = 0, Es(e, t, n)
}
return Ws(e, t, n)
}(e, t, n);
bs = 0 !== (131072 & e.flags)
}
else bs = !1, ia && 0 !== (1048576 & t.flags) && Ji(t, qi, t.index);
switch (t.lanes = 0, t.tag) {
case 2:
var r = t.type;
Gs(e, t), e = t.pendingProps;
var i = Ti(t, Ci.current);
Sa(t, n), i = So(null, t, r, e, i, n);
var o = Eo();
return t.flags |= 1, "object" === typeof i && null !== i && "function" === typeof i.render && void 0 === i.$$typeof ? (t.tag = 1, t.memoizedState = null, t.updateQueue = null, Ri(r) ? (o = !0, Mi(t)) : o = !1, t.memoizedState = null !== i.state && void 0 !== i.state ? i.state : null, Ta(t), i.updater = Ua, t.stateNode = i, i._reactInternals = t, $a(t, r, e, n), t = As(null, t, r, !0, o, n)) : (t.tag = 0, ia && o && ea(t), xs(null, t, i, n), t = t.child), t;
case 16:
r = t.elementType;
e: {
switch (Gs(e, t), e = t.pendingProps, r = (i = r._init)(r._payload), t.type = r, i = t.tag = function(e) {
if ("function" === typeof e) return Rc(e) ? 1 : 0;
if (void 0 !== e && null !== e) {
if ((e = e.$$typeof) === C) return 11;
if (e === T) return 14
}
return 2
}(r), e = ga(r, e), i) {
case 0:
t = Os(null, t, r, e, n);
break e;
case 1:
t = Cs(null, t, r, e, n);
break e;
case 11:
t = ks(null, t, r, e, n);
break e;
case 14:
t = ws(null, t, r, ga(r.type, e), n);
break e
}
throw Error(a(306, r, ""))
}
return t;
case 0:
return r = t.type, i = t.pendingProps, Os(e, t, r, i = t.elementType === r ? i : ga(r, i), n);
case 1:
return r = t.type, i = t.pendingProps, Cs(e, t, r, i = t.elementType === r ? i : ga(r, i), n);
case 3:
e: {
if (Ps(t), null === e) throw Error(a(387));r = t.pendingProps,
i = (o = t.memoizedState).element,
Ra(e, t),
ja(t, r, null, n);
var s = t.memoizedState;
if (r = s.element, o.isDehydrated) {
if (o = {
element: r,
isDehydrated: !1,
cache: s.cache,
pendingSuspenseBoundaries: s.pendingSuspenseBoundaries,
transitions: s.transitions
}, t.updateQueue.baseState = o, t.memoizedState = o, 256 & t.flags) {
t = Ts(e, t, r, n, i = us(Error(a(423)), t));
break e
}
if (r !== i) {
t = Ts(e, t, r, n, i = us(Error(a(424)), t));
break e
}
for (ra = ci(t.stateNode.containerInfo.firstChild), na = t, ia = !0, aa = null, n = Za(t, null, r, n), t.child = n; n;) n.flags = -3 & n.flags | 4096, n = n.sibling
} else {
if (ha(), r === i) {
t = Ws(e, t, n);
break e
}
xs(e, t, r, n)
}
t = t.child
}
return t;
case 5:
return ao(t), null === e && ca(t), r = t.type, i = t.pendingProps, o = null !== e ? e.memoizedProps : null, s = i.children, ni(r, i) ? s = null : null !== o && ni(r, o) && (t.flags |= 32), Is(e, t), xs(e, t, s, n), t.child;
case 6:
return null === e && ca(t), null;
case 13:
return js(e, t, n);
case 4:
return ro(t, t.stateNode.containerInfo), r = t.pendingProps, null === e ? t.child = Qa(t, null, r, n) : xs(e, t, r, n), t.child;
case 11:
return r = t.type, i = t.pendingProps, ks(e, t, r, i = t.elementType === r ? i : ga(r, i), n);
case 7:
return xs(e, t, t.pendingProps, n), t.child;
case 8:
case 12:
return xs(e, t, t.pendingProps.children, n), t.child;
case 10:
e: {
if (r = t.type._context, i = t.pendingProps, o = t.memoizedProps, s = i.value, Ii(va, r._currentValue), r._currentValue = s, null !== o)
if (sr(o.value, s)) {
if (o.children === i.children && !Ai.current) {
t = Ws(e, t, n);
break e
}
} else
for (null !== (o = t.child) && (o.return = t); null !== o;) {
var l = o.dependencies;
if (null !== l) {
s = o.child;
for (var c = l.firstContext; null !== c;) {
if (c.context === r) {
if (1 === o.tag) {
(c = Da(-1, n & -n)).tag = 2;
var u = o.updateQueue;
if (null !== u) {
var d = (u = u.shared).pending;
null === d ? c.next = c : (c.next = d.next, d.next = c), u.pending = c
}
}
o.lanes |= n, null !== (c = o.alternate) && (c.lanes |= n), wa(o.return, n, t), l.lanes |= n;
break
}
c = c.next
}
} else if (10 === o.tag) s = o.type === t.type ? null : o.child;
else if (18 === o.tag) {
if (null === (s = o.return)) throw Error(a(341));
s.lanes |= n, null !== (l = s.alternate) && (l.lanes |= n), wa(s, n, t), s = o.sibling
} else s = o.child;
if (null !== s) s.return = o;
else
for (s = o; null !== s;) {
if (s === t) {
s = null;
break
}
if (null !== (o = s.sibling)) {
o.return = s.return, s = o;
break
}
s = s.return
}
o = s
}
xs(e, t, i.children, n),
t = t.child
}
return t;
case 9:
return i = t.type, r = t.pendingProps.children, Sa(t, n), r = r(i = Ea(i)), t.flags |= 1, xs(e, t, r, n), t.child;
case 14:
return i = ga(r = t.type, t.pendingProps), ws(e, t, r, i = ga(r.type, i), n);
case 15:
return Ss(e, t, t.type, t.pendingProps, n);
case 17:
return r = t.type, i = t.pendingProps, i = t.elementType === r ? i : ga(r, i), Gs(e, t), t.tag = 1, Ri(r) ? (e = !0, Mi(t)) : e = !1, Sa(t, n), Ga(t, r, i), $a(t, r, i, n), As(null, t, r, !0, e, n);
case 19:
return Bs(e, t, n);
case 22:
return Es(e, t, n)
}
throw Error(a(156, t.tag))
};
var Kc = "function" === typeof reportError ? reportError : function(e) {
console.error(e)
};
function Yc(e) {
this._internalRoot = e
}
function Qc(e) {
this._internalRoot = e
}
function Zc(e) {
return !(!e || 1 !== e.nodeType && 9 !== e.nodeType && 11 !== e.nodeType)
}
function Xc(e) {
return !(!e || 1 !== e.nodeType && 9 !== e.nodeType && 11 !== e.nodeType && (8 !== e.nodeType || " react-mount-point-unstable " !== e.nodeValue))
}
function Jc() {}
function eu(e, t, n, r, i) {
var a = n._reactRootContainer;
if (a) {
var o = a;
if ("function" === typeof i) {
var s = i;
i = function() {
var e = $c(o);
s.call(e)
}
}
Wc(t, o, e, i)
} else o = function(e, t, n, r, i) {
if (i) {
if ("function" === typeof r) {
var a = r;
r = function() {
var e = $c(o);
a.call(e)
}
}
var o = Gc(t, r, e, 0, null, !1, 0, "", Jc);
return e._reactRootContainer = o, e[fi] = o.current, Br(8 === e.nodeType ? e.parentNode : e), uc(), o
}
for (; i = e.lastChild;) e.removeChild(i);
if ("function" === typeof r) {
var s = r;
r = function() {
var e = $c(l);
s.call(e)
}
}
var l = Vc(e, 0, !1, null, 0, !1, 0, "", Jc);
return e._reactRootContainer = l, e[fi] = l.current, Br(8 === e.nodeType ? e.parentNode : e), uc((function() {
Wc(t, l, n, r)
})), l
}(n, t, e, i, r);
return $c(o)
}
Qc.prototype.render = Yc.prototype.render = function(e) {
var t = this._internalRoot;
if (null === t) throw Error(a(409));
Wc(e, t, null, null)
}, Qc.prototype.unmount = Yc.prototype.unmount = function() {
var e = this._internalRoot;
if (null !== e) {
this._internalRoot = null;
var t = e.containerInfo;
uc((function() {
Wc(null, e, null, null)
})), t[fi] = null
}
}, Qc.prototype.unstable_scheduleHydration = function(e) {
if (e) {
var t = St();
e = {
blockedOn: null,
target: e,
priority: t
};
for (var n = 0; n < Dt.length && 0 !== t && t < Dt[n].priority; n++);
Dt.splice(n, 0, e), 0 === n && jt(e)
}
}, xt = function(e) {
switch (e.tag) {
case 3:
var t = e.stateNode;
if (t.current.memoizedState.isDehydrated) {
var n = dt(t.pendingLanes);
0 !== n && (yt(t, 1 | n), rc(t, Ze()), 0 === (6 & Cl) && (Bl = Ze() + 500, Bi()))
}
break;
case 13:
uc((function() {
var t = Aa(e, 1);
if (null !== t) {
var n = ec();
nc(t, e, 1, n)
}
})), Hc(e, 1)
}
}, kt = function(e) {
if (13 === e.tag) {
var t = Aa(e, 134217728);
if (null !== t) nc(t, e, 134217728, ec());
Hc(e, 134217728)
}
}, wt = function(e) {
if (13 === e.tag) {
var t = tc(e),
n = Aa(e, t);
if (null !== n) nc(n, e, t, ec());
Hc(e, t)
}
}, St = function() {
return _t
}, Et = function(e, t) {
var n = _t;
try {
return _t = e, t()
} finally {
_t = n
}
}, ke = function(e, t, n) {
switch (t) {
case "input":
if (X(e, n), t = n.name, "radio" === n.type && null != t) {
for (n = e; n.parentNode;) n = n.parentNode;
for (n = n.querySelectorAll("input[name=" + JSON.stringify("" + t) + '][type="radio"]'), t = 0; t < n.length; t++) {
var r = n[t];
if (r !== e && r.form === e.form) {
var i = xi(r);
if (!i) throw Error(a(90));
H(r), X(r, i)
}
}
}
break;
case "textarea":
ae(e, n);
break;
case "select":
null != (t = n.value) && ne(e, !!n.multiple, t, !1)
}
}, Ce = cc, Ae = uc;
var tu = {
usingClientEntryPoint: !1,
Events: [_i, bi, xi, Ie, Oe, cc]
},
nu = {
findFiberByHostInstance: yi,
bundleType: 0,
version: "18.2.0",
rendererPackageName: "react-dom"
},
ru = {
bundleType: nu.bundleType,
version: nu.version,
rendererPackageName: nu.rendererPackageName,
rendererConfig: nu.rendererConfig,
overrideHookState: null,
overrideHookStateDeletePath: null,
overrideHookStateRenamePath: null,
overrideProps: null,
overridePropsDeletePath: null,
overridePropsRenamePath: null,
setErrorHandler: null,
setSuspenseHandler: null,
scheduleUpdate: null,
currentDispatcherRef: b.ReactCurrentDispatcher,
findHostInstanceByFiber: function(e) {
return null === (e = $e(e)) ? null : e.stateNode
},
findFiberByHostInstance: nu.findFiberByHostInstance || function() {
return null
},
findHostInstancesForRefresh: null,
scheduleRefresh: null,
scheduleRoot: null,
setRefreshHandler: null,
getCurrentFiber: null,
reconcilerVersion: "18.2.0-next-9e3b772b8-20220608"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var iu = __REACT_DEVTOOLS_GLOBAL_HOOK__;
if (!iu.isDisabled && iu.supportsFiber) try {
it = iu.inject(ru), at = iu
} catch (ue) {}
}
t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = tu, t.createPortal = function(e, t) {
var n = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;
if (!Zc(t)) throw Error(a(200));
return Uc(e, t, null, n)
}, t.createRoot = function(e, t) {
if (!Zc(e)) throw Error(a(299));
var n = !1,
r = "",
i = Kc;
return null !== t && void 0 !== t && (!0 === t.unstable_strictMode && (n = !0), void 0 !== t.identifierPrefix && (r = t.identifierPrefix), void 0 !== t.onRecoverableError && (i = t.onRecoverableError)), t = Vc(e, 1, !1, null, 0, n, 0, r, i), e[fi] = t.current, Br(8 === e.nodeType ? e.parentNode : e), new Yc(t)
}, t.findDOMNode = function(e) {
if (null == e) return null;
if (1 === e.nodeType) return e;
var t = e._reactInternals;
if (void 0 === t) {
if ("function" === typeof e.render) throw Error(a(188));
throw e = Object.keys(e).join(","), Error(a(268, e))
}
return e = null === (e = $e(t)) ? null : e.stateNode
}, t.flushSync = function(e) {
return uc(e)
}, t.hydrate = function(e, t, n) {
if (!Xc(t)) throw Error(a(200));
return eu(null, e, t, !0, n)
}, t.hydrateRoot = function(e, t, n) {
if (!Zc(e)) throw Error(a(405));
var r = null != n && n.hydratedSources || null,
i = !1,
o = "",
s = Kc;
if (null !== n && void 0 !== n && (!0 === n.unstable_strictMode && (i = !0), void 0 !== n.identifierPrefix && (o = n.identifierPrefix), void 0 !== n.onRecoverableError && (s = n.onRecoverableError)), t = Gc(t, null, e, 1, null != n ? n : null, i, 0, o, s), e[fi] = t.current, Br(e), r)
for (e = 0; e < r.length; e++) i = (i = (n = r[e])._getVersion)(n._source), null == t.mutableSourceEagerHydrationData ? t.mutableSourceEagerHydrationData = [n, i] : t.mutableSourceEagerHydrationData.push(n, i);
return new Qc(t)
}, t.render = function(e, t, n) {
if (!Xc(t)) throw Error(a(200));
return eu(null, e, t, !1, n)
}, t.unmountComponentAtNode = function(e) {
if (!Xc(e)) throw Error(a(40));
return !!e._reactRootContainer && (uc((function() {
eu(null, null, e, !1, (function() {
e._reactRootContainer = null, e[fi] = null
}))
})), !0)
}, t.unstable_batchedUpdates = cc, t.unstable_renderSubtreeIntoContainer = function(e, t, n, r) {
if (!Xc(n)) throw Error(a(200));
if (null == e || void 0 === e._reactInternals) throw Error(a(38));
return eu(e, t, n, !1, r)
}, t.version = "18.2.0-next-9e3b772b8-20220608"
},
95: (e, t, n) => {
"use strict";
var r = n(8508);
t.createRoot = r.createRoot, t.hydrateRoot = r.hydrateRoot
},
8508: (e, t, n) => {
"use strict";
! function e() {
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE) try {
__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)
} catch (t) {
console.error(t)
}
}(), e.exports = n(1114)
},
8316: (e, t, n) => {
"use strict";
var r = n(1479),
i = Symbol.for("react.element"),
a = Symbol.for("react.fragment"),
o = Object.prototype.hasOwnProperty,
s = r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,
l = {
key: !0,
ref: !0,
__self: !0,
__source: !0
};
function c(e, t, n) {
var r, a = {},
c = null,
u = null;
for (r in void 0 !== n && (c = "" + n), void 0 !== t.key && (c = "" + t.key), void 0 !== t.ref && (u = t.ref), t) o.call(t, r) && !l.hasOwnProperty(r) && (a[r] = t[r]);
if (e && e.defaultProps)
for (r in t = e.defaultProps) void 0 === a[r] && (a[r] = t[r]);
return {
$$typeof: i,
type: e,
key: c,
ref: u,
props: a,
_owner: s.current
}
}
t.Fragment = a, t.jsx = c, t.jsxs = c
},
984: (e, t) => {
"use strict";
var n = Symbol.for("react.element"),
r = Symbol.for("react.portal"),
i = Symbol.for("react.fragment"),
a = Symbol.for("react.strict_mode"),
o = Symbol.for("react.profiler"),
s = Symbol.for("react.provider"),
l = Symbol.for("react.context"),
c = Symbol.for("react.forward_ref"),
u = Symbol.for("react.suspense"),
d = Symbol.for("react.memo"),
p = Symbol.for("react.lazy"),
h = Symbol.iterator;
var f = {
isMounted: function() {
return !1
},
enqueueForceUpdate: function() {},
enqueueReplaceState: function() {},
enqueueSetState: function() {}
},
m = Object.assign,
g = {};
function v(e, t, n) {
this.props = e, this.context = t, this.refs = g, this.updater = n || f
}
function y() {}
function _(e, t, n) {
this.props = e, this.context = t, this.refs = g, this.updater = n || f
}
v.prototype.isReactComponent = {}, v.prototype.setState = function(e, t) {
if ("object" !== typeof e && "function" !== typeof e && null != e) throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");
this.updater.enqueueSetState(this, e, t, "setState")
}, v.prototype.forceUpdate = function(e) {
this.updater.enqueueForceUpdate(this, e, "forceUpdate")
}, y.prototype = v.prototype;
var b = _.prototype = new y;
b.constructor = _, m(b, v.prototype), b.isPureReactComponent = !0;
var x = Array.isArray,
k = Object.prototype.hasOwnProperty,
w = {
current: null
},
S = {
key: !0,
ref: !0,
__self: !0,
__source: !0
};
function E(e, t, r) {
var i, a = {},
o = null,
s = null;
if (null != t)
for (i in void 0 !== t.ref && (s = t.ref), void 0 !== t.key && (o = "" + t.key), t) k.call(t, i) && !S.hasOwnProperty(i) && (a[i] = t[i]);
var l = arguments.length - 2;
if (1 === l) a.children = r;
else if (1 < l) {
for (var c = Array(l), u = 0; u < l; u++) c[u] = arguments[u + 2];
a.children = c
}
if (e && e.defaultProps)
for (i in l = e.defaultProps) void 0 === a[i] && (a[i] = l[i]);
return {
$$typeof: n,
type: e,
key: o,
ref: s,
props: a,
_owner: w.current
}
}
function I(e) {
return "object" === typeof e && null !== e && e.$$typeof === n
}
var O = /\/+/g;
function C(e, t) {
return "object" === typeof e && null !== e && null != e.key ? function(e) {
var t = {
"=": "=0",
":": "=2"
};
return "$" + e.replace(/[=:]/g, (function(e) {
return t[e]
}))
}("" + e.key) : t.toString(36)
}
function A(e, t, i, a, o) {
var s = typeof e;
"undefined" !== s && "boolean" !== s || (e = null);
var l = !1;
if (null === e) l = !0;
else switch (s) {
case "string":
case "number":
l = !0;
break;
case "object":
switch (e.$$typeof) {
case n:
case r:
l = !0
}
}
if (l) return o = o(l = e), e = "" === a ? "." + C(l, 0) : a, x(o) ? (i = "", null != e && (i = e.replace(O, "$&/") + "/"), A(o, t, i, "", (function(e) {
return e
}))) : null != o && (I(o) && (o = function(e, t) {
return {
$$typeof: n,
type: e.type,
key: t,
ref: e.ref,
props: e.props,
_owner: e._owner
}
}(o, i + (!o.key || l && l.key === o.key ? "" : ("" + o.key).replace(O, "$&/") + "/") + e)), t.push(o)), 1;
if (l = 0, a = "" === a ? "." : a + ":", x(e))
for (var c = 0; c < e.length; c++) {
var u = a + C(s = e[c], c);
l += A(s, t, i, u, o)
} else if (u = function(e) {
return null === e || "object" !== typeof e ? null : "function" === typeof(e = h && e[h] || e["@@iterator"]) ? e : null
}(e), "function" === typeof u)
for (e = u.call(e), c = 0; !(s = e.next()).done;) l += A(s = s.value, t, i, u = a + C(s, c++), o);
else if ("object" === s) throw t = String(e), Error("Objects are not valid as a React child (found: " + ("[object Object]" === t ? "object with keys {" + Object.keys(e).join(", ") + "}" : t) + "). If you meant to render a collection of children, use an array instead.");
return l
}
function P(e, t, n) {
if (null == e) return e;
var r = [],
i = 0;
return A(e, r, "", "", (function(e) {
return t.call(n, e, i++)
})), r
}
function T(e) {
if (-1 === e._status) {
var t = e._result;
(t = t()).then((function(t) {
0 !== e._status && -1 !== e._status || (e._status = 1, e._result = t)
}), (function(t) {
0 !== e._status && -1 !== e._status || (e._status = 2, e._result = t)
})), -1 === e._status && (e._status = 0, e._result = t)
}
if (1 === e._status) return e._result.default;
throw e._result
}
var R = {
current: null
},
D = {
transition: null
},
L = {
ReactCurrentDispatcher: R,
ReactCurrentBatchConfig: D,
ReactCurrentOwner: w
};
t.Children = {
map: P,
forEach: function(e, t, n) {
P(e, (function() {
t.apply(this, arguments)
}), n)
},
count: function(e) {
var t = 0;
return P(e, (function() {
t++
})), t
},
toArray: function(e) {
return P(e, (function(e) {
return e
})) || []
},
only: function(e) {
if (!I(e)) throw Error("React.Children.only expected to receive a single React element child.");
return e
}
}, t.Component = v, t.Fragment = i, t.Profiler = o, t.PureComponent = _, t.StrictMode = a, t.Suspense = u, t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = L, t.cloneElement = function(e, t, r) {
if (null === e || void 0 === e) throw Error("React.cloneElement(...): The argument must be a React element, but you passed " + e + ".");
var i = m({}, e.props),
a = e.key,
o = e.ref,
s = e._owner;
if (null != t) {
if (void 0 !== t.ref && (o = t.ref, s = w.current), void 0 !== t.key && (a = "" + t.key), e.type && e.type.defaultProps) var l = e.type.defaultProps;
for (c in t) k.call(t, c) && !S.hasOwnProperty(c) && (i[c] = void 0 === t[c] && void 0 !== l ? l[c] : t[c])
}
var c = arguments.length - 2;
if (1 === c) i.children = r;
else if (1 < c) {
l = Array(c);
for (var u = 0; u < c; u++) l[u] = arguments[u + 2];
i.children = l
}
return {
$$typeof: n,
type: e.type,
key: a,
ref: o,
props: i,
_owner: s
}
}, t.createContext = function(e) {
return (e = {
$$typeof: l,
_currentValue: e,
_currentValue2: e,
_threadCount: 0,
Provider: null,
Consumer: null,
_defaultValue: null,
_globalName: null
}).Provider = {
$$typeof: s,
_context: e
}, e.Consumer = e
}, t.createElement = E, t.createFactory = function(e) {
var t = E.bind(null, e);
return t.type = e, t
}, t.createRef = function() {
return {
current: null
}
}, t.forwardRef = function(e) {
return {
$$typeof: c,
render: e
}
}, t.isValidElement = I, t.lazy = function(e) {
return {
$$typeof: p,
_payload: {
_status: -1,
_result: e
},
_init: T
}
}, t.memo = function(e, t) {
return {
$$typeof: d,
type: e,
compare: void 0 === t ? null : t
}
}, t.startTransition = function(e) {
var t = D.transition;
D.transition = {};
try {
e()
} finally {
D.transition = t
}
}, t.unstable_act = function() {
throw Error("act(...) is not supported in production builds of React.")
}, t.useCallback = function(e, t) {
return R.current.useCallback(e, t)
}, t.useContext = function(e) {
return R.current.useContext(e)
}, t.useDebugValue = function() {}, t.useDeferredValue = function(e) {
return R.current.useDeferredValue(e)
}, t.useEffect = function(e, t) {
return R.current.useEffect(e, t)
}, t.useId = function() {
return R.current.useId()
}, t.useImperativeHandle = function(e, t, n) {
return R.current.useImperativeHandle(e, t, n)
}, t.useInsertionEffect = function(e, t) {
return R.current.useInsertionEffect(e, t)
}, t.useLayoutEffect = function(e, t) {
return R.current.useLayoutEffect(e, t)
}, t.useMemo = function(e, t) {
return R.current.useMemo(e, t)
}, t.useReducer = function(e, t, n) {
return R.current.useReducer(e, t, n)
}, t.useRef = function(e) {
return R.current.useRef(e)
}, t.useState = function(e) {
return R.current.useState(e)
}, t.useSyncExternalStore = function(e, t, n) {
return R.current.useSyncExternalStore(e, t, n)
}, t.useTransition = function() {
return R.current.useTransition()
}, t.version = "18.2.0"
},
1479: (e, t, n) => {
"use strict";
e.exports = n(984)
},
4499: (e, t, n) => {
"use strict";
e.exports = n(8316)
},
6854: (e, t) => {
"use strict";
function n(e, t) {
var n = e.length;
e.push(t);
e: for (; 0 < n;) {
var r = n - 1 >>> 1,
i = e[r];
if (!(0 < a(i, t))) break e;
e[r] = t, e[n] = i, n = r
}
}
function r(e) {
return 0 === e.length ? null : e[0]
}
function i(e) {
if (0 === e.length) return null;
var t = e[0],
n = e.pop();
if (n !== t) {
e[0] = n;
e: for (var r = 0, i = e.length, o = i >>> 1; r < o;) {
var s = 2 * (r + 1) - 1,
l = e[s],
c = s + 1,
u = e[c];
if (0 > a(l, n)) c < i && 0 > a(u, l) ? (e[r] = u, e[c] = n, r = c) : (e[r] = l, e[s] = n, r = s);
else {
if (!(c < i && 0 > a(u, n))) break e;
e[r] = u, e[c] = n, r = c
}
}
}
return t
}
function a(e, t) {
var n = e.sortIndex - t.sortIndex;
return 0 !== n ? n : e.id - t.id
}
if ("object" === typeof performance && "function" === typeof performance.now) {
var o = performance;
t.unstable_now = function() {
return o.now()
}
} else {
var s = Date,
l = s.now();
t.unstable_now = function() {
return s.now() - l
}
}
var c = [],
u = [],
d = 1,
p = null,
h = 3,
f = !1,
m = !1,
g = !1,
v = "function" === typeof setTimeout ? setTimeout : null,
y = "function" === typeof clearTimeout ? clearTimeout : null,
_ = "undefined" !== typeof setImmediate ? setImmediate : null;
function b(e) {
for (var t = r(u); null !== t;) {
if (null === t.callback) i(u);
else {
if (!(t.startTime <= e)) break;
i(u), t.sortIndex = t.expirationTime, n(c, t)
}
t = r(u)
}
}
function x(e) {
if (g = !1, b(e), !m)
if (null !== r(c)) m = !0, D(k);
else {
var t = r(u);
null !== t && L(x, t.startTime - e)
}
}
function k(e, n) {
m = !1, g && (g = !1, y(I), I = -1), f = !0;
var a = h;
try {
for (b(n), p = r(c); null !== p && (!(p.expirationTime > n) || e && !A());) {
var o = p.callback;
if ("function" === typeof o) {
p.callback = null, h = p.priorityLevel;
var s = o(p.expirationTime <= n);
n = t.unstable_now(), "function" === typeof s ? p.callback = s : p === r(c) && i(c), b(n)
} else i(c);
p = r(c)
}
if (null !== p) var l = !0;
else {
var d = r(u);
null !== d && L(x, d.startTime - n), l = !1
}
return l
} finally {
p = null, h = a, f = !1
}
}
"undefined" !== typeof navigator && void 0 !== navigator.scheduling && void 0 !== navigator.scheduling.isInputPending && navigator.scheduling.isInputPending.bind(navigator.scheduling);
var w, S = !1,
E = null,
I = -1,
O = 5,
C = -1;
function A() {
return !(t.unstable_now() - C < O)
}
function P() {
if (null !== E) {
var e = t.unstable_now();
C = e;
var n = !0;
try {
n = E(!0, e)
} finally {
n ? w() : (S = !1, E = null)
}
} else S = !1
}
if ("function" === typeof _) w = function() {
_(P)
};
else if ("undefined" !== typeof MessageChannel) {
var T = new MessageChannel,
R = T.port2;
T.port1.onmessage = P, w = function() {
R.postMessage(null)
}
} else w = function() {
v(P, 0)
};
function D(e) {
E = e, S || (S = !0, w())
}
function L(e, n) {
I = v((function() {
e(t.unstable_now())
}), n)
}
t.unstable_IdlePriority = 5, t.unstable_ImmediatePriority = 1, t.unstable_LowPriority = 4, t.unstable_NormalPriority = 3, t.unstable_Profiling = null, t.unstable_UserBlockingPriority = 2, t.unstable_cancelCallback = function(e) {
e.callback = null
}, t.unstable_continueExecution = function() {
m || f || (m = !0, D(k))
}, t.unstable_forceFrameRate = function(e) {
0 > e || 125 < e ? console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported") : O = 0 < e ? Math.floor(1e3 / e) : 5
}, t.unstable_getCurrentPriorityLevel = function() {
return h
}, t.unstable_getFirstCallbackNode = function() {
return r(c)
}, t.unstable_next = function(e) {
switch (h) {
case 1:
case 2:
case 3:
var t = 3;
break;
default:
t = h
}
var n = h;
h = t;
try {
return e()
} finally {
h = n
}
}, t.unstable_pauseExecution = function() {}, t.unstable_requestPaint = function() {}, t.unstable_runWithPriority = function(e, t) {
switch (e) {
case 1:
case 2:
case 3:
case 4:
case 5:
break;
default:
e = 3
}
var n = h;
h = e;
try {
return t()
} finally {
h = n
}
}, t.unstable_scheduleCallback = function(e, i, a) {
var o = t.unstable_now();
switch ("object" === typeof a && null !== a ? a = "number" === typeof(a = a.delay) && 0 < a ? o + a : o : a = o, e) {
case 1:
var s = -1;
break;
case 2:
s = 250;
break;
case 5:
s = 1073741823;
break;
case 4:
s = 1e4;
break;
default:
s = 5e3
}
return e = {
id: d++,
callback: i,
priorityLevel: e,
startTime: a,
expirationTime: s = a + s,
sortIndex: -1
}, a > o ? (e.sortIndex = a, n(u, e), null === r(c) && e === r(u) && (g ? (y(I), I = -1) : g = !0, L(x, a - o))) : (e.sortIndex = s, n(c, e), m || f || (m = !0, D(k))), e
}, t.unstable_shouldYield = A, t.unstable_wrapCallback = function(e) {
var t = h;
return function() {
var n = h;
h = t;
try {
return e.apply(this, arguments)
} finally {
h = n
}
}
}
},
4811: (e, t, n) => {
"use strict";
e.exports = n(6854)
},
1438: e => {
"use strict";
e.exports = function(e, t) {
if ("string" === typeof e) return o(e);
if ("number" === typeof e) return a(e, t);
return null
}, e.exports.format = a, e.exports.parse = o;
var t = /\B(?=(\d{3})+(?!\d))/g,
n = /(?:\.0*|(\.[^0]+)0+)$/,
r = {
b: 1,
kb: 1024,
mb: 1 << 20,
gb: 1 << 30,
tb: Math.pow(1024, 4),
pb: Math.pow(1024, 5)
},
i = /^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;
function a(e, i) {
if (!Number.isFinite(e)) return null;
var a = Math.abs(e),
o = i && i.thousandsSeparator || "",
s = i && i.unitSeparator || "",
l = i && void 0 !== i.decimalPlaces ? i.decimalPlaces : 2,
c = Boolean(i && i.fixedDecimals),
u = i && i.unit || "";
u && r[u.toLowerCase()] || (u = a >= r.pb ? "PB" : a >= r.tb ? "TB" : a >= r.gb ? "GB" : a >= r.mb ? "MB" : a >= r.kb ? "KB" : "B");
var d = (e / r[u.toLowerCase()]).toFixed(l);
return c || (d = d.replace(n, "$1")), o && (d = d.split(".").map((function(e, n) {
return 0 === n ? e.replace(t, o) : e
})).join(".")), d + s + u
}
function o(e) {
if ("number" === typeof e && !isNaN(e)) return e;
if ("string" !== typeof e) return null;
var t, n = i.exec(e),
a = "b";
return n ? (t = parseFloat(n[1]), a = n[4].toLowerCase()) : (t = parseInt(e, 10), a = "b"), isNaN(t) ? null : Math.floor(r[a] * t)
}
},
2110: (e, t, n) => {
"use strict";
var r = n(8309),
i = {
childContextTypes: !0,
contextType: !0,
contextTypes: !0,
defaultProps: !0,
displayName: !0,
getDefaultProps: !0,
getDerivedStateFromError: !0,
getDerivedStateFromProps: !0,
mixins: !0,
propTypes: !0,
type: !0
},
a = {
name: !0,
length: !0,
prototype: !0,
caller: !0,
callee: !0,
arguments: !0,
arity: !0
},
o = {
$$typeof: !0,
compare: !0,
defaultProps: !0,
displayName: !0,
propTypes: !0,
type: !0
},
s = {};
function l(e) {
return r.isMemo(e) ? o : s[e.$$typeof] || i
}
s[r.ForwardRef] = {
$$typeof: !0,
render: !0,
defaultProps: !0,
displayName: !0,
propTypes: !0
}, s[r.Memo] = o;
var c = Object.defineProperty,
u = Object.getOwnPropertyNames,
d = Object.getOwnPropertySymbols,
p = Object.getOwnPropertyDescriptor,
h = Object.getPrototypeOf,
f = Object.prototype;
e.exports = function e(t, n, r) {
if ("string" !== typeof n) {
if (f) {
var i = h(n);
i && i !== f && e(t, i, r)
}
var o = u(n);
d && (o = o.concat(d(n)));
for (var s = l(t), m = l(n), g = 0; g < o.length; ++g) {
var v = o[g];
if (!a[v] && (!r || !r[v]) && (!m || !m[v]) && (!s || !s[v])) {
var y = p(n, v);
try {
c(t, v, y)
} catch (_) {}
}
}
}
return t
}
},
746: (e, t) => {
"use strict";
var n = "function" === typeof Symbol && Symbol.for,
r = n ? Symbol.for("react.element") : 60103,
i = n ? Symbol.for("react.portal") : 60106,
a = n ? Symbol.for("react.fragment") : 60107,
o = n ? Symbol.for("react.strict_mode") : 60108,
s = n ? Symbol.for("react.profiler") : 60114,
l = n ? Symbol.for("react.provider") : 60109,
c = n ? Symbol.for("react.context") : 60110,
u = n ? Symbol.for("react.async_mode") : 60111,
d = n ? Symbol.for("react.concurrent_mode") : 60111,
p = n ? Symbol.for("react.forward_ref") : 60112,
h = n ? Symbol.for("react.suspense") : 60113,
f = n ? Symbol.for("react.suspense_list") : 60120,
m = n ? Symbol.for("react.memo") : 60115,
g = n ? Symbol.for("react.lazy") : 60116,
v = n ? Symbol.for("react.block") : 60121,
y = n ? Symbol.for("react.fundamental") : 60117,
_ = n ? Symbol.for("react.responder") : 60118,
b = n ? Symbol.for("react.scope") : 60119;
function x(e) {
if ("object" === typeof e && null !== e) {
var t = e.$$typeof;
switch (t) {
case r:
switch (e = e.type) {
case u:
case d:
case a:
case s:
case o:
case h:
return e;
default:
switch (e = e && e.$$typeof) {
case c:
case p:
case g:
case m:
case l:
return e;
default:
return t
}
}
case i:
return t
}
}
}
function k(e) {
return x(e) === d
}
t.AsyncMode = u, t.ConcurrentMode = d, t.ContextConsumer = c, t.ContextProvider = l, t.Element = r, t.ForwardRef = p, t.Fragment = a, t.Lazy = g, t.Memo = m, t.Portal = i, t.Profiler = s, t.StrictMode = o, t.Suspense = h, t.isAsyncMode = function(e) {
return k(e) || x(e) === u
}, t.isConcurrentMode = k, t.isContextConsumer = function(e) {
return x(e) === c
}, t.isContextProvider = function(e) {
return x(e) === l
}, t.isElement = function(e) {
return "object" === typeof e && null !== e && e.$$typeof === r
}, t.isForwardRef = function(e) {
return x(e) === p
}, t.isFragment = function(e) {
return x(e) === a
}, t.isLazy = function(e) {
return x(e) === g
}, t.isMemo = function(e) {
return x(e) === m
}, t.isPortal = function(e) {
return x(e) === i
}, t.isProfiler = function(e) {
return x(e) === s
}, t.isStrictMode = function(e) {
return x(e) === o
}, t.isSuspense = function(e) {
return x(e) === h
}, t.isValidElementType = function(e) {
return "string" === typeof e || "function" === typeof e || e === a || e === d || e === s || e === o || e === h || e === f || "object" === typeof e && null !== e && (e.$$typeof === g || e.$$typeof === m || e.$$typeof === l || e.$$typeof === c || e.$$typeof === p || e.$$typeof === y || e.$$typeof === _ || e.$$typeof === b || e.$$typeof === v)
}, t.typeOf = x
},
8309: (e, t, n) => {
"use strict";
e.exports = n(746)
},
1561: (e, t, n) => {
"use strict";
var r = n(1479);
var i = "function" === typeof Object.is ? Object.is : function(e, t) {
return e === t && (0 !== e || 1 / e === 1 / t) || e !== e && t !== t
},
a = r.useState,
o = r.useEffect,
s = r.useLayoutEffect,
l = r.useDebugValue;
function c(e) {
var t = e.getSnapshot;
e = e.value;
try {
var n = t();
return !i(e, n)
} catch (r) {
return !0
}
}
var u = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? function(e, t) {
return t()
} : function(e, t) {
var n = t(),
r = a({
inst: {
value: n,
getSnapshot: t
}
}),
i = r[0].inst,
u = r[1];
return s((function() {
i.value = n, i.getSnapshot = t, c(i) && u({
inst: i
})
}), [e, n, t]), o((function() {
return c(i) && u({
inst: i
}), e((function() {
c(i) && u({
inst: i
})
}))
}), [e]), l(n), n
};
t.useSyncExternalStore = void 0 !== r.useSyncExternalStore ? r.useSyncExternalStore : u
},
7595: (e, t, n) => {
"use strict";
var r = n(1479),
i = n(7248);
var a = "function" === typeof Object.is ? Object.is : function(e, t) {
return e === t && (0 !== e || 1 / e === 1 / t) || e !== e && t !== t
},
o = i.useSyncExternalStore,
s = r.useRef,
l = r.useEffect,
c = r.useMemo,
u = r.useDebugValue;
t.useSyncExternalStoreWithSelector = function(e, t, n, r, i) {
var d = s(null);
if (null === d.current) {
var p = {
hasValue: !1,
value: null
};
d.current = p
} else p = d.current;
d = c((function() {
function e(e) {
if (!l) {
if (l = !0, o = e, e = r(e), void 0 !== i && p.hasValue) {
var t = p.value;
if (i(t, e)) return s = t
}
return s = e
}
if (t = s, a(o, e)) return t;
var n = r(e);
return void 0 !== i && i(t, n) ? t : (o = e, s = n)
}
var o, s, l = !1,
c = void 0 === n ? null : n;
return [function() {
return e(t())
}, null === c ? void 0 : function() {
return e(c())
}]
}), [t, n, r, i]);
var h = o(e, d[0], d[1]);
return l((function() {
p.hasValue = !0, p.value = h
}), [h]), u(h), h
}
},
7248: (e, t, n) => {
"use strict";
e.exports = n(1561)
},
327: (e, t, n) => {
"use strict";
e.exports = n(7595)
},
7399: e => {
e.exports = {
area: !0,
base: !0,
br: !0,
col: !0,
embed: !0,
hr: !0,
img: !0,
input: !0,
link: !0,
meta: !0,
param: !0,
source: !0,
track: !0,
wbr: !0
}
},
4379: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
});
const n = {
env: {
local: {
apiUrl: "https://rsi-platform.local.dev/api/launcher/v3",
rootUrl: "https://rsi-platform.local.dev/heap/"
},
reviewapp: {
apiUrl: void 0,
rootUrl: void 0
},
staging: {
apiUrl: "https://staging.cloudimperiumgames.com/api/launcher/v3",
rootUrl: "https://staging.cloudimperiumgames.com"
},
ptu: {
apiUrl: "https://ptu.cloudimperiumgames.com/api/launcher/v3",
rootUrl: "https://ptu.cloudimperiumgames.com"
},
eptu: {
apiUrl: "https://ptu.cloudimperiumgames.com/api/launcher/v3",
rootUrl: "https://ptu.cloudimperiumgames.com"
},
prod: {
apiUrl: "https://robertsspaceindustries.com/api/launcher/v3",
rootUrl: "https://robertsspaceindustries.com"
}
},
infoApp: {
appName: "RSI Launcher",
companyName: "Cloud Imperium Games",
defaultLibraryFolder: "Roberts Space Industries",
defaultLibraryPath: "C:\\Program Files\\"
},
sentry: {
minidumpUrl: "https://sentry.cloudimperiumgames.com/api/47/minidump/?sentry_key=6d91dc2ae1b74c9e80ee11bbf507df58",
dsn: "https://6d91dc2ae1b74c9e80ee11bbf507df58@sentry.cloudimperiumgames.com/47"
},
rootUrl: "https://robertsspaceindustries.com",
enlistUrl: "https://robertsspaceindustries.com/enlist",
recoverUrl: "https://robertsspaceindustries.com/connect",
websiteUrl: "https://robertsspaceindustries.com",
issueCouncilUrl: "https://issue-council.robertsspaceindustries.com",
installerErrorKnowledgeDatabaseUrl: "https://support.robertsspaceindustries.com/hc/en-us/articles/22514899089431-Error-2000",
copyPTUAccountSupportUrl: "https://support.robertsspaceindustries.com/hc/en-us/articles/360000668488-Install-the-Star-Citizen-PTU",
spectrumUrl: "https://robertsspaceindustries.com/spectrum/community/SC",
communityHubUrl: "https://robertsspaceindustries.com/community-hub",
supportUrl: "https://support.robertsspaceindustries.com",
statusUrl: "https://status.robertsspaceindustries.com",
welcomeHubUrl: "https://robertsspaceindustries.com/playstarcitizen",
analyticsUrl: "https://launcher2.robertsspaceindustries.com",
playnowUrl: "https://robertsspaceindustries.com/star-citizen/play-now",
patchnotesUrl: "https://robertsspaceindustries.com/patch-notes",
downloadUrl: "https://robertsspaceindustries.com/download",
minimumRequirementsUrl: "https://support.robertsspaceindustries.com/hc/en-us/articles/360042417374-Star-Citizen-Minimum-System-Requirements",
filesSupportUrl: "https://support.robertsspaceindustries.com/hc/en-us/articles/360000065688-Send-In-Game-Files-for-RSI-Support",
assets: {
directory: "./assets",
avatar: {
defaultLocal: "/images/avatar_default.jpg",
defaultUrl: "https://cdn.robertsspaceindustries.com/static/images/account/avatar_default.jpg"
},
sounds: {
open: "/sounds/phazein.wav",
error: "/sounds/website_ui_rejection.wav",
save: "/sounds/website_ui_savesettings.wav"
},
musics: {
bg1: "/musics/SC_DL_Raven_Music_23LUFS.ogg",
bg2: "/musics/SC_PMC_600i_v31_24bit_23LUFS.ogg",
bg3: "/musics/SC_PMC_First Light_23LUFS.ogg",
bg4: "/musics/SC_PMC_Main_Theme_23LUFS.ogg",
bg5: "/musics/SC_PMC_Majesty of Space_23LUFS.ogg",
bg6: "/musics/SC_PMC_Mind Games_23LUFS.ogg"
},
games: [{
id: "SC",
logo: "/logos/sc-game-logo-small.svg",
logoWide: "/logos/sc-game-logo-wide.svg",
logoAnimation: "/logos/sc-logo-animation.json",
bgImage: "/images/sc_bg_fallback.jpg",
bgVideo: "/videos/sc_bg_video.webm"
}, {
id: "SQ42",
logo: "/logos/sq42-game-logo-small.svg",
bgImage: "/images/sc_bg_evocati.jpg"
}]
},
authenticationExpiry: 2592e6,
loginDataRemovalTimeout: 3e5,
appLayoutLoaderWipeTrigger: 2500,
requestPollingInterval: {
library: {
base: 6e5,
window: 1e4
},
gamePageContent: {
base: 6e5,
window: 1e4
},
status: {
base: 6e4,
window: 1e3
}
}
};
t.default = n
},
2222: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
},
a = this && this.__importDefault || function(e) {
return e && e.__esModule ? e : {
default: e
}
};
Object.defineProperty(t, "__esModule", {
value: !0
}), t.configuration = void 0, i(n(375), t), i(n(2335), t);
var o = n(4379);
Object.defineProperty(t, "configuration", {
enumerable: !0,
get: function() {
return a(o).default
}
})
},
5396: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.analytics = void 0, t.analytics = {
ANALYTICS_SEND_EVENT: "analytics@send-event",
ANALYTICS_SEND_EVENT_FAILED: "analytics@send-event-failed",
ANALYTICS_SEND_EVENT_SUCCESSFUL: "analytics@send-event-successful"
}
},
9316: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(5396), t)
},
5543: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.autoUpdater = void 0, t.autoUpdater = {
AUTOUPDATER_CHECKING_FOR_UPDATE: "checking-for-update",
AUTOUPDATER_CHECK_NOW: "autoupdater@check-now",
AUTOUPDATER_DOWNLOAD_PROGRESS: "autoupdater@download-progress",
AUTOUPDATER_ERROR: "autoupdater@error",
AUTOUPDATER_UPDATE_AVAILABLE: "autoupdater@update-available",
AUTOUPDATER_UPDATE_NOT_AVAILABLE: "autoupdater@update-not-available",
AUTOUPDATER_UPDATE_DOWNLOADED: "autoupdater@update-downloaded",
AUTOUPDATER_UPDATE_RESTART: "auto-updater@update-restart",
AUTOUPDATER_UPDATE_DISMISS: "auto-updater@update-dismiss",
AUTOUPDATER_QUIT_INSTALL_ERROR: "auto-updater@update-quit-install-error",
AUTOUPDATER_NEW_VERSION_INSTALLED: "auto-updater@new-version-installed"
}
},
6735: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(5543), t)
},
4726: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.config = void 0, t.config = {
GET_GLOBAL: "get-global",
GET_APP_PATH: "get-app-path"
}
},
2383: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(4726), t)
},
1905: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.connectivity = void 0, t.connectivity = {
CONNECTIVITY_CONNECTION_AVAILABLE: "connectivity@connection-available",
CONNECTIVITY_CONNECTION_UNAVAILABLE: "connectivity@connection-unavailable",
CONNECTIVITY_CHECK_CONNECTION: "connectivity@check-connection"
}
},
2130: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(1905), t)
},
3520: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.dialog = void 0, t.dialog = {
SHOW_OPEN_DIALOG: "dialog@show-open-dialog",
SHOW_LIBRARY_FOLDER_DIALOG: "dialog@show-library-folder"
}
},
8762: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(3520), t)
},
5116: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.channel = void 0, t.channel = {
SELECT_GAME_CHANNEL: "select-game-channel"
}
},
2859: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(5116), t)
},
5376: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.gameFiles = void 0, t.gameFiles = {
GAME_FILES_INITIALIZE_WATCHER: "game-files@initialize-watcher",
GAME_FILES_CHANGED: "game-files@game-files-changed",
GAME_FILES_REMOVE_USER_FOLDER: "game-files@remove-user-folder",
GAME_FILES_REMOVE_USER_FOLDER_FAILED: "game-files@remove-user-folder-failed",
GAME_FILES_REMOVE_USER_FOLDER_SICCESSFUL: "game-files@remove-user-folder-successful",
GAME_FILES_CHECK_USER_FOLDER_EXISTS: "game-files@check-user-folder-exists",
GAME_FILES_REMOVE_SHADERS_FOLDER: "game-files@remove-shaders-folder",
GAME_FILES_REMOVE_SHADERS_FOLDER_FAILED: "game-files@remove-shaders-folder-failed",
GAME_FILES_REMOVE_SHADERS_FOLDER_SUCCESSFUL: "game-files@remove-shaders-folder-successful",
GAME_FILES_CHECK_SHADERS_FOLDER_EXISTS: "game-files@check-shaders-folder-exists"
}
},
7433: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(5376), t)
},
2466: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(9316), t), i(n(6735), t), i(n(2130), t), i(n(2383), t), i(n(8762), t), i(n(2859), t), i(n(7433), t), i(n(8675), t), i(n(5465), t), i(n(8533), t), i(n(6423), t), i(n(3081), t), i(n(712), t), i(n(3621), t), i(n(730), t), i(n(5535), t), i(n(6305), t)
},
8675: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(4925), t)
},
4925: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.installer = void 0, t.installer = {
INSTALLER_FIX_PERMISSIONS: "installer@fix-permissions",
INSTALLER_FIX_PERMISSIONS_SUCCESSFUL: "installer@fix-permissions-successful",
INSTALLER_FIX_PERMISSIONS_FAILED: "installer@fix-permissions-failed",
INSTALLER_DOWNLOAD_START: "installer@initial-download-start",
INSTALLER_RETRIEVE_REMOTE_FILE_START: "installer@retrieve-remote-file-list-start",
INSTALLER_UPDATE_FILE_P4K_START: "installer@update-files-inside-p4k-start",
INSTALLER_UPDATE_LOOSE_FILE_START: "installer@update-loose-files-start",
INSTALLER_UPDATE_PK4_START: "installer@update-p4k-structure-start",
INSTALLER_DOWNLOAD_PROGRESS: "installer@initial-download-progress",
INSTALLER_RETRIEVE_REMOTE_FILE_PROGRESS: "installer@retrieve-remote-file-list-progress",
INSTALLER_UPDATE_FILE_P4K_PROGRESS: "installer@update-files-inside-p4k-progress",
INSTALLER_UPDATE_LOOSE_FILE_PROGRESS: "installer@update-loose-files-progress",
COMPUTE_FILE_LIST_DIFFERENCE_START: "installer@compute-file-list-difference-start",
COMPUTE_FILE_LIST_DIFFERENCE_END: "installer@compute-file-list-difference-end",
INSTALLER_DOWNLOAD_END: "installer@initial-download-end",
INSTALLER_RETRIEVE_REMOTE_FILE_END: "installer@retrieve-remote-file-list-end",
INSTALLER_UPDATE_FILE_P4K_END: "installer@update-files-inside-p4k-end",
INSTALLER_UPDATE_LOOSE_FILE_END: "installer@update-loose-files-end",
INSTALLER_UPDATE_PK4_END: "installer@update-p4k-structure-end",
INSTALLER_PAUSE: "installer@pause",
INSTALLER_PAUSE_SUCCESSFUL: "installer@pause-successful",
INSTALLER_PAUSE_FAILED: "installer@pause-failed",
INSTALLER_RESUME: "installer@resume",
INSTALLER_RESUME_SUCCESSFUL: "installer@resume-successful",
INSTALLER_RESUME_FAILED: "installer@resume-failed",
INSTALLER_CANCEL: "installer@cancel",
INSTALLER_CANCEL_SUCCESSFUL: "installer@cancel-successful",
INSTALLER_CANCEL_FAILED: "installer@cancel-failed",
INSTALLER_SET_OPTIONS: "installer@set-option",
INSTALLER_SET_OPTION_SUCCESSFUL: "installer@set-option-successful",
INSTALLER_INSTALL: "installer@install",
INSTALLER_INSTALL_SUCCESSFUL: "installer@install-successful",
INSTALLER_INSTALL_FAILED: "installer@install-failed",
INSTALLER_INSTALL_PROGRESS: "installer@install-progress",
INSTALLER_UNINSTALL: "installer@uninstall",
INSTALLER_UNINSTALL_SUCCESSFUL: "installer@uninstall-successful",
INSTALLER_UNINSTALL_FAILED: "installer@uninstall-failed"
}
},
5465: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(670), t)
},
670: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.launcher = void 0, t.launcher = {
LAUNCHER_LAUNCH: "launcher@launch",
LAUNCHER_LAUNCH_SUCCESSFUL: "launcher@launch-successful",
LAUNCHER_LAUNCH_FAILED: "launcher@launch-failed",
LAUNCHER_LAUNCH_STOPPED: "launcher@launch-stopped",
LAUNCHER_IS_GAME_RUNNING: "launcher@is-game-running",
LAUNCHER_KILL_GAME_PROCESS: "launcher@kill-game-process",
LAUNCHER_GET_RELEASE_OBJECT: "launcher@get-game-release-object"
}
},
8533: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(1829), t)
},
1829: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.library = void 0, t.library = {
CHANGE_LIBRARY_FOLDER: "change-library-folder"
}
},
6423: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(6717), t)
},
6717: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.logger = void 0, t.logger = {
LOGGER_LOG_EVENT: "logger@log-event",
LOGGER_GET_LOGS: "logger@get-logs"
}
},
3081: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(469), t)
},
469: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.notification = void 0, t.notification = {
NATIVE_NOTIFICATION_SHOW: "native-notification@show-notification"
}
},
712: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(4692), t)
},
4692: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.settings = void 0, t.settings = {
GET_ANIMATION_SYSTEM_SETTINGS: "settings@get-animation-system-settings",
RESTART_APP: "settings@restart-app"
}
},
3621: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(3542), t)
},
3542: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.signIn = void 0, t.signIn = {
USER_AUTO_SIGNIN: "user@auto-sign-in",
USER_SIGNIN: "user@sign-in",
USER_SIGNOUT: "user@signOut"
}
},
730: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(8171), t)
},
8171: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.store = void 0, t.store = {
STORE_SET: "store-set",
STORE_SET_SUCCESS: "store-set-success",
STORE_SET_ERROR: "store-set-error",
STORE_GET: "store-get",
STORE_CLEAR: "store-clear",
STORE_CLEAR_SUCCESS: "store-clear-success",
STORE_CLEAR_ERROR: "store-clear-error"
}
},
5535: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(933), t)
},
933: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.tray = void 0, t.tray = {
TRAY_UPDATE_MENU: "tray@update-menu",
TRAY_MENU_ITEM_CLICKED: "tray@menu-item-clicked"
}
},
6305: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(3672), t)
},
3672: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.window = void 0, t.window = {
WINDOW_OPEN_INTERNAL: "window@open-internal",
WINDOW_OPEN_EXTERNAL: "window@open-external",
WINDOW_MINIMIZE: "window@minimize",
WINDOW_RESTORE: "window@restore",
WINDOW_HIDE: "window@hide",
WINDOW_SHOW: "window@show",
WINDOW_QUIT: "window@quit",
WINDOW_CLOSE: "window@close",
WINDOW_SET_SMALL: "window@create-small",
WINDOW_SET_LARGE: "window@create-large",
WINDOW_OPEN: "window@open",
WINDOW_IS_MINIMIZED: "window@is-minimized",
WINDOW_HIDE_SUCCESSFUL: "window@hide-successful",
WINDOW_SHOW_SUCCESSFUL: "window@show-successful",
WINDOW_QUIT_SUCCESSFUL: "window@quit-successful"
}
},
375: (e, t, n) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.ipcEvents = void 0;
const r = n(2466);
t.ipcEvents = {
analytics: r.analytics,
autoUpdater: r.autoUpdater,
config: r.config,
connectivity: r.connectivity,
dialog: r.dialog,
channel: r.channel,
gameFiles: r.gameFiles,
installer: r.installer,
launcher: r.launcher,
library: r.library,
notification: r.notification,
logger: r.logger,
settings: r.settings,
signIn: r.signIn,
store: r.store,
tray: r.tray,
window: r.window
}
},
2335: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(1012), t)
},
8096: (e, t) => {
"use strict";
var n;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.AnalyticsEventName = void 0,
function(e) {
e.APP_OPEN = "App:Open", e.APP_CLOSE = "App:Close", e.APP_SIGNEDIN = "App:SignedIn", e.APP_SIGNEDOUT = "App:SignedOut", e.APP_API_ERROR = "App:Api:Error", e.APP_INSTALL_START = "App:Install:Start", e.APP_INSTALL_STOP = "App:Install:Stop", e.APP_INSTALL_SUCCESS = "App:Install:Success", e.APP_INSTALL_ERROR = "App:Install:Error", e.APP_VERIFY_START = "App:Verify:Start", e.APP_VERIFY_STOP = "App:Verify:Stop", e.APP_VERIFY_SUCCESS = "App:Verify:Success", e.APP_VERIFY_ERROR = "App:Verify:Error", e.APP_UPDATE_START = "App:Update:Start", e.APP_UPDATE_STOP = "App:Update:Stop", e.APP_UPDATE_SUCCESS = "App:Update:Success", e.APP_UPDATE_ERROR = "App:Update:Error", e.APP_UNINSTALL_START = "App:Uninstall:Start", e.APP_UNINSTALL_SUCCESS = "App:Uninstall:Success", e.APP_UNINSTALL_ERROR = "App:Uninstall:Error", e.APP_LAUNCH_START = "App:Launch:Start", e.APP_LAUNCH_STOP = "App:Launch:Stop", e.APP_LAUNCH_ERROR = "App:Launch:Error", e.OLD_APP_LAUNCH_START = "App:Launcher:Start", e.OLD_APP_LAUNCH_STOP = "App:Launcher:Stop", e.OLD_APP_LAUNCH_ERROR = "App:Launcher:Error"
}(n || (t.AnalyticsEventName = n = {}))
},
5708: (e, t) => {
"use strict";
var n;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.AutoUpdateDialogStates = void 0,
function(e) {
e.AVAILABLE = "available", e.NOT_AVAILABLE = "not-available", e.QUIT_GAME = "quit-game", e.ERROR = "error"
}(n || (t.AutoUpdateDialogStates = n = {}))
},
7035: (e, t) => {
"use strict";
var n;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.ConnectionMode = void 0,
function(e) {
e.ONLINE = "online", e.OFFLINE = "offline", e.NO_CONNECTION = "no-connection"
}(n || (t.ConnectionMode = n = {}))
},
2700: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.GenericError = t.errorsCodes = t.errorsNames = void 0, t.errorsNames = {
ERR_UNKNOWN: "GenericError",
ERR_LOGOUT_FAILED: "logoutFailed",
ERR_DISPLAY_AGREEMENT: "DisplayAgreementErr"
}, t.errorsCodes = {
ERR_UNKNOWN: "GenericError",
ERR_LOGOUT_FAILED: "logoutFailed",
ERR_DISPLAY_AGREEMENT: "DisplayAgreementErr"
};
class n extends Error {
constructor({
message: e = "Unknown Error",
code: r = t.errorsNames.ERR_UNKNOWN,
payload: i = null
}) {
super(e), Object.setPrototypeOf(this, n.prototype), this.code = r, this.payload = i
}
}
t.GenericError = n
},
6994: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(2700), t), i(n(728), t), i(n(6565), t), i(n(2358), t), i(n(2299), t)
},
728: (e, t, n) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.CancelError = t.Error21Error = t.NetworkDefaultError = t.NetworkTooManyFilesFailedError = t.NetworkFailedToRecieveHandshakeError = t.NetworkCouldNotResolveHostError = t.ExceptionU00Error = t.InvalidArgumentTypeError = t.P4KError = t.IOError = t.FixPermissionError = t.BasePackGenericError = t.DownloadUnsuccessfullError = t.PatcherGenericError = t.BasePackP4kCorruptedError = t.PatcherUnknownNetworkError = t.RetrieveManifestError = t.Pk4CorruptedError = t.FileInUseError = t.WritePermissionsError = t.DiskFullError = t.NotMappedError = t.MDFileHeaderNotFoundError = t.InvalidMDFileHeaderError = t.InvalidMDFileError = t.InstallerError = t.LauncherSpecificInstallerErrorsCodes = t.InstallerErrorsNames = t.InitialDownloadErrorsNames = t.PatcherErrorsNames = void 0;
const r = n(2700);
t.PatcherErrorsNames = {
ERR_DISK_FULL: "DiskFullError",
ERR_WRITE_PERMISSION: "WritePermissionError",
ERR_FILE_IN_USE: "FileInUseError",
ERR_RETRIEVE_MANIFEST: "RetrieveManifestError",
ERR_P4K_CORRUPTED: "P4kCorruptedError",
ERR_BASE_P4K_CORRUPTED: "BaseP4kCorruptedError",
ERR_UNKNOWN_NETWORK_ERROR: "UnknownNetworkError",
ERR_PATCHER_UNKNOWN: "GenericPatchInstallerError",
ERR_DOWNLOAD_UNSUCCESSFULL: "DownloadUnsuccessfullError",
ERR_IO_ERROR: "IOError",
ERR_P4K_ERROR: "P4KError",
ERR_INVALID_ARGUMENT_TYPE: "InvalidArgumentTypeError",
ERR_EXCEPTION_U_00: "ExceptionU00Error",
ERR_NETWORK_COULD_NOT_RESOLVE_HOST: "NetworkCouldNotResolveHostError",
ERR_NETWORK_FAILED_TO_RECEIVE_HANDSHAKE: "NetworkFailedToReceiveHandshakeError",
ERR_NETWORK_TOO_MANY_FILES_FAILED: "NetworkTooMAnyFilesFailedError",
ERR_NETWORK_DEFAULT: "NetworkDefaultError",
ERR_ERROR_21: "Error21Error"
}, t.InitialDownloadErrorsNames = {
ERR_INIT_UNKNOWN: "GenericInitialDownloadError",
ERR_INVALID_MD_FILE: "InvalidMDFileError",
ERR_INVALID_MD_FILE_HEADER: "InvalidMDFileHeaderError",
ERR_MD_FILE_HEADER_NOT_FOUND: "MDFileHeaderNotFoundError",
ERR_NOT_MAPPED_ERRORS: "NotMappedErrors"
}, t.InstallerErrorsNames = Object.assign(Object.assign(Object.assign({}, t.PatcherErrorsNames), t.InitialDownloadErrorsNames), {
ERR_INSTALL_UNKNOWN: "GenericInstallerError",
ERR_FIX_PERMISSIONS: "FixPermissionsError",
ERR_CANCEL_FAIL: "CancelFailError"
});
t.LauncherSpecificInstallerErrorsCodes = Object.assign(Object.assign({
ERR_INSTALL_UNKNOWN: "2000",
ERR_FIX_PERMISSIONS: "2001",
ERR_CANCEL_FAIL: "2002"
}, {
ERR_DISK_FULL: "5000",
ERR_WRITE_PERMISSION: "5001",
ERR_FILE_IN_USE: "5002",
ERR_RETRIEVE_MANIFEST: "5003",
ERR_P4K_CORRUPTED: "5004",
ERR_UNKNOWN_NETWORK_ERROR: "5005",
ERR_BASE_P4K_CORRUPTED: "5006",
ERR_PATCHER_UNKNOWN: "5007",
ERR_DOWNLOAD_UNSUCCESSFULL: "5008",
ERR_IO_ERROR: "5009",
ERR_P4K_ERROR: "5010",
ERR_INVALID_ARGUMENT_TYPE: "5011",
ERR_EXCEPTION_U_00: "5013",
ERR_NETWORK_COULD_NOT_RESOLVE_HOST: "5015",
ERR_NETWORK_FAILED_TO_RECEIVE_HANDSHAKE: "5016",
ERR_NETWORK_TOO_MANY_FILES_FAILED: "5017",
ERR_NETWORK_DEFAULT: "5018",
ERR_ERROR_21: "5021"
}), {
ERR_INIT_UNKNOWN: "3000",
ERR_INVALID_MD_FILE: "3001",
ERR_INVALID_MD_FILE_HEADER: "3003",
ERR_MD_FILE_HEADER_NOT_FOUND: "3004",
ERR_NOT_MAPPED_ERRORS: "3005"
});
class i extends r.GenericError {
constructor({
message: e,
code: n = t.LauncherSpecificInstallerErrorsCodes.ERR_INSTALL_UNKNOWN,
payload: r
}) {
super({
message: e,
code: n,
payload: r
}), Object.setPrototypeOf(this, i.prototype), this.code = n, this.payload = r
}
}
t.InstallerError = i;
class a extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_INVALID_MD_FILE,
payload: n
}), Object.setPrototypeOf(this, a.prototype)
}
}
t.InvalidMDFileError = a;
t.InvalidMDFileHeaderError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_INVALID_MD_FILE_HEADER,
payload: n
}), Object.setPrototypeOf(this, a.prototype)
}
};
t.MDFileHeaderNotFoundError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_MD_FILE_HEADER_NOT_FOUND,
payload: n
}), Object.setPrototypeOf(this, a.prototype)
}
};
t.NotMappedError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_NOT_MAPPED_ERRORS,
payload: n
}), Object.setPrototypeOf(this, a.prototype)
}
};
class o extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_DISK_FULL,
payload: n
}), Object.setPrototypeOf(this, o.prototype)
}
}
t.DiskFullError = o;
class s extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_WRITE_PERMISSION,
payload: n
}), Object.setPrototypeOf(this, s.prototype)
}
}
t.WritePermissionsError = s;
class l extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_FILE_IN_USE,
payload: n
}), Object.setPrototypeOf(this, l.prototype)
}
}
t.FileInUseError = l;
class c extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_P4K_CORRUPTED,
payload: n
}), Object.setPrototypeOf(this, c.prototype)
}
}
t.Pk4CorruptedError = c;
class u extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_RETRIEVE_MANIFEST,
payload: n
}), Object.setPrototypeOf(this, u.prototype)
}
}
t.RetrieveManifestError = u;
class d extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_UNKNOWN_NETWORK_ERROR,
payload: n
}), Object.setPrototypeOf(this, d.prototype)
}
}
t.PatcherUnknownNetworkError = d;
class p extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_BASE_P4K_CORRUPTED,
payload: n
}), Object.setPrototypeOf(this, p.prototype)
}
}
t.BasePackP4kCorruptedError = p;
class h extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_PATCHER_UNKNOWN,
payload: n
}), Object.setPrototypeOf(this, h.prototype)
}
}
t.PatcherGenericError = h;
t.DownloadUnsuccessfullError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_DOWNLOAD_UNSUCCESSFULL,
payload: n
}), Object.setPrototypeOf(this, h.prototype)
}
};
class f extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_INIT_UNKNOWN,
payload: n
}), Object.setPrototypeOf(this, f.prototype)
}
}
t.BasePackGenericError = f;
class m extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_FIX_PERMISSIONS,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
}
t.FixPermissionError = m;
t.IOError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_IO_ERROR,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.P4KError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_P4K_ERROR,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.InvalidArgumentTypeError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_INVALID_ARGUMENT_TYPE,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.ExceptionU00Error = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_EXCEPTION_U_00,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.NetworkCouldNotResolveHostError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_NETWORK_COULD_NOT_RESOLVE_HOST,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.NetworkFailedToRecieveHandshakeError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_NETWORK_FAILED_TO_RECEIVE_HANDSHAKE,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.NetworkTooManyFilesFailedError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_NETWORK_TOO_MANY_FILES_FAILED,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.NetworkDefaultError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_NETWORK_DEFAULT,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.Error21Error = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_ERROR_21,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
};
t.CancelError = class extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificInstallerErrorsCodes.ERR_CANCEL_FAIL,
payload: n
}), Object.setPrototypeOf(this, m.prototype)
}
}
},
6565: (e, t, n) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.serializerInstallerErrors = void 0;
const r = n(728);
t.serializerInstallerErrors = e => {
const {
code: t,
message: n,
payload: i
} = e;
switch (console.log(e), t) {
case r.InstallerErrorsNames.ERR_INVALID_MD_FILE:
return new r.InvalidMDFileError(n, i);
case r.InstallerErrorsNames.ERR_INVALID_MD_FILE_HEADER:
return new r.InvalidMDFileHeaderError(n, i);
case r.InstallerErrorsNames.ERR_MD_FILE_HEADER_NOT_FOUND:
return new r.MDFileHeaderNotFoundError(n, i);
case r.InstallerErrorsNames.ERR_NOT_MAPPED_ERRORS:
return new r.NotMappedError(n, i);
case r.InstallerErrorsNames.ERR_DISK_FULL:
return new r.DiskFullError(n, i);
case r.InstallerErrorsNames.ERR_FILE_IN_USE:
return new r.FileInUseError(n, i);
case r.InstallerErrorsNames.ERR_WRITE_PERMISSION:
return new r.WritePermissionsError(n, i);
case r.InstallerErrorsNames.ERR_P4K_CORRUPTED:
return new r.Pk4CorruptedError(n, i);
case r.InstallerErrorsNames.ERR_RETRIEVE_MANIFEST:
return new r.RetrieveManifestError(n, i);
case r.InstallerErrorsNames.ERR_UNKNOWN_NETWORK_ERROR:
return new r.PatcherUnknownNetworkError(n, i);
case r.InstallerErrorsNames.ERR_BASE_P4K_CORRUPTED:
return new r.BasePackP4kCorruptedError(n, i);
case r.InstallerErrorsNames.ERR_DOWNLOAD_UNSUCCESSFULL:
return new r.DownloadUnsuccessfullError(n, i);
case r.InstallerErrorsNames.ERR_PATCHER_UNKNOWN:
return new r.PatcherGenericError(n, i);
case r.InstallerErrorsNames.ERR_INIT_UNKNOWN:
return new r.BasePackGenericError(n, i);
case r.InstallerErrorsNames.ERR_FIX_PERMISSIONS:
return new r.FixPermissionError(n, i);
case r.InstallerErrorsNames.ERR_IO_ERROR:
return new r.IOError(n, i);
case r.InstallerErrorsNames.ERR_P4K_ERROR:
return new r.P4KError(n, i);
case r.InstallerErrorsNames.ERR_INVALID_ARGUMENT_TYPE:
return new r.InvalidArgumentTypeError(n, i);
case r.InstallerErrorsNames.ERR_EXCEPTION_U_00:
return new r.ExceptionU00Error(n, i);
case r.InstallerErrorsNames.ERR_NETWORK_COULD_NOT_RESOLVE_HOST:
case r.InstallerErrorsNames.ERR_NETWORK_FAILED_TO_RECEIVE_HANDSHAKE:
return new r.NetworkFailedToRecieveHandshakeError(n, i);
case r.InstallerErrorsNames.ERR_NETWORK_DEFAULT:
return new r.NetworkDefaultError(n, i);
case r.InstallerErrorsNames.ERR_ERROR_21:
return new r.Error21Error(n, i);
default:
return new r.InstallerError({
code: r.LauncherSpecificInstallerErrorsCodes.ERR_INSTALL_UNKNOWN,
message: n,
payload: i
})
}
}
},
2358: (e, t, n) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.GameCrashError = t.EACError = t.NoGameFilesError = t.LaunchError = t.LauncherSpecificLaunchErrorCodes = t.LaunchErrorsNames = void 0;
const r = n(2700);
t.LaunchErrorsNames = {
ERR_LAUNCH_UNKNOWN: "UnknownLaunchError",
ERR_LAUNCH_NO_GAME_FILES: "NoGameFileError",
ERR_LAUNCH_EAC: "LaunchEACError",
ERR_LAUNCH_GAME_CRASH: "GameCrashLaunchError"
}, t.LauncherSpecificLaunchErrorCodes = {
ERR_LAUNCH_UNKNOWN: "6000",
ERR_LAUNCH_NO_GAME_FILES: "6001",
ERR_LAUNCH_EAC: "6002",
ERR_LAUNCH_GAME_CRASH: "7000"
};
class i extends r.GenericError {
constructor({
message: e,
code: n = t.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_UNKNOWN,
payload: r
}) {
super({
message: e,
code: n,
payload: r
}), Object.setPrototypeOf(this, i.prototype), this.code = n, this.payload = r
}
}
t.LaunchError = i;
class a extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_NO_GAME_FILES,
payload: n
}), Object.setPrototypeOf(this, a.prototype)
}
}
t.NoGameFilesError = a;
class o extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_EAC,
payload: n
}), Object.setPrototypeOf(this, o.prototype)
}
}
t.EACError = o;
class s extends i {
constructor(e, n) {
super({
message: e,
code: t.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_GAME_CRASH,
payload: n
}), Object.setPrototypeOf(this, s.prototype)
}
}
t.GameCrashError = s
},
2299: (e, t, n) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
}), t.serializerLaunchErrors = void 0;
const r = n(2358);
t.serializerLaunchErrors = e => {
const {
code: t,
message: n,
payload: i
} = e;
switch (t) {
case r.LaunchErrorsNames.ERR_LAUNCH_NO_GAME_FILES:
return new r.NoGameFilesError(n, i);
case r.LaunchErrorsNames.ERR_LAUNCH_EAC:
return new r.EACError(n, i);
case r.LaunchErrorsNames.ERR_LAUNCH_GAME_CRASH:
return new r.GameCrashError(n, i);
case r.LaunchErrorsNames.ERR_LAUNCH_UNKNOWN:
default:
return new r.LaunchError({
code: r.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_UNKNOWN,
message: n,
payload: i
})
}
}
},
2087: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
})
},
1012: function(e, t, n) {
"use strict";
var r = this && this.__createBinding || (Object.create ? function(e, t, n, r) {
void 0 === r && (r = n);
var i = Object.getOwnPropertyDescriptor(t, n);
i && !("get" in i ? !t.__esModule : i.writable || i.configurable) || (i = {
enumerable: !0,
get: function() {
return t[n]
}
}), Object.defineProperty(e, r, i)
} : function(e, t, n, r) {
void 0 === r && (r = n), e[r] = t[n]
}),
i = this && this.__exportStar || function(e, t) {
for (var n in e) "default" === n || Object.prototype.hasOwnProperty.call(t, n) || r(t, e, n)
};
Object.defineProperty(t, "__esModule", {
value: !0
}), i(n(6994), t), i(n(8096), t), i(n(7035), t), i(n(2087), t), i(n(5708), t), i(n(4208), t), i(n(7735), t), i(n(3010), t), i(n(4764), t), i(n(9056), t), i(n(4724), t), i(n(6840), t)
},
4208: (e, t) => {
"use strict";
var n, r, i;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.InstallerOptions = t.InstallationStatus = t.InstallationType = void 0,
function(e) {
e.INSTALL = "install", e.VERIFY = "verify", e.UPDATE = "update"
}(n || (t.InstallationType = n = {})),
function(e) {
e.WAITING = "waiting", e.CANCELLING = "cancelling", e.IN_PROGRESS = "in-progress", e.PAUSED = "paused", e.COMPLETED = "completed", e.ERROR = "error"
}(r || (t.InstallationStatus = r = {})),
function(e) {
e.ConcurrentTransfers = "concurrentTransfers", e.MaximumDownloadBandwidth = "maximumDownloadBandwidth", e.MaximumTransfersInFlight = "maximumTransfersInFlight", e.RetriesPerFile = "retriesPerFile"
}(i || (t.InstallerOptions = i = {}))
},
3010: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
})
},
7735: (e, t) => {
"use strict";
var n;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.GameChannelStatus = void 0,
function(e) {
e.AVAILABLE = "available", e.INSTALLED = "installed", e.RUNNING = "running", e.UNINSTALLING = "uninstalling", e.UPDATE_AVAILABLE = "update-available"
}(n || (t.GameChannelStatus = n = {}))
},
4724: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
})
},
9056: (e, t) => {
"use strict";
var n, r, i;
Object.defineProperty(t, "__esModule", {
value: !0
}), t.SystemStatusOrder = t.RSISystemName = t.RSISystemStatus = void 0,
function(e) {
e.MAJOR = "major", e.PARTIAL = "partial", e.DEGRADED = "degraded", e.MAINTENANCE = "maintenance", e.OPERATIONAL = "operational"
}(n || (t.RSISystemStatus = n = {})),
function(e) {
e.PLATFORM = "Platform", e.PERSISTENTE_UNIVERSE = "Persistent Universe", e.ARENA_COMMANDER = "Arena Commander"
}(r || (t.RSISystemName = r = {})),
function(e) {
e[e.MAJOR = 0] = "MAJOR", e[e.PARTIAL = 1] = "PARTIAL", e[e.DEGRADED = 2] = "DEGRADED", e[e.MAINTENANCE = 3] = "MAINTENANCE", e[e.OPERATIONAL = 4] = "OPERATIONAL"
}(i || (t.SystemStatusOrder = i = {}))
},
4764: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
})
},
6840: (e, t) => {
"use strict";
Object.defineProperty(t, "__esModule", {
value: !0
})
},
1901: (e, t, n) => {
"use strict";
n.d(t, {
N: () => a
});
var r = n(8974),
i = n(5391),
a = new class extends r.l {
#e = !0;
#t;
#n;
constructor() {
super(), this.#n = e => {
if (!i.sk && window.addEventListener) {
const t = () => e(!0),
n = () => e(!1);
return window.addEventListener("online", t, !1), window.addEventListener("offline", n, !1), () => {
window.removeEventListener("online", t), window.removeEventListener("offline", n)
}
}
}
}
onSubscribe() {
this.#t || this.setEventListener(this.#n)
}
onUnsubscribe() {
this.hasListeners() || (this.#t?.(), this.#t = void 0)
}
setEventListener(e) {
this.#n = e, this.#t?.(), this.#t = e(this.setOnline.bind(this))
}
setOnline(e) {
this.#e !== e && (this.#e = e, this.listeners.forEach((t => {
t(e)
})))
}
isOnline() {
return this.#e
}
}
},
8974: (e, t, n) => {
"use strict";
n.d(t, {
l: () => r
});
var r = class {
constructor() {
this.listeners = new Set, this.subscribe = this.subscribe.bind(this)
}
subscribe(e) {
return this.listeners.add(e), this.onSubscribe(), () => {
this.listeners.delete(e), this.onUnsubscribe()
}
}
hasListeners() {
return this.listeners.size > 0
}
onSubscribe() {}
onUnsubscribe() {}
}
},
5391: (e, t, n) => {
"use strict";
n.d(t, {
A4: () => _,
Ht: () => k,
Kp: () => s,
PN: () => o,
Rm: () => u,
SE: () => a,
VS: () => f,
VX: () => x,
X7: () => c,
Ym: () => d,
ZT: () => i,
_v: () => y,
_x: () => l,
oE: () => b,
sk: () => r,
to: () => p
});
var r = "undefined" === typeof window || "Deno" in window;
function i() {}
function a(e, t) {
return "function" === typeof e ? e(t) : e
}
function o(e) {
return "number" === typeof e && e >= 0 && e !== 1 / 0
}
function s(e, t) {
return Math.max(e + (t || 0) - Date.now(), 0)
}
function l(e, t) {
const {
type: n = "all",
exact: r,
fetchStatus: i,
predicate: a,
queryKey: o,
stale: s
} = e;
if (o)
if (r) {
if (t.queryHash !== u(o, t.options)) return !1
} else if (!p(t.queryKey, o)) return !1;
if ("all" !== n) {
const e = t.isActive();
if ("active" === n && !e) return !1;
if ("inactive" === n && e) return !1
}
return ("boolean" !== typeof s || t.isStale() === s) && (("undefined" === typeof i || i === t.state.fetchStatus) && !(a && !a(t)))
}
function c(e, t) {
const {
exact: n,
status: r,
predicate: i,
mutationKey: a
} = e;
if (a) {
if (!t.options.mutationKey) return !1;
if (n) {
if (d(t.options.mutationKey) !== d(a)) return !1
} else if (!p(t.options.mutationKey, a)) return !1
}
return (!r || t.state.status === r) && !(i && !i(t))
}
function u(e, t) {
return (t?.queryKeyHashFn || d)(e)
}
function d(e) {
return JSON.stringify(e, ((e, t) => g(t) ? Object.keys(t).sort().reduce(((e, n) => (e[n] = t[n], e)), {}) : t))
}
function p(e, t) {
return e === t || typeof e === typeof t && (!(!e || !t || "object" !== typeof e || "object" !== typeof t) && !Object.keys(t).some((n => !p(e[n], t[n]))))
}
function h(e, t) {
if (e === t) return e;
const n = m(e) && m(t);
if (n || g(e) && g(t)) {
const r = n ? e.length : Object.keys(e).length,
i = n ? t : Object.keys(t),
a = i.length,
o = n ? [] : {};
let s = 0;
for (let l = 0; l < a; l++) {
const r = n ? l : i[l];
o[r] = h(e[r], t[r]), o[r] === e[r] && s++
}
return r === a && s === r ? e : o
}
return t
}
function f(e, t) {
if (e && !t || t && !e) return !1;
for (const n in e)
if (e[n] !== t[n]) return !1;
return !0
}
function m(e) {
return Array.isArray(e) && e.length === Object.keys(e).length
}
function g(e) {
if (!v(e)) return !1;
const t = e.constructor;
if ("undefined" === typeof t) return !0;
const n = t.prototype;
return !!v(n) && !!n.hasOwnProperty("isPrototypeOf")
}
function v(e) {
return "[object Object]" === Object.prototype.toString.call(e)
}
function y(e) {
return new Promise((t => {
setTimeout(t, e)
}))
}
function _(e) {
y(0).then(e)
}
function b(e, t, n) {
return "function" === typeof n.structuralSharing ? n.structuralSharing(e, t) : !1 !== n.structuralSharing ? h(e, t) : t
}
function x(e, t, n = 0) {
const r = [...e, t];
return n && r.length > n ? r.slice(1) : r
}
function k(e, t, n = 0) {
const r = [t, ...e];
return n && r.length > n ? r.slice(0, -1) : r
}
},
3713: (e, t, n) => {
"use strict";
n.d(t, {
NL: () => a,
aH: () => o
});
var r = n(1479),
i = r.createContext(void 0),
a = e => {
const t = r.useContext(i);
if (e) return e;
if (!t) throw new Error("No QueryClient set, use QueryClientProvider to set one");
return t
},
o = ({
client: e,
children: t
}) => (r.useEffect((() => (e.mount(), () => {
e.unmount()
})), [e]), r.createElement(i.Provider, {
value: e
}, t))
}
},
t = {};
function n(r) {
var i = t[r];
if (void 0 !== i) return i.exports;
var a = t[r] = {
exports: {}
};
return e[r].call(a.exports, a, a.exports, n), a.exports
}
n.m = e, n.n = e => {
var t = e && e.__esModule ? () => e.default : () => e;
return n.d(t, {
a: t
}), t
}, (() => {
var e, t = Object.getPrototypeOf ? e => Object.getPrototypeOf(e) : e => e.__proto__;
n.t = function(r, i) {
if (1 & i && (r = this(r)), 8 & i) return r;
if ("object" === typeof r && r) {
if (4 & i && r.__esModule) return r;
if (16 & i && "function" === typeof r.then) return r
}
var a = Object.create(null);
n.r(a);
var o = {};
e = e || [null, t({}), t([]), t(t)];
for (var s = 2 & i && r;
"object" == typeof s && !~e.indexOf(s); s = t(s)) Object.getOwnPropertyNames(s).forEach((e => o[e] = () => r[e]));
return o.default = () => r, n.d(a, o), a
}
})(), n.d = (e, t) => {
for (var r in t) n.o(t, r) && !n.o(e, r) && Object.defineProperty(e, r, {
enumerable: !0,
get: t[r]
})
}, n.f = {}, n.e = e => Promise.all(Object.keys(n.f).reduce(((t, r) => (n.f[r](e, t), t)), [])), n.u = e => "static/js/" + e + "." + {
496: "25235a38",
569: "7c5bec35",
803: "5b23f8e0"
} [e] + ".chunk.js", n.miniCssF = e => {}, n.g = function() {
if ("object" === typeof globalThis) return globalThis;
try {
return this || new Function("return this")()
} catch (e) {
if ("object" === typeof window) return window
}
}(), n.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t), (() => {
var e = {},
t = "@rsilauncher/app-renderer:";
n.l = (r, i, a, o) => {
if (e[r]) e[r].push(i);
else {
var s, l;
if (void 0 !== a)
for (var c = document.getElementsByTagName("script"), u = 0; u < c.length; u++) {
var d = c[u];
if (d.getAttribute("src") == r || d.getAttribute("data-webpack") == t + a) {
s = d;
break
}
}
s || (l = !0, (s = document.createElement("script")).charset = "utf-8", s.timeout = 120, n.nc && s.setAttribute("nonce", n.nc), s.setAttribute("data-webpack", t + a), s.src = r), e[r] = [i];
var p = (t, n) => {
s.onerror = s.onload = null, clearTimeout(h);
var i = e[r];
if (delete e[r], s.parentNode && s.parentNode.removeChild(s), i && i.forEach((e => e(n))), t) return t(n)
},
h = setTimeout(p.bind(null, void 0, {
type: "timeout",
target: s
}), 12e4);
s.onerror = p.bind(null, s.onerror), s.onload = p.bind(null, s.onload), l && document.head.appendChild(s)
}
}
})(), n.r = e => {
"undefined" !== typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
value: "Module"
}), Object.defineProperty(e, "__esModule", {
value: !0
})
}, n.p = "./", (() => {
var e = {
179: 0
};
n.f.j = (t, r) => {
var i = n.o(e, t) ? e[t] : void 0;
if (0 !== i)
if (i) r.push(i[2]);
else {
var a = new Promise(((n, r) => i = e[t] = [n, r]));
r.push(i[2] = a);
var o = n.p + n.u(t),
s = new Error;
n.l(o, (r => {
if (n.o(e, t) && (0 !== (i = e[t]) && (e[t] = void 0), i)) {
var a = r && ("load" === r.type ? "missing" : r.type),
o = r && r.target && r.target.src;
s.message = "Loading chunk " + t + " failed.\n(" + a + ": " + o + ")", s.name = "ChunkLoadError", s.type = a, s.request = o, i[1](s)
}
}), "chunk-" + t, t)
}
};
var t = (t, r) => {
var i, a, [o, s, l] = r,
c = 0;
if (o.some((t => 0 !== e[t]))) {
for (i in s) n.o(s, i) && (n.m[i] = s[i]);
if (l) l(n)
}
for (t && t(r); c < o.length; c++) a = o[c], n.o(e, a) && e[a] && e[a][0](), e[a] = 0
},
r = globalThis.webpackChunk_rsilauncher_app_renderer = globalThis.webpackChunk_rsilauncher_app_renderer || [];
r.forEach(t.bind(null, 0)), r.push = t.bind(null, r.push.bind(r))
})(), (() => {
"use strict";
const e = {
agreements: {
agreement_fetch_info_error: "Could not retrieve agreement from server at this time, please wait a minute and try again.",
agreement_declined: "Agreement has been declined"
},
appHeader: {
app_header_menu: "Menu",
app_header_volume: "Volume",
app_header_volume_mute: "Mute",
app_header_volume_unmute: "Unmute",
app_header_account: "Account",
app_header_account_name: "Name",
app_header_account_moniker: "@Community Moniker",
app_header_menu_get_help: "Get Help",
app_header_menu_spectrum: "Spectrum",
app_header_menu_issue_council: "Issue Council",
app_header_menu_discover: "Discover",
app_header_menu_exit_the_app: "Exit the app",
app_header_menu_settings: "Settings",
app_header_actions_download: "Downloads",
app_header_actions_menu_rsi_status: "RSI Status",
app_header_actions_menu_rsi_account: "RSI Account",
app_header_actions_menu_log_out: "Log out",
app_header_loading: "Entering the verse\u2026"
},
autoUpdate: {
auto_update_dialog_close: "Close",
auto_update_dialog_title: "App Update Available",
auto_update_dialog_sub_title: "Version {{version}}",
auto_update_dialog_no_update_content: "You've already run the latest version of the RSI Launcher.<0/>Thanks for being up to date!",
auto_update_dialog_no_update_action_primary_label: "Continue",
auto_update_dialog_update_available_content: "A new version of the RSI Launcher is available for installation. This application will close and relaunch...",
auto_update_dialog_update_available_action_primary_label: "Install and Restart",
auto_update_dialog_update_available_action_secondary_label: "Install later",
auto_update_dialog_update_install_failed_content: "Unable to update to the newer version of the Launcher, please retry installation or contact <0>customer support</0>",
auto_update_dialog_update_install_failed_action_primary_label: "Retry Install",
auto_update_dialog_update_install_failed_action_secondary_label: "Install Later",
auto_update_dialog_update_quit_game_content: "A game session is currently running. If you want to install the new version of the Launcher, it will close the current game session and progression might be lost",
auto_update_dialog_update_quit_game_action_primary_label: "Quit Game and Install",
auto_update_dialog_update_quit_game_action_secondary_label: "Try Later",
auto_update_toast_update_installed: "Newer version of Launcher has been successfully installed"
},
connection: {
connection_title: "Offline mode",
connection_offline_information: "You are currently offline, certain functions may not be available. You will be automatically reconnected as soon as your internet connection is back online.",
connection_offline_trying_to_reconnect: "Trying to reconnect",
connection_toast_connection_available: "Reconnection succeeded",
connection_toast_action_continue_offline: "Continue offline",
connection_toast_warning_lost_connection_title: "You are currently offline",
connection_toast_warning_lost_connection_content: "It seems you are offline. When your internet connection is re-established, you will be reconnected automatically. You can continue to use the launcher in offline mode.",
connection_toast_warning_lost_connection_remaining: "Remaining time offline before logout"
},
contextMenu: {
context_menu_copy: "Copy",
context_menu_paste: "Paste",
context_menu_cut: "Cut",
context_menu_select_all: "Select all"
},
dialog: {
dialog_warning_logout_title: "Logout",
dialog_warning_logout_text: "Do you really want to log out of your account ?",
dialog_warning_logout_game_running_text: "Do you really want to log out of your account while the game is running? Progress might be lost.",
dialog_warning_logout_confirm: "Logout",
dialog_warning_logout_error: "An error occured while logging out. Your session might have expired try login again",
dialog_action_cancel: "Cancel",
dialog_action_confirm: "Confirm",
dialog_action_acknowledge: "Acknowledge",
dialog_action_ok: "OK",
dialog_action_retry: "Retry",
dialog_action_close: "Close",
dialog_action_accept: "Accept",
dialog_action_decline: "Decline",
dialog_action_verify: "Verify",
dialog_action_install: "Install Game",
dialog_action_relaunch: "Relaunch",
dialog_action_discard: "Discard",
dialog_action_cancel_download: "Cancel download",
dialog_warning_back_launcher: "Go back to Launcher",
dialog_warning_exit_app_title: "Exit App",
dialog_warning_exit_app_text: "Do you really want to exit the app ?",
dialog_warning_exit_app_checkbox: "Don't show this again",
dialog_warning_exit_app_confirm: "Exit the app",
dialog_warning_exit_app_game_running_text: "You can't exit the application while the game is running.",
dialog_warning_uninstall_title: "Uninstall {{game}} - {{channel}}",
dialog_warning_uninstall_text: "Would you like to uninstall this game channel from your computer? Please note that the game files will be uninstalled for all users on this machine.",
dialog_warning_uninstall_userFolder_checkbox: "Keep my user folder (keybindings and settings preferences)",
dialog_warning_uninstall_userFolder_checkbox_description: "Location: {{path}}",
dialog_warning_uninstall_confirm: "Uninstall Game",
dialog_settings_reset_title: "Reset Settings",
dialog_settings_reset_content: "Are you sure you want to reset your game settings?",
dialog_settings_reset_button: "Reset to default",
dialog_settings_game_not_installed_title: "The game is not installed",
dialog_settings_game_not_installed_content: "The game you are trying to verify is not currently installed at this location. Please install the game first and try again.",
dialog_cancel_installation_title: "Cancel download",
dialog_cancel_installation_content: "Do you really want to cancel the download of {{info}} ?",
dialog_cancel_installation_content_keep_files_downloaded: "Keep already downloaded files",
dialog_start_installation_title: "Install {{game}} - {{channel}}",
dialog_start_installation_content_location: "The game will be installed at the following location:",
dialog_start_installation_content_location_settings: "You can change the game location in the Game Settings.",
dialog_start_installation_action_go_to_settings: "Game Settings",
dialog_start_installation_action_install: "Install",
dialog_launch_check_update_available_title: "Game version update",
dialog_launch_check_update_available_content: "A new version of {{game}} - {{channel}} is available. Please update to access the game.",
dialog_discover_title: "The Launcher has a new UI!",
dialog_discover_content: "The RSI Launcher has a brand-new look! We have prepared a little tour to show you around.",
dialog_discover_start: "Start tour",
dialog_discover_skip: "Skip",
dialog_debug_cache_clear_title: "Clear Launcher Cache",
dialog_debug_cache_clear_content: "This action will clear the Launcher cache and log you out, do you really want to proceed?",
dialog_debug_cache_clear_button: "Proceed"
},
discover: {
step_done_label: "Enter Now",
step_menu_title: "Launcher App Menu",
step_menu_description: "Quick access to settings and useful resources can be found in this menu, such as Support, Spectrum, and Issue Council.",
step_status_title: "Status",
step_status_description: "Monitor the status of RSI services here. If there are any performance or service interruptions, you will see it here.",
step_download_title: "Download Management",
step_download_description: "Follow the progress of your game downloads / updates, pause the current download, or quickly access the download settings here.",
"step_user-profile_title": "User Profile",
"step_user-profile_description": "See which account is currently logged-in here. Use this menu to directly access your RSI account page or log out if you need to switch accounts. ",
step_last_title: "Launcher Evolution",
step_last_description: "The RSI Launcher will continue to evolve through time. Please do not hesitate to give us your feedback on Issue Council. Thank you for supporting the development."
},
download: {
download_empty: "There is no download in the queue.",
download_phase: "Phase",
download_status: "Status",
download_speed: "Speed",
download_left: "Left",
download_files_left: "Files left",
download_title: "Downloads",
download_settings: "Download Settings",
download_play: "Play",
download_pause: "Pause",
download_initializing: "Initializing\u2026",
download_update_manifest: "Downloading update manifest",
download_manifest: "Downloading manifest",
downloaded_update_manifest: "Update manifest downloaded",
download_analysing_install: "Analyzing current installation",
download_checking_files: "Checking files - This can take a few minutes",
download_base_pack: "Downloading base pack",
download_updating_game_files: "Updating game files",
download_updating_game_content: "Updating game content",
download_completed: "Completed",
download_waiting: "Waiting in queue",
download_cancelling: "Cancelling",
download_resume: "Resume",
download_cancel: "Cancel",
download_remove: "Remove",
download_error: "Error",
download_toast_install_success: "Installation has been completed",
download_toast_update_success: "Update has been completed",
download_toast_verify_success: "Verify has been completed",
download_toast_install_cancel_success: "Download has been canceled",
download_toast_uninstall_success: "{{game}} - {{channel}} has been uninstalled",
download_toast_uninstall_fail: "{{game}} - {{channel}} could not be uninstalled",
download_type_install: "Installation",
download_type_update: "Update",
download_type_verify: "Verify"
},
errors: {
error_game_package_missing_title: "Missing a game package",
error_game_package_missing_subtitle: "You need to purchase a game package to access the game and log-in",
error_game_package_missing_retry: "Retry Sign In",
error_game_package_missing_support: "Customer Support",
error_sign_in_offline_header_title: "You are currently offline",
error_sign_in_offline_header_subtitle: "It is impossible to connect to our server. Please check your network and retry.",
error_sign_in_offline_content_title: "Why can't I enter in offline mode?",
error_sign_in_offline_content_description: "You are not able to enter the offline mode for one of the following reasons:",
error_sign_in_offline_content_description_first: "You haven't checked \u201cRemember me\u201d",
error_sign_in_offline_content_description_second: "Your device trust period has expired",
error_sign_in_offline_content_description_third: "You haven't signed in during the last 30 days",
error_sign_in_offline_exit: "Exit",
error_sign_in_offline_retry: "Retry",
error_internal_error: "Internal Error",
error_not_authenticated: "You are not authenticated",
error_invalid_claims: "Invalid claims",
error_authentication_mfa: "Authentication requires mfa",
"error_sign-in_failed": "Sign in failed. You may have entered the wrong credentials.",
error_sign_in_not_authorized: "You don't have access to this version of the RSI Launcher. Please download the public version from <0>the website</0>.",
error_captcha_invalid: "Captcha is invalid",
error_session_expired: "Your session has expired. Please confirm your password again.",
error_wrong_credentials: "You may have entered the wrong credentials, the account does not exist, or has not been activated.",
error_max_login_attempt: "Maximum number of failed login attempts exceeded.",
error_wrong_mfa_code: "Two-factor authentication failed. You may have entered and incorrect or expired code.",
error_captcha_required: "Captcha verification is required.",
error_installer_error_code: "Error code: {{ code }}",
error_installer_basepack_invalid_title: "Basepack - Invalid Files",
error_installer_basepack_invalid_content: "Something went wrong while downloading the game, please try again.",
error_installer_disc_full_title: "Insufficient Disk Space",
error_installer_disc_full_content: "Your hard drive does not have the available space required. Free space or move your library folder to a larger disk.",
error_installer_permissions_title: "Filesystem Permission Error",
error_installer_permissions_content: "The patcher encountered a permissions issue when writing to disk. Please check your library folder permissions and try again.",
error_installer_permissions_action: "Fix permissions",
error_installer_file_in_use_title: "File In Use",
error_installer_file_in_use_content: "The game files are in use. Please close any game files you may have open, then try again.",
error_installer_pk4_corrupted_title: "Game Files Are Corrupted",
error_installer_pk4_corrupted_content: "Your game files are corrupted and unrecoverable.",
error_installer_retrieve_manifest_title: "Cannot Retrieve Update Manifest",
error_installer_retrieve_manifest_content: "A network error occurred fetching the update manifest. Please check your internet connection, restart the launcher, and try again.",
error_installer_unknown_network_title: "Unknown Network Error",
error_installer_unknown_network_content: "Please check your network access and try again.",
error_installer_base_p4k_corrupted_title: "Base Pack Verification Error",
error_installer_base_p4k_corrupted_content: "Failed to verify Basepack.",
error_installer_init_download_title: "Initial Download - Base Pack - Error",
error_installer_patcher_title: "Data Patcher Error",
error_installer_title: "Installer Error",
error_installer_patcher_generic_content: "An error has occured during the installation process. Find more information on the <0>Knowledge base</0>.",
error_installer_generic_content: "An error has occured during the installation process.",
error_report_bug: "Please <0>report a bug</0> if the problem persists. Make sure to include your <1>logs</1>.",
error_generic_title: "Launcher Error",
error_generic_content: "Something went wrong.",
error_os_requirements_title: "Minimum Requirements Not Met",
error_os_requirements_text: "Your computer does not meet the <0>minimum requirements</0> to run {{ game }}.",
error_cpu_requirements_title: "Unsupported Hardware Detected",
error_cpu_requirements_text: "This game requires a CPU supporting the AVX instruction set to run.",
error_launch_account_not_found_title: "Copy Your Account To PTU",
error_launch_account_not_found_content: "In order to play in the Public Test Universe (PTU), you need to copy your account to the PTU. Please follow the steps <0>here</0> and try again.",
error_launch_game_title: "{{ game }} Has Stopped Running Unexpectedly",
error_launch_game_content: "Try to relaunch the game. If this problem persists, please verify your installation files.",
error_launch_unknown_title: "Launcher - Unknown Error",
error_launch_unknown_content: "Something went wrong on Launch. Please, verify game files.",
error_launch_error_code: "Game error code: {{ code }}",
error_launch_no_game_files_title: "Launch - Game Files Not Found",
error_launch_no_game_files_content: "Something went wrong on game launch. Could not retrieve game files. Please verify game files. ",
error_launch_EAC_title: "Launch - EAC error",
error_launch_EAC_content: "Something went wrong on Launch. EAC detected corrupted files. Please verify game files.",
error_launch_game_crash_title: "Game error",
error_launch_game_crash_content: "Something went wrong while playing the game.",
error_launch_game_running_title: "Game Is Already Running",
error_launch_game_running_content: "The game is already running",
error_launch_check_update_unavailable_title: "Check Game Version Failed",
error_launch_check_update_unavailable_content: "Something went wrong while checking your game version.",
error_api_denied_request_title: "API Denied Request",
error_api_denied_request_content: "Something went wrong. It appears that your session is expired or has been denied. You have been logged out. Please try again.",
error_api_validation_failed: "API Request validation failed",
error_api_too_many_requests_title: "Too Many Requests",
error_api_too_many_requests_content: "API is currently overloaded, please try again in a couple of minutes.",
error_api_unavailable: "API is unavailable. Please try again in a few minutes.",
error_api_internal_server_error: "Our servers are experiencing difficulties. Please try again in a few minutes.",
error_api_auth_expired_content: "Your session has expired. Please confirm your password again.",
error_api_auth_expired_title: "Session Expired",
error_api_platform_auth_title: "Platform Auth Error",
error_api_platform_auth_content: "Unable to authenticate to authenticate on {{ id }} platform : {{ error }}",
error_network_issue_title: "Network Issue",
error_network_issue_content: "Network connection cannot be established. Please check your network status and attempt to connect again."
},
form: {
sign_in_title: "Sign in to the RSI Launcher",
sign_in_email: "Email",
sign_in_password: "Password",
sign_in_remember_me: "Remember me",
sign_in_forgot_password: "Forgot password?",
sign_in_captcha: "Captcha",
sign_in_captcha_refresh: "Refresh",
sign_in_captcha_help: "Enter the text you see in the image above.",
sign_in_no_account: "No account?",
sign_in_create_account: "Create one!",
sign_in_submit: "Sign in",
sign_in_loading: "Signing in\u2026",
sign_in_mfa_title: "We need to verify your identity",
sign_in_mfa_subtitle: "Protecting your account is important to us. We sent an authentication code to the email address attached to your account.",
sign_in_mfa_code_label: "Authentification code",
sign_in_mfa_code_help: "Enter the code sent to your email or from your authenticator. Alternatively use a backup code.",
sign_in_mfa_device_label: "Device name",
sign_in_mfa_device_help: "Enter a name for your current device.",
sign_in_mfa_duration_label: "Trust this device for",
sign_in_mfa_duration_help: "Allow this device to skip MFA for a selected amount of time. If this is a shared or public device we recommend \u201cthis session only\u201d.",
sign_in_mfa_session: "This session only",
sign_in_mfa_day: "One day",
sign_in_mfa_week: "One week",
sign_in_mfa_month: "One month",
sign_in_mfa_year: "One year",
sign_in_mfa_back_sign_in: "Back",
sign_in_mfa_submit: "Authenticate",
error_field_is_required: "This field is required",
error_email_field_is_required: "An email adress is required",
error_password_field_is_required: "A password is required",
error_code_required: "You must enter your code",
error_device_required: "You must enter your device name",
error_device_min_length: "Your device name must be at least 3 characters in length",
text_field_show_password: "Show password",
text_field_hide_password: "Hide password"
},
gamePage: {
game_page_title: "Get into the<0/><1>{{name}} Universe</1>",
game_page_nav_title_one: "Game",
game_page_nav_title_other: "Games",
game_page_game_is_running: "Game is running",
game_page_installing: "Installing\u2026",
game_page_installing_paused: "Install paused",
game_page_updating: "Updating\u2026",
game_page_updating_paused: "Update paused",
game_page_verifying: "Verifying\u2026",
game_page_uninstalling: "Uninstalling",
game_page_verifying_paused: "Verify paused",
game_page_update_game: "Update Game",
game_page_launch_game: "Launch Game",
game_page_install_game: "Install Game",
game_page_waiting_in_queue: "Waiting in queue",
game_page_channels: "Game Environment",
game_page_settings: "Game Settings",
game_page_settings_verify: "Verify game files",
game_page_settings_uninstall: "Uninstall game",
game_page_update_game_is_available: "Read about {{version}} features, <0>see patch notes</0>",
game_page_game_is_not_available_offline: "You are currently offline. {{game}} require an internet connection to run.",
game_page_status_under_maintenance: "We have ongoing maintenance on one of our services.",
game_page_status_issue: "We are working on resolving an issue. Enter at your own risk.",
game_page_status_more_information: "For more information check out the <0>status page</0>.",
game_page_cards_empty: "No content available for now",
game_page_cards_loading: "Loading content.",
game_page_cards_tab_community: "Community",
"game_page_cards_tab_comm-links": "Comm-Links",
"game_page_cards_tab_new-citizens": "New Citizens",
"game_page_cards_tab_patch-notes": "Patch Notes",
game_page_card_button_label: "Read More"
},
settingsPage: {
settings_about_title: "About",
settings_application_title: "Application",
settings_games_title: "Games",
settings_download_title: "Download",
settings_dev_title: "Dev / QA",
settings_nav_items_application: "Application",
settings_nav_items_accessibility: "Accessibility",
settings_nav_items_games: "Games",
settings_nav_items_about: "About",
settings_nav_items_download: "Download",
settings_nav_items_dev: "DEV \ud83d\ude80",
settings_about_logo_alt: "Cloud Imperium\xa9",
settings_about_copyright: "\xa9 2012 - {{year}} Cloud Imperium Rights LLC and Cloud Imperium Rights Ltd",
settings_about_launcher_version: "Launcher version:",
settings_application_window_behavior_title: "Window Behavior",
settings_application_window_behavior_description: "This option will allow you to quit the app when the window is closed.",
settings_application_window_behavior_close_to_quit: "Enable close-to-quit",
settings_application_debug_tools_title: "Launcher debug tools",
settings_application_debug_tools_description: "If you have trouble with the Launcher, clearing the cache may solve the issue. You may also need to locate your logs file, this can be useful for reporting a bug on the Launcher <iclink>Issue Council</iclink>.",
settings_application_debug_tools_label: "Debug tools",
settings_application_debug_tools_button_clear_cache: "Clear Launcher Cache",
settings_application_debug_tools_button_get_logs: "Get Logs",
settings_application_debug_tools_button_cache_clear_success: "Cache Cleared",
settings_accessibility_title: "Accessibility",
settings_accessibility_reduce_motion_title: "Reduce Motion",
settings_accessibility_reduce_motion_description: "Reduce the number of animations in the Launcher such as background videos, icon animations and page transitions.",
settings_accessibility_reduce_motion_system_sync_title: "Sync with operating system",
settings_accessibility_reduce_motion_system_sync_description: "Follow operating system Reduce Motion preferences",
settings_accessibility_reduce_motion_background_video_toggle_title: "Disable background video",
settings_accessibility_reduce_motion_background_video_toggle_description: "Replace the video loop with a static image",
settings_accessibility_reduce_motion_unessential_animation_toggle_title: "Disable non-essential animations",
settings_accessibility_reduce_motion_unessential_animation_toggle_description: "Decorative icons, logos, mouse interactions...",
settings_accessibility_reduce_motion_transition_effects_toggle_title: "Disable transition effects",
settings_accessibility_reduce_motion_transition_effects_toggle_description: "Animations between sections (pages, tabs...)",
settings_accessibility_reduce_motion_information_enabled: "Operating system Reduce Motion is activated.",
settings_accessibility_reduce_motion_information_disabled: "Operating system Reduce Motion is deactivated.",
settings_accessibility_reduce_motion_information_restart_link_label: "Your changes will be applied on next launch. <iclink>Restart now</iclink>.",
settings_games_installation_title: "Game location",
settings_games_installation_description: "This is the path of your game folder location.",
settings_games_installation_information: "If your game is already installed at a different location, select it here, then hit Verify.",
settings_games_installation_path_title: "Game location complete path:",
settings_games_installation_library_folder_success: "Path updated",
settings_games_installation_library_folder_change: "Change",
settings_games_installation_library_folder_label: "RSI Library Location",
settings_games_game_files_title: "Game Files",
settings_games_game_files_description: "Install/Uninstall this game channel or verify if the game files are installed correctly on your computer.",
settings_games_game_files_verify_files: "Verify Game",
settings_games_game_files_verifying_files: "Verifying game",
settings_games_game_files_install_files: "Install Game",
settings_games_game_files_installing_files: "Installing",
settings_games_game_files_uninstall_files: "Uninstall Game",
settings_games_game_files_uninstalling_files: "Uninstalling",
settings_games_game_files_process_paused: "Paused",
settings_common_reset: "Reset all changes",
settings_common_reset_confirmation: "Changes have been reset for this game channel",
settings_common_accordion_open_all: "Expand all",
settings_common_accordion_close_all: "Collapse all",
settings_common_back: "Back",
settings_common_saved: "Saved",
settings_download_main_title: "Bandwidth usage",
settings_download_main_content: "Adjust the bandwidth usage of the download to optimize your internet speed",
settings_download_concurrent_title: "Concurrent Download",
settings_download_concurrent_desc: "Adjust the maximum number of simultaneous downloads allowed at once, optimizing your download experience to match your preferences and network capabilities.",
settings_download_speed_title: "Download Speed Limit",
settings_download_speed_desc: "Regulate download speed by setting a cap on the data transfer rate per second for each concurrent download connection.",
settings_download_speed_unlimited: "Unlimited",
settings_application_discover_behavior_title: "Discover Behavior",
settings_application_discover_behavior_description: "The discover is only displayed at the first visit (or by clicking the Discover button in RSI menu). This option will allow you to re-enable Discover on load for testing purpose.",
settings_application_discover_behavior_isDiscoverDone: "isDiscoverDone",
settings_games_launch_command_line: "Additional command line arguments",
settings_games_launch_disclaimer: "This action will apply the next time you\u2019ll launch the game",
settings_games_launch_hostname: "Universe Host",
settings_games_launch_port: "Universe Port",
settings_games_launch_executable: "Executable",
settings_games_launch_launch_options: "Launcher Options",
settings_games_launch_eac_title: "Easy Anti-Cheat",
settings_games_launch_eac_description: "Easy Anti-Cheat is an anti-cheat service used by numerous popular games, countering cheating and the use of unauthorized third party software in multiplayer PC games.",
settings_games_launch_eac_informative: "You need to set the right executable above to enable EAC bypass",
settings_games_launch_eac_disable: "Enable Easy Anti-Cheat bypass",
settings_games_launch_default: "Default:"
},
status: {
status_title: "RSI Status",
status_empty: "There is no status available.",
status_last_updated: "Last updated {{time}}",
status_last_updated_empty: "No data available at the moment.",
status_more_information: "More information",
status_major: "Major Outage",
status_partial: "Partial Outage",
status_degraded: "Degraded Performances",
status_maintenance: "Under Maintenance",
status_operational: "Operational"
},
tray: {
tray_website: "Visit website",
tray_report_bug: "Report a bug",
tray_spectrum: "Spectrum",
tray_community_hub: "Community hub",
tray_support: "Support",
tray_mute: "Mute sound",
tray_unmute: "Unmute sound",
tray_logout: "Log out",
tray_quit: "Quit"
}
},
t = {
agreements: {
agreement_fetch_info_error: "Impossible de r\xe9cup\xe9rer l'accord du serveur pour le moment, veuillez patienter une minute et r\xe9essayer.",
agreement_declined: "L'accord a \xe9t\xe9 refus\xe9 "
},
appHeader: {
app_header_menu: "Menu",
app_header_volume: "Volume",
app_header_volume_mute: "D\xe9sactiver le son",
app_header_volume_unmute: "Activer le son",
app_header_account: "Compte",
app_header_account_name: "Nom",
app_header_account_moniker: "@Surnom de la Communaut\xe9",
app_header_menu_get_help: "Obtenir de l'aide",
app_header_menu_spectrum: "Spectrum",
app_header_menu_issue_council: "Issue Council",
app_header_menu_discover: "D\xe9couvrir",
app_header_menu_exit_the_app: "Quitter l'application",
app_header_menu_settings: "param\xe8tres",
app_header_actions_download: "T\xe9l\xe9chargements",
app_header_actions_menu_rsi_account: "Compte RSI",
app_header_actions_menu_log_out: "Se d\xe9connecter",
app_header_actions_menu_rsi_status: "Statut RSI",
app_header_loading: "Entering the verse\u2026"
},
autoUpdate: {
auto_update_dialog_close: "Fermer",
auto_update_dialog_title: "Version de l'application",
auto_update_dialog_sub_title: "Version {{version}}",
auto_update_dialog_no_update_content: "Vous avez d\xe9j\xe0 la derni\xe8re version du Launcher RSI.<0/>Merci d'\xeatre \xe0 jour !",
auto_update_dialog_no_update_action_primary_label: "Continuer",
auto_update_dialog_update_available_content: "Une nouvelle version du Launcher RSI est disponible, vous pouvez l'installer.<0/>L'application se fermera et se relancera une fois l'installation termin\xe9e.",
auto_update_dialog_update_available_action_primary_label: "Installer plus tard",
auto_update_dialog_update_available_action_secondary_label: "Installer et red\xe9marrer",
auto_update_dialog_update_install_failed_content: "La mise \xe0 jour de la nouvelle version a \xe9chou\xe9e, merci de r\xe9essayer ou contacter le <0>support client</0>",
auto_update_dialog_update_install_failed_action_primary_label: "R\xe9essayez l'installation",
auto_update_dialog_update_install_failed_action_secondary_label: "Installer plus tard",
auto_update_dialog_update_quit_game_content: "Vous avez actuellement une session de jeu en cours. Si vous souhaitez continuer et installer la nouvelle version, le jeu sera ferm\xe9 et votre progression risque d'\xeatre perdue",
auto_update_dialog_update_quit_game_action_primary_label: "Quitter le jeu et installer",
auto_update_dialog_update_quit_game_action_secondary_label: "Essayer plus tard",
auto_update_toast_update_installed: "La nouvelle version de l'application a \xe9t\xe9 install\xe9e"
},
connection: {
connection_title: "Mode d\xe9connect\xe9",
connection_offline_information: "Vous \xeates actuellement d\xe9connect\xe9, certaines fonctionnalit\xe9s ne sont pas accessible. Vous serez automatiquement reconnect\xe9 d\xe8s que votre connexion internet sera de retour.",
connection_offline_trying_to_reconnect: "Tentative de reconnexion",
connection_toast_connection_available: "Reconnexion r\xe9ussie",
connection_toast_action_continue_offline: "Continuer hors ligne",
connection_toast_warning_lost_connection_title: "Vous \xeates actuellement hors ligne",
connection_toast_warning_lost_connection_content: "Il semble que vous soyez hors ligne. Lorsque votre connexion Internet sera r\xe9tablie, vous serez reconnect\xe9 automatiquement. Vous pouvez continuer \xe0 utiliser le lanceur en mode hors ligne.",
connection_toast_warning_lost_connection_remaining: "Temps restant hors ligne avant d\xe9connexion"
},
contextMenu: {
context_menu_copy: "Copier",
context_menu_paste: "Coller",
context_menu_cut: "Couper",
context_menu_select_all: "Tout selectionner"
},
dialog: {
dialog_warning_logout_title: "Quitter l'application",
dialog_warning_logout_text: "\xcates-vous s\xfbr de vouloir de vous d\xe9connecter?",
dialog_warning_logout_game_running_text: "\xcates-vous s\xfbr de vouloir vous d\xe9connecter lorsque le jeu est en cours d'ex\xe9cution? Les progr\xe8s pourraient \xeatre perdus.",
dialog_warning_logout_confirm: "Quitter",
dialog_warning_logout_error: "Une erreur est apparue lorsque vous avez essay\xe9 de vous d\xe9connecter. Votre session pourrait \xeatre expir\xe9e. Essayez de vous connecter \xe0 nouveau.",
dialog_action_cancel: " Annuler",
dialog_action_confirm: "Confirmer",
dialog_action_acknowledge: "Affirmer",
dialog_action_ok: "OK",
dialog_action_close: "Fermer",
dialog_action_retry: "R\xe9-essayer",
dialog_action_accept: "Accepter",
dialog_action_decline: "Decliner",
dialog_action_verify: "Verify",
dialog_action_install: "Installer le jeu",
dialog_action_relaunch: "Relancer",
dialog_warning_back_launcher: "Retour vers le launcher",
dialog_warning_exit_app_title: "Quitter l'application",
dialog_warning_exit_app_text: "\xcates-vous s\xfbr de vouloir quitter l'application lorsque le jeu est en cours d'ex\xe9cution? Les progr\xe8s pourraient \xeatre perdus.",
dialog_warning_exit_app_checkbox: "Ne plus afficher ce message",
dialog_warning_exit_app_confirm: "Quitter l'application",
dialog_warning_exit_app_game_running_text: "Vous ne pouvez pas fermer l'application lorsque le jeu est lanc\xe9.",
dialog_warning_uninstall_title: "D\xe9sinstallation {{game}} - {{channel}}",
dialog_warning_uninstall_text: "Voulez-vous d\xe9sinstaller ce jeu de votre ordinateur ? Veuillez not\xe9 que les fichiers du jeu seront supprim\xe9s pour tous les utilisateurs de cette machine.",
dialog_warning_uninstall_userFolder_checkbox: "Garder mon dossier utilisateur (raccourcis clavier et pr\xe9f\xe9rences de param\xe8tres)",
dialog_warning_uninstall_userFolder_checkbox_description: "Position: {{path}}",
dialog_warning_uninstall_confirm: "D\xe9sinstaller le jeu",
dialog_settings_reset_title: "R\xe9initialiser les options",
dialog_settings_reset_content: "\xcates-vous s\xfbr de vouloir r\xe9initialiser vos param\xe8tres de jeu ?",
dialog_settings_reset_button: "R\xe9initialiser les options par d\xe9faut",
dialog_settings_game_not_installed_title: "Le jeu n'est pas install\xe9",
dialog_settings_game_not_installed_content: "Le jeu que vous essayez de v\xe9rifier n'est pas actuellement install\xe9 \xe0 cet emplacement. Veuillez d'abord installer le jeu et r\xe9essayer.",
dialog_cancel_installation_content_keep_files_downloaded: "Garder les fichiers d\xe9j\xe0 t\xe9l\xe9charg\xe9s",
dialog_start_installation_title: "Installation {{game}} - {{channel}}",
dialog_start_installation_content_location: "Le jeu va \xeatre install\xe9 \xe0 l'emplacement suivant:",
dialog_start_installation_content_location_settings: "Vous pouvez changer l'emplacement du jeu dans les param\xe8tres de jeu.",
dialog_start_installation_action_go_to_settings: "Param\xe8tres de Jeu",
dialog_start_installation_action_install: "Installer",
dialog_launch_check_update_available_title: "Mise \xe0 jour du jeu",
dialog_launch_check_update_available_content: "Une nouvelle version de {{game}} - {{channel}} est disponible. S'il vous plait, mettez \xe0 jour votre jeu pour le lancer.",
dialog_discover_title: "Le Launcher a une nouvelle interface utilisateur !",
dialog_discover_content: "Le Launcher RSI a un tout nouveau look ! Nous avons pr\xe9par\xe9 une petite visite pour vous montrer les alentours.",
dialog_discover_start: "Commencer la visite",
dialog_discover_skip: "Passer",
dialog_debug_cache_clear_title: "Vider le cache du Launcher",
dialog_debug_cache_clear_content: "Cette action va vider le cache du Launcher et vous d\xe9connecter, voulez-vous vraiment continuer ?",
dialog_debug_cache_clear_button: "Continuer"
},
discover: {
step_done_label: "Enter Now",
step_menu_title: "Menu de l'application du Launcher",
step_menu_description: "Acc\xe8s rapide aux param\xe8tres et aux ressources utiles telles que le support, Spectrum et le Issue Council.",
step_status_title: "Statut",
step_status_description: "Surveillez l'\xe9tat des services RSI. Si des probl\xe8mes de performance ou des interruptions de service se produisent, vous les verrez ici.",
step_download_title: "Gestion des t\xe9l\xe9chargements",
step_download_description: "Suivez la progression de vos t\xe9l\xe9chargements et mises \xe0 jour de jeux, mettez en pause le t\xe9l\xe9chargement en cours ou acc\xe9dez rapidement aux param\xe8tres de t\xe9l\xe9chargement.",
"step_user-profile_title": "Profil utilisateur",
"step_user-profile_description": "Voyez quel utilisateur est actuellement connect\xe9 et acc\xe9dez rapidement \xe0 la page du compte. Utilisez ce menu pour vous d\xe9connecter si vous devez changer de compte.",
step_last_title: "\xc9volution du Launcher",
step_last_description: "Le Launcher RSI continuera \xe0 \xe9voluer avec le temps. N'h\xe9sitez pas \xe0 nous donner vos commentaires sur le Issue Council. Merci de soutenir le d\xe9veloppement."
},
download: {
download_empty: "Il n'y a pas de t\xe9l\xe9chargment en attente.",
download_phase: "Phase",
download_status: "Status",
download_speed: "Vitesse",
download_left: "Restant",
download_files_left: "Fichiers restant",
download_title: "T\xe9l\xe9chargements",
download_settings: "Param\xe8tres de t\xe9l\xe9chargment",
download_play: "Lecture",
download_pause: "Arret",
download_initializing: "Initialisation\u2026",
download_update_manifest: "T\xe9l\xe9chargement du manifeste mis \xe0 jour",
download_manifest: "T\xe9l\xe9chargement du manifeste",
downloaded_update_manifest: "Mise \xe0 jour du manifeste t\xe9l\xe9charg\xe9",
download_analysing_install: "Analyse de l'installation actuelle",
download_checking_files: "V\xe9rification des fichiers - Cela peut prendre quelques minutes",
download_base_pack: "T\xe9l\xe9chargement du pack de base",
download_updating_game_files: "Mise \xe0 jour des fichiers du jeu",
download_updating_game_content: "Mise \xe0 jour du contenu du jeu",
download_completed: "Complet\xe9",
download_cancelling: "Annulation",
download_resume: "Reprendre",
download_cancel: "Annuler",
download_remove: "Supprimer",
download_error: "Erreur",
download_toast_install_success: "L'installation est termin\xe9e",
download_toast_update_success: "L'update est termin\xe9e",
download_toast_verify_success: "La verification des fichiers est termin\xe9e",
download_toast_install_cancel_success: "Le t\xe9l\xe9chargement a \xe9t\xe9 annul\xe9",
download_toast_uninstall_success: "{{game}} - {{channel}} a \xe9t\xe9 d\xe9sinstall\xe9",
download_toast_uninstall_fail: "{{game}} - {{channel}} n'a pas pu \xeatre d\xe9sinstall\xe9",
download_type_install: "Installation",
download_type_update: "Mise \xe0 jour",
download_type_verify: "V\xe9rification"
},
errors: {
error_game_package_missing_title: "Il manque un package de jeu",
error_game_package_missing_subtitle: "Vous devez acheter un package de jeu pour vous connecter et acc\xe9der au jeu, visitez <0>Jouer maintenant</0>",
error_game_package_missing_retry: "R\xe9essayez de me connecter",
error_game_package_missing_support: "Assistance client",
error_internal_error: "Erreur interne",
error_not_authenticated: "Vous n'\xeates pas authentifi\xe9",
error_invalid_claims: "R\xe9clamations invalides",
error_authentication_mfa: "L'authentification n\xe9cessite mfa",
"error_sign-in_failed": "La connexion a \xe9chou\xe9. Vous avez peut-\xeatre saisi de mauvaises informations d'identification.",
error_sign_in_not_authorized: "Vous n'\xeates pas autoris\xe9 \xe0 vous connecter sur cette version du Lanceur RSI. Veuillez t\xe9l\xe9charger la version public sur <0>site web</0>.",
error_captcha_invalid: "Le captcha n'est pas valide",
error_session_expired: "Votre session a expir\xe9. Veuillez confirmer \xe0 nouveau votre mot de passe.",
error_wrong_credentials: "La connexion a \xe9chou\xe9. Vous avez peut-\xeatre saisi des informations d'identification erron\xe9es, ou le compte n'existe pas, ou n'a pas \xe9t\xe9 activ\xe9.",
error_max_login_attempt: "Nombre maximum de tentatives de connexion \xe9chou\xe9es d\xe9pass\xe9.",
error_wrong_mfa_code: "Le code n'est pas valide ou est d\xe9j\xe0 utilis\xe9.",
error_captcha_required: "La v\xe9rification Captcha est obligatoire",
error_installer_error_code: "Code d'erreur : {{ code }}",
error_installer_basepack_invalid_title: "Basepack - Fichiers Invalides",
error_installer_basepack_invalid_content: "Quelque chose s'est mal pass\xe9 lors du t\xe9l\xe9chargement du jeu, veuillez r\xe9essayer.",
error_installer_disc_full_title: "Espace disque insuffisant",
error_installer_disc_full_content: "Votre disque dur ne dispose pas de l'espace disponible requis. Lib\xe9rez de l'espace ou d\xe9placez votre dossier biblioth\xe8que vers un disque plus grand.",
error_installer_permissions_title: "Erreur d'autorisation du syst\xe8me de fichiers",
error_installer_permissions_content: "Le patcher a rencontr\xe9 un probl\xe8me d'autorisations lors de l'\xe9criture sur le disque. Veuillez v\xe9rifier les autorisations de votre dossier de biblioth\xe8que et r\xe9essayer.",
error_installer_permissions_action: "Corriger les autorisations",
error_installer_file_in_use_title: "Fichier en cours d'utilisation",
error_installer_file_in_use_content: "Les fichiers du jeu sont en cours d'utilisation. Veuillez fermer le jeu et le lanceur et r\xe9essayer.",
error_installer_pk4_corrupted_title: "Les fichiers du jeu sont corrompus",
error_installer_pk4_corrupted_content: "Vos fichiers de jeu sont corrompus et irr\xe9cup\xe9rables.",
error_installer_retrieve_manifest_title: "Impossible de r\xe9cup\xe9rer le manifeste de mise \xe0 jour",
error_installer_retrieve_manifest_content: "Une erreur r\xe9seau s'est produite lors de la r\xe9cup\xe9ration du manifeste de mise \xe0 jour. Veuillez v\xe9rifier votre connexion Internet, red\xe9marrer le lanceur et r\xe9essayer.",
error_installer_unknown_network_title: "Erreur r\xe9seau",
error_installer_unknown_network_content: "Veuillez v\xe9rifier votre acc\xe8s r\xe9seau et r\xe9essayer. Erreur r\xe9seau inconnue.",
error_installer_base_p4k_corrupted_title: "Erreur de v\xe9rification du pack de base",
error_installer_base_p4k_corrupted_content: "\xc9chec de la v\xe9rification du Basepack.",
error_installer_init_download_title: "T\xe9l\xe9chargement initial - Basepack - Erreur",
error_installer_patcher_title: "Erreur de Data Patcher",
error_installer_title: "Erreur de l'installateur",
error_installer_patcher_generic_content: "Une erreur s'est produite lors du processus d'installation. Trouvez plus d'information dans la <0>base de connaissances</0>.",
error_installer_generic_content: "Une erreur s'est produite lors du processus d'installation.",
error_report_bug: "Veuillez <0>signaler un bug</0> si le probl\xe8me persiste. Assurez-vous d'inclure vos <1>journaux</1>.",
error_generic_title: "Erreur du lanceur",
error_generic_content: "Quelque chose s'est mal pass\xe9.",
error_os_requirements_title: "Exigences minimales non remplies",
error_os_requirements_text: "Votre ordinateur ne r\xe9pond pas \xe0 la <0>configuration minimale</0> pour ex\xe9cuter {{ game }}.",
error_cpu_requirements_title: "Mat\xe9riel non pris en charge d\xe9tect\xe9",
error_cpu_requirements_text: "Ce jeu n\xe9cessite un processeur prenant en charge le jeu d'instructions AVX pour fonctionner.",
error_launch_account_not_found_title: "Copiez votre compte sur l'environement PTU",
error_launch_account_not_found_content: "Afin de pouvoir jouer sur l'environement de test (PTU) vous avez besoin de copier votre compte sur l'environement PTU. S'il vous plait, suivez les \xe9tapes <0>ici</0> et r\xe9essayer.",
error_launch_game_title: "{{ game }} a cess\xe9 de fonctionner de mani\xe8re inattendue",
error_launch_game_content: "Essayez de relancer le jeu. Si ce probl\xe8me persiste, veuillez v\xe9rifier vos fichiers d'installation.",
error_launch_unknown_title: "Lanceur - Erreur inconnue",
error_launch_unknown_content: "Quelque chose s'est mal pass\xe9 lors du lancement. Veuillez v\xe9rifier les fichiers du jeu.",
error_launch_error_code: "Code erreur du jeu : {{ code }}",
error_launch_no_game_files_title: "Lancement - Fichiers de jeu introuvables",
error_launch_no_game_files_content: "Quelque chose s'est mal pass\xe9 lors du lancement du jeu. Impossible de r\xe9cup\xe9rer les fichiers du jeu. Veuillez v\xe9rifier les fichiers du jeu.",
error_launch_EAC_title: "Lancement - Erreur EAC",
error_launch_EAC_content: "Quelque chose s'est mal pass\xe9 au lancement. EAC a d\xe9tect\xe9 des fichiers corrompus. Veuillez v\xe9rifier les fichiers du jeu.",
error_launch_game_crash_title: "Erreur de jeu",
error_launch_game_crash_content: "Quelque chose s'est mal pass\xe9 pendant le jeu.",
error_launch_game_running_title: "Le jeu est d\xe9j\xe0 en cours",
error_launch_game_running_content: "Le jeu est d\xe9j\xe0 en cours d'ex\xe9cution",
error_launch_check_update_unavailable_title: "V\xe9rification de la version a \xe9chou\xe9",
error_launch_check_update_unavailable_content: "Quelque chose s'est mal pass\xe9 pendant la v\xe9rification de la version du jeu.",
error_api_denied_request_title: "Demande API refus\xe9e",
error_api_denied_request_content: "Quelque chose s'est mal pass\xe9. Il semble que votre session a expir\xe9 ou a \xe9t\xe9 refus\xe9e. Vous avez \xe9t\xe9 d\xe9connect\xe9. Veuillez r\xe9essayer.",
error_api_validation_failed: "La validation de la requ\xeate API a \xe9chou\xe9",
error_api_too_many_requests_title: "Trop de requ\xeates",
error_api_too_many_requests_content: "L'API est surcharg\xe9e. Veuillez r\xe9essayer dans quelques minutes.",
error_api_unavailable: "L'API n'est pas disponible. Veuillez r\xe9essayer dans quelques minutes.",
error_api_internal_server_error: "Nos serveurs rencontrent des difficult\xe9s. Veuillez r\xe9essayer dans quelques minutes.",
error_api_auth_expired_content: "Votre session a expir\xe9. Veuillez confirmer \xe0 nouveau votre mot de passe.",
error_api_auth_expired_title: "Session expir\xe9e",
error_api_platform_auth_title: "Erreur d'authentification de la plateforme",
error_api_platform_auth_content: "Impossible de s'authentifier sur la plateforme {{ id }} : {{ error }}",
error_network_issue_title: "Probl\xe8me de r\xe9seau",
error_network_issue_content: "La connexion r\xe9seau ne peut pas \xeatre \xe9tablie. Veuillez v\xe9rifier l'\xe9tat de votre r\xe9seau et tenter de vous connecter \xe0 nouveau."
},
form: {
sign_in_title: "Se connecter au RSI Launcher",
sign_in_email: "E-mail",
sign_in_password: "Mot de passe",
sign_in_remember_me: "Se souvenir de moi",
sign_in_forgot_password: "Mot de passe oubli\xe9",
sign_in_captcha: "Captcha",
sign_in_captcha_refresh: "Actualiser",
sign_in_captcha_help: "Entrez le texte que vous voyez dans l'image ci-dessus.",
sign_in_no_account: "Pas de compte?",
sign_in_create_account: "Cr\xe9er un compte.",
sign_in_submit: "Connexion",
sign_in_loading: "Connexion en cours\u2026",
sign_in_mfa_title: "Nous devons v\xe9rifier votre identit\xe9",
sign_in_mfa_subtitle: "La protection de votre compte est importante pour nous. Nous avons envoy\xe9 un code d'authentification sur la bo\xeete mail attach\xe9e \xe0 votre compte.",
sign_in_mfa_code_label: "Code d'authentification",
sign_in_mfa_code_help: "Entrez le code envoy\xe9 \xe0 votre email ou depuis votre authentificateur. Vous pouvez \xe9galement utiliser un code de secours.",
sign_in_mfa_device_label: "Nom de l'appareil",
sign_in_mfa_device_help: "Entrez un nom pour votre appareil actuel.",
sign_in_mfa_duration_label: "Se fier \xe0 cet appareil pendant",
sign_in_mfa_duration_help: "Autorisez cet appareil \xe0 ignorer MFA pendant une dur\xe9e s\xe9lectionn\xe9e. S'il s'agit d'un appareil partag\xe9 ou public, nous recommandons \xab cette session uniquement \xbb.",
sign_in_mfa_session: "Cette session uniquement",
sign_in_mfa_day: "Un jour",
sign_in_mfa_week: "Une semaine",
sign_in_mfa_month: "Un mois",
sign_in_mfa_year: "Une ann\xe9e",
sign_in_mfa_back_sign_in: "Retour",
sign_in_mfa_submit: "Authentication",
error_field_is_required: "Ce champs est obligatoire",
error_email_field_is_required: "Une adresse email est obligatoire",
error_password_field_is_required: "Un mot de passe est obligatoire",
error_code_required: "Le code est obligatoire",
error_device_required: "Le nom de l'appareil est obligatoire",
error_device_min_length: "Le nom de l'appareil doit etre d'au moins 3 caracteres",
text_field_show_password: "Afficher le mot de passe",
text_field_hide_password: "Masquer le mot de passe"
},
gamePage: {
game_page_title: "Entrez dans l\u2019univers de<0/><1>{{name}}</1>",
game_page_nav_title_one: "Jeu",
game_page_nav_title_other: "Jeux",
game_page_game_is_running: "Le jeu tourne",
game_page_installing: "Installation\u2026",
game_page_installing_paused: "Installation en pause",
game_page_updating: "Mise a jour\u2026",
game_page_updating_paused: "Mise \xe0 jour en pause",
game_page_verifying: "Verification\u2026",
game_page_verifying_paused: "V\xe9rification en pause",
game_page_update_game: "Mise a jour du jeu",
game_page_launch_game: "Lancer le jeu",
game_page_install_game: "Installer le jeu",
game_page_waiting_in_queue: "En attente dans la queue",
game_page_channels: "Environnement de jeu",
game_page_settings: "Param\xe8tres de jeu",
game_page_settings_verify: "V\xe9rification des fichiers de jeu",
game_page_settings_uninstall: "D\xe9sinstallation de jeu",
game_page_update_game_is_available: "Lire au sujet des fonctionnalit\xe9s de {{version}} , <0>voir patch notes</0>",
game_page_game_is_not_available_offline: "Vous \xeates actuellement hors-ligne. {{game}} requiert une connexion internet pour d\xe9marrer.",
game_page_status_under_maintenance: "Nous avons une maintenance continue sur un de nos services.",
game_page_status_issue: "Nous travaillons \xe0 r\xe9soudre un probl\xe8me. Entrez \xe0 vos risques et p\xe9rils.",
game_page_status_more_information: "Pour plus d'informations, visitez le <0>page d'\xe9tat</0>.",
game_page_cards_empty: "Aucun contenu disponible",
game_page_cards_loading: "Chargement du contenu.",
game_page_cards_tab_community: "Communit\xe9",
"game_page_cards_tab_comm-links": "Communiqu\xe9s",
"game_page_cards_tab_new-citizens": "Nouveaux Citoyens",
"game_page_cards_tab_patch-notes": "Notes de Patch",
game_page_card_button_label: "En savoir plus"
},
settingsPage: {
settings_about_title: "\xc0 propos",
settings_application_title: "Application",
settings_games_title: "Jeux",
settings_download_title: "T\xe9l\xe9chargement",
settings_nav_items_application: "Application",
settings_nav_items_accessibility: "Accessibilit\xe9",
settings_dev_title: "Dev / QA",
settings_nav_items_games: "Jeux",
settings_nav_items_about: "\xc0 propos",
settings_nav_items_download: "T\xe9l\xe9chargement",
settings_nav_items_dev: "DEV \ud83d\ude80",
settings_about_logo_alt: "Cloud Imperium\xa9",
settings_about_copyright: "\xa9 2012 - {{year}} Cloud Imperium Rights LLC et Cloud Imperium Rights Ltd",
settings_about_launcher_version: "Version du Launcher :",
settings_application_window_behavior_title: "Comportement de la fen\xeatre",
settings_application_window_behavior_description: "Cette option vous permettra de quitter l'application lorsque la fen\xeatre sera ferm\xe9e.",
settings_application_window_behavior_close_to_quit: "Activer la fermeture proche",
settings_application_debug_tools_title: "Outils de d\xe9bogage du Launcher",
settings_application_debug_tools_description: "Si vous rencontrez des probl\xe8mes avec le Launcher, vider le cache peut r\xe9soudre le probl\xe8me. Vous pourriez \xe9galement avoir besoin de localiser votre fichier de logs, cela peut \xeatre utile pour signaler un bug sur le <iclink>Issue Council</iclink> du Launcher.",
settings_application_debug_tools_label: "Debug tools",
settings_application_debug_tools_button_clear_cache: "Vider le cache du Launcher",
settings_application_debug_tools_button_get_logs: "Obtenir les logs",
settings_application_debug_tools_button_cache_clear_success: "Cache Cleared",
settings_accessibility_title: "Accessibilit\xe9s",
settings_accessibility_reduce_motion_title: "R\xe9duire les animations",
settings_accessibility_reduce_motion_description: "R\xe9duire le nombre d'animations dans le lanceur, telles que les vid\xe9os d'arri\xe8re-plan, les animations d'ic\xf4nes et les transitions de page.",
settings_accessibility_reduce_motion_system_sync_title: "Synchroniser avec le syst\xe8me d'exploitation",
settings_accessibility_reduce_motion_system_sync_description: "Suivre les pr\xe9f\xe9rences de r\xe9duction des animations du syst\xe8me d'exploitation",
settings_accessibility_reduce_motion_background_video_toggle_title: "D\xe9sactiver la vid\xe9o d'arri\xe8re-plan",
settings_accessibility_reduce_motion_background_video_toggle_description: "Remplacer la boucle vid\xe9o par une image statique",
settings_accessibility_reduce_motion_unessential_animation_toggle_title: "D\xe9sactiver les animations non essentielles",
settings_accessibility_reduce_motion_unessential_animation_toggle_description: "Ic\xf4nes d\xe9coratives, logos, interactions de la souris...",
settings_accessibility_reduce_motion_transition_effects_toggle_title: "D\xe9sactiver les effets de transition",
settings_accessibility_reduce_motion_transition_effects_toggle_description: "Animations entre les sections (pages, onglets...)",
settings_accessibility_reduce_motion_information_enabled: "La r\xe9duction des animations du syst\xe8me d'exploitation est activ\xe9e.",
settings_accessibility_reduce_motion_information_disabled: "La r\xe9duction des animations du syst\xe8me d'exploitation est d\xe9sactiv\xe9e.",
settings_accessibility_reduce_motion_information_restart_link_label: "Vos modifications seront appliqu\xe9es au prochain lancement. <iclink>Red\xe9marrer maintenant</iclink>.",
settings_games_installation_title: "Emplacement du jeu",
settings_games_installation_description: "Il s'agit du chemin de l'emplacement de votre dossier de jeu.",
settings_games_installation_information: "Si votre jeu est d\xe9j\xe0 install\xe9 \xe0 un autre emplacement, s\xe9lectionnez-le ici, puis cliquez sur V\xe9rifier.",
settings_games_installation_path_title: "Chemin d'installation complet:",
settings_games_installation_library_folder_success: "Chemin mis \xe0 jour",
settings_games_installation_library_folder_change: "Modifier",
settings_games_installation_library_folder_label: "Emplacement de la biblioth\xe8que RSI",
settings_games_game_files_title: "Fichiers du jeu",
settings_games_game_files_description: "V\xe9rifiez si les fichiers du jeu sont correctement install\xe9s. Si le jeu n'est pas encore install\xe9, cela installera le jeu.",
settings_games_game_files_verify_files: "V\xe9rifier",
settings_games_game_files_verifying_files: "V\xe9rification en cours",
settings_games_game_files_install_files: "Installer",
settings_games_game_files_installing_files: "Installation en cours",
settings_games_game_files_uninstall_files: "D\xe9sinstaller",
settings_games_game_files_uninstalling_files: "D\xe9sinstallation en cours",
settings_games_game_files_process_paused: "En pause",
settings_common_reset: "R\xe9initialiser toutes les modifications",
settings_common_reset_confirmation: "Les modifications ont \xe9t\xe9 r\xe9initialis\xe9es pour cette cha\xeene de jeu",
settings_common_accordion_open_all: "Tout ouvrir",
settings_common_accordion_close_all: "Tout fermer",
settings_common_back: "Retour",
settings_common_saved: "Enregistr\xe9",
settings_download_main_title: "Utilisation de la bande passante",
settings_download_main_content: "Ajustez l'utilisation de la bande passante du t\xe9l\xe9chargement pour optimiser votre vitesse Internet",
settings_download_concurrent_title: "T\xe9l\xe9chargement simultan\xe9",
settings_download_concurrent_desc: "Ajustez le nombre maximum de t\xe9l\xe9chargements simultan\xe9s autoris\xe9s \xe0 la fois, en optimisant votre exp\xe9rience de t\xe9l\xe9chargement en fonction de vos pr\xe9f\xe9rences et des capacit\xe9s de votre r\xe9seau.",
settings_download_speed_title: "Limitation de vitesse de t\xe9l\xe9chargement",
settings_download_speed_desc: "R\xe9gulez la vitesse de t\xe9l\xe9chargement en fixant un plafond sur le taux de transfert de donn\xe9es par seconde pour chaque connexion de t\xe9l\xe9chargement simultan\xe9e.",
settings_download_speed_unlimited: "Illimit\xe9",
settings_games_launch_command_line: "Arguments de ligne de commande suppl\xe9mentaires",
settings_games_launch_disclaimer: "Cette action s'appliquera la prochaine fois que vous lancerez le jeu",
settings_games_launch_hostname: "Universe Host",
settings_games_launch_port: "Universe Port",
settings_games_launch_executable: "Executable",
settings_games_launch_launch_options: "Launcher Options",
settings_games_launch_eac_title: "Easy Anti-Cheat",
settings_games_launch_eac_description: "Easy Anti-Cheat est un service anti-triche utilis\xe9 par de nombreux jeux populaires, luttant contre la triche et l'utilisation de logiciels tiers non autoris\xe9s dans les jeux PC multijoueurs.",
settings_games_launch_eac_informative: "Vous devez d\xe9finir le bon ex\xe9cutable ci-dessus pour activer le contournement EAC",
settings_games_launch_eac_disable: "Activer Easy Anti-Cheat bypass",
settings_games_launch_default: "Default:"
},
status: {
status_title: "RSI Status",
status_empty: "Aucun statut disponible.",
status_last_updated: "Date de derni\xe8re mise \xe0 jour {{time}}",
status_last_updated_empty: "Aucune donn\xe9e disponible pour le moment.",
status_more_information: "Plus d'information",
status_major: "Panne majeure",
status_partial: "Panne partielle",
status_degraded: "Performances d\xe9grad\xe9es",
status_maintenance: "En maintenance",
status_operational: "Op\xe9rationnel"
},
tray: {
tray_website: "Visiter le site",
tray_report_bug: "Signaler un bug",
tray_spectrum: "Spectrum",
tray_community_hub: "Community hub",
tray_support: "Obtenir de l'aide",
tray_mute: "D\xe9sactiver le son",
tray_unmute: "Activer le son",
tray_logout: "Se d\xe9connecter",
tray_quit: "Quitter l'application"
}
},
SC_TOOLBOX_LOCALIZATION_ZHCN_MAP = {
agreements: {
agreement_fetch_info_error: "暂时无法从服务器获取协议,请稍等一分钟后再试。",
agreement_declined: "协议被拒绝"
},
appHeader: {
app_header_menu: "菜单",
app_header_volume: "音量",
app_header_volume_mute: "静音",
app_header_volume_unmute: "取消静音",
app_header_account: "账户",
app_header_account_name: "用户名",
app_header_account_moniker: "@社区昵称",
app_header_menu_get_help: "获取帮助",
app_header_menu_spectrum: "光谱",
app_header_menu_issue_council: "问题理事会",
app_header_menu_discover: "探索启动器",
app_header_menu_exit_the_app: "退出程序",
app_header_menu_settings: "设置",
app_header_actions_download: "下载",
app_header_actions_menu_rsi_status: "RSI 状态",
app_header_actions_menu_rsi_account: "RSI 账户",
app_header_actions_menu_log_out: "登出",
app_header_loading: "正在进入宇宙…"
},
autoUpdate: {
auto_update_dialog_close: "关闭",
auto_update_dialog_title: "有可用的更新",
auto_update_dialog_sub_title: "版本{{version}}",
auto_update_dialog_no_update_content: "您当前正在运行的就是 RSI 启动器的最新版本。<0/>感谢您保持更新!",
auto_update_dialog_no_update_action_primary_label: "继续",
auto_update_dialog_update_available_content: "有新的 RSI 启动器版本可安装。程序将会关闭并重新启动。",
auto_update_dialog_update_available_action_primary_label: "安装并重新启动",
auto_update_dialog_update_available_action_secondary_label: "稍后安装",
auto_update_dialog_update_install_failed_content: "无法更新至最新版本的启动器,请重新安装或联系<0>客户支持</0>",
auto_update_dialog_update_install_failed_action_primary_label: "重新安装",
auto_update_dialog_update_install_failed_action_secondary_label: "稍后安装",
auto_update_dialog_update_quit_game_content: "游戏会话当前正在运行。如果你想要安装新版本启动器,将会关闭当前游戏会话,当前游戏进度可能会丢失",
auto_update_dialog_update_quit_game_action_primary_label: "退出游戏并安装",
auto_update_dialog_update_quit_game_action_secondary_label: "稍后再试",
auto_update_toast_update_installed: "成功安装新版本启动器"
},
connection: {
connection_title: "离线模式",
connection_offline_information: "你目前处于离线状态,某些功能暂不可用。当你的网络恢复,你将自动重连。",
connection_offline_trying_to_reconnect: "正在尝试重新连接",
connection_toast_connection_available: "重连成功",
connection_toast_action_continue_offline: "继续处于离线状态",
connection_toast_warning_lost_connection_title: "你目前处于离线状态",
connection_toast_warning_lost_connection_content: "你似乎处于离线状态。当你的网络恢复,你将自动重连。你可以在离线模式下继续使用启动器。",
connection_toast_warning_lost_connection_remaining: "距离登出还有的离线时间"
},
contextMenu: {
context_menu_copy: "复制",
context_menu_paste: "粘贴",
context_menu_cut: "剪切",
context_menu_select_all: "全选"
},
dialog: {
dialog_warning_logout_title: "登出",
dialog_warning_logout_text: "你确定要登出账户吗?",
dialog_warning_logout_game_running_text: "你确定要在游戏运行时登出账户吗?当前游戏进度可能会丢失。",
dialog_warning_logout_confirm: "登出",
dialog_warning_logout_error: "登出时发生错误。你的会话可能已经过期。请尝试重新登录。",
dialog_action_cancel: "取消",
dialog_action_confirm: "确认",
dialog_action_acknowledge: "我已知悉",
dialog_action_ok: "OK",
dialog_action_retry: "再次尝试",
dialog_action_close: "关闭",
dialog_action_accept: "同意",
dialog_action_decline: "拒绝",
dialog_action_verify: "验证文件",
dialog_action_install: "安装游戏",
dialog_action_relaunch: "重新启动",
dialog_action_discard: "放弃",
dialog_action_cancel_download: "取消下载",
dialog_warning_back_launcher: "返回启动器",
dialog_warning_exit_app_title: "退出程序",
dialog_warning_exit_app_text: "你确定要退出该应用程序吗?",
dialog_warning_exit_app_checkbox: "不再显示",
dialog_warning_exit_app_confirm: "退出程序",
dialog_warning_exit_app_game_running_text: "你无法在游戏运行时退出该应用程序。",
dialog_warning_uninstall_title: "卸载 {{game}} - {{channel}}",
dialog_warning_uninstall_text: "你确定要从你的电脑卸载该游戏吗?请注意,你的电脑上的所有用户都会卸载该游戏文件。",
dialog_warning_uninstall_userFolder_checkbox: "保留用户文件夹(按键绑定和设置偏好)",
dialog_warning_uninstall_userFolder_checkbox_description: "目录位置:{{path}}",
dialog_warning_uninstall_confirm: "卸载游戏",
dialog_settings_reset_title: "重置设置",
dialog_settings_reset_content: "你确定要重置你的游戏设置吗?",
dialog_settings_reset_button: "重置至默认",
dialog_settings_game_not_installed_title: "游戏未安装",
dialog_settings_game_not_installed_content: "当前你尝试验证文件的位置并未安装游戏。请先安装游戏后重试。",
dialog_cancel_installation_title: "取消下载",
dialog_cancel_installation_content: "你确定要取消下载{{info}}吗?",
dialog_cancel_installation_content_keep_files_downloaded: "保留已下载的文件",
dialog_start_installation_title: "安装 {{game}} - {{channel}}",
dialog_start_installation_content_location: "游戏将安装在以下位置",
dialog_start_installation_content_location_settings: "你可以在游戏设置中更改游戏位置",
dialog_start_installation_action_go_to_settings: "游戏设置",
dialog_start_installation_action_install: "安装",
dialog_launch_check_update_available_title: "游戏版本更新",
dialog_launch_check_update_available_content: "一个新的游戏版本 {{game}} - {{channel}} 可用。请更新后再进入游戏。",
dialog_discover_title: "启动器更新了 UI ",
dialog_discover_content: "RSI 启动器的外观焕然一新!我准备了一个小旅程带你去看看有什么变化。",
dialog_discover_start: "开启旅程",
dialog_discover_skip: "跳过",
dialog_debug_cache_clear_title: "清除启动器缓存",
dialog_debug_cache_clear_content: "此操作将清除启动器缓存并退出登录,你确定要继续吗?",
dialog_debug_cache_clear_button: "继续"
},
discover: {
step_done_label: "立即进入",
step_menu_title: "启动器应用菜单",
step_menu_description: "在此菜单中可快速访设置和其他有用的资源,例如:支持、光谱和问题理事会。",
step_status_title: "状态",
step_status_description: "在此可查看 RSI 各项服务的状态。如果有任何性能问题或服务中断,你可以在此处看到。",
step_download_title: "下载管理",
step_download_description: "查看下载/更新进度、暂停当前下载或快速访问下载设置。",
"step_user-profile_title": "用户档案",
"step_user-profile_description": "查看当前登录的账户。使用此菜单可快速访问你的 RSI 账户界面。如果你需要切换账号,可在此登出。",
step_last_title: "启动器发展",
step_last_description: "RSI 启动器会随着时间的推移不断发展。请随时在问题理事会向我们反馈问题。感谢你对我们开发的支持。"
},
download: {
download_empty: "下载队列中没有下载任务。",
download_phase: "阶段",
download_status: "状态",
download_speed: "速度",
download_left: "剩余",
download_files_left: "剩余文件",
download_title: "下载任务",
download_settings: "下载设置",
download_play: "开始",
download_pause: "暂停",
download_initializing: "正在初始化…",
download_update_manifest: "正在下载更新文件清单",
download_manifest: "正在下载文件清单",
downloaded_update_manifest: "更新文件清单已下载",
download_analysing_install: "正在验证安装文件",
download_checking_files: "正在验证文件 - 需要几分钟",
download_base_pack: "正在下载基础文件包",
download_updating_game_files: "正在更新游戏文件",
download_updating_game_content: "正在更新游戏内容",
download_completed: "完成",
download_waiting: "正在排队",
download_cancelling: "正在取消",
download_resume: "继续",
download_cancel: "取消",
download_remove: "移除",
download_error: "错误",
download_toast_install_success: "安装已完成",
download_toast_update_success: "更新已完成",
download_toast_verify_success: "文件验证已完成",
download_toast_install_cancel_success: "下载已取消",
download_toast_uninstall_success: "{{game}} - {{channel}} 已卸载",
download_toast_uninstall_fail: "{{game}} - {{channel}} 无法卸载",
download_type_install: "安装",
download_type_update: "更新",
download_type_verify: "验证文件"
},
errors: {
error_game_package_missing_title: "没有游戏资格包",
error_game_package_missing_subtitle: "你需要购买一个游戏资格包以登录访问游戏。",
error_game_package_missing_retry: "重试登录",
error_game_package_missing_support: "客户支持",
error_sign_in_offline_header_title: "你当前处于离线状态",
error_sign_in_offline_header_subtitle: "无法连接至我们的服务器。请检查你的网络并重试。",
error_sign_in_offline_content_title: "为什么我不能进入离线模式?",
error_sign_in_offline_content_description: "你无法进入离线模式可能由以下原因之一造成:",
error_sign_in_offline_content_description_first: "你还未选择 \u201c记住密码\u201d",
error_sign_in_offline_content_description_second: "你的设备信任期限已过",
error_sign_in_offline_content_description_third: "你在过去的30天内未登录过",
error_sign_in_offline_exit: "退出",
error_sign_in_offline_retry: "重试",
error_internal_error: "内部错误",
error_not_authenticated: "你未通过身份验证",
error_invalid_claims: "无效声明",
error_authentication_mfa: "身份验证需要mfa",
"error_sign-in_failed": "登入失败。你可能输入了错误的凭证。",
error_sign_in_not_authorized: "你没有权限访问此版本的 RSI 启动器。请从<0>该网页</0>下载公众版本。",
error_captcha_invalid: "验证码无效",
error_session_expired: "你的会话已过期。请再次确认你的密码。",
error_wrong_credentials: "你可能输入了错误的凭证、账户不存在或账户未激活。",
error_max_login_attempt: "已超过登入失败的最大次数。",
error_wrong_mfa_code: "双重验证失败。你可能输入了错误的或过期的验证码。",
error_captcha_required: "需要验证验证码。",
error_installer_error_code: "错误代码:{{ code }}",
error_installer_basepack_invalid_title: "基础文件包 - 文件无效",
error_installer_basepack_invalid_content: "下载游戏时出现错误,请重试。",
error_installer_disc_full_title: "磁盘空间不足",
error_installer_disc_full_content: "你的磁盘没有足够的可用空间。请清理出空间或将目录移动至空间更大的磁盘。",
error_installer_permissions_title: "文件系统权限错误",
error_installer_permissions_content: "修补程序在写入时遇到权限问题。请检查目录权限并重试。",
error_installer_permissions_action: "修复权限",
error_installer_file_in_use_title: "文件被占用",
error_installer_file_in_use_content: "游戏文件正在被占用。请关闭你打开的游戏文件后重试。",
error_installer_pk4_corrupted_title: "游戏文件已损坏",
error_installer_pk4_corrupted_content: "你的游戏文件已损坏且无法恢复。",
error_installer_retrieve_manifest_title: "无法获取更新文件清单",
error_installer_retrieve_manifest_content: "获取更新文件清单时发生网络错误。请检查你的网络连接-并重启启动器后重试。",
error_installer_unknown_network_title: "未知网络错误",
error_installer_unknown_network_content: "请检查你的网络并重试。",
error_installer_base_p4k_corrupted_title: "基础文件包验证错误",
error_installer_base_p4k_corrupted_content: "基础文件包验证失败。",
error_installer_init_download_title: "下载初始化 - 基础文件包 - 错误",
error_installer_patcher_title: "数据修补程序错误",
error_installer_title: "安装程序错误",
error_installer_patcher_generic_content: "安装时出现错误。可在<0>知识库</0>中查阅更多相关信息。",
error_installer_generic_content: "安装时出现错误。",
error_report_bug: "如果问题依然存在,请<0>汇报漏洞</0>。请同时附上你的<1>日志文件</1>。",
error_generic_title: "启动器错误",
error_generic_content: "出现错误。",
error_os_requirements_title: "未达到最低配置要求",
error_os_requirements_text: "你的电脑未达到运行 {{ game }} 的<0>最低配置要求</0>",
error_cpu_requirements_title: "检测到不支持的硬件",
error_cpu_requirements_text: "游戏需要一个支持 AVX 指令集的 CPU 才能运行。",
error_launch_account_not_found_title: "复制你的账户到 PTU ",
error_launch_account_not_found_content: "想要游玩公共测试宇宙PTU你需要复制账户到 PTU。请按照以下步骤<0>这里</0>并重试。",
error_launch_game_title: "{{game}} 意外停止运行",
error_launch_game_content: "尝试重新启动游戏。如果问题依然存在,请验证你的安装文件。",
error_launch_unknown_title: "启动器 - 未知错误",
error_launch_unknown_content: "启动游戏时出现错误。请验证游戏文件完整性。",
error_launch_error_code: "启动游戏出错,错误代码: {{ code }}",
error_launch_no_game_files_title: "启动器 - 未找到游戏文件",
error_launch_no_game_files_content: "启动游戏时出现错误。无法检索到游戏文件。请验证游戏文件完整性。",
error_launch_EAC_title: "启动器 - EAC 错误",
error_launch_EAC_content: "启动游戏时出现错误。EAC 检测到文件损坏。请验证游戏文件完整性。",
error_launch_game_crash_title: "游戏错误",
error_launch_game_crash_content: "游戏运行时出现错误。",
error_launch_game_running_title: "游戏正在运行",
error_launch_game_running_content: "游戏已经处于运行状态",
error_launch_check_update_unavailable_title: "检查游戏版本失败",
error_launch_check_update_unavailable_content: "检查游戏版本时出现错误。",
error_api_denied_request_title: "API 拒绝请求",
error_api_denied_request_content: "出现错误。你的会话似乎已过期或被拒绝。你已登出,请重试。",
error_api_validation_failed: "API 请求验证失败",
error_api_too_many_requests_title: "请求过多",
error_api_too_many_requests_content: "API 当前过载。请稍等几分钟后重试。",
error_api_unavailable: "API 不可用。请稍等几分钟后重试。",
error_api_internal_server_error: "我们的服务器遇到困难。请稍等几分钟后重试。",
error_api_auth_expired_content: "你的会话已过期。请再次确认你的密码。",
error_api_auth_expired_title: "会话已过期",
error_api_platform_auth_title: "平台验证错误",
error_api_platform_auth_content: "无法在 {{id}} 平台进行验证 {{error}}",
error_network_issue_title: "网络问题",
error_network_issue_content: "无法建立网络连接。请检查你的网络状态后尝试重新连接。"
},
form: {
sign_in_title: "登入 RSI 启动器",
sign_in_email: "邮箱",
sign_in_password: "密码",
sign_in_remember_me: "记住密码",
sign_in_forgot_password: "忘记密码?",
sign_in_captcha: "验证码",
sign_in_captcha_refresh: "刷新",
sign_in_captcha_help: "输入上方图像中的文本。",
sign_in_no_account: "没有账户?",
sign_in_create_account: "创建一个!",
sign_in_submit: "登入",
sign_in_loading: "正在登入…",
sign_in_mfa_title: "我们需要验证你的身份",
sign_in_mfa_subtitle: "保护你的账户对于我们来说是非常重要的。我们向你账户绑定的邮箱发送了验证码。",
sign_in_mfa_code_label: "验证码",
sign_in_mfa_code_help: "输入发送到你的邮箱的代码或验证器中的代码。或者使用备用代码。",
sign_in_mfa_device_label: "设备名称",
sign_in_mfa_device_help: "为你当前设备输入一个名称。",
sign_in_mfa_duration_label: "信任这个设备",
sign_in_mfa_duration_help: "允许设备在选定的时间内跳过MFA验证。如果这是一个共享或公共设备我们建议你选择“仅当前会话”。",
sign_in_mfa_session: "仅当前会话",
sign_in_mfa_day: "一天",
sign_in_mfa_week: "一周",
sign_in_mfa_month: "一个月",
sign_in_mfa_year: "一年",
sign_in_mfa_back_sign_in: "返回",
sign_in_mfa_submit: "验证身份",
error_field_is_required: "必须输入该字段",
error_email_field_is_required: "需要输入一个邮箱地址",
error_password_field_is_required: "需要输入密码",
error_code_required: "你必须输入你的代码",
error_device_required: "你必须输入你的设备名称",
error_device_min_length: "你的设备名称最少需要3个字符",
text_field_show_password: "显示密码",
text_field_hide_password: "隐藏密码"
},
gamePage: {
game_page_title: "进入<0/><1>{{name}} 宇宙</1>",
game_page_nav_title: "游戏",
game_page_nav_title_one: "游戏",
game_page_nav_title_other: "游戏",
game_page_game_is_running: "游戏正在运行",
game_page_installing: "正在安装…",
game_page_installing_paused: "安装已暂停",
game_page_updating: "正在更新…",
game_page_updating_paused: "更新已暂停",
game_page_verifying: "正在验证文件…",
game_page_uninstalling: "正在卸载",
game_page_verifying_paused: "验证已暂停",
game_page_update_game: "更新游戏",
game_page_launch_game: "启动游戏",
game_page_install_game: "安装游戏",
game_page_waiting_in_queue: "正在排队",
game_page_channels: "游戏环境",
game_page_settings: "游戏设置",
game_page_settings_verify: "验证游戏文件",
game_page_settings_uninstall: "卸载游戏",
game_page_update_game_is_available: "了解 {{version}} 新内容,<0>请查看补丁说明</0>",
game_page_game_is_not_available_offline: "你目前处于离线状态。运行 {{game}} 需要网络连接。",
game_page_status_under_maintenance: "我们正在对其中一项服务进行维护。",
game_page_status_issue: "我们正在解决一个问题。请自行承担风险。",
game_page_status_more_information: "想要获取更多信息请查阅<0>状态页面</0>",
game_page_cards_empty: "目前没有可用的内容",
game_page_cards_loading: "正在加载内容。",
game_page_cards_tab_community: "社区",
"game_page_cards_tab_comm-links": "通讯链接",
"game_page_cards_tab_new-citizens": "新手指南",
"game_page_cards_tab_patch-notes": "补丁说明",
game_page_card_button_label: "查看更多"
},
settingsPage: {
settings_about_title: "关于",
settings_application_title: "程序",
settings_games_title: "游戏",
settings_download_title: "下载",
settings_dev_title: "Dev / QA",
settings_nav_items_application: "程序",
settings_nav_items_accessibility: "辅助功能",
settings_nav_items_games: "游戏",
settings_nav_items_about: "关于",
settings_nav_items_download: "下载",
settings_nav_items_dev: "DEV \ud83d\ude80",
settings_about_logo_alt: "CloudImperium©",
settings_about_copyright: "© 2012 - {{year}} Cloud Imperium Rights LLC and Cloud Imperium Rights Ltd",
settings_about_launcher_version: "启动器版本",
settings_application_window_behavior_title: "窗口行为",
settings_application_window_behavior_description: "此选项允许你在关闭窗口时退出该程序。",
settings_application_window_behavior_close_to_quit: "启用 关闭窗口直接退出程序",
settings_application_debug_tools_title: "启动器调试工具",
settings_application_debug_tools_description: "如果你在使用启动器时遇到问题,清除缓存可能可以解决问题。你还需要找到你的日志文件,这可在你向<iclink>问题理事会</iclink>报告启动器问题时提供帮助。",
settings_application_debug_tools_label: "调试工具",
settings_application_debug_tools_button_clear_cache: "清除缓存",
settings_application_debug_tools_button_get_logs: "获取日志文件",
settings_application_debug_tools_button_cache_clear_success: "缓存已清除",
settings_accessibility_title: "辅助功能",
settings_accessibility_reduce_motion_title: "动画减弱",
settings_accessibility_reduce_motion_description: "减弱启动器中的动画。例如:背景视频、图标动画和页面过渡动画。",
settings_accessibility_reduce_motion_system_sync_title: "与操作系统同步",
settings_accessibility_reduce_motion_system_sync_description: "跟随操作系统的动画减弱设置偏好",
settings_accessibility_reduce_motion_background_video_toggle_title: "禁用背景视频",
settings_accessibility_reduce_motion_background_video_toggle_description: "将背景视频替换成一张静态图片",
settings_accessibility_reduce_motion_unessential_animation_toggle_title: "禁用非必要动画",
settings_accessibility_reduce_motion_unessential_animation_toggle_description: "装饰性图标、标志、光标交互...",
settings_accessibility_reduce_motion_transition_effects_toggle_title: "禁用页面过渡效果",
settings_accessibility_reduce_motion_transition_effects_toggle_description: "各部分(页面、选项卡...)之间的过渡动画",
settings_accessibility_reduce_motion_information_enabled: "操作系统的动画减弱已启用。",
settings_accessibility_reduce_motion_information_disabled: "操作系统的动画减弱已停用。",
settings_accessibility_reduce_motion_information_restart_link_label: "下次启动才会应用当前更改。<iclink>现在重新启动</iclink>。",
settings_games_installation_title: "游戏位置",
settings_games_installation_description: "这是你的游戏文件夹的路径。",
settings_games_installation_information: "如果你的游戏已经安装在其他位置,在这里选择位置,然后点击验证文件。",
settings_games_installation_path_title: "游戏位置完整路径",
settings_games_installation_library_folder_success: "路径已更新",
settings_games_installation_library_folder_change: "更改",
settings_games_installation_library_folder_label: "RSI 目录位置",
settings_games_game_files_title: "游戏文件",
settings_games_game_files_description: "安装/卸载此游戏频道或验证已安装的游戏文件完整性。",
settings_games_game_files_verify_files: "验证游戏文件",
settings_games_game_files_verifying_files: "正在验证游戏文件",
settings_games_game_files_install_files: "安装游戏",
settings_games_game_files_installing_files: "正在安装",
settings_games_game_files_uninstall_files: "卸载游戏",
settings_games_game_files_uninstalling_files: "正在卸载",
settings_games_game_files_process_paused: "已暂停",
settings_common_reset: "重置所有更改",
settings_common_reset_confirmation: "此游戏频道的更改已被重置",
settings_common_accordion_open_all: "全部展开",
settings_common_accordion_close_all: "全部折叠",
settings_common_back: "返回",
settings_common_saved: "已保存",
settings_download_main_title: "带宽使用",
settings_download_main_content: "调整下行带宽以优化网速",
settings_download_concurrent_title: "同时下载数",
settings_download_concurrent_desc: "调整同时下载的最大文件数。优化你的下载体验以匹配你的偏好和网络。",
settings_download_speed_title: "限制下载速度",
settings_download_speed_desc: "通过为每个并发下载连接设置每秒数据传输速率上限来调节下载速度。",
settings_download_speed_unlimited: "无限制",
settings_application_discover_behavior_title: "探索行为",
settings_application_discover_behavior_description: "启动器探索仅在首次进入启动器时显示(或通过点击 RSI 菜单中的 探索 按钮)。此选项将允许您在负载时重新启用 探索 以进行测试。",
settings_application_discover_behavior_isDiscoverDone: "isDiscoverDone",
settings_games_launch_command_line: "其他命令行参数",
settings_games_launch_disclaimer: "此操作将在你下次\u2019ll启动游戏时应用",
settings_games_launch_hostname: "宇宙 Host",
settings_games_launch_port: "宇宙端口",
settings_games_launch_executable: "可执行",
settings_games_launch_launch_options: "启动器选项",
settings_games_launch_eac_title: "Easy Anti-Cheat",
settings_games_launch_eac_description: "Easy Anti-Cheat 是许多流行游戏使用的反作弊服务。用于在多人PC游戏中阻止作弊和未授权的第三方软件的使用。",
settings_games_launch_eac_informative: "你需要在上面设置正确的可执行文件以启用 绕过EAC",
settings_games_launch_eac_disable: "启用 绕过Easy Anti-Cheat",
settings_games_launch_default: "默认:"
},
status: {
status_title: "RSI 状态",
status_empty: "无状态可用。",
status_last_updated: "最后一次更新 {{time}}",
status_last_updated_empty: "当前无可用数据。",
status_more_information: "更多信息",
status_major: "完全中断",
status_partial: "部分中断",
status_degraded: "性能降低",
status_maintenance: "正在维护",
status_operational: "正常运行"
},
tray: {
tray_website: "访问网站",
tray_report_bug: "汇报漏洞",
tray_spectrum: "光谱",
tray_community_hub: "社区中心",
tray_support: "支持",
tray_mute: "静音",
tray_unmute: "取消静音",
tray_logout: "登出",
tray_quit: "退出"
}
},
SC_TOOLBOX_LOCALIZATION_ZHTW_MAP = {
agreements: {
agreement_fetch_info_error: "暫時無法從伺服器取得協議,請稍等一分鐘後再試。",
agreement_declined: "協議被拒絕"
},
appHeader: {
app_header_menu: "選單",
app_header_volume: "音量",
app_header_volume_mute: "靜音",
app_header_volume_unmute: "取消靜音",
app_header_account: "帳戶",
app_header_account_name: "使用者名稱",
app_header_account_moniker: "@社群暱稱",
app_header_menu_get_help: "取得幫助",
app_header_menu_spectrum: "Spectrum",
app_header_menu_issue_council: "問題與建議中心",
app_header_menu_discover: "探索啟動器功能",
app_header_menu_exit_the_app: "關閉程式",
app_header_menu_settings: "設定",
app_header_actions_download: "下載",
app_header_actions_menu_rsi_status: "RSI 狀態",
app_header_actions_menu_rsi_account: "RSI 帳戶",
app_header_actions_menu_log_out: "登出",
app_header_loading: "正在進入宇宙…"
},
autoUpdate: {
auto_update_dialog_close: "關閉",
auto_update_dialog_title: "有更新等待安裝",
auto_update_dialog_sub_title: "版本{{version}}",
auto_update_dialog_no_update_content: "您目前正在執行的就是 RSI 啟動器的最新版本。<0/>感謝您保持更新!",
auto_update_dialog_no_update_action_primary_label: "繼續",
auto_update_dialog_update_available_content: "有新的 RSI 啟動器版本可安裝。程式將會關閉並重新啟動。",
auto_update_dialog_update_available_action_primary_label: "安裝並重新啟動",
auto_update_dialog_update_available_action_secondary_label: "稍後安裝",
auto_update_dialog_update_install_failed_content: "無法更新至最新版本的啟動器,請重新安裝或聯繫<0>客戶支援</0>",
auto_update_dialog_update_install_failed_action_primary_label: "重新安裝",
auto_update_dialog_update_install_failed_action_secondary_label: "稍後安裝",
auto_update_dialog_update_quit_game_content: "遊戲工作階段目前正在執行。如果你想要安裝新版本啟動器,將會關閉目前遊戲工作階段,正在進行的遊戲進度可能會遺失",
auto_update_dialog_update_quit_game_action_primary_label: "退出遊戲並安裝",
auto_update_dialog_update_quit_game_action_secondary_label: "稍後再試",
auto_update_toast_update_installed: "成功安裝新版本啟動器"
},
contextMenu: {
context_menu_copy: "複製",
context_menu_paste: "貼上",
context_menu_cut: "剪下",
context_menu_select_all: "全選"
},
dialog: {
dialog_warning_logout_title: "登出",
dialog_warning_logout_text: "你確定要登出帳戶嗎?",
dialog_warning_logout_game_running_text: "你確定要在遊戲執行時登出帳戶嗎?正在進行的遊戲進度可能會遺失。",
dialog_warning_logout_confirm: "登出",
dialog_warning_logout_error: "登出時發生錯誤。你的工作階段可能已經過期。請嘗試重新登入。",
dialog_action_cancel: "取消",
dialog_action_confirm: "確認",
dialog_action_acknowledge: "我已了解",
dialog_action_ok: "OK",
dialog_action_retry: "再次嘗試",
dialog_action_close: "關閉",
dialog_action_accept: "同意",
dialog_action_decline: "拒絕",
dialog_action_verify: "驗證文件",
dialog_action_install: "安裝遊戲",
dialog_action_relaunch: "重新啟動",
dialog_action_discard: "放棄",
dialog_action_cancel_download: "取消下載",
dialog_warning_back_launcher: "返回啟動器",
dialog_warning_exit_app_title: "關閉程式",
dialog_warning_exit_app_text: "你確定要退出應用程式嗎?",
dialog_warning_exit_app_checkbox: "不再顯示",
dialog_warning_exit_app_game_running_text: "你確定要在遊戲執行時退出應用程式嗎?",
dialog_warning_exit_app_confirm: "關閉程式",
dialog_warning_uninstall_title: "移除 {{game}} - {{channel}}",
dialog_warning_uninstall_text: "你確定要從你的電腦移除該遊戲嗎?請注意,你的電腦上的所有使用者都會移除該遊戲文件。",
dialog_warning_uninstall_userFolder_checkbox: "保留使用者資料夾(按鍵綁定和設定偏好)",
dialog_warning_uninstall_userFolder_checkbox_description: "目錄位置:{{path}}",
dialog_warning_uninstall_confirm: "移除遊戲",
dialog_settings_reset_title: "重設設定",
dialog_settings_reset_content: "你確定要重設你的遊戲設定嗎?",
dialog_settings_reset_button: "復原預設",
dialog_settings_game_not_installed_title: "尚未安裝遊戲",
dialog_settings_game_not_installed_content: "目前你嘗試驗證文件的位置並未安裝遊戲。請先安裝遊戲後重試。",
dialog_cancel_installation_title: "取消下載",
dialog_cancel_installation_content: "你確定要取消下載{{info}}嗎?",
dialog_cancel_installation_content_keep_files_downloaded: "保留已下載的文件",
dialog_start_installation_title: "安裝 {{game}} - {{channel}}",
dialog_start_installation_content_location: "遊戲將安裝在以下位置",
dialog_start_installation_content_location_settings: "你可以在遊戲設定中更改遊戲位置",
dialog_start_installation_action_go_to_settings: "遊戲設定",
dialog_start_installation_action_install: "安裝",
dialog_launch_check_update_available_title: "遊戲版本更新",
dialog_launch_check_update_available_content: "一個新的遊戲版本 {{game}} - {{channel}} 可安裝。請更新後再進入遊戲。",
dialog_discover_title: "啟動器更新了 UI ",
dialog_discover_content: "RSI 啟動器的外觀現在已經煥然一新!我們準備了一小段旅程來引領你去看看有什麼樣的改變。",
dialog_discover_start: "開始旅程",
dialog_discover_skip: "跳過",
dialog_debug_cache_clear_title: "清除啟動器快取",
dialog_debug_cache_clear_content: "此操作將清除啟動器快取並退出登入,你確定要繼續嗎?",
dialog_debug_cache_clear_button: "繼續"
},
discover: {
step_done_label: "立即進入",
step_menu_title: "啟動器應用選單",
step_menu_description: "在此選單中可快速訪設定和其他有用的資源例如支援、Spectrum和問題與建議中心。",
step_status_title: "狀態",
step_status_description: "在此可查看 RSI 各項服務的狀態。如果有任何性能問題或服務中斷,你可以在此處看到。",
step_download_title: "下載管理",
step_download_description: "查看下載/更新進度、暫停目前下載或快速更改下載設定。",
"step_user-profile_title": "使用者檔案",
"step_user-profile_description": "查看目前登入的帳戶。使用此選單能夠快速瀏覽你的 RSI 帳戶介面。如果你需要切換帳號,可以在此處進行登出。",
step_last_title: "啟動器路線圖",
step_last_description: "RSI 啟動器會隨著時間的推移不斷發展。請隨時在問題與建議中心向我們回饋問題。感謝你對我們開發的支援。"
},
download: {
download_empty: "下載佇列中沒有下載任務。",
download_phase: "階段",
download_status: "狀態",
download_speed: "速度",
download_left: "剩餘",
download_files_left: "剩餘文件",
download_title: "下載任務",
download_settings: "下載設定",
download_play: "開始",
download_pause: "暫停",
download_initializing: "正在初始化…",
download_update_manifest: "正在下載更新文件清單",
download_manifest: "正在下載文件清單",
downloaded_update_manifest: "更新文件清單已下載",
download_analysing_install: "正在驗證安裝文件",
download_checking_files: "正在驗證文件 - 需要幾分鐘",
download_base_pack: "正在下載基礎文件包",
download_updating_game_files: "正在更新遊戲文件",
download_updating_game_content: "正在更新遊戲內容",
download_completed: "完成",
download_waiting: "正在排隊",
download_cancelling: "正在取消",
download_resume: "繼續",
download_cancel: "取消",
download_remove: "移除",
download_error: "錯誤",
download_toast_install_success: "安裝已完成",
download_toast_update_success: "更新已完成",
download_toast_verify_success: "文件驗證已完成",
download_toast_install_cancel_success: "下載已取消",
download_toast_uninstall_success: "{{game}} - {{channel}} 已移除",
download_toast_uninstall_fail: "{{game}} - {{channel}} 無法移除",
download_type_install: "安裝",
download_type_update: "更新",
download_type_verify: "驗證文件"
},
errors: {
error_game_package_missing_title: "沒有遊戲資格包",
error_game_package_missing_subtitle: "你需要購買一個遊戲資格包才能夠登入遊戲。",
error_game_package_missing_retry: "重新登入",
error_game_package_missing_support: "客戶支援",
error_internal_error: "內部錯誤",
error_not_authenticated: "你未通過身份驗證",
error_invalid_claims: "無效宣告",
error_authentication_mfa: "身份驗證需要mfa",
error_sign_in_failed: "登入失敗。你可能輸入了錯誤的憑證。",
error_sign_in_not_authorized: "你沒有登入權限。",
error_captcha_invalid: "驗證碼無效",
error_session_expired: "你的工作階段已過期。請再次確認你的密碼。",
error_wrong_credentials: "你可能輸入了錯誤的憑證、帳戶不存在或帳戶未啟用(1032)",
error_max_login_attempt: "已超過登入失敗的最大次數。(1034)",
error_wrong_mfa_code: "雙重驗證失敗。你可能輸入了錯誤的或過期的驗證碼(1037)",
error_captcha_required: "登入失敗。你可能輸入了錯誤的憑證。",
error_installer_basepack_invalid_title: "基礎文件包 - 文件無效",
error_installer_basepack_invalid_content: "下載遊戲時出現錯誤,請重試。錯誤代碼:{{code}}",
error_installer_disc_full_title: "磁碟空間不足",
error_installer_disc_full_content: "你的磁碟沒有足夠的可用空間。請清理出空間或將目錄移動至空間更大的磁碟。錯誤代碼:{{code}}",
error_installer_permissions_title: "文件系統權限錯誤",
error_installer_permissions_content: "修補程式在寫入時遇到權限問題。請檢查目錄權限並重試。錯誤代碼:{{code}}",
error_installer_permissions_action: "修復權限",
error_installer_file_in_use_title: "文件被佔用",
error_installer_file_in_use_content: "遊戲文件正在被佔用。請關閉你打開的遊戲文件後重試。錯誤代碼:{{code}}",
error_installer_pk4_corrupted_title: "遊戲文件已損壞",
error_installer_pk4_corrupted_content: "你的遊戲文件已損壞且無法復原。錯誤代碼:{{code}}",
error_installer_retrieve_manifest_title: "無法取得更新文件清單",
error_installer_retrieve_manifest_content: "取得更新文件清單時發生網路錯誤。請檢查你的網路連接-並重啟啟動器後重試。錯誤代碼:{{code}}",
error_installer_unknown_network_title: "未知網路錯誤",
error_installer_unknown_network_content: "請檢查你的網路並重試。錯誤代碼:{{code}}",
error_installer_base_p4k_corrupted_title: "基礎文件包驗證錯誤",
error_installer_base_p4k_corrupted_content: "基礎文件包驗證失敗,請重試。如果問題依然存在,請<0>回報漏洞</0>。別忘了附上你的<1>日誌檔案。</1>",
error_installer_init_download_title: "下載初始化 - 基礎文件包 - 錯誤",
error_installer_patcher_title: "資料修補程式錯誤",
error_installer_title: "安裝程式錯誤",
error_installer_patcher_generic_content: "安裝時出現錯誤。可在<0>知識庫</0>中查閱更多相關資訊。如果問題依然存在,請<1>回報漏洞</1>。請同時附上你的<2>日誌檔案</2>。錯誤代碼:{{code}}",
error_installer_generic_content: "安裝時出現錯誤。如果問題依然存在,請<0>回報漏洞</0>。請同時附上你的<1>日誌檔案</1>。錯誤代碼:{{code}}",
error_generic_title: "啟動器錯誤",
error_generic_content: "出現錯誤。如果問題依然存在,請<0>回報漏洞</0>。請同時附上你的<1>日誌檔案</1>。錯誤代碼:{{code}}",
error_os_requirements_title: "未達到最低配置要求",
error_os_requirements_text: "你的電腦未達到執行 {{ game }} 的<0>最低配置要求</0>",
error_cpu_requirements_title: "檢測到不支援的硬體",
error_cpu_requirements_text: "遊戲需要一個支援 AVX 指令集的 CPU 才能執行。",
error_launch_account_not_found_title: "將你的帳戶複製到 PTU ",
error_launch_account_not_found_content: "想要遊玩公共測試宇宙PTU你需要複製帳戶到 PTU。請按照以下步驟<0>這裡</0>並重試。錯誤代碼:{{code}}",
error_launch_game_title: "{{game}} 意外停止執行",
error_launch_game_content: "嘗試重新啟動遊戲。如果問題依然存在,請驗證你的安裝文件。",
error_launch_unknown_title: "啟動器 - 未知錯誤",
error_launch_unknown_content: "啟動遊戲時出現錯誤。請驗證遊戲文件完整性。<2></2> 如果問題依然存在,請<0>回報漏洞</0>。請同時附上你的<1>日誌檔案</1>。錯誤代碼:{{code}}",
error_launch_no_game_files_title: "啟動器 - 未找到遊戲文件",
error_launch_no_game_files_content: "啟動遊戲時出現錯誤。無法檢索到遊戲文件。請驗證遊戲文件完整性。錯誤代碼:{{code}}",
error_launch_EAC_title: "啟動器 - EAC 錯誤",
error_launch_EAC_content: "啟動遊戲時出現錯誤。EAC 檢測到文件損壞。請驗證遊戲文件完整性。錯誤代碼:{{code}}",
error_launch_game_crash_title: "遊戲錯誤",
error_launch_game_crash_content: "遊戲執行時出現錯誤。如果問題依然存在,請<0>回報漏洞</0>。請同時附上你的<1>日誌檔案</1>。錯誤代碼:{{code}}",
error_launch_game_running_title: "遊戲正在執行",
error_launch_game_running_content: "遊戲已經處於執行狀態",
error_launch_check_update_unavailable_title: "檢查遊戲版本失敗",
error_launch_check_update_unavailable_content: "檢查遊戲版本時出現錯誤。如果問題依然存在,請<0>回報漏洞</0>。請同時附上你的<1>日誌檔案</1>。錯誤代碼:{{code}}",
error_api_denied_request_title: "API 拒絕請求",
error_api_denied_request_content: "出現錯誤。你的工作階段似乎已過期或被拒絕。你已登出,請重試。",
error_api_validation_failed: "API 請求驗證失敗",
error_api_too_many_requests_title: "請求過多",
error_api_too_many_requests_content: "API 目前過載。請稍等幾分鐘後重試。",
error_api_unavailable: "API 不可用。請稍等幾分鐘後重試。",
error_api_internal_server_error: "我們的伺服器遇到困難。請稍等幾分鐘後重試。",
error_api_auth_expired_content: "你的工作階段已過期。請再次確認你的密碼。",
error_api_auth_expired_title: "工作階段已過期",
error_api_platform_auth_title: "平台驗證錯誤",
error_api_platform_auth_content: "無法在 {{id}} 平台進行驗證 {{error}}",
error_network_issue_title: "網路問題",
error_network_issue_content: "無法建立網路連接。請檢查你的網路狀態後嘗試重新連接。"
},
form: {
sign_in_title: "登入 RSI 啟動器",
sign_in_email: "電子信箱",
sign_in_password: "密碼",
sign_in_remember_me: "記住密碼",
sign_in_forgot_password: "忘記密碼?",
sign_in_captcha: "驗證碼",
sign_in_captcha_refresh: "重新整理",
sign_in_captcha_help: "輸入上方圖像中的文字。",
sign_in_no_account: "沒有帳戶?",
sign_in_create_account: "建立一個!",
sign_in_submit: "登入",
sign_in_loading: "正在登入…",
sign_in_mfa_title: "我們需要驗證你的身份",
sign_in_mfa_subtitle: "保護你的帳戶對於我們來說是非常重要的。我們向你帳戶綁定的電子信箱發送了驗證碼。",
sign_in_mfa_code_label: "驗證碼",
sign_in_mfa_code_help: "輸入發送到你的電子信箱的程式碼或驗證器中的程式碼。或者使用備用程式碼。",
sign_in_mfa_device_label: "裝置名稱",
sign_in_mfa_device_help: "為你目前裝置輸入一個名稱。",
sign_in_mfa_duration_label: "信任這個裝置",
sign_in_mfa_duration_help: "允許裝置在選定的時間內跳過MFA驗證。如果這是一個共享或公共裝置我們建議你選擇“僅目前工作階段”。",
sign_in_mfa_session: "僅目前工作階段",
sign_in_mfa_day: "一天",
sign_in_mfa_week: "一週",
sign_in_mfa_month: "一個月",
sign_in_mfa_year: "一年",
sign_in_mfa_back_sign_in: "返回",
sign_in_mfa_submit: "驗證身份",
error_field_is_required: "必須輸入該欄位",
error_email_field_is_required: "需要輸入一個電子信箱地址",
error_password_field_is_required: "需要輸入密碼",
error_code_required: "你必須輸入你的程式碼",
error_device_required: "你必須輸入你的裝置名稱",
error_device_min_length: "你的裝置名稱最少需要3個字元",
text_field_show_password: "顯示密碼",
text_field_hide_password: "隱藏密碼"
},
gamePage: {
game_page_title: "進入<0/><1>{{name}} 宇宙</1>",
game_page_nav_title: "遊戲",
game_page_nav_title_one: "遊戲",
game_page_nav_title_other: "遊戲",
game_page_game_is_running: "遊戲正在執行",
game_page_installing: "正在安裝…",
game_page_installing_paused: "安裝已暫停",
game_page_updating: "正在更新…",
game_page_updating_paused: "更新已暫停",
game_page_verifying: "正在驗證文件…",
game_page_uninstalling: "正在移除",
game_page_verifying_paused: "驗證已暫停",
game_page_update_game: "更新遊戲",
game_page_launch_game: "啟動遊戲",
game_page_install_game: "安裝遊戲",
game_page_waiting_in_queue: "正在排隊",
game_page_channels: "遊戲環境",
game_page_settings: "遊戲設定",
game_page_settings_verify: "驗證遊戲文件",
game_page_settings_uninstall: "移除遊戲",
game_page_update_game_is_available: "了解 {{version}} 新內容,<0>請查看補丁說明</0>",
game_page_status_under_maintenance: "我們正在對其中一項服務進行維護。",
game_page_status_issue: "我們正在解決一個問題。請自行承擔風險。",
game_page_status_more_information: "想要取得更多資訊請查閱<0>狀態頁面</0>",
game_page_cards_empty: "目前沒有可用的內容",
game_page_cards_loading: "正在載入內容。",
game_page_cards_tab_community: "社群",
"game_page_cards_tab_comm-links": "通訊連結",
"game_page_cards_tab_new-citizens": "新手指南",
"game_page_cards_tab_patch-notes": "補丁說明",
game_page_card_button_label: "查看更多"
},
settingsPage: {
settings_about_title: "關於啟動器",
settings_application_title: "一般設定",
settings_games_title: "遊戲檔案",
settings_download_title: "下載設定",
settings_dev_title: "Dev / QA",
settings_nav_items_application: "程式",
settings_nav_items_accessibility: "輔助功能",
settings_nav_items_games: "遊戲",
settings_nav_items_about: "關於",
settings_nav_items_download: "下載",
settings_nav_items_dev: "DEV \ud83d\ude80",
settings_about_logo_alt: "CloudImperium©",
settings_about_copyright: "© 2012 - {{year}} Cloud Imperium Rights LLC and Cloud Imperium Rights Ltd",
settings_about_launcher_version: "啟動器版本",
settings_application_window_behavior_title: "關閉設定",
settings_application_window_behavior_description: "此功能將會停用啟動器最小化,並在你關閉視窗後直接關閉啟動器。",
settings_application_window_behavior_close_to_quit: "啟用 關閉視窗直接關閉程式",
settings_application_debug_tools_title: "啟動器除錯工具",
settings_application_debug_tools_description: "如果你在使用啟動器時遇到問題,清除快取可能可以解決問題。你還需要找到你的日誌檔案,這可在你向<iclink>問題與建議中心</iclink>報告啟動器問題時提供幫助。",
settings_application_debug_tools_label: "除錯工具",
settings_application_debug_tools_button_clear_cache: "清除快取",
settings_application_debug_tools_button_get_logs: "取得日誌檔案",
settings_application_debug_tools_button_cache_clear_success: "快取已清除",
settings_accessibility_title: "輔助功能",
settings_accessibility_reduce_motion_title: "減少動畫效果",
settings_accessibility_reduce_motion_description: "減少啟動器中的動畫效果。例如:背景影片、圖示動畫和頁面轉換動畫。",
settings_accessibility_reduce_motion_system_sync_title: "與系統同步",
settings_accessibility_reduce_motion_system_sync_description: "與系統的動畫減少設定同步",
settings_accessibility_reduce_motion_background_video_toggle_title: "停用背景影片",
settings_accessibility_reduce_motion_background_video_toggle_description: "使用靜態圖片取代背景影片",
settings_accessibility_reduce_motion_unessential_animation_toggle_title: "停用非必要動畫",
settings_accessibility_reduce_motion_unessential_animation_toggle_description: "裝飾性圖示、標誌、游標互動...",
settings_accessibility_reduce_motion_transition_effects_toggle_title: "停用頁面轉換效果",
settings_accessibility_reduce_motion_transition_effects_toggle_description: "各部分(頁面、頁籤...)之間的過渡動畫",
settings_accessibility_reduce_motion_information_enabled: "系統的動畫減少已啟用。",
settings_accessibility_reduce_motion_information_restart_link_label: "下次啟動時才會套用目前變更。<iclink>立刻重新啟動</iclink>。",
settings_games_installation_title: "遊戲位置",
settings_games_installation_description: "這是你的遊戲資料夾的路徑。",
settings_games_installation_information: "如果你的遊戲已經安裝在其他位置,在這裡選擇位置,然後點擊驗證文件。",
settings_games_installation_path_title: "遊戲位置完整路徑",
settings_games_installation_library_folder_success: "路徑已更新",
settings_games_installation_library_folder_change: "更改",
settings_games_installation_library_folder_label: "RSI 目錄位置",
settings_games_game_files_title: "遊戲文件",
settings_games_game_files_description: "安裝/移除此遊戲頻道或驗證已安裝的遊戲文件完整性。",
settings_games_game_files_verify_files: "驗證遊戲文件",
settings_games_game_files_verifying_files: "正在驗證遊戲文件",
settings_games_game_files_install_files: "安裝遊戲",
settings_games_game_files_installing_files: "正在安裝",
settings_games_game_files_uninstall_files: "移除遊戲",
settings_games_game_files_uninstalling_files: "正在移除",
settings_games_game_files_process_paused: "已暫停",
settings_common_reset: "重設所有更改",
settings_common_reset_confirmation: "此遊戲頻道的更改已被重設",
settings_common_accordion_open_all: "展開全部",
settings_common_accordion_close_all: "收起全部",
settings_common_back: "返回",
settings_common_saved: "已儲存",
settings_download_main_title: "下載限制",
settings_download_main_content: "調整下載速度來改善網路速率",
settings_download_concurrent_title: "同時下載數",
settings_download_concurrent_desc: "調整同時下載的最大文件數。提升你的下載體驗來匹配你的個人習慣和網路環境。",
settings_download_speed_title: "限制下載速度",
settings_download_speed_desc: "設定每秒資料傳輸速率上限以調節下載速率。",
settings_application_discover_behavior_title: "探索功能",
settings_application_discover_behavior_description: "啟動器探索僅在首次進入啟動器時顯示(或透過點擊 RSI 選單中的 探索 按鈕)。此選項將允許您在負載時重新啟用 探索 以進行測試。",
settings_application_discover_behavior_isDiscoverDone: "isDiscoverDone",
settings_games_launch_command_line: "其他命令列參數",
settings_games_launch_disclaimer: "此操作將在你下次\u2019ll啟動遊戲時應用",
settings_games_launch_hostname: "宇宙 Host",
settings_games_launch_port: "宇宙埠",
settings_games_launch_executable: "可執行",
settings_games_launch_launch_options: "啟動器選項"
},
status: {
status_title: "RSI 伺服器狀態",
status_empty: "暫無狀態可顯示。",
status_last_updated: "最後更新於 {{time}}",
status_last_updated_empty: "目前沒有資料。",
status_more_information: "更多資訊",
status_major: "完全斷線",
status_partial: "部分斷線",
status_degraded: "性能較差",
status_maintenance: "正在維護",
status_operational: "正常執行"
},
tray: {
tray_website: "瀏覽網站",
tray_report_bug: "回報漏洞",
tray_spectrum: "Spectrum",
tray_community_hub: "社群中心",
tray_support: "支援",
tray_mute: "靜音",
tray_unmute: "取消靜音",
tray_logout: "登出",
tray_quit: "退出"
}
};
function r(e) {
return r = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
}, r(e)
}
function i(e, t) {
if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
}
function a(e) {
var t = function(e, t) {
if ("object" !== r(e) || null === e) return e;
var n = e[Symbol.toPrimitive];
if (void 0 !== n) {
var i = n.call(e, t || "default");
if ("object" !== r(i)) return i;
throw new TypeError("@@toPrimitive must return a primitive value.")
}
return ("string" === t ? String : Number)(e)
}(e, "string");
return "symbol" === r(t) ? t : String(t)
}
function o(e, t) {
for (var n = 0; n < t.length; n++) {
var r = t[n];
r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, a(r.key), r)
}
}
function s(e, t, n) {
return t && o(e.prototype, t), n && o(e, n), Object.defineProperty(e, "prototype", {
writable: !1
}), e
}
function l(e) {
if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
return e
}
function c(e, t) {
return c = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
return e.__proto__ = t, e
}, c(e, t)
}
function u(e, t) {
if ("function" !== typeof t && null !== t) throw new TypeError("Super expression must either be null or a function");
e.prototype = Object.create(t && t.prototype, {
constructor: {
value: e,
writable: !0,
configurable: !0
}
}), Object.defineProperty(e, "prototype", {
writable: !1
}), t && c(e, t)
}
function d(e, t) {
if (t && ("object" === r(t) || "function" === typeof t)) return t;
if (void 0 !== t) throw new TypeError("Derived constructors may only return object or undefined");
return l(e)
}
function p(e) {
return p = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {
return e.__proto__ || Object.getPrototypeOf(e)
}, p(e)
}
function h(e, t, n) {
return (t = a(t)) in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e
}
function f(e, t) {
(null == t || t > e.length) && (t = e.length);
for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
return r
}
function m(e) {
return function(e) {
if (Array.isArray(e)) return e
}(e) || function(e) {
if ("undefined" !== typeof Symbol && null != e[Symbol.iterator] || null != e["@@iterator"]) return Array.from(e)
}(e) || function(e, t) {
if (e) {
if ("string" === typeof e) return f(e, t);
var n = Object.prototype.toString.call(e).slice(8, -1);
return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? f(e, t) : void 0
}
}(e) || function() {
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
}()
}
function g(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function v(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? g(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : g(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
var y = {
type: "logger",
log: function(e) {
this.output("log", e)
},
warn: function(e) {
this.output("warn", e)
},
error: function(e) {
this.output("error", e)
},
output: function(e, t) {
console && console[e] && console[e].apply(console, t)
}
},
_ = function() {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
i(this, e), this.init(t, n)
}
return s(e, [{
key: "init",
value: function(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
this.prefix = t.prefix || "i18next:", this.logger = e || y, this.options = t, this.debug = t.debug
}
}, {
key: "setDebug",
value: function(e) {
this.debug = e
}
}, {
key: "log",
value: function() {
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
return this.forward(t, "log", "", !0)
}
}, {
key: "warn",
value: function() {
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
return this.forward(t, "warn", "", !0)
}
}, {
key: "error",
value: function() {
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
return this.forward(t, "error", "")
}
}, {
key: "deprecate",
value: function() {
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
return this.forward(t, "warn", "WARNING DEPRECATED: ", !0)
}
}, {
key: "forward",
value: function(e, t, n, r) {
return r && !this.debug ? null : ("string" === typeof e[0] && (e[0] = "".concat(n).concat(this.prefix, " ").concat(e[0])), this.logger[t](e))
}
}, {
key: "create",
value: function(t) {
return new e(this.logger, v(v({}, {
prefix: "".concat(this.prefix, ":").concat(t, ":")
}), this.options))
}
}, {
key: "clone",
value: function(t) {
return (t = t || this.options).prefix = t.prefix || this.prefix, new e(this.logger, t)
}
}]), e
}(),
b = new _,
x = function() {
function e() {
i(this, e), this.observers = {}
}
return s(e, [{
key: "on",
value: function(e, t) {
var n = this;
return e.split(" ").forEach((function(e) {
n.observers[e] = n.observers[e] || [], n.observers[e].push(t)
})), this
}
}, {
key: "off",
value: function(e, t) {
this.observers[e] && (t ? this.observers[e] = this.observers[e].filter((function(e) {
return e !== t
})) : delete this.observers[e])
}
}, {
key: "emit",
value: function(e) {
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
if (this.observers[e]) {
var i = [].concat(this.observers[e]);
i.forEach((function(e) {
e.apply(void 0, n)
}))
}
if (this.observers["*"]) {
var a = [].concat(this.observers["*"]);
a.forEach((function(t) {
t.apply(t, [e].concat(n))
}))
}
}
}]), e
}();
function k() {
var e, t, n = new Promise((function(n, r) {
e = n, t = r
}));
return n.resolve = e, n.reject = t, n
}
function w(e) {
return null == e ? "" : "" + e
}
function S(e, t, n) {
e.forEach((function(e) {
t[e] && (n[e] = t[e])
}))
}
function E(e, t, n) {
function r(e) {
return e && e.indexOf("###") > -1 ? e.replace(/###/g, ".") : e
}
function i() {
return !e || "string" === typeof e
}
for (var a = "string" !== typeof t ? [].concat(t) : t.split("."); a.length > 1;) {
if (i()) return {};
var o = r(a.shift());
!e[o] && n && (e[o] = new n), e = Object.prototype.hasOwnProperty.call(e, o) ? e[o] : {}
}
return i() ? {} : {
obj: e,
k: r(a.shift())
}
}
function I(e, t, n) {
var r = E(e, t, Object);
r.obj[r.k] = n
}
function O(e, t) {
var n = E(e, t),
r = n.obj,
i = n.k;
if (r) return r[i]
}
function C(e, t, n) {
var r = O(e, n);
return void 0 !== r ? r : O(t, n)
}
function A(e, t, n) {
for (var r in t) "__proto__" !== r && "constructor" !== r && (r in e ? "string" === typeof e[r] || e[r] instanceof String || "string" === typeof t[r] || t[r] instanceof String ? n && (e[r] = t[r]) : A(e[r], t[r], n) : e[r] = t[r]);
return e
}
function P(e) {
return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&")
}
var T = {
"&": "&amp;",
"<": "&lt;",
">": "&gt;",
'"': "&quot;",
"'": "&#39;",
"/": "&#x2F;"
};
function R(e) {
return "string" === typeof e ? e.replace(/[&<>"'\/]/g, (function(e) {
return T[e]
})) : e
}
var D = "undefined" !== typeof window && window.navigator && "undefined" === typeof window.navigator.userAgentData && window.navigator.userAgent && window.navigator.userAgent.indexOf("MSIE") > -1,
L = [" ", ",", "?", "!", ";"];
function N(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function M(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? N(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : N(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function j(e) {
var t = function() {
if ("undefined" === typeof Reflect || !Reflect.construct) return !1;
if (Reflect.construct.sham) return !1;
if ("function" === typeof Proxy) return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), !0
} catch (e) {
return !1
}
}();
return function() {
var n, r = p(e);
if (t) {
var i = p(this).constructor;
n = Reflect.construct(r, arguments, i)
} else n = r.apply(this, arguments);
return d(this, n)
}
}
function F(e, t) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : ".";
if (e) {
if (e[t]) return e[t];
for (var r = t.split(n), i = e, a = 0; a < r.length; ++a) {
if (!i) return;
if ("string" === typeof i[r[a]] && a + 1 < r.length) return;
if (void 0 === i[r[a]]) {
for (var o = 2, s = r.slice(a, a + o).join(n), l = i[s]; void 0 === l && r.length > a + o;) o++, l = i[s = r.slice(a, a + o).join(n)];
if (void 0 === l) return;
if (null === l) return null;
if (t.endsWith(s)) {
if ("string" === typeof l) return l;
if (s && "string" === typeof l[s]) return l[s]
}
var c = r.slice(a + o).join(n);
return c ? F(l, c, n) : void 0
}
i = i[r[a]]
}
return i
}
}
var z = function(e) {
u(n, e);
var t = j(n);
function n(e) {
var r, a = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {
ns: ["translation"],
defaultNS: "translation"
};
return i(this, n), r = t.call(this), D && x.call(l(r)), r.data = e || {}, r.options = a, void 0 === r.options.keySeparator && (r.options.keySeparator = "."), void 0 === r.options.ignoreJSONStructure && (r.options.ignoreJSONStructure = !0), r
}
return s(n, [{
key: "addNamespaces",
value: function(e) {
this.options.ns.indexOf(e) < 0 && this.options.ns.push(e)
}
}, {
key: "removeNamespaces",
value: function(e) {
var t = this.options.ns.indexOf(e);
t > -1 && this.options.ns.splice(t, 1)
}
}, {
key: "getResource",
value: function(e, t, n) {
var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {},
i = void 0 !== r.keySeparator ? r.keySeparator : this.options.keySeparator,
a = void 0 !== r.ignoreJSONStructure ? r.ignoreJSONStructure : this.options.ignoreJSONStructure,
o = [e, t];
n && "string" !== typeof n && (o = o.concat(n)), n && "string" === typeof n && (o = o.concat(i ? n.split(i) : n)), e.indexOf(".") > -1 && (o = e.split("."));
var s = O(this.data, o);
return s || !a || "string" !== typeof n ? s : F(this.data && this.data[e] && this.data[e][t], n, i)
}
}, {
key: "addResource",
value: function(e, t, n, r) {
var i = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : {
silent: !1
},
a = this.options.keySeparator;
void 0 === a && (a = ".");
var o = [e, t];
n && (o = o.concat(a ? n.split(a) : n)), e.indexOf(".") > -1 && (r = t, t = (o = e.split("."))[1]), this.addNamespaces(t), I(this.data, o, r), i.silent || this.emit("added", e, t, n, r)
}
}, {
key: "addResources",
value: function(e, t, n) {
var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {
silent: !1
};
for (var i in n) "string" !== typeof n[i] && "[object Array]" !== Object.prototype.toString.apply(n[i]) || this.addResource(e, t, i, n[i], {
silent: !0
});
r.silent || this.emit("added", e, t, n)
}
}, {
key: "addResourceBundle",
value: function(e, t, n, r, i) {
var a = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : {
silent: !1
},
o = [e, t];
e.indexOf(".") > -1 && (r = n, n = t, t = (o = e.split("."))[1]), this.addNamespaces(t);
var s = O(this.data, o) || {};
r ? A(s, n, i) : s = M(M({}, s), n), I(this.data, o, s), a.silent || this.emit("added", e, t, n)
}
}, {
key: "removeResourceBundle",
value: function(e, t) {
this.hasResourceBundle(e, t) && delete this.data[e][t], this.removeNamespaces(t), this.emit("removed", e, t)
}
}, {
key: "hasResourceBundle",
value: function(e, t) {
return void 0 !== this.getResource(e, t)
}
}, {
key: "getResourceBundle",
value: function(e, t) {
return t || (t = this.options.defaultNS), "v1" === this.options.compatibilityAPI ? M(M({}, {}), this.getResource(e, t)) : this.getResource(e, t)
}
}, {
key: "getDataByLanguage",
value: function(e) {
return this.data[e]
}
}, {
key: "hasLanguageSomeTranslations",
value: function(e) {
var t = this.getDataByLanguage(e);
return !!(t && Object.keys(t) || []).find((function(e) {
return t[e] && Object.keys(t[e]).length > 0
}))
}
}, {
key: "toJSON",
value: function() {
return this.data
}
}]), n
}(x),
V = {
processors: {},
addPostProcessor: function(e) {
this.processors[e.name] = e
},
handle: function(e, t, n, r, i) {
var a = this;
return e.forEach((function(e) {
a.processors[e] && (t = a.processors[e].process(t, n, r, i))
})), t
}
};
function U(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function B(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? U(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : U(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function G(e) {
var t = function() {
if ("undefined" === typeof Reflect || !Reflect.construct) return !1;
if (Reflect.construct.sham) return !1;
if ("function" === typeof Proxy) return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), !0
} catch (e) {
return !1
}
}();
return function() {
var n, r = p(e);
if (t) {
var i = p(this).constructor;
n = Reflect.construct(r, arguments, i)
} else n = r.apply(this, arguments);
return d(this, n)
}
}
var W = {},
$ = function(e) {
u(n, e);
var t = G(n);
function n(e) {
var r, a = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return i(this, n), r = t.call(this), D && x.call(l(r)), S(["resourceStore", "languageUtils", "pluralResolver", "interpolator", "backendConnector", "i18nFormat", "utils"], e, l(r)), r.options = a, void 0 === r.options.keySeparator && (r.options.keySeparator = "."), r.logger = b.create("translator"), r
}
return s(n, [{
key: "changeLanguage",
value: function(e) {
e && (this.language = e)
}
}, {
key: "exists",
value: function(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {
interpolation: {}
};
if (void 0 === e || null === e) return !1;
var n = this.resolve(e, t);
return n && void 0 !== n.res
}
}, {
key: "extractFromKey",
value: function(e, t) {
var n = void 0 !== t.nsSeparator ? t.nsSeparator : this.options.nsSeparator;
void 0 === n && (n = ":");
var r = void 0 !== t.keySeparator ? t.keySeparator : this.options.keySeparator,
i = t.ns || this.options.defaultNS || [],
a = n && e.indexOf(n) > -1,
o = !this.options.userDefinedKeySeparator && !t.keySeparator && !this.options.userDefinedNsSeparator && !t.nsSeparator && ! function(e, t, n) {
t = t || "", n = n || "";
var r = L.filter((function(e) {
return t.indexOf(e) < 0 && n.indexOf(e) < 0
}));
if (0 === r.length) return !0;
var i = new RegExp("(".concat(r.map((function(e) {
return "?" === e ? "\\?" : e
})).join("|"), ")")),
a = !i.test(e);
if (!a) {
var o = e.indexOf(n);
o > 0 && !i.test(e.substring(0, o)) && (a = !0)
}
return a
}(e, n, r);
if (a && !o) {
var s = e.match(this.interpolator.nestingRegexp);
if (s && s.length > 0) return {
key: e,
namespaces: i
};
var l = e.split(n);
(n !== r || n === r && this.options.ns.indexOf(l[0]) > -1) && (i = l.shift()), e = l.join(r)
}
return "string" === typeof i && (i = [i]), {
key: e,
namespaces: i
}
}
}, {
key: "translate",
value: function(e, t, i) {
var a = this;
if ("object" !== r(t) && this.options.overloadTranslationOptionHandler && (t = this.options.overloadTranslationOptionHandler(arguments)), t || (t = {}), void 0 === e || null === e) return "";
Array.isArray(e) || (e = [String(e)]);
var o = void 0 !== t.returnDetails ? t.returnDetails : this.options.returnDetails,
s = void 0 !== t.keySeparator ? t.keySeparator : this.options.keySeparator,
l = this.extractFromKey(e[e.length - 1], t),
c = l.key,
u = l.namespaces,
d = u[u.length - 1],
p = t.lng || this.language,
h = t.appendNamespaceToCIMode || this.options.appendNamespaceToCIMode;
if (p && "cimode" === p.toLowerCase()) {
if (h) {
var f = t.nsSeparator || this.options.nsSeparator;
return o ? (m.res = "".concat(d).concat(f).concat(c), m) : "".concat(d).concat(f).concat(c)
}
return o ? (m.res = c, m) : c
}
var m = this.resolve(e, t),
g = m && m.res,
v = m && m.usedKey || c,
y = m && m.exactUsedKey || c,
_ = Object.prototype.toString.apply(g),
b = ["[object Number]", "[object Function]", "[object RegExp]"],
x = void 0 !== t.joinArrays ? t.joinArrays : this.options.joinArrays,
k = !this.i18nFormat || this.i18nFormat.handleAsObject,
w = "string" !== typeof g && "boolean" !== typeof g && "number" !== typeof g;
if (k && g && w && b.indexOf(_) < 0 && ("string" !== typeof x || "[object Array]" !== _)) {
if (!t.returnObjects && !this.options.returnObjects) {
this.options.returnedObjectHandler || this.logger.warn("accessing an object - but returnObjects options is not enabled!");
var S = this.options.returnedObjectHandler ? this.options.returnedObjectHandler(v, g, B(B({}, t), {}, {
ns: u
})) : "key '".concat(c, " (").concat(this.language, ")' returned an object instead of string.");
return o ? (m.res = S, m) : S
}
if (s) {
var E = "[object Array]" === _,
I = E ? [] : {},
O = E ? y : v;
for (var C in g)
if (Object.prototype.hasOwnProperty.call(g, C)) {
var A = "".concat(O).concat(s).concat(C);
I[C] = this.translate(A, B(B({}, t), {
joinArrays: !1,
ns: u
})), I[C] === A && (I[C] = g[C])
} g = I
}
} else if (k && "string" === typeof x && "[object Array]" === _)(g = g.join(x)) && (g = this.extendTranslation(g, e, t, i));
else {
var P = !1,
T = !1,
R = void 0 !== t.count && "string" !== typeof t.count,
D = n.hasDefaultValue(t),
L = R ? this.pluralResolver.getSuffix(p, t.count, t) : "",
N = t["defaultValue".concat(L)] || t.defaultValue;
!this.isValidLookup(g) && D && (P = !0, g = N), this.isValidLookup(g) || (T = !0, g = c);
var M = t.missingKeyNoValueFallbackToKey || this.options.missingKeyNoValueFallbackToKey,
j = M && T ? void 0 : g,
F = D && N !== g && this.options.updateMissing;
if (T || P || F) {
if (this.logger.log(F ? "updateKey" : "missingKey", p, d, c, F ? N : g), s) {
var z = this.resolve(c, B(B({}, t), {}, {
keySeparator: !1
}));
z && z.res && this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")
}
var V = [],
U = this.languageUtils.getFallbackCodes(this.options.fallbackLng, t.lng || this.language);
if ("fallback" === this.options.saveMissingTo && U && U[0])
for (var G = 0; G < U.length; G++) V.push(U[G]);
else "all" === this.options.saveMissingTo ? V = this.languageUtils.toResolveHierarchy(t.lng || this.language) : V.push(t.lng || this.language);
var W = function(e, n, r) {
var i = D && r !== g ? r : j;
a.options.missingKeyHandler ? a.options.missingKeyHandler(e, d, n, i, F, t) : a.backendConnector && a.backendConnector.saveMissing && a.backendConnector.saveMissing(e, d, n, i, F, t), a.emit("missingKey", e, d, n, g)
};
this.options.saveMissing && (this.options.saveMissingPlurals && R ? V.forEach((function(e) {
a.pluralResolver.getSuffixes(e, t).forEach((function(n) {
W([e], c + n, t["defaultValue".concat(n)] || N)
}))
})) : W(V, c, N))
}
g = this.extendTranslation(g, e, t, m, i), T && g === c && this.options.appendNamespaceToMissingKey && (g = "".concat(d, ":").concat(c)), (T || P) && this.options.parseMissingKeyHandler && (g = "v1" !== this.options.compatibilityAPI ? this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey ? "".concat(d, ":").concat(c) : c, P ? g : void 0) : this.options.parseMissingKeyHandler(g))
}
return o ? (m.res = g, m) : g
}
}, {
key: "extendTranslation",
value: function(e, t, n, r, i) {
var a = this;
if (this.i18nFormat && this.i18nFormat.parse) e = this.i18nFormat.parse(e, B(B({}, this.options.interpolation.defaultVariables), n), r.usedLng, r.usedNS, r.usedKey, {
resolved: r
});
else if (!n.skipInterpolation) {
n.interpolation && this.interpolator.init(B(B({}, n), {
interpolation: B(B({}, this.options.interpolation), n.interpolation)
}));
var o, s = "string" === typeof e && (n && n.interpolation && void 0 !== n.interpolation.skipOnVariables ? n.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables);
if (s) {
var l = e.match(this.interpolator.nestingRegexp);
o = l && l.length
}
var c = n.replace && "string" !== typeof n.replace ? n.replace : n;
if (this.options.interpolation.defaultVariables && (c = B(B({}, this.options.interpolation.defaultVariables), c)), e = this.interpolator.interpolate(e, c, n.lng || this.language, n), s) {
var u = e.match(this.interpolator.nestingRegexp);
o < (u && u.length) && (n.nest = !1)
}!1 !== n.nest && (e = this.interpolator.nest(e, (function() {
for (var e = arguments.length, r = new Array(e), o = 0; o < e; o++) r[o] = arguments[o];
return i && i[0] === r[0] && !n.context ? (a.logger.warn("It seems you are nesting recursively key: ".concat(r[0], " in key: ").concat(t[0])), null) : a.translate.apply(a, r.concat([t]))
}), n)), n.interpolation && this.interpolator.reset()
}
var d = n.postProcess || this.options.postProcess,
p = "string" === typeof d ? [d] : d;
return void 0 !== e && null !== e && p && p.length && !1 !== n.applyPostProcessor && (e = V.handle(p, e, t, this.options && this.options.postProcessPassResolved ? B({
i18nResolved: r
}, n) : n, this)), e
}
}, {
key: "resolve",
value: function(e) {
var t, n, r, i, a, o = this,
s = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return "string" === typeof e && (e = [e]), e.forEach((function(e) {
if (!o.isValidLookup(t)) {
var l = o.extractFromKey(e, s),
c = l.key;
n = c;
var u = l.namespaces;
o.options.fallbackNS && (u = u.concat(o.options.fallbackNS));
var d = void 0 !== s.count && "string" !== typeof s.count,
p = d && !s.ordinal && 0 === s.count && o.pluralResolver.shouldUseIntlApi(),
h = void 0 !== s.context && ("string" === typeof s.context || "number" === typeof s.context) && "" !== s.context,
f = s.lngs ? s.lngs : o.languageUtils.toResolveHierarchy(s.lng || o.language, s.fallbackLng);
u.forEach((function(e) {
o.isValidLookup(t) || (a = e, !W["".concat(f[0], "-").concat(e)] && o.utils && o.utils.hasLoadedNamespace && !o.utils.hasLoadedNamespace(a) && (W["".concat(f[0], "-").concat(e)] = !0, o.logger.warn('key "'.concat(n, '" for languages "').concat(f.join(", "), '" won\'t get resolved as namespace "').concat(a, '" was not yet loaded'), "This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")), f.forEach((function(n) {
if (!o.isValidLookup(t)) {
i = n;
var a, l = [c];
if (o.i18nFormat && o.i18nFormat.addLookupKeys) o.i18nFormat.addLookupKeys(l, c, n, e, s);
else {
var u;
d && (u = o.pluralResolver.getSuffix(n, s.count, s));
var f = "".concat(o.options.pluralSeparator, "zero");
if (d && (l.push(c + u), p && l.push(c + f)), h) {
var m = "".concat(c).concat(o.options.contextSeparator).concat(s.context);
l.push(m), d && (l.push(m + u), p && l.push(m + f))
}
}
for (; a = l.pop();) o.isValidLookup(t) || (r = a, t = o.getResource(n, e, a, s))
}
})))
}))
}
})), {
res: t,
usedKey: n,
exactUsedKey: r,
usedLng: i,
usedNS: a
}
}
}, {
key: "isValidLookup",
value: function(e) {
return void 0 !== e && !(!this.options.returnNull && null === e) && !(!this.options.returnEmptyString && "" === e)
}
}, {
key: "getResource",
value: function(e, t, n) {
var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {};
return this.i18nFormat && this.i18nFormat.getResource ? this.i18nFormat.getResource(e, t, n, r) : this.resourceStore.getResource(e, t, n, r)
}
}], [{
key: "hasDefaultValue",
value: function(e) {
var t = "defaultValue";
for (var n in e)
if (Object.prototype.hasOwnProperty.call(e, n) && t === n.substring(0, t.length) && void 0 !== e[n]) return !0;
return !1
}
}]), n
}(x);
function q(e) {
return e.charAt(0).toUpperCase() + e.slice(1)
}
var H = function() {
function e(t) {
i(this, e), this.options = t, this.supportedLngs = this.options.supportedLngs || !1, this.logger = b.create("languageUtils")
}
return s(e, [{
key: "getScriptPartFromCode",
value: function(e) {
if (!e || e.indexOf("-") < 0) return null;
var t = e.split("-");
return 2 === t.length ? null : (t.pop(), "x" === t[t.length - 1].toLowerCase() ? null : this.formatLanguageCode(t.join("-")))
}
}, {
key: "getLanguagePartFromCode",
value: function(e) {
if (!e || e.indexOf("-") < 0) return e;
var t = e.split("-");
return this.formatLanguageCode(t[0])
}
}, {
key: "formatLanguageCode",
value: function(e) {
if ("string" === typeof e && e.indexOf("-") > -1) {
var t = ["hans", "hant", "latn", "cyrl", "cans", "mong", "arab"],
n = e.split("-");
return this.options.lowerCaseLng ? n = n.map((function(e) {
return e.toLowerCase()
})) : 2 === n.length ? (n[0] = n[0].toLowerCase(), n[1] = n[1].toUpperCase(), t.indexOf(n[1].toLowerCase()) > -1 && (n[1] = q(n[1].toLowerCase()))) : 3 === n.length && (n[0] = n[0].toLowerCase(), 2 === n[1].length && (n[1] = n[1].toUpperCase()), "sgn" !== n[0] && 2 === n[2].length && (n[2] = n[2].toUpperCase()), t.indexOf(n[1].toLowerCase()) > -1 && (n[1] = q(n[1].toLowerCase())), t.indexOf(n[2].toLowerCase()) > -1 && (n[2] = q(n[2].toLowerCase()))), n.join("-")
}
return this.options.cleanCode || this.options.lowerCaseLng ? e.toLowerCase() : e
}
}, {
key: "isSupportedCode",
value: function(e) {
return ("languageOnly" === this.options.load || this.options.nonExplicitSupportedLngs) && (e = this.getLanguagePartFromCode(e)), !this.supportedLngs || !this.supportedLngs.length || this.supportedLngs.indexOf(e) > -1
}
}, {
key: "getBestMatchFromCodes",
value: function(e) {
var t, n = this;
return e ? (e.forEach((function(e) {
if (!t) {
var r = n.formatLanguageCode(e);
n.options.supportedLngs && !n.isSupportedCode(r) || (t = r)
}
})), !t && this.options.supportedLngs && e.forEach((function(e) {
if (!t) {
var r = n.getLanguagePartFromCode(e);
if (n.isSupportedCode(r)) return t = r;
t = n.options.supportedLngs.find((function(e) {
if (0 === e.indexOf(r)) return e
}))
}
})), t || (t = this.getFallbackCodes(this.options.fallbackLng)[0]), t) : null
}
}, {
key: "getFallbackCodes",
value: function(e, t) {
if (!e) return [];
if ("function" === typeof e && (e = e(t)), "string" === typeof e && (e = [e]), "[object Array]" === Object.prototype.toString.apply(e)) return e;
if (!t) return e.default || [];
var n = e[t];
return n || (n = e[this.getScriptPartFromCode(t)]), n || (n = e[this.formatLanguageCode(t)]), n || (n = e[this.getLanguagePartFromCode(t)]), n || (n = e.default), n || []
}
}, {
key: "toResolveHierarchy",
value: function(e, t) {
var n = this,
r = this.getFallbackCodes(t || this.options.fallbackLng || [], e),
i = [],
a = function(e) {
e && (n.isSupportedCode(e) ? i.push(e) : n.logger.warn("rejecting language code not found in supportedLngs: ".concat(e)))
};
return "string" === typeof e && e.indexOf("-") > -1 ? ("languageOnly" !== this.options.load && a(this.formatLanguageCode(e)), "languageOnly" !== this.options.load && "currentOnly" !== this.options.load && a(this.getScriptPartFromCode(e)), "currentOnly" !== this.options.load && a(this.getLanguagePartFromCode(e))) : "string" === typeof e && a(this.formatLanguageCode(e)), r.forEach((function(e) {
i.indexOf(e) < 0 && a(n.formatLanguageCode(e))
})), i
}
}]), e
}(),
K = [{
lngs: ["ach", "ak", "am", "arn", "br", "fil", "gun", "ln", "mfe", "mg", "mi", "oc", "pt", "pt-BR", "tg", "tl", "ti", "tr", "uz", "wa"],
nr: [1, 2],
fc: 1
}, {
lngs: ["af", "an", "ast", "az", "bg", "bn", "ca", "da", "de", "dev", "el", "en", "eo", "es", "et", "eu", "fi", "fo", "fur", "fy", "gl", "gu", "ha", "hi", "hu", "hy", "ia", "it", "kk", "kn", "ku", "lb", "mai", "ml", "mn", "mr", "nah", "nap", "nb", "ne", "nl", "nn", "no", "nso", "pa", "pap", "pms", "ps", "pt-PT", "rm", "sco", "se", "si", "so", "son", "sq", "sv", "sw", "ta", "te", "tk", "ur", "yo"],
nr: [1, 2],
fc: 2
}, {
lngs: ["ay", "bo", "cgg", "fa", "ht", "id", "ja", "jbo", "ka", "km", "ko", "ky", "lo", "ms", "sah", "su", "th", "tt", "ug", "vi", "wo", "zh"],
nr: [1],
fc: 3
}, {
lngs: ["be", "bs", "cnr", "dz", "hr", "ru", "sr", "uk"],
nr: [1, 2, 5],
fc: 4
}, {
lngs: ["ar"],
nr: [0, 1, 2, 3, 11, 100],
fc: 5
}, {
lngs: ["cs", "sk"],
nr: [1, 2, 5],
fc: 6
}, {
lngs: ["csb", "pl"],
nr: [1, 2, 5],
fc: 7
}, {
lngs: ["cy"],
nr: [1, 2, 3, 8],
fc: 8
}, {
lngs: ["fr"],
nr: [1, 2],
fc: 9
}, {
lngs: ["ga"],
nr: [1, 2, 3, 7, 11],
fc: 10
}, {
lngs: ["gd"],
nr: [1, 2, 3, 20],
fc: 11
}, {
lngs: ["is"],
nr: [1, 2],
fc: 12
}, {
lngs: ["jv"],
nr: [0, 1],
fc: 13
}, {
lngs: ["kw"],
nr: [1, 2, 3, 4],
fc: 14
}, {
lngs: ["lt"],
nr: [1, 2, 10],
fc: 15
}, {
lngs: ["lv"],
nr: [1, 2, 0],
fc: 16
}, {
lngs: ["mk"],
nr: [1, 2],
fc: 17
}, {
lngs: ["mnk"],
nr: [0, 1, 2],
fc: 18
}, {
lngs: ["mt"],
nr: [1, 2, 11, 20],
fc: 19
}, {
lngs: ["or"],
nr: [2, 1],
fc: 2
}, {
lngs: ["ro"],
nr: [1, 2, 20],
fc: 20
}, {
lngs: ["sl"],
nr: [5, 1, 2, 3],
fc: 21
}, {
lngs: ["he", "iw"],
nr: [1, 2, 20, 21],
fc: 22
}],
Y = {
1: function(e) {
return Number(e > 1)
},
2: function(e) {
return Number(1 != e)
},
3: function(e) {
return 0
},
4: function(e) {
return Number(e % 10 == 1 && e % 100 != 11 ? 0 : e % 10 >= 2 && e % 10 <= 4 && (e % 100 < 10 || e % 100 >= 20) ? 1 : 2)
},
5: function(e) {
return Number(0 == e ? 0 : 1 == e ? 1 : 2 == e ? 2 : e % 100 >= 3 && e % 100 <= 10 ? 3 : e % 100 >= 11 ? 4 : 5)
},
6: function(e) {
return Number(1 == e ? 0 : e >= 2 && e <= 4 ? 1 : 2)
},
7: function(e) {
return Number(1 == e ? 0 : e % 10 >= 2 && e % 10 <= 4 && (e % 100 < 10 || e % 100 >= 20) ? 1 : 2)
},
8: function(e) {
return Number(1 == e ? 0 : 2 == e ? 1 : 8 != e && 11 != e ? 2 : 3)
},
9: function(e) {
return Number(e >= 2)
},
10: function(e) {
return Number(1 == e ? 0 : 2 == e ? 1 : e < 7 ? 2 : e < 11 ? 3 : 4)
},
11: function(e) {
return Number(1 == e || 11 == e ? 0 : 2 == e || 12 == e ? 1 : e > 2 && e < 20 ? 2 : 3)
},
12: function(e) {
return Number(e % 10 != 1 || e % 100 == 11)
},
13: function(e) {
return Number(0 !== e)
},
14: function(e) {
return Number(1 == e ? 0 : 2 == e ? 1 : 3 == e ? 2 : 3)
},
15: function(e) {
return Number(e % 10 == 1 && e % 100 != 11 ? 0 : e % 10 >= 2 && (e % 100 < 10 || e % 100 >= 20) ? 1 : 2)
},
16: function(e) {
return Number(e % 10 == 1 && e % 100 != 11 ? 0 : 0 !== e ? 1 : 2)
},
17: function(e) {
return Number(1 == e || e % 10 == 1 && e % 100 != 11 ? 0 : 1)
},
18: function(e) {
return Number(0 == e ? 0 : 1 == e ? 1 : 2)
},
19: function(e) {
return Number(1 == e ? 0 : 0 == e || e % 100 > 1 && e % 100 < 11 ? 1 : e % 100 > 10 && e % 100 < 20 ? 2 : 3)
},
20: function(e) {
return Number(1 == e ? 0 : 0 == e || e % 100 > 0 && e % 100 < 20 ? 1 : 2)
},
21: function(e) {
return Number(e % 100 == 1 ? 1 : e % 100 == 2 ? 2 : e % 100 == 3 || e % 100 == 4 ? 3 : 0)
},
22: function(e) {
return Number(1 == e ? 0 : 2 == e ? 1 : (e < 0 || e > 10) && e % 10 == 0 ? 2 : 3)
}
},
Q = ["v1", "v2", "v3"],
Z = {
zero: 0,
one: 1,
two: 2,
few: 3,
many: 4,
other: 5
};
function X() {
var e = {};
return K.forEach((function(t) {
t.lngs.forEach((function(n) {
e[n] = {
numbers: t.nr,
plurals: Y[t.fc]
}
}))
})), e
}
var J = function() {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
i(this, e), this.languageUtils = t, this.options = n, this.logger = b.create("pluralResolver"), this.options.compatibilityJSON && "v4" !== this.options.compatibilityJSON || "undefined" !== typeof Intl && Intl.PluralRules || (this.options.compatibilityJSON = "v3", this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")), this.rules = X()
}
return s(e, [{
key: "addRule",
value: function(e, t) {
this.rules[e] = t
}
}, {
key: "getRule",
value: function(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (this.shouldUseIntlApi()) try {
return new Intl.PluralRules(e, {
type: t.ordinal ? "ordinal" : "cardinal"
})
} catch (n) {
return
}
return this.rules[e] || this.rules[this.languageUtils.getLanguagePartFromCode(e)]
}
}, {
key: "needsPlural",
value: function(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = this.getRule(e, t);
return this.shouldUseIntlApi() ? n && n.resolvedOptions().pluralCategories.length > 1 : n && n.numbers.length > 1
}
}, {
key: "getPluralFormsOfKey",
value: function(e, t) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
return this.getSuffixes(e, n).map((function(e) {
return "".concat(t).concat(e)
}))
}
}, {
key: "getSuffixes",
value: function(e) {
var t = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
r = this.getRule(e, n);
return r ? this.shouldUseIntlApi() ? r.resolvedOptions().pluralCategories.sort((function(e, t) {
return Z[e] - Z[t]
})).map((function(e) {
return "".concat(t.options.prepend).concat(e)
})) : r.numbers.map((function(r) {
return t.getSuffix(e, r, n)
})) : []
}
}, {
key: "getSuffix",
value: function(e, t) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
r = this.getRule(e, n);
return r ? this.shouldUseIntlApi() ? "".concat(this.options.prepend).concat(r.select(t)) : this.getSuffixRetroCompatible(r, t) : (this.logger.warn("no plural rule found for: ".concat(e)), "")
}
}, {
key: "getSuffixRetroCompatible",
value: function(e, t) {
var n = this,
r = e.noAbs ? e.plurals(t) : e.plurals(Math.abs(t)),
i = e.numbers[r];
this.options.simplifyPluralSuffix && 2 === e.numbers.length && 1 === e.numbers[0] && (2 === i ? i = "plural" : 1 === i && (i = ""));
var a = function() {
return n.options.prepend && i.toString() ? n.options.prepend + i.toString() : i.toString()
};
return "v1" === this.options.compatibilityJSON ? 1 === i ? "" : "number" === typeof i ? "_plural_".concat(i.toString()) : a() : "v2" === this.options.compatibilityJSON || this.options.simplifyPluralSuffix && 2 === e.numbers.length && 1 === e.numbers[0] ? a() : this.options.prepend && r.toString() ? this.options.prepend + r.toString() : r.toString()
}
}, {
key: "shouldUseIntlApi",
value: function() {
return !Q.includes(this.options.compatibilityJSON)
}
}]), e
}();
function ee(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function te(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? ee(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ee(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
var ne = function() {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
i(this, e), this.logger = b.create("interpolator"), this.options = t, this.format = t.interpolation && t.interpolation.format || function(e) {
return e
}, this.init(t)
}
return s(e, [{
key: "init",
value: function() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
e.interpolation || (e.interpolation = {
escapeValue: !0
});
var t = e.interpolation;
this.escape = void 0 !== t.escape ? t.escape : R, this.escapeValue = void 0 === t.escapeValue || t.escapeValue, this.useRawValueToEscape = void 0 !== t.useRawValueToEscape && t.useRawValueToEscape, this.prefix = t.prefix ? P(t.prefix) : t.prefixEscaped || "{{", this.suffix = t.suffix ? P(t.suffix) : t.suffixEscaped || "}}", this.formatSeparator = t.formatSeparator ? t.formatSeparator : t.formatSeparator || ",", this.unescapePrefix = t.unescapeSuffix ? "" : t.unescapePrefix || "-", this.unescapeSuffix = this.unescapePrefix ? "" : t.unescapeSuffix || "", this.nestingPrefix = t.nestingPrefix ? P(t.nestingPrefix) : t.nestingPrefixEscaped || P("$t("), this.nestingSuffix = t.nestingSuffix ? P(t.nestingSuffix) : t.nestingSuffixEscaped || P(")"), this.nestingOptionsSeparator = t.nestingOptionsSeparator ? t.nestingOptionsSeparator : t.nestingOptionsSeparator || ",", this.maxReplaces = t.maxReplaces ? t.maxReplaces : 1e3, this.alwaysFormat = void 0 !== t.alwaysFormat && t.alwaysFormat, this.resetRegExp()
}
}, {
key: "reset",
value: function() {
this.options && this.init(this.options)
}
}, {
key: "resetRegExp",
value: function() {
var e = "".concat(this.prefix, "(.+?)").concat(this.suffix);
this.regexp = new RegExp(e, "g");
var t = "".concat(this.prefix).concat(this.unescapePrefix, "(.+?)").concat(this.unescapeSuffix).concat(this.suffix);
this.regexpUnescape = new RegExp(t, "g");
var n = "".concat(this.nestingPrefix, "(.+?)").concat(this.nestingSuffix);
this.nestingRegexp = new RegExp(n, "g")
}
}, {
key: "interpolate",
value: function(e, t, n, r) {
var i, a, o, s = this,
l = this.options && this.options.interpolation && this.options.interpolation.defaultVariables || {};
function c(e) {
return e.replace(/\$/g, "$$$$")
}
var u = function(e) {
if (e.indexOf(s.formatSeparator) < 0) {
var i = C(t, l, e);
return s.alwaysFormat ? s.format(i, void 0, n, te(te(te({}, r), t), {}, {
interpolationkey: e
})) : i
}
var a = e.split(s.formatSeparator),
o = a.shift().trim(),
c = a.join(s.formatSeparator).trim();
return s.format(C(t, l, o), c, n, te(te(te({}, r), t), {}, {
interpolationkey: o
}))
};
this.resetRegExp();
var d = r && r.missingInterpolationHandler || this.options.missingInterpolationHandler,
p = r && r.interpolation && void 0 !== r.interpolation.skipOnVariables ? r.interpolation.skipOnVariables : this.options.interpolation.skipOnVariables;
return [{
regex: this.regexpUnescape,
safeValue: function(e) {
return c(e)
}
}, {
regex: this.regexp,
safeValue: function(e) {
return s.escapeValue ? c(s.escape(e)) : c(e)
}
}].forEach((function(t) {
for (o = 0; i = t.regex.exec(e);) {
var n = i[1].trim();
if (void 0 === (a = u(n)))
if ("function" === typeof d) {
var l = d(e, i, r);
a = "string" === typeof l ? l : ""
} else if (r && r.hasOwnProperty(n)) a = "";
else {
if (p) {
a = i[0];
continue
}
s.logger.warn("missed to pass in variable ".concat(n, " for interpolating ").concat(e)), a = ""
} else "string" === typeof a || s.useRawValueToEscape || (a = w(a));
var c = t.safeValue(a);
if (e = e.replace(i[0], c), p ? (t.regex.lastIndex += a.length, t.regex.lastIndex -= i[0].length) : t.regex.lastIndex = 0, ++o >= s.maxReplaces) break
}
})), e
}
}, {
key: "nest",
value: function(e, t) {
var n, r, i, a = this,
o = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
function s(e, t) {
var n = this.nestingOptionsSeparator;
if (e.indexOf(n) < 0) return e;
var r = e.split(new RegExp("".concat(n, "[ ]*{"))),
a = "{".concat(r[1]);
e = r[0];
var o = (a = this.interpolate(a, i)).match(/'/g),
s = a.match(/"/g);
(o && o.length % 2 === 0 && !s || s.length % 2 !== 0) && (a = a.replace(/'/g, '"'));
try {
i = JSON.parse(a), t && (i = te(te({}, t), i))
} catch (l) {
return this.logger.warn("failed parsing options string in nesting for key ".concat(e), l), "".concat(e).concat(n).concat(a)
}
return delete i.defaultValue, e
}
for (; n = this.nestingRegexp.exec(e);) {
var l = [];
(i = (i = te({}, o)).replace && "string" !== typeof i.replace ? i.replace : i).applyPostProcessor = !1, delete i.defaultValue;
var c = !1;
if (-1 !== n[0].indexOf(this.formatSeparator) && !/{.*}/.test(n[1])) {
var u = n[1].split(this.formatSeparator).map((function(e) {
return e.trim()
}));
n[1] = u.shift(), l = u, c = !0
}
if ((r = t(s.call(this, n[1].trim(), i), i)) && n[0] === e && "string" !== typeof r) return r;
"string" !== typeof r && (r = w(r)), r || (this.logger.warn("missed to resolve ".concat(n[1], " for nesting ").concat(e)), r = ""), c && (r = l.reduce((function(e, t) {
return a.format(e, t, o.lng, te(te({}, o), {}, {
interpolationkey: n[1].trim()
}))
}), r.trim())), e = e.replace(n[0], r), this.regexp.lastIndex = 0
}
return e
}
}]), e
}();
function re(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function ie(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? re(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : re(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function ae(e) {
var t = {};
return function(n, r, i) {
var a = r + JSON.stringify(i),
o = t[a];
return o || (o = e(r, i), t[a] = o), o(n)
}
}
var oe = function() {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
i(this, e), this.logger = b.create("formatter"), this.options = t, this.formats = {
number: ae((function(e, t) {
var n = new Intl.NumberFormat(e, t);
return function(e) {
return n.format(e)
}
})),
currency: ae((function(e, t) {
var n = new Intl.NumberFormat(e, ie(ie({}, t), {}, {
style: "currency"
}));
return function(e) {
return n.format(e)
}
})),
datetime: ae((function(e, t) {
var n = new Intl.DateTimeFormat(e, ie({}, t));
return function(e) {
return n.format(e)
}
})),
relativetime: ae((function(e, t) {
var n = new Intl.RelativeTimeFormat(e, ie({}, t));
return function(e) {
return n.format(e, t.range || "day")
}
})),
list: ae((function(e, t) {
var n = new Intl.ListFormat(e, ie({}, t));
return function(e) {
return n.format(e)
}
}))
}, this.init(t)
}
return s(e, [{
key: "init",
value: function(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {
interpolation: {}
},
n = t.interpolation;
this.formatSeparator = n.formatSeparator ? n.formatSeparator : n.formatSeparator || ","
}
}, {
key: "add",
value: function(e, t) {
this.formats[e.toLowerCase().trim()] = t
}
}, {
key: "addCached",
value: function(e, t) {
this.formats[e.toLowerCase().trim()] = ae(t)
}
}, {
key: "format",
value: function(e, t, n, r) {
var i = this,
a = t.split(this.formatSeparator).reduce((function(e, t) {
var a = function(e) {
var t = e.toLowerCase().trim(),
n = {};
if (e.indexOf("(") > -1) {
var r = e.split("(");
t = r[0].toLowerCase().trim();
var i = r[1].substring(0, r[1].length - 1);
"currency" === t && i.indexOf(":") < 0 ? n.currency || (n.currency = i.trim()) : "relativetime" === t && i.indexOf(":") < 0 ? n.range || (n.range = i.trim()) : i.split(";").forEach((function(e) {
if (e) {
var t = m(e.split(":")),
r = t[0],
i = t.slice(1).join(":").trim().replace(/^'+|'+$/g, "");
n[r.trim()] || (n[r.trim()] = i), "false" === i && (n[r.trim()] = !1), "true" === i && (n[r.trim()] = !0), isNaN(i) || (n[r.trim()] = parseInt(i, 10))
}
}))
}
return {
formatName: t,
formatOptions: n
}
}(t),
o = a.formatName,
s = a.formatOptions;
if (i.formats[o]) {
var l = e;
try {
var c = r && r.formatParams && r.formatParams[r.interpolationkey] || {},
u = c.locale || c.lng || r.locale || r.lng || n;
l = i.formats[o](e, u, ie(ie(ie({}, s), r), c))
} catch (d) {
i.logger.warn(d)
}
return l
}
return i.logger.warn("there was no format function for ".concat(o)), e
}), e);
return a
}
}]), e
}();
function se(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function le(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? se(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : se(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function ce(e) {
var t = function() {
if ("undefined" === typeof Reflect || !Reflect.construct) return !1;
if (Reflect.construct.sham) return !1;
if ("function" === typeof Proxy) return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), !0
} catch (e) {
return !1
}
}();
return function() {
var n, r = p(e);
if (t) {
var i = p(this).constructor;
n = Reflect.construct(r, arguments, i)
} else n = r.apply(this, arguments);
return d(this, n)
}
}
var ue = function(e) {
u(n, e);
var t = ce(n);
function n(e, r, a) {
var o, s = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {};
return i(this, n), o = t.call(this), D && x.call(l(o)), o.backend = e, o.store = r, o.services = a, o.languageUtils = a.languageUtils, o.options = s, o.logger = b.create("backendConnector"), o.waitingReads = [], o.maxParallelReads = s.maxParallelReads || 10, o.readingCalls = 0, o.maxRetries = s.maxRetries >= 0 ? s.maxRetries : 5, o.retryTimeout = s.retryTimeout >= 1 ? s.retryTimeout : 350, o.state = {}, o.queue = [], o.backend && o.backend.init && o.backend.init(a, s.backend, s), o
}
return s(n, [{
key: "queueLoad",
value: function(e, t, n, r) {
var i = this,
a = {},
o = {},
s = {},
l = {};
return e.forEach((function(e) {
var r = !0;
t.forEach((function(t) {
var s = "".concat(e, "|").concat(t);
!n.reload && i.store.hasResourceBundle(e, t) ? i.state[s] = 2 : i.state[s] < 0 || (1 === i.state[s] ? void 0 === o[s] && (o[s] = !0) : (i.state[s] = 1, r = !1, void 0 === o[s] && (o[s] = !0), void 0 === a[s] && (a[s] = !0), void 0 === l[t] && (l[t] = !0)))
})), r || (s[e] = !0)
})), (Object.keys(a).length || Object.keys(o).length) && this.queue.push({
pending: o,
pendingCount: Object.keys(o).length,
loaded: {},
errors: [],
callback: r
}), {
toLoad: Object.keys(a),
pending: Object.keys(o),
toLoadLanguages: Object.keys(s),
toLoadNamespaces: Object.keys(l)
}
}
}, {
key: "loaded",
value: function(e, t, n) {
var r = e.split("|"),
i = r[0],
a = r[1];
t && this.emit("failedLoading", i, a, t), n && this.store.addResourceBundle(i, a, n), this.state[e] = t ? -1 : 2;
var o = {};
this.queue.forEach((function(n) {
! function(e, t, n, r) {
var i = E(e, t, Object),
a = i.obj,
o = i.k;
a[o] = a[o] || [], r && (a[o] = a[o].concat(n)), r || a[o].push(n)
}(n.loaded, [i], a),
function(e, t) {
void 0 !== e.pending[t] && (delete e.pending[t], e.pendingCount--)
}(n, e), t && n.errors.push(t), 0 !== n.pendingCount || n.done || (Object.keys(n.loaded).forEach((function(e) {
o[e] || (o[e] = {});
var t = n.loaded[e];
t.length && t.forEach((function(t) {
void 0 === o[e][t] && (o[e][t] = !0)
}))
})), n.done = !0, n.errors.length ? n.callback(n.errors) : n.callback())
})), this.emit("loaded", o), this.queue = this.queue.filter((function(e) {
return !e.done
}))
}
}, {
key: "read",
value: function(e, t, n) {
var r = this,
i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 0,
a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : this.retryTimeout,
o = arguments.length > 5 ? arguments[5] : void 0;
if (!e.length) return o(null, {});
if (this.readingCalls >= this.maxParallelReads) this.waitingReads.push({
lng: e,
ns: t,
fcName: n,
tried: i,
wait: a,
callback: o
});
else {
this.readingCalls++;
var s = function(s, l) {
if (r.readingCalls--, r.waitingReads.length > 0) {
var c = r.waitingReads.shift();
r.read(c.lng, c.ns, c.fcName, c.tried, c.wait, c.callback)
}
s && l && i < r.maxRetries ? setTimeout((function() {
r.read.call(r, e, t, n, i + 1, 2 * a, o)
}), a) : o(s, l)
},
l = this.backend[n].bind(this.backend);
if (2 !== l.length) return l(e, t, s);
try {
var c = l(e, t);
c && "function" === typeof c.then ? c.then((function(e) {
return s(null, e)
})).catch(s) : s(null, c)
} catch (u) {
s(u)
}
}
}
}, {
key: "prepareLoading",
value: function(e, t) {
var n = this,
r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
i = arguments.length > 3 ? arguments[3] : void 0;
if (!this.backend) return this.logger.warn("No backend was added via i18next.use. Will not load resources."), i && i();
"string" === typeof e && (e = this.languageUtils.toResolveHierarchy(e)), "string" === typeof t && (t = [t]);
var a = this.queueLoad(e, t, r, i);
if (!a.toLoad.length) return a.pending.length || i(), null;
a.toLoad.forEach((function(e) {
n.loadOne(e)
}))
}
}, {
key: "load",
value: function(e, t, n) {
this.prepareLoading(e, t, {}, n)
}
}, {
key: "reload",
value: function(e, t, n) {
this.prepareLoading(e, t, {
reload: !0
}, n)
}
}, {
key: "loadOne",
value: function(e) {
var t = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
r = e.split("|"),
i = r[0],
a = r[1];
this.read(i, a, "read", void 0, void 0, (function(r, o) {
r && t.logger.warn("".concat(n, "loading namespace ").concat(a, " for language ").concat(i, " failed"), r), !r && o && t.logger.log("".concat(n, "loaded namespace ").concat(a, " for language ").concat(i), o), t.loaded(e, r, o)
}))
}
}, {
key: "saveMissing",
value: function(e, t, n, r, i) {
var a = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : {},
o = arguments.length > 6 && void 0 !== arguments[6] ? arguments[6] : function() {};
if (this.services.utils && this.services.utils.hasLoadedNamespace && !this.services.utils.hasLoadedNamespace(t)) this.logger.warn('did not save key "'.concat(n, '" as the namespace "').concat(t, '" was not yet loaded'), "This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");
else if (void 0 !== n && null !== n && "" !== n) {
if (this.backend && this.backend.create) {
var s = le(le({}, a), {}, {
isUpdate: i
}),
l = this.backend.create.bind(this.backend);
if (l.length < 6) try {
var c;
(c = 5 === l.length ? l(e, t, n, r, s) : l(e, t, n, r)) && "function" === typeof c.then ? c.then((function(e) {
return o(null, e)
})).catch(o) : o(null, c)
} catch (u) {
o(u)
} else l(e, t, n, r, o, s)
}
e && e[0] && this.store.addResource(e[0], t, n, r)
}
}
}]), n
}(x);
function de() {
return {
debug: !1,
initImmediate: !0,
ns: ["translation"],
defaultNS: ["translation"],
fallbackLng: ["dev"],
fallbackNS: !1,
supportedLngs: !1,
nonExplicitSupportedLngs: !1,
load: "all",
preload: !1,
simplifyPluralSuffix: !0,
keySeparator: ".",
nsSeparator: ":",
pluralSeparator: "_",
contextSeparator: "_",
partialBundledLanguages: !1,
saveMissing: !1,
updateMissing: !1,
saveMissingTo: "fallback",
saveMissingPlurals: !0,
missingKeyHandler: !1,
missingInterpolationHandler: !1,
postProcess: !1,
postProcessPassResolved: !1,
returnNull: !0,
returnEmptyString: !0,
returnObjects: !1,
joinArrays: !1,
returnedObjectHandler: !1,
parseMissingKeyHandler: !1,
appendNamespaceToMissingKey: !1,
appendNamespaceToCIMode: !1,
overloadTranslationOptionHandler: function(e) {
var t = {};
if ("object" === r(e[1]) && (t = e[1]), "string" === typeof e[1] && (t.defaultValue = e[1]), "string" === typeof e[2] && (t.tDescription = e[2]), "object" === r(e[2]) || "object" === r(e[3])) {
var n = e[3] || e[2];
Object.keys(n).forEach((function(e) {
t[e] = n[e]
}))
}
return t
},
interpolation: {
escapeValue: !0,
format: function(e, t, n, r) {
return e
},
prefix: "{{",
suffix: "}}",
formatSeparator: ",",
unescapePrefix: "-",
nestingPrefix: "$t(",
nestingSuffix: ")",
nestingOptionsSeparator: ",",
maxReplaces: 1e3,
skipOnVariables: !0
}
}
}
function pe(e) {
return "string" === typeof e.ns && (e.ns = [e.ns]), "string" === typeof e.fallbackLng && (e.fallbackLng = [e.fallbackLng]), "string" === typeof e.fallbackNS && (e.fallbackNS = [e.fallbackNS]), e.supportedLngs && e.supportedLngs.indexOf("cimode") < 0 && (e.supportedLngs = e.supportedLngs.concat(["cimode"])), e
}
function he(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function fe(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? he(Object(n), !0).forEach((function(t) {
h(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : he(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function me(e) {
var t = function() {
if ("undefined" === typeof Reflect || !Reflect.construct) return !1;
if (Reflect.construct.sham) return !1;
if ("function" === typeof Proxy) return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), !0
} catch (e) {
return !1
}
}();
return function() {
var n, r = p(e);
if (t) {
var i = p(this).constructor;
n = Reflect.construct(r, arguments, i)
} else n = r.apply(this, arguments);
return d(this, n)
}
}
function ge() {}
function ve(e) {
Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(t) {
"function" === typeof e[t] && (e[t] = e[t].bind(e))
}))
}
var ye = function(e) {
u(n, e);
var t = me(n);
function n() {
var e, r = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
a = arguments.length > 1 ? arguments[1] : void 0;
if (i(this, n), e = t.call(this), D && x.call(l(e)), e.options = pe(r), e.services = {}, e.logger = b, e.modules = {
external: []
}, ve(l(e)), a && !e.isInitialized && !r.isClone) {
if (!e.options.initImmediate) return e.init(r, a), d(e, l(e));
setTimeout((function() {
e.init(r, a)
}), 0)
}
return e
}
return s(n, [{
key: "init",
value: function() {
var e = this,
t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = arguments.length > 1 ? arguments[1] : void 0;
"function" === typeof t && (n = t, t = {}), !t.defaultNS && !1 !== t.defaultNS && t.ns && ("string" === typeof t.ns ? t.defaultNS = t.ns : t.ns.indexOf("translation") < 0 && (t.defaultNS = t.ns[0]));
var r = de();
function i(e) {
return e ? "function" === typeof e ? new e : e : null
}
if (this.options = fe(fe(fe({}, r), this.options), pe(t)), "v1" !== this.options.compatibilityAPI && (this.options.interpolation = fe(fe({}, r.interpolation), this.options.interpolation)), void 0 !== t.keySeparator && (this.options.userDefinedKeySeparator = t.keySeparator), void 0 !== t.nsSeparator && (this.options.userDefinedNsSeparator = t.nsSeparator), !this.options.isClone) {
var a;
this.modules.logger ? b.init(i(this.modules.logger), this.options) : b.init(null, this.options), this.modules.formatter ? a = this.modules.formatter : "undefined" !== typeof Intl && (a = oe);
var o = new H(this.options);
this.store = new z(this.options.resources, this.options);
var s = this.services;
s.logger = b, s.resourceStore = this.store, s.languageUtils = o, s.pluralResolver = new J(o, {
prepend: this.options.pluralSeparator,
compatibilityJSON: this.options.compatibilityJSON,
simplifyPluralSuffix: this.options.simplifyPluralSuffix
}), !a || this.options.interpolation.format && this.options.interpolation.format !== r.interpolation.format || (s.formatter = i(a), s.formatter.init(s, this.options), this.options.interpolation.format = s.formatter.format.bind(s.formatter)), s.interpolator = new ne(this.options), s.utils = {
hasLoadedNamespace: this.hasLoadedNamespace.bind(this)
}, s.backendConnector = new ue(i(this.modules.backend), s.resourceStore, s, this.options), s.backendConnector.on("*", (function(t) {
for (var n = arguments.length, r = new Array(n > 1 ? n - 1 : 0), i = 1; i < n; i++) r[i - 1] = arguments[i];
e.emit.apply(e, [t].concat(r))
})), this.modules.languageDetector && (s.languageDetector = i(this.modules.languageDetector), s.languageDetector.init && s.languageDetector.init(s, this.options.detection, this.options)), this.modules.i18nFormat && (s.i18nFormat = i(this.modules.i18nFormat), s.i18nFormat.init && s.i18nFormat.init(this)), this.translator = new $(this.services, this.options), this.translator.on("*", (function(t) {
for (var n = arguments.length, r = new Array(n > 1 ? n - 1 : 0), i = 1; i < n; i++) r[i - 1] = arguments[i];
e.emit.apply(e, [t].concat(r))
})), this.modules.external.forEach((function(t) {
t.init && t.init(e)
}))
}
if (this.format = this.options.interpolation.format, n || (n = ge), this.options.fallbackLng && !this.services.languageDetector && !this.options.lng) {
var l = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);
l.length > 0 && "dev" !== l[0] && (this.options.lng = l[0])
}
this.services.languageDetector || this.options.lng || this.logger.warn("init: no languageDetector is used and no lng is defined");
var c = ["getResource", "hasResourceBundle", "getResourceBundle", "getDataByLanguage"];
c.forEach((function(t) {
e[t] = function() {
var n;
return (n = e.store)[t].apply(n, arguments)
}
}));
var u = ["addResource", "addResources", "addResourceBundle", "removeResourceBundle"];
u.forEach((function(t) {
e[t] = function() {
var n;
return (n = e.store)[t].apply(n, arguments), e
}
}));
var d = k(),
p = function() {
var t = function(t, r) {
e.isInitialized && !e.initializedStoreOnce && e.logger.warn("init: i18next is already initialized. You should call init just once!"), e.isInitialized = !0, e.options.isClone || e.logger.log("initialized", e.options), e.emit("initialized", e.options), d.resolve(r), n(t, r)
};
if (e.languages && "v1" !== e.options.compatibilityAPI && !e.isInitialized) return t(null, e.t.bind(e));
e.changeLanguage(e.options.lng, t)
};
return this.options.resources || !this.options.initImmediate ? p() : setTimeout(p, 0), d
}
}, {
key: "loadResources",
value: function(e) {
var t = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ge,
r = n,
i = "string" === typeof e ? e : this.language;
if ("function" === typeof e && (r = e), !this.options.resources || this.options.partialBundledLanguages) {
if (i && "cimode" === i.toLowerCase()) return r();
var a = [],
o = function(e) {
e && t.services.languageUtils.toResolveHierarchy(e).forEach((function(e) {
a.indexOf(e) < 0 && a.push(e)
}))
};
if (i) o(i);
else {
var s = this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);
s.forEach((function(e) {
return o(e)
}))
}
this.options.preload && this.options.preload.forEach((function(e) {
return o(e)
})), this.services.backendConnector.load(a, this.options.ns, (function(e) {
e || t.resolvedLanguage || !t.language || t.setResolvedLanguage(t.language), r(e)
}))
} else r(null)
}
}, {
key: "reloadResources",
value: function(e, t, n) {
var r = k();
return e || (e = this.languages), t || (t = this.options.ns), n || (n = ge), this.services.backendConnector.reload(e, t, (function(e) {
r.resolve(), n(e)
})), r
}
}, {
key: "use",
value: function(e) {
if (!e) throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");
if (!e.type) throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");
return "backend" === e.type && (this.modules.backend = e), ("logger" === e.type || e.log && e.warn && e.error) && (this.modules.logger = e), "languageDetector" === e.type && (this.modules.languageDetector = e), "i18nFormat" === e.type && (this.modules.i18nFormat = e), "postProcessor" === e.type && V.addPostProcessor(e), "formatter" === e.type && (this.modules.formatter = e), "3rdParty" === e.type && this.modules.external.push(e), this
}
}, {
key: "setResolvedLanguage",
value: function(e) {
if (e && this.languages && !(["cimode", "dev"].indexOf(e) > -1))
for (var t = 0; t < this.languages.length; t++) {
var n = this.languages[t];
if (!(["cimode", "dev"].indexOf(n) > -1) && this.store.hasLanguageSomeTranslations(n)) {
this.resolvedLanguage = n;
break
}
}
}
}, {
key: "changeLanguage",
value: function(e, t) {
var n = this;
this.isLanguageChangingTo = e;
var r = k();
this.emit("languageChanging", e);
var i = function(e) {
n.language = e, n.languages = n.services.languageUtils.toResolveHierarchy(e), n.resolvedLanguage = void 0, n.setResolvedLanguage(e)
},
a = function(a) {
e || a || !n.services.languageDetector || (a = []);
var o = "string" === typeof a ? a : n.services.languageUtils.getBestMatchFromCodes(a);
o && (n.language || i(o), n.translator.language || n.translator.changeLanguage(o), n.services.languageDetector && n.services.languageDetector.cacheUserLanguage && n.services.languageDetector.cacheUserLanguage(o)), n.loadResources(o, (function(e) {
! function(e, a) {
a ? (i(a), n.translator.changeLanguage(a), n.isLanguageChangingTo = void 0, n.emit("languageChanged", a), n.logger.log("languageChanged", a)) : n.isLanguageChangingTo = void 0, r.resolve((function() {
return n.t.apply(n, arguments)
})), t && t(e, (function() {
return n.t.apply(n, arguments)
}))
}(e, o)
}))
};
return e || !this.services.languageDetector || this.services.languageDetector.async ? !e && this.services.languageDetector && this.services.languageDetector.async ? 0 === this.services.languageDetector.detect.length ? this.services.languageDetector.detect().then(a) : this.services.languageDetector.detect(a) : a(e) : a(this.services.languageDetector.detect()), r
}
}, {
key: "getFixedT",
value: function(e, t, n) {
var i = this,
a = function e(t, a) {
var o;
if ("object" !== r(a)) {
for (var s = arguments.length, l = new Array(s > 2 ? s - 2 : 0), c = 2; c < s; c++) l[c - 2] = arguments[c];
o = i.options.overloadTranslationOptionHandler([t, a].concat(l))
} else o = fe({}, a);
o.lng = o.lng || e.lng, o.lngs = o.lngs || e.lngs, o.ns = o.ns || e.ns, o.keyPrefix = o.keyPrefix || n || e.keyPrefix;
var u, d = i.options.keySeparator || ".";
return u = o.keyPrefix && Array.isArray(t) ? t.map((function(e) {
return "".concat(o.keyPrefix).concat(d).concat(e)
})) : o.keyPrefix ? "".concat(o.keyPrefix).concat(d).concat(t) : t, i.t(u, o)
};
return "string" === typeof e ? a.lng = e : a.lngs = e, a.ns = t, a.keyPrefix = n, a
}
}, {
key: "t",
value: function() {
var e;
return this.translator && (e = this.translator).translate.apply(e, arguments)
}
}, {
key: "exists",
value: function() {
var e;
return this.translator && (e = this.translator).exists.apply(e, arguments)
}
}, {
key: "setDefaultNamespace",
value: function(e) {
this.options.defaultNS = e
}
}, {
key: "hasLoadedNamespace",
value: function(e) {
var t = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (!this.isInitialized) return this.logger.warn("hasLoadedNamespace: i18next was not initialized", this.languages), !1;
if (!this.languages || !this.languages.length) return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty", this.languages), !1;
var r = this.resolvedLanguage || this.languages[0],
i = !!this.options && this.options.fallbackLng,
a = this.languages[this.languages.length - 1];
if ("cimode" === r.toLowerCase()) return !0;
var o = function(e, n) {
var r = t.services.backendConnector.state["".concat(e, "|").concat(n)];
return -1 === r || 2 === r
};
if (n.precheck) {
var s = n.precheck(this, o);
if (void 0 !== s) return s
}
return !!this.hasResourceBundle(r, e) || (!(this.services.backendConnector.backend && (!this.options.resources || this.options.partialBundledLanguages)) || !(!o(r, e) || i && !o(a, e)))
}
}, {
key: "loadNamespaces",
value: function(e, t) {
var n = this,
r = k();
return this.options.ns ? ("string" === typeof e && (e = [e]), e.forEach((function(e) {
n.options.ns.indexOf(e) < 0 && n.options.ns.push(e)
})), this.loadResources((function(e) {
r.resolve(), t && t(e)
})), r) : (t && t(), Promise.resolve())
}
}, {
key: "loadLanguages",
value: function(e, t) {
var n = k();
"string" === typeof e && (e = [e]);
var r = this.options.preload || [],
i = e.filter((function(e) {
return r.indexOf(e) < 0
}));
return i.length ? (this.options.preload = r.concat(i), this.loadResources((function(e) {
n.resolve(), t && t(e)
})), n) : (t && t(), Promise.resolve())
}
}, {
key: "dir",
value: function(e) {
if (e || (e = this.resolvedLanguage || (this.languages && this.languages.length > 0 ? this.languages[0] : this.language)), !e) return "rtl";
var t = this.services && this.services.languageUtils || new H(de());
return ["ar", "shu", "sqr", "ssh", "xaa", "yhd", "yud", "aao", "abh", "abv", "acm", "acq", "acw", "acx", "acy", "adf", "ads", "aeb", "aec", "afb", "ajp", "apc", "apd", "arb", "arq", "ars", "ary", "arz", "auz", "avl", "ayh", "ayl", "ayn", "ayp", "bbz", "pga", "he", "iw", "ps", "pbt", "pbu", "pst", "prp", "prd", "ug", "ur", "ydd", "yds", "yih", "ji", "yi", "hbo", "men", "xmn", "fa", "jpr", "peo", "pes", "prs", "dv", "sam", "ckb"].indexOf(t.getLanguagePartFromCode(e)) > -1 || e.toLowerCase().indexOf("-arab") > 1 ? "rtl" : "ltr"
}
}, {
key: "cloneInstance",
value: function() {
var e = this,
t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ge,
i = fe(fe(fe({}, this.options), t), {
isClone: !0
}),
a = new n(i);
void 0 === t.debug && void 0 === t.prefix || (a.logger = a.logger.clone(t));
var o = ["store", "services", "language"];
return o.forEach((function(t) {
a[t] = e[t]
})), a.services = fe({}, this.services), a.services.utils = {
hasLoadedNamespace: a.hasLoadedNamespace.bind(a)
}, a.translator = new $(a.services, a.options), a.translator.on("*", (function(e) {
for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
a.emit.apply(a, [e].concat(n))
})), a.init(i, r), a.translator.options = a.options, a.translator.backendConnector.services.utils = {
hasLoadedNamespace: a.hasLoadedNamespace.bind(a)
}, a
}
}, {
key: "toJSON",
value: function() {
return {
options: this.options,
store: this.store,
language: this.language,
languages: this.languages,
resolvedLanguage: this.resolvedLanguage
}
}
}]), n
}(x);
h(ye, "createInstance", (function() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
t = arguments.length > 1 ? arguments[1] : void 0;
return new ye(e, t)
}));
var _e = ye.createInstance();
_e.createInstance = ye.createInstance;
_e.createInstance, _e.dir, _e.init, _e.loadResources, _e.reloadResources, _e.use, _e.changeLanguage, _e.getFixedT;
var be = _e.t;
_e.exists, _e.setDefaultNamespace, _e.hasLoadedNamespace, _e.loadNamespaces, _e.loadLanguages;
function xe(e) {
return xe = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
}, xe(e)
}
function ke(e) {
var t = function(e, t) {
if ("object" !== xe(e) || null === e) return e;
var n = e[Symbol.toPrimitive];
if (void 0 !== n) {
var r = n.call(e, t || "default");
if ("object" !== xe(r)) return r;
throw new TypeError("@@toPrimitive must return a primitive value.")
}
return ("string" === t ? String : Number)(e)
}(e, "string");
return "symbol" === xe(t) ? t : String(t)
}
function we(e, t, n) {
return (t = ke(t)) in e ? Object.defineProperty(e, t, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = n, e
}
function Se(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}
var Ee = n(1479),
Ie = n.t(Ee, 2),
Oe = n(7399),
Ce = n.n(Oe),
Ae = /\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;
function Pe(e) {
var t = {
type: "tag",
name: "",
voidElement: !1,
attrs: {},
children: []
},
n = e.match(/<\/?([^\s]+?)[/\s>]/);
if (n && (t.name = n[1], (Ce()[n[1]] || "/" === e.charAt(e.length - 2)) && (t.voidElement = !0), t.name.startsWith("!--"))) {
var r = e.indexOf("--\x3e");
return {
type: "comment",
comment: -1 !== r ? e.slice(4, r) : ""
}
}
for (var i = new RegExp(Ae), a = null; null !== (a = i.exec(e));)
if (a[0].trim())
if (a[1]) {
var o = a[1].trim(),
s = [o, ""];
o.indexOf("=") > -1 && (s = o.split("=")), t.attrs[s[0]] = s[1], i.lastIndex--
} else a[2] && (t.attrs[a[2]] = a[3].trim().substring(1, a[3].length - 1));
return t
}
var Te = /<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,
Re = /^\s*$/,
De = Object.create(null);
function Le(e, t) {
switch (t.type) {
case "text":
return e + t.content;
case "tag":
return e += "<" + t.name + (t.attrs ? function(e) {
var t = [];
for (var n in e) t.push(n + '="' + e[n] + '"');
return t.length ? " " + t.join(" ") : ""
}(t.attrs) : "") + (t.voidElement ? "/>" : ">"), t.voidElement ? e : e + t.children.reduce(Le, "") + "</" + t.name + ">";
case "comment":
return e + "\x3c!--" + t.comment + "--\x3e"
}
}
var Ne = {
parse: function(e, t) {
t || (t = {}), t.components || (t.components = De);
var n, r = [],
i = [],
a = -1,
o = !1;
if (0 !== e.indexOf("<")) {
var s = e.indexOf("<");
r.push({
type: "text",
content: -1 === s ? e : e.substring(0, s)
})
}
return e.replace(Te, (function(s, l) {
if (o) {
if (s !== "</" + n.name + ">") return;
o = !1
}
var c, u = "/" !== s.charAt(1),
d = s.startsWith("\x3c!--"),
p = l + s.length,
h = e.charAt(p);
if (d) {
var f = Pe(s);
return a < 0 ? (r.push(f), r) : ((c = i[a]).children.push(f), r)
}
if (u && (a++, "tag" === (n = Pe(s)).type && t.components[n.name] && (n.type = "component", o = !0), n.voidElement || o || !h || "<" === h || n.children.push({
type: "text",
content: e.slice(p, e.indexOf("<", p))
}), 0 === a && r.push(n), (c = i[a - 1]) && c.children.push(n), i[a] = n), (!u || n.voidElement) && (a > -1 && (n.voidElement || n.name === s.slice(2, -1)) && (a--, n = -1 === a ? r : i[a]), !o && "<" !== h && h)) {
c = -1 === a ? r : i[a].children;
var m = e.indexOf("<", p),
g = e.slice(p, -1 === m ? void 0 : m);
Re.test(g) && (g = " "), (m > -1 && a + c.length >= 0 || " " !== g) && c.push({
type: "text",
content: g
})
}
})), r
},
stringify: function(e) {
return e.reduce((function(e, t) {
return e + Le("", t)
}), "")
}
};
const Me = Ne;
function je() {
if (console && console.warn) {
for (var e, t = arguments.length, n = new Array(t), r = 0; r < t; r++) n[r] = arguments[r];
"string" === typeof n[0] && (n[0] = "react-i18next:: ".concat(n[0])), (e = console).warn.apply(e, n)
}
}
var Fe = {};
function ze() {
for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
"string" === typeof t[0] && Fe[t[0]] || ("string" === typeof t[0] && (Fe[t[0]] = new Date), je.apply(void 0, t))
}
function Ve(e, t, n) {
e.loadNamespaces(t, (function() {
if (e.isInitialized) n();
else {
e.on("initialized", (function t() {
setTimeout((function() {
e.off("initialized", t)
}), 0), n()
}))
}
}))
}
function Ue(e, t) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
r = t.languages[0],
i = !!t.options && t.options.fallbackLng,
a = t.languages[t.languages.length - 1];
if ("cimode" === r.toLowerCase()) return !0;
var o = function(e, n) {
var r = t.services.backendConnector.state["".concat(e, "|").concat(n)];
return -1 === r || 2 === r
};
return !(n.bindI18n && n.bindI18n.indexOf("languageChanging") > -1 && t.services.backendConnector.backend && t.isLanguageChangingTo && !o(t.isLanguageChangingTo, e)) && (!!t.hasResourceBundle(r, e) || (!(t.services.backendConnector.backend && (!t.options.resources || t.options.partialBundledLanguages)) || !(!o(r, e) || i && !o(a, e))))
}
function Be(e, t) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
if (!t.languages || !t.languages.length) return ze("i18n.languages were undefined or empty", t.languages), !0;
var r = void 0 !== t.options.ignoreJSONStructure;
return r ? t.hasLoadedNamespace(e, {
precheck: function(t, r) {
if (n.bindI18n && n.bindI18n.indexOf("languageChanging") > -1 && t.services.backendConnector.backend && t.isLanguageChangingTo && !r(t.isLanguageChangingTo, e)) return !1
}
}) : Ue(e, t, n)
}
var Ge = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,
We = {
"&amp;": "&",
"&#38;": "&",
"&lt;": "<",
"&#60;": "<",
"&gt;": ">",
"&#62;": ">",
"&apos;": "'",
"&#39;": "'",
"&quot;": '"',
"&#34;": '"',
"&nbsp;": " ",
"&#160;": " ",
"&copy;": "\xa9",
"&#169;": "\xa9",
"&reg;": "\xae",
"&#174;": "\xae",
"&hellip;": "\u2026",
"&#8230;": "\u2026",
"&#x2F;": "/",
"&#47;": "/"
},
$e = function(e) {
return We[e]
};
function qe(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function He(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? qe(Object(n), !0).forEach((function(t) {
we(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : qe(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
var Ke, Ye = {
bindI18n: "languageChanged",
bindI18nStore: "",
transEmptyNodeValue: "",
transSupportBasicHtmlNodes: !0,
transWrapTextNodes: "",
transKeepBasicHtmlNodesFor: ["br", "strong", "i", "p"],
useSuspense: !0,
unescape: function(e) {
return e.replace(Ge, $e)
}
};
function Qe() {
return Ye
}
function Ze() {
return Ke
}
var Xe = ["format"],
Je = ["children", "count", "parent", "i18nKey", "context", "tOptions", "values", "defaults", "components", "ns", "i18n", "t", "shouldUnescape"];
function et(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function tt(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? et(Object(n), !0).forEach((function(t) {
we(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : et(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
function nt(e, t) {
if (!e) return !1;
var n = e.props ? e.props.children : e.children;
return t ? n.length > 0 : !!n
}
function rt(e) {
return e ? e.props ? e.props.children : e.children : []
}
function it(e) {
return Array.isArray(e) ? e : [e]
}
function at(e, t) {
if (!e) return "";
var n = "",
r = it(e),
i = t.transSupportBasicHtmlNodes && t.transKeepBasicHtmlNodesFor ? t.transKeepBasicHtmlNodesFor : [];
return r.forEach((function(e, r) {
if ("string" === typeof e) n += "".concat(e);
else if ((0, Ee.isValidElement)(e)) {
var a = Object.keys(e.props).length,
o = i.indexOf(e.type) > -1,
s = e.props.children;
if (!s && o && 0 === a) n += "<".concat(e.type, "/>");
else if (s || o && 0 === a)
if (e.props.i18nIsDynamicList) n += "<".concat(r, "></").concat(r, ">");
else if (o && 1 === a && "string" === typeof s) n += "<".concat(e.type, ">").concat(s, "</").concat(e.type, ">");
else {
var l = at(s, t);
n += "<".concat(r, ">").concat(l, "</").concat(r, ">")
} else n += "<".concat(r, "></").concat(r, ">")
} else if (null === e) je("Trans: the passed in value is invalid - seems you passed in a null child.");
else if ("object" === xe(e)) {
var c = e.format,
u = Se(e, Xe),
d = Object.keys(u);
if (1 === d.length) {
var p = c ? "".concat(d[0], ", ").concat(c) : d[0];
n += "{{".concat(p, "}}")
} else je("react-i18next: the passed in object contained more than one variable - the object should look like {{ value, format }} where format is optional.", e)
} else je("Trans: the passed in value is invalid - seems you passed in a variable like {number} - please pass in variables for interpolation as full objects like {{number}}.", e)
})), n
}
function ot(e, t, n, r, i, a) {
if ("" === t) return [];
var o = r.transKeepBasicHtmlNodesFor || [],
s = t && new RegExp(o.join("|")).test(t);
if (!e && !s) return [t];
var l = {};
! function e(t) {
it(t).forEach((function(t) {
"string" !== typeof t && (nt(t) ? e(rt(t)) : "object" !== xe(t) || (0, Ee.isValidElement)(t) || Object.assign(l, t))
}))
}(e);
var c = Me.parse("<0>".concat(t, "</0>")),
u = tt(tt({}, l), i);
function d(e, t, n) {
var r = rt(e),
i = h(r, t.children, n);
return function(e) {
return "[object Array]" === Object.prototype.toString.call(e) && e.every((function(e) {
return (0, Ee.isValidElement)(e)
}))
}(r) && 0 === i.length ? r : i
}
function p(e, t, n, r, i) {
e.dummy && (e.children = t), n.push((0, Ee.cloneElement)(e, tt(tt({}, e.props), {}, {
key: r
}), i ? void 0 : t))
}
function h(t, i, l) {
var c = it(t);
return it(i).reduce((function(t, i, f) {
var m = i.children && i.children[0] && i.children[0].content && n.services.interpolator.interpolate(i.children[0].content, u, n.language);
if ("tag" === i.type) {
var g = c[parseInt(i.name, 10)];
!g && 1 === l.length && l[0][i.name] && (g = l[0][i.name]), g || (g = {});
var v = 0 !== Object.keys(i.attrs).length ? function(e, t) {
var n = tt({}, t);
return n.props = Object.assign(e.props, t.props), n
}({
props: i.attrs
}, g) : g,
y = (0, Ee.isValidElement)(v),
_ = y && nt(i, !0) && !i.voidElement,
b = s && "object" === xe(v) && v.dummy && !y,
x = "object" === xe(e) && null !== e && Object.hasOwnProperty.call(e, i.name);
if ("string" === typeof v) {
var k = n.services.interpolator.interpolate(v, u, n.language);
t.push(k)
} else if (nt(v) || _) {
p(v, d(v, i, l), t, f)
} else if (b) {
var w = h(c, i.children, l);
t.push((0, Ee.cloneElement)(v, tt(tt({}, v.props), {}, {
key: f
}), w))
} else if (Number.isNaN(parseFloat(i.name))) {
if (x) p(v, d(v, i, l), t, f, i.voidElement);
else if (r.transSupportBasicHtmlNodes && o.indexOf(i.name) > -1)
if (i.voidElement) t.push((0, Ee.createElement)(i.name, {
key: "".concat(i.name, "-").concat(f)
}));
else {
var S = h(c, i.children, l);
t.push((0, Ee.createElement)(i.name, {
key: "".concat(i.name, "-").concat(f)
}, S))
}
else if (i.voidElement) t.push("<".concat(i.name, " />"));
else {
var E = h(c, i.children, l);
t.push("<".concat(i.name, ">").concat(E, "</").concat(i.name, ">"))
}
} else if ("object" !== xe(v) || y) 1 === i.children.length && m ? t.push((0, Ee.cloneElement)(v, tt(tt({}, v.props), {}, {
key: f
}), m)) : t.push((0, Ee.cloneElement)(v, tt(tt({}, v.props), {}, {
key: f
})));
else {
var I = i.children[0] ? m : null;
I && t.push(I)
}
} else if ("text" === i.type) {
var O = r.transWrapTextNodes,
C = a ? r.unescape(n.services.interpolator.interpolate(i.content, u, n.language)) : n.services.interpolator.interpolate(i.content, u, n.language);
O ? t.push((0, Ee.createElement)(O, {
key: "".concat(i.name, "-").concat(f)
}, C)) : t.push(C)
}
return t
}), [])
}
return rt(h([{
dummy: !0,
children: e || []
}], c, it(e || []))[0])
}
function st(e) {
var t = e.children,
n = e.count,
r = e.parent,
i = e.i18nKey,
a = e.context,
o = e.tOptions,
s = void 0 === o ? {} : o,
l = e.values,
c = e.defaults,
u = e.components,
d = e.ns,
p = e.i18n,
h = e.t,
f = e.shouldUnescape,
m = Se(e, Je),
g = p || Ze();
if (!g) return ze("You will need to pass in an i18next instance by using i18nextReactModule"), t;
var v = h || g.t.bind(g) || function(e) {
return e
};
a && (s.context = a);
var y = tt(tt({}, Qe()), g.options && g.options.react),
_ = d || v.ns || g.options && g.options.defaultNS;
_ = "string" === typeof _ ? [_] : _ || ["translation"];
var b = c || at(t, y) || y.transEmptyNodeValue || i,
x = y.hashTransKey,
k = i || (x ? x(b) : b),
w = l ? s.interpolation : {
interpolation: tt(tt({}, s.interpolation), {}, {
prefix: "#$?",
suffix: "?$#"
})
},
S = tt(tt(tt(tt({}, s), {}, {
count: n
}, l), w), {}, {
defaultValue: b,
ns: _
}),
E = ot(u || t, k ? v(k, S) : b, g, y, S, f),
I = void 0 !== r ? r : y.defaultTransParent;
return I ? (0, Ee.createElement)(I, m, E) : E
}
function lt(e, t) {
for (var n = 0; n < t.length; n++) {
var r = t[n];
r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, ke(r.key), r)
}
}
var ct = {
type: "3rdParty",
init: function(e) {
! function() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
Ye = He(He({}, Ye), e)
}(e.options.react),
function(e) {
Ke = e
}(e)
}
};
var ut = (0, Ee.createContext)(),
dt = function() {
function e() {
! function(e, t) {
if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
}(this, e), this.usedNamespaces = {}
}
var t, n, r;
return t = e, n = [{
key: "addUsedNamespaces",
value: function(e) {
var t = this;
e.forEach((function(e) {
t.usedNamespaces[e] || (t.usedNamespaces[e] = !0)
}))
}
}, {
key: "getUsedNamespaces",
value: function() {
return Object.keys(this.usedNamespaces)
}
}], n && lt(t.prototype, n), r && lt(t, r), Object.defineProperty(t, "prototype", {
writable: !1
}), e
}();
var pt = ["children", "count", "parent", "i18nKey", "context", "tOptions", "values", "defaults", "components", "ns", "i18n", "t", "shouldUnescape"];
function ht(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function ft(e) {
var t = e.children,
n = e.count,
r = e.parent,
i = e.i18nKey,
a = e.context,
o = e.tOptions,
s = void 0 === o ? {} : o,
l = e.values,
c = e.defaults,
u = e.components,
d = e.ns,
p = e.i18n,
h = e.t,
f = e.shouldUnescape,
m = Se(e, pt),
g = (0, Ee.useContext)(ut) || {},
v = g.i18n,
y = g.defaultNS,
_ = p || v || Ze(),
b = h || _ && _.t.bind(_);
return st(function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? ht(Object(n), !0).forEach((function(t) {
we(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ht(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}({
children: t,
count: n,
parent: r,
i18nKey: i,
context: a,
tOptions: s,
values: l,
defaults: c,
components: u,
ns: d || b && b.ns || y || _ && _.options && _.options.defaultNS,
i18n: _,
t: h,
shouldUnescape: f
}, m))
}
function mt(e, t) {
(null == t || t > e.length) && (t = e.length);
for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n];
return r
}
function gt(e, t) {
return function(e) {
if (Array.isArray(e)) return e
}(e) || function(e, t) {
var n = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"];
if (null != n) {
var r, i, a, o, s = [],
l = !0,
c = !1;
try {
if (a = (n = n.call(e)).next, 0 === t) {
if (Object(n) !== n) return;
l = !1
} else
for (; !(l = (r = a.call(n)).done) && (s.push(r.value), s.length !== t); l = !0);
} catch (u) {
c = !0, i = u
} finally {
try {
if (!l && null != n.return && (o = n.return(), Object(o) !== o)) return
} finally {
if (c) throw i
}
}
return s
}
}(e, t) || function(e, t) {
if (e) {
if ("string" === typeof e) return mt(e, t);
var n = Object.prototype.toString.call(e).slice(8, -1);
return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? mt(e, t) : void 0
}
}(e, t) || function() {
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")
}()
}
function vt(e, t) {
var n = Object.keys(e);
if (Object.getOwnPropertySymbols) {
var r = Object.getOwnPropertySymbols(e);
t && (r = r.filter((function(t) {
return Object.getOwnPropertyDescriptor(e, t).enumerable
}))), n.push.apply(n, r)
}
return n
}
function yt(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {};
t % 2 ? vt(Object(n), !0).forEach((function(t) {
we(e, t, n[t])
})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : vt(Object(n)).forEach((function(t) {
Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t))
}))
}
return e
}
var _t = function(e, t) {
var n = (0, Ee.useRef)();
return (0, Ee.useEffect)((function() {
n.current = t ? n.current : e
}), [e, t]), n.current
};
function bt(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = t.i18n,
r = (0, Ee.useContext)(ut) || {},
i = r.i18n,
a = r.defaultNS,
o = n || i || Ze();
if (o && !o.reportNamespaces && (o.reportNamespaces = new dt), !o) {
ze("You will need to pass in an i18next instance by using initReactI18next");
var s = function(e) {
return Array.isArray(e) ? e[e.length - 1] : e
},
l = [s, {}, !1];
return l.t = s, l.i18n = {}, l.ready = !1, l
}
o.options.react && void 0 !== o.options.react.wait && ze("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");
var c = yt(yt(yt({}, Qe()), o.options.react), t),
u = c.useSuspense,
d = c.keyPrefix,
p = e || a || o.options && o.options.defaultNS;
p = "string" === typeof p ? [p] : p || ["translation"], o.reportNamespaces.addUsedNamespaces && o.reportNamespaces.addUsedNamespaces(p);
var h = (o.isInitialized || o.initializedStoreOnce) && p.every((function(e) {
return Be(e, o, c)
}));
function f() {
return o.getFixedT(null, "fallback" === c.nsMode ? p : p[0], d)
}
var m = (0, Ee.useState)(f),
g = gt(m, 2),
v = g[0],
y = g[1],
_ = p.join(),
b = _t(_),
x = (0, Ee.useRef)(!0);
(0, Ee.useEffect)((function() {
var e = c.bindI18n,
t = c.bindI18nStore;
function n() {
x.current && y(f)
}
return x.current = !0, h || u || Ve(o, p, (function() {
x.current && y(f)
})), h && b && b !== _ && x.current && y(f), e && o && o.on(e, n), t && o && o.store.on(t, n),
function() {
x.current = !1, e && o && e.split(" ").forEach((function(e) {
return o.off(e, n)
})), t && o && t.split(" ").forEach((function(e) {
return o.store.off(e, n)
}))
}
}), [o, _]);
var k = (0, Ee.useRef)(!0);
(0, Ee.useEffect)((function() {
x.current && !k.current && y(f), k.current = !1
}), [o, d]);
var w = [v, o, h];
if (w.t = v, w.i18n = o, w.ready = h, h) return w;
if (!h && !u) return w;
throw new Promise((function(e) {
Ve(o, p, (function() {
e()
}))
}))
}
_e.use(ct).init({
resources: {
en: e,
fr: t,
zh_CN: SC_TOOLBOX_LOCALIZATION_ZHCN_MAP,
zh_TW: SC_TOOLBOX_LOCALIZATION_ZHTW_MAP,
},
lng: SC_TOOLBOX_ENABLED_LOCALIZATION,
interpolation: {
escapeValue: !1
},
returnNull: !1
});
const xt = _e,
kt = "8.20.0",
wt = globalThis;
function St(e, t, n) {
const r = n || wt,
i = r.__SENTRY__ = r.__SENTRY__ || {},
a = i[kt] = i[kt] || {};
return a[e] || (a[e] = t())
}
const Et = "production";
function It() {
return Ot(wt), wt
}
function Ot(e) {
const t = e.__SENTRY__ = e.__SENTRY__ || {};
return t.version = t.version || kt, t[kt] = t[kt] || {}
}
const Ct = Object.prototype.toString;
function At(e) {
switch (Ct.call(e)) {
case "[object Error]":
case "[object Exception]":
case "[object DOMException]":
return !0;
default:
return zt(e, Error)
}
}
function Pt(e, t) {
return Ct.call(e) === `[object ${t}]`
}
function Tt(e) {
return Pt(e, "ErrorEvent")
}
function Rt(e) {
return Pt(e, "DOMError")
}
function Dt(e) {
return Pt(e, "String")
}
function Lt(e) {
return "object" === typeof e && null !== e && "__sentry_template_string__" in e && "__sentry_template_values__" in e
}
function Nt(e) {
return null === e || Lt(e) || "object" !== typeof e && "function" !== typeof e
}
function Mt(e) {
return Pt(e, "Object")
}
function jt(e) {
return "undefined" !== typeof Event && zt(e, Event)
}
function Ft(e) {
return Boolean(e && e.then && "function" === typeof e.then)
}
function zt(e, t) {
try {
return e instanceof t
} catch (n) {
return !1
}
}
function Vt(e) {
return !("object" !== typeof e || null === e || !e.__isVue && !e._isVue)
}
const Ut = wt;
function Bt(e, t = {}) {
if (!e) return "<unknown>";
try {
let n = e;
const r = 5,
i = [];
let a = 0,
o = 0;
const s = " > ",
l = s.length;
let c;
const u = Array.isArray(t) ? t : t.keyAttrs,
d = !Array.isArray(t) && t.maxStringLength || 80;
for (; n && a++ < r && (c = Gt(n, u), !("html" === c || a > 1 && o + i.length * l + c.length >= d));) i.push(c), o += c.length, n = n.parentNode;
return i.reverse().join(s)
} catch (n) {
return "<unknown>"
}
}
function Gt(e, t) {
const n = e,
r = [];
if (!n || !n.tagName) return "";
if (Ut.HTMLElement && n instanceof HTMLElement && n.dataset) {
if (n.dataset.sentryComponent) return n.dataset.sentryComponent;
if (n.dataset.sentryElement) return n.dataset.sentryElement
}
r.push(n.tagName.toLowerCase());
const i = t && t.length ? t.filter((e => n.getAttribute(e))).map((e => [e, n.getAttribute(e)])) : null;
if (i && i.length) i.forEach((e => {
r.push(`[${e[0]}="${e[1]}"]`)
}));
else {
n.id && r.push(`#${n.id}`);
const e = n.className;
if (e && Dt(e)) {
const t = e.split(/\s+/);
for (const e of t) r.push(`.${e}`)
}
}
const a = ["aria-label", "type", "name", "title", "alt"];
for (const o of a) {
const e = n.getAttribute(o);
e && r.push(`[${o}="${e}"]`)
}
return r.join("")
}
function Wt() {
try {
return Ut.document.location.href
} catch (ip) {
return ""
}
}
function $t(e) {
if (!Ut.HTMLElement) return null;
let t = e;
for (let n = 0; n < 5; n++) {
if (!t) return null;
if (t instanceof HTMLElement) {
if (t.dataset.sentryComponent) return t.dataset.sentryComponent;
if (t.dataset.sentryElement) return t.dataset.sentryElement
}
t = t.parentNode
}
return null
}
const qt = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__,
Ht = ["debug", "info", "warn", "error", "log", "assert", "trace"],
Kt = {};
function Yt(e) {
if (!("console" in wt)) return e();
const t = wt.console,
n = {},
r = Object.keys(Kt);
r.forEach((e => {
const r = Kt[e];
n[e] = t[e], t[e] = r
}));
try {
return e()
} finally {
r.forEach((e => {
t[e] = n[e]
}))
}
}
const Qt = function() {
let e = !1;
const t = {
enable: () => {
e = !0
},
disable: () => {
e = !1
},
isEnabled: () => e
};
return qt ? Ht.forEach((n => {
t[n] = (...t) => {
e && Yt((() => {
wt.console[n](`Sentry Logger [${n}]:`, ...t)
}))
}
})) : Ht.forEach((e => {
t[e] = () => {}
})), t
}();
function Zt(e, t = 0) {
return "string" !== typeof e || 0 === t || e.length <= t ? e : `${e.slice(0,t)}...`
}
function Xt(e, t) {
if (!Array.isArray(e)) return "";
const n = [];
for (let i = 0; i < e.length; i++) {
const t = e[i];
try {
Vt(t) ? n.push("[VueViewModel]") : n.push(String(t))
} catch (r) {
n.push("[value cannot be serialized]")
}
}
return n.join(t)
}
function Jt(e, t, n = !1) {
return !!Dt(e) && (Pt(t, "RegExp") ? t.test(e) : !!Dt(t) && (n ? e === t : e.includes(t)))
}
function en(e, t = [], n = !1) {
return t.some((t => Jt(e, t, n)))
}
function tn(e, t, n) {
if (!(t in e)) return;
const r = e[t],
i = n(r);
"function" === typeof i && rn(i, r), e[t] = i
}
function nn(e, t, n) {
try {
Object.defineProperty(e, t, {
value: n,
writable: !0,
configurable: !0
})
} catch (r) {
qt && Qt.log(`Failed to add non-enumerable property "${t}" to object`, e)
}
}
function rn(e, t) {
try {
const n = t.prototype || {};
e.prototype = t.prototype = n, nn(e, "__sentry_original__", t)
} catch (n) {}
}
function an(e) {
return e.__sentry_original__
}
function on(e) {
if (At(e)) return {
message: e.message,
name: e.name,
stack: e.stack,
...ln(e)
};
if (jt(e)) {
const t = {
type: e.type,
target: sn(e.target),
currentTarget: sn(e.currentTarget),
...ln(e)
};
return "undefined" !== typeof CustomEvent && zt(e, CustomEvent) && (t.detail = e.detail), t
}
return e
}
function sn(e) {
try {
return t = e, "undefined" !== typeof Element && zt(t, Element) ? Bt(e) : Object.prototype.toString.call(e)
} catch (n) {
return "<unknown>"
}
var t
}
function ln(e) {
if ("object" === typeof e && null !== e) {
const t = {};
for (const n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
return t
}
return {}
}
function cn(e) {
return un(e, new Map)
}
function un(e, t) {
if (function(e) {
if (!Mt(e)) return !1;
try {
const t = Object.getPrototypeOf(e).constructor.name;
return !t || "Object" === t
} catch (t) {
return !0
}
}(e)) {
const n = t.get(e);
if (void 0 !== n) return n;
const r = {};
t.set(e, r);
for (const i of Object.keys(e)) "undefined" !== typeof e[i] && (r[i] = un(e[i], t));
return r
}
if (Array.isArray(e)) {
const n = t.get(e);
if (void 0 !== n) return n;
const r = [];
return t.set(e, r), e.forEach((e => {
r.push(un(e, t))
})), r
}
return e
}
function dn() {
const e = wt,
t = e.crypto || e.msCrypto;
let n = () => 16 * Math.random();
try {
if (t && t.randomUUID) return t.randomUUID().replace(/-/g, "");
t && t.getRandomValues && (n = () => {
const e = new Uint8Array(1);
return t.getRandomValues(e), e[0]
})
} catch (No) {}
return ([1e7] + 1e3 + 4e3 + 8e3 + 1e11).replace(/[018]/g, (e => (e ^ (15 & n()) >> e / 4).toString(16)))
}
function pn(e) {
return e.exception && e.exception.values ? e.exception.values[0] : void 0
}
function hn(e) {
const {
message: t,
event_id: n
} = e;
if (t) return t;
const r = pn(e);
return r ? r.type && r.value ? `${r.type}: ${r.value}` : r.type || r.value || n || "<unknown>" : n || "<unknown>"
}
function fn(e, t, n) {
const r = e.exception = e.exception || {},
i = r.values = r.values || [],
a = i[0] = i[0] || {};
a.value || (a.value = t || ""), a.type || (a.type = n || "Error")
}
function mn(e, t) {
const n = pn(e);
if (!n) return;
const r = n.mechanism;
if (n.mechanism = {
type: "generic",
handled: !0,
...r,
...t
}, t && "data" in t) {
const e = {
...r && r.data,
...t.data
};
n.mechanism.data = e
}
}
function gn(e) {
if (e && e.__sentry_captured__) return !0;
try {
nn(e, "__sentry_captured__", !0)
} catch (t) {}
return !1
}
function vn(e) {
return Array.isArray(e) ? e : [e]
}
function yn() {
return {
traceId: dn(),
spanId: dn().substring(16)
}
}
function _n() {
return Date.now() / 1e3
}
const bn = function() {
const {
performance: e
} = wt;
if (!e || !e.now) return _n;
const t = Date.now() - e.now(),
n = void 0 == e.timeOrigin ? t : e.timeOrigin;
return () => (n + e.now()) / 1e3
}();
let xn;
const kn = (() => {
const {
performance: e
} = wt;
if (!e || !e.now) return void(xn = "none");
const t = 36e5,
n = e.now(),
r = Date.now(),
i = e.timeOrigin ? Math.abs(e.timeOrigin + n - r) : t,
a = i < t,
o = e.timing && e.timing.navigationStart,
s = "number" === typeof o ? Math.abs(o + n - r) : t;
return a || s < t ? i <= s ? (xn = "timeOrigin", e.timeOrigin) : (xn = "navigationStart", o) : (xn = "dateNow", r)
})();
function wn(e) {
const t = bn(),
n = {
sid: dn(),
init: !0,
timestamp: t,
started: t,
duration: 0,
status: "ok",
errors: 0,
ignoreDuration: !1,
toJSON: () => function(e) {
return cn({
sid: `${e.sid}`,
init: e.init,
started: new Date(1e3 * e.started).toISOString(),
timestamp: new Date(1e3 * e.timestamp).toISOString(),
status: e.status,
errors: e.errors,
did: "number" === typeof e.did || "string" === typeof e.did ? `${e.did}` : void 0,
duration: e.duration,
abnormal_mechanism: e.abnormal_mechanism,
attrs: {
release: e.release,
environment: e.environment,
ip_address: e.ipAddress,
user_agent: e.userAgent
}
})
}(n)
};
return e && Sn(n, e), n
}
function Sn(e, t = {}) {
if (t.user && (!e.ipAddress && t.user.ip_address && (e.ipAddress = t.user.ip_address), e.did || t.did || (e.did = t.user.id || t.user.email || t.user.username)), e.timestamp = t.timestamp || bn(), t.abnormal_mechanism && (e.abnormal_mechanism = t.abnormal_mechanism), t.ignoreDuration && (e.ignoreDuration = t.ignoreDuration), t.sid && (e.sid = 32 === t.sid.length ? t.sid : dn()), void 0 !== t.init && (e.init = t.init), !e.did && t.did && (e.did = `${t.did}`), "number" === typeof t.started && (e.started = t.started), e.ignoreDuration) e.duration = void 0;
else if ("number" === typeof t.duration) e.duration = t.duration;
else {
const t = e.timestamp - e.started;
e.duration = t >= 0 ? t : 0
}
t.release && (e.release = t.release), t.environment && (e.environment = t.environment), !e.ipAddress && t.ipAddress && (e.ipAddress = t.ipAddress), !e.userAgent && t.userAgent && (e.userAgent = t.userAgent), "number" === typeof t.errors && (e.errors = t.errors), t.status && (e.status = t.status)
}
const En = "_sentrySpan";
function In(e, t) {
t ? nn(e, En, t) : delete e[En]
}
function On(e) {
return e[En]
}
class Cn {
constructor() {
this._notifyingListeners = !1, this._scopeListeners = [], this._eventProcessors = [], this._breadcrumbs = [], this._attachments = [], this._user = {}, this._tags = {}, this._extra = {}, this._contexts = {}, this._sdkProcessingMetadata = {}, this._propagationContext = yn()
}
clone() {
const e = new Cn;
return e._breadcrumbs = [...this._breadcrumbs], e._tags = {
...this._tags
}, e._extra = {
...this._extra
}, e._contexts = {
...this._contexts
}, e._user = this._user, e._level = this._level, e._session = this._session, e._transactionName = this._transactionName, e._fingerprint = this._fingerprint, e._eventProcessors = [...this._eventProcessors], e._requestSession = this._requestSession, e._attachments = [...this._attachments], e._sdkProcessingMetadata = {
...this._sdkProcessingMetadata
}, e._propagationContext = {
...this._propagationContext
}, e._client = this._client, e._lastEventId = this._lastEventId, In(e, On(this)), e
}
setClient(e) {
this._client = e
}
setLastEventId(e) {
this._lastEventId = e
}
getClient() {
return this._client
}
lastEventId() {
return this._lastEventId
}
addScopeListener(e) {
this._scopeListeners.push(e)
}
addEventProcessor(e) {
return this._eventProcessors.push(e), this
}
setUser(e) {
return this._user = e || {
email: void 0,
id: void 0,
ip_address: void 0,
username: void 0
}, this._session && Sn(this._session, {
user: e
}), this._notifyScopeListeners(), this
}
getUser() {
return this._user
}
getRequestSession() {
return this._requestSession
}
setRequestSession(e) {
return this._requestSession = e, this
}
setTags(e) {
return this._tags = {
...this._tags,
...e
}, this._notifyScopeListeners(), this
}
setTag(e, t) {
return this._tags = {
...this._tags,
[e]: t
}, this._notifyScopeListeners(), this
}
setExtras(e) {
return this._extra = {
...this._extra,
...e
}, this._notifyScopeListeners(), this
}
setExtra(e, t) {
return this._extra = {
...this._extra,
[e]: t
}, this._notifyScopeListeners(), this
}
setFingerprint(e) {
return this._fingerprint = e, this._notifyScopeListeners(), this
}
setLevel(e) {
return this._level = e, this._notifyScopeListeners(), this
}
setTransactionName(e) {
return this._transactionName = e, this._notifyScopeListeners(), this
}
setContext(e, t) {
return null === t ? delete this._contexts[e] : this._contexts[e] = t, this._notifyScopeListeners(), this
}
setSession(e) {
return e ? this._session = e : delete this._session, this._notifyScopeListeners(), this
}
getSession() {
return this._session
}
update(e) {
if (!e) return this;
const t = "function" === typeof e ? e(this) : e,
[n, r] = t instanceof An ? [t.getScopeData(), t.getRequestSession()] : Mt(t) ? [e, e.requestSession] : [],
{
tags: i,
extra: a,
user: o,
contexts: s,
level: l,
fingerprint: c = [],
propagationContext: u
} = n || {};
return this._tags = {
...this._tags,
...i
}, this._extra = {
...this._extra,
...a
}, this._contexts = {
...this._contexts,
...s
}, o && Object.keys(o).length && (this._user = o), l && (this._level = l), c.length && (this._fingerprint = c), u && (this._propagationContext = u), r && (this._requestSession = r), this
}
clear() {
return this._breadcrumbs = [], this._tags = {}, this._extra = {}, this._user = {}, this._contexts = {}, this._level = void 0, this._transactionName = void 0, this._fingerprint = void 0, this._requestSession = void 0, this._session = void 0, In(this, void 0), this._attachments = [], this._propagationContext = yn(), this._notifyScopeListeners(), this
}
addBreadcrumb(e, t) {
const n = "number" === typeof t ? t : 100;
if (n <= 0) return this;
const r = {
timestamp: _n(),
...e
},
i = this._breadcrumbs;
return i.push(r), this._breadcrumbs = i.length > n ? i.slice(-n) : i, this._notifyScopeListeners(), this
}
getLastBreadcrumb() {
return this._breadcrumbs[this._breadcrumbs.length - 1]
}
clearBreadcrumbs() {
return this._breadcrumbs = [], this._notifyScopeListeners(), this
}
addAttachment(e) {
return this._attachments.push(e), this
}
clearAttachments() {
return this._attachments = [], this
}
getScopeData() {
return {
breadcrumbs: this._breadcrumbs,
attachments: this._attachments,
contexts: this._contexts,
tags: this._tags,
extra: this._extra,
user: this._user,
level: this._level,
fingerprint: this._fingerprint || [],
eventProcessors: this._eventProcessors,
propagationContext: this._propagationContext,
sdkProcessingMetadata: this._sdkProcessingMetadata,
transactionName: this._transactionName,
span: On(this)
}
}
setSDKProcessingMetadata(e) {
return this._sdkProcessingMetadata = {
...this._sdkProcessingMetadata,
...e
}, this
}
setPropagationContext(e) {
return this._propagationContext = e, this
}
getPropagationContext() {
return this._propagationContext
}
captureException(e, t) {
const n = t && t.event_id ? t.event_id : dn();
if (!this._client) return Qt.warn("No client configured on scope - will not capture exception!"), n;
const r = new Error("Sentry syntheticException");
return this._client.captureException(e, {
originalException: e,
syntheticException: r,
...t,
event_id: n
}, this), n
}
captureMessage(e, t, n) {
const r = n && n.event_id ? n.event_id : dn();
if (!this._client) return Qt.warn("No client configured on scope - will not capture message!"), r;
const i = new Error(e);
return this._client.captureMessage(e, t, {
originalException: e,
syntheticException: i,
...n,
event_id: r
}, this), r
}
captureEvent(e, t) {
const n = t && t.event_id ? t.event_id : dn();
return this._client ? (this._client.captureEvent(e, {
...t,
event_id: n
}, this), n) : (Qt.warn("No client configured on scope - will not capture event!"), n)
}
_notifyScopeListeners() {
this._notifyingListeners || (this._notifyingListeners = !0, this._scopeListeners.forEach((e => {
e(this)
})), this._notifyingListeners = !1)
}
}
const An = Cn;
class Pn {
constructor(e, t) {
let n, r;
n = e || new An, r = t || new An, this._stack = [{
scope: n
}], this._isolationScope = r
}
withScope(e) {
const t = this._pushScope();
let n;
try {
n = e(t)
} catch (r) {
throw this._popScope(), r
}
return Ft(n) ? n.then((e => (this._popScope(), e)), (e => {
throw this._popScope(), e
})) : (this._popScope(), n)
}
getClient() {
return this.getStackTop().client
}
getScope() {
return this.getStackTop().scope
}
getIsolationScope() {
return this._isolationScope
}
getStackTop() {
return this._stack[this._stack.length - 1]
}
_pushScope() {
const e = this.getScope().clone();
return this._stack.push({
client: this.getClient(),
scope: e
}), e
}
_popScope() {
return !(this._stack.length <= 1) && !!this._stack.pop()
}
}
function Tn() {
const e = Ot(It());
return e.stack = e.stack || new Pn(St("defaultCurrentScope", (() => new An)), St("defaultIsolationScope", (() => new An)))
}
function Rn(e) {
return Tn().withScope(e)
}
function Dn(e, t) {
const n = Tn();
return n.withScope((() => (n.getStackTop().scope = e, t(e))))
}
function Ln(e) {
return Tn().withScope((() => e(Tn().getIsolationScope())))
}
function Nn(e) {
const t = Ot(e);
return t.acs ? t.acs : {
withIsolationScope: Ln,
withScope: Rn,
withSetScope: Dn,
withSetIsolationScope: (e, t) => Ln(t),
getCurrentScope: () => Tn().getScope(),
getIsolationScope: () => Tn().getIsolationScope()
}
}
function Mn() {
return Nn(It()).getCurrentScope()
}
function jn() {
return Nn(It()).getIsolationScope()
}
function Fn(...e) {
const t = Nn(It());
if (2 === e.length) {
const [n, r] = e;
return n ? t.withSetScope(n, r) : t.withScope(r)
}
return t.withScope(e[0])
}
function zn() {
return Mn().getClient()
}
const Vn = "?",
Un = /\(error: (.*)\)/,
Bn = /captureMessage|captureException/;
function Gn(...e) {
const t = e.sort(((e, t) => e[0] - t[0])).map((e => e[1]));
return (e, n = 0, r = 0) => {
const i = [],
a = e.split("\n");
for (let o = n; o < a.length; o++) {
const e = a[o];
if (e.length > 1024) continue;
const n = Un.test(e) ? e.replace(Un, "$1") : e;
if (!n.match(/\S*Error: /)) {
for (const e of t) {
const t = e(n);
if (t) {
i.push(t);
break
}
}
if (i.length >= 50 + r) break
}
}
return Wn(i.slice(r))
}
}
function Wn(e) {
if (!e.length) return [];
const t = Array.from(e);
return /sentryWrapped/.test($n(t).function || "") && t.pop(), t.reverse(), Bn.test($n(t).function || "") && (t.pop(), Bn.test($n(t).function || "") && t.pop()), t.slice(0, 50).map((e => ({
...e,
filename: e.filename || $n(t).filename,
function: e.function || Vn
})))
}
function $n(e) {
return e[e.length - 1] || {}
}
const qn = "<anonymous>";
function Hn(e) {
try {
return e && "function" === typeof e && e.name || qn
} catch (t) {
return qn
}
}
function Kn(e) {
const t = e.exception;
if (t) {
const e = [];
try {
return t.values.forEach((t => {
t.stacktrace.frames && e.push(...t.stacktrace.frames)
})), e
} catch (n) {
return
}
}
}
function Yn(e, t = 100, n = 1 / 0) {
try {
return Zn("", e, t, n)
} catch (r) {
return {
ERROR: `**non-serializable** (${r})`
}
}
}
function Qn(e, t = 3, n = 102400) {
const r = Yn(e, t);
return i = r,
function(e) {
return ~-encodeURI(e).split(/%..|./).length
}(JSON.stringify(i)) > n ? Qn(e, t - 1, n) : r;
var i
}
function Zn(e, t, n = 1 / 0, r = 1 / 0, i = function() {
const e = "function" === typeof WeakSet,
t = e ? new WeakSet : [];
return [function(n) {
if (e) return !!t.has(n) || (t.add(n), !1);
for (let e = 0; e < t.length; e++)
if (t[e] === n) return !0;
return t.push(n), !1
}, function(n) {
if (e) t.delete(n);
else
for (let e = 0; e < t.length; e++)
if (t[e] === n) {
t.splice(e, 1);
break
}
}]
}()) {
const [a, o] = i;
if (null == t || ["number", "boolean", "string"].includes(typeof t) && !Number.isNaN(t)) return t;
const s = function(e, t) {
try {
if ("domain" === e && t && "object" === typeof t && t._events) return "[Domain]";
if ("domainEmitter" === e) return "[DomainEmitter]";
if ("undefined" !== typeof global && t === global) return "[Global]";
if ("undefined" !== typeof window && t === window) return "[Window]";
if ("undefined" !== typeof document && t === document) return "[Document]";
if (Vt(t)) return "[VueViewModel]";
if (Mt(n = t) && "nativeEvent" in n && "preventDefault" in n && "stopPropagation" in n) return "[SyntheticEvent]";
if ("number" === typeof t && t !== t) return "[NaN]";
if ("function" === typeof t) return `[Function: ${Hn(t)}]`;
if ("symbol" === typeof t) return `[${String(t)}]`;
if ("bigint" === typeof t) return `[BigInt: ${String(t)}]`;
const r = function(e) {
const t = Object.getPrototypeOf(e);
return t ? t.constructor.name : "null prototype"
}(t);
return /^HTML(\w*)Element$/.test(r) ? `[HTMLElement: ${r}]` : `[object ${r}]`
} catch (r) {
return `**non-serializable** (${r})`
}
var n
}(e, t);
if (!s.startsWith("[object ")) return s;
if (t.__sentry_skip_normalization__) return t;
const l = "number" === typeof t.__sentry_override_normalization_depth__ ? t.__sentry_override_normalization_depth__ : n;
if (0 === l) return s.replace("object ", "");
if (a(t)) return "[Circular ~]";
const c = t;
if (c && "function" === typeof c.toJSON) try {
return Zn("", c.toJSON(), l - 1, r, i)
} catch (h) {}
const u = Array.isArray(t) ? [] : {};
let d = 0;
const p = on(t);
for (const f in p) {
if (!Object.prototype.hasOwnProperty.call(p, f)) continue;
if (d >= r) {
u[f] = "[MaxProperties ~]";
break
}
const e = p[f];
u[f] = Zn(f, e, l - 1, r, i), d++
}
return o(t), u
}
var Xn;
function Jn(e) {
return new tr((t => {
t(e)
}))
}
function er(e) {
return new tr(((t, n) => {
n(e)
}))
}! function(e) {
e[e.PENDING = 0] = "PENDING";
e[e.RESOLVED = 1] = "RESOLVED";
e[e.REJECTED = 2] = "REJECTED"
}(Xn || (Xn = {}));
class tr {
constructor(e) {
tr.prototype.__init.call(this), tr.prototype.__init2.call(this), tr.prototype.__init3.call(this), tr.prototype.__init4.call(this), this._state = Xn.PENDING, this._handlers = [];
try {
e(this._resolve, this._reject)
} catch (t) {
this._reject(t)
}
}
then(e, t) {
return new tr(((n, r) => {
this._handlers.push([!1, t => {
if (e) try {
n(e(t))
} catch (i) {
r(i)
} else n(t)
}, e => {
if (t) try {
n(t(e))
} catch (i) {
r(i)
} else r(e)
}]), this._executeHandlers()
}))
} catch (e) {
return this.then((e => e), e)
} finally(e) {
return new tr(((t, n) => {
let r, i;
return this.then((t => {
i = !1, r = t, e && e()
}), (t => {
i = !0, r = t, e && e()
})).then((() => {
i ? n(r) : t(r)
}))
}))
}
__init() {
this._resolve = e => {
this._setResult(Xn.RESOLVED, e)
}
}
__init2() {
this._reject = e => {
this._setResult(Xn.REJECTED, e)
}
}
__init3() {
this._setResult = (e, t) => {
this._state === Xn.PENDING && (Ft(t) ? t.then(this._resolve, this._reject) : (this._state = e, this._value = t, this._executeHandlers()))
}
}
__init4() {
this._executeHandlers = () => {
if (this._state === Xn.PENDING) return;
const e = this._handlers.slice();
this._handlers = [], e.forEach((e => {
e[0] || (this._state === Xn.RESOLVED && e[1](this._value), this._state === Xn.REJECTED && e[2](this._value), e[0] = !0)
}))
}
}
}
const nr = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__;
function rr(e, t, n, r = 0) {
return new tr(((i, a) => {
const o = e[r];
if (null === t || "function" !== typeof o) i(t);
else {
const s = o({
...t
}, n);
nr && o.id && null === s && Qt.log(`Event processor "${o.id}" dropped event`), Ft(s) ? s.then((t => rr(e, t, n, r + 1).then(i))).then(null, a) : rr(e, s, n, r + 1).then(i).then(null, a)
}
}))
}
const ir = "baggage",
ar = "sentry-",
or = /^sentry-/;
function sr(e) {
const t = function(e) {
if (!e || !Dt(e) && !Array.isArray(e)) return;
if (Array.isArray(e)) return e.reduce(((e, t) => {
const n = cr(t);
return Object.entries(n).forEach((([t, n]) => {
e[t] = n
})), e
}), {});
return cr(e)
}(e);
if (!t) return;
const n = Object.entries(t).reduce(((e, [t, n]) => {
if (t.match(or)) {
e[t.slice(ar.length)] = n
}
return e
}), {});
return Object.keys(n).length > 0 ? n : void 0
}
function lr(e) {
if (!e) return;
return function(e) {
if (0 === Object.keys(e).length) return;
return Object.entries(e).reduce(((e, [t, n], r) => {
const i = `${encodeURIComponent(t)}=${encodeURIComponent(n)}`,
a = 0 === r ? i : `${e},${i}`;
return a.length > 8192 ? (qt && Qt.warn(`Not adding key: ${t} with val: ${n} to baggage header due to exceeding baggage size limits.`), e) : a
}), "")
}(Object.entries(e).reduce(((e, [t, n]) => (n && (e[`${ar}${t}`] = n), e)), {}))
}
function cr(e) {
return e.split(",").map((e => e.split("=").map((e => decodeURIComponent(e.trim()))))).reduce(((e, [t, n]) => (t && n && (e[t] = n), e)), {})
}
const ur = "sentry.source",
dr = "sentry.sample_rate",
pr = "sentry.op",
hr = "sentry.origin",
fr = "sentry.idle_span_finish_reason",
mr = "sentry.measurement_unit",
gr = "sentry.measurement_value",
vr = "sentry.exclusive_time",
yr = new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");
function _r(e, t) {
const n = function(e) {
if (!e) return;
const t = e.match(yr);
if (!t) return;
let n;
return "1" === t[3] ? n = !0 : "0" === t[3] && (n = !1), {
traceId: t[1],
parentSampled: n,
parentSpanId: t[2]
}
}(e),
r = sr(t),
{
traceId: i,
parentSpanId: a,
parentSampled: o
} = n || {};
return n ? {
traceId: i || dn(),
parentSpanId: a || dn().substring(16),
spanId: dn().substring(16),
sampled: o,
dsc: r || {}
} : {
traceId: i || dn(),
spanId: dn().substring(16)
}
}
function br(e = dn(), t = dn().substring(16), n) {
let r = "";
return void 0 !== n && (r = n ? "-1" : "-0"), `${e}-${t}${r}`
}
const xr = "_sentryMetrics";
function kr(e) {
const t = e[xr];
if (!t) return;
const n = {};
for (const [, [r, i]] of t) {
(n[r] || (n[r] = [])).push(cn(i))
}
return n
}
function wr(e, t) {
e.setAttribute("http.response.status_code", t);
const n = function(e) {
if (e < 400 && e >= 100) return {
code: 1
};
if (e >= 400 && e < 500) switch (e) {
case 401:
return {
code: 2, message: "unauthenticated"
};
case 403:
return {
code: 2, message: "permission_denied"
};
case 404:
return {
code: 2, message: "not_found"
};
case 409:
return {
code: 2, message: "already_exists"
};
case 413:
return {
code: 2, message: "failed_precondition"
};
case 429:
return {
code: 2, message: "resource_exhausted"
};
case 499:
return {
code: 2, message: "cancelled"
};
default:
return {
code: 2, message: "invalid_argument"
}
}
if (e >= 500 && e < 600) switch (e) {
case 501:
return {
code: 2, message: "unimplemented"
};
case 503:
return {
code: 2, message: "unavailable"
};
case 504:
return {
code: 2, message: "deadline_exceeded"
};
default:
return {
code: 2, message: "internal_error"
}
}
return {
code: 2,
message: "unknown_error"
}
}(t);
"unknown_error" !== n.message && e.setStatus(n)
}
function Sr(e) {
const {
spanId: t,
traceId: n
} = e.spanContext(), {
data: r,
op: i,
parent_span_id: a,
status: o,
origin: s
} = Ar(e);
return cn({
parent_span_id: a,
span_id: t,
trace_id: n,
data: r,
op: i,
status: o,
origin: s
})
}
function Er(e) {
const {
spanId: t,
traceId: n
} = e.spanContext(), {
parent_span_id: r
} = Ar(e);
return cn({
parent_span_id: r,
span_id: t,
trace_id: n
})
}
function Ir(e) {
const {
traceId: t,
spanId: n
} = e.spanContext();
return br(t, n, Pr(e))
}
function Or(e) {
return "number" === typeof e ? Cr(e) : Array.isArray(e) ? e[0] + e[1] / 1e9 : e instanceof Date ? Cr(e.getTime()) : bn()
}
function Cr(e) {
return e > 9999999999 ? e / 1e3 : e
}
function Ar(e) {
if (function(e) {
return "function" === typeof e.getSpanJSON
}(e)) return e.getSpanJSON();
try {
const {
spanId: t,
traceId: n
} = e.spanContext();
if (function(e) {
const t = e;
return !!t.attributes && !!t.startTime && !!t.name && !!t.endTime && !!t.status
}(e)) {
const {
attributes: r,
startTime: i,
name: a,
endTime: o,
parentSpanId: s,
status: l
} = e;
return cn({
span_id: t,
trace_id: n,
data: r,
description: a,
parent_span_id: s,
start_timestamp: Or(i),
timestamp: Or(o) || void 0,
status: Tr(l),
op: r[pr],
origin: r[hr],
_metrics_summary: kr(e)
})
}
return {
span_id: t,
trace_id: n
}
} catch (t) {
return {}
}
}
function Pr(e) {
const {
traceFlags: t
} = e.spanContext();
return 1 === t
}
function Tr(e) {
if (e && 0 !== e.code) return 1 === e.code ? "ok" : e.message || "unknown_error"
}
const Rr = "_sentryChildSpans",
Dr = "_sentryRootSpan";
function Lr(e, t) {
const n = e[Dr] || e;
nn(t, Dr, n), e[Rr] ? e[Rr].add(t) : nn(e, Rr, new Set([t]))
}
function Nr(e) {
const t = new Set;
return function e(n) {
if (!t.has(n) && Pr(n)) {
t.add(n);
const r = n[Rr] ? Array.from(n[Rr]) : [];
for (const t of r) e(t)
}
}(e), Array.from(t)
}
function Mr(e) {
return e[Dr] || e
}
function jr() {
const e = Nn(It());
return e.getActiveSpan ? e.getActiveSpan() : On(Mn())
}
const Fr = "_frozenDsc";
function zr(e, t) {
nn(e, Fr, t)
}
function Vr(e, t) {
const n = t.getOptions(),
{
publicKey: r
} = t.getDsn() || {},
i = cn({
environment: n.environment || Et,
release: n.release,
public_key: r,
trace_id: e
});
return t.emit("createDsc", i), i
}
function Ur(e) {
const t = zn();
if (!t) return {};
const n = Vr(Ar(e).trace_id || "", t),
r = Mr(e),
i = r[Fr];
if (i) return i;
const a = r.spanContext().traceState,
o = a && a.get("sentry.dsc"),
s = o && sr(o);
if (s) return s;
const l = Ar(r),
c = l.data || {},
u = c[dr];
null != u && (n.sample_rate = `${u}`);
const d = c[ur],
p = l.description;
return "url" !== d && p && (n.transaction = p), n.sampled = String(Pr(r)), t.emit("createDsc", n, r), n
}
function Br(e, t) {
const {
fingerprint: n,
span: r,
breadcrumbs: i,
sdkProcessingMetadata: a
} = t;
! function(e, t) {
const {
extra: n,
tags: r,
user: i,
contexts: a,
level: o,
transactionName: s
} = t, l = cn(n);
l && Object.keys(l).length && (e.extra = {
...l,
...e.extra
});
const c = cn(r);
c && Object.keys(c).length && (e.tags = {
...c,
...e.tags
});
const u = cn(i);
u && Object.keys(u).length && (e.user = {
...u,
...e.user
});
const d = cn(a);
d && Object.keys(d).length && (e.contexts = {
...d,
...e.contexts
});
o && (e.level = o);
s && "transaction" !== e.type && (e.transaction = s)
}(e, t), r && function(e, t) {
e.contexts = {
trace: Er(t),
...e.contexts
}, e.sdkProcessingMetadata = {
dynamicSamplingContext: Ur(t),
...e.sdkProcessingMetadata
};
const n = Mr(t),
r = Ar(n).description;
r && !e.transaction && "transaction" === e.type && (e.transaction = r)
}(e, r),
function(e, t) {
e.fingerprint = e.fingerprint ? vn(e.fingerprint) : [], t && (e.fingerprint = e.fingerprint.concat(t));
e.fingerprint && !e.fingerprint.length && delete e.fingerprint
}(e, n),
function(e, t) {
const n = [...e.breadcrumbs || [], ...t];
e.breadcrumbs = n.length ? n : void 0
}(e, i),
function(e, t) {
e.sdkProcessingMetadata = {
...e.sdkProcessingMetadata,
...t
}
}(e, a)
}
function Gr(e, t) {
const {
extra: n,
tags: r,
user: i,
contexts: a,
level: o,
sdkProcessingMetadata: s,
breadcrumbs: l,
fingerprint: c,
eventProcessors: u,
attachments: d,
propagationContext: p,
transactionName: h,
span: f
} = t;
Wr(e, "extra", n), Wr(e, "tags", r), Wr(e, "user", i), Wr(e, "contexts", a), Wr(e, "sdkProcessingMetadata", s), o && (e.level = o), h && (e.transactionName = h), f && (e.span = f), l.length && (e.breadcrumbs = [...e.breadcrumbs, ...l]), c.length && (e.fingerprint = [...e.fingerprint, ...c]), u.length && (e.eventProcessors = [...e.eventProcessors, ...u]), d.length && (e.attachments = [...e.attachments, ...d]), e.propagationContext = {
...e.propagationContext,
...p
}
}
function Wr(e, t, n) {
if (n && Object.keys(n).length) {
e[t] = {
...e[t]
};
for (const r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[t][r] = n[r])
}
}
function $r(e, t, n, r, i, a) {
const {
normalizeDepth: o = 3,
normalizeMaxBreadth: s = 1e3
} = e, l = {
...t,
event_id: t.event_id || n.event_id || dn(),
timestamp: t.timestamp || _n()
}, c = n.integrations || e.integrations.map((e => e.name));
! function(e, t) {
const {
environment: n,
release: r,
dist: i,
maxValueLength: a = 250
} = t;
"environment" in e || (e.environment = "environment" in t ? n : Et);
void 0 === e.release && void 0 !== r && (e.release = r);
void 0 === e.dist && void 0 !== i && (e.dist = i);
e.message && (e.message = Zt(e.message, a));
const o = e.exception && e.exception.values && e.exception.values[0];
o && o.value && (o.value = Zt(o.value, a));
const s = e.request;
s && s.url && (s.url = Zt(s.url, a))
}(l, e),
function(e, t) {
t.length > 0 && (e.sdk = e.sdk || {}, e.sdk.integrations = [...e.sdk.integrations || [], ...t])
}(l, c), i && i.emit("applyFrameMetadata", t), void 0 === t.type && function(e, t) {
const n = wt._sentryDebugIds;
if (!n) return;
let r;
const i = qr.get(t);
i ? r = i : (r = new Map, qr.set(t, r));
const a = Object.entries(n).reduce(((e, [n, i]) => {
let a;
const o = r.get(n);
o ? a = o : (a = t(n), r.set(n, a));
for (let t = a.length - 1; t >= 0; t--) {
const n = a[t];
if (n.filename) {
e[n.filename] = i;
break
}
}
return e
}), {});
try {
e.exception.values.forEach((e => {
e.stacktrace.frames.forEach((e => {
e.filename && (e.debug_id = a[e.filename])
}))
}))
} catch (o) {}
}(l, e.stackParser);
const u = function(e, t) {
if (!t) return e;
const n = e ? e.clone() : new An;
return n.update(t), n
}(r, n.captureContext);
n.mechanism && mn(l, n.mechanism);
const d = i ? i.getEventProcessors() : [],
p = St("globalScope", (() => new An)).getScopeData();
if (a) {
Gr(p, a.getScopeData())
}
if (u) {
Gr(p, u.getScopeData())
}
const h = [...n.attachments || [], ...p.attachments];
h.length && (n.attachments = h), Br(l, p);
return rr([...d, ...p.eventProcessors], l, n).then((e => (e && function(e) {
const t = {};
try {
e.exception.values.forEach((e => {
e.stacktrace.frames.forEach((e => {
e.debug_id && (e.abs_path ? t[e.abs_path] = e.debug_id : e.filename && (t[e.filename] = e.debug_id), delete e.debug_id)
}))
}))
} catch (r) {}
if (0 === Object.keys(t).length) return;
e.debug_meta = e.debug_meta || {}, e.debug_meta.images = e.debug_meta.images || [];
const n = e.debug_meta.images;
Object.entries(t).forEach((([e, t]) => {
n.push({
type: "sourcemap",
code_file: e,
debug_id: t
})
}))
}(e), "number" === typeof o && o > 0 ? function(e, t, n) {
if (!e) return null;
const r = {
...e,
...e.breadcrumbs && {
breadcrumbs: e.breadcrumbs.map((e => ({
...e,
...e.data && {
data: Yn(e.data, t, n)
}
})))
},
...e.user && {
user: Yn(e.user, t, n)
},
...e.contexts && {
contexts: Yn(e.contexts, t, n)
},
...e.extra && {
extra: Yn(e.extra, t, n)
}
};
e.contexts && e.contexts.trace && r.contexts && (r.contexts.trace = e.contexts.trace, e.contexts.trace.data && (r.contexts.trace.data = Yn(e.contexts.trace.data, t, n)));
e.spans && (r.spans = e.spans.map((e => ({
...e,
...e.data && {
data: Yn(e.data, t, n)
}
}))));
return r
}(e, o, s) : e)))
}
const qr = new WeakMap;
function Hr(e) {
if (e) return function(e) {
return e instanceof An || "function" === typeof e
}(e) || function(e) {
return Object.keys(e).some((e => Kr.includes(e)))
}(e) ? {
captureContext: e
} : e
}
const Kr = ["user", "level", "extra", "contexts", "tags", "fingerprint", "requestSession", "propagationContext"];
function Yr(e, t) {
return Mn().captureException(e, Hr(t))
}
function Qr(e, t) {
return Mn().captureEvent(e, t)
}
function Zr(e, t) {
jn().setContext(e, t)
}
function Xr(e) {
const t = zn(),
n = jn(),
r = Mn(),
{
release: i,
environment: a = Et
} = t && t.getOptions() || {},
{
userAgent: o
} = wt.navigator || {},
s = wn({
release: i,
environment: a,
user: r.getUser() || n.getUser(),
...o && {
userAgent: o
},
...e
}),
l = n.getSession();
return l && "ok" === l.status && Sn(l, {
status: "exited"
}), Jr(), n.setSession(s), r.setSession(s), s
}
function Jr() {
const e = jn(),
t = Mn(),
n = t.getSession() || e.getSession();
n && function(e, t) {
let n = {};
t ? n = {
status: t
} : "ok" === e.status && (n = {
status: "exited"
}), Sn(e, n)
}(n), ei(), e.setSession(), t.setSession()
}
function ei() {
const e = jn(),
t = Mn(),
n = zn(),
r = t.getSession() || e.getSession();
r && n && n.captureSession(r)
}
function ti(e = !1) {
e ? Jr() : ei()
}
const ni = [];
function ri(e) {
const t = e.defaultIntegrations || [],
n = e.integrations;
let r;
t.forEach((e => {
e.isDefaultInstance = !0
})), r = Array.isArray(n) ? [...t, ...n] : "function" === typeof n ? vn(n(t)) : t;
const i = function(e) {
const t = {};
return e.forEach((e => {
const {
name: n
} = e, r = t[n];
r && !r.isDefaultInstance && e.isDefaultInstance || (t[n] = e)
})), Object.values(t)
}(r),
a = i.findIndex((e => "Debug" === e.name));
if (a > -1) {
const [e] = i.splice(a, 1);
i.push(e)
}
return i
}
function ii(e, t) {
for (const n of t) n && n.afterAllSetup && n.afterAllSetup(e)
}
function ai(e, t, n) {
if (n[t.name]) nr && Qt.log(`Integration skipped because it was already installed: ${t.name}`);
else {
if (n[t.name] = t, -1 === ni.indexOf(t.name) && "function" === typeof t.setupOnce && (t.setupOnce(), ni.push(t.name)), t.setup && "function" === typeof t.setup && t.setup(e), "function" === typeof t.preprocessEvent) {
const n = t.preprocessEvent.bind(t);
e.on("preprocessEvent", ((t, r) => n(t, r, e)))
}
if ("function" === typeof t.processEvent) {
const n = t.processEvent.bind(t),
r = Object.assign(((t, r) => n(t, r, e)), {
id: t.name
});
e.addEventProcessor(r)
}
nr && Qt.log(`Integration installed: ${t.name}`)
}
}
const oi = [/^Script error\.?$/, /^Javascript error: Script error\.? on line 0$/, /^ResizeObserver loop completed with undelivered notifications.$/, /^Cannot redefine property: googletag$/, "undefined is not an object (evaluating 'a.L')", 'can\'t redefine non-configurable property "solana"', "vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)", "Can't find variable: _AutofillCallbackHandler"],
si = (e = {}) => ({
name: "InboundFilters",
processEvent(t, n, r) {
const i = r.getOptions(),
a = function(e = {}, t = {}) {
return {
allowUrls: [...e.allowUrls || [], ...t.allowUrls || []],
denyUrls: [...e.denyUrls || [], ...t.denyUrls || []],
ignoreErrors: [...e.ignoreErrors || [], ...t.ignoreErrors || [], ...e.disableErrorDefaults ? [] : oi],
ignoreTransactions: [...e.ignoreTransactions || [], ...t.ignoreTransactions || []],
ignoreInternal: void 0 === e.ignoreInternal || e.ignoreInternal
}
}(e, i);
return function(e, t) {
if (t.ignoreInternal && function(e) {
try {
return "SentryError" === e.exception.values[0].type
} catch (t) {}
return !1
}(e)) return nr && Qt.warn(`Event dropped due to being internal Sentry Error.\nEvent: ${hn(e)}`), !0;
if (function(e, t) {
if (e.type || !t || !t.length) return !1;
return function(e) {
const t = [];
e.message && t.push(e.message);
let n;
try {
n = e.exception.values[e.exception.values.length - 1]
} catch (r) {}
n && n.value && (t.push(n.value), n.type && t.push(`${n.type}: ${n.value}`));
return t
}(e).some((e => en(e, t)))
}(e, t.ignoreErrors)) return nr && Qt.warn(`Event dropped due to being matched by \`ignoreErrors\` option.\nEvent: ${hn(e)}`), !0;
if (function(e) {
if (e.type) return !1;
if (!e.exception || !e.exception.values || 0 === e.exception.values.length) return !1;
return !e.message && !e.exception.values.some((e => e.stacktrace || e.type && "Error" !== e.type || e.value))
}(e)) return nr && Qt.warn(`Event dropped due to not having an error message, error type or stacktrace.\nEvent: ${hn(e)}`), !0;
if (function(e, t) {
if ("transaction" !== e.type || !t || !t.length) return !1;
const n = e.transaction;
return !!n && en(n, t)
}(e, t.ignoreTransactions)) return nr && Qt.warn(`Event dropped due to being matched by \`ignoreTransactions\` option.\nEvent: ${hn(e)}`), !0;
if (function(e, t) {
if (!t || !t.length) return !1;
const n = li(e);
return !!n && en(n, t)
}(e, t.denyUrls)) return nr && Qt.warn(`Event dropped due to being matched by \`denyUrls\` option.\nEvent: ${hn(e)}.\nUrl: ${li(e)}`), !0;
if (! function(e, t) {
if (!t || !t.length) return !0;
const n = li(e);
return !n || en(n, t)
}(e, t.allowUrls)) return nr && Qt.warn(`Event dropped due to not being matched by \`allowUrls\` option.\nEvent: ${hn(e)}.\nUrl: ${li(e)}`), !0;
return !1
}(t, a) ? null : t
}
});
function li(e) {
try {
let n;
try {
n = e.exception.values[0].stacktrace.frames
} catch (t) {}
return n ? function(e = []) {
for (let t = e.length - 1; t >= 0; t--) {
const n = e[t];
if (n && "<anonymous>" !== n.filename && "[native code]" !== n.filename) return n.filename || null
}
return null
}(n) : null
} catch (ip) {
return nr && Qt.error(`Cannot extract url for event ${hn(e)}`), null
}
}
let ci;
const ui = new WeakMap,
di = () => ({
name: "FunctionToString",
setupOnce() {
ci = Function.prototype.toString;
try {
Function.prototype.toString = function(...e) {
const t = an(this),
n = ui.has(zn()) && void 0 !== t ? t : this;
return ci.apply(n, e)
}
} catch (e) {}
},
setup(e) {
ui.set(e, !0)
}
}),
pi = () => {
let e;
return {
name: "Dedupe",
processEvent(t) {
if (t.type) return t;
try {
if (function(e, t) {
if (!t) return !1;
if (function(e, t) {
const n = e.message,
r = t.message;
if (!n && !r) return !1;
if (n && !r || !n && r) return !1;
if (n !== r) return !1;
if (!fi(e, t)) return !1;
if (!hi(e, t)) return !1;
return !0
}(e, t)) return !0;
if (function(e, t) {
const n = mi(t),
r = mi(e);
if (!n || !r) return !1;
if (n.type !== r.type || n.value !== r.value) return !1;
if (!fi(e, t)) return !1;
if (!hi(e, t)) return !1;
return !0
}(e, t)) return !0;
return !1
}(t, e)) return nr && Qt.warn("Event dropped due to being a duplicate of previously captured event."), null
} catch (n) {}
return e = t
}
}
};
function hi(e, t) {
let n = Kn(e),
r = Kn(t);
if (!n && !r) return !0;
if (n && !r || !n && r) return !1;
if (r.length !== n.length) return !1;
for (let i = 0; i < r.length; i++) {
const e = r[i],
t = n[i];
if (e.filename !== t.filename || e.lineno !== t.lineno || e.colno !== t.colno || e.function !== t.function) return !1
}
return !0
}
function fi(e, t) {
let n = e.fingerprint,
r = t.fingerprint;
if (!n && !r) return !0;
if (n && !r || !n && r) return !1;
try {
return !(n.join("") !== r.join(""))
} catch (i) {
return !1
}
}
function mi(e) {
return e.exception && e.exception.values && e.exception.values[0]
}
function gi(e, t) {
!0 === t.debug && (nr ? Qt.enable() : Yt((() => {
console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")
})));
Mn().update(t.initialScope);
const n = new e(t);
return function(e) {
Mn().setClient(e)
}(n), n.init(), n
}
const vi = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;
function yi(e, t = !1) {
const {
host: n,
path: r,
pass: i,
port: a,
projectId: o,
protocol: s,
publicKey: l
} = e;
return `${s}://${l}${t&&i?`:${i}`:""}@${n}${a?`:${a}`:""}/${r?`${r}/`:r}${o}`
}
function _i(e) {
return {
protocol: e.protocol,
publicKey: e.publicKey || "",
pass: e.pass || "",
host: e.host,
port: e.port || "",
path: e.path || "",
projectId: e.projectId
}
}
function bi(e) {
const t = "string" === typeof e ? function(e) {
const t = vi.exec(e);
if (!t) return void Yt((() => {
console.error(`Invalid Sentry Dsn: ${e}`)
}));
const [n, r, i = "", a = "", o = "", s = ""] = t.slice(1);
let l = "",
c = s;
const u = c.split("/");
if (u.length > 1 && (l = u.slice(0, -1).join("/"), c = u.pop()), c) {
const e = c.match(/^\d+/);
e && (c = e[0])
}
return _i({
host: a,
pass: i,
path: l,
projectId: c,
port: o,
protocol: n,
publicKey: r
})
}(e) : _i(e);
if (t && function(e) {
if (!qt) return !0;
const {
port: t,
projectId: n,
protocol: r
} = e;
return !["protocol", "publicKey", "host", "projectId"].find((t => !e[t] && (Qt.error(`Invalid Sentry Dsn: ${t} missing`), !0))) && (n.match(/^\d+$/) ? function(e) {
return "http" === e || "https" === e
}(r) ? !t || !isNaN(parseInt(t, 10)) || (Qt.error(`Invalid Sentry Dsn: Invalid port ${t}`), !1) : (Qt.error(`Invalid Sentry Dsn: Invalid protocol ${r}`), !1) : (Qt.error(`Invalid Sentry Dsn: Invalid projectId ${n}`), !1))
}(t)) return t
}
function xi(e) {
const t = e.protocol ? `${e.protocol}:` : "",
n = e.port ? `:${e.port}` : "";
return `${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`
}
function ki(e, t) {
return n = {
sentry_key: e.publicKey,
sentry_version: "7",
...t && {
sentry_client: `${t.name}/${t.version}`
}
}, Object.keys(n).map((e => `${encodeURIComponent(e)}=${encodeURIComponent(n[e])}`)).join("&");
var n
}
function wi(e, t, n) {
return t || `${function(e){return`${xi(e)}${e.projectId}/envelope/`}(e)}?${ki(e,n)}`
}
const Si = wt;
function Ei() {
if (!("fetch" in Si)) return !1;
try {
return new Headers, new Request("http://www.example.com"), new Response, !0
} catch (e) {
return !1
}
}
function Ii(e) {
return e && /^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())
}
const Oi = {},
Ci = {};
function Ai(e, t) {
Oi[e] = Oi[e] || [], Oi[e].push(t)
}
function Pi(e, t) {
Ci[e] || (t(), Ci[e] = !0)
}
function Ti(e, t) {
const n = e && Oi[e];
if (n)
for (const i of n) try {
i(t)
} catch (r) {
qt && Qt.error(`Error while triggering instrumentation handler.\nType: ${e}\nName: ${Hn(i)}\nError:`, r)
}
}
const Ri = wt;
const Di = wt;
let Li;
function Ni(e) {
const t = "history";
Ai(t, e), Pi(t, Mi)
}
function Mi() {
if (! function() {
const e = Ri.chrome,
t = e && e.app && e.app.runtime,
n = "history" in Ri && !!Ri.history.pushState && !!Ri.history.replaceState;
return !t && n
}()) return;
const e = Di.onpopstate;
function t(e) {
return function(...t) {
const n = t.length > 2 ? t[2] : void 0;
if (n) {
const e = Li,
t = String(n);
Li = t;
Ti("history", {
from: e,
to: t
})
}
return e.apply(this, t)
}
}
Di.onpopstate = function(...t) {
const n = Di.location.href,
r = Li;
Li = n;
if (Ti("history", {
from: r,
to: n
}), e) try {
return e.apply(this, t)
} catch (i) {}
}, tn(Di.history, "pushState", t), tn(Di.history, "replaceState", t)
}
function ji(e, t = []) {
return [e, t]
}
function Fi(e, t) {
const [n, r] = e;
return [n, [...r, t]]
}
function zi(e, t) {
const n = e[1];
for (const r of n) {
if (t(r, r[0].type)) return !0
}
return !1
}
function Vi(e) {
return wt.__SENTRY__ && wt.__SENTRY__.encodePolyfill ? wt.__SENTRY__.encodePolyfill(e) : (new TextEncoder).encode(e)
}
function Ui(e) {
const [t, n] = e;
let r = JSON.stringify(t);
function i(e) {
"string" === typeof r ? r = "string" === typeof e ? r + e : [Vi(r), e] : r.push("string" === typeof e ? Vi(e) : e)
}
for (const o of n) {
const [e, t] = o;
if (i(`\n${JSON.stringify(e)}\n`), "string" === typeof t || t instanceof Uint8Array) i(t);
else {
let e;
try {
e = JSON.stringify(t)
} catch (a) {
e = JSON.stringify(Yn(t))
}
i(e)
}
}
return "string" === typeof r ? r : function(e) {
const t = e.reduce(((e, t) => e + t.length), 0),
n = new Uint8Array(t);
let r = 0;
for (const i of e) n.set(i, r), r += i.length;
return n
}(r)
}
function Bi(e) {
return [{
type: "span"
}, e]
}
function Gi(e) {
const t = "string" === typeof e.data ? Vi(e.data) : e.data;
return [cn({
type: "attachment",
length: t.length,
filename: e.filename,
content_type: e.contentType,
attachment_type: e.attachmentType
}), t]
}
const Wi = {
session: "session",
sessions: "session",
attachment: "attachment",
transaction: "transaction",
event: "error",
client_report: "internal",
user_report: "default",
profile: "profile",
profile_chunk: "profile",
replay_event: "replay",
replay_recording: "replay",
check_in: "monitor",
feedback: "feedback",
span: "span",
statsd: "metric_bucket"
};
function $i(e) {
return Wi[e]
}
function qi(e) {
if (!e || !e.sdk) return;
const {
name: t,
version: n
} = e.sdk;
return {
name: t,
version: n
}
}
function Hi(e, t, n, r) {
const i = e.sdkProcessingMetadata && e.sdkProcessingMetadata.dynamicSamplingContext;
return {
event_id: e.event_id,
sent_at: (new Date).toISOString(),
...t && {
sdk: t
},
...!!n && r && {
dsn: yi(r)
},
...i && {
trace: cn({
...i
})
}
}
}
class Ki extends Error {
constructor(e, t = "warn") {
super(e), this.message = e, this.name = new.target.prototype.constructor.name, Object.setPrototypeOf(this, new.target.prototype), this.logLevel = t
}
}
function Yi(e) {
if ("boolean" === typeof e) return Number(e);
const t = "string" === typeof e ? parseFloat(e) : e;
if (!("number" !== typeof t || isNaN(t) || t < 0 || t > 1)) return t;
nr && Qt.warn(`[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(e)} of type ${JSON.stringify(typeof e)}.`)
}
const Qi = "Not capturing exception because it's already been captured.";
class Zi {
constructor(e) {
if (this._options = e, this._integrations = {}, this._numProcessing = 0, this._outcomes = {}, this._hooks = {}, this._eventProcessors = [], e.dsn ? this._dsn = bi(e.dsn) : nr && Qt.warn("No DSN provided, client will not send events."), this._dsn) {
const t = wi(this._dsn, e.tunnel, e._metadata ? e._metadata.sdk : void 0);
this._transport = e.transport({
tunnel: this._options.tunnel,
recordDroppedEvent: this.recordDroppedEvent.bind(this),
...e.transportOptions,
url: t
})
}
}
captureException(e, t, n) {
const r = dn();
if (gn(e)) return nr && Qt.log(Qi), r;
const i = {
event_id: r,
...t
};
return this._process(this.eventFromException(e, i).then((e => this._captureEvent(e, i, n)))), i.event_id
}
captureMessage(e, t, n, r) {
const i = {
event_id: dn(),
...n
},
a = Lt(e) ? e : String(e),
o = Nt(e) ? this.eventFromMessage(a, t, i) : this.eventFromException(e, i);
return this._process(o.then((e => this._captureEvent(e, i, r)))), i.event_id
}
captureEvent(e, t, n) {
const r = dn();
if (t && t.originalException && gn(t.originalException)) return nr && Qt.log(Qi), r;
const i = {
event_id: r,
...t
},
a = (e.sdkProcessingMetadata || {}).capturedSpanScope;
return this._process(this._captureEvent(e, i, a || n)), i.event_id
}
captureSession(e) {
"string" !== typeof e.release ? nr && Qt.warn("Discarded session because of missing or non-string release") : (this.sendSession(e), Sn(e, {
init: !1
}))
}
getDsn() {
return this._dsn
}
getOptions() {
return this._options
}
getSdkMetadata() {
return this._options._metadata
}
getTransport() {
return this._transport
}
flush(e) {
const t = this._transport;
return t ? (this.emit("flush"), this._isClientDoneProcessing(e).then((n => t.flush(e).then((e => n && e))))) : Jn(!0)
}
close(e) {
return this.flush(e).then((e => (this.getOptions().enabled = !1, this.emit("close"), e)))
}
getEventProcessors() {
return this._eventProcessors
}
addEventProcessor(e) {
this._eventProcessors.push(e)
}
init() {
this._isEnabled() && this._setupIntegrations()
}
getIntegrationByName(e) {
return this._integrations[e]
}
addIntegration(e) {
const t = this._integrations[e.name];
ai(this, e, this._integrations), t || ii(this, [e])
}
sendEvent(e, t = {}) {
this.emit("beforeSendEvent", e, t);
let n = function(e, t, n, r) {
const i = qi(n),
a = e.type && "replay_event" !== e.type ? e.type : "event";
! function(e, t) {
t && (e.sdk = e.sdk || {}, e.sdk.name = e.sdk.name || t.name, e.sdk.version = e.sdk.version || t.version, e.sdk.integrations = [...e.sdk.integrations || [], ...t.integrations || []], e.sdk.packages = [...e.sdk.packages || [], ...t.packages || []])
}(e, n && n.sdk);
const o = Hi(e, i, r, t);
return delete e.sdkProcessingMetadata, ji(o, [
[{
type: a
}, e]
])
}(e, this._dsn, this._options._metadata, this._options.tunnel);
for (const i of t.attachments || []) n = Fi(n, Gi(i));
const r = this.sendEnvelope(n);
r && r.then((t => this.emit("afterSendEvent", e, t)), null)
}
sendSession(e) {
const t = function(e, t, n, r) {
const i = qi(n);
return ji({
sent_at: (new Date).toISOString(),
...i && {
sdk: i
},
...!!r && t && {
dsn: yi(t)
}
}, ["aggregates" in e ? [{
type: "sessions"
}, e] : [{
type: "session"
}, e.toJSON()]])
}(e, this._dsn, this._options._metadata, this._options.tunnel);
this.sendEnvelope(t)
}
recordDroppedEvent(e, t, n) {
if (this._options.sendClientReports) {
const n = `${e}:${t}`;
nr && Qt.log(`Adding outcome: "${n}"`), this._outcomes[n] = (this._outcomes[n] || 0) + 1
}
}
on(e, t) {
const n = this._hooks[e] = this._hooks[e] || [];
return n.push(t), () => {
const e = n.indexOf(t);
e > -1 && n.splice(e, 1)
}
}
emit(e, ...t) {
const n = this._hooks[e];
n && n.forEach((e => e(...t)))
}
sendEnvelope(e) {
return this.emit("beforeEnvelope", e), this._isEnabled() && this._transport ? this._transport.send(e).then(null, (e => (nr && Qt.error("Error while sending event:", e), e))) : (nr && Qt.error("Transport disabled"), Jn({}))
}
_setupIntegrations() {
const {
integrations: e
} = this._options;
this._integrations = function(e, t) {
const n = {};
return t.forEach((t => {
t && ai(e, t, n)
})), n
}(this, e), ii(this, e)
}
_updateSessionFromEvent(e, t) {
let n = !1,
r = !1;
const i = t.exception && t.exception.values;
if (i) {
r = !0;
for (const e of i) {
const t = e.mechanism;
if (t && !1 === t.handled) {
n = !0;
break
}
}
}
const a = "ok" === e.status;
(a && 0 === e.errors || a && n) && (Sn(e, {
...n && {
status: "crashed"
},
errors: e.errors || Number(r || n)
}), this.captureSession(e))
}
_isClientDoneProcessing(e) {
return new tr((t => {
let n = 0;
const r = setInterval((() => {
0 == this._numProcessing ? (clearInterval(r), t(!0)) : (n += 1, e && n >= e && (clearInterval(r), t(!1)))
}), 1)
}))
}
_isEnabled() {
return !1 !== this.getOptions().enabled && void 0 !== this._transport
}
_prepareEvent(e, t, n, r = jn()) {
const i = this.getOptions(),
a = Object.keys(this._integrations);
return !t.integrations && a.length > 0 && (t.integrations = a), this.emit("preprocessEvent", e, t), e.type || r.setLastEventId(e.event_id || t.event_id), $r(i, e, t, n, this, r).then((e => {
if (null === e) return e;
const t = {
...r.getPropagationContext(),
...n ? n.getPropagationContext() : void 0
};
if (!(e.contexts && e.contexts.trace) && t) {
const {
traceId: n,
spanId: r,
parentSpanId: i,
dsc: a
} = t;
e.contexts = {
trace: cn({
trace_id: n,
span_id: r,
parent_span_id: i
}),
...e.contexts
};
const o = a || Vr(n, this);
e.sdkProcessingMetadata = {
dynamicSamplingContext: o,
...e.sdkProcessingMetadata
}
}
return e
}))
}
_captureEvent(e, t = {}, n) {
return this._processEvent(e, t, n).then((e => e.event_id), (e => {
if (nr) {
const t = e;
"log" === t.logLevel ? Qt.log(t.message) : Qt.warn(t)
}
}))
}
_processEvent(e, t, n) {
const r = this.getOptions(),
{
sampleRate: i
} = r,
a = Ji(e),
o = Xi(e),
s = e.type || "error",
l = `before send for type \`${s}\``,
c = "undefined" === typeof i ? void 0 : Yi(i);
if (o && "number" === typeof c && Math.random() > c) return this.recordDroppedEvent("sample_rate", "error", e), er(new Ki(`Discarding event because it's not included in the random sample (sampling rate = ${i})`, "log"));
const u = "replay_event" === s ? "replay" : s,
d = (e.sdkProcessingMetadata || {}).capturedSpanIsolationScope;
return this._prepareEvent(e, t, n, d).then((n => {
if (null === n) throw this.recordDroppedEvent("event_processor", u, e), new Ki("An event processor returned `null`, will not send event.", "log");
if (t.data && !0 === t.data.__sentry__) return n;
const i = function(e, t, n, r) {
const {
beforeSend: i,
beforeSendTransaction: a,
beforeSendSpan: o
} = t;
if (Xi(n) && i) return i(n, r);
if (Ji(n)) {
if (n.spans && o) {
const t = [];
for (const r of n.spans) {
const n = o(r);
n ? t.push(n) : e.recordDroppedEvent("before_send", "span")
}
n.spans = t
}
if (a) return a(n, r)
}
return n
}(this, r, n, t);
return function(e, t) {
const n = `${t} must return \`null\` or a valid event.`;
if (Ft(e)) return e.then((e => {
if (!Mt(e) && null !== e) throw new Ki(n);
return e
}), (e => {
throw new Ki(`${t} rejected with ${e}`)
}));
if (!Mt(e) && null !== e) throw new Ki(n);
return e
}(i, l)
})).then((r => {
if (null === r) {
if (this.recordDroppedEvent("before_send", u, e), Ji(e)) {
const t = 1 + (e.spans || []).length;
this._outcomes.span = (this._outcomes.span || 0) + t
}
throw new Ki(`${l} returned \`null\`, will not send event.`, "log")
}
const i = n && n.getSession();
!a && i && this._updateSessionFromEvent(i, r);
const o = r.transaction_info;
if (a && o && r.transaction !== e.transaction) {
const e = "custom";
r.transaction_info = {
...o,
source: e
}
}
return this.sendEvent(r, t), r
})).then(null, (e => {
if (e instanceof Ki) throw e;
throw this.captureException(e, {
data: {
__sentry__: !0
},
originalException: e
}), new Ki(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.\nReason: ${e}`)
}))
}
_process(e) {
this._numProcessing++, e.then((e => (this._numProcessing--, e)), (e => (this._numProcessing--, e)))
}
_clearOutcomes() {
const e = this._outcomes;
return this._outcomes = {}, Object.entries(e).map((([e, t]) => {
const [n, r] = e.split(":");
return {
reason: n,
category: r,
quantity: t
}
}))
}
_flushOutcomes() {
nr && Qt.log("Flushing outcomes...");
const e = this._clearOutcomes();
if (0 === e.length) return void(nr && Qt.log("No outcomes to send"));
if (!this._dsn) return void(nr && Qt.log("No dsn provided, will not send outcomes"));
nr && Qt.log("Sending outcomes:", e);
const t = (n = e, ji((r = this._options.tunnel && yi(this._dsn)) ? {
dsn: r
} : {}, [
[{
type: "client_report"
}, {
timestamp: i || _n(),
discarded_events: n
}]
]));
var n, r, i;
this.sendEnvelope(t)
}
}
function Xi(e) {
return void 0 === e.type
}
function Ji(e) {
return "transaction" === e.type
}
function ea(e, t, n = [t], r = "npm") {
const i = e._metadata || {};
i.sdk || (i.sdk = {
name: `sentry.javascript.${t}`,
packages: n.map((e => ({
name: `${r}:@sentry/${e}`,
version: kt
}))),
version: kt
}), e._metadata = i
}
const ta = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__;
function na(e, t) {
const n = aa(e, t),
r = {
type: t && t.name,
value: sa(t)
};
return n.length && (r.stacktrace = {
frames: n
}), void 0 === r.type && "" === r.value && (r.value = "Unrecoverable error caught"), r
}
function ra(e, t, n, r) {
const i = zn(),
a = i && i.getOptions().normalizeDepth,
o = function(e) {
for (const t in e)
if (Object.prototype.hasOwnProperty.call(e, t)) {
const n = e[t];
if (n instanceof Error) return n
} return
}(t),
s = {
__serialized__: Qn(t, a)
};
if (o) return {
exception: {
values: [na(e, o)]
},
extra: s
};
const l = {
exception: {
values: [{
type: jt(t) ? t.constructor.name : r ? "UnhandledRejection" : "Error",
value: ua(t, {
isUnhandledRejection: r
})
}]
},
extra: s
};
if (n) {
const t = aa(e, n);
t.length && (l.exception.values[0].stacktrace = {
frames: t
})
}
return l
}
function ia(e, t) {
return {
exception: {
values: [na(e, t)]
}
}
}
function aa(e, t) {
const n = t.stacktrace || t.stack || "",
r = function(e) {
if (e && oa.test(e.message)) return 1;
return 0
}(t),
i = function(e) {
if ("number" === typeof e.framesToPop) return e.framesToPop;
return 0
}(t);
try {
return e(n, r, i)
} catch (a) {}
return []
}
const oa = /Minified React error #\d+;/i;
function sa(e) {
const t = e && e.message;
return t ? t.error && "string" === typeof t.error.message ? t.error.message : t : "No error message"
}
function la(e, t, n, r, i) {
let a;
if (Tt(t) && t.error) {
return ia(e, t.error)
}
if (Rt(t) || Pt(t, "DOMException")) {
const i = t;
if ("stack" in t) a = ia(e, t);
else {
const t = i.name || (Rt(i) ? "DOMError" : "DOMException"),
o = i.message ? `${t}: ${i.message}` : t;
a = ca(e, o, n, r), fn(a, o)
}
return "code" in i && (a.tags = {
...a.tags,
"DOMException.code": `${i.code}`
}), a
}
if (At(t)) return ia(e, t);
if (Mt(t) || jt(t)) {
return a = ra(e, t, n, i), mn(a, {
synthetic: !0
}), a
}
return a = ca(e, t, n, r), fn(a, `${t}`, void 0), mn(a, {
synthetic: !0
}), a
}
function ca(e, t, n, r) {
const i = {};
if (r && n) {
const r = aa(e, n);
r.length && (i.exception = {
values: [{
value: t,
stacktrace: {
frames: r
}
}]
})
}
if (Lt(t)) {
const {
__sentry_template_string__: e,
__sentry_template_values__: n
} = t;
return i.logentry = {
message: e,
params: n
}, i
}
return i.message = t, i
}
function ua(e, {
isUnhandledRejection: t
}) {
const n = function(e, t = 40) {
const n = Object.keys(on(e));
n.sort();
const r = n[0];
if (!r) return "[object has no keys]";
if (r.length >= t) return Zt(r, t);
for (let i = n.length; i > 0; i--) {
const e = n.slice(0, i).join(", ");
if (!(e.length > t)) return i === n.length ? e : Zt(e, t)
}
return ""
}(e),
r = t ? "promise rejection" : "exception";
if (Tt(e)) return `Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``;
if (jt(e)) {
return `Event \`${function(e){try{const t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch(t){}}(e)}\` (type=${e.type}) captured as ${r}`
}
return `Object captured as ${r} with keys: ${n}`
}
const da = wt;
let pa = 0;
function ha() {
return pa > 0
}
function fa() {
pa++, setTimeout((() => {
pa--
}))
}
function ma(e, t = {}, n) {
if ("function" !== typeof e) return e;
try {
const t = e.__sentry_wrapped__;
if (t) return t;
if (an(e)) return e
} catch (i) {
return e
}
const r = function() {
const r = Array.prototype.slice.call(arguments);
try {
n && "function" === typeof n && n.apply(this, arguments);
const i = r.map((e => ma(e, t)));
return e.apply(this, i)
} catch (Ps) {
throw fa(), Fn((n => {
n.addEventProcessor((e => (t.mechanism && (fn(e, void 0, void 0), mn(e, t.mechanism)), e.extra = {
...e.extra,
arguments: r
}, e))), Yr(Ps)
})), Ps
}
};
try {
for (const t in e) Object.prototype.hasOwnProperty.call(e, t) && (r[t] = e[t])
} catch (a) {}
rn(r, e), nn(e, "__sentry_wrapped__", r);
try {
Object.getOwnPropertyDescriptor(r, "name").configurable && Object.defineProperty(r, "name", {
get: () => e.name
})
} catch (a) {}
return r
}
class ga extends Zi {
constructor(e) {
const t = {
parentSpanIsAlwaysRootSpan: !0,
...e
};
ea(t, "browser", ["browser"], da.SENTRY_SDK_SOURCE || "npm"), super(t), t.sendClientReports && da.document && da.document.addEventListener("visibilitychange", (() => {
"hidden" === da.document.visibilityState && this._flushOutcomes()
}))
}
eventFromException(e, t) {
return function(e, t, n, r) {
const i = la(e, t, n && n.syntheticException || void 0, r);
return mn(i), i.level = "error", n && n.event_id && (i.event_id = n.event_id), Jn(i)
}(this._options.stackParser, e, t, this._options.attachStacktrace)
}
eventFromMessage(e, t = "info", n) {
return function(e, t, n = "info", r, i) {
const a = ca(e, t, r && r.syntheticException || void 0, i);
return a.level = n, r && r.event_id && (a.event_id = r.event_id), Jn(a)
}(this._options.stackParser, e, t, n, this._options.attachStacktrace)
}
captureUserFeedback(e) {
if (!this._isEnabled()) return void(ta && Qt.warn("SDK not enabled, will not capture user feedback."));
const t = function(e, {
metadata: t,
tunnel: n,
dsn: r
}) {
const i = {
event_id: e.event_id,
sent_at: (new Date).toISOString(),
...t && t.sdk && {
sdk: {
name: t.sdk.name,
version: t.sdk.version
}
},
...!!n && !!r && {
dsn: yi(r)
}
},
a = function(e) {
return [{
type: "user_report"
}, e]
}(e);
return ji(i, [a])
}(e, {
metadata: this.getSdkMetadata(),
dsn: this.getDsn(),
tunnel: this.getOptions().tunnel
});
this.sendEnvelope(t)
}
_prepareEvent(e, t, n) {
return e.platform = e.platform || "javascript", super._prepareEvent(e, t, n)
}
}
let va, ya, _a;
function ba(e) {
Ai("dom", e), Pi("dom", xa)
}
function xa() {
if (!Di.document) return;
const e = Ti.bind(null, "dom"),
t = ka(e, !0);
Di.document.addEventListener("click", t, !1), Di.document.addEventListener("keypress", t, !1), ["EventTarget", "Node"].forEach((t => {
const n = Di[t] && Di[t].prototype;
n && n.hasOwnProperty && n.hasOwnProperty("addEventListener") && (tn(n, "addEventListener", (function(t) {
return function(n, r, i) {
if ("click" === n || "keypress" == n) try {
const r = this,
a = r.__sentry_instrumentation_handlers__ = r.__sentry_instrumentation_handlers__ || {},
o = a[n] = a[n] || {
refCount: 0
};
if (!o.handler) {
const r = ka(e);
o.handler = r, t.call(this, n, r, i)
}
o.refCount++
} catch (a) {}
return t.call(this, n, r, i)
}
})), tn(n, "removeEventListener", (function(e) {
return function(t, n, r) {
if ("click" === t || "keypress" == t) try {
const n = this,
i = n.__sentry_instrumentation_handlers__ || {},
a = i[t];
a && (a.refCount--, a.refCount <= 0 && (e.call(this, t, a.handler, r), a.handler = void 0, delete i[t]), 0 === Object.keys(i).length && delete n.__sentry_instrumentation_handlers__)
} catch (i) {}
return e.call(this, t, n, r)
}
})))
}))
}
function ka(e, t = !1) {
return n => {
if (!n || n._sentryCaptured) return;
const r = function(e) {
try {
return e.target
} catch (t) {
return null
}
}(n);
if (function(e, t) {
return "keypress" === e && (!t || !t.tagName || "INPUT" !== t.tagName && "TEXTAREA" !== t.tagName && !t.isContentEditable)
}(n.type, r)) return;
nn(n, "_sentryCaptured", !0), r && !r._sentryId && nn(r, "_sentryId", dn());
const i = "keypress" === n.type ? "input" : n.type;
if (! function(e) {
if (e.type !== ya) return !1;
try {
if (!e.target || e.target._sentryId !== _a) return !1
} catch (t) {}
return !0
}(n)) {
e({
event: n,
name: i,
global: t
}), ya = n.type, _a = r ? r._sentryId : void 0
}
clearTimeout(va), va = Di.setTimeout((() => {
_a = void 0, ya = void 0
}), 1e3)
}
}
const wa = "__sentry_xhr_v3__";
function Sa(e) {
Ai("xhr", e), Pi("xhr", Ea)
}
function Ea() {
if (!Di.XMLHttpRequest) return;
const e = XMLHttpRequest.prototype;
tn(e, "open", (function(e) {
return function(...t) {
const n = 1e3 * bn(),
r = Dt(t[0]) ? t[0].toUpperCase() : void 0,
i = function(e) {
if (Dt(e)) return e;
try {
return e.toString()
} catch (ll) {}
return
}(t[1]);
if (!r || !i) return e.apply(this, t);
this[wa] = {
method: r,
url: i,
request_headers: {}
}, "POST" === r && i.match(/sentry_key/) && (this.__sentry_own_request__ = !0);
const a = () => {
const e = this[wa];
if (e && 4 === this.readyState) {
try {
e.status_code = this.status
} catch (t) {}
Ti("xhr", {
endTimestamp: 1e3 * bn(),
startTimestamp: n,
xhr: this
})
}
};
return "onreadystatechange" in this && "function" === typeof this.onreadystatechange ? tn(this, "onreadystatechange", (function(e) {
return function(...t) {
return a(), e.apply(this, t)
}
})) : this.addEventListener("readystatechange", a), tn(this, "setRequestHeader", (function(e) {
return function(...t) {
const [n, r] = t, i = this[wa];
return i && Dt(n) && Dt(r) && (i.request_headers[n.toLowerCase()] = r), e.apply(this, t)
}
})), e.apply(this, t)
}
})), tn(e, "send", (function(e) {
return function(...t) {
const n = this[wa];
if (!n) return e.apply(this, t);
void 0 !== t[0] && (n.body = t[0]);
return Ti("xhr", {
startTimestamp: 1e3 * bn(),
xhr: this
}), e.apply(this, t)
}
}))
}
const Ia = 100;
function Oa(e, t) {
const n = zn(),
r = jn();
if (!n) return;
const {
beforeBreadcrumb: i = null,
maxBreadcrumbs: a = Ia
} = n.getOptions();
if (a <= 0) return;
const o = {
timestamp: _n(),
...e
},
s = i ? Yt((() => i(o, t))) : o;
null !== s && (n.emit && n.emit("beforeAddBreadcrumb", s, t), r.addBreadcrumb(s, a))
}
function Ca() {
"console" in wt && Ht.forEach((function(e) {
e in wt.console && tn(wt.console, e, (function(t) {
return Kt[e] = t,
function(...t) {
Ti("console", {
args: t,
level: e
});
const n = Kt[e];
n && n.apply(wt.console, t)
}
}))
}))
}
function Aa(e) {
const t = "fetch";
Ai(t, e), Pi(t, Pa)
}
function Pa() {
(function() {
if ("string" === typeof EdgeRuntime) return !0;
if (!Ei()) return !1;
if (Ii(Si.fetch)) return !0;
let e = !1;
const t = Si.document;
if (t && "function" === typeof t.createElement) try {
const n = t.createElement("iframe");
n.hidden = !0, t.head.appendChild(n), n.contentWindow && n.contentWindow.fetch && (e = Ii(n.contentWindow.fetch)), t.head.removeChild(n)
} catch (n) {
qt && Qt.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ", n)
}
return e
})() && tn(wt, "fetch", (function(e) {
return function(...t) {
const {
method: n,
url: r
} = function(e) {
if (0 === e.length) return {
method: "GET",
url: ""
};
if (2 === e.length) {
const [t, n] = e;
return {
url: Ra(t),
method: Ta(n, "method") ? String(n.method).toUpperCase() : "GET"
}
}
const t = e[0];
return {
url: Ra(t),
method: Ta(t, "method") ? String(t.method).toUpperCase() : "GET"
}
}(t), i = {
args: t,
fetchData: {
method: n,
url: r
},
startTimestamp: 1e3 * bn()
};
Ti("fetch", {
...i
});
const a = (new Error).stack;
return e.apply(wt, t).then((e => (Ti("fetch", {
...i,
endTimestamp: 1e3 * bn(),
response: e
}), e)), (e => {
throw Ti("fetch", {
...i,
endTimestamp: 1e3 * bn(),
error: e
}), At(e) && void 0 === e.stack && (e.stack = a, nn(e, "framesToPop", 1)), e
}))
}
}))
}
function Ta(e, t) {
return !!e && "object" === typeof e && !!e[t]
}
function Ra(e) {
return "string" === typeof e ? e : e ? Ta(e, "url") ? e.url : e.toString ? e.toString() : "" : ""
}
const Da = ["fatal", "error", "warning", "log", "info", "debug"];
function La(e) {
return "warn" === e ? "warning" : Da.includes(e) ? e : "log"
}
function Na(e) {
if (!e) return {};
const t = e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);
if (!t) return {};
const n = t[6] || "",
r = t[8] || "";
return {
host: t[4],
path: t[5],
protocol: t[2],
search: n,
hash: r,
relative: t[5] + n + r
}
}
const Ma = 1024,
ja = (e = {}) => {
const t = {
console: !0,
dom: !0,
fetch: !0,
history: !0,
sentry: !0,
xhr: !0,
...e
};
return {
name: "Breadcrumbs",
setup(e) {
t.console && function(e) {
const t = "console";
Ai(t, e), Pi(t, Ca)
}(function(e) {
return function(t) {
if (zn() !== e) return;
const n = {
category: "console",
data: {
arguments: t.args,
logger: "console"
},
level: La(t.level),
message: Xt(t.args, " ")
};
if ("assert" === t.level) {
if (!1 !== t.args[0]) return;
n.message = `Assertion failed: ${Xt(t.args.slice(1)," ")||"console.assert"}`, n.data.arguments = t.args.slice(1)
}
Oa(n, {
input: t.args,
level: t.level
})
}
}(e)), t.dom && ba(function(e, t) {
return function(n) {
if (zn() !== e) return;
let r, i, a = "object" === typeof t ? t.serializeAttribute : void 0,
o = "object" === typeof t && "number" === typeof t.maxStringLength ? t.maxStringLength : void 0;
o && o > Ma && (ta && Qt.warn(`\`dom.maxStringLength\` cannot exceed 1024, but a value of ${o} was configured. Sentry will use 1024 instead.`), o = Ma), "string" === typeof a && (a = [a]);
try {
const e = n.event,
t = function(e) {
return !!e && !!e.target
}(e) ? e.target : e;
r = Bt(t, {
keyAttrs: a,
maxStringLength: o
}), i = $t(t)
} catch (l) {
r = "<unknown>"
}
if (0 === r.length) return;
const s = {
category: `ui.${n.name}`,
message: r
};
i && (s.data = {
"ui.component_name": i
}), Oa(s, {
event: n.event,
name: n.name,
global: n.global
})
}
}(e, t.dom)), t.xhr && Sa(function(e) {
return function(t) {
if (zn() !== e) return;
const {
startTimestamp: n,
endTimestamp: r
} = t, i = t.xhr[wa];
if (!n || !r || !i) return;
const {
method: a,
url: o,
status_code: s,
body: l
} = i;
Oa({
category: "xhr",
data: {
method: a,
url: o,
status_code: s
},
type: "http"
}, {
xhr: t.xhr,
input: l,
startTimestamp: n,
endTimestamp: r
})
}
}(e)), t.fetch && Aa(function(e) {
return function(t) {
if (zn() !== e) return;
const {
startTimestamp: n,
endTimestamp: r
} = t;
if (r && (!t.fetchData.url.match(/sentry_key/) || "POST" !== t.fetchData.method))
if (t.error) {
Oa({
category: "fetch",
data: t.fetchData,
level: "error",
type: "http"
}, {
data: t.error,
input: t.args,
startTimestamp: n,
endTimestamp: r
})
} else {
const e = t.response;
Oa({
category: "fetch",
data: {
...t.fetchData,
status_code: e && e.status
},
type: "http"
}, {
input: t.args,
response: e,
startTimestamp: n,
endTimestamp: r
})
}
}
}(e)), t.history && Ni(function(e) {
return function(t) {
if (zn() !== e) return;
let n = t.from,
r = t.to;
const i = Na(da.location.href);
let a = n ? Na(n) : void 0;
const o = Na(r);
a && a.path || (a = i), i.protocol === o.protocol && i.host === o.host && (r = o.relative), i.protocol === a.protocol && i.host === a.host && (n = a.relative), Oa({
category: "navigation",
data: {
from: n,
to: r
}
})
}
}(e)), t.sentry && e.on("beforeSendEvent", function(e) {
return function(t) {
zn() === e && Oa({
category: "sentry." + ("transaction" === t.type ? "transaction" : "event"),
event_id: t.event_id,
level: t.level,
message: hn(t)
}, {
event: t
})
}
}(e))
}
}
};
const Fa = ["EventTarget", "Window", "Node", "ApplicationCache", "AudioTrackList", "BroadcastChannel", "ChannelMergerNode", "CryptoOperation", "EventSource", "FileReader", "HTMLUnknownElement", "IDBDatabase", "IDBRequest", "IDBTransaction", "KeyOperation", "MediaController", "MessagePort", "ModalWindow", "Notification", "SVGElementInstance", "Screen", "SharedWorker", "TextTrack", "TextTrackCue", "TextTrackList", "WebSocket", "WebSocketWorker", "Worker", "XMLHttpRequest", "XMLHttpRequestEventTarget", "XMLHttpRequestUpload"],
za = (e = {}) => {
const t = {
XMLHttpRequest: !0,
eventTarget: !0,
requestAnimationFrame: !0,
setInterval: !0,
setTimeout: !0,
...e
};
return {
name: "BrowserApiErrors",
setupOnce() {
t.setTimeout && tn(da, "setTimeout", Va), t.setInterval && tn(da, "setInterval", Va), t.requestAnimationFrame && tn(da, "requestAnimationFrame", Ua), t.XMLHttpRequest && "XMLHttpRequest" in da && tn(XMLHttpRequest.prototype, "send", Ba);
const e = t.eventTarget;
if (e) {
(Array.isArray(e) ? e : Fa).forEach(Ga)
}
}
}
};
function Va(e) {
return function(...t) {
const n = t[0];
return t[0] = ma(n, {
mechanism: {
data: {
function: Hn(e)
},
handled: !1,
type: "instrument"
}
}), e.apply(this, t)
}
}
function Ua(e) {
return function(t) {
return e.apply(this, [ma(t, {
mechanism: {
data: {
function: "requestAnimationFrame",
handler: Hn(e)
},
handled: !1,
type: "instrument"
}
})])
}
}
function Ba(e) {
return function(...t) {
const n = this;
return ["onload", "onerror", "onprogress", "onreadystatechange"].forEach((e => {
e in n && "function" === typeof n[e] && tn(n, e, (function(t) {
const n = {
mechanism: {
data: {
function: e,
handler: Hn(t)
},
handled: !1,
type: "instrument"
}
},
r = an(t);
return r && (n.mechanism.data.handler = Hn(r)), ma(t, n)
}))
})), e.apply(this, t)
}
}
function Ga(e) {
const t = da,
n = t[e] && t[e].prototype;
n && n.hasOwnProperty && n.hasOwnProperty("addEventListener") && (tn(n, "addEventListener", (function(t) {
return function(n, r, i) {
try {
"function" === typeof r.handleEvent && (r.handleEvent = ma(r.handleEvent, {
mechanism: {
data: {
function: "handleEvent",
handler: Hn(r),
target: e
},
handled: !1,
type: "instrument"
}
}))
} catch (a) {}
return t.apply(this, [n, ma(r, {
mechanism: {
data: {
function: "addEventListener",
handler: Hn(r),
target: e
},
handled: !1,
type: "instrument"
}
}), i])
}
})), tn(n, "removeEventListener", (function(e) {
return function(t, n, r) {
const i = n;
try {
const n = i && i.__sentry_wrapped__;
n && e.call(this, t, n, r)
} catch (a) {}
return e.call(this, t, i, r)
}
})))
}
let Wa = null;
function $a(e) {
const t = "error";
Ai(t, e), Pi(t, qa)
}
function qa() {
Wa = wt.onerror, wt.onerror = function(e, t, n, r, i) {
const a = {
column: r,
error: i,
line: n,
msg: e,
url: t
};
return Ti("error", a), !(!Wa || Wa.__SENTRY_LOADER__) && Wa.apply(this, arguments)
}, wt.onerror.__SENTRY_INSTRUMENTED__ = !0
}
let Ha = null;
function Ka(e) {
const t = "unhandledrejection";
Ai(t, e), Pi(t, Ya)
}
function Ya() {
Ha = wt.onunhandledrejection, wt.onunhandledrejection = function(e) {
const t = e;
return Ti("unhandledrejection", t), !(Ha && !Ha.__SENTRY_LOADER__) || Ha.apply(this, arguments)
}, wt.onunhandledrejection.__SENTRY_INSTRUMENTED__ = !0
}
const Qa = (e = {}) => {
const t = {
onerror: !0,
onunhandledrejection: !0,
...e
};
return {
name: "GlobalHandlers",
setupOnce() {
Error.stackTraceLimit = 50
},
setup(e) {
t.onerror && (! function(e) {
$a((t => {
const {
stackParser: n,
attachStacktrace: r
} = Xa();
if (zn() !== e || ha()) return;
const {
msg: i,
url: a,
line: o,
column: s,
error: l
} = t, c = function(e, t, n, r) {
const i = e.exception = e.exception || {},
a = i.values = i.values || [],
o = a[0] = a[0] || {},
s = o.stacktrace = o.stacktrace || {},
l = s.frames = s.frames || [],
c = isNaN(parseInt(r, 10)) ? void 0 : r,
u = isNaN(parseInt(n, 10)) ? void 0 : n,
d = Dt(t) && t.length > 0 ? t : Wt();
0 === l.length && l.push({
colno: c,
filename: d,
function: Vn,
in_app: !0,
lineno: u
});
return e
}(la(n, l || i, void 0, r, !1), a, o, s);
c.level = "error", Qr(c, {
originalException: l,
mechanism: {
handled: !1,
type: "onerror"
}
})
}))
}(e), Za("onerror")), t.onunhandledrejection && (! function(e) {
Ka((t => {
const {
stackParser: n,
attachStacktrace: r
} = Xa();
if (zn() !== e || ha()) return;
const i = function(e) {
if (Nt(e)) return e;
try {
if ("reason" in e) return e.reason;
if ("detail" in e && "reason" in e.detail) return e.detail.reason
} catch (ll) {}
return e
}(t),
a = Nt(i) ? {
exception: {
values: [{
type: "UnhandledRejection",
value: `Non-Error promise rejection captured with value: ${String(i)}`
}]
}
} : la(n, i, void 0, r, !0);
a.level = "error", Qr(a, {
originalException: i,
mechanism: {
handled: !1,
type: "onunhandledrejection"
}
})
}))
}(e), Za("onunhandledrejection"))
}
}
};
function Za(e) {
ta && Qt.log(`Global Handler attached: ${e}`)
}
function Xa() {
const e = zn();
return e && e.getOptions() || {
stackParser: () => [],
attachStacktrace: !1
}
}
const Ja = () => ({
name: "HttpContext",
preprocessEvent(e) {
if (!da.navigator && !da.location && !da.document) return;
const t = e.request && e.request.url || da.location && da.location.href,
{
referrer: n
} = da.document || {},
{
userAgent: r
} = da.navigator || {},
i = {
...e.request && e.request.headers,
...n && {
Referer: n
},
...r && {
"User-Agent": r
}
},
a = {
...e.request,
...t && {
url: t
},
headers: i
};
e.request = a
}
});
function eo(e, t, n = 250, r, i, a, o) {
if (!a.exception || !a.exception.values || !o || !zt(o.originalException, Error)) return;
const s = a.exception.values.length > 0 ? a.exception.values[a.exception.values.length - 1] : void 0;
var l, c;
s && (a.exception.values = (l = to(e, t, i, o.originalException, r, a.exception.values, s, 0), c = n, l.map((e => (e.value && (e.value = Zt(e.value, c)), e)))))
}
function to(e, t, n, r, i, a, o, s) {
if (a.length >= n + 1) return a;
let l = [...a];
if (zt(r[i], Error)) {
no(o, s);
const a = e(t, r[i]),
c = l.length;
ro(a, i, c, s), l = to(e, t, n, r[i], i, [a, ...l], a, c)
}
return Array.isArray(r.errors) && r.errors.forEach(((r, a) => {
if (zt(r, Error)) {
no(o, s);
const c = e(t, r),
u = l.length;
ro(c, `errors[${a}]`, u, s), l = to(e, t, n, r, i, [c, ...l], c, u)
}
})), l
}
function no(e, t) {
e.mechanism = e.mechanism || {
type: "generic",
handled: !0
}, e.mechanism = {
...e.mechanism,
..."AggregateError" === e.type && {
is_exception_group: !0
},
exception_id: t
}
}
function ro(e, t, n, r) {
e.mechanism = e.mechanism || {
type: "generic",
handled: !0
}, e.mechanism = {
...e.mechanism,
type: "chained",
source: t,
exception_id: n,
parent_id: r
}
}
const io = (e = {}) => {
const t = e.limit || 5,
n = e.key || "cause";
return {
name: "LinkedErrors",
preprocessEvent(e, r, i) {
const a = i.getOptions();
eo(na, a.stackParser, a.maxValueLength, n, t, e, r)
}
}
};
function ao(e, t, n, r) {
const i = {
filename: e,
function: "<anonymous>" === t ? Vn : t,
in_app: !0
};
return void 0 !== n && (i.lineno = n), void 0 !== r && (i.colno = r), i
}
const oo = /^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,
so = /^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,
lo = /\((\S*)(?::(\d+))(?::(\d+))\)/,
co = [30, e => {
const t = oo.exec(e);
if (t) {
const [, e, n, r] = t;
return ao(e, Vn, +n, +r)
}
const n = so.exec(e);
if (n) {
if (n[2] && 0 === n[2].indexOf("eval")) {
const e = lo.exec(n[2]);
e && (n[2] = e[1], n[3] = e[2], n[4] = e[3])
}
const [e, t] = fo(n[1] || Vn, n[2]);
return ao(t, e, n[3] ? +n[3] : void 0, n[4] ? +n[4] : void 0)
}
}],
uo = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,
po = /(\S+) line (\d+)(?: > eval line \d+)* > eval/i,
ho = Gn(...[co, [50, e => {
const t = uo.exec(e);
if (t) {
if (t[3] && t[3].indexOf(" > eval") > -1) {
const e = po.exec(t[3]);
e && (t[1] = t[1] || "eval", t[3] = e[1], t[4] = e[2], t[5] = "")
}
let e = t[3],
n = t[1] || Vn;
return [n, e] = fo(n, e), ao(e, n, t[4] ? +t[4] : void 0, t[5] ? +t[5] : void 0)
}
}]]),
fo = (e, t) => {
const n = -1 !== e.indexOf("safari-extension"),
r = -1 !== e.indexOf("safari-web-extension");
return n || r ? [-1 !== e.indexOf("@") ? e.split("@")[0] : Vn, n ? `safari-extension:${t}` : `safari-web-extension:${t}`] : [e, t]
},
mo = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__,
go = {};
function vo(e) {
const t = go[e];
if (t) return t;
let n = Di[e];
if (Ii(n)) return go[e] = n.bind(Di);
const r = Di.document;
if (r && "function" === typeof r.createElement) try {
const t = r.createElement("iframe");
t.hidden = !0, r.head.appendChild(t);
const i = t.contentWindow;
i && i[e] && (n = i[e]), r.head.removeChild(t)
} catch (i) {
mo && Qt.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `, i)
}
return n ? go[e] = n.bind(Di) : n
}
function yo(e) {
go[e] = void 0
}
function _o(...e) {
return vo("setTimeout")(...e)
}
function bo(e) {
const t = [];
function n(e) {
return t.splice(t.indexOf(e), 1)[0] || Promise.resolve(void 0)
}
return {
$: t,
add: function(r) {
if (!(void 0 === e || t.length < e)) return er(new Ki("Not adding Promise because buffer limit was reached."));
const i = r();
return -1 === t.indexOf(i) && t.push(i), i.then((() => n(i))).then(null, (() => n(i).then(null, (() => {})))), i
},
drain: function(e) {
return new tr(((n, r) => {
let i = t.length;
if (!i) return n(!0);
const a = setTimeout((() => {
e && e > 0 && n(!1)
}), e);
t.forEach((e => {
Jn(e).then((() => {
--i || (clearTimeout(a), n(!0))
}), r)
}))
}))
}
}
}
function xo(e, t, n = Date.now()) {
return function(e, t) {
return e[t] || e.all || 0
}(e, t) > n
}
function ko(e, {
statusCode: t,
headers: n
}, r = Date.now()) {
const i = {
...e
},
a = n && n["x-sentry-rate-limits"],
o = n && n["retry-after"];
if (a)
for (const s of a.trim().split(",")) {
const [e, t, , , n] = s.split(":", 5), a = parseInt(e, 10), o = 1e3 * (isNaN(a) ? 60 : a);
if (t)
for (const s of t.split(";")) "metric_bucket" === s && n && !n.split(";").includes("custom") || (i[s] = r + o);
else i.all = r + o
} else o ? i.all = r + function(e, t = Date.now()) {
const n = parseInt(`${e}`, 10);
if (!isNaN(n)) return 1e3 * n;
const r = Date.parse(`${e}`);
return isNaN(r) ? 6e4 : r - t
}(o, r) : 429 === t && (i.all = r + 6e4);
return i
}
function wo(e, t, n = bo(e.bufferSize || 64)) {
let r = {};
return {
send: function(i) {
const a = [];
if (zi(i, ((t, n) => {
const i = $i(n);
if (xo(r, i)) {
const r = So(t, n);
e.recordDroppedEvent("ratelimit_backoff", i, r)
} else a.push(t)
})), 0 === a.length) return Jn({});
const o = ji(i[0], a),
s = t => {
zi(o, ((n, r) => {
const i = So(n, r);
e.recordDroppedEvent(t, $i(r), i)
}))
};
return n.add((() => t({
body: Ui(o)
}).then((e => (void 0 !== e.statusCode && (e.statusCode < 200 || e.statusCode >= 300) && nr && Qt.warn(`Sentry responded with status code ${e.statusCode} to sent event.`), r = ko(r, e), e)), (e => {
throw s("network_error"), e
})))).then((e => e), (e => {
if (e instanceof Ki) return nr && Qt.error("Skipped sending event because buffer is full."), s("queue_overflow"), Jn({});
throw e
}))
},
flush: e => n.drain(e)
}
}
function So(e, t) {
if ("event" === t || "transaction" === t) return Array.isArray(e) ? e[1] : void 0
}
function Eo(e, t = vo("fetch")) {
let n = 0,
r = 0;
return wo(e, (function(i) {
const a = i.body.length;
n += a, r++;
const o = {
body: i.body,
method: "POST",
referrerPolicy: "origin",
headers: e.headers,
keepalive: n <= 6e4 && r < 15,
...e.fetchOptions
};
if (!t) return yo("fetch"), er("No fetch implementation available");
try {
return t(e.url, o).then((e => (n -= a, r--, {
statusCode: e.status,
headers: {
"x-sentry-rate-limits": e.headers.get("X-Sentry-Rate-Limits"),
"retry-after": e.headers.get("Retry-After")
}
})))
} catch (s) {
return yo("fetch"), n -= a, r--, er(s)
}
}))
}
function Io(e) {
return [si(), di(), za(), ja(), Qa(), io(), pi(), Ja()]
}
function Oo(e = {}) {
const t = function(e = {}) {
return {
defaultIntegrations: Io(),
release: "string" === typeof __SENTRY_RELEASE__ ? __SENTRY_RELEASE__ : da.SENTRY_RELEASE && da.SENTRY_RELEASE.id ? da.SENTRY_RELEASE.id : void 0,
autoSessionTracking: !0,
sendClientReports: !0,
...e
}
}(e);
if (function() {
const e = da,
t = e[e.chrome ? "chrome" : "browser"],
n = t && t.runtime && t.runtime.id,
r = da.location && da.location.href || "",
i = !!n && da === da.top && ["chrome-extension:", "moz-extension:", "ms-browser-extension:"].some((e => r.startsWith(`${e}//`))),
a = "undefined" !== typeof e.nw;
return !!n && !i && !a
}()) return void Yt((() => {
console.error("[Sentry] You cannot run Sentry this way in a browser extension, check: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/")
}));
ta && (Ei() || Qt.warn("No Fetch API detected. The Sentry SDK requires a Fetch API compatible environment to send events. Please add a Fetch API polyfill."));
const n = {
...t,
stackParser: (r = t.stackParser || ho, Array.isArray(r) ? Gn(...r) : r),
integrations: ri(t),
transport: t.transport || Eo
};
var r;
const i = gi(ga, n);
return t.autoSessionTracking && function() {
if ("undefined" === typeof da.document) return void(ta && Qt.warn("Session tracking in non-browser environment with @sentry/browser is not supported."));
Xr({
ignoreDuration: !0
}), ti(), Ni((({
from: e,
to: t
}) => {
void 0 !== e && e !== t && (Xr({
ignoreDuration: !0
}), ti())
}))
}(), i
}
function Co(e = {}) {
if (!da.document) return void(ta && Qt.error("Global document not defined in showReportDialog call"));
const t = Mn(),
n = t.getClient(),
r = n && n.getDsn();
if (!r) return void(ta && Qt.error("DSN not configured for showReportDialog call"));
if (t && (e.user = {
...t.getUser(),
...e.user
}), !e.eventId) {
const t = jn().lastEventId();
t && (e.eventId = t)
}
const i = da.document.createElement("script");
i.async = !0, i.crossOrigin = "anonymous", i.src = function(e, t) {
const n = bi(e);
if (!n) return "";
const r = `${xi(n)}embed/error-page/`;
let i = `dsn=${yi(n)}`;
for (const a in t)
if ("dsn" !== a && "onClose" !== a)
if ("user" === a) {
const e = t.user;
if (!e) continue;
e.name && (i += `&name=${encodeURIComponent(e.name)}`), e.email && (i += `&email=${encodeURIComponent(e.email)}`)
} else i += `&${encodeURIComponent(a)}=${encodeURIComponent(t[a])}`;
return `${r}?${i}`
}(r, e), e.onLoad && (i.onload = e.onLoad);
const {
onClose: a
} = e;
if (a) {
const e = t => {
if ("__sentry_reportdialog_closed__" === t.data) try {
a()
} finally {
da.removeEventListener("message", e)
}
};
da.addEventListener("message", e)
}
const o = da.document.head || da.document.body;
o ? o.appendChild(i) : ta && Qt.error("Not injecting report dialog. No injection point found in HTML")
}
n(2110);
const Ao = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__;
function Po(e, {
componentStack: t
}, n) {
if (function(e) {
const t = e.match(/^([^.]+)/);
return null !== t && parseInt(t[0]) >= 17
}(Ee.version) && At(e) && t) {
const n = new Error(e.message);
n.name = `React ErrorBoundary ${e.name}`, n.stack = t,
function(e, t) {
const n = new WeakSet;
! function e(t, r) {
if (!n.has(t)) return t.cause ? (n.add(t), e(t.cause, r)) : void(t.cause = r)
}(e, t)
}(e, n)
}
return Yr(e, {
...n,
captureContext: {
contexts: {
react: {
componentStack: t
}
}
}
})
}
const To = {
componentStack: null,
error: null,
eventId: null
};
class Ro extends Ee.Component {
constructor(e) {
super(e), Ro.prototype.__init.call(this), this.state = To, this._openFallbackReportDialog = !0;
const t = zn();
t && e.showDialog && (this._openFallbackReportDialog = !1, this._cleanupHook = t.on("afterSendEvent", (t => {
!t.type && this._lastEventId && t.event_id === this._lastEventId && Co({
...e.dialogOptions,
eventId: this._lastEventId
})
})))
}
componentDidCatch(e, t) {
const {
componentStack: n
} = t, r = null == n ? void 0 : n, {
beforeCapture: i,
onError: a,
showDialog: o,
dialogOptions: s
} = this.props;
Fn((l => {
i && i(l, e, r);
const c = Po(e, t, {
mechanism: {
handled: !!this.props.fallback
}
});
a && a(e, r, c), o && (this._lastEventId = c, this._openFallbackReportDialog && Co({
...s,
eventId: c
})), this.setState({
error: e,
componentStack: n,
eventId: c
})
}))
}
componentDidMount() {
const {
onMount: e
} = this.props;
e && e()
}
componentWillUnmount() {
const {
error: e,
componentStack: t,
eventId: n
} = this.state, {
onUnmount: r
} = this.props;
r && r(e, t, n), this._cleanupHook && (this._cleanupHook(), this._cleanupHook = void 0)
}
__init() {
this.resetErrorBoundary = () => {
const {
onReset: e
} = this.props, {
error: t,
componentStack: n,
eventId: r
} = this.state;
e && e(t, n, r), this.setState(To)
}
}
render() {
const {
fallback: e,
children: t
} = this.props, n = this.state;
if (n.error) {
let t;
return t = "function" === typeof e ? Ee.createElement(e, {
error: n.error,
componentStack: n.componentStack,
resetError: this.resetErrorBoundary,
eventId: n.eventId
}) : e, Ee.isValidElement(t) ? t : (e && Ao && Qt.warn("fallback did not produce a valid ReactElement"), null)
}
return "function" === typeof t ? t() : t
}
}
var Do = n(8508),
Lo = n.t(Do, 2);
function No(e, t) {
void 0 === t && (t = {});
var n = t.insertAt;
if (e && "undefined" != typeof document) {
var r = document.head || document.getElementsByTagName("head")[0],
i = document.createElement("style");
i.type = "text/css", "top" === n && r.firstChild ? r.insertBefore(i, r.firstChild) : r.appendChild(i), i.styleSheet ? i.styleSheet.cssText = e : i.appendChild(document.createTextNode(e))
}
}
No('@layer reset, tokens, defaults, components, utilities, themes;@layer reset{*,:after,:before{box-sizing:border-box}:root{font-family:system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0;min-block-size:100vh;min-block-size:100dvh}a{color:inherit;text-decoration:inherit}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,ul{margin:0}h1,h2,h3,h4,h5,h6,p{font:inherit;overflow-wrap:break-word}ol,ul{list-style:none;padding:0}table{border-collapse:collapse;border-spacing:0}pre{white-space:pre-wrap}hr{block-size:0;border:0;border-block-start:1px solid;color:inherit}abbr[title]{text-decoration:underline dotted}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}summary{display:list-item}audio,canvas,embed,iframe,img,object,svg,video{display:block;max-inline-size:100%;vertical-align:middle}canvas,img,svg,video{block-size:auto}audio{block-size:100%}audio:not([controls]),source{display:none}picture{display:contents}iframe{border:0;color-scheme:normal}fieldset{border:0;margin:0}fieldset,legend{padding:0}button,input,select,textarea{border:0;color:inherit;font:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{appearance:button;background-color:initial;background-image:none}textarea{resize:vertical;resize:block}progress{vertical-align:initial}[hidden]:not([hidden=until-found]){display:none}}@layer tokens{:root,[data-sol-theme]{--sol-border-0:0px;--sol-border-1:1px;--sol-border-2:2px;--sol-radius-0:0px;--sol-radius-4:4px;--sol-radius-8:8px;--sol-radius-16:16px;--sol-radius-24:24px;--sol-radius-rounded:9999px;--sol-radius-circle:50%;--sol-clip-radius-0:none;--sol-clip-radius-4:inset(0 round var(--sol-radius-4));--sol-clip-radius-8:inset(0 round var(--sol-radius-8));--sol-clip-radius-16:inset(0 round var(--sol-radius-16));--sol-clip-radius-24:inset(0 round var(--sol-radius-24));--sol-clip-radius-rounded:inset(0 round var(--sol-radius-rounded));--sol-clip-radius-circle:inset(0 round var(--sol-radius-circle));--sol-color-primary-1:#0a1d29;--sol-color-primary-1-rgb:10 29 41;--sol-color-primary-2:#0f2c3e;--sol-color-primary-2-rgb:15 44 62;--sol-color-primary-3:#143a52;--sol-color-primary-3-rgb:20 58 82;--sol-color-primary-4:#194967;--sol-color-primary-4-rgb:25 73 103;--sol-color-primary-5:#1e577b;--sol-color-primary-5-rgb:30 87 123;--sol-color-primary-6:#2875a4;--sol-color-primary-6-rgb:40 117 164;--sol-color-primary-7:#6fb2dc;--sol-color-primary-7-rgb:111 178 220;--sol-color-primary-8:#add4eb;--sol-color-primary-8-rgb:173 212 235;--sol-color-neutral-1:#000;--sol-color-neutral-1-rgb:0 0 0;--sol-color-neutral-2:#586774;--sol-color-neutral-2-rgb:88 103 116;--sol-color-neutral-3:#b0bac0;--sol-color-neutral-3-rgb:176 186 192;--sol-color-neutral-4:#fff;--sol-color-neutral-4-rgb:255 255 255;--sol-color-accent-1:#54adf7;--sol-color-accent-1-rgb:84 173 247;--sol-color-accent-2:#6db9f8;--sol-color-accent-2-rgb:109 185 248;--sol-color-accent-3:#9ed0fa;--sol-color-accent-3-rgb:158 208 250;--sol-color-positive-1:#85c6a2;--sol-color-positive-1-rgb:133 198 162;--sol-color-positive-2:#a8d6bd;--sol-color-positive-2-rgb:168 214 189;--sol-color-positive-3:#cbe7d8;--sol-color-positive-3-rgb:203 231 216;--sol-color-notice-1:#e99449;--sol-color-notice-1-rgb:233 148 73;--sol-color-notice-2:#eeaf77;--sol-color-notice-2-rgb:238 175 119;--sol-color-notice-3:#f4c9a4;--sol-color-notice-3-rgb:244 201 164;--sol-color-negative-1:#ff8080;--sol-color-negative-1-rgb:255 128 128;--sol-color-negative-2:#f99;--sol-color-negative-2-rgb:255 153 153;--sol-color-negative-3:#ffb3b3;--sol-color-negative-3-rgb:255 179 179;--sol-color-highlight-1:#8186e4;--sol-color-highlight-1-rgb:129 134 228;--sol-color-highlight-2:#abafed;--sol-color-highlight-2-rgb:171 175 237;--sol-color-highlight-3:#d5d7f6;--sol-color-highlight-3-rgb:213 215 246;--sol-color-background:var(--sol-color-primary-1);--sol-color-focused:var(--sol-color-primary-7);--sol-color-overlay:rgba(var(--sol-color-neutral-1-rgb)/0.7);--sol-color-surface-0:var(--sol-color-primary-1);--sol-color-surface-1:var(--sol-color-primary-2);--sol-color-surface-2:var(--sol-color-primary-3);--sol-color-surface-3:var(--sol-color-primary-4);--sol-color-surface-0-hovered:var(--sol-color-primary-2);--sol-color-surface-0-pressed:var(--sol-color-primary-3);--sol-color-surface-1-hovered:var(--sol-color-primary-3);--sol-color-surface-1-pressed:var(--sol-color-primary-4);--sol-color-surface-2-hovered:var(--sol-color-primary-4);--sol-color-surface-2-pressed:var(--sol-color-primary-5);--sol-color-surface-3-hovered:var(--sol-color-primary-5);--sol-color-surface-3-pressed:var(--sol-color-primary-6);--sol-color-interactive:var(--sol-color-accent-1);--sol-color-interactive-hovered:var(--sol-color-accent-3);--sol-color-interactive-pressed:var(--sol-color-accent-2);--sol-color-interactive-selected:var(--sol-color-neutral-4);--sol-color-interactive-contrast:var(--sol-color-neutral-1);--sol-color-interactive-opacity:rgba(var(--sol-color-neutral-1-rgb)/0);--sol-color-interactive-opacity-hovered:rgba(var(--sol-color-neutral-1-rgb)/0.4);--sol-color-interactive-opacity-pressed:rgba(var(--sol-color-neutral-1-rgb)/0.4);--sol-color-interactive-opacity-selected:rgba(var(--sol-color-neutral-1-rgb)/0.6);--sol-color-interactive-negative:var(--sol-color-negative-1);--sol-color-interactive-negative-hovered:var(--sol-color-negative-3);--sol-color-interactive-negative-pressed:var(--sol-color-negative-2);--sol-color-interactive-negative-selected:var(--sol-color-neutral-4);--sol-color-interactive-notice:var(--sol-color-notice-1);--sol-color-interactive-notice-hovered:var(--sol-color-notice-3);--sol-color-interactive-notice-pressed:var(--sol-color-notice-2);--sol-color-interactive-notice-selected:var(--sol-color-neutral-4);--sol-color-interactive-positive:var(--sol-color-positive-1);--sol-color-interactive-positive-hovered:var(--sol-color-positive-3);--sol-color-interactive-positive-pressed:var(--sol-color-positive-2);--sol-color-interactive-positive-selected:var(--sol-color-neutral-4);--sol-color-interactive-neutral:var(--sol-color-neutral-4);--sol-color-interactive-neutral-hovered:var(--sol-color-neutral-4);--sol-color-interactive-neutral-pressed:var(--sol-color-neutral-3);--sol-color-interactive-neutral-selected:var(--sol-color-neutral-4);--sol-color-status-informative:var(--sol-color-primary-7);--sol-color-status-informative-fill:var(--sol-color-primary-6);--sol-color-status-informative-fill-contrast:var(--sol-color-neutral-4);--sol-color-status-positive:var(--sol-color-positive-2);--sol-color-status-positive-fill:var(--sol-color-positive-1);--sol-color-status-positive-fill-contrast:var(--sol-color-neutral-1);--sol-color-status-notice:var(--sol-color-notice-3);--sol-color-status-notice-fill:var(--sol-color-notice-1);--sol-color-status-notice-fill-contrast:var(--sol-color-neutral-1);--sol-color-status-negative:var(--sol-color-negative-3);--sol-color-status-negative-fill:var(--sol-color-negative-1);--sol-color-status-negative-fill-contrast:var(--sol-color-neutral-1);--sol-color-status-highlight:var(--sol-color-highlight-3);--sol-color-status-highlight-fill:var(--sol-color-highlight-1);--sol-color-status-highlight-fill-contrast:var(--sol-color-neutral-1);--sol-color-status-neutral:var(--sol-color-neutral-3);--sol-color-status-neutral-fill:var(--sol-color-neutral-2);--sol-color-status-neutral-fill-contrast:var(--sol-color-neutral-4);--sol-color-foreground:var(--sol-color-neutral-4);--sol-color-foreground-weak:var(--sol-color-neutral-3);--sol-color-foreground-highlight:var(--sol-color-primary-7);--sol-font-family-primary:univia-pro,system-ui,sans-serif;--sol-font-family-secondary:roboto,system-ui,sans-serif;--sol-font-offset-primary:-0.075em;--sol-font-offset-secondary:-0.04em;--sol-font-size-050:0.5rem;--sol-font-size-0625:0.625rem;--sol-font-size-075:0.75rem;--sol-font-size-0875:0.875rem;--sol-font-size-100:1rem;--sol-font-size-125:1.25rem;--sol-font-size-150:1.5rem;--sol-font-size-200:2rem;--sol-font-size-250:2.5rem;--sol-line-height-075:0.75rem;--sol-line-height-100:1rem;--sol-line-height-125:1.25rem;--sol-line-height-150:1.5rem;--sol-line-height-200:2rem;--sol-line-height-250:2.5rem;--sol-line-height-300:3rem;--sol-letter-spacing-none:0em;--sol-letter-spacing-normal:0.005em;--sol-letter-spacing-button:0.02em;--sol-font-weight-4:400;--sol-font-weight-6:600;--sol-font-weight-7:700;--sol-font-style-normal:normal;--sol-font-style-italic:italic;--sol-text-decoration-none:none;--sol-text-decoration-underline:underline;--sol-text-decoration-strikethrough:line-through;--sol-text-transform-none:none;--sol-text-transform-lowercase:lowercase;--sol-text-transform-uppercase:uppercase;--sol-text-heading-l-font-size:var(--sol-font-size-250);--sol-text-heading-l-line-height:var(--sol-line-height-300);--sol-text-heading-l-font-offset:var(--sol-font-offset-primary);--sol-text-heading-l:var(--sol-font-weight-6) var(--sol-text-heading-l-font-size) /var(--sol-text-heading-l-line-height) var(--sol-font-family-primary);--sol-text-heading-m-font-size:var(--sol-font-size-200);--sol-text-heading-m-line-height:var(--sol-line-height-250);--sol-text-heading-m-font-offset:var(--sol-font-offset-primary);--sol-text-heading-m:var(--sol-font-weight-6) var(--sol-text-heading-m-font-size) /var(--sol-text-heading-m-line-height) var(--sol-font-family-primary);--sol-text-heading-s-font-size:var(--sol-font-size-150);--sol-text-heading-s-line-height:var(--sol-line-height-200);--sol-text-heading-s-font-offset:var(--sol-font-offset-primary);--sol-text-heading-s:var(--sol-font-weight-6) var(--sol-text-heading-s-font-size) /var(--sol-text-heading-s-line-height) var(--sol-font-family-primary);--sol-text-heading-xs-font-size:var(--sol-font-size-125);--sol-text-heading-xs-line-height:var(--sol-line-height-150);--sol-text-heading-xs-font-offset:var(--sol-font-offset-primary);--sol-text-heading-xs:var(--sol-font-weight-6) var(--sol-text-heading-xs-font-size) /var(--sol-text-heading-xs-line-height) var(--sol-font-family-primary);--sol-text-emphasis-l-font-size:var(--sol-font-size-150);--sol-text-emphasis-l-line-height:var(--sol-line-height-200);--sol-text-emphasis-l-font-offset:var(--sol-font-offset-primary);--sol-text-emphasis-l:var(--sol-font-weight-6) var(--sol-text-emphasis-l-font-size) /var(--sol-text-emphasis-l-line-height) var(--sol-font-family-primary);--sol-text-emphasis-m-font-size:var(--sol-font-size-125);--sol-text-emphasis-m-line-height:var(--sol-line-height-150);--sol-text-emphasis-m-font-offset:var(--sol-font-offset-primary);--sol-text-emphasis-m:var(--sol-font-weight-6) var(--sol-text-emphasis-m-font-size) /var(--sol-text-emphasis-m-line-height) var(--sol-font-family-primary);--sol-text-emphasis-s-font-size:var(--sol-font-size-100);--sol-text-emphasis-s-line-height:var(--sol-line-height-150);--sol-text-emphasis-s-font-offset:var(--sol-font-offset-primary);--sol-text-emphasis-s:var(--sol-font-weight-6) var(--sol-text-emphasis-s-font-size) /var(--sol-text-emphasis-s-line-height) var(--sol-font-family-primary);--sol-text-body-l-font-size:var(--sol-font-size-125);--sol-text-body-l-line-height:var(--sol-line-height-150);--sol-text-body-l-font-offset:var(--sol-font-offset-secondary);--sol-text-body-l:var(--sol-font-weight-4) var(--sol-text-body-l-font-size) /var(--sol-text-body-l-line-height) var(--sol-font-family-secondary);--sol-text-body-l-bold-font-size:var(--sol-font-size-125);--sol-text-body-l-bold-line-height:var(--sol-line-height-150);--sol-text-body-l-bold-font-offset:var(--sol-font-offset-secondary);--sol-text-body-l-bold:var(--sol-font-weight-7) var(--sol-text-body-l-bold-font-size) /var(--sol-text-body-l-bold-line-height) var(--sol-font-family-secondary);--sol-text-body-m-font-size:var(--sol-font-size-100);--sol-text-body-m-line-height:var(--sol-line-height-150);--sol-text-body-m-font-offset:var(--sol-font-offset-secondary);--sol-text-body-m:var(--sol-font-weight-4) var(--sol-text-body-m-font-size) /var(--sol-text-body-m-line-height) var(--sol-font-family-secondary);--sol-text-body-m-bold-font-size:var(--sol-font-size-100);--sol-text-body-m-bold-line-height:var(--sol-line-height-150);--sol-text-body-m-bold-font-offset:var(--sol-font-offset-secondary);--sol-text-body-m-bold:var(--sol-font-weight-7) var(--sol-text-body-m-bold-font-size) /var(--sol-text-body-m-bold-line-height) var(--sol-font-family-secondary);--sol-text-body-s-font-size:var(--sol-font-size-0875);--sol-text-body-s-line-height:var(--sol-line-height-125);--sol-text-body-s-font-offset:var(--sol-font-offset-secondary);--sol-text-body-s:var(--sol-font-weight-4) var(--sol-text-body-s-font-size) /var(--sol-text-body-s-line-height) var(--sol-font-family-secondary);--sol-text-body-s-bold-font-size:var(--sol-font-size-0875);--sol-text-body-s-bold-line-height:var(--sol-line-height-125);--sol-text-body-s-bold-font-offset:var(--sol-font-offset-secondary);--sol-text-body-s-bold:var(--sol-font-weight-7) var(--sol-text-body-s-bold-font-size) /var(--sol-text-body-s-bold-line-height) var(--sol-font-family-secondary);--sol-text-body-xs-font-size:var(--sol-font-size-075);--sol-text-body-xs-line-height:var(--sol-line-height-100);--sol-text-body-xs-font-offset:var(--sol-font-offset-secondary);--sol-text-body-xs:var(--sol-font-weight-4) var(--sol-text-body-xs-font-size) /var(--sol-text-body-xs-line-height) var(--sol-font-family-secondary);--sol-text-body-xs-bold-font-size:var(--sol-font-size-075);--sol-text-body-xs-bold-line-height:var(--sol-line-height-100);--sol-text-body-xs-bold-font-offset:var(--sol-font-offset-secondary);--sol-text-body-xs-bold:var(--sol-font-weight-7) var(--sol-text-body-xs-bold-font-size) /var(--sol-text-body-xs-bold-line-height) var(--sol-font-family-secondary);--sol-text-body-xxs-font-size:var(--sol-font-size-0625);--sol-text-body-xxs-line-height:var(--sol-line-height-100);--sol-text-body-xxs-font-offset:var(--sol-font-offset-secondary);--sol-text-body-xxs:var(--sol-font-weight-4) var(--sol-text-body-xxs-font-size) /var(--sol-text-body-xxs-line-height) var(--sol-font-family-secondary);--sol-text-body-xxs-bold-font-size:var(--sol-font-size-0625);--sol-text-body-xxs-bold-line-height:var(--sol-line-height-100);--sol-text-body-xxs-bold-font-offset:var(--sol-font-offset-secondary);--sol-text-body-xxs-bold:var(--sol-font-weight-7) var(--sol-text-body-xxs-bold-font-size) /var(--sol-text-body-xxs-bold-line-height) var(--sol-font-family-secondary);--sol-text-button-m-font-size:var(--sol-font-size-100);--sol-text-button-m-line-height:var(--sol-line-height-150);--sol-text-button-m-font-offset:var(--sol-font-offset-primary);--sol-text-button-m:var(--sol-font-weight-6) var(--sol-text-button-m-font-size) /var(--sol-text-button-m-line-height) var(--sol-font-family-primary);--sol-text-button-s-font-size:var(--sol-font-size-0875);--sol-text-button-s-line-height:var(--sol-line-height-125);--sol-text-button-s-font-offset:var(--sol-font-offset-primary);--sol-text-button-s:var(--sol-font-weight-6) var(--sol-text-button-s-font-size) /var(--sol-text-button-s-line-height) var(--sol-font-family-primary);--sol-text-label-m-font-size:var(--sol-font-size-100);--sol-text-label-m-line-height:var(--sol-line-height-150);--sol-text-label-m-font-offset:var(--sol-font-offset-secondary);--sol-text-label-m:var(--sol-font-weight-4) var(--sol-text-label-m-font-size) /var(--sol-text-label-m-line-height) var(--sol-font-family-secondary);--sol-text-label-s-font-size:var(--sol-font-size-075);--sol-text-label-s-line-height:var(--sol-line-height-100);--sol-text-label-s-font-offset:var(--sol-font-offset-secondary);--sol-text-label-s:var(--sol-font-weight-4) var(--sol-text-label-s-font-size) /var(--sol-text-label-s-line-height) var(--sol-font-family-secondary);--sol-text-label-xs-font-size:var(--sol-font-size-0625);--sol-text-label-xs-line-height:var(--sol-line-height-075);--sol-text-label-xs-font-offset:var(--sol-font-offset-secondary);--sol-text-label-xs:var(--sol-font-weight-4) var(--sol-text-label-xs-font-size) /var(--sol-text-label-xs-line-height) var(--sol-font-family-secondary);--sol-motion-0:0s;--sol-motion-150:150ms;--sol-motion-200:200ms;--sol-motion-250:250ms;--sol-motion-300:300ms;--sol-motion-350:350ms;--sol-motion-500:500ms;--sol-motion-1000:1000ms;--sol-motion-1500:1500ms;--sol-motion-4000:4000ms;--sol-motion-linear:cubic-bezier(0,0,1,1);--sol-motion-ease:cubic-bezier(0.25,0.1,0.25,1);--sol-motion-ease-in:cubic-bezier(0.42,0,1,1);--sol-motion-ease-out:cubic-bezier(.39,.01,.2,.98);--sol-motion-ease-in-out:cubic-bezier(.31,.01,.61,.99);--sol-motion-anim-wipe-duration:var(--sol-motion-1500);--sol-motion-anim-wipe-easing:cubic-bezier(.93,0,.5,.96);--sol-motion-angle:45deg;--sol-motion-spin:sol-motion-spin var(--sol-motion-500) var(--sol-motion-linear) infinite}@keyframes sol-motion-fade-in{0%{opacity:0;pointer-events:none;user-select:none}to{opacity:1;pointer-events:auto;transform:translate(0);user-select:auto}}@keyframes sol-motion-fade-out{to{opacity:0}}@keyframes sol-motion-spin{to{transform:rotate(1turn)}}:root,[data-sol-theme]{--sol-default-background:var(--sol-color-background);--sol-default-foreground:var(--sol-color-foreground);--sol-default-font-family:var(--sol-font-family-secondary);--sol-cursor-interactive:pointer;--sol-cursor-link:pointer;--sol-cursor-disabled:default;--sol-cursor-text:text;--sol-focus-width:2px;--sol-focus-offset:1px;--sol-focus-color:var(--sol-color-focused);--sol-scrollbar-track:var(--sol-color-surface-1);--sol-scrollbar-track-hovered:var(--sol-color-surface-1);--sol-scrollbar-track-pressed:var(--sol-color-surface-1);--sol-scrollbar-thumb:var(--sol-color-surface-3);--sol-scrollbar-thumb-hovered:var(--sol-color-surface-3);--sol-scrollbar-thumb-pressed:var(--sol-color-surface-3);--sol-scrollbar-width:var(--sol-size-100);--sol-scrollbar-border:var(--sol-size-025);--sol-scrollbar-radius:var(--sol-radius-rounded);--sol-z-actions:70;--sol-z-tutorial:60;--sol-z-tooltip:50;--sol-z-toasts:40;--sol-z-menu:30;--sol-z-popover:20;--sol-z-dialog:10;--sol-shadow-0:none;--sol-shadow-050:0 0 var(--sol-size-050) rgb(var(--sol-color-neutral-1-rgb)/0.4);--sol-shadow-100:0 0 var(--sol-size-100) rgb(var(--sol-color-neutral-1-rgb)/0.4);--sol-shadow-150:0 0 var(--sol-size-150) rgb(var(--sol-color-neutral-1-rgb)/0.4);--sol-size-0:0rem;--sol-size-0125:0.125rem;--sol-size-025:0.25rem;--sol-size-050:0.5rem;--sol-size-075:0.75rem;--sol-size-100:1rem;--sol-size-125:1.25rem;--sol-size-150:1.5rem;--sol-size-200:2rem;--sol-size-250:2.5rem;--sol-size-300:3rem;--sol-size-350:3.5rem;--sol-size-400:4rem;--sol-size-450:4.5rem;--sol-size-500:5rem;--sol-size-550:5.5rem;--sol-size-600:6rem;--sol-size-full:100%;--sol-size-three-quarters:75%;--sol-size-half:50%;--sol-size-quarter:25%;--sol-size-third:33.3333333333%;--sol-size-two-thirds:66.6666666667%;accent-color:var(--sol-color-accent-1);color-scheme:dark}}@layer defaults{:root,[data-sol-theme]{color:var(--sol-default-foreground);font-family:var(--sol-default-font-family)}.sol-theme-root[data-sol-theme],:root{background:var(--sol-default-background)}:focus{outline:var(--sol-focus-width) solid var(--sol-focus-color);outline-offset:var(--sol-focus-offset)}:focus:not(:focus-visible){outline:none}:focus-visible{outline:var(--sol-focus-width) solid var(--sol-focus-color);outline-offset:var(--sol-focus-offset)}a{cursor:var(--sol-cursor-link)}[role=button],[role=option],button,label,select,summary{cursor:var(--sol-cursor-interactive)}:disabled,a:not([href]){cursor:var(--sol-cursor-disabled)}@property --_track-color{syntax:"<color>";inherits:true;initial-value:#0000}@property --_thumb-color{syntax:"<color>";inherits:true;initial-value:#0000}@supports not selector(::-webkit-scrollbar){*{scrollbar-color:var(--sol-scrollbar-thumb) var(--sol-scrollbar-track);scrollbar-width:thin}}::-webkit-resizer,::-webkit-scrollbar-corner{background-color:initial}::-webkit-scrollbar,::-webkit-scrollbar-thumb,::-webkit-scrollbar-track,::-webkit-scrollbar-track-piece{background-clip:padding-box;border:var(--sol-scrollbar-border) solid #0000;border-radius:var(--sol-scrollbar-radius);height:var(--sol-scrollbar-width);width:var(--sol-scrollbar-width)}::-webkit-scrollbar-track,::-webkit-scrollbar-track-piece{background-color:var(--_track-color)}::-webkit-scrollbar-track-piece:hover,::-webkit-scrollbar-track:hover{--_track-color:var(--sol-scrollbar-track-hovered)}::-webkit-scrollbar-track-piece:active,::-webkit-scrollbar-track:active{background-color:var(--sol-scrollbar-track-pressed)}::-webkit-scrollbar-thumb{background-color:var(--sol-scrollbar-thumb)}::-webkit-scrollbar-thumb:hover{background-color:var(--sol-scrollbar-thumb-hovered)}::-webkit-scrollbar-thumb:active{background-color:var(--sol-scrollbar-thumb-pressed)}[data-sol-scrollbar-background=true]{--_track-color:var(--sol-scrollbar-track);--_thumb-color:var(--sol-scrollbar-thumb)}[data-sol-scrollbar-hidden=true]{transition:--_thumb-color var(--sol-motion-250)}[data-sol-scrollbar-hidden=true]::-webkit-scrollbar-thumb{background-color:var(--_thumb-color)}[data-sol-scrollbar-hidden=true]:hover{--_thumb-color:var(--sol-scrollbar-thumb-hovered)}:root{--sol-prefers-reduced-motion:reduce}@media (prefers-reduced-motion:no-preference){:root{--sol-prefers-reduced-motion:no-preference}}}@layer utilities{.sol-u-animation-wipe{--_in:wipeIn calc(var(--sol-motion-anim-wipe-duration)/2) var(--sol-motion-anim-wipe-easing) forwards;--_out:wipeOut calc(var(--sol-motion-anim-wipe-duration)/2) var(--sol-motion-anim-wipe-easing) forwards;--_in-rtl:wipeInRtL calc(var(--sol-motion-anim-wipe-duration)/2) var(--sol-motion-anim-wipe-easing) forwards;--_out-rtl:wipeOutRtL calc(var(--sol-motion-anim-wipe-duration)/2) var(--sol-motion-anim-wipe-easing) forwards;--_extra-width:60%;--_angle:25deg;--_background:var(--sol-color-surface-0);--_pos-out-left:translateX(calc(-100% - var(--_extra-width)/2)) skew(calc(var(--_angle)*-1));--_pos-out-mid:translateX(calc(var(--_extra-width)/-2.2)) skew(calc(var(--_angle)*-1));--_pos-out-right:translateX(calc(100% + var(--_extra-width)/2)) skew(calc(var(--_angle)*-1));overflow-x:hidden}.sol-u-animation-wipe:before{background:var(--_background);content:"";filter:brightness(1.1);height:100%;left:0;opacity:1;pointer-events:none;position:absolute;top:0;transform:var(--_pos-out-left);user-select:none;width:calc(100% + var(--_extra-width));will-change:transform;z-index:10}.sol-u-animation-wipe[data-sol-animation-wipe=in]:before{animation:var(--_in)}.sol-u-animation-wipe[data-sol-animation-wipe=out]:before{animation:var(--_out)}.sol-u-animation-wipe[data-sol-animation-wipe=in-rtl]:before{animation:var(--_in-rtl)}.sol-u-animation-wipe[data-sol-animation-wipe=out-rtl]:before{animation:var(--_out-rtl)}@keyframes wipeIn{0%{opacity:1;transform:var(--_pos-out-left)}to{transform:var(--_pos-out-mid)}}@keyframes wipeInRtL{0%{opacity:1;transform:var(--_pos-out-right)}to{transform:var(--_pos-out-mid)}}@keyframes wipeOut{0%{opacity:1;transform:var(--_pos-out-mid)}to{transform:var(--_pos-out-right)}}@keyframes wipeOutRtL{0%{opacity:1;transform:var(--_pos-out-mid)}to{transform:var(--_pos-out-left)}}.sol-u-app-version{color:var(--sol-color-foreground-weak);font:var(--sol-text-body-xs);inset-block-end:var(--sol-size-050);inset-inline-start:var(--sol-size-050);position:fixed;z-index:var(--sol-z-actions)}.sol-u-background-surface-0{background-color:var(--sol-color-surface-0)}.sol-u-color-surface-0{color:var(--sol-color-surface-0)}.sol-u-background-surface-1{background-color:var(--sol-color-surface-1)}.sol-u-color-surface-1{color:var(--sol-color-surface-1)}.sol-u-background-surface-2{background-color:var(--sol-color-surface-2)}.sol-u-color-surface-2{color:var(--sol-color-surface-2)}.sol-u-background-surface-3{background-color:var(--sol-color-surface-3)}.sol-u-color-surface-3{color:var(--sol-color-surface-3)}.sol-u-background-status-informative{background-color:var(--sol-color-status-informative)}.sol-u-color-status-informative{color:var(--sol-color-status-informative)}.sol-u-background-status-informative-fill{background-color:var(--sol-color-status-informative-fill)}.sol-u-color-status-informative-fill{color:var(--sol-color-status-informative-fill)}.sol-u-background-status-informative-fill-contrast{background-color:var(--sol-color-status-informative-fill-contrast)}.sol-u-color-status-informative-fill-contrast{color:var(--sol-color-status-informative-fill-contrast)}.sol-u-background-status-positive{background-color:var(--sol-color-status-positive)}.sol-u-color-status-positive{color:var(--sol-color-status-positive)}.sol-u-background-status-positive-fill{background-color:var(--sol-color-status-positive-fill)}.sol-u-color-status-positive-fill{color:var(--sol-color-status-positive-fill)}.sol-u-background-status-positive-fill-contrast{background-color:var(--sol-color-status-positive-fill-contrast)}.sol-u-color-status-positive-fill-contrast{color:var(--sol-color-status-positive-fill-contrast)}.sol-u-background-status-notice{background-color:var(--sol-color-status-notice)}.sol-u-color-status-notice{color:var(--sol-color-status-notice)}.sol-u-background-status-notice-fill{background-color:var(--sol-color-status-notice-fill)}.sol-u-color-status-notice-fill{color:var(--sol-color-status-notice-fill)}.sol-u-background-status-notice-fill-contrast{background-color:var(--sol-color-status-notice-fill-contrast)}.sol-u-color-status-notice-fill-contrast{color:var(--sol-color-status-notice-fill-contrast)}.sol-u-background-status-negative{background-color:var(--sol-color-status-negative)}.sol-u-color-status-negative{color:var(--sol-color-status-negative)}.sol-u-background-status-negative-fill{background-color:var(--sol-color-status-negative-fill)}.sol-u-color-status-negative-fill{color:var(--sol-color-status-negative-fill)}.sol-u-background-status-negative-fill-contrast{background-color:var(--sol-color-status-negative-fill-contrast)}.sol-u-color-status-negative-fill-contrast{color:var(--sol-color-status-negative-fill-contrast)}.sol-u-background-status-highlight{background-color:var(--sol-color-status-highlight)}.sol-u-color-status-highlight{color:var(--sol-color-status-highlight)}.sol-u-background-status-highlight-fill{background-color:var(--sol-color-status-highlight-fill)}.sol-u-color-status-highlight-fill{color:var(--sol-color-status-highlight-fill)}.sol-u-background-status-highlight-fill-contrast{background-color:var(--sol-color-status-highlight-fill-contrast)}.sol-u-color-status-highlight-fill-contrast{color:var(--sol-color-status-highlight-fill-contrast)}.sol-u-background-status-neutral{background-color:var(--sol-color-status-neutral)}.sol-u-color-status-neutral{color:var(--sol-color-status-neutral)}.sol-u-background-status-neutral-fill{background-color:var(--sol-color-status-neutral-fill)}.sol-u-color-status-neutral-fill{color:var(--sol-color-status-neutral-fill)}.sol-u-background-status-neutral-fill-contrast{background-color:var(--sol-color-status-neutral-fill-contrast)}.sol-u-color-status-neutral-fill-contrast{color:var(--sol-color-status-neutral-fill-contrast)}.sol-u-background-foreground{background-color:var(--sol-color-foreground)}.sol-u-color-foreground{color:var(--sol-color-foreground)}.sol-u-background-foreground-weak{background-color:var(--sol-color-foreground-weak)}.sol-u-color-foreground-weak{color:var(--sol-color-foreground-weak)}.sol-u-background-foreground-highlight{background-color:var(--sol-color-foreground-highlight)}.sol-u-color-foreground-highlight{color:var(--sol-color-foreground-highlight)}.sol-u-display-none{display:none}.sol-u-display-block{display:block}.sol-u-display-inline{display:inline}.sol-u-display-inline-block{display:inline-block}.sol-u-display-flex{display:flex}.sol-u-display-inline-flex{display:inline-flex}.sol-u-display-grid{display:grid}.sol-u-display-inline-grid{display:inline-grid}.sol-u-display-contents{display:contents}.sol-u-disable-selection{cursor:default;user-select:none}.sol-u-disable-selection :is(a,img):not([draggable=true]){-webkit-user-drag:none}.sol-u-enable-selection{cursor:var(--sol-cursor-text);user-select:text}.sol-u-gap-0{gap:var(--sol-size-0)}.sol-u-gap-0125{gap:var(--sol-size-0125)}.sol-u-gap-025{gap:var(--sol-size-025)}.sol-u-gap-050{gap:var(--sol-size-050)}.sol-u-gap-075{gap:var(--sol-size-075)}.sol-u-gap-100{gap:var(--sol-size-100)}.sol-u-gap-125{gap:var(--sol-size-125)}.sol-u-gap-150{gap:var(--sol-size-150)}.sol-u-gap-200{gap:var(--sol-size-200)}.sol-u-gap-250{gap:var(--sol-size-250)}.sol-u-gap-300{gap:var(--sol-size-300)}.sol-u-gap-350{gap:var(--sol-size-350)}.sol-u-gap-400{gap:var(--sol-size-400)}.sol-u-gap-450{gap:var(--sol-size-450)}.sol-u-gap-500{gap:var(--sol-size-500)}.sol-u-gap-550{gap:var(--sol-size-550)}.sol-u-gap-600{gap:var(--sol-size-600)}.sol-u-padding-0{padding:var(--sol-size-0)}.sol-u-padding-0125{padding:var(--sol-size-0125)}.sol-u-padding-025{padding:var(--sol-size-025)}.sol-u-padding-050{padding:var(--sol-size-050)}.sol-u-padding-075{padding:var(--sol-size-075)}.sol-u-padding-100{padding:var(--sol-size-100)}.sol-u-padding-125{padding:var(--sol-size-125)}.sol-u-padding-150{padding:var(--sol-size-150)}.sol-u-padding-200{padding:var(--sol-size-200)}.sol-u-padding-250{padding:var(--sol-size-250)}.sol-u-padding-300{padding:var(--sol-size-300)}.sol-u-padding-350{padding:var(--sol-size-350)}.sol-u-padding-400{padding:var(--sol-size-400)}.sol-u-padding-450{padding:var(--sol-size-450)}.sol-u-padding-500{padding:var(--sol-size-500)}.sol-u-padding-550{padding:var(--sol-size-550)}.sol-u-padding-600{padding:var(--sol-size-600)}.sol-u-padding-b-0{padding-block:var(--sol-size-0)}.sol-u-padding-b-0125{padding-block:var(--sol-size-0125)}.sol-u-padding-b-025{padding-block:var(--sol-size-025)}.sol-u-padding-b-050{padding-block:var(--sol-size-050)}.sol-u-padding-b-075{padding-block:var(--sol-size-075)}.sol-u-padding-b-100{padding-block:var(--sol-size-100)}.sol-u-padding-b-125{padding-block:var(--sol-size-125)}.sol-u-padding-b-150{padding-block:var(--sol-size-150)}.sol-u-padding-b-200{padding-block:var(--sol-size-200)}.sol-u-padding-b-250{padding-block:var(--sol-size-250)}.sol-u-padding-b-300{padding-block:var(--sol-size-300)}.sol-u-padding-b-350{padding-block:var(--sol-size-350)}.sol-u-padding-b-400{padding-block:var(--sol-size-400)}.sol-u-padding-b-450{padding-block:var(--sol-size-450)}.sol-u-padding-b-500{padding-block:var(--sol-size-500)}.sol-u-padding-b-550{padding-block:var(--sol-size-550)}.sol-u-padding-b-600{padding-block:var(--sol-size-600)}.sol-u-padding-bs-0{padding-block-start:var(--sol-size-0)}.sol-u-padding-bs-0125{padding-block-start:var(--sol-size-0125)}.sol-u-padding-bs-025{padding-block-start:var(--sol-size-025)}.sol-u-padding-bs-050{padding-block-start:var(--sol-size-050)}.sol-u-padding-bs-075{padding-block-start:var(--sol-size-075)}.sol-u-padding-bs-100{padding-block-start:var(--sol-size-100)}.sol-u-padding-bs-125{padding-block-start:var(--sol-size-125)}.sol-u-padding-bs-150{padding-block-start:var(--sol-size-150)}.sol-u-padding-bs-200{padding-block-start:var(--sol-size-200)}.sol-u-padding-bs-250{padding-block-start:var(--sol-size-250)}.sol-u-padding-bs-300{padding-block-start:var(--sol-size-300)}.sol-u-padding-bs-350{padding-block-start:var(--sol-size-350)}.sol-u-padding-bs-400{padding-block-start:var(--sol-size-400)}.sol-u-padding-bs-450{padding-block-start:var(--sol-size-450)}.sol-u-padding-bs-500{padding-block-start:var(--sol-size-500)}.sol-u-padding-bs-550{padding-block-start:var(--sol-size-550)}.sol-u-padding-bs-600{padding-block-start:var(--sol-size-600)}.sol-u-padding-be-0{padding-block-end:var(--sol-size-0)}.sol-u-padding-be-0125{padding-block-end:var(--sol-size-0125)}.sol-u-padding-be-025{padding-block-end:var(--sol-size-025)}.sol-u-padding-be-050{padding-block-end:var(--sol-size-050)}.sol-u-padding-be-075{padding-block-end:var(--sol-size-075)}.sol-u-padding-be-100{padding-block-end:var(--sol-size-100)}.sol-u-padding-be-125{padding-block-end:var(--sol-size-125)}.sol-u-padding-be-150{padding-block-end:var(--sol-size-150)}.sol-u-padding-be-200{padding-block-end:var(--sol-size-200)}.sol-u-padding-be-250{padding-block-end:var(--sol-size-250)}.sol-u-padding-be-300{padding-block-end:var(--sol-size-300)}.sol-u-padding-be-350{padding-block-end:var(--sol-size-350)}.sol-u-padding-be-400{padding-block-end:var(--sol-size-400)}.sol-u-padding-be-450{padding-block-end:var(--sol-size-450)}.sol-u-padding-be-500{padding-block-end:var(--sol-size-500)}.sol-u-padding-be-550{padding-block-end:var(--sol-size-550)}.sol-u-padding-be-600{padding-block-end:var(--sol-size-600)}.sol-u-padding-i-0{padding-inline:var(--sol-size-0)}.sol-u-padding-i-0125{padding-inline:var(--sol-size-0125)}.sol-u-padding-i-025{padding-inline:var(--sol-size-025)}.sol-u-padding-i-050{padding-inline:var(--sol-size-050)}.sol-u-padding-i-075{padding-inline:var(--sol-size-075)}.sol-u-padding-i-100{padding-inline:var(--sol-size-100)}.sol-u-padding-i-125{padding-inline:var(--sol-size-125)}.sol-u-padding-i-150{padding-inline:var(--sol-size-150)}.sol-u-padding-i-200{padding-inline:var(--sol-size-200)}.sol-u-padding-i-250{padding-inline:var(--sol-size-250)}.sol-u-padding-i-300{padding-inline:var(--sol-size-300)}.sol-u-padding-i-350{padding-inline:var(--sol-size-350)}.sol-u-padding-i-400{padding-inline:var(--sol-size-400)}.sol-u-padding-i-450{padding-inline:var(--sol-size-450)}.sol-u-padding-i-500{padding-inline:var(--sol-size-500)}.sol-u-padding-i-550{padding-inline:var(--sol-size-550)}.sol-u-padding-i-600{padding-inline:var(--sol-size-600)}.sol-u-padding-is-0{padding-inline-start:var(--sol-size-0)}.sol-u-padding-is-0125{padding-inline-start:var(--sol-size-0125)}.sol-u-padding-is-025{padding-inline-start:var(--sol-size-025)}.sol-u-padding-is-050{padding-inline-start:var(--sol-size-050)}.sol-u-padding-is-075{padding-inline-start:var(--sol-size-075)}.sol-u-padding-is-100{padding-inline-start:var(--sol-size-100)}.sol-u-padding-is-125{padding-inline-start:var(--sol-size-125)}.sol-u-padding-is-150{padding-inline-start:var(--sol-size-150)}.sol-u-padding-is-200{padding-inline-start:var(--sol-size-200)}.sol-u-padding-is-250{padding-inline-start:var(--sol-size-250)}.sol-u-padding-is-300{padding-inline-start:var(--sol-size-300)}.sol-u-padding-is-350{padding-inline-start:var(--sol-size-350)}.sol-u-padding-is-400{padding-inline-start:var(--sol-size-400)}.sol-u-padding-is-450{padding-inline-start:var(--sol-size-450)}.sol-u-padding-is-500{padding-inline-start:var(--sol-size-500)}.sol-u-padding-is-550{padding-inline-start:var(--sol-size-550)}.sol-u-padding-is-600{padding-inline-start:var(--sol-size-600)}.sol-u-padding-ie-0{padding-inline-end:var(--sol-size-0)}.sol-u-padding-ie-0125{padding-inline-end:var(--sol-size-0125)}.sol-u-padding-ie-025{padding-inline-end:var(--sol-size-025)}.sol-u-padding-ie-050{padding-inline-end:var(--sol-size-050)}.sol-u-padding-ie-075{padding-inline-end:var(--sol-size-075)}.sol-u-padding-ie-100{padding-inline-end:var(--sol-size-100)}.sol-u-padding-ie-125{padding-inline-end:var(--sol-size-125)}.sol-u-padding-ie-150{padding-inline-end:var(--sol-size-150)}.sol-u-padding-ie-200{padding-inline-end:var(--sol-size-200)}.sol-u-padding-ie-250{padding-inline-end:var(--sol-size-250)}.sol-u-padding-ie-300{padding-inline-end:var(--sol-size-300)}.sol-u-padding-ie-350{padding-inline-end:var(--sol-size-350)}.sol-u-padding-ie-400{padding-inline-end:var(--sol-size-400)}.sol-u-padding-ie-450{padding-inline-end:var(--sol-size-450)}.sol-u-padding-ie-500{padding-inline-end:var(--sol-size-500)}.sol-u-padding-ie-550{padding-inline-end:var(--sol-size-550)}.sol-u-padding-ie-600{padding-inline-end:var(--sol-size-600)}.sol-u-margin-0{margin:var(--sol-size-0)}.sol-u-margin-0125{margin:var(--sol-size-0125)}.sol-u-margin-025{margin:var(--sol-size-025)}.sol-u-margin-050{margin:var(--sol-size-050)}.sol-u-margin-075{margin:var(--sol-size-075)}.sol-u-margin-100{margin:var(--sol-size-100)}.sol-u-margin-125{margin:var(--sol-size-125)}.sol-u-margin-150{margin:var(--sol-size-150)}.sol-u-margin-200{margin:var(--sol-size-200)}.sol-u-margin-250{margin:var(--sol-size-250)}.sol-u-margin-300{margin:var(--sol-size-300)}.sol-u-margin-350{margin:var(--sol-size-350)}.sol-u-margin-400{margin:var(--sol-size-400)}.sol-u-margin-450{margin:var(--sol-size-450)}.sol-u-margin-500{margin:var(--sol-size-500)}.sol-u-margin-550{margin:var(--sol-size-550)}.sol-u-margin-600{margin:var(--sol-size-600)}.sol-u-margin-b-0{margin-block:var(--sol-size-0)}.sol-u-margin-b-0125{margin-block:var(--sol-size-0125)}.sol-u-margin-b-025{margin-block:var(--sol-size-025)}.sol-u-margin-b-050{margin-block:var(--sol-size-050)}.sol-u-margin-b-075{margin-block:var(--sol-size-075)}.sol-u-margin-b-100{margin-block:var(--sol-size-100)}.sol-u-margin-b-125{margin-block:var(--sol-size-125)}.sol-u-margin-b-150{margin-block:var(--sol-size-150)}.sol-u-margin-b-200{margin-block:var(--sol-size-200)}.sol-u-margin-b-250{margin-block:var(--sol-size-250)}.sol-u-margin-b-300{margin-block:var(--sol-size-300)}.sol-u-margin-b-350{margin-block:var(--sol-size-350)}.sol-u-margin-b-400{margin-block:var(--sol-size-400)}.sol-u-margin-b-450{margin-block:var(--sol-size-450)}.sol-u-margin-b-500{margin-block:var(--sol-size-500)}.sol-u-margin-b-550{margin-block:var(--sol-size-550)}.sol-u-margin-b-600{margin-block:var(--sol-size-600)}.sol-u-margin-bs-0{margin-block-start:var(--sol-size-0)}.sol-u-margin-bs-0125{margin-block-start:var(--sol-size-0125)}.sol-u-margin-bs-025{margin-block-start:var(--sol-size-025)}.sol-u-margin-bs-050{margin-block-start:var(--sol-size-050)}.sol-u-margin-bs-075{margin-block-start:var(--sol-size-075)}.sol-u-margin-bs-100{margin-block-start:var(--sol-size-100)}.sol-u-margin-bs-125{margin-block-start:var(--sol-size-125)}.sol-u-margin-bs-150{margin-block-start:var(--sol-size-150)}.sol-u-margin-bs-200{margin-block-start:var(--sol-size-200)}.sol-u-margin-bs-250{margin-block-start:var(--sol-size-250)}.sol-u-margin-bs-300{margin-block-start:var(--sol-size-300)}.sol-u-margin-bs-350{margin-block-start:var(--sol-size-350)}.sol-u-margin-bs-400{margin-block-start:var(--sol-size-400)}.sol-u-margin-bs-450{margin-block-start:var(--sol-size-450)}.sol-u-margin-bs-500{margin-block-start:var(--sol-size-500)}.sol-u-margin-bs-550{margin-block-start:var(--sol-size-550)}.sol-u-margin-bs-600{margin-block-start:var(--sol-size-600)}.sol-u-margin-be-0{margin-block-end:var(--sol-size-0)}.sol-u-margin-be-0125{margin-block-end:var(--sol-size-0125)}.sol-u-margin-be-025{margin-block-end:var(--sol-size-025)}.sol-u-margin-be-050{margin-block-end:var(--sol-size-050)}.sol-u-margin-be-075{margin-block-end:var(--sol-size-075)}.sol-u-margin-be-100{margin-block-end:var(--sol-size-100)}.sol-u-margin-be-125{margin-block-end:var(--sol-size-125)}.sol-u-margin-be-150{margin-block-end:var(--sol-size-150)}.sol-u-margin-be-200{margin-block-end:var(--sol-size-200)}.sol-u-margin-be-250{margin-block-end:var(--sol-size-250)}.sol-u-margin-be-300{margin-block-end:var(--sol-size-300)}.sol-u-margin-be-350{margin-block-end:var(--sol-size-350)}.sol-u-margin-be-400{margin-block-end:var(--sol-size-400)}.sol-u-margin-be-450{margin-block-end:var(--sol-size-450)}.sol-u-margin-be-500{margin-block-end:var(--sol-size-500)}.sol-u-margin-be-550{margin-block-end:var(--sol-size-550)}.sol-u-margin-be-600{margin-block-end:var(--sol-size-600)}.sol-u-margin-i-0{margin-inline:var(--sol-size-0)}.sol-u-margin-i-0125{margin-inline:var(--sol-size-0125)}.sol-u-margin-i-025{margin-inline:var(--sol-size-025)}.sol-u-margin-i-050{margin-inline:var(--sol-size-050)}.sol-u-margin-i-075{margin-inline:var(--sol-size-075)}.sol-u-margin-i-100{margin-inline:var(--sol-size-100)}.sol-u-margin-i-125{margin-inline:var(--sol-size-125)}.sol-u-margin-i-150{margin-inline:var(--sol-size-150)}.sol-u-margin-i-200{margin-inline:var(--sol-size-200)}.sol-u-margin-i-250{margin-inline:var(--sol-size-250)}.sol-u-margin-i-300{margin-inline:var(--sol-size-300)}.sol-u-margin-i-350{margin-inline:var(--sol-size-350)}.sol-u-margin-i-400{margin-inline:var(--sol-size-400)}.sol-u-margin-i-450{margin-inline:var(--sol-size-450)}.sol-u-margin-i-500{margin-inline:var(--sol-size-500)}.sol-u-margin-i-550{margin-inline:var(--sol-size-550)}.sol-u-margin-i-600{margin-inline:var(--sol-size-600)}.sol-u-margin-is-0{margin-inline-start:var(--sol-size-0)}.sol-u-margin-is-0125{margin-inline-start:var(--sol-size-0125)}.sol-u-margin-is-025{margin-inline-start:var(--sol-size-025)}.sol-u-margin-is-050{margin-inline-start:var(--sol-size-050)}.sol-u-margin-is-075{margin-inline-start:var(--sol-size-075)}.sol-u-margin-is-100{margin-inline-start:var(--sol-size-100)}.sol-u-margin-is-125{margin-inline-start:var(--sol-size-125)}.sol-u-margin-is-150{margin-inline-start:var(--sol-size-150)}.sol-u-margin-is-200{margin-inline-start:var(--sol-size-200)}.sol-u-margin-is-250{margin-inline-start:var(--sol-size-250)}.sol-u-margin-is-300{margin-inline-start:var(--sol-size-300)}.sol-u-margin-is-350{margin-inline-start:var(--sol-size-350)}.sol-u-margin-is-400{margin-inline-start:var(--sol-size-400)}.sol-u-margin-is-450{margin-inline-start:var(--sol-size-450)}.sol-u-margin-is-500{margin-inline-start:var(--sol-size-500)}.sol-u-margin-is-550{margin-inline-start:var(--sol-size-550)}.sol-u-margin-is-600{margin-inline-start:var(--sol-size-600)}.sol-u-margin-ie-0{margin-inline-end:var(--sol-size-0)}.sol-u-margin-ie-0125{margin-inline-end:var(--sol-size-0125)}.sol-u-margin-ie-025{margin-inline-end:var(--sol-size-025)}.sol-u-margin-ie-050{margin-inline-end:var(--sol-size-050)}.sol-u-margin-ie-075{margin-inline-end:var(--sol-size-075)}.sol-u-margin-ie-100{margin-inline-end:var(--sol-size-100)}.sol-u-margin-ie-125{margin-inline-end:var(--sol-size-125)}.sol-u-margin-ie-150{margin-inline-end:var(--sol-size-150)}.sol-u-margin-ie-200{margin-inline-end:var(--sol-size-200)}.sol-u-margin-ie-250{margin-inline-end:var(--sol-size-250)}.sol-u-margin-ie-300{margin-inline-end:var(--sol-size-300)}.sol-u-margin-ie-350{margin-inline-end:var(--sol-size-350)}.sol-u-margin-ie-400{margin-inline-end:var(--sol-size-400)}.sol-u-margin-ie-450{margin-inline-end:var(--sol-size-450)}.sol-u-margin-ie-500{margin-inline-end:var(--sol-size-500)}.sol-u-margin-ie-550{margin-inline-end:var(--sol-size-550)}.sol-u-margin-ie-600{margin-inline-end:var(--sol-size-600)}.sol-u-margin-auto{margin:auto}.sol-u-margin-b-auto{margin-block:auto}.sol-u-margin-bs-auto{margin-block-start:auto}.sol-u-margin-be-auto{margin-block-end:auto}.sol-u-margin-i-auto{margin-inline:auto}.sol-u-margin-is-auto{margin-inline-start:auto}.sol-u-margin-ie-auto{margin-inline-end:auto}.sol-u-text-align-start{text-align:start}.sol-u-text-align-center{text-align:center}.sol-u-text-align-end{text-align:end}.sol-u-text-decoration-none{text-decoration:var(--sol-text-decoration-none)}.sol-u-text-decoration-underline{text-decoration:var(--sol-text-decoration-underline)}.sol-u-text-decoration-strikethrough{text-decoration:var(--sol-text-decoration-strikethrough)}.sol-u-font-style-normal{font-style:var(--sol-font-style-normal)}.sol-u-font-style-italic{font-style:var(--sol-font-style-italic)}.sol-u-text-transform-none{text-transform:var(--sol-text-transform-none)}.sol-u-text-transform-lowercase{text-transform:var(--sol-text-transform-lowercase)}.sol-u-text-transform-uppercase{text-transform:var(--sol-text-transform-uppercase)}.sol-u-text-truncate{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@supports (display:-webkit-box){.sol-u-text-truncate[style*="--sol-u-text-truncate"],[style*="--sol-u-text-truncate"] .sol-u-text-truncate{-webkit-box-orient:vertical;-webkit-line-clamp:var(--sol-u-text-truncate,1);display:-webkit-box;white-space:normal}}.sol-u-transition-floating{--_offset:var(--sol-u-transition-floating-offset,var(--sol-size-050));--_in:var(--sol-u-transition-floating-in,var(--sol-motion-250) var(--sol-motion-ease-out));--_out:var(--sol-u-transition-floating-out,var(--sol-motion-250) var(--sol-motion-ease))}.sol-u-transition-floating[data-sol-status=open]{transition:var(--_in);transition-property:opacity,transform}.sol-u-transition-floating[data-sol-status=close]{transition:var(--_out);transition-property:opacity,transform}.sol-u-transition-floating[data-sol-status=close],.sol-u-transition-floating[data-sol-status=initial]{opacity:0}@container style(--sol-prefers-reduced-motion: no-preference){.sol-u-transition-floating[data-sol-status=close][data-sol-placement^=top],.sol-u-transition-floating[data-sol-status=initial][data-sol-placement^=top]{transform:translateY(var(--_offset))}.sol-u-transition-floating[data-sol-status=close][data-sol-placement^=bottom],.sol-u-transition-floating[data-sol-status=initial][data-sol-placement^=bottom]{transform:translateY(calc(var(--_offset)*-1))}.sol-u-transition-floating[data-sol-status=close][data-sol-placement^=left],.sol-u-transition-floating[data-sol-status=initial][data-sol-placement^=left]{transform:translateX(var(--_offset))}.sol-u-transition-floating[data-sol-status=close][data-sol-placement^=right],.sol-u-transition-floating[data-sol-status=initial][data-sol-placement^=right]{transform:translateX(calc(var(--_offset)*-1))}}.sol-u-hide-visually:not(:focus,:active,:focus-within,.sol-u-show-visually){block-size:1px;border:0;clip-path:inset(50%);inline-size:1px;overflow:hidden;position:absolute;white-space:nowrap}}'), "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof n.g ? n.g : "undefined" != typeof self && self;
var Mo, jo, Fo, zo, Vo, Uo, Bo, Go, Wo = {
exports: {}
},
$o = {};
Wo.exports = function() {
if (Mo) return $o;
Mo = 1;
var e = Symbol.for("react.element"),
t = Symbol.for("react.fragment"),
n = Object.prototype.hasOwnProperty,
r = Ee.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,
i = {
key: !0,
ref: !0,
__self: !0,
__source: !0
};
function a(t, a, o) {
var s, l = {},
c = null,
u = null;
for (s in void 0 !== o && (c = "" + o), void 0 !== a.key && (c = "" + a.key), void 0 !== a.ref && (u = a.ref), a) n.call(a, s) && !i.hasOwnProperty(s) && (l[s] = a[s]);
if (t && t.defaultProps)
for (s in a = t.defaultProps) void 0 === l[s] && (l[s] = a[s]);
return {
$$typeof: e,
type: t,
key: c,
ref: u,
props: l,
_owner: r.current
}
}
return $o.Fragment = t, $o.jsx = a, $o.jsxs = a, $o
}();
var qo = Wo.exports;
No('@layer components{.sol-c-accordion{--_radius:var(--sol-radius-8);--_duration:var(--sol-motion-350)}.sol-c-accordion__actions{align-self:center;display:flex;gap:var(--sol-size-050);justify-content:flex-end;padding:var(--sol-size-050)}.sol-c-accordion__items{border-radius:var(--_radius);overflow:hidden}.sol-c-accordion__item{background:var(--sol-color-surface-1);color:var(--sol-color-foreground)}.sol-c-accordion__header{--_background:var(--sol-color-surface-2);--sol-focus-offset:calc(var(--sol-focus-width)*-1);align-items:center;background:#0000 none;cursor:var(--sol-cursor-interactive);display:flex;gap:var(--sol-size-100);inline-size:100%;padding-block:var(--sol-size-100);padding-inline:var(--sol-size-150);position:relative;text-align:start;transition:border-radius var(--sol-motion-250) var(--sol-motion-ease-in);z-index:1}.sol-c-accordion__header:after{background-color:var(--_background);content:"";display:block;inset:0;position:absolute;transition:background-color var(--sol-motion-250) var(--sol-motion-ease-in);z-index:-1}.sol-c-accordion__item:first-child .sol-c-accordion__header{border-start-end-radius:var(--_radius);border-start-start-radius:var(--_radius)}.sol-c-accordion__item:last-child .sol-c-accordion__header[aria-expanded=false]{border-end-end-radius:var(--_radius);border-end-start-radius:var(--_radius)}.sol-c-accordion__item:not(:first-child) .sol-c-accordion__header:after{box-shadow:inset 0 var(--sol-border-1) 0 0 var(--sol-color-surface-3)}.sol-c-accordion__header:hover{--_background:var(--sol-color-surface-2-hovered)}.sol-c-accordion__header:active{--_background:var(--sol-color-surface-2-pressed)}.sol-c-accordion__icon{margin-inline-start:auto;transition:opacity var(--sol-motion-250) var(--sol-motion-ease-in)}.sol-c-accordion__icon--plus{inset-block:0;inset-inline-end:var(--sol-size-150);margin-block:auto;position:absolute}.sol-c-accordion__header[aria-expanded=false] .sol-c-accordion__icon--minus,.sol-c-accordion__header[aria-expanded=true] .sol-c-accordion__icon--plus{opacity:0}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-accordion__content{display:grid;grid-template-rows:1fr;overflow:hidden;transition:grid-template-rows var(--_duration) var(--sol-motion-ease-out)}.sol-c-accordion__content[hidden]{display:grid;grid-template-rows:0fr}}.sol-c-accordion__wrapper{min-height:0;padding-inline:var(--sol-size-250);transition:visibility var(--_duration)}.sol-c-accordion__wrapper:after,.sol-c-accordion__wrapper:before{block-size:var(--sol-size-250);content:"";display:block}.sol-c-accordion__content[hidden] .sol-c-accordion__wrapper{visibility:hidden}}');
let Ho = (0, Ee.createContext)(null);
No('@layer components{.sol-c-button{--_color-default:var(--sol-color-interactive);--_color-hovered:var(--sol-color-interactive-hovered);--_color-pressed:var(--sol-color-interactive-pressed);--_color-selected:var(--sol-color-interactive-selected);--_color-contrast:var(--sol-color-interactive-contrast);--_background:var(--_color-default);--_background-hovered:var(--_color-hovered);--_background-pressed:var(--_color-pressed);--_background-selected:var(--_color-selected);--_foreground:var(--_color-contrast);--_foreground-hovered:var(--_foreground);--_foreground-pressed:var(--_foreground);--_foreground-selected:var(--_foreground);--_size:var(--sol-c-button-size,var(--sol-size-250));--_padding:var(--sol-c-button-padding,var(--sol-size-050) var(--sol-size-075));--_gap:var(--sol-c-button-gap,var(--sol-size-050));--_duration:var(--sol-motion-250);--_duration-enter:var(--sol-motion-250);--_duration-leave:var(--sol-motion-150);--_easing-enter:var(--sol-motion-ease-in);--_easing-leave:var(--sol-motion-ease-out);align-items:center;border-radius:var(--sol-radius-4);color:var(--_foreground);cursor:var(--sol-cursor-interactive);display:inline-flex;gap:var(--_gap);justify-content:center;min-height:var(--_size);min-width:var(--_size);overflow:hidden;padding:var(--_padding);position:relative;text-align:center;transition-duration:var(--_duration);transition-property:background-color,color,opacity;user-select:none}.sol-c-button,.sol-c-button:before{background-color:var(--_background)}.sol-c-button:before{content:"";display:block;inset:0;opacity:0;position:absolute;transition-duration:var(--_duration-leave);transition-property:background-color,opacity;transition-timing-function:var(--_easing-leave);z-index:1}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-button:before{transform:scale(2) skewX(-45deg) translateX(-100%);transition-delay:0s,0s,var(--_duration-leave);transition-duration:var(--_duration-leave),var(--_duration-leave),0s;transition-property:background-color,opacity,transform}.sol-c-button:active:before,.sol-c-button:hover:before,.sol-c-button[aria-expanded=true]:before,.sol-c-button[aria-pressed=true]:before,[data-sol-button-group]:active:not(:has(.sol-c-button:active)) .sol-c-button--controlled:before,[data-sol-button-group]:hover:not(:has(.sol-c-button:hover)) .sol-c-button--controlled:before{transform:scale(2) skewX(-45deg) translateX(0)}}.sol-c-button:hover:before,.sol-c-button[aria-expanded=true]:before,.sol-c-button[aria-pressed=true]:before,[data-sol-button-group]:hover:not(:has(.sol-c-button:hover)) .sol-c-button--controlled:before{opacity:1;transition-duration:var(--_duration-enter);transition-timing-function:var(--_easing-enter)}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-button:hover:before,.sol-c-button[aria-expanded=true]:before,.sol-c-button[aria-pressed=true]:before,[data-sol-button-group]:hover:not(:has(.sol-c-button:hover)) .sol-c-button--controlled:before{transition-delay:0s;transition-duration:var(--_duration-enter),0s,var(--_duration-enter)}}.sol-c-button[aria-expanded=true],.sol-c-button[aria-pressed=true]{color:var(--_foreground-selected)}.sol-c-button[aria-expanded=true]:before,.sol-c-button[aria-pressed=true]:before{background-color:var(--_background-selected)}.sol-c-button:hover,[data-sol-button-group]:hover:not(:has(.sol-c-button:hover)) .sol-c-button--controlled{color:var(--_foreground-hovered)}.sol-c-button:hover:before,[data-sol-button-group]:hover:not(:has(.sol-c-button:hover)) .sol-c-button--controlled:before{background-color:var(--_background-hovered)}.sol-c-button:active,[data-sol-button-group]:active:not(:has(.sol-c-button:active)) .sol-c-button--controlled{color:var(--_foreground-pressed)}.sol-c-button:active:before,[data-sol-button-group]:active:not(:has(.sol-c-button:active)) .sol-c-button--controlled:before{background-color:var(--_background-pressed)}.sol-c-button:disabled,.sol-c-button[aria-disabled=true]{opacity:.4;pointer-events:none}.sol-c-button--align-start{justify-content:flex-start;text-align:start}.sol-c-button--align-end{justify-content:flex-end;text-align:end}.sol-c-button--full-width{display:flex;inline-size:100%}.sol-c-button--negative{--_color-default:var(--sol-color-interactive-negative);--_color-hovered:var(--sol-color-interactive-negative-hovered);--_color-pressed:var(--sol-color-interactive-negative-pressed);--_color-selected:var(--sol-color-interactive-negative-selected)}.sol-c-button--notice{--_color-default:var(--sol-color-interactive-notice);--_color-hovered:var(--sol-color-interactive-notice-hovered);--_color-pressed:var(--sol-color-interactive-notice-pressed);--_color-selected:var(--sol-color-interactive-notice-selected)}.sol-c-button--positive{--_color-default:var(--sol-color-interactive-positive);--_color-hovered:var(--sol-color-interactive-positive-hovered);--_color-pressed:var(--sol-color-interactive-positive-pressed);--_color-selected:var(--sol-color-interactive-positive-selected)}.sol-c-button--monochrome,.sol-c-button--plain{--_background:var(--sol-color-interactive-opacity);--_background-hovered:var(--sol-color-interactive-opacity-hovered);--_background-pressed:var(--sol-color-interactive-opacity-pressed);--_background-selected:var(--sol-color-interactive-opacity-selected);background:#0000}.sol-c-button--monochrome:before,.sol-c-button--plain:before{background-color:var(--_background)}.sol-c-button--monochrome.sol-c-button:before,.sol-c-button--plain.sol-c-button:before{opacity:1;transform:none;transition:background-color var(--_duration)}.sol-c-button--monochrome{--_foreground:var(--sol-color-interactive-neutral);--_foreground-hovered:var(--sol-color-interactive-neutral-hovered);--_foreground-pressed:var(--sol-color-interactive-neutral-pressed);--_foreground-selected:var(--sol-color-interactive-neutral-selected)}.sol-c-button--plain{--_foreground:var(--_color-default);--_foreground-hovered:var(--_color-hovered);--_foreground-pressed:var(--_color-pressed);--_foreground-selected:var(--_color-selected)}.sol-c-button--small{--_size:var(--sol-c-button-size,var(--sol-size-150));--_padding:var(--sol-c-button-padding,var(--sol-size-0125) var(--sol-size-025));--_gap:var(--sol-c-button-gap,var(--sol-size-025))}.sol-c-button--large{--_size:var(--sol-c-button--size,var(--sol-size-300));--_padding:var(--sol-c-button-padding,var(--sol-size-050) var(--sol-size-100))}.sol-c-button__content{align-items:center;display:flex;gap:var(--_gap);min-inline-size:0}.sol-c-button__content,.sol-c-button__icon{position:relative;z-index:2}.sol-c-button--align-start .sol-c-button__icon--end{margin-inline-start:auto}.sol-c-button--align-end .sol-c-button__icon--start{margin-inline-end:auto}.sol-c-button__loading{align-items:center;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:3}.sol-c-button__content,.sol-c-button__icon{transition:opacity var(--_duration)}.sol-c-button__content[hidden],.sol-c-button__icon[hidden]{display:block;opacity:0}}');
let Ko = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M8.75 1.75V7h5.594v.006a.75.75 0 0 1 0 1.488V8.5H8.75v5.875h-.01a.75.75 0 0 1-1.48 0h-.01V8.5h-5.5c.001 0 0 0 0 0h-.094v-.006a.75.75 0 0 1 0-1.488V7H7.25V1.75a.75.75 0 0 1 1.5 0Z"
}))
},
Yo = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M14 4.75a.74.74 0 0 1-.163.466l.006.005-7.007 7.011a.747.747 0 0 1-1.139.01L2.182 8.724l.002-.002A.75.75 0 0 1 3.24 7.665l.012.01a.755.755 0 0 1 .05.051l2.96 2.962 6.418-6.423a.747.747 0 0 1 .087-.087l.017-.017.001.002A.75.75 0 0 1 14 4.75Z"
}))
},
Qo = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M11.564 6.68a.75.75 0 1 0-1.061-1.06l-3.47 3.47L5.43 7.485a.75.75 0 0 0-1.06 1.061l2.133 2.133a.75.75 0 0 0 1.06 0l4-4Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0Zm-1.5 0a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0Z",
clipRule: "evenodd"
}))
},
Zo = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
vectorEffect: "non-scaling-stroke",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fill: "none",
stroke: "currentColor",
strokeLinecap: "round",
strokeLinejoin: "round",
strokeWidth: 1.5,
d: "m2.821 8.765 3.453 3.453 7.081-7.082",
pathLength: 1
}))
},
Xo = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M12.006 2.8a.742.742 0 0 0 .232-.68.762.762 0 0 0-.884-.608.766.766 0 0 0-.328.14h-.001L4.05 7.403a.745.745 0 0 0-.056 1.147l.01.009a.758.758 0 0 0 .04.033l6.965 5.744c.166.13.385.191.61.152a.745.745 0 0 0 .33-1.335L5.702 8l6.256-5.158a.759.759 0 0 0 .04-.033l.009-.009Z"
}))
},
Jo = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "m1.186 2.288.002-.001a.78.78 0 0 1 1.1-1.1l.001-.002.035.035a.772.772 0 0 1 .017.017l5.66 5.66 5.71-5.711.002.002a.78.78 0 0 1 1.1 1.1l.002.001-.035.035a.973.973 0 0 1-.017.017L9.104 8l5.69 5.69h-.002a.78.78 0 1 1-1.155 1.05L8.002 9.103l-5.69 5.69H2.31a.78.78 0 1 1-1.05-1.155L6.898 8 1.186 2.288Z"
}))
},
es = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "M8.75 11a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm-1.5-6a.75.75 0 0 1 1.5 0v3.75a.75.75 0 0 1-1.5 0V5Z"
}))
},
ts = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M13.199 12.006c.168.183.42.279.68.232a.762.762 0 0 0 .609-.884.767.767 0 0 0-.141-.329L8.598 4.05a.745.745 0 0 0-1.148-.056l-.008.01a.763.763 0 0 0-.033.04l-5.744 6.965a.772.772 0 0 0-.153.61.745.745 0 0 0 1.335.33L8 5.702l5.159 6.256.033.04.008.009Z"
}))
},
ns = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M2.8 3.994a.742.742 0 0 0-.68-.232.762.762 0 0 0-.608.884c.02.123.07.235.14.328l5.751 6.976a.745.745 0 0 0 1.147.056l.009-.01a.764.764 0 0 0 .032-.04l5.745-6.966a.772.772 0 0 0 .152-.61.745.745 0 0 0-1.335-.33L8 10.3 2.84 4.042a.762.762 0 0 0-.032-.04L2.8 3.995Z"
}))
},
rs = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "m14.124 9.492-.813-.792-.813.792a.523.523 0 0 1-.726 0 .49.49 0 0 1 0-.706l.813-.792-.813-.792a.49.49 0 0 1 0-.706.523.523 0 0 1 .726 0l.813.792.813-.792a.523.523 0 0 1 .726 0c.2.195.2.51 0 .706l-.814.792.814.792c.2.195.2.511 0 .706a.523.523 0 0 1-.726 0Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M7.497 4.864 4.974 6.31a2.5 2.5 0 0 1-1.243.331H2.497v2.73h1.234a2.5 2.5 0 0 1 1.243.331l2.523 1.446V4.864Zm.003-1.73A1 1 0 0 1 8.997 4v8.01a1 1 0 0 1-1.497.868l-3.272-1.875a1 1 0 0 0-.497-.133H1.997a1 1 0 0 1-1-1V6.14a1 1 0 0 1 1-1h1.734a1 1 0 0 0 .497-.132L7.5 3.134Z",
clipRule: "evenodd"
}))
},
is = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M2.475 3.137a.974.974 0 0 0-.975.971v9.23c0 .537.437.972.975.972h9.267a.974.974 0 0 0 .976-.972V8.45a.73.73 0 0 0-.732-.729.73.73 0 0 0-.73.76l-.001 4.372H2.963V4.594h3.902v-.002a.73.73 0 0 0 .67-.727.73.73 0 0 0-.67-.726v-.002h-4.39Z"
}), Ee.createElement("path", {
d: "M13.769 1.313h-4.05a.732.732 0 0 0-.583.21.727.727 0 0 0 .553 1.243h2.314L7.822 6.931v.001a.727.727 0 0 0 .03 1 .734.734 0 0 0 1.003.029h.001l4.182-4.164v2.305a.72.72 0 0 0 .213.55.734.734 0 0 0 1.246-.58V2.039a.732.732 0 0 0-.728-.725Z"
}))
},
as = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M8 2.75a5.25 5.25 0 1 0 2.73 9.736.75.75 0 0 1 .78 1.28 6.75 6.75 0 1 1 2.552-8.737.75.75 0 1 1-1.346.661A5.25 5.25 0 0 0 8 2.75Z",
"transform-origin": "center center"
}, Ee.createElement("animateTransform", {
attributeName: "transform",
dur: "800ms",
repeatCount: "indefinite",
to: 360,
type: "rotate"
})))
},
os = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M2.773 8.75h-.016A.761.761 0 0 1 2 8a.76.76 0 0 1 .757-.75h10.309v.016a.799.799 0 0 1 .16-.016c.428 0 .774.336.774.75s-.346.75-.773.75a.799.799 0 0 1-.161-.016v.016H2.773Z"
}))
},
ss = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M13.065 15a.967.967 0 0 1-.684-1.65l.967-.968a.967.967 0 1 1 1.37 1.368l-.968.967a.967.967 0 0 1-.683.283h-.002Zm-5.452 0a.967.967 0 0 1-.683-1.65l6.418-6.42a.967.967 0 1 1 1.37 1.367l-6.42 6.42a.967.967 0 0 1-.683.283h-.002Zm-5.646 0a.967.967 0 0 1-.684-1.65L13.347 1.283a.968.968 0 0 1 1.368 1.367L2.65 14.717a.967.967 0 0 1-.683.283Z"
}))
},
ls = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M2.712 8C3.77 9.642 5.778 11 8 11c2.222 0 4.231-1.358 5.287-3C12.232 6.358 10.223 5 8 5S3.769 6.358 2.712 8Zm-1.497-.418C2.428 5.408 5.009 3.5 8 3.5s5.572 1.908 6.785 4.082a.857.857 0 0 1 0 .836C13.572 10.592 10.991 12.5 8 12.5s-5.572-1.908-6.785-4.082a.857.857 0 0 1 0-.836Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 8.5a.5.5 0 1 0 0-1 .5.5 0 0 0 0 1ZM8 10a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",
clipRule: "evenodd"
}))
},
cs = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M1.388 12.68a.787.787 0 0 1 .168-1.093l1.41-1.04a8.02 8.02 0 0 1-1.751-2.129.857.857 0 0 1 0-.836C2.428 5.408 5.009 3.5 8 3.5a7.41 7.41 0 0 1 3.384.838l1.61-1.188a.769.769 0 0 1 1.081.17.787.787 0 0 1-.168 1.093L9.899 7.37a2 2 0 0 1-3.061 2.258l-4.37 3.222a.769.769 0 0 1-1.081-.17Zm7.477-6.484A2 2 0 0 0 6.02 8.293L4.211 9.63A6.685 6.685 0 0 1 2.711 8C3.77 6.358 5.778 5 8 5a5.77 5.77 0 0 1 1.994.363l-1.13.833Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "m6.778 10.864-1.495 1.103A7.293 7.293 0 0 0 8 12.5c2.991 0 5.572-1.908 6.785-4.082a.857.857 0 0 0 0-.836 7.855 7.855 0 0 0-1.275-1.683l-1.222.9c.388.37.726.776 1 1.201C12.23 9.642 10.221 11 8 11a5.62 5.62 0 0 1-1.222-.136Z"
}))
},
us = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M14 8c0 .71-.411 1.393-1.146 1.9a.602.602 0 0 1-.252.093.727.727 0 0 1-.285-.017.52.52 0 0 1-.225-.12.277.277 0 0 1-.092-.183V6.326a.277.277 0 0 1 .092-.183.52.52 0 0 1 .226-.12c.09-.024.19-.03.285-.016a.602.602 0 0 1 .251.092C13.59 6.607 14 7.29 14 8Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M7.497 4.864 4.974 6.31a2.5 2.5 0 0 1-1.243.331H2.497v2.73h1.234a2.5 2.5 0 0 1 1.243.331l2.523 1.446V4.864Zm.003-1.73A1 1 0 0 1 8.997 4v8.01a1 1 0 0 1-1.497.868l-3.272-1.875a1 1 0 0 0-.497-.133H1.997a1 1 0 0 1-1-1V6.14a1 1 0 0 1 1-1h1.734a1 1 0 0 0 .497-.132L7.5 3.134Z",
clipRule: "evenodd"
}))
},
ds = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M7.539 4.862 4.873 6.306c-.368.217-.786.33-1.21.33H2.46v2.727h1.202c.424 0 .842.114 1.21.33l2.666 1.445V4.862Zm.003-1.728C8.192 2.752 9 3.234 9 4v8c0 .767-.809 1.248-1.458.867l-3.395-1.873a.956.956 0 0 0-.484-.132H1.974a.987.987 0 0 1-.974-1V6.138c0-.551.436-.999.974-.999h1.689a.95.95 0 0 0 .484-.132l3.395-1.872Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "M12.724 5.072a.71.71 0 0 1 .231.17v.002c.331.36.594.789.773 1.26A4.2 4.2 0 0 1 14 7.995a4.2 4.2 0 0 1-.272 1.49c-.179.472-.442.9-.773 1.261a.71.71 0 0 1-.23.169.66.66 0 0 1-.273.06.682.682 0 0 1-.503-.228.786.786 0 0 1-.155-.252.841.841 0 0 1 .154-.849 2.36 2.36 0 0 0 .463-.758 2.526 2.526 0 0 0 0-1.788 2.36 2.36 0 0 0-.463-.758.788.788 0 0 1-.154-.253.842.842 0 0 1 .155-.848.712.712 0 0 1 .23-.168.66.66 0 0 1 .545 0Z"
}))
},
ps = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M11.951 3.485a.783.783 0 0 1 .159-.252.71.71 0 0 1 .517-.227.71.71 0 0 1 .518.228c2.473 2.63 2.473 6.912 0 9.543a.708.708 0 0 1-.517.23.709.709 0 0 1-.517-.229.807.807 0 0 1-.214-.55c0-.207.076-.405.213-.552 1.904-2.024 1.904-5.318 0-7.342a.783.783 0 0 1-.159-.253.824.824 0 0 1 0-.596Z"
}), Ee.createElement("path", {
d: "M11.01 5.081c.09.04.17.097.238.17v.001c.34.362.61.79.794 1.263a4.11 4.11 0 0 1 0 2.983 3.91 3.91 0 0 1-.794 1.263.73.73 0 0 1-.237.169.692.692 0 0 1-.796-.168.825.825 0 0 1-.001-1.102c.203-.217.365-.475.475-.76a2.473 2.473 0 0 0 0-1.79 2.352 2.352 0 0 0-.476-.759.786.786 0 0 1-.158-.253.825.825 0 0 1 .16-.849.729.729 0 0 1 .237-.169.69.69 0 0 1 .559.001Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M7.5 4.864 4.977 6.31a2.5 2.5 0 0 1-1.243.331H2.5v2.73h1.234a2.5 2.5 0 0 1 1.243.331L7.5 11.148V4.864Zm.003-1.73A1 1 0 0 1 9 4v8.01a1 1 0 0 1-1.497.868L4.23 11.004a1 1 0 0 0-.497-.133H2a1 1 0 0 1-1-1v-3.73a1 1 0 0 1 1-1h1.734a1 1 0 0 0 .497-.132l3.272-1.875Z",
clipRule: "evenodd"
}))
},
hs = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 3.184 2.675 13.431h10.65L8 3.184Zm.887-1.545a1 1 0 0 0-1.775 0L.965 13.47a1 1 0 0 0 .887 1.461h12.296a1 1 0 0 0 .887-1.46L8.887 1.638Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "M8.75 12.181a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm-1.5-5.5a.75.75 0 1 1 1.5 0v3.25a.75.75 0 0 1-1.5 0v-3.25Z"
}))
};
function fs() {
for (var e, t, n = 0, r = ""; n < arguments.length;)(e = arguments[n++]) && (t = function e(t) {
var n, r, i = "";
if ("string" == typeof t || "number" == typeof t) i += t;
else if ("object" == typeof t)
if (Array.isArray(t))
for (n = 0; n < t.length; n++) t[n] && (r = e(t[n])) && (i && (i += " "), i += r);
else
for (n in t) t[n] && (i && (i += " "), i += n);
return i
}(e)) && (r && (r += " "), r += t);
return r
}
let ms = e => (0, Ee.forwardRef)(e),
gs = (...e) => t => e.forEach((e => {
((e, t) => {
if (null != e) {
if ("function" == typeof e) return void e(t);
try {
e.current = t
} catch (Re) {
throw Error(`Cannot assign value '${t}' to ref '${e}'`)
}
}
})(e, t)
})),
vs = (...e) => {
let t = {
...e[0]
};
for (let n = 1; n < e.length; n++) {
let r = e[n];
for (let e in r) {
let n = t[e],
i = r[e];
"className" === e && "string" == typeof n && "string" == typeof i ? t[e] = [n, i].join(" ").trim() : "style" === e && "object" == typeof n && "object" == typeof i ? t[e] = {
...n,
...i
} : "o" === e[0] && "n" === e[1] && e.charCodeAt(2) >= 65 && 90 >= e.charCodeAt(2) && "function" == typeof n && "function" == typeof i ? t[e] = (...e) => {
n(...e), i(...e)
} : t[e] = "ref" === e ? gs(n, i) : i ?? n
}
}
return t
},
ys = (e, t = []) => {
let n = (0, Ee.useRef)(e);
return (0, Ee.useEffect)((() => {
n.current = e
})), (0, Ee.useCallback)(((...e) => n.current?.(...e)), t)
},
_s = ({
value: e,
defaultValue: t,
onChange: n,
shouldUpdate: r = ((e, t) => e !== t)
}) => {
let i = ys(n, []),
a = ys(r),
[o, s] = (0, Ee.useState)(t),
l = void 0 !== e,
c = l ? e : o,
u = ys((e => {
let t = "function" == typeof e ? e(c) : e;
a(c, t) && (l || s(t), i(t))
}), [l, i, c, a]);
return [c, u, l]
};
function bs(e, t, n) {
return e[t] ? e[t][0] ? e[t][0][n] : e[t][n] : "contentBoxSize" === t ? e.contentRect["inlineSize" === n ? "width" : "height"] : void 0
}
function xs(e) {
void 0 === e && (e = {});
var t, n, r, i, a, o, s = e.onResize,
l = (0, Ee.useRef)(void 0);
l.current = s;
var c = e.round || Math.round,
u = (0, Ee.useRef)(),
d = (0, Ee.useState)({
width: void 0,
height: void 0
}),
p = d[0],
h = d[1],
f = (0, Ee.useRef)(!1);
(0, Ee.useEffect)((function() {
return f.current = !1,
function() {
f.current = !0
}
}), []);
var m = (0, Ee.useRef)({
width: void 0,
height: void 0
}),
g = (t = (0, Ee.useCallback)((function(t) {
return u.current && u.current.box === e.box && u.current.round === c || (u.current = {
box: e.box,
round: c,
instance: new ResizeObserver((function(t) {
var n = t[0],
r = "border-box" === e.box ? "borderBoxSize" : "device-pixel-content-box" === e.box ? "devicePixelContentBoxSize" : "contentBoxSize",
i = bs(n, r, "inlineSize"),
a = bs(n, r, "blockSize"),
o = i ? c(i) : void 0,
s = a ? c(a) : void 0;
if (m.current.width !== o || m.current.height !== s) {
var u = {
width: o,
height: s
};
m.current.width = o, m.current.height = s, l.current ? l.current(u) : f.current || h(u)
}
}))
}), u.current.instance.observe(t, {
box: e.box
}),
function() {
u.current && u.current.instance.unobserve(t)
}
}), [e.box, c]), n = e.ref, r = (0, Ee.useRef)(null), (i = (0, Ee.useRef)(null)).current = n, a = (0, Ee.useRef)(null), (0, Ee.useEffect)((function() {
o()
})), o = (0, Ee.useCallback)((function() {
var e = a.current,
n = i.current,
o = e || (n ? n instanceof Element ? n : n.current : null);
r.current && r.current.element === o && r.current.subscriber === t || (r.current && r.current.cleanup && r.current.cleanup(), r.current = {
element: o,
subscriber: t,
cleanup: o ? t(o) : void 0
})
}), [t]), (0, Ee.useEffect)((function() {
return function() {
r.current && r.current.cleanup && (r.current.cleanup(), r.current = null)
}
}), []), (0, Ee.useCallback)((function(e) {
a.current = e, o()
}), [o]));
return (0, Ee.useMemo)((function() {
return {
ref: g,
width: p.width,
height: p.height
}
}), [g, p.width, p.height])
}
let ks = ({
content: e,
ref: t
} = {}) => {
let [n, r] = (0, Ee.useState)({
block: !1,
inline: !1
}), i = n.block || n.inline, a = (0, Ee.useRef)(null), o = t || a, s = (0, Ee.useCallback)((() => {
if (o.current) {
let e = window.getComputedStyle(o.current),
t = parseFloat(e.lineHeight),
n = !!e.webkitLineClamp,
i = Math.floor(o.current.scrollHeight / t) > Math.floor(o.current.offsetHeight / t);
r({
block: n ? i : o.current.offsetHeight < o.current.scrollHeight,
inline: o.current.offsetWidth < o.current.scrollWidth
})
}
}), [o]);
return xs({
ref: o,
onResize: s
}), (0, Ee.useEffect)(s, [e, s]), (0, Ee.useMemo)((() => ({
ref: o,
hasOverflow: i,
...n
})), [i, o, n])
},
ws = e => {
let t = (0, Ee.useId)();
return e ?? t
},
Ss = "loading",
Es = "loaded",
Is = "error",
Os = ({
crossOrigin: e,
src: t,
srcSet: n
}) => {
let [r, i] = (0, Ee.useState)(Ss);
return (0, Ee.useEffect)((() => {
if (!t && !n) return void i(Is);
let r = () => {
i(Es)
},
a = () => {
i(Is)
},
o = new Image;
return e && (o.crossOrigin = e), t && (o.src = t), n && (o.srcset = n), o.addEventListener("load", r), o.addEventListener("error", a), () => {
o.removeEventListener("load", r), o.removeEventListener("error", a)
}
}), [e, t, n]), r
},
Cs = "undefined" != typeof document ? Ee.useLayoutEffect : Ee.useEffect,
As = (0, Ee.createContext)(void 0),
Ps = As.Provider;
var Ts = {
exports: {}
};
Uo = Ts.exports, "undefined" != typeof navigator && (Ts.exports = function() {
var e, t, n, r, i, a, o, s, l, c, u = "",
d = !1,
p = function() {
return u
};
function h(e) {
return document.createElement(e)
}
function f(e, t) {
var n, r, i = e.length;
for (n = 0; n < i; n += 1)
for (var a in r = e[n].prototype) Object.prototype.hasOwnProperty.call(r, a) && (t.prototype[a] = r[a])
}
var m = function() {
function e(e) {
this.audios = [], this.audioFactory = e, this._volume = 1, this._isMuted = !1
}
return e.prototype = {
addAudio: function(e) {
this.audios.push(e)
},
pause: function() {
var e, t = this.audios.length;
for (e = 0; e < t; e += 1) this.audios[e].pause()
},
resume: function() {
var e, t = this.audios.length;
for (e = 0; e < t; e += 1) this.audios[e].resume()
},
setRate: function(e) {
var t, n = this.audios.length;
for (t = 0; t < n; t += 1) this.audios[t].setRate(e)
},
createAudio: function(e) {
return this.audioFactory ? this.audioFactory(e) : window.Howl ? new window.Howl({
src: [e]
}) : {
isPlaying: !1,
play: function() {
this.isPlaying = !0
},
seek: function() {
this.isPlaying = !1
},
playing: function() {},
rate: function() {},
setVolume: function() {}
}
},
setAudioFactory: function(e) {
this.audioFactory = e
},
setVolume: function(e) {
this._volume = e, this._updateVolume()
},
mute: function() {
this._isMuted = !0, this._updateVolume()
},
unmute: function() {
this._isMuted = !1, this._updateVolume()
},
getVolume: function() {
return this._volume
},
_updateVolume: function() {
var e, t = this.audios.length;
for (e = 0; e < t; e += 1) this.audios[e].volume(this._volume * (this._isMuted ? 0 : 1))
}
},
function() {
return new e
}
}(),
g = function() {
function e(e, t) {
var n, r = 0,
i = [];
switch (e) {
case "int16":
case "uint8c":
n = 1;
break;
default:
n = 1.1
}
for (r = 0; r < t; r += 1) i.push(n);
return i
}
return "function" == typeof Uint8ClampedArray && "function" == typeof Float32Array ? function(t, n) {
return "float32" === t ? new Float32Array(n) : "int16" === t ? new Int16Array(n) : "uint8c" === t ? new Uint8ClampedArray(n) : e(t, n)
} : e
}();
function v(e) {
return Array.apply(null, {
length: e
})
}
var y = !0,
_ = null,
b = "",
x = /^((?!chrome|android).)*safari/i.test(navigator.userAgent),
k = Math.pow,
w = Math.sqrt,
S = Math.floor,
E = Math.min,
I = 150,
O = Math.PI / 180;
function C(e, t, n, r) {
this.type = e, this.currentTime = t, this.totalTime = n, this.direction = r < 0 ? -1 : 1
}
function A(e, t) {
this.type = e, this.direction = t < 0 ? -1 : 1
}
function P(e, t, n, r) {
this.type = e, this.currentLoop = n, this.totalLoops = t, this.direction = r < 0 ? -1 : 1
}
function T(e, t, n) {
this.type = e, this.firstFrame = t, this.totalFrames = n
}
function R(e, t) {
this.type = e, this.target = t
}
function D(e, t) {
this.type = "renderFrameError", this.nativeError = e, this.currentTime = t
}
function L(e) {
this.type = "configError", this.nativeError = e
}
var N = (e = 0, function() {
return b + "__lottie_element_" + (e += 1)
});
function M(e, t, n) {
var r, i, a, o, s, l, c, u;
switch (l = n * (1 - t), c = n * (1 - (s = 6 * e - (o = Math.floor(6 * e))) * t), u = n * (1 - (1 - s) * t), o % 6) {
case 0:
r = n, i = u, a = l;
break;
case 1:
r = c, i = n, a = l;
break;
case 2:
r = l, i = n, a = u;
break;
case 3:
r = l, i = c, a = n;
break;
case 4:
r = u, i = l, a = n;
break;
case 5:
r = n, i = l, a = c
}
return [r, i, a]
}
function j(e, t, n) {
var r, i = Math.max(e, t, n),
a = Math.min(e, t, n),
o = i - a;
switch (i) {
case a:
r = 0;
break;
case e:
r = (t - n + o * (t < n ? 6 : 0)) / (6 * o);
break;
case t:
r = (n - e + 2 * o) / (6 * o);
break;
case n:
r = (e - t + 4 * o) / (6 * o)
}
return [r, 0 === i ? 0 : o / i, i / 255]
}
function F(e, t) {
var n = j(255 * e[0], 255 * e[1], 255 * e[2]);
return n[1] += t, n[1] > 1 ? n[1] = 1 : n[1] <= 0 && (n[1] = 0), M(n[0], n[1], n[2])
}
function z(e, t) {
var n = j(255 * e[0], 255 * e[1], 255 * e[2]);
return n[2] += t, n[2] > 1 ? n[2] = 1 : n[2] < 0 && (n[2] = 0), M(n[0], n[1], n[2])
}
function V(e, t) {
var n = j(255 * e[0], 255 * e[1], 255 * e[2]);
return n[0] += t / 360, n[0] > 1 ? n[0] -= 1 : n[0] < 0 && (n[0] += 1), M(n[0], n[1], n[2])
}! function() {
var e, t, n = [];
for (e = 0; e < 256; e += 1) t = e.toString(16), n[e] = 1 === t.length ? "0" + t : t
}();
var U = function() {
return _
},
B = function(e) {
I = e
},
G = function() {
return I
};
function W(e) {
return document.createElementNS("http://www.w3.org/2000/svg", e)
}
function $(e) {
return ($ = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
})(e)
}
var q = function() {
var e, t, n = 1,
r = [],
i = {
onmessage: function() {},
postMessage: function(t) {
e({
data: t
})
}
},
a = {
postMessage: function(e) {
i.onmessage({
data: e
})
}
};
function o() {
t || ((t = function(t) {
if (window.Worker && window.Blob && d) {
var n = new Blob(["var _workerSelf = self; self.onmessage = ", t.toString()], {
type: "text/javascript"
}),
r = URL.createObjectURL(n);
return new Worker(r)
}
return e = t, i
}((function(e) {
if (a.dataManager || (a.dataManager = function() {
function e(i, a) {
var o, s, l, c, u, d, p = i.length;
for (s = 0; s < p; s += 1)
if ("ks" in (o = i[s]) && !o.completed) {
if (o.completed = !0, o.hasMask) {
var h = o.masksProperties;
for (l = 0, c = h.length; l < c; l += 1)
if (h[l].pt.k.i) r(h[l].pt.k);
else
for (u = 0, d = h[l].pt.k.length; u < d; u += 1) h[l].pt.k[u].s && r(h[l].pt.k[u].s[0]), h[l].pt.k[u].e && r(h[l].pt.k[u].e[0])
}
0 === o.ty ? (o.layers = t(o.refId, a), e(o.layers, a)) : 4 === o.ty ? n(o.shapes) : 5 === o.ty && 0 === o.t.a.length && o.t.p
}
}
function t(e, t) {
var n = function(e, t) {
for (var n = 0, r = t.length; n < r;) {
if (t[n].id === e) return t[n];
n += 1
}
return null
}(e, t);
return n ? n.layers.__used ? JSON.parse(JSON.stringify(n.layers)) : (n.layers.__used = !0, n.layers) : null
}
function n(e) {
var t, i, a;
for (t = e.length - 1; t >= 0; t -= 1)
if ("sh" === e[t].ty)
if (e[t].ks.k.i) r(e[t].ks.k);
else
for (i = 0, a = e[t].ks.k.length; i < a; i += 1) e[t].ks.k[i].s && r(e[t].ks.k[i].s[0]), e[t].ks.k[i].e && r(e[t].ks.k[i].e[0]);
else "gr" === e[t].ty && n(e[t].it)
}
function r(e) {
var t, n = e.i.length;
for (t = 0; t < n; t += 1) e.i[t][0] += e.v[t][0], e.i[t][1] += e.v[t][1], e.o[t][0] += e.v[t][0], e.o[t][1] += e.v[t][1]
}
function i(e, t) {
var n = t ? t.split(".") : [100, 100, 100];
return e[0] > n[0] || !(n[0] > e[0]) && (e[1] > n[1] || !(n[1] > e[1]) && (e[2] > n[2] || !(n[2] > e[2]) && null))
}
var a, o = function() {
var e = [4, 4, 14];
function t(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) 5 === e[t].ty && function(e) {
var t = e.t.d;
e.t.d = {
k: [{
s: t,
t: 0
}]
}
}(e[t])
}
return function(n) {
if (i(e, n.v) && (t(n.layers), n.assets)) {
var r, a = n.assets.length;
for (r = 0; r < a; r += 1) n.assets[r].layers && t(n.assets[r].layers)
}
}
}(),
s = (a = [4, 7, 99], function(e) {
if (e.chars && !i(a, e.v)) {
var t, r = e.chars.length;
for (t = 0; t < r; t += 1) {
var o = e.chars[t];
o.data && o.data.shapes && (n(o.data.shapes), o.data.ip = 0, o.data.op = 99999, o.data.st = 0, o.data.sr = 1, o.data.ks = {
p: {
k: [0, 0],
a: 0
},
s: {
k: [100, 100],
a: 0
},
a: {
k: [0, 0],
a: 0
},
r: {
k: 0,
a: 0
},
o: {
k: 100,
a: 0
}
}, e.chars[t].t || (o.data.shapes.push({
ty: "no"
}), o.data.shapes[0].it.push({
p: {
k: [0, 0],
a: 0
},
s: {
k: [100, 100],
a: 0
},
a: {
k: [0, 0],
a: 0
},
r: {
k: 0,
a: 0
},
o: {
k: 100,
a: 0
},
sk: {
k: 0,
a: 0
},
sa: {
k: 0,
a: 0
},
ty: "tr"
})))
}
}
}),
l = function() {
var e = [5, 7, 15];
function t(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) 5 === e[t].ty && function(e) {
var t = e.t.p;
"number" == typeof t.a && (t.a = {
a: 0,
k: t.a
}), "number" == typeof t.p && (t.p = {
a: 0,
k: t.p
}), "number" == typeof t.r && (t.r = {
a: 0,
k: t.r
})
}(e[t])
}
return function(n) {
if (i(e, n.v) && (t(n.layers), n.assets)) {
var r, a = n.assets.length;
for (r = 0; r < a; r += 1) n.assets[r].layers && t(n.assets[r].layers)
}
}
}(),
c = function() {
var e = [4, 1, 9];
function t(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) 4 === e[t].ty && function e(t) {
var n, r, i, a = t.length;
for (n = 0; n < a; n += 1)
if ("gr" === t[n].ty) e(t[n].it);
else if ("fl" === t[n].ty || "st" === t[n].ty)
if (t[n].c.k && t[n].c.k[0].i)
for (r = 0, i = t[n].c.k.length; r < i; r += 1) t[n].c.k[r].s && (t[n].c.k[r].s[0] /= 255, t[n].c.k[r].s[1] /= 255, t[n].c.k[r].s[2] /= 255, t[n].c.k[r].s[3] /= 255), t[n].c.k[r].e && (t[n].c.k[r].e[0] /= 255, t[n].c.k[r].e[1] /= 255, t[n].c.k[r].e[2] /= 255, t[n].c.k[r].e[3] /= 255);
else t[n].c.k[0] /= 255, t[n].c.k[1] /= 255, t[n].c.k[2] /= 255, t[n].c.k[3] /= 255
}(e[t].shapes)
}
return function(n) {
if (i(e, n.v) && (t(n.layers), n.assets)) {
var r, a = n.assets.length;
for (r = 0; r < a; r += 1) n.assets[r].layers && t(n.assets[r].layers)
}
}
}(),
u = function() {
var e = [4, 4, 18];
function t(e) {
var t, n, r, i, a, o, s = e.length;
for (n = 0; n < s; n += 1) {
if ((t = e[n]).hasMask) {
var l = t.masksProperties;
for (r = 0, i = l.length; r < i; r += 1)
if (l[r].pt.k.i) l[r].pt.k.c = l[r].cl;
else
for (a = 0, o = l[r].pt.k.length; a < o; a += 1) l[r].pt.k[a].s && (l[r].pt.k[a].s[0].c = l[r].cl), l[r].pt.k[a].e && (l[r].pt.k[a].e[0].c = l[r].cl)
}
4 === t.ty && function e(t) {
var n, r, i;
for (n = t.length - 1; n >= 0; n -= 1)
if ("sh" === t[n].ty)
if (t[n].ks.k.i) t[n].ks.k.c = t[n].closed;
else
for (r = 0, i = t[n].ks.k.length; r < i; r += 1) t[n].ks.k[r].s && (t[n].ks.k[r].s[0].c = t[n].closed), t[n].ks.k[r].e && (t[n].ks.k[r].e[0].c = t[n].closed);
else "gr" === t[n].ty && e(t[n].it)
}(t.shapes)
}
}
return function(n) {
if (i(e, n.v) && (t(n.layers), n.assets)) {
var r, a = n.assets.length;
for (r = 0; r < a; r += 1) n.assets[r].layers && t(n.assets[r].layers)
}
}
}(),
d = {
completeData: function(n) {
n.__complete || (c(n), o(n), s(n), l(n), u(n), e(n.layers, n.assets), function(n, r) {
if (n) {
var i = 0,
a = n.length;
for (i = 0; i < a; i += 1) 1 === n[i].t && (n[i].data.layers = t(n[i].data.refId, r), e(n[i].data.layers, r))
}
}(n.chars, n.assets), n.__complete = !0)
}
};
return d.checkColors = c, d.checkChars = s, d.checkPathProperties = l, d.checkShapes = u, d.completeLayers = e, d
}()), a.assetLoader || (a.assetLoader = function() {
function e(e) {
var t = e.getResponseHeader("content-type");
return t && "json" === e.responseType && -1 !== t.indexOf("json") || e.response && "object" === $(e.response) ? e.response : e.response && "string" == typeof e.response ? JSON.parse(e.response) : e.responseText ? JSON.parse(e.responseText) : null
}
return {
load: function(t, n, r, i) {
var a, o = new XMLHttpRequest;
try {
o.responseType = "json"
} catch (e) {}
o.onreadystatechange = function() {
if (4 === o.readyState)
if (200 === o.status) r(a = e(o));
else try {
a = e(o), r(a)
} catch (e) {
i && i(e)
}
};
try {
o.open("GET", t, !0)
} catch (e) {
o.open("GET", n + "/" + t, !0)
}
o.send()
}
}
}()), "loadAnimation" === e.data.type) a.assetLoader.load(e.data.path, e.data.fullPath, (function(t) {
a.dataManager.completeData(t), a.postMessage({
id: e.data.id,
payload: t,
status: "success"
})
}), (function() {
a.postMessage({
id: e.data.id,
status: "error"
})
}));
else if ("complete" === e.data.type) {
var t = e.data.animation;
a.dataManager.completeData(t), a.postMessage({
id: e.data.id,
payload: t,
status: "success"
})
} else "loadData" === e.data.type && a.assetLoader.load(e.data.path, e.data.fullPath, (function(t) {
a.postMessage({
id: e.data.id,
payload: t,
status: "success"
})
}), (function() {
a.postMessage({
id: e.data.id,
status: "error"
})
}))
}))).onmessage = function(e) {
var t = e.data,
n = t.id,
i = r[n];
r[n] = null, "success" === t.status ? i.onComplete(t.payload) : i.onError && i.onError()
})
}
function s(e, t) {
var i = "processId_" + (n += 1);
return r[i] = {
onComplete: e,
onError: t
}, i
}
return {
loadAnimation: function(e, n, r) {
o();
var i = s(n, r);
t.postMessage({
type: "loadAnimation",
path: e,
fullPath: window.location.origin + window.location.pathname,
id: i
})
},
loadData: function(e, n, r) {
o();
var i = s(n, r);
t.postMessage({
type: "loadData",
path: e,
fullPath: window.location.origin + window.location.pathname,
id: i
})
},
completeAnimation: function(e, n, r) {
o();
var i = s(n, r);
t.postMessage({
type: "complete",
animation: e,
id: i
})
}
}
}(),
H = function() {
var e, t, n = ((e = h("canvas")).width = 1, e.height = 1, (t = e.getContext("2d")).fillStyle = "rgba(0,0,0,0)", t.fillRect(0, 0, 1, 1), e);
function r() {
this.loadedAssets += 1, this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages && this.imagesLoadedCb && this.imagesLoadedCb(null)
}
function i() {
this.loadedFootagesCount += 1, this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages && this.imagesLoadedCb && this.imagesLoadedCb(null)
}
function a(e, t, n) {
var r = "";
if (e.e) r = e.p;
else if (t) {
var i = e.p; - 1 !== i.indexOf("images/") && (i = i.split("/")[1]), r = t + i
} else r = n + (e.u ? e.u : "") + e.p;
return r
}
function o(e) {
var t = 0,
n = setInterval(function() {
(e.getBBox().width || t > 500) && (this._imageLoaded(), clearInterval(n)), t += 1
}.bind(this), 50)
}
function s(e) {
var t = {
assetData: e
},
n = a(e, this.assetsPath, this.path);
return q.loadData(n, function(e) {
t.img = e, this._footageLoaded()
}.bind(this), function() {
t.img = {}, this._footageLoaded()
}.bind(this)), t
}
function l() {
this._imageLoaded = r.bind(this), this._footageLoaded = i.bind(this), this.testImageLoaded = o.bind(this), this.createFootageData = s.bind(this), this.assetsPath = "", this.path = "", this.totalImages = 0, this.totalFootages = 0, this.loadedAssets = 0, this.loadedFootagesCount = 0, this.imagesLoadedCb = null, this.images = []
}
return l.prototype = {
loadAssets: function(e, t) {
this.imagesLoadedCb = t;
var n, r = e.length;
for (n = 0; n < r; n += 1) e[n].layers || (e[n].t && "seq" !== e[n].t ? 3 === e[n].t && (this.totalFootages += 1, this.images.push(this.createFootageData(e[n]))) : (this.totalImages += 1, this.images.push(this._createImageData(e[n]))))
},
setAssetsPath: function(e) {
this.assetsPath = e || ""
},
setPath: function(e) {
this.path = e || ""
},
loadedImages: function() {
return this.totalImages === this.loadedAssets
},
loadedFootages: function() {
return this.totalFootages === this.loadedFootagesCount
},
destroy: function() {
this.imagesLoadedCb = null, this.images.length = 0
},
getAsset: function(e) {
for (var t = 0, n = this.images.length; t < n;) {
if (this.images[t].assetData === e) return this.images[t].img;
t += 1
}
return null
},
createImgData: function(e) {
var t = a(e, this.assetsPath, this.path),
r = h("img");
r.crossOrigin = "anonymous", r.addEventListener("load", this._imageLoaded, !1), r.addEventListener("error", function() {
i.img = n, this._imageLoaded()
}.bind(this), !1), r.src = t;
var i = {
img: r,
assetData: e
};
return i
},
createImageData: function(e) {
var t = a(e, this.assetsPath, this.path),
r = W("image");
x ? this.testImageLoaded(r) : r.addEventListener("load", this._imageLoaded, !1), r.addEventListener("error", function() {
i.img = n, this._imageLoaded()
}.bind(this), !1), r.setAttributeNS("http://www.w3.org/1999/xlink", "href", t), this._elementHelper.append ? this._elementHelper.append(r) : this._elementHelper.appendChild(r);
var i = {
img: r,
assetData: e
};
return i
},
imageLoaded: r,
footageLoaded: i,
setCacheType: function(e, t) {
"svg" === e ? (this._elementHelper = t, this._createImageData = this.createImageData.bind(this)) : this._createImageData = this.createImgData.bind(this)
}
}, l
}();
function K() {}
K.prototype = {
triggerEvent: function(e, t) {
if (this._cbs[e])
for (var n = this._cbs[e], r = 0; r < n.length; r += 1) n[r](t)
},
addEventListener: function(e, t) {
return this._cbs[e] || (this._cbs[e] = []), this._cbs[e].push(t),
function() {
this.removeEventListener(e, t)
}.bind(this)
},
removeEventListener: function(e, t) {
if (t) {
if (this._cbs[e]) {
for (var n = 0, r = this._cbs[e].length; n < r;) this._cbs[e][n] === t && (this._cbs[e].splice(n, 1), n -= 1, r -= 1), n += 1;
this._cbs[e].length || (this._cbs[e] = null)
}
} else this._cbs[e] = null
}
};
var Y = function() {
function e(e) {
this.compositions.push(e)
}
return function() {
function t(e) {
for (var t = 0, n = this.compositions.length; t < n;) {
if (this.compositions[t].data && this.compositions[t].data.nm === e) return this.compositions[t].prepareFrame && this.compositions[t].data.xt && this.compositions[t].prepareFrame(this.currentFrame), this.compositions[t].compInterface;
t += 1
}
return null
}
return t.compositions = [], t.currentFrame = 0, t.registerComposition = e, t
}
}(),
Q = {};
function Z(e) {
return (Z = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
})(e)
}
var X = function() {
this._cbs = [], this.name = "", this.path = "", this.isLoaded = !1, this.currentFrame = 0, this.currentRawFrame = 0, this.firstFrame = 0, this.totalFrames = 0, this.frameRate = 0, this.frameMult = 0, this.playSpeed = 1, this.playDirection = 1, this.playCount = 0, this.animationData = {}, this.assets = [], this.isPaused = !0, this.autoplay = !1, this.loop = !0, this.renderer = null, this.animationID = N(), this.assetsPath = "", this.timeCompleted = 0, this.segmentPos = 0, this.isSubframeEnabled = y, this.segments = [], this._idle = !0, this._completedLoop = !1, this.projectInterface = Y(), this.imagePreloader = new H, this.audioController = m(), this.markers = [], this.configAnimation = this.configAnimation.bind(this), this.onSetupError = this.onSetupError.bind(this), this.onSegmentComplete = this.onSegmentComplete.bind(this), this.drawnFrameEvent = new C("drawnFrame", 0, 0, 0), this.expressionsPlugin = U()
};
f([K], X), X.prototype.setParams = function(e) {
(e.wrapper || e.container) && (this.wrapper = e.wrapper || e.container);
var t = "svg";
e.animType ? t = e.animType : e.renderer && (t = e.renderer);
var n = Q[t];
this.renderer = new n(this, e.rendererSettings), this.imagePreloader.setCacheType(t, this.renderer.globalData.defs), this.renderer.setProjectInterface(this.projectInterface), this.animType = t, "" === e.loop || null === e.loop || void 0 === e.loop || !0 === e.loop ? this.loop = !0 : !1 === e.loop ? this.loop = !1 : this.loop = parseInt(e.loop, 10), this.autoplay = !("autoplay" in e) || e.autoplay, this.name = e.name ? e.name : "", this.autoloadSegments = !Object.prototype.hasOwnProperty.call(e, "autoloadSegments") || e.autoloadSegments, this.assetsPath = e.assetsPath, this.initialSegment = e.initialSegment, e.audioFactory && this.audioController.setAudioFactory(e.audioFactory), e.animationData ? this.setupAnimation(e.animationData) : e.path && (-1 !== e.path.lastIndexOf("\\") ? this.path = e.path.substr(0, e.path.lastIndexOf("\\") + 1) : this.path = e.path.substr(0, e.path.lastIndexOf("/") + 1), this.fileName = e.path.substr(e.path.lastIndexOf("/") + 1), this.fileName = this.fileName.substr(0, this.fileName.lastIndexOf(".json")), q.loadAnimation(e.path, this.configAnimation, this.onSetupError))
}, X.prototype.onSetupError = function() {
this.trigger("data_failed")
}, X.prototype.setupAnimation = function(e) {
q.completeAnimation(e, this.configAnimation)
}, X.prototype.setData = function(e, t) {
t && "object" !== Z(t) && (t = JSON.parse(t));
var n = {
wrapper: e,
animationData: t
},
r = e.attributes;
n.path = r.getNamedItem("data-animation-path") ? r.getNamedItem("data-animation-path").value : r.getNamedItem("data-bm-path") ? r.getNamedItem("data-bm-path").value : r.getNamedItem("bm-path") ? r.getNamedItem("bm-path").value : "", n.animType = r.getNamedItem("data-anim-type") ? r.getNamedItem("data-anim-type").value : r.getNamedItem("data-bm-type") ? r.getNamedItem("data-bm-type").value : r.getNamedItem("bm-type") ? r.getNamedItem("bm-type").value : r.getNamedItem("data-bm-renderer") ? r.getNamedItem("data-bm-renderer").value : r.getNamedItem("bm-renderer") ? r.getNamedItem("bm-renderer").value : function() {
if (Q.canvas) return "canvas";
for (var e in Q)
if (Q[e]) return e;
return ""
}() || "canvas";
var i = r.getNamedItem("data-anim-loop") ? r.getNamedItem("data-anim-loop").value : r.getNamedItem("data-bm-loop") ? r.getNamedItem("data-bm-loop").value : r.getNamedItem("bm-loop") ? r.getNamedItem("bm-loop").value : "";
"false" === i ? n.loop = !1 : "true" === i ? n.loop = !0 : "" !== i && (n.loop = parseInt(i, 10));
var a = r.getNamedItem("data-anim-autoplay") ? r.getNamedItem("data-anim-autoplay").value : r.getNamedItem("data-bm-autoplay") ? r.getNamedItem("data-bm-autoplay").value : !r.getNamedItem("bm-autoplay") || r.getNamedItem("bm-autoplay").value;
n.autoplay = "false" !== a, n.name = r.getNamedItem("data-name") ? r.getNamedItem("data-name").value : r.getNamedItem("data-bm-name") ? r.getNamedItem("data-bm-name").value : r.getNamedItem("bm-name") ? r.getNamedItem("bm-name").value : "", "false" === (r.getNamedItem("data-anim-prerender") ? r.getNamedItem("data-anim-prerender").value : r.getNamedItem("data-bm-prerender") ? r.getNamedItem("data-bm-prerender").value : r.getNamedItem("bm-prerender") ? r.getNamedItem("bm-prerender").value : "") && (n.prerender = !1), n.path ? this.setParams(n) : this.trigger("destroy")
}, X.prototype.includeLayers = function(e) {
e.op > this.animationData.op && (this.animationData.op = e.op, this.totalFrames = Math.floor(e.op - this.animationData.ip));
var t, n, r = this.animationData.layers,
i = r.length,
a = e.layers,
o = a.length;
for (n = 0; n < o; n += 1)
for (t = 0; t < i;) {
if (r[t].id === a[n].id) {
r[t] = a[n];
break
}
t += 1
}
if ((e.chars || e.fonts) && (this.renderer.globalData.fontManager.addChars(e.chars), this.renderer.globalData.fontManager.addFonts(e.fonts, this.renderer.globalData.defs)), e.assets)
for (t = 0, i = e.assets.length; t < i; t += 1) this.animationData.assets.push(e.assets[t]);
this.animationData.__complete = !1, q.completeAnimation(this.animationData, this.onSegmentComplete)
}, X.prototype.onSegmentComplete = function(e) {
this.animationData = e;
var t = U();
t && t.initExpressions(this), this.loadNextSegment()
}, X.prototype.loadNextSegment = function() {
var e = this.animationData.segments;
if (!e || 0 === e.length || !this.autoloadSegments) return this.trigger("data_ready"), void(this.timeCompleted = this.totalFrames);
var t = e.shift();
this.timeCompleted = t.time * this.frameRate;
var n = this.path + this.fileName + "_" + this.segmentPos + ".json";
this.segmentPos += 1, q.loadData(n, this.includeLayers.bind(this), function() {
this.trigger("data_failed")
}.bind(this))
}, X.prototype.loadSegments = function() {
this.animationData.segments || (this.timeCompleted = this.totalFrames), this.loadNextSegment()
}, X.prototype.imagesLoaded = function() {
this.trigger("loaded_images"), this.checkLoaded()
}, X.prototype.preloadImages = function() {
this.imagePreloader.setAssetsPath(this.assetsPath), this.imagePreloader.setPath(this.path), this.imagePreloader.loadAssets(this.animationData.assets, this.imagesLoaded.bind(this))
}, X.prototype.configAnimation = function(e) {
if (this.renderer) try {
this.animationData = e, this.initialSegment ? (this.totalFrames = Math.floor(this.initialSegment[1] - this.initialSegment[0]), this.firstFrame = Math.round(this.initialSegment[0])) : (this.totalFrames = Math.floor(this.animationData.op - this.animationData.ip), this.firstFrame = Math.round(this.animationData.ip)), this.renderer.configAnimation(e), e.assets || (e.assets = []), this.assets = this.animationData.assets, this.frameRate = this.animationData.fr, this.frameMult = this.animationData.fr / 1e3, this.renderer.searchExtraCompositions(e.assets), this.markers = function(e) {
for (var t = [], n = 0; n < e.length; n += 1) {
var r = e[n],
i = {
time: r.tm,
duration: r.dr
};
try {
i.payload = JSON.parse(e[n].cm)
} catch (t) {
try {
i.payload = function(e) {
for (var t, n = e.split("\r\n"), r = {}, i = 0, a = 0; a < n.length; a += 1) 2 === (t = n[a].split(":")).length && (r[t[0]] = t[1].trim(), i += 1);
if (0 === i) throw Error();
return r
}(e[n].cm)
} catch (t) {
i.payload = {
name: e[n].cm
}
}
}
t.push(i)
}
return t
}(e.markers || []), this.trigger("config_ready"), this.preloadImages(), this.loadSegments(), this.updaFrameModifier(), this.waitForFontsLoaded(), this.isPaused && this.audioController.pause()
} catch (e) {
this.triggerConfigError(e)
}
}, X.prototype.waitForFontsLoaded = function() {
this.renderer && (this.renderer.globalData.fontManager.isLoaded ? this.checkLoaded() : setTimeout(this.waitForFontsLoaded.bind(this), 20))
}, X.prototype.checkLoaded = function() {
if (!this.isLoaded && this.renderer.globalData.fontManager.isLoaded && (this.imagePreloader.loadedImages() || "canvas" !== this.renderer.rendererType) && this.imagePreloader.loadedFootages()) {
this.isLoaded = !0;
var e = U();
e && e.initExpressions(this), this.renderer.initItems(), setTimeout(function() {
this.trigger("DOMLoaded")
}.bind(this), 0), this.gotoFrame(), this.autoplay && this.play()
}
}, X.prototype.resize = function(e, t) {
var n = "number" == typeof e ? e : void 0,
r = "number" == typeof t ? t : void 0;
this.renderer.updateContainerSize(n, r)
}, X.prototype.setSubframe = function(e) {
this.isSubframeEnabled = !!e
}, X.prototype.gotoFrame = function() {
this.currentFrame = this.isSubframeEnabled ? this.currentRawFrame : ~~this.currentRawFrame, this.timeCompleted !== this.totalFrames && this.currentFrame > this.timeCompleted && (this.currentFrame = this.timeCompleted), this.trigger("enterFrame"), this.renderFrame(), this.trigger("drawnFrame")
}, X.prototype.renderFrame = function() {
if (!1 !== this.isLoaded && this.renderer) try {
this.expressionsPlugin && this.expressionsPlugin.resetFrame(), this.renderer.renderFrame(this.currentFrame + this.firstFrame)
} catch (e) {
this.triggerRenderFrameError(e)
}
}, X.prototype.play = function(e) {
(!e || this.name === e) && !0 === this.isPaused && (this.isPaused = !1, this.trigger("_play"), this.audioController.resume(), this._idle && (this._idle = !1, this.trigger("_active")))
}, X.prototype.pause = function(e) {
e && this.name !== e || !1 !== this.isPaused || (this.isPaused = !0, this.trigger("_pause"), this._idle = !0, this.trigger("_idle"), this.audioController.pause())
}, X.prototype.togglePause = function(e) {
e && this.name !== e || (!0 === this.isPaused ? this.play() : this.pause())
}, X.prototype.stop = function(e) {
e && this.name !== e || (this.pause(), this.playCount = 0, this._completedLoop = !1, this.setCurrentRawFrameValue(0))
}, X.prototype.getMarkerData = function(e) {
for (var t, n = 0; n < this.markers.length; n += 1)
if ((t = this.markers[n]).payload && t.payload.name === e) return t;
return null
}, X.prototype.goToAndStop = function(e, t, n) {
if (!n || this.name === n) {
if (isNaN(Number(e))) {
var r = this.getMarkerData(e);
r && this.goToAndStop(r.time, !0)
} else t ? this.setCurrentRawFrameValue(e) : this.setCurrentRawFrameValue(e * this.frameModifier);
this.pause()
}
}, X.prototype.goToAndPlay = function(e, t, n) {
if (!n || this.name === n) {
var r = Number(e);
if (isNaN(r)) {
var i = this.getMarkerData(e);
i && (i.duration ? this.playSegments([i.time, i.time + i.duration], !0) : this.goToAndStop(i.time, !0))
} else this.goToAndStop(r, t, n);
this.play()
}
}, X.prototype.advanceTime = function(e) {
if (!0 !== this.isPaused && !1 !== this.isLoaded) {
var t = this.currentRawFrame + e * this.frameModifier,
n = !1;
t >= this.totalFrames - 1 && this.frameModifier > 0 ? this.loop && this.playCount !== this.loop ? t >= this.totalFrames ? (this.playCount += 1, this.checkSegments(t % this.totalFrames) || (this.setCurrentRawFrameValue(t % this.totalFrames), this._completedLoop = !0, this.trigger("loopComplete"))) : this.setCurrentRawFrameValue(t) : this.checkSegments(t > this.totalFrames ? t % this.totalFrames : 0) || (n = !0, t = this.totalFrames - 1) : t < 0 ? this.checkSegments(t % this.totalFrames) || (!this.loop || this.playCount-- <= 0 && !0 !== this.loop ? (n = !0, t = 0) : (this.setCurrentRawFrameValue(this.totalFrames + t % this.totalFrames), this._completedLoop ? this.trigger("loopComplete") : this._completedLoop = !0)) : this.setCurrentRawFrameValue(t), n && (this.setCurrentRawFrameValue(t), this.pause(), this.trigger("complete"))
}
}, X.prototype.adjustSegment = function(e, t) {
this.playCount = 0, e[1] < e[0] ? (this.frameModifier > 0 && (this.playSpeed < 0 ? this.setSpeed(-this.playSpeed) : this.setDirection(-1)), this.totalFrames = e[0] - e[1], this.timeCompleted = this.totalFrames, this.firstFrame = e[1], this.setCurrentRawFrameValue(this.totalFrames - .001 - t)) : e[1] > e[0] && (this.frameModifier < 0 && (this.playSpeed < 0 ? this.setSpeed(-this.playSpeed) : this.setDirection(1)), this.totalFrames = e[1] - e[0], this.timeCompleted = this.totalFrames, this.firstFrame = e[0], this.setCurrentRawFrameValue(.001 + t)), this.trigger("segmentStart")
}, X.prototype.setSegment = function(e, t) {
var n = -1;
this.isPaused && (this.currentRawFrame + this.firstFrame < e ? n = e : this.currentRawFrame + this.firstFrame > t && (n = t - e)), this.firstFrame = e, this.totalFrames = t - e, this.timeCompleted = this.totalFrames, -1 !== n && this.goToAndStop(n, !0)
}, X.prototype.playSegments = function(e, t) {
if (t && (this.segments.length = 0), "object" === Z(e[0])) {
var n, r = e.length;
for (n = 0; n < r; n += 1) this.segments.push(e[n])
} else this.segments.push(e);
this.segments.length && t && this.adjustSegment(this.segments.shift(), 0), this.isPaused && this.play()
}, X.prototype.resetSegments = function(e) {
this.segments.length = 0, this.segments.push([this.animationData.ip, this.animationData.op]), e && this.checkSegments(0)
}, X.prototype.checkSegments = function(e) {
return !!this.segments.length && (this.adjustSegment(this.segments.shift(), e), !0)
}, X.prototype.destroy = function(e) {
(!e || this.name === e) && this.renderer && (this.renderer.destroy(), this.imagePreloader.destroy(), this.trigger("destroy"), this._cbs = null, this.onEnterFrame = null, this.onLoopComplete = null, this.onComplete = null, this.onSegmentStart = null, this.onDestroy = null, this.renderer = null, this.expressionsPlugin = null, this.imagePreloader = null, this.projectInterface = null)
}, X.prototype.setCurrentRawFrameValue = function(e) {
this.currentRawFrame = e, this.gotoFrame()
}, X.prototype.setSpeed = function(e) {
this.playSpeed = e, this.updaFrameModifier()
}, X.prototype.setDirection = function(e) {
this.playDirection = e < 0 ? -1 : 1, this.updaFrameModifier()
}, X.prototype.setLoop = function(e) {
this.loop = e
}, X.prototype.setVolume = function(e, t) {
t && this.name !== t || this.audioController.setVolume(e)
}, X.prototype.getVolume = function() {
return this.audioController.getVolume()
}, X.prototype.mute = function(e) {
e && this.name !== e || this.audioController.mute()
}, X.prototype.unmute = function(e) {
e && this.name !== e || this.audioController.unmute()
}, X.prototype.updaFrameModifier = function() {
this.frameModifier = this.frameMult * this.playSpeed * this.playDirection, this.audioController.setRate(this.playSpeed * this.playDirection)
}, X.prototype.getPath = function() {
return this.path
}, X.prototype.getAssetsPath = function(e) {
var t = "";
if (e.e) t = e.p;
else if (this.assetsPath) {
var n = e.p; - 1 !== n.indexOf("images/") && (n = n.split("/")[1]), t = this.assetsPath + n
} else t = this.path + (e.u ? e.u : "") + e.p;
return t
}, X.prototype.getAssetData = function(e) {
for (var t = 0, n = this.assets.length; t < n;) {
if (e === this.assets[t].id) return this.assets[t];
t += 1
}
return null
}, X.prototype.hide = function() {
this.renderer.hide()
}, X.prototype.show = function() {
this.renderer.show()
}, X.prototype.getDuration = function(e) {
return e ? this.totalFrames : this.totalFrames / this.frameRate
}, X.prototype.updateDocumentData = function(e, t, n) {
try {
this.renderer.getElementByPath(e).updateDocumentData(t, n)
} catch (e) {}
}, X.prototype.trigger = function(e) {
if (this._cbs && this._cbs[e]) switch (e) {
case "enterFrame":
this.triggerEvent(e, new C(e, this.currentFrame, this.totalFrames, this.frameModifier));
break;
case "drawnFrame":
this.drawnFrameEvent.currentTime = this.currentFrame, this.drawnFrameEvent.totalTime = this.totalFrames, this.drawnFrameEvent.direction = this.frameModifier, this.triggerEvent(e, this.drawnFrameEvent);
break;
case "loopComplete":
this.triggerEvent(e, new P(e, this.loop, this.playCount, this.frameMult));
break;
case "complete":
this.triggerEvent(e, new A(e, this.frameMult));
break;
case "segmentStart":
this.triggerEvent(e, new T(e, this.firstFrame, this.totalFrames));
break;
case "destroy":
this.triggerEvent(e, new R(e, this));
break;
default:
this.triggerEvent(e)
}
"enterFrame" === e && this.onEnterFrame && this.onEnterFrame.call(this, new C(e, this.currentFrame, this.totalFrames, this.frameMult)), "loopComplete" === e && this.onLoopComplete && this.onLoopComplete.call(this, new P(e, this.loop, this.playCount, this.frameMult)), "complete" === e && this.onComplete && this.onComplete.call(this, new A(e, this.frameMult)), "segmentStart" === e && this.onSegmentStart && this.onSegmentStart.call(this, new T(e, this.firstFrame, this.totalFrames)), "destroy" === e && this.onDestroy && this.onDestroy.call(this, new R(e, this))
}, X.prototype.triggerRenderFrameError = function(e) {
var t = new D(e, this.currentFrame);
this.triggerEvent("error", t), this.onError && this.onError.call(this, t)
}, X.prototype.triggerConfigError = function(e) {
var t = new L(e, this.currentFrame);
this.triggerEvent("error", t), this.onError && this.onError.call(this, t)
};
var J = function() {
var e = {},
t = [],
n = 0,
r = 0,
i = 0,
a = !0,
o = !1;
function s(e) {
for (var n = 0, i = e.target; n < r;) t[n].animation !== i || (t.splice(n, 1), n -= 1, r -= 1, i.isPaused || u()), n += 1
}
function l(e, n) {
if (!e) return null;
for (var i = 0; i < r;) {
if (t[i].elem === e && null !== t[i].elem) return t[i].animation;
i += 1
}
var a = new X;
return d(a, e), a.setData(e, n), a
}
function c() {
i += 1, m()
}
function u() {
i -= 1
}
function d(e, n) {
e.addEventListener("destroy", s), e.addEventListener("_active", c), e.addEventListener("_idle", u), t.push({
elem: n,
animation: e
}), r += 1
}
function p(e) {
var s, l = e - n;
for (s = 0; s < r; s += 1) t[s].animation.advanceTime(l);
n = e, i && !o ? window.requestAnimationFrame(p) : a = !0
}
function f(e) {
n = e, window.requestAnimationFrame(p)
}
function m() {
!o && i && a && (window.requestAnimationFrame(f), a = !1)
}
return e.registerAnimation = l, e.loadAnimation = function(e) {
var t = new X;
return d(t, null), t.setParams(e), t
}, e.setSpeed = function(e, n) {
var i;
for (i = 0; i < r; i += 1) t[i].animation.setSpeed(e, n)
}, e.setDirection = function(e, n) {
var i;
for (i = 0; i < r; i += 1) t[i].animation.setDirection(e, n)
}, e.play = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.play(e)
}, e.pause = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.pause(e)
}, e.stop = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.stop(e)
}, e.togglePause = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.togglePause(e)
}, e.searchAnimations = function(e, t, n) {
var r, i = [].concat([].slice.call(document.getElementsByClassName("lottie")), [].slice.call(document.getElementsByClassName("bodymovin"))),
a = i.length;
for (r = 0; r < a; r += 1) n && i[r].setAttribute("data-bm-type", n), l(i[r], e);
if (t && 0 === a) {
n || (n = "svg");
var o = document.getElementsByTagName("body")[0];
o.innerText = "";
var s = h("div");
s.style.width = "100%", s.style.height = "100%", s.setAttribute("data-bm-type", n), o.appendChild(s), l(s, e)
}
}, e.resize = function() {
var e;
for (e = 0; e < r; e += 1) t[e].animation.resize()
}, e.goToAndStop = function(e, n, i) {
var a;
for (a = 0; a < r; a += 1) t[a].animation.goToAndStop(e, n, i)
}, e.destroy = function(e) {
var n;
for (n = r - 1; n >= 0; n -= 1) t[n].animation.destroy(e)
}, e.freeze = function() {
o = !0
}, e.unfreeze = function() {
o = !1, m()
}, e.setVolume = function(e, n) {
var i;
for (i = 0; i < r; i += 1) t[i].animation.setVolume(e, n)
}, e.mute = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.mute(e)
}, e.unmute = function(e) {
var n;
for (n = 0; n < r; n += 1) t[n].animation.unmute(e)
}, e.getRegisteredAnimations = function() {
var e, n = t.length,
r = [];
for (e = 0; e < n; e += 1) r.push(t[e].animation);
return r
}, e
}(),
ee = function() {
var e = {
getBezierEasing: function(e, n, r, i, o) {
var s = o || ("bez_" + e + "_" + n + "_" + r + "_" + i).replace(/\./g, "p");
if (t[s]) return t[s];
var l = new a([e, n, r, i]);
return t[s] = l, l
}
},
t = {},
n = "function" == typeof Float32Array;
function r(e, t, n) {
return (((1 - 3 * n + 3 * t) * e + (3 * n - 6 * t)) * e + 3 * t) * e
}
function i(e, t, n) {
return 3 * (1 - 3 * n + 3 * t) * e * e + 2 * (3 * n - 6 * t) * e + 3 * t
}
function a(e) {
this._p = e, this._mSampleValues = n ? new Float32Array(11) : Array(11), this._precomputed = !1, this.get = this.get.bind(this)
}
return a.prototype = {
get: function(e) {
var t = this._p[0],
n = this._p[1],
i = this._p[2],
a = this._p[3];
return this._precomputed || this._precompute(), t === n && i === a ? e : 0 === e ? 0 : 1 === e ? 1 : r(this._getTForX(e), n, a)
},
_precompute: function() {
var e = this._p[0],
t = this._p[1],
n = this._p[2],
r = this._p[3];
this._precomputed = !0, (e !== t || n !== r) && this._calcSampleValues()
},
_calcSampleValues: function() {
for (var e = this._p[0], t = this._p[2], n = 0; n < 11; ++n) this._mSampleValues[n] = r(.1 * n, e, t)
},
_getTForX: function(e) {
for (var t = this._p[0], n = this._p[2], a = this._mSampleValues, o = 0, s = 1; 10 !== s && a[s] <= e; ++s) o += .1;
var l = o + (e - a[--s]) / (a[s + 1] - a[s]) * .1,
c = i(l, t, n);
return c >= .001 ? function(e, t, n, a) {
for (var o = 0; o < 4; ++o) {
var s = i(t, n, a);
if (0 === s) break;
t -= (r(t, n, a) - e) / s
}
return t
}(e, l, t, n) : 0 === c ? l : function(e, t, n, i, a) {
var o, s, l = 0;
do {
(o = r(s = t + (n - t) / 2, i, a) - e) > 0 ? n = s : t = s
} while (Math.abs(o) > 1e-7 && ++l < 10);
return s
}(e, o, o + .1, t, n)
}
}, e
}(),
te = function(e) {
return e.concat(v(e.length))
},
ne = function(e, t, n) {
var r = 0,
i = e,
a = v(i);
return {
newElement: function() {
var e;
return r ? e = a[r -= 1] : e = t(), e
},
release: function(e) {
r === i && (a = te(a), i *= 2), n && n(e), a[r] = e, r += 1
}
}
},
re = ne(8, (function() {
return {
addedLength: 0,
percents: g("float32", G()),
lengths: g("float32", G())
}
})),
ie = ne(8, (function() {
return {
lengths: [],
totalLength: 0
}
}), (function(e) {
var t, n = e.lengths.length;
for (t = 0; t < n; t += 1) re.release(e.lengths[t]);
e.lengths.length = 0
})),
ae = function() {
var e, t = Math;
function n(e, t, n, r, i, a) {
var o = e * r + t * i + n * a - i * r - a * e - n * t;
return o > -.001 && o < .001
}
var r = function(e, t, n, r) {
var i, a, o, s, l, c, u = G(),
d = 0,
p = [],
h = [],
f = re.newElement();
for (i = 0, o = n.length; i < u; i += 1) {
for (a = 0, l = i / (u - 1), c = 0; a < o; a += 1) s = k(1 - l, 3) * e[a] + 3 * k(1 - l, 2) * l * n[a] + 3 * (1 - l) * k(l, 2) * r[a] + k(l, 3) * t[a], p[a] = s, null !== h[a] && (c += k(p[a] - h[a], 2)), h[a] = p[a];
c && (d += c = w(c)), f.percents[i] = l, f.lengths[i] = d
}
return f.addedLength = d, f
};
function i(e) {
this.segmentLength = 0, this.points = Array(e)
}
function a(e, t) {
this.partialLength = e, this.point = t
}
var o = (e = {}, function(t, r, o, s) {
var l = (t[0] + "_" + t[1] + "_" + r[0] + "_" + r[1] + "_" + o[0] + "_" + o[1] + "_" + s[0] + "_" + s[1]).replace(/\./g, "p");
if (!e[l]) {
var c, u, d, p, h, f, m, g = G(),
y = 0,
_ = null;
2 === t.length && (t[0] !== r[0] || t[1] !== r[1]) && n(t[0], t[1], r[0], r[1], t[0] + o[0], t[1] + o[1]) && n(t[0], t[1], r[0], r[1], r[0] + s[0], r[1] + s[1]) && (g = 2);
var b = new i(g);
for (c = 0, d = o.length; c < g; c += 1) {
for (u = 0, m = v(d), h = c / (g - 1), f = 0; u < d; u += 1) p = k(1 - h, 3) * t[u] + 3 * k(1 - h, 2) * h * (t[u] + o[u]) + 3 * (1 - h) * k(h, 2) * (r[u] + s[u]) + k(h, 3) * r[u], m[u] = p, null !== _ && (f += k(m[u] - _[u], 2));
y += f = w(f), b.points[c] = new a(f, m), _ = m
}
b.segmentLength = y, e[l] = b
}
return e[l]
});
function s(e, t) {
var n = t.percents,
r = t.lengths,
i = n.length,
a = S((i - 1) * e),
o = e * t.addedLength,
s = 0;
if (a === i - 1 || 0 === a || o === r[a]) return n[a];
for (var l = r[a] > o ? -1 : 1, c = !0; c;)
if (r[a] <= o && r[a + 1] > o ? (s = (o - r[a]) / (r[a + 1] - r[a]), c = !1) : a += l, a < 0 || a >= i - 1) {
if (a === i - 1) return n[a];
c = !1
} return n[a] + (n[a + 1] - n[a]) * s
}
var l = g("float32", 8);
return {
getSegmentsLength: function(e) {
var t, n = ie.newElement(),
i = e.c,
a = e.v,
o = e.o,
s = e.i,
l = e._length,
c = n.lengths,
u = 0;
for (t = 0; t < l - 1; t += 1) c[t] = r(a[t], a[t + 1], o[t], s[t + 1]), u += c[t].addedLength;
return i && l && (c[t] = r(a[t], a[0], o[t], s[0]), u += c[t].addedLength), n.totalLength = u, n
},
getNewSegment: function(e, n, r, i, a, o, c) {
a < 0 ? a = 0 : a > 1 && (a = 1);
var u, d = s(a, c),
p = s(o = o > 1 ? 1 : o, c),
h = e.length,
f = 1 - d,
m = 1 - p,
g = f * f * f,
v = d * f * f * 3,
y = d * d * f * 3,
_ = d * d * d,
b = f * f * m,
x = d * f * m + f * d * m + f * f * p,
k = d * d * m + f * d * p + d * f * p,
w = d * d * p,
S = f * m * m,
E = d * m * m + f * p * m + f * m * p,
I = d * p * m + f * p * p + d * m * p,
O = d * p * p,
C = m * m * m,
A = p * m * m + m * p * m + m * m * p,
P = p * p * m + m * p * p + p * m * p,
T = p * p * p;
for (u = 0; u < h; u += 1) l[4 * u] = t.round(1e3 * (g * e[u] + v * r[u] + y * i[u] + _ * n[u])) / 1e3, l[4 * u + 1] = t.round(1e3 * (b * e[u] + x * r[u] + k * i[u] + w * n[u])) / 1e3, l[4 * u + 2] = t.round(1e3 * (S * e[u] + E * r[u] + I * i[u] + O * n[u])) / 1e3, l[4 * u + 3] = t.round(1e3 * (C * e[u] + A * r[u] + P * i[u] + T * n[u])) / 1e3;
return l
},
getPointInSegment: function(e, n, r, i, a, o) {
var l = s(a, o),
c = 1 - l;
return [t.round(1e3 * (c * c * c * e[0] + (l * c * c + c * l * c + c * c * l) * r[0] + (l * l * c + c * l * l + l * c * l) * i[0] + l * l * l * n[0])) / 1e3, t.round(1e3 * (c * c * c * e[1] + (l * c * c + c * l * c + c * c * l) * r[1] + (l * l * c + c * l * l + l * c * l) * i[1] + l * l * l * n[1])) / 1e3]
},
buildBezierData: o,
pointOnLine2D: n,
pointOnLine3D: function(e, r, i, a, o, s, l, c, u) {
if (0 === i && 0 === s && 0 === u) return n(e, r, a, o, l, c);
var d, p = t.sqrt(t.pow(a - e, 2) + t.pow(o - r, 2) + t.pow(s - i, 2)),
h = t.sqrt(t.pow(l - e, 2) + t.pow(c - r, 2) + t.pow(u - i, 2)),
f = t.sqrt(t.pow(l - a, 2) + t.pow(c - o, 2) + t.pow(u - s, 2));
return (d = p > h ? p > f ? p - h - f : f - h - p : f > h ? f - h - p : h - p - f) > -1e-4 && d < 1e-4
}
}
}(),
oe = Math.abs;
function se(e, t) {
var n, r, i, a, o, s, l, c, u, d, p, h, f, m, v, y, _, b, x, k, w, S, E, I, C, A, P, T, R = this.offsetTime;
"multidimensional" === this.propType && (U = g("float32", this.pv.length));
for (var D = t.lastIndex, L = D, N = this.keyframes.length - 1, M = !0; M;) {
if (B = this.keyframes[L], G = this.keyframes[L + 1], L === N - 1 && e >= G.t - R) {
B.h && (B = G), D = 0;
break
}
if (G.t - R > e) {
D = L;
break
}
L < N - 1 ? L += 1 : (D = 0, M = !1)
}
W = this.keyframesMetadata[L] || {};
var j = G.t - R,
F = B.t - R;
if (B.to) {
W.bezierData || (W.bezierData = ae.buildBezierData(B.s, G.s || B.e, B.to, B.ti));
var z = W.bezierData;
if (e >= j || e < F) {
var V = e >= j ? z.points.length - 1 : 0;
for ($ = 0, q = z.points[V].point.length; $ < q; $ += 1) U[$] = z.points[V].point[$]
} else {
W.__fnct ? Q = W.__fnct : (Q = ee.getBezierEasing(B.o.x, B.o.y, B.i.x, B.i.y, B.n).get, W.__fnct = Q), H = Q((e - F) / (j - F));
var U, B, G, W, $, q, H, K, Y, Q, Z, X, J = z.segmentLength * H,
te = t.lastFrame < e && t._lastKeyframeIndex === L ? t._lastAddedLength : 0;
for (Y = t.lastFrame < e && t._lastKeyframeIndex === L ? t._lastPoint : 0, M = !0, K = z.points.length; M;) {
if (te += z.points[Y].partialLength, 0 === J || 0 === H || Y === z.points.length - 1) {
for ($ = 0, q = z.points[Y].point.length; $ < q; $ += 1) U[$] = z.points[Y].point[$];
break
}
if (J >= te && J < te + z.points[Y + 1].partialLength) {
for ($ = 0, X = (J - te) / z.points[Y + 1].partialLength, q = z.points[Y].point.length; $ < q; $ += 1) U[$] = z.points[Y].point[$] + (z.points[Y + 1].point[$] - z.points[Y].point[$]) * X;
break
}
Y < K - 1 ? Y += 1 : M = !1
}
t._lastPoint = Y, t._lastAddedLength = te - z.points[Y].partialLength, t._lastKeyframeIndex = L
}
} else if (N = B.s.length, Z = G.s || B.e, this.sh && 1 !== B.h) e >= j ? (U[0] = Z[0], U[1] = Z[1], U[2] = Z[2]) : e <= F ? (U[0] = B.s[0], U[1] = B.s[1], U[2] = B.s[2]) : (b = U, k = (n = le(B.s), r = le(Z), i = (e - F) / (j - F), u = [], d = n[0], p = n[1], h = n[2], f = n[3], m = r[0], v = r[1], (o = d * m + p * v + h * (y = r[2]) + f * (_ = r[3])) < 0 && (o = -o, m = -m, v = -v, y = -y, _ = -_), 1 - o > 1e-6 ? (s = Math.sin(a = Math.acos(o)), l = Math.sin((1 - i) * a) / s, c = Math.sin(i * a) / s) : (l = 1 - i, c = i), u[0] = l * d + c * m, u[1] = l * p + c * v, u[2] = l * h + c * y, u[3] = l * f + c * _, x = u)[0], w = x[1], S = x[2], E = x[3], b[0] = Math.atan2(2 * w * E - 2 * k * S, 1 - 2 * w * w - 2 * S * S) / O, b[1] = Math.asin(2 * k * w + 2 * S * E) / O, b[2] = Math.atan2(2 * k * E - 2 * w * S, 1 - 2 * k * k - 2 * S * S) / O);
else
for (L = 0; L < N; L += 1) 1 !== B.h && (e >= j ? H = 1 : e < F ? H = 0 : (B.o.x.constructor === Array ? (W.__fnct || (W.__fnct = []), W.__fnct[L] ? Q = W.__fnct[L] : (I = void 0 === B.o.x[L] ? B.o.x[0] : B.o.x[L], C = void 0 === B.o.y[L] ? B.o.y[0] : B.o.y[L], A = void 0 === B.i.x[L] ? B.i.x[0] : B.i.x[L], P = void 0 === B.i.y[L] ? B.i.y[0] : B.i.y[L], Q = ee.getBezierEasing(I, C, A, P).get, W.__fnct[L] = Q)) : W.__fnct ? Q = W.__fnct : (I = B.o.x, C = B.o.y, A = B.i.x, P = B.i.y, Q = ee.getBezierEasing(I, C, A, P).get, B.keyframeMetadata = Q), H = Q((e - F) / (j - F)))), Z = G.s || B.e, T = 1 === B.h ? B.s[L] : B.s[L] + (Z[L] - B.s[L]) * H, "multidimensional" === this.propType ? U[L] = T : U = T;
return t.lastIndex = D, U
}
function le(e) {
var t = e[0] * O,
n = e[1] * O,
r = e[2] * O,
i = Math.cos(t / 2),
a = Math.cos(n / 2),
o = Math.cos(r / 2),
s = Math.sin(t / 2),
l = Math.sin(n / 2),
c = Math.sin(r / 2);
return [s * l * o + i * a * c, s * a * o + i * l * c, i * l * o - s * a * c, i * a * o - s * l * c]
}
function ce() {
var e = this.comp.renderedFrame - this.offsetTime,
t = this.keyframes[0].t - this.offsetTime,
n = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;
if (!(e === this._caching.lastFrame || -999999 !== this._caching.lastFrame && (this._caching.lastFrame >= n && e >= n || this._caching.lastFrame < t && e < t))) {
this._caching.lastFrame >= e && (this._caching._lastKeyframeIndex = -1, this._caching.lastIndex = 0);
var r = this.interpolateValue(e, this._caching);
this.pv = r
}
return this._caching.lastFrame = e, this.pv
}
function ue(e) {
var t;
if ("unidimensional" === this.propType) t = e * this.mult, oe(this.v - t) > 1e-5 && (this.v = t, this._mdf = !0);
else
for (var n = 0, r = this.v.length; n < r;) t = e[n] * this.mult, oe(this.v[n] - t) > 1e-5 && (this.v[n] = t, this._mdf = !0), n += 1
}
function de() {
if (this.elem.globalData.frameId !== this.frameId && this.effectsSequence.length) {
if (this.lock) return void this.setVValue(this.pv);
this.lock = !0, this._mdf = this._isFirstFrame;
var e, t = this.effectsSequence.length,
n = this.kf ? this.pv : this.data.k;
for (e = 0; e < t; e += 1) n = this.effectsSequence[e](n);
this.setVValue(n), this._isFirstFrame = !1, this.lock = !1, this.frameId = this.elem.globalData.frameId
}
}
function pe(e) {
this.effectsSequence.push(e), this.container.addDynamicProperty(this)
}
function he(e, t, n, r) {
this.propType = "unidimensional", this.mult = n || 1, this.data = t, this.v = n ? t.k * n : t.k, this.pv = t.k, this._mdf = !1, this.elem = e, this.container = r, this.comp = e.comp, this.k = !1, this.kf = !1, this.vel = 0, this.effectsSequence = [], this._isFirstFrame = !0, this.getValue = de, this.setVValue = ue, this.addEffect = pe
}
function fe(e, t, n, r) {
this.propType = "multidimensional", this.mult = n || 1, this.data = t, this._mdf = !1, this.elem = e, this.container = r, this.comp = e.comp, this.k = !1, this.kf = !1, this.frameId = -1;
var i, a = t.k.length;
for (i = 0, this.v = g("float32", a), this.pv = g("float32", a), this.vel = g("float32", a); i < a; i += 1) this.v[i] = t.k[i] * this.mult, this.pv[i] = t.k[i];
this._isFirstFrame = !0, this.effectsSequence = [], this.getValue = de, this.setVValue = ue, this.addEffect = pe
}
function me(e, t, n, r) {
this.propType = "unidimensional", this.keyframes = t.k, this.keyframesMetadata = [], this.offsetTime = e.data.st, this.frameId = -1, this._caching = {
lastFrame: -999999,
lastIndex: 0,
value: 0,
_lastKeyframeIndex: -1
}, this.k = !0, this.kf = !0, this.data = t, this.mult = n || 1, this.elem = e, this.container = r, this.comp = e.comp, this.v = -999999, this.pv = -999999, this._isFirstFrame = !0, this.getValue = de, this.setVValue = ue, this.interpolateValue = se, this.effectsSequence = [ce.bind(this)], this.addEffect = pe
}
function ge(e, t, n, r) {
this.propType = "multidimensional";
var i, a, o, s, l, c = t.k.length;
for (i = 0; i < c - 1; i += 1) t.k[i].to && t.k[i].s && t.k[i + 1] && t.k[i + 1].s && (a = t.k[i].s, o = t.k[i + 1].s, s = t.k[i].to, l = t.k[i].ti, (2 === a.length && !(a[0] === o[0] && a[1] === o[1]) && ae.pointOnLine2D(a[0], a[1], o[0], o[1], a[0] + s[0], a[1] + s[1]) && ae.pointOnLine2D(a[0], a[1], o[0], o[1], o[0] + l[0], o[1] + l[1]) || 3 === a.length && !(a[0] === o[0] && a[1] === o[1] && a[2] === o[2]) && ae.pointOnLine3D(a[0], a[1], a[2], o[0], o[1], o[2], a[0] + s[0], a[1] + s[1], a[2] + s[2]) && ae.pointOnLine3D(a[0], a[1], a[2], o[0], o[1], o[2], o[0] + l[0], o[1] + l[1], o[2] + l[2])) && (t.k[i].to = null, t.k[i].ti = null), a[0] === o[0] && a[1] === o[1] && 0 === s[0] && 0 === s[1] && 0 === l[0] && 0 === l[1] && (2 === a.length || a[2] === o[2] && 0 === s[2] && 0 === l[2]) && (t.k[i].to = null, t.k[i].ti = null));
this.effectsSequence = [ce.bind(this)], this.data = t, this.keyframes = t.k, this.keyframesMetadata = [], this.offsetTime = e.data.st, this.k = !0, this.kf = !0, this._isFirstFrame = !0, this.mult = n || 1, this.elem = e, this.container = r, this.comp = e.comp, this.getValue = de, this.setVValue = ue, this.interpolateValue = se, this.frameId = -1;
var u = t.k[0].s.length;
for (i = 0, this.v = g("float32", u), this.pv = g("float32", u); i < u; i += 1) this.v[i] = -999999, this.pv[i] = -999999;
this._caching = {
lastFrame: -999999,
lastIndex: 0,
value: g("float32", u)
}, this.addEffect = pe
}
var ve = {
getProp: function(e, t, n, r, i) {
var a;
if (t.sid && (t = e.globalData.slotManager.getProp(t)), t.k.length)
if ("number" == typeof t.k[0]) a = new fe(e, t, r, i);
else switch (n) {
case 0:
a = new me(e, t, r, i);
break;
case 1:
a = new ge(e, t, r, i)
} else a = new he(e, t, r, i);
return a.effectsSequence.length && i.addDynamicProperty(a), a
}
};
function ye() {}
ye.prototype = {
addDynamicProperty: function(e) {
-1 === this.dynamicProperties.indexOf(e) && (this.dynamicProperties.push(e), this.container.addDynamicProperty(this), this._isAnimated = !0)
},
iterateDynamicProperties: function() {
this._mdf = !1;
var e, t = this.dynamicProperties.length;
for (e = 0; e < t; e += 1) this.dynamicProperties[e].getValue(), this.dynamicProperties[e]._mdf && (this._mdf = !0)
},
initDynamicPropertyContainer: function(e) {
this.container = e, this.dynamicProperties = [], this._mdf = !1, this._isAnimated = !1
}
};
var _e = ne(8, (function() {
return g("float32", 2)
}));
function be() {
this.c = !1, this._length = 0, this._maxLength = 8, this.v = v(this._maxLength), this.o = v(this._maxLength), this.i = v(this._maxLength)
}
be.prototype.setPathData = function(e, t) {
this.c = e, this.setLength(t);
for (var n = 0; n < t;) this.v[n] = _e.newElement(), this.o[n] = _e.newElement(), this.i[n] = _e.newElement(), n += 1
}, be.prototype.setLength = function(e) {
for (; this._maxLength < e;) this.doubleArrayLength();
this._length = e
}, be.prototype.doubleArrayLength = function() {
this.v = this.v.concat(v(this._maxLength)), this.i = this.i.concat(v(this._maxLength)), this.o = this.o.concat(v(this._maxLength)), this._maxLength *= 2
}, be.prototype.setXYAt = function(e, t, n, r, i) {
var a;
switch (this._length = Math.max(this._length, r + 1), this._length >= this._maxLength && this.doubleArrayLength(), n) {
case "v":
a = this.v;
break;
case "i":
a = this.i;
break;
case "o":
a = this.o;
break;
default:
a = []
}
a[r] && (!a[r] || i) || (a[r] = _e.newElement()), a[r][0] = e, a[r][1] = t
}, be.prototype.setTripleAt = function(e, t, n, r, i, a, o, s) {
this.setXYAt(e, t, "v", o, s), this.setXYAt(n, r, "o", o, s), this.setXYAt(i, a, "i", o, s)
}, be.prototype.reverse = function() {
var e, t = new be;
t.setPathData(this.c, this._length);
var n = this.v,
r = this.o,
i = this.i,
a = 0;
this.c && (t.setTripleAt(n[0][0], n[0][1], i[0][0], i[0][1], r[0][0], r[0][1], 0, !1), a = 1);
var o = this._length - 1,
s = this._length;
for (e = a; e < s; e += 1) t.setTripleAt(n[o][0], n[o][1], i[o][0], i[o][1], r[o][0], r[o][1], e, !1), o -= 1;
return t
}, be.prototype.length = function() {
return this._length
};
var xe = ((t = ne(4, (function() {
return new be
}), (function(e) {
var t, n = e._length;
for (t = 0; t < n; t += 1) _e.release(e.v[t]), _e.release(e.i[t]), _e.release(e.o[t]), e.v[t] = null, e.i[t] = null, e.o[t] = null;
e._length = 0, e.c = !1
}))).clone = function(e) {
var n, r = t.newElement(),
i = void 0 === e._length ? e.v.length : e._length;
for (r.setLength(i), r.c = e.c, n = 0; n < i; n += 1) r.setTripleAt(e.v[n][0], e.v[n][1], e.o[n][0], e.o[n][1], e.i[n][0], e.i[n][1], n);
return r
}, t);
function ke() {
this._length = 0, this._maxLength = 4, this.shapes = v(this._maxLength)
}
ke.prototype.addShape = function(e) {
this._length === this._maxLength && (this.shapes = this.shapes.concat(v(this._maxLength)), this._maxLength *= 2), this.shapes[this._length] = e, this._length += 1
}, ke.prototype.releaseShapes = function() {
var e;
for (e = 0; e < this._length; e += 1) xe.release(this.shapes[e]);
this._length = 0
};
var we = (n = 0, r = 4, i = v(4), {
newShapeCollection: function() {
var e;
return n ? e = i[n -= 1] : e = new ke, e
},
release: function(e) {
var t, a = e._length;
for (t = 0; t < a; t += 1) xe.release(e.shapes[t]);
e._length = 0, n === r && (i = te(i), r *= 2), i[n] = e, n += 1
}
}),
Se = function() {
function e(e, t, n) {
var r = n.lastIndex,
i = this.keyframes;
if (e < i[0].t - this.offsetTime) a = i[0].s[0], s = !0, r = 0;
else if (e >= i[i.length - 1].t - this.offsetTime) a = i[i.length - 1].s ? i[i.length - 1].s[0] : i[i.length - 2].e[0], s = !0;
else {
for (var a, o, s, l, c, u, d, p, h, f, m, g, v, y = r, _ = i.length - 1, b = !0; b && (f = i[y], !((m = i[y + 1]).t - this.offsetTime > e));) y < _ - 1 ? y += 1 : b = !1;
g = this.keyframesMetadata[y] || {}, r = y, (s = 1 === f.h) || (e >= m.t - this.offsetTime ? p = 1 : e < f.t - this.offsetTime ? p = 0 : (g.__fnct ? v = g.__fnct : (v = ee.getBezierEasing(f.o.x, f.o.y, f.i.x, f.i.y).get, g.__fnct = v), p = v((e - (f.t - this.offsetTime)) / (m.t - this.offsetTime - (f.t - this.offsetTime)))), o = m.s ? m.s[0] : f.e[0]), a = f.s[0]
}
for (l = 0, u = t._length, d = a.i[0].length, n.lastIndex = r; l < u; l += 1)
for (c = 0; c < d; c += 1) h = s ? a.i[l][c] : a.i[l][c] + (o.i[l][c] - a.i[l][c]) * p, t.i[l][c] = h, h = s ? a.o[l][c] : a.o[l][c] + (o.o[l][c] - a.o[l][c]) * p, t.o[l][c] = h, h = s ? a.v[l][c] : a.v[l][c] + (o.v[l][c] - a.v[l][c]) * p, t.v[l][c] = h
}
function t() {
var e = this.comp.renderedFrame - this.offsetTime,
t = this.keyframes[0].t - this.offsetTime,
n = this.keyframes[this.keyframes.length - 1].t - this.offsetTime,
r = this._caching.lastFrame;
return -999999 !== r && (r < t && e < t || r > n && e > n) || (this._caching.lastIndex = r < e ? this._caching.lastIndex : 0, this.interpolateShape(e, this.pv, this._caching)), this._caching.lastFrame = e, this.pv
}
function n() {
this.paths = this.localShapeCollection
}
function r(e) {
! function(e, t) {
if (e._length !== t._length || e.c !== t.c) return !1;
var n, r = e._length;
for (n = 0; n < r; n += 1)
if (e.v[n][0] !== t.v[n][0] || e.v[n][1] !== t.v[n][1] || e.o[n][0] !== t.o[n][0] || e.o[n][1] !== t.o[n][1] || e.i[n][0] !== t.i[n][0] || e.i[n][1] !== t.i[n][1]) return !1;
return !0
}(this.v, e) && (this.v = xe.clone(e), this.localShapeCollection.releaseShapes(), this.localShapeCollection.addShape(this.v), this._mdf = !0, this.paths = this.localShapeCollection)
}
function i() {
if (this.elem.globalData.frameId !== this.frameId) {
if (!this.effectsSequence.length) return void(this._mdf = !1);
if (this.lock) return void this.setVValue(this.pv);
this.lock = !0, this._mdf = !1, e = this.kf ? this.pv : this.data.ks ? this.data.ks.k : this.data.pt.k;
var e, t, n = this.effectsSequence.length;
for (t = 0; t < n; t += 1) e = this.effectsSequence[t](e);
this.setVValue(e), this.lock = !1, this.frameId = this.elem.globalData.frameId
}
}
function a(e, t, r) {
this.propType = "shape", this.comp = e.comp, this.container = e, this.elem = e, this.data = t, this.k = !1, this.kf = !1, this._mdf = !1;
var i = 3 === r ? t.pt.k : t.ks.k;
this.v = xe.clone(i), this.pv = xe.clone(this.v), this.localShapeCollection = we.newShapeCollection(), this.paths = this.localShapeCollection, this.paths.addShape(this.v), this.reset = n, this.effectsSequence = []
}
function o(e) {
this.effectsSequence.push(e), this.container.addDynamicProperty(this)
}
function s(e, r, i) {
this.propType = "shape", this.comp = e.comp, this.elem = e, this.container = e, this.offsetTime = e.data.st, this.keyframes = 3 === i ? r.pt.k : r.ks.k, this.keyframesMetadata = [], this.k = !0, this.kf = !0;
var a = this.keyframes[0].s[0].i.length;
this.v = xe.newElement(), this.v.setPathData(this.keyframes[0].s[0].c, a), this.pv = xe.clone(this.v), this.localShapeCollection = we.newShapeCollection(), this.paths = this.localShapeCollection, this.paths.addShape(this.v), this.lastFrame = -999999, this.reset = n, this._caching = {
lastFrame: -999999,
lastIndex: 0
}, this.effectsSequence = [t.bind(this)]
}
a.prototype.interpolateShape = e, a.prototype.getValue = i, a.prototype.setVValue = r, a.prototype.addEffect = o, s.prototype.getValue = i, s.prototype.interpolateShape = e, s.prototype.setVValue = r, s.prototype.addEffect = o;
var l = function() {
function e(e, t) {
this.v = xe.newElement(), this.v.setPathData(!0, 4), this.localShapeCollection = we.newShapeCollection(), this.paths = this.localShapeCollection, this.localShapeCollection.addShape(this.v), this.d = t.d, this.elem = e, this.comp = e.comp, this.frameId = -1, this.initDynamicPropertyContainer(e), this.p = ve.getProp(e, t.p, 1, 0, this), this.s = ve.getProp(e, t.s, 1, 0, this), this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertEllToPath())
}
return e.prototype = {
reset: n,
getValue: function() {
this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertEllToPath())
},
convertEllToPath: function() {
var e = this.p.v[0],
t = this.p.v[1],
n = this.s.v[0] / 2,
r = this.s.v[1] / 2,
i = 3 !== this.d,
a = this.v;
a.v[0][0] = e, a.v[0][1] = t - r, a.v[1][0] = i ? e + n : e - n, a.v[1][1] = t, a.v[2][0] = e, a.v[2][1] = t + r, a.v[3][0] = i ? e - n : e + n, a.v[3][1] = t, a.i[0][0] = i ? e - .5519 * n : e + .5519 * n, a.i[0][1] = t - r, a.i[1][0] = i ? e + n : e - n, a.i[1][1] = t - .5519 * r, a.i[2][0] = i ? e + .5519 * n : e - .5519 * n, a.i[2][1] = t + r, a.i[3][0] = i ? e - n : e + n, a.i[3][1] = t + .5519 * r, a.o[0][0] = i ? e + .5519 * n : e - .5519 * n, a.o[0][1] = t - r, a.o[1][0] = i ? e + n : e - n, a.o[1][1] = t + .5519 * r, a.o[2][0] = i ? e - .5519 * n : e + .5519 * n, a.o[2][1] = t + r, a.o[3][0] = i ? e - n : e + n, a.o[3][1] = t - .5519 * r
}
}, f([ye], e), e
}(),
c = function() {
function e(e, t) {
this.v = xe.newElement(), this.v.setPathData(!0, 0), this.elem = e, this.comp = e.comp, this.data = t, this.frameId = -1, this.d = t.d, this.initDynamicPropertyContainer(e), 1 === t.sy ? (this.ir = ve.getProp(e, t.ir, 0, 0, this), this.is = ve.getProp(e, t.is, 0, .01, this), this.convertToPath = this.convertStarToPath) : this.convertToPath = this.convertPolygonToPath, this.pt = ve.getProp(e, t.pt, 0, 0, this), this.p = ve.getProp(e, t.p, 1, 0, this), this.r = ve.getProp(e, t.r, 0, O, this), this.or = ve.getProp(e, t.or, 0, 0, this), this.os = ve.getProp(e, t.os, 0, .01, this), this.localShapeCollection = we.newShapeCollection(), this.localShapeCollection.addShape(this.v), this.paths = this.localShapeCollection, this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertToPath())
}
return e.prototype = {
reset: n,
getValue: function() {
this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertToPath())
},
convertStarToPath: function() {
var e, t, n, r, i = 2 * Math.floor(this.pt.v),
a = 2 * Math.PI / i,
o = !0,
s = this.or.v,
l = this.ir.v,
c = this.os.v,
u = this.is.v,
d = 2 * Math.PI * s / (2 * i),
p = 2 * Math.PI * l / (2 * i),
h = -Math.PI / 2;
h += this.r.v;
var f = 3 === this.data.d ? -1 : 1;
for (e = 0, this.v._length = 0; e < i; e += 1) {
n = o ? c : u, r = o ? d : p;
var m = (t = o ? s : l) * Math.cos(h),
g = t * Math.sin(h),
v = 0 === m && 0 === g ? 0 : g / Math.sqrt(m * m + g * g),
y = 0 === m && 0 === g ? 0 : -m / Math.sqrt(m * m + g * g);
m += +this.p.v[0], g += +this.p.v[1], this.v.setTripleAt(m, g, m - v * r * n * f, g - y * r * n * f, m + v * r * n * f, g + y * r * n * f, e, !0), o = !o, h += a * f
}
},
convertPolygonToPath: function() {
var e, t = Math.floor(this.pt.v),
n = 2 * Math.PI / t,
r = this.or.v,
i = this.os.v,
a = 2 * Math.PI * r / (4 * t),
o = -.5 * Math.PI,
s = 3 === this.data.d ? -1 : 1;
for (o += this.r.v, this.v._length = 0, e = 0; e < t; e += 1) {
var l = r * Math.cos(o),
c = r * Math.sin(o),
u = 0 === l && 0 === c ? 0 : c / Math.sqrt(l * l + c * c),
d = 0 === l && 0 === c ? 0 : -l / Math.sqrt(l * l + c * c);
l += +this.p.v[0], c += +this.p.v[1], this.v.setTripleAt(l, c, l - u * a * i * s, c - d * a * i * s, l + u * a * i * s, c + d * a * i * s, e, !0), o += n * s
}
this.paths.length = 0, this.paths[0] = this.v
}
}, f([ye], e), e
}(),
u = function() {
function e(e, t) {
this.v = xe.newElement(), this.v.c = !0, this.localShapeCollection = we.newShapeCollection(), this.localShapeCollection.addShape(this.v), this.paths = this.localShapeCollection, this.elem = e, this.comp = e.comp, this.frameId = -1, this.d = t.d, this.initDynamicPropertyContainer(e), this.p = ve.getProp(e, t.p, 1, 0, this), this.s = ve.getProp(e, t.s, 1, 0, this), this.r = ve.getProp(e, t.r, 0, 0, this), this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertRectToPath())
}
return e.prototype = {
convertRectToPath: function() {
var e = this.p.v[0],
t = this.p.v[1],
n = this.s.v[0] / 2,
r = this.s.v[1] / 2,
i = E(n, r, this.r.v),
a = .44810000000000005 * i;
this.v._length = 0, 2 === this.d || 1 === this.d ? (this.v.setTripleAt(e + n, t - r + i, e + n, t - r + i, e + n, t - r + a, 0, !0), this.v.setTripleAt(e + n, t + r - i, e + n, t + r - a, e + n, t + r - i, 1, !0), 0 !== i ? (this.v.setTripleAt(e + n - i, t + r, e + n - i, t + r, e + n - a, t + r, 2, !0), this.v.setTripleAt(e - n + i, t + r, e - n + a, t + r, e - n + i, t + r, 3, !0), this.v.setTripleAt(e - n, t + r - i, e - n, t + r - i, e - n, t + r - a, 4, !0), this.v.setTripleAt(e - n, t - r + i, e - n, t - r + a, e - n, t - r + i, 5, !0), this.v.setTripleAt(e - n + i, t - r, e - n + i, t - r, e - n + a, t - r, 6, !0), this.v.setTripleAt(e + n - i, t - r, e + n - a, t - r, e + n - i, t - r, 7, !0)) : (this.v.setTripleAt(e - n, t + r, e - n + a, t + r, e - n, t + r, 2), this.v.setTripleAt(e - n, t - r, e - n, t - r + a, e - n, t - r, 3))) : (this.v.setTripleAt(e + n, t - r + i, e + n, t - r + a, e + n, t - r + i, 0, !0), 0 !== i ? (this.v.setTripleAt(e + n - i, t - r, e + n - i, t - r, e + n - a, t - r, 1, !0), this.v.setTripleAt(e - n + i, t - r, e - n + a, t - r, e - n + i, t - r, 2, !0), this.v.setTripleAt(e - n, t - r + i, e - n, t - r + i, e - n, t - r + a, 3, !0), this.v.setTripleAt(e - n, t + r - i, e - n, t + r - a, e - n, t + r - i, 4, !0), this.v.setTripleAt(e - n + i, t + r, e - n + i, t + r, e - n + a, t + r, 5, !0), this.v.setTripleAt(e + n - i, t + r, e + n - a, t + r, e + n - i, t + r, 6, !0), this.v.setTripleAt(e + n, t + r - i, e + n, t + r - i, e + n, t + r - a, 7, !0)) : (this.v.setTripleAt(e - n, t - r, e - n + a, t - r, e - n, t - r, 1, !0), this.v.setTripleAt(e - n, t + r, e - n, t + r - a, e - n, t + r, 2, !0), this.v.setTripleAt(e + n, t + r, e + n - a, t + r, e + n, t + r, 3, !0)))
},
getValue: function() {
this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertRectToPath())
},
reset: n
}, f([ye], e), e
}(),
d = {
getShapeProp: function(e, t, n) {
var r;
return 3 === n || 4 === n ? r = (3 === n ? t.pt : t.ks).k.length ? new s(e, t, n) : new a(e, t, n) : 5 === n ? r = new u(e, t) : 6 === n ? r = new l(e, t) : 7 === n && (r = new c(e, t)), r.k && e.addDynamicProperty(r), r
},
getConstructorFunction: function() {
return a
},
getKeyframedConstructorFunction: function() {
return s
}
};
return d
}(),
Ee = function() {
var e = Math.cos,
t = Math.sin,
n = Math.tan,
r = Math.round;
function i() {
return this.props[0] = 1, this.props[1] = 0, this.props[2] = 0, this.props[3] = 0, this.props[4] = 0, this.props[5] = 1, this.props[6] = 0, this.props[7] = 0, this.props[8] = 0, this.props[9] = 0, this.props[10] = 1, this.props[11] = 0, this.props[12] = 0, this.props[13] = 0, this.props[14] = 0, this.props[15] = 1, this
}
function a(n) {
if (0 === n) return this;
var r = e(n),
i = t(n);
return this._t(r, -i, 0, 0, i, r, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
}
function o(n) {
if (0 === n) return this;
var r = e(n),
i = t(n);
return this._t(1, 0, 0, 0, 0, r, -i, 0, 0, i, r, 0, 0, 0, 0, 1)
}
function s(n) {
if (0 === n) return this;
var r = e(n),
i = t(n);
return this._t(r, 0, i, 0, 0, 1, 0, 0, -i, 0, r, 0, 0, 0, 0, 1)
}
function l(n) {
if (0 === n) return this;
var r = e(n),
i = t(n);
return this._t(r, -i, 0, 0, i, r, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
}
function c(e, t) {
return this._t(1, t, e, 1, 0, 0)
}
function u(e, t) {
return this.shear(n(e), n(t))
}
function d(r, i) {
var a = e(i),
o = t(i);
return this._t(a, o, 0, 0, -o, a, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(1, 0, 0, 0, n(r), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(a, -o, 0, 0, o, a, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
}
function p(e, t, n) {
return n || 0 === n || (n = 1), 1 === e && 1 === t && 1 === n ? this : this._t(e, 0, 0, 0, 0, t, 0, 0, 0, 0, n, 0, 0, 0, 0, 1)
}
function h(e, t, n, r, i, a, o, s, l, c, u, d, p, h, f, m) {
return this.props[0] = e, this.props[1] = t, this.props[2] = n, this.props[3] = r, this.props[4] = i, this.props[5] = a, this.props[6] = o, this.props[7] = s, this.props[8] = l, this.props[9] = c, this.props[10] = u, this.props[11] = d, this.props[12] = p, this.props[13] = h, this.props[14] = f, this.props[15] = m, this
}
function f(e, t, n) {
return n = n || 0, 0 !== e || 0 !== t || 0 !== n ? this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, e, t, n, 1) : this
}
function m(e, t, n, r, i, a, o, s, l, c, u, d, p, h, f, m) {
var g = this.props;
if (1 === e && 0 === t && 0 === n && 0 === r && 0 === i && 1 === a && 0 === o && 0 === s && 0 === l && 0 === c && 1 === u && 0 === d) return g[12] = g[12] * e + g[15] * p, g[13] = g[13] * a + g[15] * h, g[14] = g[14] * u + g[15] * f, g[15] *= m, this._identityCalculated = !1, this;
var v = g[0],
y = g[1],
_ = g[2],
b = g[3],
x = g[4],
k = g[5],
w = g[6],
S = g[7],
E = g[8],
I = g[9],
O = g[10],
C = g[11],
A = g[12],
P = g[13],
T = g[14],
R = g[15];
return g[0] = v * e + y * i + _ * l + b * p, g[1] = v * t + y * a + _ * c + b * h, g[2] = v * n + y * o + _ * u + b * f, g[3] = v * r + y * s + _ * d + b * m, g[4] = x * e + k * i + w * l + S * p, g[5] = x * t + k * a + w * c + S * h, g[6] = x * n + k * o + w * u + S * f, g[7] = x * r + k * s + w * d + S * m, g[8] = E * e + I * i + O * l + C * p, g[9] = E * t + I * a + O * c + C * h, g[10] = E * n + I * o + O * u + C * f, g[11] = E * r + I * s + O * d + C * m, g[12] = A * e + P * i + T * l + R * p, g[13] = A * t + P * a + T * c + R * h, g[14] = A * n + P * o + T * u + R * f, g[15] = A * r + P * s + T * d + R * m, this._identityCalculated = !1, this
}
function v(e) {
var t = e.props;
return this.transform(t[0], t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8], t[9], t[10], t[11], t[12], t[13], t[14], t[15])
}
function y() {
return this._identityCalculated || (this._identity = !(1 !== this.props[0] || 0 !== this.props[1] || 0 !== this.props[2] || 0 !== this.props[3] || 0 !== this.props[4] || 1 !== this.props[5] || 0 !== this.props[6] || 0 !== this.props[7] || 0 !== this.props[8] || 0 !== this.props[9] || 1 !== this.props[10] || 0 !== this.props[11] || 0 !== this.props[12] || 0 !== this.props[13] || 0 !== this.props[14] || 1 !== this.props[15]), this._identityCalculated = !0), this._identity
}
function _(e) {
for (var t = 0; t < 16;) {
if (e.props[t] !== this.props[t]) return !1;
t += 1
}
return !0
}
function b(e) {
var t;
for (t = 0; t < 16; t += 1) e.props[t] = this.props[t];
return e
}
function x(e) {
var t;
for (t = 0; t < 16; t += 1) this.props[t] = e[t]
}
function k(e, t, n) {
return {
x: e * this.props[0] + t * this.props[4] + n * this.props[8] + this.props[12],
y: e * this.props[1] + t * this.props[5] + n * this.props[9] + this.props[13],
z: e * this.props[2] + t * this.props[6] + n * this.props[10] + this.props[14]
}
}
function w(e, t, n) {
return e * this.props[0] + t * this.props[4] + n * this.props[8] + this.props[12]
}
function S(e, t, n) {
return e * this.props[1] + t * this.props[5] + n * this.props[9] + this.props[13]
}
function E(e, t, n) {
return e * this.props[2] + t * this.props[6] + n * this.props[10] + this.props[14]
}
function I() {
var e = this.props[0] * this.props[5] - this.props[1] * this.props[4],
t = this.props[5] / e,
n = -this.props[1] / e,
r = -this.props[4] / e,
i = this.props[0] / e,
a = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / e,
o = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / e,
s = new Ee;
return s.props[0] = t, s.props[1] = n, s.props[4] = r, s.props[5] = i, s.props[12] = a, s.props[13] = o, s
}
function O(e) {
return this.getInverseMatrix().applyToPointArray(e[0], e[1], e[2] || 0)
}
function C(e) {
var t, n = e.length,
r = [];
for (t = 0; t < n; t += 1) r[t] = O(e[t]);
return r
}
function A(e, t, n) {
var r = g("float32", 6);
if (this.isIdentity()) r[0] = e[0], r[1] = e[1], r[2] = t[0], r[3] = t[1], r[4] = n[0], r[5] = n[1];
else {
var i = this.props[0],
a = this.props[1],
o = this.props[4],
s = this.props[5],
l = this.props[12],
c = this.props[13];
r[0] = e[0] * i + e[1] * o + l, r[1] = e[0] * a + e[1] * s + c, r[2] = t[0] * i + t[1] * o + l, r[3] = t[0] * a + t[1] * s + c, r[4] = n[0] * i + n[1] * o + l, r[5] = n[0] * a + n[1] * s + c
}
return r
}
function P(e, t, n) {
return this.isIdentity() ? [e, t, n] : [e * this.props[0] + t * this.props[4] + n * this.props[8] + this.props[12], e * this.props[1] + t * this.props[5] + n * this.props[9] + this.props[13], e * this.props[2] + t * this.props[6] + n * this.props[10] + this.props[14]]
}
function T(e, t) {
if (this.isIdentity()) return e + "," + t;
var n = this.props;
return Math.round(100 * (e * n[0] + t * n[4] + n[12])) / 100 + "," + Math.round(100 * (e * n[1] + t * n[5] + n[13])) / 100
}
function R() {
for (var e = 0, t = this.props, n = "matrix3d("; e < 16;) n += r(1e4 * t[e]) / 1e4 + (15 === e ? ")" : ","), e += 1;
return n
}
function D(e) {
return e < 1e-6 && e > 0 || e > -1e-6 && e < 0 ? r(1e4 * e) / 1e4 : e
}
function L() {
var e = this.props;
return "matrix(" + D(e[0]) + "," + D(e[1]) + "," + D(e[4]) + "," + D(e[5]) + "," + D(e[12]) + "," + D(e[13]) + ")"
}
return function() {
this.reset = i, this.rotate = a, this.rotateX = o, this.rotateY = s, this.rotateZ = l, this.skew = u, this.skewFromAxis = d, this.shear = c, this.scale = p, this.setTransform = h, this.translate = f, this.transform = m, this.multiply = v, this.applyToPoint = k, this.applyToX = w, this.applyToY = S, this.applyToZ = E, this.applyToPointArray = P, this.applyToTriplePoints = A, this.applyToPointStringified = T, this.toCSS = R, this.to2dCSS = L, this.clone = b, this.cloneFromProps = x, this.equals = _, this.inversePoints = C, this.inversePoint = O, this.getInverseMatrix = I, this._t = this.transform, this.isIdentity = y, this._identity = !0, this._identityCalculated = !1, this.props = g("float32", 16), this.reset()
}
}();
function Ie(e) {
return (Ie = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {
return typeof e
} : function(e) {
return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
})(e)
}
var Oe = {};
function Ce() {
J.searchAnimations()
}
Oe.play = J.play, Oe.pause = J.pause, Oe.setLocationHref = function(e) {
! function(e) {
u = e
}(e)
}, Oe.togglePause = J.togglePause, Oe.setSpeed = J.setSpeed, Oe.setDirection = J.setDirection, Oe.stop = J.stop, Oe.searchAnimations = Ce, Oe.registerAnimation = J.registerAnimation, Oe.loadAnimation = function(e) {
return J.loadAnimation(e)
}, Oe.setSubframeRendering = function(e) {
! function(e) {
y = !!e
}(e)
}, Oe.resize = J.resize, Oe.goToAndStop = J.goToAndStop, Oe.destroy = J.destroy, Oe.setQuality = function(e) {
if ("string" == typeof e) switch (e) {
case "high":
B(200);
break;
default:
case "medium":
B(50);
break;
case "low":
B(10)
} else !isNaN(e) && e > 1 && B(e)
}, Oe.inBrowser = function() {
return "undefined" != typeof navigator
}, Oe.installPlugin = function(e, t) {
"expressions" === e && function(e) {
_ = e
}(t)
}, Oe.freeze = J.freeze, Oe.unfreeze = J.unfreeze, Oe.setVolume = J.setVolume, Oe.mute = J.mute, Oe.unmute = J.unmute, Oe.getRegisteredAnimations = J.getRegisteredAnimations, Oe.useWebWorker = function(e) {
d = !!e
}, Oe.setIDPrefix = function(e) {
! function(e) {
b = e
}(e)
}, Oe.__getFactory = function(e) {
switch (e) {
case "propertyFactory":
return ve;
case "shapePropertyFactory":
return Se;
case "matrix":
return Ee;
default:
return null
}
}, Oe.version = "5.12.2";
var Ae = "",
Pe = document.getElementsByTagName("script"),
Te = Pe[Pe.length - 1] || {
src: ""
};
Ae = Te.src ? Te.src.replace(/^[^\?]+\??/, "") : "",
function(e) {
for (var t = Ae.split("&"), n = 0; n < t.length; n += 1) {
var r = t[n].split("=");
if ("renderer" == decodeURIComponent(r[0])) return decodeURIComponent(r[1])
}
}();
var Re = setInterval((function() {
"complete" === document.readyState && (clearInterval(Re), Ce())
}), 100);
try {
"object" !== Ie(Uo) && (window.bodymovin = Oe)
} catch (e) {}
var De = (o = {}, (a = {}).registerModifier = function(e, t) {
o[e] || (o[e] = t)
}, a.getModifier = function(e, t, n) {
return new o[e](t, n)
}, a);
function Le() {}
function Ne() {}
function Me() {}
Le.prototype.initModifierProperties = function() {}, Le.prototype.addShapeToModifier = function() {}, Le.prototype.addShape = function(e) {
if (!this.closed) {
e.sh.container.addDynamicProperty(e.sh);
var t = {
shape: e.sh,
data: e,
localShapeCollection: we.newShapeCollection()
};
this.shapes.push(t), this.addShapeToModifier(t), this._isAnimated && e.setAsAnimated()
}
}, Le.prototype.init = function(e, t) {
this.shapes = [], this.elem = e, this.initDynamicPropertyContainer(e), this.initModifierProperties(e, t), this.frameId = -999999, this.closed = !1, this.k = !1, this.dynamicProperties.length ? this.k = !0 : this.getValue(!0)
}, Le.prototype.processKeys = function() {
this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties())
}, f([ye], Le), f([Le], Ne), Ne.prototype.initModifierProperties = function(e, t) {
this.s = ve.getProp(e, t.s, 0, .01, this), this.e = ve.getProp(e, t.e, 0, .01, this), this.o = ve.getProp(e, t.o, 0, 0, this), this.sValue = 0, this.eValue = 0, this.getValue = this.processKeys, this.m = t.m, this._isAnimated = !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length
}, Ne.prototype.addShapeToModifier = function(e) {
e.pathsData = []
}, Ne.prototype.calculateShapeEdges = function(e, t, n, r, i) {
var a, o, s = [];
t <= 1 ? s.push({
s: e,
e: t
}) : e >= 1 ? s.push({
s: e - 1,
e: t - 1
}) : (s.push({
s: e,
e: 1
}), s.push({
s: 0,
e: t - 1
}));
var l = [],
c = s.length;
for (a = 0; a < c; a += 1)(o = s[a]).e * i < r || o.s * i > r + n || l.push([o.s * i <= r ? 0 : (o.s * i - r) / n, o.e * i >= r + n ? 1 : (o.e * i - r) / n]);
return l.length || l.push([0, 0]), l
}, Ne.prototype.releasePathsData = function(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) ie.release(e[t]);
return e.length = 0, e
}, Ne.prototype.processShapes = function(e) {
if (this._mdf || e) {
var t = this.o.v % 360 / 360;
if (t < 0 && (t += 1), (a = this.s.v > 1 ? 1 + t : this.s.v < 0 ? 0 + t : this.s.v + t) > (o = this.e.v > 1 ? 1 + t : this.e.v < 0 ? 0 + t : this.e.v + t)) {
var n = a;
a = o, o = n
}
a = 1e-4 * Math.round(1e4 * a), o = 1e-4 * Math.round(1e4 * o), this.sValue = a, this.eValue = o
} else a = this.sValue, o = this.eValue;
var r = this.shapes.length,
i = 0;
if (o === a)
for (l = 0; l < r; l += 1) this.shapes[l].localShapeCollection.releaseShapes(), this.shapes[l].shape._mdf = !0, this.shapes[l].shape.paths = this.shapes[l].localShapeCollection, this._mdf && (this.shapes[l].pathsData.length = 0);
else if (1 === o && 0 === a || 0 === o && 1 === a) {
if (this._mdf)
for (l = 0; l < r; l += 1) this.shapes[l].pathsData.length = 0, this.shapes[l].shape._mdf = !0
} else {
var a, o, s, l, c, u, d, p, h, f, m, g, v = [];
for (l = 0; l < r; l += 1)
if ((f = this.shapes[l]).shape._mdf || this._mdf || e || 2 === this.m) {
if (u = (s = f.shape.paths)._length, h = 0, !f.shape._mdf && f.pathsData.length) h = f.totalShapeLength;
else {
for (c = 0, d = this.releasePathsData(f.pathsData); c < u; c += 1) p = ae.getSegmentsLength(s.shapes[c]), d.push(p), h += p.totalLength;
f.totalShapeLength = h, f.pathsData = d
}
i += h, f.shape._mdf = !0
} else f.shape.paths = f.localShapeCollection;
var y = a,
_ = o,
b = 0;
for (l = r - 1; l >= 0; l -= 1)
if ((f = this.shapes[l]).shape._mdf) {
for ((m = f.localShapeCollection).releaseShapes(), 2 === this.m && r > 1 ? (g = this.calculateShapeEdges(a, o, f.totalShapeLength, b, i), b += f.totalShapeLength) : g = [
[y, _]
], u = g.length, c = 0; c < u; c += 1) {
y = g[c][0], _ = g[c][1], v.length = 0, _ <= 1 ? v.push({
s: f.totalShapeLength * y,
e: f.totalShapeLength * _
}) : y >= 1 ? v.push({
s: f.totalShapeLength * (y - 1),
e: f.totalShapeLength * (_ - 1)
}) : (v.push({
s: f.totalShapeLength * y,
e: f.totalShapeLength
}), v.push({
s: 0,
e: f.totalShapeLength * (_ - 1)
}));
var x = this.addShapes(f, v[0]);
if (v[0].s !== v[0].e) {
if (v.length > 1)
if (f.shape.paths.shapes[f.shape.paths._length - 1].c) {
var k = x.pop();
this.addPaths(x, m), x = this.addShapes(f, v[1], k)
} else this.addPaths(x, m), x = this.addShapes(f, v[1]);
this.addPaths(x, m)
}
}
f.shape.paths = m
}
}
}, Ne.prototype.addPaths = function(e, t) {
var n, r = e.length;
for (n = 0; n < r; n += 1) t.addShape(e[n])
}, Ne.prototype.addSegment = function(e, t, n, r, i, a, o) {
i.setXYAt(t[0], t[1], "o", a), i.setXYAt(n[0], n[1], "i", a + 1), o && i.setXYAt(e[0], e[1], "v", a), i.setXYAt(r[0], r[1], "v", a + 1)
}, Ne.prototype.addSegmentFromArray = function(e, t, n, r) {
t.setXYAt(e[1], e[5], "o", n), t.setXYAt(e[2], e[6], "i", n + 1), r && t.setXYAt(e[0], e[4], "v", n), t.setXYAt(e[3], e[7], "v", n + 1)
}, Ne.prototype.addShapes = function(e, t, n) {
var r, i, a, o, s, l, c, u, d = e.pathsData,
p = e.shape.paths.shapes,
h = e.shape.paths._length,
f = 0,
m = [],
g = !0;
for (n ? (s = n._length, u = n._length) : (n = xe.newElement(), s = 0, u = 0), m.push(n), r = 0; r < h; r += 1) {
for (i = 1, l = d[r].lengths, n.c = p[r].c, a = p[r].c ? l.length : l.length + 1; i < a; i += 1)
if (f + (o = l[i - 1]).addedLength < t.s) f += o.addedLength, n.c = !1;
else {
if (f > t.e) {
n.c = !1;
break
}
t.s <= f && t.e >= f + o.addedLength ? (this.addSegment(p[r].v[i - 1], p[r].o[i - 1], p[r].i[i], p[r].v[i], n, s, g), g = !1) : (c = ae.getNewSegment(p[r].v[i - 1], p[r].v[i], p[r].o[i - 1], p[r].i[i], (t.s - f) / o.addedLength, (t.e - f) / o.addedLength, l[i - 1]), this.addSegmentFromArray(c, n, s, g), g = !1, n.c = !1), f += o.addedLength, s += 1
} if (p[r].c && l.length) {
if (o = l[i - 1], f <= t.e) {
var v = l[i - 1].addedLength;
t.s <= f && t.e >= f + v ? (this.addSegment(p[r].v[i - 1], p[r].o[i - 1], p[r].i[0], p[r].v[0], n, s, g), g = !1) : (c = ae.getNewSegment(p[r].v[i - 1], p[r].v[0], p[r].o[i - 1], p[r].i[0], (t.s - f) / v, (t.e - f) / v, l[i - 1]), this.addSegmentFromArray(c, n, s, g), g = !1, n.c = !1)
} else n.c = !1;
f += o.addedLength, s += 1
}
if (n._length && (n.setXYAt(n.v[u][0], n.v[u][1], "i", u), n.setXYAt(n.v[n._length - 1][0], n.v[n._length - 1][1], "o", n._length - 1)), f > t.e) break;
r < h - 1 && (n = xe.newElement(), g = !0, m.push(n), s = 0)
}
return m
}, f([Le], Me), Me.prototype.initModifierProperties = function(e, t) {
this.getValue = this.processKeys, this.amount = ve.getProp(e, t.a, 0, null, this), this._isAnimated = !!this.amount.effectsSequence.length
}, Me.prototype.processPath = function(e, t) {
var n, r, i, a, o, s, l = t / 100,
c = [0, 0],
u = e._length,
d = 0;
for (d = 0; d < u; d += 1) c[0] += e.v[d][0], c[1] += e.v[d][1];
c[0] /= u, c[1] /= u;
var p = xe.newElement();
for (d = 0, p.c = e.c; d < u; d += 1) n = e.v[d][0] + (c[0] - e.v[d][0]) * l, r = e.v[d][1] + (c[1] - e.v[d][1]) * l, i = e.o[d][0] + -(c[0] - e.o[d][0]) * l, a = e.o[d][1] + -(c[1] - e.o[d][1]) * l, o = e.i[d][0] + -(c[0] - e.i[d][0]) * l, s = e.i[d][1] + -(c[1] - e.i[d][1]) * l, p.setTripleAt(n, r, i, a, o, s, d);
return p
}, Me.prototype.processShapes = function(e) {
var t, n, r, i, a, o, s = this.shapes.length,
l = this.amount.v;
if (0 !== l)
for (n = 0; n < s; n += 1) {
if (o = (a = this.shapes[n]).localShapeCollection, a.shape._mdf || this._mdf || e)
for (o.releaseShapes(), a.shape._mdf = !0, t = a.shape.paths.shapes, i = a.shape.paths._length, r = 0; r < i; r += 1) o.addShape(this.processPath(t[r], l));
a.shape.paths = a.localShapeCollection
}
this.dynamicProperties.length || (this._mdf = !1)
};
var je = function() {
var e = [0, 0];
function t(e, t, n) {
if (this.elem = e, this.frameId = -1, this.propType = "transform", this.data = t, this.v = new Ee, this.pre = new Ee, this.appliedTransformations = 0, this.initDynamicPropertyContainer(n || e), t.p && t.p.s ? (this.px = ve.getProp(e, t.p.x, 0, 0, this), this.py = ve.getProp(e, t.p.y, 0, 0, this), t.p.z && (this.pz = ve.getProp(e, t.p.z, 0, 0, this))) : this.p = ve.getProp(e, t.p || {
k: [0, 0, 0]
}, 1, 0, this), t.rx) {
if (this.rx = ve.getProp(e, t.rx, 0, O, this), this.ry = ve.getProp(e, t.ry, 0, O, this), this.rz = ve.getProp(e, t.rz, 0, O, this), t.or.k[0].ti) {
var r, i = t.or.k.length;
for (r = 0; r < i; r += 1) t.or.k[r].to = null, t.or.k[r].ti = null
}
this.or = ve.getProp(e, t.or, 1, O, this), this.or.sh = !0
} else this.r = ve.getProp(e, t.r || {
k: 0
}, 0, O, this);
t.sk && (this.sk = ve.getProp(e, t.sk, 0, O, this), this.sa = ve.getProp(e, t.sa, 0, O, this)), this.a = ve.getProp(e, t.a || {
k: [0, 0, 0]
}, 1, 0, this), this.s = ve.getProp(e, t.s || {
k: [100, 100, 100]
}, 1, .01, this), t.o ? this.o = ve.getProp(e, t.o, 0, .01, e) : this.o = {
_mdf: !1,
v: 1
}, this._isDirty = !0, this.dynamicProperties.length || this.getValue(!0)
}
return t.prototype = {
applyToMatrix: function(e) {
var t = this._mdf;
this.iterateDynamicProperties(), this._mdf = this._mdf || t, this.a && e.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.s && e.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.sk && e.skewFromAxis(-this.sk.v, this.sa.v), this.r ? e.rotate(-this.r.v) : e.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.data.p.s ? this.data.p.z ? e.translate(this.px.v, this.py.v, -this.pz.v) : e.translate(this.px.v, this.py.v, 0) : e.translate(this.p.v[0], this.p.v[1], -this.p.v[2])
},
getValue: function(t) {
if (this.elem.globalData.frameId !== this.frameId) {
if (this._isDirty && (this.precalculateMatrix(), this._isDirty = !1), this.iterateDynamicProperties(), this._mdf || t) {
var n;
if (this.v.cloneFromProps(this.pre.props), this.appliedTransformations < 1 && this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.appliedTransformations < 2 && this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.sk && this.appliedTransformations < 3 && this.v.skewFromAxis(-this.sk.v, this.sa.v), this.r && this.appliedTransformations < 4 ? this.v.rotate(-this.r.v) : !this.r && this.appliedTransformations < 4 && this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.autoOriented) {
if (n = this.elem.globalData.frameRate, this.p && this.p.keyframes && this.p.getValueAtTime) this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t ? (r = this.p.getValueAtTime((this.p.keyframes[0].t + .01) / n, 0), i = this.p.getValueAtTime(this.p.keyframes[0].t / n, 0)) : this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t ? (r = this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length - 1].t / n, 0), i = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - .05) / n, 0)) : (r = this.p.pv, i = this.p.getValueAtTime((this.p._caching.lastFrame + this.p.offsetTime - .01) / n, this.p.offsetTime));
else if (this.px && this.px.keyframes && this.py.keyframes && this.px.getValueAtTime && this.py.getValueAtTime) {
r = [], i = [];
var r, i, a = this.px,
o = this.py;
a._caching.lastFrame + a.offsetTime <= a.keyframes[0].t ? (r[0] = a.getValueAtTime((a.keyframes[0].t + .01) / n, 0), r[1] = o.getValueAtTime((o.keyframes[0].t + .01) / n, 0), i[0] = a.getValueAtTime(a.keyframes[0].t / n, 0), i[1] = o.getValueAtTime(o.keyframes[0].t / n, 0)) : a._caching.lastFrame + a.offsetTime >= a.keyframes[a.keyframes.length - 1].t ? (r[0] = a.getValueAtTime(a.keyframes[a.keyframes.length - 1].t / n, 0), r[1] = o.getValueAtTime(o.keyframes[o.keyframes.length - 1].t / n, 0), i[0] = a.getValueAtTime((a.keyframes[a.keyframes.length - 1].t - .01) / n, 0), i[1] = o.getValueAtTime((o.keyframes[o.keyframes.length - 1].t - .01) / n, 0)) : (r = [a.pv, o.pv], i[0] = a.getValueAtTime((a._caching.lastFrame + a.offsetTime - .01) / n, a.offsetTime), i[1] = o.getValueAtTime((o._caching.lastFrame + o.offsetTime - .01) / n, o.offsetTime))
} else r = i = e;
this.v.rotate(-Math.atan2(r[1] - i[1], r[0] - i[0]))
}
this.data.p && this.data.p.s ? this.data.p.z ? this.v.translate(this.px.v, this.py.v, -this.pz.v) : this.v.translate(this.px.v, this.py.v, 0) : this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2])
}
this.frameId = this.elem.globalData.frameId
}
},
precalculateMatrix: function() {
if (this.appliedTransformations = 0, this.pre.reset(), !this.a.effectsSequence.length && (this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.appliedTransformations = 1, !this.s.effectsSequence.length)) {
if (this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.appliedTransformations = 2, this.sk) {
if (this.sk.effectsSequence.length || this.sa.effectsSequence.length) return;
this.pre.skewFromAxis(-this.sk.v, this.sa.v), this.appliedTransformations = 3
}
this.r ? this.r.effectsSequence.length || (this.pre.rotate(-this.r.v), this.appliedTransformations = 4) : this.rz.effectsSequence.length || this.ry.effectsSequence.length || this.rx.effectsSequence.length || this.or.effectsSequence.length || (this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.appliedTransformations = 4)
}
},
autoOrient: function() {}
}, f([ye], t), t.prototype.addDynamicProperty = function(e) {
this._addDynamicProperty(e), this.elem.addDynamicProperty(e), this._isDirty = !0
}, t.prototype._addDynamicProperty = ye.prototype.addDynamicProperty, {
getTransformProperty: function(e, n, r) {
return new t(e, n, r)
}
}
}();
function Fe() {}
function ze() {}
function Ve(e, t) {
return 1e5 * Math.abs(e - t) <= Math.min(Math.abs(e), Math.abs(t))
}
function Ue(e) {
return 1e-5 >= Math.abs(e)
}
function Be(e, t, n) {
return [e[0] * (1 - n) + t[0] * n, e[1] * (1 - n) + t[1] * n]
}
function Ge(e, t, n, r) {
return [3 * t - e - 3 * n + r, 3 * e - 6 * t + 3 * n, -3 * e + 3 * t, e]
}
function We(e) {
return new $e(e, e, e, e, !1)
}
function $e(e, t, n, r, i) {
i && Je(e, t) && (t = Be(e, r, 1 / 3)), i && Je(n, r) && (n = Be(e, r, 2 / 3));
var a = Ge(e[0], t[0], n[0], r[0]),
o = Ge(e[1], t[1], n[1], r[1]);
this.a = [a[0], o[0]], this.b = [a[1], o[1]], this.c = [a[2], o[2]], this.d = [a[3], o[3]], this.points = [e, t, n, r]
}
function qe(e, t) {
var n = e.points[0][t],
r = e.points[e.points.length - 1][t];
if (n > r) {
var i = r;
r = n, n = i
}
for (var a = function(e, t, n) {
if (0 === e) return [];
var r = t * t - 4 * e * n;
if (r < 0) return [];
var i = -t / (2 * e);
if (0 === r) return [i];
var a = Math.sqrt(r) / (2 * e);
return [i - a, i + a]
}(3 * e.a[t], 2 * e.b[t], e.c[t]), o = 0; o < a.length; o += 1)
if (a[o] > 0 && a[o] < 1) {
var s = e.point(a[o])[t];
s < n ? n = s : s > r && (r = s)
} return {
min: n,
max: r
}
}
function He(e, t, n) {
var r = e.boundingBox();
return {
cx: r.cx,
cy: r.cy,
width: r.width,
height: r.height,
bez: e,
t: (t + n) / 2,
t1: t,
t2: n
}
}
function Ke(e) {
var t = e.bez.split(.5);
return [He(t[0], e.t1, e.t), He(t[1], e.t, e.t2)]
}
function Ye(e, t) {
return [e[1] * t[2] - e[2] * t[1], e[2] * t[0] - e[0] * t[2], e[0] * t[1] - e[1] * t[0]]
}
function Qe(e, t, n, r) {
var i = [e[0], e[1], 1],
a = [t[0], t[1], 1],
o = [n[0], n[1], 1],
s = [r[0], r[1], 1],
l = Ye(Ye(i, a), Ye(o, s));
return Ue(l[2]) ? null : [l[0] / l[2], l[1] / l[2]]
}
function Ze(e, t, n) {
return [e[0] + Math.cos(t) * n, e[1] - Math.sin(t) * n]
}
function Xe(e, t) {
return Math.hypot(e[0] - t[0], e[1] - t[1])
}
function Je(e, t) {
return Ve(e[0], t[0]) && Ve(e[1], t[1])
}
function et() {}
function tt(e, t, n, r, i, a, o) {
var s = n - Math.PI / 2,
l = n + Math.PI / 2,
c = t[0] + Math.cos(n) * r * i,
u = t[1] - Math.sin(n) * r * i;
e.setTripleAt(c, u, c + Math.cos(s) * a, u - Math.sin(s) * a, c + Math.cos(l) * o, u - Math.sin(l) * o, e.length())
}
function nt(e, t, n, r, i, a, o) {
var s, l, c, u, d, p, h, f = (s = 0 === n ? t.length() - 1 : n - 1, l = (n + 1) % t.length(), c = t.v[s], Math.atan2(0, 1) - Math.atan2((d = [(u = t.v[l])[0] - c[0], u[1] - c[1]], h = [Math.cos(p = -.5 * Math.PI) * d[0] - Math.sin(p) * d[1], Math.sin(p) * d[0] + Math.cos(p) * d[1]])[1], h[0])),
m = t.v[n % t._length],
g = t.v[0 === n ? t._length - 1 : n - 1],
v = t.v[(n + 1) % t._length],
y = 2 === a ? Math.sqrt(Math.pow(m[0] - g[0], 2) + Math.pow(m[1] - g[1], 2)) : 0,
_ = 2 === a ? Math.sqrt(Math.pow(m[0] - v[0], 2) + Math.pow(m[1] - v[1], 2)) : 0;
tt(e, t.v[n % t._length], f, o, r, _ / (2 * (i + 1)), y / (2 * (i + 1)))
}
function rt(e, t, n) {
var r = Math.atan2(t[0] - e[0], t[1] - e[1]);
return [Ze(e, r, n), Ze(t, r, n)]
}
function it(e, t) {
n = (l = rt(e.points[0], e.points[1], t))[0], r = l[1], i = (l = rt(e.points[1], e.points[2], t))[0], a = l[1], o = (l = rt(e.points[2], e.points[3], t))[0], s = l[1];
var n, r, i, a, o, s, l, c = Qe(n, r, i, a);
null === c && (c = r);
var u = Qe(o, s, i, a);
return null === u && (u = o), new $e(n, c, u, s)
}
function at(e, t, n, r, i) {
var a = t.points[3],
o = n.points[0];
if (3 === r || Je(a, o)) return a;
if (2 === r) {
var s = -t.tangentAngle(1),
l = -n.tangentAngle(0) + Math.PI,
c = Qe(a, Ze(a, s + Math.PI / 2, 100), o, Ze(o, s + Math.PI / 2, 100)),
u = c ? Xe(c, a) : Xe(a, o) / 2,
d = Ze(a, s, 2 * u * .5519);
return e.setXYAt(d[0], d[1], "o", e.length() - 1), d = Ze(o, l, 2 * u * .5519), e.setTripleAt(o[0], o[1], o[0], o[1], d[0], d[1], e.length()), o
}
var p = Qe(Je(a, t.points[2]) ? t.points[0] : t.points[2], a, o, Je(o, n.points[1]) ? n.points[3] : n.points[1]);
return p && Xe(p, a) < i ? (e.setTripleAt(p[0], p[1], p[0], p[1], p[0], p[1], e.length()), p) : a
}
function ot(e, t) {
var n = e.intersections(t);
return n.length && Ve(n[0][0], 1) && n.shift(), n.length ? n[0] : null
}
function st(e, t) {
var n = e.slice(),
r = t.slice(),
i = ot(e[e.length - 1], t[0]);
return i && (n[e.length - 1] = e[e.length - 1].split(i[0])[0], r[0] = t[0].split(i[1])[1]), e.length > 1 && t.length > 1 && (i = ot(e[0], t[t.length - 1])) ? [
[e[0].split(i[0])[0]],
[t[t.length - 1].split(i[1])[1]]
] : [n, r]
}
function lt(e, t) {
var n, r, i, a, o = e.inflectionPoints();
if (0 === o.length) return [it(e, t)];
if (1 === o.length || Ve(o[1], 1)) return n = (i = e.split(o[0]))[0], r = i[1], [it(n, t), it(r, t)];
n = (i = e.split(o[0]))[0];
var s = (o[1] - o[0]) / (1 - o[0]);
return a = (i = i[1].split(s))[0], r = i[1], [it(n, t), it(a, t), it(r, t)]
}
function ct() {}
function ut(e) {
for (var t = e.fStyle ? e.fStyle.split(" ") : [], n = "normal", r = "normal", i = t.length, a = 0; a < i; a += 1) switch (t[a].toLowerCase()) {
case "italic":
r = "italic";
break;
case "bold":
n = "700";
break;
case "black":
n = "900";
break;
case "medium":
n = "500";
break;
case "regular":
case "normal":
n = "400";
break;
case "light":
case "thin":
n = "200"
}
return {
style: r,
weight: e.fWeight || n
}
}
f([Le], Fe), Fe.prototype.initModifierProperties = function(e, t) {
this.getValue = this.processKeys, this.c = ve.getProp(e, t.c, 0, null, this), this.o = ve.getProp(e, t.o, 0, null, this), this.tr = je.getTransformProperty(e, t.tr, this), this.so = ve.getProp(e, t.tr.so, 0, .01, this), this.eo = ve.getProp(e, t.tr.eo, 0, .01, this), this.data = t, this.dynamicProperties.length || this.getValue(!0), this._isAnimated = !!this.dynamicProperties.length, this.pMatrix = new Ee, this.rMatrix = new Ee, this.sMatrix = new Ee, this.tMatrix = new Ee, this.matrix = new Ee
}, Fe.prototype.applyTransforms = function(e, t, n, r, i, a) {
var o = a ? -1 : 1,
s = r.s.v[0] + (1 - r.s.v[0]) * (1 - i),
l = r.s.v[1] + (1 - r.s.v[1]) * (1 - i);
e.translate(r.p.v[0] * o * i, r.p.v[1] * o * i, r.p.v[2]), t.translate(-r.a.v[0], -r.a.v[1], r.a.v[2]), t.rotate(-r.r.v * o * i), t.translate(r.a.v[0], r.a.v[1], r.a.v[2]), n.translate(-r.a.v[0], -r.a.v[1], r.a.v[2]), n.scale(a ? 1 / s : s, a ? 1 / l : l), n.translate(r.a.v[0], r.a.v[1], r.a.v[2])
}, Fe.prototype.init = function(e, t, n, r) {
for (this.elem = e, this.arr = t, this.pos = n, this.elemsData = r, this._currentCopies = 0, this._elements = [], this._groups = [], this.frameId = -1, this.initDynamicPropertyContainer(e), this.initModifierProperties(e, t[n]); n > 0;) n -= 1, this._elements.unshift(t[n]);
this.dynamicProperties.length ? this.k = !0 : this.getValue(!0)
}, Fe.prototype.resetElements = function(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) e[t]._processed = !1, "gr" === e[t].ty && this.resetElements(e[t].it)
}, Fe.prototype.cloneElements = function(e) {
var t = JSON.parse(JSON.stringify(e));
return this.resetElements(t), t
}, Fe.prototype.changeGroupRender = function(e, t) {
var n, r = e.length;
for (n = 0; n < r; n += 1) e[n]._render = t, "gr" === e[n].ty && this.changeGroupRender(e[n].it, t)
}, Fe.prototype.processShapes = function(e) {
var t = !1;
if (this._mdf || e) {
var n, r, i, a, o, s, l, c, u = Math.ceil(this.c.v);
if (this._groups.length < u) {
for (; this._groups.length < u;) {
var d = {
it: this.cloneElements(this._elements),
ty: "gr"
};
d.it.push({
a: {
a: 0,
ix: 1,
k: [0, 0]
},
nm: "Transform",
o: {
a: 0,
ix: 7,
k: 100
},
p: {
a: 0,
ix: 2,
k: [0, 0]
},
r: {
a: 1,
ix: 6,
k: [{
s: 0,
e: 0,
t: 0
}, {
s: 0,
e: 0,
t: 1
}]
},
s: {
a: 0,
ix: 3,
k: [100, 100]
},
sa: {
a: 0,
ix: 5,
k: 0
},
sk: {
a: 0,
ix: 4,
k: 0
},
ty: "tr"
}), this.arr.splice(0, 0, d), this._groups.splice(0, 0, d), this._currentCopies += 1
}
this.elem.reloadShapes(), t = !0
}
for (i = 0, o = 0; i <= this._groups.length - 1; i += 1) {
if (s = o < u, this._groups[i]._render = s, this.changeGroupRender(this._groups[i].it, s), !s) {
var p = this.elemsData[i].it,
h = p[p.length - 1];
0 !== h.transform.op.v ? (h.transform.op._mdf = !0, h.transform.op.v = 0) : h.transform.op._mdf = !1
}
o += 1
}
this._currentCopies = u;
var f = this.o.v,
m = f % 1,
g = f > 0 ? Math.floor(f) : Math.ceil(f),
v = this.pMatrix.props,
y = this.rMatrix.props,
_ = this.sMatrix.props;
this.pMatrix.reset(), this.rMatrix.reset(), this.sMatrix.reset(), this.tMatrix.reset(), this.matrix.reset();
var b = 0;
if (f > 0) {
for (; b < g;) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1), b += 1;
m && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, m, !1), b += m)
} else if (f < 0) {
for (; b > g;) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !0), b -= 1;
m && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -m, !0), b -= m)
}
for (i = 1 === this.data.m ? 0 : this._currentCopies - 1, a = 1 === this.data.m ? 1 : -1, o = this._currentCopies; o;) {
if (c = (r = (n = this.elemsData[i].it)[n.length - 1].transform.mProps.v.props).length, n[n.length - 1].transform.mProps._mdf = !0, n[n.length - 1].transform.op._mdf = !0, n[n.length - 1].transform.op.v = 1 === this._currentCopies ? this.so.v : this.so.v + (this.eo.v - this.so.v) * (i / (this._currentCopies - 1)), 0 !== b) {
for ((0 !== i && 1 === a || i !== this._currentCopies - 1 && -1 === a) && this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1), this.matrix.transform(y[0], y[1], y[2], y[3], y[4], y[5], y[6], y[7], y[8], y[9], y[10], y[11], y[12], y[13], y[14], y[15]), this.matrix.transform(_[0], _[1], _[2], _[3], _[4], _[5], _[6], _[7], _[8], _[9], _[10], _[11], _[12], _[13], _[14], _[15]), this.matrix.transform(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], v[8], v[9], v[10], v[11], v[12], v[13], v[14], v[15]), l = 0; l < c; l += 1) r[l] = this.matrix.props[l];
this.matrix.reset()
} else
for (this.matrix.reset(), l = 0; l < c; l += 1) r[l] = this.matrix.props[l];
b += 1, o -= 1, i += a
}
} else
for (o = this._currentCopies, i = 0, a = 1; o;) r = (n = this.elemsData[i].it)[n.length - 1].transform.mProps.v.props, n[n.length - 1].transform.mProps._mdf = !1, n[n.length - 1].transform.op._mdf = !1, o -= 1, i += a;
return t
}, Fe.prototype.addShape = function() {}, f([Le], ze), ze.prototype.initModifierProperties = function(e, t) {
this.getValue = this.processKeys, this.rd = ve.getProp(e, t.r, 0, null, this), this._isAnimated = !!this.rd.effectsSequence.length
}, ze.prototype.processPath = function(e, t) {
var n, r, i, a, o, s, l, c, u, d, p, h, f, m = xe.newElement();
m.c = e.c;
var g = e._length,
v = 0;
for (n = 0; n < g; n += 1) r = e.v[n], a = e.o[n], i = e.i[n], r[0] === a[0] && r[1] === a[1] && r[0] === i[0] && r[1] === i[1] ? 0 !== n && n !== g - 1 || e.c ? (o = 0 === n ? e.v[g - 1] : e.v[n - 1], l = (s = Math.sqrt(Math.pow(r[0] - o[0], 2) + Math.pow(r[1] - o[1], 2))) ? Math.min(s / 2, t) / s : 0, c = h = r[0] + (o[0] - r[0]) * l, u = f = r[1] - (r[1] - o[1]) * l, d = c - .5519 * (c - r[0]), p = u - .5519 * (u - r[1]), m.setTripleAt(c, u, d, p, h, f, v), v += 1, o = n === g - 1 ? e.v[0] : e.v[n + 1], l = (s = Math.sqrt(Math.pow(r[0] - o[0], 2) + Math.pow(r[1] - o[1], 2))) ? Math.min(s / 2, t) / s : 0, c = d = r[0] + (o[0] - r[0]) * l, u = p = r[1] + (o[1] - r[1]) * l, h = c - .5519 * (c - r[0]), f = u - .5519 * (u - r[1]), m.setTripleAt(c, u, d, p, h, f, v)) : m.setTripleAt(r[0], r[1], a[0], a[1], i[0], i[1], v) : m.setTripleAt(e.v[n][0], e.v[n][1], e.o[n][0], e.o[n][1], e.i[n][0], e.i[n][1], v), v += 1;
return m
}, ze.prototype.processShapes = function(e) {
var t, n, r, i, a, o, s = this.shapes.length,
l = this.rd.v;
if (0 !== l)
for (n = 0; n < s; n += 1) {
if (o = (a = this.shapes[n]).localShapeCollection, a.shape._mdf || this._mdf || e)
for (o.releaseShapes(), a.shape._mdf = !0, t = a.shape.paths.shapes, i = a.shape.paths._length, r = 0; r < i; r += 1) o.addShape(this.processPath(t[r], l));
a.shape.paths = a.localShapeCollection
}
this.dynamicProperties.length || (this._mdf = !1)
}, $e.prototype.point = function(e) {
return [((this.a[0] * e + this.b[0]) * e + this.c[0]) * e + this.d[0], ((this.a[1] * e + this.b[1]) * e + this.c[1]) * e + this.d[1]]
}, $e.prototype.derivative = function(e) {
return [(3 * e * this.a[0] + 2 * this.b[0]) * e + this.c[0], (3 * e * this.a[1] + 2 * this.b[1]) * e + this.c[1]]
}, $e.prototype.tangentAngle = function(e) {
var t = this.derivative(e);
return Math.atan2(t[1], t[0])
}, $e.prototype.normalAngle = function(e) {
var t = this.derivative(e);
return Math.atan2(t[0], t[1])
}, $e.prototype.inflectionPoints = function() {
var e = this.a[1] * this.b[0] - this.a[0] * this.b[1];
if (Ue(e)) return [];
var t = -.5 * (this.a[1] * this.c[0] - this.a[0] * this.c[1]) / e,
n = t * t - 1 / 3 * (this.b[1] * this.c[0] - this.b[0] * this.c[1]) / e;
if (n < 0) return [];
var r = Math.sqrt(n);
return Ue(r) ? r > 0 && r < 1 ? [t] : [] : [t - r, t + r].filter((function(e) {
return e > 0 && e < 1
}))
}, $e.prototype.split = function(e) {
if (e <= 0) return [We(this.points[0]), this];
if (e >= 1) return [this, We(this.points[this.points.length - 1])];
var t = Be(this.points[0], this.points[1], e),
n = Be(this.points[1], this.points[2], e),
r = Be(this.points[2], this.points[3], e),
i = Be(t, n, e),
a = Be(n, r, e),
o = Be(i, a, e);
return [new $e(this.points[0], t, i, o, !0), new $e(o, a, r, this.points[3], !0)]
}, $e.prototype.bounds = function() {
return {
x: qe(this, 0),
y: qe(this, 1)
}
}, $e.prototype.boundingBox = function() {
var e = this.bounds();
return {
left: e.x.min,
right: e.x.max,
top: e.y.min,
bottom: e.y.max,
width: e.x.max - e.x.min,
height: e.y.max - e.y.min,
cx: (e.x.max + e.x.min) / 2,
cy: (e.y.max + e.y.min) / 2
}
}, $e.prototype.intersections = function(e, t, n) {
void 0 === t && (t = 2), void 0 === n && (n = 7);
var r = [];
return function e(t, n, r, i, a, o) {
if (2 * Math.abs(t.cx - n.cx) < t.width + n.width && 2 * Math.abs(t.cy - n.cy) < t.height + n.height) {
if (r >= o || t.width <= i && t.height <= i && n.width <= i && n.height <= i) return void a.push([t.t, n.t]);
var s = Ke(t),
l = Ke(n);
e(s[0], l[0], r + 1, i, a, o), e(s[0], l[1], r + 1, i, a, o), e(s[1], l[0], r + 1, i, a, o), e(s[1], l[1], r + 1, i, a, o)
}
}(He(this, 0, 1), He(e, 0, 1), 0, t, r, n), r
}, $e.shapeSegment = function(e, t) {
var n = (t + 1) % e.length();
return new $e(e.v[t], e.o[t], e.i[n], e.v[n], !0)
}, $e.shapeSegmentInverted = function(e, t) {
var n = (t + 1) % e.length();
return new $e(e.v[n], e.i[n], e.o[t], e.v[t], !0)
}, f([Le], et), et.prototype.initModifierProperties = function(e, t) {
this.getValue = this.processKeys, this.amplitude = ve.getProp(e, t.s, 0, null, this), this.frequency = ve.getProp(e, t.r, 0, null, this), this.pointsType = ve.getProp(e, t.pt, 0, null, this), this._isAnimated = 0 !== this.amplitude.effectsSequence.length || 0 !== this.frequency.effectsSequence.length || 0 !== this.pointsType.effectsSequence.length
}, et.prototype.processPath = function(e, t, n, r) {
var i = e._length,
a = xe.newElement();
if (a.c = e.c, e.c || (i -= 1), 0 === i) return a;
var o = -1,
s = $e.shapeSegment(e, 0);
nt(a, e, 0, t, n, r, o);
for (var l = 0; l < i; l += 1) o = function(e, t, n, r, i, a) {
for (var o = 0; o < r; o += 1) {
var s = (o + 1) / (r + 1),
l = 2 === i ? Math.sqrt(Math.pow(t.points[3][0] - t.points[0][0], 2) + Math.pow(t.points[3][1] - t.points[0][1], 2)) : 0,
c = t.normalAngle(s);
tt(e, t.point(s), c, a, n, l / (2 * (r + 1)), l / (2 * (r + 1))), a = -a
}
return a
}(a, s, t, n, r, -o), s = l !== i - 1 || e.c ? $e.shapeSegment(e, (l + 1) % i) : null, nt(a, e, l + 1, t, n, r, o);
return a
}, et.prototype.processShapes = function(e) {
var t, n, r, i, a, o, s = this.shapes.length,
l = this.amplitude.v,
c = Math.max(0, Math.round(this.frequency.v)),
u = this.pointsType.v;
if (0 !== l)
for (n = 0; n < s; n += 1) {
if (o = (a = this.shapes[n]).localShapeCollection, a.shape._mdf || this._mdf || e)
for (o.releaseShapes(), a.shape._mdf = !0, t = a.shape.paths.shapes, i = a.shape.paths._length, r = 0; r < i; r += 1) o.addShape(this.processPath(t[r], l, c, u));
a.shape.paths = a.localShapeCollection
}
this.dynamicProperties.length || (this._mdf = !1)
}, f([Le], ct), ct.prototype.initModifierProperties = function(e, t) {
this.getValue = this.processKeys, this.amount = ve.getProp(e, t.a, 0, null, this), this.miterLimit = ve.getProp(e, t.ml, 0, null, this), this.lineJoin = t.lj, this._isAnimated = 0 !== this.amount.effectsSequence.length
}, ct.prototype.processPath = function(e, t, n, r) {
var i, a, o, s = xe.newElement();
s.c = e.c;
var l = e.length();
e.c || (l -= 1);
var c = [];
for (i = 0; i < l; i += 1) o = $e.shapeSegment(e, i), c.push(lt(o, t));
if (!e.c)
for (i = l - 1; i >= 0; i -= 1) o = $e.shapeSegmentInverted(e, i), c.push(lt(o, t));
c = function(e) {
for (var t, n = 1; n < e.length; n += 1) t = st(e[n - 1], e[n]), e[n - 1] = t[0], e[n] = t[1];
return e.length > 1 && (t = st(e[e.length - 1], e[0]), e[e.length - 1] = t[0], e[0] = t[1]), e
}(c);
var u = null,
d = null;
for (i = 0; i < c.length; i += 1) {
var p = c[i];
for (d && (u = at(s, d, p[0], n, r)), d = p[p.length - 1], a = 0; a < p.length; a += 1) o = p[a], u && Je(o.points[0], u) ? s.setXYAt(o.points[1][0], o.points[1][1], "o", s.length() - 1) : s.setTripleAt(o.points[0][0], o.points[0][1], o.points[1][0], o.points[1][1], o.points[0][0], o.points[0][1], s.length()), s.setTripleAt(o.points[3][0], o.points[3][1], o.points[3][0], o.points[3][1], o.points[2][0], o.points[2][1], s.length()), u = o.points[3]
}
return c.length && at(s, d, c[0][0], n, r), s
}, ct.prototype.processShapes = function(e) {
var t, n, r, i, a, o, s = this.shapes.length,
l = this.amount.v,
c = this.miterLimit.v,
u = this.lineJoin;
if (0 !== l)
for (n = 0; n < s; n += 1) {
if (o = (a = this.shapes[n]).localShapeCollection, a.shape._mdf || this._mdf || e)
for (o.releaseShapes(), a.shape._mdf = !0, t = a.shape.paths.shapes, i = a.shape.paths._length, r = 0; r < i; r += 1) o.addShape(this.processPath(t[r], l, u, c));
a.shape.paths = a.localShapeCollection
}
this.dynamicProperties.length || (this._mdf = !1)
};
var dt = function() {
var e = {
w: 0,
size: 0,
shapes: [],
data: {
shapes: []
}
},
t = [];
t = t.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);
var n = ["d83cdffb", "d83cdffc", "d83cdffd", "d83cdffe", "d83cdfff"];
function r(e, t) {
var n = h("span");
n.setAttribute("aria-hidden", !0), n.style.fontFamily = t;
var r = h("span");
r.innerText = "giItT1WQy@!-/#", n.style.position = "absolute", n.style.left = "-10000px", n.style.top = "-10000px", n.style.fontSize = "300px", n.style.fontVariant = "normal", n.style.fontStyle = "normal", n.style.fontWeight = "normal", n.style.letterSpacing = "0", n.appendChild(r), document.body.appendChild(n);
var i = r.offsetWidth;
return r.style.fontFamily = function(e) {
var t, n = e.split(","),
r = n.length,
i = [];
for (t = 0; t < r; t += 1) "sans-serif" !== n[t] && "monospace" !== n[t] && i.push(n[t]);
return i.join(",")
}(e) + ", " + t, {
node: r,
w: i,
parent: n
}
}
function i(e, t) {
var n, r = document.body && t ? "svg" : "canvas",
i = ut(e);
if ("svg" === r) {
var a = W("text");
a.style.fontSize = "100px", a.setAttribute("font-family", e.fFamily), a.setAttribute("font-style", i.style), a.setAttribute("font-weight", i.weight), a.textContent = "1", e.fClass ? (a.style.fontFamily = "inherit", a.setAttribute("class", e.fClass)) : a.style.fontFamily = e.fFamily, t.appendChild(a), n = a
} else {
var o = new OffscreenCanvas(500, 500).getContext("2d");
o.font = i.style + " " + i.weight + " 100px " + e.fFamily, n = o
}
return {
measureText: function(e) {
return "svg" === r ? (n.textContent = e, n.getComputedTextLength()) : n.measureText(e).width
}
}
}
function a(e) {
var t = 0,
n = e.charCodeAt(0);
if (n >= 55296 && n <= 56319) {
var r = e.charCodeAt(1);
r >= 56320 && r <= 57343 && (t = 1024 * (n - 55296) + r - 56320 + 65536)
}
return t
}
function o(e) {
var t = a(e);
return t >= 127462 && t <= 127487
}
var s = function() {
this.fonts = [], this.chars = null, this.typekitLoaded = 0, this.isLoaded = !1, this._warned = !1, this.initTime = Date.now(), this.setIsLoadedBinded = this.setIsLoaded.bind(this), this.checkLoadedFontsBinded = this.checkLoadedFonts.bind(this)
};
return s.isModifier = function(e, t) {
var r = e.toString(16) + t.toString(16);
return -1 !== n.indexOf(r)
}, s.isZeroWidthJoiner = function(e) {
return 8205 === e
}, s.isFlagEmoji = function(e) {
return o(e.substr(0, 2)) && o(e.substr(2, 2))
}, s.isRegionalCode = o, s.isCombinedCharacter = function(e) {
return -1 !== t.indexOf(e)
}, s.isRegionalFlag = function(e, t) {
var n = a(e.substr(t, 2));
if (127988 !== n) return !1;
var r = 0;
for (t += 2; r < 5;) {
if ((n = a(e.substr(t, 2))) < 917601 || n > 917626) return !1;
r += 1, t += 2
}
return 917631 === a(e.substr(t, 2))
}, s.isVariationSelector = function(e) {
return 65039 === e
}, s.BLACK_FLAG_CODE_POINT = 127988, s.prototype = {
addChars: function(e) {
if (e) {
this.chars || (this.chars = []);
var t, n, r, i = e.length,
a = this.chars.length;
for (t = 0; t < i; t += 1) {
for (n = 0, r = !1; n < a;) this.chars[n].style === e[t].style && this.chars[n].fFamily === e[t].fFamily && this.chars[n].ch === e[t].ch && (r = !0), n += 1;
r || (this.chars.push(e[t]), a += 1)
}
}
},
addFonts: function(e, t) {
if (e) {
if (this.chars) return this.isLoaded = !0, void(this.fonts = e.list);
if (!document.body) return this.isLoaded = !0, e.list.forEach((function(e) {
e.helper = i(e), e.cache = {}
})), void(this.fonts = e.list);
var n = e.list,
a = n.length,
o = a;
for (s = 0; s < a; s += 1) {
var s, l, c, u = !0;
if (n[s].loaded = !1, n[s].monoCase = r(n[s].fFamily, "monospace"), n[s].sansCase = r(n[s].fFamily, "sans-serif"), n[s].fPath) {
if ("p" === n[s].fOrigin || 3 === n[s].origin) {
if ((l = document.querySelectorAll('style[f-forigin="p"][f-family="' + n[s].fFamily + '"], style[f-origin="3"][f-family="' + n[s].fFamily + '"]')).length > 0 && (u = !1), u) {
var d = h("style");
d.setAttribute("f-forigin", n[s].fOrigin), d.setAttribute("f-origin", n[s].origin), d.setAttribute("f-family", n[s].fFamily), d.type = "text/css", d.innerText = "@font-face {font-family: " + n[s].fFamily + "; font-style: normal; src: url('" + n[s].fPath + "');}", t.appendChild(d)
}
} else if ("g" === n[s].fOrigin || 1 === n[s].origin) {
for (c = 0, l = document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'); c < l.length; c += 1) - 1 !== l[c].href.indexOf(n[s].fPath) && (u = !1);
if (u) {
var p = h("link");
p.setAttribute("f-forigin", n[s].fOrigin), p.setAttribute("f-origin", n[s].origin), p.type = "text/css", p.rel = "stylesheet", p.href = n[s].fPath, document.body.appendChild(p)
}
} else if ("t" === n[s].fOrigin || 2 === n[s].origin) {
for (c = 0, l = document.querySelectorAll('script[f-forigin="t"], script[f-origin="2"]'); c < l.length; c += 1) n[s].fPath === l[c].src && (u = !1);
if (u) {
var f = h("link");
f.setAttribute("f-forigin", n[s].fOrigin), f.setAttribute("f-origin", n[s].origin), f.setAttribute("rel", "stylesheet"), f.setAttribute("href", n[s].fPath), t.appendChild(f)
}
}
} else n[s].loaded = !0, o -= 1;
n[s].helper = i(n[s], t), n[s].cache = {}, this.fonts.push(n[s])
}
0 === o ? this.isLoaded = !0 : setTimeout(this.checkLoadedFonts.bind(this), 100)
} else this.isLoaded = !0
},
getCharData: function(t, n, r) {
for (var i = 0, a = this.chars.length; i < a;) {
if (this.chars[i].ch === t && this.chars[i].style === n && this.chars[i].fFamily === r) return this.chars[i];
i += 1
}
return ("string" == typeof t && 13 !== t.charCodeAt(0) || !t) && console && console.warn && !this._warned && (this._warned = !0, console.warn("Missing character from exported characters list: ", t, n, r)), e
},
getFontByName: function(e) {
for (var t = 0, n = this.fonts.length; t < n;) {
if (this.fonts[t].fName === e) return this.fonts[t];
t += 1
}
return this.fonts[0]
},
measureText: function(e, t, n) {
var r = this.getFontByName(t);
if (!r.cache[e]) {
var i = r.helper;
if (" " === e) {
var a = i.measureText("|" + e + "|"),
o = i.measureText("||");
r.cache[e] = (a - o) / 100
} else r.cache[e] = i.measureText(e) / 100
}
return r.cache[e] * n
},
checkLoadedFonts: function() {
var e, t, n, r = this.fonts.length,
i = r;
for (e = 0; e < r; e += 1) this.fonts[e].loaded ? i -= 1 : "n" === this.fonts[e].fOrigin || 0 === this.fonts[e].origin ? this.fonts[e].loaded = !0 : (t = this.fonts[e].monoCase.node, n = this.fonts[e].monoCase.w, t.offsetWidth !== n ? (i -= 1, this.fonts[e].loaded = !0) : (t = this.fonts[e].sansCase.node, n = this.fonts[e].sansCase.w, t.offsetWidth !== n && (i -= 1, this.fonts[e].loaded = !0)), this.fonts[e].loaded && (this.fonts[e].sansCase.parent.parentNode.removeChild(this.fonts[e].sansCase.parent), this.fonts[e].monoCase.parent.parentNode.removeChild(this.fonts[e].monoCase.parent)));
0 !== i && Date.now() - this.initTime < 5e3 ? setTimeout(this.checkLoadedFontsBinded, 20) : setTimeout(this.setIsLoadedBinded, 10)
},
setIsLoaded: function() {
this.isLoaded = !0
}
}, s
}();
function pt(e) {
this.animationData = e
}
function ht() {}
pt.prototype.getProp = function(e) {
return this.animationData.slots && this.animationData.slots[e.sid] ? Object.assign(e, this.animationData.slots[e.sid].p) : e
}, ht.prototype = {
initRenderable: function() {
this.isInRange = !1, this.hidden = !1, this.isTransparent = !1, this.renderableComponents = []
},
addRenderableComponent: function(e) {
-1 === this.renderableComponents.indexOf(e) && this.renderableComponents.push(e)
},
removeRenderableComponent: function(e) {
-1 !== this.renderableComponents.indexOf(e) && this.renderableComponents.splice(this.renderableComponents.indexOf(e), 1)
},
prepareRenderableFrame: function(e) {
this.checkLayerLimits(e)
},
checkTransparency: function() {
this.finalTransform.mProp.o.v <= 0 ? !this.isTransparent && this.globalData.renderConfig.hideOnTransparent && (this.isTransparent = !0, this.hide()) : this.isTransparent && (this.isTransparent = !1, this.show())
},
checkLayerLimits: function(e) {
this.data.ip - this.data.st <= e && this.data.op - this.data.st > e ? !0 !== this.isInRange && (this.globalData._mdf = !0, this._mdf = !0, this.isInRange = !0, this.show()) : !1 !== this.isInRange && (this.globalData._mdf = !0, this.isInRange = !1, this.hide())
},
renderRenderable: function() {
var e, t = this.renderableComponents.length;
for (e = 0; e < t; e += 1) this.renderableComponents[e].renderFrame(this._isFirstFrame)
},
sourceRectAtTime: function() {
return {
top: 0,
left: 0,
width: 100,
height: 100
}
},
getLayerSize: function() {
return 5 === this.data.ty ? {
w: this.data.textData.width,
h: this.data.textData.height
} : {
w: this.data.width,
h: this.data.height
}
}
};
var ft = (s = {
0: "source-over",
1: "multiply",
2: "screen",
3: "overlay",
4: "darken",
5: "lighten",
6: "color-dodge",
7: "color-burn",
8: "hard-light",
9: "soft-light",
10: "difference",
11: "exclusion",
12: "hue",
13: "saturation",
14: "color",
15: "luminosity"
}, function(e) {
return s[e] || ""
});
function mt(e, t, n) {
this.p = ve.getProp(t, e.v, 0, 0, n)
}
function gt(e, t, n) {
this.p = ve.getProp(t, e.v, 0, 0, n)
}
function vt(e, t, n) {
this.p = ve.getProp(t, e.v, 1, 0, n)
}
function yt(e, t, n) {
this.p = ve.getProp(t, e.v, 1, 0, n)
}
function _t(e, t, n) {
this.p = ve.getProp(t, e.v, 0, 0, n)
}
function bt(e, t, n) {
this.p = ve.getProp(t, e.v, 0, 0, n)
}
function xt(e, t, n) {
this.p = ve.getProp(t, e.v, 0, 0, n)
}
function kt() {
this.p = {}
}
function wt(e, t) {
var n, r, i = e.ef || [];
this.effectElements = [];
var a = i.length;
for (n = 0; n < a; n += 1) r = new St(i[n], t), this.effectElements.push(r)
}
function St(e, t) {
this.init(e, t)
}
function Et() {}
function It() {}
function Ot(e, t, n) {
this.initFrame(), this.initRenderable(), this.assetData = t.getAssetData(e.refId), this.footageData = t.imageLoader.getAsset(this.assetData), this.initBaseData(e, t, n)
}
function Ct(e, t, n) {
this.initFrame(), this.initRenderable(), this.assetData = t.getAssetData(e.refId), this.initBaseData(e, t, n), this._isPlaying = !1, this._canPlay = !1;
var r = this.globalData.getAssetsPath(this.assetData);
this.audio = this.globalData.audioController.createAudio(r), this._currentTime = 0, this.globalData.audioController.addAudio(this), this._volumeMultiplier = 1, this._volume = 1, this._previousVolume = null, this.tm = e.tm ? ve.getProp(this, e.tm, 0, t.frameRate, this) : {
_placeholder: !0
}, this.lv = ve.getProp(this, e.au && e.au.lv ? e.au.lv : {
k: [100]
}, 1, .01, this)
}
function At() {}
f([ye], St), St.prototype.getValue = St.prototype.iterateDynamicProperties, St.prototype.init = function(e, t) {
this.data = e, this.effectElements = [], this.initDynamicPropertyContainer(t);
var n, r, i = this.data.ef.length,
a = this.data.ef;
for (n = 0; n < i; n += 1) {
switch (r = null, a[n].ty) {
case 0:
r = new mt(a[n], t, this);
break;
case 1:
r = new gt(a[n], t, this);
break;
case 2:
r = new vt(a[n], t, this);
break;
case 3:
r = new yt(a[n], t, this);
break;
case 4:
case 7:
r = new xt(a[n], t, this);
break;
case 10:
r = new _t(a[n], t, this);
break;
case 11:
r = new bt(a[n], t, this);
break;
case 5:
r = new wt(a[n], t);
break;
default:
r = new kt(a[n])
}
r && this.effectElements.push(r)
}
}, Et.prototype = {
checkMasks: function() {
if (!this.data.hasMask) return !1;
for (var e = 0, t = this.data.masksProperties.length; e < t;) {
if ("n" !== this.data.masksProperties[e].mode && !1 !== this.data.masksProperties[e].cl) return !0;
e += 1
}
return !1
},
initExpressions: function() {},
setBlendMode: function() {
var e = ft(this.data.bm);
(this.baseElement || this.layerElement).style["mix-blend-mode"] = e
},
initBaseData: function(e, t, n) {
this.globalData = t, this.comp = n, this.data = e, this.layerId = N(), this.data.sr || (this.data.sr = 1), this.effectsManager = new wt(this.data, this, this.dynamicProperties)
},
getType: function() {
return this.type
},
sourceRectAtTime: function() {}
}, It.prototype = {
initFrame: function() {
this._isFirstFrame = !1, this.dynamicProperties = [], this._mdf = !1
},
prepareProperties: function(e, t) {
var n, r = this.dynamicProperties.length;
for (n = 0; n < r; n += 1)(t || this._isParent && "transform" === this.dynamicProperties[n].propType) && (this.dynamicProperties[n].getValue(), this.dynamicProperties[n]._mdf && (this.globalData._mdf = !0, this._mdf = !0))
},
addDynamicProperty: function(e) {
-1 === this.dynamicProperties.indexOf(e) && this.dynamicProperties.push(e)
}
}, Ot.prototype.prepareFrame = function() {}, f([ht, Et, It], Ot), Ot.prototype.getBaseElement = function() {
return null
}, Ot.prototype.renderFrame = function() {}, Ot.prototype.destroy = function() {}, Ot.prototype.initExpressions = function() {}, Ot.prototype.getFootageData = function() {
return this.footageData
}, Ct.prototype.prepareFrame = function(e) {
if (this.prepareRenderableFrame(e, !0), this.prepareProperties(e, !0), this.tm._placeholder) this._currentTime = e / this.data.sr;
else {
var t = this.tm.v;
this._currentTime = t
}
this._volume = this.lv.v[0];
var n = this._volume * this._volumeMultiplier;
this._previousVolume !== n && (this._previousVolume = n, this.audio.volume(n))
}, f([ht, Et, It], Ct), Ct.prototype.renderFrame = function() {
this.isInRange && this._canPlay && (this._isPlaying ? (!this.audio.playing() || Math.abs(this._currentTime / this.globalData.frameRate - this.audio.seek()) > .1) && this.audio.seek(this._currentTime / this.globalData.frameRate) : (this.audio.play(), this.audio.seek(this._currentTime / this.globalData.frameRate), this._isPlaying = !0))
}, Ct.prototype.show = function() {}, Ct.prototype.hide = function() {
this.audio.pause(), this._isPlaying = !1
}, Ct.prototype.pause = function() {
this.audio.pause(), this._isPlaying = !1, this._canPlay = !1
}, Ct.prototype.resume = function() {
this._canPlay = !0
}, Ct.prototype.setRate = function(e) {
this.audio.rate(e)
}, Ct.prototype.volume = function(e) {
this._volumeMultiplier = e, this._previousVolume = e * this._volume, this.audio.volume(this._previousVolume)
}, Ct.prototype.getBaseElement = function() {
return null
}, Ct.prototype.destroy = function() {}, Ct.prototype.sourceRectAtTime = function() {}, Ct.prototype.initExpressions = function() {}, At.prototype.checkLayers = function(e) {
var t, n, r = this.layers.length;
for (this.completeLayers = !0, t = r - 1; t >= 0; t -= 1) !this.elements[t] && (n = this.layers[t]).ip - n.st <= e - this.layers[t].st && n.op - n.st > e - this.layers[t].st && this.buildItem(t), this.completeLayers = !!this.elements[t] && this.completeLayers;
this.checkPendingElements()
}, At.prototype.createItem = function(e) {
switch (e.ty) {
case 2:
return this.createImage(e);
case 0:
return this.createComp(e);
case 1:
return this.createSolid(e);
case 3:
default:
return this.createNull(e);
case 4:
return this.createShape(e);
case 5:
return this.createText(e);
case 6:
return this.createAudio(e);
case 13:
return this.createCamera(e);
case 15:
return this.createFootage(e)
}
}, At.prototype.createCamera = function() {
throw Error("You're using a 3d camera. Try the html renderer.")
}, At.prototype.createAudio = function(e) {
return new Ct(e, this.globalData, this)
}, At.prototype.createFootage = function(e) {
return new Ot(e, this.globalData, this)
}, At.prototype.buildAllItems = function() {
var e, t = this.layers.length;
for (e = 0; e < t; e += 1) this.buildItem(e);
this.checkPendingElements()
}, At.prototype.includeLayers = function(e) {
this.completeLayers = !1;
var t, n, r = e.length,
i = this.layers.length;
for (t = 0; t < r; t += 1)
for (n = 0; n < i;) {
if (this.layers[n].id === e[t].id) {
this.layers[n] = e[t];
break
}
n += 1
}
}, At.prototype.setProjectInterface = function(e) {
this.globalData.projectInterface = e
}, At.prototype.initItems = function() {
this.globalData.progressiveLoad || this.buildAllItems()
}, At.prototype.buildElementParenting = function(e, t, n) {
for (var r = this.elements, i = this.layers, a = 0, o = i.length; a < o;) i[a].ind == t && (r[a] && !0 !== r[a] ? (n.push(r[a]), r[a].setAsParent(), void 0 !== i[a].parent ? this.buildElementParenting(e, i[a].parent, n) : e.setHierarchy(n)) : (this.buildItem(a), this.addPendingElement(e))), a += 1
}, At.prototype.addPendingElement = function(e) {
this.pendingElements.push(e)
}, At.prototype.searchExtraCompositions = function(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1)
if (e[t].xt) {
var r = this.createComp(e[t]);
r.initExpressions(), this.globalData.projectInterface.registerComposition(r)
}
}, At.prototype.getElementById = function(e) {
var t, n = this.elements.length;
for (t = 0; t < n; t += 1)
if (this.elements[t].data.ind === e) return this.elements[t];
return null
}, At.prototype.getElementByPath = function(e) {
var t = e.shift();
if ("number" == typeof t) n = this.elements[t];
else {
var n, r, i = this.elements.length;
for (r = 0; r < i; r += 1)
if (this.elements[r].data.nm === t) {
n = this.elements[r];
break
}
}
return 0 === e.length ? n : n.getElementByPath(e)
}, At.prototype.setupGlobalData = function(e, t) {
this.globalData.fontManager = new dt, this.globalData.slotManager = new pt(e), this.globalData.fontManager.addChars(e.chars), this.globalData.fontManager.addFonts(e.fonts, t), this.globalData.getAssetData = this.animationItem.getAssetData.bind(this.animationItem), this.globalData.getAssetsPath = this.animationItem.getAssetsPath.bind(this.animationItem), this.globalData.imageLoader = this.animationItem.imagePreloader, this.globalData.audioController = this.animationItem.audioController, this.globalData.frameId = 0, this.globalData.frameRate = e.fr, this.globalData.nm = e.nm, this.globalData.compSize = {
w: e.w,
h: e.h
}
};
var Pt = "transformEFfect";
function Tt() {}
function Rt(e, t, n) {
this.data = e, this.element = t, this.globalData = n, this.storedData = [], this.masksProperties = this.data.masksProperties || [], this.maskElement = null;
var r = this.globalData.defs,
i = this.masksProperties ? this.masksProperties.length : 0;
this.viewData = v(i), this.solidPath = "";
var a = this.masksProperties,
o = 0,
s = [],
l = N(),
c = "clipPath",
u = "clip-path";
for (d = 0; d < i; d += 1)
if (("a" !== a[d].mode && "n" !== a[d].mode || a[d].inv || 100 !== a[d].o.k || a[d].o.x) && (c = "mask", u = "mask"), "s" !== a[d].mode && "i" !== a[d].mode || 0 !== o ? g = null : ((g = W("rect")).setAttribute("fill", "#ffffff"), g.setAttribute("width", this.element.comp.data.w || 0), g.setAttribute("height", this.element.comp.data.h || 0), s.push(g)), h = W("path"), "n" === a[d].mode) this.viewData[d] = {
op: ve.getProp(this.element, a[d].o, 0, .01, this.element),
prop: Se.getShapeProp(this.element, a[d], 3),
elem: h,
lastPath: ""
}, r.appendChild(h);
else {
if (o += 1, h.setAttribute("fill", "s" === a[d].mode ? "#000000" : "#ffffff"), h.setAttribute("clip-rule", "nonzero"), 0 !== a[d].x.k ? (c = "mask", u = "mask", b = ve.getProp(this.element, a[d].x, 0, null, this.element), x = N(), (y = W("filter")).setAttribute("id", x), (_ = W("feMorphology")).setAttribute("operator", "erode"), _.setAttribute("in", "SourceGraphic"), _.setAttribute("radius", "0"), y.appendChild(_), r.appendChild(y), h.setAttribute("stroke", "s" === a[d].mode ? "#000000" : "#ffffff")) : (_ = null, b = null), this.storedData[d] = {
elem: h,
x: b,
expan: _,
lastPath: "",
lastOperator: "",
filterId: x,
lastRadius: 0
}, "i" === a[d].mode) {
m = s.length;
var d, h, f, m, g, y, _, b, x, k = W("g");
for (f = 0; f < m; f += 1) k.appendChild(s[f]);
var w = W("mask");
w.setAttribute("mask-type", "alpha"), w.setAttribute("id", l + "_" + o), w.appendChild(h), r.appendChild(w), k.setAttribute("mask", "url(" + p() + "#" + l + "_" + o + ")"), s.length = 0, s.push(k)
} else s.push(h);
a[d].inv && !this.solidPath && (this.solidPath = this.createLayerSolidPath()), this.viewData[d] = {
elem: h,
lastPath: "",
op: ve.getProp(this.element, a[d].o, 0, .01, this.element),
prop: Se.getShapeProp(this.element, a[d], 3),
invRect: g
}, this.viewData[d].prop.k || this.drawPath(a[d], this.viewData[d].prop.v, this.viewData[d])
} for (d = 0, this.maskElement = W(c), i = s.length; d < i; d += 1) this.maskElement.appendChild(s[d]);
o > 0 && (this.maskElement.setAttribute("id", l), this.element.maskedElement.setAttribute(u, "url(" + p() + "#" + l + ")"), r.appendChild(this.maskElement)), this.viewData.length && this.element.addRenderableComponent(this)
}
Tt.prototype = {
initTransform: function() {
var e = new Ee;
this.finalTransform = {
mProp: this.data.ks ? je.getTransformProperty(this, this.data.ks, this) : {
o: 0
},
_matMdf: !1,
_localMatMdf: !1,
_opMdf: !1,
mat: e,
localMat: e,
localOpacity: 1
}, this.data.ao && (this.finalTransform.mProp.autoOriented = !0), this.data.ty
},
renderTransform: function() {
if (this.finalTransform._opMdf = this.finalTransform.mProp.o._mdf || this._isFirstFrame, this.finalTransform._matMdf = this.finalTransform.mProp._mdf || this._isFirstFrame, this.hierarchy) {
var e, t = this.finalTransform.mat,
n = 0,
r = this.hierarchy.length;
if (!this.finalTransform._matMdf)
for (; n < r;) {
if (this.hierarchy[n].finalTransform.mProp._mdf) {
this.finalTransform._matMdf = !0;
break
}
n += 1
}
if (this.finalTransform._matMdf)
for (e = this.finalTransform.mProp.v.props, t.cloneFromProps(e), n = 0; n < r; n += 1) t.multiply(this.hierarchy[n].finalTransform.mProp.v)
}
this.finalTransform._matMdf && (this.finalTransform._localMatMdf = this.finalTransform._matMdf), this.finalTransform._opMdf && (this.finalTransform.localOpacity = this.finalTransform.mProp.o.v)
},
renderLocalTransform: function() {
if (this.localTransforms) {
var e = 0,
t = this.localTransforms.length;
if (this.finalTransform._localMatMdf = this.finalTransform._matMdf, !this.finalTransform._localMatMdf || !this.finalTransform._opMdf)
for (; e < t;) this.localTransforms[e]._mdf && (this.finalTransform._localMatMdf = !0), this.localTransforms[e]._opMdf && !this.finalTransform._opMdf && (this.finalTransform.localOpacity = this.finalTransform.mProp.o.v, this.finalTransform._opMdf = !0), e += 1;
if (this.finalTransform._localMatMdf) {
var n = this.finalTransform.localMat;
for (this.localTransforms[0].matrix.clone(n), e = 1; e < t; e += 1) {
var r = this.localTransforms[e].matrix;
n.multiply(r)
}
n.multiply(this.finalTransform.mat)
}
if (this.finalTransform._opMdf) {
var i = this.finalTransform.localOpacity;
for (e = 0; e < t; e += 1) i *= .01 * this.localTransforms[e].opacity;
this.finalTransform.localOpacity = i
}
}
},
searchEffectTransforms: function() {
if (this.renderableEffectsManager) {
var e = this.renderableEffectsManager.getEffects(Pt);
if (e.length) {
this.localTransforms = [], this.finalTransform.localMat = new Ee;
var t = 0,
n = e.length;
for (t = 0; t < n; t += 1) this.localTransforms.push(e[t])
}
}
},
globalToLocal: function(e) {
var t, n, r = [];
r.push(this.finalTransform);
for (var i = !0, a = this.comp; i;) a.finalTransform ? (a.data.hasMask && r.splice(0, 0, a.finalTransform), a = a.comp) : i = !1;
var o = r.length;
for (t = 0; t < o; t += 1) n = r[t].mat.applyToPointArray(0, 0, 0), e = [e[0] - n[0], e[1] - n[1], 0];
return e
},
mHelper: new Ee
}, Rt.prototype.getMaskProperty = function(e) {
return this.viewData[e].prop
}, Rt.prototype.renderFrame = function(e) {
var t, n = this.element.finalTransform.mat,
r = this.masksProperties.length;
for (t = 0; t < r; t += 1)
if ((this.viewData[t].prop._mdf || e) && this.drawPath(this.masksProperties[t], this.viewData[t].prop.v, this.viewData[t]), (this.viewData[t].op._mdf || e) && this.viewData[t].elem.setAttribute("fill-opacity", this.viewData[t].op.v), "n" !== this.masksProperties[t].mode && (this.viewData[t].invRect && (this.element.finalTransform.mProp._mdf || e) && this.viewData[t].invRect.setAttribute("transform", n.getInverseMatrix().to2dCSS()), this.storedData[t].x && (this.storedData[t].x._mdf || e))) {
var i = this.storedData[t].expan;
this.storedData[t].x.v < 0 ? ("erode" !== this.storedData[t].lastOperator && (this.storedData[t].lastOperator = "erode", this.storedData[t].elem.setAttribute("filter", "url(" + p() + "#" + this.storedData[t].filterId + ")")), i.setAttribute("radius", -this.storedData[t].x.v)) : ("dilate" !== this.storedData[t].lastOperator && (this.storedData[t].lastOperator = "dilate", this.storedData[t].elem.setAttribute("filter", null)), this.storedData[t].elem.setAttribute("stroke-width", 2 * this.storedData[t].x.v))
}
}, Rt.prototype.getMaskelement = function() {
return this.maskElement
}, Rt.prototype.createLayerSolidPath = function() {
return "M0,0 h" + this.globalData.compSize.w + " v" + this.globalData.compSize.h + " h-" + this.globalData.compSize.w + " v-" + this.globalData.compSize.h + " "
}, Rt.prototype.drawPath = function(e, t, n) {
var r, i, a = " M" + t.v[0][0] + "," + t.v[0][1];
for (r = 1, i = t._length; r < i; r += 1) a += " C" + t.o[r - 1][0] + "," + t.o[r - 1][1] + " " + t.i[r][0] + "," + t.i[r][1] + " " + t.v[r][0] + "," + t.v[r][1];
if (t.c && i > 1 && (a += " C" + t.o[r - 1][0] + "," + t.o[r - 1][1] + " " + t.i[0][0] + "," + t.i[0][1] + " " + t.v[0][0] + "," + t.v[0][1]), n.lastPath !== a) {
var o = "";
n.elem && (t.c && (o = e.inv ? this.solidPath + a : a), n.elem.setAttribute("d", o)), n.lastPath = a
}
}, Rt.prototype.destroy = function() {
this.element = null, this.globalData = null, this.maskElement = null, this.data = null, this.masksProperties = null
};
var Dt = ((l = {}).createFilter = function(e, t) {
var n = W("filter");
return n.setAttribute("id", e), !0 !== t && (n.setAttribute("filterUnits", "objectBoundingBox"), n.setAttribute("x", "0%"), n.setAttribute("y", "0%"), n.setAttribute("width", "100%"), n.setAttribute("height", "100%")), n
}, l.createAlphaToLuminanceFilter = function() {
var e = W("feColorMatrix");
return e.setAttribute("type", "matrix"), e.setAttribute("color-interpolation-filters", "sRGB"), e.setAttribute("values", "0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1"), e
}, l),
Lt = (c = {
maskType: !0,
svgLumaHidden: !0,
offscreenCanvas: "undefined" != typeof OffscreenCanvas
}, (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\/\d./i.test(navigator.userAgent)) && (c.maskType = !1), /firefox/i.test(navigator.userAgent) && (c.svgLumaHidden = !1), c),
Nt = {},
Mt = "filter_result_";
function jt(e) {
var t, n, r = "SourceGraphic",
i = e.data.ef ? e.data.ef.length : 0,
a = N(),
o = Dt.createFilter(a, !0),
s = 0;
for (t = 0, this.filters = []; t < i; t += 1) {
n = null;
var l = e.data.ef[t].ty;
Nt[l] && (n = new Nt[l].effect(o, e.effectsManager.effectElements[t], e, Mt + s, r), r = Mt + s, Nt[l].countsAsEffect && (s += 1)), n && this.filters.push(n)
}
s && (e.globalData.defs.appendChild(o), e.layerElement.setAttribute("filter", "url(" + p() + "#" + a + ")")), this.filters.length && e.addRenderableComponent(this)
}
function Ft() {}
function zt() {}
function Vt() {}
function Ut(e, t, n) {
this.assetData = t.getAssetData(e.refId), this.assetData && this.assetData.sid && (this.assetData = t.slotManager.getProp(this.assetData)), this.initElement(e, t, n), this.sourceRect = {
top: 0,
left: 0,
width: this.assetData.w,
height: this.assetData.h
}
}
function Bt(e, t) {
this.elem = e, this.pos = t
}
function Gt() {}
jt.prototype.renderFrame = function(e) {
var t, n = this.filters.length;
for (t = 0; t < n; t += 1) this.filters[t].renderFrame(e)
}, jt.prototype.getEffects = function(e) {
var t, n = this.filters.length,
r = [];
for (t = 0; t < n; t += 1) this.filters[t].type === e && r.push(this.filters[t]);
return r
}, Ft.prototype = {
initRendererElement: function() {
this.layerElement = W("g")
},
createContainerElements: function() {
this.matteElement = W("g"), this.transformedElement = this.layerElement, this.maskedElement = this.layerElement, this._sizeChanged = !1;
var e = null;
if (this.data.td) {
this.matteMasks = {};
var t = W("g");
t.setAttribute("id", this.layerId), t.appendChild(this.layerElement), e = t, this.globalData.defs.appendChild(t)
} else this.data.tt ? (this.matteElement.appendChild(this.layerElement), e = this.matteElement, this.baseElement = this.matteElement) : this.baseElement = this.layerElement;
if (this.data.ln && this.layerElement.setAttribute("id", this.data.ln), this.data.cl && this.layerElement.setAttribute("class", this.data.cl), 0 === this.data.ty && !this.data.hd) {
var n = W("clipPath"),
r = W("path");
r.setAttribute("d", "M0,0 L" + this.data.w + ",0 L" + this.data.w + "," + this.data.h + " L0," + this.data.h + "z");
var i = N();
if (n.setAttribute("id", i), n.appendChild(r), this.globalData.defs.appendChild(n), this.checkMasks()) {
var a = W("g");
a.setAttribute("clip-path", "url(" + p() + "#" + i + ")"), a.appendChild(this.layerElement), this.transformedElement = a, e ? e.appendChild(this.transformedElement) : this.baseElement = this.transformedElement
} else this.layerElement.setAttribute("clip-path", "url(" + p() + "#" + i + ")")
}
0 !== this.data.bm && this.setBlendMode()
},
renderElement: function() {
this.finalTransform._localMatMdf && this.transformedElement.setAttribute("transform", this.finalTransform.localMat.to2dCSS()), this.finalTransform._opMdf && this.transformedElement.setAttribute("opacity", this.finalTransform.localOpacity)
},
destroyBaseElement: function() {
this.layerElement = null, this.matteElement = null, this.maskManager.destroy()
},
getBaseElement: function() {
return this.data.hd ? null : this.baseElement
},
createRenderableComponents: function() {
this.maskManager = new Rt(this.data, this, this.globalData), this.renderableEffectsManager = new jt(this), this.searchEffectTransforms()
},
getMatte: function(e) {
if (this.matteMasks || (this.matteMasks = {}), !this.matteMasks[e]) {
var t, n, r, i, a = this.layerId + "_" + e;
if (1 === e || 3 === e) {
var o = W("mask");
o.setAttribute("id", a), o.setAttribute("mask-type", 3 === e ? "luminance" : "alpha"), (r = W("use")).setAttributeNS("http://www.w3.org/1999/xlink", "href", "#" + this.layerId), o.appendChild(r), this.globalData.defs.appendChild(o), Lt.maskType || 1 !== e || (o.setAttribute("mask-type", "luminance"), t = N(), n = Dt.createFilter(t), this.globalData.defs.appendChild(n), n.appendChild(Dt.createAlphaToLuminanceFilter()), (i = W("g")).appendChild(r), o.appendChild(i), i.setAttribute("filter", "url(" + p() + "#" + t + ")"))
} else if (2 === e) {
var s = W("mask");
s.setAttribute("id", a), s.setAttribute("mask-type", "alpha");
var l = W("g");
s.appendChild(l), t = N(), n = Dt.createFilter(t);
var c = W("feComponentTransfer");
c.setAttribute("in", "SourceGraphic"), n.appendChild(c);
var u = W("feFuncA");
u.setAttribute("type", "table"), u.setAttribute("tableValues", "1.0 0.0"), c.appendChild(u), this.globalData.defs.appendChild(n);
var d = W("rect");
d.setAttribute("width", this.comp.data.w), d.setAttribute("height", this.comp.data.h), d.setAttribute("x", "0"), d.setAttribute("y", "0"), d.setAttribute("fill", "#ffffff"), d.setAttribute("opacity", "0"), l.setAttribute("filter", "url(" + p() + "#" + t + ")"), l.appendChild(d), (r = W("use")).setAttributeNS("http://www.w3.org/1999/xlink", "href", "#" + this.layerId), l.appendChild(r), Lt.maskType || (s.setAttribute("mask-type", "luminance"), n.appendChild(Dt.createAlphaToLuminanceFilter()), i = W("g"), l.appendChild(d), i.appendChild(this.layerElement), l.appendChild(i)), this.globalData.defs.appendChild(s)
}
this.matteMasks[e] = a
}
return this.matteMasks[e]
},
setMatte: function(e) {
this.matteElement && this.matteElement.setAttribute("mask", "url(" + p() + "#" + e + ")")
}
}, zt.prototype = {
initHierarchy: function() {
this.hierarchy = [], this._isParent = !1, this.checkParenting()
},
setHierarchy: function(e) {
this.hierarchy = e
},
setAsParent: function() {
this._isParent = !0
},
checkParenting: function() {
void 0 !== this.data.parent && this.comp.buildElementParenting(this, this.data.parent, [])
}
}, f([ht, function(e) {
function t() {}
return t.prototype = {
initElement: function(e, t, n) {
this.initFrame(), this.initBaseData(e, t, n), this.initTransform(e, t, n), this.initHierarchy(), this.initRenderable(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), this.createContent(), this.hide()
},
hide: function() {
this.hidden || this.isInRange && !this.isTransparent || ((this.baseElement || this.layerElement).style.display = "none", this.hidden = !0)
},
show: function() {
this.isInRange && !this.isTransparent && (this.data.hd || ((this.baseElement || this.layerElement).style.display = "block"), this.hidden = !1, this._isFirstFrame = !0)
},
renderFrame: function() {
this.data.hd || this.hidden || (this.renderTransform(), this.renderRenderable(), this.renderLocalTransform(), this.renderElement(), this.renderInnerContent(), this._isFirstFrame && (this._isFirstFrame = !1))
},
renderInnerContent: function() {},
prepareFrame: function(e) {
this._mdf = !1, this.prepareRenderableFrame(e), this.prepareProperties(e, this.isInRange), this.checkTransparency()
},
destroy: function() {
this.innerElem = null, this.destroyBaseElement()
}
}, t
}()], Vt), f([Et, Tt, Ft, zt, It, Vt], Ut), Ut.prototype.createContent = function() {
var e = this.globalData.getAssetsPath(this.assetData);
this.innerElem = W("image"), this.innerElem.setAttribute("width", this.assetData.w + "px"), this.innerElem.setAttribute("height", this.assetData.h + "px"), this.innerElem.setAttribute("preserveAspectRatio", this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio), this.innerElem.setAttributeNS("http://www.w3.org/1999/xlink", "href", e), this.layerElement.appendChild(this.innerElem)
}, Ut.prototype.sourceRectAtTime = function() {
return this.sourceRect
}, Gt.prototype = {
addShapeToModifiers: function(e) {
var t, n = this.shapeModifiers.length;
for (t = 0; t < n; t += 1) this.shapeModifiers[t].addShape(e)
},
isShapeInAnimatedModifiers: function(e) {
for (var t = this.shapeModifiers.length; 0 < t;)
if (this.shapeModifiers[0].isAnimatedWithShape(e)) return !0;
return !1
},
renderModifiers: function() {
if (this.shapeModifiers.length) {
var e, t = this.shapes.length;
for (e = 0; e < t; e += 1) this.shapes[e].sh.reset();
for (e = (t = this.shapeModifiers.length) - 1; e >= 0 && !this.shapeModifiers[e].processShapes(this._isFirstFrame); e -= 1);
}
},
searchProcessedElement: function(e) {
for (var t = this.processedElements, n = 0, r = t.length; n < r;) {
if (t[n].elem === e) return t[n].pos;
n += 1
}
return 0
},
addProcessedElement: function(e, t) {
for (var n = this.processedElements, r = n.length; r;)
if (n[r -= 1].elem === e) return void(n[r].pos = t);
n.push(new Bt(e, t))
},
prepareFrame: function(e) {
this.prepareRenderableFrame(e), this.prepareProperties(e, this.isInRange)
}
};
var Wt = {
1: "butt",
2: "round",
3: "square"
},
$t = {
1: "miter",
2: "round",
3: "bevel"
};
function qt(e, t, n) {
this.caches = [], this.styles = [], this.transformers = e, this.lStr = "", this.sh = n, this.lvl = t, this._isAnimated = !!n.k;
for (var r = 0, i = e.length; r < i;) {
if (e[r].mProps.dynamicProperties.length) {
this._isAnimated = !0;
break
}
r += 1
}
}
function Ht(e, t) {
this.data = e, this.type = e.ty, this.d = "", this.lvl = t, this._mdf = !1, this.closed = !0 === e.hd, this.pElem = W("path"), this.msElem = null
}
function Kt(e, t, n, r) {
this.elem = e, this.frameId = -1, this.dataProps = v(t.length), this.renderer = n, this.k = !1, this.dashStr = "", this.dashArray = g("float32", t.length ? t.length - 1 : 0), this.dashoffset = g("float32", 1), this.initDynamicPropertyContainer(r);
var i, a, o = t.length || 0;
for (i = 0; i < o; i += 1) a = ve.getProp(e, t[i].v, 0, 0, this), this.k = a.k || this.k, this.dataProps[i] = {
n: t[i].n,
p: a
};
this.k || this.getValue(!0), this._isAnimated = this.k
}
function Yt(e, t, n) {
this.initDynamicPropertyContainer(e), this.getValue = this.iterateDynamicProperties, this.o = ve.getProp(e, t.o, 0, .01, this), this.w = ve.getProp(e, t.w, 0, null, this), this.d = new Kt(e, t.d || {}, "svg", this), this.c = ve.getProp(e, t.c, 1, 255, this), this.style = n, this._isAnimated = !!this._isAnimated
}
function Qt(e, t, n) {
this.initDynamicPropertyContainer(e), this.getValue = this.iterateDynamicProperties, this.o = ve.getProp(e, t.o, 0, .01, this), this.c = ve.getProp(e, t.c, 1, 255, this), this.style = n
}
function Zt(e, t, n) {
this.initDynamicPropertyContainer(e), this.getValue = this.iterateDynamicProperties, this.style = n
}
function Xt(e, t, n) {
this.data = t, this.c = g("uint8c", 4 * t.p);
var r = t.k.k[0].s ? t.k.k[0].s.length - 4 * t.p : t.k.k.length - 4 * t.p;
this.o = g("float32", r), this._cmdf = !1, this._omdf = !1, this._collapsable = this.checkCollapsable(), this._hasOpacity = r, this.initDynamicPropertyContainer(n), this.prop = ve.getProp(e, t.k, 1, null, this), this.k = this.prop.k, this.getValue(!0)
}
function Jt(e, t, n) {
this.initDynamicPropertyContainer(e), this.getValue = this.iterateDynamicProperties, this.initGradientData(e, t, n)
}
function en(e, t, n) {
this.initDynamicPropertyContainer(e), this.getValue = this.iterateDynamicProperties, this.w = ve.getProp(e, t.w, 0, null, this), this.d = new Kt(e, t.d || {}, "svg", this), this.initGradientData(e, t, n), this._isAnimated = !!this._isAnimated
}
function tn() {
this.it = [], this.prevViewData = [], this.gr = W("g")
}
function nn(e, t, n) {
this.transform = {
mProps: e,
op: t,
container: n
}, this.elements = [], this._isAnimated = this.transform.mProps.dynamicProperties.length || this.transform.op.effectsSequence.length
}
qt.prototype.setAsAnimated = function() {
this._isAnimated = !0
}, Ht.prototype.reset = function() {
this.d = "", this._mdf = !1
}, Kt.prototype.getValue = function(e) {
if ((this.elem.globalData.frameId !== this.frameId || e) && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf = this._mdf || e, this._mdf)) {
var t = 0,
n = this.dataProps.length;
for ("svg" === this.renderer && (this.dashStr = ""), t = 0; t < n; t += 1) "o" !== this.dataProps[t].n ? "svg" === this.renderer ? this.dashStr += " " + this.dataProps[t].p.v : this.dashArray[t] = this.dataProps[t].p.v : this.dashoffset[0] = this.dataProps[t].p.v
}
}, f([ye], Kt), f([ye], Yt), f([ye], Qt), f([ye], Zt), Xt.prototype.comparePoints = function(e, t) {
for (var n = 0, r = this.o.length / 2; n < r;) {
if (Math.abs(e[4 * n] - e[4 * t + 2 * n]) > .01) return !1;
n += 1
}
return !0
}, Xt.prototype.checkCollapsable = function() {
if (this.o.length / 2 != this.c.length / 4) return !1;
if (this.data.k.k[0].s)
for (var e = 0, t = this.data.k.k.length; e < t;) {
if (!this.comparePoints(this.data.k.k[e].s, this.data.p)) return !1;
e += 1
} else if (!this.comparePoints(this.data.k.k, this.data.p)) return !1;
return !0
}, Xt.prototype.getValue = function(e) {
if (this.prop.getValue(), this._mdf = !1, this._cmdf = !1, this._omdf = !1, this.prop._mdf || e) {
var t, n, r, i = 4 * this.data.p;
for (t = 0; t < i; t += 1) n = t % 4 == 0 ? 100 : 255, r = Math.round(this.prop.v[t] * n), this.c[t] !== r && (this.c[t] = r, this._cmdf = !e);
if (this.o.length)
for (i = this.prop.v.length, t = 4 * this.data.p; t < i; t += 1) n = t % 2 == 0 ? 100 : 1, r = t % 2 == 0 ? Math.round(100 * this.prop.v[t]) : this.prop.v[t], this.o[t - 4 * this.data.p] !== r && (this.o[t - 4 * this.data.p] = r, this._omdf = !e);
this._mdf = !e
}
}, f([ye], Xt), Jt.prototype.initGradientData = function(e, t, n) {
this.o = ve.getProp(e, t.o, 0, .01, this), this.s = ve.getProp(e, t.s, 1, null, this), this.e = ve.getProp(e, t.e, 1, null, this), this.h = ve.getProp(e, t.h || {
k: 0
}, 0, .01, this), this.a = ve.getProp(e, t.a || {
k: 0
}, 0, O, this), this.g = new Xt(e, t.g, this), this.style = n, this.stops = [], this.setGradientData(n.pElem, t), this.setGradientOpacity(t, n), this._isAnimated = !!this._isAnimated
}, Jt.prototype.setGradientData = function(e, t) {
var n, r, i, a = N(),
o = W(1 === t.t ? "linearGradient" : "radialGradient");
o.setAttribute("id", a), o.setAttribute("spreadMethod", "pad"), o.setAttribute("gradientUnits", "userSpaceOnUse");
var s = [];
for (r = 0, i = 4 * t.g.p; r < i; r += 4) n = W("stop"), o.appendChild(n), s.push(n);
e.setAttribute("gf" === t.ty ? "fill" : "stroke", "url(" + p() + "#" + a + ")"), this.gf = o, this.cst = s
}, Jt.prototype.setGradientOpacity = function(e, t) {
if (this.g._hasOpacity && !this.g._collapsable) {
var n, r, i, a = W("mask"),
o = W("path");
a.appendChild(o);
var s = N(),
l = N();
a.setAttribute("id", l);
var c = W(1 === e.t ? "linearGradient" : "radialGradient");
c.setAttribute("id", s), c.setAttribute("spreadMethod", "pad"), c.setAttribute("gradientUnits", "userSpaceOnUse"), i = e.g.k.k[0].s ? e.g.k.k[0].s.length : e.g.k.k.length;
var u = this.stops;
for (r = 4 * e.g.p; r < i; r += 2)(n = W("stop")).setAttribute("stop-color", "rgb(255,255,255)"), c.appendChild(n), u.push(n);
o.setAttribute("gf" === e.ty ? "fill" : "stroke", "url(" + p() + "#" + s + ")"), "gs" === e.ty && (o.setAttribute("stroke-linecap", Wt[e.lc || 2]), o.setAttribute("stroke-linejoin", $t[e.lj || 2]), 1 === e.lj && o.setAttribute("stroke-miterlimit", e.ml)), this.of = c, this.ms = a, this.ost = u, this.maskId = l, t.msElem = o
}
}, f([ye], Jt), f([Jt, ye], en);
var rn = function(e, t, n, r) {
if (0 === t) return "";
var i, a = e.o,
o = e.i,
s = e.v,
l = " M" + r.applyToPointStringified(s[0][0], s[0][1]);
for (i = 1; i < t; i += 1) l += " C" + r.applyToPointStringified(a[i - 1][0], a[i - 1][1]) + " " + r.applyToPointStringified(o[i][0], o[i][1]) + " " + r.applyToPointStringified(s[i][0], s[i][1]);
return n && t && (l += " C" + r.applyToPointStringified(a[i - 1][0], a[i - 1][1]) + " " + r.applyToPointStringified(o[0][0], o[0][1]) + " " + r.applyToPointStringified(s[0][0], s[0][1]) + "z"), l
},
an = function() {
var e = new Ee,
t = new Ee;
function n(e, t, n) {
(n || t.transform.op._mdf) && t.transform.container.setAttribute("opacity", t.transform.op.v), (n || t.transform.mProps._mdf) && t.transform.container.setAttribute("transform", t.transform.mProps.v.to2dCSS())
}
function r() {}
function i(n, r, i) {
var a, o, s, l, c, u, d, p, h, f, m = r.styles.length,
g = r.lvl;
for (u = 0; u < m; u += 1) {
if (l = r.sh._mdf || i, r.styles[u].lvl < g) {
for (p = t.reset(), h = g - r.styles[u].lvl, f = r.transformers.length - 1; !l && h > 0;) l = r.transformers[f].mProps._mdf || l, h -= 1, f -= 1;
if (l)
for (h = g - r.styles[u].lvl, f = r.transformers.length - 1; h > 0;) p.multiply(r.transformers[f].mProps.v), h -= 1, f -= 1
} else p = e;
if (o = (d = r.sh.paths)._length, l) {
for (a = 0, s = ""; a < o; a += 1)(c = d.shapes[a]) && c._length && (s += rn(c, c._length, c.c, p));
r.caches[u] = s
} else s = r.caches[u];
r.styles[u].d += !0 === n.hd ? "" : s, r.styles[u]._mdf = l || r.styles[u]._mdf
}
}
function a(e, t, n) {
var r = t.style;
(t.c._mdf || n) && r.pElem.setAttribute("fill", "rgb(" + S(t.c.v[0]) + "," + S(t.c.v[1]) + "," + S(t.c.v[2]) + ")"), (t.o._mdf || n) && r.pElem.setAttribute("fill-opacity", t.o.v)
}
function o(e, t, n) {
s(e, t, n), l(e, t, n)
}
function s(e, t, n) {
var r, i, a, o, s, l = t.gf,
c = t.g._hasOpacity,
u = t.s.v,
d = t.e.v;
if (t.o._mdf || n) {
var p = "gf" === e.ty ? "fill-opacity" : "stroke-opacity";
t.style.pElem.setAttribute(p, t.o.v)
}
if (t.s._mdf || n) {
var h = 1 === e.t ? "x1" : "cx",
f = "x1" === h ? "y1" : "cy";
l.setAttribute(h, u[0]), l.setAttribute(f, u[1]), c && !t.g._collapsable && (t.of.setAttribute(h, u[0]), t.of.setAttribute(f, u[1]))
}
if (t.g._cmdf || n) {
r = t.cst;
var m = t.g.c;
for (i = 0, a = r.length; i < a; i += 1)(o = r[i]).setAttribute("offset", m[4 * i] + "%"), o.setAttribute("stop-color", "rgb(" + m[4 * i + 1] + "," + m[4 * i + 2] + "," + m[4 * i + 3] + ")")
}
if (c && (t.g._omdf || n)) {
var g = t.g.o;
for (i = 0, a = (r = t.g._collapsable ? t.cst : t.ost).length; i < a; i += 1) o = r[i], t.g._collapsable || o.setAttribute("offset", g[2 * i] + "%"), o.setAttribute("stop-opacity", g[2 * i + 1])
}
if (1 === e.t)(t.e._mdf || n) && (l.setAttribute("x2", d[0]), l.setAttribute("y2", d[1]), c && !t.g._collapsable && (t.of.setAttribute("x2", d[0]), t.of.setAttribute("y2", d[1])));
else if ((t.s._mdf || t.e._mdf || n) && (s = Math.sqrt(Math.pow(u[0] - d[0], 2) + Math.pow(u[1] - d[1], 2)), l.setAttribute("r", s), c && !t.g._collapsable && t.of.setAttribute("r", s)), t.e._mdf || t.h._mdf || t.a._mdf || n) {
s || (s = Math.sqrt(Math.pow(u[0] - d[0], 2) + Math.pow(u[1] - d[1], 2)));
var v = Math.atan2(d[1] - u[1], d[0] - u[0]),
y = t.h.v;
y >= 1 ? y = .99 : y <= -1 && (y = -.99);
var _ = s * y,
b = Math.cos(v + t.a.v) * _ + u[0],
x = Math.sin(v + t.a.v) * _ + u[1];
l.setAttribute("fx", b), l.setAttribute("fy", x), c && !t.g._collapsable && (t.of.setAttribute("fx", b), t.of.setAttribute("fy", x))
}
}
function l(e, t, n) {
var r = t.style,
i = t.d;
i && (i._mdf || n) && i.dashStr && (r.pElem.setAttribute("stroke-dasharray", i.dashStr), r.pElem.setAttribute("stroke-dashoffset", i.dashoffset[0])), t.c && (t.c._mdf || n) && r.pElem.setAttribute("stroke", "rgb(" + S(t.c.v[0]) + "," + S(t.c.v[1]) + "," + S(t.c.v[2]) + ")"), (t.o._mdf || n) && r.pElem.setAttribute("stroke-opacity", t.o.v), (t.w._mdf || n) && (r.pElem.setAttribute("stroke-width", t.w.v), r.msElem && r.msElem.setAttribute("stroke-width", t.w.v))
}
return {
createRenderFunction: function(e) {
switch (e.ty) {
case "fl":
return a;
case "gf":
return s;
case "gs":
return o;
case "st":
return l;
case "sh":
case "el":
case "rc":
case "sr":
return i;
case "tr":
return n;
case "no":
return r;
default:
return null
}
}
}
}();
function on(e, t, n) {
this.shapes = [], this.shapesData = e.shapes, this.stylesList = [], this.shapeModifiers = [], this.itemsData = [], this.processedElements = [], this.animatedContents = [], this.initElement(e, t, n), this.prevViewData = []
}
function sn(e, t, n, r, i, a) {
this.o = e, this.sw = t, this.sc = n, this.fc = r, this.m = i, this.p = a, this._mdf = {
o: !0,
sw: !!t,
sc: !!n,
fc: !!r,
m: !0,
p: !0
}
}
function ln(e, t) {
this._frameId = -999999, this.pv = "", this.v = "", this.kf = !1, this._isFirstFrame = !0, this._mdf = !1, t.d && t.d.sid && (t.d = e.globalData.slotManager.getProp(t.d)), this.data = t, this.elem = e, this.comp = this.elem.comp, this.keysIndex = 0, this.canResize = !1, this.minimumFontSize = 1, this.effectsSequence = [], this.currentData = {
ascent: 0,
boxWidth: this.defaultBoxWidth,
f: "",
fStyle: "",
fWeight: "",
fc: "",
j: "",
justifyOffset: "",
l: [],
lh: 0,
lineWidths: [],
ls: "",
of: "",
s: "",
sc: "",
sw: 0,
t: 0,
tr: 0,
sz: 0,
ps: null,
fillColorAnim: !1,
strokeColorAnim: !1,
strokeWidthAnim: !1,
yOffset: 0,
finalSize: 0,
finalText: [],
finalLineHeight: 0,
__complete: !1
}, this.copyData(this.currentData, this.data.d.k[0].s), this.searchProperty() || this.completeTextData(this.currentData)
}
f([Et, Tt, Ft, Gt, zt, It, Vt], on), on.prototype.initSecondaryElement = function() {}, on.prototype.identityMatrix = new Ee, on.prototype.buildExpressionInterface = function() {}, on.prototype.createContent = function() {
this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], !0), this.filterUniqueShapes()
}, on.prototype.filterUniqueShapes = function() {
var e, t, n, r, i = this.shapes.length,
a = this.stylesList.length,
o = [],
s = !1;
for (n = 0; n < a; n += 1) {
for (e = 0, r = this.stylesList[n], s = !1, o.length = 0; e < i; e += 1) - 1 !== (t = this.shapes[e]).styles.indexOf(r) && (o.push(t), s = t._isAnimated || s);
o.length > 1 && s && this.setShapesAsAnimated(o)
}
}, on.prototype.setShapesAsAnimated = function(e) {
var t, n = e.length;
for (t = 0; t < n; t += 1) e[t].setAsAnimated()
}, on.prototype.createStyleElement = function(e, t) {
var n, r = new Ht(e, t),
i = r.pElem;
return "st" === e.ty ? n = new Yt(this, e, r) : "fl" === e.ty ? n = new Qt(this, e, r) : "gf" === e.ty || "gs" === e.ty ? (n = new("gf" === e.ty ? Jt : en)(this, e, r), this.globalData.defs.appendChild(n.gf), n.maskId && (this.globalData.defs.appendChild(n.ms), this.globalData.defs.appendChild(n.of), i.setAttribute("mask", "url(" + p() + "#" + n.maskId + ")"))) : "no" === e.ty && (n = new Zt(this, e, r)), ("st" === e.ty || "gs" === e.ty) && (i.setAttribute("stroke-linecap", Wt[e.lc || 2]), i.setAttribute("stroke-linejoin", $t[e.lj || 2]), i.setAttribute("fill-opacity", "0"), 1 === e.lj && i.setAttribute("stroke-miterlimit", e.ml)), 2 === e.r && i.setAttribute("fill-rule", "evenodd"), e.ln && i.setAttribute("id", e.ln), e.cl && i.setAttribute("class", e.cl), e.bm && (i.style["mix-blend-mode"] = ft(e.bm)), this.stylesList.push(r), this.addToAnimatedContents(e, n), n
}, on.prototype.createGroupElement = function(e) {
var t = new tn;
return e.ln && t.gr.setAttribute("id", e.ln), e.cl && t.gr.setAttribute("class", e.cl), e.bm && (t.gr.style["mix-blend-mode"] = ft(e.bm)), t
}, on.prototype.createTransformElement = function(e, t) {
var n = je.getTransformProperty(this, e, this),
r = new nn(n, n.o, t);
return this.addToAnimatedContents(e, r), r
}, on.prototype.createShapeElement = function(e, t, n) {
var r = 4;
"rc" === e.ty ? r = 5 : "el" === e.ty ? r = 6 : "sr" === e.ty && (r = 7);
var i = new qt(t, n, Se.getShapeProp(this, e, r, this));
return this.shapes.push(i), this.addShapeToModifiers(i), this.addToAnimatedContents(e, i), i
}, on.prototype.addToAnimatedContents = function(e, t) {
for (var n = 0, r = this.animatedContents.length; n < r;) {
if (this.animatedContents[n].element === t) return;
n += 1
}
this.animatedContents.push({
fn: an.createRenderFunction(e),
element: t,
data: e
})
}, on.prototype.setElementStyles = function(e) {
var t, n = e.styles,
r = this.stylesList.length;
for (t = 0; t < r; t += 1) this.stylesList[t].closed || n.push(this.stylesList[t])
}, on.prototype.reloadShapes = function() {
this._isFirstFrame = !0;
var e, t = this.itemsData.length;
for (e = 0; e < t; e += 1) this.prevViewData[e] = this.itemsData[e];
for (this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], !0), this.filterUniqueShapes(), t = this.dynamicProperties.length, e = 0; e < t; e += 1) this.dynamicProperties[e].getValue();
this.renderModifiers()
}, on.prototype.searchShapes = function(e, t, n, r, i, a, o) {
var s, l, c, u, d, p, h = [].concat(a),
f = e.length - 1,
m = [],
g = [];
for (s = f; s >= 0; s -= 1) {
if ((p = this.searchProcessedElement(e[s])) ? t[s] = n[p - 1] : e[s]._render = o, "fl" === e[s].ty || "st" === e[s].ty || "gf" === e[s].ty || "gs" === e[s].ty || "no" === e[s].ty) p ? t[s].style.closed = !1 : t[s] = this.createStyleElement(e[s], i), e[s]._render && t[s].style.pElem.parentNode !== r && r.appendChild(t[s].style.pElem), m.push(t[s].style);
else if ("gr" === e[s].ty) {
if (p)
for (l = 0, c = t[s].it.length; l < c; l += 1) t[s].prevViewData[l] = t[s].it[l];
else t[s] = this.createGroupElement(e[s]);
this.searchShapes(e[s].it, t[s].it, t[s].prevViewData, t[s].gr, i + 1, h, o), e[s]._render && t[s].gr.parentNode !== r && r.appendChild(t[s].gr)
} else "tr" === e[s].ty ? (p || (t[s] = this.createTransformElement(e[s], r)), u = t[s].transform, h.push(u)) : "sh" === e[s].ty || "rc" === e[s].ty || "el" === e[s].ty || "sr" === e[s].ty ? (p || (t[s] = this.createShapeElement(e[s], h, i)), this.setElementStyles(t[s])) : "tm" === e[s].ty || "rd" === e[s].ty || "ms" === e[s].ty || "pb" === e[s].ty || "zz" === e[s].ty || "op" === e[s].ty ? (p ? (d = t[s]).closed = !1 : ((d = De.getModifier(e[s].ty)).init(this, e[s]), t[s] = d, this.shapeModifiers.push(d)), g.push(d)) : "rp" === e[s].ty && (p ? (d = t[s]).closed = !0 : (d = De.getModifier(e[s].ty), t[s] = d, d.init(this, e, s, t), this.shapeModifiers.push(d), o = !1), g.push(d));
this.addProcessedElement(e[s], s + 1)
}
for (s = 0, f = m.length; s < f; s += 1) m[s].closed = !0;
for (s = 0, f = g.length; s < f; s += 1) g[s].closed = !0
}, on.prototype.renderInnerContent = function() {
this.renderModifiers();
var e, t = this.stylesList.length;
for (e = 0; e < t; e += 1) this.stylesList[e].reset();
for (this.renderShape(), e = 0; e < t; e += 1)(this.stylesList[e]._mdf || this._isFirstFrame) && (this.stylesList[e].msElem && (this.stylesList[e].msElem.setAttribute("d", this.stylesList[e].d), this.stylesList[e].d = "M0 0" + this.stylesList[e].d), this.stylesList[e].pElem.setAttribute("d", this.stylesList[e].d || "M0 0"))
}, on.prototype.renderShape = function() {
var e, t, n = this.animatedContents.length;
for (e = 0; e < n; e += 1) t = this.animatedContents[e], (this._isFirstFrame || t.element._isAnimated) && !0 !== t.data && t.fn(t.data, t.element, this._isFirstFrame)
}, on.prototype.destroy = function() {
this.destroyBaseElement(), this.shapesData = null, this.itemsData = null
}, sn.prototype.update = function(e, t, n, r, i, a) {
this._mdf.o = !1, this._mdf.sw = !1, this._mdf.sc = !1, this._mdf.fc = !1, this._mdf.m = !1, this._mdf.p = !1;
var o = !1;
return this.o !== e && (this.o = e, this._mdf.o = !0, o = !0), this.sw !== t && (this.sw = t, this._mdf.sw = !0, o = !0), this.sc !== n && (this.sc = n, this._mdf.sc = !0, o = !0), this.fc !== r && (this.fc = r, this._mdf.fc = !0, o = !0), this.m !== i && (this.m = i, this._mdf.m = !0, o = !0), a.length && (this.p[0] !== a[0] || this.p[1] !== a[1] || this.p[4] !== a[4] || this.p[5] !== a[5] || this.p[12] !== a[12] || this.p[13] !== a[13]) && (this.p = a, this._mdf.p = !0, o = !0), o
}, ln.prototype.defaultBoxWidth = [0, 0], ln.prototype.copyData = function(e, t) {
for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e
}, ln.prototype.setCurrentData = function(e) {
e.__complete || this.completeTextData(e), this.currentData = e, this.currentData.boxWidth = this.currentData.boxWidth || this.defaultBoxWidth, this._mdf = !0
}, ln.prototype.searchProperty = function() {
return this.searchKeyframes()
}, ln.prototype.searchKeyframes = function() {
return this.kf = this.data.d.k.length > 1, this.kf && this.addEffect(this.getKeyframeValue.bind(this)), this.kf
}, ln.prototype.addEffect = function(e) {
this.effectsSequence.push(e), this.elem.addDynamicProperty(this)
}, ln.prototype.getValue = function(e) {
if (this.elem.globalData.frameId !== this.frameId && this.effectsSequence.length || e) {
this.currentData.t = this.data.d.k[this.keysIndex].s.t;
var t, n = this.currentData,
r = this.keysIndex;
if (this.lock) return void this.setCurrentData(this.currentData);
this.lock = !0, this._mdf = !1;
var i = this.effectsSequence.length,
a = e || this.data.d.k[this.keysIndex].s;
for (t = 0; t < i; t += 1) a = r !== this.keysIndex ? this.effectsSequence[t](a, a.t) : this.effectsSequence[t](this.currentData, a.t);
n !== a && this.setCurrentData(a), this.v = this.currentData, this.pv = this.v, this.lock = !1, this.frameId = this.elem.globalData.frameId
}
}, ln.prototype.getKeyframeValue = function() {
for (var e = this.data.d.k, t = this.elem.comp.renderedFrame, n = 0, r = e.length; n <= r - 1 && n !== r - 1 && !(e[n + 1].t > t);) n += 1;
return this.keysIndex !== n && (this.keysIndex = n), this.data.d.k[this.keysIndex].s
}, ln.prototype.buildFinalText = function(e) {
for (var t, n, r = [], i = 0, a = e.length, o = !1, s = !1, l = ""; i < a;) o = s, s = !1, t = e.charCodeAt(i), l = e.charAt(i), dt.isCombinedCharacter(t) ? o = !0 : t >= 55296 && t <= 56319 ? dt.isRegionalFlag(e, i) ? l = e.substr(i, 14) : (n = e.charCodeAt(i + 1)) >= 56320 && n <= 57343 && (dt.isModifier(t, n) ? (l = e.substr(i, 2), o = !0) : l = dt.isFlagEmoji(e.substr(i, 4)) ? e.substr(i, 4) : e.substr(i, 2)) : t > 56319 ? (n = e.charCodeAt(i + 1), dt.isVariationSelector(t) && (o = !0)) : dt.isZeroWidthJoiner(t) && (o = !0, s = !0), o ? (r[r.length - 1] += l, o = !1) : r.push(l), i += l.length;
return r
}, ln.prototype.completeTextData = function(e) {
e.__complete = !0;
var t = this.elem.globalData.fontManager,
n = this.data,
r = [],
i = 0,
a = n.m.g,
o = 0,
s = 0,
l = 0,
c = [],
u = 0,
d = 0,
p = t.getFontByName(e.f),
h = 0,
f = ut(p);
e.fWeight = f.weight, e.fStyle = f.style, e.finalSize = e.s, e.finalText = this.buildFinalText(e.t), v = e.finalText.length, e.finalLineHeight = e.lh;
var m = e.tr / 1e3 * e.finalSize;
if (e.sz)
for (var g, v, y, _, b, x, k, w, S, E, I = !0, O = e.sz[0], C = e.sz[1]; I;) {
S = 0, u = 0, v = (E = this.buildFinalText(e.t)).length, m = e.tr / 1e3 * e.finalSize;
var A = -1;
for (g = 0; g < v; g += 1) w = E[g].charCodeAt(0), y = !1, " " === E[g] ? A = g : (13 === w || 3 === w) && (u = 0, y = !0, S += e.finalLineHeight || 1.2 * e.finalSize), t.chars ? (k = t.getCharData(E[g], p.fStyle, p.fFamily), h = y ? 0 : k.w * e.finalSize / 100) : h = t.measureText(E[g], e.f, e.finalSize), u + h > O && " " !== E[g] ? (-1 === A ? v += 1 : g = A, S += e.finalLineHeight || 1.2 * e.finalSize, E.splice(g, A === g ? 1 : 0, "\r"), A = -1, u = 0) : u += h + m;
S += p.ascent * e.finalSize / 100, this.canResize && e.finalSize > this.minimumFontSize && C < S ? (e.finalSize -= 1, e.finalLineHeight = e.finalSize * e.lh / e.s) : (e.finalText = E, v = e.finalText.length, I = !1)
}
u = -m, h = 0;
var P = 0;
for (g = 0; g < v; g += 1)
if (y = !1, 13 === (w = (D = e.finalText[g]).charCodeAt(0)) || 3 === w ? (P = 0, c.push(u), d = u > d ? u : d, u = -2 * m, _ = "", y = !0, l += 1) : _ = D, t.chars ? (k = t.getCharData(D, p.fStyle, t.getFontByName(e.f).fFamily), h = y ? 0 : k.w * e.finalSize / 100) : h = t.measureText(_, e.f, e.finalSize), " " === D ? P += h + m : (u += h + m + P, P = 0), r.push({
l: h,
an: h,
add: o,
n: y,
anIndexes: [],
val: _,
line: l,
animatorJustifyOffset: 0
}), 2 == a) {
if (o += h, "" === _ || " " === _ || g === v - 1) {
for (("" === _ || " " === _) && (o -= h); s <= g;) r[s].an = o, r[s].ind = i, r[s].extra = h, s += 1;
i += 1, o = 0
}
} else if (3 == a) {
if (o += h, "" === _ || g === v - 1) {
for ("" === _ && (o -= h); s <= g;) r[s].an = o, r[s].ind = i, r[s].extra = h, s += 1;
o = 0, i += 1
}
} else r[i].ind = i, r[i].extra = 0, i += 1;
if (e.l = r, d = u > d ? u : d, c.push(u), e.sz) e.boxWidth = e.sz[0], e.justifyOffset = 0;
else switch (e.boxWidth = d, e.j) {
case 1:
e.justifyOffset = -e.boxWidth;
break;
case 2:
e.justifyOffset = -e.boxWidth / 2;
break;
default:
e.justifyOffset = 0
}
e.lineWidths = c;
var T = n.a;
x = T.length;
var R = [];
for (b = 0; b < x; b += 1) {
for ((L = T[b]).a.sc && (e.strokeColorAnim = !0), L.a.sw && (e.strokeWidthAnim = !0), (L.a.fc || L.a.fh || L.a.fs || L.a.fb) && (e.fillColorAnim = !0), j = 0, M = L.s.b, g = 0; g < v; g += 1)(N = r[g]).anIndexes[b] = j, (1 == M && "" !== N.val || 2 == M && "" !== N.val && " " !== N.val || 3 == M && (N.n || " " == N.val || g == v - 1) || 4 == M && (N.n || g == v - 1)) && (1 === L.s.rn && R.push(j), j += 1);
n.a[b].s.totalChars = j;
var D, L, N, M, j, F, z = -1;
if (1 === L.s.rn)
for (g = 0; g < v; g += 1) z != (N = r[g]).anIndexes[b] && (z = N.anIndexes[b], F = R.splice(Math.floor(Math.random() * R.length), 1)[0]), N.anIndexes[b] = F
}
e.yOffset = e.finalLineHeight || 1.2 * e.finalSize, e.ls = e.ls || 0, e.ascent = p.ascent * e.finalSize / 100
}, ln.prototype.updateDocumentData = function(e, t) {
t = void 0 === t ? this.keysIndex : t;
var n = this.copyData({}, this.data.d.k[t].s);
n = this.copyData(n, e), this.data.d.k[t].s = n, this.recalculate(t), this.setCurrentData(n), this.elem.addDynamicProperty(this)
}, ln.prototype.recalculate = function(e) {
var t = this.data.d.k[e].s;
t.__complete = !1, this.keysIndex = 0, this._isFirstFrame = !0, this.getValue(t)
}, ln.prototype.canResizeFont = function(e) {
this.canResize = e, this.recalculate(this.keysIndex), this.elem.addDynamicProperty(this)
}, ln.prototype.setMinimumFontSize = function(e) {
this.minimumFontSize = Math.floor(e) || 1, this.recalculate(this.keysIndex), this.elem.addDynamicProperty(this)
};
var cn = function() {
var e = Math.max,
t = Math.min,
n = Math.floor;
function r(e, t) {
this._currentTextLength = -1, this.k = !1, this.data = t, this.elem = e, this.comp = e.comp, this.finalS = 0, this.finalE = 0, this.initDynamicPropertyContainer(e), this.s = ve.getProp(e, t.s || {
k: 0
}, 0, 0, this), this.e = "e" in t ? ve.getProp(e, t.e, 0, 0, this) : {
v: 100
}, this.o = ve.getProp(e, t.o || {
k: 0
}, 0, 0, this), this.xe = ve.getProp(e, t.xe || {
k: 0
}, 0, 0, this), this.ne = ve.getProp(e, t.ne || {
k: 0
}, 0, 0, this), this.sm = ve.getProp(e, t.sm || {
k: 100
}, 0, 0, this), this.a = ve.getProp(e, t.a, 0, .01, this), this.dynamicProperties.length || this.getValue()
}
return r.prototype = {
getMult: function(r) {
this._currentTextLength !== this.elem.textProperty.currentData.l.length && this.getValue();
var i = 0,
a = 0,
o = 1,
s = 1;
this.ne.v > 0 ? i = this.ne.v / 100 : a = -this.ne.v / 100, this.xe.v > 0 ? o = 1 - this.xe.v / 100 : s = 1 + this.xe.v / 100;
var l = ee.getBezierEasing(i, a, o, s).get,
c = 0,
u = this.finalS,
d = this.finalE,
p = this.data.sh;
if (2 === p) c = l(c = d === u ? r >= d ? 1 : 0 : e(0, t(.5 / (d - u) + (r - u) / (d - u), 1)));
else if (3 === p) c = l(c = d === u ? r >= d ? 0 : 1 : 1 - e(0, t(.5 / (d - u) + (r - u) / (d - u), 1)));
else if (4 === p) d === u ? c = 0 : (c = e(0, t(.5 / (d - u) + (r - u) / (d - u), 1))) < .5 ? c *= 2 : c = 1 - 2 * (c - .5), c = l(c);
else if (5 === p) {
if (d === u) c = 0;
else {
var h = d - u,
f = -h / 2 + (r = t(e(0, r + .5 - u), d - u)),
m = h / 2;
c = Math.sqrt(1 - f * f / (m * m))
}
c = l(c)
} else 6 === p ? c = l(c = d === u ? 0 : (1 + Math.cos(Math.PI + 2 * Math.PI * (r = t(e(0, r + .5 - u), d - u)) / (d - u))) / 2) : (r >= n(u) && (c = e(0, t(r - u < 0 ? t(d, 1) - (u - r) : d - r, 1))), c = l(c));
if (100 !== this.sm.v) {
var g = .01 * this.sm.v;
0 === g && (g = 1e-8);
var v = .5 - .5 * g;
c < v ? c = 0 : (c = (c - v) / g) > 1 && (c = 1)
}
return c * this.a.v
},
getValue: function(e) {
this.iterateDynamicProperties(), this._mdf = e || this._mdf, this._currentTextLength = this.elem.textProperty.currentData.l.length || 0, e && 2 === this.data.r && (this.e.v = this._currentTextLength);
var t = 2 === this.data.r ? 1 : 100 / this.data.totalChars,
n = this.o.v / t,
r = this.s.v / t + n,
i = this.e.v / t + n;
if (r > i) {
var a = r;
r = i, i = a
}
this.finalS = r, this.finalE = i
}
}, f([ye], r), {
getTextSelectorProp: function(e, t, n) {
return new r(e, t)
}
}
}();
function un(e, t, n) {
var r = {
propType: !1
},
i = ve.getProp,
a = t.a;
this.a = {
r: a.r ? i(e, a.r, 0, O, n) : r,
rx: a.rx ? i(e, a.rx, 0, O, n) : r,
ry: a.ry ? i(e, a.ry, 0, O, n) : r,
sk: a.sk ? i(e, a.sk, 0, O, n) : r,
sa: a.sa ? i(e, a.sa, 0, O, n) : r,
s: a.s ? i(e, a.s, 1, .01, n) : r,
a: a.a ? i(e, a.a, 1, 0, n) : r,
o: a.o ? i(e, a.o, 0, .01, n) : r,
p: a.p ? i(e, a.p, 1, 0, n) : r,
sw: a.sw ? i(e, a.sw, 0, 0, n) : r,
sc: a.sc ? i(e, a.sc, 1, 0, n) : r,
fc: a.fc ? i(e, a.fc, 1, 0, n) : r,
fh: a.fh ? i(e, a.fh, 0, 0, n) : r,
fs: a.fs ? i(e, a.fs, 0, .01, n) : r,
fb: a.fb ? i(e, a.fb, 0, .01, n) : r,
t: a.t ? i(e, a.t, 0, 0, n) : r
}, this.s = cn.getTextSelectorProp(e, t.s, n), this.s.t = t.s.t
}
function dn(e, t, n) {
this._isFirstFrame = !0, this._hasMaskedPath = !1, this._frameId = -1, this._textData = e, this._renderType = t, this._elem = n, this._animatorsData = v(this._textData.a.length), this._pathData = {}, this._moreOptions = {
alignment: {}
}, this.renderedLetters = [], this.lettersChangedFlag = !1, this.initDynamicPropertyContainer(n)
}
function pn() {}
dn.prototype.searchProperties = function() {
var e, t, n = this._textData.a.length,
r = ve.getProp;
for (e = 0; e < n; e += 1) t = this._textData.a[e], this._animatorsData[e] = new un(this._elem, t, this);
this._textData.p && "m" in this._textData.p ? (this._pathData = {
a: r(this._elem, this._textData.p.a, 0, 0, this),
f: r(this._elem, this._textData.p.f, 0, 0, this),
l: r(this._elem, this._textData.p.l, 0, 0, this),
r: r(this._elem, this._textData.p.r, 0, 0, this),
p: r(this._elem, this._textData.p.p, 0, 0, this),
m: this._elem.maskManager.getMaskProperty(this._textData.p.m)
}, this._hasMaskedPath = !0) : this._hasMaskedPath = !1, this._moreOptions.alignment = r(this._elem, this._textData.m.a, 1, 0, this)
}, dn.prototype.getMeasures = function(e, t) {
if (this.lettersChangedFlag = t, this._mdf || this._isFirstFrame || t || this._hasMaskedPath && this._pathData.m._mdf) {
this._isFirstFrame = !1;
var n, r, i, a, o, s, l, c, u, d, p, h, f, m, g, v, y, _ = this._moreOptions.alignment.v,
b = this._animatorsData,
x = this._textData,
k = this.mHelper,
w = this._renderType,
S = this.renderedLetters.length,
E = e.l;
if (this._hasMaskedPath) {
if (q = this._pathData.m, !this._pathData.n || this._pathData._mdf) {
var I, O, C, A, P, T, R, D, L, N, M, j, U, B, G, W, $, q, H, K = q.v;
for (this._pathData.r.v && (K = K.reverse()), P = {
tLength: 0,
segments: []
}, A = K._length - 1, W = 0, C = 0; C < A; C += 1) H = ae.buildBezierData(K.v[C], K.v[C + 1], [K.o[C][0] - K.v[C][0], K.o[C][1] - K.v[C][1]], [K.i[C + 1][0] - K.v[C + 1][0], K.i[C + 1][1] - K.v[C + 1][1]]), P.tLength += H.segmentLength, P.segments.push(H), W += H.segmentLength;
C = A, q.v.c && (H = ae.buildBezierData(K.v[C], K.v[0], [K.o[C][0] - K.v[C][0], K.o[C][1] - K.v[C][1]], [K.i[0][0] - K.v[0][0], K.i[0][1] - K.v[0][1]]), P.tLength += H.segmentLength, P.segments.push(H), W += H.segmentLength), this._pathData.pi = P
}
if (P = this._pathData.pi, T = this._pathData.f.v, M = 0, N = 1, D = 0, L = !0, B = P.segments, T < 0 && q.v.c)
for (P.tLength < Math.abs(T) && (T = -Math.abs(T) % P.tLength), N = (U = B[M = B.length - 1].points).length - 1; T < 0;) T += U[N].partialLength, (N -= 1) < 0 && (N = (U = B[M -= 1].points).length - 1);
j = (U = B[M].points)[N - 1], G = (R = U[N]).partialLength
}
A = E.length, I = 0, O = 0;
var Y = 1.2 * e.finalSize * .714,
Q = !0;
i = b.length;
var Z = -1,
X = T,
J = M,
ee = N,
te = -1,
ne = "",
re = this.defaultPropsArray;
if (2 === e.j || 1 === e.j) {
var ie = 0,
oe = 0,
se = 2 === e.j ? -.5 : -1,
le = 0,
ce = !0;
for (C = 0; C < A; C += 1)
if (E[C].n) {
for (ie && (ie += oe); le < C;) E[le].animatorJustifyOffset = ie, le += 1;
ie = 0, ce = !0
} else {
for (r = 0; r < i; r += 1)(n = b[r].a).t.propType && (ce && 2 === e.j && (oe += n.t.v * se), (o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars)).length ? ie += n.t.v * o[0] * se : ie += n.t.v * o * se);
ce = !1
} for (ie && (ie += oe); le < C;) E[le].animatorJustifyOffset = ie, le += 1
}
for (C = 0; C < A; C += 1) {
if (k.reset(), u = 1, E[C].n) I = 0, O += e.yOffset + (Q ? 1 : 0), T = X, Q = !1, this._hasMaskedPath && (N = ee, j = (U = B[M = J].points)[N - 1], G = (R = U[N]).partialLength, D = 0), ne = "", v = "", m = "", y = "", re = this.defaultPropsArray;
else {
if (this._hasMaskedPath) {
if (te !== E[C].line) {
switch (e.j) {
case 1:
T += W - e.lineWidths[E[C].line];
break;
case 2:
T += (W - e.lineWidths[E[C].line]) / 2
}
te = E[C].line
}
Z !== E[C].ind && (E[Z] && (T += E[Z].extra), T += E[C].an / 2, Z = E[C].ind), T += _[0] * E[C].an * .005;
var ue = 0;
for (r = 0; r < i; r += 1)(n = b[r].a).p.propType && ((o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars)).length ? ue += n.p.v[0] * o[0] : ue += n.p.v[0] * o), n.a.propType && ((o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars)).length ? ue += n.a.v[0] * o[0] : ue += n.a.v[0] * o);
for (L = !0, this._pathData.a.v && (T = .5 * E[0].an + (W - this._pathData.f.v - .5 * E[0].an - .5 * E[E.length - 1].an) * Z / (A - 1) + this._pathData.f.v); L;) D + G >= T + ue || !U ? ($ = (T + ue - D) / R.partialLength, l = j.point[0] + (R.point[0] - j.point[0]) * $, c = j.point[1] + (R.point[1] - j.point[1]) * $, k.translate(-_[0] * E[C].an * .005, -_[1] * Y * .01), L = !1) : U && (D += R.partialLength, (N += 1) >= U.length && (N = 0, B[M += 1] ? U = B[M].points : q.v.c ? (N = 0, U = B[M = 0].points) : (D -= R.partialLength, U = null)), U && (j = R, G = (R = U[N]).partialLength));
s = E[C].an / 2 - E[C].add, k.translate(-s, 0, 0)
} else s = E[C].an / 2 - E[C].add, k.translate(-s, 0, 0), k.translate(-_[0] * E[C].an * .005, -_[1] * Y * .01, 0);
for (r = 0; r < i; r += 1)(n = b[r].a).t.propType && (o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars), (0 !== I || 0 !== e.j) && (this._hasMaskedPath ? o.length ? T += n.t.v * o[0] : T += n.t.v * o : o.length ? I += n.t.v * o[0] : I += n.t.v * o));
for (e.strokeWidthAnim && (p = e.sw || 0), e.strokeColorAnim && (d = e.sc ? [e.sc[0], e.sc[1], e.sc[2]] : [0, 0, 0]), e.fillColorAnim && e.fc && (h = [e.fc[0], e.fc[1], e.fc[2]]), r = 0; r < i; r += 1)(n = b[r].a).a.propType && ((o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars)).length ? k.translate(-n.a.v[0] * o[0], -n.a.v[1] * o[1], n.a.v[2] * o[2]) : k.translate(-n.a.v[0] * o, -n.a.v[1] * o, n.a.v[2] * o));
for (r = 0; r < i; r += 1)(n = b[r].a).s.propType && ((o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars)).length ? k.scale(1 + (n.s.v[0] - 1) * o[0], 1 + (n.s.v[1] - 1) * o[1], 1) : k.scale(1 + (n.s.v[0] - 1) * o, 1 + (n.s.v[1] - 1) * o, 1));
for (r = 0; r < i; r += 1) {
if (n = b[r].a, o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars), n.sk.propType && (o.length ? k.skewFromAxis(-n.sk.v * o[0], n.sa.v * o[1]) : k.skewFromAxis(-n.sk.v * o, n.sa.v * o)), n.r.propType && (o.length ? k.rotateZ(-n.r.v * o[2]) : k.rotateZ(-n.r.v * o)), n.ry.propType && (o.length ? k.rotateY(n.ry.v * o[1]) : k.rotateY(n.ry.v * o)), n.rx.propType && (o.length ? k.rotateX(n.rx.v * o[0]) : k.rotateX(n.rx.v * o)), n.o.propType && (o.length ? u += (n.o.v * o[0] - u) * o[0] : u += (n.o.v * o - u) * o), e.strokeWidthAnim && n.sw.propType && (o.length ? p += n.sw.v * o[0] : p += n.sw.v * o), e.strokeColorAnim && n.sc.propType)
for (f = 0; f < 3; f += 1) o.length ? d[f] += (n.sc.v[f] - d[f]) * o[0] : d[f] += (n.sc.v[f] - d[f]) * o;
if (e.fillColorAnim && e.fc) {
if (n.fc.propType)
for (f = 0; f < 3; f += 1) o.length ? h[f] += (n.fc.v[f] - h[f]) * o[0] : h[f] += (n.fc.v[f] - h[f]) * o;
n.fh.propType && (h = o.length ? V(h, n.fh.v * o[0]) : V(h, n.fh.v * o)), n.fs.propType && (h = o.length ? F(h, n.fs.v * o[0]) : F(h, n.fs.v * o)), n.fb.propType && (h = o.length ? z(h, n.fb.v * o[0]) : z(h, n.fb.v * o))
}
}
for (r = 0; r < i; r += 1)(n = b[r].a).p.propType && (o = b[r].s.getMult(E[C].anIndexes[r], x.a[r].s.totalChars), this._hasMaskedPath ? o.length ? k.translate(0, n.p.v[1] * o[0], -n.p.v[2] * o[1]) : k.translate(0, n.p.v[1] * o, -n.p.v[2] * o) : o.length ? k.translate(n.p.v[0] * o[0], n.p.v[1] * o[1], -n.p.v[2] * o[2]) : k.translate(n.p.v[0] * o, n.p.v[1] * o, -n.p.v[2] * o));
if (e.strokeWidthAnim && (m = p < 0 ? 0 : p), e.strokeColorAnim && (g = "rgb(" + Math.round(255 * d[0]) + "," + Math.round(255 * d[1]) + "," + Math.round(255 * d[2]) + ")"), e.fillColorAnim && e.fc && (v = "rgb(" + Math.round(255 * h[0]) + "," + Math.round(255 * h[1]) + "," + Math.round(255 * h[2]) + ")"), this._hasMaskedPath) {
if (k.translate(0, -e.ls), k.translate(0, _[1] * Y * .01 + O, 0), this._pathData.p.v) {
var de = 180 * Math.atan((R.point[1] - j.point[1]) / (R.point[0] - j.point[0])) / Math.PI;
R.point[0] < j.point[0] && (de += 180), k.rotate(-de * Math.PI / 180)
}
k.translate(l, c, 0), T -= _[0] * E[C].an * .005, E[C + 1] && Z !== E[C + 1].ind && (T += E[C].an / 2 + .001 * e.tr * e.finalSize)
} else {
switch (k.translate(I, O, 0), e.ps && k.translate(e.ps[0], e.ps[1] + e.ascent, 0), e.j) {
case 1:
k.translate(E[C].animatorJustifyOffset + e.justifyOffset + (e.boxWidth - e.lineWidths[E[C].line]), 0, 0);
break;
case 2:
k.translate(E[C].animatorJustifyOffset + e.justifyOffset + (e.boxWidth - e.lineWidths[E[C].line]) / 2, 0, 0)
}
k.translate(0, -e.ls), k.translate(s, 0, 0), k.translate(_[0] * E[C].an * .005, _[1] * Y * .01, 0), I += E[C].l + .001 * e.tr * e.finalSize
}
"html" === w ? ne = k.toCSS() : "svg" === w ? ne = k.to2dCSS() : re = [k.props[0], k.props[1], k.props[2], k.props[3], k.props[4], k.props[5], k.props[6], k.props[7], k.props[8], k.props[9], k.props[10], k.props[11], k.props[12], k.props[13], k.props[14], k.props[15]], y = u
}
S <= C ? (a = new sn(y, m, g, v, ne, re), this.renderedLetters.push(a), S += 1, this.lettersChangedFlag = !0) : (a = this.renderedLetters[C], this.lettersChangedFlag = a.update(y, m, g, v, ne, re) || this.lettersChangedFlag)
}
}
}, dn.prototype.getValue = function() {
this._elem.globalData.frameId !== this._frameId && (this._frameId = this._elem.globalData.frameId, this.iterateDynamicProperties())
}, dn.prototype.mHelper = new Ee, dn.prototype.defaultPropsArray = [], f([ye], dn), pn.prototype.initElement = function(e, t, n) {
this.lettersChangedFlag = !0, this.initFrame(), this.initBaseData(e, t, n), this.textProperty = new ln(this, e.t, this.dynamicProperties), this.textAnimator = new dn(e.t, this.renderType, this), this.initTransform(e, t, n), this.initHierarchy(), this.initRenderable(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), this.createContent(), this.hide(), this.textAnimator.searchProperties(this.dynamicProperties)
}, pn.prototype.prepareFrame = function(e) {
this._mdf = !1, this.prepareRenderableFrame(e), this.prepareProperties(e, this.isInRange)
}, pn.prototype.createPathShape = function(e, t) {
var n, r, i = t.length,
a = "";
for (n = 0; n < i; n += 1) "sh" === t[n].ty && (a += rn(r = t[n].ks.k, r.i.length, !0, e));
return a
}, pn.prototype.updateDocumentData = function(e, t) {
this.textProperty.updateDocumentData(e, t)
}, pn.prototype.canResizeFont = function(e) {
this.textProperty.canResizeFont(e)
}, pn.prototype.setMinimumFontSize = function(e) {
this.textProperty.setMinimumFontSize(e)
}, pn.prototype.applyTextPropertiesToMatrix = function(e, t, n, r, i) {
switch (e.ps && t.translate(e.ps[0], e.ps[1] + e.ascent, 0), t.translate(0, -e.ls, 0), e.j) {
case 1:
t.translate(e.justifyOffset + (e.boxWidth - e.lineWidths[n]), 0, 0);
break;
case 2:
t.translate(e.justifyOffset + (e.boxWidth - e.lineWidths[n]) / 2, 0, 0)
}
t.translate(r, i, 0)
}, pn.prototype.buildColor = function(e) {
return "rgb(" + Math.round(255 * e[0]) + "," + Math.round(255 * e[1]) + "," + Math.round(255 * e[2]) + ")"
}, pn.prototype.emptyProp = new sn, pn.prototype.destroy = function() {}, pn.prototype.validateText = function() {
(this.textProperty._mdf || this.textProperty._isFirstFrame) && (this.buildNewText(), this.textProperty._isFirstFrame = !1, this.textProperty._mdf = !1)
};
var hn = {
shapes: []
};
function fn(e, t, n) {
this.textSpans = [], this.renderType = "svg", this.initElement(e, t, n)
}
function mn(e, t, n) {
this.initElement(e, t, n)
}
function gn(e, t, n) {
this.initFrame(), this.initBaseData(e, t, n), this.initFrame(), this.initTransform(e, t, n), this.initHierarchy()
}
function vn() {}
function yn() {}
function _n(e, t, n) {
this.layers = e.layers, this.supports3d = !0, this.completeLayers = !1, this.pendingElements = [], this.elements = this.layers ? v(this.layers.length) : [], this.initElement(e, t, n), this.tm = e.tm ? ve.getProp(this, e.tm, 0, t.frameRate, this) : {
_placeholder: !0
}
}
function bn(e, t) {
this.animationItem = e, this.layers = null, this.renderedFrame = -1, this.svgElement = W("svg");
var n = "";
if (t && t.title) {
var r = W("title"),
i = N();
r.setAttribute("id", i), r.textContent = t.title, this.svgElement.appendChild(r), n += i
}
if (t && t.description) {
var a = W("desc"),
o = N();
a.setAttribute("id", o), a.textContent = t.description, this.svgElement.appendChild(a), n += " " + o
}
n && this.svgElement.setAttribute("aria-labelledby", n);
var s = W("defs");
this.svgElement.appendChild(s);
var l = W("g");
this.svgElement.appendChild(l), this.layerElement = l, this.renderConfig = {
preserveAspectRatio: t && t.preserveAspectRatio || "xMidYMid meet",
imagePreserveAspectRatio: t && t.imagePreserveAspectRatio || "xMidYMid slice",
contentVisibility: t && t.contentVisibility || "visible",
progressiveLoad: t && t.progressiveLoad || !1,
hideOnTransparent: !(t && !1 === t.hideOnTransparent),
viewBoxOnly: t && t.viewBoxOnly || !1,
viewBoxSize: t && t.viewBoxSize || !1,
className: t && t.className || "",
id: t && t.id || "",
focusable: t && t.focusable,
filterSize: {
width: t && t.filterSize && t.filterSize.width || "100%",
height: t && t.filterSize && t.filterSize.height || "100%",
x: t && t.filterSize && t.filterSize.x || "0%",
y: t && t.filterSize && t.filterSize.y || "0%"
},
width: t && t.width,
height: t && t.height,
runExpressions: !t || void 0 === t.runExpressions || t.runExpressions
}, this.globalData = {
_mdf: !1,
frameNum: -1,
defs: s,
renderConfig: this.renderConfig
}, this.elements = [], this.pendingElements = [], this.destroyed = !1, this.rendererType = "svg"
}
return f([Et, Tt, Ft, zt, It, Vt, pn], fn), fn.prototype.createContent = function() {
this.data.singleShape && !this.globalData.fontManager.chars && (this.textContainer = W("text"))
}, fn.prototype.buildTextContents = function(e) {
for (var t = 0, n = e.length, r = [], i = ""; t < n;) "\r" === e[t] || "\x03" === e[t] ? (r.push(i), i = "") : i += e[t], t += 1;
return r.push(i), r
}, fn.prototype.buildShapeData = function(e, t) {
if (e.shapes && e.shapes.length) {
var n = e.shapes[0];
if (n.it) {
var r = n.it[n.it.length - 1];
r.s && (r.s.k[0] = t, r.s.k[1] = t)
}
}
return e
}, fn.prototype.buildNewText = function() {
this.addDynamicProperty(this);
var e = this.textProperty.currentData;
this.renderedLetters = v(e ? e.l.length : 0), e.fc ? this.layerElement.setAttribute("fill", this.buildColor(e.fc)) : this.layerElement.setAttribute("fill", "rgba(0,0,0,0)"), e.sc && (this.layerElement.setAttribute("stroke", this.buildColor(e.sc)), this.layerElement.setAttribute("stroke-width", e.sw)), this.layerElement.setAttribute("font-size", e.finalSize);
var t = this.globalData.fontManager.getFontByName(e.f);
if (t.fClass) this.layerElement.setAttribute("class", t.fClass);
else {
this.layerElement.setAttribute("font-family", t.fFamily);
var n = e.fWeight,
r = e.fStyle;
this.layerElement.setAttribute("font-style", r), this.layerElement.setAttribute("font-weight", n)
}
this.layerElement.setAttribute("aria-label", e.t);
var i = e.l || [],
a = !!this.globalData.fontManager.chars;
m = i.length;
var o = this.mHelper,
s = this.data.singleShape,
l = 0,
c = 0,
u = !0,
d = .001 * e.tr * e.finalSize;
if (!s || a || e.sz) {
var p = this.textSpans.length;
for (f = 0; f < m; f += 1) {
if (this.textSpans[f] || (this.textSpans[f] = {
span: null,
childSpan: null,
glyph: null
}), !a || !s || 0 === f) {
if (g = p > f ? this.textSpans[f].span : W(a ? "g" : "text"), p <= f) {
if (g.setAttribute("stroke-linecap", "butt"), g.setAttribute("stroke-linejoin", "round"), g.setAttribute("stroke-miterlimit", "4"), this.textSpans[f].span = g, a) {
var h = W("g");
g.appendChild(h), this.textSpans[f].childSpan = h
}
this.textSpans[f].span = g, this.layerElement.appendChild(g)
}
g.style.display = "inherit"
}
if (o.reset(), s && (i[f].n && (l = -d, c += e.yOffset + (u ? 1 : 0), u = !1), this.applyTextPropertiesToMatrix(e, o, i[f].line, l, c), l += (i[f].l || 0) + d), a) {
if (1 === (y = this.globalData.fontManager.getCharData(e.finalText[f], t.fStyle, this.globalData.fontManager.getFontByName(e.f).fFamily)).t) _ = new _n(y.data, this.globalData, this);
else {
var f, m, g, y, _, b = hn;
y.data && y.data.shapes && (b = this.buildShapeData(y.data, e.finalSize)), _ = new on(b, this.globalData, this)
}
if (this.textSpans[f].glyph) {
var x = this.textSpans[f].glyph;
this.textSpans[f].childSpan.removeChild(x.layerElement), x.destroy()
}
this.textSpans[f].glyph = _, _._debug = !0, _.prepareFrame(0), _.renderFrame(), this.textSpans[f].childSpan.appendChild(_.layerElement), 1 === y.t && this.textSpans[f].childSpan.setAttribute("transform", "scale(" + e.finalSize / 100 + "," + e.finalSize / 100 + ")")
} else s && g.setAttribute("transform", "translate(" + o.props[12] + "," + o.props[13] + ")"), g.textContent = i[f].val, g.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve")
}
s && g && g.setAttribute("d", "")
} else {
var k = this.textContainer,
w = "start";
switch (e.j) {
case 1:
w = "end";
break;
case 2:
w = "middle";
break;
default:
w = "start"
}
k.setAttribute("text-anchor", w), k.setAttribute("letter-spacing", d);
var S = this.buildTextContents(e.finalText);
for (f = 0, m = S.length, c = e.ps ? e.ps[1] + e.ascent : 0; f < m; f += 1)(g = this.textSpans[f].span || W("tspan")).textContent = S[f], g.setAttribute("x", 0), g.setAttribute("y", c), g.style.display = "inherit", k.appendChild(g), this.textSpans[f] || (this.textSpans[f] = {
span: null,
glyph: null
}), this.textSpans[f].span = g, c += e.finalLineHeight;
this.layerElement.appendChild(k)
}
for (; f < this.textSpans.length;) this.textSpans[f].span.style.display = "none", f += 1;
this._sizeChanged = !0
}, fn.prototype.sourceRectAtTime = function() {
if (this.prepareFrame(this.comp.renderedFrame - this.data.st), this.renderInnerContent(), this._sizeChanged) {
this._sizeChanged = !1;
var e = this.layerElement.getBBox();
this.bbox = {
top: e.y,
left: e.x,
width: e.width,
height: e.height
}
}
return this.bbox
}, fn.prototype.getValue = function() {
var e, t, n = this.textSpans.length;
for (e = 0, this.renderedFrame = this.comp.renderedFrame; e < n; e += 1)(t = this.textSpans[e].glyph) && (t.prepareFrame(this.comp.renderedFrame - this.data.st), t._mdf && (this._mdf = !0))
}, fn.prototype.renderInnerContent = function() {
if (this.validateText(), (!this.data.singleShape || this._mdf) && (this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag), this.lettersChangedFlag || this.textAnimator.lettersChangedFlag)) {
this._sizeChanged = !0;
var e, t, n, r, i, a = this.textAnimator.renderedLetters,
o = this.textProperty.currentData.l;
for (e = 0, t = o.length; e < t; e += 1) !o[e].n && (n = a[e], r = this.textSpans[e].span, (i = this.textSpans[e].glyph) && i.renderFrame(), n._mdf.m && r.setAttribute("transform", n.m), n._mdf.o && r.setAttribute("opacity", n.o), n._mdf.sw && r.setAttribute("stroke-width", n.sw), n._mdf.sc && r.setAttribute("stroke", n.sc), n._mdf.fc && r.setAttribute("fill", n.fc))
}
}, f([Ut], mn), mn.prototype.createContent = function() {
var e = W("rect");
e.setAttribute("width", this.data.sw), e.setAttribute("height", this.data.sh), e.setAttribute("fill", this.data.sc), this.layerElement.appendChild(e)
}, gn.prototype.prepareFrame = function(e) {
this.prepareProperties(e, !0)
}, gn.prototype.renderFrame = function() {}, gn.prototype.getBaseElement = function() {
return null
}, gn.prototype.destroy = function() {}, gn.prototype.sourceRectAtTime = function() {}, gn.prototype.hide = function() {}, f([Et, Tt, zt, It], gn), f([At], vn), vn.prototype.createNull = function(e) {
return new gn(e, this.globalData, this)
}, vn.prototype.createShape = function(e) {
return new on(e, this.globalData, this)
}, vn.prototype.createText = function(e) {
return new fn(e, this.globalData, this)
}, vn.prototype.createImage = function(e) {
return new Ut(e, this.globalData, this)
}, vn.prototype.createSolid = function(e) {
return new mn(e, this.globalData, this)
}, vn.prototype.configAnimation = function(e) {
this.svgElement.setAttribute("xmlns", "http://www.w3.org/2000/svg"), this.svgElement.setAttribute("xmlns:xlink", "http://www.w3.org/1999/xlink"), this.renderConfig.viewBoxSize ? this.svgElement.setAttribute("viewBox", this.renderConfig.viewBoxSize) : this.svgElement.setAttribute("viewBox", "0 0 " + e.w + " " + e.h), this.renderConfig.viewBoxOnly || (this.svgElement.setAttribute("width", e.w), this.svgElement.setAttribute("height", e.h), this.svgElement.style.width = "100%", this.svgElement.style.height = "100%", this.svgElement.style.transform = "translate3d(0,0,0)", this.svgElement.style.contentVisibility = this.renderConfig.contentVisibility), this.renderConfig.width && this.svgElement.setAttribute("width", this.renderConfig.width), this.renderConfig.height && this.svgElement.setAttribute("height", this.renderConfig.height), this.renderConfig.className && this.svgElement.setAttribute("class", this.renderConfig.className), this.renderConfig.id && this.svgElement.setAttribute("id", this.renderConfig.id), void 0 !== this.renderConfig.focusable && this.svgElement.setAttribute("focusable", this.renderConfig.focusable), this.svgElement.setAttribute("preserveAspectRatio", this.renderConfig.preserveAspectRatio), this.animationItem.wrapper.appendChild(this.svgElement);
var t = this.globalData.defs;
this.setupGlobalData(e, t), this.globalData.progressiveLoad = this.renderConfig.progressiveLoad, this.data = e;
var n = W("clipPath"),
r = W("rect");
r.setAttribute("width", e.w), r.setAttribute("height", e.h), r.setAttribute("x", 0), r.setAttribute("y", 0);
var i = N();
n.setAttribute("id", i), n.appendChild(r), this.layerElement.setAttribute("clip-path", "url(" + p() + "#" + i + ")"), t.appendChild(n), this.layers = e.layers, this.elements = v(e.layers.length)
}, vn.prototype.destroy = function() {
this.animationItem.wrapper && (this.animationItem.wrapper.innerText = ""), this.layerElement = null, this.globalData.defs = null;
var e, t = this.layers ? this.layers.length : 0;
for (e = 0; e < t; e += 1) this.elements[e] && this.elements[e].destroy && this.elements[e].destroy();
this.elements.length = 0, this.destroyed = !0, this.animationItem = null
}, vn.prototype.updateContainerSize = function() {}, vn.prototype.findIndexByInd = function(e) {
var t = 0,
n = this.layers.length;
for (t = 0; t < n; t += 1)
if (this.layers[t].ind === e) return t;
return -1
}, vn.prototype.buildItem = function(e) {
var t = this.elements;
if (!t[e] && 99 !== this.layers[e].ty) {
t[e] = !0;
var n = this.createItem(this.layers[e]);
if (t[e] = n, U() && (0 === this.layers[e].ty && this.globalData.projectInterface.registerComposition(n), n.initExpressions()), this.appendElementInPos(n, e), this.layers[e].tt) {
var r = "tp" in this.layers[e] ? this.findIndexByInd(this.layers[e].tp) : e - 1;
if (-1 === r) return;
if (this.elements[r] && !0 !== this.elements[r]) {
var i = t[r].getMatte(this.layers[e].tt);
n.setMatte(i)
} else this.buildItem(r), this.addPendingElement(n)
}
}
}, vn.prototype.checkPendingElements = function() {
for (; this.pendingElements.length;) {
var e = this.pendingElements.pop();
if (e.checkParenting(), e.data.tt)
for (var t = 0, n = this.elements.length; t < n;) {
if (this.elements[t] === e) {
var r = "tp" in e.data ? this.findIndexByInd(e.data.tp) : t - 1,
i = this.elements[r].getMatte(this.layers[t].tt);
e.setMatte(i);
break
}
t += 1
}
}
}, vn.prototype.renderFrame = function(e) {
if (this.renderedFrame !== e && !this.destroyed) {
null === e ? e = this.renderedFrame : this.renderedFrame = e, this.globalData.frameNum = e, this.globalData.frameId += 1, this.globalData.projectInterface.currentFrame = e, this.globalData._mdf = !1;
var t, n = this.layers.length;
for (this.completeLayers || this.checkLayers(e), t = n - 1; t >= 0; t -= 1)(this.completeLayers || this.elements[t]) && this.elements[t].prepareFrame(e - this.layers[t].st);
if (this.globalData._mdf)
for (t = 0; t < n; t += 1)(this.completeLayers || this.elements[t]) && this.elements[t].renderFrame()
}
}, vn.prototype.appendElementInPos = function(e, t) {
var n, r = e.getBaseElement();
if (r) {
for (var i = 0; i < t;) this.elements[i] && !0 !== this.elements[i] && this.elements[i].getBaseElement() && (n = this.elements[i].getBaseElement()), i += 1;
n ? this.layerElement.insertBefore(r, n) : this.layerElement.appendChild(r)
}
}, vn.prototype.hide = function() {
this.layerElement.style.display = "none"
}, vn.prototype.show = function() {
this.layerElement.style.display = "block"
}, f([Et, Tt, zt, It, Vt], yn), yn.prototype.initElement = function(e, t, n) {
this.initFrame(), this.initBaseData(e, t, n), this.initTransform(e, t, n), this.initRenderable(), this.initHierarchy(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), (this.data.xt || !t.progressiveLoad) && this.buildAllItems(), this.hide()
}, yn.prototype.prepareFrame = function(e) {
if (this._mdf = !1, this.prepareRenderableFrame(e), this.prepareProperties(e, this.isInRange), this.isInRange || this.data.xt) {
if (this.tm._placeholder) this.renderedFrame = e / this.data.sr;
else {
var t, n = this.tm.v;
n === this.data.op && (n = this.data.op - 1), this.renderedFrame = n
}
var r = this.elements.length;
for (this.completeLayers || this.checkLayers(this.renderedFrame), t = r - 1; t >= 0; t -= 1)(this.completeLayers || this.elements[t]) && (this.elements[t].prepareFrame(this.renderedFrame - this.layers[t].st), this.elements[t]._mdf && (this._mdf = !0))
}
}, yn.prototype.renderInnerContent = function() {
var e, t = this.layers.length;
for (e = 0; e < t; e += 1)(this.completeLayers || this.elements[e]) && this.elements[e].renderFrame()
}, yn.prototype.setElements = function(e) {
this.elements = e
}, yn.prototype.getElements = function() {
return this.elements
}, yn.prototype.destroyElements = function() {
var e, t = this.layers.length;
for (e = 0; e < t; e += 1) this.elements[e] && this.elements[e].destroy()
}, yn.prototype.destroy = function() {
this.destroyElements(), this.destroyBaseElement()
}, f([vn, yn, Ft], _n), _n.prototype.createComp = function(e) {
return new _n(e, this.globalData, this)
}, f([vn], bn), bn.prototype.createComp = function(e) {
return new _n(e, this.globalData, this)
}, Q.svg = bn, De.registerModifier("tm", Ne), De.registerModifier("pb", Me), De.registerModifier("rp", Fe), De.registerModifier("rd", ze), De.registerModifier("zz", et), De.registerModifier("op", ct), Oe
}());
var Rs = (Bo = Ts.exports) && Bo.__esModule && Object.prototype.hasOwnProperty.call(Bo, "default") ? Bo.default : Bo;
let Ds = (0, Ee.createContext)(null),
Ls = ({
children: e,
...t
}) => {
let n = (({
direction: e,
reduceMotion: t
}) => ((0, Ee.useEffect)((() => {
e ? document.documentElement.setAttribute("dir", e) : document.documentElement.removeAttribute("dir"), t ? (document.documentElement.style.setProperty("--sol-prefers-reduced-motion", t.unessentialAnimationsDisabled ? "reduce" : "no-preference"), document.documentElement.style.setProperty("--sol-motion-transition-effects", t.wipeAnimationsDisabled ? "disabled" : "enabled"), document.documentElement.style.setProperty("--sol-motion-anim-wipe-duration", t.wipeAnimationsDisabled ? "0" : "var(--sol-motion-1500)")) : document.documentElement.style.removeProperty("--sol-prefers-reduced-motion")
}), [e, t]), (0, Ee.useMemo)((() => ({
direction: e,
reduceMotion: t
})), [e, t])))(t);
return (0, Ee.createElement)(Ds.Provider, {
value: n
}, e)
},
Ns = () => (0, Ee.useContext)(Ds) ?? {},
Ms = "loading",
js = "loaded",
Fs = "error",
zs = (e, {
bounce: t,
loop: n = !0,
isPlaying: r = !0,
waitForCompletion: i = !0,
forcePlay: a = !1,
onError: o,
onLoad: s,
onLoop: l,
onStart: c,
onPause: u,
onStop: d
} = {}, p) => {
let h = (0, Ee.useRef)(),
f = (0, Ee.useRef)(null),
m = (0, Ee.useRef)(!1),
g = Ns().reduceMotion?.unessentialAnimationsDisabled,
[v, y] = (0, Ee.useState)(Ms),
_ = !e || g && !a || v === Fs;
(0, Ee.useEffect)((() => {
if (!f.current || !e || _) return;
h.current = Rs.loadAnimation({
..."string" == typeof e ? {
path: e
} : {
animationData: e
},
container: f.current,
autoplay: !1,
loop: !1,
rendererSettings: {
focusable: !1,
viewBoxOnly: !0
}
});
let r = () => {
y(Fs), o && o()
},
i = () => {
y(js), s && s()
},
a = () => {
if (m.current) return h.current?.stop(), m.current = !1, void(d && d());
t && (1 === h.current?.playDirection ? (h.current?.setDirection(-1), h.current?.play()) : h.current?.setDirection(1)), n && 1 === h.current?.playDirection && (h.current?.stop(), h.current?.play(), l && l())
};
return h.current?.addEventListener("DOMLoaded", i), h.current?.addEventListener("data_failed", r), h.current?.addEventListener("complete", a), () => {
h.current?.removeEventListener("DOMLoaded", i), h.current?.removeEventListener("data_failed", r), h.current?.removeEventListener("complete", a), h.current?.destroy(), h.current = void 0
}
}), [t, n, o, s, l, d, g, e]);
let b = (0, Ee.useCallback)((() => {
h.current?.play(), m.current = !1, c && c()
}), [c]),
x = (0, Ee.useCallback)((() => {
h.current?.pause(), u && u()
}), [u]),
k = (0, Ee.useCallback)((() => {
h.current && i ? m.current = !0 : (h.current?.stop(), d && d())
}), [d, i]);
(0, Ee.useEffect)((() => v === js && r ? b() : k()), [r, g, b, v, k]);
let w = (0, Ee.useCallback)((({
children: e,
...t
}) => (0, Ee.createElement)("span", {
children: _ ? e : null,
ref: _ ? void 0 : f,
...t
})), [_]);
return (0, Ee.useMemo)((() => Object.assign(w, {
Animation: w,
animation: h,
ref: f,
start: b,
pause: x,
stop: k
})), [w, x, b, k])
},
Vs = (...e) => (0, Ee.useMemo)((() => gs(...e)), e),
Us = ({
ref: e,
onScroll: t
} = {}) => {
let [n, r] = (0, Ee.useState)({
blockStart: !0,
blockEnd: !1,
inlineStart: !0,
inlineEnd: !1,
once: {
blockStart: !1,
blockEnd: !1,
inlineStart: !1,
inlineEnd: !1
}
}), i = (0, Ee.useRef)(null), a = e || i, o = (0, Ee.useCallback)((() => {
let e = a.current;
if (!e) return;
let n = Math.round(Math.abs(e.scrollTop)),
i = Math.round(e.scrollHeight - e.clientHeight),
o = Math.round(Math.abs(e.scrollLeft)),
s = Math.round(e.scrollWidth - e.clientWidth),
l = n <= 0,
c = n >= i,
u = o <= 0,
d = o >= s;
r((e => ({
blockStart: l,
blockEnd: c,
inlineStart: u,
inlineEnd: d,
once: {
blockStart: e.once.blockStart || l,
blockEnd: e.once.blockEnd || c,
inlineStart: e.once.inlineStart || u,
inlineEnd: e.once.inlineEnd || d
}
}))), t?.({
blockStart: l,
blockEnd: c,
inlineStart: u,
inlineEnd: d
})
}), [t, a]);
return xs({
ref: a,
onResize: o
}), (0, Ee.useEffect)((() => {
let e = a.current;
if (e) return e.addEventListener("scroll", o, {
passive: !0
}), () => e.removeEventListener("scroll", o, !1)
}), [o, a]), (0, Ee.useMemo)((() => ({
ref: a,
...n
})), [a, n])
},
Bs = (0, Ee.createContext)(null),
Gs = ({
children: e,
...t
}) => {
let n = (e => {
let {
name: t
} = e, n = (0, Ee.useMemo)((() => ({
"data-sol-theme": t
})), [t]), r = (0, Ee.useCallback)((e => vs(e, n)), [n]);
return (0, Ee.useMemo)((() => ({
...e,
props: n,
getProps: r
})), [e, n, r])
})(t);
return (0, Ee.createElement)(Bs.Provider, {
value: n
}, "function" == typeof e ? e(n) : e)
},
Ws = () => (0, Ee.useContext)(Bs) ?? {},
$s = (0, Ee.forwardRef)((({
children: e,
disabled: t,
external: n,
href: r,
onClick: i,
...a
}, o) => {
let s = (0, Ee.useContext)(As) ?? "a";
return t ? qo.jsx("a", {
"aria-disabled": "true",
ref: o,
role: "link",
...a,
children: e
}) : qo.jsx(s, {
href: r,
onClick: i,
ref: o,
rel: n ? "noopener noreferrer" : void 0,
target: n ? "_blank" : void 0,
...a,
children: e
})
})),
qs = (0, Ee.forwardRef)((({
decorative: e,
disabled: t,
disableFocus: n,
loading: r,
...i
}, a) => {
let o = !!r,
s = t ?? o;
if ((e => "href" in e)(i)) return qo.jsx($s, {
"aria-busy": !!o || void 0,
disabled: s,
ref: a,
tabIndex: n ? -1 : void 0,
...i
});
let {
onClick: l,
...c
} = i;
return qo.jsx(e ? "span" : "button", {
"aria-busy": !!o || void 0,
"aria-disabled": !!s || void 0,
onClick: s ? void 0 : l,
ref: a,
tabIndex: n || s ? -1 : void 0,
type: e ? void 0 : "button",
...c
})
}));
No("@layer components{.sol-c-icon{--_size:var(--sol-c-icon-size,var(--sol-size-100));display:inline-block;flex-shrink:0;height:var(--_size);width:var(--_size)}.sol-c-icon,.sol-c-icon [fill]:not([fill=none]){fill:currentColor}.sol-c-icon [stroke]:not([stroke=none]){stroke:currentColor}}");
let Hs = (0, Ee.forwardRef)((({
isPlaying: e,
source: t,
...n
}, r) => {
let {
ref: i
} = zs(t, {
isPlaying: e
});
return qo.jsx("span", {
ref: gs(i, r),
...n
})
})),
Ks = (0, Ee.forwardRef)((({
className: e,
color: t,
size: n,
source: r,
style: i,
isPlaying: a = !0,
...o
}, s) => {
let l = {
"aria-hidden": !0,
className: fs("sol-c-icon", t && `sol-u-color-${t}`, e),
ref: s,
style: {
...n && {
"--sol-c-icon-size": `var(--sol-size-${n})`
},
...i
},
...o
};
return (0, Ee.isValidElement)(r) ? (0, Ee.cloneElement)(r, l) : "function" == typeof r ? qo.jsx(r, {
...l
}) : qo.jsx(Hs, {
isPlaying: a,
source: r,
...l,
ref: s
})
}));
No("@layer components{.sol-c-text{--_font-offset:var(--sol-font-offset-primary);font-family:var(--sol-font-family-primary);font-variant-numeric:tabular-nums;letter-spacing:var(--sol-letter-spacing-normal)}.sol-c-text--offset{inset-block-start:var(--_font-offset,0);position:relative}.sol-c-text--heading-l{font:var(--sol-text-heading-l)}.sol-c-text--heading-m{font:var(--sol-text-heading-m)}.sol-c-text--heading-s{font:var(--sol-text-heading-s)}.sol-c-text--heading-xs{font:var(--sol-text-heading-xs)}.sol-c-text--emphasis-l{font:var(--sol-text-emphasis-l)}.sol-c-text--emphasis-m{font:var(--sol-text-emphasis-m)}.sol-c-text--emphasis-s{font:var(--sol-text-emphasis-s)}.sol-c-text--body-l{font:var(--sol-text-body-l)}.sol-c-text--body-l-bold{font:var(--sol-text-body-l-bold)}.sol-c-text--body-m{font:var(--sol-text-body-m)}.sol-c-text--body-m-bold{font:var(--sol-text-body-m-bold)}.sol-c-text--body-s{font:var(--sol-text-body-s)}.sol-c-text--body-s-bold{font:var(--sol-text-body-s-bold)}.sol-c-text--body-xs{font:var(--sol-text-body-xs)}.sol-c-text--body-xs-bold{font:var(--sol-text-body-xs-bold)}.sol-c-text--body-xxs{font:var(--sol-text-body-xxs)}.sol-c-text--body-xxs-bold{font:var(--sol-text-body-xxs-bold)}.sol-c-text--button-m{font:var(--sol-text-button-m)}.sol-c-text--button-s{font:var(--sol-text-button-s)}.sol-c-text--label-m{font:var(--sol-text-label-m)}.sol-c-text--label-s{font:var(--sol-text-label-s)}.sol-c-text--label-xs{font:var(--sol-text-label-xs)}.sol-c-text--body,.sol-c-text--label{--_font-offset:var(--sol-font-offset-secondary)}.sol-c-text--button{letter-spacing:var(--sol-letter-spacing-button)}.sol-c-text :is(h1,h2,h3,p,ul,ol,blockquote,pre,table):not(:first-child):not([class*=sol-c-]){margin-block-start:var(--sol-size-150)}.sol-c-text h1:not([class*=sol-c-]){font:var(--sol-text-body-l)}.sol-c-text h2:not([class*=sol-c-]){font:var(--sol-text-body-m)}.sol-c-text h3:not([class*=sol-c-]){font:var(--sol-text-body-s)}.sol-c-text :is(b,strong):not([class*=sol-c-]){font-weight:var(--sol-font-weight-6)}.sol-c-text :is(h1,h2,h3):not([class*=sol-c-]),.sol-c-text.sol-c-text--body :is(b,strong):not([class*=sol-c-]){font-weight:var(--sol-font-weight-7)}.sol-c-text a:not([class*=sol-c-]){border-radius:var(--sol-radius-4);color:var(--sol-color-interactive);cursor:var(--sol-cursor-link);text-decoration:underline;transition:color var(--sol-motion-250)}.sol-c-text a:not([class*=sol-c-]):hover{color:var(--sol-color-interactive-hovered)}.sol-c-text a:not([class*=sol-c-]):active{color:var(--sol-color-interactive-pressed)}.sol-c-text :is(ul,ol):not([class*=sol-c-]){margin-inline-start:var(--sol-size-150)}.sol-c-text :is(ul,ol):not([class*=sol-c-]) :is(ul,ol):not(:first-child){margin-block-start:0}.sol-c-text :is(ul,ol):not([class*=sol-c-]) li,.sol-c-text :is(ul,ol):not([class*=sol-c-]):not(:first-child)+:is(ul,ol){margin-block:var(--sol-size-050)}.sol-c-text ul:not([class*=sol-c-]){list-style-type:disc}.sol-c-text ol:not([class*=sol-c-]){list-style-type:decimal}.sol-c-text blockquote:not([class*=sol-c-]){border-inline-start:var(--sol-border-2) solid var(--sol-color-accent-1);padding-inline-start:var(--sol-size-100)}.sol-c-text pre:not([class*=sol-c-]){background-color:var(--sol-color-surface-2);border-radius:var(--sol-radius-4);padding:var(--sol-size-100)}.sol-c-text table[style*=background-color]:not([class*=sol-c-]){background-color:var(--sol-color-surface-2)!important;border-radius:var(--sol-radius-4)}.sol-c-text table[style*=background-color]:not([class*=sol-c-]) td{color:inherit!important;padding:var(--sol-size-100)}.sol-c-text table[style*=background-color]:not([class*=sol-c-]) [style*=color]{color:inherit!important}.sol-c-text hr:not([class*=sol-c-]){block-size:0;border-block-start-width:var(--sol-border-1);color:var(--sol-color-surface-3);margin-block:var(--sol-size-150)}}");
let Ys = ms((({
align: e,
as: t,
children: n,
className: r,
color: i,
decoration: a,
italic: o,
style: s,
multiline: l,
offset: c,
transform: u,
truncate: d,
variant: p = "body-m",
visuallyHidden: h,
...f
}, m) => {
let g = (0, Ee.useMemo)((() => t || (h && !l ? "span" : l ? "div" : "p")), [t, l, h]),
v = fs("sol-c-text", `sol-c-text--${p.split("-").shift()}`, `sol-c-text--${p}`, l && "sol-c-text--multiline", c && "sol-c-text--offset", e && `sol-u-text-align-${e}`, i && `sol-u-color-${i}`, a && `sol-u-text-decoration-${a}`, o && (o ? "sol-u-font-style-italic" : "sol-u-font-style-normal"), u && `sol-u-text-transform-${u}`, d && "sol-u-text-truncate", h && "sol-u-hide-visually", r),
y = {
...d && "number" == typeof d && d > 1 && {
"--sol-u-text-truncate": d
},
...s
};
return (0, Ee.createElement)(g, {
className: v,
ref: m,
style: y,
...f
}, n)
})),
Qs = "center",
Zs = "default",
Xs = "medium",
Js = "default",
el = (0, Ee.forwardRef)((({
align: e = Qs,
children: t,
className: n,
color: r = Zs,
controlled: i,
disableOffset: a,
endIcon: o,
fullWidth: s,
loading: l,
loadingIcon: c = as,
loadingIconAnimation: u = !0,
onMouseEnter: d,
onMouseLeave: p,
selected: h,
size: f = Xs,
icon: m,
iconAnimation: g = !0,
uppercase: v,
variant: y = Js,
..._
}, b) => {
let [x, k] = (0, Ee.useState)(!1), w = (0, Ee.useCallback)((e => {
k(!0), d?.(e)
}), [d]), S = (0, Ee.useCallback)((e => {
k(!1), p?.(e)
}), [p]), E = "string" == typeof l, I = l && c ? c : m, O = (0, Ee.useMemo)((() => {
if (l) switch (u) {
case "hover":
return x;
case "not-hover":
return !x;
default:
return u
}
switch (g) {
case "hover":
return x;
case "not-hover":
return !x;
default:
return g
}
}), [g, x, l, u]), C = (0, Ee.useMemo)((() => {
switch (f) {
case "large":
case "medium":
return "button-m";
case "small":
return "button-s"
}
}), [f]), A = fs("sol-c-button", e && e !== Qs && `sol-c-button--align-${e}`, r && r !== Zs && `sol-c-button--${r}`, i && "sol-c-button--controlled", s && "sol-c-button--full-width", f && f !== Xs && `sol-c-button--${f}`, y && y !== Js && `sol-c-button--${y}`, n);
return qo.jsxs(qs, {
"aria-pressed": h,
className: A,
loading: !!l,
onMouseEnter: w,
onMouseLeave: S,
ref: b,
..._,
children: [I && qo.jsx(Ks, {
className: "sol-c-button__icon sol-c-button__icon--start",
isPlaying: O,
source: I
}), E && qo.jsx("span", {
className: "sol-u-hide-visually",
role: "status",
children: l
}), t && qo.jsx(Ys, {
"aria-hidden": E,
as: "span",
className: "sol-c-button__content",
offset: !a,
transform: v || "default" === y ? "uppercase" : void 0,
variant: C,
children: t
}), o && qo.jsx(Ks, {
className: "sol-c-button__icon sol-c-button__icon--end",
source: o
})]
})
})),
tl = e => "object" == typeof e && null != e && 1 === e.nodeType,
nl = (e, t) => (!t || "hidden" !== e) && "visible" !== e && "clip" !== e,
rl = (e, t) => {
if (e.clientHeight < e.scrollHeight || e.clientWidth < e.scrollWidth) {
let n = getComputedStyle(e, null);
return nl(n.overflowY, t) || nl(n.overflowX, t) || (e => {
let t = (e => {
if (!e.ownerDocument || !e.ownerDocument.defaultView) return null;
try {
return e.ownerDocument.defaultView.frameElement
} catch (e) {
return null
}
})(e);
return !!t && (t.clientHeight < e.scrollHeight || t.clientWidth < e.scrollWidth)
})(e)
}
return !1
},
il = (e, t, n, r, i, a, o, s) => a < e && o > t || a > e && o < t ? 0 : a <= e && s <= n || o >= t && s >= n ? a - e - r : o > t && s < n || a < e && s > n ? o - t + i : 0,
al = e => {
let t = e.parentElement;
return null == t ? e.getRootNode().host || null : t
},
ol = (e, t) => {
var n, r, i, a;
if ("undefined" == typeof document) return [];
let {
scrollMode: o,
block: s,
inline: l,
boundary: c,
skipOverflowHiddenElements: u
} = t, d = "function" == typeof c ? c : e => e !== c;
if (!tl(e)) throw TypeError("Invalid target");
let p = document.scrollingElement || document.documentElement,
h = [],
f = e;
for (; tl(f) && d(f);) {
if ((f = al(f)) === p) {
h.push(f);
break
}
null != f && f === document.body && rl(f) && !rl(document.documentElement) || null != f && rl(f, u) && h.push(f)
}
let m = null != (r = null == (n = window.visualViewport) ? void 0 : n.width) ? r : innerWidth,
g = null != (a = null == (i = window.visualViewport) ? void 0 : i.height) ? a : innerHeight,
{
scrollX: v,
scrollY: y
} = window,
{
height: _,
width: b,
top: x,
right: k,
bottom: w,
left: S
} = e.getBoundingClientRect(),
{
top: E,
right: I,
bottom: O,
left: C
} = (e => {
let t = window.getComputedStyle(e);
return {
top: parseFloat(t.scrollMarginTop) || 0,
right: parseFloat(t.scrollMarginRight) || 0,
bottom: parseFloat(t.scrollMarginBottom) || 0,
left: parseFloat(t.scrollMarginLeft) || 0
}
})(e),
A = "start" === s || "nearest" === s ? x - E : "end" === s ? w + O : x + _ / 2 - E + O,
P = "center" === l ? S + b / 2 - C + I : "end" === l ? k + I : S - C,
T = [];
for (let R = 0; R < h.length; R++) {
let e = h[R],
{
height: t,
width: n,
top: r,
right: i,
bottom: a,
left: c
} = e.getBoundingClientRect();
if ("if-needed" === o && x >= 0 && S >= 0 && w <= g && k <= m && x >= r && w <= a && S >= c && k <= i) break;
let u = getComputedStyle(e),
d = parseInt(u.borderLeftWidth, 10),
f = parseInt(u.borderTopWidth, 10),
E = parseInt(u.borderRightWidth, 10),
I = parseInt(u.borderBottomWidth, 10),
O = 0,
C = 0,
D = "offsetWidth" in e ? e.offsetWidth - e.clientWidth - d - E : 0,
L = "offsetHeight" in e ? e.offsetHeight - e.clientHeight - f - I : 0,
N = "offsetWidth" in e ? 0 === e.offsetWidth ? 0 : n / e.offsetWidth : 0,
M = "offsetHeight" in e ? 0 === e.offsetHeight ? 0 : t / e.offsetHeight : 0;
if (p === e) O = "start" === s ? A : "end" === s ? A - g : "nearest" === s ? il(y, y + g, g, f, I, y + A, y + A + _, _) : A - g / 2, C = "start" === l ? P : "center" === l ? P - m / 2 : "end" === l ? P - m : il(v, v + m, m, d, E, v + P, v + P + b, b), O = Math.max(0, O + y), C = Math.max(0, C + v);
else {
O = "start" === s ? A - r - f : "end" === s ? A - a + I + L : "nearest" === s ? il(r, a, t, f, I + L, A, A + _, _) : A - (r + t / 2) + L / 2, C = "start" === l ? P - c - d : "center" === l ? P - (c + n / 2) + D / 2 : "end" === l ? P - i + E + D : il(c, i, n, d, E + D, P, P + b, b);
let {
scrollLeft: o,
scrollTop: u
} = e;
O = 0 === M ? 0 : Math.max(0, Math.min(u + O / M, e.scrollHeight - t / M + L)), C = 0 === N ? 0 : Math.max(0, Math.min(o + C / N, e.scrollWidth - n / N + D)), A += u - O, P += o - C
}
T.push({
el: e,
top: O,
left: C
})
}
return T
},
sl = (0, Ee.forwardRef)((({
children: e,
className: t,
id: n,
keepMounted: r,
open: i,
onOpenChange: a,
prefix: o,
scrollIntoView: s,
suffix: l,
title: c,
...u
}, d) => {
let p = (0, Ee.useRef)(null),
h = (0, Ee.useRef)(null),
f = (0, Ee.useId)(),
m = n ?? f,
{
getIsOpen: g,
register: v,
toggle: y,
unregister: _
} = (() => {
let e = (0, Ee.useContext)(Ho);
if (!e) throw Error("Accordion components must be wrapped in <Accordion />");
return e
})(),
b = g(m),
[x, k] = (0, Ee.useState)(!!i);
(0, Ee.useLayoutEffect)((() => (v(m, i), () => _(m))), [m, i, v, _]), (0, Ee.useEffect)((() => {
b && (k(!0), s && p.current && function(e, t) {
if (!e.isConnected || !(e => {
let t = e;
for (; t && t.parentNode;) {
if (t.parentNode === document) return !0;
t = t.parentNode instanceof ShadowRoot ? t.parentNode.host : t.parentNode
}
return !1
})(e)) return;
let n = (e => {
let t = window.getComputedStyle(e);
return {
top: parseFloat(t.scrollMarginTop) || 0,
right: parseFloat(t.scrollMarginRight) || 0,
bottom: parseFloat(t.scrollMarginBottom) || 0,
left: parseFloat(t.scrollMarginLeft) || 0
}
})(e);
if ("object" == typeof t && "function" == typeof t.behavior) return t.behavior(ol(e, t));
let r = "boolean" == typeof t || null == t ? void 0 : t.behavior;
for (let {
el: i,
top: a,
left: o
}
of ol(e, (e => !1 === e ? {
block: "end",
inline: "nearest"
} : e === Object(e) && 0 !== Object.keys(e).length ? e : {
block: "start",
inline: "nearest"
})(t))) {
let e = a - n.top + n.bottom,
t = o - n.left + n.right;
i.scroll({
top: e,
left: t,
behavior: r
})
}
}(p.current, {
block: "start",
scrollMode: "if-needed"
})), a?.(b)
}), [b, a, s]);
let w = (0, Ee.useCallback)((() => y(m)), [m, y]),
S = (0, Ee.useCallback)((() => {
y(m, !1), h.current?.focus()
}), [m, y]),
E = (0, Ee.useCallback)((() => {
b || k(!1)
}), [b]),
I = Vs(p, d),
O = fs("sol-c-accordion__item", b && "sol-c-accordion__item--open", t);
return qo.jsxs("div", {
className: O,
id: m,
ref: I,
...u,
children: [qo.jsxs("button", {
"aria-controls": m + "-content",
"aria-expanded": b,
className: "sol-c-accordion__header",
id: m + "-header",
onClick: w,
type: "button",
ref: h,
children: ["function" == typeof o ? o({
isOpen: b
}) : o, qo.jsx(Ys, {
as: "span",
className: "sol-c-accordion__title",
offset: !0,
variant: "emphasis-m",
children: "function" == typeof c ? c({
isOpen: b
}) : c
}), "function" == typeof l ? l({
isOpen: b
}) : l, qo.jsx(Ko, {
className: "sol-c-accordion__icon sol-c-accordion__icon--plus"
}), qo.jsx(os, {
className: "sol-c-accordion__icon sol-c-accordion__icon--minus"
})]
}), qo.jsx("div", {
"aria-labelledby": m + "-header",
className: "sol-c-accordion__content",
hidden: !b,
id: m + "-content",
role: "region",
onTransitionEnd: E,
children: (r || x) && qo.jsx("div", {
className: "sol-c-accordion__wrapper",
children: "function" == typeof e ? e({
close: S,
isOpen: x
}) : e
})
})]
})
})),
ll = (0, Ee.forwardRef)((({
className: e,
closeAll: t,
children: n,
openAll: r,
...i
}, a) => {
let o = (() => {
let [e, t] = (0, Ee.useState)({}), n = (0, Ee.useCallback)(((e, n) => t((t => ({
...t,
[e]: n ?? !1
})))), []), r = (0, Ee.useCallback)((e => t((({
[e]: t,
...n
}) => n))), []), i = (0, Ee.useCallback)((t => !!e[t]), [e]), a = (0, Ee.useCallback)(((e, n) => t((t => ({
...t,
[e]: n ?? !t[e]
})))), []), o = (0, Ee.useCallback)((t => Object.entries(e).forEach((([e, n]) => a(e, t ?? !n)))), [e, a]);
return (0, Ee.useMemo)((() => ({
register: n,
unregister: r,
getIsOpen: i,
toggle: a,
size: Object.keys(e).length,
allOpen: Object.values(e).every((e => e)),
allClosed: Object.values(e).every((e => !e)),
closeAll: () => o(!1),
openAll: () => o(!0)
})), [i, e, n, a, o, r])
})(),
s = fs("sol-c-accordion", e);
return qo.jsx(Ho.Provider, {
value: o,
children: qo.jsxs("div", {
className: s,
ref: a,
...i,
children: [o.size > 2 && qo.jsxs("div", {
className: "sol-c-accordion__actions",
children: [r && qo.jsx(el, {
className: "sol-c-accordion__action",
disabled: o.allOpen,
onClick: o.openAll,
size: "small",
variant: "plain",
children: r
}), t && qo.jsx(el, {
className: "sol-c-accordion__action",
disabled: o.allClosed,
onClick: o.closeAll,
size: "small",
variant: "plain",
children: t
})]
}), qo.jsx("div", {
className: "sol-c-accordion__items",
children: n
})]
})
})
}));
No("@layer components{.sol-c-app-header{-webkit-app-region:drag;background:var(--sol-color-surface-1);box-shadow:var(--sol-shadow-100);padding:var(--sol-size-050);position:relative}.sol-c-app-header>*{-webkit-app-region:no-drag;opacity:0}.sol-c-app-header>:first-child{animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.4s}.sol-c-app-header>:nth-child(2){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.5s}.sol-c-app-header>:nth-child(3){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.6s}.sol-c-app-header>:nth-child(4){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.7s}.sol-c-app-header>:nth-child(5){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.8s}.sol-c-app-header>:nth-child(6){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:.9s}.sol-c-app-header>:nth-child(7){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:1s}.sol-c-app-header>:nth-child(8){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:1.1s}.sol-c-app-header>:nth-child(9){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:1.2s}.sol-c-app-header>:nth-child(10){animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:1.3s}[data-sol-dialog] .sol-c-app-header{-webkit-app-region:no-drag}.sol-c-app-header__actions{-webkit-app-region:drag;margin-inline-start:auto}.sol-c-app-header__item{-webkit-app-region:no-drag;position:relative;z-index:1}.sol-c-app-header__item--always-on-top{z-index:var(--sol-z-actions)}.sol-c-app-header__separator{background-color:var(--sol-color-surface-2);block-size:100%;inline-size:var(--sol-border-1)}}"), No("@layer components{.sol-c-stack{display:flex;gap:var(--sol-c-stack-gap);min-inline-size:0}.sol-c-stack--align-start{align-items:flex-start}.sol-c-stack--align-center{align-items:center}.sol-c-stack--align-end{align-items:flex-end}.sol-c-stack--align-stretch{align-items:stretch}.sol-c-stack--align-baseline{align-items:baseline}.sol-c-stack--justify-start{justify-content:flex-start}.sol-c-stack--justify-center{justify-content:center}.sol-c-stack--justify-end{justify-content:flex-end}.sol-c-stack--justify-space-between{justify-content:space-between}.sol-c-stack--justify-space-around{justify-content:space-around}.sol-c-stack--justify-space-evenly{justify-content:space-evenly}.sol-c-stack--vertical{flex-direction:column}.sol-c-stack--reverse{flex-direction:row-reverse}.sol-c-stack--reverse.sol-c-stack--vertical{flex-direction:column-reverse}.sol-c-stack--wrap{flex-wrap:wrap}.sol-c-stack__item{flex:0 0 auto}.sol-c-stack__item--start{align-self:flex-start}.sol-c-stack__item--center{align-self:center}.sol-c-stack__item--end{align-self:flex-end}.sol-c-stack__item--stretch{align-self:stretch}.sol-c-stack__item--baseline{align-self:baseline}.sol-c-stack__item--fill{flex:1 1 auto}}");
ms((({
align: e,
as: t = "div",
className: n,
children: r,
fill: i,
...a
}, o) => {
let s = fs("sol-c-stack__item", e && `sol-c-stack__item--${e}`, i && "sol-c-stack__item--fill", n);
return (0, Ee.createElement)(t, {
className: s,
ref: o,
...a
}, r)
}));
let cl = ms((({
align: e,
as: t = "div",
children: n,
className: r,
gap: i,
justify: a,
reverse: o,
vertical: s,
wrap: l,
...c
}, u) => {
let d = fs("sol-c-stack", e && `sol-c-stack--align-${e}`, a && `sol-c-stack--justify-${a}`, o && "sol-c-stack--reverse", s && "sol-c-stack--vertical", l && "sol-c-stack--wrap", i && `sol-u-gap-${i}`, r);
return (0, Ee.createElement)(t, {
className: d,
ref: u,
...c
}, n)
})),
ul = (0, Ee.forwardRef)((({
className: e,
...t
}, n) => {
let r = fs("sol-c-app-header__actions", e);
return qo.jsx(cl, {
align: "center",
className: r,
justify: "end",
gap: "050",
ref: n,
...t
})
})),
dl = (0, Ee.forwardRef)((({
alwaysOnTop: e,
children: t,
className: n,
hasAvatar: r,
label: i,
style: a,
...o
}, s) => {
let l = fs("sol-c-app-header__item", e && "sol-c-app-header__item--always-on-top", r && "sol-c-app-header__item--avatar", n),
c = {
...r && {
"--sol-c-button-padding": "var(--sol-size-025)"
},
...a
};
return qo.jsx(el, {
"aria-label": t && i ? i : void 0,
className: l,
disableOffset: !!t,
ref: s,
size: "medium",
style: c,
variant: "plain",
...o,
children: t ?? i
})
})),
pl = ms((({
as: e = "div",
className: t,
...n
}, r) => {
let i = fs("sol-c-app-header__separator", t);
return qo.jsx(e, {
"aria-hidden": "true",
className: i,
ref: r,
...n
})
})),
hl = (0, Ee.forwardRef)((({
actions: e,
children: t,
className: n,
...r
}, i) => {
let a = fs("sol-c-app-header", n);
return qo.jsxs(cl, {
as: "header",
className: a,
gap: "050",
ref: i,
...r,
children: [t, e && qo.jsx(ul, {
children: e
})]
})
}));
No("@layer components{.sol-c-app-layout{background:var(--sol-color-background);block-size:100vh;block-size:100dvh;display:flex;flex-direction:column;position:relative}.sol-c-app-layout__header{flex:0;position:relative;z-index:var(--sol-z-header)}.sol-c-app-layout__main{display:flex;flex:1;flex-direction:column;min-block-size:0;overflow:auto;position:relative;z-index:var(--sol-z-main)}}");
let fl = (0, Ee.forwardRef)((({
children: e,
className: t,
header: n,
...r
}, i) => {
let a = fs("sol-c-app-layout", t);
return qo.jsxs("div", {
className: a,
ref: i,
...r,
children: [n && (0, Ee.cloneElement)(n, {
className: "sol-c-app-layout__header"
}), qo.jsx("main", {
className: "sol-c-app-layout__main",
children: e
})]
})
}));
No("@layer components{.sol-c-avatar{--_size:var(--sol-c-avatar-size,var(--sol-size-200));background-color:var(--sol-color-surface-2);border:var(--sol-border-1) solid;border-radius:var(--sol-radius-4);display:inline-block;height:var(--_size);overflow:hidden;position:relative;width:var(--_size)}.sol-c-avatar__image{display:block;height:100%;inset:0;object-fit:cover;opacity:0;position:absolute;transition:opacity var(--sol-motion-250);width:100%}.sol-c-avatar__image--loaded{opacity:1}}");
let ml = ms((({
as: e = "span",
alt: t,
className: n,
src: r,
srcSet: i,
...a
}, o) => {
let s = Os({
src: r,
srcSet: i
}),
l = fs("sol-c-avatar", n);
return qo.jsx(e, {
className: l,
"aria-label": r && s !== Is ? void 0 : t,
ref: o,
...a,
children: r && s !== Is && qo.jsx("img", {
alt: t ?? "",
className: fs("sol-c-avatar__image", s === Es && "sol-c-avatar__image--loaded"),
src: r,
srcSet: i
})
})
}));
No("@layer components{.sol-c-card{--_background-color:var(--sol-color-surface-0);--_border-color:var(--sol-color-surface-2);--_border-radius:var(--sol-radius-8);--_border-width:var(--sol-border-1);--_width:13rem;--_height:18rem;--_media-width:22.375rem;--_overlay-offset:var(--sol-size-150);--_content-width:calc(100% - var(--_media-width) - var(--_border-width));--_background-mask:var(\n --sol-c-card-background-mask,url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath stroke='%23000' d='M55.5 32.5v2.492a7.5 7.5 0 0 1-2.419 5.517L38.958 53.517a7.5 7.5 0 0 1-5.08 1.983H8A7.5 7.5 0 0 1 .5 48V8A7.5 7.5 0 0 1 8 .5h40A7.5 7.5 0 0 1 55.5 8v24.5Z'/%3E%3C/svg%3E\") 24 fill\n );--_border-mask:var(--sol-c-card-border-mask,url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath fill='none' stroke='%23000' d='M55.5 32.5v2.492a7.5 7.5 0 0 1-2.419 5.517L38.958 53.517a7.5 7.5 0 0 1-5.08 1.983H8A7.5 7.5 0 0 1 .5 48V8A7.5 7.5 0 0 1 8 .5h40A7.5 7.5 0 0 1 55.5 8v24.5Z'/%3E%3C/svg%3E\") 24 fill);--_light-color:var(--sol-color-accent-1);--_light-angle:var(--sol-motion-angle);--_light-size:var(--sol-size-500);border-radius:var(--_border-radius);cursor:var(--sol-cursor-link);inline-size:var(--_width);position:relative}.sol-c-card:after,.sol-c-card:before{border:var(--_border-width) solid;color:var(--_border-color);content:\"\";inset:0;position:absolute;transition:color var(--sol-motion-250) var(--sol-motion-ease)}.sol-c-card:before{border-block-end:0;border-start-end-radius:var(--_border-radius);border-start-start-radius:var(--_border-radius);inset-block-end:50%;z-index:2}.sol-c-card:after{border-block-start:0;border-end-end-radius:var(--_border-radius);border-end-start-radius:var(--_border-radius);inset-block-start:50%;z-index:4}@supports ((-webkit-mask-box-image:var(--_border-mask )) or (mask-border:var(--_border-mask ))){.sol-c-card:after,.sol-c-card:before{-webkit-mask-box-image:var(--_border-mask);border:none;inset-block:0;mask-border:var(--_border-mask);pointer-events:none}.sol-c-card:before{background:linear-gradient(currentColor 50%,#0000 0)}.sol-c-card:after{background:linear-gradient(#0000 50%,currentColor 0)}}.sol-c-card:hover{--_border-color:var(--sol-color-interactive-hovered);--_background-color:var(--sol-color-surface-0-hovered)}.sol-c-card:active{--_border-color:var(--sol-color-interactive-pressed);--_background-color:var(--sol-color-surface-0-pressed)}.sol-c-card:focus,.sol-c-card:focus-within{outline:var(--sol-focus-width) solid var(--sol-focus-color);outline-offset:var(--sol-focus-offset)}.sol-c-card--wide{--_width:35.5rem}.sol-c-card--offline{--_width:auto}.sol-c-card__wrapper{-webkit-mask-box-image:var(--_background-mask);background:var(--_background-color);border-radius:var(--_border-radius);display:flex;mask-border:var(--_background-mask);min-block-size:var(--_height);overflow:hidden;padding:var(--_border-width);transition:background-color var(--sol-motion-250) var(--sol-motion-ease)}.sol-c-card__content{align-items:flex-start;display:flex;flex:1;flex-direction:column;overflow:hidden;padding:var(--sol-size-150);position:relative;z-index:1}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-card__content:before{--_a:calc(var(--_height)/cos(var(--_light-angle)));--_b:calc(var(--_light-size)*tan(var(--_light-angle)));--_c:calc(var(--_light-size)*cos(var(--_light-angle)));--_light-width:calc(var(--_a) + var(--_b));background:linear-gradient(to right,var(--_light-color),#0000);content:\"\";height:var(--_light-size);left:50%;opacity:0;position:absolute;top:50%;transform:translate(calc(-100% - var(--_c)),-50%) rotate(calc(var(--_light-angle)*-1));width:var(--_light-width);z-index:-1}.sol-c-card:hover .sol-c-card__content:before{animation:sol-c-card-sweep var(--sol-motion-500) var(--sol-motion-linear) both}}@keyframes sol-c-card-sweep{50%{opacity:.4}to{opacity:0;transform:translate(calc(var(--_c)),-50%) rotate(calc(var(--_light-angle)*-1))}}.sol-c-card__heading{margin-block-end:auto}.sol-c-card__link{outline:none}.sol-c-card__media{inline-size:var(--_media-width);overflow:hidden;position:relative}.sol-c-card__media .sol-c-card__image{left:0;position:absolute;top:0}@supports (object-fit:cover){.sol-c-card__media .sol-c-card__image{height:100%;object-fit:cover;width:100%}}.sol-c-card__overlay{-webkit-mask-box-image:var(--_background-mask);clip-path:inset(0 0 0 var(--_content-width));inset:0;inset-block-start:calc(var(--_overlay-offset)*-1);mask-border:var(--_background-mask);overflow:hidden;pointer-events:none;position:absolute;z-index:3}.sol-c-card__overlay .sol-c-card__image{inline-size:calc(var(--_media-width) + var(--_overlay-offset)*2 + var(--_border-width)*2);inset-inline-end:calc(var(--_overlay-offset)*-1);max-inline-size:none;position:absolute;top:0}[dir=rtl] .sol-c-card__overlay{clip-path:inset(0 var(--_content-width) 0 0)}.sol-c-card__image{opacity:0;transition-duration:var(--sol-motion-250);transition-property:opacity}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-card__image{transform:scale(1.05);transition-property:opacity,transform}}.sol-c-card__image--loaded{opacity:1;transform:scale(1)}.sol-c-card__offline-icon.sol-c-icon{color:var(--sol-color-surface-3);height:var(--sol-size-600);margin:auto 13rem;position:relative;width:var(--sol-size-600)}}");
var gl = {
v: "5.9.0",
fr: 29.9700012207031,
ip: 0,
op: 180.00000733155,
w: 16,
h: 16,
nm: "wifi-off",
ddd: 0,
assets: [{
id: "comp_0",
nm: "wifi-off_export",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Bar",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8.16, 6.619, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [4.162, 5.114, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0]
],
v: [
[-3.412, -4.365],
[3.412, 4.365]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [4.162, 5.114],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.5],
y: [1]
},
o: {
x: [.5],
y: [0]
},
t: 140,
s: [0]
}, {
t: 150.000006109625,
s: [100]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.5],
y: [1]
},
o: {
x: [.5],
y: [0]
},
t: 18,
s: [0]
}, {
t: 28.0000011404634,
s: [100]
}],
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 1,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 2,
ty: 0,
nm: "Waves 6",
refId: "comp_1",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8, 8, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [8, 8, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
hasMask: !0,
masksProperties: [{
inv: !1,
mode: "a",
pt: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[5.938, .188],
[-5.5, 2.875],
[2.593, 9.624],
[4.941, 5.621],
[2.142, 2.005],
[3.63, 1.404],
[12.72, 12.599],
[16.149, 12.425],
[18.625, 6.812],
[21.938, .188]
],
c: !0
},
ix: 1
},
o: {
a: 0,
k: 100,
ix: 3
},
x: {
a: 0,
k: 0,
ix: 4
},
nm: "Mask 1"
}],
w: 16,
h: 16,
ip: 20.0000008146167,
op: 142.000005783779,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 3,
ty: 4,
nm: "Waves 9",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-2.4, 0],
[-1.681, -1.372]
],
o: [
[1.7, -1.436],
[2.339, 0],
[0, 0]
],
v: [
[-6.232, 1.151],
[.064, -1.151],
[6.232, 1.044]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [9.982, 4.901],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.47],
y: [1]
},
o: {
x: [.53],
y: [0]
},
t: 149,
s: [0]
}, {
t: 154.000006272549,
s: [100]
}],
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 142.000005783779,
op: 229.000009327361,
st: 142.000005783779,
bm: 0
}, {
ddd: 0,
ind: 4,
ty: 4,
nm: "Waves 3",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-2.4, 0],
[-1.681, -1.372]
],
o: [
[1.7, -1.436],
[2.339, 0],
[0, 0]
],
v: [
[-6.232, 1.151],
[.064, -1.151],
[6.232, 1.044]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [9.982, 4.901],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.5],
y: [1]
},
o: {
x: [.5],
y: [0]
},
t: 12,
s: [0]
}, {
t: 17.0000006924242,
s: [100]
}],
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 0,
op: 20.0000008146167,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 5,
ty: 0,
nm: "Waves 5",
refId: "comp_2",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8, 8, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [8, 8, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
hasMask: !0,
masksProperties: [{
inv: !1,
mode: "a",
pt: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[1.188, 5.5],
[2.438, 10.875],
[6.938, 8.281],
[4.75, 4.906],
[6.188, 4.25],
[13.938, 16],
[14, 11.375],
[15.812, 6.125],
[16, 0]
],
c: !0
},
ix: 1
},
o: {
a: 0,
k: 100,
ix: 3
},
x: {
a: 0,
k: 0,
ix: 4
},
nm: "Mask 1"
}],
w: 16,
h: 16,
ip: 22.0000008960784,
op: 144.00000586524,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 6,
ty: 4,
nm: "Waves 8",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-1.599, 0],
[-1.144, -.948]
],
o: [
[1.143, -.945],
[1.602, 0],
[0, 0]
],
v: [
[-4.212, .755],
[-.003, -.758],
[4.212, .758]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.049, 7.659],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.47],
y: [1]
},
o: {
x: [.53],
y: [0]
},
t: 152,
s: [0]
}, {
t: 157.000006394741,
s: [100]
}],
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 1,
ix: 3,
nm: "Trim Paths 2",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 144.00000586524,
op: 229.000009327361,
st: 144.00000586524,
bm: 0
}, {
ddd: 0,
ind: 7,
ty: 4,
nm: "Waves 2",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-1.599, 0],
[-1.144, -.948]
],
o: [
[1.143, -.945],
[1.602, 0],
[0, 0]
],
v: [
[-4.212, .755],
[-.003, -.758],
[4.212, .758]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.049, 7.659],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.5],
y: [1]
},
o: {
x: [.5],
y: [0]
},
t: 8,
s: [0]
}, {
t: 13.0000005295009,
s: [100]
}],
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 0,
op: 22.0000008960784,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 8,
ty: 0,
nm: "Waves 4",
refId: "comp_3",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8, 8, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [8, 8, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
hasMask: !0,
masksProperties: [{
inv: !1,
mode: "a",
pt: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.562, 9.125],
[4.938, 12.5],
[9.998, 11.721],
[6.481, 7.588],
[7.843, 7.154],
[14, 14.75],
[16, 0]
],
c: !0
},
ix: 1
},
o: {
a: 0,
k: 100,
ix: 3
},
x: {
a: 0,
k: 0,
ix: 4
},
nm: "Mask 1"
}],
w: 16,
h: 16,
ip: 24.00000097754,
op: 146.000005946702,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 9,
ty: 4,
nm: "Waves 7",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.804, 0],
[-.577, -.439]
],
o: [
[.585, -.463],
[.78, 0],
[0, 0]
],
v: [
[-2.102, .37],
[.026, -.37],
[2.102, .33]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.021, 10.452],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.47],
y: [1]
},
o: {
x: [.53],
y: [0]
},
t: 156,
s: [0]
}, {
t: 161.000006557664,
s: [100]
}],
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 1,
ix: 3,
nm: "Trim Paths 2",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 146.000005946702,
op: 229.000009327361,
st: 146.000005946702,
bm: 0
}, {
ddd: 0,
ind: 10,
ty: 4,
nm: "Waves",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.804, 0],
[-.577, -.439]
],
o: [
[.585, -.463],
[.78, 0],
[0, 0]
],
v: [
[-2.102, .37],
[.026, -.37],
[2.102, .33]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.021, 10.452],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.5],
y: [1]
},
o: {
x: [.5],
y: [0]
},
t: 4,
s: [0]
}, {
t: 9.00000036657752,
s: [100]
}],
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 0,
op: 24.00000097754,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 11,
ty: 4,
nm: "Circle",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8, 12.513, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [1.237, 1.237, 0],
ix: 1,
l: 2
},
s: {
a: 1,
k: [{
i: {
x: [.667, .667, .667],
y: [1, 1, 1]
},
o: {
x: [.333, .333, .333],
y: [0, 0, 0]
},
t: 0,
s: [0, 0, 100]
}, {
i: {
x: [.49, .49, .49],
y: [1, 1, 1]
},
o: {
x: [.167, .167, .167],
y: [0, 0, 0]
},
t: 5,
s: [100, 100, 100]
}, {
i: {
x: [.49, .49, .49],
y: [1, 1, 1]
},
o: {
x: [.51, .51, .51],
y: [0, 0, 0]
},
t: 160,
s: [100, 100, 100]
}, {
t: 166.000006761319,
s: [0, 0, 100]
}],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, -.545],
[.545, 0],
[0, .545],
[-.545, 0]
],
o: [
[0, .545],
[-.545, 0],
[0, -.545],
[.545, 0]
],
v: [
[.987, 0],
[0, .987],
[-.987, 0],
[0, -.987]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [1.237, 1.237],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}]
}, {
id: "comp_1",
nm: "Waves 6",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Waves 6",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-2.4, 0],
[-1.681, -1.372]
],
o: [
[1.7, -1.436],
[2.339, 0],
[0, 0]
],
v: [
[-6.232, 1.151],
[.064, -1.151],
[6.232, 1.044]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [9.982, 4.901],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: -1.00000004073083,
op: 181.000007372281,
st: 0,
bm: 0
}]
}, {
id: "comp_2",
nm: "Waves 5",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Waves 5",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-1.599, 0],
[-1.144, -.948]
],
o: [
[1.143, -.945],
[1.602, 0],
[0, 0]
],
v: [
[-4.212, .755],
[-.003, -.758],
[4.212, .758]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.049, 7.659],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}]
}, {
id: "comp_3",
nm: "Waves 4",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Waves 4",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [7.936, 6.288, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [9.982, 7.286, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.804, 0],
[-.577, -.439]
],
o: [
[.585, -.463],
[.78, 0],
[0, 0]
],
v: [
[-2.102, .37],
[.026, -.37],
[2.102, .33]
],
c: !1
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 1.5,
ix: 5
},
lc: 2,
lj: 1,
ml: 10,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [10.021, 10.452],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 2,
ix: 2,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}],
ip: -3.00000012219251,
op: 181.000007372281,
st: 0,
bm: 0
}]
}],
layers: [{
ddd: 0,
ind: 1,
ty: 0,
nm: "wifi-off_content",
refId: "comp_0",
sr: 1,
ks: {
o: {
a: 1,
k: [{
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 60,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 62,
s: [10]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 64,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 66,
s: [10]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 68,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 70,
s: [10]
}, {
t: 72.0000029326201,
s: [100]
}],
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [8, 8, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [8, 8, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
w: 16,
h: 16,
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}],
markers: []
};
function vl(e) {
return _l(e) ? (e.nodeName || "").toLowerCase() : "#document"
}
function yl(e) {
var t;
return (null == e || null == (t = e.ownerDocument) ? void 0 : t.defaultView) || window
}
function _l(e) {
return e instanceof Node || e instanceof yl(e).Node
}
function bl(e) {
return e instanceof Element || e instanceof yl(e).Element
}
function xl(e) {
return e instanceof HTMLElement || e instanceof yl(e).HTMLElement
}
function kl(e) {
return "undefined" != typeof ShadowRoot && (e instanceof ShadowRoot || e instanceof yl(e).ShadowRoot)
}
function wl(e) {
let t = e.activeElement;
for (; null != (null == (n = t) || null == (r = n.shadowRoot) ? void 0 : r.activeElement);) {
var n, r;
t = t.shadowRoot.activeElement
}
return t
}
function Sl(e, t) {
if (!e || !t) return !1;
let n = t.getRootNode && t.getRootNode();
if (e.contains(t)) return !0;
if (n && kl(n)) {
let n = t;
for (; n;) {
if (e === n) return !0;
n = n.parentNode || n.host
}
}
return !1
}
function El() {
let e = navigator.userAgentData;
return null != e && e.platform ? e.platform : navigator.platform
}
function Il(e) {
return 0 === e.mozInputSource && !!e.isTrusted || (Al() && e.pointerType ? "click" === e.type && 1 === e.buttons : 0 === e.detail && !e.pointerType)
}
function Ol(e) {
return !Al() && 0 === e.width && 0 === e.height || 1 === e.width && 1 === e.height && 0 === e.pressure && 0 === e.detail && "mouse" === e.pointerType || e.width < 1 && e.height < 1 && 0 === e.pressure && 0 === e.detail
}
function Cl() {
return /apple/i.test(navigator.vendor)
}
function Al() {
let e = /android/i;
return e.test(El()) || e.test(function() {
let e = navigator.userAgentData;
return e && Array.isArray(e.brands) ? e.brands.map((e => {
let {
brand: t,
version: n
} = e;
return t + "/" + n
})).join(" ") : navigator.userAgent
}())
}
function Pl() {
return El().toLowerCase().startsWith("mac") && !navigator.maxTouchPoints
}
function Tl(e, t) {
let n = ["mouse", "pen"];
return t || n.push("", void 0), n.includes(e)
}
function Rl(e) {
return (null == e ? void 0 : e.ownerDocument) || document
}
function Dl(e, t) {
return null != t && ("composedPath" in e ? e.composedPath().includes(t) : null != e.target && t.contains(e.target))
}
function Ll(e) {
return "composedPath" in e ? e.composedPath()[0] : e.target
}
function Nl(e) {
return xl(e) && e.matches("input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])")
}
function Ml(e) {
e.preventDefault(), e.stopPropagation()
}
No("@layer components{.sol-c-tooltip{--_background:var(--sol-c-tooltip-background,var(--sol-color-surface-2));--_arrow-size:var(--sol-c-tooltip-size,var(--sol-size-100));--sol-u-transition-floating-offset:var(--sol-size-025);background:var(--_background);border-radius:var(--sol-radius-4);filter:drop-shadow(var(--sol-shadow-050));inline-size:max-content;max-inline-size:17.5rem;padding:var(--sol-size-050);z-index:var(--sol-z-tooltip)}.sol-c-tooltip:not(.sol-c-tooltip--interactive){pointer-events:none}.sol-c-tooltip__arrow{fill:var(--_background);height:var(--_arrow-size);width:var(--_arrow-size)}}");
let jl = Math.floor,
Fl = Math.min,
zl = Math.max,
Vl = Math.round,
Ul = Math.floor,
Bl = e => ({
x: e,
y: e
}),
Gl = {
left: "right",
right: "left",
bottom: "top",
top: "bottom"
},
Wl = {
start: "end",
end: "start"
};
function $l(e, t) {
return "function" == typeof e ? e(t) : e
}
function ql(e) {
return e.split("-")[0]
}
function Hl(e) {
return e.split("-")[1]
}
function Kl(e) {
return "x" === e ? "y" : "x"
}
function Yl(e) {
return "y" === e ? "height" : "width"
}
function Ql(e) {
return ["top", "bottom"].includes(ql(e)) ? "y" : "x"
}
function Zl(e) {
return e.replace(/start|end/g, (e => Wl[e]))
}
function Xl(e) {
return e.replace(/left|right|bottom|top/g, (e => Gl[e]))
}
function Jl(e) {
return "number" != typeof e ? {
top: 0,
right: 0,
bottom: 0,
left: 0,
...e
} : {
top: e,
right: e,
bottom: e,
left: e
}
}
function ec(e) {
return {
...e,
top: e.y,
left: e.x,
right: e.x + e.width,
bottom: e.y + e.height
}
}
function tc(e, t, n) {
let r, {
reference: i,
floating: a
} = e,
o = Ql(t),
s = Kl(Ql(t)),
l = Yl(s),
c = ql(t),
u = "y" === o,
d = i.x + i.width / 2 - a.width / 2,
p = i.y + i.height / 2 - a.height / 2,
h = i[l] / 2 - a[l] / 2;
switch (c) {
case "top":
r = {
x: d,
y: i.y - a.height
};
break;
case "bottom":
r = {
x: d,
y: i.y + i.height
};
break;
case "right":
r = {
x: i.x + i.width,
y: p
};
break;
case "left":
r = {
x: i.x - a.width,
y: p
};
break;
default:
r = {
x: i.x,
y: i.y
}
}
switch (Hl(t)) {
case "start":
r[s] -= h * (n && u ? -1 : 1);
break;
case "end":
r[s] += h * (n && u ? -1 : 1)
}
return r
}
async function nc(e, t) {
var n;
void 0 === t && (t = {});
let {
x: r,
y: i,
platform: a,
rects: o,
elements: s,
strategy: l
} = e, {
boundary: c = "clippingAncestors",
rootBoundary: u = "viewport",
elementContext: d = "floating",
altBoundary: p = !1,
padding: h = 0
} = $l(t, e), f = Jl(h), m = s[p ? "floating" === d ? "reference" : "floating" : d], g = ec(await a.getClippingRect({
element: null == (n = await (null == a.isElement ? void 0 : a.isElement(m))) || n ? m : m.contextElement || await (null == a.getDocumentElement ? void 0 : a.getDocumentElement(s.floating)),
boundary: c,
rootBoundary: u,
strategy: l
})), v = "floating" === d ? {
...o.floating,
x: r,
y: i
} : o.reference, y = await (null == a.getOffsetParent ? void 0 : a.getOffsetParent(s.floating)), _ = await (null == a.isElement ? void 0 : a.isElement(y)) && await (null == a.getScale ? void 0 : a.getScale(y)) || {
x: 1,
y: 1
}, b = ec(a.convertOffsetParentRelativeRectToViewportRelativeRect ? await a.convertOffsetParentRelativeRectToViewportRelativeRect({
rect: v,
offsetParent: y,
strategy: l
}) : v);
return {
top: (g.top - b.top + f.top) / _.y,
bottom: (b.bottom - g.bottom + f.bottom) / _.y,
left: (g.left - b.left + f.left) / _.x,
right: (b.right - g.right + f.right) / _.x
}
}
let rc = e => ({
name: "arrow",
options: e,
async fn(t) {
let {
x: n,
y: r,
placement: i,
rects: a,
platform: o,
elements: s
} = t, {
element: l,
padding: c = 0
} = $l(e, t) || {};
if (null == l) return {};
let u = Jl(c),
d = {
x: n,
y: r
},
p = Kl(Ql(i)),
h = Yl(p),
f = await o.getDimensions(l),
m = "y" === p,
g = m ? "clientHeight" : "clientWidth",
v = a.reference[h] + a.reference[p] - d[p] - a.floating[h],
y = d[p] - a.reference[p],
_ = await (null == o.getOffsetParent ? void 0 : o.getOffsetParent(l)),
b = _ ? _[g] : 0;
b && await (null == o.isElement ? void 0 : o.isElement(_)) || (b = s.floating[g] || a.floating[h]);
let x = b / 2 - f[h] / 2 - 1,
k = Fl(u[m ? "top" : "left"], x),
w = Fl(u[m ? "bottom" : "right"], x),
S = b - f[h] - w,
E = b / 2 - f[h] / 2 + (v / 2 - y / 2),
I = zl(k, Fl(E, S)),
O = null != Hl(i) && E != I && a.reference[h] / 2 - (E < k ? k : w) - f[h] / 2 < 0 ? E < k ? k - E : S - E : 0;
return {
[p]: d[p] - O,
data: {
[p]: I,
centerOffset: E - I + O
}
}
}
});
let ic = function(e) {
return void 0 === e && (e = 0), {
name: "offset",
options: e,
async fn(t) {
let {
x: n,
y: r
} = t, i = await async function(e, t) {
let {
placement: n,
platform: r,
elements: i
} = e, a = await (null == r.isRTL ? void 0 : r.isRTL(i.floating)), o = ql(n), s = Hl(n), l = "y" === Ql(n), c = ["left", "top"].includes(o) ? -1 : 1, u = a && l ? -1 : 1, d = $l(t, e), {
mainAxis: p,
crossAxis: h,
alignmentAxis: f
} = "number" == typeof d ? {
mainAxis: d,
crossAxis: 0,
alignmentAxis: null
} : {
mainAxis: 0,
crossAxis: 0,
alignmentAxis: null,
...d
};
return s && "number" == typeof f && (h = "end" === s ? -1 * f : f), l ? {
x: h * u,
y: p * c
} : {
x: p * c,
y: h * u
}
}(t, e);
return {
x: n + i.x,
y: r + i.y,
data: i
}
}
}
},
ac = function(e) {
return void 0 === e && (e = {}), {
name: "shift",
options: e,
async fn(t) {
let {
x: n,
y: r,
placement: i
} = t, {
mainAxis: a = !0,
crossAxis: o = !1,
limiter: s = {
fn: e => {
let {
x: t,
y: n
} = e;
return {
x: t,
y: n
}
}
},
...l
} = $l(e, t), c = {
x: n,
y: r
}, u = await nc(t, l), d = Ql(ql(i)), p = Kl(d), h = c[p], f = c[d];
if (a) {
let e = h + u["y" === p ? "top" : "left"],
t = h - u["y" === p ? "bottom" : "right"];
h = zl(e, Fl(h, t))
}
if (o) {
let e = "y" === d ? "bottom" : "right",
t = f + u["y" === d ? "top" : "left"],
n = f - u[e];
f = zl(t, Fl(f, n))
}
let m = s.fn({
...t,
[p]: h,
[d]: f
});
return {
...m,
data: {
x: m.x - n,
y: m.y - r
}
}
}
}
},
oc = function(e) {
return void 0 === e && (e = {}), {
name: "size",
options: e,
async fn(t) {
let n, r, {
placement: i,
rects: a,
platform: o,
elements: s
} = t,
{
apply: l = (() => {}),
...c
} = $l(e, t),
u = await nc(t, c),
d = ql(i),
p = Hl(i),
h = "y" === Ql(i),
{
width: f,
height: m
} = a.floating;
"top" === d || "bottom" === d ? (n = d, r = p === (await (null == o.isRTL ? void 0 : o.isRTL(s.floating)) ? "start" : "end") ? "left" : "right") : (r = d, n = "end" === p ? "top" : "bottom");
let g = m - u[n],
v = f - u[r],
y = !t.middlewareData.shift,
_ = g,
b = v;
if (h) {
let e = f - u.left - u.right;
b = p || y ? Fl(v, e) : e
} else {
let e = m - u.top - u.bottom;
_ = p || y ? Fl(g, e) : e
}
if (y && !p) {
let e = zl(u.left, 0),
t = zl(u.right, 0),
n = zl(u.top, 0),
r = zl(u.bottom, 0);
h ? b = f - 2 * (0 !== e || 0 !== t ? e + t : zl(u.left, u.right)) : _ = m - 2 * (0 !== n || 0 !== r ? n + r : zl(u.top, u.bottom))
}
await l({
...t,
availableWidth: b,
availableHeight: _
});
let x = await o.getDimensions(s.floating);
return f !== x.width || m !== x.height ? {
reset: {
rects: !0
}
} : {}
}
}
};
function sc(e) {
return uc(e) ? (e.nodeName || "").toLowerCase() : "#document"
}
function lc(e) {
var t;
return (null == e || null == (t = e.ownerDocument) ? void 0 : t.defaultView) || window
}
function cc(e) {
var t;
return null == (t = (uc(e) ? e.ownerDocument : e.document) || window.document) ? void 0 : t.documentElement
}
function uc(e) {
return e instanceof Node || e instanceof lc(e).Node
}
function dc(e) {
return e instanceof Element || e instanceof lc(e).Element
}
function pc(e) {
return e instanceof HTMLElement || e instanceof lc(e).HTMLElement
}
function hc(e) {
return "undefined" != typeof ShadowRoot && (e instanceof ShadowRoot || e instanceof lc(e).ShadowRoot)
}
function fc(e) {
let {
overflow: t,
overflowX: n,
overflowY: r,
display: i
} = yc(e);
return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !["inline", "contents"].includes(i)
}
function mc(e) {
let t = gc(),
n = yc(e);
return "none" !== n.transform || "none" !== n.perspective || !!n.containerType && "normal" !== n.containerType || !t && !!n.backdropFilter && "none" !== n.backdropFilter || !t && !!n.filter && "none" !== n.filter || ["transform", "perspective", "filter"].some((e => (n.willChange || "").includes(e))) || ["paint", "layout", "strict", "content"].some((e => (n.contain || "").includes(e)))
}
function gc() {
return "undefined" != typeof CSS && !!CSS.supports && CSS.supports("-webkit-backdrop-filter", "none")
}
function vc(e) {
return ["html", "body", "#document"].includes(sc(e))
}
function yc(e) {
return lc(e).getComputedStyle(e)
}
function _c(e) {
return dc(e) ? {
scrollLeft: e.scrollLeft,
scrollTop: e.scrollTop
} : {
scrollLeft: e.pageXOffset,
scrollTop: e.pageYOffset
}
}
function bc(e) {
if ("html" === sc(e)) return e;
let t = e.assignedSlot || e.parentNode || hc(e) && e.host || cc(e);
return hc(t) ? t.host : t
}
function xc(e, t) {
var n;
void 0 === t && (t = []);
let r = function e(t) {
let n = bc(t);
return vc(n) ? t.ownerDocument ? t.ownerDocument.body : t.body : pc(n) && fc(n) ? n : e(n)
}(e),
i = r === (null == (n = e.ownerDocument) ? void 0 : n.body),
a = lc(r);
return i ? t.concat(a, a.visualViewport || [], fc(r) ? r : []) : t.concat(r, xc(r))
}
function kc(e) {
let t = yc(e),
n = parseFloat(t.width) || 0,
r = parseFloat(t.height) || 0,
i = pc(e),
a = i ? e.offsetWidth : n,
o = i ? e.offsetHeight : r,
s = Vl(n) !== a || Vl(r) !== o;
return s && (n = a, r = o), {
width: n,
height: r,
$: s
}
}
function wc(e) {
return dc(e) ? e : e.contextElement
}
function Sc(e) {
let t = wc(e);
if (!pc(t)) return Bl(1);
let n = t.getBoundingClientRect(),
{
width: r,
height: i,
$: a
} = kc(t),
o = (a ? Vl(n.width) : n.width) / r,
s = (a ? Vl(n.height) : n.height) / i;
return o && Number.isFinite(o) || (o = 1), s && Number.isFinite(s) || (s = 1), {
x: o,
y: s
}
}
let Ec = Bl(0);
function Ic(e) {
let t = lc(e);
return gc() && t.visualViewport ? {
x: t.visualViewport.offsetLeft,
y: t.visualViewport.offsetTop
} : Ec
}
function Oc(e, t, n, r) {
var i;
void 0 === t && (t = !1), void 0 === n && (n = !1);
let a = e.getBoundingClientRect(),
o = wc(e),
s = Bl(1);
t && (r ? dc(r) && (s = Sc(r)) : s = Sc(e));
let l = (void 0 === (i = n) && (i = !1), !r || i && r !== lc(o) || !i ? Bl(0) : Ic(o)),
c = (a.left + l.x) / s.x,
u = (a.top + l.y) / s.y,
d = a.width / s.x,
p = a.height / s.y;
if (o) {
let e = lc(o),
t = r && dc(r) ? lc(r) : r,
n = e.frameElement;
for (; n && r && t !== e;) {
let e = Sc(n),
t = n.getBoundingClientRect(),
r = yc(n),
i = t.left + (n.clientLeft + parseFloat(r.paddingLeft)) * e.x,
a = t.top + (n.clientTop + parseFloat(r.paddingTop)) * e.y;
c *= e.x, u *= e.y, d *= e.x, p *= e.y, c += i, u += a, n = lc(n).frameElement
}
}
return ec({
width: d,
height: p,
x: c,
y: u
})
}
function Cc(e) {
return Oc(cc(e)).left + _c(e).scrollLeft
}
function Ac(e, t, n) {
let r;
if ("viewport" === t) r = function(e, t) {
let n = lc(e),
r = cc(e),
i = n.visualViewport,
a = r.clientWidth,
o = r.clientHeight,
s = 0,
l = 0;
if (i) {
a = i.width, o = i.height;
let e = gc();
(!e || e && "fixed" === t) && (s = i.offsetLeft, l = i.offsetTop)
}
return {
width: a,
height: o,
x: s,
y: l
}
}(e, n);
else if ("document" === t) r = function(e) {
let t = cc(e),
n = _c(e),
r = e.ownerDocument.body,
i = zl(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth),
a = zl(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight),
o = -n.scrollLeft + Cc(e),
s = -n.scrollTop;
return "rtl" === yc(r).direction && (o += zl(t.clientWidth, r.clientWidth) - i), {
width: i,
height: a,
x: o,
y: s
}
}(cc(e));
else if (dc(t)) r = function(e, t) {
let n = Oc(e, !0, "fixed" === t),
r = n.top + e.clientTop,
i = n.left + e.clientLeft,
a = pc(e) ? Sc(e) : Bl(1);
return {
width: e.clientWidth * a.x,
height: e.clientHeight * a.y,
x: i * a.x,
y: r * a.y
}
}(t, n);
else {
let n = Ic(e);
r = {
...t,
x: t.x - n.x,
y: t.y - n.y
}
}
return ec(r)
}
function Pc(e, t) {
return pc(e) && "fixed" !== yc(e).position ? t ? t(e) : e.offsetParent : null
}
function Tc(e, t) {
let n = lc(e);
if (!pc(e)) return n;
let r = Pc(e, t);
for (; r && ["table", "td", "th"].includes(sc(r)) && "static" === yc(r).position;) r = Pc(r, t);
return r && ("html" === sc(r) || "body" === sc(r) && "static" === yc(r).position && !mc(r)) ? n : r || function(e) {
let t = bc(e);
for (; pc(t) && !vc(t);) {
if (mc(t)) return t;
t = bc(t)
}
return null
}(e) || n
}
let Rc = {
convertOffsetParentRelativeRectToViewportRelativeRect: function(e) {
let {
rect: t,
offsetParent: n,
strategy: r
} = e, i = pc(n), a = cc(n);
if (n === a) return t;
let o = {
scrollLeft: 0,
scrollTop: 0
},
s = Bl(1),
l = Bl(0);
if ((i || !i && "fixed" !== r) && (("body" !== sc(n) || fc(a)) && (o = _c(n)), pc(n))) {
let e = Oc(n);
s = Sc(n), l.x = e.x + n.clientLeft, l.y = e.y + n.clientTop
}
return {
width: t.width * s.x,
height: t.height * s.y,
x: t.x * s.x - o.scrollLeft * s.x + l.x,
y: t.y * s.y - o.scrollTop * s.y + l.y
}
},
getDocumentElement: cc,
getClippingRect: function(e) {
let {
element: t,
boundary: n,
rootBoundary: r,
strategy: i
} = e, a = "clippingAncestors" === n ? function(e, t) {
let n = t.get(e);
if (n) return n;
let r = xc(e).filter((e => dc(e) && "body" !== sc(e))),
i = null,
a = "fixed" === yc(e).position,
o = a ? bc(e) : e;
for (; dc(o) && !vc(o);) {
let t = yc(o),
n = mc(o);
n || "fixed" !== t.position || (i = null);
let s = a ? !n && !i : !n && "static" === t.position && !!i && ["absolute", "fixed"].includes(i.position) || fc(o) && !n && function e(t, n) {
let r = bc(t);
return !(r === n || !dc(r) || vc(r)) && ("fixed" === yc(r).position || e(r, n))
}(e, o);
s ? r = r.filter((e => e !== o)) : i = t, o = bc(o)
}
return t.set(e, r), r
}(t, this._c) : [].concat(n), o = [...a, r], s = o[0], l = o.reduce(((e, n) => {
let r = Ac(t, n, i);
return e.top = zl(r.top, e.top), e.right = Fl(r.right, e.right), e.bottom = Fl(r.bottom, e.bottom), e.left = zl(r.left, e.left), e
}), Ac(t, s, i));
return {
width: l.right - l.left,
height: l.bottom - l.top,
x: l.left,
y: l.top
}
},
getOffsetParent: Tc,
getElementRects: async function(e) {
let {
reference: t,
floating: n,
strategy: r
} = e, i = this.getOffsetParent || Tc, a = this.getDimensions;
return {
reference: function(e, t, n) {
let r = pc(t),
i = cc(t),
a = "fixed" === n,
o = Oc(e, !0, a, t),
s = {
scrollLeft: 0,
scrollTop: 0
},
l = Bl(0);
if (r || !r && !a)
if (("body" !== sc(t) || fc(i)) && (s = _c(t)), r) {
let e = Oc(t, !0, a, t);
l.x = e.x + t.clientLeft, l.y = e.y + t.clientTop
} else i && (l.x = Cc(i));
return {
x: o.left + s.scrollLeft - l.x,
y: o.top + s.scrollTop - l.y,
width: o.width,
height: o.height
}
}(t, await i(n), r),
floating: {
x: 0,
y: 0,
...await a(n)
}
}
},
getClientRects: function(e) {
return Array.from(e.getClientRects())
},
getDimensions: function(e) {
return kc(e)
},
getScale: Sc,
isElement: dc,
isRTL: function(e) {
return "rtl" === yc(e).direction
}
};
function Dc(e, t, n, r) {
let i;
void 0 === r && (r = {});
let {
ancestorScroll: a = !0,
ancestorResize: o = !0,
elementResize: s = "function" == typeof ResizeObserver,
layoutShift: l = "function" == typeof IntersectionObserver,
animationFrame: c = !1
} = r, u = wc(e), d = a || o ? [...u ? xc(u) : [], ...xc(t)] : [];
d.forEach((e => {
a && e.addEventListener("scroll", n, {
passive: !0
}), o && e.addEventListener("resize", n)
}));
let p = u && l ? function(e, t) {
let n, r = null,
i = cc(e);
function a() {
clearTimeout(n), r && r.disconnect(), r = null
}
return function o(s, l) {
void 0 === s && (s = !1), void 0 === l && (l = 1), a();
let {
left: c,
top: u,
width: d,
height: p
} = e.getBoundingClientRect();
if (s || t(), !d || !p) return;
let h = {
rootMargin: -Ul(u) + "px " + -Ul(i.clientWidth - (c + d)) + "px " + -Ul(i.clientHeight - (u + p)) + "px " + -Ul(c) + "px",
threshold: zl(0, Fl(1, l)) || 1
},
f = !0;
function m(e) {
let t = e[0].intersectionRatio;
if (t !== l) {
if (!f) return o();
t ? o(!1, t) : n = setTimeout((() => {
o(!1, 1e-7)
}), 100)
}
f = !1
}
try {
r = new IntersectionObserver(m, {
...h,
root: i.ownerDocument
})
} catch (e) {
r = new IntersectionObserver(m, h)
}
r.observe(e)
}(!0), a
}(u, n) : null,
h = -1,
f = null;
s && (f = new ResizeObserver((e => {
let [r] = e;
r && r.target === u && f && (f.unobserve(t), cancelAnimationFrame(h), h = requestAnimationFrame((() => {
f && f.observe(t)
}))), n()
})), u && !c && f.observe(u), f.observe(t));
let m = c ? Oc(e) : null;
return c && function t() {
let r = Oc(e);
m && (r.x !== m.x || r.y !== m.y || r.width !== m.width || r.height !== m.height) && n(), m = r, i = requestAnimationFrame(t)
}(), n(), () => {
d.forEach((e => {
a && e.removeEventListener("scroll", n), o && e.removeEventListener("resize", n)
})), p && p(), f && f.disconnect(), f = null, c && cancelAnimationFrame(i)
}
}
let Lc = (e, t, n) => {
let r = new Map,
i = {
platform: Rc,
...n
},
a = {
...i.platform,
_c: r
};
return (async (e, t, n) => {
let {
placement: r = "bottom",
strategy: i = "absolute",
middleware: a = [],
platform: o
} = n, s = a.filter(Boolean), l = await (null == o.isRTL ? void 0 : o.isRTL(t)), c = await o.getElementRects({
reference: e,
floating: t,
strategy: i
}), {
x: u,
y: d
} = tc(c, r, l), p = r, h = {}, f = 0;
for (let m = 0; m < s.length; m++) {
let {
name: n,
fn: a
} = s[m], {
x: g,
y: v,
data: y,
reset: _
} = await a({
x: u,
y: d,
initialPlacement: r,
placement: p,
strategy: i,
middlewareData: h,
rects: c,
platform: o,
elements: {
reference: e,
floating: t
}
});
u = null != g ? g : u, d = null != v ? v : d, h = {
...h,
[n]: {
...h[n],
...y
}
}, _ && f <= 50 && (f++, "object" == typeof _ && (_.placement && (p = _.placement), _.rects && (c = !0 === _.rects ? await o.getElementRects({
reference: e,
floating: t,
strategy: i
}) : _.rects), ({
x: u,
y: d
} = tc(c, p, l))), m = -1)
}
return {
x: u,
y: d,
placement: p,
strategy: i,
middlewareData: h
}
})(e, t, {
...i,
platform: a
})
},
Nc = e => ({
name: "arrow",
options: e,
fn(t) {
let {
element: n,
padding: r
} = "function" == typeof e ? e(t) : e;
if (n && {}.hasOwnProperty.call(n, "current")) {
if (null != n.current) return rc({
element: n.current,
padding: r
}).fn(t)
} else if (n) return rc({
element: n,
padding: r
}).fn(t);
return {}
}
});
var Mc = "undefined" != typeof document ? Ee.useLayoutEffect : Ee.useEffect;
function jc(e, t) {
let n, r, i;
if (e === t) return !0;
if (typeof e != typeof t) return !1;
if ("function" == typeof e && e.toString() === t.toString()) return !0;
if (e && t && "object" == typeof e) {
if (Array.isArray(e)) {
if ((n = e.length) != t.length) return !1;
for (r = n; 0 != r--;)
if (!jc(e[r], t[r])) return !1;
return !0
}
if ((n = (i = Object.keys(e)).length) !== Object.keys(t).length) return !1;
for (r = n; 0 != r--;)
if (!{}.hasOwnProperty.call(t, i[r])) return !1;
for (r = n; 0 != r--;) {
let n = i[r];
if (("_owner" !== n || !e.$$typeof) && !jc(e[n], t[n])) return !1
}
return !0
}
return e != e && t != t
}
function Fc(e) {
if ("undefined" == typeof window) return 1;
return (e.ownerDocument.defaultView || window).devicePixelRatio || 1
}
function zc(e, t) {
let n = Fc(e);
return Math.round(t * n) / n
}
function Vc(e) {
let t = Ee.useRef(e);
return Mc((() => {
t.current = e
})), t
}
var Uc = 'input,select,textarea,a[href],button,[tabindex]:not(slot),audio[controls],video[controls],[contenteditable]:not([contenteditable="false"]),details>summary:first-of-type,details',
Bc = "undefined" == typeof Element,
Gc = Bc ? function() {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector,
Wc = !Bc && Element.prototype.getRootNode ? function(e) {
return e.getRootNode()
} : function(e) {
return e.ownerDocument
},
$c = function e(t, n, r) {
for (var i = [], a = Array.from(t); a.length;) {
var o = a.shift();
if ("SLOT" === o.tagName) {
var s = o.assignedElements(),
l = e(s.length ? s : o.children, !0, r);
r.flatten ? i.push.apply(i, l) : i.push({
scopeParent: o,
candidates: l
})
} else {
Gc.call(o, Uc) && r.filter(o) && (n || !t.includes(o)) && i.push(o);
var c = o.shadowRoot || "function" == typeof r.getShadowRoot && r.getShadowRoot(o),
u = !r.shadowRootFilter || r.shadowRootFilter(o);
if (c && u) {
var d = e(!0 === c ? o.children : c.children, !0, r);
r.flatten ? i.push.apply(i, d) : i.push({
scopeParent: o,
candidates: d
})
} else a.unshift.apply(a, o.children)
}
}
return i
},
qc = function(e, t) {
return e.tabIndex < 0 && (t || /^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName) || e.isContentEditable) && isNaN(parseInt(e.getAttribute("tabindex"), 10)) ? 0 : e.tabIndex
},
Hc = function(e, t) {
return e.tabIndex === t.tabIndex ? e.documentOrder - t.documentOrder : e.tabIndex - t.tabIndex
},
Kc = function(e) {
return "INPUT" === e.tagName
},
Yc = function(e) {
var t = e.getBoundingClientRect(),
n = t.width,
r = t.height;
return 0 === n && 0 === r
},
Qc = function(e, t) {
var n = t.displayCheck,
r = t.getShadowRoot;
if ("hidden" === getComputedStyle(e).visibility) return !0;
var i = Gc.call(e, "details>summary:first-of-type") ? e.parentElement : e;
if (Gc.call(i, "details:not([open]) *")) return !0;
if (n && "full" !== n && "legacy-full" !== n) {
if ("non-zero-area" === n) return Yc(e)
} else {
if ("function" == typeof r) {
for (var a = e; e;) {
var o = e.parentElement,
s = Wc(e);
if (o && !o.shadowRoot && !0 === r(o)) return Yc(e);
e = e.assignedSlot ? e.assignedSlot : o || s === e.ownerDocument ? o : s.host
}
e = a
}
if (function(e) {
for (var t, n, r = Wc(e).host, i = !!(null !== (t = r) && void 0 !== t && t.ownerDocument.contains(r) || e.ownerDocument.contains(e)); !i && r;) i = !(null === (n = r = Wc(r).host) || void 0 === n || !n.ownerDocument.contains(r));
return i
}(e)) return !e.getClientRects().length;
if ("legacy-full" !== n) return !0
}
return !1
},
Zc = function(e, t) {
var n, r, i;
return !(Kc(n = t) && "radio" === n.type && ! function(e) {
if (!e.name) return !0;
var t, n = e.form || Wc(e),
r = function(e) {
return n.querySelectorAll('input[type="radio"][name="' + e + '"]')
};
if ("undefined" != typeof window && void 0 !== window.CSS && "function" == typeof window.CSS.escape) t = r(window.CSS.escape(e.name));
else try {
t = r(e.name)
} catch (e) {
return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s", e.message), !1
}
var i = function(e, t) {
for (var n = 0; n < e.length; n++)
if (e[n].checked && e[n].form === t) return e[n]
}(t, e.form);
return !i || i === e
}(n) || 0 > qc(t)) && (r = e, !((i = t).disabled || Kc(i) && "hidden" === i.type || Qc(i, r) || "DETAILS" === i.tagName && Array.prototype.slice.apply(i.children).some((function(e) {
return "SUMMARY" === e.tagName
})) || function(e) {
if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))
for (var t = e.parentElement; t;) {
if ("FIELDSET" === t.tagName && t.disabled) {
for (var n = 0; n < t.children.length; n++) {
var r = t.children.item(n);
if ("LEGEND" === r.tagName) return !!Gc.call(t, "fieldset[disabled] *") || !r.contains(e)
}
return !0
}
t = t.parentElement
}
return !1
}(i)))
},
Xc = function(e) {
var t = parseInt(e.getAttribute("tabindex"), 10);
return !!isNaN(t) || t >= 0
},
Jc = function e(t) {
var n = [],
r = [];
return t.forEach((function(t, i) {
var a = !!t.scopeParent,
o = a ? t.scopeParent : t,
s = qc(o, a),
l = a ? e(t.candidates) : o;
0 === s ? a ? n.push.apply(n, l) : n.push(o) : r.push({
documentOrder: i,
tabIndex: s,
item: t,
isScope: a,
content: l
})
})), r.sort(Hc).reduce((function(e, t) {
return t.isScope ? e.push.apply(e, t.content) : e.push(t.content), e
}), []).concat(n)
},
eu = function(e, t) {
return Jc((t = t || {}).getShadowRoot ? $c([e], t.includeContainer, {
filter: Zc.bind(null, t),
flatten: !1,
getShadowRoot: t.getShadowRoot,
shadowRootFilter: Xc
}) : function(e, t, n) {
var r = Array.prototype.slice.apply(e.querySelectorAll(Uc));
return t && Gc.call(e, Uc) && r.unshift(e), r.filter(n)
}(e, t.includeContainer, Zc.bind(null, t)))
};
function tu(e) {
return Ee.useMemo((() => e.every((e => null == e)) ? null : t => {
e.forEach((e => {
"function" == typeof e ? e(t) : null != e && (e.current = t)
}))
}), e)
}
let nu = Ie["useInsertionEffect".toString()] || (e => e());
function ru(e) {
let t = Ee.useRef((() => {
0
}));
return nu((() => {
t.current = e
})), Ee.useCallback((function() {
for (var e = arguments.length, n = Array(e), r = 0; r < e; r++) n[r] = arguments[r];
return null == t.current ? void 0 : t.current(...n)
}), [])
}
let iu = "ArrowUp",
au = "ArrowDown",
ou = "ArrowLeft",
su = "ArrowRight";
function lu(e, t, n) {
return Math.floor(e / t) !== n
}
function cu(e, t) {
return t < 0 || t >= e.current.length
}
function uu(e, t) {
return pu(e, {
disabledIndices: t
})
}
function du(e, t) {
return pu(e, {
decrement: !0,
startingIndex: e.current.length,
disabledIndices: t
})
}
function pu(e, t) {
let {
startingIndex: n = -1,
decrement: r = !1,
disabledIndices: i,
amount: a = 1
} = void 0 === t ? {} : t, o = e.current, s = i ? e => i.includes(e) : e => {
let t = o[e];
return null == t || t.hasAttribute("disabled") || "true" === t.getAttribute("aria-disabled")
}, l = n;
do {
l += r ? -a : a
} while (l >= 0 && l <= o.length - 1 && s(l));
return l
}
let hu = 0;
function fu(e, t) {
void 0 === t && (t = {});
let {
preventScroll: n = !1,
cancelPrevious: r = !0,
sync: i = !1
} = t;
r && cancelAnimationFrame(hu);
let a = () => null == e ? void 0 : e.focus({
preventScroll: n
});
i ? a() : hu = requestAnimationFrame(a)
}
var mu = "undefined" != typeof document ? Ee.useLayoutEffect : Ee.useEffect;
function gu(e, t) {
let n = e.compareDocumentPosition(t);
return n & Node.DOCUMENT_POSITION_FOLLOWING || n & Node.DOCUMENT_POSITION_CONTAINED_BY ? -1 : n & Node.DOCUMENT_POSITION_PRECEDING || n & Node.DOCUMENT_POSITION_CONTAINS ? 1 : 0
}
let vu = Ee.createContext({
register: () => {},
unregister: () => {},
map: new Map,
elementsRef: {
current: []
}
});
function yu(e) {
let {
children: t,
elementsRef: n,
labelsRef: r
} = e, [i, a] = Ee.useState((() => new Map)), o = Ee.useCallback((e => {
a((t => new Map(t).set(e, null)))
}), []), s = Ee.useCallback((e => {
a((t => {
let n = new Map(t);
return n.delete(e), n
}))
}), []);
return mu((() => {
let e = new Map(i);
Array.from(e.keys()).sort(gu).forEach(((t, n) => {
e.set(t, n)
})), ! function(e, t) {
if (e.size !== t.size) return !1;
for (let [n, r] of e.entries())
if (r !== t.get(n)) return !1;
return !0
}(i, e) && a(e)
}), [i]), Ee.createElement(vu.Provider, {
value: Ee.useMemo((() => ({
register: o,
unregister: s,
map: i,
elementsRef: n,
labelsRef: r
})), [o, s, i, n, r])
}, t)
}
function _u(e) {
let {
label: t
} = void 0 === e ? {} : e, [n, r] = Ee.useState(null), i = Ee.useRef(null), {
register: a,
unregister: o,
map: s,
elementsRef: l,
labelsRef: c
} = Ee.useContext(vu), u = Ee.useCallback((e => {
if (i.current = e, null !== n && (l.current[n] = e, c)) {
var r;
let i = void 0 !== t;
c.current[n] = i ? t : null != (r = null == e ? void 0 : e.textContent) ? r : null
}
}), [n, l, c, t]);
return mu((() => {
let e = i.current;
if (e) return a(e), () => {
o(e)
}
}), [a, o]), mu((() => {
let e = i.current ? s.get(i.current) : null;
null != e && r(e)
}), [s]), Ee.useMemo((() => ({
ref: u,
index: null == n ? -1 : n
})), [n, u])
}
function bu() {
return (bu = Object.assign ? Object.assign.bind() : 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)
}
let xu = !1,
ku = 0,
wu = () => "floating-ui-" + ku++,
Su = Ie["useId".toString()] || function() {
let [e, t] = Ee.useState((() => xu ? wu() : void 0));
return mu((() => {
null == e && t(wu())
}), []), Ee.useEffect((() => {
xu || (xu = !0)
}), []), e
},
Eu = Ee.forwardRef((function(e, t) {
let {
context: {
placement: n,
elements: {
floating: r
},
middlewareData: {
arrow: i
}
},
width: a = 14,
height: o = 7,
tipRadius: s = 0,
strokeWidth: l = 0,
staticOffset: c,
stroke: u,
d: d,
style: {
transform: p,
...h
} = {},
...f
} = e, m = Su();
if (!r) return null;
l *= 2;
let g = l / 2,
v = a / 2 * (-s / 8 + 1),
y = o / 2 * s / 4,
[_, b] = n.split("-"),
x = Rc.isRTL(r),
k = !!d,
w = c && "end" === b ? "right" : "left";
c && x && (w = "end" === b ? "left" : "right");
let S = null != (null == i ? void 0 : i.x) ? c || i.x : "",
E = null != (null == i ? void 0 : i.y) ? c || i.y : "",
I = d || "M0,0 H" + a + " L" + (a - v) + "," + (o - y) + " Q" + a / 2 + "," + o + " " + v + "," + (o - y) + " Z";
return Ee.createElement("svg", bu({}, f, {
"aria-hidden": !0,
ref: t,
width: k ? a : a + l,
height: a,
viewBox: "0 0 " + a + " " + (o > a ? o : a),
style: {
position: "absolute",
pointerEvents: "none",
[w]: S,
[c && "end" === b ? "bottom" : "top"]: E,
[_]: "top" === _ || "bottom" === _ || k ? "100%" : "calc(100% - " + l / 2 + "px)",
transform: "" + {
top: k ? "rotate(180deg)" : "",
left: k ? "rotate(90deg)" : "rotate(-90deg)",
bottom: k ? "" : "rotate(180deg)",
right: k ? "rotate(-90deg)" : "rotate(90deg)"
} [_] + (null != p ? p : ""),
...h
}
}), l > 0 && Ee.createElement("path", {
clipPath: "url(#" + m + ")",
fill: "none",
stroke: u,
strokeWidth: l + (d ? 0 : 1),
d: I
}), Ee.createElement("path", {
stroke: l && !d ? f.fill : "none",
d: I
}), Ee.createElement("clipPath", {
id: m
}, Ee.createElement("rect", {
x: -g,
y: g * (k ? -1 : 1),
width: a + l,
height: a
})))
}));
function Iu() {
let e = new Map;
return {
emit(t, n) {
var r;
null == (r = e.get(t)) || r.forEach((e => e(n)))
},
on(t, n) {
e.set(t, [...e.get(t) || [], n])
},
off(t, n) {
var r;
e.set(t, (null == (r = e.get(t)) ? void 0 : r.filter((e => e !== n))) || [])
}
}
}
let Ou = Ee.createContext(null),
Cu = Ee.createContext(null),
Au = () => {
var e;
return (null == (e = Ee.useContext(Ou)) ? void 0 : e.id) || null
},
Pu = () => Ee.useContext(Cu);
function Tu(e) {
let t = Su(),
n = Pu(),
r = Au(),
i = e || r;
return mu((() => {
let e = {
id: t,
parentId: i
};
return null == n || n.addNode(e), () => {
null == n || n.removeNode(e)
}
}), [n, t, i]), t
}
function Ru(e) {
let {
children: t,
id: n
} = e, r = Au();
return Ee.createElement(Ou.Provider, {
value: Ee.useMemo((() => ({
id: n,
parentId: r
})), [n, r])
}, t)
}
function Du(e) {
let {
children: t
} = e, n = Ee.useRef([]), r = Ee.useCallback((e => {
n.current = [...n.current, e]
}), []), i = Ee.useCallback((e => {
n.current = n.current.filter((t => t !== e))
}), []), a = Ee.useState((() => Iu()))[0];
return Ee.createElement(Cu.Provider, {
value: Ee.useMemo((() => ({
nodesRef: n,
addNode: r,
removeNode: i,
events: a
})), [n, r, i, a])
}, t)
}
function Lu(e) {
return "data-floating-ui-" + e
}
function Nu(e) {
let t = (0, Ee.useRef)(e);
return mu((() => {
t.current = e
})), t
}
let Mu = Lu("safe-polygon");
function ju(e, t, n) {
return n && !Tl(n) ? 0 : "number" == typeof e ? e : null == e ? void 0 : e[t]
}
function Fu(e, t) {
let n = e.filter((e => {
var n;
return e.parentId === t && (null == (n = e.context) ? void 0 : n.open)
})),
r = n;
for (; r.length;) r = e.filter((e => {
var t;
return null == (t = r) ? void 0 : t.some((t => {
var n;
return e.parentId === t.id && (null == (n = e.context) ? void 0 : n.open)
}))
})), n = n.concat(r);
return n
}
let zu = new WeakMap,
Vu = new WeakSet,
Uu = {},
Bu = 0,
Gu = e => e && (e.host || Gu(e.parentNode));
function Wu(e, t, n) {
void 0 === t && (t = !1), void 0 === n && (n = !1);
let r = Rl(e[0]).body;
return function(e, t, n, r) {
let i = "data-floating-ui-inert",
a = r ? "inert" : n ? "aria-hidden" : null,
o = ((e, t) => t.map((t => {
if (e.contains(t)) return t;
let n = Gu(t);
return e.contains(n) ? n : null
})).filter((e => null != e)))(t, e),
s = new Set,
l = new Set(o),
c = [];
Uu[i] || (Uu[i] = new WeakMap);
let u = Uu[i];
return o.forEach((function e(t) {
t && !s.has(t) && (s.add(t), t.parentNode && e(t.parentNode))
})),
function e(t) {
!t || l.has(t) || Array.prototype.forEach.call(t.children, (t => {
if (s.has(t)) e(t);
else {
let e = a ? t.getAttribute(a) : null,
n = null !== e && "false" !== e,
r = (zu.get(t) || 0) + 1,
o = (u.get(t) || 0) + 1;
zu.set(t, r), u.set(t, o), c.push(t), 1 === r && n && Vu.add(t), 1 === o && t.setAttribute(i, ""), !n && a && t.setAttribute(a, "true")
}
}))
}(t), s.clear(), Bu++, () => {
c.forEach((e => {
let t = (zu.get(e) || 0) - 1,
n = (u.get(e) || 0) - 1;
zu.set(e, t), u.set(e, n), t || (!Vu.has(e) && a && e.removeAttribute(a), Vu.delete(e)), n || e.removeAttribute(i)
})), --Bu || (zu = new WeakMap, zu = new WeakMap, Vu = new WeakSet, Uu = {})
}
}(e.concat(Array.from(r.querySelectorAll("[aria-live]"))), r, t, n)
}
let $u = () => ({
getShadowRoot: !0,
displayCheck: "function" == typeof ResizeObserver && ResizeObserver.toString().includes("[native code]") ? "full" : "none"
});
function qu(e, t) {
let n = eu(e, $u());
"prev" === t && n.reverse();
let r = n.indexOf(wl(Rl(e)));
return n.slice(r + 1)[0]
}
function Hu() {
return qu(document.body, "next")
}
function Ku() {
return qu(document.body, "prev")
}
function Yu(e, t) {
let n = t || e.currentTarget,
r = e.relatedTarget;
return !r || !Sl(n, r)
}
let Qu = {
border: 0,
clip: "rect(0 0 0 0)",
height: "1px",
margin: "-1px",
overflow: "hidden",
padding: 0,
position: "fixed",
whiteSpace: "nowrap",
width: "1px",
top: 0,
left: 0
};
function Zu(e) {
"Tab" === e.key && (e.target, clearTimeout(undefined))
}
let Xu = Ee.forwardRef((function(e, t) {
let [n, r] = Ee.useState();
mu((() => (Cl() && r("button"), document.addEventListener("keydown", Zu), () => {
document.removeEventListener("keydown", Zu)
})), []);
let i = {
ref: t,
tabIndex: 0,
role: n,
"aria-hidden": !n || void 0,
[Lu("focus-guard")]: "",
style: Qu
};
return Ee.createElement("span", bu({}, e, i))
})),
Ju = Ee.createContext(null);
function ed(e) {
let {
children: t,
id: n,
root: r = null,
preserveTabOrder: i = !0
} = e, a = function(e) {
let {
id: t,
root: n
} = void 0 === e ? {} : e, [r, i] = Ee.useState(null), a = Su(), o = td(), s = Ee.useMemo((() => ({
id: t,
root: n,
portalContext: o,
uniqueId: a
})), [t, n, o, a]), l = Ee.useRef();
return mu((() => () => {
null == r || r.remove()
}), [r, s]), mu((() => {
if (l.current === s) return;
l.current = s;
let {
id: e,
root: t,
portalContext: n,
uniqueId: r
} = s, a = e ? document.getElementById(e) : null, o = Lu("portal");
if (a) {
let e = document.createElement("div");
e.id = r, e.setAttribute(o, ""), a.appendChild(e), i(e)
} else {
let a = t || (null == n ? void 0 : n.portalNode);
a && !bl(a) && (a = a.current), a = a || document.body;
let s = null;
e && ((s = document.createElement("div")).id = e, a.appendChild(s));
let l = document.createElement("div");
l.id = r, l.setAttribute(o, ""), (a = s || a).appendChild(l), i(l)
}
}), [s]), r
}({
id: n,
root: r
}), [o, s] = Ee.useState(null), l = Ee.useRef(null), c = Ee.useRef(null), u = Ee.useRef(null), d = Ee.useRef(null), p = !!o && !o.modal && o.open && i && !(!r && !a);
return Ee.useEffect((() => {
if (a && i && (null == o || !o.modal)) return a.addEventListener("focusin", e, !0), a.addEventListener("focusout", e, !0), () => {
a.removeEventListener("focusin", e, !0), a.removeEventListener("focusout", e, !0)
};
function e(e) {
if (a && Yu(e)) {
("focusin" === e.type ? function(e) {
e.querySelectorAll("[data-tabindex]").forEach((e => {
let t = e.dataset.tabindex;
delete e.dataset.tabindex, t ? e.setAttribute("tabindex", t) : e.removeAttribute("tabindex")
}))
} : function(e) {
eu(e, $u()).forEach((e => {
e.dataset.tabindex = e.getAttribute("tabindex") || "", e.setAttribute("tabindex", "-1")
}))
})(a)
}
}
}), [a, i, null == o ? void 0 : o.modal]), Ee.createElement(Ju.Provider, {
value: Ee.useMemo((() => ({
preserveTabOrder: i,
beforeOutsideRef: l,
afterOutsideRef: c,
beforeInsideRef: u,
afterInsideRef: d,
portalNode: a,
setFocusManagerState: s
})), [i, a])
}, p && a && Ee.createElement(Xu, {
"data-type": "outside",
ref: l,
onFocus: e => {
if (Yu(e, a)) {
var t;
null == (t = u.current) || t.focus()
} else {
let e = Ku() || (null == o ? void 0 : o.refs.domReference.current);
null == e || e.focus()
}
}
}), p && a && Ee.createElement("span", {
"aria-owns": a.id,
style: Qu
}), a && (0, Do.createPortal)(t, a), p && a && Ee.createElement(Xu, {
"data-type": "outside",
ref: c,
onFocus: e => {
if (Yu(e, a)) {
var t;
null == (t = d.current) || t.focus()
} else {
let t = Hu() || (null == o ? void 0 : o.refs.domReference.current);
null == t || t.focus(), (null == o ? void 0 : o.closeOnFocusOut) && (null == o || o.onOpenChange(!1, e.nativeEvent))
}
}
}))
}
let td = () => Ee.useContext(Ju),
nd = Ee.forwardRef((function(e, t) {
return Ee.createElement("button", bu({}, e, {
type: "button",
ref: t,
tabIndex: -1,
style: Qu
}))
}));
function rd(e) {
let {
context: t,
children: n,
disabled: r = !1,
order: i = ["content"],
guards: a = !0,
initialFocus: o = 0,
returnFocus: s = !0,
modal: l = !0,
visuallyHiddenDismiss: c = !1,
closeOnFocusOut: u = !0
} = e, {
open: d,
refs: p,
nodeId: h,
onOpenChange: f,
events: m,
dataRef: g,
elements: {
domReference: v,
floating: y
}
} = t, _ = "number" == typeof o && o < 0, b = "combobox" === (null == v ? void 0 : v.getAttribute("role")) && Nl(v) && _, x = !b && l, k = !("undefined" != typeof HTMLElement && "inert" in HTMLElement.prototype) || a, w = Nu(i), S = Nu(o), E = Nu(s), I = Pu(), O = td(), C = Ee.useRef(null), A = Ee.useRef(null), P = Ee.useRef(!1), T = Ee.useRef(null), R = Ee.useRef(!1), D = null != O, L = Ee.useCallback((function(e) {
return void 0 === e && (e = y), e ? eu(e, $u()) : []
}), [y]), N = Ee.useCallback((e => {
let t = L(e);
return w.current.map((e => v && "reference" === e ? v : y && "floating" === e ? y : t)).filter(Boolean).flat()
}), [v, y, w, L]);
function M(e) {
return !r && c && x ? Ee.createElement(nd, {
ref: "start" === e ? C : A,
onClick: e => f(!1, e.nativeEvent)
}, "string" == typeof c ? c : "Dismiss") : null
}
Ee.useEffect((() => {
if (r || !x) return;
function e(e) {
if ("Tab" === e.key) {
Sl(y, wl(Rl(y))) && 0 === L().length && !b && Ml(e);
let t = N(),
n = Ll(e);
"reference" === w.current[0] && n === v && (Ml(e), e.shiftKey ? fu(t[t.length - 1]) : fu(t[1])), "floating" === w.current[1] && n === y && e.shiftKey && (Ml(e), fu(t[0]))
}
}
let t = Rl(y);
return t.addEventListener("keydown", e), () => {
t.removeEventListener("keydown", e)
}
}), [r, v, y, x, w, p, b, L, N]), Ee.useEffect((() => {
if (!r && u && y && xl(v)) return v.addEventListener("focusout", t), v.addEventListener("pointerdown", e), x || y.addEventListener("focusout", t), () => {
v.removeEventListener("focusout", t), v.removeEventListener("pointerdown", e), x || y.removeEventListener("focusout", t)
};
function e() {
R.current = !0, setTimeout((() => {
R.current = !1
}))
}
function t(e) {
let t = e.relatedTarget;
queueMicrotask((() => {
let n = !(Sl(v, t) || Sl(y, t) || Sl(t, y) || Sl(null == O ? void 0 : O.portalNode, t) || null != t && t.hasAttribute(Lu("focus-guard")) || I && (Fu(I.nodesRef.current, h).find((e => {
var n, r;
return Sl(null == (n = e.context) ? void 0 : n.elements.floating, t) || Sl(null == (r = e.context) ? void 0 : r.elements.domReference, t)
})) || function(e, t) {
var n;
let r = [],
i = null == (n = e.find((e => e.id === t))) ? void 0 : n.parentId;
for (; i;) {
let t = e.find((e => e.id === i));
i = null == t ? void 0 : t.parentId, t && (r = r.concat(t))
}
return r
}(I.nodesRef.current, h).find((e => {
var n, r;
return (null == (n = e.context) ? void 0 : n.elements.floating) === t || (null == (r = e.context) ? void 0 : r.elements.domReference) === t
}))));
t && n && !R.current && t !== T.current && (P.current = !0, f(!1, e))
}))
}
}), [r, v, y, x, h, I, O, f, u]), Ee.useEffect((() => {
var e;
if (r) return;
let t = Array.from((null == O || null == (e = O.portalNode) ? void 0 : e.querySelectorAll("[" + Lu("portal") + "]")) || []);
if (y) {
let e = [y, ...t, C.current, A.current, w.current.includes("reference") || b ? v : null].filter((e => null != e)),
n = l || b ? Wu(e, k, !k) : Wu(e);
return () => {
n()
}
}
}), [r, v, y, l, w, O, b, k]), mu((() => {
if (r || !y) return;
let e = wl(Rl(y));
queueMicrotask((() => {
let t = N(y),
n = S.current,
r = ("number" == typeof n ? t[n] : n.current) || y,
i = Sl(y, e);
_ || i || !d || fu(r, {
preventScroll: r === y
})
}))
}), [r, d, y, _, N, S]), mu((() => {
if (r || !y) return;
let e = !1,
t = Rl(y),
n = wl(t),
i = g.current;
function a(t) {
let {
reason: n,
event: r,
nested: i
} = t;
"escape-key" === n && p.domReference.current && (T.current = p.domReference.current), "hover" === n && "mouseleave" === r.type && (P.current = !0), "outside-press" === n && (i ? (P.current = !1, e = !0) : P.current = !(Il(r) || Ol(r)))
}
return T.current = n, m.on("openchange", a), () => {
m.off("openchange", a);
let r = wl(t),
o = Sl(y, r) || I && Fu(I.nodesRef.current, h).some((e => {
var t;
return Sl(null == (t = e.context) ? void 0 : t.elements.floating, r)
}));
(o || i.openEvent && ["click", "mousedown"].includes(i.openEvent.type)) && p.domReference.current && (T.current = p.domReference.current), E.current && xl(T.current) && !P.current && (n === r || r === t.body || o) && fu(T.current, {
cancelPrevious: !1,
preventScroll: e
})
}
}), [r, y, E, g, p, m, I, h]), mu((() => {
if (!r && O) return O.setFocusManagerState({
modal: x,
closeOnFocusOut: u,
open: d,
onOpenChange: f,
refs: p
}), () => {
O.setFocusManagerState(null)
}
}), [r, O, x, d, f, p, u]), mu((() => {
if (r || !y || "function" != typeof MutationObserver || _) return;
let e = () => {
let e = y.getAttribute("tabindex");
w.current.includes("floating") || wl(Rl(y)) !== p.domReference.current && 0 === L().length ? "0" !== e && y.setAttribute("tabindex", "0") : "-1" !== e && y.setAttribute("tabindex", "-1")
};
e();
let t = new MutationObserver(e);
return t.observe(y, {
childList: !0,
subtree: !0,
attributes: !0
}), () => {
t.disconnect()
}
}), [r, y, p, w, L, _]);
let j = !r && k && (D || x);
return Ee.createElement(Ee.Fragment, null, j && Ee.createElement(Xu, {
"data-type": "inside",
ref: null == O ? void 0 : O.beforeInsideRef,
onFocus: e => {
if (x) {
let e = N();
fu("reference" === i[0] ? e[0] : e[e.length - 1])
} else if (null != O && O.preserveTabOrder && O.portalNode)
if (P.current = !1, Yu(e, O.portalNode)) {
let e = Hu() || v;
null == e || e.focus()
} else {
var t;
null == (t = O.beforeOutsideRef.current) || t.focus()
}
}
}), !b && M("start"), n, M("end"), j && Ee.createElement(Xu, {
"data-type": "inside",
ref: null == O ? void 0 : O.afterInsideRef,
onFocus: e => {
if (x) fu(N()[0]);
else if (null != O && O.preserveTabOrder && O.portalNode)
if (u && (P.current = !0), Yu(e, O.portalNode)) {
let e = Ku() || v;
null == e || e.focus()
} else {
var t;
null == (t = O.afterOutsideRef.current) || t.focus()
}
}
}))
}
let id = new Set,
ad = Ee.forwardRef((function(e, t) {
let {
lockScroll: n = !1,
...r
} = e, i = Su();
return mu((() => {
if (!n) return;
id.add(i);
let e = /iP(hone|ad|od)|iOS/.test(El()),
t = document.body.style,
r = Math.round(document.documentElement.getBoundingClientRect().left) + document.documentElement.scrollLeft ? "paddingLeft" : "paddingRight",
a = window.innerWidth - document.documentElement.clientWidth,
o = t.left ? parseFloat(t.left) : window.pageXOffset,
s = t.top ? parseFloat(t.top) : window.pageYOffset;
if (t.overflow = "hidden", a && (t[r] = a + "px"), e) {
var l, c;
let e = (null == (l = window.visualViewport) ? void 0 : l.offsetLeft) || 0,
n = (null == (c = window.visualViewport) ? void 0 : c.offsetTop) || 0;
Object.assign(t, {
position: "fixed",
top: -(s - Math.floor(n)) + "px",
left: -(o - Math.floor(e)) + "px",
right: "0"
})
}
return () => {
id.delete(i), 0 === id.size && (Object.assign(t, {
overflow: "",
[r]: ""
}), e && (Object.assign(t, {
position: "",
top: "",
left: "",
right: ""
}), window.scrollTo(o, s)))
}
}), [i, n]), Ee.createElement("div", bu({
ref: t
}, r, {
style: {
position: "fixed",
overflow: "auto",
top: 0,
right: 0,
bottom: 0,
left: 0,
...r.style
}
}))
}));
function od(e) {
return xl(e.target) && "BUTTON" === e.target.tagName
}
function sd(e, t) {
void 0 === t && (t = {});
let {
open: n,
onOpenChange: r,
dataRef: i,
elements: {
domReference: a
}
} = e, {
enabled: o = !0,
event: s = "click",
toggle: l = !0,
ignoreMouse: c = !1,
keyboardHandlers: u = !0
} = t, d = Ee.useRef(), p = Ee.useRef(!1);
return Ee.useMemo((() => o ? {
reference: {
onPointerDown(e) {
d.current = e.pointerType
},
onMouseDown(e) {
0 !== e.button || Tl(d.current, !0) && c || "click" === s || (!n || !l || i.current.openEvent && "mousedown" !== i.current.openEvent.type ? (e.preventDefault(), r(!0, e.nativeEvent, "click")) : r(!1, e.nativeEvent, "click"))
},
onClick(e) {
"mousedown" === s && d.current ? d.current = void 0 : Tl(d.current, !0) && c || (!n || !l || i.current.openEvent && "click" !== i.current.openEvent.type ? r(!0, e.nativeEvent, "click") : r(!1, e.nativeEvent, "click"))
},
onKeyDown(e) {
d.current = void 0, e.defaultPrevented || !u || od(e) || (" " !== e.key || Nl(a) || (e.preventDefault(), p.current = !0), "Enter" === e.key && r(!n || !l, e.nativeEvent, "click"))
},
onKeyUp(e) {
!e.defaultPrevented && u && !od(e) && !Nl(a) && " " === e.key && p.current && (p.current = !1, r(!n || !l, e.nativeEvent, "click"))
}
}
} : {}), [o, i, s, c, u, a, l, n, r])
}
let ld = {
pointerdown: "onPointerDown",
mousedown: "onMouseDown",
click: "onClick"
},
cd = {
pointerdown: "onPointerDownCapture",
mousedown: "onMouseDownCapture",
click: "onClickCapture"
},
ud = e => {
var t, n;
return {
escapeKey: "boolean" == typeof e ? e : null != (t = null == e ? void 0 : e.escapeKey) && t,
outsidePress: "boolean" == typeof e ? e : null == (n = null == e ? void 0 : e.outsidePress) || n
}
};
function dd(e, t) {
void 0 === t && (t = {});
let {
open: n,
onOpenChange: r,
nodeId: i,
elements: {
reference: a,
domReference: o,
floating: s
},
dataRef: l
} = e, {
enabled: c = !0,
escapeKey: u = !0,
outsidePress: d = !0,
outsidePressEvent: p = "pointerdown",
referencePress: h = !1,
referencePressEvent: f = "pointerdown",
ancestorScroll: m = !1,
bubbles: g,
capture: v
} = t, y = Pu(), _ = ru("function" == typeof d ? d : () => !1), b = "function" == typeof d ? _ : d, x = Ee.useRef(!1), k = Ee.useRef(!1), {
escapeKey: w,
outsidePress: S
} = ud(g), {
escapeKey: E,
outsidePress: I
} = ud(v), O = ru((e => {
if (!n || !c || !u || "Escape" !== e.key) return;
let t = y ? Fu(y.nodesRef.current, i) : [];
if (!w && (e.stopPropagation(), t.length > 0)) {
let e = !0;
if (t.forEach((t => {
var n;
null == (n = t.context) || !n.open || t.context.dataRef.current.__escapeKeyBubbles || (e = !1)
})), !e) return
}
r(!1, "nativeEvent" in e ? e.nativeEvent : e, "escape-key")
})), C = ru((e => {
var t;
let n = () => {
var t;
O(e), null == (t = Ll(e)) || t.removeEventListener("keydown", n)
};
null == (t = Ll(e)) || t.addEventListener("keydown", n)
})), A = ru((e => {
let t = x.current;
x.current = !1;
let n = k.current;
if (k.current = !1, "click" === p && n || t || "function" == typeof b && !b(e)) return;
let a = Ll(e),
l = "[" + Lu("inert") + "]",
c = Rl(s).querySelectorAll(l),
u = bl(a) ? a : null;
for (; u && !["html", "body", "#document"].includes(vl(u));) {
let e = function(e) {
var t;
if ("html" === vl(e)) return e;
let n = e.assignedSlot || e.parentNode || kl(e) && e.host || (null == (t = (_l(e) ? e.ownerDocument : e.document) || window.document) ? void 0 : t.documentElement);
return kl(n) ? n.host : n
}(u);
if (e === Rl(s).body || !bl(e)) break;
u = e
}
if (c.length && bl(a) && !a.matches("html,body") && !Sl(a, s) && Array.from(c).every((e => !Sl(u, e)))) return;
if (xl(a) && s) {
let t = a.clientWidth > 0 && a.scrollWidth > a.clientWidth,
n = a.clientHeight > 0 && a.scrollHeight > a.clientHeight,
r = n && e.offsetX > a.clientWidth;
if (n) {
"rtl" === yl(a).getComputedStyle(a).direction && (r = e.offsetX <= a.offsetWidth - a.clientWidth)
}
if (r || t && e.offsetY > a.clientHeight) return
}
let d = y && Fu(y.nodesRef.current, i).some((t => {
var n;
return Dl(e, null == (n = t.context) ? void 0 : n.elements.floating)
}));
if (Dl(e, s) || Dl(e, o) || d) return;
let h = y ? Fu(y.nodesRef.current, i) : [];
if (h.length > 0) {
let e = !0;
if (h.forEach((t => {
var n;
null == (n = t.context) || !n.open || t.context.dataRef.current.__outsidePressBubbles || (e = !1)
})), !e) return
}
r(!1, e, "outside-press")
})), P = ru((e => {
var t;
let n = () => {
var t;
A(e), null == (t = Ll(e)) || t.removeEventListener(p, n)
};
null == (t = Ll(e)) || t.addEventListener(p, n)
}));
return Ee.useEffect((() => {
if (!n || !c) return;
function e(e) {
r(!1, e, "ancestor-scroll")
}
l.current.__escapeKeyBubbles = w, l.current.__outsidePressBubbles = S;
let t = Rl(s);
u && t.addEventListener("keydown", E ? C : O, E), b && t.addEventListener(p, I ? P : A, I);
let i = [];
return m && (bl(o) && (i = xc(o)), bl(s) && (i = i.concat(xc(s))), !bl(a) && a && a.contextElement && (i = i.concat(xc(a.contextElement)))), (i = i.filter((e => {
var n;
return e !== (null == (n = t.defaultView) ? void 0 : n.visualViewport)
}))).forEach((t => {
t.addEventListener("scroll", e, {
passive: !0
})
})), () => {
u && t.removeEventListener("keydown", E ? C : O, E), b && t.removeEventListener(p, I ? P : A, I), i.forEach((t => {
t.removeEventListener("scroll", e)
}))
}
}), [l, s, o, a, u, b, p, n, r, m, c, w, S, O, E, C, A, I, P]), Ee.useEffect((() => {
x.current = !1
}), [b, p]), Ee.useMemo((() => c ? {
reference: {
onKeyDown: O,
[ld[f]]: e => {
h && r(!1, e.nativeEvent, "reference-press")
}
},
floating: {
onKeyDown: O,
onMouseDown() {
k.current = !0
},
onMouseUp() {
k.current = !0
},
[cd[p]]: () => {
x.current = !0
}
}
} : {}), [c, h, p, f, r, O])
}
function pd(e) {
var t;
void 0 === e && (e = {});
let {
open: n = !1,
onOpenChange: r,
nodeId: i
} = e;
let [a, o] = Ee.useState(null), s = (null == (t = e.elements) ? void 0 : t.reference) || a, l = function(e) {
void 0 === e && (e = {});
let {
placement: t = "bottom",
strategy: n = "absolute",
middleware: r = [],
platform: i,
elements: {
reference: a,
floating: o
} = {},
transform: s = !0,
whileElementsMounted: l,
open: c
} = e, [u, d] = Ee.useState({
x: 0,
y: 0,
strategy: n,
placement: t,
middlewareData: {},
isPositioned: !1
}), [p, h] = Ee.useState(r);
jc(p, r) || h(r);
let [f, m] = Ee.useState(null), [g, v] = Ee.useState(null), y = Ee.useCallback((e => {
e != k.current && (k.current = e, m(e))
}), [m]), _ = Ee.useCallback((e => {
e !== w.current && (w.current = e, v(e))
}), [v]), b = a || f, x = o || g, k = Ee.useRef(null), w = Ee.useRef(null), S = Ee.useRef(u), E = Vc(l), I = Vc(i), O = Ee.useCallback((() => {
if (!k.current || !w.current) return;
let e = {
placement: t,
strategy: n,
middleware: p
};
I.current && (e.platform = I.current), Lc(k.current, w.current, e).then((e => {
let t = {
...e,
isPositioned: !0
};
C.current && !jc(S.current, t) && (S.current = t, Do.flushSync((() => {
d(t)
})))
}))
}), [p, t, n, I]);
Mc((() => {
!1 === c && S.current.isPositioned && (S.current.isPositioned = !1, d((e => ({
...e,
isPositioned: !1
}))))
}), [c]);
let C = Ee.useRef(!1);
Mc((() => (C.current = !0, () => {
C.current = !1
})), []), Mc((() => {
if (b && (k.current = b), x && (w.current = x), b && x) {
if (E.current) return E.current(b, x, O);
O()
}
}), [b, x, O, E]);
let A = Ee.useMemo((() => ({
reference: k,
floating: w,
setReference: y,
setFloating: _
})), [y, _]),
P = Ee.useMemo((() => ({
reference: b,
floating: x
})), [b, x]),
T = Ee.useMemo((() => {
let e = {
position: n,
left: 0,
top: 0
};
if (!P.floating) return e;
let t = zc(P.floating, u.x),
r = zc(P.floating, u.y);
return s ? {
...e,
transform: "translate(" + t + "px, " + r + "px)",
...Fc(P.floating) >= 1.5 && {
willChange: "transform"
}
} : {
position: n,
left: t,
top: r
}
}), [n, s, P.floating, u.x, u.y]);
return Ee.useMemo((() => ({
...u,
update: O,
refs: A,
elements: P,
floatingStyles: T
})), [u, O, A, P, T])
}(e), c = Pu(), u = null != Au(), d = ru(((e, t, n) => {
e && (h.current.openEvent = t), f.emit("openchange", {
open: e,
event: t,
reason: n,
nested: u
}), null == r || r(e, t, n)
})), p = Ee.useRef(null), h = Ee.useRef({}), f = Ee.useState((() => Iu()))[0], m = Su(), g = Ee.useCallback((e => {
let t = bl(e) ? {
getBoundingClientRect: () => e.getBoundingClientRect(),
contextElement: e
} : e;
l.refs.setReference(t)
}), [l.refs]), v = Ee.useCallback((e => {
(bl(e) || null === e) && (p.current = e, o(e)), (bl(l.refs.reference.current) || null === l.refs.reference.current || null !== e && !bl(e)) && l.refs.setReference(e)
}), [l.refs]), y = Ee.useMemo((() => ({
...l.refs,
setReference: v,
setPositionReference: g,
domReference: p
})), [l.refs, v, g]), _ = Ee.useMemo((() => ({
...l.elements,
domReference: s
})), [l.elements, s]), b = Ee.useMemo((() => ({
...l,
refs: y,
elements: _,
dataRef: h,
nodeId: i,
floatingId: m,
events: f,
open: n,
onOpenChange: d
})), [l, i, m, f, n, d, y, _]);
return mu((() => {
let e = null == c ? void 0 : c.nodesRef.current.find((e => e.id === i));
e && (e.context = b)
})), Ee.useMemo((() => ({
...l,
context: b,
refs: y,
elements: _
})), [l, y, _, b])
}
function hd(e, t, n) {
let r = new Map;
return {
..."floating" === n && {
tabIndex: -1
},
...e,
...t.map((e => e ? e[n] : null)).concat(e).reduce(((e, t) => (t && Object.entries(t).forEach((t => {
let [n, i] = t;
var a;
0 === n.indexOf("on") ? (r.has(n) || r.set(n, []), "function" == typeof i && (null == (a = r.get(n)) || a.push(i), e[n] = function() {
for (var e, t = arguments.length, i = Array(t), a = 0; a < t; a++) i[a] = arguments[a];
return null == (e = r.get(n)) ? void 0 : e.map((e => e(...i))).find((e => void 0 !== e))
})) : e[n] = i
})), e)), {})
}
}
function fd(e) {
void 0 === e && (e = []);
let t = e,
n = Ee.useCallback((t => hd(t, e, "reference")), t),
r = Ee.useCallback((t => hd(t, e, "floating")), t),
i = Ee.useCallback((t => hd(t, e, "item")), e.map((e => null == e ? void 0 : e.item)));
return Ee.useMemo((() => ({
getReferenceProps: n,
getFloatingProps: r,
getItemProps: i
})), [n, r, i])
}
let md = !1;
function gd(e, t, n) {
switch (e) {
case "vertical":
return t;
case "horizontal":
return n;
default:
return t || n
}
}
function vd(e, t) {
return gd(t, e === iu || e === au, e === ou || e === su)
}
function yd(e, t, n) {
return gd(t, e === au, n ? e === ou : e === su) || "Enter" === e || " " == e || "" === e
}
function _d(e, t, n) {
return gd(t, n ? e === su : e === ou, e === iu)
}
function bd(e, t) {
let {
open: n,
onOpenChange: r,
refs: i,
elements: {
domReference: a,
floating: o
}
} = e, {
listRef: s,
activeIndex: l,
onNavigate: c = (() => {}),
enabled: u = !0,
selectedIndex: d = null,
allowEscape: p = !1,
loop: h = !1,
nested: f = !1,
rtl: m = !1,
virtual: g = !1,
focusItemOnOpen: v = "auto",
focusItemOnHover: y = !0,
openOnArrowKeyDown: _ = !0,
disabledIndices: b,
orientation: x = "vertical",
cols: k = 1,
scrollItemIntoView: w = !0,
virtualItemRef: S
} = t, E = Au(), I = Pu(), O = ru(c), C = Ee.useRef(v), A = Ee.useRef(null != d ? d : -1), P = Ee.useRef(null), T = Ee.useRef(!0), R = Ee.useRef(O), D = Ee.useRef(!!o), L = Ee.useRef(!1), N = Ee.useRef(!1), M = Nu(b), j = Nu(n), F = Nu(w), [z, V] = Ee.useState(), [U, B] = Ee.useState(), G = ru((function(e, t, n) {
void 0 === n && (n = !1);
let r = e.current[t.current];
r && (g ? (V(r.id), null == I || I.events.emit("virtualfocus", r), S && (S.current = r)) : fu(r, {
preventScroll: !0,
sync: !(!Pl() || !Cl()) && (md || L.current)
}), requestAnimationFrame((() => {
let e = F.current;
e && r && (n || !T.current) && (null == r.scrollIntoView || r.scrollIntoView("boolean" == typeof e ? {
block: "nearest",
inline: "nearest"
} : e))
})))
}));
mu((() => {
document.createElement("div").focus({
get preventScroll() {
return md = !0, !1
}
})
}), []), mu((() => {
u && (n && o ? C.current && null != d && (N.current = !0, O(d)) : D.current && (A.current = -1, R.current(null)))
}), [u, n, o, d, O]), mu((() => {
if (u && n && o)
if (null == l) {
if (L.current = !1, null == d && (D.current && (A.current = -1, G(s, A)), !D.current && C.current && (null != P.current || !0 === C.current && null == P.current))) {
let e = 0,
t = () => {
if (null == s.current[0]) {
if (e < 2) {
(e ? requestAnimationFrame : queueMicrotask)(t)
}
e++
} else A.current = null == P.current || yd(P.current, x, m) || f ? uu(s, M.current) : du(s, M.current), P.current = null, O(A.current)
};
t()
}
} else cu(s, l) || (A.current = l, G(s, A, N.current), N.current = !1)
}), [u, n, o, l, d, f, s, x, m, O, G, M]), mu((() => {
var e, t;
if (!u || o || !I || g || !D.current) return;
let n = I.nodesRef.current,
r = null == (e = n.find((e => e.id === E))) || null == (t = e.context) ? void 0 : t.elements.floating,
i = wl(Rl(o)),
a = n.some((e => e.context && Sl(e.context.elements.floating, i)));
r && !a && T.current && r.focus({
preventScroll: !0
})
}), [u, o, I, E, g]), mu((() => {
if (u && I && g && !E) return I.events.on("virtualfocus", e), () => {
I.events.off("virtualfocus", e)
};
function e(e) {
B(e.id), S && (S.current = e)
}
}), [u, I, g, E, S]), mu((() => {
R.current = O, D.current = !!o
})), mu((() => {
n || (P.current = null)
}), [n]);
let W = null != l,
$ = Ee.useMemo((() => {
function e(e) {
if (!n) return;
let t = s.current.indexOf(e); - 1 !== t && O(t)
}
let t = {
onFocus(t) {
let {
currentTarget: n
} = t;
e(n)
},
onClick: e => {
let {
currentTarget: t
} = e;
return t.focus({
preventScroll: !0
})
},
...y && {
onMouseMove(t) {
let {
currentTarget: n
} = t;
e(n)
},
onPointerLeave(e) {
let {
pointerType: t
} = e;
T.current && "touch" !== t && (A.current = -1, G(s, A), O(null), g || fu(i.floating.current, {
preventScroll: !0
}))
}
}
};
return t
}), [n, i, G, y, s, O, g]);
return Ee.useMemo((() => {
if (!u) return {};
let e = M.current;
function t(t) {
if (T.current = !1, L.current = !0, !j.current && t.currentTarget === i.floating.current) return;
if (f && _d(t.key, x, m)) return Ml(t), r(!1, t.nativeEvent, "list-navigation"), void(xl(a) && !g && a.focus());
let o = A.current,
l = uu(s, e),
c = du(s, e);
if ("Home" === t.key && (Ml(t), A.current = l, O(A.current)), "End" === t.key && (Ml(t), A.current = c, O(A.current)), (!(k > 1) || (A.current = function(e, t) {
let {
event: n,
orientation: r,
loop: i,
cols: a,
disabledIndices: o,
minIndex: s,
maxIndex: l,
prevIndex: c,
stopEvent: u = !1
} = t, d = c;
if (n.key === iu) {
if (u && Ml(n), -1 === c) d = l;
else if (d = pu(e, {
startingIndex: d,
amount: a,
decrement: !0,
disabledIndices: o
}), i && (c - a < s || d < 0)) {
let e = c % a,
t = l % a,
n = l - (t - e);
d = t === e ? l : t > e ? n : n - a
}
cu(e, d) && (d = c)
}
if (n.key === au && (u && Ml(n), -1 === c ? d = s : (d = pu(e, {
startingIndex: c,
amount: a,
disabledIndices: o
}), i && c + a > l && (d = pu(e, {
startingIndex: c % a - a,
amount: a,
disabledIndices: o
}))), cu(e, d) && (d = c)), "both" === r) {
let t = jl(c / a);
n.key === su && (u && Ml(n), c % a != a - 1 ? (d = pu(e, {
startingIndex: c,
disabledIndices: o
}), i && lu(d, a, t) && (d = pu(e, {
startingIndex: c - c % a - 1,
disabledIndices: o
}))) : i && (d = pu(e, {
startingIndex: c - c % a - 1,
disabledIndices: o
})), lu(d, a, t) && (d = c)), n.key === ou && (u && Ml(n), c % a != 0 ? (d = pu(e, {
startingIndex: c,
disabledIndices: o,
decrement: !0
}), i && lu(d, a, t) && (d = pu(e, {
startingIndex: c + (a - c % a),
decrement: !0,
disabledIndices: o
}))) : i && (d = pu(e, {
startingIndex: c + (a - c % a),
decrement: !0,
disabledIndices: o
})), lu(d, a, t) && (d = c));
let r = jl(l / a) === t;
cu(e, d) && (d = i && r ? n.key === ou ? l : pu(e, {
startingIndex: c - c % a - 1,
disabledIndices: o
}) : c)
}
return d
}(s, {
event: t,
orientation: x,
loop: h,
cols: k,
disabledIndices: e,
minIndex: l,
maxIndex: c,
prevIndex: A.current,
stopEvent: !0
}), O(A.current), "both" !== x)) && vd(t.key, x)) {
if (Ml(t), n && !g && wl(t.currentTarget.ownerDocument) === t.currentTarget) return A.current = yd(t.key, x, m) ? l : c, void O(A.current);
yd(t.key, x, m) ? A.current = h ? o >= c ? p && o !== s.current.length ? -1 : l : pu(s, {
startingIndex: o,
disabledIndices: e
}) : Math.min(c, pu(s, {
startingIndex: o,
disabledIndices: e
})) : A.current = h ? o <= l ? p && -1 !== o ? s.current.length : c : pu(s, {
startingIndex: o,
decrement: !0,
disabledIndices: e
}) : Math.max(l, pu(s, {
startingIndex: o,
decrement: !0,
disabledIndices: e
})), cu(s, A.current) ? O(null) : O(A.current)
}
}
function o(e) {
"auto" === v && Il(e.nativeEvent) && (C.current = !0)
}
let l = g && n && W && {
"aria-activedescendant": U || z
},
c = s.current.find((e => (null == e ? void 0 : e.id) === z));
return {
reference: {
...l,
onKeyDown(i) {
var a, o, l, u, p, h;
T.current = !1;
let v = 0 === i.key.indexOf("Arrow"),
y = (a = i.key, gd(x, m ? a === ou : a === su, a === au)),
b = _d(i.key, x, m),
k = vd(i.key, x),
w = (f ? y : k) || "Enter" === i.key || "" === i.key.trim();
if (g && n) {
let e, n, r = null == I ? void 0 : I.nodesRef.current.find((e => null == e.parentId)),
a = I && r ? (o = I.nodesRef.current, l = r.id, n = -1, function t(r, i) {
i > n && (e = r, n = i), Fu(o, r).forEach((e => {
t(e.id, i + 1)
}))
}(l, 0), o.find((t => t.id === e))) : null;
if (v && a && S) {
let e = new KeyboardEvent("keydown", {
key: i.key,
bubbles: !0
});
if (y || b) {
let t = (null == (u = a.context) ? void 0 : u.elements.domReference) === i.currentTarget,
n = b && !t ? null == (p = a.context) ? void 0 : p.elements.domReference : y ? c : null;
n && (Ml(i), n.dispatchEvent(e), B(void 0))
}
if (k && a.context && a.context.open && a.parentId && i.currentTarget !== a.context.elements.domReference) return Ml(i), void(null == (h = a.context.elements.domReference) || h.dispatchEvent(e))
}
return t(i)
}
if (n || _ || !v) {
if (w && (P.current = f && k ? null : i.key), f) return void(y && (Ml(i), n ? (A.current = uu(s, e), O(A.current)) : r(!0, i.nativeEvent, "list-navigation")));
k && (null != d && (A.current = d), Ml(i), !n && _ ? r(!0, i.nativeEvent, "list-navigation") : t(i), n && O(A.current))
}
},
onFocus() {
n && O(null)
},
onPointerDown: function(e) {
C.current = v, "auto" === v && Ol(e.nativeEvent) && (C.current = !0)
},
onMouseDown: o,
onClick: o
},
floating: {
"aria-orientation": "both" === x ? void 0 : x,
...l,
onKeyDown: t,
onPointerMove() {
T.current = !0
}
},
item: $
}
}), [a, i, z, U, M, j, s, u, x, m, g, n, W, f, d, _, p, k, h, v, O, r, $, I, S])
}
function xd(e, t) {
void 0 === t && (t = {});
let {
open: n,
floatingId: r
} = e, {
enabled: i = !0,
role: a = "dialog"
} = t, o = Su();
return Ee.useMemo((() => {
if (!i) return {};
let e = {
id: r,
..."label" !== a && {
role: a
}
};
return "tooltip" === a || "label" === a ? {
reference: {
["aria-" + ("label" === a ? "labelledby" : "describedby")]: n ? r : void 0
},
floating: e
} : {
reference: {
"aria-expanded": n ? "true" : "false",
"aria-haspopup": "alertdialog" === a ? "dialog" : a,
"aria-controls": n ? r : void 0,
..."listbox" === a && {
role: "combobox"
},
..."menu" === a && {
id: o
}
},
floating: {
...e,
..."menu" === a && {
"aria-labelledby": o
}
}
}
}), [i, a, n, r, o])
}
function kd(e, t) {
void 0 === t && (t = {});
let {
open: n,
elements: {
floating: r
}
} = e, {
duration: i = 250
} = t, a = ("number" == typeof i ? i : i.close) || 0, [o, s] = Ee.useState(!1), [l, c] = Ee.useState("unmounted"), u = function(e, t) {
let [n, r] = Ee.useState(e);
return e && !n && r(!0), Ee.useEffect((() => {
if (!e) {
let e = setTimeout((() => r(!1)), t);
return () => clearTimeout(e)
}
}), [e, t]), n
}(n, a);
return mu((() => {
o && !u && c("unmounted")
}), [o, u]), mu((() => {
if (r) {
if (n) {
c("initial");
let e = requestAnimationFrame((() => {
c("open")
}));
return () => {
cancelAnimationFrame(e)
}
}
s(!0), c("close")
}
}), [n, r]), {
isMounted: u,
status: l
}
}
function wd(e, t) {
var n;
let {
open: r,
dataRef: i
} = e, {
listRef: a,
activeIndex: o,
onMatch: s,
onTypingChange: l,
enabled: c = !0,
findMatch: u = null,
resetMs: d = 750,
ignoreKeys: p = [],
selectedIndex: h = null
} = t, f = Ee.useRef(), m = Ee.useRef(""), g = Ee.useRef(null != (n = null != h ? h : o) ? n : -1), v = Ee.useRef(null), y = ru(s), _ = ru(l), b = Nu(u), x = Nu(p);
return mu((() => {
r && (clearTimeout(f.current), v.current = null, m.current = "")
}), [r]), mu((() => {
var e;
r && "" === m.current && (g.current = null != (e = null != h ? h : o) ? e : -1)
}), [r, h, o]), Ee.useMemo((() => {
if (!c) return {};
function e(e) {
e ? i.current.typing || (i.current.typing = e, _(e)) : i.current.typing && (i.current.typing = e, _(e))
}
function t(e, t, n) {
let r = b.current ? b.current(t, n) : t.find((e => 0 === (null == e ? void 0 : e.toLocaleLowerCase().indexOf(n.toLocaleLowerCase()))));
return r ? e.indexOf(r) : -1
}
function n(n) {
let i = a.current;
if (m.current.length > 0 && " " !== m.current[0] && (-1 === t(i, i, m.current) ? e(!1) : " " === n.key && Ml(n)), null == i || x.current.includes(n.key) || 1 !== n.key.length || n.ctrlKey || n.metaKey || n.altKey) return;
r && " " !== n.key && (Ml(n), e(!0));
let o = i.every((e => {
var t, n;
return !e || (null == (t = e[0]) ? void 0 : t.toLocaleLowerCase()) !== (null == (n = e[1]) ? void 0 : n.toLocaleLowerCase())
}));
o && m.current === n.key && (m.current = "", g.current = v.current), m.current += n.key, clearTimeout(f.current), f.current = setTimeout((() => {
m.current = "", g.current = v.current, e(!1)
}), d);
let s = g.current,
l = t(i, [...i.slice((s || 0) + 1), ...i.slice(0, (s || 0) + 1)], m.current); - 1 !== l ? (y(l), v.current = l) : " " !== n.key && (m.current = "", e(!1))
}
return {
reference: {
onKeyDown: n
},
floating: {
onKeyDown: n,
onKeyUp(t) {
" " === t.key && e(!1)
}
}
}
}), [c, r, i, a, d, x, b, y, _])
}
function Sd(e, t) {
let [n, r] = e, i = !1, a = t.length;
for (let o = 0, s = a - 1; o < a; s = o++) {
let [e, a] = t[o] || [0, 0], [l, c] = t[s] || [0, 0];
a >= r != c >= r && n <= (l - e) * (r - a) / (c - a) + e && (i = !i)
}
return i
}
let Ed = {
none: 0,
small: 8,
medium: 12,
large: 16
},
Id = (0, Ee.forwardRef)((({
children: e,
className: t,
content: n,
interactive: r = !0,
offset: i = "medium",
placement: a = "top",
style: o,
title: s,
...l
}, c) => {
var u;
let [d, p] = (0, Ee.useState)(!1), h = (0, Ee.useRef)(null), {
floatingStyles: f,
refs: m,
context: g,
placement: v
} = pd({
open: d,
onOpenChange: p,
placement: a,
whileElementsMounted: Dc,
middleware: [Nc({
element: h
}), {
name: "flip",
options: u = {
fallbackAxisSideDirection: "start",
crossAxis: a.includes("-")
},
async fn(e) {
var t, n, r, i;
let {
placement: a,
middlewareData: o,
rects: s,
initialPlacement: l,
platform: c,
elements: d
} = e, {
mainAxis: p = !0,
crossAxis: h = !0,
fallbackPlacements: f,
fallbackStrategy: m = "bestFit",
fallbackAxisSideDirection: g = "none",
flipAlignment: v = !0,
...y
} = $l(u, e), _ = ql(a), b = ql(l) === l, x = await (null == c.isRTL ? void 0 : c.isRTL(d.floating)), k = f || (b || !v ? [Xl(l)] : function(e) {
let t = Xl(e);
return [Zl(e), t, Zl(t)]
}(l));
f || "none" === g || k.push(... function(e, t, n, r) {
let i = Hl(e),
a = function(e, t, n) {
let r = ["left", "right"],
i = ["right", "left"];
switch (e) {
case "top":
case "bottom":
return n ? t ? i : r : t ? r : i;
case "left":
case "right":
return t ? ["top", "bottom"] : ["bottom", "top"];
default:
return []
}
}(ql(e), "start" === n, r);
return i && (a = a.map((e => e + "-" + i)), t && (a = a.concat(a.map(Zl)))), a
}(l, v, g, x));
let w = [l, ...k],
S = await nc(e, y),
E = [],
I = (null == (t = o.flip) ? void 0 : t.overflows) || [];
if (p && E.push(S[_]), h) {
let e = function(e, t, n) {
void 0 === n && (n = !1);
let r = Hl(e),
i = Kl(Ql(e)),
a = Yl(i),
o = "x" === i ? r === (n ? "end" : "start") ? "right" : "left" : "start" === r ? "bottom" : "top";
return t.reference[a] > t.floating[a] && (o = Xl(o)), [o, Xl(o)]
}(a, s, x);
E.push(S[e[0]], S[e[1]])
}
if (I = [...I, {
placement: a,
overflows: E
}], !E.every((e => e <= 0))) {
let e = ((null == (n = o.flip) ? void 0 : n.index) || 0) + 1,
t = w[e];
if (t) return {
data: {
index: e,
overflows: I
},
reset: {
placement: t
}
};
let s = null == (r = I.filter((e => e.overflows[0] <= 0)).sort(((e, t) => e.overflows[1] - t.overflows[1]))[0]) ? void 0 : r.placement;
if (!s) switch (m) {
case "bestFit": {
let e = null == (i = I.map((e => [e.placement, e.overflows.filter((e => e > 0)).reduce(((e, t) => e + t), 0)])).sort(((e, t) => e[1] - t[1]))[0]) ? void 0 : i[0];
e && (s = e);
break
}
case "initialPlacement":
s = l
}
if (a !== s) return {
reset: {
placement: s
}
}
}
return {}
}
}, ic(Ed[i]), ac({
padding: Ed[i]
})],
transform: !1
}), {
getReferenceProps: y,
getFloatingProps: _
} = fd([dd(g), function(e, t) {
void 0 === t && (t = {});
let {
open: n,
onOpenChange: r,
events: i,
refs: a,
elements: {
floating: o,
domReference: s
}
} = e, {
enabled: l = !0,
visibleOnly: c = !0
} = t, u = Ee.useRef(!1), d = Ee.useRef(), p = Ee.useRef(!0);
return Ee.useEffect((() => {
if (!l) return;
let e = yl(s);
function t() {
!n && xl(s) && s === wl(Rl(s)) && (u.current = !0)
}
function r() {
p.current = !0
}
return e.addEventListener("blur", t), e.addEventListener("keydown", r, !0), () => {
e.removeEventListener("blur", t), e.removeEventListener("keydown", r, !0)
}
}), [o, s, n, l]), Ee.useEffect((() => {
if (l) return i.on("openchange", e), () => {
i.off("openchange", e)
};
function e(e) {
let {
reason: t
} = e;
("reference-press" === t || "escape-key" === t) && (u.current = !0)
}
}), [i, l]), Ee.useEffect((() => () => {
clearTimeout(d.current)
}), []), Ee.useMemo((() => l ? {
reference: {
onPointerDown(e) {
Ol(e.nativeEvent) || (p.current = !1)
},
onMouseLeave() {
u.current = !1
},
onFocus(e) {
if (u.current) return;
let t = Ll(e.nativeEvent);
if (c && bl(t)) try {
if (Cl() && Pl()) throw Error();
if (!t.matches(":focus-visible")) return
} catch (e) {
if (!p.current && !Nl(t)) return
}
r(!0, e.nativeEvent, "focus")
},
onBlur(e) {
u.current = !1;
let t = e.relatedTarget,
n = bl(t) && t.hasAttribute(Lu("focus-guard")) && "outside" === t.getAttribute("data-type");
d.current = window.setTimeout((() => {
let i = wl(s ? s.ownerDocument : document);
if (t || i !== s) {
if (Sl(a.floating.current, t) || Sl(s, t) || n) return;
r(!1, e.nativeEvent, "focus")
}
}))
}
}
} : {}), [l, c, s, a, r])
}(g), function(e, t) {
void 0 === t && (t = {});
let {
open: n,
onOpenChange: r,
dataRef: i,
events: a,
elements: {
domReference: o,
floating: s
},
refs: l
} = e, {
enabled: c = !0,
delay: u = 0,
handleClose: d = null,
mouseOnly: p = !1,
restMs: h = 0,
move: f = !0
} = t, m = Pu(), g = Au(), v = Nu(d), y = Nu(u), _ = Ee.useRef(), b = Ee.useRef(), x = Ee.useRef(), k = Ee.useRef(), w = Ee.useRef(!0), S = Ee.useRef(!1), E = Ee.useRef((() => {})), I = Ee.useCallback((() => {
var e;
let t = null == (e = i.current.openEvent) ? void 0 : e.type;
return (null == t ? void 0 : t.includes("mouse")) && "mousedown" !== t
}), [i]);
Ee.useEffect((() => {
if (c) return a.on("openchange", e), () => {
a.off("openchange", e)
};
function e(e) {
let {
open: t
} = e;
t || (clearTimeout(b.current), clearTimeout(k.current), w.current = !0)
}
}), [c, a]), Ee.useEffect((() => {
if (!c || !v.current || !n) return;
function e(e) {
I() && r(!1, e, "hover")
}
let t = Rl(s).documentElement;
return t.addEventListener("mouseleave", e), () => {
t.removeEventListener("mouseleave", e)
}
}), [s, n, r, c, v, i, I]);
let O = Ee.useCallback((function(e, t, n) {
void 0 === t && (t = !0), void 0 === n && (n = "hover");
let i = ju(y.current, "close", _.current);
i && !x.current ? (clearTimeout(b.current), b.current = setTimeout((() => r(!1, e, n)), i)) : t && (clearTimeout(b.current), r(!1, e, n))
}), [y, r]),
C = Ee.useCallback((() => {
E.current(), x.current = void 0
}), []),
A = Ee.useCallback((() => {
if (S.current) {
let e = Rl(l.floating.current).body;
e.style.pointerEvents = "", e.removeAttribute(Mu), S.current = !1
}
}), [l]);
return Ee.useEffect((() => {
if (c && bl(o)) return n && o.addEventListener("mouseleave", u), null == s || s.addEventListener("mouseleave", u), f && o.addEventListener("mousemove", a, {
once: !0
}), o.addEventListener("mouseenter", a), o.addEventListener("mouseleave", l), () => {
n && o.removeEventListener("mouseleave", u), null == s || s.removeEventListener("mouseleave", u), f && o.removeEventListener("mousemove", a), o.removeEventListener("mouseenter", a), o.removeEventListener("mouseleave", l)
};
function t() {
return !!i.current.openEvent && ["click", "mousedown"].includes(i.current.openEvent.type)
}
function a(e) {
if (clearTimeout(b.current), w.current = !1, p && !Tl(_.current) || h > 0 && 0 === ju(y.current, "open")) return;
let t = ju(y.current, "open", _.current);
t ? b.current = setTimeout((() => {
r(!0, e, "hover")
}), t) : r(!0, e, "hover")
}
function l(r) {
if (t()) return;
E.current();
let i = Rl(s);
if (clearTimeout(k.current), v.current) {
n || clearTimeout(b.current), x.current = v.current({
...e,
tree: m,
x: r.clientX,
y: r.clientY,
onClose() {
A(), C(), O(r, !0, "safe-polygon")
}
});
let t = x.current;
return i.addEventListener("mousemove", t), void(E.current = () => {
i.removeEventListener("mousemove", t)
})
}("touch" !== _.current || !Sl(s, r.relatedTarget)) && O(r)
}
function u(n) {
t() || null == v.current || v.current({
...e,
tree: m,
x: n.clientX,
y: n.clientY,
onClose() {
A(), C(), O(n)
}
})(n)
}
}), [o, s, c, e, p, h, f, O, C, A, r, n, m, y, v, i]), mu((() => {
var e, t, r;
if (c && n && null != (e = v.current) && e.__options.blockPointerEvents && I()) {
let e = Rl(s).body;
if (e.setAttribute(Mu, ""), e.style.pointerEvents = "none", S.current = !0, bl(o) && s) {
let e = null == m || null == (t = m.nodesRef.current.find((e => e.id === g))) || null == (r = t.context) ? void 0 : r.elements.floating;
return e && (e.style.pointerEvents = ""), o.style.pointerEvents = "auto", s.style.pointerEvents = "auto", () => {
o.style.pointerEvents = "", s.style.pointerEvents = ""
}
}
}
}), [c, n, g, s, o, m, v, i, I]), mu((() => {
n || (_.current = void 0, C(), A())
}), [n, C, A]), Ee.useEffect((() => () => {
C(), clearTimeout(b.current), clearTimeout(k.current), A()
}), [c, o, C, A]), Ee.useMemo((() => {
if (!c) return {};
function e(e) {
_.current = e.pointerType
}
return {
reference: {
onPointerDown: e,
onPointerEnter: e,
onMouseMove(e) {
n || 0 === h || (clearTimeout(k.current), k.current = setTimeout((() => {
w.current || r(!0, e.nativeEvent, "hover")
}), h))
}
},
floating: {
onMouseEnter() {
clearTimeout(b.current)
},
onMouseLeave(e) {
O(e.nativeEvent, !1)
}
}
}
}), [c, h, n, r, O])
}(g, {
move: !1,
handleClose: r ? function(e) {
let t;
void 0 === e && (e = {});
let {
buffer: n = .5,
blockPointerEvents: r = !1,
requireIntent: i = !0
} = e, a = !1, o = null, s = null, l = performance.now(), c = e => {
let {
x: r,
y: c,
placement: u,
elements: d,
onClose: p,
nodeId: h,
tree: f
} = e;
return function(e) {
function m() {
clearTimeout(t), p()
}
if (clearTimeout(t), !d.domReference || !d.floating || null == u || null == r || null == c) return;
let {
clientX: g,
clientY: v
} = e, y = [g, v], _ = Ll(e), b = "mouseleave" === e.type, x = Sl(d.floating, _), k = Sl(d.domReference, _), w = d.domReference.getBoundingClientRect(), S = d.floating.getBoundingClientRect(), E = u.split("-")[0], I = r > S.right - S.width / 2, O = c > S.bottom - S.height / 2, C = y[0] >= w.x && y[0] <= w.x + w.width && y[1] >= w.y && y[1] <= w.y + w.height, A = S.width > w.width, P = S.height > w.height, T = (A ? w : S).left, R = (A ? w : S).right, D = (P ? w : S).top, L = (P ? w : S).bottom;
if (x && (a = !0, !b)) return;
if (k && (a = !1), k && !b) return void(a = !0);
if (b && bl(e.relatedTarget) && Sl(d.floating, e.relatedTarget) || f && Fu(f.nodesRef.current, h).some((e => {
let {
context: t
} = e;
return null == t ? void 0 : t.open
}))) return;
if ("top" === E && c >= w.bottom - 1 || "bottom" === E && c <= w.top + 1 || "left" === E && r >= w.right - 1 || "right" === E && r <= w.left + 1) return m();
let N = [];
switch (E) {
case "top":
N = [
[T, w.top + 1],
[T, S.bottom - 1],
[R, S.bottom - 1],
[R, w.top + 1]
];
break;
case "bottom":
N = [
[T, S.top + 1],
[T, w.bottom - 1],
[R, w.bottom - 1],
[R, S.top + 1]
];
break;
case "left":
N = [
[S.right - 1, L],
[S.right - 1, D],
[w.left + 1, D],
[w.left + 1, L]
];
break;
case "right":
N = [
[w.right - 1, L],
[w.right - 1, D],
[S.left + 1, D],
[S.left + 1, L]
]
}
if (!Sd([g, v], N)) {
if (a && !C) return m();
if (!b && i) {
let t = function(e, t) {
let n = performance.now(),
r = n - l;
if (null === o || null === s || 0 === r) return o = e, s = t, l = n, null;
let i = e - o,
a = t - s;
return o = e, s = t, l = n, Math.sqrt(i * i + a * a) / r
}(e.clientX, e.clientY);
if (null !== t && t < .1) return m()
}
Sd([g, v], function(e) {
let [t, r] = e;
switch (E) {
case "top": {
let e = [
[S.left, I || A ? S.bottom - n : S.top],
[S.right, I ? A ? S.bottom - n : S.top : S.bottom - n]
];
return [
[A ? t + n / 2 : I ? t + 4 * n : t - 4 * n, r + n + 1],
[A ? t - n / 2 : I ? t + 4 * n : t - 4 * n, r + n + 1], ...e
]
}
case "bottom": {
let e = [
[S.left, I || A ? S.top + n : S.bottom],
[S.right, I ? A ? S.top + n : S.bottom : S.top + n]
];
return [
[A ? t + n / 2 : I ? t + 4 * n : t - 4 * n, r - n],
[A ? t - n / 2 : I ? t + 4 * n : t - 4 * n, r - n], ...e
]
}
case "left":
return [...[
[O || P ? S.right - n : S.left, S.top],
[O ? P ? S.right - n : S.left : S.right - n, S.bottom]
],
[t + n + 1, P ? r + n / 2 : O ? r + 4 * n : r - 4 * n],
[t + n + 1, P ? r - n / 2 : O ? r + 4 * n : r - 4 * n]
];
case "right": {
let e = [
[O || P ? S.left + n : S.right, S.top],
[O ? P ? S.left + n : S.right : S.left + n, S.bottom]
];
return [
[t - n, P ? r + n / 2 : O ? r + 4 * n : r - 4 * n],
[t - n, P ? r - n / 2 : O ? r + 4 * n : r - 4 * n], ...e
]
}
}
}([r, c])) ? !a && i && (t = window.setTimeout(m, 40)) : m()
}
}
};
return c.__options = {
blockPointerEvents: r
}, c
}() : null
}), xd(g, {
role: "tooltip"
})]), {
isMounted: b,
status: x
} = kd(g), k = e.ref, w = tu([m.setReference, k, c]), {
name: S
} = Ws(), E = fs("sol-c-tooltip sol-u-transition-floating", r && "sol-c-tooltip--interactive", t);
return qo.jsxs(qo.Fragment, {
children: [(0, Ee.cloneElement)(e, y({
ref: w
})), b && qo.jsx(ed, {
children: qo.jsxs(Ys, {
as: "div",
className: E,
"data-sol-placement": v,
"data-sol-status": x,
"data-sol-theme": S,
ref: m.setFloating,
style: {
...f,
...o
},
color: "foreground-weak",
variant: "body-s",
..._(l),
children: [s && qo.jsx(Ys, {
className: "sol-c-tooltip__title",
color: "foreground",
variant: "emphasis-s",
offset: !0,
children: s
}), n, qo.jsx(Eu, {
className: "sol-c-tooltip__arrow",
context: g,
ref: h,
tipRadius: 2
})]
})
})]
})
})),
Od = (0, Ee.forwardRef)((({
enabled: e = !0,
children: t,
...n
}, r) => e ? qo.jsx(Id, {
ref: r,
...n,
children: t
}) : t)),
Cd = ms((({
as: e = "article",
className: t,
excerpt: n,
external: r,
href: i,
icon: a,
id: o,
image: s,
label: l,
onClick: c,
overlay: u,
subtitle: d,
title: p,
isOffline: h,
...f
}, m) => {
let g = Os({
..."string" == typeof s ? {
src: s
} : s
}),
v = Os({
..."string" == typeof u ? {
src: u
} : u
}),
y = (0, Ee.useRef)(null),
_ = ws(o),
{
ref: b,
hasOverflow: x
} = ks({
content: p
}),
k = (0, Ee.useCallback)((e => {
y.current?.click(), c?.(e)
}), [c]),
w = fs("sol-c-card", h && "sol-c-card--offline", s && "sol-c-card--wide", t);
return qo.jsxs(e, {
className: w,
"data-sol-button-group": !0,
id: o,
onClick: k,
ref: m,
...f,
children: [qo.jsxs("div", {
className: "sol-c-card__wrapper",
children: [!h && qo.jsxs(qo.Fragment, {
children: [qo.jsxs(cl, {
className: "sol-c-card__content",
gap: "150",
vertical: !0,
justify: "end",
children: [qo.jsxs(cl, {
className: "sol-c-card__heading",
gap: "025",
vertical: !0,
children: [qo.jsx(Od, {
content: p,
placement: "right",
interactive: !1,
enabled: x,
children: qo.jsx(Ys, {
className: "sol-c-card__title",
color: "foreground",
ref: b,
variant: "heading-xs",
truncate: 3,
children: qo.jsx($s, {
"aria-describedby": l ? _ + "-button" : void 0,
className: "sol-c-card__link",
external: r,
href: i,
ref: y,
children: p
})
})
}), d && qo.jsx(Ys, {
className: "sol-c-card__subtitle",
color: "foreground-weak",
variant: "body-xxs",
children: d
})]
}), n && qo.jsx(Ys, {
className: "sol-c-card__excerpt",
color: "foreground-weak",
variant: "body-xs",
truncate: 5,
children: n
}), l && qo.jsx(el, {
"aria-hidden": "true",
className: "sol-c-card__button",
controlled: !0,
decorative: !0,
icon: r ? is : a,
id: _ + "-button",
size: "small",
variant: "plain",
children: l
})]
}), s && qo.jsx("div", {
className: "sol-c-card__media",
children: qo.jsx("img", {
className: fs("sol-c-card__image", g === Es && "sol-c-card__image--loaded"),
..."string" == typeof s ? {
src: s
} : s,
alt: ""
})
})]
}), h && qo.jsx(Ks, {
source: gl,
className: "sol-c-card__offline-icon"
})]
}), s && u && !h && qo.jsx("div", {
"aria-hidden": "true",
className: "sol-c-card__overlay",
children: qo.jsx("img", {
className: fs("sol-c-card__image", v === Es && "sol-c-card__image--loaded"),
..."string" == typeof u ? {
src: u
} : u,
alt: ""
})
})]
})
}));
No('@layer components{.sol-c-choice{display:inline-flex;gap:var(--sol-size-150);position:relative;transition:opacity var(--sol-motion-250)}.sol-c-choice--disabled{opacity:.2;pointer-events:none}.sol-c-choice__wrapper{--_background:var(--sol-color-surface-0);--_foreground:var(--sol-color-interactive);--_border-width:var(--sol-border-1);cursor:var(--sol-cursor-interactive);display:flex;gap:var(--sol-size-100)}.sol-c-choice__wrapper:hover{--_foreground:var(--sol-color-interactive-hovered)}.sol-c-choice__wrapper:active{--_foreground:var(--sol-color-interactive-pressed)}.sol-c-choice__input{align-items:center;appearance:none;background-color:var(--_background);block-size:var(--sol-size-150);border-radius:var(--sol-radius-4);box-shadow:inset 0 0 0 var(--_border-width) currentColor;color:var(--_foreground);display:flex;flex-shrink:0;inline-size:var(--sol-size-150);justify-content:center;pointer-events:none;transition-duration:var(--sol-motion-250);transition-property:background-color,box-shadow,color;user-select:none}.sol-c-choice__icon{height:var(--sol-size-100);margin:var(--sol-size-025);pointer-events:none;position:absolute;width:var(--sol-size-100)}.sol-c-choice--checkbox{--sol-focus-offset:0}.sol-c-choice--checkbox .sol-c-choice__wrapper:active .sol-c-choice__input:not(:checked,:indeterminate),.sol-c-choice--checkbox .sol-c-choice__wrapper:not(:active) .sol-c-choice__input:is(:checked,:indeterminate){--_background:var(--_foreground)}.sol-c-choice--checkbox .sol-c-choice__wrapper:active .sol-c-choice__input:is(:checked,:indeterminate){--_background:var(--sol-color-surface-2)}.sol-c-choice--checkbox .sol-c-choice__icon{color:var(--sol-color-interactive);transition:opacity var(--sol-motion-250) var(--sol-motion-ease-out)}.sol-c-choice--checkbox .sol-c-choice__icon--check path{stroke:currentColor;stroke-dasharray:1;stroke-dashoffset:1;transition-duration:var(--sol-motion-250);transition-property:stroke}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-choice--checkbox .sol-c-choice__icon--check path{transition-property:stroke,stroke-dashoffset}}.sol-c-choice--checkbox .sol-c-choice__wrapper:not(:active) .sol-c-choice__input:is(:checked,:indeterminate)~.sol-c-choice__icon{color:var(--sol-color-interactive-contrast)}.sol-c-choice--checkbox .sol-c-choice__wrapper:not(:active) .sol-c-choice__input:checked:not(:indeterminate)~.sol-c-choice__icon--check path{stroke-dashoffset:0}.sol-c-choice--checkbox .sol-c-choice__input:not(:indeterminate)~.sol-c-choice__icon--indeterminate{opacity:0}.sol-c-choice--radio{--sol-focus-offset:0}.sol-c-choice--radio .sol-c-choice__input{border-radius:var(--sol-radius-circle)}.sol-c-choice--radio .sol-c-choice__input:before{background-color:currentColor;border-radius:inherit;content:"";display:block;height:var(--sol-size-075);opacity:0;transform:scale(0);transition-duration:var(--sol-motion-250);transition-property:opacity,transform;width:var(--sol-size-075)}.sol-c-choice--radio .sol-c-choice__input:checked{--_border-width:var(--sol-border-2)}.sol-c-choice--radio .sol-c-choice__input:checked:before{opacity:1;transform:scale(1)}.sol-c-choice--toggle .sol-c-choice__input{border-radius:var(--sol-radius-rounded);inline-size:var(--sol-size-250)}.sol-c-choice--toggle .sol-c-choice__input:checked{background:var(--_foreground)}.sol-c-choice--toggle .sol-c-choice__icon{background:var(--_foreground);border-radius:var(--sol-radius-circle);color:var(--sol-color-interactive-contrast);opacity:0;padding:var(--sol-size-025);transform:translateX(calc(var(--_translate, 0%)*var(--_translate-direction, 1)));transition-duration:var(--sol-motion-250);transition-property:background-color,opacity;transition-timing-function:var(--sol-motion-ease-out)}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-choice--toggle .sol-c-choice__icon{transition-property:background-color,opacity,transform}}.sol-c-choice--toggle .sol-c-choice__icon--check{background:var(--sol-color-surface-0);color:var(--sol-color-foreground)}.sol-c-choice--toggle .sol-c-choice__input:checked~.sol-c-choice__icon{--_translate:100%}[dir=rtl] .sol-c-choice--toggle{--_translate-direction:-1}.sol-c-choice--toggle .sol-c-choice__input:checked~.sol-c-choice__icon--check,.sol-c-choice--toggle .sol-c-choice__input:not(:checked)~.sol-c-choice__icon--cross{opacity:1}.sol-c-choice__label{user-select:none}.sol-c-choice__feedback{padding-block:var(--sol-size-025);pointer-events:none;user-select:none}}'), No("@layer components{.sol-c-inline-message{--_icon-size:var(--sol-size-100);--_line-height:var(--sol-text-body-xs-line-height)}.sol-c-inline-message a:not([class]){color:inherit;cursor:var(--sol-cursor-interactive);text-decoration:underline}.sol-c-inline-message a:not([class]):hover{text-decoration:none}.sol-c-inline-message__icon{--sol-c-icon-size:var(--_icon-size);margin-block:calc((var(--_line-height) - var(--_icon-size))/2)}}");
let Ad = ms((({
children: e,
className: t,
icon: n = es,
type: r = "informative",
...i
}, a) => {
let o = fs("sol-c-inline-message", `sol-u-color-status-${r}`, t);
return qo.jsxs(cl, {
className: o,
gap: "050",
ref: a,
...i,
children: [n && qo.jsx(Ks, {
className: "sol-c-inline-message__icon",
source: n
}), qo.jsx(Ys, {
variant: "body-xs",
children: e
})]
})
})),
Pd = (0, Ee.createContext)(null),
Td = e => (0, Ee.useContext)(Pd)?.getProps(e) ?? e;
No("@layer components{.sol-c-field-group__header,.sol-c-field-group__messages{max-inline-size:32.5rem}.sol-c-field-group__header,.sol-c-field-group__messages:not(:last-child){margin-block-end:var(--sol-size-050)}:not(.sol-c-field-group__header)+.sol-c-field-group__messages{margin-block-start:var(--sol-size-050)}}");
let Rd = (0, Ee.createContext)(null),
Dd = () => {
let e = (0, Ee.useContext)(Rd);
if (!e) throw Error("FieldGroup components must be wrapped in <FieldGroup />");
return e
},
Ld = (0, Ee.forwardRef)((({
className: e,
id: t,
...n
}, r) => {
let i = ws(t),
{
registerMessage: a,
unregisterMessage: o
} = Dd();
(0, Ee.useLayoutEffect)((() => (a(i), () => o(i))), [i, a, o]);
let s = fs("sol-c-choice-group__help", e);
return qo.jsx(Ys, {
className: s,
color: "foreground-weak",
id: i,
ref: r,
variant: "body-xs",
...n
})
})),
Nd = (0, Ee.forwardRef)((({
className: e,
id: t,
...n
}, r) => {
let i = ws(t),
{
registerMessage: a,
unregisterMessage: o
} = Dd();
(0, Ee.useLayoutEffect)((() => (a(i), () => o(i))), [i, a, o]);
let s = fs("sol-c-choice-group__feedback", e);
return qo.jsx(Ad, {
"aria-live": "polite",
className: s,
id: i,
ref: r,
type: "negative",
...n
})
})),
Md = (0, Ee.forwardRef)((({
className: e,
...t
}, n) => qo.jsx(cl, {
className: fs("sol-c-field-group__messages", e),
gap: "100",
ref: n,
vertical: !0,
...t
}))),
jd = (0, Ee.forwardRef)((({
"aria-describedby": e,
"aria-labelledby": t,
children: n,
className: r,
description: i,
error: a,
information: o,
help: s,
id: l,
title: c,
gap: u = "100",
...d
}, p) => {
let h = ws(l),
f = (() => {
let [e, t] = (0, Ee.useState)([]), n = (0, Ee.useCallback)((e => t((t => [...t, e]))), []), r = (0, Ee.useCallback)((e => t((t => t.filter((t => t !== e))))), []);
return (0, Ee.useMemo)((() => ({
messagesId: e,
registerMessage: n,
unregisterMessage: r
})), [e, n, r])
})(),
{
messagesId: m
} = f,
g = fs("sol-c-field-group", r),
v = (0, Ee.useMemo)((() => {
let t = e ? [e] : [];
return i && t.push(`${h}-description`), m && t.push(...m), t.join(" ")
}), [e, i, m, h]),
y = (0, Ee.useMemo)((() => {
let e = t ? [t] : [];
return c && e.push(`${h}-title`), e.join(" ")
}), [t, h, c]);
return qo.jsx(Rd.Provider, {
value: f,
children: qo.jsxs(cl, {
align: "start",
"aria-describedby": v,
"aria-labelledby": y,
className: g,
gap: u,
id: h,
ref: p,
role: "group",
vertical: !0,
...d,
children: [(c || i) && qo.jsxs(cl, {
className: "sol-c-field-group__header",
gap: "050",
vertical: !0,
children: [c && qo.jsx(Ys, {
className: "sol-c-field-group__title",
color: "foreground",
id: h + "-title",
variant: "emphasis-s",
children: c
}), i && qo.jsx(Ys, {
className: "sol-c-field-group__description",
color: "foreground-weak",
id: h + "-description",
variant: "body-m",
children: i
})]
}), n, (a || o || s) && qo.jsxs(Md, {
children: [a && qo.jsx(Nd, {
children: a
}), o && qo.jsx(Nd, {
type: "informative",
children: o
}), s && qo.jsx(Ld, {
children: s
})]
})]
})
})
})),
Fd = ms((({
as: e = "div",
className: t,
disabled: n,
required: r,
children: i,
visuallyHiddenLabel: a,
description: o,
defaultChecked: s,
checked: l,
indeterminate: c,
name: u,
value: d,
onBlur: p,
onChange: h,
onFocus: f,
success: m,
warning: g,
error: v,
type: y = "checkbox",
inputProps: _ = {},
inputRef: b,
...x
}, k) => {
let w = fs("sol-c-choice", n && "sol-c-choice--disabled", `sol-c-choice--${y}`, t),
S = (0, Ee.useMemo)((() => qo.jsxs(Ys, {
as: "span",
className: "sol-c-choice__label",
color: "foreground",
variant: "label-m",
visuallyHidden: a,
children: [i, r && qo.jsx("span", {
"aria-hidden": "true",
children: "*"
})]
})), [i, r, a]),
E = !!c && "checkbox" === y,
I = (0, Ee.useRef)(null),
O = (0, Ee.useMemo)((() => v ? qo.jsx(Ad, {
className: "sol-c-choice__feedback",
type: "negative",
children: v
}) : m ? qo.jsx(Ad, {
className: "sol-c-choice__feedback",
icon: Qo,
type: "positive",
children: m
}) : g ? qo.jsx(Ad, {
className: "sol-c-choice__feedback",
icon: hs,
type: "notice",
children: g
}) : null), [v, m, g]);
return (0, Ee.useLayoutEffect)((() => {
I.current && (I.current.indeterminate = E)
}), [E]), qo.jsxs(e, {
className: w,
ref: k,
...x,
children: [qo.jsxs("label", {
className: "sol-c-choice__wrapper",
children: [(0, Ee.createElement)("input", Td(vs(_, {
"aria-checked": E ? "mixed" : l ? "true" : "false",
"aria-required": !!r || void 0,
checked: l,
className: "sol-c-choice__input",
defaultChecked: s,
disabled: n,
name: u,
onBlur: p,
onChange: h,
onFocus: f,
ref: gs(I, b),
role: "toggle" === y ? "switch" : void 0,
type: "toggle" === y ? "checkbox" : y,
value: d
}))), "radio" !== y && qo.jsx(Zo, {
className: "sol-c-choice__icon sol-c-choice__icon--check"
}), "checkbox" === y && qo.jsx(os, {
className: "sol-c-choice__icon sol-c-choice__icon--indeterminate"
}), "toggle" === y && qo.jsx(Jo, {
className: "sol-c-choice__icon sol-c-choice__icon--cross"
}), o ? qo.jsxs(cl, {
vertical: !0,
children: [S, qo.jsx(Ys, {
as: "span",
className: "sol-c-choice__description",
color: "foreground-weak",
variant: "body-xs",
children: o
})]
}) : S]
}), O]
})
})),
zd = ({
condition: e,
children: t,
wrap: n
}) => e ? (0, Ee.cloneElement)(n(t)) : t;
No('@layer components{.sol-c-dialog{--_overlay-duration:var(--sol-motion-150);--_element-duration:var(--sol-motion-250);display:flex;flex-direction:column;padding:var(--sol-size-150);transition:opacity var(--sol-motion-ease-out);z-index:var(--sol-z-dialog)}.sol-c-dialog[data-sol-status=close]:before,.sol-c-dialog[data-sol-status=open]:before{transition-duration:var(--_overlay-duration)}.sol-c-dialog[data-sol-status=close]:before,.sol-c-dialog[data-sol-status=initial]:before{opacity:0}.sol-c-dialog[data-sol-status=close]:before{transition-delay:calc(var(--_element-duration) - var(--_overlay-duration))}.sol-c-dialog--overlay:before{background:var(--sol-color-overlay);content:"";display:block;inset:0;position:absolute}.sol-c-dialog__element{background:var(--sol-color-surface-1);border-radius:var(--sol-radius-8);box-shadow:var(--sol-shadow-200);color:var(--sol-color-foreground);display:flex;flex-direction:column;flex-shrink:1;inline-size:100%;margin:auto;max-inline-size:35rem;min-block-size:14.5rem;transition-property:opacity,transform;transition-timing-function:var(--sol-motion-ease-out)}.sol-c-dialog__element:focus,.sol-c-dialog__element:focus-visible{outline:none}.sol-c-dialog[data-sol-status=initial] .sol-c-dialog__element{opacity:0}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-dialog[data-sol-status=initial] .sol-c-dialog__element{transform:translateY(var(--sol-size-200))}}.sol-c-dialog[data-sol-status=open] .sol-c-dialog__element{opacity:1;transform:translateY(0);transition-delay:var(--_overlay-duration);transition-duration:var(--_element-duration);transition-timing-function:var(--sol-motion-ease-out)}.sol-c-dialog[data-sol-status=close] .sol-c-dialog__element{opacity:0;transition-duration:var(--_element-duration);transition-timing-function:var(--sol-motion-ease)}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-dialog[data-sol-status=close] .sol-c-dialog__element{transform:translateY(calc(var(--sol-size-200)*-1))}}.sol-c-dialog__header{background:var(--sol-color-surface-2);border-start-end-radius:inherit;border-start-start-radius:inherit;flex:0;padding:var(--sol-size-100);padding-inline-start:var(--sol-size-150)}.sol-c-dialog__close{align-self:flex-start}.sol-c-dialog__close--wide-click{--_wide-size:calc(var(--sol-size-150)*2 + var(--sol-size-075));height:var(--_wide-size);margin:calc(var(--sol-size-100)*-1);margin-inline-start:auto;padding:0;width:var(--_wide-size)}.sol-c-dialog__close--wide-click:before{border-radius:var(--sol-radius-4);height:var(--sol-size-150);margin:auto;width:var(--sol-size-150)}.sol-c-dialog__wrapper{display:flex;flex:1;overflow:hidden;position:relative}.sol-c-dialog__wrapper:after,.sol-c-dialog__wrapper:before{background:linear-gradient(var(--sol-color-primary-1),#0000);block-size:var(--sol-size-150);content:"";display:block;inline-size:100%;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--sol-motion-250);z-index:2}.sol-c-dialog__wrapper:before{inset-block-start:0}.sol-c-dialog__wrapper:after{inset-block-end:0;transform:scale(-1)}.sol-c-dialog__wrapper[data-sol-scroll-end=false]:after,.sol-c-dialog__wrapper[data-sol-scroll-start=false]:before{opacity:.6}.sol-c-dialog__content{flex:1;overflow:auto;padding:var(--sol-size-150);position:relative;scroll-padding-block:var(--sol-size-150);z-index:1}.sol-c-dialog--has-actions .sol-c-dialog__content{padding-block-end:0}.sol-c-dialog:not(.sol-c-dialog--has-actions) .sol-c-dialog__content{border-end-end-radius:inherit;border-end-start-radius:inherit}.sol-c-dialog__actions{flex:0;padding:var(--sol-size-150)}}');
let Vd = (0, Ee.createContext)(null),
Ud = () => {
let e = (0, Ee.useContext)(Vd);
if (!e) throw Error("Dialog components must be wrapped in <Dialog />");
return e
},
Bd = (ms((({
as: e = "p",
id: t,
onClick: n,
...r
}, i) => {
let {
setDescriptionId: a
} = Ud(), o = (0, Ee.useId)();
return Cs((() => (a(t ?? o), () => a(void 0))), [t, o, a]), qo.jsx(e, {
id: t ?? o,
ref: i,
...r
})
})), ({
actions: e,
children: t,
onScrollToEnd: n,
type: r
}) => {
let {
setIsOpen: i
} = Ud(), {
ref: a,
blockStart: o,
blockEnd: s,
once: {
blockEnd: l
}
} = Us({
onScroll({
blockEnd: e
}) {
e && n && n()
}
}), c = (0, Ee.useCallback)((({
close: e,
onClick: t
}) => n => {
n.stopPropagation(), e && i(!1), t && t(n)
}), [i]), u = (0, Ee.useCallback)((() => i(!1)), [i]);
return qo.jsxs(qo.Fragment, {
children: [t && qo.jsx("div", {
className: "sol-c-dialog__wrapper",
"data-sol-scroll-start": o,
"data-sol-scroll-end": s,
children: qo.jsx(Ys, {
className: "sol-c-dialog__content",
color: "foreground-weak",
multiline: !0,
ref: a,
children: "function" == typeof t ? t({
close: u
}) : t
})
}), e && qo.jsx(cl, {
className: "sol-c-dialog__actions",
gap: "100",
justify: "end",
children: ("function" == typeof e ? e({
hasScrolled: l
}) : e).map((({
className: e,
close: t = !0,
disabledUntilScrolled: n,
label: i,
onClick: a,
...o
}, s, u) => qo.jsx(el, {
className: fs("sol-c-dialog__action", e),
color: r,
disabled: n && !l,
onClick: c({
close: t,
onClick: a
}),
size: "medium",
variant: s === u.length - 1 ? "default" : "monochrome",
...o,
children: i
}, s)))
})]
})
}),
Gd = (0, Ee.forwardRef)((({
actions: e,
alert: t,
children: n,
className: r,
close: i = true,
defaultOpen: a,
open: o,
onScrollToEnd: s,
onOpenChange: l,
overlay: c = true,
title: u,
trigger: d,
type: p,
...h
}, f) => {
let m = (0, Ee.useId)(),
g = (({
alert: e = !1,
defaultOpen: t,
open: n,
onOpenChange: r
} = {}) => {
let [i, a] = (0, Ee.useState)(t), [o, s] = (0, Ee.useState)(), l = n ?? i, c = r ?? a, u = Tu(), d = pd({
open: l,
onOpenChange: c,
nodeId: u
}), {
context: p
} = d, h = fd([sd(p), dd(p, {
bubbles: !1,
enabled: !e
}), xd(p, {
role: e ? "alertdialog" : "dialog"
})]), f = kd(p);
return Cs((() => (l ? document.body.setAttribute("data-sol-dialog", "") : document.body.removeAttribute("data-sol-dialog"), () => {
document.body.removeAttribute("data-sol-dialog")
})), [l]), (0, Ee.useMemo)((() => ({
isOpen: l,
setIsOpen: c,
descriptionId: o,
setDescriptionId: s,
nodeId: u,
...d,
...h,
...f
})), [l, c, o, u, d, h, f])
})({
alert: t,
defaultOpen: a,
open: o,
onOpenChange: l
}),
{
refs: v,
context: y,
getReferenceProps: _,
getFloatingProps: b,
isMounted: x,
isOpen: k,
setIsOpen: w,
status: S,
descriptionId: E,
nodeId: I
} = g,
O = tu([v.setReference, ...d ? [d.ref] : [], f]),
{
name: C
} = Ws(),
A = fs("sol-c-dialog", e && "sol-c-dialog--has-actions", c && "sol-c-dialog--overlay", r);
return qo.jsx(Vd.Provider, {
value: g,
children: qo.jsxs(Ru, {
id: I,
children: [d && (0, Ee.cloneElement)("function" == typeof d ? d({
isOpen: k
}) : d, _({
ref: O
})), x && qo.jsx(ed, {
children: qo.jsx(ad, {
className: A,
"data-sol-status": S,
"data-sol-theme": C,
lockScroll: !0,
style: {
overflow: "hidden"
},
children: qo.jsx(rd, {
context: y,
children: qo.jsxs("div", {
"aria-labelledby": u ? m : void 0,
"aria-describedby": E,
className: "sol-c-dialog__element",
ref: v.setFloating,
...b(h),
children: [(i || u) && qo.jsxs(cl, {
className: "sol-c-dialog__header",
gap: "100",
children: [u && qo.jsx(Ys, {
className: "sol-c-dialog__title",
color: "foreground",
id: m,
offset: !0,
variant: "heading-xs",
children: u
}), i && qo.jsx(el, {
"aria-label": "string" == typeof i ? i : "Close",
className: "sol-c-dialog__close sol-c-dialog__close--wide-click",
icon: Jo,
onClick: () => w(!1),
size: "small",
variant: "monochrome"
})]
}), qo.jsx(Bd, {
actions: e,
onScrollToEnd: s,
type: p,
children: n
})]
})
})
})
})]
})
})
})),
Wd = (0, Ee.forwardRef)(((e, t) => null == Au() ? qo.jsx(Du, {
children: qo.jsx(Gd, {
ref: t,
...e
})
}) : qo.jsx(Gd, {
ref: t,
...e
})));
No("@layer components{.sol-c-divider{block-size:0;border-block-start-width:var(--sol-border-1);color:var(--sol-color-surface-3)}}");
let $d = (0, Ee.forwardRef)((({
className: e,
color: t,
spacing: n,
...r
}, i) => {
let a = fs("sol-c-divider", t && `sol-u-color-${t}`, n && `sol-u-margin-b-${n}`, e);
return qo.jsx("hr", {
className: a,
ref: i,
...r
})
}));
No('@layer components{.sol-c-download-progress{align-items:center;display:grid;grid:"header header" " bar actions" "stats stats "/1fr auto}.sol-c-download-progress__header{grid-area:header;margin-block-end:var(--sol-size-025)}.sol-c-download-progress__title{flex:1}.sol-c-download-progress__subtitle{flex-shrink:0}.sol-c-download-progress__bar{grid-area:bar}.sol-c-download-progress__stats{grid-area:stats;margin-block-start:var(--sol-size-025)}.sol-c-download-progress__stat{flex-basis:33.3333333333%}.sol-c-download-progress__stat--fill,.sol-c-download-progress__stat:only-child{flex:1 1 100%}.sol-c-download-progress__actions{grid-area:actions;margin-inline-start:var(--sol-size-050)}}'), No('@layer components{.sol-c-progress{--_background:var(--sol-color-surface-1);--_foreground:var(--sol-c-progress-color,var(--sol-color-status-informative));--_radius:var(--sol-radius-8);appearance:none;background:var(--_background) none;block-size:var(--sol-size-050);border:0;border-radius:var(--_radius);color:var(--_foreground);display:block;inline-size:100%;overflow:hidden;transition:color var(--sol-motion-250)}.sol-c-progress::-webkit-progress-bar{background:#0000}.sol-c-progress--disabled{background-image:linear-gradient(135deg,var(--sol-color-surface-3) 25%,var(--sol-color-surface-3-hovered) 25% 50%,var(--sol-color-surface-3) 50% 75%,var(--sol-color-surface-3-hovered) 75%);background-size:40px 40px}.sol-c-progress--disabled::-moz-progress-bar{width:0}.sol-c-progress::-webkit-progress-value{background:currentColor;border-radius:var(--_radius)}.sol-c-progress::-moz-progress-bar{background:currentColor;border-radius:var(--_radius)}.sol-c-progress:not(.sol-c-progress--disabled):indeterminate{overflow:hidden;position:relative}.sol-c-progress:not(.sol-c-progress--disabled):indeterminate:before{animation:progress-indeterminate var(--sol-motion-1000) var(--sol-motion-ease-in) infinite;background:currentColor;border-radius:var(--_radius);content:"";inset:0;position:absolute;width:20%}.sol-c-progress:not(.sol-c-progress--disabled):indeterminate::-moz-progress-bar{animation:progress-indeterminate var(--sol-motion-1000) var(--sol-motion-ease-in) infinite;width:20%}@keyframes progress-indeterminate{0%{margin-inline-start:-20%}to{margin-inline-start:100%}}}');
let qd = (0, Ee.forwardRef)((({
className: e,
disabled: t,
max: n = 100,
value: r,
status: i,
...a
}, o) => {
let s = fs("sol-c-progress", t && "sol-c-progress--disabled", i && `sol-u-color-status-${i}`, e);
return qo.jsx("progress", {
className: s,
max: n,
ref: o,
value: r,
...a
})
})),
Hd = ms((({
actions: e,
as: t = "div",
state: n = "in-progress",
className: r,
id: i,
progress: a,
stats: o,
subtitle: s,
title: l,
...c
}, u) => {
let d = ws(i),
p = fs("sol-c-download-progress", r),
h = "completed" === n,
f = "error" === n,
m = l || s,
g = o && 0 !== o.length,
v = e && 0 !== e.length,
y = [l && d + "-title", s && d + "-subtitle"].filter(Boolean).join(" ");
return qo.jsxs(t, {
className: p,
id: d,
ref: u,
...c,
children: [m && qo.jsxs(cl, {
className: "sol-c-download-progress__header",
gap: "050",
justify: "space-between",
children: [l && qo.jsx(Ys, {
color: "foreground-weak",
className: "sol-c-download-progress__title",
id: d + "-title",
variant: "body-s",
truncate: !0,
children: l
}), s && qo.jsx(Ys, {
color: "foreground-weak",
className: "sol-c-download-progress__subtitle",
id: d + "-subtitle",
variant: "body-s",
truncate: !0,
children: s
})]
}), qo.jsx(qd, {
"aria-labelledby": y,
className: fs("sol-c-download-progress__bar", (v || m) && "sol-u-margin-bs-050", (v || g) && "sol-u-margin-be-050"),
disabled: "paused" === n,
value: h || f ? 100 : "waiting" === n ? 0 : a,
status: h ? "positive" : f ? "negative" : void 0
}), g && qo.jsx(cl, {
as: "ul",
className: "sol-c-download-progress__stats",
gap: "050",
children: o.map((({
fill: e,
label: t,
value: n
}, r) => qo.jsxs(Ys, {
as: "li",
className: fs("sol-c-download-progress__stat", e && "sol-c-download-progress__stat--fill"),
color: "foreground-weak",
variant: "body-xxs",
truncate: !0,
children: [qo.jsx("strong", {
className: "sol-c-download-progress__label",
children: t
}), ": ", n]
}, r)))
}), v && qo.jsx(cl, {
gap: "050",
className: "sol-c-download-progress__actions",
children: e.map((({
className: e,
label: t,
tooltip: n,
...r
}, i) => qo.jsx(Od, {
content: n,
enabled: !!n,
interactive: !1,
children: qo.jsx(el, {
"aria-label": t,
className: fs("sol-c-download-progress__action", e),
size: "small",
variant: "plain",
...r
})
}, i)))
})]
})
}));
No('@layer components{.sol-c-field{--_max-inline-size:32.5rem;--_gap-block:var(--sol-size-050);--_gap-inline:var(--sol-size-150);display:flex;flex-direction:column;gap:var(--_gap-block);inline-size:100%;max-inline-size:var(--_max-inline-size)}.sol-c-field__feedback,.sol-c-field__label{transition:opacity var(--sol-motion-250)}.sol-c-field--disabled .sol-c-field__feedback,.sol-c-field--disabled .sol-c-field__label{opacity:.4}.sol-c-field__label{cursor:var(--sol-cursor-interactive)}.sol-c-field--horizontal{align-items:center;display:grid;gap:0;grid:"label ........" "content feedback" "help ........"/minmax(0,var(--_max-inline-size)) minmax(25%,1fr);max-inline-size:none}.sol-c-field--horizontal .sol-c-field__label{grid-area:label;margin-block-end:var(--_gap-block)}.sol-c-field--horizontal .sol-c-field__content{grid-area:content}.sol-c-field--horizontal .sol-c-field__feedback{grid-area:feedback;margin-inline-start:var(--_gap-inline)}.sol-c-field--horizontal .sol-c-field__help{grid-area:help;margin-block-start:var(--_gap-block)}}');
let Kd = (0, Ee.createContext)(null),
Yd = () => (0, Ee.useContext)(Kd),
Qd = (0, Ee.forwardRef)((({
className: e,
id: t,
...n
}, r) => {
let {
feedbackId: i,
setHasFeedback: a
} = Yd();
(0, Ee.useLayoutEffect)((() => (a(!0, t), () => a(!1))), [t, a]);
let o = fs("sol-c-field__feedback", e);
return qo.jsx(Ad, {
"aria-live": "polite",
className: o,
id: i,
ref: r,
type: "negative",
...n
})
})),
Zd = (0, Ee.forwardRef)((({
className: e,
id: t,
...n
}, r) => {
let {
helpId: i,
setHasHelp: a
} = Yd();
(0, Ee.useLayoutEffect)((() => (a(!0, t), () => a(!1))), [t, a]);
let o = fs("sol-c-field__help", e);
return qo.jsx(Ys, {
className: o,
color: "foreground-weak",
id: i,
ref: r,
variant: "body-xs",
...n
})
})),
Xd = (0, Ee.forwardRef)((({
children: e,
className: t,
id: n,
disabled: r,
invalid: i,
required: a,
label: o,
labelType: s,
necessityIndicator: l,
horizontal: c,
error: u,
help: d,
success: p,
warning: h,
...f
}, m) => {
let g = (({
id: e,
disabled: t = !1,
invalid: n = !1,
required: r = !1,
label: i,
labelType: a = "floating",
necessityIndicator: o
}) => {
let s = (0, Ee.useId)(),
[l = (e ? `${e}-input` : s), c] = (0, Ee.useState)(),
[u = `${e??l}-feedback`, d] = (0, Ee.useState)(),
[p = `${e??l}-help`, h] = (0, Ee.useState)(),
f = `${e??l}-label`,
[m = t, g] = (0, Ee.useState)(),
[v = n, y] = (0, Ee.useState)(),
[_ = r, b] = (0, Ee.useState)(),
[x, k] = (0, Ee.useState)(!1),
[w, S] = (0, Ee.useState)(!1),
[E, I] = (0, Ee.useState)(null),
[O, C] = (0, Ee.useState)("label"),
A = (0, Ee.useMemo)((() => "label" !== O ? {
id: f,
onClick() {
m || E?.focus()
}
} : {
htmlFor: l
}), [l, E, m, O, f]),
P = E || "floating" !== a ? a : "classic",
T = (0, Ee.useCallback)((e => {
let t = e ? [e] : [];
return x && t.push(u), w && t.push(p), t.length ? t.join(" ") : void 0
}), [u, x, w, p]),
R = (0, Ee.useCallback)((e => {
let t = e ? [e] : [];
return "label" !== O && t.push(f, l), t.length ? t.join(" ") : void 0
}), [l, O, f]);
return (0, Ee.useMemo)((() => ({
inputId: l,
feedbackId: u,
helpId: p,
labelId: f,
hasFeedback: x,
hasHelp: w,
isDisabled: m,
isInvalid: v,
isRequired: _,
label: i,
labelElementType: O,
labelProps: A,
labelType: P,
necessityIndicator: o,
setInputId: c,
setInputRef: I,
setLabelElementType: C,
setHasFeedback: (e, t) => {
k(e), d(t)
},
setHasHelp: (e, t) => {
S(e), h(t)
},
setIsDisabled: g,
setIsInvalid: y,
setIsRequired: b,
getDescribedby: T,
getLabelledby: R
})), [l, u, p, f, x, w, m, v, _, i, O, P, A, o, T, R])
})({
id: n,
disabled: r,
invalid: i,
required: a,
label: o,
labelType: s,
necessityIndicator: l
}),
{
isDisabled: v,
isInvalid: y,
isRequired: _,
labelType: b,
labelElementType: x,
labelProps: k
} = g,
w = fs("sol-c-field", c && "sol-c-field--horizontal", v && "sol-c-field--disabled", y && "sol-c-field--invalid", _ && "sol-c-field--required", t),
S = (0, Ee.useMemo)((() => "floating" !== b && o ? qo.jsxs(cl, {
as: x,
align: "baseline",
className: fs("sol-c-field__label", "hidden" === b && "sol-u-hide-visually"),
gap: "025",
wrap: !0,
...k,
children: [qo.jsx(Ys, {
as: "span",
color: "foreground-weak",
variant: "label-m",
children: o
}), l && qo.jsxs(Ys, {
"aria-hidden": !!_ || void 0,
as: "span",
color: "foreground-weak",
variant: "label-s",
transform: "lowercase",
children: ["(", l, ")"]
})]
}) : null), [_, x, o, k, b, l]),
E = (0, Ee.useMemo)((() => u ? qo.jsx(Qd, {
children: u
}) : p ? qo.jsx(Qd, {
icon: Qo,
type: "positive",
children: p
}) : h ? qo.jsx(Qd, {
icon: hs,
type: "notice",
children: h
}) : null), [u, p, h]);
return qo.jsx(Kd.Provider, {
value: g,
children: qo.jsxs("div", {
className: w,
id: n,
ref: m,
...f,
children: [S, qo.jsx(cl, {
className: "sol-c-field__content",
gap: "100",
children: e
}), E, d && qo.jsx(Zd, {
children: d
})]
})
})
}));
No("@layer components{.sol-c-game-button{--_background-color:rgba(var(--sol-color-primary-1-rgb)/0.8);--_border-color:var(--sol-color-accent-1);--_foreground-color:var(--sol-color-neutral-4);--_border-radius:var(--sol-radius-8);--_border-width:var(--sol-border-2);--_hologram-color:var(--sol-color-accent-1);--_hologram-offset:0;--_hologram-opacity:0;--_glow-color:var(--sol-color-neutral-4);--_glow-speed:var(--sol-motion-4000);--_glow-state:running;--_glow-opacity:1;--_light-color:var(--sol-color-accent-1);--_background-mask:var(--sol-c-game-button-background-mask,url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath d='M55 32.5V35a7 7 0 0 1-2.26 5.14l-14.12 13A7 7 0 0 1 33.88 55H8a7 7 0 0 1-7-7V8a7 7 0 0 1 7-7h40a7 7 0 0 1 7 7v24.5Z'/%3E%3C/svg%3E\") 24 fill);--_border-mask:var(--sol-c-game-button-border-mask,url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M55 32.5V35a7 7 0 0 1-2.26 5.14l-14.12 13A7 7 0 0 1 33.88 55H8a7 7 0 0 1-7-7V8a7 7 0 0 1 7-7h40a7 7 0 0 1 7 7v24.5Z'/%3E%3C/svg%3E\") 24 fill);border-radius:var(--_border-radius);color:var(--_border-color);cursor:var(--sol-cursor-interactive);display:flex;position:relative;transition-duration:var(--sol-motion-250);transition-property:color,opacity,transform;transition-timing-function:var(--sol-motion-ease);user-select:none}.sol-c-game-button:hover{--_border-color:var(--sol-color-accent-3);--_hologram-offset:var(--sol-size-025);--_hologram-opacity:1}.sol-c-game-button--pressed,.sol-c-game-button:active{--_border-color:var(--sol-color-accent-2);--_hologram-offset:0;--_hologram-opacity:0}.sol-c-game-button:disabled,.sol-c-game-button[aria-disabled=true]{opacity:.4;pointer-events:none}.sol-c-game-button[aria-busy=true]{--_background-color:rgba(var(--sol-color-primary-5-rgb)/0.8)}.sol-c-game-button:disabled,.sol-c-game-button:hover,.sol-c-game-button[aria-busy=true],.sol-c-game-button[aria-disabled=true]{--_glow-opacity:0;--_glow-state:paused}.sol-c-game-button__wrapper{-webkit-mask-box-image:var(--_background-mask);align-items:center;background:var(--_background-color);block-size:3.5rem;border-radius:inherit;color:var(--_foreground-color);display:flex;flex:1;gap:var(--sol-size-050);inline-size:18.5rem;justify-content:center;mask-border:var(--_background-mask);overflow:hidden;padding:0 var(--sol-size-150);position:relative;transition-duration:var(--sol-motion-250);transition-property:background-color,color,transform;transition-timing-function:var(--sol-motion-ease);z-index:2}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-game-button__wrapper{transform:translate(var(--_hologram-offset),calc(var(--_hologram-offset)*-1))}.sol-c-game-button--released .sol-c-game-button__wrapper:before{animation:sol-c-game-button-sweep var(--sol-motion-500) var(--sol-motion-linear);animation-delay:0;height:2rem;width:13rem}.sol-c-game-button--released .sol-c-game-button__wrapper:before,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-button__wrapper:before{background:linear-gradient(to right,var(--_light-color),#0000) no-repeat 50%;content:\"\";opacity:0;position:absolute;transform:translateX(-100%) rotate(calc(var(--sol-motion-angle)*-1))}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-button__wrapper:before{animation:sol-c-game-button-sweep var(--sol-motion-500) var(--sol-motion-linear);animation-delay:.9s;height:4rem;width:17rem}}@keyframes sol-c-game-button-sweep{50%{opacity:.4}to{opacity:0;transform:translateX(100%) rotate(calc(var(--sol-motion-angle)*-1))}}.sol-c-game-button__icon{--sol-c-icon-size:var(--sol-size-125);position:relative;z-index:3}.sol-c-game-button__label{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font:var(--sol-text-button-m);position:relative;text-transform:var(--sol-text-transform-uppercase);top:var(--sol-text-button-m-font-offset);z-index:3}.sol-c-game-button__border{border:var(--_border-width) solid;border-radius:inherit;inset:0;overflow:hidden;position:absolute;z-index:4}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-game-button__border{transform:translate(var(--_hologram-offset),calc(var(--_hologram-offset)*-1));transition:transform var(--sol-motion-250) var(--sol-motion-ease)}}@supports ((-webkit-mask-box-image:var(--_border-mask )) or (mask-border:var(--_border-mask ))){.sol-c-game-button__border{-webkit-mask-box-image:var(--_border-mask);background:currentColor;border:0;mask-border:var(--_border-mask)}@container style(--sol-prefers-reduced-motion: no-preference){@supports (offset-path:inset(0 round var(--_border-radius ))){.sol-c-game-button__border:before{animation:sol-c-game-button-glow var(--_glow-speed) var(--sol-motion-linear) infinite var(--_glow-state);backface-visibility:hidden;background:radial-gradient(farthest-side,var(--_glow-color),#0000);content:\"\";display:block;height:3.5rem;offset-distance:0;offset-path:inset(0 round var(--_border-radius));offset-rotate:0deg;opacity:var(--_glow-opacity);position:absolute;transition:opacity var(--sol-motion-250) var(--sol-motion-ease);width:11.625rem}}}@keyframes sol-c-game-button-glow{to{offset-distance:100%}}}.sol-c-game-button__holo{display:none}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-game-button__holo{border:var(--_border-width) solid;border-radius:inherit;color:var(--_hologram-color);display:block;filter:blur(2px);inset:0;opacity:var(--_hologram-opacity);position:absolute;transform:translate(calc(var(--_hologram-offset)*-1),var(--_hologram-offset));transition-duration:var(--sol-motion-250);transition-property:opacity,transform;transition-timing-function:var(--sol-motion-ease);z-index:1}@supports ((-webkit-mask-box-image:var(--_border-mask )) or (mask-border:var(--_border-mask ))){.sol-c-game-button__holo{border:0}.sol-c-game-button__holo:before{-webkit-mask-box-image:var(--_border-mask);background:currentColor;content:\"\";inset:0;mask-border:var(--_border-mask);position:absolute}}}}");
let Jd = (0, Ee.forwardRef)((({
children: e,
className: t,
icon: n,
iconAnimation: r = !0,
loading: i,
loadingIcon: a = as,
loadingIconAnimation: o = !0,
onKeyDown: s,
onKeyUp: l,
onMouseDown: c,
onMouseEnter: u,
onMouseLeave: d,
onMouseUp: p,
...h
}, f) => {
let [m, g] = (0, Ee.useState)(!1), [v, y] = (0, Ee.useState)(!1), [_, b] = (0, Ee.useState)(!1), x = (0, Ee.useCallback)((e => {
("Space" === e.code || "Enter" === e.code) && (y(!1), g(!0)), s && s(e)
}), [s]), k = (0, Ee.useCallback)((e => {
("Space" === e.code || "Enter" === e.code) && (y(!0), g(!1)), l && l(e)
}), [l]), w = (0, Ee.useCallback)((e => {
y(!1), g(!0), c?.(e)
}), [c]), S = (0, Ee.useCallback)((e => {
b(!0), u?.(e)
}), [u]), E = (0, Ee.useCallback)((e => {
b(!1), d?.(e)
}), [d]), I = (0, Ee.useCallback)((e => {
y(!0), g(!1), p?.(e)
}), [p]), O = i && a ? a : n, C = (0, Ee.useMemo)((() => {
if (i) switch (o) {
case "hover":
return _;
case "not-hover":
return !_;
default:
return o
}
switch (r) {
case "hover":
return _;
case "not-hover":
return !_;
default:
return r
}
}), [r, _, i, o]), A = fs("sol-c-game-button", m && "sol-c-game-button--pressed", v && "sol-c-game-button--released", t);
return qo.jsxs(qs, {
className: A,
loading: i,
onKeyDown: x,
onKeyUp: k,
onMouseDown: w,
onMouseEnter: S,
onMouseLeave: E,
onMouseUp: I,
ref: f,
...h,
children: [qo.jsx("span", {
"aria-hidden": "true",
className: "sol-c-game-button__border"
}), qo.jsxs("span", {
className: "sol-c-game-button__wrapper",
children: [O && qo.jsx(Ks, {
className: "sol-c-game-button__icon",
isPlaying: C,
source: O
}), qo.jsx("span", {
className: "sol-c-game-button__label",
children: e
})]
}), qo.jsx("span", {
"aria-hidden": "true",
className: "sol-c-game-button__holo"
})]
})
}));
No('@layer components{.sol-c-game-page{display:flex;flex:1 0 auto;flex-direction:column;overflow:hidden;position:relative;z-index:1}.sol-c-game-page__navigation{inset-block-start:0;inset-inline-start:0;position:absolute;z-index:2}.sol-c-game-page__wrapper{--_background:var(--sol-color-primary-1-rgb);--_gradient:rgb(var(--_background)/1) 0%,rgb(var(--_background)/0.991615) 11.79%,rgb(var(--_background)/0.967585) 21.38%,rgb(var(--_background)/0.9296) 29.12%,rgb(var(--_background)/0.879348) 35.34%,rgb(var(--_background)/0.818519) 40.37%,rgb(var(--_background)/0.7488) 44.56%,rgb(var(--_background)/0.671881) 48.24%,rgb(var(--_background)/0.589452) 51.76%,rgb(var(--_background)/0.5032) 55.44%,rgb(var(--_background)/0.414815) 59.63%,rgb(var(--_background)/0.325985) 64.66%,rgb(var(--_background)/0.2384) 70.88%,rgb(var(--_background)/0.153748) 78.62%,rgb(var(--_background)/0.0737185) 88.21%,rgb(var(--_background)/0) 100%;--_padding-inline:var(--sol-size-550) var(--sol-size-200);--_gutter-size:var(--sol-size-500);--_content-overflow-indicator-size:var(--sol-size-100);--_content-padding-inline-start:var(--_content-overflow-indicator-size);--_content-padding-inline-end:var(--sol-size-200);--_content-gap:var(--sol-size-200);background:rgb(var(--_background));column-gap:var(--_gutter-size);display:grid;flex:1;grid:"header header " 1fr "title tabs " auto "actions content" 23.5rem/18.5rem minmax(0,1fr);padding-block:0 var(--sol-size-250);padding-inline:var(--_padding-inline);position:relative;z-index:1}.sol-c-game-page__header{--_padding-inline:var(--sol-size-200) var(--sol-size-550);display:flex;grid-area:header;padding-block:var(--sol-size-250);padding-inline:var(--_padding-inline)}.sol-c-game-page__logo{display:block;flex:1;margin:auto;max-inline-size:35vw}.sol-c-game-page__logo svg{display:block;height:100%;width:100%}.sol-c-game-page__title{align-self:end;grid-area:title}.sol-c-game-page__tabs{align-self:end;display:flex;flex-wrap:wrap;grid-area:tabs;padding-block:var(--sol-size-050);position:relative}.sol-c-game-page__tab .sol-c-text:after,.sol-c-game-page__tabs-indicator{--_indicator-color:var(--sol-color-interactive-selected);background:var(--_indicator-color);block-size:var(--sol-border-2);inset-block-end:0;inset-inline:0;opacity:0;position:absolute;top:calc(100% - var(--sol-size-050) - var(--sol-border-2));transition:all var(--sol-motion-250) var(--sol-motion-ease);width:0}.sol-c-game-page__tabs-indicator{--_tab-color:var(--sol-color-foreground-weak)}.sol-c-game-page__tab .sol-c-text{position:relative}.sol-c-game-page__tab .sol-c-text:after{background:var(--_tab-color);content:"";top:calc(var(--sol-border-2) + var(--sol-size-200))}.sol-c-game-page__tab{align-items:center;color:var(--_tab-color);cursor:var(--sol-cursor-interactive);display:flex;gap:var(--sol-size-050);padding-block:var(--sol-size-075);padding-inline:var(--sol-size-075);position:relative;transition:color var(--sol-motion-250) var(--sol-motion-ease);white-space:nowrap}.sol-c-game-page__tab:not([dir=rtl]):first-child{padding-left:0}.sol-c-game-page__tab[aria-current=true],.sol-c-game-page__tab[aria-pressed=true]{--_tab-color:var(--sol-color-interactive-selected)}.sol-c-game-page__tab[aria-current=true]:hover~.sol-c-game-page__tabs-indicator,.sol-c-game-page__tab[aria-pressed=true]:hover~.sol-c-game-page__tabs-indicator{background:var(--sol-color-interactive-hovered)}.sol-c-game-page__tab:hover{--_tab-color:var(--sol-color-interactive-hovered)}.sol-c-game-page__tab:active{--_tab-color:var(--sol-color-interactive-pressed)}@container style(--sol-prefers-reduced-motion: reduce){.sol-c-game-page__tab .sol-c-text:after{width:100%}.sol-c-game-page__tab:not([dir=rtl]):last-child{padding-right:0}.sol-c-game-page__tab[aria-current=true] .sol-c-text:after,.sol-c-game-page__tab[aria-pressed=true] .sol-c-text:after{opacity:1}}.sol-c-game-page__actions{grid-area:actions;padding-block-start:var(--sol-size-100)}.sol-c-game-page__channel-selector .sol-c-field__content>.sol-c-input{gap:0;padding-right:0}.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__separator{margin-left:var(--sol-size-100)}.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button{cursor:pointer;display:block;padding:var(--sol-size-075) var(--sol-size-100)}.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button:before{border-radius:var(--sol-radius-4);height:var(--sol-size-150);margin:auto;width:var(--sol-size-150)}.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button .sol-c-icon{margin-top:-1px}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button .sol-c-icon,.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button:before{transition:all var(--sol-motion-250) var(--sol-motion-ease)}.sol-c-game-page__channel-selector .sol-c-field__content .sol-c-input__suffix .sol-c-button:hover .sol-c-icon{transform:rotate(90deg)}}.sol-c-game-page__content{align-self:flex-start;display:flex;flex:1;grid-area:content;position:relative}.sol-c-game-page__content[data-sol-scroll-start]:before{--_border:linear-gradient(#0000,var(--sol-color-accent-1) 25% 75%,#0000) no-repeat left /var(--sol-border-1) 100%;--_shadow:radial-gradient(100% 50% at 0% 50%,rgb(var(--sol-color-primary-1-rgb)/0.7),#0000);background:var(--_border),var(--_shadow);content:"";inline-size:var(--_content-overflow-indicator-size);inset-block-end:var(--sol-size-100);inset-block-start:var(--sol-size-150);inset-inline-start:calc(var(--_content-padding-inline-start)*-1);opacity:0;position:absolute;transition:opacity var(--sol-motion-250);z-index:2}.sol-c-game-page__content[data-sol-scroll-start=false]:before{opacity:1}[dir=rtl] .sol-c-game-page__content[data-sol-scroll-start]:before{transform:scaleX(-1)}.sol-c-game-page__cards{display:flex;gap:var(--_content-gap);margin-inline-end:calc(var(--_content-padding-inline-end)*-1);margin-inline-start:calc(var(--_content-padding-inline-start)*-1);overflow:hidden;overflow-x:auto;overscroll-behavior-x:contain;padding-block-end:var(--sol-size-150);padding-block-start:var(--sol-size-300);padding-inline-end:var(--_content-padding-inline-end);padding-inline-start:var(--_content-padding-inline-start);position:relative;scroll-padding-inline-end:var(--_content-padding-inline-end);scroll-padding-inline-start:var(--_content-padding-inline-start);z-index:1}.sol-c-game-page__cards::-webkit-scrollbar-button:end:increment,.sol-c-game-page__cards::-webkit-scrollbar-button:start:decrement{display:block}.sol-c-game-page__cards::-webkit-scrollbar-button:end:decrement,.sol-c-game-page__cards::-webkit-scrollbar-button:start:increment{display:none}.sol-c-game-page__cards::-webkit-scrollbar-button:decrement,[dir=rtl] .sol-c-game-page__cards::-webkit-scrollbar-button:increment{width:calc(var(--_content-padding-inline-start) - var(--sol-scrollbar-border))}.sol-c-game-page__cards::-webkit-scrollbar-button:increment,[dir=rtl] .sol-c-game-page__cards::-webkit-scrollbar-button:decrement{width:calc(var(--_content-padding-inline-end) - var(--sol-scrollbar-border))}.sol-c-game-page__card{display:flex;flex:0 0 auto;flex-direction:column}.sol-c-game-page__empty{margin-block:auto;padding-block:var(--sol-size-300)}.sol-c-game-page__background{inset-block-start:0;inset-inline:0;padding-top:42.8571428571%;position:absolute;z-index:-1}.sol-c-game-page__background:before{background:linear-gradient(to top,var(--_gradient));content:"";inset:0;position:absolute;z-index:1}.sol-c-game-page__image,.sol-c-game-page__video{height:100%;left:0;object-fit:cover;object-position:top;position:absolute;top:0;width:100%}.sol-c-game-page__image{animation:sol-motion-fade-in var(--sol-motion-300) var(--sol-motion-ease-out) forwards;opacity:0}.sol-c-game-page__video{display:none;opacity:0}.sol-c-game-page__video--is-loaded{animation:sol-motion-fade-in var(--sol-motion-500) linear forwards;display:block}}@container style(--sol-motion-transition-effects: enabled){.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__actions,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__content,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__logo,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__navigation,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__title,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__actions,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__card,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__content,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__logo,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__navigation,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__tab,.sol-c-game-page[data-sol-animation-gamepage=is-init] .sol-c-game-page__title{opacity:0}.sol-c-game-page[data-sol-animation-gamepage=is-entering]{--_anim-base-delay:0s}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__actions,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__content,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__logo,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__navigation,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tabs-indicator,.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__title{animation:sol-motion-fade-in var(--sol-motion-500) var(--sol-motion-ease-out) forwards;opacity:0}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__logo{animation-delay:var(--_anim-base-delay)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__navigation{animation-delay:calc(var(--_anim-base-delay) + .3s);transform:translateX(-20px)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__title{animation-delay:calc(var(--_anim-base-delay) + .5s);transform:translateX(-10px)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__actions{animation-delay:calc(var(--_anim-base-delay) + .6s);transform:translateX(-15px)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab{transform:translateY(5px)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:first-child{animation-delay:calc(var(--_anim-base-delay) + .7s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(2){animation-delay:calc(var(--_anim-base-delay) + .8s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(3){animation-delay:calc(var(--_anim-base-delay) + .9s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(4){animation-delay:calc(var(--_anim-base-delay) + 1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(5){animation-delay:calc(var(--_anim-base-delay) + 1.1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(6){animation-delay:calc(var(--_anim-base-delay) + 1.2s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(7){animation-delay:calc(var(--_anim-base-delay) + 1.3s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(8){animation-delay:calc(var(--_anim-base-delay) + 1.4s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(9){animation-delay:calc(var(--_anim-base-delay) + 1.5s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tab:nth-child(10){animation-delay:calc(var(--_anim-base-delay) + 1.6s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__tabs-indicator{animation-delay:calc(var(--_anim-base-delay) + 1.1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__content{animation-delay:calc(var(--_anim-base-delay) + .7s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card{transform:translateY(20px)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:first-child{animation-delay:calc(var(--_anim-base-delay) + .8s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(2){animation-delay:calc(var(--_anim-base-delay) + .9s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(3){animation-delay:calc(var(--_anim-base-delay) + 1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(4){animation-delay:calc(var(--_anim-base-delay) + 1.1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(5){animation-delay:calc(var(--_anim-base-delay) + 1.2s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(6){animation-delay:calc(var(--_anim-base-delay) + 1.3s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(7){animation-delay:calc(var(--_anim-base-delay) + 1.4s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(8){animation-delay:calc(var(--_anim-base-delay) + 1.5s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(9){animation-delay:calc(var(--_anim-base-delay) + 1.6s)}.sol-c-game-page[data-sol-animation-gamepage=is-entering] .sol-c-game-page__card:nth-child(10){animation-delay:calc(var(--_anim-base-delay) + 1.7s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered]{--_anim-base-delay:0s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__actions,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__content,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__logo,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__navigation,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tabs-indicator,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__title{animation:sol-motion-fade-in var(--sol-motion-300) var(--sol-motion-ease-out) forwards;opacity:0}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__logo{animation-delay:var(--_anim-base-delay)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__title{animation-delay:calc(var(--_anim-base-delay) + .2s);transform:translateX(-10px)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__actions{animation-delay:calc(var(--_anim-base-delay) + .3s);transform:translateX(-15px)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab{transform:translateY(5px)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:first-child{animation-delay:calc(var(--_anim-base-delay) + .2s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(2){animation-delay:calc(var(--_anim-base-delay) + .3s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(3){animation-delay:calc(var(--_anim-base-delay) + .4s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(4){animation-delay:calc(var(--_anim-base-delay) + .5s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(5){animation-delay:calc(var(--_anim-base-delay) + .6s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(6){animation-delay:calc(var(--_anim-base-delay) + .7s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(7){animation-delay:calc(var(--_anim-base-delay) + .8s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(8){animation-delay:calc(var(--_anim-base-delay) + .9s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(9){animation-delay:calc(var(--_anim-base-delay) + 1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tab:nth-child(10){animation-delay:calc(var(--_anim-base-delay) + 1.1s)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__content,.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__tabs-indicator{animation-delay:0}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card{transform:translateY(20px)}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:first-child{animation-delay:0s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(2){animation-delay:.1s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(3){animation-delay:.2s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(4){animation-delay:.3s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(5){animation-delay:.4s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(6){animation-delay:.5s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(7){animation-delay:.6s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(8){animation-delay:.7s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(9){animation-delay:.8s}.sol-c-game-page[data-sol-animation-gamepage=is-entered] .sol-c-game-page__card:nth-child(10){animation-delay:.9s}}');
let ep = ms((({
children: e,
className: t,
title: n,
...r
}, i) => {
let a = fs("sol-c-game-page__actions", t);
return qo.jsx(cl, {
className: a,
gap: "150",
ref: i,
vertical: !0,
...r,
children: e
})
})),
tp = ms((({
as: e = "div",
className: t,
image: n,
video: r,
...i
}, a) => {
let o = fs("sol-c-game-page__background", t),
[s, l] = (0, Ee.useState)(!0),
c = (0, Ee.useRef)(null);
return (0, Ee.useEffect)((() => {
s || c.current?.play()
}), [s]), qo.jsxs(e, {
"aria-hidden": "true",
className: o,
ref: a,
...i,
children: [n && qo.jsx("img", {
alt: "",
className: "sol-c-game-page__image",
..."string" == typeof n ? {
src: n
} : n
}), r && qo.jsx("video", {
ref: c,
className: "sol-c-game-page__video " + (s ? "" : "sol-c-game-page__video--is-loaded"),
disableRemotePlayback: !0,
loop: !0,
muted: !0,
playsInline: !0,
poster: n && "string" == typeof n ? n : void 0,
preload: "auto",
src: "string" == typeof r ? r : void 0,
onCanPlayThrough: () => l(!1),
children: Array.isArray(r) && r.map(((e, t) => qo.jsx("source", {
...e
}, t)))
})]
})
}));
var np = "undefined" != typeof window ? Ee.useLayoutEffect : Ee.useEffect;
let rp = ms((({
as: e = "div",
children: t,
className: n,
empty: r,
...i
}, a) => {
var o, s, l, c, u, d, p, h, f, m, g, v, y, _, b, x, k, w, S, E, I, O, C, A, P, T, R, D, L, N, M, j;
let {
ref: F,
inlineStart: z,
inlineEnd: V
} = Us(), {
events: U
} = (m = void 0 === (f = (h = {
isMounted: !!t
}).decayRate) ? .95 : f, v = void 0 === (g = h.safeDisplacement) ? 10 : g, _ = void 0 !== (y = h.applyRubberBandEffect) && y, x = void 0 === (b = h.activeMouseButton) ? "Left" : b, w = void 0 === (k = h.isMounted) || k, S = (0, Ee.useRef)({
isMouseDown: !1,
isDraggingX: !1,
isDraggingY: !1,
initialMouseX: 0,
initialMouseY: 0,
lastMouseX: 0,
lastMouseY: 0,
scrollSpeedX: 0,
scrollSpeedY: 0,
lastScrollX: 0,
lastScrollY: 0
}), E = !1, I = !1, O = 0, C = 0, A = 1 / 60 * 1e3, np((function() {
w && (E = "scroll" === window.getComputedStyle(F.current).overflowX, I = "scroll" === window.getComputedStyle(F.current).overflowY, O = F.current.scrollWidth - F.current.clientWidth, C = F.current.scrollHeight - F.current.clientHeight, o = window.getComputedStyle(F.current).cursor, s = [], l = [], c = [], F.current.childNodes.forEach((function(e) {
s.push(window.getComputedStyle(e).cursor), l.push("none" === window.getComputedStyle(e).transform ? "" : window.getComputedStyle(e).transform), c.push("none" === window.getComputedStyle(e).transition ? "" : window.getComputedStyle(e).transition)
})))
}), [w]), P = function() {
var e = S.current.scrollSpeedX * A,
t = S.current.scrollSpeedY * A,
n = F.current.scrollLeft + e,
r = F.current.scrollTop + t;
F.current.scrollLeft = n, F.current.scrollTop = r, S.current.lastScrollX = n, S.current.lastScrollY = r
}, T = function(e) {
var t = e.clientX - S.current.initialMouseX,
n = e.clientY - S.current.initialMouseY,
r = F.current,
i = r.clientWidth,
a = r.clientHeight,
o = 0,
s = 0;
E && I ? (o = .3 * i * Math.sign(t) * Math.log10(1 + .5 * Math.abs(t) / i), s = .3 * a * Math.sign(n) * Math.log10(1 + .5 * Math.abs(n) / a)) : E ? o = .3 * i * Math.sign(t) * Math.log10(1 + .5 * Math.abs(t) / i) : I && (s = .3 * a * Math.sign(n) * Math.log10(1 + .5 * Math.abs(n) / a)), F.current.childNodes.forEach((function(e) {
e.style.transform = "translate3d(" + o + "px, " + s + "px, 0px)", e.style.transition = "transform 0ms"
}))
}, R = function() {
F.current.childNodes.forEach((function(e, t) {
e.style.transform = l[t], e.style.transition = c[t]
}))
}, D = function() {
d = setInterval((function() {
var e = S.current.scrollSpeedX * m;
S.current.scrollSpeedX = e;
var t = F.current.scrollLeft <= 0,
n = F.current.scrollLeft >= O;
P(), (.05 > Math.abs(e) || S.current.isMouseDown || t || n) && (S.current.scrollSpeedX = 0, clearInterval(d))
}), A), p = setInterval((function() {
var e = S.current.scrollSpeedY * m;
S.current.scrollSpeedY = e;
var t = F.current.scrollTop <= 0,
n = F.current.scrollTop >= C;
P(), (.05 > Math.abs(e) || S.current.isMouseDown || t || n) && (S.current.scrollSpeedY = 0, clearInterval(p))
}), A), S.current.isDraggingX = !1, S.current.isDraggingY = !1, _ && (F.current.childNodes.forEach((function(e) {
e.style.transform = "translate3d(0px, 0px, 0px)", e.style.transition = "transform 250ms"
})), u = setTimeout(R, 250))
}, L = function(e) {
e.preventDefault(), e.stopImmediatePropagation()
}, N = function(e) {
var t = S.current.isDraggingX || S.current.isDraggingY,
n = S.current.initialMouseX - e.clientX,
r = S.current.initialMouseY - e.clientY,
i = t && (Math.abs(n) > v || Math.abs(r) > v);
i ? F.current.childNodes.forEach((function(e) {
e.addEventListener("click", L)
})) : F.current.childNodes.forEach((function(e) {
e.removeEventListener("click", L)
})), S.current.isMouseDown = !1, S.current.lastMouseX = 0, S.current.lastMouseY = 0, F.current.style.cursor = o, F.current.childNodes.forEach((function(e, t) {
e.style.cursor = s[t]
})), i && D()
}, M = function(e) {
if (S.current.isMouseDown) {
e.preventDefault();
var t = S.current.lastMouseX - e.clientX;
S.current.lastMouseX = e.clientX, S.current.scrollSpeedX = t / A, S.current.isDraggingX = !0;
var n = S.current.lastMouseY - e.clientY;
S.current.lastMouseY = e.clientY, S.current.scrollSpeedY = n / A, S.current.isDraggingY = !0, F.current.style.cursor = "grabbing", F.current.childNodes.forEach((function(e) {
e.style.cursor = "grabbing"
}));
var r = F.current.scrollLeft <= 0 && E,
i = F.current.scrollLeft >= O && E,
a = F.current.scrollTop <= 0 && I,
o = F.current.scrollTop >= C && I;
(r || i || a || o) && _ && T(e), P()
}
}, j = function() {
O = F.current.scrollWidth - F.current.clientWidth, C = F.current.scrollHeight - F.current.clientHeight
}, (0, Ee.useEffect)((function() {
return w && (window.addEventListener("mouseup", N), window.addEventListener("mousemove", M), window.addEventListener("resize", j)),
function() {
window.removeEventListener("mouseup", N), window.removeEventListener("mousemove", M), window.removeEventListener("resize", j), clearInterval(d), clearInterval(p), clearTimeout(u)
}
}), [w]), {
events: {
onMouseDown: function(e) {
var t;
t = e.buttons, ("Left" === x && 1 === t || "Middle" === x && 4 === t || "Right" === x && 2 === t) && (S.current.isMouseDown = !0, S.current.lastMouseX = e.clientX, S.current.lastMouseY = e.clientY, S.current.initialMouseX = e.clientX, S.current.initialMouseY = e.clientY)
}
}
}), B = fs("sol-c-game-page__content", n);
return qo.jsx(e, {
className: B,
"data-sol-scroll-start": z,
"data-sol-scroll-end": V,
ref: a,
...i,
children: t ? qo.jsx("ul", {
className: "sol-c-game-page__cards",
"data-sol-scrollbar-hidden": "true",
ref: F,
...U,
children: Ee.Children.map(t, ((e, t) => qo.jsx("li", {
className: "sol-c-game-page__card",
children: e
}, t)))
}) : r && qo.jsx(Ys, {
className: "sol-c-game-page__empty",
variant: "heading-xs",
children: r
})
})
})),
ip = ms((({
as: e = "div",
animation: t,
playLottie: n = !1,
className: r,
logo: i,
...a
}, o) => {
let s = fs("sol-c-game-page__header", r),
[l, c] = (0, Ee.useState)(!1);
(0, Ee.useEffect)((() => {
n && c(!0)
}), [n]);
let u = zs(t, {
loop: !1,
isPlaying: l
});
return qo.jsx(e, {
"aria-hidden": "true",
className: s,
ref: o,
...a,
children: qo.jsx(u, {
className: "sol-c-game-page__logo",
children: i && qo.jsx("img", {
alt: "Game logo",
src: i
})
})
})
}));
No("@layer components{.sol-c-tag{align-items:center;background:var(--sol-color-surface-1);border-radius:var(--sol-radius-4);color:var(--sol-color-foregroud);display:inline-flex;justify-content:center;max-inline-size:100%;min-inline-size:var(--sol-size-150);padding-block:var(--sol-size-025);padding-inline:var(--sol-size-050)}}");
let ap = ms((({
as: e = "p",
children: t,
className: n,
status: r,
...i
}, a) => {
let {
ref: o,
hasOverflow: s
} = ks(), l = fs("sol-c-tag", r && `sol-u-background-status-${r}-fill sol-u-color-status-${r}-fill-contrast`, n);
return qo.jsx(Od, {
content: t,
enabled: s,
children: qo.jsx(e, {
className: l,
ref: a,
...i,
children: qo.jsx(Ys, {
as: "span",
className: "sol-c-tag__label",
ref: o,
truncate: !0,
variant: "label-s",
children: t
})
})
})
})),
op = ms((({
className: e,
status: t,
title: n,
...r
}, i) => {
let a = fs("sol-c-game-page__message", e),
o = qo.jsx(Ys, {
className: a,
ref: i,
color: "foreground-weak",
variant: "body-s",
...r
});
return n ? qo.jsxs(cl, {
gap: "050",
vertical: !0,
align: "start",
children: [qo.jsx(ap, {
as: "h2",
status: t,
children: n
}), o]
}) : o
})),
sp = (0, Ee.forwardRef)((({
active: e,
className: t,
icon: n,
label: r,
...i
}, a) => {
let o = fs("sol-c-game-page__tab", t),
s = {
[i.href ? "aria-current" : "aria-pressed"]: !!e || void 0,
className: o,
ref: a,
...i
};
return qo.jsxs(qs, {
...s,
children: [r && qo.jsx(Ys, {
as: "span",
variant: "button-m",
children: r
}), n && qo.jsx(Ks, {
source: n
})]
})
}));
var lp = Object.defineProperty,
cp = {};
((e, t) => {
for (var n in t) lp(e, n, {
get: t[n],
enumerable: !0
})
})(cp, {
assign: () => Vp,
colors: () => jp,
createStringInterpolator: () => jo,
skipAnimation: () => Fp,
to: () => Fo,
willAdvance: () => zp
});
var up = Ip(),
dp = e => kp(e, up),
pp = Ip();
dp.write = e => kp(e, pp);
var hp = Ip();
dp.onStart = e => kp(e, hp);
var fp = Ip();
dp.onFrame = e => kp(e, fp);
var mp = Ip();
dp.onFinish = e => kp(e, mp);
var gp = [];
dp.setTimeout = (e, t) => {
let n = dp.now() + t,
r = () => {
let e = gp.findIndex((e => e.cancel == r));
~e && gp.splice(e, 1), bp -= ~e ? 1 : 0
},
i = {
time: n,
handler: e,
cancel: r
};
return gp.splice(vp(n), 0, i), bp += 1, wp(), i
};
var vp = e => ~(~gp.findIndex((t => t.time > e)) || ~gp.length);
dp.cancel = e => {
hp.delete(e), fp.delete(e), mp.delete(e), up.delete(e), pp.delete(e)
}, dp.sync = e => {
xp = !0, dp.batchedUpdates(e), xp = !1
}, dp.throttle = e => {
let t;
function n() {
try {
e(...t)
} finally {
t = null
}
}
function r(...e) {
t = e, dp.onStart(n)
}
return r.handler = e, r.cancel = () => {
hp.delete(n), t = null
}, r
};
var yp = "undefined" != typeof window ? window.requestAnimationFrame : () => {};
dp.use = e => yp = e, dp.now = "undefined" != typeof performance ? () => performance.now() : Date.now, dp.batchedUpdates = e => e(), dp.catch = console.error, dp.frameLoop = "always", dp.advance = () => {
"demand" !== dp.frameLoop ? console.warn("Cannot call the manual advancement of rafz whilst frameLoop is not set as demand") : Ep()
};
var _p = -1,
bp = 0,
xp = !1;
function kp(e, t) {
xp ? (t.delete(e), e(0)) : (t.add(e), wp())
}
function wp() {
_p < 0 && (_p = 0, "demand" !== dp.frameLoop && yp(Sp))
}
function Sp() {
~_p && (yp(Sp), dp.batchedUpdates(Ep))
}
function Ep() {
let e = _p;
_p = dp.now();
let t = vp(_p);
t && (Op(gp.splice(0, t), (e => e.handler())), bp -= t), bp ? (hp.flush(), up.flush(e ? Math.min(64, _p - e) : 16.667), fp.flush(), pp.flush(), mp.flush()) : _p = -1
}
function Ip() {
let e = new Set,
t = e;
return {
add(n) {
bp += t != e || e.has(n) ? 0 : 1, e.add(n)
},
delete: n => (bp -= t == e && e.has(n) ? 1 : 0, e.delete(n)),
flush(n) {
t.size && (e = new Set, bp -= t.size, Op(t, (t => t(n) && e.add(t))), bp += e.size, t = e)
}
}
}
function Op(e, t) {
e.forEach((e => {
try {
t(e)
} catch (e) {
dp.catch(e)
}
}))
}
function Cp() {}
var Ap = {
arr: Array.isArray,
obj: e => !!e && "Object" === e.constructor.name,
fun: e => "function" == typeof e,
str: e => "string" == typeof e,
num: e => "number" == typeof e,
und: e => void 0 === e
};
function Pp(e, t) {
if (Ap.arr(e)) {
if (!Ap.arr(t) || e.length !== t.length) return !1;
for (let n = 0; n < e.length; n++)
if (e[n] !== t[n]) return !1;
return !0
}
return e === t
}
var Tp = (e, t) => e.forEach(t);
function Rp(e, t, n) {
if (Ap.arr(e))
for (let r = 0; r < e.length; r++) t.call(n, e[r], `${r}`);
else
for (let r in e) e.hasOwnProperty(r) && t.call(n, e[r], r)
}
var Dp = e => Ap.und(e) ? [] : Ap.arr(e) ? e : [e];
function Lp(e, t) {
if (e.size) {
let n = Array.from(e);
e.clear(), Tp(n, t)
}
}
var Np = (e, ...t) => Lp(e, (e => e(...t))),
Mp = () => "undefined" == typeof window || !window.navigator || /ServerSideRendering|^Deno\//.test(window.navigator.userAgent),
jp = null,
Fp = !1,
zp = Cp,
Vp = e => {
e.to && (Fo = e.to), e.now && (dp.now = e.now), void 0 !== e.colors && (jp = e.colors), null != e.skipAnimation && (Fp = e.skipAnimation), e.createStringInterpolator && (jo = e.createStringInterpolator), e.requestAnimationFrame && dp.use(e.requestAnimationFrame), e.batchedUpdates && (dp.batchedUpdates = e.batchedUpdates), e.willAdvance && (zp = e.willAdvance), e.frameLoop && (dp.frameLoop = e.frameLoop)
},
Up = new Set,
Bp = [],
Gp = [],
Wp = 0,
$p = {
get idle() {
return !Up.size && !Bp.length
},
start(e) {
Wp > e.priority ? (Up.add(e), dp.onStart(qp)) : (Hp(e), dp(Yp))
},
advance: Yp,
sort(e) {
if (Wp) dp.onFrame((() => $p.sort(e)));
else {
let t = Bp.indexOf(e);
~t && (Bp.splice(t, 1), Kp(e))
}
},
clear() {
Bp = [], Up.clear()
}
};
function qp() {
Up.forEach(Hp), Up.clear(), dp(Yp)
}
function Hp(e) {
Bp.includes(e) || Kp(e)
}
function Kp(e) {
Bp.splice(function(e, t) {
let n = e.findIndex(t);
return n < 0 ? e.length : n
}(Bp, (t => t.priority > e.priority)), 0, e)
}
function Yp(e) {
let t = Gp;
for (let n = 0; n < Bp.length; n++) {
let r = Bp[n];
Wp = r.priority, r.idle || (zp(r), r.advance(e), r.idle || t.push(r))
}
return Wp = 0, (Gp = Bp).length = 0, (Bp = t).length > 0
}
var Qp = "[-+]?\\d*\\.?\\d+",
Zp = Qp + "%";
function Xp(...e) {
return "\\(\\s*(" + e.join(")\\s*,\\s*(") + ")\\s*\\)"
}
var Jp = RegExp("rgb" + Xp(Qp, Qp, Qp)),
eh = RegExp("rgba" + Xp(Qp, Qp, Qp, Qp)),
th = RegExp("hsl" + Xp(Qp, Zp, Zp)),
nh = RegExp("hsla" + Xp(Qp, Zp, Zp, Qp)),
rh = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
ih = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
ah = /^#([0-9a-fA-F]{6})$/,
oh = /^#([0-9a-fA-F]{8})$/;
function sh(e, t, n) {
return n < 0 && (n += 1), n > 1 && (n -= 1), n < 1 / 6 ? e + 6 * (t - e) * n : n < .5 ? t : n < 2 / 3 ? e + (t - e) * (2 / 3 - n) * 6 : e
}
function lh(e, t, n) {
let r = n < .5 ? n * (1 + t) : n + t - n * t,
i = 2 * n - r,
a = sh(i, r, e + 1 / 3),
o = sh(i, r, e),
s = sh(i, r, e - 1 / 3);
return Math.round(255 * a) << 24 | Math.round(255 * o) << 16 | Math.round(255 * s) << 8
}
function ch(e) {
let t = parseInt(e, 10);
return t < 0 ? 0 : t > 255 ? 255 : t
}
function uh(e) {
return (parseFloat(e) % 360 + 360) % 360 / 360
}
function dh(e) {
let t = parseFloat(e);
return t < 0 ? 0 : t > 1 ? 255 : Math.round(255 * t)
}
function ph(e) {
let t = parseFloat(e);
return t < 0 ? 0 : t > 100 ? 1 : t / 100
}
function hh(e) {
let t, n = "number" == typeof e ? e >>> 0 === e && e >= 0 && e <= 4294967295 ? e : null : (t = ah.exec(e)) ? parseInt(t[1] + "ff", 16) >>> 0 : jp && void 0 !== jp[e] ? jp[e] : (t = Jp.exec(e)) ? (ch(t[1]) << 24 | ch(t[2]) << 16 | ch(t[3]) << 8 | 255) >>> 0 : (t = eh.exec(e)) ? (ch(t[1]) << 24 | ch(t[2]) << 16 | ch(t[3]) << 8 | dh(t[4])) >>> 0 : (t = rh.exec(e)) ? parseInt(t[1] + t[1] + t[2] + t[2] + t[3] + t[3] + "ff", 16) >>> 0 : (t = oh.exec(e)) ? parseInt(t[1], 16) >>> 0 : (t = ih.exec(e)) ? parseInt(t[1] + t[1] + t[2] + t[2] + t[3] + t[3] + t[4] + t[4], 16) >>> 0 : (t = th.exec(e)) ? (255 | lh(uh(t[1]), ph(t[2]), ph(t[3]))) >>> 0 : (t = nh.exec(e)) ? (lh(uh(t[1]), ph(t[2]), ph(t[3])) | dh(t[4])) >>> 0 : null;
return null === n ? e : (n = n || 0, `rgba(${(4278190080&n)>>>24}, ${(16711680&n)>>>16}, ${(65280&n)>>>8}, ${(255&n)/255})`)
}
var fh = (e, t, n) => {
if (Ap.fun(e)) return e;
if (Ap.arr(e)) return fh({
range: e,
output: t,
extrapolate: n
});
if (Ap.str(e.output[0])) return jo(e);
let r = e.output,
i = e.range || [0, 1],
a = e.extrapolateLeft || e.extrapolate || "extend",
o = e.extrapolateRight || e.extrapolate || "extend",
s = e.easing || (e => e);
return t => {
let n = function(e, t) {
for (var n = 1; n < t.length - 1 && !(t[n] >= e); ++n);
return n - 1
}(t, i);
return function(e, t, n, r, i, a, o, s, l) {
let c = l ? l(e) : e;
if (c < t) {
if ("identity" === o) return c;
"clamp" === o && (c = t)
}
if (c > n) {
if ("identity" === s) return c;
"clamp" === s && (c = n)
}
return r === i ? r : t === n ? e <= t ? r : i : (t === -1 / 0 ? c = -c : n === 1 / 0 ? c -= t : c = (c - t) / (n - t), c = a(c), r === -1 / 0 ? c = -c : i === 1 / 0 ? c += r : c = c * (i - r) + r, c)
}(t, i[n], i[n + 1], r[n], r[n + 1], s, a, o, e.map)
}
},
mh = Symbol.for("FluidValue.get"),
gh = Symbol.for("FluidValue.observers"),
vh = e => !(!e || !e[mh]),
yh = e => e && e[mh] ? e[mh]() : e,
_h = e => e[gh] || null;
function bh(e, t) {
let n = e[gh];
n && n.forEach((e => {
e.eventObserved ? e.eventObserved(t) : e(t)
}))
}
var xh = class {
constructor(e) {
if (!e && !(e = this.get)) throw Error("Unknown getter");
kh(this, e)
}
},
kh = (e, t) => Eh(e, mh, t);
function wh(e, t) {
if (e[mh]) {
let n = e[gh];
n || Eh(e, gh, n = new Set), !n.has(t) && (n.add(t), e.observerAdded && e.observerAdded(n.size, t))
}
return t
}
function Sh(e, t) {
let n = e[gh];
if (n && n.has(t)) {
let r = n.size - 1;
r ? n.delete(t) : e[gh] = null, e.observerRemoved && e.observerRemoved(r, t)
}
}
var Eh = (e, t, n) => Object.defineProperty(e, t, {
value: n,
writable: !0,
configurable: !0
}),
Ih = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
Oh = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi,
Ch = RegExp(`(${Ih.source})(%|[a-z]+)`, "i"),
Ah = /rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi,
Ph = /var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/,
Th = e => {
let [t, n] = Rh(e);
if (!t || Mp()) return e;
let r = window.getComputedStyle(document.documentElement).getPropertyValue(t);
if (r) return r.trim();
if (n && n.startsWith("--")) {
let e = window.getComputedStyle(document.documentElement).getPropertyValue(n);
if (e) return e
} else {
if (n && Ph.test(n)) return Th(n);
if (n) return n
}
return e
},
Rh = e => {
let t = Ph.exec(e);
if (!t) return [, ];
let [, n, r] = t;
return [n, r]
},
Dh = (e, t, n, r, i) => `rgba(${Math.round(t)}, ${Math.round(n)}, ${Math.round(r)}, ${i})`,
Lh = e => {
zo || (zo = jp ? RegExp(`(${Object.keys(jp).join("|")})(?!\\w)`, "g") : /^\b$/);
let t = e.output.map((e => yh(e).replace(Ph, Th).replace(Oh, hh).replace(zo, hh))),
n = t.map((e => e.match(Ih).map(Number))),
r = n[0].map(((e, t) => n.map((e => {
if (!(t in e)) throw Error('The arity of each "output" value must be equal');
return e[t]
})))),
i = r.map((t => fh({
...e,
output: t
})));
return e => {
let n = !Ch.test(t[0]) && t.find((e => Ch.test(e)))?.replace(Ih, ""),
r = 0;
return t[0].replace(Ih, (() => `${i[r++](e)}${n||""}`)).replace(Ah, Dh)
}
},
Nh = "react-spring: ",
Mh = e => {
let t = !1;
if ("function" != typeof e) throw TypeError(`${Nh}once requires a function parameter`);
return (...n) => {
t || (e(...n), t = !0)
}
},
jh = Mh(console.warn),
Fh = Mh(console.warn);
function zh(e) {
return Ap.str(e) && ("#" == e[0] || /\d/.test(e) || !Mp() && Ph.test(e) || e in (jp || {}))
}
var Vh = Mp() ? Ee.useEffect : Ee.useLayoutEffect;
function Uh() {
let e = (0, Ee.useState)()[1],
t = (() => {
let e = (0, Ee.useRef)(!1);
return Vh((() => (e.current = !0, () => {
e.current = !1
})), []), e
})();
return () => {
t.current && e(Math.random())
}
}
var Bh = e => (0, Ee.useEffect)(e, Gh),
Gh = [];
function Wh(e) {
let t = (0, Ee.useRef)();
return (0, Ee.useEffect)((() => {
t.current = e
})), t.current
}
var $h = Symbol.for("Animated:node"),
qh = e => e && e[$h],
Hh = (e, t) => ((e, t, n) => Object.defineProperty(e, t, {
value: n,
writable: !0,
configurable: !0
}))(e, $h, t),
Kh = e => e && e[$h] && e[$h].getPayload(),
Yh = class {
constructor() {
Hh(this, this)
}
getPayload() {
return this.payload || []
}
},
Qh = class extends Yh {
constructor(e) {
super(), this._value = e, this.done = !0, this.durationProgress = 0, Ap.num(this._value) && (this.lastPosition = this._value)
}
static create(e) {
return new Qh(e)
}
getPayload() {
return [this]
}
getValue() {
return this._value
}
setValue(e, t) {
return Ap.num(e) && (this.lastPosition = e, t && (e = Math.round(e / t) * t, this.done && (this.lastPosition = e))), this._value !== e && (this._value = e, !0)
}
reset() {
let {
done: e
} = this;
this.done = !1, Ap.num(this._value) && (this.elapsedTime = 0, this.durationProgress = 0, this.lastPosition = this._value, e && (this.lastVelocity = null), this.v0 = null)
}
},
Zh = class extends Qh {
constructor(e) {
super(0), this._string = null, this._toString = fh({
output: [e, e]
})
}
static create(e) {
return new Zh(e)
}
getValue() {
let e = this._string;
return null == e ? this._string = this._toString(this._value) : e
}
setValue(e) {
if (Ap.str(e)) {
if (e == this._string) return !1;
this._string = e, this._value = 1
} else {
if (!super.setValue(e)) return !1;
this._string = null
}
return !0
}
reset(e) {
e && (this._toString = fh({
output: [this.getValue(), e]
})), this._value = 0, super.reset()
}
},
Xh = {
dependencies: null
},
Jh = class extends Yh {
constructor(e) {
super(), this.source = e, this.setValue(e)
}
getValue(e) {
let t = {};
return Rp(this.source, ((n, r) => {
(e => !!e && e[$h] === e)(n) ? t[r] = n.getValue(e): vh(n) ? t[r] = yh(n) : e || (t[r] = n)
})), t
}
setValue(e) {
this.source = e, this.payload = this._makePayload(e)
}
reset() {
this.payload && Tp(this.payload, (e => e.reset()))
}
_makePayload(e) {
if (e) {
let t = new Set;
return Rp(e, this._addToPayload, t), Array.from(t)
}
}
_addToPayload(e) {
Xh.dependencies && vh(e) && Xh.dependencies.add(e);
let t = Kh(e);
t && Tp(t, (e => this.add(e)))
}
},
ef = class extends Jh {
constructor(e) {
super(e)
}
static create(e) {
return new ef(e)
}
getValue() {
return this.source.map((e => e.getValue()))
}
setValue(e) {
let t = this.getPayload();
return e.length == t.length ? t.map(((t, n) => t.setValue(e[n]))).some(Boolean) : (super.setValue(e.map(tf)), !0)
}
};
function tf(e) {
return (zh(e) ? Zh : Qh).create(e)
}
function nf(e) {
let t = qh(e);
return t ? t.constructor : Ap.arr(e) ? ef : zh(e) ? Zh : Qh
}
var rf = (e, t) => {
let n = !Ap.fun(e) || e.prototype && e.prototype.isReactComponent;
return (0, Ee.forwardRef)(((r, i) => {
let a = (0, Ee.useRef)(null),
o = n && (0, Ee.useCallback)((e => {
a.current = (i && (Ap.fun(i) ? i(e) : i.current = e), e)
}), [i]),
[s, l] = function(e, t) {
let n = new Set;
return Xh.dependencies = n, e.style && (e = {
...e,
style: t.createAnimatedStyle(e.style)
}), e = new Jh(e), Xh.dependencies = null, [e, n]
}(r, t),
c = Uh(),
u = () => {
let e = a.current;
n && !e || !1 === (!!e && t.applyAnimatedValues(e, s.getValue(!0))) && c()
},
d = new af(u, l),
p = (0, Ee.useRef)();
Vh((() => (p.current = d, Tp(l, (e => wh(e, d))), () => {
p.current && (Tp(p.current.deps, (e => Sh(e, p.current))), dp.cancel(p.current.update))
}))), (0, Ee.useEffect)(u, []), Bh((() => () => {
let e = p.current;
Tp(e.deps, (t => Sh(t, e)))
}));
let h = t.getComponentProps(s.getValue());
return Ee.createElement(e, {
...h,
ref: o
})
}))
},
af = class {
constructor(e, t) {
this.update = e, this.deps = t
}
eventObserved(e) {
"change" == e.type && dp.write(this.update)
}
},
of = Symbol.for("AnimatedComponent"),
sf = e => Ap.str(e) ? e : e && Ap.str(e.displayName) ? e.displayName : Ap.fun(e) && e.name || null;
function lf(e, ...t) {
return Ap.fun(e) ? e(...t) : e
}
var cf = (e, t) => !0 === e || !!(t && e && (Ap.fun(e) ? e(t) : Dp(e).includes(t))),
uf = (e, t) => Ap.obj(e) ? t && e[t] : e,
df = (e, t) => !0 === e.default ? e[t] : e.default ? e.default[t] : void 0,
pf = e => e,
hf = (e, t = pf) => {
let n = ff;
e.default && !0 !== e.default && (n = Object.keys(e = e.default));
let r = {};
for (let i of n) {
let n = t(e[i], i);
Ap.und(n) || (r[i] = n)
}
return r
},
ff = ["config", "onProps", "onStart", "onChange", "onPause", "onResume", "onRest"],
mf = {
config: 1,
from: 1,
to: 1,
ref: 1,
loop: 1,
reset: 1,
pause: 1,
cancel: 1,
reverse: 1,
immediate: 1,
default: 1,
delay: 1,
onProps: 1,
onStart: 1,
onChange: 1,
onPause: 1,
onResume: 1,
onRest: 1,
onResolve: 1,
items: 1,
trail: 1,
sort: 1,
expires: 1,
initial: 1,
enter: 1,
update: 1,
leave: 1,
children: 1,
onDestroyed: 1,
keys: 1,
callId: 1,
parentId: 1
};
function gf(e) {
let t = function(e) {
let t = {},
n = 0;
if (Rp(e, ((e, r) => {
!mf[r] && (t[r] = e, n++)
})), n) return t
}(e);
if (t) {
let n = {
to: t
};
return Rp(e, ((e, r) => r in t || (n[r] = e))), n
}
return {
...e
}
}
function vf(e) {
return e = yh(e), Ap.arr(e) ? e.map(vf) : zh(e) ? cp.createStringInterpolator({
range: [0, 1],
output: [e, e]
})(1) : e
}
function yf(e) {
for (let t in e) return !0;
return !1
}
function _f(e) {
return Ap.fun(e) || Ap.arr(e) && Ap.obj(e[0])
}
function bf(e, t) {
e.ref?.delete(e), t?.delete(e)
}
function xf(e, t) {
t && e.ref !== t && (e.ref?.delete(e), t.add(e), e.ref = t)
}
var kf = {
tension: 170,
friction: 26,
mass: 1,
damping: 1,
easing: e => e,
clamp: !1
};
function wf(e, t) {
if (Ap.und(t.decay)) {
let n = !Ap.und(t.tension) || !Ap.und(t.friction);
!n && Ap.und(t.frequency) && Ap.und(t.damping) && Ap.und(t.mass) || (e.duration = void 0, e.decay = void 0), n && (e.frequency = void 0)
} else e.duration = void 0
}
var Sf = [];
function Ef(e, {
key: t,
props: n,
defaultProps: r,
state: i,
actions: a
}) {
return new Promise(((o, s) => {
let l, c, u = cf(n.cancel ?? r?.cancel, t);
if (u) h();
else {
Ap.und(n.pause) || (i.paused = cf(n.pause, t));
let e = r?.pause;
!0 !== e && (e = i.paused || cf(e, t)), l = lf(n.delay || 0, t), e ? (i.resumeQueue.add(p), a.pause()) : (a.resume(), p())
}
function d() {
i.resumeQueue.add(p), i.timeouts.delete(c), c.cancel(), l = c.time - dp.now()
}
function p() {
l > 0 && !cp.skipAnimation ? (i.delayed = !0, c = dp.setTimeout(h, l), i.pauseQueue.add(d), i.timeouts.add(c)) : h()
}
function h() {
i.delayed && (i.delayed = !1), i.pauseQueue.delete(d), i.timeouts.delete(c), e <= (i.cancelId || 0) && (u = !0);
try {
a.start({
...n,
callId: e,
cancel: u
}, o)
} catch (e) {
s(e)
}
}
}))
}
var If = (e, t) => 1 == t.length ? t[0] : t.some((e => e.cancelled)) ? Af(e.get()) : t.every((e => e.noop)) ? Of(e.get()) : Cf(e.get(), t.every((e => e.finished))),
Of = e => ({
value: e,
noop: !0,
finished: !0,
cancelled: !1
}),
Cf = (e, t, n = !1) => ({
value: e,
finished: t,
cancelled: n
}),
Af = e => ({
value: e,
cancelled: !0,
finished: !1
});
function Pf(e, t, n, r) {
let {
callId: i,
parentId: a,
onRest: o
} = t, {
asyncTo: s,
promise: l
} = n;
return a || e !== s || t.reset ? n.promise = (async () => {
let c, u, d;
n.asyncId = i, n.asyncTo = e;
let p = hf(t, ((e, t) => "onRest" === t ? void 0 : e)),
h = new Promise(((e, t) => (c = e, u = t))),
f = e => {
let t = i <= (n.cancelId || 0) && Af(r) || i !== n.asyncId && Cf(r, !1);
if (t) throw e.result = t, u(e), e
},
m = (e, t) => {
let a = new Rf,
o = new Df;
return (async () => {
if (cp.skipAnimation) throw Tf(n), o.result = Cf(r, !1), u(o), o;
f(a);
let s = Ap.obj(e) ? {
...e
} : {
...t,
to: e
};
s.parentId = i, Rp(p, ((e, t) => {
Ap.und(s[t]) && (s[t] = e)
}));
let l = await r.start(s);
return f(a), n.paused && await new Promise((e => {
n.resumeQueue.add(e)
})), l
})()
};
if (cp.skipAnimation) return Tf(n), Cf(r, !1);
try {
let t;
t = Ap.arr(e) ? (async e => {
for (let t of e) await m(t)
})(e) : Promise.resolve(e(m, r.stop.bind(r))), await Promise.all([t.then(c), h]), d = Cf(r.get(), !0, !1)
} catch (e) {
if (e instanceof Rf) d = e.result;
else {
if (!(e instanceof Df)) throw e;
d = e.result
}
} finally {
i == n.asyncId && (n.asyncId = a, n.asyncTo = a ? s : void 0, n.promise = a ? l : void 0)
}
return Ap.fun(o) && dp.batchedUpdates((() => {
o(d, r, r.item)
})), d
})() : l
}
function Tf(e, t) {
Lp(e.timeouts, (e => e.cancel())), e.pauseQueue.clear(), e.resumeQueue.clear(), e.asyncId = e.asyncTo = e.promise = void 0, t && (e.cancelId = t)
}
var Rf = class extends Error {
constructor() {
super("An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.")
}
},
Df = class extends Error {
constructor() {
super("SkipAnimationSignal")
}
},
Lf = e => e instanceof Mf,
Nf = 1,
Mf = class extends xh {
constructor() {
super(...arguments), this.id = Nf++, this._priority = 0
}
get priority() {
return this._priority
}
set priority(e) {
this._priority != e && (this._priority = e, this._onPriorityChange(e))
}
get() {
let e = qh(this);
return e && e.getValue()
}
to(...e) {
return cp.to(this, e)
}
interpolate(...e) {
return jh(`${Nh}The "interpolate" function is deprecated in v9 (use "to" instead)`), cp.to(this, e)
}
toJSON() {
return this.get()
}
observerAdded(e) {
1 == e && this._attach()
}
observerRemoved(e) {
0 == e && this._detach()
}
_attach() {}
_detach() {}
_onChange(e, t = !1) {
bh(this, {
type: "change",
parent: this,
value: e,
idle: t
})
}
_onPriorityChange(e) {
this.idle || $p.sort(this), bh(this, {
type: "priority",
parent: this,
priority: e
})
}
},
jf = Symbol.for("SpringPhase"),
Ff = e => (1 & e[jf]) > 0,
zf = e => (2 & e[jf]) > 0,
Vf = e => (4 & e[jf]) > 0,
Uf = (e, t) => t ? e[jf] |= 3 : e[jf] &= -3,
Bf = (e, t) => t ? e[jf] |= 4 : e[jf] &= -5,
Gf = class extends Mf {
constructor(e, t) {
if (super(), this.animation = new class {
constructor() {
this.changed = !1, this.values = Sf, this.toValues = null, this.fromValues = Sf, this.config = new class {
constructor() {
this.velocity = 0, Object.assign(this, kf)
}
}, this.immediate = !1
}
}, this.defaultProps = {}, this._state = {
paused: !1,
delayed: !1,
pauseQueue: new Set,
resumeQueue: new Set,
timeouts: new Set
}, this._pendingCalls = new Set, this._lastCallId = 0, this._lastToId = 0, this._memoizedDuration = 0, !Ap.und(e) || !Ap.und(t)) {
let n = Ap.obj(e) ? {
...e
} : {
...t,
from: e
};
Ap.und(n.default) && (n.default = !0), this.start(n)
}
}
get idle() {
return !(zf(this) || this._state.asyncTo) || Vf(this)
}
get goal() {
return yh(this.animation.to)
}
get velocity() {
let e = qh(this);
return e instanceof Qh ? e.lastVelocity || 0 : e.getPayload().map((e => e.lastVelocity || 0))
}
get hasAnimated() {
return Ff(this)
}
get isAnimating() {
return zf(this)
}
get isPaused() {
return Vf(this)
}
get isDelayed() {
return this._state.delayed
}
advance(e) {
let t = !0,
n = !1,
r = this.animation,
{
toValues: i
} = r,
{
config: a
} = r,
o = Kh(r.to);
!o && vh(r.to) && (i = Dp(yh(r.to))), r.values.forEach(((s, l) => {
if (s.done) return;
let c = s.constructor == Zh ? 1 : o ? o[l].lastPosition : i[l],
u = r.immediate,
d = c;
if (!u) {
let t;
if (d = s.lastPosition, a.tension <= 0) return void(s.done = !0);
let n = s.elapsedTime += e,
i = r.fromValues[l],
o = null != s.v0 ? s.v0 : s.v0 = Ap.arr(a.velocity) ? a.velocity[l] : a.velocity,
p = a.precision || (i == c ? .005 : Math.min(1, .001 * Math.abs(c - i)));
if (Ap.und(a.duration))
if (a.decay) {
let e = !0 === a.decay ? .998 : a.decay,
r = Math.exp(-(1 - e) * n);
d = i + o / (1 - e) * (1 - r), u = Math.abs(s.lastPosition - d) <= p, t = o * r
} else {
t = null == s.lastVelocity ? o : s.lastVelocity;
let n = a.restVelocity || p / 10,
r = a.clamp ? 0 : a.bounce,
l = !Ap.und(r),
h = i == c ? s.v0 > 0 : i < c,
f = Math.ceil(e / 1);
for (let e = 0; e < f && (Math.abs(t) > n || !(u = Math.abs(c - d) <= p)); ++e) {
l && (d == c || d > c == h) && (t = -t * r, d = c), t += 1 * ((-1e-6 * a.tension * (d - c) + -.001 * a.friction * t) / a.mass), d += 1 * t
}
}
else {
let r = 1;
a.duration > 0 && (this._memoizedDuration !== a.duration && (this._memoizedDuration = a.duration, s.durationProgress > 0 && (s.elapsedTime = a.duration * s.durationProgress, n = s.elapsedTime += e)), r = (r = (a.progress || 0) + n / this._memoizedDuration) > 1 ? 1 : r < 0 ? 0 : r, s.durationProgress = r), t = ((d = i + a.easing(r) * (c - i)) - s.lastPosition) / e, u = 1 == r
}
s.lastVelocity = t, Number.isNaN(d) && (console.warn("Got NaN while animating:", this), u = !0)
}
o && !o[l].done && (u = !1), u ? s.done = !0 : t = !1, s.setValue(d, a.round) && (n = !0)
}));
let s = qh(this),
l = s.getValue();
if (t) {
let e = yh(r.to);
l === e && !n || a.decay ? n && a.decay && this._onChange(l) : (s.setValue(e), this._onChange(e)), this._stop()
} else n && this._onChange(l)
}
set(e) {
return dp.batchedUpdates((() => {
this._stop(), this._focus(e), this._set(e)
})), this
}
pause() {
this._update({
pause: !0
})
}
resume() {
this._update({
pause: !1
})
}
finish() {
if (zf(this)) {
let {
to: e,
config: t
} = this.animation;
dp.batchedUpdates((() => {
this._onStart(), t.decay || this._set(e, !1), this._stop()
}))
}
return this
}
update(e) {
return (this.queue || (this.queue = [])).push(e), this
}
start(e, t) {
let n;
return Ap.und(e) ? (n = this.queue || [], this.queue = []) : n = [Ap.obj(e) ? e : {
...t,
to: e
}], Promise.all(n.map((e => this._update(e)))).then((e => If(this, e)))
}
stop(e) {
let {
to: t
} = this.animation;
return this._focus(this.get()), Tf(this._state, e && this._lastCallId), dp.batchedUpdates((() => this._stop(t, e))), this
}
reset() {
this._update({
reset: !0
})
}
eventObserved(e) {
"change" == e.type ? this._start() : "priority" == e.type && (this.priority = e.priority + 1)
}
_prepareNode(e) {
let t = this.key || "",
{
to: n,
from: r
} = e;
(null == (n = Ap.obj(n) ? n[t] : n) || _f(n)) && (n = void 0), null == (r = Ap.obj(r) ? r[t] : r) && (r = void 0);
let i = {
to: n,
from: r
};
return Ff(this) || (e.reverse && ([n, r] = [r, n]), r = yh(r), Ap.und(r) ? qh(this) || this._set(n) : this._set(r)), i
}
_update({
...e
}, t) {
let {
key: n,
defaultProps: r
} = this;
e.default && Object.assign(r, hf(e, ((e, t) => /^on/.test(t) ? uf(e, n) : e))), Yf(this, e, "onProps"), Qf(this, "onProps", e, this);
let i = this._prepareNode(e);
if (Object.isFrozen(this)) throw Error("Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?");
let a = this._state;
return Ef(++this._lastCallId, {
key: n,
props: e,
defaultProps: r,
state: a,
actions: {
pause: () => {
Vf(this) || (Bf(this, !0), Np(a.pauseQueue), Qf(this, "onPause", Cf(this, Wf(this, this.animation.to)), this))
},
resume: () => {
Vf(this) && (Bf(this, !1), zf(this) && this._resume(), Np(a.resumeQueue), Qf(this, "onResume", Cf(this, Wf(this, this.animation.to)), this))
},
start: this._merge.bind(this, i)
}
}).then((n => {
if (e.loop && n.finished && (!t || !n.noop)) {
let t = $f(e);
if (t) return this._update(t, !0)
}
return n
}))
}
_merge(e, t, n) {
if (t.cancel) return this.stop(!0), n(Af(this));
let r = !Ap.und(e.to),
i = !Ap.und(e.from);
if (r || i) {
if (!(t.callId > this._lastToId)) return n(Af(this));
this._lastToId = t.callId
}
let {
key: a,
defaultProps: o,
animation: s
} = this, {
to: l,
from: c
} = s, {
to: u = l,
from: d = c
} = e;
i && !r && (!t.default || Ap.und(u)) && (u = d), t.reverse && ([u, d] = [d, u]);
let p = !Pp(d, c);
p && (s.from = d), d = yh(d);
let h = !Pp(u, l);
h && this._focus(u);
let f = _f(t.to),
{
config: m
} = s,
{
decay: g,
velocity: v
} = m;
(r || i) && (m.velocity = 0), t.config && !f && function(e, t, n) {
for (let o in n && (wf(n = {
...n
}, t), t = {
...n,
...t
}), wf(e, t), Object.assign(e, t), kf) null == e[o] && (e[o] = kf[o]);
let {
frequency: r,
damping: i
} = e, {
mass: a
} = e;
Ap.und(r) || (r < .01 && (r = .01), i < 0 && (i = 0), e.tension = Math.pow(2 * Math.PI / r, 2) * a, e.friction = 4 * Math.PI * i * a / r)
}(m, lf(t.config, a), t.config !== o.config ? lf(o.config, a) : void 0);
let y = qh(this);
if (!y || Ap.und(u)) return n(Cf(this, !0));
let _ = Ap.und(t.reset) ? i && !t.default : !Ap.und(d) && cf(t.reset, a),
b = _ ? d : this.get(),
x = vf(u),
k = Ap.num(x) || Ap.arr(x) || zh(x),
w = !f && (!k || cf(o.immediate || t.immediate, a));
if (h) {
let e = nf(u);
if (e !== y.constructor) {
if (!w) throw Error(`Cannot animate between ${y.constructor.name} and ${e.name}, as the "to" prop suggests`);
y = this._set(x)
}
}
let S = y.constructor,
E = vh(u),
I = !1;
if (!E) {
let e = _ || !Ff(this) && p;
(h || e) && (E = !(I = Pp(vf(b), x))), (Pp(s.immediate, w) || w) && Pp(m.decay, g) && Pp(m.velocity, v) || (E = !0)
}
if (I && zf(this) && (s.changed && !_ ? E = !0 : E || this._stop(l)), !f && ((E || vh(l)) && (s.values = y.getPayload(), s.toValues = vh(u) ? null : S == Zh ? [1] : Dp(x)), s.immediate == w || (s.immediate = w, w || _ || this._set(l)), E)) {
let {
onRest: e
} = s;
Tp(Kf, (e => Yf(this, t, e)));
let r = Cf(this, Wf(this, l));
Np(this._pendingCalls, r), this._pendingCalls.add(n), s.changed && dp.batchedUpdates((() => {
s.changed = !_, e?.(r, this), _ ? lf(o.onRest, r) : s.onStart?.(r, this)
}))
}
_ && this._set(b), f ? n(Pf(t.to, t, this._state, this)) : E ? this._start() : zf(this) && !h ? this._pendingCalls.add(n) : n(Of(b))
}
_focus(e) {
let t = this.animation;
e !== t.to && (_h(this) && this._detach(), t.to = e, _h(this) && this._attach())
}
_attach() {
let e = 0,
{
to: t
} = this.animation;
vh(t) && (wh(t, this), Lf(t) && (e = t.priority + 1)), this.priority = e
}
_detach() {
let {
to: e
} = this.animation;
vh(e) && Sh(e, this)
}
_set(e, t = !0) {
let n = yh(e);
if (!Ap.und(n)) {
let e = qh(this);
if (!e || !Pp(n, e.getValue())) {
let r = nf(n);
e && e.constructor == r ? e.setValue(n) : Hh(this, r.create(n)), e && dp.batchedUpdates((() => {
this._onChange(n, t)
}))
}
}
return qh(this)
}
_onStart() {
let e = this.animation;
e.changed || (e.changed = !0, Qf(this, "onStart", Cf(this, Wf(this, e.to)), this))
}
_onChange(e, t) {
t || (this._onStart(), lf(this.animation.onChange, e, this)), lf(this.defaultProps.onChange, e, this), super._onChange(e, t)
}
_start() {
let e = this.animation;
qh(this).reset(yh(e.to)), e.immediate || (e.fromValues = e.values.map((e => e.lastPosition))), zf(this) || (Uf(this, !0), Vf(this) || this._resume())
}
_resume() {
cp.skipAnimation ? this.finish() : $p.start(this)
}
_stop(e, t) {
if (zf(this)) {
Uf(this, !1);
let n = this.animation;
Tp(n.values, (e => {
e.done = !0
})), n.toValues && (n.onChange = n.onPause = n.onResume = void 0), bh(this, {
type: "idle",
parent: this
});
let r = t ? Af(this.get()) : Cf(this.get(), Wf(this, e ?? n.to));
Np(this._pendingCalls, r), n.changed && (n.changed = !1, Qf(this, "onRest", r, this))
}
}
};
function Wf(e, t) {
let n = vf(t);
return Pp(vf(e.get()), n)
}
function $f(e, t = e.loop, n = e.to) {
let r = lf(t);
if (r) {
let i = !0 !== r && gf(r),
a = (i || e).reverse,
o = !i || i.reset;
return qf({
...e,
loop: t,
default: !1,
pause: void 0,
to: !a || _f(n) ? n : void 0,
from: o ? e.from : void 0,
reset: o,
...i
})
}
}
function qf(e) {
let {
to: t,
from: n
} = e = gf(e), r = new Set;
return Ap.obj(t) && Hf(t, r), Ap.obj(n) && Hf(n, r), e.keys = r.size ? Array.from(r) : null, e
}
function Hf(e, t) {
Rp(e, ((e, n) => null != e && t.add(n)))
}
var Kf = ["onStart", "onRest", "onChange", "onPause", "onResume"];
function Yf(e, t, n) {
e.animation[n] = t[n] !== df(t, n) ? uf(t[n], e.key) : void 0
}
function Qf(e, t, ...n) {
e.animation[t]?.(...n), e.defaultProps[t]?.(...n)
}
var Zf = ["onStart", "onChange", "onRest"],
Xf = 1,
Jf = class {
constructor(e, t) {
this.id = Xf++, this.springs = {}, this.queue = [], this._lastAsyncId = 0, this._active = new Set, this._changed = new Set, this._started = !1, this._state = {
paused: !1,
pauseQueue: new Set,
resumeQueue: new Set,
timeouts: new Set
}, this._events = {
onStart: new Map,
onChange: new Map,
onRest: new Map
}, this._onFrame = this._onFrame.bind(this), t && (this._flush = t), e && this.start({
default: !0,
...e
})
}
get idle() {
return !this._state.asyncTo && Object.values(this.springs).every((e => e.idle && !e.isDelayed && !e.isPaused))
}
get item() {
return this._item
}
set item(e) {
this._item = e
}
get() {
let e = {};
return this.each(((t, n) => e[n] = t.get())), e
}
set(e) {
for (let t in e) {
let n = e[t];
Ap.und(n) || this.springs[t].set(n)
}
}
update(e) {
return e && this.queue.push(qf(e)), this
}
start(e) {
let {
queue: t
} = this;
return e ? t = Dp(e).map(qf) : this.queue = [], this._flush ? this._flush(this, t) : (om(this, t), em(this, t))
}
stop(e, t) {
if (!!e !== e && (t = e), t) {
let n = this.springs;
Tp(Dp(t), (t => n[t].stop(!!e)))
} else Tf(this._state, this._lastAsyncId), this.each((t => t.stop(!!e)));
return this
}
pause(e) {
if (Ap.und(e)) this.start({
pause: !0
});
else {
let t = this.springs;
Tp(Dp(e), (e => t[e].pause()))
}
return this
}
resume(e) {
if (Ap.und(e)) this.start({
pause: !1
});
else {
let t = this.springs;
Tp(Dp(e), (e => t[e].resume()))
}
return this
}
each(e) {
Rp(this.springs, e)
}
_onFrame() {
let {
onStart: e,
onChange: t,
onRest: n
} = this._events, r = this._active.size > 0, i = this._changed.size > 0;
(r && !this._started || i && !this._started) && (this._started = !0, Lp(e, (([e, t]) => {
t.value = this.get(), e(t, this, this._item)
})));
let a = !r && this._started,
o = i || a && n.size ? this.get() : null;
i && t.size && Lp(t, (([e, t]) => {
t.value = o, e(t, this, this._item)
})), a && (this._started = !1, Lp(n, (([e, t]) => {
t.value = o, e(t, this, this._item)
})))
}
eventObserved(e) {
if ("change" == e.type) this._changed.add(e.parent), e.idle || this._active.add(e.parent);
else {
if ("idle" != e.type) return;
this._active.delete(e.parent)
}
dp.onFrame(this._onFrame)
}
};
function em(e, t) {
return Promise.all(t.map((t => tm(e, t)))).then((t => If(e, t)))
}
async function tm(e, t, n) {
let {
keys: r,
to: i,
from: a,
loop: o,
onRest: s,
onResolve: l
} = t, c = Ap.obj(t.default) && t.default;
o && (t.loop = !1), !1 === i && (t.to = null), !1 === a && (t.from = null);
let u = Ap.arr(i) || Ap.fun(i) ? i : void 0;
u ? (t.to = void 0, t.onRest = void 0, c && (c.onRest = void 0)) : Tp(Zf, (n => {
let r = t[n];
if (Ap.fun(r)) {
let i = e._events[n];
t[n] = ({
finished: e,
cancelled: t
}) => {
let n = i.get(r);
n ? (e || (n.finished = !1), t && (n.cancelled = !0)) : i.set(r, {
value: null,
finished: e || !1,
cancelled: t || !1
})
}, c && (c[n] = t[n])
}
}));
let d = e._state;
!d.paused === t.pause ? (d.paused = t.pause, Np(t.pause ? d.pauseQueue : d.resumeQueue)) : d.paused && (t.pause = !0);
let p = (r || Object.keys(e.springs)).map((n => e.springs[n].start(t))),
h = !0 === t.cancel || !0 === df(t, "cancel");
(u || h && d.asyncId) && p.push(Ef(++e._lastAsyncId, {
props: t,
state: d,
actions: {
pause: Cp,
resume: Cp,
start(t, n) {
h ? (Tf(d, e._lastAsyncId), n(Af(e))) : (t.onRest = s, n(Pf(u, t, d, e)))
}
}
})), d.paused && await new Promise((e => {
d.resumeQueue.add(e)
}));
let f = If(e, await Promise.all(p));
if (o && f.finished && (!n || !f.noop)) {
let n = $f(t, o, i);
if (n) return om(e, [n]), tm(e, n, !0)
}
return l && dp.batchedUpdates((() => l(f, e, e.item))), f
}
function nm(e, t) {
let n = {
...e.springs
};
return t && Tp(Dp(t), (e => {
Ap.und(e.keys) && (e = qf(e)), Ap.obj(e.to) || (e = {
...e,
to: void 0
}), am(n, e, (e => im(e)))
})), rm(e, n), n
}
function rm(e, t) {
Rp(t, ((t, n) => {
e.springs[n] || (e.springs[n] = t, wh(t, e))
}))
}
function im(e, t) {
let n = new Gf;
return n.key = e, t && wh(n, t), n
}
function am(e, t, n) {
t.keys && Tp(t.keys, (r => {
(e[r] || (e[r] = n(r)))._prepareNode(t)
}))
}
function om(e, t) {
Tp(t, (t => {
am(e.springs, t, (t => im(t, e)))
}))
}
var sm = ({
children: e,
...t
}) => {
let n = (0, Ee.useContext)(lm),
r = t.pause || !!n.pause,
i = t.immediate || !!n.immediate;
t = function(e, t) {
let [n] = (0, Ee.useState)((() => ({
inputs: t,
result: e()
}))), r = (0, Ee.useRef)(), i = r.current, a = i;
if (a) {
let n = !!(t && a.inputs && function(e, t) {
if (e.length !== t.length) return !1;
for (let n = 0; n < e.length; n++)
if (e[n] !== t[n]) return !1;
return !0
}(t, a.inputs));
n || (a = {
inputs: t,
result: e()
})
} else a = n;
return (0, Ee.useEffect)((() => {
r.current = a, i == n && (n.inputs = n.result = void 0)
}), [a]), a.result
}((() => ({
pause: r,
immediate: i
})), [r, i]);
let {
Provider: a
} = lm;
return Ee.createElement(a, {
value: t
}, e)
},
lm = (Object.assign(sm, Ee.createContext({})), sm.Provider._context = sm, sm.Consumer._context = sm, sm);
sm.Provider = lm.Provider, sm.Consumer = lm.Consumer;
var cm = () => {
let e = [],
t = function(t) {
Fh(`${Nh}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions`);
let r = [];
return Tp(e, ((e, i) => {
if (Ap.und(t)) r.push(e.start());
else {
let a = n(t, e, i);
a && r.push(e.start(a))
}
})), r
};
t.current = e, t.add = function(t) {
e.includes(t) || e.push(t)
}, t.delete = function(t) {
let n = e.indexOf(t);
~n && e.splice(n, 1)
}, t.pause = function() {
return Tp(e, (e => e.pause(...arguments))), this
}, t.resume = function() {
return Tp(e, (e => e.resume(...arguments))), this
}, t.set = function(t) {
Tp(e, ((e, n) => {
let r = Ap.fun(t) ? t(n, e) : t;
r && e.set(r)
}))
}, t.start = function(t) {
let n = [];
return Tp(e, ((e, r) => {
if (Ap.und(t)) n.push(e.start());
else {
let i = this._getProps(t, e, r);
i && n.push(e.start(i))
}
})), n
}, t.stop = function() {
return Tp(e, (e => e.stop(...arguments))), this
}, t.update = function(t) {
return Tp(e, ((e, n) => e.update(this._getProps(t, e, n)))), this
};
let n = function(e, t, n) {
return Ap.fun(e) ? e(n, t) : e
};
return t._getProps = n, t
};
function um(e, t) {
let n = Ap.fun(e),
[
[r], i
] = function(e, t, n) {
let r = Ap.fun(t) && t;
r && !n && (n = []);
let i = (0, Ee.useMemo)((() => r || 3 == arguments.length ? cm() : void 0), []),
a = (0, Ee.useRef)(0),
o = Uh(),
s = (0, Ee.useMemo)((() => ({
ctrls: [],
queue: [],
flush(e, t) {
let n = nm(e, t),
r = a.current > 0 && !s.queue.length && !Object.keys(n).some((t => !e.springs[t]));
return r ? em(e, t) : new Promise((r => {
rm(e, n), s.queue.push((() => {
r(em(e, t))
})), o()
}))
}
})), []),
l = (0, Ee.useRef)([...s.ctrls]),
c = [],
u = Wh(e) || 0;
function d(e, n) {
for (let i = e; i < n; i++) {
let e = l.current[i] || (l.current[i] = new Jf(null, s.flush)),
n = r ? r(i, e) : t[i];
n && (c[i] = function(e) {
let t = qf(e);
return Ap.und(t.default) && (t.default = hf(t)), t
}(n))
}
}(0, Ee.useMemo)((() => {
Tp(l.current.slice(e, u), (e => {
bf(e, i), e.stop(!0)
})), l.current.length = e, d(u, e)
}), [e]), (0, Ee.useMemo)((() => {
d(0, Math.min(u, e))
}), n);
let p = l.current.map(((e, t) => nm(e, c[t]))),
h = (0, Ee.useContext)(sm),
f = Wh(h),
m = h !== f && yf(h);
Vh((() => {
a.current++, s.ctrls = l.current;
let {
queue: e
} = s;
e.length && (s.queue = [], Tp(e, (e => e()))), Tp(l.current, ((e, t) => {
i?.add(e), m && e.start({
default: h
});
let n = c[t];
n && (xf(e, n.ref), e.ref ? e.queue.push(n) : e.start(n))
}))
})), Bh((() => () => {
Tp(s.ctrls, (e => e.stop(!0)))
}));
let g = p.map((e => ({
...e
})));
return i ? [g, i] : g
}(1, n ? e : [e], n ? t || [] : t);
return n || 2 == arguments.length ? [r, i] : r
}
var dm = 1,
pm = class extends Mf {
constructor(e, t) {
super(), this.source = e, this.idle = !0, this._active = new Set, this.calc = fh(...t);
let n = this._get(),
r = nf(n);
Hh(this, r.create(n))
}
advance(e) {
let t = this._get();
Pp(t, this.get()) || (qh(this).setValue(t), this._onChange(t, this.idle)), !this.idle && fm(this._active) && mm(this)
}
_get() {
let e = Ap.arr(this.source) ? this.source.map(yh) : Dp(yh(this.source));
return this.calc(...e)
}
_start() {
this.idle && !fm(this._active) && (this.idle = !1, Tp(Kh(this), (e => {
e.done = !1
})), cp.skipAnimation ? (dp.batchedUpdates((() => this.advance())), mm(this)) : $p.start(this))
}
_attach() {
let e = 1;
Tp(Dp(this.source), (t => {
vh(t) && wh(t, this), Lf(t) && (t.idle || this._active.add(t), e = Math.max(e, t.priority + 1))
})), this.priority = e, this._start()
}
_detach() {
Tp(Dp(this.source), (e => {
vh(e) && Sh(e, this)
})), this._active.clear(), mm(this)
}
eventObserved(e) {
"change" == e.type ? e.idle ? this.advance() : (this._active.add(e.parent), this._start()) : "idle" == e.type ? this._active.delete(e.parent) : "priority" == e.type && (this.priority = Dp(this.source).reduce(((e, t) => Math.max(e, (Lf(t) ? t.priority : 0) + 1)), 0))
}
};
function hm(e) {
return !1 !== e.idle
}
function fm(e) {
return !e.size || Array.from(e).every(hm)
}
function mm(e) {
e.idle || (e.idle = !0, Tp(Kh(e), (e => {
e.done = !0
})), bh(e, {
type: "idle",
parent: e
}))
}
cp.assign({
createStringInterpolator: Lh,
to: (e, t) => new pm(e, t)
});
var gm = /^--/,
vm = {},
ym = {
animationIterationCount: !0,
borderImageOutset: !0,
borderImageSlice: !0,
borderImageWidth: !0,
boxFlex: !0,
boxFlexGroup: !0,
boxOrdinalGroup: !0,
columnCount: !0,
columns: !0,
flex: !0,
flexGrow: !0,
flexPositive: !0,
flexShrink: !0,
flexNegative: !0,
flexOrder: !0,
gridRow: !0,
gridRowEnd: !0,
gridRowSpan: !0,
gridRowStart: !0,
gridColumn: !0,
gridColumnEnd: !0,
gridColumnSpan: !0,
gridColumnStart: !0,
fontWeight: !0,
lineClamp: !0,
lineHeight: !0,
opacity: !0,
order: !0,
orphans: !0,
tabSize: !0,
widows: !0,
zIndex: !0,
zoom: !0,
fillOpacity: !0,
floodOpacity: !0,
stopOpacity: !0,
strokeDasharray: !0,
strokeDashoffset: !0,
strokeMiterlimit: !0,
strokeOpacity: !0,
strokeWidth: !0
},
_m = ["Webkit", "Ms", "Moz", "O"];
ym = Object.keys(ym).reduce(((e, t) => (_m.forEach((n => e[((e, t) => e + t.charAt(0).toUpperCase() + t.substring(1))(n, t)] = e[t])), e)), ym);
var bm = /^(matrix|translate|scale|rotate|skew)/,
xm = /^(translate)/,
km = /^(rotate|skew)/,
wm = (e, t) => Ap.num(e) && 0 !== e ? e + t : e,
Sm = (e, t) => Ap.arr(e) ? e.every((e => Sm(e, t))) : Ap.num(e) ? e === t : parseFloat(e) === t,
Em = class extends Jh {
constructor({
x: e,
y: t,
z: n,
...r
}) {
let i = [],
a = [];
(e || t || n) && (i.push([e || 0, t || 0, n || 0]), a.push((e => [`translate3d(${e.map((e=>wm(e,"px"))).join(",")})`, Sm(e, 0)]))), Rp(r, ((e, t) => {
if ("transform" === t) i.push([e || ""]), a.push((e => [e, "" === e]));
else if (bm.test(t)) {
if (delete r[t], Ap.und(e)) return;
let n = xm.test(t) ? "px" : km.test(t) ? "deg" : "";
i.push(Dp(e)), a.push("rotate3d" === t ? ([e, t, r, i]) => [`rotate3d(${e},${t},${r},${wm(i,n)})`, Sm(i, 0)] : e => [`${t}(${e.map((e=>wm(e,n))).join(",")})`, Sm(e, t.startsWith("scale") ? 1 : 0)])
}
})), i.length && (r.transform = new Im(i, a)), super(r)
}
},
Im = class extends xh {
constructor(e, t) {
super(), this.inputs = e, this.transforms = t, this._value = null
}
get() {
return this._value || (this._value = this._get())
}
_get() {
let e = "",
t = !0;
return Tp(this.inputs, ((n, r) => {
let i = yh(n[0]),
[a, o] = this.transforms[r](Ap.arr(i) ? i : n.map(yh));
e += " " + a, t = t && o
})), t ? "none" : e
}
observerAdded(e) {
1 == e && Tp(this.inputs, (e => Tp(e, (e => vh(e) && wh(e, this)))))
}
observerRemoved(e) {
0 == e && Tp(this.inputs, (e => Tp(e, (e => vh(e) && Sh(e, this)))))
}
eventObserved(e) {
"change" == e.type && (this._value = null), bh(this, e)
}
};
cp.assign({
batchedUpdates: Do.unstable_batchedUpdates,
createStringInterpolator: Lh,
colors: {
transparent: 0,
aliceblue: 4042850303,
antiquewhite: 4209760255,
aqua: 16777215,
aquamarine: 2147472639,
azure: 4043309055,
beige: 4126530815,
bisque: 4293182719,
black: 255,
blanchedalmond: 4293643775,
blue: 65535,
blueviolet: 2318131967,
brown: 2771004159,
burlywood: 3736635391,
burntsienna: 3934150143,
cadetblue: 1604231423,
chartreuse: 2147418367,
chocolate: 3530104575,
coral: 4286533887,
cornflowerblue: 1687547391,
cornsilk: 4294499583,
crimson: 3692313855,
cyan: 16777215,
darkblue: 35839,
darkcyan: 9145343,
darkgoldenrod: 3095792639,
darkgray: 2846468607,
darkgreen: 6553855,
darkgrey: 2846468607,
darkkhaki: 3182914559,
darkmagenta: 2332068863,
darkolivegreen: 1433087999,
darkorange: 4287365375,
darkorchid: 2570243327,
darkred: 2332033279,
darksalmon: 3918953215,
darkseagreen: 2411499519,
darkslateblue: 1211993087,
darkslategray: 793726975,
darkslategrey: 793726975,
darkturquoise: 13554175,
darkviolet: 2483082239,
deeppink: 4279538687,
deepskyblue: 12582911,
dimgray: 1768516095,
dimgrey: 1768516095,
dodgerblue: 512819199,
firebrick: 2988581631,
floralwhite: 4294635775,
forestgreen: 579543807,
fuchsia: 4278255615,
gainsboro: 3705462015,
ghostwhite: 4177068031,
gold: 4292280575,
goldenrod: 3668254975,
gray: 2155905279,
green: 8388863,
greenyellow: 2919182335,
grey: 2155905279,
honeydew: 4043305215,
hotpink: 4285117695,
indianred: 3445382399,
indigo: 1258324735,
ivory: 4294963455,
khaki: 4041641215,
lavender: 3873897215,
lavenderblush: 4293981695,
lawngreen: 2096890111,
lemonchiffon: 4294626815,
lightblue: 2916673279,
lightcoral: 4034953471,
lightcyan: 3774873599,
lightgoldenrodyellow: 4210742015,
lightgray: 3553874943,
lightgreen: 2431553791,
lightgrey: 3553874943,
lightpink: 4290167295,
lightsalmon: 4288707327,
lightseagreen: 548580095,
lightskyblue: 2278488831,
lightslategray: 2005441023,
lightslategrey: 2005441023,
lightsteelblue: 2965692159,
lightyellow: 4294959359,
lime: 16711935,
limegreen: 852308735,
linen: 4210091775,
magenta: 4278255615,
maroon: 2147483903,
mediumaquamarine: 1724754687,
mediumblue: 52735,
mediumorchid: 3126187007,
mediumpurple: 2473647103,
mediumseagreen: 1018393087,
mediumslateblue: 2070474495,
mediumspringgreen: 16423679,
mediumturquoise: 1221709055,
mediumvioletred: 3340076543,
midnightblue: 421097727,
mintcream: 4127193855,
mistyrose: 4293190143,
moccasin: 4293178879,
navajowhite: 4292783615,
navy: 33023,
oldlace: 4260751103,
olive: 2155872511,
olivedrab: 1804477439,
orange: 4289003775,
orangered: 4282712319,
orchid: 3664828159,
palegoldenrod: 4008225535,
palegreen: 2566625535,
paleturquoise: 2951671551,
palevioletred: 3681588223,
papayawhip: 4293907967,
peachpuff: 4292524543,
peru: 3448061951,
pink: 4290825215,
plum: 3718307327,
powderblue: 2967529215,
purple: 2147516671,
rebeccapurple: 1714657791,
red: 4278190335,
rosybrown: 3163525119,
royalblue: 1097458175,
saddlebrown: 2336560127,
salmon: 4202722047,
sandybrown: 4104413439,
seagreen: 780883967,
seashell: 4294307583,
sienna: 2689740287,
silver: 3233857791,
skyblue: 2278484991,
slateblue: 1784335871,
slategray: 1887473919,
slategrey: 1887473919,
snow: 4294638335,
springgreen: 16744447,
steelblue: 1182971135,
tan: 3535047935,
teal: 8421631,
thistle: 3636451583,
tomato: 4284696575,
turquoise: 1088475391,
violet: 4001558271,
wheat: 4125012991,
white: 4294967295,
whitesmoke: 4126537215,
yellow: 4294902015,
yellowgreen: 2597139199
}
});
var Om = ((e, {
applyAnimatedValues: t = (() => !1),
createAnimatedStyle: n = (e => new Jh(e)),
getComponentProps: r = (e => e)
} = {}) => {
let i = {
applyAnimatedValues: t,
createAnimatedStyle: n,
getComponentProps: r
},
a = e => {
let t = sf(e) || "Anonymous";
return (e = Ap.str(e) ? a[e] || (a[e] = rf(e, i)) : e[of] || (e[of] = rf(e, i))).displayName = `Animated(${t})`, e
};
return Rp(e, ((t, n) => {
Ap.arr(e) && (n = sf(t)), a[n] = a(t)
})), {
animated: a
}
})(["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", "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", "mask", "path", "pattern", "polygon", "polyline", "radialGradient", "rect", "stop", "svg", "text", "tspan"], {
applyAnimatedValues: function(e, t) {
if (!e.nodeType || !e.setAttribute) return !1;
let n = "filter" === e.nodeName || e.parentNode && "filter" === e.parentNode.nodeName,
{
style: r,
children: i,
scrollTop: a,
scrollLeft: o,
viewBox: s,
...l
} = t,
c = Object.values(l),
u = Object.keys(l).map((t => n || e.hasAttribute(t) ? t : vm[t] || (vm[t] = t.replace(/([A-Z])/g, (e => "-" + e.toLowerCase())))));
for (let p in void 0 !== i && (e.textContent = i), r)
if (r.hasOwnProperty(p)) {
var d;
let t = null == (d = r[p]) || "boolean" == typeof d || "" === d ? "" : "number" != typeof d || 0 === d || gm.test(p) || ym.hasOwnProperty(p) && ym[p] ? ("" + d).trim() : d + "px";
gm.test(p) ? e.style.setProperty(p, t) : e.style[p] = t
} u.forEach(((t, n) => {
e.setAttribute(t, c[n])
})), void 0 !== a && (e.scrollTop = a), void 0 !== o && (e.scrollLeft = o), void 0 !== s && e.setAttribute("viewBox", s)
},
createAnimatedStyle: e => new Em(e),
getComponentProps: ({
scrollTop: e,
scrollLeft: t,
...n
}) => n
}).animated;
let Cm = ms((({
as: e = "nav",
children: t,
className: n,
...r
}, i) => {
let [a, o] = (0, Ee.useState)(!1), s = fs("sol-c-game-page__tabs", n), l = (0, Ee.useRef)(null), {
unessentialAnimationsDisabled: c
} = Ns().reduceMotion, [u] = um((() => ({
from: {
width: 0,
left: 0,
opacity: 0
},
to: async e => {
let t = l.current?.querySelector('[aria-pressed="true"], [aria-current="true"]'),
n = e => Number(getComputedStyle(t).getPropertyValue(e).match(/\d+/));
if (t) {
let r = n("padding-left"),
i = n("padding-right");
a || (o(!0), await e({
left: t.offsetLeft + r,
width: t.offsetWidth - r - i,
immediate: !0
})), await e({
left: t.offsetLeft + r,
width: t.offsetWidth - r - i
})
} else o(!1);
await e({
opacity: 1,
delay: 1500
})
},
config: {
duration: 100
}
})), [t]);
return qo.jsxs(e, {
className: s,
ref: gs(l, i),
...r,
children: [t, !c && qo.jsx(Om.div, {
"aria-hidden": "true",
className: "sol-c-game-page__tabs-indicator",
style: u
})]
})
})),
Am = ms((({
className: e,
...t
}, n) => {
let r = fs("sol-c-game-page__title", e);
return qo.jsx(Ys, {
as: "h1",
className: r,
ref: n,
color: "foreground",
variant: "heading-s",
...t
})
})),
Pm = ms((({
as: e = "div",
children: t,
className: n,
navigation: r,
theme: i,
...a
}, o) => {
let s = fs("sol-c-game-page", n);
return qo.jsxs(e, {
className: s,
ref: o,
...a,
children: [r && qo.jsx("div", {
className: "sol-c-game-page__navigation",
children: r
}), i ? qo.jsx(Gs, {
name: i,
children: ({
getProps: e
}) => qo.jsx("div", {
...e({
className: "sol-c-game-page__wrapper"
}),
children: t
})
}) : qo.jsx("div", {
className: "sol-c-game-page__wrapper",
children: t
})]
})
}));
No("@layer components{.sol-c-game-switcher{inline-size:5.5rem;overflow:hidden;position:relative;z-index:1}.sol-c-game-switcher:after,.sol-c-game-switcher:before{content:\"\";display:block}.sol-c-game-switcher:before{background:var(--sol-color-surface-0);inset:0;-webkit-mask:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='88'%3E%3Cpath d='M88 88V0c0 9.1-4.68 17.58-12.4 22.42L14.98 60.51A32 32 0 0 0 0 87.6v.4h88Z'/%3E%3C/svg%3E\") bottom right/100% auto no-repeat,linear-gradient(#000,#000);mask:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='88'%3E%3Cpath d='M88 88V0c0 9.1-4.68 17.58-12.4 22.42L14.98 60.51A32 32 0 0 0 0 87.6v.4h88Z'/%3E%3C/svg%3E\") bottom right/100% auto no-repeat,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;position:absolute;z-index:-1}[dir=rtl] .sol-c-game-switcher:before{transform:scaleX(-1)}.sol-c-game-switcher:after{padding-block-start:100%}.sol-c-game-switcher__title{padding:var(--sol-size-100) var(--sol-size-050) 0}.sol-c-game-switcher__item{--sol-focus-offset:0;--_background:var(--sol-color-surface-0);align-items:center;border-radius:var(--sol-radius-4);color:var(--sol-color-interactive);cursor:var(--sol-cursor-interactive);display:flex;height:var(--sol-size-450);justify-content:center;margin:var(--sol-size-025) var(--sol-size-050);padding:var(--sol-size-075);position:relative;transition:color var(--sol-motion-250);width:var(--sol-size-450)}.sol-c-game-switcher__item:hover{color:var(--sol-color-interactive-hovered)}.sol-c-game-switcher__item:active,.sol-c-game-switcher__item[aria-current=true]:not(:hover){color:var(--sol-color-interactive-pressed)}.sol-c-game-switcher__item:after,.sol-c-game-switcher__item:before{content:\"\";display:block}.sol-c-game-switcher__item:before{background-color:var(--_background);border-radius:inherit;inset:0;opacity:0;position:absolute;transition-duration:var(--sol-motion-250);transition-property:background-color,opacity,transform;z-index:1}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-game-switcher__item:before{transform:scaleY(.2222222222)}}.sol-c-game-switcher__item[style*=sol-c-game-switcher-logo]:after{background:currentColor;height:var(--sol-size-300);-webkit-mask:var(--sol-c-game-switcher-logo);mask:var(--sol-c-game-switcher-logo);-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;position:relative;width:var(--sol-size-300);z-index:2}.sol-c-game-switcher__item:hover:before,.sol-c-game-switcher__item[aria-current=true]:before{opacity:1;transform:scaleY(1)}.sol-c-game-switcher__item:hover{--_background:var(--sol-color-surface-0-hovered)}.sol-c-game-switcher__item:active:before{--_background:var(--sol-color-surface-0-pressed)}.sol-c-game-switcher__item[aria-current=true]:before{--_background:var(--sol-color-surface-2)}.sol-c-game-switcher__item[aria-current=true]:hover:before{--_background:var(--sol-color-surface-2-hovered)}.sol-c-game-switcher__item[aria-current=true]:active:before{--_background:var(--sol-color-surface-2-pressed)}.sol-c-game-switcher__item:disabled,.sol-c-game-switcher__item[aria-disabled=true]{opacity:.2;pointer-events:none}.sol-c-game-switcher__fallback{position:relative;z-index:2}.sol-c-game-switcher__indicator{background:var(--sol-color-interactive-pressed);border-end-end-radius:var(--sol-radius-4);border-start-end-radius:var(--sol-radius-4);inline-size:var(--sol-border-2);inset-inline-start:0;opacity:0;position:absolute}}");
let Tm = (0, Ee.forwardRef)((({
active: e,
className: t,
logo: n,
name: r,
...i
}, a) => {
let o = fs("sol-c-game-switcher__item", t),
s = Os({
src: n
});
return qo.jsxs(qs, {
"aria-current": e ? "true" : void 0,
className: o,
ref: a,
...i,
style: {
"--sol-c-game-switcher-logo": n && s === Es ? `url("${n}")` : void 0
},
children: [(!n || s === Is) && qo.jsx(Ys, {
"aria-hidden": "true",
className: "sol-c-game-switcher__fallback",
offset: !0,
variant: "heading-l",
children: r.slice(0, 2).toLocaleUpperCase()
}), qo.jsx("span", {
className: "sol-u-hide-visually",
children: r
})]
})
})),
Rm = ms((({
as: e = "nav",
children: t,
className: n,
id: r,
items: i,
title: a,
...o
}, s) => {
let l = ws(r) + "-label",
c = fs("sol-c-game-switcher", n),
u = (0, Ee.useRef)(null),
[d, p] = (0, Ee.useState)(!1),
[h] = um((() => ({
from: {
height: 0,
top: 0,
opacity: 0
},
to: async e => {
let t = u.current?.querySelector('[aria-current="true"]');
t ? (d || (p(!0), await e({
top: t.offsetTop,
height: t.offsetHeight,
immediate: !0
})), await e({
top: t.offsetTop,
height: t.offsetHeight,
opacity: 1
})) : (p(!1), await e({
opacity: 0
}))
}
})), [t]);
return qo.jsxs(e, {
"aria-labelledby": a ? l : void 0,
className: c,
ref: gs(u, s),
...o,
children: [a && qo.jsx(Ys, {
align: "center",
className: "sol-c-game-switcher__title",
id: l,
variant: "emphasis-s",
transform: "uppercase",
truncate: !0,
children: a
}), i?.map(((e, t) => e.name && qo.jsx(Tm, {
...e
}, t))), t, qo.jsx(Om.div, {
"aria-hidden": "true",
className: "sol-c-game-switcher__indicator",
style: h
})]
})
}));
function Dm() {
return (Dm = Object.assign ? Object.assign.bind() : 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)
}
No('@layer components{.sol-c-input{--_background-color:var(--sol-color-surface-0);--_border-color:var(--sol-color-interactive);--_border-width:var(--sol-border-1);--_block-size:var(--sol-size-300);--_icon-size:var(--sol-size-100);--_padding:var(--sol-size-100);--_separator-color:var(--sol-color-surface-2);--_separator-size:var(--sol-size-150);--_separator-width:var(--sol-border-1);align-items:flex-start;background:var(--_background-color);border-radius:var(--sol-radius-4);display:flex;flex:1;gap:var(--_padding);padding-inline:var(--_padding);position:relative}.sol-c-input:before{border:var(--_border-width) solid var(--_border-color);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute;transition:border-color var(--sol-motion-250);z-index:3}.sol-c-input:hover{--_border-color:var(--sol-color-interactive-hovered)}.sol-c-input:has(.sol-c-input__element:focus){--_border-color:var(--sol-color-interactive-pressed);--_border-width:var(--sol-focus-width)}.sol-c-input--disabled{opacity:.4;pointer-events:none}.sol-c-input--invalid{--_border-color:var(--sol-color-interactive-negative)}.sol-c-input--invalid:hover{--_border-color:var(--sol-color-interactive-negative-hovered)}.sol-c-input--invalid:has(.sol-c-input__element:focus){--_border-color:var(--sol-color-interactive-negative-pressed)}.sol-c-input--has-start-icon,.sol-c-input:has(.sol-c-input__icon--start){--_offset-start:calc(var(--_icon-size) + var(--_padding))}.sol-c-input--has-end-icon,.sol-c-input:has(.sol-c-input__icon--end){--_offset-end:calc(var(--_padding) + var(--_icon-size))}.sol-c-input__element{align-items:center;background:#0000 none;border:0;border-radius:0;box-shadow:none;display:flex;flex:1;font:1rem/1.5 sans-serif;inline-size:100%;margin-block:0;margin-inline-end:calc((var(--_padding) + var(--_offset-end, 0px))*-1);margin-inline-start:calc((var(--_padding) + var(--_offset-start, 0px))*-1);min-block-size:var(--_block-size);padding-block:var(--sol-size-025);padding-inline-end:calc(var(--_padding) + var(--_offset-end, 0px));padding-inline-start:calc(var(--_padding) + var(--_offset-start, 0px));position:relative;text-align:start;text-overflow:ellipsis}.sol-c-input__element:is(textarea){block-size:calc(var(--_block-size)*2);padding-block:var(--sol-size-075);resize:vertical;scroll-padding-block:var(--sol-size-075)}.sol-c-input__element:is(select){appearance:none}.sol-c-input__element:is(select) optgroup,.sol-c-input__element:is(select) optgroup:checked,.sol-c-input__element:is(select) option,.sol-c-input__element:is(select) option:checked{background:var(--sol-color-surface-0)}.sol-c-input__element[type=number]{appearance:textfield}.sol-c-input__element[type=number]::-webkit-inner-spin-button,.sol-c-input__element[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.sol-c-input__element:is(button)[data-placeholder]:empty:before{content:attr(data-placeholder);display:block;pointer-events:none}.sol-c-input__element:is(button)[data-placeholder]:before,.sol-c-input__element:is(input,textarea)::placeholder,.sol-c-input__element:is(select):has(option[value=""]:not(:empty):checked){color:var(--sol-color-foreground-weak);opacity:1;transition:opacity var(--sol-motion-250)}.sol-c-input__element:focus,.sol-c-input__element:focus-visible{outline:none}.sol-c-input__floating{--_label-size:var(--sol-text-label-xs-line-height);--_label-offset:calc(var(--_label-size)/2);display:flex;flex:1;position:relative}.sol-c-input__floating .sol-c-input__element{padding-block-start:calc(var(--_label-offset) + var(--_label-size))}.sol-c-input__floating .sol-c-input__element:not(:focus):is(input,textarea)::placeholder,.sol-c-input__floating .sol-c-input__element:not(:focus):is(select):has(option[value=""]:not(:empty):checked),.sol-c-input__floating .sol-c-input__element:not(:focus,[aria-expanded=true]):is(button)[data-placeholder]:before{opacity:0}.sol-c-input__label{inset-block-start:var(--_label-offset);inset-inline:0;pointer-events:none;position:absolute;z-index:2}.sol-c-input__label:before{background:var(--_background-color);content:"";inset:calc((var(--_label-offset) - var(--_border-width))*-1) 0;opacity:.8;position:absolute;z-index:-1}.sol-c-input__label-indicator,.sol-c-input__label-text{font:var(--sol-text-label-xs)}.sol-c-input__floating:has(.sol-c-input__element:not(:focus):is(input,textarea)[placeholder]:placeholder-shown,.sol-c-input__element:not(:focus):is(select) option[value=""]:not(:empty):checked,.sol-c-input__element:not(:focus):is(select) option:empty:checked,.sol-c-input__element:not(:focus,[aria-expanded=true]):is(button):empty) .sol-c-input__label{inset-block-start:var(--sol-size-075)}.sol-c-input__floating:has(.sol-c-input__element:not(:focus):is(input,textarea)[placeholder]:placeholder-shown,.sol-c-input__element:not(:focus):is(select) option[value=""]:not(:empty):checked,.sol-c-input__element:not(:focus):is(select) option:empty:checked,.sol-c-input__element:not(:focus,[aria-expanded=true]):is(button):empty) .sol-c-input__label-text{font:var(--sol-text-label-m)}.sol-c-input__floating:has(.sol-c-input__element:not(:focus):is(input,textarea)[placeholder]:placeholder-shown,.sol-c-input__element:not(:focus):is(select) option[value=""]:not(:empty):checked,.sol-c-input__element:not(:focus):is(select) option:empty:checked,.sol-c-input__element:not(:focus,[aria-expanded=true]):is(button):empty) .sol-c-input__label-indicator{font:var(--sol-text-label-s)}@container style(--sol-prefers-reduced-motion: no-preference){.sol-c-input__label{transition:inset-block-start var(--sol-motion-250)}.sol-c-input__label-indicator,.sol-c-input__label-text{transition-duration:var(--sol-motion-250);transition-property:font-size,line-height}}.sol-c-input__icon{--sol-c-icon-size:var(--_icon-size);margin-block:calc((var(--_block-size) - var(--_icon-size))/2);pointer-events:none}.sol-c-input__icon--resize{bottom:var(--sol-size-025);color:var(--sol-color-primary-6);height:var(--sol-size-075);margin:0;position:absolute;right:calc(var(--sol-size-075)*-1);width:var(--sol-size-075)}.sol-c-input__prefix,.sol-c-input__suffix{align-items:center;display:flex;min-block-size:var(--_block-size);position:relative}.sol-c-input__separator{background:var(--_separator-color);block-size:var(--_separator-size);inline-size:var(--_separator-width);margin-block:calc((var(--_block-size) - var(--_separator-size))/2)}}');
var Lm = function(e, t) {
"function" != typeof e ? e.current = t : e(t)
},
Nm = function() {},
Mm = ["cacheMeasurements", "maxRows", "minRows", "onChange", "onHeightChange"],
jm = Ee.forwardRef((function(e, t) {
e.cacheMeasurements, e.maxRows, e.minRows;
var n = e.onChange;
e.onHeightChange;
var r = function(e, t) {
if (null == e) return {};
var n = {};
for (var r in e)
if (Object.prototype.hasOwnProperty.call(e, r)) {
if (t.indexOf(r) >= 0) continue;
n[r] = e[r]
} return n
}(e, Mm);
r.value;
var i = function(e, t) {
var n = (0, Ee.useRef)();
return (0, Ee.useCallback)((function(r) {
e.current = r, n.current && Lm(n.current, null), n.current = t, t && Lm(t, r)
}), [t])
}(Ee.useRef(null), t);
return Ee.useRef(0), Ee.useRef(), Ee.createElement("textarea", Dm({}, r, {
onChange: void 0 === n ? Nm : n,
ref: i
}))
}));
let Fm = (0, Ee.forwardRef)((({
as: e,
className: t,
id: n,
"aria-describedby": r,
"aria-labelledby": i,
disabled: a,
invalid: o,
required: s,
placeholder: l = " ",
type: c,
endIcon: u,
icon: d,
prefix: p,
suffix: h,
showPasswordLabel: f = "Show password",
hidePasswordLabel: m = "Hide password",
wrapperProps: g,
...v
}, y) => {
let _ = (0, Ee.useRef)(null),
b = (0, Ee.useId)(),
x = Yd(),
[k, w] = (0, Ee.useState)(!1),
S = x?.inputId ?? n ?? b,
E = Vs(y, _);
(0, Ee.useLayoutEffect)((() => {
x && _.current && (x.setInputRef(_.current), x.setInputId(S), null != a && x.setIsDisabled(a), null != o && x.setIsInvalid(o), null != s && x.setIsRequired(s), "button" === e && x.setLabelElementType("span"))
}), [e, a, x, S, o, s]), (0, Ee.useEffect)((() => {
if ("password" === c && _.current) {
let e = _.current.form,
t = () => w(!1);
return e?.addEventListener("submit", t), () => e?.removeEventListener("submit", t)
}
}), [c]);
let I = x?.isDisabled ?? a,
O = x?.isInvalid ?? o,
C = x?.isRequired ?? s,
A = x?.getDescribedby(r) ?? r,
P = x?.getLabelledby(i) ?? i,
T = (0, Ee.useMemo)((() => x ? qo.jsxs(cl, {
align: "baseline",
as: x.labelElementType,
className: "sol-c-input__label",
gap: "025",
...x.labelProps,
children: [qo.jsx(Ys, {
as: "span",
className: "sol-c-input__label-text",
color: "foreground-weak",
truncate: !0,
children: x.label
}), x.necessityIndicator && qo.jsxs(Ys, {
"aria-hidden": !!C || void 0,
as: "span",
className: "sol-c-input__label-indicator",
color: "foreground-weak",
transform: "lowercase",
children: ["(", x.necessityIndicator, ")"]
})]
}) : null), [x, C]),
R = (0, Ee.useMemo)((() => "password" === c ? qo.jsxs(qo.Fragment, {
children: [qo.jsx(el, {
"aria-label": k ? m : f,
color: O ? "negative" : void 0,
icon: k ? cs : ls,
onClick: () => w(!k),
size: "small",
variant: "plain"
}), h]
}) : h), [m, O, k, f, h, c]),
D = "select" === e ? ns : u,
L = fs("sol-c-input", D && "sol-c-input--has-end-icon", d && "sol-c-input--has-start-icon", I && "sol-c-input--disabled", O && "sol-c-input--invalid", C && "sol-c-input--required", g?.className),
N = fs("sol-c-input__element", t),
M = (0, Ee.createElement)(e ? "textarea" === e ? jm : e : "input", {
"aria-describedby": A,
"aria-labelledby": P,
"aria-required": !!C || void 0,
"aria-invalid": !!O || void 0,
autoComplete: "password" === c ? "off" : void 0,
className: N,
disabled: I,
id: S,
placeholder: l,
"data-placeholder": l,
ref: E,
type: "password" === c && k ? "text" : c,
...v
});
return qo.jsxs("div", {
...g,
className: L,
children: [p && qo.jsx(Ys, {
className: "sol-c-input__prefix",
color: "foreground-weak",
variant: "label-m",
children: p
}), p && d && qo.jsx("span", {
"aria-hidden": !0,
className: "sol-c-input__separator"
}), d && qo.jsx(Ks, {
className: "sol-c-input__icon sol-c-input__icon--start",
source: d
}), x && x.label && "floating" === x.labelType ? qo.jsxs("div", {
className: "sol-c-input__floating",
children: [T, M, "textarea" === e && qo.jsx(ss, {
className: "sol-c-input__icon sol-c-input__icon--resize"
})]
}) : M, D && qo.jsx(Ks, {
className: "sol-c-input__icon sol-c-input__icon--end",
source: D
}), D && R && qo.jsx("span", {
"aria-hidden": !0,
className: "sol-c-input__separator"
}), R && qo.jsx(Ys, {
className: "sol-c-input__suffix",
color: "foreground-weak",
variant: "label-m",
children: R
})]
})
}));
No("@layer components{.sol-c-link{--_gap:var(--sol-size-025);border-radius:var(--sol-radius-4);cursor:var(--sol-cursor-interactive);text-decoration:underline}.sol-c-link:not(.sol-c-link--inherit){color:var(--sol-color-interactive);transition:color var(--sol-motion-250)}.sol-c-link:not(.sol-c-link--inherit):hover{color:var(--sol-color-interactive-hovered)}.sol-c-link:not(.sol-c-link--inherit):active{color:var(--sol-color-interactive-pressed)}.sol-c-link--inherit:hover{text-decoration:none}.sol-c-link--external{cursor:var(--sol-cursor-link)}.sol-c-link__icon{position:relative;top:-.125em}.sol-c-link__icon--start{margin-right:var(--_gap)}.sol-c-link__icon--end{margin-left:var(--_gap)}.sol-c-link__orphan{display:inline;white-space:nowrap}}");
let zm = ms((({
children: e,
className: t,
external: n,
icon: r,
startIcon: i,
inherit: a,
...o
}, s) => {
let l = fs("sol-c-link", n && "sol-c-link--external", a && "sol-c-link--inherit", t);
return qo.jsxs($s, {
className: l,
external: n,
ref: s,
...o,
children: [i && qo.jsx(Ks, {
className: "sol-c-link__icon sol-c-link__icon--start",
source: i
}), e, r && qo.jsxs("span", {
className: "sol-c-link__orphan",
children: ["\ufeff", qo.jsx(Ks, {
className: "sol-c-link__icon sol-c-link__icon--end",
source: r
})]
})]
})
}));
No('@layer components{.sol-c-listbox{--_background:var(--sol-color-surface-2);--_divider-width:var(--sol-border-1);--_divider-color:var(--sol-color-surface-3);background:var(--_background);border-radius:var(--sol-radius-4);box-shadow:var(--sol-shadow-050);color:var(--sol-color-foreground);inline-size:max-content;max-block-size:var(--sol-c-listbox-available-height,18rem);max-block-size:min(18rem,var(--sol-c-listbox-available-height,0px));overflow:auto}.sol-c-listbox:focus,.sol-c-listbox:focus-visible{outline:none}.sol-c-listbox,[data-sol-listbox-overlay]{z-index:var(--sol-z-menu)}.sol-c-listbox__group:not(:last-child),.sol-c-listbox__item:not(:last-child):after{border-block-end:var(--_divider-width) solid var(--_divider-color)}.sol-c-listbox__label{padding:var(--sol-size-075) var(--sol-size-100)}.sol-c-listbox__item{--_foreground:#0000;--sol-focus-offset:calc(var(--sol-focus-width)*-1);align-items:center;border-radius:var(--sol-radius-4);cursor:var(--sol-cursor-interactive);display:flex;gap:var(--sol-size-050);margin:0 var(--sol-size-050);min-block-size:var(--sol-size-300);min-inline-size:0;padding:var(--sol-size-025) var(--sol-size-050);position:relative;user-select:none;z-index:1}.sol-c-listbox__item:after,.sol-c-listbox__item:before{content:"";display:block;inset:0 calc(var(--sol-size-050)*-1);position:absolute;z-index:-1}.sol-c-listbox__item:before{background:var(--_background);border-inline-start:var(--sol-border-2) solid var(--_foreground);transition:background var(--sol-motion-250)}.sol-c-listbox__item:disabled,.sol-c-listbox__item[aria-disabled=true]{pointer-events:none}.sol-c-listbox__item:disabled>*,.sol-c-listbox__item[aria-disabled=true]>*{opacity:.4}.sol-c-listbox__item:disabled:focus,.sol-c-listbox__item:disabled:focus-visible,.sol-c-listbox__item[aria-disabled=true]:focus,.sol-c-listbox__item[aria-disabled=true]:focus-visible{outline:none}.sol-c-listbox__item:hover{--_background:var(--sol-color-surface-2-hovered)}.sol-c-listbox__item:active{--_background:var(--sol-color-surface-2-pressed)}.sol-c-listbox__item[aria-selected=true]{--_background:var(--sol-color-surface-3);--_foreground:var(--sol-color-interactive)}.sol-c-listbox__item[aria-selected=true]:hover{--_background:var(--sol-color-surface-3-hovered);--_foreground:var(--sol-color-interactive-hovered)}.sol-c-listbox__item[aria-selected=true]:active{--_background:var(--sol-color-surface-3-pressed);--_foreground:var(--sol-color-interactive-pressed)}.sol-c-listbox__icon{--sol-c-icon-size:var(--sol-size-100);margin-inline-start:auto}}');
let Vm = {
none: 0,
small: 8,
medium: 12,
large: 16
},
Um = (0, Ee.createContext)(null),
Bm = () => {
let e = (0, Ee.useContext)(Um);
if (!e) throw Error("Listbox components must be wrapped in <Listbox />");
return e
},
Gm = ((0, Ee.forwardRef)((({
children: e,
className: t,
label: n,
...r
}, i) => {
let a = (0, Ee.useId)(),
{
isMounted: o
} = Bm();
if (!o) return qo.jsx(qo.Fragment, {
children: e
});
let s = fs("sol-c-listbox__group", t);
return qo.jsxs("li", {
className: s,
ref: i,
role: "presentation",
...r,
children: [qo.jsx(Ys, {
id: a,
"aria-hidden": "true",
className: "sol-c-listbox__label",
color: "foreground-highlight",
variant: "body-s-bold",
children: n
}), qo.jsx("ul", {
"aria-labelledby": a,
className: "sol-c-listbox__items",
role: "group",
children: e
})]
})
})), (0, Ee.memo)((0, Ee.forwardRef)((({
children: e,
active: t,
disabled: n,
selected: r,
getItemProps: i,
onSelect: a,
...o
}, s) => qo.jsxs("li", {
"aria-selected": r,
"aria-disabled": n,
ref: s,
role: "option",
tabIndex: t ? 0 : -1,
...i({
onClick: a,
onKeyDown(e) {
["Enter", "Tab"].includes(e.key) && a(), [" ", "Tab"].includes(e.key) && e.preventDefault()
},
onKeyUp(e) {
" " === e.key && a()
}
}),
...o,
children: [qo.jsx(Ys, {
as: "span",
className: "sol-c-listbox__content",
color: "foreground",
truncate: !0,
variant: "label-m",
children: e
}), r && qo.jsx(Ks, {
className: "sol-c-listbox__icon",
color: "foreground",
source: Yo
})]
}))))),
Wm = (0, Ee.forwardRef)((({
children: e,
className: t,
disabled: n = !1,
id: r,
label: i,
value: a,
...o
}, s) => {
let {
ref: l,
index: c
} = _u({
label: n ? null : i
}), {
getItemProps: u,
activeIndex: d,
selectedIndex: p,
setSelectedIndex: h,
setIsOpen: f,
value: m,
setValue: g,
setLabel: v,
allowEmpty: y,
isMounted: _
} = Bm();
Cs((() => {
a === m && c !== p && (h(c), v(e ?? i))
}), [e, c, m, i, p, v, h, a]);
let b = (0, Ee.useCallback)((() => {
n || (c === p && y ? (h(null), g(""), v("")) : (h(c), g(a), v(e ?? i)), f(!1))
}), [y, e, n, c, i, p, v, f, h, g, a]),
x = tu([s, l]);
if (!_) return qo.jsx("li", {
ref: x,
children: i
});
let k = !n && c === p,
w = !n && c === d,
S = fs("sol-c-listbox__item", w && "sol-c-listbox__item--active", t);
return qo.jsx(Gm, {
className: S,
ref: x,
active: w,
disabled: n,
selected: k,
getItemProps: u,
onSelect: b,
...o,
children: e ?? i
})
})),
$m = (0, Ee.forwardRef)((({
allowEmpty: e,
anchor: t,
children: n,
className: r,
defaultValue: i = "",
loop: a = !0,
name: o,
offset: s = "small",
onChange: l,
onValueChange: c,
overlay: u = !1,
placement: d = "bottom-start",
style: p,
trigger: h,
value: f,
empty: m = "",
...g
}, v) => {
let y = (({
allowEmpty: e,
anchor: t,
loop: n,
offset: r = "small",
placement: i,
value: a,
defaultValue: o,
onValueChange: s
} = {}) => {
let [l, c] = _s({
value: a,
defaultValue: o,
onChange: s
}), [u, d] = (0, Ee.useState)(!1), [p, h] = (0, Ee.useState)(null), [f, m] = (0, Ee.useState)(null), [g, v] = (0, Ee.useState)(null), y = (0, Ee.useRef)([]), _ = (0, Ee.useRef)([]), b = pd({
open: u,
onOpenChange: d,
placement: i,
whileElementsMounted: Dc,
middleware: [ic({
mainAxis: Vm[r],
alignmentAxis: 0
}), ac({
padding: Vm[r]
}), oc({
apply({
availableHeight: e,
availableWidth: t,
elements: n,
rects: r
}) {
n.floating.style.setProperty("--sol-c-listbox-available-height", `${e}px`), Object.assign(n.floating.style, {
maxInlineSize: `${t}px`,
inlineSize: `${r.reference.width}px`
})
},
padding: Vm[r]
})],
transform: !1
}), {
context: x,
refs: {
setPositionReference: k
}
} = b;
(0, Ee.useEffect)((() => {
t && k(t)
}), [t, k]), (0, Ee.useEffect)((() => {
e && !l && (h(null), m(null), v(null))
}), [e, l]);
let w = fd([sd(x), dd(x), xd(x, {
role: "listbox"
}), bd(x, {
listRef: y,
activeIndex: p,
selectedIndex: f,
onNavigate: h,
loop: n
}), wd(x, {
listRef: _,
activeIndex: p,
selectedIndex: f,
onMatch: h
})]),
S = kd(x);
return (0, Ee.useMemo)((() => ({
isOpen: u,
setIsOpen: d,
elementsRef: y,
labelsRef: _,
allowEmpty: e,
activeIndex: p,
selectedIndex: f,
setSelectedIndex: m,
label: g,
setLabel: v,
value: l,
setValue: c,
...b,
...w,
...S
})), [u, e, p, f, g, l, c, b, w, S])
})({
allowEmpty: e,
anchor: t,
defaultValue: i,
loop: a,
offset: s,
onValueChange(e) {
l?.({
target: {
name: o,
value: e
}
}), c?.(e)
},
placement: d,
value: f
}),
{
floatingStyles: _,
refs: b,
context: x,
placement: k,
getReferenceProps: w,
getFloatingProps: S,
isOpen: E,
value: I,
label: O,
isMounted: C,
status: A,
elementsRef: P,
labelsRef: T
} = y,
R = tu([v, b.setReference, h.ref]),
{
name: D
} = Ws(),
L = fs("sol-c-listbox", "sol-u-transition-floating", r);
return qo.jsx(yu, {
elementsRef: P,
labelsRef: T,
children: qo.jsxs(Um.Provider, {
value: y,
children: [(0, Ee.cloneElement)("function" == typeof h ? h({
isOpen: E,
label: O,
value: I
}) : h, w({
ref: R
}), h.props?.children || O || m), C ? qo.jsx(ed, {
children: qo.jsx(zd, {
condition: u,
wrap: e => qo.jsx(ad, {
"data-sol-listbox-overlay": !0,
children: e
}),
children: qo.jsx(rd, {
context: x,
modal: !1,
children: qo.jsx("ul", {
className: L,
"data-sol-placement": k,
"data-sol-status": A,
"data-sol-theme": D,
ref: b.setFloating,
role: "listbox",
style: {
..._,
...p
},
...S(g),
children: n
})
})
})
}) : qo.jsx("ul", {
hidden: !0,
children: n
}), o && qo.jsx("input", {
type: "hidden",
name: o,
value: I
})]
})
})
}));
No("@layer components{.sol-c-loading{background:var(--sol-c-loading-background,var(--sol-color-surface-1));color:var(--sol-c-loading-foreground,var(--sol-color-foreground-highlight));flex:1;position:relative}.sol-c-loading__animation{width:19.25rem}}");
var qm = {
v: "5.9.0",
fr: 29.9700012207031,
ip: 0,
op: 120.0000048877,
w: 336,
h: 205,
nm: "RSI Loader V4 - Export",
ddd: 0,
assets: [{
id: "comp_0",
nm: "RSI Loader V4",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Bars strokes 2",
sr: 1,
ks: {
o: {
a: 1,
k: [{
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 27,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 28.951,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 30.959,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 32.958,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 34.959,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 36.955,
s: [100]
}, {
t: 41.9512517087094,
s: [0]
}],
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-4.209, 36.009],
[13.79, -36.165],
[4.292, -36.165],
[-13.79, 36.009]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [592.395, 35.96],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[13.853, -36.165],
[-4.103, 36.009],
[-13.79, 36.009],
[4.378, -36.165]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [568.269, 35.959],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[14.318, -36.052],
[3.722, -36.052],
[-14.276, 35.811],
[-3.976, 35.811]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [543.532, 36.002],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 4",
np: 2,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[3.933, -35.751],
[-14.15, 35.751],
[-3.933, 35.751],
[14.15, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [324.455, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 6",
np: 2,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[4.165, -35.751],
[-13.918, 35.751],
[-4.292, 35.751],
[13.918, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [300.641, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 7",
np: 2,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[14.171, -35.595],
[-4.08, 35.751],
[-14.171, 35.751],
[4.25, -35.625]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [276.055, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 8",
np: 2,
cix: 2,
bm: 0,
ix: 6,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 100,
ix: 1
},
e: {
a: 0,
k: 0,
ix: 2
},
o: {
a: 0,
k: -131,
ix: 3
},
m: 1,
ix: 8,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.996078431373, .729411764706, .282352941176, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 27.0000010997325,
op: 42.0000017106951,
st: -6.00000024438501,
bm: 0
}, {
ddd: 0,
ind: 2,
ty: 4,
nm: "RSI strokes 6",
sr: 1,
ks: {
o: {
a: 1,
k: [{
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 27.049,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 29,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 31.008,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 33.006,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 35.008,
s: [0]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 37.004,
s: [100]
}, {
t: 42.0000017106951,
s: [0]
}],
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.606, -5.426],
[8.239, -4.122]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[-1.225, 4.164],
[0, 0]
],
v: [
[-43.749, -10.347],
[-43.2, -12.576],
[-25.709, -82.269],
[58.876, -82.269],
[68.339, -74.362],
[56.003, -61.071]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 4,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 0,
ix: 1
},
e: {
a: 0,
k: 100,
ix: 2
},
o: {
a: 0,
k: 0,
ix: 3
},
m: 1,
ix: 5,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, 1, 1, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 27.0000010997325,
op: 42.0000017106951,
st: 28.0000011404634,
bm: 0
}, {
ddd: 0,
ind: 3,
ty: 0,
nm: "RSI filled 3",
refId: "comp_1",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [540, 540, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [540, 540, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
hasMask: !0,
masksProperties: [{
inv: !1,
mode: "a",
pt: {
a: 1,
k: [{
i: {
x: .14,
y: 1
},
o: {
x: .86,
y: 0
},
t: 92,
s: [{
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[973, 292],
[854, 765],
[158, 772],
[274, 300]
],
c: !0
}]
}, {
t: 117.000004765508,
s: [{
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[1647, 292],
[1528.001, 765],
[834, 773],
[954, 301]
],
c: !0
}]
}],
ix: 1
},
o: {
a: 1,
k: [{
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 0,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 3,
s: [40]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 6,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 9,
s: [40]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 12,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 15,
s: [40]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 18,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 21,
s: [40]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 24,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 27,
s: [10]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 29,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 31,
s: [10]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 33,
s: [100]
}, {
i: {
x: [.833],
y: [.833]
},
o: {
x: [.167],
y: [.167]
},
t: 35,
s: [10]
}, {
t: 37.0000015070409,
s: [100]
}],
ix: 3
},
x: {
a: 0,
k: 0,
ix: 4
},
nm: "Mask 1"
}],
w: 1080,
h: 1080,
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}]
}, {
id: "comp_1",
nm: "RSI filled 3",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 0,
nm: "RSI Filled logo",
refId: "comp_2",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [540, 540, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [540, 540, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
hasMask: !0,
masksProperties: [{
inv: !1,
mode: "a",
pt: {
a: 1,
k: [{
i: {
x: .14,
y: 1
},
o: {
x: .86,
y: 0
},
t: 30,
s: [{
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[259, 293],
[140, 766],
[-750, 774],
[-740, 302]
],
c: !0
}]
}, {
t: 55.0000022401959,
s: [{
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[963, 293],
[844, 766],
[150, 774],
[270, 302]
],
c: !0
}]
}],
ix: 1
},
o: {
a: 0,
k: 100,
ix: 3
},
x: {
a: 0,
k: 0,
ix: 4
},
nm: "Mask 1"
}],
w: 1080,
h: 1080,
ip: 25.0000010182709,
op: 146.000005946702,
st: -21.0000008553475,
bm: 0
}, {
ddd: 0,
ind: 2,
ty: 4,
nm: "Bars strokes",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-4.209, 36.009],
[13.79, -36.165],
[4.292, -36.165],
[-13.79, 36.009]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [592.395, 35.96],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[13.853, -36.165],
[-4.103, 36.009],
[-13.79, 36.009],
[4.378, -36.165]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [568.269, 35.959],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[14.318, -36.052],
[3.722, -36.052],
[-14.276, 35.811],
[-3.976, 35.811]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [543.532, 36.002],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 4",
np: 2,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[3.933, -35.751],
[-14.15, 35.751],
[-3.933, 35.751],
[14.15, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [324.455, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 6",
np: 2,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[4.165, -35.751],
[-13.918, 35.751],
[-4.292, 35.751],
[13.918, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [300.641, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 7",
np: 2,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[14.171, -35.595],
[-4.08, 35.751],
[-14.171, 35.751],
[4.25, -35.625]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [276.055, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 8",
np: 2,
cix: 2,
bm: 0,
ix: 6,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 0,
k: 100,
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.833],
y: [.818]
},
o: {
x: [.4],
y: [0]
},
t: 17,
s: [100]
}, {
t: 29.0000011811942,
s: [0]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.833],
y: [.818]
},
o: {
x: [.4],
y: [0]
},
t: 17,
s: [-59]
}, {
t: 29.0000011811942,
s: [-131]
}],
ix: 3
},
m: 1,
ix: 8,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 15.0000006109625,
op: 126.000005132085,
st: -18.000000733155,
bm: 0
}, {
ddd: 0,
ind: 3,
ty: 4,
nm: "RSI strokes 7",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.606, -5.426],
[8.239, -4.122]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[-1.225, 4.164],
[0, 0]
],
v: [
[-43.749, -10.347],
[-43.2, -12.576],
[-25.709, -82.269],
[58.876, -82.269],
[68.339, -74.362],
[56.003, -61.071]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 3,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [75]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [75]
}, {
t: 27.0000010997325,
s: [100]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.764],
y: [1]
},
o: {
x: [.382],
y: [0]
},
t: 0,
s: [-40]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 3
},
m: 1,
ix: 3,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 4,
ty: 4,
nm: "RSI strokes 6",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 3,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [75]
}, {
t: 27.0000010997325,
s: [75]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [75]
}, {
t: 27.0000010997325,
s: [50]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.764],
y: [1]
},
o: {
x: [.382],
y: [0]
},
t: 0,
s: [-40]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 3
},
m: 1,
ix: 5,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 5,
ty: 4,
nm: "RSI strokes 5",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 3,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [25]
}, {
t: 27.0000010997325,
s: [50]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [25]
}, {
t: 27.0000010997325,
s: [25]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.764],
y: [1]
},
o: {
x: [.382],
y: [0]
},
t: 0,
s: [-40]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 3
},
m: 1,
ix: 5,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 6,
ty: 4,
nm: "RSI strokes 4",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 3,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [100]
}, {
t: 27.0000010997325,
s: [100]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [100]
}, {
t: 27.0000010997325,
s: [75]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.764],
y: [1]
},
o: {
x: [.382],
y: [0]
},
t: 0,
s: [-40]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 3
},
m: 1,
ix: 5,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 7,
ty: 4,
nm: "RSI strokes 3",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 3,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "tm",
s: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [0]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 1
},
e: {
a: 1,
k: [{
i: {
x: [.8],
y: [1]
},
o: {
x: [.66],
y: [0]
},
t: 0,
s: [0]
}, {
t: 27.0000010997325,
s: [25]
}],
ix: 2
},
o: {
a: 1,
k: [{
i: {
x: [.764],
y: [1]
},
o: {
x: [.382],
y: [0]
},
t: 0,
s: [-40]
}, {
t: 27.0000010997325,
s: [0]
}],
ix: 3
},
m: 1,
ix: 5,
nm: "Trim Paths 1",
mn: "ADBE Vector Filter - Trim",
hd: !1
}, {
ty: "st",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 3
},
o: {
a: 0,
k: 100,
ix: 4
},
w: {
a: 0,
k: 3,
ix: 5
},
lc: 1,
lj: 1,
ml: 4,
bm: 0,
nm: "Stroke 1",
mn: "ADBE Vector Graphic - Stroke",
hd: !1
}],
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}]
}, {
id: "comp_2",
nm: "RSI Filled logo",
fr: 29.9700012207031,
layers: [{
ddd: 0,
ind: 1,
ty: 4,
nm: "Copyright",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [912.856, 378.542, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [18.617, 18.788, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 2.315],
[2.643, 0]
],
o: [
[0, 0],
[0, 0],
[2.643, 0],
[0, -2.382],
[0, 0]
],
v: [
[-2.676, -5.97],
[-2.676, -.215],
[-.1, -.215],
[3.337, -3.026],
[-.1, -5.97]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, -4.829],
[2.775, -.529],
[0, 0],
[.297, 0],
[0, 0],
[.165, .331],
[0, 0],
[0, 0],
[0, 0],
[.264, 0],
[0, 0],
[0, .265],
[0, 0],
[-.231, 0],
[-2.113, 0]
],
o: [
[0, 3.638],
[0, 0],
[.199, .198],
[0, 0],
[-.429, 0],
[0, 0],
[0, 0],
[0, 0],
[0, .298],
[0, 0],
[-.297, 0],
[0, 0],
[0, -.199],
[2.213, -.199],
[5.254, 0]
],
v: [
[7.4, -3.159],
[3.666, 2.497],
[7.829, 9.145],
[7.63, 9.542],
[4.194, 9.542],
[3.436, 9.112],
[-.628, 2.762],
[-2.676, 2.762],
[-2.676, 9.178],
[-2.973, 9.509],
[-6.309, 9.509],
[-6.639, 9.178],
[-6.639, -8.88],
[-6.342, -9.178],
[.329, -9.41]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 2,
ty: "sh",
ix: 3,
ks: {
a: 0,
k: {
i: [
[0, 10.849],
[10.736, 0],
[0, -10.881],
[-10.736, 0]
],
o: [
[0, -10.848],
[-10.736, 0],
[0, 10.849],
[10.768, 0]
],
v: [
[15.592, -.017],
[-.033, -15.793],
[-15.658, -.017],
[-.033, 15.76]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 3",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 3,
ty: "sh",
ix: 4,
ks: {
a: 0,
k: {
i: [
[0, 12.734],
[-12.618, 0],
[0, -12.7],
[12.619, 0]
],
o: [
[0, -12.733],
[12.619, 0],
[0, 12.734],
[-12.618, 0]
],
v: [
[-18.366, -.017],
[-.001, -18.538],
[18.366, -.017],
[-.001, 18.538]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 4",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [18.617, 18.788],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 1",
np: 6,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 183.000007453743,
st: 18.000000733155,
bm: 0
}, {
ddd: 0,
ind: 2,
ty: 4,
nm: "Robert",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [291.859, 707.315, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [94.996, 12.931, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.676, .883],
[.042, 2.272],
[0, 0],
[.676, .841],
[2.07, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.675, .841],
[1.987, 0],
[0, 0],
[.633, -.883],
[0, -2.272],
[0, 0],
[-.634, -.883],
[-2.071, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.676, -.841],
[-2.07, 0]
],
o: [
[2.07, 0],
[.676, -.883],
[0, 0],
[0, -2.271],
[-.676, -.883],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, -2.061],
[-.677, -.842],
[0, 0],
[-2.028, 0],
[-.634, .842],
[0, 0],
[0, 2.271],
[.633, .884],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 2.272],
[.676, .883],
[0, 0]
],
v: [
[5.788, 12.681],
[9.886, 11.377],
[10.859, 6.666],
[10.859, 3.175],
[9.886, -1.535],
[5.788, -2.839],
[-5.535, -2.839],
[-5.535, -8.138],
[5.958, -8.138],
[5.958, -5.068],
[10.562, -6.541],
[10.562, -7.087],
[9.549, -11.419],
[5.535, -12.681],
[-5.111, -12.681],
[-9.167, -11.378],
[-10.14, -6.666],
[-10.14, -3.848],
[-9.167, .862],
[-5.111, 2.166],
[6.169, 2.166],
[6.169, 7.802],
[-6.252, 7.802],
[-6.252, 4.648],
[-10.9, 5.951],
[-10.9, 6.666],
[-9.886, 11.377],
[-5.788, 12.681]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [178.841, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.535, -8.054],
[2.535, 12.639],
[-2.62, 12.639],
[-2.62, -8.054],
[-11.196, -8.054],
[-11.196, -12.639],
[11.196, -12.639],
[11.196, -8.054]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [152.816, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 2",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-.253, -.253],
[0, -.715],
[0, 0],
[.254, -.295],
[.507, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[.296, .294],
[0, 0],
[0, .714],
[-.295, .294],
[0, 0],
[0, 0],
[0, 0],
[.507, 0]
],
v: [
[4.098, -7.739],
[4.521, -6.225],
[4.521, -3.154],
[4.14, -1.64],
[2.958, -1.219],
[-6.465, -1.219],
[-6.465, -8.117],
[2.958, -8.117]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.677, .799],
[0, 1.724],
[0, 0],
[.675, .798],
[1.733, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.69, 0],
[.675, -.8],
[0, 0],
[0, -1.683],
[-.677, -.799],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-3.084, 3.154],
[4.478, 12.66],
[4.478, 12.618],
[11.534, 12.618],
[2.873, 3.112],
[4.901, 3.112],
[8.493, 1.935],
[9.506, -1.808],
[9.506, -7.739],
[8.493, -11.482],
[4.901, -12.66],
[-11.534, -12.66],
[-11.534, 12.66],
[-6.465, 12.66],
[-6.465, 3.154]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [129.112, 12.91],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 3",
np: 4,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-10.076, 12.639],
[-10.076, -12.639],
[9.908, -12.639],
[9.908, -8.265],
[-4.923, -8.265],
[-4.923, -2.755],
[3.74, -2.755],
[3.74, 1.662],
[-4.923, 1.662],
[-4.923, 7.802],
[10.076, 7.802],
[10.076, 12.639]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [100.234, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 4",
np: 2,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-.253, -.252],
[0, -.631],
[0, 0],
[.296, -.253],
[.507, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[.296, .294],
[0, 0],
[0, .63],
[-.253, .252],
[0, 0],
[0, 0],
[0, 0],
[.507, 0]
],
v: [
[5.154, -8.118],
[5.619, -6.73],
[5.619, -4.29],
[5.196, -2.944],
[4.014, -2.566],
[-5.535, -2.566],
[-5.535, -8.454],
[4.014, -8.454]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[-.253, -.294],
[0, -.842],
[0, 0],
[0, 0],
[.296, -.295],
[.591, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[.296, .378],
[0, 0],
[0, 0],
[0, .841],
[-.295, .294],
[0, 0],
[0, 0],
[0, 0],
[.591, 0]
],
v: [
[5.324, 2.103],
[5.747, 3.87],
[5.788, 3.87],
[5.788, 5.804],
[5.365, 7.529],
[4.057, 7.991],
[-5.493, 7.991],
[-5.493, 1.682],
[4.057, 1.682]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 2,
ty: "sh",
ix: 3,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.929, .841],
[0, 1.598],
[0, 0],
[2.197, .463],
[0, 2.398],
[0, 0],
[.676, .798],
[1.733, 0],
[0, 0],
[0, 0]
],
o: [
[2.071, 0],
[.93, -.841],
[0, 0],
[0, -2.777],
[2.112, -.42],
[0, 0],
[0, -1.724],
[-.676, -.799],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[4.689, 12.66],
[9.21, 11.398],
[10.605, 7.697],
[10.605, 4.459],
[7.309, -.379],
[10.479, -4.627],
[10.479, -7.697],
[9.464, -11.44],
[5.872, -12.66],
[-10.605, -12.66],
[-10.605, 12.66]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 3",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [71.906, 12.952],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 5",
np: 5,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[6.76, -8.012],
[-6.846, -8.012],
[-6.846, 7.803],
[6.76, 7.803]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[.634, -.84],
[2.07, 0],
[0, 0],
[.633, .842],
[0, 2.272],
[0, 0],
[-.634, .841],
[-2.028, 0],
[0, 0],
[-.634, -.884],
[0, -2.272],
[0, 0]
],
o: [
[-.634, .842],
[0, 0],
[-2.071, 0],
[-.634, -.84],
[0, 0],
[0, -2.272],
[.633, -.884],
[0, 0],
[2.07, 0],
[.634, .883],
[0, 0],
[0, 2.272]
],
v: [
[10.943, 11.377],
[6.887, 12.639],
[-6.887, 12.639],
[-10.943, 11.377],
[-11.915, 6.667],
[-11.915, -6.624],
[-10.943, -11.334],
[-6.887, -12.639],
[6.887, -12.639],
[10.943, -11.334],
[11.915, -6.624],
[11.915, 6.667]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [40.978, 12.93],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 6",
np: 4,
cix: 2,
bm: 0,
ix: 6,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[.295, .295],
[.507, 0],
[0, 0],
[0, 0],
[0, 0],
[-.296, .294],
[0, .714]
],
o: [
[0, -.714],
[-.254, -.253],
[0, 0],
[0, 0],
[0, 0],
[.507, 0],
[.253, -.295],
[0, 0]
],
v: [
[4.521, -6.225],
[4.099, -7.739],
[2.958, -8.117],
[-6.464, -8.117],
[-6.464, -1.219],
[2.958, -1.219],
[4.141, -1.64],
[4.521, -3.154]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.676, -.799],
[0, -1.683],
[0, 0],
[.676, -.8],
[1.69, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.733, 0],
[.676, .799],
[0, 0],
[0, 1.724],
[-.676, .799],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[4.479, 12.66],
[-3.084, 3.154],
[-6.464, 3.154],
[-6.464, 12.66],
[-11.534, 12.66],
[-11.534, -12.66],
[4.901, -12.66],
[8.492, -11.482],
[9.506, -7.739],
[9.506, -1.808],
[8.492, 1.935],
[4.901, 3.113],
[2.873, 3.113],
[11.534, 12.618],
[4.479, 12.618]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [11.784, 12.91],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 7",
np: 4,
cix: 2,
bm: 0,
ix: 7,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 3,
ty: 4,
nm: "Space",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [473.661, 707.314, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [65.632, 12.931, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-10.077, 12.639],
[-10.077, -12.639],
[9.908, -12.639],
[9.908, -8.265],
[-4.923, -8.265],
[-4.923, -2.755],
[3.738, -2.755],
[3.738, 1.662],
[-4.923, 1.662],
[-4.923, 7.802],
[10.077, 7.802],
[10.077, 12.639]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [120.938, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.676, .842],
[.042, 2.314],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.634, .884],
[2.07, 0],
[0, 0],
[.633, -.883],
[0, -2.272],
[0, 0],
[-.634, -.841],
[-2.07, 0]
],
o: [
[2.028, 0],
[.676, -.841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, -2.272],
[-.676, -.883],
[0, 0],
[-2.07, 0],
[-.634, .841],
[0, 0],
[0, 2.271],
[.676, .842],
[0, 0]
],
v: [
[5.598, 12.639],
[9.654, 11.377],
[10.626, 6.624],
[10.626, 3.638],
[5.472, 2.208],
[5.472, 7.802],
[-5.514, 7.802],
[-5.514, -8.013],
[5.472, -8.013],
[5.472, -3.133],
[10.626, -4.227],
[10.626, -6.624],
[9.654, -11.335],
[5.598, -12.639],
[-5.598, -12.639],
[-9.696, -11.335],
[-10.668, -6.624],
[-10.668, 6.667],
[-9.696, 11.377],
[-5.598, 12.639]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [91.995, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 2",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-.253, -6.688],
[-4.014, 2.482],
[3.338, 2.482]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[7.479, 12.66],
[5.239, 7.15],
[-5.873, 7.15],
[-8.07, 12.66],
[-13.225, 12.66],
[-2.536, -12.66],
[2.408, -12.66],
[13.225, 12.66]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [64.259, 12.91],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 3",
np: 4,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-.253, -.253],
[0, -.715],
[0, 0],
[.254, -.294],
[.508, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[.296, .294],
[0, 0],
[0, .715],
[-.253, .294],
[0, 0],
[0, 0],
[0, 0],
[.508, 0]
],
v: [
[5.07, -7.739],
[5.493, -6.225],
[5.493, -3.491],
[5.111, -1.977],
[3.929, -1.556],
[-5.493, -1.556],
[-5.493, -8.117],
[3.929, -8.117]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.676, .798],
[0, 1.724],
[0, 0],
[.677, .798],
[1.731, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[1.689, 0],
[.677, -.8],
[0, 0],
[0, -1.683],
[-.676, -.799],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[5.916, 2.86],
[9.506, 1.683],
[10.52, -2.103],
[10.52, -7.739],
[9.506, -11.482],
[5.916, -12.66],
[-10.52, -12.66],
[-10.52, 12.66],
[-5.45, 12.66],
[-5.45, 2.86]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [40.811, 12.91],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 4",
np: 4,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[.676, -.882],
[2.07, 0],
[0, 0],
[.676, .883],
[0, 2.271],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.676, .884],
[0, 2.271],
[0, 0],
[-.634, .842],
[-2.071, 0],
[0, 0],
[-.677, -.842],
[0, -2.061],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.676, -.883],
[0, -2.272],
[0, 0]
],
o: [
[-.676, .883],
[0, 0],
[-2.071, 0],
[-.676, -.841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-2.071, 0],
[-.676, -.883],
[0, 0],
[0, -2.272],
[.634, -.884],
[0, 0],
[1.986, 0],
[.675, .841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[2.07, 0],
[.676, .841],
[0, 0],
[0, 2.271]
],
v: [
[9.908, 11.377],
[5.81, 12.681],
[-5.767, 12.681],
[-9.866, 11.377],
[-10.879, 6.667],
[-10.879, 5.951],
[-6.232, 4.648],
[-6.232, 7.802],
[6.232, 7.802],
[6.232, 2.166],
[-5.048, 2.166],
[-9.147, .862],
[-10.12, -3.848],
[-10.12, -6.666],
[-9.147, -11.377],
[-5.048, -12.681],
[5.598, -12.681],
[9.612, -11.419],
[10.625, -7.087],
[10.625, -6.54],
[6.021, -5.068],
[6.021, -8.138],
[-5.513, -8.138],
[-5.513, -2.839],
[5.81, -2.839],
[9.908, -1.535],
[10.879, 3.176],
[10.879, 6.667]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [11.129, 12.931],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 5",
np: 2,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 4,
ty: 4,
nm: "Industries",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [685.798, 707.293, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [125.669, 12.952, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[.677, -.882],
[2.069, 0],
[0, 0],
[.676, .883],
[0, 2.271],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.634, .884],
[0, 2.271],
[0, 0],
[-.634, .842],
[-2.028, 0],
[0, 0],
[-.677, -.842],
[0, -2.061],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.676, -.883],
[0, -2.272],
[0, 0]
],
o: [
[-.676, .883],
[0, 0],
[-2.071, 0],
[-.675, -.841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-2.071, 0],
[-.634, -.883],
[0, 0],
[0, -2.272],
[.634, -.884],
[0, 0],
[1.987, 0],
[.675, .841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[2.07, 0],
[.676, .841],
[0, 0],
[.084, 2.271]
],
v: [
[9.866, 11.377],
[5.769, 12.681],
[-5.809, 12.681],
[-9.908, 11.377],
[-10.879, 6.667],
[-10.879, 5.951],
[-6.231, 4.648],
[-6.231, 7.802],
[6.189, 7.802],
[6.189, 2.166],
[-5.09, 2.166],
[-9.147, .862],
[-10.118, -3.848],
[-10.118, -6.666],
[-9.147, -11.377],
[-5.09, -12.681],
[5.556, -12.681],
[9.571, -11.419],
[10.584, -7.087],
[10.584, -6.54],
[5.978, -5.068],
[5.978, -8.138],
[-5.556, -8.138],
[-5.556, -2.839],
[5.725, -2.839],
[9.824, -1.535],
[10.796, 3.176],
[10.796, 6.667]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [240.209, 12.973],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-10.077, -12.639],
[-10.077, 12.639],
[10.077, 12.639],
[10.077, 7.802],
[-4.923, 7.802],
[-4.923, 1.662],
[3.739, 1.662],
[3.739, -2.755],
[-4.923, -2.755],
[-4.923, -8.265],
[9.908, -8.265],
[9.908, -12.639]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [212.536, 12.973],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 2",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.577, -12.66],
[-2.577, -12.66],
[-2.577, 12.66],
[2.577, 12.66]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [191.094, 12.994],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 3",
np: 2,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-.254, -.253],
[0, -.715],
[0, 0],
[.253, -.295],
[.507, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[.295, .294],
[0, 0],
[0, .714],
[-.253, .294],
[0, 0],
[0, 0],
[0, 0],
[.507, 0]
],
v: [
[4.141, -7.739],
[4.562, -6.225],
[4.562, -3.154],
[4.182, -1.64],
[3, -1.219],
[-6.422, -1.219],
[-6.422, -8.117],
[3, -8.117]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.675, .799],
[0, 1.724],
[0, 0],
[.676, .798],
[1.731, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.689, 0],
[.676, -.8],
[0, 0],
[0, -1.683],
[-.675, -.799],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-3.084, 3.154],
[4.479, 12.66],
[4.479, 12.618],
[11.534, 12.618],
[2.872, 3.112],
[4.901, 3.112],
[8.492, 1.935],
[9.507, -1.808],
[9.507, -7.739],
[8.492, -11.482],
[4.901, -12.66],
[-11.534, -12.66],
[-11.534, 12.66],
[-6.464, 12.66],
[-6.464, 3.154]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [170.898, 12.953],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 4",
np: 4,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.535, -8.054],
[2.535, 12.639],
[-2.619, 12.639],
[-2.619, -8.054],
[-11.196, -8.054],
[-11.196, -12.639],
[11.196, -12.639],
[11.196, -8.054]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [143.647, 12.973],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 5",
np: 2,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-.676, .883],
[.041, 2.272],
[0, 0],
[.676, .841],
[2.07, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.676, .841],
[1.986, 0],
[0, 0],
[.633, -.883],
[0, -2.272],
[0, 0],
[-.634, -.883],
[-2.071, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.676, -.841],
[-2.07, 0]
],
o: [
[2.07, 0],
[.676, -.883],
[0, 0],
[0, -2.271],
[-.677, -.883],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, -2.061],
[-.676, -.842],
[0, 0],
[-2.028, 0],
[-.634, .842],
[0, 0],
[0, 2.271],
[.633, .884],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 2.272],
[.676, .883],
[0, 0]
],
v: [
[5.81, 12.681],
[9.908, 11.377],
[10.838, 6.666],
[10.838, 3.175],
[9.866, -1.535],
[5.768, -2.839],
[-5.556, -2.839],
[-5.556, -8.138],
[5.979, -8.138],
[5.979, -5.068],
[10.584, -6.541],
[10.584, -7.087],
[9.57, -11.419],
[5.556, -12.681],
[-5.09, -12.681],
[-9.146, -11.378],
[-10.118, -6.666],
[-10.118, -3.848],
[-9.146, .862],
[-5.09, 2.166],
[6.19, 2.166],
[6.19, 7.802],
[-6.231, 7.802],
[-6.231, 4.648],
[-10.879, 5.951],
[-10.879, 6.666],
[-9.865, 11.377],
[-5.767, 12.681]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [117.557, 12.974],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 6",
np: 2,
cix: 2,
bm: 0,
ix: 6,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[.633, -.841],
[2.071, 0],
[0, 0],
[.677, .842],
[0, 2.271],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-.634, .842],
[0, 0],
[-2.069, 0],
[-.675, -.841],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.043, 2.271]
],
v: [
[9.95, 11.377],
[5.893, 12.639],
[-5.937, 12.639],
[-9.993, 11.377],
[-10.964, 6.667],
[-10.964, -12.639],
[-5.809, -12.639],
[-5.809, 7.802],
[5.852, 7.802],
[5.852, -12.639],
[10.964, -12.639],
[10.964, 6.667]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [87.561, 12.973],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 7",
np: 2,
cix: 2,
bm: 0,
ix: 7,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-1.015, -1.303],
[0, -2.566],
[1.226, -1.22],
[2.746, 0],
[0, 0],
[0, 0]
],
o: [
[1.775, 0],
[1.056, 1.305],
[0, 2.902],
[-1.224, 1.219],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[.697, -8.075],
[4.923, -6.099],
[6.486, -.294],
[4.626, 5.889],
[-1.372, 7.74],
[-6.613, 7.74],
[-6.613, -8.075]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[-1.605, 1.346],
[0, 4.921],
[1.859, 2.187],
[3.677, 0],
[0, 0],
[0, 0]
],
o: [
[3.76, 0],
[2.746, -2.313],
[0, -3.954],
[-1.859, -2.187],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-.444, 12.66],
[7.626, 10.642],
[11.767, -.168],
[8.978, -9.379],
[.697, -12.66],
[-11.767, -12.66],
[-11.767, 12.66]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Fusionner les trac\xe9s 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [57.563, 12.994],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 8",
np: 4,
cix: 2,
bm: 0,
ix: 8,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-2.577, -12.66],
[2.577, -12.66],
[2.577, 12.66],
[-2.577, 12.66]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [2.827, 12.994],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 9",
np: 2,
cix: 2,
bm: 0,
ix: 9,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[.148, .197],
[0, -.8],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.224, -.267],
[-.09, -.105],
[0, 0],
[.015, .469],
[0, .274],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.039, .047],
[.04, .05]
],
o: [
[.085, 1.051],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[.354, .406],
[.125, .147],
[0, 0],
[-.017, -.655],
[-.021, -.674],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-.028, -.037],
[-.033, -.043],
[-.123, -.151]
],
v: [
[-6.76, -3.765],
[-6.675, -.988],
[-6.675, 12.682],
[-11.408, 12.682],
[-11.408, -12.639],
[-7.69, -12.639],
[5.535, 2.251],
[6.396, 3.259],
[6.718, 3.638],
[6.802, 3.722],
[6.753, 2.035],
[6.718, .609],
[6.718, -12.682],
[11.408, -12.682],
[11.408, 12.639],
[7.689, 12.639],
[-6.126, -2.965],
[-6.226, -3.092],
[-6.337, -3.231]
],
c: !0
},
ix: 2
},
nm: "Trac\xe9 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fond 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [25.558, 12.932],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Groupe 10",
np: 2,
cix: 2,
bm: 0,
ix: 10,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}, {
ddd: 0,
ind: 5,
ty: 4,
nm: "RSI",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [539.017, 513.502, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [346.489, 153.749, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [100, 100, 100],
ix: 6,
l: 2
}
},
ao: 0,
shapes: [{
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.62, -153.308],
[2.661, -153.477],
[75.755, -153.308],
[-1.859, 153.477],
[-75.755, 153.477],
[2.325, -153.308]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [616.974, 153.727],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 1",
np: 2,
cix: 2,
bm: 0,
ix: 1,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[-3.021, 35.54],
[14.978, -35.54],
[3.104, -35.54],
[-14.977, 35.54]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [591.645, 35.96],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 2",
np: 2,
cix: 2,
bm: 0,
ix: 2,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[14.978, -35.54],
[-2.978, 35.54],
[-14.977, 35.54],
[3.191, -35.54]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [567.519, 35.959],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 3",
np: 2,
cix: 2,
bm: 0,
ix: 3,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[15.505, -35.583],
[15.211, -35.583],
[15.253, -35.751],
[2.578, -35.751],
[2.534, -35.583],
[-15.464, 35.498],
[-15.505, 35.751],
[-2.831, 35.751],
[-2.789, 35.498]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [542.782, 36.002],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 4",
np: 2,
cix: 2,
bm: 0,
ix: 4,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[-6.591, -4.164],
[0, 0],
[3.253, -13.754],
[0, 0],
[14.787, 0],
[0, 0],
[0, 0],
[0, 0],
[-1.225, 4.164],
[6.549, 4.585],
[0, 0],
[-3.295, 13.711],
[0, 0],
[-14.365, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.648, -6.645]
],
o: [
[0, 0],
[11.914, 7.907],
[0, 0],
[-3.252, 13.712],
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[1.648, -5.426],
[0, 0],
[-11.915, -7.907],
[0, 0],
[3.295, -13.712],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-6.548, 0],
[-1.647, 6.687]
],
v: [
[-23.999, -57.306],
[93.414, 21.261],
[108.624, 61.219],
[91.808, 128.136],
[58.98, 153.499],
[-88.853, 153.499],
[-70.769, 81.996],
[18.336, 81.996],
[31.053, 73.248],
[24.884, 59.115],
[-93.373, -20.715],
[-108.583, -60.629],
[-91.768, -127.967],
[-59.742, -153.329],
[109.891, -153.499],
[109.85, -153.329],
[91.766, -82.249],
[91.724, -81.996],
[91.64, -81.996],
[-18.253, -82.249],
[-31.393, -73.121]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [423.595, 153.749],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 5",
np: 2,
cix: 2,
bm: 0,
ix: 5,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.683, -35.751],
[-15.4, 35.751],
[-2.683, 35.751],
[15.4, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [324.455, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 6",
np: 2,
cix: 2,
bm: 0,
ix: 6,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[2.915, -35.751],
[-15.168, 35.751],
[-3.042, 35.751],
[15.168, -35.751]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [300.141, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 7",
np: 2,
cix: 2,
bm: 0,
ix: 7,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[3.042, -35.751],
[15.421, -35.751],
[-2.83, 35.751],
[-15.421, 35.751],
[3, -35.625]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [1, .627450980392, 0, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [275.805, 271.453],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 8",
np: 2,
cix: 2,
bm: 0,
ix: 8,
mn: "ADBE Vector Group",
hd: !1
}, {
ty: "gr",
it: [{
ind: 0,
ty: "sh",
ix: 1,
ks: {
a: 0,
k: {
i: [
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[1.606, -5.426],
[8.239, -4.122]
],
o: [
[0, 0],
[0, 0],
[0, 0],
[6.548, 0],
[-1.225, 4.164],
[0, 0]
],
v: [
[-43.749, -10.347],
[-43.2, -12.576],
[-25.709, -82.269],
[58.876, -82.269],
[68.339, -74.362],
[56.003, -61.071]
],
c: !0
},
ix: 2
},
nm: "Path 1",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ind: 1,
ty: "sh",
ix: 2,
ks: {
a: 0,
k: {
i: [
[0, 0],
[1.225, 4.585],
[0, 0],
[0, 0],
[-4.099, 16.656],
[0, 0],
[19.307, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[-14.366, 0],
[0, 0],
[0, 0],
[0, 0]
],
o: [
[-4.943, 0],
[0, 0],
[0, 0],
[13.562, -6.645],
[0, 0],
[4.943, -18.717],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[0, 0],
[3.295, 13.711],
[0, 0],
[0, 0],
[0, 0],
[0, 0]
],
v: [
[71.593, 81.933],
[60.904, 73.605],
[48.609, 20.82],
[104.885, -7.445],
[134.038, -44.458],
[153.346, -119.282],
[127.067, -153.393],
[-81.098, -153.393],
[-158.29, 153.393],
[-85.197, 153.393],
[-66.312, 78.989],
[-17.048, 54.047],
[.613, 128.031],
[32.217, 153.393],
[90.521, 153.393],
[108.562, 81.891],
[71.593, 81.891]
],
c: !0
},
ix: 2
},
nm: "Path 2",
mn: "ADBE Vector Shape - Group",
hd: !1
}, {
ty: "mm",
mm: 1,
nm: "Merge Paths 1",
mn: "ADBE Vector Filter - Merge",
hd: !1
}, {
ty: "fl",
c: {
a: 0,
k: [.737254901961, .745098039216, .752941176471, 1],
ix: 4
},
o: {
a: 0,
k: 100,
ix: 5
},
r: 1,
bm: 0,
nm: "Fill 1",
mn: "ADBE Vector Graphic - Fill",
hd: !1
}, {
ty: "tr",
p: {
a: 0,
k: [158.539, 153.77],
ix: 2
},
a: {
a: 0,
k: [0, 0],
ix: 1
},
s: {
a: 0,
k: [100, 100],
ix: 3
},
r: {
a: 0,
k: 0,
ix: 6
},
o: {
a: 0,
k: 100,
ix: 7
},
sk: {
a: 0,
k: 0,
ix: 4
},
sa: {
a: 0,
k: 0,
ix: 5
},
nm: "Transform"
}],
nm: "Group 9",
np: 4,
cix: 2,
bm: 0,
ix: 9,
mn: "ADBE Vector Group",
hd: !1
}],
ip: 0,
op: 180.00000733155,
st: 0,
bm: 0
}]
}],
layers: [{
ddd: 0,
ind: 1,
ty: 0,
nm: "RSI Loader V4",
refId: "comp_0",
sr: 1,
ks: {
o: {
a: 0,
k: 100,
ix: 11
},
r: {
a: 0,
k: 0,
ix: 10
},
p: {
a: 0,
k: [168, 102.5, 0],
ix: 2,
l: 2
},
a: {
a: 0,
k: [540, 540, 0],
ix: 1,
l: 2
},
s: {
a: 0,
k: [39, 39, 100],
ix: 6,
l: 2
}
},
ao: 0,
w: 1080,
h: 1080,
ip: 0,
op: 120.0000048877,
st: 0,
bm: 0
}],
markers: []
};
let Hm = ms((({
as: e = "div",
children: t,
handleAnimWipeTrigger: n,
className: r,
...i
}, a) => {
let o = fs("sol-c-loading", r);
n?.();
let s = zs(qm, {
loop: !1,
forcePlay: !0
});
return qo.jsxs(cl, {
align: "center",
className: o,
gap: "150",
justify: "center",
vertical: !0,
ref: a,
...i,
children: [qo.jsx(s, {
className: "sol-c-loading__animation"
}), t && qo.jsx(Ys, {
align: "center",
className: "sol-c-loading__text",
variant: "body-l",
children: t
})]
})
}));
No("@layer components{.sol-c-menu{background:var(--sol-color-surface-2);border-radius:var(--sol-radius-4);box-shadow:var(--sol-shadow-100);color:var(--sol-color-foreground);display:flex;flex-direction:column;gap:var(--sol-size-025);inline-size:max-content;overflow:auto;padding:var(--sol-size-050)}.sol-c-menu :disabled:focus,.sol-c-menu :disabled:focus-visible,.sol-c-menu [aria-disabled=true]:focus,.sol-c-menu [aria-disabled=true]:focus-visible,.sol-c-menu:focus,.sol-c-menu:focus-visible{outline:none}.sol-c-menu,[data-sol-menu-overlay]{z-index:var(--sol-z-menu)}.sol-c-menu__title{max-inline-size:25rem;padding:var(--sol-size-075);word-break:break-all}}");
let Km = {
none: 0,
small: 8,
medium: 12,
large: 16
},
Ym = (0, Ee.createContext)(null),
Qm = () => {
let e = (0, Ee.useContext)(Ym);
if (!e) throw Error("Menu components must be wrapped in <Menu />");
return e
},
Zm = (0, Ee.forwardRef)((({
className: e,
close: t = !0,
disabled: n,
label: r,
onClick: i,
...a
}, o) => {
let {
ref: s,
index: l
} = _u({
label: n ? null : r
}), {
getItemProps: c,
activeIndex: u,
setIsOpen: d
} = Qm(), p = fs("sol-c-menu__item", e), h = (0, Ee.useCallback)((e => {
t && d(!1), i && i(e)
}), [t, i, d]);
return qo.jsx(el, {
align: "start",
className: p,
disabled: n,
fullWidth: !0,
ref: tu([s, o]),
role: "menuitem",
tabIndex: n || l !== u ? -1 : 0,
variant: "plain",
...a,
...c({
onClick: h
}),
children: r
})
})),
Xm = ms((({
className: e,
close: t = !1,
onClick: n,
subtitle: r,
title: i,
...a
}, o) => {
let s = fs("sol-c-menu__title", e),
{
setIsOpen: l
} = Qm(),
c = (0, Ee.useCallback)((e => {
t && l(!1), n && n(e)
}), [t, n, l]);
return qo.jsxs(cl, {
"aria-disabled": "true",
className: s,
onClick: c,
ref: o,
vertical: !0,
...a,
children: [qo.jsx(Ys, {
offset: !0,
variant: "emphasis-m",
truncate: 1,
children: i
}), r && qo.jsx(Ys, {
color: "foreground-weak",
variant: "body-xs",
children: r
})]
})
})),
Jm = (0, Ee.forwardRef)((({
anchor: e,
children: t,
className: n,
offset: r = "small",
overlay: i = !1,
placement: a = "bottom-start",
loop: o = !0,
style: s,
trigger: l,
...c
}, u) => {
let d = (({
anchor: e,
loop: t,
offset: n = "small",
placement: r
} = {}) => {
let [i, a] = (0, Ee.useState)(null), [o, s] = (0, Ee.useState)(!1), l = (0, Ee.useRef)([]), c = (0, Ee.useRef)([]), u = pd({
open: o,
onOpenChange: s,
placement: r,
whileElementsMounted: Dc,
middleware: [ic({
mainAxis: Km[n],
alignmentAxis: 0
}), oc({
apply({
availableWidth: e,
availableHeight: t,
elements: n,
rects: r
}) {
Object.assign(n.floating.style, {
maxInlineSize: `${e}px`,
maxBlockSize: `${t}px`
})
},
padding: Km[n]
})],
transform: !1
}), {
context: d,
refs: {
setPositionReference: p
}
} = u;
(0, Ee.useEffect)((() => {
e && p(e)
}), [e, p]);
let h = fd([sd(d), dd(d), bd(d, {
activeIndex: i,
listRef: l,
loop: t,
onNavigate: a
}), wd(d, {
activeIndex: i,
enabled: o,
listRef: c,
onMatch: a
}), xd(d, {
role: "menu"
})]),
f = kd(d);
return (0, Ee.useMemo)((() => ({
isOpen: o,
setIsOpen: s,
elementsRef: l,
labelsRef: c,
activeIndex: i,
...u,
...h,
...f
})), [o, s, i, u, h, f])
})({
anchor: e,
loop: o,
offset: r,
placement: a
}),
{
floatingStyles: p,
refs: h,
context: f,
placement: m,
getReferenceProps: g,
getFloatingProps: v,
isOpen: y,
isMounted: _,
status: b,
elementsRef: x,
labelsRef: k
} = d,
w = tu([h.setReference, l.ref, u]),
{
name: S
} = Ws(),
E = fs("sol-c-menu sol-u-transition-floating", n);
return qo.jsx(yu, {
elementsRef: x,
labelsRef: k,
children: qo.jsxs(Ym.Provider, {
value: d,
children: [(0, Ee.cloneElement)("function" == typeof l ? l({
isOpen: y
}) : l, g({
ref: w
})), _ && qo.jsx(ed, {
children: qo.jsx(zd, {
condition: i,
wrap: e => qo.jsx(ad, {
"data-sol-menu-overlay": !0,
children: e
}),
children: qo.jsx(rd, {
context: f,
visuallyHiddenDismiss: !0,
initialFocus: -1,
modal: !1,
children: qo.jsx("div", {
className: E,
"data-sol-placement": m,
"data-sol-status": b,
"data-sol-theme": S,
ref: h.setFloating,
style: {
...p,
...s
},
...v(c),
children: t
})
})
})
})]
})
})
}));
No("@layer components{.sol-c-popover{background:var(--sol-color-surface-2);border-radius:var(--sol-radius-4);box-shadow:var(--sol-shadow-100);display:flex;flex-direction:column;gap:var(--sol-size-100);inline-size:max-content;max-inline-size:36rem;min-inline-size:26.25rem;overflow:auto;padding:var(--sol-size-125)}.sol-c-popover:focus,.sol-c-popover:focus-visible{outline:none}.sol-c-popover,[data-sol-popover-overlay]{z-index:var(--sol-z-popover)}.sol-c-popover--full-width{inline-size:100%}.sol-c-popover__title{flex:1}.sol-c-popover__footer{border-block-start:var(--sol-border-1) solid var(--sol-color-surface-3);padding-block-start:var(--sol-size-100)}}");
let eg = {
none: 0,
small: 8,
medium: 12,
large: 16
},
tg = (0, Ee.createContext)(null),
ng = () => {
let e = (0, Ee.useContext)(tg);
if (!e) throw Error("Popover components must be wrapped in <Popover />");
return e
},
rg = (ms((({
as: e = "p",
id: t,
onClick: n,
...r
}, i) => {
let {
setDescriptionId: a
} = ng(), o = ws(t);
return Cs((() => (a(o), () => a(void 0))), [o, a]), qo.jsx(e, {
id: o,
ref: i,
...r
})
})), ms((({
as: e = "p",
id: t,
onClick: n,
...r
}, i) => {
let {
setLabelId: a
} = ng(), o = ws(t);
return Cs((() => (a(o), () => a(void 0))), [o, a]), qo.jsx(e, {
id: o,
ref: i,
...r
})
}))),
ig = (0, Ee.forwardRef)((({
anchor: e,
children: t,
className: n,
close: r,
defaultOpen: i,
footer: a,
fullWidth: o,
modal: s = !0,
offset: l = "small",
open: c,
onOpenChange: u,
overlay: d = !1,
placement: p = "bottom-start",
style: h,
title: f,
trigger: m,
...g
}, v) => {
let y = (({
anchor: e,
defaultOpen: t,
offset: n = "small",
open: r,
onOpenChange: i,
placement: a
} = {}) => {
let [o, s] = (0, Ee.useState)(t), [l, c] = (0, Ee.useState)(), [u, d] = (0, Ee.useState)(), p = r ?? o, h = i ?? s, f = Tu(), m = pd({
open: p,
onOpenChange: h,
nodeId: f,
placement: a,
whileElementsMounted: Dc,
middleware: [ic({
mainAxis: eg[n],
alignmentAxis: 0
}), ac({
padding: eg[n]
}), oc({
apply({
availableHeight: e,
elements: t
}) {
Object.assign(t.floating.style, {
maxBlockSize: `${e}px`
})
},
padding: eg[n]
})],
transform: !1
}), {
context: g,
refs: {
setPositionReference: v
}
} = m;
(0, Ee.useEffect)((() => {
e && v(e)
}), [e, v]);
let y = fd([sd(g), dd(g, {
bubbles: !1,
outsidePress: e => !e.target.closest("[data-sol-popover-ignore]")
}), xd(g)]),
_ = kd(g);
return (0, Ee.useMemo)((() => ({
isOpen: p,
setIsOpen: h,
labelId: l,
setLabelId: c,
descriptionId: u,
setDescriptionId: d,
nodeId: f,
...m,
...y,
..._
})), [p, h, l, u, f, m, y, _])
})({
anchor: e,
defaultOpen: i,
offset: l,
open: c,
onOpenChange: u,
placement: p
}),
{
floatingStyles: _,
refs: b,
context: x,
placement: k,
getReferenceProps: w,
getFloatingProps: S,
isMounted: E,
isOpen: I,
setIsOpen: O,
status: C,
labelId: A,
descriptionId: P,
nodeId: T
} = y,
R = tu([b.setReference, (m ?? t).ref, v]),
{
name: D
} = Ws(),
L = fs("sol-c-popover sol-u-transition-floating", o && "sol-c-popover--full-width", n);
return qo.jsx(tg.Provider, {
value: y,
children: qo.jsxs(Ru, {
id: T,
children: [(0, Ee.cloneElement)("function" == typeof m ? m({
isOpen: I
}) : m, w({
ref: R
})), E && qo.jsx(ed, {
children: qo.jsx(zd, {
condition: d,
wrap: e => qo.jsx(ad, {
"data-sol-popover-overlay": !0,
children: e
}),
children: qo.jsx(rd, {
context: x,
modal: s,
children: qo.jsxs("div", {
"aria-labelledby": A,
"aria-describedby": P,
className: L,
"data-sol-placement": k,
"data-sol-status": C,
"data-sol-theme": D,
ref: b.setFloating,
style: {
..._,
...h
},
...S(g),
children: [(r || f) && qo.jsxs(cl, {
align: "start",
className: "sol-c-popover__header",
gap: "050",
justify: "end",
children: [f && qo.jsx(Ys, {
as: rg,
className: "sol-c-popover__title",
color: "foreground",
offset: !0,
variant: "emphasis-m",
children: f
}), r && qo.jsx(el, {
"aria-label": "string" == typeof r ? r : "Close",
className: "sol-c-popover__close",
icon: Jo,
onClick: () => O(!1),
size: "small",
variant: "monochrome"
})]
}), qo.jsx(Ys, {
className: "sol-c-popover__content",
color: "foreground-weak",
variant: "body-s",
multiline: !0,
children: t
}), a && qo.jsx(cl, {
align: "center",
className: "sol-c-popover__footer",
gap: "100",
justify: "space-between",
children: a
})]
})
})
})
})]
})
})
})),
ag = (0, Ee.forwardRef)(((e, t) => null == Au() ? qo.jsx(Du, {
children: qo.jsx(ig, {
ref: t,
...e
})
}) : qo.jsx(ig, {
ref: t,
...e
})));
No("@layer components{.sol-c-rsi-logo{--_size:var(--sol-c-rsi-logo-size,var(--sol-size-100));fill:currentColor;block-size:var(--_size);display:inline-block;flex-shrink:0}}");
let og = ({
className: e,
...t
}) => {
let n = fs("sol-c-rsi-logo", e);
return qo.jsxs("svg", {
className: n,
xmlns: "http://www.w3.org/2000/svg",
height: "16",
fill: "currentColor",
viewBox: "0 0 216 80",
...t,
children: [qo.jsx("path", {
d: "M80.53 0c5.2 0 8.5 3.67 7.57 8.26l-.16.63L82.5 28.4a15.11 15.11 0 0 1-7.42 9.25l-.8.4-15.88 7.37 3.47 13.77a3.2 3.2 0 0 0 2.56 2.13l.46.03H75.3L70.21 80H53.77c-3.81 0-7.53-2.69-8.72-5.99l-.2-.62-4.98-19.3-13.9 6.5L20.62 80H0L21.78 0h58.75Zm69.93 0-.01.04-5.1 18.53-.02.07h-.02l-30.95-.07c-1.85 0-3.24.65-3.7 2.38-.41 1.54.09 2.74 1.5 3.75l.58.37 33.07 20.48c3.15 1.93 4.97 6.24 4.42 9.71l-.14.69-4.74 17.44c-.87 3.37-4.61 6.25-8.52 6.58l-.73.03H94.46l5.1-18.64h25.09c1.85 0 3.24-1.19 3.58-2.27.42-1.27.18-2.27-1.22-3.33l-.5-.35L93.2 34.6c-3.15-1.94-4.97-6.25-4.43-9.72l.15-.69 4.74-17.55c.87-3.36 4.5-6.25 8.3-6.58l.72-.03L150.43 0h.03Zm24.29 0 20.68.04L173.47 80h-20.91L174.66.04h.08l.01-.04ZM88.68 61.48 83.64 80h-3.37l5.01-18.52h3.4Zm-6.73 0L76.73 80h-3.6l5.27-18.49.01-.03h3.54Zm13.87 0L90.64 80H87l5.19-18.52h3.63ZM61.14 18.52H37.43l-5.07 18.92L60.33 24.1c2.3-1.1 3.11-2.4 3.46-3.5.46-1.42-.8-2.08-2.65-2.08ZM171.05 0 166 18.52h-3.35L167.73 0h3.32Zm-7.14 0-5.04 18.52h-3.37L160.6 0h3.3Zm-6.8 0-.02.04h.1l-5.21 18.42-.02.06h-3.6l.01-.06L153.5.04V0h3.61Z"
}), qo.jsx("path", {
d: "M200.57 7.74C200.57 2.42 203 0 208.3 0s7.7 2.43 7.7 7.74c0 5.31-2.41 7.74-7.71 7.74s-7.72-2.43-7.72-7.74Zm14.27 0c0-4.54-2.06-6.6-6.57-6.6-4.5 0-6.56 2.05-6.56 6.6 0 4.53 2.05 6.58 6.56 6.58 4.52 0 6.56-2.05 6.56-6.58Zm-3.45-1.32c0 1.52-.4 2.14-1.56 2.36l1.74 2.78c.09.08.05.17-.08.17h-1.44c-.18 0-.25-.04-.32-.18l-1.7-2.65h-.87v2.67c0 .13-.01.14-.12.14h-1.4c-.13 0-.14-.02-.14-.14V4.03c0-.08.03-.12.12-.12.93-.08 1.92-.1 2.8-.1 2.21 0 2.97.6 2.97 2.61Zm-4.23-1.17v2.4h1.08c1.11 0 1.45-.2 1.45-1.17 0-1-.34-1.23-1.45-1.23h-1.08Z"
})]
})
};
No("@layer components{.sol-c-select{cursor:var(--sol-cursor-interactive)}}");
let sg = (0, Ee.forwardRef)((({
children: e,
description: t,
label: n,
...r
}, i) => qo.jsx(Wm, {
label: n,
ref: i,
...r,
children: t ? qo.jsxs(cl, {
as: "span",
vertical: !0,
children: [qo.jsx(Ys, {
as: "span",
color: "foreground",
variant: "label-m",
truncate: !0,
children: e ?? n
}), t && qo.jsx(Ys, {
as: "span",
color: "foreground-weak",
variant: "body-xs",
truncate: !0,
children: t
})]
}) : e ?? n
}))),
lg = (0, Ee.forwardRef)((({
allowEmpty: e,
children: t,
className: n,
defaultValue: r,
empty: i,
listboxProps: a,
name: o,
onChange: s,
onValueChange: l,
value: c,
wrapperProps: u,
...d
}, p) => {
let h = fs("sol-c-select", n),
[f, m] = (0, Ee.useState)(null);
return qo.jsx($m, {
trigger: ({
isOpen: e
}) => qo.jsx(Fm, {
as: "button",
className: h,
type: "button",
endIcon: e ? ts : ns,
wrapperProps: vs({
ref: m
}, u),
...d
}),
...vs({
anchor: f,
allowEmpty: e,
defaultValue: r,
empty: i,
name: o,
onChange: s,
onValueChange: l,
ref: p,
value: c
}, a),
children: t
})
}));
No('@layer components{.sol-c-settings{border-block-start:var(--sol-border-1) solid var(--sol-color-surface-3);display:flex;flex:1;overflow:hidden}.sol-c-settings__navigation{background:var(--sol-color-surface-1);display:flex;flex:1 0 auto;flex-direction:column;gap:var(--sol-size-100);inline-size:25%;max-inline-size:25rem;min-inline-size:17.5rem;overflow:auto;padding:var(--sol-size-250);padding-inline:clamp(var(--sol-size-200),2.5vw,var(--sol-size-250))}.sol-c-settings__header{align-items:center;display:flex;gap:var(--sol-size-100);margin-block-end:var(--sol-size-300)}.sol-c-settings__header:has(.sol-c-settings__back):has(.sol-c-settings__label):before{background:var(--sol-color-surface-3);block-size:var(--sol-size-300);content:"";inline-size:var(--sol-border-1)}.sol-c-settings__back{order:-1}.sol-c-settings__label{padding-inline-start:var(--sol-size-075)}.sol-c-settings__content{flex:1;overflow:auto;padding:var(--sol-size-250)}@supports (scrollbar-gutter:stable) and (selector(::-webkit-scrollbar)){.sol-c-settings__content{padding-inline-end:calc(var(--sol-size-250) - var(--sol-scrollbar-width));scrollbar-gutter:stable}}.sol-c-settings__title{margin-block-end:var(--sol-size-300)}@container style(--sol-motion-transition-effects: enabled){.sol-c-settings__back,.sol-c-settings__content>*,.sol-c-settings__header,.sol-c-settings__item,.sol-c-settings__navigation,.sol-c-settings__navigation>*{animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;animation-delay:calc(var(--sol-motion-anim-wipe-duration)/2);opacity:0}.sol-c-settings__back,.sol-c-settings__navigation,.sol-c-settings__navigation>*{transform:translateX(calc(var(--sol-size-125)*-1))}.sol-c-settings__back{animation-delay:calc(.1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item{opacity:0}.sol-c-settings__item:first-child{animation-delay:calc(.1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(2){animation-delay:calc(.2s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(3){animation-delay:calc(.3s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(4){animation-delay:calc(.4s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(5){animation-delay:calc(.5s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(6){animation-delay:calc(.6s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(7){animation-delay:calc(.7s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(8){animation-delay:calc(.8s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(9){animation-delay:calc(.9s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__item:nth-child(10){animation-delay:calc(1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__content>*{animation:sol-motion-fade-in var(--sol-motion-350) var(--sol-motion-ease-out) forwards;opacity:0;transform:translateY(var(--sol-size-075))}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:first-child{animation-delay:calc(.4s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(2){animation-delay:calc(.5s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(3){animation-delay:calc(.6s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(4){animation-delay:calc(.7s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(5){animation-delay:calc(.8s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(6){animation-delay:calc(.9s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(7){animation-delay:calc(1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(8){animation-delay:calc(1.1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(9){animation-delay:calc(1.2s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__content>:nth-child(10){animation-delay:calc(1.3s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:first-child{animation-delay:calc(.2s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(2){animation-delay:calc(.3s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(3){animation-delay:calc(.4s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(4){animation-delay:calc(.5s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(5){animation-delay:calc(.6s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(6){animation-delay:calc(.7s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(7){animation-delay:calc(.8s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(8){animation-delay:calc(.9s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(9){animation-delay:calc(1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings[data-animation-fade=true] .sol-c-settings__navigation>:nth-child(10){animation-delay:calc(1.1s + var(--sol-motion-anim-wipe-duration)/2)}.sol-c-settings__content>:first-child,.sol-c-settings__navigation>:first-child{animation-delay:.1s}.sol-c-settings__content>:nth-child(2),.sol-c-settings__navigation>:nth-child(2){animation-delay:.2s}.sol-c-settings__content>:nth-child(3),.sol-c-settings__navigation>:nth-child(3){animation-delay:.3s}.sol-c-settings__content>:nth-child(4),.sol-c-settings__navigation>:nth-child(4){animation-delay:.4s}.sol-c-settings__content>:nth-child(5),.sol-c-settings__navigation>:nth-child(5){animation-delay:.5s}.sol-c-settings__content>:nth-child(6),.sol-c-settings__navigation>:nth-child(6){animation-delay:.6s}.sol-c-settings__content>:nth-child(7),.sol-c-settings__navigation>:nth-child(7){animation-delay:.7s}.sol-c-settings__content>:nth-child(8),.sol-c-settings__navigation>:nth-child(8){animation-delay:.8s}.sol-c-settings__content>:nth-child(9),.sol-c-settings__navigation>:nth-child(9){animation-delay:.9s}.sol-c-settings__content>:nth-child(10),.sol-c-settings__navigation>:nth-child(10){animation-delay:1s}}}');
let cg = (0, Ee.forwardRef)((({
children: e,
className: t,
title: n,
...r
}, i) => {
let a = fs("sol-c-settings__content", t);
return qo.jsxs("div", {
className: a,
ref: i,
...r,
children: [n && qo.jsx(Ys, {
as: "h1",
className: "sol-c-settings__title",
variant: "heading-m",
children: n
}), e]
})
})),
ug = (0, Ee.forwardRef)((({
back: e,
children: t,
className: n,
title: r,
backCallback: i,
...a
}, o) => {
let s = fs("sol-c-settings__navigation", n);
return qo.jsxs("div", {
className: s,
ref: o,
...a,
children: [(e || r) && qo.jsxs("div", {
className: "sol-c-settings__header",
children: [e && qo.jsx(el, {
"aria-label": e.label,
className: "sol-c-settings__back",
icon: Xo,
size: "large",
variant: "monochrome",
onClick: e => {
e.preventDefault(), i?.()
},
...e
}), r && qo.jsx(Ys, {
className: "sol-c-settings__label",
offset: !0,
variant: "heading-s",
children: r
})]
}), t]
})
})),
dg = (0, Ee.forwardRef)((({
children: e,
className: t,
active: n,
...r
}, i) => {
let a = fs("sol-c-settings__item", t);
return qo.jsx(el, {
"aria-current": n ? "true" : void 0,
className: a,
fullWidth: !0,
align: "start",
ref: i,
selected: n,
size: "medium",
variant: "plain",
...r,
children: e
})
})),
pg = ms((({
as: e = "div",
children: t,
className: n,
...r
}, i) => {
let a = fs("sol-c-settings", n),
[o, s] = (0, Ee.useState)(!0);
return (0, Ee.useEffect)((() => {
let e = setTimeout((() => s(!1)), 2e3);
return () => clearTimeout(e)
}), []), qo.jsx(e, {
className: a,
"data-animation-fade": o,
ref: i,
...r,
children: t
})
}));
No('@layer components{.sol-c-sign-in{background-color:var(--sol-color-surface-1);display:flex;flex:1;overflow:hidden}.sol-c-sign-in:before{background-color:var(--sol-color-surface-3);content:"";display:block;height:var(--sol-border-1);left:0;position:absolute;top:0;width:100%;z-index:1}.sol-c-sign-in__logo{box-sizing:initial;padding-left:var(--sol-size-500);padding-right:var(--sol-size-400)}}.sol-c-sign-in__content-wrapper{flex:1;position:relative}.sol-c-sign-in__content-wrapper:before{background-color:var(--sol-color-surface-3);content:"";display:block;height:100%;left:0;position:absolute;top:0;width:var(--sol-border-1);z-index:1}.sol-c-sign-in__content{display:flex;flex:0 0 auto;flex-direction:column;height:100%;justify-content:space-around}.sol-c-sign-in__wrapper{border-radius:inherit;display:flex;flex:1;overflow:hidden;position:relative}.sol-c-sign-in__wrapper:after{background:linear-gradient(#0000,var(--sol-color-primary-1));block-size:var(--sol-size-150);content:"";display:block;inline-size:100%;inset-block-end:0;opacity:0;pointer-events:none;position:absolute;transition:opacity var(--sol-motion-250);z-index:2}.sol-c-sign-in__wrapper[data-sol-scroll-end=false]:after{opacity:.6}.sol-c-sign-in__content--has-footer .sol-c-sign-in__wrapper{border-end-end-radius:0;border-end-start-radius:0}.sol-c-sign-in__wrapper .sol-c-field{max-inline-size:none}.sol-c-sign-in__container{flex:1;overflow:auto;padding:var(--sol-size-250);position:relative;z-index:1}@supports (scrollbar-gutter:stable) and (selector(::-webkit-scrollbar)){.sol-c-sign-in__container{padding-inline-end:calc(var(--sol-size-250) - var(--sol-scrollbar-width));scrollbar-gutter:stable}}.sol-c-sign-in__content--has-footer .sol-c-sign-in__container{padding-block-end:0}.sol-c-sign-in__footer{flex:0;padding:var(--sol-size-250)}.sol-c-sign-in__footer>:only-child{margin-inline-start:auto}.sol-c-sign-in__footer .footer__sign-up .sol-c-link{display:block}.sol-c-sign-in{--_anim-base-delay:.5s}.sol-c-sign-in:before,.sol-c-sign-in__content,.sol-c-sign-in__content-wrapper:before,.sol-c-sign-in__footer,.sol-c-sign-in__logo{animation:sol-motion-fade-in var(--sol-motion-300) var(--sol-motion-ease-out) forwards;opacity:0}.sol-c-sign-in__logo{animation-delay:var(--_anim-base-delay);animation-duration:var(--sol-motion-500);transform:translateX(-20px)}.sol-c-sign-in:before{animation-delay:calc(var(--_anim-base-delay) + .1s)}.sol-c-sign-in__content-wrapper:before{animation-delay:calc(var(--_anim-base-delay) + .15s)}.sol-c-sign-in__content{animation-delay:calc(var(--_anim-base-delay) + .3s)}.sol-c-sign-in__footer{animation-delay:calc(var(--_anim-base-delay) + .4s);transform:translateY(10px)}');
let hg = ms((({
as: e = "div",
children: t,
className: n,
footer: r,
subtitle: i,
title: a,
...o
}, s) => {
let l = fs("sol-c-sign-in__content", r && "sol-c-sign-in__content--has-footer", n),
c = (0, Ee.useRef)(null),
{
blockEnd: u
} = Us({
ref: c
});
return qo.jsxs(e, {
className: l,
ref: s,
...o,
children: [qo.jsx("div", {
className: "sol-c-sign-in__wrapper",
"data-sol-scroll-end": u,
children: qo.jsxs(cl, {
className: "sol-c-sign-in__container",
gap: "150",
ref: c,
vertical: !0,
children: [(a || i) && qo.jsxs(cl, {
className: "sol-c-sign-in__header",
gap: "050",
vertical: !0,
children: [a && qo.jsx(Ys, {
as: "h1",
className: "sol-c-sign-in__title",
color: "foreground",
variant: "heading-s",
children: a
}), i && qo.jsx(Ys, {
className: "sol-c-sign-in__subtitle",
color: "foreground-weak",
variant: "body-m",
children: i
})]
}), t]
})
}), r && qo.jsx(cl, {
align: "center",
justify: "space-between",
className: "sol-c-sign-in__footer",
children: r
})]
})
})),
fg = ms((({
as: e = "div",
children: t,
className: n,
...r
}, i) => {
let a = fs("sol-c-sign-in", n);
return qo.jsxs(e, {
className: a,
ref: i,
...r,
children: [qo.jsx("svg", {
className: "sol-c-sign-in__logo",
width: "256",
height: "125",
viewBox: "0 0 256 125",
xmlns: "http://www.w3.org/2000/svg",
children: qo.jsxs("g", {
fill: "#BCBEC0",
children: [qo.jsx("path", {
d: "M243.265 6.429c0-4.42 1.993-6.431 6.368-6.431s6.369 2.02 6.369 6.43-1.994 6.442-6.369 6.442-6.368-2.021-6.368-6.441Zm11.773 0c0-3.768-1.695-5.48-5.415-5.48-3.72 0-5.419 1.698-5.419 5.48 0 3.781 1.695 5.48 5.419 5.48 3.723 0 5.415-1.713 5.415-5.48Zm-2.84-1.09c0 1.263-.332 1.78-1.293 1.965l1.443 2.309c.069.07.034.139-.07.139h-1.192c-.149 0-.205-.035-.264-.15l-1.407-2.204h-.711v2.229c0 .104-.01.114-.104.114h-1.158c-.104 0-.114-.024-.114-.114V3.352c0-.07.024-.104.104-.104.766-.07 1.581-.08 2.312-.08 1.82 0 2.451.493 2.451 2.17h.003Zm-3.494-.976v1.996h.894c.916 0 1.193-.173 1.193-.975s-.274-1.021-1.193-1.021h-.894Z"
}), qo.jsx("path", {
d: "m7.053 124.984-2.621-3.302H3.26v3.302H1.502v-8.792h5.7c.6 0 1.012.132 1.244.41.236.278.35.715.35 1.299v2.059c0 .597-.117 1.021-.35 1.298-.235.278-.658.41-1.244.41h-.704L9.5 124.97H7.053v.014Zm.014-6.555c0-.247-.045-.424-.146-.525-.087-.087-.218-.132-.395-.132H3.26v2.396h3.266c.177 0 .308-.045.409-.146.087-.1.132-.277.132-.524v-1.069ZM19.415 124.547c-.218.292-.69.438-1.407.438h-4.774c-.718 0-1.186-.146-1.408-.438-.218-.292-.336-.847-.336-1.635v-4.615c0-.788.118-1.344.336-1.636.219-.305.704-.451 1.408-.451h4.774c.717 0 1.185.146 1.407.451.219.306.337.848.337 1.636v4.615c0 .788-.118 1.343-.337 1.635Zm-1.449-6.733h-4.715v5.49h4.715v-5.49ZM27.968 124.998c.717 0 1.244-.146 1.567-.438.322-.291.482-.729.482-1.284v-1.125c0-.966-.382-1.518-1.144-1.681.731-.146 1.098-.642 1.098-1.476v-1.066c0-.597-.117-1.021-.35-1.298-.235-.278-.644-.424-1.244-.424h-5.713v8.792H27.968Zm.218-3.667c.104.132.146.32.146.615h.014v.67c0 .292-.046.496-.146.597-.1.101-.25.16-.454.16h-3.31v-2.191h3.31c.204 0 .35.045.44.146v.003Zm-.059-3.549c.104.101.16.264.16.483v.847c0 .219-.045.379-.146.469-.087.087-.236.132-.409.132h-3.31v-2.045h3.31c.177 0 .309.028.395.118v-.004Z"
}), qo.jsx("path", {
d: "M32.669 124.984v-8.778h6.926v1.517h-5.141v1.914h3.002v1.534h-3.002v2.132h5.2v1.681h-6.986Z"
}), qo.jsx("path", {
d: "m45.104 121.682 2.621 3.302v-.014h2.448l-3.003-3.302h.704c.586 0 1.012-.132 1.245-.41.236-.277.35-.701.35-1.298v-2.059c0-.584-.118-1.021-.35-1.299-.236-.278-.645-.41-1.245-.41h-5.7v8.792h1.758v-3.302h1.172Zm2.49-3.781c.103.1.145.278.145.524v1.066c0 .247-.045.424-.132.524-.104.101-.236.146-.409.146h-3.266v-2.396h3.266c.177 0 .309.045.395.132v.004Z"
}), qo.jsx("path", {
d: "M55.272 117.8v7.185h-1.789V117.8H50.51v-1.59h7.762v1.59h-3.002.003ZM65.42 124.999c.717 0 1.185-.146 1.42-.452.236-.305.35-.847.337-1.635V121.7c0-.788-.104-1.344-.336-1.636-.236-.305-.704-.451-1.422-.451h-3.924v-1.84h3.983v1.066l1.598-.511v-.191c0-.715-.117-1.212-.35-1.503-.236-.292-.704-.438-1.39-.438h-3.692c-.704 0-1.186.146-1.407.452-.219.291-.337.847-.337 1.635v.979c0 .789.118 1.33.337 1.636.218.305.69.451 1.407.451h3.91v1.959H61.25v-1.094l-1.612.451v.25c0 .788.118 1.344.35 1.636.236.305.704.451 1.421.451h4.015l-.004-.003ZM81.914 124.546c-.235.305-.703.451-1.42.451h-4.016c-.717 0-1.185-.146-1.42-.451-.237-.292-.351-.847-.351-1.636v-.25l1.612-.451v1.094h4.32v-1.959h-3.91c-.719 0-1.186-.146-1.422-.451-.236-.306-.337-.847-.337-1.636v-.979c0-.788.118-1.344.337-1.635.218-.306.703-.452 1.421-.452h3.692c.69 0 1.158.146 1.39.438.236.292.35.788.35 1.503v.191l-1.598.511v-1.066h-3.997v1.84h3.925c.717 0 1.185.146 1.421.452.236.291.336.847.336 1.635v1.212c0 .788-.104 1.33-.336 1.635l.003.004Z"
}), qo.jsx("path", {
d: "M90.82 121.581c.586 0 1.013-.132 1.245-.41.236-.278.35-.715.35-1.316v-1.958c0-.583-.118-1.021-.35-1.299-.236-.278-.645-.41-1.245-.41h-5.699v8.792h1.758v-3.402h3.941v.003Zm-.294-3.681c.104.101.145.278.145.525v.948c0 .25-.045.423-.131.524-.087.101-.236.146-.41.146h-3.265v-2.278h3.266c.176 0 .308.045.395.132v.003ZM99.491 124.984l-.776-1.913h-3.852l-.763 1.913h-1.785l3.706-8.792h1.713l3.751 8.792h-1.994Zm-2.68-6.719-1.303 3.184h2.548l-1.245-3.184Z"
}), qo.jsx("path", {
d: "M108.452 124.984c.704 0 1.172-.146 1.408-.438.236-.292.35-.847.336-1.649v-1.039l-1.785-.496v1.941h-3.81v-5.49h3.81v1.695l1.785-.379v-.833c0-.788-.118-1.33-.336-1.636-.236-.305-.69-.451-1.408-.451h-3.882c-.718 0-1.203.146-1.422.451-.218.292-.336.848-.336 1.636v4.615c0 .788.118 1.343.336 1.635.236.292.704.438 1.422.438h3.882ZM113.053 124.984v-8.778h6.926v1.517h-5.141v1.914h3.002v1.534h-3.002v2.132h5.2v1.681h-6.985ZM133.867 119.273c.028.364.028.687.028.965v4.747h-1.64v-8.792h1.29l4.583 5.17c.121.142.222.257.298.351.042.052.08.093.111.132l.028.027c-.007-.229-.011-.423-.017-.587-.007-.232-.014-.399-.014-.493v-4.614h1.626v8.792h-1.29l-4.791-5.417-.035-.045a.966.966 0 0 0-.038-.049c-.042-.052-.097-.118-.146-.184l.007-.003ZM127.437 116.206h1.785v8.792h-1.785v-8.792Z"
}), qo.jsx("path", {
d: "M147.152 124.998c1.303 0 2.239-.233 2.798-.701.953-.803 1.435-2.046 1.435-3.754 0-1.372-.323-2.438-.967-3.198-.645-.76-1.599-1.139-2.871-1.139h-4.319v8.792h3.924Zm.395-7.202c.617 0 1.113.233 1.467.688.367.451.54 1.125.54 2.017 0 1.007-.218 1.723-.644 2.146-.423.424-1.127.643-2.08.643h-1.817v-5.49h2.534v-.004Z"
}), qo.jsx("path", {
d: "M161.154 124.547c-.218.291-.69.437-1.407.437h-4.101c-.718 0-1.172-.146-1.408-.437-.236-.292-.336-.848-.336-1.636v-6.705h1.785v7.097h4.042v-7.097h1.772v6.705c-.014.788-.132 1.344-.35 1.636h.003ZM170.119 124.999c.718 0 1.186-.146 1.422-.452.236-.305.336-.847.322-1.635V121.7c0-.788-.104-1.344-.336-1.636-.236-.305-.704-.451-1.421-.451h-3.925v-1.84h3.997v1.066l1.599-.511v-.191c0-.715-.118-1.212-.351-1.503-.235-.292-.703-.438-1.39-.438h-3.692c-.704 0-1.185.146-1.407.452-.219.291-.337.847-.337 1.635v.979c0 .789.118 1.33.337 1.636.218.305.69.451 1.407.451h3.911v1.959h-4.306v-1.094l-1.612.451v.25c0 .788.118 1.344.35 1.636.236.305.704.451 1.421.451h4.015l-.004-.003ZM178.027 117.8v7.185h-1.785V117.8h-2.975v-1.59h7.762v1.59h-3.002Z"
}), qo.jsx("path", {
d: "m185.529 121.682 2.621 3.302v-.014h2.447l-3.002-3.302h.704c.586 0 1.012-.132 1.245-.41.232-.277.35-.701.35-1.298v-2.059c0-.584-.118-1.021-.35-1.299-.236-.278-.645-.41-1.245-.41H182.6v8.792h1.757v-3.302h1.172Zm2.503-3.781c.104.1.146.278.146.524v1.066c0 .247-.045.424-.132.524-.087.101-.236.146-.409.146h-3.266v-2.396h3.266c.177 0 .308.045.395.132v.004Z"
}), qo.jsx("path", {
d: "M194.491 116.206h-1.785v8.792h1.785v-8.792ZM197.538 116.206v8.778h6.986v-1.681h-5.201v-2.132h3.003v-1.534h-3.003v-1.914h5.142v-1.517h-6.927ZM214.047 124.547c-.236.305-.704.451-1.422.451h-4.014c-.718 0-1.186-.146-1.422-.451-.235-.292-.336-.847-.336-1.636v-.25l1.612-.451v1.094h4.306v-1.959h-3.911c-.717 0-1.185-.146-1.407-.451-.219-.306-.336-.847-.336-1.636v-.979c0-.788.117-1.344.336-1.635.218-.306.704-.452 1.407-.452h3.692c.69 0 1.158.146 1.391.438.235.292.35.788.35 1.503v.191l-1.598.511v-1.066h-3.998v1.84h3.911c.717 0 1.186.146 1.421.452.236.291.337.847.337 1.635v1.212c.027.788-.087 1.33-.323 1.635l.004.004Z"
}), qo.jsx("path", {
d: "M79.692 81.754c-1.712 0-3.28-1.3-3.706-2.893l-4.264-18.327 19.511-9.813c4.7-2.309 8.684-7.07 10.106-12.85l6.694-25.98C109.749 5.386 105.617.042 98.926.042H26.758L-.002 106.567h25.339l6.548-25.834 17.078-8.66 6.122 25.688c1.144 4.761 5.977 8.806 10.955 8.806h20.211l6.254-24.827H79.69v.014h.003ZM39.706 49.71l.191-.774 6.064-24.199h29.325c2.27 0 3.838.861 3.28 2.747-.427 1.444-1.422 3.184-4.279 4.614l-34.58 17.612Z"
}), qo.jsx("path", {
d: "M96.582 81.754h4.292l-6.327 24.827h-4.364l6.385-24.786.014-.045v.004ZM104.975 81.754l-6.267 24.827h4.205l6.313-24.827H104.975ZM113.323 81.754l-6.268 24.827h4.41l6.268-24.827h-4.41Z",
fill: "#FFA000"
}), qo.jsx("path", {
d: "m138.443 33.399 40.704 27.282c4.129 2.746 6.399 9.097 5.273 13.875l-5.831 23.237c-1.127 4.76-6.254 8.806-11.382 8.806h-51.249l6.268-24.827h30.892c2.271 0 3.984-1.59 4.41-3.039.572-1.885.132-3.316-2.139-4.906l-40.998-27.72c-4.129-2.746-6.417-9.097-5.273-13.858l5.831-23.382c1.144-4.76 6.122-8.806 11.104-8.806L184.86.002l-.014.059-6.268 24.681-.014.087h-.027l-38.097-.087c-2.27 0-3.983.861-4.555 3.17-.572 2.323.277 4.046 2.562 5.49l-.004-.003Z"
}), qo.jsx("path", {
d: "M193.458.057h-.104l.013-.059h-4.395l-.014.06-6.241 24.68-.013.087h4.392l.014-.087 6.348-24.68ZM201.851.057l-6.227 24.68h-4.16l6.299-24.68h4.088ZM203.972 24.738 210.213.057h-4.115l-6.268 24.68h4.146-.004Z",
fill: "#FFA000"
}), qo.jsx("path", {
d: "m214.709.057.014-.059 25.338.06-26.905 106.526h-25.62L214.608.057h.104-.003Z"
})]
})
}), qo.jsx("div", {
className: "sol-c-sign-in__content-wrapper",
children: t
})]
})
}));
No('@layer components{.sol-c-slider{--_thumb-size:var(--sol-c-slider-thumb-size,var(--sol-size-050));--_track-size:var(--sol-c-slider-track-size,var(--sol-size-025));--_size:var(--sol-c-slider-size,100%);--_background-color:var(--sol-color-surface-3);--_foreground-color:var(--sol-color-interactive);--_thumb-opacity:1;--_background-position:right;appearance:none;background:#0000;display:inline-block;inline-size:var(--_size);min-block-size:var(--_thumb-size);transition:opacity var(--sol-motion-250)}.sol-c-slider[style*="--sol-c-slider-progress"]{--_thumb-opacity:0}[dir=rtl] .sol-c-slider{--_background-position:left}.sol-c-slider::-webkit-slider-runnable-track{background:var(--_foreground-color) linear-gradient(var(--_background-color),var(--_background-color)) no-repeat var(--_background-position)/calc(100% - var(--sol-c-slider-progress, 0%));block-size:var(--_track-size);border-radius:var(--sol-radius-8);-webkit-transition:background-color var(--sol-motion-250);transition:background-color var(--sol-motion-250)}.sol-c-slider::-webkit-slider-thumb{appearance:none;background-color:var(--_foreground-color);border:0;border-radius:var(--sol-radius-circle);box-shadow:var(--sol-shadow-200);height:var(--_thumb-size);margin-block-start:calc(var(--_thumb-size)/2*-1 - var(--_track-size)/2*-1);opacity:var(--_thumb-opacity);-webkit-transition:background-color var(--sol-motion-250),opacity var(--sol-motion-250);transition:background-color var(--sol-motion-250),opacity var(--sol-motion-250);width:var(--_thumb-size)}.sol-c-slider::-moz-range-track{background:var(--_foreground-color) linear-gradient(var(--_background-color),var(--_background-color)) no-repeat var(--_background-position)/calc(100% - var(--sol-c-slider-progress, 0%));block-size:var(--_track-size);border-radius:var(--sol-radius-8);-moz-transition:background-color var(--sol-motion-250);transition:background-color var(--sol-motion-250)}.sol-c-slider::-moz-range-thumb{appearance:none;background-color:var(--_foreground-color);border:0;border-radius:var(--sol-radius-circle);box-shadow:var(--sol-shadow-200);height:var(--_thumb-size);opacity:var(--_thumb-opacity);-moz-transition:background-color var(--sol-motion-250),opacity var(--sol-motion-250);transition:background-color var(--sol-motion-250),opacity var(--sol-motion-250);width:var(--_thumb-size)}.sol-c-slider:hover{--_foreground-color:var(--sol-color-interactive-hovered);--_thumb-opacity:1}.sol-c-slider:active{--_foreground-color:var(--sol-color-interactive-pressed);--_thumb-opacity:1}.sol-c-slider:focus,.sol-c-slider:focus-visible{outline:none}.sol-c-slider:focus-visible{--_thumb-opacity:1}.sol-c-slider:focus-visible::-webkit-slider-thumb{outline:var(--sol-focus-width) solid var(--sol-focus-color);outline-offset:var(--sol-focus-offset)}.sol-c-slider:focus-visible::-moz-range-thumb{outline:var(--sol-focus-width) solid var(--sol-focus-color);outline-offset:var(--sol-focus-offset)}.sol-c-slider:disabled{opacity:.2;pointer-events:none}}');
let mg = (e, t) => t < e ? e : e + (t - e) / 2,
gg = (0, Ee.forwardRef)((({
className: e,
defaultValue: t,
max: n = 100,
min: r = 0,
style: i,
onChange: a,
onValueChange: o,
showProgress: s = !1,
value: l,
...c
}, u) => {
let [d, p] = _s({
value: l,
defaultValue: t ?? mg(r, n),
onChange: o
}), h = (0, Ee.useCallback)((e => {
p(parseFloat(e.target.value)), a && a(e)
}), [a, p]), f = (d - r) / (n - r) * 100, m = fs("sol-c-slider", e), g = {
...s && {
"--sol-c-slider-progress": `${f}%`
},
...i
};
return qo.jsx("input", {
className: m,
max: n,
min: r,
onChange: h,
ref: u,
style: g,
type: "range",
value: d,
...c
})
}));
No("@layer components{.sol-c-toast{--_border:var(--sol-size-075);--_color:var(--sol-color-status-informative);--_padding:var(--sol-size-100);align-items:flex-start;background-color:var(--sol-color-surface-1);border-inline-start:var(--_border) solid var(--_color);border-radius:var(--sol-radius-8);display:flex;filter:drop-shadow(var(--sol-shadow-100));gap:var(--_padding);padding:var(--_padding);position:relative;transition:border-color var(--sol-motion-250)}.sol-c-toast--negative{--_color:var(--sol-color-status-negative)}.sol-c-toast--notice{--_color:var(--sol-color-status-notice)}.sol-c-toast--positive{--_color:var(--sol-color-status-positive)}.sol-c-toast__icon{color:var(--_color)}.sol-c-toast__close{margin-inline-start:auto}}");
let vg = "informative",
yg = (0, Ee.forwardRef)((({
actions: e,
children: t,
className: n,
close: r = true,
closeOnClick: i = true,
closeOnEsc: a = true,
duration: o = 4e3,
icon: s,
id: l,
onClick: c,
onClose: u,
pauseOnBlur: d = true,
title: p,
type: h = vg,
...f
}, m) => {
let g = (0, Ee.useId)(),
v = l ?? g,
y = v + "-label",
_ = v + "-description",
{
pause: b,
resume: x,
clear: k
} = ((e, t = 1 / 0, n = !0) => {
let r = ys(e),
i = (0, Ee.useRef)(null),
a = (0, Ee.useRef)(null),
o = (0, Ee.useRef)(t),
s = (0, Ee.useCallback)((() => {
i.current && (clearTimeout(i.current), i.current = null)
}), []),
l = (0, Ee.useCallback)((() => {
s(), null !== a.current && (o.current -= Date.now() - a.current, a.current = null)
}), [s]),
c = (0, Ee.useCallback)((() => {
i.current || t === 1 / 0 || (a.current = Date.now(), i.current = setTimeout((() => {
s(), r()
}), t))
}), [r, s, t]);
return (0, Ee.useEffect)((() => (n && c(), s)), [n, s, t, c]), (0, Ee.useMemo)((() => ({
clear: s,
pause: l,
resume: c
})), [s, l, c])
})((() => u && u(v)), o, !d || (document.hasFocus() ?? !0)),
w = (0, Ee.useCallback)((() => {
u && u(v), k()
}), [k, v, u]);
(0, Ee.useEffect)((() => {
if (d) return window.addEventListener("blur", b), window.addEventListener("focus", x), () => {
window.removeEventListener("blur", b), window.removeEventListener("focus", x)
}
}), [b, d, x]), (0, Ee.useEffect)((() => {
if (a && u) {
let e = e => {
("Escape" === e.key || "Esc" === e.key) && w()
};
return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e)
}
}), [w, a, v, u]);
let S = (0, Ee.useCallback)((e => {
c && c(e), i && w()
}), [w, i, c]),
E = (0, Ee.useCallback)((e => {
e.stopPropagation(), w()
}), [w]),
I = (0, Ee.useCallback)((() => {
b()
}), [b]),
O = (0, Ee.useCallback)((() => {
x()
}), [x]),
C = (0, Ee.useCallback)((({
close: e,
onClick: t
}) => n => {
n.stopPropagation(), e && w(), t && t(n)
}), [w]),
A = fs("sol-c-toast", h && h !== vg && `sol-c-toast--${h}`, n),
P = p || !p && t,
T = t && p;
return qo.jsxs("div", {
"aria-describedby": T ? _ : void 0,
"aria-labelledby": P ? y : void 0,
className: A,
id: v,
ref: m,
onClick: S,
onMouseEnter: I,
onMouseLeave: O,
...f,
children: [s && qo.jsx(Ks, {
className: "sol-c-toast__icon",
size: "150",
source: s
}), (p || t || e) && qo.jsxs(cl, {
className: "sol-c-toast__container",
gap: "075",
vertical: !0,
children: [(p || t) && qo.jsxs(cl, {
gap: "025",
vertical: !0,
children: [P && qo.jsx(Ys, {
className: "sol-c-toast__title",
color: "foreground",
id: y,
offset: !0,
variant: "emphasis-m",
children: p ?? t
}), T && qo.jsx(Ys, {
className: "sol-c-toast__content",
color: "foreground-weak",
id: _,
variant: "body-s",
children: t
})]
}), e && qo.jsx(cl, {
align: "center",
className: "sol-c-toast__actions",
gap: "050",
wrap: !0,
children: e.map((({
close: e = !0,
label: t,
onClick: n,
...r
}, i) => qo.jsx(el, {
color: "informative" !== h ? h : "default",
size: "medium",
variant: i > 0 ? "monochrome" : "default",
...r,
className: fs("sol-c-toast__action", r.className),
onClick: C({
close: e,
onClick: n
}),
children: t
}, i)))
})]
}), r && qo.jsx(el, {
"aria-label": "string" == typeof r ? r : "Close",
className: "sol-c-toast__close",
icon: Jo,
onClick: E,
size: "small",
variant: "monochrome"
})]
})
}));
No('@layer components{.sol-c-toasts{align-items:flex-end;display:flex;flex-direction:column;inset:0;justify-content:flex-end;overflow:hidden;padding:var(--sol-size-100);pointer-events:none;position:fixed;z-index:var(--sol-z-toasts)}.sol-c-toasts__wrapper{flex:0 0 auto;inline-size:100%;max-inline-size:31rem}.sol-c-toasts__wrapper>*{pointer-events:auto}.sol-c-toasts__wrapper:before{content:"";display:block;height:var(--sol-size-100)}}');
let _g = (0, Ee.forwardRef)((({
className: e,
style: t,
toasts: n,
component: r = yg,
...i
}, a) => {
let o = (0, Ee.useMemo)((() => new WeakMap), []),
[s, l] = (0, Ee.useState)(0);
Cs((() => l(document.querySelector(".sol-c-app-header")?.clientHeight ?? 0)), []);
let c = function(e, t, n) {
let r = Ap.fun(t) && t,
{
reset: i,
sort: a,
trail: o = 0,
expires: s = !0,
exitBeforeEnter: l = !1,
onDestroyed: c,
ref: u,
config: d
} = r ? r() : t,
p = (0, Ee.useMemo)((() => r || 3 == arguments.length ? cm() : void 0), []),
h = Dp(e),
f = [],
m = (0, Ee.useRef)(null),
g = i ? null : m.current;
Vh((() => {
m.current = f
})), Bh((() => (Tp(f, (e => {
p?.add(e.ctrl), e.ctrl.ref = p
})), () => {
Tp(m.current, (e => {
e.expired && clearTimeout(e.expirationId), bf(e.ctrl, p), e.ctrl.stop(!0)
}))
})));
let v = function(e, {
key: t,
keys: n = t
}, r) {
if (null === n) {
let t = new Set;
return e.map((e => {
let n = r && r.find((n => n.item === e && "leave" !== n.phase && !t.has(n)));
return n ? (t.add(n), n.key) : dm++
}))
}
return Ap.und(n) ? e : Ap.fun(n) ? e.map(n) : Dp(n)
}(h, r ? r() : t, g),
y = i && m.current || [];
Vh((() => Tp(y, (({
ctrl: e,
item: t,
key: n
}) => {
bf(e, p), lf(c, t, n)
}))));
let _ = [];
if (g && Tp(g, ((e, t) => {
e.expired ? (clearTimeout(e.expirationId), y.push(e)) : ~(t = _[t] = v.indexOf(e.key)) && (f[t] = e)
})), Tp(h, ((e, t) => {
f[t] || (f[t] = {
key: v[t],
item: e,
phase: "mount",
ctrl: new Jf
}, f[t].ctrl.item = e)
})), _.length) {
let e = -1,
{
leave: n
} = r ? r() : t;
Tp(_, ((t, r) => {
let i = g[r];
~t ? (e = f.indexOf(i), f[e] = {
...i,
item: h[t]
}) : n && f.splice(++e, 0, i)
}))
}
Ap.fun(a) && f.sort(((e, t) => a(e.item, t.item)));
let b = -o,
x = Uh(),
k = hf(t),
w = new Map,
S = (0, Ee.useRef)(new Map),
E = (0, Ee.useRef)(!1);
Tp(f, ((e, n) => {
let i, a, c = e.key,
p = e.phase,
h = r ? r() : t,
f = lf(h.delay || 0, c);
if ("mount" == p) i = h.enter, a = "enter";
else {
let e = 0 > v.indexOf(c);
if ("leave" != p)
if (e) i = h.leave, a = "leave";
else {
if (!(i = h.update)) return;
a = "update"
}
else {
if (e) return;
i = h.enter, a = "enter"
}
}
if (i = lf(i, e.item, n), !(i = Ap.obj(i) ? gf(i) : {
to: i
}).config) {
let t = d || k.config;
i.config = lf(t, e.item, n, a)
}
b += o;
let y = {
...k,
delay: f + b,
ref: u,
immediate: h.immediate,
reset: !1,
...i
};
if ("enter" == a && Ap.und(y.from)) {
let i = r ? r() : t,
a = Ap.und(i.initial) || g ? i.from : i.initial;
y.from = lf(a, e.item, n)
}
let {
onResolve: _
} = y;
y.onResolve = e => {
lf(_, e);
let t = m.current,
n = t.find((e => e.key === c));
if (n) {
if (e.cancelled && "update" != n.phase) return;
if (n.ctrl.idle) {
let e = t.every((e => e.ctrl.idle));
if ("leave" == n.phase) {
let t = lf(s, n.item);
if (!1 !== t) {
let r = !0 === t ? 0 : t;
if (n.expired = !0, !e && r > 0) return void(r <= 2147483647 && (n.expirationId = setTimeout(x, r)))
}
}
e && t.some((e => e.expired)) && (S.current.delete(n), l && (E.current = !0), x())
}
}
};
let I = nm(e.ctrl, y);
"leave" === a && l ? S.current.set(e, {
phase: a,
springs: I,
payload: y
}) : w.set(e, {
phase: a,
springs: I,
payload: y
})
}));
let I = (0, Ee.useContext)(sm),
O = Wh(I),
C = I !== O && yf(I);
Vh((() => {
C && Tp(f, (e => {
e.ctrl.start({
default: I
})
}))
}), [I]), Tp(w, ((e, t) => {
if (S.current.size) {
let e = f.findIndex((e => e.key === t.key));
f.splice(e, 1)
}
})), Vh((() => {
Tp(S.current.size ? S.current : w, (({
phase: e,
payload: t
}, n) => {
let {
ctrl: r
} = n;
n.phase = e, p?.add(r), C && "enter" == e && r.start({
default: I
}), t && (xf(r, t.ref), !r.ref && !p || E.current ? (r.start(t), E.current && (E.current = !1)) : r.update(t))
}))
}), void 0);
let A = e => Ee.createElement(Ee.Fragment, null, f.map(((t, n) => {
let {
springs: r
} = w.get(t) || t.ctrl, i = e({
...r
}, t.item, t, n);
return i && i.type ? Ee.createElement(i.type, {
...i.props,
key: Ap.str(t.key) || Ap.num(t.key) ? t.key : t.ctrl.id,
ref: i.ref
}) : i
})));
return p ? [A, p] : A
}(n, {
from: {
height: 0,
transform: "translate(100%, 0px)"
},
enter: e => async t => {
await t({
transform: `translate(100%, -${o.get(e).scrollHeight}px)`,
immediate: !0
}), await t({
height: o.get(e).scrollHeight,
transform: "translate(0%, 0px)",
scale: 1,
opacity: 1
})
},
leave: {
opacity: 0,
scale: .95,
height: 0
},
config: {
tension: 210,
friction: 30
}
}),
u = fs("sol-c-toasts", e),
d = {
...t,
top: s
};
return qo.jsx("ul", {
"aria-live": "polite",
className: u,
ref: a,
style: d,
...i,
children: c(((e, t) => qo.jsx(Om.li, {
className: "sol-c-toasts__wrapper",
ref: e => e && o.set(t, e),
style: e,
children: qo.jsx(r, {
role: "status",
...t
})
})))
})
}));
No("@layer components{.sol-c-tutorial{background:var(--sol-color-surface-2);border-radius:var(--sol-radius-4);box-shadow:var(--sol-shadow-100);inline-size:30rem;min-block-size:10rem;padding:var(--sol-size-100)}.sol-c-tutorial__footer{margin-block-start:auto}#walktour-portal{color:var(--sol-color-overlay);z-index:var(--sol-z-tutorial)!important}#walktour-tooltip-container{outline:none}}");
let bg = ({
targetInfo: e,
disableMaskInteraction: t,
padding: n,
radius: r,
tourRoot: i,
close: a,
disableCloseOnClick: o,
maskId: s
}) => {
let {
width: l,
height: c
} = xs({
ref: i
}), u = `clip-path-${s}`, d = (0, Ee.useMemo)((() => {
if (!e) return "";
let {
dims: {
height: t,
width: i
},
coords: {
x: a,
y: o
}
} = e, s = o - n, u = a - n, d = a + i + n, p = o + t + n, h = l || 0, f = c || 0;
return r > 0 ? `M 0, 0\n L 0, ${f}\n L ${u}, ${f}\n L ${u}, ${s+r}\n Q ${u}, ${s}, ${u+r}, ${s}\n L ${d-r}, ${s}\n Q ${d}, ${s}, ${d}, ${s+r}\n L ${d}, ${p-r}\n Q ${d}, ${p}, ${d-r}, ${p}\n L ${u+r}, ${p}\n Q ${u}, ${p}, ${u}, ${p-r}\n L ${u}, ${f}\n L ${h}, ${f}\n L ${h}, 0` : `M 0, 0\n L 0, ${f}\n L ${u}, ${f}\n L ${u}, ${s}\n L ${d}, ${s}\n L ${d}, ${p}\n L ${u}, ${p}\n L ${u}, ${f}\n L ${h}, ${f}\n L ${h}, 0`
}), [c, l, n, r, e]);
return qo.jsxs("svg", {
style: {
height: c,
width: l,
pointerEvents: t ? "auto" : "none"
},
children: [e && qo.jsx("defs", {
children: qo.jsx("clipPath", {
id: u,
children: qo.jsx("path", {
d: d
})
})
}), qo.jsx("rect", {
onClick: o ? void 0 : a,
x: 0,
y: 0,
width: l,
height: c,
pointerEvents: "auto",
clipPath: e ? `url(#${u})` : void 0,
fill: "currentColor"
})]
})
},
xg = ({
allSteps: e,
close: t,
counterSeparator: n,
doneLabel: r,
next: i,
nextLabel: a,
skipLabel: o,
stepContent: {
title: s,
description: l
},
stepIndex: c
}) => {
let u = c === e.length - 1;
return qo.jsxs(cl, {
className: "sol-c-tutorial",
vertical: !0,
gap: "050",
children: [qo.jsxs(cl, {
className: "sol-c-tutorial__content",
gap: "025",
vertical: !0,
children: [qo.jsx(Ys, {
as: "h2",
color: "foreground",
variant: "emphasis-m",
children: s
}), l && qo.jsx(Ys, {
color: "foreground-weak",
className: "sol-u-margin-bs-050",
variant: "body-s",
children: l
})]
}), qo.jsxs(cl, {
align: "center",
className: "sol-c-tutorial__footer",
gap: "050",
children: [qo.jsxs(Ys, {
className: "sol-c-tutorial__counter sol-u-margin-ie-auto",
color: "foreground-weak",
variant: "body-xs",
children: [c + 1, n, e.length]
}), !u && qo.jsx(el, {
onClick: () => t(),
variant: "plain",
children: o
}), qo.jsx(el, {
onClick: () => {
u ? t() : i()
},
children: u ? r : a
})]
})]
})
},
kg = 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, [tabindex]:not([tabindex^="-"]):not([disabled]), [contenteditable]';
function wg(e) {
return {
x: e.scrollLeft,
y: e.scrollTop
}
}
function Sg(e, t) {
let n = wg(e);
return {
x: t.x + n.x,
y: t.y + n.y
}
}
function Eg(e, t) {
if (t && e) {
if (Mg(e)) return Sg(e, t);
{
let n = Lg(e);
return Sg(e, {
x: t.x - n.x,
y: t.y - n.y
})
}
}
}
function Ig(e, t, n) {
return {
x: e.x + t.width / 2 - n.width / 2,
y: e.y + t.height / 2 - n.height / 2
}
}
function Og(e, t, n, r, i) {
if (!e || !t || !n) return;
let a = r || Lg(t),
o = i || Lg(n),
s = Ng(t),
l = Ng(n),
{
coords: c,
dims: u
} = jg(a, s, o, l);
return Ig(c, u, Bg(e))
}
function Cg(e, t, n) {
if (!e) return;
return Ig(n || Wg(e), Bg(e), t ? Ng(t) : {
height: 0,
width: 0
})
}
function Ag(e, t, n, r) {
let i = Cg(e, t),
a = i,
o = a => !r || Hg(e, n) && Hg(e, t, a, !0) ? i : Cg(e, t, Kg(e, Og(e, t, n, a)));
return (e, t, n, r) => {
if (t.orientation === Vo.CENTER) return n === r.length - 1 && void 0 === e ? t : e;
if (void 0 === e) return a = o(t.coords), t;
{
let n = o(t.coords);
return Dg(n, t.coords) > Dg(a, e.coords) ? e : (a = n, t)
}
}
}
function Pg(e) {
let {
target: t,
tooltip: n,
padding: r,
tooltipSeparation: i,
orientationPreferences: a,
getPositionFromCandidates: o,
root: s,
disableAutoScroll: l,
allowForeignTarget: c,
selector: u
} = e, d = t ? Cg(s, n, Kg(s, function(e, t) {
let n = Ng(t);
return Ig(Lg(t), n, Bg(e))
}(s, t))) : Cg(s, n), p = Eg(s, d);
if (!n || !s) return;
if (!t) return {
orientation: null,
coords: p
};
let h = c && Ug(s, u),
f = l || h,
m = function(e, t, n, r, i) {
let a;
if (!e || !t) return;
let o = Ng(t),
s = Lg(e),
l = Ng(e),
c = s.x - (o.width - l.width) / 2,
u = s.y - (o.height - l.height) / 2,
d = s.x + l.width + n + r,
p = s.y + l.height + n + r,
h = s.x - o.width - n - r,
f = s.y - o.height - n - r,
m = Ig(s, l, o),
g = [{
orientation: Vo.EAST,
coords: {
x: d,
y: u
}
}, {
orientation: Vo.SOUTH,
coords: {
x: c,
y: p
}
}, {
orientation: Vo.WEST,
coords: {
x: h,
y: u
}
}, {
orientation: Vo.NORTH,
coords: {
x: c,
y: f
}
}];
{
let e = s.x - (o.width - l.width) + n,
t = s.y - (o.height - l.height) + n,
r = s.x - n,
i = s.y - n;
a = [{
orientation: Vo.EASTNORTH,
coords: {
x: d,
y: i
}
}, {
orientation: Vo.EASTSOUTH,
coords: {
x: d,
y: t
}
}, {
orientation: Vo.SOUTHEAST,
coords: {
x: e,
y: p
}
}, {
orientation: Vo.SOUTHWEST,
coords: {
x: r,
y: p
}
}, {
orientation: Vo.WESTSOUTH,
coords: {
x: h,
y: t
}
}, {
orientation: Vo.WESTNORTH,
coords: {
x: h,
y: i
}
}, {
orientation: Vo.NORTHWEST,
coords: {
x: r,
y: f
}
}, {
orientation: Vo.NORTHEAST,
coords: {
x: e,
y: f
}
}]
}
return [...g, ...a, {
orientation: Vo.CENTER,
coords: m
}]
}(t, n, r, i),
g = o || (e => function(e, t, n, r, i) {
if (1 === e.length) return e[0];
{
if (i) return e.reduce(Ag(t, n, r, !1), void 0);
let a = Bg(t),
o = $g(t),
s = Wg(t),
l = qg(t),
c = Ng(n),
u = Ng(r),
d = Lg(r),
p = e => jg(e, c, d, u),
h = e.filter((e => {
let t = e.coords;
return !(t.x < o.x || t.y < o.y || t.x + c.width > l.x || t.y + c.height > l.y)
})),
f = h.filter((e => {
let t = e.coords,
{
dims: n
} = p(t);
return Fg(n, a)
})),
m = f.filter((e => {
let t = e.coords,
{
dims: n,
coords: r
} = p(t);
return zg(n, a, r, s)
})),
g = m.length > 0 ? m : f;
return (g.length > 0 ? g : h).reduce(Ag(t, n, r, !0), void 0)
}
}(e, s, n, t, f)),
v = g(function(e, t) {
if (!t || 0 === t.length) return e;
if (1 !== t.length) return e.filter((e => -1 !== t.indexOf(e.orientation)));
{
let n = e.find((e => e.orientation === t[0]));
return n ? [n] : e
}
}(m, a));
if (!v) return {
orientation: Vo.CENTER,
coords: p
};
let y = {
orientation: v.orientation,
coords: Eg(s, v.coords)
};
return h ? {
orientation: y.orientation,
coords: function(e, t, n, r) {
if (!e) return t;
let i = wg(e),
a = Bg(e),
o = i.x + a.width,
s = i.y + a.height,
l = i.x + r,
c = i.y + r,
u = o - n.width - r,
d = s - n.height - r,
p = t.x,
h = t.y;
return t.x < l ? p = l : t.x + n.width > u && (p = u), t.y < c ? h = c : t.y + n.height > d && (h = d), {
x: p,
y: h
}
}(s, y.coords, Ng(n), r + i)
} : y
}
function Tg(e) {
return !!e && (!!e.x || 0 === e.x) && (!!e.y || 0 === e.y)
}
function Rg(e) {
return !!e && (!!e.height || 0 === e.height) && (!!e.width || 0 === e.height) && !(e.height < 0) && !(e.width < 0)
}
function Dg(e, t) {
if (Tg(e) && Tg(t)) return Math.sqrt(Math.pow(Math.abs(e.x - t.x), 2) + Math.pow(Math.abs(e.y - t.y), 2))
}
function Lg(e) {
if (!e) return;
let t = e.getBoundingClientRect();
return {
x: t.left,
y: t.top
}
}
function Ng(e) {
if (!e) return;
let t = e.getBoundingClientRect();
return {
width: t.width,
height: t.height
}
}
function Mg(e) {
return e.isSameNode(document.body) || e.isSameNode(document.scrollingElement) || e.isSameNode(document.documentElement)
}
function jg(e, t, n, r) {
let i = (e, t) => ({
left: e.x,
right: e.x + t.width,
top: e.y,
bottom: e.y + t.height
}),
a = (e, t, n) => e > t ? n ? e : t : n ? t : e,
o = i(e, t),
s = i(n, r),
l = a(o.left, s.left, !1),
c = a(o.right, s.right, !0),
u = a(o.top, s.top, !1);
return {
coords: {
x: l,
y: u
},
dims: {
height: a(o.bottom, s.bottom, !0) - u,
width: c - l
}
}
}
function Fg(e, t) {
return !(!Rg(e) || !Rg(t)) && e.height <= t.height && e.width <= t.width
}
function zg(e, t, n, r) {
if (!Rg(e) || !Rg(t)) return !1;
let i = Tg(n) ? n : {
x: 0,
y: 0
},
a = Tg(r) ? r : {
x: 0,
y: 0
},
o = Fg(e, t),
s = i.x >= a.x && i.x + e.width <= a.x + t.width,
l = i.y >= a.y && i.y + e.height <= a.y + t.height;
return o && s && l
}
function Vg(e, t, n) {
if (t) {
let e = function(e, t) {
let n = e.querySelectorAll(kg),
r = [];
return t && e.matches(kg) && r.push(e), n.length > 0 && n.forEach((e => r.push(e))), r
}(t, n);
if (e.length > 0) return {
start: e[0],
end: e[e.length - 1]
}
}
return {
start: e,
end: e
}
}
function Ug(e, t) {
return !e.querySelector(t)
}
function Bg(e) {
return {
width: e.clientWidth,
height: e.clientHeight
}
}
function Gg(e) {
return {
width: e.scrollWidth,
height: e.scrollHeight
}
}
function Wg(e) {
return Mg(e) ? {
x: 0,
y: 0
} : Lg(e)
}
function $g(e) {
let t = wg(e),
n = Wg(e);
return {
x: n.x - t.x,
y: n.y - t.y
}
}
function qg(e) {
let t = $g(e),
{
width: n,
height: r
} = Gg(e);
return {
x: t.x + n,
y: t.y + r
}
}
function Hg(e, t, n, r) {
if (!e || !t) return !1;
let i = n && (r ? Eg(e, n) : n) || Eg(e, Lg(t)),
a = Ng(t),
o = Eg(e, Wg(e));
return zg(a, Bg(e), i, o)
}
function Kg(e, t) {
let n = Bg(e),
r = $g(e),
i = qg(e),
a = i.x - n.width,
o = i.y - n.height;
return t.x < r.x ? t.x = r.x : t.x > a ? t.x = a : t.x = t.x, t.y < r.y ? t.y = r.y : t.y > o ? t.y = o : t.y = t.y, t
}
function Yg(e) {
let {
targetInfo: t,
disableMaskInteraction: n,
padding: r,
radius: i,
tourRoot: a,
close: o,
disableCloseOnClick: s,
maskId: l
} = e, {
width: c,
height: u
} = Gg(a), d = `clip-path-${l}`;
return qo.jsxs("svg", {
style: {
height: u,
width: c,
pointerEvents: n ? "auto" : "none"
},
children: [t && qo.jsx("defs", {
children: qo.jsx("clipPath", {
id: d,
children: qo.jsx("path", {
d: (e => {
if (!e) return "";
let {
dims: t,
coords: n
} = e, a = n.y - r, o = n.x - r, s = n.x + t.width + r, l = n.y + t.height + r;
return i > 0 ? `M 0, 0\n L 0, ${u}\n L ${o}, ${u}\n L ${o}, ${a+i}\n Q ${o}, ${a}, ${o+i}, ${a}\n L ${s-i}, ${a}\n Q ${s}, ${a}, ${s}, ${a+i}\n L ${s}, ${l-i}\n Q ${s}, ${l}, ${s-i}, ${l}\n L ${o+i}, ${l}\n Q ${o}, ${l}, ${o}, ${l-i}\n L ${o}, ${u}\n L ${c}, ${u}\n L ${c}, 0` : `M 0, 0\n L 0, ${u}\n L ${o}, ${u}\n L ${o}, ${a}\n L ${s}, ${a}\n L ${s}, ${l}\n L ${o}, ${l}\n L ${o}, ${u}\n L ${c}, ${u}\n L ${c}, 0`
})(t)
})
})
}), qo.jsx("rect", {
onClick: s ? void 0 : o,
x: 0,
y: 0,
width: c,
height: u,
fill: "black",
fillOpacity: .3,
pointerEvents: "auto",
clipPath: t ? `url(#${d})` : void 0
})]
})
}(Go = Vo || (Vo = {})).EAST = "east", Go.SOUTH = "south", Go.WEST = "west", Go.NORTH = "north", Go.CENTER = "center", Go.EASTNORTH = "east-north", Go.EASTSOUTH = "east-south", Go.SOUTHEAST = "south-east", Go.SOUTHWEST = "south-west", Go.WESTSOUTH = "west-south", Go.WESTNORTH = "west-north", Go.NORTHWEST = "north-west", Go.NORTHEAST = "north-east";
let Qg = {
cursor: "pointer",
padding: "4px 16px",
textAlign: "center",
border: 0,
borderRadius: 3,
backgroundColor: "#0084ff",
color: "#fff",
fontSize: 14,
margin: 4
},
Zg = {
tooltip: {
display: "flex",
flexDirection: "column",
zIndex: 9999,
fontFamily: "Roboto, sans-serif",
fontSize: 14,
backgroundColor: "white",
padding: "10px 10px 5px 10px",
borderRadius: "5px",
boxShadow: "0 3px 8px 0 rgba(0,0,0,.25)",
color: "#4d4d4d",
minWidth: 215,
maxWidth: 285
},
footer: {
display: "flex",
justifyContent: "center",
marginTop: 4
},
title: {
margin: 4,
fontSize: 24
},
description: {
margin: 4
},
primaryButton: {
...Qg,
backgroundColor: "#0084ff",
color: "#ffffff"
},
secondaryButton: {
...Qg,
backgroundColor: "#8400ff",
color: "#fff",
border: "solid 1px #8400ff"
},
tertiaryButton: {
...Qg,
marginRight: "auto",
backgroundColor: "transparent",
color: "#025c53",
border: "solid 1px #025c53"
},
disabledButton: {
...Qg,
backgroundColor: "#bebebe",
color: "#989898",
cursor: "default"
}
};
function Xg(e) {
let {
next: t,
prev: n,
close: r,
stepContent: {
title: i,
description: a,
customTitleRenderer: o,
customDescriptionRenderer: s,
customFooterRenderer: l,
disableClose: c,
disableNext: u,
disablePrev: d,
nextLabel: p,
prevLabel: h,
closeLabel: f
},
stepIndex: m,
allSteps: g,
styles: v
} = {
styles: Zg,
...e
}, y = {
...v.tooltip
}, _ = void 0 !== d ? d : 0 === m, b = void 0 !== u ? u : m + 1 === g.length;
return qo.jsxs("div", {
style: y,
children: [o ? o(i, e) : i && qo.jsx("div", {
style: v.title,
children: i
}), s ? s(a, e) : qo.jsx("div", {
style: v.description,
children: a
}), l ? l(e) : qo.jsxs("div", {
style: v.footer,
children: [qo.jsx("button", {
onClick: () => r(),
style: {
...v.tertiaryButton,
...c && v.disabledButton
},
disabled: c,
children: f || "close"
}), qo.jsx("button", {
onClick: n,
disabled: _,
style: {
...v.secondaryButton,
..._ && v.disabledButton
},
children: h || "prev"
}), qo.jsx("button", {
onClick: () => t(),
disabled: b,
style: {
...v.primaryButton,
...b && v.disabledButton
},
children: p || "next"
})]
})]
})
}
function Jg(e, t) {
return `${e}${t?`-${t}`:""}`
}
function ev(e) {
let {
start: t,
end: n,
beforeStart: r,
afterEnd: i,
lightningRod: a
} = e;
return e => {
9 === e.keyCode && (e.shiftKey && e.target === t ? (e.preventDefault(), r ? r.focus() : n.focus()) : e.shiftKey || e.target !== n ? e.target === a && (e.preventDefault(), t.focus()) : (e.preventDefault(), i ? i.focus() : t.focus()))
}
}
function tv(e) {
let {
root: t,
tooltip: n,
target: r,
disableAutoScroll: i,
allowForeignTarget: a,
selector: o
} = e;
return !!t && !!n && !!r && !i && (a && o ? !Ug(t, o) : function(e) {
let {
root: t,
tooltip: n,
tooltipPosition: r,
target: i
} = e;
return !Hg(t, n, r) || !Hg(t, i) && Fg(Ng(i), Bg(t))
}({
...e
}))
}
let nv = {
maskPadding: 5,
maskRadius: 0,
tooltipSeparation: 10,
transition: "top 300ms ease, left 300ms ease",
disableMaskInteraction: !1,
disableCloseOnClick: !1,
zIndex: 9999,
renderTolerance: 2,
updateInterval: 500
},
rv = e => {
let {
steps: t,
initialStepIndex: n,
isOpen: r
} = e, i = void 0 !== r, [a, o] = (0, Ee.useState)(void 0 == r), [s, l] = (0, Ee.useState)(void 0), [c, u] = (0, Ee.useState)(void 0), [d, p] = (0, Ee.useState)(n || 0), [h, f] = (0, Ee.useState)(void 0), m = (0, Ee.useRef)([]), g = (0, Ee.useRef)(void 0), v = (0, Ee.useRef)(void 0), y = (0, Ee.useRef)(void 0), _ = (0, Ee.useRef)(void 0), b = t[d], x = i ? r : a, k = {
...nv,
...e,
...b
}, {
selector: w,
maskPadding: S,
maskRadius: E,
disableMaskInteraction: I,
disableCloseOnClick: O,
tooltipSeparation: C,
transition: A,
orientationPreferences: P,
customTooltipRenderer: T,
zIndex: R,
rootSelector: D,
customNextFunc: L,
customPrevFunc: N,
customCloseFunc: M,
disableClose: j,
disableNext: F,
disablePrev: z,
disableAutoScroll: V,
identifier: U,
getPositionFromCandidates: B,
movingTarget: G,
renderTolerance: W,
updateInterval: $,
disableMask: q,
setUpdateListener: H,
removeUpdateListener: K,
disableListeners: Y,
disableSmoothScroll: Q,
debug: Z,
allowForeignTarget: X,
nextOnTargetClick: J,
validateNextOnTargetClick: ee,
renderMask: te
} = k;
(0, Ee.useEffect)((() => ie), []), (0, Ee.useEffect)((() => {
let e;
D && (e = document.querySelector(D)), e || (e = function e(t) {
let n = (e, t) => getComputedStyle(e, null).getPropertyValue(t);
return !t || Mg(t) ? function() {
let e = window.pageYOffset;
return document.documentElement.scrollTop = e + 1, window.pageXOffset > e ? (document.documentElement.scrollTop = e, document.documentElement) : document.scrollingElement || document.body
}() : /(auto|scroll)/.test(n(t, "overflow") + n(t, "overflow-y") + n(t, "overflow-x")) ? t : e(t.parentElement)
}(v.current)), !1 !== x && e !== h && f(e)
}), [D, v.current, x]), (0, Ee.useEffect)((() => {
Z && console.log(`walktour debug (${U?`${U}, `:""}${d}):`, {
"options:": k,
"tour logic:": oe,
"previous state/vars:": {
isOpenState: a,
tourRoot: h,
target: s,
tooltipPosition: c,
targetPosition: y,
currentStepIndex: d,
targetSize: _
}
}), g.current && x ? (g.current.focus(), ne()) : ie()
}), [d, b, x, h, g.current]);
let ne = () => {
ie();
let e = g.current;
if (!h || !e) return l(null), u(null), y.current = null, void(_.current = null);
let t = X ? document : h,
n = () => t.querySelector(w),
r = n(),
i = Eg(h, Lg(r)),
a = Ng(r),
o = q ? 0 : S,
s = Pg({
target: r,
tooltip: e,
padding: o,
tooltipSeparation: C,
orientationPreferences: P,
root: h,
getPositionFromCandidates: B,
disableAutoScroll: V,
allowForeignTarget: X,
selector: w
});
l(r), u(s), y.current = i, _.current = a;
let c = ((e, t, n) => {
let r, i, a;
if (!e) return;
let {
start: o,
end: s
} = Vg(e, e), {
start: l,
end: c
} = Vg(void 0, t, !0);
t && !n && l && c && (i = l, r = c, a = ev({
start: l,
end: c,
beforeStart: s,
afterEnd: o
}), t.addEventListener("keydown", a));
let u = ev({
start: o,
end: s,
beforeStart: r,
afterEnd: i,
lightningRod: e
});
return e.addEventListener("keydown", u), () => {
t && t.removeEventListener("keydown", a), e.removeEventListener("keydown", u)
}
})(e, r, I);
if (m.current.push(c), tv({
disableAutoScroll: V,
allowForeignTarget: X,
selector: w,
root: h,
target: r,
tooltip: e,
tooltipPosition: s.coords
}) && function(e, t, n) {
if (!e || !t) return;
if ("scrollBehavior" in document.documentElement.style && !n) {
let n = {
top: t.y,
left: t.x,
behavior: "smooth"
};
e.scrollTo(n)
} else e.scrollTop = t.y, e.scrollLeft = t.x
}(h, Og(h, e, r, s.coords, i), Q), !Y) {
let t = () => {
let t = n();
(function(e) {
let {
root: t,
tooltip: n
} = e;
return !!t && !!n && (function(e) {
let {
root: t,
target: n,
targetCoords: r,
targetDims: i,
rerenderTolerance: a
} = e;
if (!n && !r && !i) return !1;
if (!n && r && i || n && !r && !i) return !0;
let o = Ng(n),
s = Eg(t, Lg(n)),
l = function(e, t) {
if (Rg(e) && Rg(t)) return Math.abs(e.height * e.width - t.height * t.width)
}(o, i) > a,
c = Dg(s, r) > a;
return l || c
}({
...e
}) || tv({
...e
}) || function(e) {
let {
target: t,
root: n,
tooltip: r,
tooltipPosition: i
} = e;
return !(t || !n || !r) && 0 !== Dg(Pg({
...e
}).coords, i)
}({
...e
}))
})({
root: h,
tooltipPosition: s.coords,
tooltip: e,
target: t,
disableAutoScroll: V,
rerenderTolerance: W,
targetCoords: y.current,
targetDims: _.current,
allowForeignTarget: X,
selector: w,
getPositionFromCandidates: B,
orientationPreferences: P,
padding: o,
tooltipSeparation: C
}) && ne()
},
i = function(e) {
let {
update: t,
customSetListener: n,
customRemoveListener: r,
event: i
} = {
event: "resize",
...e
};
return n && r ? (n(t), () => r(t)) : (window.addEventListener(i, t), () => window.removeEventListener(i, t))
}({
update: function(e, t = 300) {
let n;
return (...r) => {
n && window.clearTimeout(n), n = window.setTimeout((() => e(...r)), t)
}
}(t),
customSetListener: H,
customRemoveListener: K
});
if (m.current.push(i), G && (r || w)) {
let e = function(e, t) {
let n = window.setInterval(e, t);
return () => window.clearInterval(n)
}(t, $);
m.current.push(e)
}
if (J && r) {
let e = ((e, t, n) => {
if (!e) return;
let r = () => {
(async (e, t) => {
t ? await t() && e() : e()
})((() => {
t(!0), e.removeEventListener("click", r)
}), n)
};
return e.addEventListener("click", r), () => e.removeEventListener("click", r)
})(r, oe.next, ee);
m.current.push(e)
}
}
},
re = e => {
e >= t.length || e < 0 || p(e)
},
ie = () => {
m.current.forEach((e => e())), m.current = []
},
ae = {
next: () => re(d + 1),
prev: () => re(d - 1),
close: e => (e => {
e && re(0), i || o(!1), ie(), s && s.focus()
})(e),
goToStep: re,
stepContent: {
...k
},
stepIndex: d,
allSteps: t,
tooltipPosition: c
},
oe = {
...ae,
...L && {
next: e => L(ae, e)
},
...N && {
prev: () => N(ae)
},
...M && {
close: () => M(ae)
}
},
se = e => {
switch (e.key) {
case "Escape":
e.preventDefault(), j || oe.close();
break;
case "ArrowRight":
e.preventDefault(), F || oe.next();
break;
case "ArrowLeft":
e.preventDefault(), z || oe.prev()
}
};
if (!x || !b) return null;
let le = {
position: "absolute",
top: 0,
left: 0,
zIndex: R,
visibility: c ? "visible" : "hidden",
pointerEvents: "none"
},
ce = {
position: "absolute",
top: c?.coords?.y,
left: c?.coords?.x,
transition: A,
pointerEvents: "auto"
},
ue = te || Yg,
de = () => qo.jsx("div", {
ref: e => v.current = e,
id: Jg("walktour-portal", U),
style: le,
children: h && qo.jsxs(qo.Fragment, {
children: [!q && qo.jsx(ue, {
maskId: Jg("walktour-mask", U),
targetInfo: function(e, t) {
if (!e || !t) return;
let n = Ng(t);
return {
coords: Eg(e, Lg(t)),
dims: n
}
}(h, s),
disableMaskInteraction: I,
disableCloseOnClick: O,
padding: S,
radius: E,
tourRoot: h,
close: oe.close
}), qo.jsx("div", {
ref: e => g.current = e,
id: Jg("walktour-tooltip-container", U),
style: ce,
onKeyDown: se,
tabIndex: 0,
children: T ? T(oe) : qo.jsx(Xg, {
...oe
})
})]
})
});
return h ? (0, Do.createPortal)(de(), Mg(h) ? document.body : h) : de()
},
iv = (e, t) => (t ? {
bottom: Vo.SOUTH,
"bottom-end": Vo.SOUTHWEST,
"bottom-start": Vo.SOUTHEAST,
left: Vo.EAST,
"left-end": Vo.EASTSOUTH,
"left-start": Vo.EASTNORTH,
right: Vo.WEST,
"right-end": Vo.WESTSOUTH,
"right-start": Vo.WESTNORTH,
top: Vo.NORTH,
"top-end": Vo.NORTHWEST,
"top-start": Vo.NORTHEAST
} : {
bottom: Vo.SOUTH,
"bottom-end": Vo.SOUTHEAST,
"bottom-start": Vo.SOUTHWEST,
left: Vo.WEST,
"left-end": Vo.WESTSOUTH,
"left-start": Vo.WESTNORTH,
right: Vo.EAST,
"right-end": Vo.EASTSOUTH,
"right-start": Vo.EASTNORTH,
top: Vo.NORTH,
"top-end": Vo.NORTHEAST,
"top-start": Vo.NORTHWEST
})[e],
av = (e, t) => e.map((({
selector: e,
title: n,
description: r,
placement: i = "bottom-start",
padding: a = 4
}) => ({
selector: e ?? "sol-tutorial-fullscreen",
title: n,
description: r,
maskPadding: a,
orientationPreferences: [iv(i, t)]
}))),
ov = ({
children: e,
counterSeparator: t = " of ",
doneLabel: n = "Done",
nextLabel: r = "Next",
onOpenChange: i,
open: a = !1,
skipLabel: o = "Skip",
steps: s
}) => {
let {
direction: l = "ltr"
} = Ns(), [c, u] = _s({
value: a,
onChange: i
}), d = {
counterSeparator: t,
doneLabel: n,
nextLabel: r,
skipLabel: o
};
return qo.jsxs(qo.Fragment, {
children: [qo.jsx(rv, {
customTooltipRenderer: e => qo.jsx(xg, {
...d,
...e
}),
disableMaskInteraction: !0,
disableCloseOnClick: !0,
maskRadius: 4,
renderMask: e => qo.jsx(bg, {
...e
}),
isOpen: c,
customCloseFunc: ({
close: e
}) => {
e(!0), u(!1), i?.(!1)
},
tooltipSeparation: 4,
steps: av(s, "rtl" === l)
}), e]
})
},
sv = ms((({
buttonRef: e,
className: t,
disabled: n,
label: r = "Volume",
muteLabel: i = "Mute",
onChange: a,
sliderRef: o,
unmuteLabel: s = "Unmute",
value: l = 0,
...c
}, u) => {
let d = (0, Ee.useId)(),
[p, h] = _s({
value: l,
onChange: a
}),
[f, m] = (0, Ee.useState)(0),
g = (0, Ee.useCallback)((e => h(e)), [h]),
v = (0, Ee.useCallback)((() => {
0 !== p ? (m(p), h(0)) : h(0 === f ? 50 : f)
}), [f, h, p]),
y = (0, Ee.useMemo)((() => {
switch (!0) {
case p >= 50:
return ps;
case p >= 25:
return ds;
case p >= 1:
return us;
default:
return rs
}
}), [p]),
_ = fs("sol-c-volume-slider", t);
return qo.jsxs(cl, {
align: "center",
className: _,
gap: "025",
ref: u,
...c,
children: [qo.jsx(el, {
"aria-controls": d,
"aria-label": 0 === p ? s : i,
className: "sol-c-volume-slider__button",
disabled: n,
onClick: v,
ref: e,
size: "small",
icon: y,
variant: "plain"
}), qo.jsx(gg, {
id: d,
"aria-label": r,
"aria-valuetext": `${p}%`,
className: "sol-c-volume-slider__slider",
disabled: n,
min: 0,
max: 100,
onValueChange: g,
ref: o,
showProgress: !0,
value: p,
style: {
"--sol-c-slider-size": "var(--sol-size-500)"
}
})]
})
}));
function lv(e) {
if ("boolean" === typeof __SENTRY_TRACING__ && !__SENTRY_TRACING__) return !1;
const t = e || function() {
const e = zn();
return e && e.getOptions()
}();
return !!t && (t.enableTracing || "tracesSampleRate" in t || "tracesSampler" in t)
}
class cv {
constructor(e = {}) {
this._traceId = e.traceId || dn(), this._spanId = e.spanId || dn().substring(16)
}
spanContext() {
return {
spanId: this._spanId,
traceId: this._traceId,
traceFlags: 0
}
}
end(e) {}
setAttribute(e, t) {
return this
}
setAttributes(e) {
return this
}
setStatus(e) {
return this
}
updateName(e) {
return this
}
isRecording() {
return !1
}
addEvent(e, t, n) {
return this
}
addLink(e) {
return this
}
addLinks(e) {
return this
}
recordException(e, t) {}
}
function uv(e) {
if (!e || 0 === e.length) return;
const t = {};
return e.forEach((e => {
const n = e.attributes || {},
r = n[mr],
i = n[gr];
"string" === typeof r && "number" === typeof i && (t[e.name] = {
value: i,
unit: r
})
})), t
}
const dv = "_sentryScope",
pv = "_sentryIsolationScope";
function hv(e) {
return {
scope: e[dv],
isolationScope: e[pv]
}
}
class fv {
constructor(e = {}) {
this._traceId = e.traceId || dn(), this._spanId = e.spanId || dn().substring(16), this._startTime = e.startTimestamp || bn(), this._attributes = {}, this.setAttributes({
[hr]: "manual",
[pr]: e.op,
...e.attributes
}), this._name = e.name, e.parentSpanId && (this._parentSpanId = e.parentSpanId), "sampled" in e && (this._sampled = e.sampled), e.endTimestamp && (this._endTime = e.endTimestamp), this._events = [], this._isStandaloneSpan = e.isStandalone, this._endTime && this._onSpanEnded()
}
addLink(e) {
return this
}
addLinks(e) {
return this
}
recordException(e, t) {}
spanContext() {
const {
_spanId: e,
_traceId: t,
_sampled: n
} = this;
return {
spanId: e,
traceId: t,
traceFlags: n ? 1 : 0
}
}
setAttribute(e, t) {
return void 0 === t ? delete this._attributes[e] : this._attributes[e] = t, this
}
setAttributes(e) {
return Object.keys(e).forEach((t => this.setAttribute(t, e[t]))), this
}
updateStartTime(e) {
this._startTime = Or(e)
}
setStatus(e) {
return this._status = e, this
}
updateName(e) {
return this._name = e, this
}
end(e) {
this._endTime || (this._endTime = Or(e), function(e) {
if (!nr) return;
const {
description: t = "< unknown name >",
op: n = "< unknown op >"
} = Ar(e), {
spanId: r
} = e.spanContext(), i = `[Tracing] Finishing "${n}" ${Mr(e)===e?"root ":""}span "${t}" with ID ${r}`;
Qt.log(i)
}(this), this._onSpanEnded())
}
getSpanJSON() {
return cn({
data: this._attributes,
description: this._name,
op: this._attributes[pr],
parent_span_id: this._parentSpanId,
span_id: this._spanId,
start_timestamp: this._startTime,
status: Tr(this._status),
timestamp: this._endTime,
trace_id: this._traceId,
origin: this._attributes[hr],
_metrics_summary: kr(this),
profile_id: this._attributes["sentry.profile_id"],
exclusive_time: this._attributes[vr],
measurements: uv(this._events),
is_segment: this._isStandaloneSpan && Mr(this) === this || void 0,
segment_id: this._isStandaloneSpan ? Mr(this).spanContext().spanId : void 0
})
}
isRecording() {
return !this._endTime && !!this._sampled
}
addEvent(e, t, n) {
nr && Qt.log("[Tracing] Adding an event to span:", e);
const r = mv(t) ? t : n || bn(),
i = mv(t) ? {} : t || {},
a = {
name: e,
time: Or(r),
attributes: i
};
return this._events.push(a), this
}
isStandaloneSpan() {
return !!this._isStandaloneSpan
}
_onSpanEnded() {
const e = zn();
e && e.emit("spanEnd", this);
if (!(this._isStandaloneSpan || this === Mr(this))) return;
if (this._isStandaloneSpan) return void(this._sampled ? function(e) {
const t = zn();
if (!t) return;
const n = e[1];
if (!n || 0 === n.length) return void t.recordDroppedEvent("before_send", "span");
const r = t.getTransport();
r && r.send(e).then(null, (e => {
nr && Qt.error("Error while sending span:", e)
}))
}(function(e, t) {
const n = Ur(e[0]),
r = t && t.getDsn(),
i = t && t.getOptions().tunnel,
a = {
sent_at: (new Date).toISOString(),
... function(e) {
return !!e.trace_id && !!e.public_key
}(n) && {
trace: n
},
...!!i && r && {
dsn: yi(r)
}
},
o = t && t.getOptions().beforeSendSpan,
s = o ? e => o(Ar(e)) : e => Ar(e),
l = [];
for (const c of e) {
const e = s(c);
e && l.push(Bi(e))
}
return ji(a, l)
}([this], e)) : (nr && Qt.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."), e && e.recordDroppedEvent("sample_rate", "span")));
const t = this._convertSpanToTransaction();
if (t) {
(hv(this).scope || Mn()).captureEvent(t)
}
}
_convertSpanToTransaction() {
if (!gv(Ar(this))) return;
this._name || (nr && Qt.warn("Transaction has no name, falling back to `<unlabeled transaction>`."), this._name = "<unlabeled transaction>");
const {
scope: e,
isolationScope: t
} = hv(this), n = (e || Mn()).getClient() || zn();
if (!0 !== this._sampled) return nr && Qt.log("[Tracing] Discarding transaction because its trace was not chosen to be sampled."), void(n && n.recordDroppedEvent("sample_rate", "transaction"));
const r = Nr(this).filter((e => e !== this && ! function(e) {
return e instanceof fv && e.isStandaloneSpan()
}(e))).map((e => Ar(e))).filter(gv),
i = this._attributes[ur],
a = {
contexts: {
trace: Sr(this)
},
spans: r.length > 1e3 ? r.sort(((e, t) => e.start_timestamp - t.start_timestamp)).slice(0, 1e3) : r,
start_timestamp: this._startTime,
timestamp: this._endTime,
transaction: this._name,
type: "transaction",
sdkProcessingMetadata: {
capturedSpanScope: e,
capturedSpanIsolationScope: t,
...cn({
dynamicSamplingContext: Ur(this)
})
},
_metrics_summary: kr(this),
...i && {
transaction_info: {
source: i
}
}
},
o = uv(this._events);
return o && Object.keys(o).length && (nr && Qt.log("[Measurements] Adding measurements to transaction event", JSON.stringify(o, void 0, 2)), a.measurements = o), a
}
}
function mv(e) {
return e && "number" === typeof e || e instanceof Date || Array.isArray(e)
}
function gv(e) {
return !!e.start_timestamp && !!e.timestamp && !!e.span_id && !!e.trace_id
}
const vv = "__SENTRY_SUPPRESS_TRACING__";
function yv(e) {
const t = kv();
if (t.startInactiveSpan) return t.startInactiveSpan(e);
const n = xv(e),
{
forceTransaction: r,
parentSpan: i
} = e;
return (e.scope ? t => Fn(e.scope, t) : void 0 !== i ? e => _v(i, e) : e => e())((() => {
const t = Mn(),
i = Sv(t);
return e.onlyIfParent && !i ? new cv : bv({
parentSpan: i,
spanArguments: n,
forceTransaction: r,
scope: t
})
}))
}
function _v(e, t) {
const n = kv();
return n.withActiveSpan ? n.withActiveSpan(e, t) : Fn((n => (In(n, e || void 0), t(n))))
}
function bv({
parentSpan: e,
spanArguments: t,
forceTransaction: n,
scope: r
}) {
if (!lv()) return new cv;
const i = jn();
let a;
if (e && !n) a = function(e, t, n) {
const {
spanId: r,
traceId: i
} = e.spanContext(), a = !t.getScopeData().sdkProcessingMetadata[vv] && Pr(e), o = a ? new fv({
...n,
parentSpanId: r,
traceId: i,
sampled: a
}) : new cv({
traceId: i
});
Lr(e, o);
const s = zn();
s && (s.emit("spanStart", o), n.endTimestamp && s.emit("spanEnd", o));
return o
}(e, r, t), Lr(e, a);
else if (e) {
const n = Ur(e),
{
traceId: i,
spanId: o
} = e.spanContext(),
s = Pr(e);
a = wv({
traceId: i,
parentSpanId: o,
...t
}, r, s), zr(a, n)
} else {
const {
traceId: e,
dsc: n,
parentSpanId: o,
sampled: s
} = {
...i.getPropagationContext(),
...r.getPropagationContext()
};
a = wv({
traceId: e,
parentSpanId: o,
...t
}, r, s), n && zr(a, n)
}
return function(e) {
if (!nr) return;
const {
description: t = "< unknown name >",
op: n = "< unknown op >",
parent_span_id: r
} = Ar(e), {
spanId: i
} = e.spanContext(), a = Pr(e), o = Mr(e), s = o === e, l = `[Tracing] Starting ${a?"sampled":"unsampled"} ${s?"root ":""}span`, c = [`op: ${n}`, `name: ${t}`, `ID: ${i}`];
if (r && c.push(`parent ID: ${r}`), !s) {
const {
op: e,
description: t
} = Ar(o);
c.push(`root ID: ${o.spanContext().spanId}`), e && c.push(`root op: ${e}`), t && c.push(`root description: ${t}`)
}
Qt.log(`${l}\n ${c.join("\n ")}`)
}(a),
function(e, t, n) {
e && (nn(e, pv, n), nn(e, dv, t))
}(a, r, i), a
}
function xv(e) {
const t = {
isStandalone: (e.experimental || {}).standalone,
...e
};
if (e.startTime) {
const n = {
...t
};
return n.startTimestamp = Or(e.startTime), delete n.startTime, n
}
return t
}
function kv() {
return Nn(It())
}
function wv(e, t, n) {
const r = zn(),
i = r && r.getOptions() || {},
{
name: a = "",
attributes: o
} = e,
[s, l] = t.getScopeData().sdkProcessingMetadata[vv] ? [!1] : function(e, t) {
if (!lv(e)) return [!1];
let n;
n = "function" === typeof e.tracesSampler ? e.tracesSampler(t) : void 0 !== t.parentSampled ? t.parentSampled : "undefined" !== typeof e.tracesSampleRate ? e.tracesSampleRate : 1;
const r = Yi(n);
return void 0 === r ? (nr && Qt.warn("[Tracing] Discarding transaction because of invalid sample rate."), [!1]) : r ? Math.random() < r ? [!0, r] : (nr && Qt.log(`[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = ${Number(n)})`), [!1, r]) : (nr && Qt.log("[Tracing] Discarding transaction because " + ("function" === typeof e.tracesSampler ? "tracesSampler returned 0 or false" : "a negative sampling decision was inherited or tracesSampleRate is set to 0")), [!1, r])
}(i, {
name: a,
parentSampled: n,
attributes: o,
transactionContext: {
name: a,
parentSampled: n
}
}),
c = new fv({
...e,
attributes: {
[ur]: "custom",
...e.attributes
},
sampled: s
});
return void 0 !== l && c.setAttribute(dr, l), r && r.emit("spanStart", c), c
}
function Sv(e) {
const t = On(e);
if (!t) return;
const n = zn();
return (n ? n.getOptions() : {}).parentSpanIsAlwaysRootSpan ? Mr(t) : t
}
const Ev = (e, t, n, r) => {
let i, a;
return o => {
t.value >= 0 && (o || r) && (a = t.value - (i || 0), (a || void 0 === i) && (i = t.value, t.delta = a, t.rating = ((e, t) => e > t[1] ? "poor" : e > t[0] ? "needs-improvement" : "good")(t.value, n), e(t)))
}
},
Iv = () => Di.performance && performance.getEntriesByType && performance.getEntriesByType("navigation")[0],
Ov = () => {
const e = Iv();
return e && e.activationStart || 0
},
Cv = (e, t) => {
const n = Iv();
let r = "navigate";
n && (Di.document && Di.document.prerendering || Ov() > 0 ? r = "prerender" : Di.document && Di.document.wasDiscarded ? r = "restore" : n.type && (r = n.type.replace(/_/g, "-")));
return {
name: e,
value: "undefined" === typeof t ? -1 : t,
rating: "good",
delta: 0,
entries: [],
id: `v3-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,
navigationType: r
}
},
Av = (e, t, n) => {
try {
if (PerformanceObserver.supportedEntryTypes.includes(e)) {
const r = new PerformanceObserver((e => {
Promise.resolve().then((() => {
t(e.getEntries())
}))
}));
return r.observe(Object.assign({
type: e,
buffered: !0
}, n || {})), r
}
} catch (r) {}
},
Pv = e => {
const t = t => {
("pagehide" === t.type || Di.document && "hidden" === Di.document.visibilityState) && e(t)
};
Di.document && (addEventListener("visibilitychange", t, !0), addEventListener("pagehide", t, !0))
},
Tv = e => {
let t = !1;
return n => {
t || (e(n), t = !0)
}
};
let Rv = -1;
const Dv = e => {
"hidden" === Di.document.visibilityState && Rv > -1 && (Rv = "visibilitychange" === e.type ? e.timeStamp : 0, removeEventListener("visibilitychange", Dv, !0), removeEventListener("prerenderingchange", Dv, !0))
},
Lv = () => (Di.document && Rv < 0 && (Rv = "hidden" !== Di.document.visibilityState || Di.document.prerendering ? 1 / 0 : 0, addEventListener("visibilitychange", Dv, !0), addEventListener("prerenderingchange", Dv, !0)), {
get firstHiddenTime() {
return Rv
}
}),
Nv = e => {
Di.document && Di.document.prerendering ? addEventListener("prerenderingchange", (() => e()), !0) : e()
},
Mv = [1800, 3e3],
jv = [.1, .25],
Fv = (e, t = {}) => {
((e, t = {}) => {
Nv((() => {
const n = Lv(),
r = Cv("FCP");
let i;
const a = Av("paint", (e => {
e.forEach((e => {
"first-contentful-paint" === e.name && (a.disconnect(), e.startTime < n.firstHiddenTime && (r.value = Math.max(e.startTime - Ov(), 0), r.entries.push(e), i(!0)))
}))
}));
a && (i = Ev(e, r, Mv, t.reportAllChanges))
}))
})(Tv((() => {
const n = Cv("CLS", 0);
let r, i = 0,
a = [];
const o = e => {
e.forEach((e => {
if (!e.hadRecentInput) {
const t = a[0],
n = a[a.length - 1];
i && t && n && e.startTime - n.startTime < 1e3 && e.startTime - t.startTime < 5e3 ? (i += e.value, a.push(e)) : (i = e.value, a = [e])
}
})), i > n.value && (n.value = i, n.entries = a, r())
},
s = Av("layout-shift", o);
s && (r = Ev(e, n, jv, t.reportAllChanges), Pv((() => {
o(s.takeRecords()), r(!0)
})), setTimeout(r, 0))
})))
},
zv = [100, 300];
let Vv = 0,
Uv = 1 / 0,
Bv = 0;
const Gv = e => {
e.forEach((e => {
e.interactionId && (Uv = Math.min(Uv, e.interactionId), Bv = Math.max(Bv, e.interactionId), Vv = Bv ? (Bv - Uv) / 7 + 1 : 0)
}))
};
let Wv;
const $v = () => {
"interactionCount" in performance || Wv || (Wv = Av("event", Gv, {
type: "event",
buffered: !0,
durationThreshold: 0
}))
},
qv = [200, 500],
Hv = () => (Wv ? Vv : performance.interactionCount || 0) - 0,
Kv = [],
Yv = {},
Qv = e => {
const t = Kv[Kv.length - 1],
n = Yv[e.interactionId];
if (n || Kv.length < 10 || t && e.duration > t.latency) {
if (n) n.entries.push(e), n.latency = Math.max(n.latency, e.duration);
else {
const t = {
id: e.interactionId,
latency: e.duration,
entries: [e]
};
Yv[t.id] = t, Kv.push(t)
}
Kv.sort(((e, t) => t.latency - e.latency)), Kv.splice(10).forEach((e => {
delete Yv[e.id]
}))
}
},
Zv = (e, t = {}) => {
Nv((() => {
$v();
const n = Cv("INP");
let r;
const i = e => {
e.forEach((e => {
if (e.interactionId && Qv(e), "first-input" === e.entryType) {
!Kv.some((t => t.entries.some((t => e.duration === t.duration && e.startTime === t.startTime)))) && Qv(e)
}
}));
const t = (() => {
const e = Math.min(Kv.length - 1, Math.floor(Hv() / 50));
return Kv[e]
})();
t && t.latency !== n.value && (n.value = t.latency, n.entries = t.entries, r())
},
a = Av("event", i, {
durationThreshold: null != t.durationThreshold ? t.durationThreshold : 40
});
r = Ev(e, n, qv, t.reportAllChanges), a && ("PerformanceEventTiming" in Di && "interactionId" in PerformanceEventTiming.prototype && a.observe({
type: "first-input",
buffered: !0
}), Pv((() => {
i(a.takeRecords()), n.value < 0 && Hv() > 0 && (n.value = 0, n.entries = []), r(!0)
})))
}))
},
Xv = [2500, 4e3],
Jv = {},
ey = [800, 1800],
ty = e => {
Di.document && Di.document.prerendering ? Nv((() => ty(e))) : Di.document && "complete" !== Di.document.readyState ? addEventListener("load", (() => ty(e)), !0) : setTimeout(e, 0)
},
ny = {},
ry = {};
let iy, ay, oy, sy, ly;
function cy(e, t = !1) {
return by("cls", e, my, iy, t)
}
function uy(e, t = !1) {
return by("lcp", e, vy, oy, t)
}
function dy(e) {
return by("fid", e, gy, ay)
}
function py(e) {
return by("inp", e, _y, ly)
}
function hy(e, t) {
return xy(e, t), ry[e] || (! function(e) {
const t = {};
"event" === e && (t.durationThreshold = 0);
Av(e, (t => {
fy(e, {
entries: t
})
}), t)
}(e), ry[e] = !0), ky(e, t)
}
function fy(e, t) {
const n = ny[e];
if (n && n.length)
for (const i of n) try {
i(t)
} catch (r) {
mo && Qt.error(`Error while triggering instrumentation handler.\nType: ${e}\nName: ${Hn(i)}\nError:`, r)
}
}
function my() {
return Fv((e => {
fy("cls", {
metric: e
}), iy = e
}), {
reportAllChanges: !0
})
}
function gy() {
return ((e, t = {}) => {
Nv((() => {
const n = Lv(),
r = Cv("FID");
let i;
const a = e => {
e.startTime < n.firstHiddenTime && (r.value = e.processingStart - e.startTime, r.entries.push(e), i(!0))
},
o = e => {
e.forEach(a)
},
s = Av("first-input", o);
i = Ev(e, r, zv, t.reportAllChanges), s && Pv(Tv((() => {
o(s.takeRecords()), s.disconnect()
})))
}))
})((e => {
fy("fid", {
metric: e
}), ay = e
}))
}
function vy() {
return ((e, t = {}) => {
Nv((() => {
const n = Lv(),
r = Cv("LCP");
let i;
const a = e => {
const t = e[e.length - 1];
t && t.startTime < n.firstHiddenTime && (r.value = Math.max(t.startTime - Ov(), 0), r.entries = [t], i())
},
o = Av("largest-contentful-paint", a);
if (o) {
i = Ev(e, r, Xv, t.reportAllChanges);
const n = Tv((() => {
Jv[r.id] || (a(o.takeRecords()), o.disconnect(), Jv[r.id] = !0, i(!0))
}));
["keydown", "click"].forEach((e => {
Di.document && addEventListener(e, (() => setTimeout(n, 0)), !0)
})), Pv(n)
}
}))
})((e => {
fy("lcp", {
metric: e
}), oy = e
}), {
reportAllChanges: !0
})
}
function yy() {
return ((e, t = {}) => {
const n = Cv("TTFB"),
r = Ev(e, n, ey, t.reportAllChanges);
ty((() => {
const e = Iv();
if (e) {
const t = e.responseStart;
if (t <= 0 || t > performance.now()) return;
n.value = Math.max(t - Ov(), 0), n.entries = [e], r(!0)
}
}))
})((e => {
fy("ttfb", {
metric: e
}), sy = e
}))
}
function _y() {
return Zv((e => {
fy("inp", {
metric: e
}), ly = e
}))
}
function by(e, t, n, r, i = !1) {
let a;
return xy(e, t), ry[e] || (a = n(), ry[e] = !0), r && t({
metric: r
}), ky(e, t, i ? a : void 0)
}
function xy(e, t) {
ny[e] = ny[e] || [], ny[e].push(t)
}
function ky(e, t, n) {
return () => {
n && n();
const r = ny[e];
if (!r) return;
const i = r.indexOf(t); - 1 !== i && r.splice(i, 1)
}
}
function wy(e) {
return "number" === typeof e && isFinite(e)
}
function Sy(e, t, n, {
...r
}) {
const i = Ar(e).start_timestamp;
return i && i > t && "function" === typeof e.updateStartTime && e.updateStartTime(t), _v(e, (() => {
const e = yv({
startTime: t,
...r
});
return e && e.end(n), e
}))
}
function Ey() {
return Di && Di.addEventListener && Di.performance
}
function Iy(e) {
return e / 1e3
}
let Oy, Cy, Ay = 0,
Py = {};
function Ty() {
const e = Ey();
if (e && kn) {
e.mark && Di.performance.mark("sentry-tracing-init");
const t = dy((({
metric: e
}) => {
const t = e.entries[e.entries.length - 1];
if (!t) return;
const n = Iy(kn),
r = Iy(t.startTime);
mo && Qt.log("[Measurements] Adding FID"), Py.fid = {
value: e.value,
unit: "millisecond"
}, Py["mark.fid"] = {
value: n + r,
unit: "second"
}
})),
n = cy((({
metric: e
}) => {
const t = e.entries[e.entries.length - 1];
t && (mo && Qt.log("[Measurements] Adding CLS"), Py.cls = {
value: e.value,
unit: ""
}, Cy = t)
}), !0),
r = uy((({
metric: e
}) => {
const t = e.entries[e.entries.length - 1];
t && (mo && Qt.log("[Measurements] Adding LCP"), Py.lcp = {
value: e.value,
unit: "millisecond"
}, Oy = t)
}), !0),
i = function() {
return e = ({
metric: e
}) => {
e.entries[e.entries.length - 1] && (mo && Qt.log("[Measurements] Adding TTFB"), Py.ttfb = {
value: e.value,
unit: "millisecond"
})
}, by("ttfb", e, yy, sy);
var e
}();
return () => {
t(), n(), r(), i()
}
}
return () => {}
}
function Ry(e) {
const t = Ey();
if (!t || !Di.performance.getEntries || !kn) return;
mo && Qt.log("[Tracing] Adding & adjusting spans using Performance API");
const n = Iy(kn),
r = t.getEntries(),
{
op: i,
start_timestamp: a
} = Ar(e);
if (r.slice(Ay).forEach((t => {
const r = Iy(t.startTime),
o = Iy(Math.max(0, t.duration));
if (!("navigation" === i && a && n + r < a)) switch (t.entryType) {
case "navigation":
! function(e, t, n) {
["unloadEvent", "redirect", "domContentLoadedEvent", "loadEvent", "connect"].forEach((r => {
Dy(e, t, r, n)
})), Dy(e, t, "secureConnection", n, "TLS/SSL", "connectEnd"), Dy(e, t, "fetch", n, "cache", "domainLookupStart"), Dy(e, t, "domainLookup", n, "DNS"),
function(e, t, n) {
const r = n + Iy(t.requestStart),
i = n + Iy(t.responseEnd),
a = n + Iy(t.responseStart);
t.responseEnd && (Sy(e, r, i, {
op: "browser",
name: "request",
attributes: {
[hr]: "auto.ui.browser.metrics"
}
}), Sy(e, a, i, {
op: "browser",
name: "response",
attributes: {
[hr]: "auto.ui.browser.metrics"
}
}))
}(e, t, n)
}(e, t, n);
break;
case "mark":
case "paint":
case "measure": {
! function(e, t, n, r, i) {
const a = Iv(),
o = Iy(a ? a.requestStart : 0),
s = i + Math.max(n, o),
l = i + n,
c = l + r,
u = {
[hr]: "auto.resource.browser.metrics"
};
s !== l && (u["sentry.browser.measure_happened_before_request"] = !0, u["sentry.browser.measure_start_time"] = s);
Sy(e, s, c, {
name: t.name,
op: t.entryType,
attributes: u
})
}(e, t, r, o, n);
const i = Lv(),
a = t.startTime < i.firstHiddenTime;
"first-paint" === t.name && a && (mo && Qt.log("[Measurements] Adding FP"), Py.fp = {
value: t.startTime,
unit: "millisecond"
}), "first-contentful-paint" === t.name && a && (mo && Qt.log("[Measurements] Adding FCP"), Py.fcp = {
value: t.startTime,
unit: "millisecond"
});
break
}
case "resource":
! function(e, t, n, r, i, a) {
if ("xmlhttprequest" === t.initiatorType || "fetch" === t.initiatorType) return;
const o = Na(n),
s = {
[hr]: "auto.resource.browser.metrics"
};
Ly(s, t, "transferSize", "http.response_transfer_size"), Ly(s, t, "encodedBodySize", "http.response_content_length"), Ly(s, t, "decodedBodySize", "http.decoded_response_content_length"), "renderBlockingStatus" in t && (s["resource.render_blocking_status"] = t.renderBlockingStatus);
o.protocol && (s["url.scheme"] = o.protocol.split(":").pop());
o.host && (s["server.address"] = o.host);
s["url.same_origin"] = n.includes(Di.location.origin);
const l = a + r,
c = l + i;
Sy(e, l, c, {
name: n.replace(Di.location.origin, ""),
op: t.initiatorType ? `resource.${t.initiatorType}` : "resource.other",
attributes: s
})
}(e, t, t.name, r, o, n)
}
})), Ay = Math.max(r.length - 1, 0), function(e) {
const t = Di.navigator;
if (!t) return;
const n = t.connection;
n && (n.effectiveType && e.setAttribute("effectiveConnectionType", n.effectiveType), n.type && e.setAttribute("connectionType", n.type), wy(n.rtt) && (Py["connection.rtt"] = {
value: n.rtt,
unit: "millisecond"
}));
wy(t.deviceMemory) && e.setAttribute("deviceMemory", `${t.deviceMemory} GB`);
wy(t.hardwareConcurrency) && e.setAttribute("hardwareConcurrency", String(t.hardwareConcurrency))
}(e), "pageload" === i) {
! function(e) {
const t = Iv();
if (!t) return;
const {
responseStart: n,
requestStart: r
} = t;
r <= n && (mo && Qt.log("[Measurements] Adding TTFB Request Time"), e["ttfb.requestTime"] = {
value: n - r,
unit: "millisecond"
})
}(Py), ["fcp", "fp", "lcp"].forEach((e => {
const t = Py[e];
if (!t || !a || n >= a) return;
const r = t.value,
i = n + Iy(r),
o = Math.abs(1e3 * (i - a)),
s = o - r;
mo && Qt.log(`[Measurements] Normalized ${e} from ${r} to ${o} (${s})`), t.value = o
}));
const t = Py["mark.fid"];
t && Py.fid && (Sy(e, t.value, t.value + Iy(Py.fid.value), {
name: "first input delay",
op: "ui.action",
attributes: {
[hr]: "auto.ui.browser.metrics"
}
}), delete Py["mark.fid"]), "fcp" in Py || delete Py.cls, Object.entries(Py).forEach((([e, t]) => {
! function(e, t, n) {
const r = jr(),
i = r && Mr(r);
i && i.addEvent(e, {
[gr]: t,
[mr]: n
})
}(e, t.value, t.unit)
})),
function(e) {
Oy && (mo && Qt.log("[Measurements] Adding LCP Data"), Oy.element && e.setAttribute("lcp.element", Bt(Oy.element)), Oy.id && e.setAttribute("lcp.id", Oy.id), Oy.url && e.setAttribute("lcp.url", Oy.url.trim().slice(0, 200)), e.setAttribute("lcp.size", Oy.size));
Cy && Cy.sources && (mo && Qt.log("[Measurements] Adding CLS Data"), Cy.sources.forEach(((t, n) => e.setAttribute(`cls.source.${n+1}`, Bt(t.node)))))
}(e)
}
Oy = void 0, Cy = void 0, Py = {}
}
function Dy(e, t, n, r, i, a) {
const o = a ? t[a] : t[`${n}End`],
s = t[`${n}Start`];
s && o && Sy(e, r + Iy(s), r + Iy(o), {
op: "browser",
name: i || n,
attributes: {
[hr]: "auto.ui.browser.metrics"
}
})
}
function Ly(e, t, n, r) {
const i = t[n];
null != i && i < 2147483647 && (e[r] = i)
}
const Ny = [],
My = new Map;
function jy() {
if (Ey() && kn) {
const e = py((({
metric: e
}) => {
const t = zn();
if (!t || void 0 == e.value) return;
const n = e.entries.find((t => t.duration === e.value && Fy[t.name]));
if (!n) return;
const {
interactionId: r
} = n, i = Fy[n.name], a = t.getOptions(), o = Iy(kn + n.startTime), s = Iy(e.value), l = Mn(), c = jr(), u = c ? Mr(c) : void 0, d = (null != r ? My.get(r) : void 0) || u, p = d ? Ar(d).description : l.getScopeData().transactionName, h = l.getUser(), f = t.getIntegrationByName("Replay"), m = f && f.getReplayId(), g = void 0 !== h ? h.email || h.id || h.ip_address : void 0;
let v;
try {
v = l.getScopeData().contexts.profile.profile_id
} catch (_) {}
const y = yv({
name: Bt(n.target),
op: `ui.interaction.${i}`,
attributes: cn({
release: a.release,
environment: a.environment,
transaction: p,
[vr]: e.value,
[hr]: "auto.http.browser.inp",
user: g || void 0,
profile_id: v || void 0,
replay_id: m || void 0,
"user_agent.original": Di.navigator && Di.navigator.userAgent
}),
startTime: o,
experimental: {
standalone: !0
}
});
y.addEvent("inp", {
[mr]: "millisecond",
[gr]: e.value
}), y.end(o + s)
}));
return () => {
e()
}
}
return () => {}
}
const Fy = {
click: "click",
pointerdown: "click",
pointerup: "click",
mousedown: "click",
mouseup: "click",
touchstart: "click",
touchend: "click",
mouseover: "hover",
mouseout: "hover",
mouseenter: "hover",
mouseleave: "hover",
pointerover: "hover",
pointerout: "hover",
pointerenter: "hover",
pointerleave: "hover",
dragstart: "drag",
dragend: "drag",
drag: "drag",
dragenter: "drag",
dragleave: "drag",
dragover: "drag",
drop: "drag",
keydown: "press",
keyup: "press",
keypress: "press",
input: "press"
};
const zy = {
idleTimeout: 1e3,
finalTimeout: 3e4,
childSpanTimeout: 15e3
};
function Vy(e, t = {}) {
const n = new Map;
let r, i = !1,
a = "externalFinish",
o = !t.disableAutoFinish;
const s = [],
{
idleTimeout: l = zy.idleTimeout,
finalTimeout: c = zy.finalTimeout,
childSpanTimeout: u = zy.childSpanTimeout,
beforeSpanEnd: d
} = t,
p = zn();
if (!p || !lv()) return new cv;
const h = Mn(),
f = jr(),
m = function(e) {
const t = yv(e);
return In(Mn(), t), nr && Qt.log("[Tracing] Started span is an idle span"), t
}(e);
function g() {
r && (clearTimeout(r), r = void 0)
}
function v(e) {
g(), r = setTimeout((() => {
!i && 0 === n.size && o && (a = "idleTimeout", m.end(e))
}), l)
}
function y(e) {
r = setTimeout((() => {
!i && o && (a = "heartbeatFailed", m.end(e))
}), u)
}
function _(e) {
i = !0, n.clear(), s.forEach((e => e())), In(h, f);
const t = Ar(m),
{
start_timestamp: r
} = t;
if (!r) return;
(t.data || {})[fr] || m.setAttribute(fr, a), Qt.log(`[Tracing] Idle span "${t.op}" finished`);
const o = Nr(m).filter((e => e !== m));
let u = 0;
o.forEach((t => {
t.isRecording() && (t.setStatus({
code: 2,
message: "cancelled"
}), t.end(e), nr && Qt.log("[Tracing] Cancelling span since span ended early", JSON.stringify(t, void 0, 2)));
const n = Ar(t),
{
timestamp: r = 0,
start_timestamp: i = 0
} = n,
a = i <= e,
o = r - i <= (c + l) / 1e3;
if (nr) {
const e = JSON.stringify(t, void 0, 2);
a ? o || Qt.log("[Tracing] Discarding span since it finished after idle span final timeout", e) : Qt.log("[Tracing] Discarding span since it happened after idle span was finished", e)
}
o && a || (! function(e, t) {
e[Rr] && e[Rr].delete(t)
}(m, t), u++)
})), u > 0 && m.setAttribute("sentry.idle_span_discarded_spans", u)
}
return m.end = new Proxy(m.end, {
apply(e, t, n) {
d && d(m);
const [r, ...i] = n, a = Or(r || bn()), o = Nr(m).filter((e => e !== m));
if (!o.length) return _(a), Reflect.apply(e, t, [a, ...i]);
const s = o.map((e => Ar(e).timestamp)).filter((e => !!e)),
l = s.length ? Math.max(...s) : void 0,
u = Ar(m).start_timestamp,
p = Math.min(u ? u + c / 1e3 : 1 / 0, Math.max(u || -1 / 0, Math.min(a, l || 1 / 0)));
return _(p), Reflect.apply(e, t, [p, ...i])
}
}), s.push(p.on("spanStart", (e => {
if (i || e === m || Ar(e).timestamp) return;
var t;
Nr(m).includes(e) && (t = e.spanContext().spanId, g(), n.set(t, !0), y(bn() + u / 1e3))
}))), s.push(p.on("spanEnd", (e => {
var t;
i || (t = e.spanContext().spanId, n.has(t) && n.delete(t), 0 === n.size && v(bn() + l / 1e3))
}))), s.push(p.on("idleSpanEnableAutoFinish", (e => {
e === m && (o = !0, v(), n.size && y())
}))), t.disableAutoFinish || v(), setTimeout((() => {
i || (m.setStatus({
code: 2,
message: "deadline_exceeded"
}), a = "finalTimeout", m.end())
}), c), m
}
let Uy = !1;
function By() {
const e = jr(),
t = e && Mr(e);
if (t) {
const e = "internal_error";
nr && Qt.log(`[Tracing] Root span: ${e} -> Global error occured`), t.setStatus({
code: 2,
message: e
})
}
}
function Gy(e, t, n, r, i = "auto.http.browser") {
if (!e.fetchData) return;
const a = lv() && t(e.fetchData.url);
if (e.endTimestamp && a) {
const t = e.fetchData.__span;
if (!t) return;
const n = r[t];
return void(n && (! function(e, t) {
if (t.response) {
wr(e, t.response.status);
const n = t.response && t.response.headers && t.response.headers.get("content-length");
if (n) {
const t = parseInt(n);
t > 0 && e.setAttribute("http.response_content_length", t)
}
} else t.error && e.setStatus({
code: 2,
message: "internal_error"
});
e.end()
}(n, e), delete r[t]))
}
const o = Mn(),
s = zn(),
{
method: l,
url: c
} = e.fetchData,
u = function(e) {
try {
return new URL(e).href
} catch (t) {
return
}
}(c),
d = u ? Na(u).host : void 0,
p = !!jr(),
h = a && p ? yv({
name: `${l} ${c}`,
attributes: {
url: c,
type: "fetch",
"http.method": l,
"http.url": u,
"server.address": d,
[hr]: i,
[pr]: "http.client"
}
}) : new cv;
if (e.fetchData.__span = h.spanContext().spanId, r[h.spanContext().spanId] = h, n(e.fetchData.url) && s) {
const t = e.args[0];
e.args[1] = e.args[1] || {};
const n = e.args[1];
n.headers = function(e, t, n, r, i) {
const a = jn(),
{
traceId: o,
spanId: s,
sampled: l,
dsc: c
} = {
...a.getPropagationContext(),
...n.getPropagationContext()
},
u = i ? Ir(i) : br(o, s, l),
d = lr(c || (i ? Ur(i) : Vr(o, t))),
p = r.headers || ("undefined" !== typeof Request && zt(e, Request) ? e.headers : void 0);
if (p) {
if ("undefined" !== typeof Headers && zt(p, Headers)) {
const e = new Headers(p);
return e.append("sentry-trace", u), d && e.append(ir, d), e
}
if (Array.isArray(p)) {
const e = [...p, ["sentry-trace", u]];
return d && e.push([ir, d]), e
} {
const e = "baggage" in p ? p.baggage : void 0,
t = [];
return Array.isArray(e) ? t.push(...e) : e && t.push(e), d && t.push(d), {
...p,
"sentry-trace": u,
baggage: t.length > 0 ? t.join(",") : void 0
}
}
}
return {
"sentry-trace": u,
baggage: d
}
}(t, s, o, n, lv() && p ? h : void 0)
}
return h
}
By.tag = "sentry_tracingErrorCallback";
const Wy = {
traceFetch: !0,
traceXHR: !0,
enableHTTPTimings: !0
};
function $y(e) {
const {
traceFetch: t,
traceXHR: n,
shouldCreateSpanForRequest: r,
enableHTTPTimings: i,
tracePropagationTargets: a
} = {
traceFetch: Wy.traceFetch,
traceXHR: Wy.traceXHR,
...e
}, o = "function" === typeof r ? r : e => !0, s = e => function(e, t) {
const n = da.location && da.location.href;
if (n) {
let i, a;
try {
i = new URL(e, n), a = new URL(n).origin
} catch (r) {
return !1
}
const o = i.origin === a;
return t ? en(i.toString(), t) || o && en(i.pathname, t) : o
} {
const n = !!e.match(/^\/(?!\/)/);
return t ? en(e, t) : n
}
}(e, a), l = {};
t && Aa((e => {
const t = Gy(e, o, s, l);
if (t) {
const n = Ky(e.fetchData.url),
r = n ? Na(n).host : void 0;
t.setAttributes({
"http.url": n,
"server.address": r
})
}
i && t && qy(t)
})), n && Sa((e => {
const t = function(e, t, n, r) {
const i = e.xhr,
a = i && i[wa];
if (!i || i.__sentry_own_request__ || !a) return;
const o = lv() && t(a.url);
if (e.endTimestamp && o) {
const e = i.__sentry_xhr_span_id__;
if (!e) return;
const t = r[e];
return void(t && void 0 !== a.status_code && (wr(t, a.status_code), t.end(), delete r[e]))
}
const s = Ky(a.url),
l = s ? Na(s).host : void 0,
c = !!jr(),
u = o && c ? yv({
name: `${a.method} ${a.url}`,
attributes: {
type: "xhr",
"http.method": a.method,
"http.url": s,
url: a.url,
"server.address": l,
[hr]: "auto.http.browser",
[pr]: "http.client"
}
}) : new cv;
i.__sentry_xhr_span_id__ = u.spanContext().spanId, r[i.__sentry_xhr_span_id__] = u;
const d = zn();
i.setRequestHeader && n(a.url) && d && function(e, t, n) {
const r = Mn(),
i = jn(),
{
traceId: a,
spanId: o,
sampled: s,
dsc: l
} = {
...i.getPropagationContext(),
...r.getPropagationContext()
},
c = n && lv() ? Ir(n) : br(a, o, s),
u = lr(l || (n ? Ur(n) : Vr(a, t)));
! function(e, t, n) {
try {
e.setRequestHeader("sentry-trace", t), n && e.setRequestHeader(ir, n)
} catch (No) {}
}(e, c, u)
}(i, d, lv() && c ? u : void 0);
return u
}(e, o, s, l);
i && t && qy(t)
}))
}
function qy(e) {
const {
url: t
} = Ar(e).data || {};
if (!t || "string" !== typeof t) return;
const n = hy("resource", (({
entries: r
}) => {
r.forEach((r => {
if (function(e) {
return "resource" === e.entryType && "initiatorType" in e && "string" === typeof e.nextHopProtocol && ("fetch" === e.initiatorType || "xmlhttprequest" === e.initiatorType)
}(r) && r.name.endsWith(t)) {
(function(e) {
const {
name: t,
version: n
} = function(e) {
let t = "unknown",
n = "unknown",
r = "";
for (const i of e) {
if ("/" === i) {
[t, n] = e.split("/");
break
}
if (!isNaN(Number(i))) {
t = "h" === r ? "http" : r, n = e.split(r)[1];
break
}
r += i
}
r === e && (t = r);
return {
name: t,
version: n
}
}(e.nextHopProtocol), r = [];
if (r.push(["network.protocol.version", n], ["network.protocol.name", t]), !kn) return r;
return [...r, ["http.request.redirect_start", Hy(e.redirectStart)],
["http.request.fetch_start", Hy(e.fetchStart)],
["http.request.domain_lookup_start", Hy(e.domainLookupStart)],
["http.request.domain_lookup_end", Hy(e.domainLookupEnd)],
["http.request.connect_start", Hy(e.connectStart)],
["http.request.secure_connection_start", Hy(e.secureConnectionStart)],
["http.request.connection_end", Hy(e.connectEnd)],
["http.request.request_start", Hy(e.requestStart)],
["http.request.response_start", Hy(e.responseStart)],
["http.request.response_end", Hy(e.responseEnd)]
]
})(r).forEach((t => e.setAttribute(...t))), setTimeout(n)
}
}))
}))
}
function Hy(e = 0) {
return ((kn || performance.timeOrigin) + e) / 1e3
}
function Ky(e) {
try {
return new URL(e, da.location.origin).href
} catch (ll) {
return
}
}
const Yy = {
...zy,
instrumentNavigation: !0,
instrumentPageLoad: !0,
markBackgroundSpan: !0,
enableLongTask: !0,
enableLongAnimationFrame: !1,
enableInp: !0,
_experiments: {},
...Wy
};
function Qy(e) {
const t = (n = `meta[name=${e}]`, Ut.document && Ut.document.querySelector ? Ut.document.querySelector(n) : null);
var n;
return t ? t.getAttribute("content") : void 0
}
function Zy(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
function Xy(e, t) {
const n = t && t.getDsn(),
r = t && t.getOptions().tunnel;
return function(e, t) {
return !!t && e.includes(t.host)
}(e, n) || function(e, t) {
if (!t) return !1;
return Jy(e) === Jy(t)
}(e, r)
}
function Jy(e) {
return "/" === e[e.length - 1] ? e.slice(0, -1) : e
}
function e_() {
return !("undefined" !== typeof __SENTRY_BROWSER_BUNDLE__ && __SENTRY_BROWSER_BUNDLE__) && "[object process]" === Object.prototype.toString.call("undefined" !== typeof process ? process : 0)
}
function t_() {
return "undefined" !== typeof window && (!e_() || void 0 !== wt.process && "renderer" === wt.process.type)
}
const n_ = wt,
r_ = "sentryReplaySession",
i_ = "Unable to send Replay",
a_ = 15e4,
o_ = 5e3,
s_ = 2e7,
l_ = 36e5;
function c_(e, t) {
return null != e ? e : t()
}
function u_(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
var d_;
function p_(e) {
const t = u_([e, "optionalAccess", e => e.host]);
return Boolean(u_([t, "optionalAccess", e => e.shadowRoot]) === e)
}
function h_(e) {
return "[object ShadowRoot]" === Object.prototype.toString.call(e)
}
function f_(e) {
try {
const n = e.rules || e.cssRules;
return n ? ((t = Array.from(n, m_).join("")).includes(" background-clip: text;") && !t.includes(" -webkit-background-clip: text;") && (t = t.replace(" background-clip: text;", " -webkit-background-clip: text; background-clip: text;")), t) : null
} catch (n) {
return null
}
var t
}
function m_(e) {
let t;
if (function(e) {
return "styleSheet" in e
}(e)) try {
t = f_(e.styleSheet) || function(e) {
const {
cssText: t
} = e;
if (t.split('"').length < 3) return t;
const n = ["@import", `url(${JSON.stringify(e.href)})`];
return "" === e.layerName ? n.push("layer") : e.layerName && n.push(`layer(${e.layerName})`), e.supportsText && n.push(`supports(${e.supportsText})`), e.media.length && n.push(e.media.mediaText), n.join(" ") + ";"
}(e)
} catch (n) {} else if (function(e) {
return "selectorText" in e
}(e) && e.selectorText.includes(":")) return function(e) {
const t = /(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm;
return e.replace(t, "$1\\$2")
}(e.cssText);
return t || e.cssText
}! function(e) {
e[e.Document = 0] = "Document", e[e.DocumentType = 1] = "DocumentType", e[e.Element = 2] = "Element", e[e.Text = 3] = "Text", e[e.CDATA = 4] = "CDATA", e[e.Comment = 5] = "Comment"
}(d_ || (d_ = {}));
class g_ {
constructor() {
this.idNodeMap = new Map, this.nodeMetaMap = new WeakMap
}
getId(e) {
if (!e) return -1;
return c_(u_([this, "access", e => e.getMeta, "call", t => t(e), "optionalAccess", e => e.id]), (() => -1))
}
getNode(e) {
return this.idNodeMap.get(e) || null
}
getIds() {
return Array.from(this.idNodeMap.keys())
}
getMeta(e) {
return this.nodeMetaMap.get(e) || null
}
removeNodeFromMap(e) {
const t = this.getId(e);
this.idNodeMap.delete(t), e.childNodes && e.childNodes.forEach((e => this.removeNodeFromMap(e)))
}
has(e) {
return this.idNodeMap.has(e)
}
hasNode(e) {
return this.nodeMetaMap.has(e)
}
add(e, t) {
const n = t.id;
this.idNodeMap.set(n, e), this.nodeMetaMap.set(e, t)
}
replace(e, t) {
const n = this.getNode(e);
if (n) {
const e = this.nodeMetaMap.get(n);
e && this.nodeMetaMap.set(t, e)
}
this.idNodeMap.set(e, t)
}
reset() {
this.idNodeMap = new Map, this.nodeMetaMap = new WeakMap
}
}
function v_({
maskInputOptions: e,
tagName: t,
type: n
}) {
return "OPTION" === t && (t = "SELECT"), Boolean(e[t.toLowerCase()] || n && e[n] || "password" === n || "INPUT" === t && !n && e.text)
}
function y_({
isMasked: e,
element: t,
value: n,
maskInputFn: r
}) {
let i = n || "";
return e ? (r && (i = r(i, t)), "*".repeat(i.length)) : i
}
function __(e) {
return e.toLowerCase()
}
function b_(e) {
return e.toUpperCase()
}
const x_ = "__rrweb_original__";
function k_(e) {
const t = e.type;
return e.hasAttribute("data-rr-is-password") ? "password" : t ? __(t) : null
}
function w_(e, t, n) {
return "INPUT" !== t || "radio" !== n && "checkbox" !== n ? e.value : e.getAttribute("value") || ""
}
function S_(e, t) {
let n;
try {
n = new URL(e, c_(t, (() => window.location.href)))
} catch (r) {
return null
}
return c_(u_([n.pathname.match(/\.([0-9a-z]+)(?:$)/i), "optionalAccess", e => e[1]]), (() => null))
}
const E_ = {};
function I_(e) {
const t = E_[e];
if (t) return t;
const n = window.document;
let r = window[e];
if (n && "function" === typeof n.createElement) try {
const t = n.createElement("iframe");
t.hidden = !0, n.head.appendChild(t);
const i = t.contentWindow;
i && i[e] && (r = i[e]), n.head.removeChild(t)
} catch (i) {}
return E_[e] = r.bind(window)
}
function O_(...e) {
return I_("setTimeout")(...e)
}
function C_(...e) {
return I_("clearTimeout")(...e)
}
let A_ = 1;
const P_ = new RegExp("[^a-z0-9-_:]");
function T_() {
return A_++
}
let R_, D_;
const L_ = /url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,
N_ = /^(?:[a-z+]+:)?\/\//i,
M_ = /^www\..*/i,
j_ = /^(data:)([^,]*),(.*)/i;
function F_(e, t) {
return (e || "").replace(L_, ((e, n, r, i, a, o) => {
const s = r || a || o,
l = n || i || "";
if (!s) return e;
if (N_.test(s) || M_.test(s)) return `url(${l}${s}${l})`;
if (j_.test(s)) return `url(${l}${s}${l})`;
if ("/" === s[0]) return `url(${l}${function(e){let t="";return t=e.indexOf("//")>-1?e.split("/").slice(0,3).join("/"):e.split("/")[0],t=t.split("?")[0],t}(t)+s}${l})`;
const c = t.split("/"),
u = s.split("/");
c.pop();
for (const t of u) "." !== t && (".." === t ? c.pop() : c.push(t));
return `url(${l}${c.join("/")}${l})`
}))
}
const z_ = /^[^ \t\n\r\u000c]+/,
V_ = /^[, \t\n\r\u000c]+/;
function U_(e, t) {
if (!t || "" === t.trim()) return t;
const n = e.createElement("a");
return n.href = t, n.href
}
function B_(e) {
return Boolean("svg" === e.tagName || e.ownerSVGElement)
}
function G_() {
const e = document.createElement("a");
return e.href = "", e.href
}
function W_(e, t, n, r, i, a) {
return r ? "src" === n || "href" === n && ("use" !== t || "#" !== r[0]) || "xlink:href" === n && "#" !== r[0] ? U_(e, r) : "background" !== n || "table" !== t && "td" !== t && "th" !== t ? "srcset" === n ? function(e, t) {
if ("" === t.trim()) return t;
let n = 0;
function r(e) {
let r;
const i = e.exec(t.substring(n));
return i ? (r = i[0], n += r.length, r) : ""
}
const i = [];
for (; r(V_), !(n >= t.length);) {
let a = r(z_);
if ("," === a.slice(-1)) a = U_(e, a.substring(0, a.length - 1)), i.push(a);
else {
let r = "";
a = U_(e, a);
let o = !1;
for (;;) {
const e = t.charAt(n);
if ("" === e) {
i.push((a + r).trim());
break
}
if (o) ")" === e && (o = !1);
else {
if ("," === e) {
n += 1, i.push((a + r).trim());
break
}
"(" === e && (o = !0)
}
r += e, n += 1
}
}
}
return i.join(", ")
}(e, r) : "style" === n ? F_(r, G_()) : "object" === t && "data" === n ? U_(e, r) : "function" === typeof a ? a(n, r, i) : r : U_(e, r) : r
}
function $_(e, t, n) {
return ("video" === e || "audio" === e) && "autoplay" === t
}
function q_(e, t, n = 1 / 0, r = 0) {
return e ? e.nodeType !== e.ELEMENT_NODE || r > n ? -1 : t(e) ? r : q_(e.parentNode, t, n, r + 1) : -1
}
function H_(e, t) {
return n => {
const r = n;
if (null === r) return !1;
try {
if (e)
if ("string" === typeof e) {
if (r.matches(`.${e}`)) return !0
} else if (function(e, t) {
for (let n = e.classList.length; n--;) {
const r = e.classList[n];
if (t.test(r)) return !0
}
return !1
}(r, e)) return !0;
return !(!t || !r.matches(t))
} catch (ll) {
return !1
}
}
}
function K_(e, t, n, r, i, a) {
try {
const o = e.nodeType === e.ELEMENT_NODE ? e : e.parentElement;
if (null === o) return !1;
if ("INPUT" === o.tagName) {
const e = o.getAttribute("autocomplete");
if (["current-password", "new-password", "cc-number", "cc-exp", "cc-exp-month", "cc-exp-year", "cc-csc"].includes(e)) return !0
}
let s = -1,
l = -1;
if (a) {
if (l = q_(o, H_(r, i)), l < 0) return !0;
s = q_(o, H_(t, n), l >= 0 ? l : 1 / 0)
} else {
if (s = q_(o, H_(t, n)), s < 0) return !1;
l = q_(o, H_(r, i), s >= 0 ? s : 1 / 0)
}
return s >= 0 ? !(l >= 0) || s <= l : !(l >= 0) && !!a
} catch (o) {}
return !!a
}
function Y_(e, t) {
const {
doc: n,
mirror: r,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: s,
maskAttributeFn: l,
maskTextClass: c,
unmaskTextClass: u,
maskTextSelector: d,
unmaskTextSelector: p,
inlineStylesheet: h,
maskInputOptions: f = {},
maskTextFn: m,
maskInputFn: g,
dataURLOptions: v = {},
inlineImages: y,
recordCanvas: _,
keepIframeSrcFn: b,
newlyAddedElement: x = !1
} = t, k = function(e, t) {
if (!t.hasNode(e)) return;
const n = t.getId(e);
return 1 === n ? void 0 : n
}(n, r);
switch (e.nodeType) {
case e.DOCUMENT_NODE:
return "CSS1Compat" !== e.compatMode ? {
type: d_.Document,
childNodes: [],
compatMode: e.compatMode
} : {
type: d_.Document,
childNodes: []
};
case e.DOCUMENT_TYPE_NODE:
return {
type: d_.DocumentType, name: e.name, publicId: e.publicId, systemId: e.systemId, rootId: k
};
case e.ELEMENT_NODE:
return function(e, t) {
const {
doc: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
inlineStylesheet: o,
maskInputOptions: s = {},
maskAttributeFn: l,
maskInputFn: c,
dataURLOptions: u = {},
inlineImages: d,
recordCanvas: p,
keepIframeSrcFn: h,
newlyAddedElement: f = !1,
rootId: m,
maskAllText: g,
maskTextClass: v,
unmaskTextClass: y,
maskTextSelector: _,
unmaskTextSelector: b
} = t, x = function(e, t, n, r) {
try {
if (r && e.matches(r)) return !1;
if ("string" === typeof t) {
if (e.classList.contains(t)) return !0
} else
for (let n = e.classList.length; n--;) {
const r = e.classList[n];
if (t.test(r)) return !0
}
if (n) return e.matches(n)
} catch (i) {}
return !1
}(e, r, i, a), k = function(e) {
if (e instanceof HTMLFormElement) return "form";
const t = __(e.tagName);
return P_.test(t) ? "div" : t
}(e);
let w = {};
const S = e.attributes.length;
for (let O = 0; O < S; O++) {
const t = e.attributes[O];
t.name && !$_(k, t.name, t.value) && (w[t.name] = W_(n, k, __(t.name), t.value, e, l))
}
if ("link" === k && o) {
const t = Array.from(n.styleSheets).find((t => t.href === e.href));
let r = null;
t && (r = f_(t)), r && (delete w.rel, delete w.href, w._cssText = F_(r, t.href))
}
if ("style" === k && e.sheet && !(e.innerText || e.textContent || "").trim().length) {
const t = f_(e.sheet);
t && (w._cssText = F_(t, G_()))
}
if ("input" === k || "textarea" === k || "select" === k || "option" === k) {
const t = e,
n = k_(t),
r = w_(t, b_(k), n),
i = t.checked;
if ("submit" !== n && "button" !== n && r) {
const e = K_(t, v, _, y, b, v_({
type: n,
tagName: b_(k),
maskInputOptions: s
}));
w.value = y_({
isMasked: e,
element: t,
value: r,
maskInputFn: c
})
}
i && (w.checked = i)
}
"option" === k && (e.selected && !s.select ? w.selected = !0 : delete w.selected);
if ("canvas" === k && p)
if ("2d" === e.__context)(function(e) {
const t = e.getContext("2d");
if (!t) return !0;
for (let n = 0; n < e.width; n += 50)
for (let r = 0; r < e.height; r += 50) {
const i = t.getImageData,
a = x_ in i ? i[x_] : i;
if (new Uint32Array(a.call(t, n, r, Math.min(50, e.width - n), Math.min(50, e.height - r)).data.buffer).some((e => 0 !== e))) return !1
}
return !0
})(e) || (w.rr_dataURL = e.toDataURL(u.type, u.quality));
else if (!("__context" in e)) {
const t = e.toDataURL(u.type, u.quality),
n = document.createElement("canvas");
n.width = e.width, n.height = e.height;
t !== n.toDataURL(u.type, u.quality) && (w.rr_dataURL = t)
}
if ("img" === k && d) {
R_ || (R_ = n.createElement("canvas"), D_ = R_.getContext("2d"));
const t = e,
r = t.crossOrigin;
t.crossOrigin = "anonymous";
const i = () => {
t.removeEventListener("load", i);
try {
R_.width = t.naturalWidth, R_.height = t.naturalHeight, D_.drawImage(t, 0, 0), w.rr_dataURL = R_.toDataURL(u.type, u.quality)
} catch (e) {
console.warn(`Cannot inline img src=${t.currentSrc}! Error: ${e}`)
}
r ? w.crossOrigin = r : t.removeAttribute("crossorigin")
};
t.complete && 0 !== t.naturalWidth ? i() : t.addEventListener("load", i)
}
"audio" !== k && "video" !== k || (w.rr_mediaState = e.paused ? "paused" : "played", w.rr_mediaCurrentTime = e.currentTime);
f || (e.scrollLeft && (w.rr_scrollLeft = e.scrollLeft), e.scrollTop && (w.rr_scrollTop = e.scrollTop));
if (x) {
const {
width: t,
height: n
} = e.getBoundingClientRect();
w = {
class: w.class,
rr_width: `${t}px`,
rr_height: `${n}px`
}
}
"iframe" !== k || h(w.src) || (x || e.contentDocument || (w.rr_src = w.src), delete w.src);
let E;
try {
customElements.get(k) && (E = !0)
} catch (I) {}
return {
type: d_.Element,
tagName: k,
attributes: w,
childNodes: [],
isSVG: B_(e) || void 0,
needBlock: x,
rootId: m,
isCustom: E
}
}(e, {
doc: n,
blockClass: i,
blockSelector: a,
unblockSelector: o,
inlineStylesheet: h,
maskAttributeFn: l,
maskInputOptions: f,
maskInputFn: g,
dataURLOptions: v,
inlineImages: y,
recordCanvas: _,
keepIframeSrcFn: b,
newlyAddedElement: x,
rootId: k,
maskAllText: s,
maskTextClass: c,
unmaskTextClass: u,
maskTextSelector: d,
unmaskTextSelector: p
});
case e.TEXT_NODE:
return function(e, t) {
const {
maskAllText: n,
maskTextClass: r,
unmaskTextClass: i,
maskTextSelector: a,
unmaskTextSelector: o,
maskTextFn: s,
maskInputOptions: l,
maskInputFn: c,
rootId: u
} = t, d = e.parentNode && e.parentNode.tagName;
let p = e.textContent;
const h = "STYLE" === d || void 0,
f = "SCRIPT" === d || void 0,
m = "TEXTAREA" === d || void 0;
if (h && p) {
try {
e.nextSibling || e.previousSibling || u_([e, "access", e => e.parentNode, "access", e => e.sheet, "optionalAccess", e => e.cssRules]) && (p = f_(e.parentNode.sheet))
} catch (v) {
console.warn(`Cannot get CSS styles from text's parentNode. Error: ${v}`, e)
}
p = F_(p, G_())
}
f && (p = "SCRIPT_PLACEHOLDER");
const g = K_(e, r, a, i, o, n);
h || f || m || !p || !g || (p = s ? s(p, e.parentElement) : p.replace(/[\S]/g, "*"));
m && p && (l.textarea || g) && (p = c ? c(p, e.parentNode) : p.replace(/[\S]/g, "*"));
if ("OPTION" === d && p) {
p = y_({
isMasked: K_(e, r, a, i, o, v_({
type: null,
tagName: d,
maskInputOptions: l
})),
element: e,
value: p,
maskInputFn: c
})
}
return {
type: d_.Text,
textContent: p || "",
isStyle: h,
rootId: u
}
}(e, {
maskAllText: s,
maskTextClass: c,
unmaskTextClass: u,
maskTextSelector: d,
unmaskTextSelector: p,
maskTextFn: m,
maskInputOptions: f,
maskInputFn: g,
rootId: k
});
case e.CDATA_SECTION_NODE:
return {
type: d_.CDATA, textContent: "", rootId: k
};
case e.COMMENT_NODE:
return {
type: d_.Comment, textContent: e.textContent || "", rootId: k
};
default:
return !1
}
}
function Q_(e) {
return void 0 === e || null === e ? "" : e.toLowerCase()
}
function Z_(e, t) {
const {
doc: n,
mirror: r,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: s,
maskTextClass: l,
unmaskTextClass: c,
maskTextSelector: u,
unmaskTextSelector: d,
skipChild: p = !1,
inlineStylesheet: h = !0,
maskInputOptions: f = {},
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOMOptions: y,
dataURLOptions: _ = {},
inlineImages: b = !1,
recordCanvas: x = !1,
onSerialize: k,
onIframeLoad: w,
iframeLoadTimeout: S = 5e3,
onStylesheetLoad: E,
stylesheetLoadTimeout: I = 5e3,
keepIframeSrcFn: O = (() => !1),
newlyAddedElement: C = !1
} = t;
let {
preserveWhiteSpace: A = !0
} = t;
const P = Y_(e, {
doc: n,
mirror: r,
blockClass: i,
blockSelector: a,
maskAllText: s,
unblockSelector: o,
maskTextClass: l,
unmaskTextClass: c,
maskTextSelector: u,
unmaskTextSelector: d,
inlineStylesheet: h,
maskInputOptions: f,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
dataURLOptions: _,
inlineImages: b,
recordCanvas: x,
keepIframeSrcFn: O,
newlyAddedElement: C
});
if (!P) return console.warn(e, "not serialized"), null;
let T;
T = r.hasNode(e) ? r.getId(e) : ! function(e, t) {
if (t.comment && e.type === d_.Comment) return !0;
if (e.type === d_.Element) {
if (t.script && ("script" === e.tagName || "link" === e.tagName && ("preload" === e.attributes.rel || "modulepreload" === e.attributes.rel) && "script" === e.attributes.as || "link" === e.tagName && "prefetch" === e.attributes.rel && "string" === typeof e.attributes.href && "js" === S_(e.attributes.href))) return !0;
if (t.headFavicon && ("link" === e.tagName && "shortcut icon" === e.attributes.rel || "meta" === e.tagName && (Q_(e.attributes.name).match(/^msapplication-tile(image|color)$/) || "application-name" === Q_(e.attributes.name) || "icon" === Q_(e.attributes.rel) || "apple-touch-icon" === Q_(e.attributes.rel) || "shortcut icon" === Q_(e.attributes.rel)))) return !0;
if ("meta" === e.tagName) {
if (t.headMetaDescKeywords && Q_(e.attributes.name).match(/^description|keywords$/)) return !0;
if (t.headMetaSocial && (Q_(e.attributes.property).match(/^(og|twitter|fb):/) || Q_(e.attributes.name).match(/^(og|twitter):/) || "pinterest" === Q_(e.attributes.name))) return !0;
if (t.headMetaRobots && ("robots" === Q_(e.attributes.name) || "googlebot" === Q_(e.attributes.name) || "bingbot" === Q_(e.attributes.name))) return !0;
if (t.headMetaHttpEquiv && void 0 !== e.attributes["http-equiv"]) return !0;
if (t.headMetaAuthorship && ("author" === Q_(e.attributes.name) || "generator" === Q_(e.attributes.name) || "framework" === Q_(e.attributes.name) || "publisher" === Q_(e.attributes.name) || "progid" === Q_(e.attributes.name) || Q_(e.attributes.property).match(/^article:/) || Q_(e.attributes.property).match(/^product:/))) return !0;
if (t.headMetaVerification && ("google-site-verification" === Q_(e.attributes.name) || "yandex-verification" === Q_(e.attributes.name) || "csrf-token" === Q_(e.attributes.name) || "p:domain_verify" === Q_(e.attributes.name) || "verify-v1" === Q_(e.attributes.name) || "verification" === Q_(e.attributes.name) || "shopify-checkout-api-token" === Q_(e.attributes.name))) return !0
}
}
return !1
}(P, y) && (A || P.type !== d_.Text || P.isStyle || P.textContent.replace(/^\s+|\s+$/gm, "").length) ? T_() : -2;
const R = Object.assign(P, {
id: T
});
if (r.add(e, R), -2 === T) return null;
k && k(e);
let D = !p;
if (R.type === d_.Element) {
D = D && !R.needBlock, delete R.needBlock;
const t = e.shadowRoot;
t && h_(t) && (R.isShadowHost = !0)
}
if ((R.type === d_.Document || R.type === d_.Element) && D) {
y.headWhitespace && R.type === d_.Element && "head" === R.tagName && (A = !1);
const t = {
doc: n,
mirror: r,
blockClass: i,
blockSelector: a,
maskAllText: s,
unblockSelector: o,
maskTextClass: l,
unmaskTextClass: c,
maskTextSelector: u,
unmaskTextSelector: d,
skipChild: p,
inlineStylesheet: h,
maskInputOptions: f,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOMOptions: y,
dataURLOptions: _,
inlineImages: b,
recordCanvas: x,
preserveWhiteSpace: A,
onSerialize: k,
onIframeLoad: w,
iframeLoadTimeout: S,
onStylesheetLoad: E,
stylesheetLoadTimeout: I,
keepIframeSrcFn: O
};
for (const n of Array.from(e.childNodes)) {
const e = Z_(n, t);
e && R.childNodes.push(e)
}
if (function(e) {
return e.nodeType === e.ELEMENT_NODE
}(e) && e.shadowRoot)
for (const n of Array.from(e.shadowRoot.childNodes)) {
const r = Z_(n, t);
r && (h_(e.shadowRoot) && (r.isShadow = !0), R.childNodes.push(r))
}
}
return e.parentNode && p_(e.parentNode) && h_(e.parentNode) && (R.isShadow = !0), R.type === d_.Element && "iframe" === R.tagName && function(e, t, n) {
const r = e.contentWindow;
if (!r) return;
let i, a = !1;
try {
i = r.document.readyState
} catch (s) {
return
}
if ("complete" !== i) {
const r = O_((() => {
a || (t(), a = !0)
}), n);
return void e.addEventListener("load", (() => {
C_(r), a = !0, t()
}))
}
const o = "about:blank";
if (r.location.href !== o || e.src === o || "" === e.src) return O_(t, 0), e.addEventListener("load", t);
e.addEventListener("load", t)
}(e, (() => {
const t = e.contentDocument;
if (t && w) {
const n = Z_(t, {
doc: t,
mirror: r,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: s,
maskTextClass: l,
unmaskTextClass: c,
maskTextSelector: u,
unmaskTextSelector: d,
skipChild: !1,
inlineStylesheet: h,
maskInputOptions: f,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOMOptions: y,
dataURLOptions: _,
inlineImages: b,
recordCanvas: x,
preserveWhiteSpace: A,
onSerialize: k,
onIframeLoad: w,
iframeLoadTimeout: S,
onStylesheetLoad: E,
stylesheetLoadTimeout: I,
keepIframeSrcFn: O
});
n && w(e, n)
}
}), S), R.type === d_.Element && "link" === R.tagName && "string" === typeof R.attributes.rel && ("stylesheet" === R.attributes.rel || "preload" === R.attributes.rel && "string" === typeof R.attributes.href && "css" === S_(R.attributes.href)) && function(e, t, n) {
let r, i = !1;
try {
r = e.sheet
} catch (o) {
return
}
if (r) return;
const a = O_((() => {
i || (t(), i = !0)
}), n);
e.addEventListener("load", (() => {
C_(a), i = !0, t()
}))
}(e, (() => {
if (E) {
const t = Z_(e, {
doc: n,
mirror: r,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: s,
maskTextClass: l,
unmaskTextClass: c,
maskTextSelector: u,
unmaskTextSelector: d,
skipChild: !1,
inlineStylesheet: h,
maskInputOptions: f,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOMOptions: y,
dataURLOptions: _,
inlineImages: b,
recordCanvas: x,
preserveWhiteSpace: A,
onSerialize: k,
onIframeLoad: w,
iframeLoadTimeout: S,
onStylesheetLoad: E,
stylesheetLoadTimeout: I,
keepIframeSrcFn: O
});
t && E(e, t)
}
}), I), R
}
function X_(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
function J_(e, t, n = document) {
const r = {
capture: !0,
passive: !0
};
return n.addEventListener(e, t, r), () => n.removeEventListener(e, t, r)
}
const eb = "Please stop import mirror directly. Instead of that,\r\nnow you can use replayer.getMirror() to access the mirror instance of a replayer,\r\nor you can use record.mirror to access the mirror instance during recording.";
let tb = {
map: {},
getId: () => (console.error(eb), -1),
getNode: () => (console.error(eb), null),
removeNodeFromMap() {
console.error(eb)
},
has: () => (console.error(eb), !1),
reset() {
console.error(eb)
}
};
function nb(e, t, n = {}) {
let r = null,
i = 0;
return function(...a) {
const o = Date.now();
i || !1 !== n.leading || (i = o);
const s = t - (o - i),
l = this;
s <= 0 || s > t ? (r && (! function(...e) {
kb("clearTimeout")(...e)
}(r), r = null), i = o, e.apply(l, a)) : r || !1 === n.trailing || (r = wb((() => {
i = !1 === n.leading ? 0 : Date.now(), r = null, e.apply(l, a)
}), s))
}
}
function rb(e, t, n, r, i = window) {
const a = i.Object.getOwnPropertyDescriptor(e, t);
return i.Object.defineProperty(e, t, r ? n : {
set(e) {
wb((() => {
n.set.call(this, e)
}), 0), a && a.set && a.set.call(this, e)
}
}), () => rb(e, t, a || {}, !0)
}
function ib(e, t, n) {
try {
if (!(t in e)) return () => {};
const r = e[t],
i = n(r);
return "function" === typeof i && (i.prototype = i.prototype || {}, Object.defineProperties(i, {
__rrweb_original__: {
enumerable: !1,
value: r
}
})), e[t] = i, () => {
e[t] = r
}
} catch (ll) {
return () => {}
}
}
"undefined" !== typeof window && window.Proxy && window.Reflect && (tb = new Proxy(tb, {
get: (e, t, n) => ("map" === t && console.error(eb), Reflect.get(e, t, n))
}));
let ab = Date.now;
function ob(e) {
const t = e.document;
return {
left: t.scrollingElement ? t.scrollingElement.scrollLeft : void 0 !== e.pageXOffset ? e.pageXOffset : X_([t, "optionalAccess", e => e.documentElement, "access", e => e.scrollLeft]) || X_([t, "optionalAccess", e => e.body, "optionalAccess", e => e.parentElement, "optionalAccess", e => e.scrollLeft]) || X_([t, "optionalAccess", e => e.body, "optionalAccess", e => e.scrollLeft]) || 0,
top: t.scrollingElement ? t.scrollingElement.scrollTop : void 0 !== e.pageYOffset ? e.pageYOffset : X_([t, "optionalAccess", e => e.documentElement, "access", e => e.scrollTop]) || X_([t, "optionalAccess", e => e.body, "optionalAccess", e => e.parentElement, "optionalAccess", e => e.scrollTop]) || X_([t, "optionalAccess", e => e.body, "optionalAccess", e => e.scrollTop]) || 0
}
}
function sb() {
return window.innerHeight || document.documentElement && document.documentElement.clientHeight || document.body && document.body.clientHeight
}
function lb() {
return window.innerWidth || document.documentElement && document.documentElement.clientWidth || document.body && document.body.clientWidth
}
function cb(e) {
if (!e) return null;
return e.nodeType === e.ELEMENT_NODE ? e : e.parentElement
}
function ub(e, t, n, r, i) {
if (!e) return !1;
const a = cb(e);
if (!a) return !1;
const o = H_(t, n);
if (!i) {
const e = r && a.matches(r);
return o(a) && !e
}
const s = q_(a, o);
let l = -1;
return !(s < 0) && (r && (l = q_(a, H_(null, r))), s > -1 && l < 0 || s < l)
}
function db(e, t) {
return -2 === t.getId(e)
}
function pb(e, t) {
if (p_(e)) return !1;
const n = t.getId(e);
return !t.has(n) || (!e.parentNode || e.parentNode.nodeType !== e.DOCUMENT_NODE) && (!e.parentNode || pb(e.parentNode, t))
}
function hb(e) {
return Boolean(e.changedTouches)
}
function fb(e, t) {
return Boolean("IFRAME" === e.nodeName && t.getMeta(e))
}
function mb(e, t) {
return Boolean("LINK" === e.nodeName && e.nodeType === e.ELEMENT_NODE && e.getAttribute && "stylesheet" === e.getAttribute("rel") && t.getMeta(e))
}
function gb(e) {
return Boolean(X_([e, "optionalAccess", e => e.shadowRoot]))
}
/[1-9][0-9]{12}/.test(Date.now().toString()) || (ab = () => (new Date).getTime());
class vb {
constructor() {
this.id = 1, this.styleIDMap = new WeakMap, this.idStyleMap = new Map
}
getId(e) {
return t = this.styleIDMap.get(e), n = () => -1, null != t ? t : n();
var t, n
}
has(e) {
return this.styleIDMap.has(e)
}
add(e, t) {
if (this.has(e)) return this.getId(e);
let n;
return n = void 0 === t ? this.id++ : t, this.styleIDMap.set(e, n), this.idStyleMap.set(n, e), n
}
getStyle(e) {
return this.idStyleMap.get(e) || null
}
reset() {
this.styleIDMap = new WeakMap, this.idStyleMap = new Map, this.id = 1
}
generateId() {
return this.id++
}
}
function yb(e) {
let t = null;
return X_([e, "access", e => e.getRootNode, "optionalCall", e => e(), "optionalAccess", e => e.nodeType]) === Node.DOCUMENT_FRAGMENT_NODE && e.getRootNode().host && (t = e.getRootNode().host), t
}
function _b(e) {
const t = e.ownerDocument;
if (!t) return !1;
const n = function(e) {
let t, n = e;
for (; t = yb(n);) n = t;
return n
}(e);
return t.contains(n)
}
function bb(e) {
const t = e.ownerDocument;
return !!t && (t.contains(e) || _b(e))
}
const xb = {};
function kb(e) {
const t = xb[e];
if (t) return t;
const n = window.document;
let r = window[e];
if (n && "function" === typeof n.createElement) try {
const t = n.createElement("iframe");
t.hidden = !0, n.head.appendChild(t);
const i = t.contentWindow;
i && i[e] && (r = i[e]), n.head.removeChild(t)
} catch (i) {}
return xb[e] = r.bind(window)
}
function wb(...e) {
return kb("setTimeout")(...e)
}
var Sb = (e => (e[e.DomContentLoaded = 0] = "DomContentLoaded", e[e.Load = 1] = "Load", e[e.FullSnapshot = 2] = "FullSnapshot", e[e.IncrementalSnapshot = 3] = "IncrementalSnapshot", e[e.Meta = 4] = "Meta", e[e.Custom = 5] = "Custom", e[e.Plugin = 6] = "Plugin", e))(Sb || {}),
Eb = (e => (e[e.Mutation = 0] = "Mutation", e[e.MouseMove = 1] = "MouseMove", e[e.MouseInteraction = 2] = "MouseInteraction", e[e.Scroll = 3] = "Scroll", e[e.ViewportResize = 4] = "ViewportResize", e[e.Input = 5] = "Input", e[e.TouchMove = 6] = "TouchMove", e[e.MediaInteraction = 7] = "MediaInteraction", e[e.StyleSheetRule = 8] = "StyleSheetRule", e[e.CanvasMutation = 9] = "CanvasMutation", e[e.Font = 10] = "Font", e[e.Log = 11] = "Log", e[e.Drag = 12] = "Drag", e[e.StyleDeclaration = 13] = "StyleDeclaration", e[e.Selection = 14] = "Selection", e[e.AdoptedStyleSheet = 15] = "AdoptedStyleSheet", e[e.CustomElement = 16] = "CustomElement", e))(Eb || {}),
Ib = (e => (e[e.MouseUp = 0] = "MouseUp", e[e.MouseDown = 1] = "MouseDown", e[e.Click = 2] = "Click", e[e.ContextMenu = 3] = "ContextMenu", e[e.DblClick = 4] = "DblClick", e[e.Focus = 5] = "Focus", e[e.Blur = 6] = "Blur", e[e.TouchStart = 7] = "TouchStart", e[e.TouchMove_Departed = 8] = "TouchMove_Departed", e[e.TouchEnd = 9] = "TouchEnd", e[e.TouchCancel = 10] = "TouchCancel", e))(Ib || {}),
Ob = (e => (e[e.Mouse = 0] = "Mouse", e[e.Pen = 1] = "Pen", e[e.Touch = 2] = "Touch", e))(Ob || {});
function Cb(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
function Ab(e) {
return "__ln" in e
}
class Pb {
constructor() {
this.length = 0, this.head = null, this.tail = null
}
get(e) {
if (e >= this.length) throw new Error("Position outside of list range");
let t = this.head;
for (let n = 0; n < e; n++) t = Cb([t, "optionalAccess", e => e.next]) || null;
return t
}
addNode(e) {
const t = {
value: e,
previous: null,
next: null
};
if (e.__ln = t, e.previousSibling && Ab(e.previousSibling)) {
const n = e.previousSibling.__ln.next;
t.next = n, t.previous = e.previousSibling.__ln, e.previousSibling.__ln.next = t, n && (n.previous = t)
} else if (e.nextSibling && Ab(e.nextSibling) && e.nextSibling.__ln.previous) {
const n = e.nextSibling.__ln.previous;
t.previous = n, t.next = e.nextSibling.__ln, e.nextSibling.__ln.previous = t, n && (n.next = t)
} else this.head && (this.head.previous = t), t.next = this.head, this.head = t;
null === t.next && (this.tail = t), this.length++
}
removeNode(e) {
const t = e.__ln;
this.head && (t.previous ? (t.previous.next = t.next, t.next ? t.next.previous = t.previous : this.tail = t.previous) : (this.head = t.next, this.head ? this.head.previous = null : this.tail = null), e.__ln && delete e.__ln, this.length--)
}
}
const Tb = (e, t) => `${e}@${t}`;
class Rb {
constructor() {
this.frozen = !1, this.locked = !1, this.texts = [], this.attributes = [], this.attributeMap = new WeakMap, this.removes = [], this.mapRemoves = [], this.movedMap = {}, this.addedSet = new Set, this.movedSet = new Set, this.droppedSet = new Set, this.processMutations = e => {
e.forEach(this.processMutation), this.emit()
}, this.emit = () => {
if (this.frozen || this.locked) return;
const e = [],
t = new Set,
n = new Pb,
r = e => {
let t = e,
n = -2;
for (; - 2 === n;) t = t && t.nextSibling, n = t && this.mirror.getId(t);
return n
},
i = i => {
if (!i.parentNode || !bb(i)) return;
const a = p_(i.parentNode) ? this.mirror.getId(yb(i)) : this.mirror.getId(i.parentNode),
o = r(i);
if (-1 === a || -1 === o) return n.addNode(i);
const s = Z_(i, {
doc: this.doc,
mirror: this.mirror,
blockClass: this.blockClass,
blockSelector: this.blockSelector,
maskAllText: this.maskAllText,
unblockSelector: this.unblockSelector,
maskTextClass: this.maskTextClass,
unmaskTextClass: this.unmaskTextClass,
maskTextSelector: this.maskTextSelector,
unmaskTextSelector: this.unmaskTextSelector,
skipChild: !0,
newlyAddedElement: !0,
inlineStylesheet: this.inlineStylesheet,
maskInputOptions: this.maskInputOptions,
maskAttributeFn: this.maskAttributeFn,
maskTextFn: this.maskTextFn,
maskInputFn: this.maskInputFn,
slimDOMOptions: this.slimDOMOptions,
dataURLOptions: this.dataURLOptions,
recordCanvas: this.recordCanvas,
inlineImages: this.inlineImages,
onSerialize: e => {
fb(e, this.mirror) && this.iframeManager.addIframe(e), mb(e, this.mirror) && this.stylesheetManager.trackLinkElement(e), gb(i) && this.shadowDomManager.addShadowRoot(i.shadowRoot, this.doc)
},
onIframeLoad: (e, t) => {
this.iframeManager.attachIframe(e, t), e.contentWindow && this.canvasManager.addWindow(e.contentWindow), this.shadowDomManager.observeAttachShadow(e)
},
onStylesheetLoad: (e, t) => {
this.stylesheetManager.attachLinkElement(e, t)
}
});
s && (e.push({
parentId: a,
nextId: o,
node: s
}), t.add(s.id))
};
for (; this.mapRemoves.length;) this.mirror.removeNodeFromMap(this.mapRemoves.shift());
for (const s of this.movedSet) Lb(this.removes, s, this.mirror) && !this.movedSet.has(s.parentNode) || i(s);
for (const s of this.addedSet) Mb(this.droppedSet, s) || Lb(this.removes, s, this.mirror) ? Mb(this.movedSet, s) ? i(s) : this.droppedSet.add(s) : i(s);
let a = null;
for (; n.length;) {
let e = null;
if (a) {
const t = this.mirror.getId(a.value.parentNode),
n = r(a.value); - 1 !== t && -1 !== n && (e = a)
}
if (!e) {
let t = n.tail;
for (; t;) {
const n = t;
if (t = t.previous, n) {
const t = this.mirror.getId(n.value.parentNode);
if (-1 === r(n.value)) continue;
if (-1 !== t) {
e = n;
break
} {
const t = n.value;
if (t.parentNode && t.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {
const r = t.parentNode.host;
if (-1 !== this.mirror.getId(r)) {
e = n;
break
}
}
}
}
}
}
if (!e) {
for (; n.head;) n.removeNode(n.head.value);
break
}
a = e.previous, n.removeNode(e.value), i(e.value)
}
const o = {
texts: this.texts.map((e => ({
id: this.mirror.getId(e.node),
value: e.value
}))).filter((e => !t.has(e.id))).filter((e => this.mirror.has(e.id))),
attributes: this.attributes.map((e => {
const {
attributes: t
} = e;
if ("string" === typeof t.style) {
const n = JSON.stringify(e.styleDiff),
r = JSON.stringify(e._unchangedStyles);
n.length < t.style.length && (n + r).split("var(").length === t.style.split("var(").length && (t.style = e.styleDiff)
}
return {
id: this.mirror.getId(e.node),
attributes: t
}
})).filter((e => !t.has(e.id))).filter((e => this.mirror.has(e.id))),
removes: this.removes,
adds: e
};
(o.texts.length || o.attributes.length || o.removes.length || o.adds.length) && (this.texts = [], this.attributes = [], this.attributeMap = new WeakMap, this.removes = [], this.addedSet = new Set, this.movedSet = new Set, this.droppedSet = new Set, this.movedMap = {}, this.mutationCb(o))
}, this.processMutation = e => {
if (!db(e.target, this.mirror)) switch (e.type) {
case "characterData": {
const t = e.target.textContent;
ub(e.target, this.blockClass, this.blockSelector, this.unblockSelector, !1) || t === e.oldValue || this.texts.push({
value: K_(e.target, this.maskTextClass, this.maskTextSelector, this.unmaskTextClass, this.unmaskTextSelector, this.maskAllText) && t ? this.maskTextFn ? this.maskTextFn(t, cb(e.target)) : t.replace(/[\S]/g, "*") : t,
node: e.target
});
break
}
case "attributes": {
const n = e.target;
let r = e.attributeName,
i = e.target.getAttribute(r);
if ("value" === r) {
const t = k_(n),
r = n.tagName;
i = w_(n, r, t);
const a = v_({
maskInputOptions: this.maskInputOptions,
tagName: r,
type: t
});
i = y_({
isMasked: K_(e.target, this.maskTextClass, this.maskTextSelector, this.unmaskTextClass, this.unmaskTextSelector, a),
element: n,
value: i,
maskInputFn: this.maskInputFn
})
}
if (ub(e.target, this.blockClass, this.blockSelector, this.unblockSelector, !1) || i === e.oldValue) return;
let a = this.attributeMap.get(e.target);
if ("IFRAME" === n.tagName && "src" === r && !this.keepIframeSrcFn(i)) {
if (n.contentDocument) return;
r = "rr_src"
}
if (a || (a = {
node: e.target,
attributes: {},
styleDiff: {},
_unchangedStyles: {}
}, this.attributes.push(a), this.attributeMap.set(e.target, a)), "type" === r && "INPUT" === n.tagName && "password" === (e.oldValue || "").toLowerCase() && n.setAttribute("data-rr-is-password", "true"), !$_(n.tagName, r) && (a.attributes[r] = W_(this.doc, __(n.tagName), __(r), i, n, this.maskAttributeFn), "style" === r)) {
if (!this.unattachedDoc) try {
this.unattachedDoc = document.implementation.createHTMLDocument()
} catch (t) {
this.unattachedDoc = this.doc
}
const r = this.unattachedDoc.createElement("span");
e.oldValue && r.setAttribute("style", e.oldValue);
for (const e of Array.from(n.style)) {
const t = n.style.getPropertyValue(e),
i = n.style.getPropertyPriority(e);
t !== r.style.getPropertyValue(e) || i !== r.style.getPropertyPriority(e) ? a.styleDiff[e] = "" === i ? t : [t, i] : a._unchangedStyles[e] = [t, i]
}
for (const e of Array.from(r.style)) "" === n.style.getPropertyValue(e) && (a.styleDiff[e] = !1)
}
break
}
case "childList":
if (ub(e.target, this.blockClass, this.blockSelector, this.unblockSelector, !0)) return;
e.addedNodes.forEach((t => this.genAdds(t, e.target))), e.removedNodes.forEach((t => {
const n = this.mirror.getId(t),
r = p_(e.target) ? this.mirror.getId(e.target.host) : this.mirror.getId(e.target);
ub(e.target, this.blockClass, this.blockSelector, this.unblockSelector, !1) || db(t, this.mirror) || ! function(e, t) {
return -1 !== t.getId(e)
}(t, this.mirror) || (this.addedSet.has(t) ? (Db(this.addedSet, t), this.droppedSet.add(t)) : this.addedSet.has(e.target) && -1 === n || pb(e.target, this.mirror) || (this.movedSet.has(t) && this.movedMap[Tb(n, r)] ? Db(this.movedSet, t) : this.removes.push({
parentId: r,
id: n,
isShadow: !(!p_(e.target) || !h_(e.target)) || void 0
})), this.mapRemoves.push(t))
}))
}
}, this.genAdds = (e, t) => {
if (!this.processedNodeManager.inOtherBuffer(e, this) && !this.addedSet.has(e) && !this.movedSet.has(e)) {
if (this.mirror.hasNode(e)) {
if (db(e, this.mirror)) return;
this.movedSet.add(e);
let n = null;
t && this.mirror.hasNode(t) && (n = this.mirror.getId(t)), n && -1 !== n && (this.movedMap[Tb(this.mirror.getId(e), n)] = !0)
} else this.addedSet.add(e), this.droppedSet.delete(e);
ub(e, this.blockClass, this.blockSelector, this.unblockSelector, !1) || (e.childNodes.forEach((e => this.genAdds(e))), gb(e) && e.shadowRoot.childNodes.forEach((t => {
this.processedNodeManager.add(t, this), this.genAdds(t, e)
})))
}
}
}
init(e) {
["mutationCb", "blockClass", "blockSelector", "unblockSelector", "maskAllText", "maskTextClass", "unmaskTextClass", "maskTextSelector", "unmaskTextSelector", "inlineStylesheet", "maskInputOptions", "maskAttributeFn", "maskTextFn", "maskInputFn", "keepIframeSrcFn", "recordCanvas", "inlineImages", "slimDOMOptions", "dataURLOptions", "doc", "mirror", "iframeManager", "stylesheetManager", "shadowDomManager", "canvasManager", "processedNodeManager"].forEach((t => {
this[t] = e[t]
}))
}
freeze() {
this.frozen = !0, this.canvasManager.freeze()
}
unfreeze() {
this.frozen = !1, this.canvasManager.unfreeze(), this.emit()
}
isFrozen() {
return this.frozen
}
lock() {
this.locked = !0, this.canvasManager.lock()
}
unlock() {
this.locked = !1, this.canvasManager.unlock(), this.emit()
}
reset() {
this.shadowDomManager.reset(), this.canvasManager.reset()
}
}
function Db(e, t) {
e.delete(t), t.childNodes.forEach((t => Db(e, t)))
}
function Lb(e, t, n) {
return 0 !== e.length && Nb(e, t, n)
}
function Nb(e, t, n) {
const {
parentNode: r
} = t;
if (!r) return !1;
const i = n.getId(r);
return !!e.some((e => e.id === i)) || Nb(e, r, n)
}
function Mb(e, t) {
return 0 !== e.size && jb(e, t)
}
function jb(e, t) {
const {
parentNode: n
} = t;
return !!n && (!!e.has(n) || jb(e, n))
}
let Fb;
function zb(e) {
Fb = e
}
function Vb() {
Fb = void 0
}
const Ub = e => {
if (!Fb) return e;
return (...t) => {
try {
return e(...t)
} catch (n) {
if (Fb && !0 === Fb(n)) return () => {};
throw n
}
}
};
function Bb(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
const Gb = [];
function Wb(e) {
try {
if ("composedPath" in e) {
const t = e.composedPath();
if (t.length) return t[0]
} else if ("path" in e && e.path.length) return e.path[0]
} catch (ll) {}
return e && e.target
}
function $b(e, t) {
const n = new Rb;
Gb.push(n), n.init(e);
let r = window.MutationObserver || window.__rrMutationObserver;
const i = Bb([window, "optionalAccess", e => e.Zone, "optionalAccess", e => e.__symbol__, "optionalCall", e => e("MutationObserver")]);
i && window[i] && (r = window[i]);
const a = new r(Ub((t => {
e.onMutation && !1 === e.onMutation(t) || n.processMutations.bind(n)(t)
})));
return a.observe(t, {
attributes: !0,
attributeOldValue: !0,
characterData: !0,
characterDataOldValue: !0,
childList: !0,
subtree: !0
}), a
}
function qb({
mouseInteractionCb: e,
doc: t,
mirror: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
sampling: o
}) {
if (!1 === o.mouseInteraction) return () => {};
const s = !0 === o.mouseInteraction || void 0 === o.mouseInteraction ? {} : o.mouseInteraction,
l = [];
let c = null;
return Object.keys(Ib).filter((e => Number.isNaN(Number(e)) && !e.endsWith("_Departed") && !1 !== s[e])).forEach((o => {
let s = __(o);
const u = (t => o => {
const s = Wb(o);
if (ub(s, r, i, a, !0)) return;
let l = null,
u = t;
if ("pointerType" in o) {
switch (o.pointerType) {
case "mouse":
l = Ob.Mouse;
break;
case "touch":
l = Ob.Touch;
break;
case "pen":
l = Ob.Pen
}
l === Ob.Touch ? Ib[t] === Ib.MouseDown ? u = "TouchStart" : Ib[t] === Ib.MouseUp && (u = "TouchEnd") : Ob.Pen
} else hb(o) && (l = Ob.Touch);
null !== l ? (c = l, (u.startsWith("Touch") && l === Ob.Touch || u.startsWith("Mouse") && l === Ob.Mouse) && (l = null)) : Ib[t] === Ib.Click && (l = c, c = null);
const d = hb(o) ? o.changedTouches[0] : o;
if (!d) return;
const p = n.getId(s),
{
clientX: h,
clientY: f
} = d;
Ub(e)({
type: Ib[u],
id: p,
x: h,
y: f,
...null !== l && {
pointerType: l
}
})
})(o);
if (window.PointerEvent) switch (Ib[o]) {
case Ib.MouseDown:
case Ib.MouseUp:
s = s.replace("mouse", "pointer");
break;
case Ib.TouchStart:
case Ib.TouchEnd:
return
}
l.push(J_(s, u, t))
})), Ub((() => {
l.forEach((e => e()))
}))
}
function Hb({
scrollCb: e,
doc: t,
mirror: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
sampling: o
}) {
const s = Ub(nb(Ub((o => {
const s = Wb(o);
if (!s || ub(s, r, i, a, !0)) return;
const l = n.getId(s);
if (s === t && t.defaultView) {
const n = ob(t.defaultView);
e({
id: l,
x: n.left,
y: n.top
})
} else e({
id: l,
x: s.scrollLeft,
y: s.scrollTop
})
})), o.scroll || 100));
return J_("scroll", s, t)
}
const Kb = ["INPUT", "TEXTAREA", "SELECT"],
Yb = new WeakMap;
function Qb({
inputCb: e,
doc: t,
mirror: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
ignoreClass: o,
ignoreSelector: s,
maskInputOptions: l,
maskInputFn: c,
sampling: u,
userTriggeredOnInput: d,
maskTextClass: p,
unmaskTextClass: h,
maskTextSelector: f,
unmaskTextSelector: m
}) {
function g(e) {
let n = Wb(e);
const u = e.isTrusted,
g = n && b_(n.tagName);
if ("OPTION" === g && (n = n.parentElement), !n || !g || Kb.indexOf(g) < 0 || ub(n, r, i, a, !0)) return;
const y = n;
if (y.classList.contains(o) || s && y.matches(s)) return;
const _ = k_(n);
let b = w_(y, g, _),
x = !1;
const k = v_({
maskInputOptions: l,
tagName: g,
type: _
}),
w = K_(n, p, f, h, m, k);
"radio" !== _ && "checkbox" !== _ || (x = n.checked), b = y_({
isMasked: w,
element: n,
value: b,
maskInputFn: c
}), v(n, d ? {
text: b,
isChecked: x,
userTriggered: u
} : {
text: b,
isChecked: x
});
const S = n.name;
"radio" === _ && S && x && t.querySelectorAll(`input[type="radio"][name="${S}"]`).forEach((e => {
if (e !== n) {
const t = y_({
isMasked: w,
element: e,
value: w_(e, g, _),
maskInputFn: c
});
v(e, d ? {
text: t,
isChecked: !x,
userTriggered: !1
} : {
text: t,
isChecked: !x
})
}
}))
}
function v(t, r) {
const i = Yb.get(t);
if (!i || i.text !== r.text || i.isChecked !== r.isChecked) {
Yb.set(t, r);
const i = n.getId(t);
Ub(e)({
...r,
id: i
})
}
}
const y = ("last" === u.input ? ["change"] : ["input", "change"]).map((e => J_(e, Ub(g), t))),
_ = t.defaultView;
if (!_) return () => {
y.forEach((e => e()))
};
const b = _.Object.getOwnPropertyDescriptor(_.HTMLInputElement.prototype, "value"),
x = [
[_.HTMLInputElement.prototype, "value"],
[_.HTMLInputElement.prototype, "checked"],
[_.HTMLSelectElement.prototype, "value"],
[_.HTMLTextAreaElement.prototype, "value"],
[_.HTMLSelectElement.prototype, "selectedIndex"],
[_.HTMLOptionElement.prototype, "selected"]
];
return b && b.set && y.push(...x.map((e => rb(e[0], e[1], {
set() {
Ub(g)({
target: this,
isTrusted: !1
})
}
}, !1, _)))), Ub((() => {
y.forEach((e => e()))
}))
}
function Zb(e) {
return function(e, t) {
if (tx("CSSGroupingRule") && e.parentRule instanceof CSSGroupingRule || tx("CSSMediaRule") && e.parentRule instanceof CSSMediaRule || tx("CSSSupportsRule") && e.parentRule instanceof CSSSupportsRule || tx("CSSConditionRule") && e.parentRule instanceof CSSConditionRule) {
const n = Array.from(e.parentRule.cssRules).indexOf(e);
t.unshift(n)
} else if (e.parentStyleSheet) {
const n = Array.from(e.parentStyleSheet.cssRules).indexOf(e);
t.unshift(n)
}
return t
}(e, [])
}
function Xb(e, t, n) {
let r, i;
return e ? (e.ownerNode ? r = t.getId(e.ownerNode) : i = n.getId(e), {
styleId: i,
id: r
}) : {}
}
function Jb({
mirror: e,
stylesheetManager: t
}, n) {
let r = null;
r = "#document" === n.nodeName ? e.getId(n) : e.getId(n.host);
const i = "#document" === n.nodeName ? Bb([n, "access", e => e.defaultView, "optionalAccess", e => e.Document]) : Bb([n, "access", e => e.ownerDocument, "optionalAccess", e => e.defaultView, "optionalAccess", e => e.ShadowRoot]),
a = Bb([i, "optionalAccess", e => e.prototype]) ? Object.getOwnPropertyDescriptor(Bb([i, "optionalAccess", e => e.prototype]), "adoptedStyleSheets") : void 0;
return null !== r && -1 !== r && i && a ? (Object.defineProperty(n, "adoptedStyleSheets", {
configurable: a.configurable,
enumerable: a.enumerable,
get() {
return Bb([a, "access", e => e.get, "optionalAccess", e => e.call, "call", e => e(this)])
},
set(e) {
const n = Bb([a, "access", e => e.set, "optionalAccess", e => e.call, "call", t => t(this, e)]);
if (null !== r && -1 !== r) try {
t.adoptStyleSheets(e, r)
} catch (i) {}
return n
}
}), Ub((() => {
Object.defineProperty(n, "adoptedStyleSheets", {
configurable: a.configurable,
enumerable: a.enumerable,
get: a.get,
set: a.set
})
}))) : () => {}
}
function ex(e, t = {}) {
const n = e.doc.defaultView;
if (!n) return () => {};
let r;
e.recordDOM && (r = $b(e, e.doc));
const i = function({
mousemoveCb: e,
sampling: t,
doc: n,
mirror: r
}) {
if (!1 === t.mousemove) return () => {};
const i = "number" === typeof t.mousemove ? t.mousemove : 50,
a = "number" === typeof t.mousemoveCallback ? t.mousemoveCallback : 500;
let o, s = [];
const l = nb(Ub((t => {
const n = Date.now() - o;
e(s.map((e => (e.timeOffset -= n, e))), t), s = [], o = null
})), a),
c = Ub(nb(Ub((e => {
const t = Wb(e),
{
clientX: n,
clientY: i
} = hb(e) ? e.changedTouches[0] : e;
o || (o = ab()), s.push({
x: n,
y: i,
id: r.getId(t),
timeOffset: ab() - o
}), l("undefined" !== typeof DragEvent && e instanceof DragEvent ? Eb.Drag : e instanceof MouseEvent ? Eb.MouseMove : Eb.TouchMove)
})), i, {
trailing: !1
})),
u = [J_("mousemove", c, n), J_("touchmove", c, n), J_("drag", c, n)];
return Ub((() => {
u.forEach((e => e()))
}))
}(e),
a = qb(e),
o = Hb(e),
s = function({
viewportResizeCb: e
}, {
win: t
}) {
let n = -1,
r = -1;
return J_("resize", Ub(nb(Ub((() => {
const t = sb(),
i = lb();
n === t && r === i || (e({
width: Number(i),
height: Number(t)
}), n = t, r = i)
})), 200)), t)
}(e, {
win: n
}),
l = Qb(e),
c = function({
mediaInteractionCb: e,
blockClass: t,
blockSelector: n,
unblockSelector: r,
mirror: i,
sampling: a,
doc: o
}) {
const s = Ub((o => nb(Ub((a => {
const s = Wb(a);
if (!s || ub(s, t, n, r, !0)) return;
const {
currentTime: l,
volume: c,
muted: u,
playbackRate: d
} = s;
e({
type: o,
id: i.getId(s),
currentTime: l,
volume: c,
muted: u,
playbackRate: d
})
})), a.media || 500))),
l = [J_("play", s(0), o), J_("pause", s(1), o), J_("seeked", s(2), o), J_("volumechange", s(3), o), J_("ratechange", s(4), o)];
return Ub((() => {
l.forEach((e => e()))
}))
}(e);
let u = () => {},
d = () => {},
p = () => {},
h = () => {};
e.recordDOM && (u = function({
styleSheetRuleCb: e,
mirror: t,
stylesheetManager: n
}, {
win: r
}) {
if (!r.CSSStyleSheet || !r.CSSStyleSheet.prototype) return () => {};
const i = r.CSSStyleSheet.prototype.insertRule;
r.CSSStyleSheet.prototype.insertRule = new Proxy(i, {
apply: Ub(((r, i, a) => {
const [o, s] = a, {
id: l,
styleId: c
} = Xb(i, t, n.styleMirror);
return (l && -1 !== l || c && -1 !== c) && e({
id: l,
styleId: c,
adds: [{
rule: o,
index: s
}]
}), r.apply(i, a)
}))
});
const a = r.CSSStyleSheet.prototype.deleteRule;
let o, s;
r.CSSStyleSheet.prototype.deleteRule = new Proxy(a, {
apply: Ub(((r, i, a) => {
const [o] = a, {
id: s,
styleId: l
} = Xb(i, t, n.styleMirror);
return (s && -1 !== s || l && -1 !== l) && e({
id: s,
styleId: l,
removes: [{
index: o
}]
}), r.apply(i, a)
}))
}), r.CSSStyleSheet.prototype.replace && (o = r.CSSStyleSheet.prototype.replace, r.CSSStyleSheet.prototype.replace = new Proxy(o, {
apply: Ub(((r, i, a) => {
const [o] = a, {
id: s,
styleId: l
} = Xb(i, t, n.styleMirror);
return (s && -1 !== s || l && -1 !== l) && e({
id: s,
styleId: l,
replace: o
}), r.apply(i, a)
}))
})), r.CSSStyleSheet.prototype.replaceSync && (s = r.CSSStyleSheet.prototype.replaceSync, r.CSSStyleSheet.prototype.replaceSync = new Proxy(s, {
apply: Ub(((r, i, a) => {
const [o] = a, {
id: s,
styleId: l
} = Xb(i, t, n.styleMirror);
return (s && -1 !== s || l && -1 !== l) && e({
id: s,
styleId: l,
replaceSync: o
}), r.apply(i, a)
}))
}));
const l = {};
nx("CSSGroupingRule") ? l.CSSGroupingRule = r.CSSGroupingRule : (nx("CSSMediaRule") && (l.CSSMediaRule = r.CSSMediaRule), nx("CSSConditionRule") && (l.CSSConditionRule = r.CSSConditionRule), nx("CSSSupportsRule") && (l.CSSSupportsRule = r.CSSSupportsRule));
const c = {};
return Object.entries(l).forEach((([r, i]) => {
c[r] = {
insertRule: i.prototype.insertRule,
deleteRule: i.prototype.deleteRule
}, i.prototype.insertRule = new Proxy(c[r].insertRule, {
apply: Ub(((r, i, a) => {
const [o, s] = a, {
id: l,
styleId: c
} = Xb(i.parentStyleSheet, t, n.styleMirror);
return (l && -1 !== l || c && -1 !== c) && e({
id: l,
styleId: c,
adds: [{
rule: o,
index: [...Zb(i), s || 0]
}]
}), r.apply(i, a)
}))
}), i.prototype.deleteRule = new Proxy(c[r].deleteRule, {
apply: Ub(((r, i, a) => {
const [o] = a, {
id: s,
styleId: l
} = Xb(i.parentStyleSheet, t, n.styleMirror);
return (s && -1 !== s || l && -1 !== l) && e({
id: s,
styleId: l,
removes: [{
index: [...Zb(i), o]
}]
}), r.apply(i, a)
}))
})
})), Ub((() => {
r.CSSStyleSheet.prototype.insertRule = i, r.CSSStyleSheet.prototype.deleteRule = a, o && (r.CSSStyleSheet.prototype.replace = o), s && (r.CSSStyleSheet.prototype.replaceSync = s), Object.entries(l).forEach((([e, t]) => {
t.prototype.insertRule = c[e].insertRule, t.prototype.deleteRule = c[e].deleteRule
}))
}))
}(e, {
win: n
}), d = Jb(e, e.doc), p = function({
styleDeclarationCb: e,
mirror: t,
ignoreCSSAttributes: n,
stylesheetManager: r
}, {
win: i
}) {
const a = i.CSSStyleDeclaration.prototype.setProperty;
i.CSSStyleDeclaration.prototype.setProperty = new Proxy(a, {
apply: Ub(((i, o, s) => {
const [l, c, u] = s;
if (n.has(l)) return a.apply(o, [l, c, u]);
const {
id: d,
styleId: p
} = Xb(Bb([o, "access", e => e.parentRule, "optionalAccess", e => e.parentStyleSheet]), t, r.styleMirror);
return (d && -1 !== d || p && -1 !== p) && e({
id: d,
styleId: p,
set: {
property: l,
value: c,
priority: u
},
index: Zb(o.parentRule)
}), i.apply(o, s)
}))
});
const o = i.CSSStyleDeclaration.prototype.removeProperty;
return i.CSSStyleDeclaration.prototype.removeProperty = new Proxy(o, {
apply: Ub(((i, a, s) => {
const [l] = s;
if (n.has(l)) return o.apply(a, [l]);
const {
id: c,
styleId: u
} = Xb(Bb([a, "access", e => e.parentRule, "optionalAccess", e => e.parentStyleSheet]), t, r.styleMirror);
return (c && -1 !== c || u && -1 !== u) && e({
id: c,
styleId: u,
remove: {
property: l
},
index: Zb(a.parentRule)
}), i.apply(a, s)
}))
}), Ub((() => {
i.CSSStyleDeclaration.prototype.setProperty = a, i.CSSStyleDeclaration.prototype.removeProperty = o
}))
}(e, {
win: n
}), e.collectFonts && (h = function({
fontCb: e,
doc: t
}) {
const n = t.defaultView;
if (!n) return () => {};
const r = [],
i = new WeakMap,
a = n.FontFace;
n.FontFace = function(e, t, n) {
const r = new a(e, t, n);
return i.set(r, {
family: e,
buffer: "string" !== typeof t,
descriptors: n,
fontSource: "string" === typeof t ? t : JSON.stringify(Array.from(new Uint8Array(t)))
}), r
};
const o = ib(t.fonts, "add", (function(t) {
return function(n) {
return wb(Ub((() => {
const t = i.get(n);
t && (e(t), i.delete(n))
})), 0), t.apply(this, [n])
}
}));
return r.push((() => {
n.FontFace = a
})), r.push(o), Ub((() => {
r.forEach((e => e()))
}))
}(e)));
const f = function(e) {
const {
doc: t,
mirror: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
selectionCb: o
} = e;
let s = !0;
const l = Ub((() => {
const e = t.getSelection();
if (!e || s && Bb([e, "optionalAccess", e => e.isCollapsed])) return;
s = e.isCollapsed || !1;
const l = [],
c = e.rangeCount || 0;
for (let t = 0; t < c; t++) {
const o = e.getRangeAt(t),
{
startContainer: s,
startOffset: c,
endContainer: u,
endOffset: d
} = o;
ub(s, r, i, a, !0) || ub(u, r, i, a, !0) || l.push({
start: n.getId(s),
startOffset: c,
end: n.getId(u),
endOffset: d
})
}
o({
ranges: l
})
}));
return l(), J_("selectionchange", l)
}(e),
m = function({
doc: e,
customElementCb: t
}) {
const n = e.defaultView;
return n && n.customElements ? ib(n.customElements, "define", (function(e) {
return function(n, r, i) {
try {
t({
define: {
name: n
}
})
} catch (a) {}
return e.apply(this, [n, r, i])
}
})) : () => {}
}(e),
g = [];
for (const v of e.plugins) g.push(v.observer(v.callback, n, v.options));
return Ub((() => {
Gb.forEach((e => e.reset())), Bb([r, "optionalAccess", e => e.disconnect, "call", e => e()]), i(), a(), o(), s(), l(), c(), u(), d(), p(), h(), f(), m(), g.forEach((e => e()))
}))
}
function tx(e) {
return "undefined" !== typeof window[e]
}
function nx(e) {
return Boolean("undefined" !== typeof window[e] && window[e].prototype && "insertRule" in window[e].prototype && "deleteRule" in window[e].prototype)
}
class rx {
constructor(e) {
this.generateIdFn = e, this.iframeIdToRemoteIdMap = new WeakMap, this.iframeRemoteIdToIdMap = new WeakMap
}
getId(e, t, n, r) {
const i = n || this.getIdToRemoteIdMap(e),
a = r || this.getRemoteIdToIdMap(e);
let o = i.get(t);
return o || (o = this.generateIdFn(), i.set(t, o), a.set(o, t)), o
}
getIds(e, t) {
const n = this.getIdToRemoteIdMap(e),
r = this.getRemoteIdToIdMap(e);
return t.map((t => this.getId(e, t, n, r)))
}
getRemoteId(e, t, n) {
const r = n || this.getRemoteIdToIdMap(e);
if ("number" !== typeof t) return t;
const i = r.get(t);
return i || -1
}
getRemoteIds(e, t) {
const n = this.getRemoteIdToIdMap(e);
return t.map((t => this.getRemoteId(e, t, n)))
}
reset(e) {
if (!e) return this.iframeIdToRemoteIdMap = new WeakMap, void(this.iframeRemoteIdToIdMap = new WeakMap);
this.iframeIdToRemoteIdMap.delete(e), this.iframeRemoteIdToIdMap.delete(e)
}
getIdToRemoteIdMap(e) {
let t = this.iframeIdToRemoteIdMap.get(e);
return t || (t = new Map, this.iframeIdToRemoteIdMap.set(e, t)), t
}
getRemoteIdToIdMap(e) {
let t = this.iframeRemoteIdToIdMap.get(e);
return t || (t = new Map, this.iframeRemoteIdToIdMap.set(e, t)), t
}
}
function ix(e) {
let t, n = e[0],
r = 1;
for (; r < e.length;) {
const i = e[r],
a = e[r + 1];
if (r += 2, ("optionalAccess" === i || "optionalCall" === i) && null == n) return;
"access" === i || "optionalAccess" === i ? (t = n, n = a(n)) : "call" !== i && "optionalCall" !== i || (n = a(((...e) => n.call(t, ...e))), t = void 0)
}
return n
}
class ax {
constructor() {
this.crossOriginIframeMirror = new rx(T_), this.crossOriginIframeRootIdMap = new WeakMap
}
addIframe() {}
addLoadListener() {}
attachIframe() {}
}
class ox {
constructor(e) {
this.iframes = new WeakMap, this.crossOriginIframeMap = new WeakMap, this.crossOriginIframeMirror = new rx(T_), this.crossOriginIframeRootIdMap = new WeakMap, this.mutationCb = e.mutationCb, this.wrappedEmit = e.wrappedEmit, this.stylesheetManager = e.stylesheetManager, this.recordCrossOriginIframes = e.recordCrossOriginIframes, this.crossOriginIframeStyleMirror = new rx(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)), this.mirror = e.mirror, this.recordCrossOriginIframes && window.addEventListener("message", this.handleMessage.bind(this))
}
addIframe(e) {
this.iframes.set(e, !0), e.contentWindow && this.crossOriginIframeMap.set(e.contentWindow, e)
}
addLoadListener(e) {
this.loadListener = e
}
attachIframe(e, t) {
this.mutationCb({
adds: [{
parentId: this.mirror.getId(e),
nextId: null,
node: t
}],
removes: [],
texts: [],
attributes: [],
isAttachIframe: !0
}), ix([this, "access", e => e.loadListener, "optionalCall", t => t(e)]), e.contentDocument && e.contentDocument.adoptedStyleSheets && e.contentDocument.adoptedStyleSheets.length > 0 && this.stylesheetManager.adoptStyleSheets(e.contentDocument.adoptedStyleSheets, this.mirror.getId(e.contentDocument))
}
handleMessage(e) {
const t = e;
if ("rrweb" !== t.data.type || t.origin !== t.data.origin) return;
if (!e.source) return;
const n = this.crossOriginIframeMap.get(e.source);
if (!n) return;
const r = this.transformCrossOriginEvent(n, t.data.event);
r && this.wrappedEmit(r, t.data.isCheckout)
}
transformCrossOriginEvent(e, t) {
switch (t.type) {
case Sb.FullSnapshot: {
this.crossOriginIframeMirror.reset(e), this.crossOriginIframeStyleMirror.reset(e), this.replaceIdOnNode(t.data.node, e);
const n = t.data.node.id;
return this.crossOriginIframeRootIdMap.set(e, n), this.patchRootIdOnNode(t.data.node, n), {
timestamp: t.timestamp,
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Mutation,
adds: [{
parentId: this.mirror.getId(e),
nextId: null,
node: t.data.node
}],
removes: [],
texts: [],
attributes: [],
isAttachIframe: !0
}
}
}
case Sb.Meta:
case Sb.Load:
case Sb.DomContentLoaded:
return !1;
case Sb.Plugin:
return t;
case Sb.Custom:
return this.replaceIds(t.data.payload, e, ["id", "parentId", "previousId", "nextId"]), t;
case Sb.IncrementalSnapshot:
switch (t.data.source) {
case Eb.Mutation:
return t.data.adds.forEach((t => {
this.replaceIds(t, e, ["parentId", "nextId", "previousId"]), this.replaceIdOnNode(t.node, e);
const n = this.crossOriginIframeRootIdMap.get(e);
n && this.patchRootIdOnNode(t.node, n)
})), t.data.removes.forEach((t => {
this.replaceIds(t, e, ["parentId", "id"])
})), t.data.attributes.forEach((t => {
this.replaceIds(t, e, ["id"])
})), t.data.texts.forEach((t => {
this.replaceIds(t, e, ["id"])
})), t;
case Eb.Drag:
case Eb.TouchMove:
case Eb.MouseMove:
return t.data.positions.forEach((t => {
this.replaceIds(t, e, ["id"])
})), t;
case Eb.ViewportResize:
return !1;
case Eb.MediaInteraction:
case Eb.MouseInteraction:
case Eb.Scroll:
case Eb.CanvasMutation:
case Eb.Input:
return this.replaceIds(t.data, e, ["id"]), t;
case Eb.StyleSheetRule:
case Eb.StyleDeclaration:
return this.replaceIds(t.data, e, ["id"]), this.replaceStyleIds(t.data, e, ["styleId"]), t;
case Eb.Font:
return t;
case Eb.Selection:
return t.data.ranges.forEach((t => {
this.replaceIds(t, e, ["start", "end"])
})), t;
case Eb.AdoptedStyleSheet:
return this.replaceIds(t.data, e, ["id"]), this.replaceStyleIds(t.data, e, ["styleIds"]), ix([t, "access", e => e.data, "access", e => e.styles, "optionalAccess", e => e.forEach, "call", t => t((t => {
this.replaceStyleIds(t, e, ["styleId"])
}))]), t
}
}
return !1
}
replace(e, t, n, r) {
for (const i of r)(Array.isArray(t[i]) || "number" === typeof t[i]) && (Array.isArray(t[i]) ? t[i] = e.getIds(n, t[i]) : t[i] = e.getId(n, t[i]));
return t
}
replaceIds(e, t, n) {
return this.replace(this.crossOriginIframeMirror, e, t, n)
}
replaceStyleIds(e, t, n) {
return this.replace(this.crossOriginIframeStyleMirror, e, t, n)
}
replaceIdOnNode(e, t) {
this.replaceIds(e, t, ["id", "rootId"]), "childNodes" in e && e.childNodes.forEach((e => {
this.replaceIdOnNode(e, t)
}))
}
patchRootIdOnNode(e, t) {
e.type === d_.Document || e.rootId || (e.rootId = t), "childNodes" in e && e.childNodes.forEach((e => {
this.patchRootIdOnNode(e, t)
}))
}
}
class sx {
init() {}
addShadowRoot() {}
observeAttachShadow() {}
reset() {}
}
class lx {
constructor(e) {
this.shadowDoms = new WeakSet, this.restoreHandlers = [], this.mutationCb = e.mutationCb, this.scrollCb = e.scrollCb, this.bypassOptions = e.bypassOptions, this.mirror = e.mirror, this.init()
}
init() {
this.reset(), this.patchAttachShadow(Element, document)
}
addShadowRoot(e, t) {
if (!h_(e)) return;
if (this.shadowDoms.has(e)) return;
this.shadowDoms.add(e), this.bypassOptions.canvasManager.addShadowRoot(e);
const n = $b({
...this.bypassOptions,
doc: t,
mutationCb: this.mutationCb,
mirror: this.mirror,
shadowDomManager: this
}, e);
this.restoreHandlers.push((() => n.disconnect())), this.restoreHandlers.push(Hb({
...this.bypassOptions,
scrollCb: this.scrollCb,
doc: e,
mirror: this.mirror
})), wb((() => {
e.adoptedStyleSheets && e.adoptedStyleSheets.length > 0 && this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets, this.mirror.getId(e.host)), this.restoreHandlers.push(Jb({
mirror: this.mirror,
stylesheetManager: this.bypassOptions.stylesheetManager
}, e))
}), 0)
}
observeAttachShadow(e) {
e.contentWindow && e.contentDocument && this.patchAttachShadow(e.contentWindow.Element, e.contentDocument)
}
patchAttachShadow(e, t) {
const n = this;
this.restoreHandlers.push(ib(e.prototype, "attachShadow", (function(e) {
return function(r) {
const i = e.call(this, r);
return this.shadowRoot && bb(this) && n.addShadowRoot(this.shadowRoot, t), i
}
})))
}
reset() {
this.restoreHandlers.forEach((e => {
try {
e()
} catch (t) {}
})), this.restoreHandlers = [], this.shadowDoms = new WeakSet, this.bypassOptions.canvasManager.resetShadowRoots()
}
}
class cx {
reset() {}
freeze() {}
unfreeze() {}
lock() {}
unlock() {}
snapshot() {}
addWindow() {}
addShadowRoot() {}
resetShadowRoots() {}
}
class ux {
constructor(e) {
this.trackedLinkElements = new WeakSet, this.styleMirror = new vb, this.mutationCb = e.mutationCb, this.adoptedStyleSheetCb = e.adoptedStyleSheetCb
}
attachLinkElement(e, t) {
"_cssText" in t.attributes && this.mutationCb({
adds: [],
removes: [],
texts: [],
attributes: [{
id: t.id,
attributes: t.attributes
}]
}), this.trackLinkElement(e)
}
trackLinkElement(e) {
this.trackedLinkElements.has(e) || (this.trackedLinkElements.add(e), this.trackStylesheetInLinkElement(e))
}
adoptStyleSheets(e, t) {
if (0 === e.length) return;
const n = {
id: t,
styleIds: []
},
r = [];
for (const i of e) {
let e;
this.styleMirror.has(i) ? e = this.styleMirror.getId(i) : (e = this.styleMirror.add(i), r.push({
styleId: e,
rules: Array.from(i.rules || CSSRule, ((e, t) => ({
rule: m_(e),
index: t
})))
})), n.styleIds.push(e)
}
r.length > 0 && (n.styles = r), this.adoptedStyleSheetCb(n)
}
reset() {
this.styleMirror.reset(), this.trackedLinkElements = new WeakSet
}
trackStylesheetInLinkElement(e) {}
}
class dx {
constructor() {
this.nodeMap = new WeakMap, this.loop = !0, this.periodicallyClear()
}
periodicallyClear() {
! function(...e) {
kb("requestAnimationFrame")(...e)
}((() => {
this.clear(), this.loop && this.periodicallyClear()
}))
}
inOtherBuffer(e, t) {
const n = this.nodeMap.get(e);
return n && Array.from(n).some((e => e !== t))
}
add(e, t) {
this.nodeMap.set(e, (this.nodeMap.get(e) || new Set).add(t))
}
clear() {
this.nodeMap = new WeakMap
}
destroy() {
this.loop = !1
}
}
let px, hx;
try {
if (2 !== Array.from([1], (e => 2 * e))[0]) {
const e = document.createElement("iframe");
document.body.appendChild(e), Array.from = Zy([e, "access", e => e.contentWindow, "optionalAccess", e => e.Array, "access", e => e.from]) || Array.from, document.body.removeChild(e)
}
} catch (OD) {
console.debug("Unable to override Array.from", OD)
}
const fx = new g_;
function mx(e = {}) {
const {
emit: t,
checkoutEveryNms: n,
checkoutEveryNth: r,
blockClass: i = "rr-block",
blockSelector: a = null,
unblockSelector: o = null,
ignoreClass: s = "rr-ignore",
ignoreSelector: l = null,
maskAllText: c = !1,
maskTextClass: u = "rr-mask",
unmaskTextClass: d = null,
maskTextSelector: p = null,
unmaskTextSelector: h = null,
inlineStylesheet: f = !0,
maskAllInputs: m,
maskInputOptions: g,
slimDOMOptions: v,
maskAttributeFn: y,
maskInputFn: _,
maskTextFn: b,
maxCanvasSize: x = null,
packFn: k,
sampling: w = {},
dataURLOptions: S = {},
mousemoveWait: E,
recordDOM: I = !0,
recordCanvas: O = !1,
recordCrossOriginIframes: C = !1,
recordAfter: A = ("DOMContentLoaded" === e.recordAfter ? e.recordAfter : "load"),
userTriggeredOnInput: P = !1,
collectFonts: T = !1,
inlineImages: R = !1,
plugins: D,
keepIframeSrcFn: L = (() => !1),
ignoreCSSAttributes: N = new Set([]),
errorHandler: M,
onMutation: j,
getCanvasManager: F
} = e;
zb(M);
const z = !C || window.parent === window;
let V = !1;
if (!z) try {
window.parent.document && (V = !1)
} catch (te) {
V = !0
}
if (z && !t) throw new Error("emit function is required");
void 0 !== E && void 0 === w.mousemove && (w.mousemove = E), fx.reset();
const U = !0 === m ? {
color: !0,
date: !0,
"datetime-local": !0,
email: !0,
month: !0,
number: !0,
range: !0,
search: !0,
tel: !0,
text: !0,
time: !0,
url: !0,
week: !0,
textarea: !0,
select: !0,
radio: !0,
checkbox: !0
} : void 0 !== g ? g : {},
B = !0 === v || "all" === v ? {
script: !0,
comment: !0,
headFavicon: !0,
headWhitespace: !0,
headMetaSocial: !0,
headMetaRobots: !0,
headMetaHttpEquiv: !0,
headMetaVerification: !0,
headMetaAuthorship: "all" === v,
headMetaDescKeywords: "all" === v
} : v || {};
let G;
! function(e = window) {
"NodeList" in e && !e.NodeList.prototype.forEach && (e.NodeList.prototype.forEach = Array.prototype.forEach), "DOMTokenList" in e && !e.DOMTokenList.prototype.forEach && (e.DOMTokenList.prototype.forEach = Array.prototype.forEach), Node.prototype.contains || (Node.prototype.contains = (...e) => {
let t = e[0];
if (!(0 in e)) throw new TypeError("1 argument is required");
do {
if (this === t) return !0
} while (t = t && t.parentNode);
return !1
})
}();
let W = 0;
const $ = e => {
for (const t of D || []) t.eventProcessor && (e = t.eventProcessor(e));
return k && !V && (e = k(e)), e
};
px = (e, i) => {
const a = e;
if (a.timestamp = ab(), !Zy([Gb, "access", e => e[0], "optionalAccess", e => e.isFrozen, "call", e => e()]) || a.type === Sb.FullSnapshot || a.type === Sb.IncrementalSnapshot && a.data.source === Eb.Mutation || Gb.forEach((e => e.unfreeze())), z) Zy([t, "optionalCall", e => e($(a), i)]);
else if (V) {
const e = {
type: "rrweb",
event: $(a),
origin: window.location.origin,
isCheckout: i
};
window.parent.postMessage(e, "*")
}
if (a.type === Sb.FullSnapshot) G = a, W = 0;
else if (a.type === Sb.IncrementalSnapshot) {
if (a.data.source === Eb.Mutation && a.data.isAttachIframe) return;
W++;
const e = r && W >= r,
t = n && G && a.timestamp - G.timestamp > n;
(e || t) && ee(!0)
}
};
const q = e => {
px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Mutation,
...e
}
})
},
H = e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Scroll,
...e
}
}),
K = e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.CanvasMutation,
...e
}
}),
Y = new ux({
mutationCb: q,
adoptedStyleSheetCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.AdoptedStyleSheet,
...e
}
})
}),
Q = "boolean" === typeof __RRWEB_EXCLUDE_IFRAME__ && __RRWEB_EXCLUDE_IFRAME__ ? new ax : new ox({
mirror: fx,
mutationCb: q,
stylesheetManager: Y,
recordCrossOriginIframes: C,
wrappedEmit: px
});
for (const re of D || []) re.getMirror && re.getMirror({
nodeMirror: fx,
crossOriginIframeMirror: Q.crossOriginIframeMirror,
crossOriginIframeStyleMirror: Q.crossOriginIframeStyleMirror
});
const Z = new dx,
X = function(e, t) {
try {
return e ? e(t) : new cx
} catch (ll) {
return console.warn("Unable to initialize CanvasManager"), new cx
}
}(F, {
mirror: fx,
win: window,
mutationCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.CanvasMutation,
...e
}
}),
recordCanvas: O,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maxCanvasSize: x,
sampling: w.canvas,
dataURLOptions: S,
errorHandler: M
}),
J = "boolean" === typeof __RRWEB_EXCLUDE_SHADOW_DOM__ && __RRWEB_EXCLUDE_SHADOW_DOM__ ? new sx : new lx({
mutationCb: q,
scrollCb: H,
bypassOptions: {
onMutation: j,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: c,
maskTextClass: u,
unmaskTextClass: d,
maskTextSelector: p,
unmaskTextSelector: h,
inlineStylesheet: f,
maskInputOptions: U,
dataURLOptions: S,
maskAttributeFn: y,
maskTextFn: b,
maskInputFn: _,
recordCanvas: O,
inlineImages: R,
sampling: w,
slimDOMOptions: B,
iframeManager: Q,
stylesheetManager: Y,
canvasManager: X,
keepIframeSrcFn: L,
processedNodeManager: Z
},
mirror: fx
}),
ee = (e = !1) => {
if (!I) return;
px({
type: Sb.Meta,
data: {
href: window.location.href,
width: lb(),
height: sb()
}
}, e), Y.reset(), J.init(), Gb.forEach((e => e.lock()));
const t = function(e, t) {
const {
mirror: n = new g_,
blockClass: r = "rr-block",
blockSelector: i = null,
unblockSelector: a = null,
maskAllText: o = !1,
maskTextClass: s = "rr-mask",
unmaskTextClass: l = null,
maskTextSelector: c = null,
unmaskTextSelector: u = null,
inlineStylesheet: d = !0,
inlineImages: p = !1,
recordCanvas: h = !1,
maskAllInputs: f = !1,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOM: y = !1,
dataURLOptions: _,
preserveWhiteSpace: b,
onSerialize: x,
onIframeLoad: k,
iframeLoadTimeout: w,
onStylesheetLoad: S,
stylesheetLoadTimeout: E,
keepIframeSrcFn: I = (() => !1)
} = t || {};
return Z_(e, {
doc: e,
mirror: n,
blockClass: r,
blockSelector: i,
unblockSelector: a,
maskAllText: o,
maskTextClass: s,
unmaskTextClass: l,
maskTextSelector: c,
unmaskTextSelector: u,
skipChild: !1,
inlineStylesheet: d,
maskInputOptions: !0 === f ? {
color: !0,
date: !0,
"datetime-local": !0,
email: !0,
month: !0,
number: !0,
range: !0,
search: !0,
tel: !0,
text: !0,
time: !0,
url: !0,
week: !0,
textarea: !0,
select: !0
} : !1 === f ? {} : f,
maskAttributeFn: m,
maskTextFn: g,
maskInputFn: v,
slimDOMOptions: !0 === y || "all" === y ? {
script: !0,
comment: !0,
headFavicon: !0,
headWhitespace: !0,
headMetaDescKeywords: "all" === y,
headMetaSocial: !0,
headMetaRobots: !0,
headMetaHttpEquiv: !0,
headMetaAuthorship: !0,
headMetaVerification: !0
} : !1 === y ? {} : y,
dataURLOptions: _,
inlineImages: p,
recordCanvas: h,
preserveWhiteSpace: b,
onSerialize: x,
onIframeLoad: k,
iframeLoadTimeout: w,
onStylesheetLoad: S,
stylesheetLoadTimeout: E,
keepIframeSrcFn: I,
newlyAddedElement: !1
})
}(document, {
mirror: fx,
blockClass: i,
blockSelector: a,
unblockSelector: o,
maskAllText: c,
maskTextClass: u,
unmaskTextClass: d,
maskTextSelector: p,
unmaskTextSelector: h,
inlineStylesheet: f,
maskAllInputs: U,
maskAttributeFn: y,
maskInputFn: _,
maskTextFn: b,
slimDOM: B,
dataURLOptions: S,
recordCanvas: O,
inlineImages: R,
onSerialize: e => {
fb(e, fx) && Q.addIframe(e), mb(e, fx) && Y.trackLinkElement(e), gb(e) && J.addShadowRoot(e.shadowRoot, document)
},
onIframeLoad: (e, t) => {
Q.attachIframe(e, t), e.contentWindow && X.addWindow(e.contentWindow), J.observeAttachShadow(e)
},
onStylesheetLoad: (e, t) => {
Y.attachLinkElement(e, t)
},
keepIframeSrcFn: L
});
if (!t) return console.warn("Failed to snapshot the document");
px({
type: Sb.FullSnapshot,
data: {
node: t,
initialOffset: ob(window)
}
}), Gb.forEach((e => e.unlock())), document.adoptedStyleSheets && document.adoptedStyleSheets.length > 0 && Y.adoptStyleSheets(document.adoptedStyleSheets, fx.getId(document))
};
hx = ee;
try {
const e = [],
t = e => Ub(ex)({
onMutation: j,
mutationCb: q,
mousemoveCb: (e, t) => px({
type: Sb.IncrementalSnapshot,
data: {
source: t,
positions: e
}
}),
mouseInteractionCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.MouseInteraction,
...e
}
}),
scrollCb: H,
viewportResizeCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.ViewportResize,
...e
}
}),
inputCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Input,
...e
}
}),
mediaInteractionCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.MediaInteraction,
...e
}
}),
styleSheetRuleCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.StyleSheetRule,
...e
}
}),
styleDeclarationCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.StyleDeclaration,
...e
}
}),
canvasMutationCb: K,
fontCb: e => px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Font,
...e
}
}),
selectionCb: e => {
px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.Selection,
...e
}
})
},
customElementCb: e => {
px({
type: Sb.IncrementalSnapshot,
data: {
source: Eb.CustomElement,
...e
}
})
},
blockClass: i,
ignoreClass: s,
ignoreSelector: l,
maskAllText: c,
maskTextClass: u,
unmaskTextClass: d,
maskTextSelector: p,
unmaskTextSelector: h,
maskInputOptions: U,
inlineStylesheet: f,
sampling: w,
recordDOM: I,
recordCanvas: O,
inlineImages: R,
userTriggeredOnInput: P,
collectFonts: T,
doc: e,
maskAttributeFn: y,
maskInputFn: _,
maskTextFn: b,
keepIframeSrcFn: L,
blockSelector: a,
unblockSelector: o,
slimDOMOptions: B,
dataURLOptions: S,
mirror: fx,
iframeManager: Q,
stylesheetManager: Y,
shadowDomManager: J,
processedNodeManager: Z,
canvasManager: X,
ignoreCSSAttributes: N,
plugins: Zy([D, "optionalAccess", e => e.filter, "call", e => e((e => e.observer)), "optionalAccess", e => e.map, "call", e => e((e => ({
observer: e.observer,
options: e.options,
callback: t => px({
type: Sb.Plugin,
data: {
plugin: e.name,
payload: t
}
})
})))]) || []
}, {});
Q.addLoadListener((n => {
try {
e.push(t(n.contentDocument))
} catch (r) {
console.warn(r)
}
}));
const n = () => {
ee(), e.push(t(document))
};
return "interactive" === document.readyState || "complete" === document.readyState ? n() : (e.push(J_("DOMContentLoaded", (() => {
px({
type: Sb.DomContentLoaded,
data: {}
}), "DOMContentLoaded" === A && n()
}))), e.push(J_("load", (() => {
px({
type: Sb.Load,
data: {}
}), "load" === A && n()
}), window))), () => {
e.forEach((e => e())), Z.destroy(), hx = void 0, Vb()
}
} catch (ne) {
console.warn(ne)
}
}
mx.mirror = fx, mx.takeFullSnapshot = function(e) {
if (!hx) throw new Error("please take full snapshot after start recording");
hx(e)
};
function gx(e) {
return e > 9999999999 ? e : 1e3 * e
}
function vx(e) {
return e > 9999999999 ? e / 1e3 : e
}
function yx(e, t) {
"sentry.transaction" !== t.category && (["ui.click", "ui.input"].includes(t.category) ? e.triggerUserActivity() : e.checkAndHandleExpiredSession(), e.addUpdate((() => (e.throttledAddEvent({
type: Sb.Custom,
timestamp: 1e3 * (t.timestamp || 0),
data: {
tag: "breadcrumb",
payload: Yn(t, 10, 1e3)
}
}), "console" === t.category))))
}
function _x(e) {
return e.closest("button,a") || e
}
function bx(e) {
const t = xx(e);
return t && t instanceof Element ? _x(t) : t
}
function xx(e) {
return function(e) {
return "object" === typeof e && !!e && "target" in e
}(e) ? e.target : e
}
let kx;
function wx(e) {
return kx || (kx = [], tn(n_, "open", (function(e) {
return function(...t) {
if (kx) try {
kx.forEach((e => e()))
} catch (n) {}
return e.apply(n_, t)
}
}))), kx.push(e), () => {
const t = kx ? kx.indexOf(e) : -1;
t > -1 && kx.splice(t, 1)
}
}
class Sx {
constructor(e, t, n = yx) {
this._lastMutation = 0, this._lastScroll = 0, this._clicks = [], this._timeout = t.timeout / 1e3, this._threshold = t.threshold / 1e3, this._scollTimeout = t.scrollTimeout / 1e3, this._replay = e, this._ignoreSelector = t.ignoreSelector, this._addBreadcrumbEvent = n
}
addListeners() {
const e = wx((() => {
this._lastMutation = Ix()
}));
this._teardown = () => {
e(), this._clicks = [], this._lastMutation = 0, this._lastScroll = 0
}
}
removeListeners() {
this._teardown && this._teardown(), this._checkClickTimeout && clearTimeout(this._checkClickTimeout)
}
handleClick(e, t) {
if (function(e, t) {
if (!Ex.includes(e.tagName)) return !0;
if ("INPUT" === e.tagName && !["submit", "button"].includes(e.getAttribute("type") || "")) return !0;
if ("A" === e.tagName && (e.hasAttribute("download") || e.hasAttribute("target") && "_self" !== e.getAttribute("target"))) return !0;
if (t && e.matches(t)) return !0;
return !1
}(t, this._ignoreSelector) || ! function(e) {
return !(!e.data || "number" !== typeof e.data.nodeId || !e.timestamp)
}(e)) return;
const n = {
timestamp: vx(e.timestamp),
clickBreadcrumb: e,
clickCount: 0,
node: t
};
this._clicks.some((e => e.node === n.node && Math.abs(e.timestamp - n.timestamp) < 1)) || (this._clicks.push(n), 1 === this._clicks.length && this._scheduleCheckClicks())
}
registerMutation(e = Date.now()) {
this._lastMutation = vx(e)
}
registerScroll(e = Date.now()) {
this._lastScroll = vx(e)
}
registerClick(e) {
const t = _x(e);
this._handleMultiClick(t)
}
_handleMultiClick(e) {
this._getClicks(e).forEach((e => {
e.clickCount++
}))
}
_getClicks(e) {
return this._clicks.filter((t => t.node === e))
}
_checkClicks() {
const e = [],
t = Ix();
this._clicks.forEach((n => {
!n.mutationAfter && this._lastMutation && (n.mutationAfter = n.timestamp <= this._lastMutation ? this._lastMutation - n.timestamp : void 0), !n.scrollAfter && this._lastScroll && (n.scrollAfter = n.timestamp <= this._lastScroll ? this._lastScroll - n.timestamp : void 0), n.timestamp + this._timeout <= t && e.push(n)
}));
for (const n of e) {
const e = this._clicks.indexOf(n);
e > -1 && (this._generateBreadcrumbs(n), this._clicks.splice(e, 1))
}
this._clicks.length && this._scheduleCheckClicks()
}
_generateBreadcrumbs(e) {
const t = this._replay,
n = e.scrollAfter && e.scrollAfter <= this._scollTimeout,
r = e.mutationAfter && e.mutationAfter <= this._threshold,
i = !n && !r,
{
clickCount: a,
clickBreadcrumb: o
} = e;
if (i) {
const n = 1e3 * Math.min(e.mutationAfter || this._timeout, this._timeout),
r = n < 1e3 * this._timeout ? "mutation" : "timeout",
i = {
type: "default",
message: o.message,
timestamp: o.timestamp,
category: "ui.slowClickDetected",
data: {
...o.data,
url: n_.location.href,
route: t.getCurrentRoute(),
timeAfterClickMs: n,
endReason: r,
clickCount: a || 1
}
};
this._addBreadcrumbEvent(t, i)
} else if (a > 1) {
const e = {
type: "default",
message: o.message,
timestamp: o.timestamp,
category: "ui.multiClick",
data: {
...o.data,
url: n_.location.href,
route: t.getCurrentRoute(),
clickCount: a,
metric: !0
}
};
this._addBreadcrumbEvent(t, e)
}
}
_scheduleCheckClicks() {
this._checkClickTimeout && clearTimeout(this._checkClickTimeout), this._checkClickTimeout = _o((() => this._checkClicks()), 1e3)
}
}
const Ex = ["A", "BUTTON", "INPUT"];
function Ix() {
return Date.now() / 1e3
}
function Ox(e, t) {
try {
if (! function(e) {
return 3 === e.type
}(t)) return;
const {
source: n
} = t.data;
if (n === Eb.Mutation && e.registerMutation(t.timestamp), n === Eb.Scroll && e.registerScroll(t.timestamp), function(e) {
return e.data.source === Eb.MouseInteraction
}(t)) {
const {
type: n,
id: r
} = t.data, i = mx.mirror.getNode(r);
i instanceof HTMLElement && n === Ib.Click && e.registerClick(i)
}
} catch (n) {}
}
function Cx(e) {
return {
timestamp: Date.now() / 1e3,
type: "default",
...e
}
}
var Ax;
! function(e) {
e[e.Document = 0] = "Document", e[e.DocumentType = 1] = "DocumentType", e[e.Element = 2] = "Element", e[e.Text = 3] = "Text", e[e.CDATA = 4] = "CDATA", e[e.Comment = 5] = "Comment"
}(Ax || (Ax = {}));
const Px = new Set(["id", "class", "aria-label", "role", "name", "alt", "title", "data-test-id", "data-testid", "disabled", "aria-disabled", "data-sentry-component"]);
function Tx(e) {
const t = {};
!e["data-sentry-component"] && e["data-sentry-element"] && (e["data-sentry-component"] = e["data-sentry-element"]);
for (const n in e)
if (Px.has(n)) {
let r = n;
"data-testid" !== n && "data-test-id" !== n || (r = "testId"), t[r] = e[n]
} return t
}
const Rx = e => t => {
if (!e.isEnabled()) return;
const n = function(e) {
const {
target: t,
message: n
} = function(e) {
const t = "click" === e.name;
let n, r = null;
try {
r = t ? bx(e.event) : xx(e.event), n = Bt(r, {
maxStringLength: 200
}) || "<unknown>"
} catch (i) {
n = "<unknown>"
}
return {
target: r,
message: n
}
}(e);
return Cx({
category: `ui.${e.name}`,
...Dx(t, n)
})
}(t);
if (!n) return;
const r = "click" === t.name,
i = r ? t.event : void 0;
!(r && e.clickDetector && i && i.target) || i.altKey || i.metaKey || i.ctrlKey || i.shiftKey || function(e, t, n) {
e.handleClick(t, n)
}(e.clickDetector, n, bx(t.event)), yx(e, n)
};
function Dx(e, t) {
const n = mx.mirror.getId(e),
r = n && mx.mirror.getNode(n),
i = r && mx.mirror.getMeta(r),
a = i && function(e) {
return e.type === Ax.Element
}(i) ? i : null;
return {
message: t,
data: a ? {
nodeId: n,
node: {
id: n,
tagName: a.tagName,
textContent: Array.from(a.childNodes).map((e => e.type === Ax.Text && e.textContent)).filter(Boolean).map((e => e.trim())).join(""),
attributes: Tx(a.attributes)
}
} : {}
}
}
function Lx(e, t) {
if (!e.isEnabled()) return;
e.updateUserActivity();
const n = function(e) {
const {
metaKey: t,
shiftKey: n,
ctrlKey: r,
altKey: i,
key: a,
target: o
} = e;
if (!o || function(e) {
return "INPUT" === e.tagName || "TEXTAREA" === e.tagName || e.isContentEditable
}(o) || !a) return null;
const s = t || r || i,
l = 1 === a.length;
if (!s && l) return null;
const c = Bt(o, {
maxStringLength: 200
}) || "<unknown>",
u = Dx(o, c);
return Cx({
category: "ui.keyDown",
message: c,
data: {
...u.data,
metaKey: t,
shiftKey: n,
ctrlKey: r,
altKey: i,
key: a
}
})
}(t);
n && yx(e, n)
}
const Nx = {
resource: function(e) {
const {
entryType: t,
initiatorType: n,
name: r,
responseEnd: i,
startTime: a,
decodedBodySize: o,
encodedBodySize: s,
responseStatus: l,
transferSize: c
} = e;
if (["fetch", "xmlhttprequest"].includes(n)) return null;
return {
type: `${t}.${n}`,
start: Fx(a),
end: Fx(i),
name: r,
data: {
size: c,
statusCode: l,
decodedBodySize: o,
encodedBodySize: s
}
}
},
paint: function(e) {
const {
duration: t,
entryType: n,
name: r,
startTime: i
} = e, a = Fx(i);
return {
type: n,
name: r,
start: a,
end: a + t,
data: void 0
}
},
navigation: function(e) {
const {
entryType: t,
name: n,
decodedBodySize: r,
duration: i,
domComplete: a,
encodedBodySize: o,
domContentLoadedEventStart: s,
domContentLoadedEventEnd: l,
domInteractive: c,
loadEventStart: u,
loadEventEnd: d,
redirectCount: p,
startTime: h,
transferSize: f,
type: m
} = e;
if (0 === i) return null;
return {
type: `${t}.${m}`,
start: Fx(h),
end: Fx(a),
name: n,
data: {
size: f,
decodedBodySize: r,
encodedBodySize: o,
duration: i,
domInteractive: c,
domContentLoadedEventStart: s,
domContentLoadedEventEnd: l,
loadEventStart: u,
loadEventEnd: d,
domComplete: a,
redirectCount: p
}
}
}
};
function Mx(e, t) {
return ({
metric: n
}) => {
t.replayPerformanceEntries.push(e(n))
}
}
function jx(e) {
const t = Nx[e.entryType];
return t ? t(e) : null
}
function Fx(e) {
return ((kn || n_.performance.timeOrigin) + e) / 1e3
}
function zx(e) {
const t = e.entries[e.entries.length - 1];
return Gx(e, "largest-contentful-paint", t ? t.element : void 0)
}
function Vx(e) {
const t = e.entries[0];
return Gx(e, "cumulative-layout-shift", t && t.sources && t.sources[0] ? t.sources[0].node : void 0)
}
function Ux(e) {
const t = e.entries[e.entries.length - 1];
return Gx(e, "first-input-delay", t ? t.target : void 0)
}
function Bx(e) {
const t = e.entries[e.entries.length - 1];
return Gx(e, "interaction-to-next-paint", t ? t.target : void 0)
}
function Gx(e, t, n) {
const r = e.value,
i = e.rating,
a = Fx(r);
return {
type: "web-vital",
name: t,
start: a,
end: a,
data: {
value: r,
size: r,
rating: i,
nodeId: n ? mx.mirror.getId(n) : void 0
}
}
}
const Wx = "undefined" === typeof __SENTRY_DEBUG__ || __SENTRY_DEBUG__;
function $x(e, t) {
Wx && (Qt.info(e), t && Hx(e))
}
function qx(e, t) {
Wx && (Qt.info(e), t && _o((() => {
Hx(e)
}), 0))
}
function Hx(e) {
Oa({
category: "console",
data: {
logger: "replay"
},
level: "info",
message: e
}, {
level: "info"
})
}
class Kx extends Error {
constructor() {
super("Event buffer exceeded maximum size of 20000000.")
}
}
class Yx {
constructor() {
this.events = [], this._totalSize = 0, this.hasCheckout = !1
}
get hasEvents() {
return this.events.length > 0
}
get type() {
return "sync"
}
destroy() {
this.events = []
}
async addEvent(e) {
const t = JSON.stringify(e).length;
if (this._totalSize += t, this._totalSize > s_) throw new Kx;
this.events.push(e)
}
finish() {
return new Promise((e => {
const t = this.events;
this.clear(), e(JSON.stringify(t))
}))
}
clear() {
this.events = [], this._totalSize = 0, this.hasCheckout = !1
}
getEarliestTimestamp() {
const e = this.events.map((e => e.timestamp)).sort()[0];
return e ? gx(e) : null
}
}
class Qx {
constructor(e) {
this._worker = e, this._id = 0
}
ensureReady() {
return this._ensureReadyPromise || (this._ensureReadyPromise = new Promise(((e, t) => {
this._worker.addEventListener("message", (({
data: n
}) => {
n.success ? e() : t()
}), {
once: !0
}), this._worker.addEventListener("error", (e => {
t(e)
}), {
once: !0
})
}))), this._ensureReadyPromise
}
destroy() {
$x("[Replay] Destroying compression worker"), this._worker.terminate()
}
postMessage(e, t) {
const n = this._getAndIncrementId();
return new Promise(((r, i) => {
const a = ({
data: t
}) => {
const o = t;
if (o.method === e && o.id === n) {
if (this._worker.removeEventListener("message", a), !o.success) return Wx && Qt.error("[Replay]", o.response), void i(new Error("Error in compression worker"));
r(o.response)
}
};
this._worker.addEventListener("message", a), this._worker.postMessage({
id: n,
method: e,
arg: t
})
}))
}
_getAndIncrementId() {
return this._id++
}
}
class Zx {
constructor(e) {
this._worker = new Qx(e), this._earliestTimestamp = null, this._totalSize = 0, this.hasCheckout = !1
}
get hasEvents() {
return !!this._earliestTimestamp
}
get type() {
return "worker"
}
ensureReady() {
return this._worker.ensureReady()
}
destroy() {
this._worker.destroy()
}
addEvent(e) {
const t = gx(e.timestamp);
(!this._earliestTimestamp || t < this._earliestTimestamp) && (this._earliestTimestamp = t);
const n = JSON.stringify(e);
return this._totalSize += n.length, this._totalSize > s_ ? Promise.reject(new Kx) : this._sendEventToWorker(n)
}
finish() {
return this._finishRequest()
}
clear() {
this._earliestTimestamp = null, this._totalSize = 0, this.hasCheckout = !1, this._worker.postMessage("clear").then(null, (e => {
Wx && Qt.warn('[Replay] Sending "clear" message to worker failed', e)
}))
}
getEarliestTimestamp() {
return this._earliestTimestamp
}
_sendEventToWorker(e) {
return this._worker.postMessage("addEvent", e)
}
async _finishRequest() {
const e = await this._worker.postMessage("finish");
return this._earliestTimestamp = null, this._totalSize = 0, e
}
}
class Xx {
constructor(e) {
this._fallback = new Yx, this._compression = new Zx(e), this._used = this._fallback, this._ensureWorkerIsLoadedPromise = this._ensureWorkerIsLoaded()
}
get type() {
return this._used.type
}
get hasEvents() {
return this._used.hasEvents
}
get hasCheckout() {
return this._used.hasCheckout
}
set hasCheckout(e) {
this._used.hasCheckout = e
}
destroy() {
this._fallback.destroy(), this._compression.destroy()
}
clear() {
return this._used.clear()
}
getEarliestTimestamp() {
return this._used.getEarliestTimestamp()
}
addEvent(e) {
return this._used.addEvent(e)
}
async finish() {
return await this.ensureWorkerIsLoaded(), this._used.finish()
}
ensureWorkerIsLoaded() {
return this._ensureWorkerIsLoadedPromise
}
async _ensureWorkerIsLoaded() {
try {
await this._compression.ensureReady()
} catch (e) {
return void $x("[Replay] Failed to load the compression worker, falling back to simple buffer")
}
await this._switchToCompressionWorker()
}
async _switchToCompressionWorker() {
const {
events: e,
hasCheckout: t
} = this._fallback, n = [];
for (const i of e) n.push(this._compression.addEvent(i));
this._compression.hasCheckout = t, this._used = this._compression;
try {
await Promise.all(n)
} catch (r) {
Wx && Qt.warn("[Replay] Failed to add events when switching buffers.", r)
}
}
}
function Jx({
useCompression: e,
workerUrl: t
}) {
if (e && window.Worker) {
const e = function(e) {
try {
const t = e || function() {
if ("undefined" === typeof __SENTRY_EXCLUDE_REPLAY_WORKER__ || !__SENTRY_EXCLUDE_REPLAY_WORKER__) return function() {
const e = new Blob(['var t=Uint8Array,n=Uint16Array,r=Int32Array,e=new t([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),i=new t([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),a=new t([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),s=function(t,e){for(var i=new n(31),a=0;a<31;++a)i[a]=e+=1<<t[a-1];var s=new r(i[30]);for(a=1;a<30;++a)for(var o=i[a];o<i[a+1];++o)s[o]=o-i[a]<<5|a;return{b:i,r:s}},o=s(e,2),f=o.b,h=o.r;f[28]=258,h[258]=28;for(var l=s(i,0).r,u=new n(32768),c=0;c<32768;++c){var v=(43690&c)>>1|(21845&c)<<1;v=(61680&(v=(52428&v)>>2|(13107&v)<<2))>>4|(3855&v)<<4,u[c]=((65280&v)>>8|(255&v)<<8)>>1}var d=function(t,r,e){for(var i=t.length,a=0,s=new n(r);a<i;++a)t[a]&&++s[t[a]-1];var o,f=new n(r);for(a=1;a<r;++a)f[a]=f[a-1]+s[a-1]<<1;if(e){o=new n(1<<r);var h=15-r;for(a=0;a<i;++a)if(t[a])for(var l=a<<4|t[a],c=r-t[a],v=f[t[a]-1]++<<c,d=v|(1<<c)-1;v<=d;++v)o[u[v]>>h]=l}else for(o=new n(i),a=0;a<i;++a)t[a]&&(o[a]=u[f[t[a]-1]++]>>15-t[a]);return o},g=new t(288);for(c=0;c<144;++c)g[c]=8;for(c=144;c<256;++c)g[c]=9;for(c=256;c<280;++c)g[c]=7;for(c=280;c<288;++c)g[c]=8;var w=new t(32);for(c=0;c<32;++c)w[c]=5;var p=d(g,9,0),y=d(w,5,0),m=function(t){return(t+7)/8|0},b=function(n,r,e){return(null==r||r<0)&&(r=0),(null==e||e>n.length)&&(e=n.length),new t(n.subarray(r,e))},M=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],E=function(t,n,r){var e=new Error(n||M[t]);if(e.code=t,Error.captureStackTrace&&Error.captureStackTrace(e,E),!r)throw e;return e},z=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8},A=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8,t[e+2]|=r>>16},_=function(r,e){for(var i=[],a=0;a<r.length;++a)r[a]&&i.push({s:a,f:r[a]});var s=i.length,o=i.slice();if(!s)return{t:F,l:0};if(1==s){var f=new t(i[0].s+1);return f[i[0].s]=1,{t:f,l:1}}i.sort((function(t,n){return t.f-n.f})),i.push({s:-1,f:25001});var h=i[0],l=i[1],u=0,c=1,v=2;for(i[0]={s:-1,f:h.f+l.f,l:h,r:l};c!=s-1;)h=i[i[u].f<i[v].f?u++:v++],l=i[u!=c&&i[u].f<i[v].f?u++:v++],i[c++]={s:-1,f:h.f+l.f,l:h,r:l};var d=o[0].s;for(a=1;a<s;++a)o[a].s>d&&(d=o[a].s);var g=new n(d+1),w=x(i[c-1],g,0);if(w>e){a=0;var p=0,y=w-e,m=1<<y;for(o.sort((function(t,n){return g[n.s]-g[t.s]||t.f-n.f}));a<s;++a){var b=o[a].s;if(!(g[b]>e))break;p+=m-(1<<w-g[b]),g[b]=e}for(p>>=y;p>0;){var M=o[a].s;g[M]<e?p-=1<<e-g[M]++-1:++a}for(;a>=0&&p;--a){var E=o[a].s;g[E]==e&&(--g[E],++p)}w=e}return{t:new t(g),l:w}},x=function(t,n,r){return-1==t.s?Math.max(x(t.l,n,r+1),x(t.r,n,r+1)):n[t.s]=r},D=function(t){for(var r=t.length;r&&!t[--r];);for(var e=new n(++r),i=0,a=t[0],s=1,o=function(t){e[i++]=t},f=1;f<=r;++f)if(t[f]==a&&f!=r)++s;else{if(!a&&s>2){for(;s>138;s-=138)o(32754);s>2&&(o(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(o(a),--s;s>6;s-=6)o(8304);s>2&&(o(s-3<<5|8208),s=0)}for(;s--;)o(a);s=1,a=t[f]}return{c:e.subarray(0,i),n:r}},T=function(t,n){for(var r=0,e=0;e<n.length;++e)r+=t[e]*n[e];return r},k=function(t,n,r){var e=r.length,i=m(n+2);t[i]=255&e,t[i+1]=e>>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var a=0;a<e;++a)t[i+a+4]=r[a];return 8*(i+4+e)},C=function(t,r,s,o,f,h,l,u,c,v,m){z(r,m++,s),++f[256];for(var b=_(f,15),M=b.t,E=b.l,x=_(h,15),C=x.t,U=x.l,F=D(M),I=F.c,S=F.n,L=D(C),O=L.c,j=L.n,q=new n(19),B=0;B<I.length;++B)++q[31&I[B]];for(B=0;B<O.length;++B)++q[31&O[B]];for(var G=_(q,7),H=G.t,J=G.l,K=19;K>4&&!H[a[K-1]];--K);var N,P,Q,R,V=v+5<<3,W=T(f,g)+T(h,w)+l,X=T(f,M)+T(h,C)+l+14+3*K+T(q,H)+2*q[16]+3*q[17]+7*q[18];if(c>=0&&V<=W&&V<=X)return k(r,m,t.subarray(c,c+v));if(z(r,m,1+(X<W)),m+=2,X<W){N=d(M,E,0),P=M,Q=d(C,U,0),R=C;var Y=d(H,J,0);z(r,m,S-257),z(r,m+5,j-1),z(r,m+10,K-4),m+=14;for(B=0;B<K;++B)z(r,m+3*B,H[a[B]]);m+=3*K;for(var Z=[I,O],$=0;$<2;++$){var tt=Z[$];for(B=0;B<tt.length;++B){var nt=31&tt[B];z(r,m,Y[nt]),m+=H[nt],nt>15&&(z(r,m,tt[B]>>5&127),m+=tt[B]>>12)}}}else N=p,P=g,Q=y,R=w;for(B=0;B<u;++B){var rt=o[B];if(rt>255){A(r,m,N[(nt=rt>>18&31)+257]),m+=P[nt+257],nt>7&&(z(r,m,rt>>23&31),m+=e[nt]);var et=31&rt;A(r,m,Q[et]),m+=R[et],et>3&&(A(r,m,rt>>5&8191),m+=i[et])}else A(r,m,N[rt]),m+=P[rt]}return A(r,m,N[256]),m+P[256]},U=new r([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),F=new t(0),I=function(){for(var t=new Int32Array(256),n=0;n<256;++n){for(var r=n,e=9;--e;)r=(1&r&&-306674912)^r>>>1;t[n]=r}return t}(),S=function(){var t=-1;return{p:function(n){for(var r=t,e=0;e<n.length;++e)r=I[255&r^n[e]]^r>>>8;t=r},d:function(){return~t}}},L=function(){var t=1,n=0;return{p:function(r){for(var e=t,i=n,a=0|r.length,s=0;s!=a;){for(var o=Math.min(s+2655,a);s<o;++s)i+=e+=r[s];e=(65535&e)+15*(e>>16),i=(65535&i)+15*(i>>16)}t=e,n=i},d:function(){return(255&(t%=65521))<<24|(65280&t)<<8|(255&(n%=65521))<<8|n>>8}}},O=function(a,s,o,f,u){if(!u&&(u={l:1},s.dictionary)){var c=s.dictionary.subarray(-32768),v=new t(c.length+a.length);v.set(c),v.set(a,c.length),a=v,u.w=c.length}return function(a,s,o,f,u,c){var v=c.z||a.length,d=new t(f+v+5*(1+Math.ceil(v/7e3))+u),g=d.subarray(f,d.length-u),w=c.l,p=7&(c.r||0);if(s){p&&(g[0]=c.r>>3);for(var y=U[s-1],M=y>>13,E=8191&y,z=(1<<o)-1,A=c.p||new n(32768),_=c.h||new n(z+1),x=Math.ceil(o/3),D=2*x,T=function(t){return(a[t]^a[t+1]<<x^a[t+2]<<D)&z},F=new r(25e3),I=new n(288),S=new n(32),L=0,O=0,j=c.i||0,q=0,B=c.w||0,G=0;j+2<v;++j){var H=T(j),J=32767&j,K=_[H];if(A[J]=K,_[H]=J,B<=j){var N=v-j;if((L>7e3||q>24576)&&(N>423||!w)){p=C(a,g,0,F,I,S,O,q,G,j-G,p),q=L=O=0,G=j;for(var P=0;P<286;++P)I[P]=0;for(P=0;P<30;++P)S[P]=0}var Q=2,R=0,V=E,W=J-K&32767;if(N>2&&H==T(j-W))for(var X=Math.min(M,N)-1,Y=Math.min(32767,j),Z=Math.min(258,N);W<=Y&&--V&&J!=K;){if(a[j+Q]==a[j+Q-W]){for(var $=0;$<Z&&a[j+$]==a[j+$-W];++$);if($>Q){if(Q=$,R=W,$>X)break;var tt=Math.min(W,$-2),nt=0;for(P=0;P<tt;++P){var rt=j-W+P&32767,et=rt-A[rt]&32767;et>nt&&(nt=et,K=rt)}}}W+=(J=K)-(K=A[J])&32767}if(R){F[q++]=268435456|h[Q]<<18|l[R];var it=31&h[Q],at=31&l[R];O+=e[it]+i[at],++I[257+it],++S[at],B=j+Q,++L}else F[q++]=a[j],++I[a[j]]}}for(j=Math.max(j,B);j<v;++j)F[q++]=a[j],++I[a[j]];p=C(a,g,w,F,I,S,O,q,G,j-G,p),w||(c.r=7&p|g[p/8|0]<<3,p-=7,c.h=_,c.p=A,c.i=j,c.w=B)}else{for(j=c.w||0;j<v+w;j+=65535){var st=j+65535;st>=v&&(g[p/8|0]=w,st=v),p=k(g,p+1,a.subarray(j,st))}c.i=v}return b(d,0,f+m(p)+u)}(a,null==s.level?6:s.level,null==s.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(a.length)))):12+s.mem,o,f,u)},j=function(t,n,r){for(;r;++n)t[n]=r,r>>>=8},q=function(t,n){var r=n.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=n.level<2?4:9==n.level?2:0,t[9]=3,0!=n.mtime&&j(t,4,Math.floor(new Date(n.mtime||Date.now())/1e3)),r){t[3]=8;for(var e=0;e<=r.length;++e)t[e+10]=r.charCodeAt(e)}},B=function(t){return 10+(t.filename?t.filename.length+1:0)},G=function(){function n(n,r){if("function"==typeof n&&(r=n,n={}),this.ondata=r,this.o=n||{},this.s={l:0,i:32768,w:32768,z:32768},this.b=new t(98304),this.o.dictionary){var e=this.o.dictionary.subarray(-32768);this.b.set(e,32768-e.length),this.s.i=32768-e.length}}return n.prototype.p=function(t,n){this.ondata(O(t,this.o,0,0,this.s),n)},n.prototype.push=function(n,r){this.ondata||E(5),this.s.l&&E(4);var e=n.length+this.s.z;if(e>this.b.length){if(e>2*this.b.length-32768){var i=new t(-32768&e);i.set(this.b.subarray(0,this.s.z)),this.b=i}var a=this.b.length-this.s.z;a&&(this.b.set(n.subarray(0,a),this.s.z),this.s.z=this.b.length,this.p(this.b,!1)),this.b.set(this.b.subarray(-32768)),this.b.set(n.subarray(a),32768),this.s.z=n.length-a+32768,this.s.i=32766,this.s.w=32768}else this.b.set(n,this.s.z),this.s.z+=n.length;this.s.l=1&r,(this.s.z>this.s.w+8191||r)&&(this.p(this.b,r||!1),this.s.w=this.s.i,this.s.i-=2)},n}();var H=function(){function t(t,n){this.c=L(),this.v=1,G.call(this,t,n)}return t.prototype.push=function(t,n){this.c.p(t),G.prototype.push.call(this,t,n)},t.prototype.p=function(t,n){var r=O(t,this.o,this.v&&(this.o.dictionary?6:2),n&&4,this.s);this.v&&(function(t,n){var r=n.level,e=0==r?0:r<6?1:9==r?3:2;if(t[0]=120,t[1]=e<<6|(n.dictionary&&32),t[1]|=31-(t[0]<<8|t[1])%31,n.dictionary){var i=L();i.p(n.dictionary),j(t,2,i.d())}}(r,this.o),this.v=0),n&&j(r,r.length-4,this.c.d()),this.ondata(r,n)},t}(),J="undefined"!=typeof TextEncoder&&new TextEncoder,K="undefined"!=typeof TextDecoder&&new TextDecoder;try{K.decode(F,{stream:!0})}catch(t){}var N=function(){function t(t){this.ondata=t}return t.prototype.push=function(t,n){this.ondata||E(5),this.d&&E(4),this.ondata(P(t),this.d=n||!1)},t}();function P(n,r){if(r){for(var e=new t(n.length),i=0;i<n.length;++i)e[i]=n.charCodeAt(i);return e}if(J)return J.encode(n);var a=n.length,s=new t(n.length+(n.length>>1)),o=0,f=function(t){s[o++]=t};for(i=0;i<a;++i){if(o+5>s.length){var h=new t(o+8+(a-i<<1));h.set(s),s=h}var l=n.charCodeAt(i);l<128||r?f(l):l<2048?(f(192|l>>6),f(128|63&l)):l>55295&&l<57344?(f(240|(l=65536+(1047552&l)|1023&n.charCodeAt(++i))>>18),f(128|l>>12&63),f(128|l>>6&63),f(128|63&l)):(f(224|l>>12),f(128|l>>6&63),f(128|63&l))}return b(s,0,o)}function Q(t){return function(t,n){n||(n={});var r=S(),e=t.length;r.p(t);var i=O(t,n,B(n),8),a=i.length;return q(i,n),j(i,a-8,r.d()),j(i,a-4,e),i}(P(t))}const R=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const n=this._hasEvents?",":"";this.stream.push(n+t),this._hasEvents=!0}finish(){this.stream.push("]",!0);const t=function(t){let n=0;for(const r of t)n+=r.length;const r=new Uint8Array(n);for(let n=0,e=0,i=t.length;n<i;n++){const i=t[n];r.set(i,e),e+=i.length}return r}(this._deflatedData);return this._init(),t}_init(){this._hasEvents=!1,this._deflatedData=[],this.deflate=new H,this.deflate.ondata=(t,n)=>{this._deflatedData.push(t)},this.stream=new N(((t,n)=>{this.deflate.push(t,n)})),this.stream.push("[")}},V={clear:()=>{R.clear()},addEvent:t=>R.addEvent(t),finish:()=>R.finish(),compress:t=>Q(t)};addEventListener("message",(function(t){const n=t.data.method,r=t.data.id,e=t.data.arg;if(n in V&&"function"==typeof V[n])try{const t=V[n](e);postMessage({id:r,method:n,success:!0,response:t})}catch(t){postMessage({id:r,method:n,success:!1,response:t.message}),console.error(t)}})),postMessage({id:void 0,method:"init",success:!0,response:void 0});']);
return URL.createObjectURL(e)
}();
return ""
}();
if (!t) return;
$x("[Replay] Using compression worker" + (e ? ` from ${e}` : ""));
const n = new Worker(t);
return new Xx(n)
} catch (t) {
$x("[Replay] Failed to create compression worker")
}
}(t);
if (e) return e
}
return $x("[Replay] Using simple buffer"), new Yx
}
function ek() {
try {
return "sessionStorage" in n_ && !!n_.sessionStorage
} catch (e) {
return !1
}
}
function tk(e) {
! function() {
if (!ek()) return;
try {
n_.sessionStorage.removeItem(r_)
} catch (e) {}
}(), e.session = void 0
}
function nk(e) {
return void 0 !== e && Math.random() < e
}
function rk(e) {
const t = Date.now();
return {
id: e.id || dn(),
started: e.started || t,
lastActivity: e.lastActivity || t,
segmentId: e.segmentId || 0,
sampled: e.sampled,
previousSessionId: e.previousSessionId
}
}
function ik(e) {
if (ek()) try {
n_.sessionStorage.setItem(r_, JSON.stringify(e))
} catch (t) {}
}
function ak({
sessionSampleRate: e,
allowBuffering: t,
stickySession: n = !1
}, {
previousSessionId: r
} = {}) {
const i = function(e, t) {
return nk(e) ? "session" : !!t && "buffer"
}(e, t),
a = rk({
sampled: i,
previousSessionId: r
});
return n && ik(a), a
}
function ok(e, t, n = +new Date) {
return null === e || void 0 === t || t < 0 || 0 !== t && e + t <= n
}
function sk(e, {
maxReplayDuration: t,
sessionIdleExpire: n,
targetTime: r = Date.now()
}) {
return ok(e.started, t, r) || ok(e.lastActivity, n, r)
}
function lk(e, {
sessionIdleExpire: t,
maxReplayDuration: n
}) {
return !!sk(e, {
sessionIdleExpire: t,
maxReplayDuration: n
}) && ("buffer" !== e.sampled || 0 !== e.segmentId)
}
function ck({
traceInternals: e,
sessionIdleExpire: t,
maxReplayDuration: n,
previousSessionId: r
}, i) {
const a = i.stickySession && function(e) {
if (!ek()) return null;
try {
const t = n_.sessionStorage.getItem(r_);
if (!t) return null;
const n = JSON.parse(t);
return qx("[Replay] Loading existing session", e), rk(n)
} catch (t) {
return null
}
}(e);
return a ? lk(a, {
sessionIdleExpire: t,
maxReplayDuration: n
}) ? (qx("[Replay] Session in sessionStorage is expired, creating new one..."), ak(i, {
previousSessionId: a.id
})) : a : (qx("[Replay] Creating new session", e), ak(i, {
previousSessionId: r
}))
}
function uk(e, t, n) {
return !!pk(e, t) && (dk(e, t, n), !0)
}
async function dk(e, t, n) {
if (!e.eventBuffer) return null;
try {
n && "buffer" === e.recordingMode && e.eventBuffer.clear(), n && (e.eventBuffer.hasCheckout = !0);
const r = function(e, t) {
try {
if ("function" === typeof t && function(e) {
return e.type === Sb.Custom
}(e)) return t(e)
} catch (n) {
return Wx && Qt.error("[Replay] An error occured in the `beforeAddRecordingEvent` callback, skipping the event...", n), null
}
return e
}(t, e.getOptions().beforeAddRecordingEvent);
if (!r) return;
return await e.eventBuffer.addEvent(r)
} catch (r) {
const t = r && r instanceof Kx ? "addEventSizeExceeded" : "addEvent";
Wx && Qt.error(r), await e.stop({
reason: t
});
const n = zn();
n && n.recordDroppedEvent("internal_sdk_error", "replay")
}
}
function pk(e, t) {
if (!e.eventBuffer || e.isPaused() || !e.isEnabled()) return !1;
const n = gx(t.timestamp);
return !(n + e.timeouts.sessionIdlePause < Date.now()) && (!(n > e.getContext().initialTimestamp + e.getOptions().maxReplayDuration) || (qx(`[Replay] Skipping event with timestamp ${n} because it is after maxReplayDuration`, e.getOptions()._experiments.traceInternals), !1))
}
function hk(e) {
return !e.type
}
function fk(e) {
return "transaction" === e.type
}
function mk(e) {
return "feedback" === e.type
}
function gk(e) {
return (t, n) => {
if (!e.isEnabled() || !hk(t) && !fk(t)) return;
const r = n && n.statusCode;
!r || r < 200 || r >= 300 || (fk(t) ? function(e, t) {
const n = e.getContext();
t.contexts && t.contexts.trace && t.contexts.trace.trace_id && n.traceIds.size < 100 && n.traceIds.add(t.contexts.trace.trace_id)
}(e, t) : function(e, t) {
const n = e.getContext();
t.event_id && n.errorIds.size < 100 && n.errorIds.add(t.event_id);
if ("buffer" !== e.recordingMode || !t.tags || !t.tags.replayId) return;
const {
beforeErrorSampling: r
} = e.getOptions();
if ("function" === typeof r && !r(t)) return;
_o((() => {
e.sendBufferedReplayOrFlush()
}))
}(e, t))
}
}
function vk(e) {
return t => {
e.isEnabled() && hk(t) && function(e, t) {
const n = t.exception && t.exception.values && t.exception.values[0] && t.exception.values[0].value;
if ("string" !== typeof n) return;
if (n.match(/(reactjs\.org\/docs\/error-decoder\.html\?invariant=|react\.dev\/errors\/)(418|419|422|423|425)/) || n.match(/(does not match server-rendered HTML|Hydration failed because)/i)) {
yx(e, Cx({
category: "replay.hydrate-error",
data: {
url: Wt()
}
}))
}
}(e, t)
}
}
function yk(e) {
const t = zn();
t && t.on("beforeAddBreadcrumb", (t => function(e, t) {
if (!e.isEnabled() || !_k(t)) return;
const n = function(e) {
if (!_k(e) || ["fetch", "xhr", "sentry.event", "sentry.transaction"].includes(e.category) || e.category.startsWith("ui.")) return null;
if ("console" === e.category) return function(e) {
const t = e.data && e.data.arguments;
if (!Array.isArray(t) || 0 === t.length) return Cx(e);
let n = !1;
const r = t.map((e => {
if (!e) return e;
if ("string" === typeof e) return e.length > o_ ? (n = !0, `${e.slice(0,o_)}\u2026`) : e;
if ("object" === typeof e) try {
const t = Yn(e, 7);
return JSON.stringify(t).length > o_ ? (n = !0, `${JSON.stringify(t,null,2).slice(0,o_)}\u2026`) : t
} catch (t) {}
return e
}));
return Cx({
...e,
data: {
...e.data,
arguments: r,
...n ? {
_meta: {
warnings: ["CONSOLE_ARG_TRUNCATED"]
}
} : {}
}
})
}(e);
return Cx(e)
}(t);
n && yx(e, n)
}(e, t)))
}
function _k(e) {
return !!e.category
}
function bk(e) {
return Object.assign(((t, n) => {
if (!e.isEnabled()) return t;
if (function(e) {
return "replay_event" === e.type
}(t)) return delete t.breadcrumbs, t;
if (!hk(t) && !fk(t) && !mk(t)) return t;
if (!e.checkAndHandleExpiredSession()) return t;
if (mk(t)) return e.flush(), t.contexts.feedback.replay_id = e.getSessionId(),
function(e, t) {
e.triggerUserActivity(), e.addUpdate((() => !t.timestamp || (e.throttledAddEvent({
type: Sb.Custom,
timestamp: 1e3 * t.timestamp,
data: {
tag: "breadcrumb",
payload: {
timestamp: t.timestamp,
type: "default",
category: "sentry.feedback",
data: {
feedbackId: t.event_id
}
}
}
}), !1)))
}(e, t), t;
if (function(e, t) {
return !(e.type || !e.exception || !e.exception.values || !e.exception.values.length) && !(!t.originalException || !t.originalException.__rrweb__)
}(t, n) && !e.getOptions()._experiments.captureExceptions) return Wx && Qt.log("[Replay] Ignoring error from rrweb internals", t), null;
const r = function(e, t) {
return "buffer" === e.recordingMode && t.message !== i_ && !(!t.exception || t.type) && nk(e.getOptions().errorSampleRate)
}(e, t);
return (r || "session" === e.recordingMode) && (t.tags = {
...t.tags,
replayId: e.getSessionId()
}), t
}), {
id: "Replay"
})
}
function xk(e, t) {
return t.map((({
type: t,
start: n,
end: r,
name: i,
data: a
}) => {
const o = e.throttledAddEvent({
type: Sb.Custom,
timestamp: n,
data: {
tag: "performanceSpan",
payload: {
op: t,
description: i,
startTimestamp: n,
endTimestamp: r,
data: a
}
}
});
return "string" === typeof o ? Promise.resolve(null) : o
}))
}
function kk(e) {
return t => {
if (!e.isEnabled()) return;
const n = function(e) {
const {
from: t,
to: n
} = e, r = Date.now() / 1e3;
return {
type: "navigation.push",
start: r,
end: r,
name: n,
data: {
previous: t
}
}
}(t);
null !== n && (e.getContext().urls.push(n.name), e.triggerUserActivity(), e.addUpdate((() => (xk(e, [n]), !1))))
}
}
function wk(e, t) {
e.isEnabled() && null !== t && (function(e, t) {
return (!Wx || !e.getOptions()._experiments.traceInternals) && Xy(t, zn())
}(e, t.name) || e.addUpdate((() => (xk(e, [t]), !0))))
}
function Sk(e) {
if (!e) return;
const t = new TextEncoder;
try {
if ("string" === typeof e) return t.encode(e).length;
if (e instanceof URLSearchParams) return t.encode(e.toString()).length;
if (e instanceof FormData) {
const n = Rk(e);
return t.encode(n).length
}
if (e instanceof Blob) return e.size;
if (e instanceof ArrayBuffer) return e.byteLength
} catch (n) {}
}
function Ek(e) {
if (!e) return;
const t = parseInt(e, 10);
return isNaN(t) ? void 0 : t
}
function Ik(e) {
try {
if ("string" === typeof e) return [e];
if (e instanceof URLSearchParams) return [e.toString()];
if (e instanceof FormData) return [Rk(e)];
if (!e) return [void 0]
} catch (ll) {
return Wx && Qt.warn("[Replay] Failed to serialize body", e), [void 0, "BODY_PARSE_ERROR"]
}
return Wx && Qt.info("[Replay] Skipping network body because of body type", e), [void 0, "UNPARSEABLE_BODY_TYPE"]
}
function Ok(e, t) {
if (!e) return {
headers: {},
size: void 0,
_meta: {
warnings: [t]
}
};
const n = {
...e._meta
},
r = n.warnings || [];
return n.warnings = [...r, t], e._meta = n, e
}
function Ck(e, t) {
if (!t) return null;
const {
startTimestamp: n,
endTimestamp: r,
url: i,
method: a,
statusCode: o,
request: s,
response: l
} = t;
return {
type: e,
start: n / 1e3,
end: r / 1e3,
name: i,
data: cn({
method: a,
statusCode: o,
request: s,
response: l
})
}
}
function Ak(e) {
return {
headers: {},
size: e,
_meta: {
warnings: ["URL_SKIPPED"]
}
}
}
function Pk(e, t, n) {
if (!t && 0 === Object.keys(e).length) return;
if (!t) return {
headers: e
};
if (!n) return {
headers: e,
size: t
};
const r = {
headers: e,
size: t
},
{
body: i,
warnings: a
} = function(e) {
if (!e || "string" !== typeof e) return {
body: e
};
const t = e.length > a_,
n = function(e) {
const t = e[0],
n = e[e.length - 1];
return "[" === t && "]" === n || "{" === t && "}" === n
}(e);
if (t) {
const t = e.slice(0, a_);
return n ? {
body: t,
warnings: ["MAYBE_JSON_TRUNCATED"]
} : {
body: `${t}\u2026`,
warnings: ["TEXT_TRUNCATED"]
}
}
if (n) try {
return {
body: JSON.parse(e)
}
} catch (cl) {}
return {
body: e
}
}(n);
return r.body = i, a && a.length > 0 && (r._meta = {
warnings: a
}), r
}
function Tk(e, t) {
return Object.entries(e).reduce(((n, [r, i]) => {
const a = r.toLowerCase();
return t.includes(a) && e[r] && (n[a] = i), n
}), {})
}
function Rk(e) {
return new URLSearchParams(e).toString()
}
function Dk(e, t) {
const n = function(e, t = n_.document.baseURI) {
if (e.startsWith("http://") || e.startsWith("https://") || e.startsWith(n_.location.origin)) return e;
const n = new URL(e, t);
if (n.origin !== new URL(t).origin) return e;
const r = n.href;
if (!e.endsWith("/") && r.endsWith("/")) return r.slice(0, -1);
return r
}(e);
return en(n, t)
}
async function Lk(e, t, n) {
try {
const r = await async function(e, t, n) {
const r = Date.now(),
{
startTimestamp: i = r,
endTimestamp: a = r
} = t,
{
url: o,
method: s,
status_code: l = 0,
request_body_size: c,
response_body_size: u
} = e.data,
d = Dk(o, n.networkDetailAllowUrls) && !Dk(o, n.networkDetailDenyUrls),
p = d ? function({
networkCaptureBodies: e,
networkRequestHeaders: t
}, n, r) {
const i = n ? function(e, t) {
if (1 === e.length && "string" !== typeof e[0]) return jk(e[0], t);
if (2 === e.length) return jk(e[1], t);
return {}
}(n, t) : {};
if (!e) return Pk(i, r, void 0);
const a = Nk(n),
[o, s] = Ik(a),
l = Pk(i, r, o);
if (s) return Ok(l, s);
return l
}(n, t.input, c) : Ak(c),
h = await async function(e, {
networkCaptureBodies: t,
networkResponseHeaders: n
}, r, i) {
if (!e && void 0 !== i) return Ak(i);
const a = r ? Mk(r.headers, n) : {};
if (!r || !t && void 0 !== i) return Pk(a, i, void 0);
const [o, s] = await async function(e) {
const t = function(e) {
try {
return e.clone()
} catch (t) {
Wx && Qt.warn("[Replay] Failed to clone response body", t)
}
}(e);
if (!t) return [void 0, "BODY_PARSE_ERROR"];
try {
const e = await
function(e) {
return new Promise(((t, n) => {
const r = _o((() => n(new Error("Timeout while trying to read response body"))), 500);
(async function(e) {
return await e.text()
})(e).then((e => t(e)), (e => n(e))).finally((() => clearTimeout(r)))
}))
}(t);
return [e]
} catch (n) {
return Wx && Qt.warn("[Replay] Failed to get text body from response", n), [void 0, "BODY_PARSE_ERROR"]
}
}(r), l = function(e, {
networkCaptureBodies: t,
responseBodySize: n,
captureDetails: r,
headers: i
}) {
try {
const a = e && e.length && void 0 === n ? Sk(e) : n;
return r ? Pk(i, a, t ? e : void 0) : Ak(a)
} catch (a) {
return Wx && Qt.warn("[Replay] Failed to serialize response body", a), Pk(i, n, void 0)
}
}(o, {
networkCaptureBodies: t,
responseBodySize: i,
captureDetails: e,
headers: a
});
if (s) return Ok(l, s);
return l
}(d, n, t.response, u);
return {
startTimestamp: i,
endTimestamp: a,
url: o,
method: s,
statusCode: l,
request: p,
response: h
}
}(e, t, n), i = Ck("resource.fetch", r);
wk(n.replay, i)
} catch (r) {
Wx && Qt.error("[Replay] Failed to capture fetch breadcrumb", r)
}
}
function Nk(e = []) {
if (2 === e.length && "object" === typeof e[1]) return e[1].body
}
function Mk(e, t) {
const n = {};
return t.forEach((t => {
e.get(t) && (n[t] = e.get(t))
})), n
}
function jk(e, t) {
if (!e) return {};
const n = e.headers;
return n ? n instanceof Headers ? Mk(n, t) : Array.isArray(n) ? {} : Tk(n, t) : {}
}
async function Fk(e, t, n) {
try {
const r = function(e, t, n) {
const r = Date.now(),
{
startTimestamp: i = r,
endTimestamp: a = r,
input: o,
xhr: s
} = t,
{
url: l,
method: c,
status_code: u = 0,
request_body_size: d,
response_body_size: p
} = e.data;
if (!l) return null;
if (!s || !Dk(l, n.networkDetailAllowUrls) || Dk(l, n.networkDetailDenyUrls)) {
return {
startTimestamp: i,
endTimestamp: a,
url: l,
method: c,
statusCode: u,
request: Ak(d),
response: Ak(p)
}
}
const h = s[wa],
f = h ? Tk(h.request_headers, n.networkRequestHeaders) : {},
m = Tk(function(e) {
const t = e.getAllResponseHeaders();
if (!t) return {};
return t.split("\r\n").reduce(((e, t) => {
const [n, r] = t.split(": ");
return r && (e[n.toLowerCase()] = r), e
}), {})
}(s), n.networkResponseHeaders),
[g, v] = n.networkCaptureBodies ? Ik(o) : [void 0],
[y, _] = n.networkCaptureBodies ? function(e) {
const t = [];
try {
return [e.responseText]
} catch (n) {
t.push(n)
}
try {
return function(e, t) {
try {
if ("string" === typeof e) return [e];
if (e instanceof Document) return [e.body.outerHTML];
if ("json" === t && e && "object" === typeof e) return [JSON.stringify(e)];
if (!e) return [void 0]
} catch (ll) {
return Wx && Qt.warn("[Replay] Failed to serialize body", e), [void 0, "BODY_PARSE_ERROR"]
}
return Wx && Qt.info("[Replay] Skipping network body because of body type", e), [void 0, "UNPARSEABLE_BODY_TYPE"]
}(e.response, e.responseType)
} catch (n) {
t.push(n)
}
return Wx && Qt.warn("[Replay] Failed to get xhr response body", ...t), [void 0]
}(s) : [void 0],
b = Pk(f, d, g),
x = Pk(m, p, y);
return {
startTimestamp: i,
endTimestamp: a,
url: l,
method: c,
statusCode: u,
request: v ? Ok(b, v) : b,
response: _ ? Ok(x, _) : x
}
}(e, t, n),
i = Ck("resource.xhr", r);
wk(n.replay, i)
} catch (r) {
Wx && Qt.error("[Replay] Failed to capture xhr breadcrumb", r)
}
}
function zk(e, t) {
const {
xhr: n,
input: r
} = t;
if (!n) return;
const i = Sk(r),
a = n.getResponseHeader("content-length") ? Ek(n.getResponseHeader("content-length")) : function(e, t) {
try {
return Sk("json" === t && e && "object" === typeof e ? JSON.stringify(e) : e)
} catch (cl) {
return
}
}(n.response, n.responseType);
void 0 !== i && (e.data.request_body_size = i), void 0 !== a && (e.data.response_body_size = a)
}
function Vk(e) {
const t = zn();
try {
const {
networkDetailAllowUrls: n,
networkDetailDenyUrls: r,
networkCaptureBodies: i,
networkRequestHeaders: a,
networkResponseHeaders: o
} = e.getOptions(), s = {
replay: e,
networkDetailAllowUrls: n,
networkDetailDenyUrls: r,
networkCaptureBodies: i,
networkRequestHeaders: a,
networkResponseHeaders: o
};
t && t.on("beforeAddBreadcrumb", ((e, t) => function(e, t, n) {
if (!t.data) return;
try {
(function(e) {
return "xhr" === e.category
})(t) && function(e) {
return e && e.xhr
}(n) && (zk(t, n), Fk(t, n, e)),
function(e) {
return "fetch" === e.category
}(t) && function(e) {
return e && e.response
}(n) && (! function(e, t) {
const {
input: n,
response: r
} = t, i = Sk(n ? Nk(n) : void 0), a = r ? Ek(r.headers.get("content-length")) : void 0;
void 0 !== i && (e.data.request_body_size = i), void 0 !== a && (e.data.response_body_size = a)
}(t, n), Lk(t, n, e))
} catch (r) {
Wx && Qt.warn("Error when enriching network breadcrumb")
}
}(s, e, t)))
} catch (ll) {}
}
function Uk(e) {
const t = zn();
ba(Rx(e)), Ni(kk(e)), yk(e), Vk(e);
const n = bk(e);
var r;
r = n, jn().addEventProcessor(r), t && (t.on("beforeSendEvent", vk(e)), t.on("afterSendEvent", gk(e)), t.on("createDsc", (t => {
const n = e.getSessionId();
if (n && e.isEnabled() && "session" === e.recordingMode) {
e.checkAndHandleExpiredSession() && (t.replay_id = n)
}
})), t.on("spanStart", (t => {
e.lastActiveSpan = t
})), t.on("spanEnd", (t => {
e.lastActiveSpan = t
})), t.on("beforeSendFeedback", ((t, n) => {
const r = e.getSessionId();
n && n.includeReplay && e.isEnabled() && r && t.contexts && t.contexts.feedback && (t.contexts.feedback.replay_id = r)
})))
}
function Bk(e) {
const {
jsHeapSizeLimit: t,
totalJSHeapSize: n,
usedJSHeapSize: r
} = e, i = Date.now() / 1e3;
return {
type: "memory",
name: "memory",
start: i,
end: i,
data: {
memory: {
jsHeapSizeLimit: t,
totalJSHeapSize: n,
usedJSHeapSize: r
}
}
}
}
function Gk(e) {
let t = !1;
return (n, r) => {
if (!e.checkAndHandleExpiredSession()) return void(Wx && Qt.warn("[Replay] Received replay event after session expired."));
const i = r || !t;
t = !0, e.clickDetector && Ox(e.clickDetector, n), e.addUpdate((() => {
if ("buffer" === e.recordingMode && i && e.setInitialState(), !uk(e, n, i)) return !0;
if (!i) return !1;
if (function(e, t) {
if (!t || !e.session || 0 !== e.session.segmentId) return;
uk(e, function(e) {
const t = e.getOptions();
return {
type: Sb.Custom,
timestamp: Date.now(),
data: {
tag: "options",
payload: {
shouldRecordCanvas: e.isRecordingCanvas(),
sessionSampleRate: t.sessionSampleRate,
errorSampleRate: t.errorSampleRate,
useCompressionOption: t.useCompression,
blockAllMedia: t.blockAllMedia,
maskAllText: t.maskAllText,
maskAllInputs: t.maskAllInputs,
useCompression: !!e.eventBuffer && "worker" === e.eventBuffer.type,
networkDetailHasUrls: t.networkDetailAllowUrls.length > 0,
networkCaptureBodies: t.networkCaptureBodies,
networkRequestHasHeaders: t.networkRequestHeaders.length > 0,
networkResponseHasHeaders: t.networkResponseHeaders.length > 0
}
}
}
}(e), !1)
}(e, i), e.session && e.session.previousSessionId) return !0;
if ("buffer" === e.recordingMode && e.session && e.eventBuffer) {
const t = e.eventBuffer.getEarliestTimestamp();
t && ($x(`[Replay] Updating session start time to earliest event in buffer to ${new Date(t)}`, e.getOptions()._experiments.traceInternals), e.session.started = t, e.getOptions().stickySession && ik(e.session))
}
return "session" === e.recordingMode && e.flush(), !0
}))
}
}
async function Wk({
recordingData: e,
replayId: t,
segmentId: n,
eventContext: r,
timestamp: i,
session: a
}) {
const o = function({
recordingData: e,
headers: t
}) {
let n;
const r = `${JSON.stringify(t)}\n`;
if ("string" === typeof e) n = `${r}${e}`;
else {
const t = (new TextEncoder).encode(r);
n = new Uint8Array(t.length + e.length), n.set(t), n.set(e, t.length)
}
return n
}({
recordingData: e,
headers: {
segment_id: n
}
}),
{
urls: s,
errorIds: l,
traceIds: c,
initialTimestamp: u
} = r,
d = zn(),
p = Mn(),
h = d && d.getTransport(),
f = d && d.getDsn();
if (!d || !h || !f || !a.sampled) return Jn({});
const m = {
type: "replay_event",
replay_start_timestamp: u / 1e3,
timestamp: i / 1e3,
error_ids: l,
trace_ids: c,
urls: s,
replay_id: t,
segment_id: n,
replay_type: a.sampled
},
g = await async function({
client: e,
scope: t,
replayId: n,
event: r
}) {
const i = {
event_id: n,
integrations: "object" !== typeof e._integrations || null === e._integrations || Array.isArray(e._integrations) ? void 0 : Object.keys(e._integrations)
};
e.emit("preprocessEvent", r, i);
const a = await $r(e.getOptions(), r, i, t, e, jn());
if (!a) return null;
a.platform = a.platform || "javascript";
const o = e.getSdkMetadata(),
{
name: s,
version: l
} = o && o.sdk || {};
return a.sdk = {
...a.sdk,
name: s || "sentry.javascript.unknown",
version: l || "0.0.0"
}, a
}({
scope: p,
client: d,
replayId: t,
event: m
});
if (!g) return d.recordDroppedEvent("event_processor", "replay", m), $x("An event processor returned `null`, will not send event."), Jn({});
delete g.sdkProcessingMetadata;
const v = function(e, t, n, r) {
return ji(Hi(e, qi(e), r, n), [
[{
type: "replay_event"
}, e],
[{
type: "replay_recording",
length: "string" === typeof t ? (new TextEncoder).encode(t).length : t.length
}, t]
])
}(g, o, f, d.getOptions().tunnel);
let y;
try {
y = await h.send(v)
} catch (OD) {
const t = new Error(i_);
try {
t.cause = OD
} catch (b) {}
throw t
}
if ("number" === typeof y.statusCode && (y.statusCode < 200 || y.statusCode >= 300)) throw new $k(y.statusCode);
const _ = ko({}, y);
if (xo(_, "replay")) throw new qk(_);
return y
}
class $k extends Error {
constructor(e) {
super(`Transport returned status code ${e}`)
}
}
class qk extends Error {
constructor(e) {
super("Rate limit hit"), this.rateLimits = e
}
}
async function Hk(e, t = {
count: 0,
interval: 5e3
}) {
const {
recordingData: n,
options: r
} = e;
if (n.length) try {
return await Wk(e), !0
} catch (OD) {
if (OD instanceof $k || OD instanceof qk) throw OD;
if (Zr("Replays", {
_retryCount: t.count
}), Wx && r._experiments && r._experiments.captureExceptions && Yr(OD), t.count >= 3) {
const e = new Error(`${i_} - max retries exceeded`);
try {
e.cause = OD
} catch (i) {}
throw e
}
return t.interval *= ++t.count, new Promise(((r, i) => {
_o((async () => {
try {
await Hk(e, t), r(!0)
} catch (n) {
i(n)
}
}), t.interval)
}))
}
}
const Kk = "__THROTTLED";
function Yk(e, t, n) {
const r = new Map;
let i = !1;
return (...a) => {
const o = Math.floor(Date.now() / 1e3);
if ((e => {
const t = e - n;
r.forEach(((e, n) => {
n < t && r.delete(n)
}))
})(o), [...r.values()].reduce(((e, t) => e + t), 0) >= t) {
const e = i;
return i = !0, e ? "__SKIPPED" : Kk
}
i = !1;
const s = r.get(o) || 0;
return r.set(o, s + 1), e(...a)
}
}
class Qk {
constructor({
options: e,
recordingOptions: t
}) {
Qk.prototype.__init.call(this), Qk.prototype.__init2.call(this), Qk.prototype.__init3.call(this), Qk.prototype.__init4.call(this), Qk.prototype.__init5.call(this), Qk.prototype.__init6.call(this), this.eventBuffer = null, this.performanceEntries = [], this.replayPerformanceEntries = [], this.recordingMode = "session", this.timeouts = {
sessionIdlePause: 3e5,
sessionIdleExpire: 9e5
}, this._lastActivity = Date.now(), this._isEnabled = !1, this._isPaused = !1, this._requiresManualStart = !1, this._hasInitializedCoreListeners = !1, this._context = {
errorIds: new Set,
traceIds: new Set,
urls: [],
initialTimestamp: Date.now(),
initialUrl: ""
}, this._recordingOptions = t, this._options = e, this._debouncedFlush = function(e, t, n) {
let r, i, a;
const o = n && n.maxWait ? Math.max(n.maxWait, t) : 0;
function s() {
return l(), r = e(), r
}
function l() {
void 0 !== i && clearTimeout(i), void 0 !== a && clearTimeout(a), i = a = void 0
}
function c() {
return i && clearTimeout(i), i = _o(s, t), o && void 0 === a && (a = _o(s, o)), r
}
return c.cancel = l, c.flush = function() {
return void 0 !== i || void 0 !== a ? s() : r
}, c
}((() => this._flush()), this._options.flushMinDelay, {
maxWait: this._options.flushMaxDelay
}), this._throttledAddEvent = Yk(((e, t) => function(e, t, n) {
return pk(e, t) ? dk(e, t, n) : Promise.resolve(null)
}(this, e, t)), 300, 5);
const {
slowClickTimeout: n,
slowClickIgnoreSelectors: r
} = this.getOptions(), i = n ? {
threshold: Math.min(3e3, n),
timeout: n,
scrollTimeout: 300,
ignoreSelector: r ? r.join(",") : ""
} : void 0;
i && (this.clickDetector = new Sx(this, i))
}
getContext() {
return this._context
}
isEnabled() {
return this._isEnabled
}
isPaused() {
return this._isPaused
}
isRecordingCanvas() {
return Boolean(this._canvas)
}
getOptions() {
return this._options
}
initializeSampling(e) {
const {
errorSampleRate: t,
sessionSampleRate: n
} = this._options, r = t <= 0 && n <= 0;
this._requiresManualStart = r, r || (this._initializeSessionForSampling(e), this.session ? !1 !== this.session.sampled && (this.recordingMode = "buffer" === this.session.sampled && 0 === this.session.segmentId ? "buffer" : "session", qx(`[Replay] Starting replay in ${this.recordingMode} mode`, this._options._experiments.traceInternals), this._initializeRecording()) : this._handleException(new Error("Unable to initialize and create session")))
}
start() {
if (this._isEnabled && "session" === this.recordingMode) return void(Wx && Qt.info("[Replay] Recording is already in progress"));
if (this._isEnabled && "buffer" === this.recordingMode) return void(Wx && Qt.info("[Replay] Buffering is in progress, call `flush()` to save the replay"));
qx("[Replay] Starting replay in session mode", this._options._experiments.traceInternals), this._updateUserActivity();
const e = ck({
maxReplayDuration: this._options.maxReplayDuration,
sessionIdleExpire: this.timeouts.sessionIdleExpire,
traceInternals: this._options._experiments.traceInternals
}, {
stickySession: this._options.stickySession,
sessionSampleRate: 1,
allowBuffering: !1
});
this.session = e, this._initializeRecording()
}
startBuffering() {
if (this._isEnabled) return void(Wx && Qt.info("[Replay] Buffering is in progress, call `flush()` to save the replay"));
qx("[Replay] Starting replay in buffer mode", this._options._experiments.traceInternals);
const e = ck({
sessionIdleExpire: this.timeouts.sessionIdleExpire,
maxReplayDuration: this._options.maxReplayDuration,
traceInternals: this._options._experiments.traceInternals
}, {
stickySession: this._options.stickySession,
sessionSampleRate: 0,
allowBuffering: !0
});
this.session = e, this.recordingMode = "buffer", this._initializeRecording()
}
startRecording() {
try {
const e = this._canvas;
this._stopRecording = mx({
...this._recordingOptions,
..."buffer" === this.recordingMode && {
checkoutEveryNms: 6e4
},
emit: Gk(this),
onMutation: this._onMutationHandler,
...e ? {
recordCanvas: e.recordCanvas,
getCanvasManager: e.getCanvasManager,
sampling: e.sampling,
dataURLOptions: e.dataURLOptions
} : {}
})
} catch (OD) {
this._handleException(OD)
}
}
stopRecording() {
try {
return this._stopRecording && (this._stopRecording(), this._stopRecording = void 0), !0
} catch (OD) {
return this._handleException(OD), !1
}
}
async stop({
forceFlush: e = !1,
reason: t
} = {}) {
if (this._isEnabled) {
this._isEnabled = !1;
try {
$x("[Replay] Stopping Replay" + (t ? ` triggered by ${t}` : ""), this._options._experiments.traceInternals), this._removeListeners(), this.stopRecording(), this._debouncedFlush.cancel(), e && await this._flush({
force: !0
}), this.eventBuffer && this.eventBuffer.destroy(), this.eventBuffer = null, tk(this)
} catch (OD) {
this._handleException(OD)
}
}
}
pause() {
this._isPaused || (this._isPaused = !0, this.stopRecording(), $x("[Replay] Pausing replay", this._options._experiments.traceInternals))
}
resume() {
this._isPaused && this._checkSession() && (this._isPaused = !1, this.startRecording(), $x("[Replay] Resuming replay", this._options._experiments.traceInternals))
}
async sendBufferedReplayOrFlush({
continueRecording: e = !0
} = {}) {
if ("session" === this.recordingMode) return this.flushImmediate();
const t = Date.now();
$x("[Replay] Converting buffer to session", this._options._experiments.traceInternals), await this.flushImmediate();
const n = this.stopRecording();
e && n && "session" !== this.recordingMode && (this.recordingMode = "session", this.session && (this._updateUserActivity(t), this._updateSessionActivity(t), this._maybeSaveSession()), this.startRecording())
}
addUpdate(e) {
const t = e();
"buffer" !== this.recordingMode && !0 !== t && this._debouncedFlush()
}
triggerUserActivity() {
if (this._updateUserActivity(), this._stopRecording) this.checkAndHandleExpiredSession(), this._updateSessionActivity();
else {
if (!this._checkSession()) return;
this.resume()
}
}
updateUserActivity() {
this._updateUserActivity(), this._updateSessionActivity()
}
conditionalFlush() {
return "buffer" === this.recordingMode ? Promise.resolve() : this.flushImmediate()
}
flush() {
return this._debouncedFlush()
}
flushImmediate() {
return this._debouncedFlush(), this._debouncedFlush.flush()
}
cancelFlush() {
this._debouncedFlush.cancel()
}
getSessionId() {
return this.session && this.session.id
}
checkAndHandleExpiredSession() {
if (!(this._lastActivity && ok(this._lastActivity, this.timeouts.sessionIdlePause) && this.session && "session" === this.session.sampled)) return !!this._checkSession();
this.pause()
}
setInitialState() {
const e = `${n_.location.pathname}${n_.location.hash}${n_.location.search}`,
t = `${n_.location.origin}${e}`;
this.performanceEntries = [], this.replayPerformanceEntries = [], this._clearContext(), this._context.initialUrl = t, this._context.initialTimestamp = Date.now(), this._context.urls.push(t)
}
throttledAddEvent(e, t) {
const n = this._throttledAddEvent(e, t);
if (n === Kk) {
const e = Cx({
category: "replay.throttled"
});
this.addUpdate((() => !uk(this, {
type: 5,
timestamp: e.timestamp || 0,
data: {
tag: "breadcrumb",
payload: e,
metric: !0
}
})))
}
return n
}
getCurrentRoute() {
const e = this.lastActiveSpan || jr(),
t = e && Mr(e),
n = (t && Ar(t).data || {})[ur];
if (t && n && ["route", "custom"].includes(n)) return Ar(t).description
}
_initializeRecording() {
this.setInitialState(), this._updateSessionActivity(), this.eventBuffer = Jx({
useCompression: this._options.useCompression,
workerUrl: this._options.workerUrl
}), this._removeListeners(), this._addListeners(), this._isEnabled = !0, this._isPaused = !1, this.startRecording()
}
_handleException(e) {
Wx && Qt.error("[Replay]", e), Wx && this._options._experiments && this._options._experiments.captureExceptions && Yr(e)
}
_initializeSessionForSampling(e) {
const t = this._options.errorSampleRate > 0,
n = ck({
sessionIdleExpire: this.timeouts.sessionIdleExpire,
maxReplayDuration: this._options.maxReplayDuration,
traceInternals: this._options._experiments.traceInternals,
previousSessionId: e
}, {
stickySession: this._options.stickySession,
sessionSampleRate: this._options.sessionSampleRate,
allowBuffering: t
});
this.session = n
}
_checkSession() {
if (!this.session) return !1;
const e = this.session;
return !lk(e, {
sessionIdleExpire: this.timeouts.sessionIdleExpire,
maxReplayDuration: this._options.maxReplayDuration
}) || (this._refreshSession(e), !1)
}
async _refreshSession(e) {
this._isEnabled && (await this.stop({
reason: "refresh session"
}), this.initializeSampling(e.id))
}
_addListeners() {
try {
n_.document.addEventListener("visibilitychange", this._handleVisibilityChange), n_.addEventListener("blur", this._handleWindowBlur), n_.addEventListener("focus", this._handleWindowFocus), n_.addEventListener("keydown", this._handleKeyboardEvent), this.clickDetector && this.clickDetector.addListeners(), this._hasInitializedCoreListeners || (Uk(this), this._hasInitializedCoreListeners = !0)
} catch (OD) {
this._handleException(OD)
}
this._performanceCleanupCallback = function(e) {
function t(t) {
e.performanceEntries.includes(t) || e.performanceEntries.push(t)
}
function n({
entries: e
}) {
e.forEach(t)
}
const r = [];
return ["navigation", "paint", "resource"].forEach((e => {
r.push(hy(e, n))
})), r.push(uy(Mx(zx, e)), cy(Mx(Vx, e)), dy(Mx(Ux, e)), py(Mx(Bx, e))), () => {
r.forEach((e => e()))
}
}(this)
}
_removeListeners() {
try {
n_.document.removeEventListener("visibilitychange", this._handleVisibilityChange), n_.removeEventListener("blur", this._handleWindowBlur), n_.removeEventListener("focus", this._handleWindowFocus), n_.removeEventListener("keydown", this._handleKeyboardEvent), this.clickDetector && this.clickDetector.removeListeners(), this._performanceCleanupCallback && this._performanceCleanupCallback()
} catch (OD) {
this._handleException(OD)
}
}
__init() {
this._handleVisibilityChange = () => {
"visible" === n_.document.visibilityState ? this._doChangeToForegroundTasks() : this._doChangeToBackgroundTasks()
}
}
__init2() {
this._handleWindowBlur = () => {
const e = Cx({
category: "ui.blur"
});
this._doChangeToBackgroundTasks(e)
}
}
__init3() {
this._handleWindowFocus = () => {
const e = Cx({
category: "ui.focus"
});
this._doChangeToForegroundTasks(e)
}
}
__init4() {
this._handleKeyboardEvent = e => {
Lx(this, e)
}
}
_doChangeToBackgroundTasks(e) {
if (!this.session) return;
sk(this.session, {
maxReplayDuration: this._options.maxReplayDuration,
sessionIdleExpire: this.timeouts.sessionIdleExpire
}) || (e && this._createCustomBreadcrumb(e), this.conditionalFlush())
}
_doChangeToForegroundTasks(e) {
if (!this.session) return;
this.checkAndHandleExpiredSession() ? e && this._createCustomBreadcrumb(e) : $x("[Replay] Document has become active, but session has expired")
}
_updateUserActivity(e = Date.now()) {
this._lastActivity = e
}
_updateSessionActivity(e = Date.now()) {
this.session && (this.session.lastActivity = e, this._maybeSaveSession())
}
_createCustomBreadcrumb(e) {
this.addUpdate((() => {
this.throttledAddEvent({
type: Sb.Custom,
timestamp: e.timestamp || 0,
data: {
tag: "breadcrumb",
payload: e
}
})
}))
}
_addPerformanceEntries() {
const e = (t = this.performanceEntries, t.map(jx).filter(Boolean)).concat(this.replayPerformanceEntries);
var t;
return this.performanceEntries = [], this.replayPerformanceEntries = [], Promise.all(xk(this, e))
}
_clearContext() {
this._context.errorIds.clear(), this._context.traceIds.clear(), this._context.urls = []
}
_updateInitialTimestampFromEventBuffer() {
const {
session: e,
eventBuffer: t
} = this;
if (!e || !t || this._requiresManualStart) return;
if (e.segmentId) return;
const n = t.getEarliestTimestamp();
n && n < this._context.initialTimestamp && (this._context.initialTimestamp = n)
}
_popEventContext() {
const e = {
initialTimestamp: this._context.initialTimestamp,
initialUrl: this._context.initialUrl,
errorIds: Array.from(this._context.errorIds),
traceIds: Array.from(this._context.traceIds),
urls: this._context.urls
};
return this._clearContext(), e
}
async _runFlush() {
const e = this.getSessionId();
if (this.session && this.eventBuffer && e) {
if (await this._addPerformanceEntries(), this.eventBuffer && this.eventBuffer.hasEvents && (await async function(e) {
try {
return Promise.all(xk(e, [Bk(n_.performance.memory)]))
} catch (t) {
return []
}
}(this), this.eventBuffer && e === this.getSessionId())) try {
this._updateInitialTimestampFromEventBuffer();
const t = Date.now();
if (t - this._context.initialTimestamp > this._options.maxReplayDuration + 3e4) throw new Error("Session is too long, not sending replay");
const n = this._popEventContext(),
r = this.session.segmentId++;
this._maybeSaveSession();
const i = await this.eventBuffer.finish();
await Hk({
replayId: e,
recordingData: i,
segmentId: r,
eventContext: n,
session: this.session,
options: this.getOptions(),
timestamp: t
})
} catch (OD) {
this._handleException(OD), this.stop({
reason: "sendReplay"
});
const t = zn();
t && t.recordDroppedEvent("send_error", "replay")
}
} else Wx && Qt.error("[Replay] No session or eventBuffer found to flush.")
}
__init5() {
this._flush = async ({
force: e = !1
} = {}) => {
if (!this._isEnabled && !e) return;
if (!this.checkAndHandleExpiredSession()) return void(Wx && Qt.error("[Replay] Attempting to finish replay event after session expired."));
if (!this.session) return;
const t = this.session.started,
n = Date.now() - t;
this._debouncedFlush.cancel();
const r = n < this._options.minReplayDuration,
i = n > this._options.maxReplayDuration + 5e3;
if (r || i) return $x(`[Replay] Session duration (${Math.floor(n/1e3)}s) is too ${r?"short":"long"}, not sending replay.`, this._options._experiments.traceInternals), void(r && this._debouncedFlush());
const a = this.eventBuffer;
if (a && 0 === this.session.segmentId && !a.hasCheckout && $x("[Replay] Flushing initial segment without checkout.", this._options._experiments.traceInternals), !this._flushLock) return this._flushLock = this._runFlush(), await this._flushLock, void(this._flushLock = void 0);
try {
await this._flushLock
} catch (OD) {
Wx && Qt.error(OD)
} finally {
this._debouncedFlush()
}
}
}
_maybeSaveSession() {
this.session && this._options.stickySession && ik(this.session)
}
__init6() {
this._onMutationHandler = e => {
const t = e.length,
n = this._options.mutationLimit,
r = n && t > n;
if (t > this._options.mutationBreadcrumbLimit || r) {
const e = Cx({
category: "replay.mutations",
data: {
count: t,
limit: r
}
});
this._createCustomBreadcrumb(e)
}
return !r || (this.stop({
reason: "mutationLimit",
forceFlush: "session" === this.recordingMode
}), !1)
}
}
}
function Zk(e, t) {
return [...e, ...t].join(",")
}
const Xk = 'img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]',
Jk = ["content-length", "content-type", "accept"];
let ew = !1;
class tw {
static __initStatic() {
this.id = "Replay"
}
constructor({
flushMinDelay: e = 5e3,
flushMaxDelay: t = 5500,
minReplayDuration: n = 4999,
maxReplayDuration: r = 36e5,
stickySession: i = !0,
useCompression: a = !0,
workerUrl: o,
_experiments: s = {},
maskAllText: l = !0,
maskAllInputs: c = !0,
blockAllMedia: u = !0,
mutationBreadcrumbLimit: d = 750,
mutationLimit: p = 1e4,
slowClickTimeout: h = 7e3,
slowClickIgnoreSelectors: f = [],
networkDetailAllowUrls: m = [],
networkDetailDenyUrls: g = [],
networkCaptureBodies: v = !0,
networkRequestHeaders: y = [],
networkResponseHeaders: _ = [],
mask: b = [],
maskAttributes: x = ["title", "placeholder"],
unmask: k = [],
block: w = [],
unblock: S = [],
ignore: E = [],
maskFn: I,
beforeAddRecordingEvent: O,
beforeErrorSampling: C
} = {}) {
this.name = tw.id;
const A = function({
mask: e,
unmask: t,
block: n,
unblock: r,
ignore: i
}) {
return {
maskTextSelector: Zk(e, [".sentry-mask", "[data-sentry-mask]"]),
unmaskTextSelector: Zk(t, []),
blockSelector: Zk(n, [".sentry-block", "[data-sentry-block]", 'base[href="/"]']),
unblockSelector: Zk(r, []),
ignoreSelector: Zk(i, [".sentry-ignore", "[data-sentry-ignore]", 'input[type="file"]'])
}
}({
mask: b,
unmask: k,
block: w,
unblock: S,
ignore: E
});
if (this._recordingOptions = {
maskAllInputs: c,
maskAllText: l,
maskInputOptions: {
password: !0
},
maskTextFn: I,
maskInputFn: I,
maskAttributeFn: (e, t, n) => function({
el: e,
key: t,
maskAttributes: n,
maskAllText: r,
privacyOptions: i,
value: a
}) {
return r ? i.unmaskTextSelector && e.matches(i.unmaskTextSelector) ? a : n.includes(t) || "value" === t && "INPUT" === e.tagName && ["submit", "button"].includes(e.getAttribute("type") || "") ? a.replace(/[\S]/g, "*") : a : a
}({
maskAttributes: x,
maskAllText: l,
privacyOptions: A,
key: e,
value: t,
el: n
}),
...A,
slimDOMOptions: "all",
inlineStylesheet: !0,
inlineImages: !1,
collectFonts: !0,
errorHandler: e => {
try {
e.__rrweb__ = !0
} catch (t) {}
}
}, this._initialOptions = {
flushMinDelay: e,
flushMaxDelay: t,
minReplayDuration: Math.min(n, 15e3),
maxReplayDuration: Math.min(r, l_),
stickySession: i,
useCompression: a,
workerUrl: o,
blockAllMedia: u,
maskAllInputs: c,
maskAllText: l,
mutationBreadcrumbLimit: d,
mutationLimit: p,
slowClickTimeout: h,
slowClickIgnoreSelectors: f,
networkDetailAllowUrls: m,
networkDetailDenyUrls: g,
networkCaptureBodies: v,
networkRequestHeaders: nw(y),
networkResponseHeaders: nw(_),
beforeAddRecordingEvent: O,
beforeErrorSampling: C,
_experiments: s
}, this._initialOptions.blockAllMedia && (this._recordingOptions.blockSelector = this._recordingOptions.blockSelector ? `${this._recordingOptions.blockSelector},${Xk}` : Xk), this._isInitialized && t_()) throw new Error("Multiple Sentry Session Replay instances are not supported");
this._isInitialized = !0
}
get _isInitialized() {
return ew
}
set _isInitialized(e) {
ew = e
}
afterAllSetup(e) {
t_() && !this._replay && (this._setup(e), this._initialize(e))
}
start() {
this._replay && this._replay.start()
}
startBuffering() {
this._replay && this._replay.startBuffering()
}
stop() {
return this._replay ? this._replay.stop({
forceFlush: "session" === this._replay.recordingMode
}) : Promise.resolve()
}
flush(e) {
return this._replay ? this._replay.isEnabled() ? this._replay.sendBufferedReplayOrFlush(e) : (this._replay.start(), Promise.resolve()) : Promise.resolve()
}
getReplayId() {
if (this._replay && this._replay.isEnabled()) return this._replay.getSessionId()
}
_initialize(e) {
this._replay && (this._maybeLoadFromReplayCanvasIntegration(e), this._replay.initializeSampling())
}
_setup(e) {
const t = function(e, t) {
const n = t.getOptions(),
r = {
sessionSampleRate: 0,
errorSampleRate: 0,
...cn(e)
},
i = Yi(n.replaysSessionSampleRate),
a = Yi(n.replaysOnErrorSampleRate);
null == i && null == a && Yt((() => {
console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set.")
}));
null != i && (r.sessionSampleRate = i);
null != a && (r.errorSampleRate = a);
return r
}(this._initialOptions, e);
this._replay = new Qk({
options: t,
recordingOptions: this._recordingOptions
})
}
_maybeLoadFromReplayCanvasIntegration(e) {
try {
const t = e.getIntegrationByName("ReplayCanvas");
if (!t) return;
this._replay._canvas = t.getOptions()
} catch (t) {}
}
}
function nw(e) {
return [...Jk, ...e.map((e => e.toLowerCase()))]
}
function rw() {
const e = jn().getScopeData();
return Gr(e, Mn().getScopeData()), e.eventProcessors = [], e
}
var iw;
tw.__initStatic(),
function(e) {
e[e.Classic = 1] = "Classic", e[e.Protocol = 2] = "Protocol", e[e.Both = 3] = "Both"
}(iw || (iw = {}));
var aw;
! function(e) {
e.RENDERER_START = "sentry-electron.renderer-start", e.EVENT = "sentry-electron.event", e.SCOPE = "sentry-electron.scope", e.ENVELOPE = "sentry-electron.envelope", e.STATUS = "sentry-electron.status", e.ADD_METRIC = "sentry-electron.add-metric"
}(aw || (aw = {}));
function ow(e) {
return `sentry-ipc://${e}/sentry_key`
}
let sw;
function lw() {
return sw || (sw = function() {
if (window.__SENTRY_IPC__) return window.__SENTRY_IPC__;
{
Qt.log("IPC was not configured in preload script, falling back to custom protocol and fetch");
const e = {
"sentry-electron-renderer-id": window.__SENTRY_RENDERER_ID__ = dn()
};
return {
sendRendererStart: () => {
fetch(ow(aw.RENDERER_START), {
method: "POST",
body: "",
headers: e
}).catch((() => {
console.error("Sentry SDK failed to establish connection with the Electron main process.\n - Ensure you have initialized the SDK in the main process\n - If your renderers use custom sessions, be sure to set 'getSessions' in the main process options\n - If you are bundling your main process code and using Electron < v5, you'll need to manually configure a preload script")
}))
},
sendScope: t => {
fetch(ow(aw.SCOPE), {
method: "POST",
body: t,
headers: e
}).catch((() => {}))
},
sendEvent: t => {
fetch(ow(aw.EVENT), {
method: "POST",
body: t,
headers: e
}).catch((() => {}))
},
sendEnvelope: t => {
fetch(ow(aw.ENVELOPE), {
method: "POST",
body: t,
headers: e
}).catch((() => {}))
},
sendStatus: t => {
fetch(ow(aw.STATUS), {
method: "POST",
body: JSON.stringify({
status: t
}),
headers: e
}).catch((() => {}))
},
sendAddMetric: t => {
fetch(ow(aw.ADD_METRIC), {
method: "POST",
body: JSON.stringify(t),
headers: e
}).catch((() => {}))
}
}
}
}(), sw.sendRendererStart()), sw
}
const cw = () => ({
name: "ScopeToMain",
setup() {
const e = lw();
var t;
t = (t, n) => {
e.sendScope(JSON.stringify(Yn(t, 20, 2e3))), n.clearBreadcrumbs(), n.clearAttachments()
}, jn().addScopeListener((e => {
const n = rw();
t(n, e)
})), Mn().addScopeListener((e => {
const n = rw();
t(n, e)
}))
}
});
function uw(e) {
const t = lw();
return wo(e, (async e => (t.sendEnvelope(e.body), {
statusCode: 200
})))
}
function dw(e, t = !1) {
return !(t || e && !e.startsWith("/") && !e.match(/^[A-Z]:/) && !e.startsWith(".") && !e.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//)) && void 0 !== e && !e.includes("node_modules/")
}
function pw(e) {
const t = /^\s*[-]{4,}$/,
n = /at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;
return r => {
const i = r.match(n);
if (i) {
let t, n, r, a, o;
if (i[1]) {
r = i[1];
let e = r.lastIndexOf(".");
if ("." === r[e - 1] && e--, e > 0) {
t = r.slice(0, e), n = r.slice(e + 1);
const i = t.indexOf(".Module");
i > 0 && (r = r.slice(i + 1), t = t.slice(0, i))
}
a = void 0
}
n && (a = t, o = n), "<anonymous>" === n && (o = void 0, r = void 0), void 0 === r && (o = o || Vn, r = a ? `${a}.${o}` : o);
let s = i[2] && i[2].startsWith("file://") ? i[2].slice(7) : i[2];
const l = "native" === i[5];
return s && s.match(/\/[A-Z]:/) && (s = s.slice(1)), s || !i[5] || l || (s = i[5]), {
filename: s,
module: e ? e(s) : void 0,
function: r,
lineno: hw(i[3]),
colno: hw(i[4]),
in_app: dw(s || "", l)
}
}
if (r.match(t)) return {
filename: r
}
}
}
function hw(e) {
return parseInt(e || "", 10) || void 0
}
const [, fw] = co, [, mw] = [90, pw(gw)];
var gw;
const vw = (e, t = 0) => {
const n = [];
for (const r of e.split("\n").slice(t)) {
const e = fw(r),
t = mw(r);
if (e && !1 !== t?.in_app ? n.push(e) : t && n.push(cn(t)), n.length >= 50) break
}
return Wn(n)
};
var yw = n(2222),
_w = n(4499);
const bw = () => {
var e;
const {
t: t
} = bt("settingsPage");
return (0, _w.jsx)(cg, {
title: t("settings_about_title"),
children: (0, _w.jsxs)(Ys, {
color: "foreground-weak",
variant: "body-m",
multiline: !0,
children: [(0, _w.jsx)("img", {
src: `${yw.configuration.assets.directory}/logos/cig-logo.svg`,
alt: t("settings_about_logo_alt"),
width: "120"
}), (0, _w.jsx)("p", {
children: t("settings_about_copyright", {
year: (new Date).getFullYear()
})
}), (0, _w.jsx)("hr", {}), (0, _w.jsxs)("p", {
children: [(0, _w.jsx)("strong", {
children: t("settings_about_launcher_version")
}), " ", null !== (e = "2.0.6") ? e : "\u2013"]
})]
})
})
},
xw = e => ({
...e,
media: void 0
}),
kw = e => ({
...e,
publish_start: void 0,
time_created: void 0
}),
ww = (e, t) => {
const n = new Date(e.publish_start || 0).getTime();
return new Date(t.publish_start || 0).getTime() - n
},
Sw = (e, t) => (e.weight || 0) - (t.weight || 0),
Ew = (e, t) => e.weight - t.weight,
Iw = e => ({
...e,
publish_start: e.publish_start ? e.publish_start + " UTC" : void 0,
time_created: e.time_created ? e.time_created + " UTC" : void 0
}),
Ow = (e, t = "div") => (0, Ee.createElement)(t, {
dangerouslySetInnerHTML: {
__html: e
}
}),
Cw = {
year: 31536e6,
month: 2628e6,
day: 864e5,
hour: 36e5,
minute: 6e4,
second: 1e3
},
Aw = (e, t) => e + (Math.floor(Math.random() * t) + 1),
Pw = (e, t = "short", {
showTime: n = !0,
...r
} = {}) => {
const i = new Date(e);
switch (t) {
case "short":
case "long":
return new Intl.DateTimeFormat("default", {
dateStyle: t,
...r,
...n && {
timeStyle: "short"
}
}).format(i);
case "relative":
return ((e, t = new Date, n = {}) => {
const r = e.getTime() - t.getTime();
for (const [i, a] of Object.entries(Cw))
if (Math.abs(r) > a || "second" === i) return new Intl.RelativeTimeFormat("default", {
numeric: "auto",
localeMatcher: "lookup",
...n
}).format(Math.round(r / a), i)
})(i, new Date, r)
}
},
Tw = e => {
if ("string" === typeof e || "number" === typeof e) return e.toString();
if (!(0, Ee.isValidElement)(e)) return "";
if ("function" === typeof e.type && e.type.prototype instanceof Ee.Component) {
const t = new e.type(e.props).render();
return Tw(t)
}
if ("function" === typeof e.type) {
const t = e.type(e.props);
return Tw(t)
}
const {
children: t
} = e.props;
return Array.isArray(t) ? t.map((e => Tw(e))).join("") : Tw(t)
},
Rw = () => window.launcherAPI,
Dw = (e, t) => t.find((({
id: t
}) => t === e)),
Lw = e => {
let t = e;
return t.includes("\\\\") && (t = t.replace("\\\\", "\\")), t.endsWith("\\") || (t = `${t}\\`), t
},
Nw = 2e3,
Mw = {
[yw.RSISystemStatus.MAJOR]: "negative",
[yw.RSISystemStatus.PARTIAL]: "notice",
[yw.RSISystemStatus.DEGRADED]: "highlight",
[yw.RSISystemStatus.MAINTENANCE]: "neutral",
[yw.RSISystemStatus.OPERATIONAL]: "positive"
},
jw = e => Mw[e],
Fw = "1000",
zw = "1001",
Vw = "1002",
Uw = "1003",
Bw = "1004",
Gw = "1005",
Ww = "1006",
$w = "1007",
qw = "1008",
Hw = "1009",
Kw = "1010",
Yw = "1011",
Qw = "1012",
Zw = "1013",
Xw = "1014",
Jw = "1015",
eS = "1016",
tS = "1017",
nS = "1018",
rS = "1019",
iS = "1020",
aS = "1021",
oS = "1022",
sS = "ErrWrongPassword_email",
lS = "ErrMultiStepRequired",
cS = "ErrMultiStepWrongCode",
uS = "ErrNotAuthenticated",
dS = "ErrClaimsInvalid",
pS = "ErrMaxThrottleLogin",
hS = "errAuthExpired",
fS = "ErrCaptchaRequiredLauncher",
mS = "ErrInvalidChallengeCode",
gS = "ErrDeprecatedApi",
vS = "ErrAgreementsRequired",
yS = "ErrExpiredToken",
_S = "ErrToken",
bS = "ErrNoGamePackage",
xS = "ErrValidationFailed",
kS = "ErrAccountNotFound";
class wS extends Error {
constructor({
message: e = "Unknown Error",
code: t = Fw,
payload: n = null,
environment: r
}) {
super(e), this.code = void 0, this.payload = void 0, this.environment = void 0, Object.setPrototypeOf(this, wS.prototype), this.code = t, this.payload = n, this.environment = r, window.launcherAPI.log.error("Internal error:", t, n)
}
}
class SS extends wS {
constructor(e, t, n) {
super({
message: e,
code: Uw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, SS.prototype)
}
}
class ES extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Bw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, ES.prototype)
}
}
class IS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Hw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, IS.prototype)
}
}
class OS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: $w,
payload: t,
environment: n
}), Object.setPrototypeOf(this, OS.prototype)
}
}
class CS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Ww,
payload: t,
environment: n
}), Object.setPrototypeOf(this, CS.prototype)
}
}
class AS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: qw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, AS.prototype)
}
}
class PS extends wS {
constructor(e, t, n) {
super({
message: e,
code: Kw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, PS.prototype)
}
}
class TS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Yw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, TS.prototype)
}
}
class RS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Zw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, RS.prototype)
}
}
class DS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Xw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, DS.prototype)
}
}
class LS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Jw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, LS.prototype)
}
}
class NS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: eS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, NS.prototype)
}
}
class MS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Vw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, MS.prototype)
}
}
class jS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: aS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, jS.prototype)
}
}
class FS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: oS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, FS.prototype)
}
}
class zS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: tS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, zS.prototype)
}
}
class VS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: nS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, VS.prototype)
}
}
class US extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: rS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, US.prototype)
}
}
class BS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Qw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, BS.prototype)
}
}
class GS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: iS,
payload: t,
environment: n
}), Object.setPrototypeOf(this, GS.prototype)
}
}
class WS extends wS {
constructor(e, t = null, n) {
super({
message: e,
code: Gw,
payload: t,
environment: n
}), Object.setPrototypeOf(this, WS.prototype)
}
}
class $S {
constructor(e) {
this.baseUrl = void 0, this.baseUrl = e
}
isMediaResponse(e) {
return "image/png" === e.headers.get("content-type")
}
async handleResponse(e) {
if (429 === e.status) throw new VS(xt.t("error_api_too_many_requests_content", {
ns: "errors"
}), e, null);
if (503 === e.status) throw new US(xt.t("error_api_unavailable", {
ns: "errors"
}), e, null);
if (e.status >= 500 && e.status < 600) throw new GS(xt.t("error_api_internal_server_error", {
ns: "errors"
}), e, null);
if (403 === e.status || 401 === e.status) throw new zS(xt.t("error_api_denied_request_content", {
ns: "errors"
}), e, null);
if (!e.ok) throw new Error(`Request failed with status: ${e.status}`);
return this.isMediaResponse(e) ? e : await e.json()
}
async handleRequest(e, t, n, r, i) {
const a = this.baseUrl + "://" + e,
o = new Headers;
o.set("Content-Type", "application/json"), r && r.forEach((e => {
o.set(e.key, e.value)
}));
const s = {
method: t,
mode: "cors",
headers: o,
...i
};
let l;
"GET" !== t && (s.body = JSON.stringify(n));
try {
l = await fetch(a, s)
} catch (OD) {
throw new WS("Could not connect to server", OD, null)
}
return this.handleResponse(l)
}
async get(e) {
return this.handleRequest(e, "GET", void 0, void 0, void 0)
}
async post(e, t, n, r) {
return this.handleRequest(e, "POST", t, n, r)
}
}
const qS = ({
rsiApiResult: e,
environment: t
}) => {
switch (e.code) {
case uS:
return new CS(xt.t("error_not_authenticated", {
ns: "errors"
}), e, t);
case pS:
return new AS(xt.t("error_max_login_attempt", {
ns: "errors"
}), e, t);
case dS:
return new OS(xt.t("error_invalid_claims", {
ns: "errors"
}), e, t);
case lS:
return new SS(xt.t("error_authentication_mfa", {
ns: "errors"
}), e, t);
case cS:
return new ES(xt.t("error_wrong_mfa_code", {
ns: "errors"
}), e, t);
case fS:
return new PS(xt.t("error_captcha_required", {
ns: "errors"
}), e, t);
case mS:
return new TS(xt.t("error_captcha_invalid", {
ns: "errors"
}), e, t);
case hS:
return new IS(xt.t("error_session_expired", {
ns: "errors"
}), e, t);
case vS:
return new RS(e.msg, e, t);
case yS:
return new DS(e.msg, e, t);
case _S:
return new LS(e.msg, e, t);
case bS:
return new NS(e.msg, e, t);
case sS:
return new MS(xt.t("error_wrong_credentials", {
ns: "errors"
}), e, t);
case xS:
return new jS(xt.t("error_api_validation_failed", {
ns: "errors"
}), e, t);
case kS:
return new FS(xt.t("error_api_validation_failed", {
ns: "errors"
}), e, t);
default:
return new wS({
message: e.msg,
code: e.code,
payload: e,
environment: t
})
}
},
HS = {
ACCOUNT_CHECK: "account/check",
ACCOUNT_CLAIMS: "account/claims",
AGREEMENTS_ACCEPT: "agreements/accept",
AGREEMENTS_GET: "agreements/get",
CONTENT_COMM_LINKS: "content/news",
CONTENT_PATCHNOTES: "content/patchNotes",
CONTENT_LAUNCHER_CARDS: "content/cards",
GAMES_CLAIMS: "games/claims",
GAMES_LIBRARY: "games/library",
GAMES_RELEASE: "games/release",
GAMES_TOKEN: "games/token",
SIGN_IN_CAPTCHA: "signin/captcha",
SIGN_IN_CLAIMS: "signin/claims",
SIGN_IN_MULTISTEP: "signin/multiStep",
SIGN_IN: "signin",
SIGN_OUT: "signout",
WARNINGS_GET: "warnings/get",
WARNINGS: "warnings"
},
KS = {
STATUS_PAGE: "index"
};
class YS extends $S {
set session(e) {
this._session = e
}
get session() {
return this._session
}
set device(e) {
this._device = e
}
get device() {
return this._device
}
set platformEnv(e) {
this._platformEnv = e
}
get platformEnv() {
return this._platformEnv
}
get endpoints() {
return this._endpoints
}
constructor() {
super(YS.BASE_URL), this._platformEnv = null, this._session = null, this._device = null, this._endpoints = void 0, this._endpoints = HS, this.init()
}
async init() {
const [e, t, n] = await Promise.all([window.launcherAPI.store.getValueFromStore("session"), window.launcherAPI.store.getValueFromStore("device"), window.launcherAPI.game.getGlobalConfig()]);
this._session = e, this._device = t, this._platformEnv = n.environment
}
static getInstance() {
return YS.instance || (YS.instance = new YS), YS.instance
}
async call({
platformId: e = this._platformEnv,
endpoint: t,
payload: n,
session: r = this._session,
device: i = this._device,
options: a
}) {
const o = this.handleSession(r, i);
this.handleUrl(e);
try {
const r = await this.post(t, n, o, a);
if (r.code === gS) throw new BS("Launcher update required.", gS, e);
if (r.success) return r;
throw qS({
rsiApiResult: r,
environment: e
})
} catch (OD) {
throw OD instanceof IS && (this._session = null, this._device = null), OD
}
}
handleSession(e, t) {
const n = [];
return e && n.push({
key: e.key,
value: e.value
}), t && n.push({
key: t.key,
value: t.value
}), n
}
handleUrl(e) {
this.baseUrl = `${YS.BASE_URL}${e?`+${e}`:""}`
}
async callImage({
endpoint: e,
payload: t = {},
session: n = this._session,
device: r = this._device,
options: i
}) {
try {
const a = this.handleSession(n, r),
o = await this.post(e, t, a, i),
s = await o.arrayBuffer();
return window.btoa(String.fromCharCode(...new Uint8Array(s)))
} catch (OD) {
throw OD
}
}
}
YS.instance = void 0, YS.BASE_URL = "rsi";
class QS {
constructor() {
this.retryCount = 3
}
async operationWithBasicRetry(e, t) {
let n = 0;
for (console.log("[ApiRequester] retry mode enabled");;) {
try {
return await e()
} catch (i) {
var r;
if (console.error(`[ApiRequester] request number ${n} failed`, i), n++, (i instanceof DS || i instanceof LS) && null !== t && void 0 !== t && t.refreshClaims && (console.error("[ApiRequester] claims expired - refresh engaged", i), await t.refreshClaims()), n > (null !== (r = null === t || void 0 === t ? void 0 : t.numberOfRetry) && void 0 !== r ? r : this.retryCount) || this.isUnsafeError(i)) throw i
}
await this.delay(500 * n)
}
}
delay(e) {
return new Promise((t => setTimeout(t, e)))
}
isUnsafeError(e) {
return e instanceof VS || e instanceof zS || e instanceof BS || e instanceof WS
}
}
class ZS extends QS {
constructor(e) {
super(), this.client = e
}
async getWarnings() {
return (await this.client.call({
endpoint: this.client.endpoints.WARNINGS
})).data
}
async getWarningInfo(e) {
return (await this.client.call({
endpoint: this.client.endpoints.WARNINGS_GET,
payload: {
warning_id: e
}
})).data
}
async checkAgreements() {
return (await this.client.call({
endpoint: this.client.endpoints.ACCOUNT_CHECK
})).data
}
async getAgreementInfo(e, t) {
return (await this.client.call({
endpoint: this.client.endpoints.AGREEMENTS_GET,
payload: {
agreement_id: e,
type: t
}
})).data
}
async acceptAgreement(e, t) {
return (await this.client.call({
endpoint: this.client.endpoints.AGREEMENTS_ACCEPT,
payload: {
agreement_id: e,
type: t
}
})).data
}
}
let XS, JS, eE;
function tE({
badges: e
}, t) {
const n = Object.values(e);
for (const r of t)
if (-1 === n.indexOf(r)) return !1;
return !0
}
function nE({
badges: e
}, t) {
const n = Object.values(e);
for (const r of t)
if (n.indexOf(r) > -1) return !0;
return !1
}! function(e) {
e.SESSION = "session", e.DAY = "day", e.WEEK = "week", e.MONTH = "month", e.YEAR = "year"
}(XS || (XS = {})),
function(e) {
e.COMM_LINKS = "Comm-Links", e.PATCH_NOTES = "Patch-Notes"
}(JS || (JS = {})),
function(e) {
e.EULA = "eula", e.TOS = "tos", e.DISCLAIMER = "disclaimer"
}(eE || (eE = {}));
const rE = ({
session_name: e,
session_id: t
}) => ({
cookie: e,
key: `X-${e}`,
value: t
}),
iE = (e, t) => {
return {
username: t,
heapAccountId: e.account_id,
trackingMetricsId: e.tracking_metrics_id,
displayName: e.displayname,
nickname: e.nickname,
avatar: e.avatar,
privileged: (n = e, nE(n, ["Staff", "QA", "Game Master", "EAC_BYPASS"]))
};
var n
},
aE = ({
device_header: e,
device_id: t,
duration: n
}) => {
const r = oE(n);
return {
cookie: "_rsi_device",
key: e,
value: t,
duration: n,
expires: r ? Date.now() + r : void 0
}
},
oE = e => ({
[XS.SESSION]: void 0,
[XS.DAY]: Cw.day,
[XS.WEEK]: 7 * Cw.day,
[XS.MONTH]: Cw.month,
[XS.YEAR]: Cw.year
} [e]);
class sE {
constructor(e) {
this.success = void 0, this.message = void 0, this.success = e.success, this.message = e.message || null
}
static success() {
return new sE({
success: !0
})
}
static fail(e) {
return new sE({
success: !1,
message: e
})
}
}
class lE extends Error {
constructor(e, t) {
super(e), this.result = void 0, Object.defineProperty(this, "name", {
value: "AuthorizationError",
writable: !0
}), Error.captureStackTrace(this, lE), this.result = t
}
}
class cE extends QS {
constructor(e, t) {
super(), this.client = e, this.policy = t
}
async getCaptcha() {
return `data:image/png;base64,${await this.client.callImage({endpoint:this.client.endpoints.SIGN_IN_CAPTCHA})}`
}
async signOut(e) {
try {
return await this.client.call({
endpoint: this.client.endpoints.SIGN_OUT
})
} finally {
this.client.session = null, e.clearDevice && (this.client.device = null)
}
}
async signIn({
username: e,
password: t,
captcha: n,
remember: r,
launcherVersion: i
}) {
try {
const a = await this.client.call({
endpoint: this.client.endpoints.SIGN_IN,
payload: {
username: e,
password: t,
captcha: n,
remember: r,
launcherVersion: i
}
});
if (a.success) {
await this.verifyPolicy(a.data);
const t = iE(a.data, e),
n = rE(a.data);
return this.client.session = n, {
identity: t,
session: n
}
}
throw qS({
rsiApiResult: a,
environment: this.client.platformEnv
})
} catch (a) {
throw a instanceof PS && (this.client.session = rE(a.payload.data)), a instanceof SS && (this.client.session = rE(a.payload.data), this.client.device = aE(a.payload.data)), a instanceof lE && (this.client.session = null, this.client.device = null), a
}
}
async signInMfa({
username: e,
codeMfa: t,
deviceName: n,
duration: r
}) {
const i = await this.client.call({
endpoint: this.client.endpoints.SIGN_IN_MULTISTEP,
payload: {
code: t,
device_name: n,
duration: r,
device_type: "computer"
}
});
if (i.success) {
var a, o;
await this.verifyPolicy(i.data);
const t = iE(i.data, e),
n = rE(i.data),
s = aE({
device_id: null === (a = this.client.device) || void 0 === a ? void 0 : a.value,
device_header: null === (o = this.client.device) || void 0 === o ? void 0 : o.key,
duration: r
});
return this.client.session = n, this.client.device = s, {
identity: t,
session: n,
device: s
}
}
throw qS({
rsiApiResult: i,
environment: this.client.platformEnv
})
}
async getSignInSession(e) {
const t = await this.client.call({
platformId: e,
endpoint: this.client.endpoints.SIGN_IN_CLAIMS,
payload: {
claims: await this.getAccountClaims()
}
});
return rE(t.data)
}
async getAccountClaims() {
return (await this.client.call({
endpoint: this.client.endpoints.ACCOUNT_CLAIMS
})).data
}
async verifyPolicy(e) {
const {
launcherVersion: t
} = await window.launcherAPI.game.getGlobalConfig();
if (t.includes("-rc.")) return this.policy.verify("signin:release-candidate", e)
}
}
class uE extends QS {
constructor(e) {
super(), this.client = e
}
async getCommLinks(e, t) {
return (await this.client.call({
endpoint: this.client.endpoints.CONTENT_COMM_LINKS,
payload: {
game_id: e,
channel_id: t,
allow_null_channel: "true"
}
})).data.resultset
}
async getPatchNotes(e, t) {
return (await this.client.call({
endpoint: this.client.endpoints.CONTENT_PATCHNOTES,
payload: {
game_id: e,
channel_id: t,
allow_null_channel: "true"
}
})).data.resultset
}
async getLauncherCards(e, t) {
return (await this.client.call({
endpoint: this.client.endpoints.CONTENT_LAUNCHER_CARDS,
payload: {
game_id: e,
channel_id: t,
allow_null_channel: "true"
}
})).data.resultset
}
async getContent(e, t) {
const [n, r, i] = await Promise.all([this.getCommLinks(e, t), this.getPatchNotes(e, t), this.getLauncherCards(e, t)]);
return {
commLinks: n,
patchNotes: r,
launcherCards: i
}
}
}
class dE extends QS {
set gameClaims(e) {
this._gameClaims = e
}
get gameClaims() {
return this._gameClaims
}
constructor(e) {
super(), this.client = e, this.libraryTimeout = 1e4, this._gameClaims = null
}
async getLibrary() {
this.gameClaims || await this.getGameClaims();
const e = (await this.operationWithBasicRetry((async () => await this.client.call({
endpoint: this.client.endpoints.GAMES_LIBRARY,
payload: {
claims: this.gameClaims
},
options: {
signal: AbortSignal.timeout(this.libraryTimeout)
}
})), {
refreshClaims: async () => await this.getGameClaims()
})).data.games.map((e => {
const {
id: t,
name: n,
channels: r
} = e, i = Object.values(r).map((({
id: e,
name: t,
version: n,
versionLabel: r,
platformId: i,
servicesEndpoint: a,
nid: o,
network: s,
installDir: l
}) => ({
id: e,
name: null !== t && void 0 !== t ? t : e,
version: n,
versionLabel: r,
platformId: i,
servicesEndpoint: a,
nid: o,
network: s,
installDir: l,
status: yw.GameChannelStatus.AVAILABLE
})));
return {
id: t,
name: n,
channels: i
}
}));
return e
}
async getRelease({
gameId: e,
channelId: t
}) {
this.gameClaims || await this.getGameClaims();
return (await this.operationWithBasicRetry((async () => await this.client.call({
endpoint: this.client.endpoints.GAMES_RELEASE,
payload: {
claims: this.gameClaims,
gameId: e,
channelId: t
}
})), {
refreshClaims: async () => await this.getGameClaims()
})).data
}
async getGameToken(e, t, n) {
this.gameClaims || await this.getGameClaims();
return (await this.operationWithBasicRetry((async () => await this.client.call({
platformId: e,
endpoint: this.client.endpoints.GAMES_TOKEN,
session: n,
payload: {
claims: this.gameClaims,
gameId: t
}
})), {
refreshClaims: async () => await this.getGameClaims()
})).data
}
clearClaims() {
this.gameClaims = null
}
async getGameClaims() {
const e = await this.client.call({
endpoint: this.client.endpoints.GAMES_CLAIMS
});
this.gameClaims = e.data
}
}
class pE extends $S {
constructor() {
super(pE.BASE_URL), this._endpoints = void 0, this._endpoints = KS
}
async getStatus() {
return await this.get(this._endpoints.STATUS_PAGE)
}
}
pE.BASE_URL = "status";
class hE {
constructor(...e) {
this.handlers = void 0, this.name = "AnyPermissionEvaluator", this.handlers = (null !== e && void 0 !== e ? e : []).slice()
}
async evaluate(e, t) {
const n = [];
for (const a of this.handlers) {
const r = await a.evaluate(e, t);
n.push({
handlerName: a.name,
result: r
})
}
const r = n.find((e => e.result.success));
if (r) return r.result;
const i = n.map((e => `[${e.handlerName}] ${e.result.message}`)).join("\n");
return sE.fail(`At least one permission evaluator must succeed. Evaluation results:\n${i}`)
}
}
class fE {
constructor() {
this.name = "IsStaffPermissionEvaluator"
}
evaluate(e) {
return e.badges && function(e) {
return tE(e, ["Staff"])
}(e) ? sE.success() : sE.fail()
}
}
class mE {
constructor() {
this.name = "IsQAPermissionEvaluator"
}
evaluate(e) {
return e.badges && function(e) {
return tE(e, ["QA"])
}(e) ? sE.success() : sE.fail()
}
}
class gE {
constructor() {
this.name = "IsEvocatiPermissionEvaluator"
}
evaluate(e) {
return e.badges && function(e) {
return tE(e, ["Evocati Test Flight"])
}(e) ? sE.success() : sE.fail()
}
}
class vE {
constructor(e) {
this.evaluators = new Map;
for (const t of e) this.evaluators.set(t[0], t[1])
}
async evaluate(e, t) {
const n = this.notNullEvaluator(e);
return await n.evaluate(t)
}
async verify(e, t) {
const n = await this.evaluate(e, t);
if (!n.success) throw new lE(`Permission '${e}' verification failed`, n)
}
notNullEvaluator(e) {
const t = this.evaluators.get(e);
if (!t) throw new Error(`No evaluator found for permission named '${e}'`);
return t
}
}
const yE = new class {
constructor() {
this.authentication = void 0, this.content = void 0, this.policy = void 0, this.games = void 0, this.rsi = void 0, this.agreements = void 0, this.status = void 0, this.rsi = YS.getInstance(), this.content = new uE(this.rsi), this.policy = function() {
const e = new fE,
t = new mE,
n = new gE,
r = new hE(e, t),
i = new Map([
["signin:release-candidate", new hE(r, n)]
]);
return new vE(i)
}(), this.authentication = new cE(this.rsi, this.policy), this.games = new dE(this.rsi), this.agreements = new ZS(this.rsi), this.status = new pE
}
};
class _E {
constructor(e) {
this.isMuted = void 0, this.gain = void 0, this.gainNode = void 0, this.soundList = void 0, this.trackList = void 0, this.soundMap = void 0, this.trackMap = void 0, this.trackTitleList = void 0, this.soundRoot = void 0, this.currentBgTrack = void 0, this.audioContext = new AudioContext, this.isMuted = !1, this.gain = e.volume / 100, this.soundList = e.sounds, this.trackList = e.musics, this.soundMap = new Map(Object.entries(e.sounds)), this.trackMap = new Map(Object.entries(e.musics)), this.trackTitleList = Object.keys(e.musics), this.currentBgTrack = null, this.gainNode = this.audioContext.createGain(), this.gainNode.connect(this.audioContext.destination), this.gainNode.gain.value = e.volume / 100;
const t = document.getElementById("SoundRoot");
this.soundRoot = document.createElement("div"), this.soundRoot.id = "SoundRoot", this.soundRoot.style.height = "0px", this.soundRoot.style.overflow = "hidden", t ? t.remove() : document.body.appendChild(this.soundRoot)
}
setGain(e) {
return this.gain = e, this.gainNode.gain.value = e / 100, this.gain
}
getGain() {
return this.gain
}
mute() {
this.isMuted || (this.gainNode.gain.value = 0, this.isMuted = !0)
}
unmute() {
this.isMuted && (this.gainNode.gain.value = this.gain, this.isMuted = !1)
}
async playSound(e, t = !1) {
return new Promise(((n, r) => {
if (this.soundMap.has(e)) {
const r = new Audio(this.soundMap.get(e));
r.loop = t, this.soundRoot.appendChild(r);
this.audioContext.createMediaElementSource(r).connect(this.gainNode), r.play(), r.addEventListener("ended", (() => {
r.remove(), n(null)
}))
} else r(new Error(`[SoundSystem] Sound with id "${e}" was not found`))
}))
}
async playBackgroundTrack(e = !1) {
return new Promise(((t, n) => {
let r = this.trackTitleList[Math.floor(Math.random() * this.trackTitleList.length)];
if (this.currentBgTrack && (this.currentBgTrack.audioNode.pause(), this.currentBgTrack.audioNode.remove(), e && (r = this.currentBgTrack.trackTitle)), this.trackMap.has(r)) {
const e = new Audio(this.trackMap.get(r));
this.soundRoot.appendChild(e);
const n = this.audioContext.createMediaElementSource(e),
i = this.audioContext.createGain();
i.gain.setValueAtTime(.01, 0), i.gain.linearRampToValueAtTime(1, 5), i.connect(this.gainNode), n.connect(i), this.currentBgTrack = {
trackTitle: r,
audioNode: e,
fadeNode: i
}, e.play(), e.addEventListener("ended", (() => {
e.remove(), this.playBackgroundTrack(), t(null)
}))
} else n(new Error(`[SoundSystem] Track with id "${r}" was not found`))
}))
}
async stopBackgroundTrack() {
this.currentBgTrack && (this.currentBgTrack.audioNode.pause(), this.currentBgTrack.audioNode.remove(), this.currentBgTrack = null)
}
async restartBackgroundTrack() {
this.playBackgroundTrack(!0)
}
}
let bE;
! function(e) {
e.DISPLAY_WARNING_DIALOG = "displayWarningDialog", e.DISPLAY_ACKNOWLEDGE_DIALOG = "displayAcknowledgeDialog", e.DISPLAY_INLINE_MESSAGE = "displayInlineMessage", e.EXECUTE_CALLBACK = "executeCallback"
}(bE || (bE = {}));
const xE = async e => {
const t = pR.getState().dialog,
n = Array.isArray(e) ? e : [e];
for (const {
handler: r,
error: i
}
of n) {
if (r.skip) return;
switch (r.type) {
case bE.DISPLAY_WARNING_DIALOG:
return void await t.actions.showWarningDialogErrorOccured(r.args);
case bE.DISPLAY_ACKNOWLEDGE_DIALOG:
return void await t.actions.showAcknowledgeDialogErrorOccured(r.args);
case bE.EXECUTE_CALLBACK:
return void await r.args.callback();
default:
console.error("error", i.message)
}
}
}, kE = e => {
switch (e.code) {
case yw.errorsCodes.ERR_LOGOUT_FAILED:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("dialog_warning_logout_title", {
ns: "dialog"
}),
content: xt.t("dialog_warning_logout_error", {
ns: "dialog"
})
}
}, error: e
};
case yw.errorsCodes.ERR_DISPLAY_AGREEMENT:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
content: xt.t("agreement_fetch_info_error", {
ns: "agreements"
})
}
}, error: e
};
default:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {}
}, error: e
}
}
};
var wE = n(1438),
SE = n.n(wE);
const EE = (e, t) => {
let n = {
...t,
speed: e.info.speed > 0 ? SE().format(e.info.speed, {
decimalPlaces: 1
}) : "0"
};
switch (e.phase) {
case yw.ipcEvents.installer.INSTALLER_RETRIEVE_REMOTE_FILE_START:
n = {
...n,
currentPhase: xt.t("download_update_manifest", {
ns: "download"
})
};
break;
case yw.ipcEvents.installer.INSTALLER_RETRIEVE_REMOTE_FILE_PROGRESS: {
const t = e.info.total > 0 && e.info.total < 107374182400;
n = {
...n,
currentPhase: xt.t("download_manifest", {
ns: "download"
}),
showProgress: !0,
downloaded: t ? e.info.downloaded : 0,
total: t ? e.info.total : 0,
percentage: t ? e.info.downloaded / e.info.total * 100 : 0
}
}
break;
case yw.ipcEvents.installer.INSTALLER_RETRIEVE_REMOTE_FILE_END:
n = {
...n,
currentPhase: xt.t("downloaded_update_manifest", {
ns: "download"
})
};
break;
case yw.ipcEvents.installer.COMPUTE_FILE_LIST_DIFFERENCE_START:
n = {
...n,
currentPhase: xt.t("download_analysing_install", {
ns: "download"
})
};
break;
case yw.ipcEvents.installer.COMPUTE_FILE_LIST_DIFFERENCE_END:
case yw.ipcEvents.installer.INSTALLER_UPDATE_LOOSE_FILE_START:
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_LOOSE_FILE_END:
n = {
...n,
isPausable: !1
};
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_PK4_START:
n = {
...n,
isPausable: !1,
showProgress: !1,
progressUndeterminate: !0,
percentage: 4.48,
currentPhase: xt.t("download_checking_files", {
ns: "download"
})
};
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_PK4_END:
n = {
...n,
isPausable: !1,
showProgress: !1,
progressUndeterminate: !1
};
break;
case yw.ipcEvents.installer.INSTALLER_DOWNLOAD_PROGRESS: {
const t = e.info.total > 0 && e.info.total < 107374182400;
n = {
...n,
isPausable: !0,
showProgress: !0,
currentPhase: xt.t("download_base_pack", {
ns: "download"
}),
downloaded: t ? e.info.downloaded : 0,
total: t ? e.info.total : 0,
percentage: t ? e.info.downloaded / e.info.total * 100 : 0,
filesDone: 0,
filesTotal: 1
}
}
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_LOOSE_FILE_PROGRESS: {
const r = e.info.total > 0 && e.info.total < 107374182400 && e.info.filesTotal > 0;
n = {
...n,
showProgress: !0,
currentPhase: xt.t("download_updating_game_files", {
ns: "download"
}),
downloaded: r ? e.info.downloaded : 0,
total: r ? e.info.total : 0,
percentage: r ? e.info.downloaded / e.info.total * 100 : 0,
filesDone: r ? e.info.filesDone : 0,
filesTotal: r ? e.info.filesTotal : 0,
isPausable: (null === t || void 0 === t ? void 0 : t.filesDone) !== (null === t || void 0 === t ? void 0 : t.filesTotal)
}
}
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_FILE_P4K_START:
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_FILE_P4K_END:
n = {
...n,
isPausable: !1
};
break;
case yw.ipcEvents.installer.INSTALLER_UPDATE_FILE_P4K_PROGRESS: {
const r = e.info.total > 0 && e.info.total < 107374182400 && e.info.filesTotal > 0;
n = {
...n,
showProgress: !0,
currentPhase: xt.t("download_updating_game_content", {
ns: "download"
}),
downloaded: r ? e.info.downloaded : 0,
total: r ? e.info.total : 0,
percentage: r ? e.info.downloaded / e.info.total * 100 : 0,
filesDone: r ? e.info.filesDone : 0,
filesTotal: r ? e.info.filesTotal : 0,
isPausable: (null === t || void 0 === t ? void 0 : t.filesDone) !== (null === t || void 0 === t ? void 0 : t.filesTotal)
}
}
}
return n
},
IE = (e, t) => e.find((e => e.game.gameId === t.gameId && e.game.channelId === t.channelId)),
OE = (e, t) => e.find((e => e.gameId === t.gameId && e.channelId === t.channelId)),
CE = e => e.find((e => e.status === yw.InstallationStatus.IN_PROGRESS || e.status === yw.InstallationStatus.PAUSED || e.status === yw.InstallationStatus.CANCELLING)),
AE = e => e.find((e => e.status === yw.InstallationStatus.CANCELLING)),
PE = (e, t) => `${e.gameId}-${e.channelId}` === `${t.gameId}-${t.channelId}`,
TE = (e, t) => e.filter((e => !PE(e.game, t))),
RE = async (e, t) => {
const {
application: n,
agreements: r
} = pR.getState(), i = await n.actions.isMinimumWindowsVersion(), a = await n.actions.isRespectingCPUCapabilites();
console.log("[Requirement] OS check : ", i), console.log("[Requirement] CPU check : ", a);
return !!await r.actions.checkAgreements()
}, DE = (e, t, n, r) => e.map((e => PE(e.game, t) ? {
...e,
status: n,
options: null !== r && void 0 !== r ? r : e.options
} : e)), LE = () => ({
queryKey: ["library"],
queryFn: async () => yE.games.getLibrary()
}), NE = (e, t) => ({
queryKey: ["games", e, t],
queryFn: async () => yE.games.getRelease({
gameId: e,
channelId: t
})
}), ME = (e, t) => ({
queryKey: [`platformContent-${e}-${t}`],
queryFn: async () => yE.content.getContent(e, t),
enabled: !pR.getState().application.isWindowMinimized || !pR.getState().application.actions.isOffline(),
select: e => ({
commLinks: e.commLinks.map(Iw),
patchNotes: e.patchNotes.map(Iw),
launcherCards: e.launcherCards.map(Iw)
}),
refetchInterval: Aw(yw.configuration.requestPollingInterval.gamePageContent.base, yw.configuration.requestPollingInterval.gamePageContent.window),
refetchOnWindowFocus: !1,
staleTime: 0,
gcTime: 0
});
var jE = n(5391);
var FE = function() {
let e = [],
t = 0,
n = e => {
e()
},
r = e => {
e()
};
const i = r => {
t ? e.push(r) : (0, jE.A4)((() => {
n(r)
}))
},
a = () => {
const t = e;
e = [], t.length && (0, jE.A4)((() => {
r((() => {
t.forEach((e => {
n(e)
}))
}))
}))
};
return {
batch: e => {
let n;
t++;
try {
n = e()
} finally {
t--, t || a()
}
return n
},
batchCalls: e => (...t) => {
i((() => {
e(...t)
}))
},
schedule: i,
setNotifyFunction: e => {
n = e
},
setBatchNotifyFunction: e => {
r = e
}
}
}(),
zE = n(8974),
VE = new class extends zE.l {
#r;
#t;
#n;
constructor() {
super(), this.#n = e => {
if (!jE.sk && window.addEventListener) {
const t = () => e();
return window.addEventListener("visibilitychange", t, !1), () => {
window.removeEventListener("visibilitychange", t)
}
}
}
}
onSubscribe() {
this.#t || this.setEventListener(this.#n)
}
onUnsubscribe() {
this.hasListeners() || (this.#t?.(), this.#t = void 0)
}
setEventListener(e) {
this.#n = e, this.#t?.(), this.#t = e((e => {
"boolean" === typeof e ? this.setFocused(e) : this.onFocus()
}))
}
setFocused(e) {
this.#r !== e && (this.#r = e, this.onFocus())
}
onFocus() {
this.listeners.forEach((e => {
e()
}))
}
isFocused() {
return "boolean" === typeof this.#r ? this.#r : "hidden" !== globalThis.document?.visibilityState
}
},
UE = n(1901);
function BE(e) {
return Math.min(1e3 * 2 ** e, 3e4)
}
function GE(e) {
return "online" !== (e ?? "online") || UE.N.isOnline()
}
var WE = class {
constructor(e) {
this.revert = e?.revert, this.silent = e?.silent
}
};
function $E(e) {
return e instanceof WE
}
function qE(e) {
let t, n, r, i = !1,
a = 0,
o = !1;
const s = new Promise(((e, t) => {
n = e, r = t
})),
l = () => !VE.isFocused() || "always" !== e.networkMode && !UE.N.isOnline(),
c = r => {
o || (o = !0, e.onSuccess?.(r), t?.(), n(r))
},
u = n => {
o || (o = !0, e.onError?.(n), t?.(), r(n))
},
d = () => new Promise((n => {
t = e => {
const t = o || !l();
return t && n(e), t
}, e.onPause?.()
})).then((() => {
t = void 0, o || e.onContinue?.()
})),
p = () => {
if (o) return;
let t;
try {
t = e.fn()
} catch (n) {
t = Promise.reject(n)
}
Promise.resolve(t).then(c).catch((t => {
if (o) return;
const n = e.retry ?? (jE.sk ? 0 : 3),
r = e.retryDelay ?? BE,
s = "function" === typeof r ? r(a, t) : r,
c = !0 === n || "number" === typeof n && a < n || "function" === typeof n && n(a, t);
!i && c ? (a++, e.onFail?.(a, t), (0, jE._v)(s).then((() => {
if (l()) return d()
})).then((() => {
i ? u(t) : p()
}))) : u(t)
}))
};
return GE(e.networkMode) ? p() : d().then(p), {
promise: s,
cancel: t => {
o || (u(new WE(t)), e.abort?.())
},
continue: () => {
const e = t?.();
return e ? s : Promise.resolve()
},
cancelRetry: () => {
i = !0
},
continueRetry: () => {
i = !1
}
}
}
var HE = class {
#i;
destroy() {
this.clearGcTimeout()
}
scheduleGc() {
this.clearGcTimeout(), (0, jE.PN)(this.gcTime) && (this.#i = setTimeout((() => {
this.optionalRemove()
}), this.gcTime))
}
updateGcTime(e) {
this.gcTime = Math.max(this.gcTime || 0, e ?? (jE.sk ? 1 / 0 : 3e5))
}
clearGcTimeout() {
this.#i && (clearTimeout(this.#i), this.#i = void 0)
}
},
KE = class extends HE {
constructor(e) {
super(), this.#a = !1, this.#o = e.defaultOptions, this.#s(e.options), this.#l = [], this.#c = e.cache, this.queryKey = e.queryKey, this.queryHash = e.queryHash, this.#u = e.state || function(e) {
const t = "function" === typeof e.initialData ? e.initialData() : e.initialData,
n = "undefined" !== typeof t,
r = n ? "function" === typeof e.initialDataUpdatedAt ? e.initialDataUpdatedAt() : e.initialDataUpdatedAt : 0;
return {
data: t,
dataUpdateCount: 0,
dataUpdatedAt: n ? r ?? Date.now() : 0,
error: null,
errorUpdateCount: 0,
errorUpdatedAt: 0,
fetchFailureCount: 0,
fetchFailureReason: null,
fetchMeta: null,
isInvalidated: !1,
status: n ? "success" : "pending",
fetchStatus: "idle"
}
}(this.options), this.state = this.#u, this.scheduleGc()
}
#u;
#d;
#c;
#p;
#h;
#l;
#o;
#a;
get meta() {
return this.options.meta
}
#s(e) {
this.options = {
...this.#o,
...e
}, this.updateGcTime(this.options.gcTime)
}
optionalRemove() {
this.#l.length || "idle" !== this.state.fetchStatus || this.#c.remove(this)
}
setData(e, t) {
const n = (0, jE.oE)(this.state.data, e, this.options);
return this.#f({
data: n,
type: "success",
dataUpdatedAt: t?.updatedAt,
manual: t?.manual
}), n
}
setState(e, t) {
this.#f({
type: "setState",
state: e,
setStateOptions: t
})
}
cancel(e) {
const t = this.#p;
return this.#h?.cancel(e), t ? t.then(jE.ZT).catch(jE.ZT) : Promise.resolve()
}
destroy() {
super.destroy(), this.cancel({
silent: !0
})
}
reset() {
this.destroy(), this.setState(this.#u)
}
isActive() {
return this.#l.some((e => !1 !== e.options.enabled))
}
isDisabled() {
return this.getObserversCount() > 0 && !this.isActive()
}
isStale() {
return this.state.isInvalidated || !this.state.dataUpdatedAt || this.#l.some((e => e.getCurrentResult().isStale))
}
isStaleByTime(e = 0) {
return this.state.isInvalidated || !this.state.dataUpdatedAt || !(0, jE.Kp)(this.state.dataUpdatedAt, e)
}
onFocus() {
const e = this.#l.find((e => e.shouldFetchOnWindowFocus()));
e?.refetch({
cancelRefetch: !1
}), this.#h?.continue()
}
onOnline() {
const e = this.#l.find((e => e.shouldFetchOnReconnect()));
e?.refetch({
cancelRefetch: !1
}), this.#h?.continue()
}
addObserver(e) {
this.#l.includes(e) || (this.#l.push(e), this.clearGcTimeout(), this.#c.notify({
type: "observerAdded",
query: this,
observer: e
}))
}
removeObserver(e) {
this.#l.includes(e) && (this.#l = this.#l.filter((t => t !== e)), this.#l.length || (this.#h && (this.#a ? this.#h.cancel({
revert: !0
}) : this.#h.cancelRetry()), this.scheduleGc()), this.#c.notify({
type: "observerRemoved",
query: this,
observer: e
}))
}
getObserversCount() {
return this.#l.length
}
invalidate() {
this.state.isInvalidated || this.#f({
type: "invalidate"
})
}
fetch(e, t) {
if ("idle" !== this.state.fetchStatus)
if (this.state.dataUpdatedAt && t?.cancelRefetch) this.cancel({
silent: !0
});
else if (this.#p) return this.#h?.continueRetry(), this.#p;
if (e && this.#s(e), !this.options.queryFn) {
const e = this.#l.find((e => e.options.queryFn));
e && this.#s(e.options)
}
const n = new AbortController,
r = {
queryKey: this.queryKey,
meta: this.meta
},
i = e => {
Object.defineProperty(e, "signal", {
enumerable: !0,
get: () => (this.#a = !0, n.signal)
})
};
i(r);
const a = {
fetchOptions: t,
options: this.options,
queryKey: this.queryKey,
state: this.state,
fetchFn: () => this.options.queryFn ? (this.#a = !1, this.options.persister ? this.options.persister(this.options.queryFn, r, this) : this.options.queryFn(r)) : Promise.reject(new Error(`Missing queryFn: '${this.options.queryHash}'`))
};
i(a), this.options.behavior?.onFetch(a, this), this.#d = this.state, "idle" !== this.state.fetchStatus && this.state.fetchMeta === a.fetchOptions?.meta || this.#f({
type: "fetch",
meta: a.fetchOptions?.meta
});
const o = e => {
$E(e) && e.silent || this.#f({
type: "error",
error: e
}), $E(e) || (this.#c.config.onError?.(e, this), this.#c.config.onSettled?.(this.state.data, e, this)), this.isFetchingOptimistic || this.scheduleGc(), this.isFetchingOptimistic = !1
};
return this.#h = qE({
fn: a.fetchFn,
abort: n.abort.bind(n),
onSuccess: e => {
"undefined" !== typeof e ? (this.setData(e), this.#c.config.onSuccess?.(e, this), this.#c.config.onSettled?.(e, this.state.error, this), this.isFetchingOptimistic || this.scheduleGc(), this.isFetchingOptimistic = !1) : o(new Error(`${this.queryHash} data is undefined`))
},
onError: o,
onFail: (e, t) => {
this.#f({
type: "failed",
failureCount: e,
error: t
})
},
onPause: () => {
this.#f({
type: "pause"
})
},
onContinue: () => {
this.#f({
type: "continue"
})
},
retry: a.options.retry,
retryDelay: a.options.retryDelay,
networkMode: a.options.networkMode
}), this.#p = this.#h.promise, this.#p
}
#f(e) {
this.state = (t => {
switch (e.type) {
case "failed":
return {
...t, fetchFailureCount: e.failureCount, fetchFailureReason: e.error
};
case "pause":
return {
...t, fetchStatus: "paused"
};
case "continue":
return {
...t, fetchStatus: "fetching"
};
case "fetch":
return {
...t, fetchFailureCount: 0, fetchFailureReason: null, fetchMeta: e.meta ?? null, fetchStatus: GE(this.options.networkMode) ? "fetching" : "paused", ...!t.dataUpdatedAt && {
error: null,
status: "pending"
}
};
case "success":
return {
...t, data: e.data, dataUpdateCount: t.dataUpdateCount + 1, dataUpdatedAt: e.dataUpdatedAt ?? Date.now(), error: null, isInvalidated: !1, status: "success", ...!e.manual && {
fetchStatus: "idle",
fetchFailureCount: 0,
fetchFailureReason: null
}
};
case "error":
const n = e.error;
return $E(n) && n.revert && this.#d ? {
...this.#d,
fetchStatus: "idle"
} : {
...t,
error: n,
errorUpdateCount: t.errorUpdateCount + 1,
errorUpdatedAt: Date.now(),
fetchFailureCount: t.fetchFailureCount + 1,
fetchFailureReason: n,
fetchStatus: "idle",
status: "error"
};
case "invalidate":
return {
...t, isInvalidated: !0
};
case "setState":
return {
...t, ...e.state
}
}
})(this.state), FE.batch((() => {
this.#l.forEach((e => {
e.onQueryUpdate()
})), this.#c.notify({
query: this,
type: "updated",
action: e
})
}))
}
};
var YE = class extends zE.l {
constructor(e = {}) {
super(), this.config = e, this.#m = new Map
}
#m;
build(e, t, n) {
const r = t.queryKey,
i = t.queryHash ?? (0, jE.Rm)(r, t);
let a = this.get(i);
return a || (a = new KE({
cache: this,
queryKey: r,
queryHash: i,
options: e.defaultQueryOptions(t),
state: n,
defaultOptions: e.getQueryDefaults(r)
}), this.add(a)), a
}
add(e) {
this.#m.has(e.queryHash) || (this.#m.set(e.queryHash, e), this.notify({
type: "added",
query: e
}))
}
remove(e) {
const t = this.#m.get(e.queryHash);
t && (e.destroy(), t === e && this.#m.delete(e.queryHash), this.notify({
type: "removed",
query: e
}))
}
clear() {
FE.batch((() => {
this.getAll().forEach((e => {
this.remove(e)
}))
}))
}
get(e) {
return this.#m.get(e)
}
getAll() {
return [...this.#m.values()]
}
find(e) {
const t = {
exact: !0,
...e
};
return this.getAll().find((e => (0, jE._x)(t, e)))
}
findAll(e = {}) {
const t = this.getAll();
return Object.keys(e).length > 0 ? t.filter((t => (0, jE._x)(e, t))) : t
}
notify(e) {
FE.batch((() => {
this.listeners.forEach((t => {
t(e)
}))
}))
}
onFocus() {
FE.batch((() => {
this.getAll().forEach((e => {
e.onFocus()
}))
}))
}
onOnline() {
FE.batch((() => {
this.getAll().forEach((e => {
e.onOnline()
}))
}))
}
},
QE = class extends HE {
constructor(e) {
super(), this.mutationId = e.mutationId, this.#o = e.defaultOptions, this.#g = e.mutationCache, this.#l = [], this.state = e.state || {
context: void 0,
data: void 0,
error: null,
failureCount: 0,
failureReason: null,
isPaused: !1,
status: "idle",
variables: void 0,
submittedAt: 0
}, this.setOptions(e.options), this.scheduleGc()
}
#l;
#o;
#g;
#h;
setOptions(e) {
this.options = {
...this.#o,
...e
}, this.updateGcTime(this.options.gcTime)
}
get meta() {
return this.options.meta
}
addObserver(e) {
this.#l.includes(e) || (this.#l.push(e), this.clearGcTimeout(), this.#g.notify({
type: "observerAdded",
mutation: this,
observer: e
}))
}
removeObserver(e) {
this.#l = this.#l.filter((t => t !== e)), this.scheduleGc(), this.#g.notify({
type: "observerRemoved",
mutation: this,
observer: e
})
}
optionalRemove() {
this.#l.length || ("pending" === this.state.status ? this.scheduleGc() : this.#g.remove(this))
}
continue () {
return this.#h?.continue() ?? this.execute(this.state.variables)
}
async execute(e) {
const t = () => (this.#h = qE({
fn: () => this.options.mutationFn ? this.options.mutationFn(e) : Promise.reject(new Error("No mutationFn found")),
onFail: (e, t) => {
this.#f({
type: "failed",
failureCount: e,
error: t
})
},
onPause: () => {
this.#f({
type: "pause"
})
},
onContinue: () => {
this.#f({
type: "continue"
})
},
retry: this.options.retry ?? 0,
retryDelay: this.options.retryDelay,
networkMode: this.options.networkMode
}), this.#h.promise),
n = "pending" === this.state.status;
try {
if (!n) {
this.#f({
type: "pending",
variables: e
}), await (this.#g.config.onMutate?.(e, this));
const t = await (this.options.onMutate?.(e));
t !== this.state.context && this.#f({
type: "pending",
context: t,
variables: e
})
}
const r = await t();
return await (this.#g.config.onSuccess?.(r, e, this.state.context, this)), await (this.options.onSuccess?.(r, e, this.state.context)), await (this.#g.config.onSettled?.(r, null, this.state.variables, this.state.context, this)), await (this.options.onSettled?.(r, null, e, this.state.context)), this.#f({
type: "success",
data: r
}), r
} catch (r) {
try {
throw await (this.#g.config.onError?.(r, e, this.state.context, this)), await (this.options.onError?.(r, e, this.state.context)), await (this.#g.config.onSettled?.(void 0, r, this.state.variables, this.state.context, this)), await (this.options.onSettled?.(void 0, r, e, this.state.context)), r
} finally {
this.#f({
type: "error",
error: r
})
}
}
}
#f(e) {
this.state = (t => {
switch (e.type) {
case "failed":
return {
...t, failureCount: e.failureCount, failureReason: e.error
};
case "pause":
return {
...t, isPaused: !0
};
case "continue":
return {
...t, isPaused: !1
};
case "pending":
return {
...t, context: e.context, data: void 0, failureCount: 0, failureReason: null, error: null, isPaused: !GE(this.options.networkMode), status: "pending", variables: e.variables, submittedAt: Date.now()
};
case "success":
return {
...t, data: e.data, failureCount: 0, failureReason: null, error: null, status: "success", isPaused: !1
};
case "error":
return {
...t, data: void 0, error: e.error, failureCount: t.failureCount + 1, failureReason: e.error, isPaused: !1, status: "error"
}
}
})(this.state), FE.batch((() => {
this.#l.forEach((t => {
t.onMutationUpdate(e)
})), this.#g.notify({
mutation: this,
type: "updated",
action: e
})
}))
}
};
var ZE = class extends zE.l {
constructor(e = {}) {
super(), this.config = e, this.#v = [], this.#y = 0
}
#v;
#y;
#_;
build(e, t, n) {
const r = new QE({
mutationCache: this,
mutationId: ++this.#y,
options: e.defaultMutationOptions(t),
state: n
});
return this.add(r), r
}
add(e) {
this.#v.push(e), this.notify({
type: "added",
mutation: e
})
}
remove(e) {
this.#v = this.#v.filter((t => t !== e)), this.notify({
type: "removed",
mutation: e
})
}
clear() {
FE.batch((() => {
this.#v.forEach((e => {
this.remove(e)
}))
}))
}
getAll() {
return this.#v
}
find(e) {
const t = {
exact: !0,
...e
};
return this.#v.find((e => (0, jE.X7)(t, e)))
}
findAll(e = {}) {
return this.#v.filter((t => (0, jE.X7)(e, t)))
}
notify(e) {
FE.batch((() => {
this.listeners.forEach((t => {
t(e)
}))
}))
}
resumePausedMutations() {
return this.#_ = (this.#_ ?? Promise.resolve()).then((() => {
const e = this.#v.filter((e => e.state.isPaused));
return FE.batch((() => e.reduce(((e, t) => e.then((() => t.continue().catch(jE.ZT)))), Promise.resolve())))
})).then((() => {
this.#_ = void 0
})), this.#_
}
};
function XE(e) {
return {
onFetch: (t, n) => {
const r = async () => {
const n = t.options,
r = t.fetchOptions?.meta?.fetchMore?.direction,
i = t.state.data?.pages || [],
a = t.state.data?.pageParams || [],
o = {
pages: [],
pageParams: []
};
let s = !1;
const l = t.options.queryFn || (() => Promise.reject(new Error(`Missing queryFn: '${t.options.queryHash}'`))),
c = async (e, n, r) => {
if (s) return Promise.reject();
if (null == n && e.pages.length) return Promise.resolve(e);
const i = {
queryKey: t.queryKey,
pageParam: n,
direction: r ? "backward" : "forward",
meta: t.options.meta
};
var a;
a = i, Object.defineProperty(a, "signal", {
enumerable: !0,
get: () => (t.signal.aborted ? s = !0 : t.signal.addEventListener("abort", (() => {
s = !0
})), t.signal)
});
const o = await l(i),
{
maxPages: c
} = t.options,
u = r ? jE.Ht : jE.VX;
return {
pages: u(e.pages, o, c),
pageParams: u(e.pageParams, n, c)
}
};
let u;
if (r && i.length) {
const e = "backward" === r,
t = {
pages: i,
pageParams: a
},
o = (e ? eI : JE)(n, t);
u = await c(t, o, e)
} else {
u = await c(o, a[0] ?? n.initialPageParam);
const t = e ?? i.length;
for (let e = 1; e < t; e++) {
const e = JE(n, u);
u = await c(u, e)
}
}
return u
};
t.options.persister ? t.fetchFn = () => t.options.persister?.(r, {
queryKey: t.queryKey,
meta: t.options.meta,
signal: t.signal
}, n) : t.fetchFn = r
}
}
}
function JE(e, {
pages: t,
pageParams: n
}) {
const r = t.length - 1;
return e.getNextPageParam(t[r], t, n[r], n)
}
function eI(e, {
pages: t,
pageParams: n
}) {
return e.getPreviousPageParam?.(t[0], t, n[0], n)
}
const tI = async e => {
var t;
if (!(e instanceof wS || e instanceof lE)) return;
if (!nI(e)) return;
const {
application: {
platformMaster: n
},
user: {
identity: r
}
} = pR.getState(), i = e instanceof lE ? zw : e.code, a = e instanceof lE ? n : null !== (t = e.environment) && void 0 !== t ? t : n;
window.launcherAPI.analytics.setAnalyticsEvent(yw.AnalyticsEventName.APP_API_ERROR, {
ErrorCode: i,
ErrorMessage: e.message,
...r,
Environment: a
})
}, nI = e => {
if (e instanceof zS || e instanceof VS || e instanceof IS || e instanceof NS || e instanceof lE) return !0;
const {
application: {
connection: t
}
} = pR.getState();
return e instanceof WS && t.mode === yw.ConnectionMode.ONLINE
}, rI = async (e = {
clearDevice: !1
}) => {
var t;
const n = pR.getState().application,
r = pR.getState().authentication,
i = pR.getState().user,
a = (null === (t = i.device) || void 0 === t ? void 0 : t.duration) === XS.SESSION || (null === e || void 0 === e ? void 0 : e.clearDevice);
try {
(i.sessions[n.platformMaster] && Object.keys(i.sessions[n.platformMaster] || {}).length > 0 ? i.sessions[n.platformMaster] : null) && (yE.games.clearClaims(), await yE.authentication.signOut({
clearDevice: a
}))
} catch (o) {
if (o instanceof Error && !n.actions.isOffline()) {
const e = new yw.GenericError({
code: yw.errorsNames.ERR_LOGOUT_FAILED,
message: `[Logout] Error: Failed ${o}`,
payload: null
});
throw await xE(kE(e)), o
}
} finally {
aI.clear(), r.actions.resetAuthentication(), n.actions.resetApplication(), i.actions.resetUser(e), Rw().authentication.setSignOut()
}
}, iI = async e => {
switch (!0) {
case e instanceof zS:
await rI(), await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_api_denied_request_title", {
ns: "errors"
}),
content: e.message
});
break;
case e instanceof VS:
await rI(), await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_api_too_many_requests_title", {
ns: "errors"
}),
content: e.message
});
break;
case e instanceof WS:
const {
application: {
connection: t,
actions: n
}
} = pR.getState();
if (t.mode === yw.ConnectionMode.NO_CONNECTION) return;
n.checkConnection();
break;
case e instanceof IS:
await rI(), await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_api_auth_expired_title", {
ns: "errors"
}),
content: e.message
});
break;
case e instanceof DS:
case e instanceof MS:
case e instanceof SS:
case e instanceof NS:
case e instanceof lE:
case e instanceof ES:
case e instanceof PS:
case e instanceof TS:
break;
case e instanceof CS:
await rI(), await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_generic_title", {
ns: "errors"
}),
content: e.message
});
break;
case e instanceof AS:
case e instanceof RS:
break;
default:
await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_generic_title", {
ns: "errors"
}),
content: e.message
})
}
}, aI = new class {
#b;
#g;
#o;
#x;
#k;
#w;
#S;
#E;
constructor(e = {}) {
this.#b = e.queryCache || new YE, this.#g = e.mutationCache || new ZE, this.#o = e.defaultOptions || {}, this.#x = new Map, this.#k = new Map, this.#w = 0
}
mount() {
this.#w++, 1 === this.#w && (this.#S = VE.subscribe((() => {
VE.isFocused() && (this.resumePausedMutations(), this.#b.onFocus())
})), this.#E = UE.N.subscribe((() => {
UE.N.isOnline() && (this.resumePausedMutations(), this.#b.onOnline())
})))
}
unmount() {
this.#w--, 0 === this.#w && (this.#S?.(), this.#S = void 0, this.#E?.(), this.#E = void 0)
}
isFetching(e) {
return this.#b.findAll({
...e,
fetchStatus: "fetching"
}).length
}
isMutating(e) {
return this.#g.findAll({
...e,
status: "pending"
}).length
}
getQueryData(e) {
return this.#b.find({
queryKey: e
})?.state.data
}
ensureQueryData(e) {
const t = this.getQueryData(e.queryKey);
return void 0 !== t ? Promise.resolve(t) : this.fetchQuery(e)
}
getQueriesData(e) {
return this.getQueryCache().findAll(e).map((({
queryKey: e,
state: t
}) => [e, t.data]))
}
setQueryData(e, t, n) {
const r = this.#b.find({
queryKey: e
})?.state.data,
i = (0, jE.SE)(t, r);
if ("undefined" === typeof i) return;
const a = this.defaultQueryOptions({
queryKey: e
});
return this.#b.build(this, a).setData(i, {
...n,
manual: !0
})
}
setQueriesData(e, t, n) {
return FE.batch((() => this.getQueryCache().findAll(e).map((({
queryKey: e
}) => [e, this.setQueryData(e, t, n)]))))
}
getQueryState(e) {
return this.#b.find({
queryKey: e
})?.state
}
removeQueries(e) {
const t = this.#b;
FE.batch((() => {
t.findAll(e).forEach((e => {
t.remove(e)
}))
}))
}
resetQueries(e, t) {
const n = this.#b,
r = {
type: "active",
...e
};
return FE.batch((() => (n.findAll(e).forEach((e => {
e.reset()
})), this.refetchQueries(r, t))))
}
cancelQueries(e = {}, t = {}) {
const n = {
revert: !0,
...t
},
r = FE.batch((() => this.#b.findAll(e).map((e => e.cancel(n)))));
return Promise.all(r).then(jE.ZT).catch(jE.ZT)
}
invalidateQueries(e = {}, t = {}) {
return FE.batch((() => {
if (this.#b.findAll(e).forEach((e => {
e.invalidate()
})), "none" === e.refetchType) return Promise.resolve();
const n = {
...e,
type: e.refetchType ?? e.type ?? "active"
};
return this.refetchQueries(n, t)
}))
}
refetchQueries(e = {}, t) {
const n = {
...t,
cancelRefetch: t?.cancelRefetch ?? !0
},
r = FE.batch((() => this.#b.findAll(e).filter((e => !e.isDisabled())).map((e => {
let t = e.fetch(void 0, n);
return n.throwOnError || (t = t.catch(jE.ZT)), "paused" === e.state.fetchStatus ? Promise.resolve() : t
}))));
return Promise.all(r).then(jE.ZT)
}
fetchQuery(e) {
const t = this.defaultQueryOptions(e);
"undefined" === typeof t.retry && (t.retry = !1);
const n = this.#b.build(this, t);
return n.isStaleByTime(t.staleTime) ? n.fetch(t) : Promise.resolve(n.state.data)
}
prefetchQuery(e) {
return this.fetchQuery(e).then(jE.ZT).catch(jE.ZT)
}
fetchInfiniteQuery(e) {
return e.behavior = XE(e.pages), this.fetchQuery(e)
}
prefetchInfiniteQuery(e) {
return this.fetchInfiniteQuery(e).then(jE.ZT).catch(jE.ZT)
}
resumePausedMutations() {
return this.#g.resumePausedMutations()
}
getQueryCache() {
return this.#b
}
getMutationCache() {
return this.#g
}
getDefaultOptions() {
return this.#o
}
setDefaultOptions(e) {
this.#o = e
}
setQueryDefaults(e, t) {
this.#x.set((0, jE.Ym)(e), {
queryKey: e,
defaultOptions: t
})
}
getQueryDefaults(e) {
const t = [...this.#x.values()];
let n = {};
return t.forEach((t => {
(0, jE.to)(e, t.queryKey) && (n = {
...n,
...t.defaultOptions
})
})), n
}
setMutationDefaults(e, t) {
this.#k.set((0, jE.Ym)(e), {
mutationKey: e,
defaultOptions: t
})
}
getMutationDefaults(e) {
const t = [...this.#k.values()];
let n = {};
return t.forEach((t => {
(0, jE.to)(e, t.mutationKey) && (n = {
...n,
...t.defaultOptions
})
})), n
}
defaultQueryOptions(e) {
if (e?._defaulted) return e;
const t = {
...this.#o.queries,
...e?.queryKey && this.getQueryDefaults(e.queryKey),
...e,
_defaulted: !0
};
return t.queryHash || (t.queryHash = (0, jE.Rm)(t.queryKey, t)), "undefined" === typeof t.refetchOnReconnect && (t.refetchOnReconnect = "always" !== t.networkMode), "undefined" === typeof t.throwOnError && (t.throwOnError = !!t.suspense), "undefined" === typeof t.networkMode && t.persister && (t.networkMode = "offlineFirst"), t
}
defaultMutationOptions(e) {
return e?._defaulted ? e : {
...this.#o.mutations,
...e?.mutationKey && this.getMutationDefaults(e.mutationKey),
...e,
_defaulted: !0
}
}
clear() {
this.#b.clear(), this.#g.clear()
}
}({
defaultOptions: {
queries: {
gcTime: 12e5,
staleTime: 3e5,
networkMode: "online",
refetchOnReconnect: "always"
}
},
mutationCache: new ZE({
onError: async e => {
await tI(e), await iI(e), window.launcherAPI.log.error("[Mutation] Error: ", e)
}
}),
queryCache: new YE({
onError: async e => {
await tI(e), await iI(e), window.launcherAPI.log.error("[Query] Error: ", e)
}
})
}), oI = (e, t) => ({
agreements: {
warningHasBeenAccepted: !1,
actions: {
checkWarnings: async () => {
const n = t();
try {
const t = await aI.fetchQuery({
queryKey: ["warnings"],
queryFn: async () => yE.agreements.getWarnings()
}),
r = t ? t[0] : null;
if (!(r && r.id && !n.agreements.warningHasBeenAccepted)) return !0;
const i = await aI.fetchQuery((e => ({
queryKey: ["warningInfo"],
queryFn: async () => yE.agreements.getWarningInfo(e)
}))(r.id)),
{
title: a,
body: o
} = i,
s = await n.dialog.actions.showWarningsDialog(a, o);
return e((e => ({
agreements: {
...e.agreements,
warningHasBeenAccepted: s.resolved
}
}))), s.resolved
} catch (r) {
return console.error("[Warnings] warnings error", r), !1
}
},
checkAgreements: async () => {
const e = t();
try {
const t = await aI.fetchQuery({
queryKey: ["agreements"],
queryFn: async () => yE.agreements.checkAgreements()
});
return t.auth ? await e.agreements.actions.checkWarnings() : t.auth
} catch (n) {
return n instanceof RS && e.agreements.actions.checkAgreementsFailure(n)
}
},
checkAgreementsFailure: async e => {
var n;
const r = null !== (n = e.payload.data.agreements) && void 0 !== n ? n : [],
i = t();
try {
const e = [eE.EULA, eE.TOS, eE.DISCLAIMER].map((e => r.filter((t => t.type === e)))).reduce(((e, t) => e.concat(t)), []);
return await i.agreements.actions.displayAgreement(e)
} catch (a) {
return console.error("[Agreements] - error", a), !1
}
},
displayAgreement: async n => {
const r = t(),
[i, ...a] = n;
e((e => ({
installer: {
...e.installer,
isDownloadPopoverOpened: !1
}
})));
try {
const e = await aI.fetchQuery(((e, t) => ({
queryKey: ["agreementInfo"],
queryFn: async () => yE.agreements.getAgreementInfo(e, t)
}))(i.id, i.type)),
{
title: t,
subtitle: n,
body: o
} = e,
s = await r.dialog.actions.showAgreementsDialog(t, n, o);
if (s.resolved) {
await aI.fetchQuery(((e, t) => ({
queryKey: ["agreementAccept"],
queryFn: async () => yE.agreements.acceptAgreement(e, t)
}))(i.id, i.type));
const e = a;
return e.length > 0 ? await r.agreements.actions.displayAgreement(e) : await r.agreements.actions.checkWarnings()
}
return s.resolved
} catch (o) {
if (o instanceof Error) {
const e = new yw.GenericError({
code: yw.errorsNames.ERR_DISPLAY_AGREEMENT,
message: `[Agreement] displaying agreements error ${o}`,
payload: {
error: o
}
});
await xE(kE(e))
}
return console.error("[Agreements] - error displaying agreements", o), !1
}
}
}
}
});
let sI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "m1.216 8.511 2.936 2.936a.748.748 0 0 0 1.326-.48.748.748 0 0 0-.247-.557L3.554 8.733h10.821v-.01a.75.75 0 0 0 0-1.48v-.01H3.555L5.23 5.556a.75.75 0 1 0-1.08-1.037L1.217 7.455a.748.748 0 0 0 0 1.056Z"
}))
},
lI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M8.782 11.124a1.002 1.002 0 0 1-1.564 0L3.226 6.15c-.532-.663-.064-1.65.782-1.65h7.984c.846 0 1.314.987.782 1.65l-3.992 4.974Z"
}))
},
cI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "m8.182 1.444 2.23 2.35a.749.749 0 0 1-.002 1.145l-2.4 2.278a.748.748 0 0 1-1.312-.515.748.748 0 0 1 .26-.55l1.177-1.116c-2.425.182-3.462 1.14-3.945 2.018-.523.95-.504 1.968-.494 2.512a17.117 17.117 0 0 1 .002.143v.013a.18.18 0 0 1 0 .01v.009a.75.75 0 0 1-1.5 0l-.003-.13c-.014-.514-.053-1.946.68-3.28.784-1.424 2.347-2.598 5.229-2.796L7.076 2.452a.75.75 0 1 1 1.106-1.008ZM7.829 14.56l-2.23-2.35a.749.749 0 0 1-.064-1.082l.001-.001a.778.778 0 0 1 .065-.062L8 8.787a.748.748 0 0 1 1.312.515.748.748 0 0 1-.26.55l-1.177 1.117c2.425-.183 3.462-1.14 3.945-2.019.523-.95.504-1.968.494-2.511a15.313 15.313 0 0 1-.002-.144v-.013a.306.306 0 0 1 0-.018.75.75 0 0 1 1.5 0c0 .032 0 .076.002.13.014.514.054 1.945-.68 3.28-.783 1.423-2.347 2.597-5.228 2.796l1.028 1.082a.75.75 0 1 1-1.106 1.008Z"
}))
},
uI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M3.068 12.967a7 7 0 1 0 9.864-9.934 7 7 0 0 0-9.864 9.934Zm.549-1.644a5.5 5.5 0 0 1 7.706-7.706l-7.706 7.706Zm1.06 1.06 7.707-7.705a5.5 5.5 0 0 1-7.706 7.706Z",
clipRule: "evenodd"
}))
},
dI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "m1.186 2.288.002-.001a.78.78 0 0 1 1.1-1.1l.001-.002.035.035a.772.772 0 0 1 .017.017l5.66 5.66 5.71-5.711.002.002a.78.78 0 0 1 1.1 1.1l.002.001-.035.035a.973.973 0 0 1-.017.017L9.104 8l5.69 5.69h-.002a.78.78 0 1 1-1.155 1.05L8.002 9.103l-5.69 5.69H2.31a.78.78 0 1 1-1.05-1.155L6.898 8 1.186 2.288Z"
}))
},
pI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M2.5 3.8v6h8.815a2 2 0 0 1 1.302.481l.883.758V3.8h-11ZM15 3.3a1 1 0 0 0-1-1H2a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h9.315a.5.5 0 0 1 .325.12l2.535 2.172a.5.5 0 0 0 .825-.38V3.3Z",
clipRule: "evenodd"
}))
},
hI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M14.25 15a.75.75 0 0 0 0-1.5H1.75a.75.75 0 0 0 0 1.5h12.5ZM8 1a.75.75 0 0 1 .749.703h.001v7.712l1.677-1.678a.75.75 0 1 1 1.037 1.08l-2.936 2.935a.748.748 0 0 1-1.055 0L4.536 8.816a.748.748 0 0 1 .48-1.325.75.75 0 0 1 .557.246L7.25 9.415V1.703h.001A.75.75 0 0 1 8 1Z"
}))
},
fI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 13.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11ZM8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "M8.75 11a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm-1.5-6a.75.75 0 0 1 1.5 0v3.75a.75.75 0 0 1-1.5 0V5Z"
}))
},
mI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M7.25 5a.75.75 0 1 1 1.5 0 .75.75 0 0 1-1.5 0ZM8 11.75a.75.75 0 0 0 .75-.75V7.25a.75.75 0 0 0-1.5 0V11c0 .414.336.75.75.75Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 15A7 7 0 1 0 8 1a7 7 0 0 0 0 14Zm0-1.5a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11Z",
clipRule: "evenodd"
}))
},
gI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M7.25 1h1.5v3.519l.6-.598A.75.75 0 1 1 10.387 5l-1.86 1.856a.748.748 0 0 1-1.055 0L5.463 5a.748.748 0 0 1 .481-1.326c.22 0 .419.095.556.247l.75.598V.999Zm5.25 10.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Z"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M2.5 3.75c0-.69.56-1.25 1.25-1.25H6V1H3.75A2.75 2.75 0 0 0 1 3.75v8.5A2.75 2.75 0 0 0 3.75 15h8.5A2.75 2.75 0 0 0 15 12.25v-8.5A2.75 2.75 0 0 0 12.25 1H10v1.5h2.25c.69 0 1.25.56 1.25 1.25V8.5h-11V3.75Zm0 6.25v2.25c0 .69.56 1.25 1.25 1.25h8.5c.69 0 1.25-.56 1.25-1.25V10h-11Z",
clipRule: "evenodd"
}))
},
vI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M1.716 13.5a.75.75 0 0 0 0 1.5H14.25a.75.75 0 1 0-.023-1.5H1.716Z"
}))
},
yI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M2.475 3.137a.974.974 0 0 0-.975.971v9.23c0 .537.437.972.975.972h9.267a.974.974 0 0 0 .976-.972V8.45a.73.73 0 0 0-.732-.729.73.73 0 0 0-.73.76l-.001 4.372H2.963V4.594h3.902v-.002a.73.73 0 0 0 .67-.727.73.73 0 0 0-.67-.726v-.002h-4.39Z"
}), Ee.createElement("path", {
d: "M13.769 1.313h-4.05a.732.732 0 0 0-.583.21.727.727 0 0 0 .553 1.243h2.314L7.822 6.931v.001a.727.727 0 0 0 .03 1 .734.734 0 0 0 1.003.029h.001l4.182-4.164v2.305a.72.72 0 0 0 .213.55.734.734 0 0 0 1.246-.58V2.039a.732.732 0 0 0-.728-.725Z"
}))
},
_I = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M3 2a1 1 0 0 1 2 0v12a1 1 0 1 1-2 0V2Zm8 0a1 1 0 1 1 2 0v12a1 1 0 1 1-2 0V2Z"
}))
},
bI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M3.01 2.715v10.57L12.588 8 3.01 2.715Zm10.9 4.307a1.105 1.105 0 0 1 0 1.956L3.272 14.847c-.788.435-1.773-.109-1.773-.978V2.13c0-.87.985-1.413 1.773-.978l10.636 5.869Z",
clipRule: "evenodd"
}))
},
xI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M2.5 8a5.5 5.5 0 0 1 9.938-3.25H11.25a.75.75 0 0 0 0 1.5h3A.75.75 0 0 0 15 5.5v-3a.75.75 0 0 0-1.5 0v1.17a7 7 0 1 0 1.41 5.45.75.75 0 1 0-1.48-.24A5.502 5.502 0 0 1 2.5 8Z"
}))
},
kI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "m7.334 3.874-.782.295a4.088 4.088 0 0 0-1.151.66l-.648.533-1.32-.455-.396.687 1.056.917-.135.825a4.1 4.1 0 0 0-.06.664c0 .208.021.426.06.664l.135.825-1.056.917.396.688 1.32-.455.648.532c.335.274.723.498 1.151.66l.782.295.268 1.374h.793l.268-1.374.782-.295a4.09 4.09 0 0 0 1.15-.66l.649-.532 1.32.455.396-.688-1.056-.917.135-.825c.038-.238.06-.456.06-.664 0-.208-.022-.426-.06-.664l-.135-.825 1.056-.917-.397-.687-1.319.455-.648-.532a4.088 4.088 0 0 0-1.151-.66l-.782-.296L8.395 2.5h-.793l-.268 1.374Zm2.641-1.108L9.71 1.404A.5.5 0 0 0 9.219 1H6.778a.5.5 0 0 0-.49.404L6.02 2.766a5.588 5.588 0 0 0-1.572.904l-1.307-.45a.5.5 0 0 0-.596.222l-1.22 2.116a.5.5 0 0 0 .105.627l1.047.91c-.048.295-.08.596-.08.905 0 .309.032.61.08.905l-1.047.91a.5.5 0 0 0-.105.627l1.22 2.116a.5.5 0 0 0 .596.223l1.307-.451a5.59 5.59 0 0 0 1.572.904l.266 1.362a.5.5 0 0 0 .49.404H9.22a.5.5 0 0 0 .49-.404l.266-1.362a5.59 5.59 0 0 0 1.573-.904l1.306.45a.5.5 0 0 0 .596-.222l1.22-2.116a.5.5 0 0 0-.104-.627l-1.047-.91c.048-.295.08-.596.08-.905 0-.309-.032-.61-.08-.905l1.047-.91a.5.5 0 0 0 .105-.627l-1.22-2.116a.5.5 0 0 0-.597-.223l-1.306.451a5.587 5.587 0 0 0-1.573-.904Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
fillRule: "evenodd",
d: "M9 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0Zm1.5 0a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0Z",
clipRule: "evenodd"
}))
},
wI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
fillRule: "evenodd",
d: "M8 3.184 2.675 13.431h10.65L8 3.184Zm.887-1.545a1 1 0 0 0-1.775 0L.965 13.47a1 1 0 0 0 .887 1.461h12.296a1 1 0 0 0 .887-1.46L8.887 1.638Z",
clipRule: "evenodd"
}), Ee.createElement("path", {
d: "M8.75 12.181a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm-1.5-5.5a.75.75 0 1 1 1.5 0v3.25a.75.75 0 0 1-1.5 0v-3.25Z"
}))
},
SI = e => {
var {
title: t,
titleId: n
} = e, r = function(e, t) {
if (null == e) return {};
var n, r, i = function(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}(e, t);
if (Object.getOwnPropertySymbols) {
var a = Object.getOwnPropertySymbols(e);
for (r = 0; r < a.length; r++) n = a[r], !(t.indexOf(n) >= 0) && Object.prototype.propertyIsEnumerable.call(e, n) && (i[n] = e[n])
}
return i
}(e, ["title", "titleId"]);
return Ee.createElement("svg", function(e) {
for (var t = 1; t < arguments.length; t++) {
var n = null != arguments[t] ? arguments[t] : {},
r = Object.keys(n);
"function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter((function(e) {
return Object.getOwnPropertyDescriptor(n, e).enumerable
})))), r.forEach((function(t) {
var r;
r = n[t], t in e ? Object.defineProperty(e, t, {
value: r,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[t] = r
}))
}
return e
}({
xmlns: "http://www.w3.org/2000/svg",
width: 16,
height: 16,
fill: "currentColor",
viewBox: "0 0 16 16",
focusable: !1,
"aria-labelledby": n
}, r), t ? Ee.createElement("title", {
id: n
}, t) : null, Ee.createElement("path", {
d: "M4.276 1.623a.75.75 0 0 1 1.053.13l.413.53a10.692 10.692 0 0 1 2.31-.251c2.531 0 4.857.883 6.685 2.357a.709.709 0 0 1 .088 1.003c-.273.336-.773.367-1.113.099a9.115 9.115 0 0 0-5.66-1.96c-.43 0-.853.03-1.267.088l1.202 1.54h.078c1.792 0 3.437.626 4.73 1.672.299.242.322.68.08.978-.279.343-.792.364-1.142.095a5.999 5.999 0 0 0-2.486-1.129l2.937 3.764A.75.75 0 0 1 11 11.46L4.146 2.676a.75.75 0 0 1 .13-1.053ZM1.257 4.48a10.672 10.672 0 0 1 1.79-1.201l.939 1.203c-.605.3-1.17.665-1.69 1.086-.337.273-.838.248-1.115-.085a.709.709 0 0 1 .076-1.003Zm3.759 1.323a7.529 7.529 0 0 0-1.761 1.094c-.296.246-.313.683-.067.978.283.34.796.354 1.143.08a6.017 6.017 0 0 1 1.644-.923l-.96-1.23Zm2.036 2.609a4.386 4.386 0 0 0-1.808.928c-.27.23-.273.634-.045.908.297.356.852.335 1.232.067A2.886 2.886 0 0 1 8.1 9.787h.024L7.052 8.412ZM8 13.5a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z"
}))
};
const EI = ({
launcherVersion: e = "unknown",
patcherVersion: t = "unknown",
platformMaster: n = "prod",
isGameRunning: r = !1,
isAppInitialized: i = !1,
isWindowMinimized: a = !1,
isDiscoverStarted: o = !1,
isDownloadPopoverOpened: s = !1,
isStatusPopoverOpened: l = !1,
isConnectionPopoverOpened: c = !1,
nonOperationalStatus: u,
connection: d = {
mode: navigator.onLine ? yw.ConnectionMode.ONLINE : yw.ConnectionMode.NO_CONNECTION,
needToBeCheck: !1
},
animations: p = {
appLayoutWipe: {
isAnimating: !0,
animType: "out"
},
gamePageEntering: {
isAnimating: !1,
animState: ""
}
}
}) => ({
launcherVersion: e,
patcherVersion: t,
platformMaster: n,
isAppInitialized: i,
isWindowMinimized: a,
isDiscoverStarted: o,
isGameRunning: r,
isDownloadPopoverOpened: s,
isStatusPopoverOpened: l,
isConnectionPopoverOpened: c,
nonOperationalStatus: u,
connection: d,
animations: p
}),
II = (e, t) => ({
application: {
...EI({}),
actions: {
initializeApplication: async () => {
const {
launcherVersion: t,
patcherVersion: n,
environment: r
} = await window.launcherAPI.game.getGlobalConfig(), i = await window.launcherAPI.game.isGameProcessRunning(), a = await window.launcherAPI.store.getValueFromStore("application.connection.lastTimeOnline"), o = EI({
launcherVersion: t,
patcherVersion: n,
platformMaster: r,
isGameRunning: i,
isAppInitialized: !0,
connection: {
mode: a ? yw.ConnectionMode.NO_CONNECTION : yw.ConnectionMode.ONLINE,
lastTimeOnline: a,
needToBeCheck: !0
}
});
e((e => ({
application: {
...e.application,
...o
}
})))
},
toggleDownloadPopoverOpened: () => {
const {
application: e
} = t();
e.actions.setDownloadPopoverOpened(!e.isDownloadPopoverOpened)
},
setDownloadPopoverOpened: n => {
const {
installer: r
} = t();
n || r.actions.clearCompletedInstallations(), e((e => ({
application: {
...e.application,
isDownloadPopoverOpened: n
}
})))
},
setStatusPopoverOpened: t => {
e((e => ({
application: {
...e.application,
isStatusPopoverOpened: t
}
})))
},
setConnectionPopoverOpened: n => {
const {
application: {
connection: r
}
} = t();
n && r.mode === yw.ConnectionMode.ONLINE || e((e => ({
application: {
...e.application,
isConnectionPopoverOpened: n
}
})))
},
setCloseAllPopovers: () => {
const {
application: e
} = t();
e.actions.setDownloadPopoverOpened(!1), e.actions.setStatusPopoverOpened(!1), e.actions.setConnectionPopoverOpened(!1)
},
setNonOperationalStatus: t => {
e((e => ({
application: {
...e.application,
nonOperationalStatus: t
}
})))
},
setWindowMinimized: t => {
e((e => ({
application: {
...e.application,
isWindowMinimized: t
}
})))
},
resetApplication: () => e((e => ({
application: {
...e.application,
...EI({}),
launcherVersion: e.application.launcherVersion,
patcherVersion: e.application.patcherVersion,
platformMaster: e.application.platformMaster
}
}))),
isMinimumWindowsVersion: async () => {
const e = t(),
{
osMetMinimumRequirements: n
} = await window.launcherAPI.game.getGlobalConfig();
return n || (await e.dialog.actions.showOsRequirementsDialog(e.library.channelSelected), !1)
},
isRespectingCPUCapabilites: async () => {
const e = t(),
{
cpuMetRequirements: n
} = await window.launcherAPI.game.getGlobalConfig();
return n || (await e.dialog.actions.showCpuRequirementsDialog(), !1)
},
isOffline: () => {
const {
application: {
connection: e
}
} = t();
return e.mode !== yw.ConnectionMode.ONLINE
},
isOfflineSessionValid: () => {
const {
application: {
connection: {
lastTimeOnline: e
}
}
} = t();
return (null !== e && void 0 !== e ? e : -1) + yw.configuration.authenticationExpiry > Date.now()
},
getRemainingTimeOfOfflineSession: () => {
const {
application: {
connection: {
lastTimeOnline: e
}
},
user: {
device: n
}
} = t();
if (!(n && (void 0 !== n.expires || n.duration !== XS.SESSION)) || void 0 === e) return;
const r = e + yw.configuration.authenticationExpiry,
i = n.expires;
return Pw(new Date(i < r ? i : r).toDateString(), "relative", {})
},
checkConnection: () => {
const {
connectivity: e
} = window.launcherAPI;
e.checkConnection()
},
setAnimatingAppLayoutWipe: (t, n) => {
e((e => ({
application: {
...e.application,
animations: {
appLayoutWipe: {
animType: t,
isAnimating: n || !1
}
}
}
})))
},
setAnimatingGamePageEntering: (t, n) => {
e((e => ({
application: {
...e.application,
animations: {
gamePageEntering: {
isAnimating: t,
animState: n || ""
}
}
}
})))
},
setDiscoverStarted: t => {
e((e => ({
application: {
...e.application,
isDiscoverStarted: null !== t && void 0 !== t ? t : e.application.isDiscoverStarted
}
})))
},
setConnectionAvailable: () => {
const {
application: {
connection: n
},
toasts: r
} = t();
n.mode !== yw.ConnectionMode.ONLINE && n.mode !== yw.ConnectionMode.OFFLINE && (e((e => ({
application: {
...e.application,
connection: {
mode: yw.ConnectionMode.ONLINE,
lastTimeOnline: void 0,
needToBeCheck: !1
}
}
}))), window.launcherAPI.store.setValueToStore("application.connection.lastTimeOnline", null), r.actions.add({
type: "positive",
title: _e.t("connection_toast_connection_available", {
ns: "connection"
})
}))
},
setConnectionUnavailable: async () => {
var n;
const {
application: {
actions: r,
connection: i
},
user: a
} = t();
if (i.mode === yw.ConnectionMode.NO_CONNECTION && !i.needToBeCheck) return;
if (i.mode === yw.ConnectionMode.OFFLINE) return;
const o = null !== (n = i.lastTimeOnline) && void 0 !== n ? n : Date.now();
e((e => ({
application: {
...e.application,
connection: {
mode: yw.ConnectionMode.NO_CONNECTION,
lastTimeOnline: o,
needToBeCheck: !1
}
}
}))), window.launcherAPI.store.setValueToStore("application.connection.lastTimeOnline", o), a.actions.isLoggedIn() && (r.setCloseAllPopovers(), r.setLostConnectionToast(), r.setConnectionPopoverOpened(!0))
},
setLostConnectionToast: () => {
const {
application: {
actions: e
},
toasts: n
} = t(), r = e.getRemainingTimeOfOfflineSession();
n.actions.add({
duration: 6e3,
type: "informative",
icon: mI,
title: _e.t("connection_toast_warning_lost_connection_title", {
ns: "connection"
}),
children: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
as: "span",
children: _e.t("connection_toast_warning_lost_connection_content", {
ns: "connection"
})
}), r && (0, _w.jsxs)(Ys, {
as: "span",
children: [_e.t("connection_toast_warning_lost_connection_remaining", {
ns: "connection"
}), (0, _w.jsx)(Ys, {
as: "span",
variant: "body-m-bold",
children: " " + e.getRemainingTimeOfOfflineSession()
})]
})]
}),
actions: [{
close: !0,
label: _e.t("connection_toast_action_continue_offline", {
ns: "connection"
})
}]
})
},
setConnection: n => {
const {
application: {
connection: r
}
} = t();
r.mode !== n.mode && e((e => ({
application: {
...e.application,
connection: {
...n,
needToBeCheck: !1
}
}
})))
}
}
}
}),
OI = (e, t) => ({
authentication: {
captcha: null,
actions: {
initializeAuthentication: async () => {
e((e => ({
authentication: {
...e.authentication,
captcha: null
}
})))
},
fetchCaptcha: async () => {
const t = await yE.authentication.getCaptcha();
e((e => ({
authentication: {
...e.authentication,
captcha: t
}
})))
},
resetAuthentication: () => e((e => ({
authentication: {
...e.authentication,
captcha: null
}
})))
}
}
}),
CI = "autoUpdate",
AI = (e, t = {}) => xt.t(e, {
ns: CI,
...t
}),
PI = (e, t) => {
var n;
const {
closeDialog: r
} = e.autoUpdate.actions, i = null === (n = window.launcherAPI.autoUpdate) || void 0 === n ? void 0 : n.updateAndRestart, a = {
open: !0,
alert: !0,
close: AI("auto_update_dialog_close"),
title: AI("auto_update_dialog_title"),
onOpenChange: () => {
r()
}
};
switch (t.state) {
case yw.AutoUpdateDialogStates.AVAILABLE:
return {
...a, children: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Ys, {
variant: "emphasis-s",
as: "h4",
children: AI("auto_update_dialog_sub_title", {
version: t.updateInfo.version
})
}), (0, _w.jsx)(ft, {
i18nKey: "auto_update_dialog_update_available_content",
t: xt.t,
ns: CI,
components: [(0, _w.jsx)("br", {})]
})]
}), actions: [{
label: AI("auto_update_dialog_update_available_action_secondary_label")
}, {
label: AI("auto_update_dialog_update_available_action_primary_label"),
onClick: () => i()
}]
};
case yw.AutoUpdateDialogStates.ERROR:
return {
...a, type: "negative", children: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Ys, {
variant: "emphasis-s",
as: "h4",
children: AI("auto_update_dialog_sub_title", {
version: t.updateInfo.version
})
}), (0, _w.jsx)(ft, {
i18nKey: "auto_update_dialog_update_install_failed_content",
t: xt.t,
ns: CI,
components: [(0, _w.jsx)(zm, {
href: yw.configuration.supportUrl,
external: !0
})]
})]
}), actions: [{
label: AI("auto_update_dialog_update_install_failed_action_secondary_label")
}, {
label: AI("auto_update_dialog_update_install_failed_action_primary_label"),
onClick: () => i()
}]
};
case yw.AutoUpdateDialogStates.QUIT_GAME:
return {
...a, type: "negative", children: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Ys, {
variant: "emphasis-s",
as: "h4",
children: AI("auto_update_dialog_sub_title", {
version: t.updateInfo.version
})
}), AI("auto_update_dialog_update_quit_game_content")]
}), actions: [{
label: AI("auto_update_dialog_update_quit_game_action_secondary_label")
}, {
label: AI("auto_update_dialog_update_quit_game_action_primary_label"),
onClick: () => i(!0)
}]
};
default:
return {
...a, children: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Ys, {
variant: "emphasis-s",
as: "h4",
children: AI("auto_update_dialog_sub_title", {
version: t.updateInfo.version
})
}), (0, _w.jsx)(ft, {
i18nKey: "auto_update_dialog_no_update_content",
t: xt.t,
ns: CI,
components: [(0, _w.jsx)("br", {})]
})]
}), actions: [{
label: AI("auto_update_dialog_no_update_action_primary_label")
}]
}
}
},
TI = {
dialog: {}
},
RI = (e, t) => ({
autoUpdate: {
...TI,
actions: {
async closeDialog() {
var n;
const r = t();
null === (n = window.launcherAPI.autoUpdate) || void 0 === n || n.dismissUpdate(), e({
autoUpdate: {
...r.autoUpdate,
dialog: {}
}
})
},
displayDialog(n) {
const r = t();
e({
autoUpdate: {
...r.autoUpdate,
dialog: PI(r, n)
}
})
}
}
}
}),
DI = ({
children: e
}) => {
const t = pR((e => e.application)),
n = pR((e => e.settings)),
r = pR((e => e.window)),
i = pR((e => e.user)),
{
t: a
} = bt("discover"),
o = i.actions.isLoggedIn(),
s = t.isDiscoverStarted,
l = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
return (0, Ee.useEffect)((() => {
if (!n.appSettings.isDiscoverDone && o) {
const e = setTimeout((() => {
r.actions.openDiscover()
}), l);
return () => clearTimeout(e)
}
}), [o]), (0, _w.jsx)(_w.Fragment, {
children: (0, _w.jsx)(ov, {
open: s,
onOpenChange: e => {
e || (t.actions.setDiscoverStarted(!1), n.actions.saveApplicationSettings({
name: "isDiscoverDone",
value: !0
}))
},
doneLabel: a("step_done_label"),
steps: [{
selector: '[data-sol-discover="menu"]',
title: a("step_menu_title"),
description: a("step_menu_description")
}, {
selector: '[data-sol-discover="status"]',
title: a("step_status_title"),
description: a("step_status_description"),
placement: "bottom-end"
}, {
selector: '[data-sol-discover="download"]',
title: a("step_download_title"),
description: a("step_download_description"),
placement: "bottom-end"
}, {
selector: '[data-sol-discover="user-profile"]',
title: a("step_user-profile_title"),
description: a("step_user-profile_description"),
placement: "bottom-end"
}, {
title: a("step_last_title"),
description: a("step_last_description")
}],
children: e
})
})
},
LI = JSON.parse('{"v":"5.9.0","fr":29.9700012207031,"ip":0,"op":180.00000733155,"w":16,"h":16,"nm":"wifi-off","ddd":0,"assets":[{"id":"comp_0","nm":"wifi-off_export","fr":29.9700012207031,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Bar","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8.16,6.619,0],"ix":2,"l":2},"a":{"a":0,"k":[4.162,5.114,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0]],"o":[[0,0],[0,0]],"v":[[-3.412,-4.365],[3.412,4.365]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[4.162,5.114],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":140,"s":[0]},{"t":150.000006109625,"s":[100]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":18,"s":[0]},{"t":28.0000011404634,"s":[100]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":180.00000733155,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Waves 6","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8,8,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[5.938,0.188],[-5.5,2.875],[2.593,9.624],[4.941,5.621],[2.142,2.005],[3.63,1.404],[12.72,12.599],[16.149,12.425],[18.625,6.812],[21.938,0.188]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":16,"h":16,"ip":20.0000008146167,"op":142.000005783779,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Waves 9","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.4,0],[-1.681,-1.372]],"o":[[1.7,-1.436],[2.339,0],[0,0]],"v":[[-6.232,1.151],[0.064,-1.151],[6.232,1.044]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[9.982,4.901],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.47],"y":[1]},"o":{"x":[0.53],"y":[0]},"t":149,"s":[0]},{"t":154.000006272549,"s":[100]}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":142.000005783779,"op":229.000009327361,"st":142.000005783779,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Waves 3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.4,0],[-1.681,-1.372]],"o":[[1.7,-1.436],[2.339,0],[0,0]],"v":[[-6.232,1.151],[0.064,-1.151],[6.232,1.044]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[9.982,4.901],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":12,"s":[0]},{"t":17.0000006924242,"s":[100]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":20.0000008146167,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"Waves 5","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8,8,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[1.188,5.5],[2.438,10.875],[6.938,8.281],[4.75,4.906],[6.188,4.25],[13.938,16],[14,11.375],[15.812,6.125],[16,0]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":16,"h":16,"ip":22.0000008960784,"op":144.00000586524,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Waves 8","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.599,0],[-1.144,-0.948]],"o":[[1.143,-0.945],[1.602,0],[0,0]],"v":[[-4.212,0.755],[-0.003,-0.758],[4.212,0.758]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.049,7.659],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.47],"y":[1]},"o":{"x":[0.53],"y":[0]},"t":152,"s":[0]},{"t":157.000006394741,"s":[100]}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":3,"nm":"Trim Paths 2","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":144.00000586524,"op":229.000009327361,"st":144.00000586524,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Waves 2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.599,0],[-1.144,-0.948]],"o":[[1.143,-0.945],[1.602,0],[0,0]],"v":[[-4.212,0.755],[-0.003,-0.758],[4.212,0.758]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.049,7.659],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":8,"s":[0]},{"t":13.0000005295009,"s":[100]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":22.0000008960784,"st":0,"bm":0},{"ddd":0,"ind":8,"ty":0,"nm":"Waves 4","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8,8,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[2.562,9.125],[4.938,12.5],[9.998,11.721],[6.481,7.588],[7.843,7.154],[14,14.75],[16,0]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"w":16,"h":16,"ip":24.00000097754,"op":146.000005946702,"st":0,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Waves 7","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.804,0],[-0.577,-0.439]],"o":[[0.585,-0.463],[0.78,0],[0,0]],"v":[[-2.102,0.37],[0.026,-0.37],[2.102,0.33]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.021,10.452],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.47],"y":[1]},"o":{"x":[0.53],"y":[0]},"t":156,"s":[0]},{"t":161.000006557664,"s":[100]}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":1,"ix":3,"nm":"Trim Paths 2","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":146.000005946702,"op":229.000009327361,"st":146.000005946702,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"Waves","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.804,0],[-0.577,-0.439]],"o":[[0.585,-0.463],[0.78,0],[0,0]],"v":[[-2.102,0.37],[0.026,-0.37],[2.102,0.33]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.021,10.452],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":4,"s":[0]},{"t":9.00000036657752,"s":[100]}],"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":24.00000097754,"st":0,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"Circle","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,12.513,0],"ix":2,"l":2},"a":{"a":0,"k":[1.237,1.237,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0.667,0.667,0.667],"y":[1,1,1]},"o":{"x":[0.333,0.333,0.333],"y":[0,0,0]},"t":0,"s":[0,0,100]},{"i":{"x":[0.49,0.49,0.49],"y":[1,1,1]},"o":{"x":[0.167,0.167,0.167],"y":[0,0,0]},"t":5,"s":[100,100,100]},{"i":{"x":[0.49,0.49,0.49],"y":[1,1,1]},"o":{"x":[0.51,0.51,0.51],"y":[0,0,0]},"t":160,"s":[100,100,100]},{"t":166.000006761319,"s":[0,0,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-0.545],[0.545,0],[0,0.545],[-0.545,0]],"o":[[0,0.545],[-0.545,0],[0,-0.545],[0.545,0]],"v":[[0.987,0],[0,0.987],[-0.987,0],[0,-0.987]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1.237,1.237],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180.00000733155,"st":0,"bm":0}]},{"id":"comp_1","nm":"Waves 6","fr":29.9700012207031,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Waves 6","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-2.4,0],[-1.681,-1.372]],"o":[[1.7,-1.436],[2.339,0],[0,0]],"v":[[-6.232,1.151],[0.064,-1.151],[6.232,1.044]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[9.982,4.901],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":-1.00000004073083,"op":181.000007372281,"st":0,"bm":0}]},{"id":"comp_2","nm":"Waves 5","fr":29.9700012207031,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Waves 5","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.599,0],[-1.144,-0.948]],"o":[[1.143,-0.945],[1.602,0],[0,0]],"v":[[-4.212,0.755],[-0.003,-0.758],[4.212,0.758]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.049,7.659],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":180.00000733155,"st":0,"bm":0}]},{"id":"comp_3","nm":"Waves 4","fr":29.9700012207031,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Waves 4","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.936,6.288,0],"ix":2,"l":2},"a":{"a":0,"k":[9.982,7.286,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-0.804,0],[-0.577,-0.439]],"o":[[0.585,-0.463],[0.78,0],[0,0]],"v":[[-2.102,0.37],[0.026,-0.37],[2.102,0.33]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[10.021,10.452],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 3","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":0,"ix":3},"m":2,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":-3.00000012219251,"op":181.000007372281,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"wifi-off_content","refId":"comp_0","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":60,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":62,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":64,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":66,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":68,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":70,"s":[10]},{"t":72.0000029326201,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8,8,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":16,"h":16,"ip":0,"op":180.00000733155,"st":0,"bm":0}],"markers":[]}'),
NI = () => {
const {
t: e
} = bt("connection"), t = pR((e => e.application)), {
reduceMotion: {
unessentialAnimationsDisabled: n
}
} = Ns();
return (0, _w.jsx)(ag, {
title: e("connection_title"),
offset: "large",
placement: "bottom-end",
trigger: (0, _w.jsx)(dl, {
"data-test-id": "connection",
icon: (0, _w.jsx)(Ks, {
source: n ? SI : LI
})
}),
open: t.isConnectionPopoverOpened,
onOpenChange: e => {
t.actions.setConnectionPopoverOpened(e)
},
footer: (0, _w.jsx)(_w.Fragment, {
children: t.connection.mode === yw.ConnectionMode.NO_CONNECTION && (0, _w.jsx)(el, {
size: "small",
variant: "plain",
loading: !0,
disabled: !0,
children: e("connection_offline_trying_to_reconnect")
})
}),
children: (0, _w.jsx)(cl, {
vertical: !0,
gap: "100",
children: e("connection_offline_information")
})
})
},
MI = JSON.parse('{"v":"5.9.0","fr":30,"ip":0,"op":90,"w":16,"h":16,"nm":"download - option 2","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":1,"nm":"Dark Royal Blue Solid 1","td":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8,8,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[0,0.031],[0,14.5],[16,14.5],[16,0.031]],"c":true},"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"sw":16,"sh":16,"sc":"#0a1d29","ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Arrow Outlines","tt":1,"sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":23,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30,"s":[0]},{"t":31,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.41,"y":1},"o":{"x":0.01,"y":0},"t":0,"s":[8,6.484,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.75,"y":1},"o":{"x":0.01,"y":0},"t":29,"s":[8,21.484,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.75,"y":1},"o":{"x":0.46,"y":0},"t":30,"s":[8,-5.516,0],"to":[0,0,0],"ti":[0,0,0]},{"t":45,"s":[8,6.484,0]}],"ix":2,"l":2},"a":{"a":0,"k":[3.983,5.734,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.398,0],[-0.025,-0.392],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-0.22,0],[0,-0.414],[0.164,-0.137],[0,0],[0.206,0],[0.135,0.134],[0,0],[0,0.231],[-0.414,0],[-0.138,-0.151],[0,0],[0,0],[0,0]],"o":[[0.398,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0.137,-0.151],[0.414,0],[0,0.231],[0,0],[-0.135,0.135],[-0.206,0],[0,0],[-0.164,-0.137],[0,-0.414],[0.22,0],[0,0],[0,0],[0,0],[0.025,-0.392]],"v":[[0,-5.484],[0.749,-4.781],[0.75,-4.781],[0.75,-4.736],[0.75,-4.734],[0.75,-4.732],[0.75,2.93],[2.427,1.253],[2.983,1.007],[3.733,1.757],[3.464,2.331],[0.528,5.268],[0,5.484],[-0.527,5.268],[-3.464,2.331],[-3.733,1.757],[-2.983,1.007],[-2.427,1.253],[-0.75,2.93],[-0.75,-4.781],[-0.749,-4.781]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[3.983,5.734],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":90,"st":-28,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Base Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,14.25,0],"ix":2,"l":2},"a":{"a":0,"k":[7.25,1,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0.414],[0.414,0],[0,0],[0,-0.414],[-0.414,0]],"o":[[0.414,0],[0,-0.414],[0,0],[-0.414,0],[0,0.414],[0,0]],"v":[[6.25,0.75],[7,0],[6.25,-0.75],[-6.25,-0.75],[-7,0],[-6.25,0.75]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[7.25,1],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":90,"st":0,"bm":0}],"markers":[]}');
function jI() {
return jI = Object.assign ? Object.assign.bind() : 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
}, jI.apply(this, arguments)
}
var FI;
! function(e) {
e.Pop = "POP", e.Push = "PUSH", e.Replace = "REPLACE"
}(FI || (FI = {}));
const zI = "popstate";
function VI(e, t) {
if (!1 === e || null === e || "undefined" === typeof e) throw new Error(t)
}
function UI(e, t) {
if (!e) {
"undefined" !== typeof console && console.warn(t);
try {
throw new Error(t)
} catch (n) {}
}
}
function BI(e, t) {
return {
usr: e.state,
key: e.key,
idx: t
}
}
function GI(e, t, n, r) {
return void 0 === n && (n = null), jI({
pathname: "string" === typeof e ? e : e.pathname,
search: "",
hash: ""
}, "string" === typeof t ? $I(t) : t, {
state: n,
key: t && t.key || r || Math.random().toString(36).substr(2, 8)
})
}
function WI(e) {
let {
pathname: t = "/",
search: n = "",
hash: r = ""
} = e;
return n && "?" !== n && (t += "?" === n.charAt(0) ? n : "?" + n), r && "#" !== r && (t += "#" === r.charAt(0) ? r : "#" + r), t
}
function $I(e) {
let t = {};
if (e) {
let n = e.indexOf("#");
n >= 0 && (t.hash = e.substr(n), e = e.substr(0, n));
let r = e.indexOf("?");
r >= 0 && (t.search = e.substr(r), e = e.substr(0, r)), e && (t.pathname = e)
}
return t
}
function qI(e, t, n, r) {
void 0 === r && (r = {});
let {
window: i = document.defaultView,
v5Compat: a = !1
} = r, o = i.history, s = FI.Pop, l = null, c = u();
function u() {
return (o.state || {
idx: null
}).idx
}
function d() {
s = FI.Pop;
let e = u(),
t = null == e ? null : e - c;
c = e, l && l({
action: s,
location: h.location,
delta: t
})
}
function p(e) {
let t = "null" !== i.location.origin ? i.location.origin : i.location.href,
n = "string" === typeof e ? e : WI(e);
return VI(t, "No window.location.(origin|href) available to create URL for href: " + n), new URL(n, t)
}
null == c && (c = 0, o.replaceState(jI({}, o.state, {
idx: c
}), ""));
let h = {
get action() {
return s
},
get location() {
return e(i, o)
},
listen(e) {
if (l) throw new Error("A history only accepts one active listener");
return i.addEventListener(zI, d), l = e, () => {
i.removeEventListener(zI, d), l = null
}
},
createHref: e => t(i, e),
createURL: p,
encodeLocation(e) {
let t = p(e);
return {
pathname: t.pathname,
search: t.search,
hash: t.hash
}
},
push: function(e, t) {
s = FI.Push;
let r = GI(h.location, e, t);
n && n(r, e), c = u() + 1;
let d = BI(r, c),
p = h.createHref(r);
try {
o.pushState(d, "", p)
} catch (f) {
if (f instanceof DOMException && "DataCloneError" === f.name) throw f;
i.location.assign(p)
}
a && l && l({
action: s,
location: h.location,
delta: 1
})
},
replace: function(e, t) {
s = FI.Replace;
let r = GI(h.location, e, t);
n && n(r, e), c = u();
let i = BI(r, c),
d = h.createHref(r);
o.replaceState(i, "", d), a && l && l({
action: s,
location: h.location,
delta: 0
})
},
go: e => o.go(e)
};
return h
}
var HI;
! function(e) {
e.data = "data", e.deferred = "deferred", e.redirect = "redirect", e.error = "error"
}(HI || (HI = {}));
const KI = new Set(["lazy", "caseSensitive", "path", "id", "index", "children"]);
function YI(e, t, n, r) {
return void 0 === n && (n = []), void 0 === r && (r = {}), e.map(((e, i) => {
let a = [...n, i],
o = "string" === typeof e.id ? e.id : a.join("-");
if (VI(!0 !== e.index || !e.children, "Cannot specify children on an index route"), VI(!r[o], 'Found a route id collision on id "' + o + "\". Route id's must be globally unique within Data Router usages"), function(e) {
return !0 === e.index
}(e)) {
let n = jI({}, e, t(e), {
id: o
});
return r[o] = n, n
} {
let n = jI({}, e, t(e), {
id: o,
children: void 0
});
return r[o] = n, e.children && (n.children = YI(e.children, t, a, r)), n
}
}))
}
function QI(e, t, n) {
void 0 === n && (n = "/");
let r = oO(("string" === typeof t ? $I(t) : t).pathname || "/", n);
if (null == r) return null;
let i = ZI(e);
! function(e) {
e.sort(((e, t) => e.score !== t.score ? t.score - e.score : function(e, t) {
let n = e.length === t.length && e.slice(0, -1).every(((e, n) => e === t[n]));
return n ? e[e.length - 1] - t[t.length - 1] : 0
}(e.routesMeta.map((e => e.childrenIndex)), t.routesMeta.map((e => e.childrenIndex)))))
}(i);
let a = null;
for (let o = 0; null == a && o < i.length; ++o) a = nO(i[o], aO(r));
return a
}
function ZI(e, t, n, r) {
void 0 === t && (t = []), void 0 === n && (n = []), void 0 === r && (r = "");
let i = (e, i, a) => {
let o = {
relativePath: void 0 === a ? e.path || "" : a,
caseSensitive: !0 === e.caseSensitive,
childrenIndex: i,
route: e
};
o.relativePath.startsWith("/") && (VI(o.relativePath.startsWith(r), 'Absolute route path "' + o.relativePath + '" nested under path "' + r + '" is not valid. An absolute child route path must start with the combined path of all its parent routes.'), o.relativePath = o.relativePath.slice(r.length));
let s = uO([r, o.relativePath]),
l = n.concat(o);
e.children && e.children.length > 0 && (VI(!0 !== e.index, 'Index routes must not have child routes. Please remove all child routes from route path "' + s + '".'), ZI(e.children, t, l, s)), (null != e.path || e.index) && t.push({
path: s,
score: tO(s, e.index),
routesMeta: l
})
};
return e.forEach(((e, t) => {
var n;
if ("" !== e.path && null != (n = e.path) && n.includes("?"))
for (let r of XI(e.path)) i(e, t, r);
else i(e, t)
})), t
}
function XI(e) {
let t = e.split("/");
if (0 === t.length) return [];
let [n, ...r] = t, i = n.endsWith("?"), a = n.replace(/\?$/, "");
if (0 === r.length) return i ? [a, ""] : [a];
let o = XI(r.join("/")),
s = [];
return s.push(...o.map((e => "" === e ? a : [a, e].join("/")))), i && s.push(...o), s.map((t => e.startsWith("/") && "" === t ? "/" : t))
}
const JI = /^:\w+$/,
eO = e => "*" === e;
function tO(e, t) {
let n = e.split("/"),
r = n.length;
return n.some(eO) && (r += -2), t && (r += 2), n.filter((e => !eO(e))).reduce(((e, t) => e + (JI.test(t) ? 3 : "" === t ? 1 : 10)), r)
}
function nO(e, t) {
let {
routesMeta: n
} = e, r = {}, i = "/", a = [];
for (let o = 0; o < n.length; ++o) {
let e = n[o],
s = o === n.length - 1,
l = "/" === i ? t : t.slice(i.length) || "/",
c = iO({
path: e.relativePath,
caseSensitive: e.caseSensitive,
end: s
}, l);
if (!c) return null;
Object.assign(r, c.params);
let u = e.route;
a.push({
params: r,
pathname: uO([i, c.pathname]),
pathnameBase: dO(uO([i, c.pathnameBase])),
route: u
}), "/" !== c.pathnameBase && (i = uO([i, c.pathnameBase]))
}
return a
}
function rO(e, t) {
void 0 === t && (t = {});
let n = e;
n.endsWith("*") && "*" !== n && !n.endsWith("/*") && (UI(!1, 'Route path "' + n + '" will be treated as if it were "' + n.replace(/\*$/, "/*") + '" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "' + n.replace(/\*$/, "/*") + '".'), n = n.replace(/\*$/, "/*"));
const r = n.startsWith("/") ? "/" : "",
i = e => null == e ? "" : "string" === typeof e ? e : String(e);
return r + n.split(/\/+/).map(((e, n, r) => {
if (n === r.length - 1 && "*" === e) {
return i(t["*"])
}
const a = e.match(/^:(\w+)(\??)$/);
if (a) {
const [, e, n] = a;
let r = t[e];
return VI("?" === n || null != r, 'Missing ":' + e + '" param'), i(r)
}
return e.replace(/\?$/g, "")
})).filter((e => !!e)).join("/")
}
function iO(e, t) {
"string" === typeof e && (e = {
path: e,
caseSensitive: !1,
end: !0
});
let [n, r] = function(e, t, n) {
void 0 === t && (t = !1);
void 0 === n && (n = !0);
UI("*" === e || !e.endsWith("*") || e.endsWith("/*"), 'Route path "' + e + '" will be treated as if it were "' + e.replace(/\*$/, "/*") + '" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "' + e.replace(/\*$/, "/*") + '".');
let r = [],
i = "^" + e.replace(/\/*\*?$/, "").replace(/^\/*/, "/").replace(/[\\.*+^${}|()[\]]/g, "\\$&").replace(/\/:(\w+)(\?)?/g, ((e, t, n) => (r.push({
paramName: t,
isOptional: null != n
}), n ? "/?([^\\/]+)?" : "/([^\\/]+)")));
e.endsWith("*") ? (r.push({
paramName: "*"
}), i += "*" === e || "/*" === e ? "(.*)$" : "(?:\\/(.+)|\\/*)$") : n ? i += "\\/*$" : "" !== e && "/" !== e && (i += "(?:(?=\\/|$))");
let a = new RegExp(i, t ? void 0 : "i");
return [a, r]
}(e.path, e.caseSensitive, e.end), i = t.match(n);
if (!i) return null;
let a = i[0],
o = a.replace(/(.)\/+$/, "$1"),
s = i.slice(1);
return {
params: r.reduce(((e, t, n) => {
let {
paramName: r,
isOptional: i
} = t;
if ("*" === r) {
let e = s[n] || "";
o = a.slice(0, a.length - e.length).replace(/(.)\/+$/, "$1")
}
const l = s[n];
return e[r] = i && !l ? void 0 : function(e, t) {
try {
return decodeURIComponent(e)
} catch (n) {
return UI(!1, 'The value for the URL param "' + t + '" will not be decoded because the string "' + e + '" is a malformed URL segment. This is probably due to a bad percent encoding (' + n + ")."), e
}
}(l || "", r), e
}), {}),
pathname: a,
pathnameBase: o,
pattern: e
}
}
function aO(e) {
try {
return decodeURI(e)
} catch (t) {
return UI(!1, 'The URL path "' + e + '" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding (' + t + ")."), e
}
}
function oO(e, t) {
if ("/" === t) return e;
if (!e.toLowerCase().startsWith(t.toLowerCase())) return null;
let n = t.endsWith("/") ? t.length - 1 : t.length,
r = e.charAt(n);
return r && "/" !== r ? null : e.slice(n) || "/"
}
function sO(e, t, n, r) {
return "Cannot include a '" + e + "' character in a manually specified `to." + t + "` field [" + JSON.stringify(r) + "]. Please separate it out to the `to." + n + '` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'
}
function lO(e) {
return e.filter(((e, t) => 0 === t || e.route.path && e.route.path.length > 0))
}
function cO(e, t, n, r) {
let i;
void 0 === r && (r = !1), "string" === typeof e ? i = $I(e) : (i = jI({}, e), VI(!i.pathname || !i.pathname.includes("?"), sO("?", "pathname", "search", i)), VI(!i.pathname || !i.pathname.includes("#"), sO("#", "pathname", "hash", i)), VI(!i.search || !i.search.includes("#"), sO("#", "search", "hash", i)));
let a, o = "" === e || "" === i.pathname,
s = o ? "/" : i.pathname;
if (null == s) a = n;
else if (r) {
let e = t[t.length - 1].replace(/^\//, "").split("/");
if (s.startsWith("..")) {
let t = s.split("/");
for (;
".." === t[0];) t.shift(), e.pop();
i.pathname = t.join("/")
}
a = "/" + e.join("/")
} else {
let e = t.length - 1;
if (s.startsWith("..")) {
let t = s.split("/");
for (;
".." === t[0];) t.shift(), e -= 1;
i.pathname = t.join("/")
}
a = e >= 0 ? t[e] : "/"
}
let l = function(e, t) {
void 0 === t && (t = "/");
let {
pathname: n,
search: r = "",
hash: i = ""
} = "string" === typeof e ? $I(e) : e, a = n ? n.startsWith("/") ? n : function(e, t) {
let n = t.replace(/\/+$/, "").split("/");
return e.split("/").forEach((e => {
".." === e ? n.length > 1 && n.pop() : "." !== e && n.push(e)
})), n.length > 1 ? n.join("/") : "/"
}(n, t) : t;
return {
pathname: a,
search: pO(r),
hash: hO(i)
}
}(i, a),
c = s && "/" !== s && s.endsWith("/"),
u = (o || "." === s) && n.endsWith("/");
return l.pathname.endsWith("/") || !c && !u || (l.pathname += "/"), l
}
const uO = e => e.join("/").replace(/\/\/+/g, "/"),
dO = e => e.replace(/\/+$/, "").replace(/^\/*/, "/"),
pO = e => e && "?" !== e ? e.startsWith("?") ? e : "?" + e : "",
hO = e => e && "#" !== e ? e.startsWith("#") ? e : "#" + e : "";
class fO extends Error {}
const mO = function(e, t) {
void 0 === t && (t = 302);
let n = t;
"number" === typeof n ? n = {
status: n
} : "undefined" === typeof n.status && (n.status = 302);
let r = new Headers(n.headers);
return r.set("Location", e), new Response(null, jI({}, n, {
headers: r
}))
};
class gO {
constructor(e, t, n, r) {
void 0 === r && (r = !1), this.status = e, this.statusText = t || "", this.internal = r, n instanceof Error ? (this.data = n.toString(), this.error = n) : this.data = n
}
}
function vO(e) {
return null != e && "number" === typeof e.status && "string" === typeof e.statusText && "boolean" === typeof e.internal && "data" in e
}
const yO = ["post", "put", "patch", "delete"],
_O = new Set(yO),
bO = ["get", ...yO],
xO = new Set(bO),
kO = new Set([301, 302, 303, 307, 308]),
wO = new Set([307, 308]),
SO = {
state: "idle",
location: void 0,
formMethod: void 0,
formAction: void 0,
formEncType: void 0,
formData: void 0,
json: void 0,
text: void 0
},
EO = {
state: "idle",
data: void 0,
formMethod: void 0,
formAction: void 0,
formEncType: void 0,
formData: void 0,
json: void 0,
text: void 0
},
IO = {
state: "unblocked",
proceed: void 0,
reset: void 0,
location: void 0
},
OO = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,
CO = e => ({
hasErrorBoundary: Boolean(e.hasErrorBoundary)
}),
AO = "remix-router-transitions";
function PO(e) {
const t = e.window ? e.window : "undefined" !== typeof window ? window : void 0,
n = "undefined" !== typeof t && "undefined" !== typeof t.document && "undefined" !== typeof t.document.createElement,
r = !n;
let i;
if (VI(e.routes.length > 0, "You must provide a non-empty routes array to createRouter"), e.mapRouteProperties) i = e.mapRouteProperties;
else if (e.detectErrorBoundary) {
let t = e.detectErrorBoundary;
i = e => ({
hasErrorBoundary: t(e)
})
} else i = CO;
let a, o = {},
s = YI(e.routes, i, void 0, o),
l = e.basename || "/",
c = jI({
v7_fetcherPersist: !1,
v7_normalizeFormMethod: !1,
v7_prependBasename: !1
}, e.future),
u = null,
d = new Set,
p = null,
h = null,
f = null,
m = null != e.hydrationData,
g = QI(s, e.history.location, l),
v = null;
if (null == g) {
let t = HO(404, {
pathname: e.history.location.pathname
}),
{
matches: n,
route: r
} = qO(s);
g = n, v = {
[r.id]: t
}
}
let y, _, b = !g.some((e => e.route.lazy)) && (!g.some((e => e.route.loader)) || null != e.hydrationData),
x = {
historyAction: e.history.action,
location: e.history.location,
matches: g,
initialized: b,
navigation: SO,
restoreScrollPosition: null == e.hydrationData && null,
preventScrollReset: !1,
revalidation: "idle",
loaderData: e.hydrationData && e.hydrationData.loaderData || {},
actionData: e.hydrationData && e.hydrationData.actionData || null,
errors: e.hydrationData && e.hydrationData.errors || v,
fetchers: new Map,
blockers: new Map
},
k = FI.Pop,
w = !1,
S = !1,
E = new Map,
I = null,
O = !1,
C = !1,
A = [],
P = [],
T = new Map,
R = 0,
D = -1,
L = new Map,
N = new Set,
M = new Map,
j = new Map,
F = new Set,
z = new Map,
V = new Map,
U = !1;
function B(e, t) {
void 0 === t && (t = {}), x = jI({}, x, e);
let n = [],
r = [];
c.v7_fetcherPersist && x.fetchers.forEach(((e, t) => {
"idle" === e.state && (F.has(t) ? r.push(t) : n.push(t))
})), [...d].forEach((e => e(x, {
deletedFetchers: r,
unstable_viewTransitionOpts: t.viewTransitionOpts,
unstable_flushSync: !0 === t.flushSync
}))), c.v7_fetcherPersist && (n.forEach((e => x.fetchers.delete(e))), r.forEach((e => Z(e))))
}
function G(t, n, r) {
var i, o;
let l, {
flushSync: c
} = void 0 === r ? {} : r,
u = null != x.actionData && null != x.navigation.formMethod && tC(x.navigation.formMethod) && "loading" === x.navigation.state && !0 !== (null == (i = t.state) ? void 0 : i._isRedirect);
l = n.actionData ? Object.keys(n.actionData).length > 0 ? n.actionData : null : u ? x.actionData : null;
let d = n.loaderData ? WO(x.loaderData, n.loaderData, n.matches || [], n.errors) : x.loaderData,
p = x.blockers;
p.size > 0 && (p = new Map(p), p.forEach(((e, t) => p.set(t, IO))));
let h, f = !0 === w || null != x.navigation.formMethod && tC(x.navigation.formMethod) && !0 !== (null == (o = t.state) ? void 0 : o._isRedirect);
if (a && (s = a, a = void 0), O || k === FI.Pop || (k === FI.Push ? e.history.push(t, t.state) : k === FI.Replace && e.history.replace(t, t.state)), k === FI.Pop) {
let e = E.get(x.location.pathname);
e && e.has(t.pathname) ? h = {
currentLocation: x.location,
nextLocation: t
} : E.has(t.pathname) && (h = {
currentLocation: t,
nextLocation: x.location
})
} else if (S) {
let e = E.get(x.location.pathname);
e ? e.add(t.pathname) : (e = new Set([t.pathname]), E.set(x.location.pathname, e)), h = {
currentLocation: x.location,
nextLocation: t
}
}
B(jI({}, n, {
actionData: l,
loaderData: d,
historyAction: k,
location: t,
initialized: !0,
navigation: SO,
revalidation: "idle",
restoreScrollPosition: se(t, n.matches || x.matches),
preventScrollReset: f,
blockers: p
}), {
viewTransitionOpts: h,
flushSync: !0 === c
}), k = FI.Pop, w = !1, S = !1, O = !1, C = !1, A = [], P = []
}
async function W(t, n, r) {
_ && _.abort(), _ = null, k = t, O = !0 === (r && r.startUninterruptedRevalidation),
function(e, t) {
if (p && f) {
let n = oe(e, t);
p[n] = f()
}
}(x.location, x.matches), w = !0 === (r && r.preventScrollReset), S = !0 === (r && r.enableViewTransition);
let c = a || s,
u = r && r.overrideNavigation,
d = QI(c, n, l),
h = !0 === (r && r.flushSync);
if (!d) {
let e = HO(404, {
pathname: n.pathname
}),
{
matches: t,
route: r
} = qO(c);
return ae(), void G(n, {
matches: t,
loaderData: {},
errors: {
[r.id]: e
}
}, {
flushSync: h
})
}
if (x.initialized && !C && function(e, t) {
if (e.pathname !== t.pathname || e.search !== t.search) return !1;
if ("" === e.hash) return "" !== t.hash;
if (e.hash === t.hash) return !0;
if ("" !== t.hash) return !0;
return !1
}(x.location, n) && !(r && r.submission && tC(r.submission.formMethod))) return void G(n, {
matches: d
}, {
flushSync: h
});
_ = new AbortController;
let m, g, v = zO(e.history, n, _.signal, r && r.submission);
if (r && r.pendingError) g = {
[$O(d).route.id]: r.pendingError
};
else if (r && r.submission && tC(r.submission.formMethod)) {
let e = await async function(e, t, n, r, a) {
void 0 === a && (a = {});
H();
let s, c = function(e, t) {
let n = {
state: "submitting",
location: e,
formMethod: t.formMethod,
formAction: t.formAction,
formEncType: t.formEncType,
formData: t.formData,
json: t.json,
text: t.text
};
return n
}(t, n);
B({
navigation: c
}, {
flushSync: !0 === a.flushSync
});
let u = aC(r, t);
if (u.route.action || u.route.lazy) {
if (s = await FO("action", e, u, r, o, i, l), e.signal.aborted) return {
shortCircuited: !0
}
} else s = {
type: HI.error,
error: HO(405, {
method: e.method,
pathname: t.pathname,
routeId: u.route.id
})
};
if (XO(s)) {
let e;
return e = a && null != a.replace ? a.replace : s.location === x.location.pathname + x.location.search, await $(x, s, {
submission: n,
replace: e
}), {
shortCircuited: !0
}
}
if (ZO(s)) {
let e = $O(r, u.route.id);
return !0 !== (a && a.replace) && (k = FI.Push), {
pendingActionData: {},
pendingActionError: {
[e.route.id]: s.error
}
}
}
if (QO(s)) throw HO(400, {
type: "defer-action"
});
return {
pendingActionData: {
[u.route.id]: s.data
}
}
}(v, n, r.submission, d, {
replace: r.replace,
flushSync: h
});
if (e.shortCircuited) return;
m = e.pendingActionData, g = e.pendingActionError, u = sC(n, r.submission), h = !1, v = new Request(v.url, {
signal: v.signal
})
}
let {
shortCircuited: y,
loaderData: b,
errors: E
} = await async function(t, n, r, i, o, c, u, d, p, h) {
let f = i || sC(n, o),
m = o || c || oC(f),
g = a || s,
[v, y] = LO(e.history, x, r, m, n, C, A, P, F, M, N, g, l, p, h);
if (ae((e => !(r && r.some((t => t.route.id === e))) || v && v.some((t => t.route.id === e)))), D = ++R, 0 === v.length && 0 === y.length) {
let e = ee();
return G(n, jI({
matches: r,
loaderData: {},
errors: h || null
}, p ? {
actionData: p
} : {}, e ? {
fetchers: new Map(x.fetchers)
} : {}), {
flushSync: d
}), {
shortCircuited: !0
}
}
if (!O) {
y.forEach((e => {
let t = x.fetchers.get(e.key),
n = lC(void 0, t ? t.data : void 0);
x.fetchers.set(e.key, n)
}));
let e = p || x.actionData;
B(jI({
navigation: f
}, e ? 0 === Object.keys(e).length ? {
actionData: null
} : {
actionData: e
} : {}, y.length > 0 ? {
fetchers: new Map(x.fetchers)
} : {}), {
flushSync: d
})
}
y.forEach((e => {
T.has(e.key) && X(e.key), e.controller && T.set(e.key, e.controller)
}));
let b = () => y.forEach((e => X(e.key)));
_ && _.signal.addEventListener("abort", b);
let {
results: k,
loaderResults: w,
fetcherResults: S
} = await q(x.matches, r, v, y, t);
if (t.signal.aborted) return {
shortCircuited: !0
};
_ && _.signal.removeEventListener("abort", b);
y.forEach((e => T.delete(e.key)));
let E = KO(k);
if (E) {
if (E.idx >= v.length) {
let e = y[E.idx - v.length].key;
N.add(e)
}
return await $(x, E.result, {
replace: u
}), {
shortCircuited: !0
}
}
let {
loaderData: I,
errors: L
} = GO(x, r, v, w, h, y, S, z);
z.forEach(((e, t) => {
e.subscribe((n => {
(n || e.done) && z.delete(t)
}))
}));
let j = ee(),
V = te(D),
U = j || V || y.length > 0;
return jI({
loaderData: I,
errors: L
}, U ? {
fetchers: new Map(x.fetchers)
} : {})
}(v, n, d, u, r && r.submission, r && r.fetcherSubmission, r && r.replace, h, m, g);
y || (_ = null, G(n, jI({
matches: d
}, m ? {
actionData: m
} : {}, {
loaderData: b,
errors: E
})))
}
async function $(r, i, a) {
let {
submission: o,
fetcherSubmission: s,
replace: c
} = void 0 === a ? {} : a;
i.revalidate && (C = !0);
let u = GI(r.location, i.location, {
_isRedirect: !0
});
if (VI(u, "Expected a location on the redirect navigation"), n) {
let n = !1;
if (i.reloadDocument) n = !0;
else if (OO.test(i.location)) {
const r = e.history.createURL(i.location);
n = r.origin !== t.location.origin || null == oO(r.pathname, l)
}
if (n) return void(c ? t.location.replace(i.location) : t.location.assign(i.location))
}
_ = null;
let d = !0 === c ? FI.Replace : FI.Push,
{
formMethod: p,
formAction: h,
formEncType: f
} = r.navigation;
!o && !s && p && h && f && (o = oC(r.navigation));
let m = o || s;
if (wO.has(i.status) && m && tC(m.formMethod)) await W(d, u, {
submission: jI({}, m, {
formAction: i.location
}),
preventScrollReset: w
});
else {
let e = sC(u, o);
await W(d, u, {
overrideNavigation: e,
fetcherSubmission: s,
preventScrollReset: w
})
}
}
async function q(t, n, r, a, s) {
let c = await Promise.all([...r.map((e => FO("loader", s, e, n, o, i, l))), ...a.map((t => {
if (t.matches && t.match && t.controller) return FO("loader", zO(e.history, t.path, t.controller.signal), t.match, t.matches, o, i, l);
return {
type: HI.error,
error: HO(404, {
pathname: t.path
})
}
}))]),
u = c.slice(0, r.length),
d = c.slice(r.length);
return await Promise.all([nC(t, r, u, u.map((() => s.signal)), !1, x.loaderData), nC(t, a.map((e => e.match)), d, a.map((e => e.controller ? e.controller.signal : null)), !0)]), {
results: c,
loaderResults: u,
fetcherResults: d
}
}
function H() {
C = !0, A.push(...ae()), M.forEach(((e, t) => {
T.has(t) && (P.push(t), X(t))
}))
}
function K(e, t, n) {
void 0 === n && (n = {}), x.fetchers.set(e, t), B({
fetchers: new Map(x.fetchers)
}, {
flushSync: !0 === (n && n.flushSync)
})
}
function Y(e, t, n, r) {
void 0 === r && (r = {});
let i = $O(x.matches, t);
Z(e), B({
errors: {
[i.route.id]: n
},
fetchers: new Map(x.fetchers)
}, {
flushSync: !0 === (r && r.flushSync)
})
}
function Q(e) {
return c.v7_fetcherPersist && (j.set(e, (j.get(e) || 0) + 1), F.has(e) && F.delete(e)), x.fetchers.get(e) || EO
}
function Z(e) {
let t = x.fetchers.get(e);
!T.has(e) || t && "loading" === t.state && L.has(e) || X(e), M.delete(e), L.delete(e), N.delete(e), F.delete(e), x.fetchers.delete(e)
}
function X(e) {
let t = T.get(e);
VI(t, "Expected fetch controller: " + e), t.abort(), T.delete(e)
}
function J(e) {
for (let t of e) {
let e = cC(Q(t).data);
x.fetchers.set(t, e)
}
}
function ee() {
let e = [],
t = !1;
for (let n of N) {
let r = x.fetchers.get(n);
VI(r, "Expected fetcher: " + n), "loading" === r.state && (N.delete(n), e.push(n), t = !0)
}
return J(e), t
}
function te(e) {
let t = [];
for (let [n, r] of L)
if (r < e) {
let e = x.fetchers.get(n);
VI(e, "Expected fetcher: " + n), "loading" === e.state && (X(n), L.delete(n), t.push(n))
} return J(t), t.length > 0
}
function ne(e) {
x.blockers.delete(e), V.delete(e)
}
function re(e, t) {
let n = x.blockers.get(e) || IO;
VI("unblocked" === n.state && "blocked" === t.state || "blocked" === n.state && "blocked" === t.state || "blocked" === n.state && "proceeding" === t.state || "blocked" === n.state && "unblocked" === t.state || "proceeding" === n.state && "unblocked" === t.state, "Invalid blocker state transition: " + n.state + " -> " + t.state);
let r = new Map(x.blockers);
r.set(e, t), B({
blockers: r
})
}
function ie(e) {
let {
currentLocation: t,
nextLocation: n,
historyAction: r
} = e;
if (0 === V.size) return;
V.size > 1 && UI(!1, "A router only supports one blocker at a time");
let i = Array.from(V.entries()),
[a, o] = i[i.length - 1],
s = x.blockers.get(a);
return s && "proceeding" === s.state ? void 0 : o({
currentLocation: t,
nextLocation: n,
historyAction: r
}) ? a : void 0
}
function ae(e) {
let t = [];
return z.forEach(((n, r) => {
e && !e(r) || (n.cancel(), t.push(r), z.delete(r))
})), t
}
function oe(e, t) {
if (h) {
let n = h(e, t.map((e => function(e, t) {
let {
route: n,
pathname: r,
params: i
} = e;
return {
id: n.id,
pathname: r,
params: i,
data: t[n.id],
handle: n.handle
}
}(e, x.loaderData))));
return n || e.key
}
return e.key
}
function se(e, t) {
if (p) {
let n = oe(e, t),
r = p[n];
if ("number" === typeof r) return r
}
return null
}
return y = {
get basename() {
return l
},
get state() {
return x
},
get routes() {
return s
},
get window() {
return t
},
initialize: function() {
if (u = e.history.listen((t => {
let {
action: n,
location: r,
delta: i
} = t;
if (U) return void(U = !1);
UI(0 === V.size || null != i, "You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");
let a = ie({
currentLocation: x.location,
nextLocation: r,
historyAction: n
});
return a && null != i ? (U = !0, e.history.go(-1 * i), void re(a, {
state: "blocked",
location: r,
proceed() {
re(a, {
state: "proceeding",
proceed: void 0,
reset: void 0,
location: r
}), e.history.go(i)
},
reset() {
let e = new Map(x.blockers);
e.set(a, IO), B({
blockers: e
})
}
})) : W(n, r)
})), n) {
! function(e, t) {
try {
let n = e.sessionStorage.getItem(AO);
if (n) {
let e = JSON.parse(n);
for (let [n, r] of Object.entries(e || {})) r && Array.isArray(r) && t.set(n, new Set(r || []))
}
} catch (n) {}
}(t, E);
let e = () => function(e, t) {
if (t.size > 0) {
let r = {};
for (let [e, n] of t) r[e] = [...n];
try {
e.sessionStorage.setItem(AO, JSON.stringify(r))
} catch (n) {
UI(!1, "Failed to save applied view transitions in sessionStorage (" + n + ").")
}
}
}(t, E);
t.addEventListener("pagehide", e), I = () => t.removeEventListener("pagehide", e)
}
return x.initialized || W(FI.Pop, x.location), y
},
subscribe: function(e) {
return d.add(e), () => d.delete(e)
},
enableScrollRestoration: function(e, t, n) {
if (p = e, f = t, h = n || null, !m && x.navigation === SO) {
m = !0;
let e = se(x.location, x.matches);
null != e && B({
restoreScrollPosition: e
})
}
return () => {
p = null, f = null, h = null
}
},
navigate: async function t(n, r) {
if ("number" === typeof n) return void e.history.go(n);
let i = TO(x.location, x.matches, l, c.v7_prependBasename, n, null == r ? void 0 : r.fromRouteId, null == r ? void 0 : r.relative),
{
path: a,
submission: o,
error: s
} = RO(c.v7_normalizeFormMethod, !1, i, r),
u = x.location,
d = GI(x.location, a, r && r.state);
d = jI({}, d, e.history.encodeLocation(d));
let p = r && null != r.replace ? r.replace : void 0,
h = FI.Push;
!0 === p ? h = FI.Replace : !1 === p || null != o && tC(o.formMethod) && o.formAction === x.location.pathname + x.location.search && (h = FI.Replace);
let f = r && "preventScrollReset" in r ? !0 === r.preventScrollReset : void 0,
m = !0 === (r && r.unstable_flushSync),
g = ie({
currentLocation: u,
nextLocation: d,
historyAction: h
});
if (!g) return await W(h, d, {
submission: o,
pendingError: s,
preventScrollReset: f,
replace: r && r.replace,
enableViewTransition: r && r.unstable_viewTransition,
flushSync: m
});
re(g, {
state: "blocked",
location: d,
proceed() {
re(g, {
state: "proceeding",
proceed: void 0,
reset: void 0,
location: d
}), t(n, r)
},
reset() {
let e = new Map(x.blockers);
e.set(g, IO), B({
blockers: e
})
}
})
},
fetch: function(t, n, u, d) {
if (r) throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");
T.has(t) && X(t);
let p = !0 === (d && d.unstable_flushSync),
h = a || s,
f = TO(x.location, x.matches, l, c.v7_prependBasename, u, n, null == d ? void 0 : d.relative),
m = QI(h, f, l);
if (!m) return void Y(t, n, HO(404, {
pathname: f
}), {
flushSync: p
});
let {
path: g,
submission: v,
error: y
} = RO(c.v7_normalizeFormMethod, !0, f, d);
if (y) return void Y(t, n, y, {
flushSync: p
});
let b = aC(m, g);
w = !0 === (d && d.preventScrollReset), v && tC(v.formMethod) ? async function(t, n, r, c, u, d, p) {
if (H(), M.delete(t), !c.route.action && !c.route.lazy) {
let e = HO(405, {
method: p.formMethod,
pathname: r,
routeId: n
});
return void Y(t, n, e, {
flushSync: d
})
}
let h = x.fetchers.get(t);
K(t, function(e, t) {
let n = {
state: "submitting",
formMethod: e.formMethod,
formAction: e.formAction,
formEncType: e.formEncType,
formData: e.formData,
json: e.json,
text: e.text,
data: t ? t.data : void 0
};
return n
}(p, h), {
flushSync: d
});
let f = new AbortController,
m = zO(e.history, r, f.signal, p);
T.set(t, f);
let g = R,
v = await FO("action", m, c, u, o, i, l);
if (m.signal.aborted) return void(T.get(t) === f && T.delete(t));
if (F.has(t)) return void K(t, cC(void 0));
if (XO(v)) return T.delete(t), D > g ? void K(t, cC(void 0)) : (N.add(t), K(t, lC(p)), $(x, v, {
fetcherSubmission: p
}));
if (ZO(v)) return void Y(t, n, v.error);
if (QO(v)) throw HO(400, {
type: "defer-action"
});
let y = x.navigation.location || x.location,
b = zO(e.history, y, f.signal),
w = a || s,
S = "idle" !== x.navigation.state ? QI(w, x.navigation.location, l) : x.matches;
VI(S, "Didn't find any matches after fetcher action");
let E = ++R;
L.set(t, E);
let I = lC(p, v.data);
x.fetchers.set(t, I);
let [O, j] = LO(e.history, x, S, p, y, C, A, P, F, M, N, w, l, {
[c.route.id]: v.data
}, void 0);
j.filter((e => e.key !== t)).forEach((e => {
let t = e.key,
n = x.fetchers.get(t),
r = lC(void 0, n ? n.data : void 0);
x.fetchers.set(t, r), T.has(t) && X(t), e.controller && T.set(t, e.controller)
})), B({
fetchers: new Map(x.fetchers)
});
let V = () => j.forEach((e => X(e.key)));
f.signal.addEventListener("abort", V);
let {
results: U,
loaderResults: W,
fetcherResults: Q
} = await q(x.matches, S, O, j, b);
if (f.signal.aborted) return;
f.signal.removeEventListener("abort", V), L.delete(t), T.delete(t), j.forEach((e => T.delete(e.key)));
let Z = KO(U);
if (Z) {
if (Z.idx >= O.length) {
let e = j[Z.idx - O.length].key;
N.add(e)
}
return $(x, Z.result)
}
let {
loaderData: J,
errors: ee
} = GO(x, x.matches, O, W, void 0, j, Q, z);
if (x.fetchers.has(t)) {
let e = cC(v.data);
x.fetchers.set(t, e)
}
te(E), "loading" === x.navigation.state && E > D ? (VI(k, "Expected pending action"), _ && _.abort(), G(x.navigation.location, {
matches: S,
loaderData: J,
errors: ee,
fetchers: new Map(x.fetchers)
})) : (B({
errors: ee,
loaderData: WO(x.loaderData, J, S, ee),
fetchers: new Map(x.fetchers)
}), C = !1)
}(t, n, g, b, m, p, v): (M.set(t, {
routeId: n,
path: g
}), async function(t, n, r, a, s, c, u) {
let d = x.fetchers.get(t);
K(t, lC(u, d ? d.data : void 0), {
flushSync: c
});
let p = new AbortController,
h = zO(e.history, r, p.signal);
T.set(t, p);
let f = R,
m = await FO("loader", h, a, s, o, i, l);
QO(m) && (m = await rC(m, h.signal, !0) || m);
T.get(t) === p && T.delete(t);
if (h.signal.aborted) return;
if (F.has(t)) return void K(t, cC(void 0));
if (XO(m)) return D > f ? void K(t, cC(void 0)) : (N.add(t), void await $(x, m));
if (ZO(m)) return void Y(t, n, m.error);
VI(!QO(m), "Unhandled fetcher deferred data"), K(t, cC(m.data))
}(t, n, g, b, m, p, v))
},
revalidate: function() {
H(), B({
revalidation: "loading"
}), "submitting" !== x.navigation.state && ("idle" !== x.navigation.state ? W(k || x.historyAction, x.navigation.location, {
overrideNavigation: x.navigation
}) : W(x.historyAction, x.location, {
startUninterruptedRevalidation: !0
}))
},
createHref: t => e.history.createHref(t),
encodeLocation: t => e.history.encodeLocation(t),
getFetcher: Q,
deleteFetcher: function(e) {
if (c.v7_fetcherPersist) {
let t = (j.get(e) || 0) - 1;
t <= 0 ? (j.delete(e), F.add(e)) : j.set(e, t)
} else Z(e);
B({
fetchers: new Map(x.fetchers)
})
},
dispose: function() {
u && u(), I && I(), d.clear(), _ && _.abort(), x.fetchers.forEach(((e, t) => Z(t))), x.blockers.forEach(((e, t) => ne(t)))
},
getBlocker: function(e, t) {
let n = x.blockers.get(e) || IO;
return V.get(e) !== t && V.set(e, t), n
},
deleteBlocker: ne,
_internalFetchControllers: T,
_internalActiveDeferreds: z,
_internalSetRoutes: function(e) {
o = {}, a = YI(e, i, void 0, o)
}
}, y
}
Symbol("deferred");
function TO(e, t, n, r, i, a, o) {
let s, l;
if (a) {
s = [];
for (let e of t)
if (s.push(e), e.route.id === a) {
l = e;
break
}
} else s = t, l = t[t.length - 1];
let c = cO(i || ".", lO(s).map((e => e.pathnameBase)), oO(e.pathname, n) || e.pathname, "path" === o);
return null == i && (c.search = e.search, c.hash = e.hash), null != i && "" !== i && "." !== i || !l || !l.route.index || iC(c.search) || (c.search = c.search ? c.search.replace(/^\?/, "?index&") : "?index"), r && "/" !== n && (c.pathname = "/" === c.pathname ? n : uO([n, c.pathname])), WI(c)
}
function RO(e, t, n, r) {
if (!r || ! function(e) {
return null != e && ("formData" in e && null != e.formData || "body" in e && void 0 !== e.body)
}(r)) return {
path: n
};
if (r.formMethod && !eC(r.formMethod)) return {
path: n,
error: HO(405, {
method: r.formMethod
})
};
let i, a, o = () => ({
path: n,
error: HO(400, {
type: "invalid-body"
})
}),
s = r.formMethod || "get",
l = e ? s.toUpperCase() : s.toLowerCase(),
c = YO(n);
if (void 0 !== r.body) {
if ("text/plain" === r.formEncType) {
if (!tC(l)) return o();
let e = "string" === typeof r.body ? r.body : r.body instanceof FormData || r.body instanceof URLSearchParams ? Array.from(r.body.entries()).reduce(((e, t) => {
let [n, r] = t;
return "" + e + n + "=" + r + "\n"
}), "") : String(r.body);
return {
path: n,
submission: {
formMethod: l,
formAction: c,
formEncType: r.formEncType,
formData: void 0,
json: void 0,
text: e
}
}
}
if ("application/json" === r.formEncType) {
if (!tC(l)) return o();
try {
let e = "string" === typeof r.body ? JSON.parse(r.body) : r.body;
return {
path: n,
submission: {
formMethod: l,
formAction: c,
formEncType: r.formEncType,
formData: void 0,
json: e,
text: void 0
}
}
} catch (p) {
return o()
}
}
}
if (VI("function" === typeof FormData, "FormData is not available in this environment"), r.formData) i = VO(r.formData), a = r.formData;
else if (r.body instanceof FormData) i = VO(r.body), a = r.body;
else if (r.body instanceof URLSearchParams) i = r.body, a = UO(i);
else if (null == r.body) i = new URLSearchParams, a = new FormData;
else try {
i = new URLSearchParams(r.body), a = UO(i)
} catch (p) {
return o()
}
let u = {
formMethod: l,
formAction: c,
formEncType: r && r.formEncType || "application/x-www-form-urlencoded",
formData: a,
json: void 0,
text: void 0
};
if (tC(u.formMethod)) return {
path: n,
submission: u
};
let d = $I(n);
return t && d.search && iC(d.search) && i.append("index", ""), d.search = "?" + i, {
path: WI(d),
submission: u
}
}
function DO(e, t) {
let n = e;
if (t) {
let r = e.findIndex((e => e.route.id === t));
r >= 0 && (n = e.slice(0, r))
}
return n
}
function LO(e, t, n, r, i, a, o, s, l, c, u, d, p, h, f) {
let m = f ? Object.values(f)[0] : h ? Object.values(h)[0] : void 0,
g = e.createURL(t.location),
v = e.createURL(i),
y = f ? Object.keys(f)[0] : void 0,
_ = DO(n, y).filter(((e, n) => {
if (e.route.lazy) return !0;
if (null == e.route.loader) return !1;
if (function(e, t, n) {
let r = !t || n.route.id !== t.route.id,
i = void 0 === e[n.route.id];
return r || i
}(t.loaderData, t.matches[n], e) || o.some((t => t === e.route.id))) return !0;
let i = t.matches[n],
s = e;
return MO(e, jI({
currentUrl: g,
currentParams: i.params,
nextUrl: v,
nextParams: s.params
}, r, {
actionResult: m,
defaultShouldRevalidate: a || g.pathname + g.search === v.pathname + v.search || g.search !== v.search || NO(i, s)
}))
})),
b = [];
return c.forEach(((e, i) => {
if (!n.some((t => t.route.id === e.routeId)) || l.has(i)) return;
let o = QI(d, e.path, p);
if (!o) return void b.push({
key: i,
routeId: e.routeId,
path: e.path,
matches: null,
match: null,
controller: null
});
let c = t.fetchers.get(i),
h = aC(o, e.path),
f = !1;
f = !u.has(i) && (!!s.includes(i) || (c && "idle" !== c.state && void 0 === c.data ? a : MO(h, jI({
currentUrl: g,
currentParams: t.matches[t.matches.length - 1].params,
nextUrl: v,
nextParams: n[n.length - 1].params
}, r, {
actionResult: m,
defaultShouldRevalidate: a
})))), f && b.push({
key: i,
routeId: e.routeId,
path: e.path,
matches: o,
match: h,
controller: new AbortController
})
})), [_, b]
}
function NO(e, t) {
let n = e.route.path;
return e.pathname !== t.pathname || null != n && n.endsWith("*") && e.params["*"] !== t.params["*"]
}
function MO(e, t) {
if (e.route.shouldRevalidate) {
let n = e.route.shouldRevalidate(t);
if ("boolean" === typeof n) return n
}
return t.defaultShouldRevalidate
}
async function jO(e, t, n) {
if (!e.lazy) return;
let r = await e.lazy();
if (!e.lazy) return;
let i = n[e.id];
VI(i, "No route found in manifest");
let a = {};
for (let o in r) {
let e = void 0 !== i[o] && "hasErrorBoundary" !== o;
UI(!e, 'Route "' + i.id + '" has a static property "' + o + '" defined but its lazy function is also returning a value for this property. The lazy route property "' + o + '" will be ignored.'), e || KI.has(o) || (a[o] = r[o])
}
Object.assign(i, a), Object.assign(i, jI({}, t(i), {
lazy: void 0
}))
}
async function FO(e, t, n, r, i, a, o, s) {
let l, c, u;
void 0 === s && (s = {});
let d = e => {
let r, i = new Promise(((e, t) => r = t));
return u = () => r(), t.signal.addEventListener("abort", u), Promise.race([e({
request: t,
params: n.params,
context: s.requestContext
}), i])
};
try {
let r = n.route[e];
if (n.route.lazy)
if (r) {
let e, t = await Promise.all([d(r).catch((t => {
e = t
})), jO(n.route, a, i)]);
if (e) throw e;
c = t[0]
} else {
if (await jO(n.route, a, i), r = n.route[e], !r) {
if ("action" === e) {
let e = new URL(t.url),
r = e.pathname + e.search;
throw HO(405, {
method: t.method,
pathname: r,
routeId: n.route.id
})
}
return {
type: HI.data,
data: void 0
}
}
c = await d(r)
}
else {
if (!r) {
let e = new URL(t.url);
throw HO(404, {
pathname: e.pathname + e.search
})
}
c = await d(r)
}
VI(void 0 !== c, "You defined " + ("action" === e ? "an action" : "a loader") + ' for route "' + n.route.id + "\" but didn't return anything from your `" + e + "` function. Please return a value or `null`.")
} catch (f) {
l = HI.error, c = f
} finally {
u && t.signal.removeEventListener("abort", u)
}
if (JO(c)) {
let e, i = c.status;
if (kO.has(i)) {
let e = c.headers.get("Location");
if (VI(e, "Redirects returned/thrown from loaders/actions must have a Location header"), OO.test(e)) {
if (!s.isStaticRequest) {
let n = new URL(t.url),
r = e.startsWith("//") ? new URL(n.protocol + e) : new URL(e),
i = null != oO(r.pathname, o);
r.origin === n.origin && i && (e = r.pathname + r.search + r.hash)
}
} else e = TO(new URL(t.url), r.slice(0, r.indexOf(n) + 1), o, !0, e);
if (s.isStaticRequest) throw c.headers.set("Location", e), c;
return {
type: HI.redirect,
status: i,
location: e,
revalidate: null !== c.headers.get("X-Remix-Revalidate"),
reloadDocument: null !== c.headers.get("X-Remix-Reload-Document")
}
}
if (s.isRouteRequest) {
throw {
type: l === HI.error ? HI.error : HI.data,
response: c
}
}
let a = c.headers.get("Content-Type");
return e = a && /\bapplication\/json\b/.test(a) ? await c.json() : await c.text(), l === HI.error ? {
type: l,
error: new gO(i, c.statusText, e),
headers: c.headers
} : {
type: HI.data,
data: e,
statusCode: c.status,
headers: c.headers
}
}
return l === HI.error ? {
type: l,
error: c
} : function(e) {
let t = e;
return t && "object" === typeof t && "object" === typeof t.data && "function" === typeof t.subscribe && "function" === typeof t.cancel && "function" === typeof t.resolveData
}(c) ? {
type: HI.deferred,
deferredData: c,
statusCode: null == (p = c.init) ? void 0 : p.status,
headers: (null == (h = c.init) ? void 0 : h.headers) && new Headers(c.init.headers)
} : {
type: HI.data,
data: c
};
var p, h
}
function zO(e, t, n, r) {
let i = e.createURL(YO(t)).toString(),
a = {
signal: n
};
if (r && tC(r.formMethod)) {
let {
formMethod: e,
formEncType: t
} = r;
a.method = e.toUpperCase(), "application/json" === t ? (a.headers = new Headers({
"Content-Type": t
}), a.body = JSON.stringify(r.json)) : "text/plain" === t ? a.body = r.text : "application/x-www-form-urlencoded" === t && r.formData ? a.body = VO(r.formData) : a.body = r.formData
}
return new Request(i, a)
}
function VO(e) {
let t = new URLSearchParams;
for (let [n, r] of e.entries()) t.append(n, "string" === typeof r ? r : r.name);
return t
}
function UO(e) {
let t = new FormData;
for (let [n, r] of e.entries()) t.append(n, r);
return t
}
function BO(e, t, n, r, i) {
let a, o = {},
s = null,
l = !1,
c = {};
return n.forEach(((n, u) => {
let d = t[u].route.id;
if (VI(!XO(n), "Cannot handle redirect results in processLoaderData"), ZO(n)) {
let t = $O(e, d),
i = n.error;
r && (i = Object.values(r)[0], r = void 0), s = s || {}, null == s[t.route.id] && (s[t.route.id] = i), o[d] = void 0, l || (l = !0, a = vO(n.error) ? n.error.status : 500), n.headers && (c[d] = n.headers)
} else QO(n) ? (i.set(d, n.deferredData), o[d] = n.deferredData.data) : o[d] = n.data, null == n.statusCode || 200 === n.statusCode || l || (a = n.statusCode), n.headers && (c[d] = n.headers)
})), r && (s = r, o[Object.keys(r)[0]] = void 0), {
loaderData: o,
errors: s,
statusCode: a || 200,
loaderHeaders: c
}
}
function GO(e, t, n, r, i, a, o, s) {
let {
loaderData: l,
errors: c
} = BO(t, n, r, i, s);
for (let u = 0; u < a.length; u++) {
let {
key: t,
match: n,
controller: r
} = a[u];
VI(void 0 !== o && void 0 !== o[u], "Did not find corresponding fetcher result");
let i = o[u];
if (!r || !r.signal.aborted)
if (ZO(i)) {
let r = $O(e.matches, null == n ? void 0 : n.route.id);
c && c[r.route.id] || (c = jI({}, c, {
[r.route.id]: i.error
})), e.fetchers.delete(t)
} else if (XO(i)) VI(!1, "Unhandled fetcher revalidation redirect");
else if (QO(i)) VI(!1, "Unhandled fetcher deferred data");
else {
let n = cC(i.data);
e.fetchers.set(t, n)
}
}
return {
loaderData: l,
errors: c
}
}
function WO(e, t, n, r) {
let i = jI({}, t);
for (let a of n) {
let n = a.route.id;
if (t.hasOwnProperty(n) ? void 0 !== t[n] && (i[n] = t[n]) : void 0 !== e[n] && a.route.loader && (i[n] = e[n]), r && r.hasOwnProperty(n)) break
}
return i
}
function $O(e, t) {
let n = t ? e.slice(0, e.findIndex((e => e.route.id === t)) + 1) : [...e];
return n.reverse().find((e => !0 === e.route.hasErrorBoundary)) || e[0]
}
function qO(e) {
let t = 1 === e.length ? e[0] : e.find((e => e.index || !e.path || "/" === e.path)) || {
id: "__shim-error-route__"
};
return {
matches: [{
params: {},
pathname: "",
pathnameBase: "",
route: t
}],
route: t
}
}
function HO(e, t) {
let {
pathname: n,
routeId: r,
method: i,
type: a
} = void 0 === t ? {} : t, o = "Unknown Server Error", s = "Unknown @remix-run/router error";
return 400 === e ? (o = "Bad Request", i && n && r ? s = "You made a " + i + ' request to "' + n + '" but did not provide a `loader` for route "' + r + '", so there is no way to handle the request.' : "defer-action" === a ? s = "defer() is not supported in actions" : "invalid-body" === a && (s = "Unable to encode submission body")) : 403 === e ? (o = "Forbidden", s = 'Route "' + r + '" does not match URL "' + n + '"') : 404 === e ? (o = "Not Found", s = 'No route matches URL "' + n + '"') : 405 === e && (o = "Method Not Allowed", i && n && r ? s = "You made a " + i.toUpperCase() + ' request to "' + n + '" but did not provide an `action` for route "' + r + '", so there is no way to handle the request.' : i && (s = 'Invalid request method "' + i.toUpperCase() + '"')), new gO(e || 500, o, new Error(s), !0)
}
function KO(e) {
for (let t = e.length - 1; t >= 0; t--) {
let n = e[t];
if (XO(n)) return {
result: n,
idx: t
}
}
}
function YO(e) {
return WI(jI({}, "string" === typeof e ? $I(e) : e, {
hash: ""
}))
}
function QO(e) {
return e.type === HI.deferred
}
function ZO(e) {
return e.type === HI.error
}
function XO(e) {
return (e && e.type) === HI.redirect
}
function JO(e) {
return null != e && "number" === typeof e.status && "string" === typeof e.statusText && "object" === typeof e.headers && "undefined" !== typeof e.body
}
function eC(e) {
return xO.has(e.toLowerCase())
}
function tC(e) {
return _O.has(e.toLowerCase())
}
async function nC(e, t, n, r, i, a) {
for (let o = 0; o < n.length; o++) {
let s = n[o],
l = t[o];
if (!l) continue;
let c = e.find((e => e.route.id === l.route.id)),
u = null != c && !NO(c, l) && void 0 !== (a && a[l.route.id]);
if (QO(s) && (i || u)) {
let e = r[o];
VI(e, "Expected an AbortSignal for revalidating fetcher deferred result"), await rC(s, e, i).then((e => {
e && (n[o] = e || n[o])
}))
}
}
}
async function rC(e, t, n) {
if (void 0 === n && (n = !1), !await e.deferredData.resolveData(t)) {
if (n) try {
return {
type: HI.data,
data: e.deferredData.unwrappedData
}
} catch (r) {
return {
type: HI.error,
error: r
}
}
return {
type: HI.data,
data: e.deferredData.data
}
}
}
function iC(e) {
return new URLSearchParams(e).getAll("index").some((e => "" === e))
}
function aC(e, t) {
let n = "string" === typeof t ? $I(t).search : t.search;
if (e[e.length - 1].route.index && iC(n || "")) return e[e.length - 1];
let r = lO(e);
return r[r.length - 1]
}
function oC(e) {
let {
formMethod: t,
formAction: n,
formEncType: r,
text: i,
formData: a,
json: o
} = e;
if (t && n && r) return null != i ? {
formMethod: t,
formAction: n,
formEncType: r,
formData: void 0,
json: void 0,
text: i
} : null != a ? {
formMethod: t,
formAction: n,
formEncType: r,
formData: a,
json: void 0,
text: void 0
} : void 0 !== o ? {
formMethod: t,
formAction: n,
formEncType: r,
formData: void 0,
json: o,
text: void 0
} : void 0
}
function sC(e, t) {
if (t) {
return {
state: "loading",
location: e,
formMethod: t.formMethod,
formAction: t.formAction,
formEncType: t.formEncType,
formData: t.formData,
json: t.json,
text: t.text
}
}
return {
state: "loading",
location: e,
formMethod: void 0,
formAction: void 0,
formEncType: void 0,
formData: void 0,
json: void 0,
text: void 0
}
}
function lC(e, t) {
if (e) {
return {
state: "loading",
formMethod: e.formMethod,
formAction: e.formAction,
formEncType: e.formEncType,
formData: e.formData,
json: e.json,
text: e.text,
data: t
}
}
return {
state: "loading",
formMethod: void 0,
formAction: void 0,
formEncType: void 0,
formData: void 0,
json: void 0,
text: void 0,
data: t
}
}
function cC(e) {
return {
state: "idle",
formMethod: void 0,
formAction: void 0,
formEncType: void 0,
formData: void 0,
json: void 0,
text: void 0,
data: e
}
}
function uC() {
return uC = Object.assign ? Object.assign.bind() : 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
}, uC.apply(this, arguments)
}
const dC = Ee.createContext(null);
const pC = Ee.createContext(null);
const hC = Ee.createContext(null);
const fC = Ee.createContext(null);
const mC = Ee.createContext({
outlet: null,
matches: [],
isDataRoute: !1
});
const gC = Ee.createContext(null);
function vC() {
return null != Ee.useContext(fC)
}
function yC() {
return vC() || VI(!1), Ee.useContext(fC).location
}
function _C(e) {
Ee.useContext(hC).static || Ee.useLayoutEffect(e)
}
function bC() {
let {
isDataRoute: e
} = Ee.useContext(mC);
return e ? function() {
let {
router: e
} = RC(PC.UseNavigateStable), t = LC(TC.UseNavigateStable), n = Ee.useRef(!1);
_C((() => {
n.current = !0
}));
let r = Ee.useCallback((function(r, i) {
void 0 === i && (i = {}), n.current && ("number" === typeof r ? e.navigate(r) : e.navigate(r, uC({
fromRouteId: t
}, i)))
}), [e, t]);
return r
}() : function() {
vC() || VI(!1);
let e = Ee.useContext(dC),
{
basename: t,
navigator: n
} = Ee.useContext(hC),
{
matches: r
} = Ee.useContext(mC),
{
pathname: i
} = yC(),
a = JSON.stringify(lO(r).map((e => e.pathnameBase))),
o = Ee.useRef(!1);
_C((() => {
o.current = !0
}));
let s = Ee.useCallback((function(r, s) {
if (void 0 === s && (s = {}), !o.current) return;
if ("number" === typeof r) return void n.go(r);
let l = cO(r, JSON.parse(a), i, "path" === s.relative);
null == e && "/" !== t && (l.pathname = "/" === l.pathname ? t : uO([t, l.pathname])), (s.replace ? n.replace : n.push)(l, s.state, s)
}), [t, n, a, i, e]);
return s
}()
}
const xC = Ee.createContext(null);
function kC() {
let {
matches: e
} = Ee.useContext(mC), t = e[e.length - 1];
return t ? t.params : {}
}
function wC(e, t) {
let {
relative: n
} = void 0 === t ? {} : t, {
matches: r
} = Ee.useContext(mC), {
pathname: i
} = yC(), a = JSON.stringify(lO(r).map((e => e.pathnameBase)));
return Ee.useMemo((() => cO(e, JSON.parse(a), i, "path" === n)), [e, a, i, n])
}
function SC(e, t, n) {
vC() || VI(!1);
let {
navigator: r
} = Ee.useContext(hC), {
matches: i
} = Ee.useContext(mC), a = i[i.length - 1], o = a ? a.params : {}, s = (a && a.pathname, a ? a.pathnameBase : "/");
a && a.route;
let l, c = yC();
if (t) {
var u;
let e = "string" === typeof t ? $I(t) : t;
"/" === s || (null == (u = e.pathname) ? void 0 : u.startsWith(s)) || VI(!1), l = e
} else l = c;
let d = l.pathname || "/",
p = QI(e, {
pathname: "/" === s ? d : d.slice(s.length) || "/"
});
let h = AC(p && p.map((e => Object.assign({}, e, {
params: Object.assign({}, o, e.params),
pathname: uO([s, r.encodeLocation ? r.encodeLocation(e.pathname).pathname : e.pathname]),
pathnameBase: "/" === e.pathnameBase ? s : uO([s, r.encodeLocation ? r.encodeLocation(e.pathnameBase).pathname : e.pathnameBase])
}))), i, n);
return t && h ? Ee.createElement(fC.Provider, {
value: {
location: uC({
pathname: "/",
search: "",
hash: "",
state: null,
key: "default"
}, l),
navigationType: FI.Pop
}
}, h) : h
}
function EC() {
let e = function() {
var e;
let t = Ee.useContext(gC),
n = DC(TC.UseRouteError),
r = LC(TC.UseRouteError);
if (t) return t;
return null == (e = n.errors) ? void 0 : e[r]
}(),
t = vO(e) ? e.status + " " + e.statusText : e instanceof Error ? e.message : JSON.stringify(e),
n = e instanceof Error ? e.stack : null,
r = "rgba(200,200,200, 0.5)",
i = {
padding: "0.5rem",
backgroundColor: r
};
return Ee.createElement(Ee.Fragment, null, Ee.createElement("h2", null, "Unexpected Application Error!"), Ee.createElement("h3", {
style: {
fontStyle: "italic"
}
}, t), n ? Ee.createElement("pre", {
style: i
}, n) : null, null)
}
const IC = Ee.createElement(EC, null);
class OC extends Ee.Component {
constructor(e) {
super(e), this.state = {
location: e.location,
revalidation: e.revalidation,
error: e.error
}
}
static getDerivedStateFromError(e) {
return {
error: e
}
}
static getDerivedStateFromProps(e, t) {
return t.location !== e.location || "idle" !== t.revalidation && "idle" === e.revalidation ? {
error: e.error,
location: e.location,
revalidation: e.revalidation
} : {
error: e.error || t.error,
location: t.location,
revalidation: e.revalidation || t.revalidation
}
}
componentDidCatch(e, t) {
console.error("React Router caught the following error during render", e, t)
}
render() {
return this.state.error ? Ee.createElement(mC.Provider, {
value: this.props.routeContext
}, Ee.createElement(gC.Provider, {
value: this.state.error,
children: this.props.component
})) : this.props.children
}
}
function CC(e) {
let {
routeContext: t,
match: n,
children: r
} = e, i = Ee.useContext(dC);
return i && i.static && i.staticContext && (n.route.errorElement || n.route.ErrorBoundary) && (i.staticContext._deepestRenderedBoundaryId = n.route.id), Ee.createElement(mC.Provider, {
value: t
}, r)
}
function AC(e, t, n) {
var r;
if (void 0 === t && (t = []), void 0 === n && (n = null), null == e) {
var i;
if (null == (i = n) || !i.errors) return null;
e = n.matches
}
let a = e,
o = null == (r = n) ? void 0 : r.errors;
if (null != o) {
let e = a.findIndex((e => e.route.id && (null == o ? void 0 : o[e.route.id])));
e >= 0 || VI(!1), a = a.slice(0, Math.min(a.length, e + 1))
}
return a.reduceRight(((e, r, i) => {
let s = r.route.id ? null == o ? void 0 : o[r.route.id] : null,
l = null;
n && (l = r.route.errorElement || IC);
let c = t.concat(a.slice(0, i + 1)),
u = () => {
let t;
return t = s ? l : r.route.Component ? Ee.createElement(r.route.Component, null) : r.route.element ? r.route.element : e, Ee.createElement(CC, {
match: r,
routeContext: {
outlet: e,
matches: c,
isDataRoute: null != n
},
children: t
})
};
return n && (r.route.ErrorBoundary || r.route.errorElement || 0 === i) ? Ee.createElement(OC, {
location: n.location,
revalidation: n.revalidation,
component: l,
error: s,
children: u(),
routeContext: {
outlet: null,
matches: c,
isDataRoute: !0
}
}) : u()
}), null)
}
var PC = function(e) {
return e.UseBlocker = "useBlocker", e.UseRevalidator = "useRevalidator", e.UseNavigateStable = "useNavigate", e
}(PC || {}),
TC = function(e) {
return e.UseBlocker = "useBlocker", e.UseLoaderData = "useLoaderData", e.UseActionData = "useActionData", e.UseRouteError = "useRouteError", e.UseNavigation = "useNavigation", e.UseRouteLoaderData = "useRouteLoaderData", e.UseMatches = "useMatches", e.UseRevalidator = "useRevalidator", e.UseNavigateStable = "useNavigate", e.UseRouteId = "useRouteId", e
}(TC || {});
function RC(e) {
let t = Ee.useContext(dC);
return t || VI(!1), t
}
function DC(e) {
let t = Ee.useContext(pC);
return t || VI(!1), t
}
function LC(e) {
let t = function(e) {
let t = Ee.useContext(mC);
return t || VI(!1), t
}(),
n = t.matches[t.matches.length - 1];
return n.route.id || VI(!1), n.route.id
}
Ie.startTransition;
function NC(e) {
let {
to: t,
replace: n,
state: r,
relative: i
} = e;
vC() || VI(!1);
let {
matches: a
} = Ee.useContext(mC), {
pathname: o
} = yC(), s = bC(), l = cO(t, lO(a).map((e => e.pathnameBase)), o, "path" === i), c = JSON.stringify(l);
return Ee.useEffect((() => s(JSON.parse(c), {
replace: n,
state: r,
relative: i
})), [s, c, i, n, r]), null
}
function MC(e) {
return function(e) {
let t = Ee.useContext(mC).outlet;
return t ? Ee.createElement(xC.Provider, {
value: e
}, t) : t
}(e.context)
}
function jC(e) {
let {
basename: t = "/",
children: n = null,
location: r,
navigationType: i = FI.Pop,
navigator: a,
static: o = !1
} = e;
vC() && VI(!1);
let s = t.replace(/^\/*/, "/"),
l = Ee.useMemo((() => ({
basename: s,
navigator: a,
static: o
})), [s, a, o]);
"string" === typeof r && (r = $I(r));
let {
pathname: c = "/",
search: u = "",
hash: d = "",
state: p = null,
key: h = "default"
} = r, f = Ee.useMemo((() => {
let e = oO(c, s);
return null == e ? null : {
location: {
pathname: e,
search: u,
hash: d,
state: p,
key: h
},
navigationType: i
}
}), [s, c, u, d, p, h, i]);
return null == f ? null : Ee.createElement(hC.Provider, {
value: l
}, Ee.createElement(fC.Provider, {
children: n,
value: f
}))
}
new Promise((() => {}));
class FC extends Ee.Component {
constructor(e) {
super(e), this.state = {
error: null
}
}
static getDerivedStateFromError(e) {
return {
error: e
}
}
componentDidCatch(e, t) {
console.error("<Await> caught the following error during render", e, t)
}
render() {
let {
children: e,
errorElement: t,
resolve: n
} = this.props, r = null, i = AwaitRenderStatus.pending;
if (n instanceof Promise)
if (this.state.error) {
AwaitRenderStatus.error;
let e = this.state.error;
Promise.reject().catch((() => {})), Object.defineProperty(r, "_tracked", {
get: () => !0
}), Object.defineProperty(r, "_error", {
get: () => e
})
} else n._tracked ? (n, void 0 !== r._error ? AwaitRenderStatus.error : void 0 !== r._data ? AwaitRenderStatus.success : AwaitRenderStatus.pending) : (AwaitRenderStatus.pending, Object.defineProperty(n, "_tracked", {
get: () => !0
}), n.then((e => Object.defineProperty(n, "_data", {
get: () => e
})), (e => Object.defineProperty(n, "_error", {
get: () => e
}))));
else AwaitRenderStatus.success, Promise.resolve(), Object.defineProperty(r, "_tracked", {
get: () => !0
}), Object.defineProperty(r, "_data", {
get: () => n
});
if (i === AwaitRenderStatus.error && r._error instanceof AbortedDeferredError) throw neverSettledPromise;
if (i === AwaitRenderStatus.error && !t) throw r._error;
if (i === AwaitRenderStatus.error) return React.createElement(AwaitContext.Provider, {
value: r,
children: t
});
if (i === AwaitRenderStatus.success) return React.createElement(AwaitContext.Provider, {
value: r,
children: e
});
throw r
}
}
function zC(e) {
let t = {
hasErrorBoundary: null != e.ErrorBoundary || null != e.errorElement
};
return e.Component && Object.assign(t, {
element: Ee.createElement(e.Component),
Component: void 0
}), e.ErrorBoundary && Object.assign(t, {
errorElement: Ee.createElement(e.ErrorBoundary),
ErrorBoundary: void 0
}), t
}
const VC = ({
labelItem: e
}) => {
var t;
const [n, r] = (0, Ee.useState)(!1), {
t: i
} = bt("download"), a = bC(), o = pR((e => e.installer)), s = pR((e => e.application)), {
reduceMotion: {
wipeAnimationsDisabled: l,
unessentialAnimationsDisabled: c
}
} = Ns(), u = (0, Ee.useMemo)((() => o.installations.find((e => e.status === yw.InstallationStatus.IN_PROGRESS || e.status === yw.InstallationStatus.PAUSED))), [o.installations]), {
isOffline: d
} = (0, Ee.useMemo)((() => ({
isOffline: s.connection.mode !== yw.ConnectionMode.ONLINE
})), [s.connection]), p = e => {
s.actions.setDownloadPopoverOpened(e)
}, h = (0, Ee.useCallback)((e => {
var t, n, r, a;
return e.status === yw.InstallationStatus.COMPLETED ? [{
label: i("download_status"),
value: i("download_completed")
}] : e.status === yw.InstallationStatus.WAITING ? [{
label: i("download_status"),
value: i("download_waiting")
}] : e.status === yw.InstallationStatus.CANCELLING ? [{
label: i("download_status"),
value: i("download_cancelling")
}] : e.status === yw.InstallationStatus.ERROR ? [{
label: i("download_status"),
value: i("download_error")
}] : !o.progress || e.status !== yw.InstallationStatus.IN_PROGRESS && e.status !== yw.InstallationStatus.PAUSED ? void 0 : o.progress.progressUndeterminate ? [{
label: i("download_phase"),
value: o.progress.currentPhase
}] : [{
fill: !0,
label: i("download_phase"),
value: o.progress.currentPhase
}, {
label: i("download_speed"),
value: `${o.progress.speed}/s`
}, {
label: i("download_left"),
value: SE()(Math.max((null !== (t = o.progress.total) && void 0 !== t ? t : 0) - (null !== (n = o.progress.downloaded) && void 0 !== n ? n : 0), 0))
}, {
label: i("download_files_left"),
value: Math.max((null !== (r = o.progress.filesTotal) && void 0 !== r ? r : 0) - (null !== (a = o.progress.filesDone) && void 0 !== a ? a : 0), 0)
}]
}), [i, o.progress]), f = (0, Ee.useCallback)((e => {
var t, n;
return e.status === yw.InstallationStatus.IN_PROGRESS || e.status === yw.InstallationStatus.PAUSED || e.status === yw.InstallationStatus.CANCELLING ? [{
disabled: e.status === yw.InstallationStatus.CANCELLING || !(null !== (t = o.progress) && void 0 !== t && t.isPausable) || d,
icon: e.status === yw.InstallationStatus.PAUSED ? bI : _I,
label: e.status === yw.InstallationStatus.PAUSED ? i("download_resume") : i("download_pause"),
tooltip: e.status === yw.InstallationStatus.PAUSED ? i("download_resume") : i("download_pause"),
onClick: e.status === yw.InstallationStatus.PAUSED ? () => o.actions.resumeInstallation(e.game) : () => o.actions.pauseInstallation(e.game)
}, {
disabled: e.status === yw.InstallationStatus.CANCELLING || !(null !== (n = o.progress) && void 0 !== n && n.isPausable),
icon: uI,
label: i("download_cancel"),
tooltip: i("download_cancel"),
onClick: () => o.actions.cancelInstallation(e.game)
}] : [{
icon: dI,
label: i("download_remove"),
tooltip: i("download_remove"),
onClick: () => o.actions.cancelInstallation(e.game)
}]
}), [null === (t = o.progress) || void 0 === t ? void 0 : t.isPausable, o.actions, d, i]);
return (0, _w.jsx)(ag, {
title: i("download_title"),
offset: "large",
placement: "bottom-end",
footer: (0, _w.jsx)(el, {
size: "small",
variant: "plain",
icon: kI,
onClick: () => (() => {
const e = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
if (p(!1), l) return void a(`${yD.SETTINGS}/${yD.SETTINGS_DOWNLOAD}`);
s.actions.setAnimatingAppLayoutWipe("full", !0);
const t = setTimeout((() => {
a(`${yD.SETTINGS}/${yD.SETTINGS_DOWNLOAD}`)
}), e / 2);
return () => clearTimeout(t)
})(),
children: i("download_settings")
}),
fullWidth: !0,
trigger: (0, _w.jsx)(dl, {
"data-test-id": "download",
"data-sol-discover": "download",
icon: (0, _w.jsx)(Ks, {
source: c ? hI : MI,
isPlaying: void 0 !== u && !s.isDownloadPopoverOpened && !n
}),
label: e,
onMouseEnter: () => r(!0),
onMouseLeave: () => r(!1)
}),
open: s.isDownloadPopoverOpened,
onOpenChange: e => p(e),
children: o.installations.length > 0 ? o.installations.map(((e, t) => ((e, t) => {
var n;
return (0, _w.jsxs)(_w.Fragment, {
children: [0 !== e && (0, _w.jsx)($d, {
spacing: "100"
}), (0, _w.jsx)(Hd, {
title: `${t.game.gameName} - ${t.release?t.release.versionLabel+" - ":""}${t.game.channelId}`,
subtitle: i(`download_type_${t.type}`),
state: t.status,
actions: f(t),
progress: t.status === yw.InstallationStatus.IN_PROGRESS && null !== (n = o.progress) && void 0 !== n && n.showProgress ? o.progress.percentage : void 0,
stats: h(t)
}, `${t.game.gameId}-${t.game.channelId}`)]
})
})(t, e))) : i("download_empty")
})
},
UC = ({
title: e,
status: t,
label: n
}) => (0, _w.jsxs)(cl, {
as: "dl",
align: "center",
gap: "100",
justify: "space-between",
children: [(0, _w.jsx)(Ys, {
as: "dt",
color: "foreground-weak",
variant: "body-m",
children: e
}), (0, _w.jsx)(ap, {
as: "dd",
status: jw(t),
children: null !== n && void 0 !== n ? n : "-"
})]
}),
BC = e => ({
status: {
is: "",
cStateVersion: "",
apiVersion: "",
title: "",
languageCodeHTML: "",
languageCode: "",
baseURL: "",
description: "",
summaryStatus: void 0,
categories: [],
systems: [],
buildDate: "",
buildTime: "",
buildTimezone: "",
colorBrand: "",
colorOk: "",
colorDisrupted: "",
colorDown: "",
colorNotice: "",
alwaysKeepBrandColor: "",
logo: "",
googleAnalytics: "",
lastRequestDate: "",
intervalId: "",
actions: {
initializeStatus: async () => {
e((e => ({
status: {
...e.status,
is: "",
cStateVersion: "",
apiVersion: "",
title: "",
languageCodeHTML: "",
languageCode: "",
baseURL: "",
description: "",
summaryStatus: void 0,
categories: [],
systems: [],
buildDate: "",
buildTime: "",
buildTimezone: "",
colorBrand: "",
colorOk: "",
colorDisrupted: "",
colorDown: "",
colorNotice: "",
alwaysKeepBrandColor: "",
logo: "",
googleAnalytics: "",
lastRequestDate: "",
intervalId: ""
}
})))
},
checkStatus: async () => {
if (!pR.getState().status.intervalId) {
await GC();
const e = setInterval(GC, Aw(yw.configuration.requestPollingInterval.status.base, yw.configuration.requestPollingInterval.status.window));
pR.setState({
status: {
...pR.getState().status,
intervalId: e
}
})
}
}
}
}
}),
GC = async () => {
const {
application: e,
user: t,
status: n
} = pR.getState();
if (t.actions.isLoggedIn() || WC(n.intervalId), !e.isWindowMinimized)
if (e.actions.isOffline()) pR.setState((e => ({
...e,
status: {
...e.status,
is: "",
cStateVersion: "",
apiVersion: "",
title: "",
languageCodeHTML: "",
languageCode: "",
baseURL: "",
description: "",
summaryStatus: void 0,
categories: [],
systems: [],
buildDate: "",
buildTime: "",
buildTimezone: "",
colorBrand: "",
colorOk: "",
colorDisrupted: "",
colorDown: "",
colorNotice: "",
alwaysKeepBrandColor: "",
logo: "",
googleAnalytics: "",
lastRequestDate: "",
intervalId: ""
}
})));
else try {
const t = await aI.fetchQuery({
queryKey: ["rsiStatus"],
queryFn: async () => yE.status.getStatus(),
staleTime: 0
}),
n = null === t || void 0 === t ? void 0 : t.systems.filter((e => (e.name === yw.RSISystemName.PERSISTENTE_UNIVERSE || e.name === yw.RSISystemName.ARENA_COMMANDER) && e.status !== yw.RSISystemStatus.OPERATIONAL)).sort(((e, t) => yw.SystemStatusOrder[e.status.toUpperCase()] - yw.SystemStatusOrder[t.status.toUpperCase()])).map((e => e.status)).shift();
e.actions.setNonOperationalStatus(n), pR.setState((e => ({
...e,
status: {
...e.status,
...t,
lastRequestDate: (new Date).toISOString()
}
})))
} catch (r) {
console.error("ERROR", r)
}
}, WC = e => {
const t = pR.getState().application;
clearInterval(e), t.actions.setNonOperationalStatus(void 0), pR.setState((e => ({
...e,
status: {
...e.status,
is: "",
cStateVersion: "",
apiVersion: "",
title: "",
languageCodeHTML: "",
languageCode: "",
baseURL: "",
description: "",
summaryStatus: void 0,
categories: [],
systems: [],
buildDate: "",
buildTime: "",
buildTimezone: "",
colorBrand: "",
colorOk: "",
colorDisrupted: "",
colorDown: "",
colorNotice: "",
alwaysKeepBrandColor: "",
logo: "",
googleAnalytics: "",
lastRequestDate: "",
intervalId: ""
}
})))
}, $C = JSON.parse('{"v":"5.9.0","fr":30,"ip":0,"op":120,"w":16,"h":16,"nm":"icon_status_animated","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"i outlines - Orion style","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":50,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":52.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":54.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":56.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":58.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":60.01,"s":[10]},{"t":62.01171875,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[1,4,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.414,0],[0,0.414],[0,0],[0.414,0],[0,-0.414],[0,0]],"o":[[0.414,0],[0,0],[0,-0.414],[-0.414,0],[0,0],[0,0.414]],"v":[[0,2.625],[0.75,1.875],[0.75,-1.875],[0,-2.625],[-0.75,-1.875],[-0.75,1.875]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1,5.125],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0.414],[-0.414,0],[0,-0.414],[0.414,0]],"o":[[0,-0.414],[0.414,0],[0,0.414],[-0.414,0]],"v":[[-0.75,0],[0,-0.75],[0.75,0],[0,0.75]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1,1],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 2","np":2,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":6870.87087087087,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Cercle Outlines 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":50.021,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":52.022,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":54.024,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":56.026,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":58.028,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":60.03,"s":[10]},{"t":62.0322265625,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[8.86,8.86,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[3.512,0],[0,-3.513],[-3.513,0],[0,3.512]],"o":[[-3.513,0],[0,3.512],[3.512,0],[0,-3.513]],"v":[[0,-6.36],[-6.36,0],[0,6.36],[6.36,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":1,"lj":1,"ml":10,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[8.86,8.86],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.985],"y":[2.857]},"o":{"x":[0.159],"y":[0]},"t":30,"s":[100]},{"i":{"x":[0.735],"y":[3.042]},"o":{"x":[0.143],"y":[3.552]},"t":60.03,"s":[100]},{"t":90.060546875,"s":[100]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.709],"y":[1.164]},"o":{"x":[0.474],"y":[0.066]},"t":30,"s":[0]},{"i":{"x":[0.602],"y":[0.921]},"o":{"x":[0.314],"y":[0.13]},"t":60.03,"s":[78.782]},{"t":82,"s":[0]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.472],"y":[0.887]},"o":{"x":[0.51],"y":[0.095]},"t":30,"s":[-360]},{"t":90.060546875,"s":[720]}],"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":120,"st":0,"bm":0}],"markers":[]}'), qC = ({
labelItem: e
}) => {
const [t, n] = (0, Ee.useState)(!1), {
t: r
} = bt("status"), i = pR((e => e.status)), a = pR((e => e.application)), {
reduceMotion: {
unessentialAnimationsDisabled: o
}
} = Ns(), s = i.systems && i.systems.length > 0, l = a.connection.mode === yw.ConnectionMode.NO_CONNECTION, c = (0, Ee.useMemo)((() => {
if (!t && !a.isStatusPopoverOpened && i.summaryStatus && i.summaryStatus !== yw.RSISystemStatus.OPERATIONAL) return "status-" + jw(i.summaryStatus)
}), [t, a.isStatusPopoverOpened, i.summaryStatus]);
return (0, Ee.useEffect)((() => {
GC()
}), [a.connection.mode]), (0, _w.jsx)(ag, {
title: r("status_title"),
offset: "large",
placement: "bottom-end",
fullWidth: !0,
trigger: (0, _w.jsx)(dl, {
"data-test-id": "status",
"data-sol-discover": "status",
icon: (0, _w.jsx)(Ks, {
color: c,
source: o || l ? mI : $C,
isPlaying: !a.isStatusPopoverOpened && !t && i.summaryStatus !== yw.RSISystemStatus.OPERATIONAL
}),
label: e,
onMouseEnter: () => n(!0),
onMouseLeave: () => n(!1)
}),
open: a.isStatusPopoverOpened,
onOpenChange: e => {
a.actions.setStatusPopoverOpened(e)
},
footer: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(el, {
external: !0,
href: yw.configuration.statusUrl,
size: "small",
endIcon: yI,
variant: "plain",
children: r("status_more_information")
}), (0, _w.jsx)(Ys, {
color: "foreground-weak",
variant: "body-xs",
children: i.lastRequestDate ? r("status_last_updated", {
time: Pw(i.lastRequestDate, "relative")
}) : r("status_last_updated_empty")
})]
}),
children: (0, _w.jsx)(cl, {
vertical: !0,
gap: "100",
children: s ? i.systems.map((e => (0, _w.jsx)(UC, {
title: e.name,
status: e.status,
label: r("status_" + e.status)
}, e.name))) : r("status_empty")
})
})
};
class HC extends Error {}
const KC = async (e, t, n = !0) => {
const r = pR.getState().user;
if (!r.identity) throw new Error("Identification of the user cannot be retrieved");
try {
const n = await r.actions.getSession(e),
i = await aI.fetchQuery(((e, t, n) => ({
queryKey: [`gameToken-${e}-${t}-${n.value}`],
queryFn: async () => yE.games.getGameToken(e, t, n),
staleTime: Cw.day
}))(e, t, n));
return {
username: r.identity.username,
heapAccountId: r.identity.heapAccountId,
sessionToken: n,
gameToken: i
}
} catch (i) {
if (i instanceof IS && n) return r.actions.clearSession(e), KC(e, t, !1);
throw i
}
}, YC = (e, t, n) => {
const r = e.find((({
id: e
}) => e === t.gameId)),
i = null === r || void 0 === r ? void 0 : r.channels.find((({
id: e
}) => e === t.channelId));
if (!r || !i) return e;
const a = r.channels.filter((e => e.id !== t.channelId)),
o = {
...r,
channels: [...a, {
...i,
status: n
}]
};
return [...e.filter((e => e.id !== t.gameId)), o]
}, QC = e => ({
...e,
logo: void 0,
logoWide: void 0,
logoAnimation: void 0,
bgImage: void 0,
bgVideo: void 0
}), ZC = async e => {
try {
var t, n, r, i, a, o, s, l, c;
const u = pR.getState().settings,
{
gameId: d,
channelId: p,
gameName: h,
channelName: f,
platformId: m
} = e,
g = await aI.fetchQuery(NE(d, p)),
v = await u.actions.getChannelGameSettings({
platformId: m,
gameId: d,
gameName: h,
channelId: p,
channelName: f
});
return {
...g,
gameId: d,
gameName: h,
channelId: p,
channelName: f,
platformId: m,
libraryFolder: u.library.defaultLibraryFolder,
servicesEndpoint: null !== (t = null === v || void 0 === v ? void 0 : v.servicesEndpoint) && void 0 !== t ? t : g.servicesEndpoint,
installDir: null !== (n = null === v || void 0 === v ? void 0 : v.installDir) && void 0 !== n ? n : g.installDir,
eacSandbox: null !== (r = null === v || void 0 === v ? void 0 : v.eacSandbox) && void 0 !== r && r,
network: null !== (i = null === v || void 0 === v ? void 0 : v.network) && void 0 !== i ? i : g.network,
port: null !== (a = null !== (o = null === v || void 0 === v ? void 0 : v.port) && void 0 !== o ? o : g.universePort) && void 0 !== a ? a : 8e3,
hostname: null !== (s = null === v || void 0 === v ? void 0 : v.hostname) && void 0 !== s ? s : g.universeHost,
executable: null !== (l = null === v || void 0 === v ? void 0 : v.executable) && void 0 !== l ? l : g.executable,
launchOptions: null !== (c = null === v || void 0 === v ? void 0 : v.launchOptions) && void 0 !== c ? c : g.launchOptions
}
} catch (u) {
throw new HC("We could not get any information about the game")
}
}, XC = (e, t) => t > e, JC = {
LIVE: 20,
PTU: 19,
SHADOW: 18,
QA: 17,
DEV: 16,
EPTU: 15,
KOSMODROM: 14,
CANAVERAL: 13,
THE_OCHO: 12,
STARBASE: 11,
SQ42: 10
}, eA = (e, t) => (JC[t] || 0) - (JC[e] || 0), tA = "LIVE", nA = {
platformId: "prod",
gameId: "SC",
gameName: "Star Citizen",
channelId: tA,
channelName: "Live Release"
}, rA = (e = [], t = []) => ({
availableGames: t,
installedGames: e,
gameSelected: nA.gameId,
channelSelected: nA
}), iA = (e, t) => ({
library: {
...rA(),
actions: {
initializeLibrary: async () => {
const t = await window.launcherAPI.store.getValueFromStore("library.installed"),
n = await window.launcherAPI.store.getValueFromStore("library.available");
e((e => ({
library: {
...e.library,
...rA(t, n)
}
})))
},
setAvailableGames: t => {
var n;
const r = null !== (n = yw.configuration.assets.games) && void 0 !== n ? n : [],
i = yw.configuration.assets.directory,
a = t.map((e => {
const t = r.find((t => t.id === e.id));
return {
...e,
logo: i + (null === t || void 0 === t ? void 0 : t.logo),
logoWide: i + (null === t || void 0 === t ? void 0 : t.logoWide),
logoAnimation: i + (null === t || void 0 === t ? void 0 : t.logoAnimation),
bgImage: i + (null === t || void 0 === t ? void 0 : t.bgImage),
bgVideo: i + (null === t || void 0 === t ? void 0 : t.bgVideo)
}
}));
e((e => ({
library: {
...e.library,
availableGames: a
}
}))), window.launcherAPI.store.setValueToStore("library.available", a)
},
setGameSelected: t => e((e => ({
library: {
...e.library,
gameSelected: t
}
}))),
setGameChannelSelected: async t => {
e((e => ({
library: {
...e.library,
channelSelected: t
}
})));
const n = await ZC(t),
r = (await window.launcherAPI.store.getValueFromStore("library.defaults")).filter((e => e.gameId !== t.gameId));
window.launcherAPI.store.setValueToStore("library.defaults", [...r, t]);
const i = {
gameId: t.gameId,
channelId: t.channelId,
libraryFolder: n.libraryFolder,
installDir: n.installDir
};
window.launcherAPI.game.initializedWatcher(i)
},
getAvailableChannelsSorted: e => {
var n;
const {
availableGames: r
} = t().library, i = r.find((t => t.id === e));
return (null !== (n = null === i || void 0 === i ? void 0 : i.channels) && void 0 !== n ? n : []).sort(((e, t) => eA(e.id, t.id)))
},
getInstalledChannelsSorted: e => {
var n;
const {
installedGames: r
} = t().library, i = r.find((t => t.id === e));
return (null !== (n = null === i || void 0 === i ? void 0 : i.channels) && void 0 !== n ? n : []).sort(((e, t) => eA(e.id, t.id)))
},
getAvailableGamesChannelsWeightSorted: () => {
const {
availableGames: e
} = t().library;
return e.map((e => ({
...e,
channels: e.channels.sort(((e, t) => eA(e.id, t.id)))
})))
},
getAvailableChannel: e => {
const {
actions: n
} = t().library;
return n.getAvailableChannelsSorted(e.gameId).find((t => t.id === e.channelId))
},
getInstalledChannel: e => {
const {
actions: n
} = t().library;
return n.getInstalledChannelsSorted(e.gameId).find((t => t.id === e.channelId))
},
getChannels: e => t().library.actions.getAvailableChannelsSorted(e).map((e => ({
label: e.id,
description: e.versionLabel,
value: e.id
}))),
addInstalledGameChannel: async n => {
var r, i, a, o;
const {
library: s
} = t(), l = null !== (r = s.availableGames.find((({
id: e
}) => e === n.gameId))) && void 0 !== r ? r : null, c = null === l || void 0 === l ? void 0 : l.channels.find((({
id: e,
platformId: t
}) => e === n.channelId && t === n.platformId));
if (!c || !l) return;
const u = null !== (i = s.installedGames.find((({
id: e
}) => e === n.gameId))) && void 0 !== i ? i : null,
d = null !== (a = null === u || void 0 === u ? void 0 : u.channels.find((({
id: e
}) => e === n.channelId))) && void 0 !== a ? a : null;
if (d) return;
const p = {
...null !== u && void 0 !== u ? u : l,
channels: [...null !== (o = null === u || void 0 === u ? void 0 : u.channels) && void 0 !== o ? o : [], {
...c,
status: yw.GameChannelStatus.AVAILABLE
}]
};
e((e => ({
library: {
...e.library,
installedGames: [...e.library.installedGames.filter((e => e.id !== p.id)), p]
}
})))
},
saveInstalledGameChannel: async n => {
const {
library: r
} = t(), i = YC(r.installedGames, n, yw.GameChannelStatus.INSTALLED);
e((e => ({
library: {
...e.library,
installedGames: i
}
}))), window.launcherAPI.store.setValueToStore("library.installed", i.map(QC))
},
removeInstalledGameChannel: async n => {
var r, i;
const {
library: a
} = t(), o = null !== (r = a.installedGames.find((({
id: e
}) => e === n.gameId))) && void 0 !== r ? r : null, s = null !== (i = null === o || void 0 === o ? void 0 : o.channels.find((({
id: e
}) => e === n.channelId))) && void 0 !== i ? i : null;
if (!o || !s) return;
const l = {
...o,
channels: o.channels.filter((e => e.id !== n.channelId))
},
c = [...a.installedGames.filter((e => e.id !== l.id)), l];
e((e => ({
library: {
...e.library,
installedGames: c
}
}))), window.launcherAPI.store.setValueToStore("library.installed", c)
},
launchGame: async n => {
const {
library: r,
soundSystem: i,
dialog: a
} = t(), o = r.actions.getInstalledChannel(n);
if (!Dw(r.channelSelected.gameId, r.availableGames) || !o) return;
if (await window.launcherAPI.game.isGameProcessRunning()) await t().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_launch_game_running_title", {
ns: "errors"
}),
content: xt.t("error_launch_game_running_content", {
ns: "errors"
})
});
else try {
const t = await ZC(n);
if (XC(o.version, t.version)) {
const t = YC(r.installedGames, n, yw.GameChannelStatus.UPDATE_AVAILABLE);
return e((e => ({
library: {
...e.library,
installedGames: t
}
}))), window.launcherAPI.store.setValueToStore("library.installed", t), void await a.actions.showGameChannelUpdateAvailableDialog(n)
}
if (!await RE(n.gameId, n.channelId)) return;
const s = await KC(n.platformId, n.gameId),
l = Rw(),
c = {
...t,
libraryFolder: t.libraryFolder,
nickname: s.username,
token: s.sessionToken.value,
authToken: s.gameToken.token
};
i.actions.changeVolume(0, 2e3), l.window.setMinimizeWindow(), l.game.launchGame(c)
} catch (s) {
if (window.launcherAPI.log.error(`Not able to launch the game : ${s}`), s instanceof FS) return void await a.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_launch_account_not_found_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_launch_account_not_found_content",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.copyPTUAccountSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: s.code,
ns: "errors"
})
})]
})
});
if (s instanceof HC) return void await a.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_launch_check_update_unavailable_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_launch_check_update_unavailable_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: "6004",
ns: "errors"
})
})]
})
});
await pR.getState().dialog.actions.showAcknowledgeDialogErrorOccured({
title: xt.t("error_launch_unknown_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_launch_unknown_content",
t: xt.t,
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: yw.LauncherSpecificLaunchErrorCodes.ERR_LAUNCH_UNKNOWN,
ns: "errors"
})
})]
})
})
}
},
setLaunchGameSuccessfull(t) {
e((e => ({
agreements: {
...e.agreements,
warningHasBeenAccepted: !1
},
application: {
...e.application,
isGameRunning: t.isGameRunning
},
library: {
...e.library,
installedGames: YC(e.library.installedGames, t, yw.GameChannelStatus.RUNNING)
}
})))
},
async setLaunchGameFailed(n) {
const {
soundSystem: r
} = t(), {
payload: i
} = n, a = {
gameId: i.gameId,
channelId: i.channelId,
platformId: i.platformId,
gameName: i.gameName,
channelName: i.channelName
};
e((e => ({
application: {
...e.application,
isGameRunning: !1
},
library: {
...e.library,
installedGames: YC(e.library.installedGames, a, yw.GameChannelStatus.INSTALLED)
}
}))), r.actions.unmute(), window.launcherAPI.window.setRestoreWindow();
const o = (0, yw.serializerLaunchErrors)(n);
await xE((e => {
const t = pR.getState().installer,
{
gameId: n,
platformId: r,
channelId: i,
gameName: a,
channelName: o
} = e.payload,
s = {
gameId: n,
platformId: r,
channelId: i,
gameName: a,
channelName: o
};
switch (!0) {
case e instanceof yw.NoGameFilesError:
return {
handler: {
type: bE.DISPLAY_WARNING_DIALOG,
args: {
title: xt.t("error_launch_no_game_files_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_launch_no_game_files_content",
t: xt.t,
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
}),
primaryCallback: async () => {
t.actions.addInstallationToQueue(s, yw.InstallationType.VERIFY)
},
primaryLabel: xt.t("dialog_action_verify", {
ns: "dialog"
})
}
}, error: e
};
case e instanceof yw.EACError:
return {
handler: {
type: bE.DISPLAY_WARNING_DIALOG,
args: {
title: xt.t("error_launch_EAC_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_launch_EAC_content",
t: xt.t,
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
}),
primaryCallback: async () => {
t.actions.addInstallationToQueue(s, yw.InstallationType.VERIFY)
},
primaryLabel: xt.t("dialog_action_verify", {
ns: "dialog"
})
}
}, error: e
};
default:
return {
handler: {
type: bE.DISPLAY_WARNING_DIALOG,
args: {
title: xt.t("error_launch_unknown_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_launch_unknown_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_launch_error_code", {
code: e.code,
ns: "errors"
})
})]
}),
primaryCallback: async () => {
t.actions.addInstallationToQueue(s, yw.InstallationType.VERIFY)
},
primaryLabel: xt.t("dialog_action_verify", {
ns: "dialog"
})
}
}, error: e
}
}
})(o))
},
async setLaunchGameStopped(n) {
const {
soundSystem: r
} = t();
e((e => ({
application: {
...e.application,
isGameRunning: !1
},
library: {
...e.library,
installedGames: YC(e.library.installedGames, n, yw.GameChannelStatus.INSTALLED)
}
})));
const i = await ZC(n),
a = {
gameId: n.gameId,
channelId: n.channelId,
installDir: null === i || void 0 === i ? void 0 : i.installDir,
libraryFolder: null === i || void 0 === i ? void 0 : i.libraryFolder
};
r.actions.unmute(), window.launcherAPI.window.setRestoreWindow(), window.launcherAPI.game.initializedWatcher(a)
},
checkForGameChannelUpdates: async () => {
try {
const {
library: n
} = t(), r = await aI.fetchQuery(LE());
n.actions.setAvailableGames(r);
const i = e => e.channels.map((t => {
const n = null === r || void 0 === r ? void 0 : r.find((({
id: t
}) => t === e.id)),
i = null === n || void 0 === n ? void 0 : n.channels.find((({
id: e
}) => e === t.id));
return i && XC(t.version, i.version) ? {
...t,
versionLabel: i.versionLabel,
version: i.version,
status: yw.GameChannelStatus.UPDATE_AVAILABLE
} : t
})),
a = n.installedGames.map((e => ({
...e,
channels: i(e)
})));
e((e => ({
library: {
...e.library,
installedGames: a
}
})));
const o = n.installedGames.map((e => ({
...e,
channels: i(e).map((e => ({
...e,
status: e.status === yw.GameChannelStatus.RUNNING ? yw.GameChannelStatus.INSTALLED : e.status
})))
})));
window.launcherAPI.store.setValueToStore("library.installed", o)
} catch (OD) {
throw new HC
}
}
}
}
}), aA = (e, t) => ({
installer: {
installations: [],
uninstallations: [],
requirementsValidated: !1,
actions: {
initializeInstaller: () => {},
resetInstaller: () => {
e((e => ({
installer: {
...e.installer,
installations: [],
uninstallations: [],
requirementsValidated: !1
}
})))
},
addInstallationToQueue: (n, r) => {
const {
installer: i,
application: a
} = t();
IE(i.installations, n) || (e((e => ({
installer: {
...e.installer,
installations: [...e.installer.installations, {
game: n,
status: yw.InstallationStatus.WAITING,
type: r
}]
}
}))), a.actions.setDownloadPopoverOpened(!0), i.actions.processInstallationQueue())
},
processInstallationQueue: async () => {
const {
installer: e
} = t();
if (CE(e.installations)) return void console.info("Noting to process in queue since there is already an installation in progress");
const n = e.installations.filter((e => e.status === yw.InstallationStatus.WAITING));
if (0 === n.length) return;
const r = n[0];
await e.actions.startInstallation(r.game, {
skipRequirements: !0,
skipAnalitics: !1
})
},
clearCompletedInstallations: () => {
e((e => ({
installer: {
...e.installer,
installations: e.installer.installations.filter((e => e.status !== yw.InstallationStatus.COMPLETED && e.status !== yw.InstallationStatus.ERROR))
}
})))
},
startInstallation: async (n, r = {
skipRequirements: !1,
skipAnalitics: !1
}) => {
const {
installer: {
installations: i,
requirementsValidated: a,
actions: o
},
settings: s,
application: l,
library: c
} = t(), {
gameId: u,
gameName: d,
channelId: p,
channelName: h
} = n;
if (!a) {
l.actions.setDownloadPopoverOpened(!1);
const t = await RE();
if (l.actions.setDownloadPopoverOpened(!0), !t) return void o.cancelInstallation(n);
e((e => ({
installer: {
...e.installer,
requirementsValidated: !0
}
})))
}
const f = CE(i);
if (f && !PE(f.game, n)) return void console.warn(`Cannot start the installation of ${n} since the installer is already running`);
const m = IE(i, n);
if (m) try {
const t = await ZC(n);
e((e => ({
installer: {
...e.installer,
installations: i.map((e => PE(e.game, n) ? {
...e,
status: yw.InstallationStatus.IN_PROGRESS,
release: t
} : e))
}
}))), l.actions.setDownloadPopoverOpened(!0);
const a = {
...t,
gameName: d,
channelName: h,
libraryFolder: s.library.defaultLibraryFolder,
forcePatcher: !1,
verify: m.type === yw.InstallationType.VERIFY
};
if (Rw().installer.setInstall(a), c.actions.addInstalledGameChannel(n), !r.skipAnalitics) {
const e = {
[yw.InstallationType.INSTALL]: yw.AnalyticsEventName.APP_INSTALL_START,
[yw.InstallationType.VERIFY]: yw.AnalyticsEventName.APP_VERIFY_START,
[yw.InstallationType.UPDATE]: yw.AnalyticsEventName.APP_UPDATE_START
} [m.type];
window.launcherAPI.analytics.setAnalyticsEvent(e, {
Game: m.game.gameId,
Channel: m.game.channelId,
Environment: m.game.platformId
})
}
} catch (g) {
console.error("[Start Installation] Error : ", g)
} else console.warn(`Cannot start the installation of ${n} since the installation is not in queue`)
},
startUninstallation: async n => {
const {
dialog: r
} = t(), i = await ZC(n), a = await r.actions.showWarningUninstallDialog(i);
a.resolved && (console.log("Start the uninstallation for ", n, a), window.launcherAPI.installer.setUninstall(i, {
keepUserFolder: void 0 !== a.results.keepUserFolder
}), e((e => ({
installer: {
...e.installer,
uninstallations: [...e.installer.uninstallations, n]
}
}))))
},
cancelInstallation: async n => {
const {
application: r,
installer: i,
dialog: a
} = t(), o = IE(i.installations, n);
o ? o.status === yw.InstallationStatus.IN_PROGRESS || o.status === yw.InstallationStatus.PAUSED ? (r.actions.setDownloadPopoverOpened(!1), await a.actions.showGameCancelInstallationDialog(o)) : (e((e => ({
installer: {
...e.installer,
installations: TE(e.installer.installations, n)
}
}))), await i.actions.processInstallationQueue()) : console.warn("We could not clear the installation because the game is not in the queue")
},
removeInstallation: n => {
var r, i;
const {
installer: a
} = t(), o = IE(a.installations, n);
if (!o || !o.release) return void console.warn("We could not remove the installation because the game is not in the queue");
const s = {
...o.release,
gameName: o.game.gameName,
channelName: o.game.channelName,
libraryFolder: o.release.libraryFolder,
forcePatcher: !1,
verify: o.type === yw.InstallationType.VERIFY
},
l = o.type !== yw.InstallationType.INSTALL || null !== (r = null === (i = o.options) || void 0 === i ? void 0 : i.keepFilesOnCancel) && void 0 !== r && r;
window.launcherAPI.installer.setInstallCancel(s, {
keepFiles: l
}), e((e => ({
installer: {
...e.installer,
progress: void 0,
installations: o.type === yw.InstallationType.INSTALL ? DE(e.installer.installations, n, yw.InstallationStatus.CANCELLING) : TE(e.installer.installations, n)
}
})));
const c = {
[yw.InstallationType.INSTALL]: yw.AnalyticsEventName.APP_INSTALL_STOP,
[yw.InstallationType.VERIFY]: yw.AnalyticsEventName.APP_VERIFY_STOP,
[yw.InstallationType.UPDATE]: yw.AnalyticsEventName.APP_UPDATE_STOP
} [o.type];
window.launcherAPI.analytics.setAnalyticsEvent(c, {
Game: o.game.gameId,
Channel: o.game.channelId,
Environment: o.game.platformId
})
},
pauseInstallation: n => {
const {
installer: {
installations: r,
progress: i
}
} = t(), a = IE(r, n);
if (a && a.status !== yw.InstallationStatus.PAUSED) {
if (e((e => ({
installer: {
...e.installer,
progress: e.installer.progress ? {
...e.installer.progress,
speed: "0"
} : void 0,
installations: DE(e.installer.installations, n, yw.InstallationStatus.PAUSED)
}
}))), null !== i && void 0 !== i && i.isPausable) return window.launcherAPI.installer.setInstallPause()
} else console.warn("We could not pause the installation because the game is not in the queue or is already pause")
},
resumeInstallation: n => {
const {
installer: {
installations: r
}
} = t(), i = IE(r, n);
if (i && i.status === yw.InstallationStatus.PAUSED) return e((e => ({
installer: {
...e.installer,
installations: DE(e.installer.installations, n, yw.InstallationStatus.IN_PROGRESS)
}
}))), window.launcherAPI.installer.setInstallResume();
console.warn("We could not resume the installation because the game is not in the queue")
},
retryFailedInstallation: n => {
var r;
const {
installer: {
installations: i
}
} = t(), a = IE(i, n);
a && a.status === yw.InstallationStatus.ERROR ? 0 !== (null === (r = a.options) || void 0 === r ? void 0 : r.numberOfRetriesLeft) && e((e => {
var t, r;
return {
installer: {
...e.installer,
installations: DE(e.installer.installations, n, yw.InstallationStatus.WAITING, {
...a.options,
numberOfRetriesLeft: (null !== (t = null === (r = a.options) || void 0 === r ? void 0 : r.numberOfRetriesLeft) && void 0 !== t ? t : 3) - 1
})
}
}
})) : console.warn("We could not resume the installation because the game is not in the queue")
},
setInstallationOptions: (n, r) => {
const {
installer: {
installations: i
}
} = t();
IE(i, n) ? e((e => ({
installer: {
...e.installer,
installations: e.installer.installations.map((e => PE(e.game, n) ? {
...e,
options: r
} : e))
}
}))) : console.warn("We could not set options to the installation because the game is not in the queue")
},
setInstallationProgress: n => {
const {
installer: {
installations: r,
progress: i
}
} = t();
CE(r) ? e((e => ({
installer: {
...e.installer,
progress: EE(n, i)
}
}))) : console.warn("We could not update info about download progression since there is no installation in progress")
},
setInstallationSuccess: async n => {
const {
installer: r,
library: i,
settings: a
} = t();
if (!r.progress) return void console.warn("We could not end the installation because the event is strange", n);
const o = {
gameId: n.gameId,
gameName: n.gameName,
channelId: n.channelId,
channelName: n.channelName,
platformId: n.platformId
},
s = IE(r.installations, o);
if (!s) return void console.warn("We could not end the installation because the game is not in the queue");
if (n.isInitialDownload) return e((e => ({
installer: {
...e.installer,
progress: void 0
}
}))), void r.actions.startInstallation(s.game, {
skipRequirements: !0,
skipAnalitics: !0
});
e((e => ({
installer: {
...e.installer,
progress: void 0,
installations: DE(e.installer.installations, o, yw.InstallationStatus.COMPLETED)
}
}))), r.actions.setInstallSuccessToast(s.game), i.actions.saveInstalledGameChannel(o);
const l = {
...s.game,
installDir: s.release.installDir
};
await a.actions.saveChannelGameSettings(l), await r.actions.processInstallationQueue();
const c = {
[yw.InstallationType.INSTALL]: yw.AnalyticsEventName.APP_INSTALL_SUCCESS,
[yw.InstallationType.VERIFY]: yw.AnalyticsEventName.APP_VERIFY_SUCCESS,
[yw.InstallationType.UPDATE]: yw.AnalyticsEventName.APP_UPDATE_SUCCESS
} [s.type];
window.launcherAPI.analytics.setAnalyticsEvent(c, {
Game: s.game.gameId,
Channel: s.game.channelId,
Environment: s.game.platformId
})
},
setInstallationFailed: async n => {
const {
installer: r,
application: i
} = t(), a = IE(r.installations, n.payload);
if (!a) return void console.warn("We could not clear the installation because the game is not in the queue");
i.actions.setDownloadPopoverOpened(!1), e((e => ({
installer: {
...e.installer,
progress: void 0,
installations: DE(e.installer.installations, a.game, yw.InstallationStatus.ERROR)
}
})));
const o = (0, yw.serializerInstallerErrors)(n);
await xE((e => {
var t, n, r;
const i = pR.getState().installer,
a = pR.getState().library,
{
gameId: o,
platformId: s,
channelId: l,
gameName: c,
channelName: u
} = e.payload,
d = null !== (t = {
gameId: o,
gameName: c,
channelId: l,
channelName: u,
platformId: s
}) && void 0 !== t ? t : a.channelSelected,
p = IE(i.installations, d);
switch (!0) {
case e instanceof yw.InvalidMDFileError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_basepack_invalid_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_basepack_invalid_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.InvalidMDFileHeaderError:
case e instanceof yw.NotMappedError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_init_download_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_generic_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.DiskFullError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_disc_full_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_disc_full_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.WritePermissionsError:
return {
handler: {
type: bE.DISPLAY_WARNING_DIALOG,
args: {
title: xt.t("error_installer_permissions_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_permissions_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
}),
primaryCallback: async () => {
await i.actions.setPermissions(d)
},
primaryLabel: xt.t("error_installer_permissions_action", {
ns: "errors"
})
}
}, error: e
};
case e instanceof yw.FileInUseError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_file_in_use_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_file_in_use_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.Pk4CorruptedError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_pk4_corrupted_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_pk4_corrupted_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.RetrieveManifestError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_retrieve_manifest_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_retrieve_manifest_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.PatcherUnknownNetworkError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_unknown_network_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_unknown_network_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.BasePackP4kCorruptedError:
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: xt.t("error_installer_base_p4k_corrupted_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_base_p4k_corrupted_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
})
}
}, error: e
};
case e instanceof yw.DownloadUnsuccessfullError:
return [{
handler: {
type: bE.DISPLAY_WARNING_DIALOG,
skip: void 0 !== (null === p || void 0 === p || null === (n = p.options) || void 0 === n ? void 0 : n.numberOfRetriesLeft) && (null === p || void 0 === p || null === (r = p.options) || void 0 === r ? void 0 : r.numberOfRetriesLeft) > 0,
args: {
title: xt.t("error_installer_base_p4k_corrupted_title", {
ns: "errors"
}),
content: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_base_p4k_corrupted_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
}),
primaryCallback: async () => {
i.actions.addInstallationToQueue(d, yw.InstallationType.VERIFY)
},
primaryLabel: xt.t("dialog_action_verify", {
ns: "dialog"
})
}
},
error: e
}];
default:
const t = () => e.code === yw.InitialDownloadErrorsNames.ERR_INIT_UNKNOWN ? xt.t("error_installer_init_download_title", {
ns: "errors"
}) : e.code === yw.PatcherErrorsNames.ERR_PATCHER_UNKNOWN ? xt.t("error_installer_patcher_title", {
ns: "errors"
}) : xt.t("error_installer_title", {
ns: "errors"
}),
a = () => e.code === yw.PatcherErrorsNames.ERR_PATCHER_UNKNOWN ? (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_installer_patcher_generic_content",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.installerErrorKnowledgeDatabaseUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
}) : (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)(Ys, {
children: xt.t("error_installer_generic_content", {
ns: "errors"
})
}), (0, _w.jsx)(Ys, {
children: (0, _w.jsx)(ft, {
i18nKey: "error_report_bug",
t: xt.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})]
})
}), (0, _w.jsx)(Ys, {
children: xt.t("error_installer_error_code", {
code: e.code,
ns: "errors"
})
})]
});
return {
handler: {
type: bE.DISPLAY_ACKNOWLEDGE_DIALOG,
args: {
title: t(),
content: a()
}
}, error: e
}
}
})(o)), i.actions.setDownloadPopoverOpened(!0), await r.actions.processInstallationQueue();
const s = {
[yw.InstallationType.INSTALL]: yw.AnalyticsEventName.APP_INSTALL_ERROR,
[yw.InstallationType.VERIFY]: yw.AnalyticsEventName.APP_VERIFY_ERROR,
[yw.InstallationType.UPDATE]: yw.AnalyticsEventName.APP_UPDATE_ERROR
} [a.type];
window.launcherAPI.analytics.setAnalyticsEvent(s, {
Game: a.game.gameId,
Channel: a.game.channelId,
Environment: a.game.platformId,
ErrorCode: o.code,
ErrorMessage: o.message
})
},
setCancelationSuccess: async () => {
const {
installer: n,
toasts: r
} = t(), i = AE(n.installations);
i && e((e => ({
installer: {
...e.installer,
progress: void 0,
installations: [...TE(e.installer.installations, i.game)]
}
}))), r.actions.add({
type: "negative",
title: _e.t("download_toast_install_cancel_success", {
ns: "download"
}),
icon: fI
}), await n.actions.processInstallationQueue()
},
setCancelationFailed: async n => {
const {
installer: r
} = t(), i = AE(r.installations);
i && e((e => ({
installer: {
...e.installer,
progress: void 0,
installations: [...TE(e.installer.installations, i.game)]
}
}))), await r.actions.processInstallationQueue()
},
setUninstallationSuccess: async n => {
const {
installer: r,
library: i,
settings: a
} = t();
OE(r.uninstallations, n) ? (e((e => ({
installer: {
...e.installer,
uninstallations: e.installer.uninstallations.filter((e => e.channelId !== n.channelId && e.gameId !== n.gameId))
}
}))), i.actions.removeInstalledGameChannel(n), await a.actions.resetChannelGameSettings(n), window.launcherAPI.analytics.setAnalyticsEvent(yw.AnalyticsEventName.APP_UNINSTALL_SUCCESS, {
Game: n.gameId,
Channel: n.channelId,
Environment: n.platformId
}), r.actions.setUninstallSuccessToast(n)) : console.warn("We could not end the uninstallation because the channel was not process", n)
},
setUninstallationFailed: n => {
const {
installer: r
} = t(), {
payload: i
} = n, a = OE(r.uninstallations, i);
a ? (e((e => ({
installer: {
...e.installer,
uninstallations: e.installer.uninstallations.filter((e => e.channelId !== i.channelId && e.gameId !== i.gameId))
}
}))), window.launcherAPI.analytics.setAnalyticsEvent(yw.AnalyticsEventName.APP_UNINSTALL_ERROR, {
Game: a.gameId,
Channel: a.channelId,
Environment: a.platformId,
ErrorCode: n.code,
ErrorMessage: n.message
}), r.actions.setUninstallFailToast(i)) : console.warn("We could not clear the uninstallation because the game is not in the queue")
},
setPermissions: async e => {
const t = await KC(e.platformId, e.gameId),
n = {
...await ZC(e),
nickname: t.username,
token: t.sessionToken.value,
authToken: t.gameToken.token
};
window.launcherAPI.installer.setFixPermissions(n)
},
setInstallSuccessToast: e => {
const {
installer: {
installations: n
},
toasts: r
} = t(), i = IE(n, e);
if (!i || i.status !== yw.InstallationStatus.COMPLETED) return void console.warn("We could not display the sucess toast because the installation the game is not in the queue or is not completed");
return r.actions.add({
title: (() => {
switch (i.type) {
case yw.InstallationType.INSTALL:
return _e.t("download_toast_install_success", {
ns: "download"
});
case yw.InstallationType.VERIFY:
return _e.t("download_toast_verify_success", {
ns: "download"
});
case yw.InstallationType.UPDATE:
return _e.t("download_toast_update_success", {
ns: "download"
})
}
})(),
type: "positive",
closeOnClick: !1
})
},
setUninstallSuccessToast: e => {
const {
toasts: n
} = t();
return n.actions.add({
title: _e.t("download_toast_uninstall_success", {
ns: "download",
game: e.gameName,
channel: e.channelName
}),
type: "positive",
closeOnClick: !1
})
},
setUninstallFailToast: e => {
const {
toasts: n
} = t();
return n.actions.add({
title: _e.t("download_toast_uninstall_fail", {
ns: "download",
game: e.gameName,
channel: e.channelName
}),
type: "negative",
closeOnClick: !1
})
}
}
}
}), oA = () => {
var e, t, n, r, i, a;
const o = bC(),
{
t: s
} = bt("appHeader"),
l = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)),
{
window: {
setMinimizeWindow: c
}
} = Rw(),
u = pR((e => e.application)),
d = pR((e => e.user)),
p = pR((e => e.soundSystem)),
h = pR((e => e.window)),
f = pR((e => e.installer)),
{
wipeAnimationsDisabled: m
} = Ns().reduceMotion,
{
isLoggedIn: g
} = d.actions,
v = void 0 !== CE(f.installations),
y = (0, Ee.useMemo)((() => {
var e;
const t = null === (e = d.identity) || void 0 === e ? void 0 : e.avatar;
return t ? t.match(/^https?:\/\//) ? t : fR(t) : yw.configuration.assets.avatar.defaultUrl
}), [null === (e = d.identity) || void 0 === e ? void 0 : e.avatar]),
_ = (0, Ee.useMemo)((() => yw.configuration.assets.directory + yw.configuration.assets.avatar.defaultLocal), []),
b = (0, Ee.useMemo)((() => {
var e;
const t = null === (e = d.identity) || void 0 === e ? void 0 : e.nickname;
return t ? fR(`/citizens/${t}`) : yw.configuration.playnowUrl
}), [null === (t = d.identity) || void 0 === t ? void 0 : t.nickname]);
return (0, _w.jsxs)(hl, {
children: [(0, _w.jsxs)(Jm, {
offset: "large",
trigger: (0, _w.jsx)(dl, {
"data-test-id": "rsi-menu",
"data-sol-discover": "menu",
endIcon: lI,
label: s("app_header_menu"),
children: (0, _w.jsx)(og, {})
}),
children: [g() && (0, _w.jsx)(Zm, {
onClick: () => {
if (m) return void o(yD.SETTINGS);
u.actions.setAnimatingAppLayoutWipe("full", !0);
const e = setTimeout((() => {
o(yD.SETTINGS)
}), l / 2);
return () => clearTimeout(e)
},
label: s("app_header_menu_settings"),
disabled: window.location.hash.includes(yD.SETTINGS)
}), (0, _w.jsx)(Zm, {
external: !0,
endIcon: yI,
href: yw.configuration.supportUrl,
label: s("app_header_menu_get_help"),
"data-test-id": "rsi-menu-help"
}), (0, _w.jsx)(Zm, {
external: !0,
endIcon: yI,
href: yw.configuration.spectrumUrl,
label: s("app_header_menu_spectrum")
}), (0, _w.jsx)(Zm, {
external: !0,
endIcon: yI,
href: yw.configuration.issueCouncilUrl,
label: s("app_header_menu_issue_council")
}), g() && (0, _w.jsx)(Zm, {
label: s("app_header_menu_discover"),
"data-test-id": "rsi-menu-discover",
onClick: () => {
if (window.location.hash.includes(yD.SETTINGS)) {
if (m) return void o(yD.HOME);
u.actions.setAnimatingAppLayoutWipe("full", !0);
const e = setTimeout((() => {
o(yD.HOME), h.actions.openDiscover()
}), l / 2);
return () => clearTimeout(e)
}
h.actions.openDiscover()
},
disabled: v
}), (0, _w.jsx)(Zm, {
label: s("app_header_menu_exit_the_app"),
"data-test-id": "rsi-menu-exit",
onClick: e => {
e.preventDefault(), h.actions.exitLauncher()
}
})]
}), (0, _w.jsx)(sv, {
value: p.volume,
label: s("app_header_volume"),
muteLabel: s("app_header_volume_mute"),
unmuteLabel: s("app_header_volume_unmute"),
onChange: e => {
p.actions.changeVolume(e)
}
}), (0, _w.jsxs)(ul, {
children: [g() && (0, _w.jsxs)(_w.Fragment, {
children: [u.actions.isOffline() && (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(NI, {}), (0, _w.jsx)(pl, {})]
}), (0, _w.jsx)(qC, {
labelItem: s("app_header_actions_menu_rsi_status")
}), (0, _w.jsx)(pl, {}), (0, _w.jsx)(VC, {
labelItem: s("app_header_actions_download")
}), (0, _w.jsxs)(Jm, {
offset: "large",
placement: "bottom-end",
trigger: (0, _w.jsx)(dl, {
"data-test-id": "avatar-menu",
"data-sol-discover": "user-profile",
hasAvatar: !0,
label: s("app_header_account"),
children: (0, _w.jsx)(ml, {
"data-test-id": "avatar-img",
src: u.actions.isOffline() ? _ : y
})
}),
children: [(0, _w.jsx)(Xm, {
"data-test-id": "avatar-nickname",
title: null !== (n = null === (r = d.identity) || void 0 === r ? void 0 : r.displayName) && void 0 !== n ? n : s("app_header_account_moniker"),
subtitle: null !== (i = `@${null===(a=d.identity)||void 0===a?void 0:a.nickname}`) && void 0 !== i ? i : s("app_header_account_name")
}), (0, _w.jsx)(Zm, {
external: !0,
href: b,
endIcon: yI,
label: s("app_header_actions_menu_rsi_account"),
"data-test-id": "avatar-url"
}), (0, _w.jsx)(Zm, {
"data-test-id": "avatar-logout",
label: s("app_header_actions_menu_log_out"),
onClick: e => {
e.preventDefault(), h.actions.logoutLauncher()
}
})]
})]
}), (0, _w.jsx)(dl, {
alwaysOnTop: !0,
"aria-label": "Minimize",
onClick: c,
disableFocus: !0,
icon: vI
}), (0, _w.jsx)(dl, {
alwaysOnTop: !0,
"aria-label": "Close",
onClick: e => {
e.preventDefault(), h.actions.closeLauncher()
},
disableFocus: !0,
icon: dI
})]
})]
})
}, sA = () => {
const [e, t] = (0, Ee.useState)("");
return (0, Ee.useEffect)((() => {
const e = setTimeout((() => t("in")), yw.configuration.appLayoutLoaderWipeTrigger);
return () => clearTimeout(e)
}), []), (0, _w.jsx)(fl, {
className: "sol-u-animation-wipe",
"data-sol-animation-wipe": e,
children: (0, _w.jsx)(Hm, {})
})
}, lA = () => {
const e = pR((e => e.autoUpdate));
return CR(), (0, _w.jsx)(Wd, {
...e.dialog
})
};
var cA = function() {
return cA = Object.assign || function(e) {
for (var t, n = 1, r = arguments.length; n < r; n++)
for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);
return e
}, cA.apply(this, arguments)
},
uA = function(e, t) {
var n = {};
for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);
if (null != e && "function" === typeof Object.getOwnPropertySymbols) {
var i = 0;
for (r = Object.getOwnPropertySymbols(e); i < r.length; i++) t.indexOf(r[i]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[i]) && (n[r[i]] = e[r[i]])
}
return n
},
dA = Symbol("NiceModalId"),
pA = {},
hA = Ee.createContext(pA),
fA = Ee.createContext(null),
mA = {},
gA = {},
vA = 0,
yA = function() {
throw new Error("No dispatch method detected, did you embed your app with NiceModal.Provider?")
},
_A = function() {
return "_nice_modal_" + vA++
},
bA = function(e, t) {
var n, r, i;
switch (void 0 === e && (e = pA), t.type) {
case "nice-modal/show":
var a = t.payload,
o = a.modalId,
s = a.args;
return cA(cA({}, e), ((n = {})[o] = cA(cA({}, e[o]), {
id: o,
args: s,
visible: !!gA[o],
delayVisible: !gA[o]
}), n));
case "nice-modal/hide":
return e[o = t.payload.modalId] ? cA(cA({}, e), ((r = {})[o] = cA(cA({}, e[o]), {
visible: !1
}), r)) : e;
case "nice-modal/remove":
o = t.payload.modalId;
var l = cA({}, e);
return delete l[o], l;
case "nice-modal/set-flags":
var c = t.payload,
u = (o = c.modalId, c.flags);
return cA(cA({}, e), ((i = {})[o] = cA(cA({}, e[o]), u), i));
default:
return e
}
};
var xA = {},
kA = {},
wA = function(e) {
return "string" === typeof e ? e : (e[dA] || (e[dA] = _A()), e[dA])
};
function SA(e, t) {
var n = wA(e);
if ("string" === typeof e || mA[n] || CA(n, e), yA(function(e, t) {
return {
type: "nice-modal/show",
payload: {
modalId: e,
args: t
}
}
}(n, t)), !xA[n]) {
var r, i, a = new Promise((function(e, t) {
r = e, i = t
}));
xA[n] = {
resolve: r,
reject: i,
promise: a
}
}
return xA[n].promise
}
function EA(e) {
var t = wA(e);
if (yA(function(e) {
return {
type: "nice-modal/hide",
payload: {
modalId: e
}
}
}(t)), delete xA[t], !kA[t]) {
var n, r, i = new Promise((function(e, t) {
n = e, r = t
}));
kA[t] = {
resolve: n,
reject: r,
promise: i
}
}
return kA[t].promise
}
var IA = function(e) {
var t = wA(e);
yA(function(e) {
return {
type: "nice-modal/remove",
payload: {
modalId: e
}
}
}(t)), delete xA[t], delete kA[t]
};
function OA(e, t) {
var n = (0, Ee.useContext)(hA),
r = (0, Ee.useContext)(fA),
i = null,
a = e && "string" !== typeof e;
if (!(i = e ? wA(e) : r)) throw new Error("No modal id found in NiceModal.useModal.");
var o = i;
(0, Ee.useEffect)((function() {
a && !mA[o] && CA(o, e, t)
}), [a, o, e, t]);
var s = n[o],
l = (0, Ee.useCallback)((function(e) {
return SA(o, e)
}), [o]),
c = (0, Ee.useCallback)((function() {
return EA(o)
}), [o]),
u = (0, Ee.useCallback)((function() {
return IA(o)
}), [o]),
d = (0, Ee.useCallback)((function(e) {
var t;
null === (t = xA[o]) || void 0 === t || t.resolve(e), delete xA[o]
}), [o]),
p = (0, Ee.useCallback)((function(e) {
var t;
null === (t = xA[o]) || void 0 === t || t.reject(e), delete xA[o]
}), [o]),
h = (0, Ee.useCallback)((function(e) {
var t;
null === (t = kA[o]) || void 0 === t || t.resolve(e), delete kA[o]
}), [o]);
return (0, Ee.useMemo)((function() {
return {
id: o,
args: null === s || void 0 === s ? void 0 : s.args,
visible: !!(null === s || void 0 === s ? void 0 : s.visible),
keepMounted: !!(null === s || void 0 === s ? void 0 : s.keepMounted),
show: l,
hide: c,
remove: u,
resolve: d,
reject: p,
resolveHide: h
}
}), [o, null === s || void 0 === s ? void 0 : s.args, null === s || void 0 === s ? void 0 : s.visible, null === s || void 0 === s ? void 0 : s.keepMounted, l, c, u, d, p, h])
}
var CA = function(e, t, n) {
mA[e] ? mA[e].props = n : mA[e] = {
comp: t,
props: n
}
},
AA = function() {
var e = (0, Ee.useContext)(hA),
t = Object.keys(e).filter((function(t) {
return !!e[t]
}));
t.forEach((function(e) {
mA[e] || gA[e] || console.warn("No modal found for id: " + e + ". Please check the id or if it is registered or declared via JSX.")
}));
var n = t.filter((function(e) {
return mA[e]
})).map((function(e) {
return cA({
id: e
}, mA[e])
}));
return Ee.createElement(Ee.Fragment, null, n.map((function(e) {
return Ee.createElement(e.comp, cA({
key: e.id,
id: e.id
}, e.props))
})))
},
PA = function(e) {
var t = e.children,
n = (0, Ee.useReducer)(bA, pA),
r = n[0];
return yA = n[1], Ee.createElement(hA.Provider, {
value: r
}, t, Ee.createElement(AA, null))
},
TA = function(e) {
return {
visible: e.visible,
onOk: function() {
return e.hide()
},
onCancel: function() {
return e.hide()
},
afterClose: function() {
e.resolveHide(), e.keepMounted || e.remove()
}
}
},
RA = function(e) {
return {
visible: e.visible,
onClose: function() {
return e.hide()
},
afterVisibleChange: function(t) {
t || e.resolveHide(), !t && !e.keepMounted && e.remove()
}
}
},
DA = {
Provider: function(e) {
var t = e.children,
n = e.dispatch,
r = e.modals;
return n && r ? (yA = n, Ee.createElement(hA.Provider, {
value: r
}, t, Ee.createElement(AA, null))) : Ee.createElement(PA, null, t)
},
ModalDef: function(e) {
var t = e.id,
n = e.component;
return (0, Ee.useEffect)((function() {
return CA(t, n),
function() {
! function(e) {
delete mA[e]
}(t)
}
}), [t, n]), null
},
ModalHolder: function(e) {
var t, n = e.modal,
r = e.handler,
i = void 0 === r ? {} : r,
a = uA(e, ["modal", "handler"]),
o = (0, Ee.useMemo)((function() {
return _A()
}), []),
s = "string" === typeof n ? null === (t = mA[n]) || void 0 === t ? void 0 : t.comp : n;
if (!i) throw new Error("No handler found in NiceModal.ModalHolder.");
if (!s) throw new Error("No modal found for id: " + n + " in NiceModal.ModalHolder.");
return i.show = (0, Ee.useCallback)((function(e) {
return SA(o, e)
}), [o]), i.hide = (0, Ee.useCallback)((function() {
return EA(o)
}), [o]), Ee.createElement(s, cA({
id: o
}, a))
},
NiceModalContext: hA,
create: function(e) {
return function(t) {
var n, r = t.defaultVisible,
i = t.keepMounted,
a = t.id,
o = uA(t, ["defaultVisible", "keepMounted", "id"]),
s = OA(a),
l = s.args,
c = s.show,
u = (0, Ee.useContext)(hA),
d = !!u[a];
(0, Ee.useEffect)((function() {
return r && c(), gA[a] = !0,
function() {
delete gA[a]
}
}), [a, c, r]), (0, Ee.useEffect)((function() {
i && yA(function(e, t) {
return {
type: "nice-modal/set-flags",
payload: {
modalId: e,
flags: t
}
}
}(a, {
keepMounted: !0
}))
}), [a, i]);
var p = null === (n = u[a]) || void 0 === n ? void 0 : n.delayVisible;
return (0, Ee.useEffect)((function() {
p && c(l)
}), [p, l, c]), d ? Ee.createElement(fA.Provider, {
value: a
}, Ee.createElement(e, cA({}, o, l))) : null
}
},
register: CA,
getModal: function(e) {
var t;
return null === (t = mA[e]) || void 0 === t ? void 0 : t.comp
},
show: SA,
hide: EA,
remove: IA,
useModal: OA,
reducer: bA,
antdModal: TA,
antdDrawer: RA,
muiDialog: function(e) {
return {
open: e.visible,
onClose: function() {
return e.hide()
},
onExited: function() {
e.resolveHide(), !e.keepMounted && e.remove()
}
}
},
bootstrapDialog: function(e) {
return {
show: e.visible,
onHide: function() {
return e.hide()
},
onExited: function() {
e.resolveHide(), !e.keepMounted && e.remove()
}
}
}
};
const LA = DA,
NA = LA.create((({
title: e,
content: t,
primaryCallback: n,
primaryLabel: r,
typeDialog: i
}) => {
const a = OA(),
{
t: o
} = bt(["dialog"]),
s = {
close: !1,
label: null !== r && void 0 !== r ? r : o("dialog_action_ok", {
ns: "dialog"
}),
onClick: () => {
null === n || void 0 === n || n(), a.resolve({
resolved: !0
}), a.hide()
}
};
return (0, _w.jsx)(Wd, {
open: a.visible,
onOpenChange: e => a[e ? "show" : "hide"](),
title: e,
type: null !== i && void 0 !== i ? i : "negative",
close: o("dialog_action_close"),
actions: [s],
children: t
})
}));
LA.register("acknowledgement-dialog", NA);
const MA = LA.create((({
title: e,
content: t,
primaryCallback: n,
primaryLabel: r,
typeDialog: i,
secondaryCallback: a,
secondaryLabel: o
}) => {
const s = OA(),
{
t: l
} = bt(["dialog"]),
c = [{
label: null !== o && void 0 !== o ? o : l("dialog_warning_back_launcher", {
ns: "dialog"
}),
close: !1,
onClick: () => {
null === a || void 0 === a || a(), s.resolve({
resolved: !1
}), s.hide()
}
}, {
label: null !== r && void 0 !== r ? r : l("dialog_action_confirm", {
ns: "dialog"
}),
type: "submit",
form: "exitAppForm",
close: !1
}];
return (0, _w.jsx)(Wd, {
open: s.visible,
onOpenChange: e => s[e ? "show" : "hide"](),
title: e,
type: null !== i && void 0 !== i ? i : "negative",
close: l("dialog_action_close"),
actions: c,
children: (0, _w.jsx)("form", {
id: "exitAppForm",
onSubmit: e => {
e.preventDefault();
const t = e.target,
r = new FormData(t),
i = Object.fromEntries(r.entries());
s.resolve({
resolved: !0,
results: i
}), s.hide(), null === n || void 0 === n || n()
},
children: t
})
})
}));
LA.register("form-dialog", MA);
const jA = LA.create((({
title: e,
content: t,
primaryCallback: n,
primaryLabel: r,
typeDialog: i,
secondaryCallback: a,
secondaryLabel: o,
disablePrimaryUntilScrolled: s
}) => {
const l = OA(),
{
t: c
} = bt(["dialog"]),
u = {
label: null !== o && void 0 !== o ? o : c("dialog_warning_back_launcher", {
ns: "dialog"
}),
close: !1,
onClick: () => {
null === a || void 0 === a || a(), l.resolve({
resolved: !1
}), l.hide()
}
},
d = {
label: null !== r && void 0 !== r ? r : c("dialog_action_confirm", {
ns: "dialog"
}),
close: !1,
disabledUntilScrolled: s,
onClick: () => {
null === n || void 0 === n || n(), l.resolve({
resolved: !0
}), l.hide()
}
};
return (0, _w.jsx)(Wd, {
open: l.visible,
onOpenChange: e => l[e ? "show" : "hide"](),
title: e,
type: null !== i && void 0 !== i ? i : "negative",
close: c("dialog_action_close"),
actions: [u, d],
children: t
})
}));
LA.register("warning-confirm-dialog", jA);
const FA = e => {
var t, n, r;
const i = pR((e => e.library)),
a = pR((e => e.application)),
o = null !== (t = null === (n = a.animations) || void 0 === n || null === (r = n.appLayoutWipe) || void 0 === r ? void 0 : r.isAnimating) && void 0 !== t && t,
{
wipeAnimationsDisabled: s
} = Ns().reduceMotion,
l = bC(),
c = kC(),
{
t: u
} = bt("gamePage"),
d = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)),
[p, h] = (0, Ee.useState)(c.gameId),
f = ER({
location: `game-page/${p}`,
delay: d / 2
});
return (0, _w.jsx)(Rm, {
title: u("game_page_nav_title", {
count: i.availableGames.length
}),
"data-test-id": "game-navigation",
...e,
children: null === i || void 0 === i ? void 0 : i.availableGames.map((e => e.channels.length > 0 ? (0, _w.jsx)(Tm, {
logo: e.logo,
name: e.name,
active: e.id === p,
onClick: t => ((e, t) => {
e.preventDefault(), t.id === p || t.id === c.gameId || o || (h(t.id), s ? l(`game-page/${p}`) : (a.actions.setAnimatingAppLayoutWipe("full", !0), f(`game-page/${p}`)))
})(t, e),
"data-test-id": "game-tab"
}, e.id) : null))
})
},
zA = ({
status: e
}) => {
const {
t: t
} = bt(["gamePage", "status"]), n = e === yw.RSISystemStatus.MAINTENANCE ? t("game_page_status_under_maintenance", {
ns: "gamePage"
}) : t("game_page_status_issue", {
ns: "gamePage"
});
return (0, _w.jsxs)(op, {
title: t("status_" + e, {
ns: "status"
}),
status: jw(e),
children: [n, " ", (0, _w.jsx)(ft, {
i18nKey: "game_page_status_more_information",
ns: "gamePage",
components: [(0, _w.jsx)(zm, {
external: !0,
href: yw.configuration.statusUrl
})]
})]
})
};
function VA() {
return VA = Object.assign ? Object.assign.bind() : 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
}, VA.apply(this, arguments)
}
function UA(e, t) {
if (null == e) return {};
var n, r, i = {},
a = Object.keys(e);
for (r = 0; r < a.length; r++) n = a[r], t.indexOf(n) >= 0 || (i[n] = e[n]);
return i
}
new Set(["application/x-www-form-urlencoded", "multipart/form-data", "text/plain"]);
const BA = ["onClick", "relative", "reloadDocument", "replace", "state", "target", "to", "preventScrollReset", "unstable_viewTransition"];
function GA() {
var e;
let t = null == (e = window) ? void 0 : e.__staticRouterHydrationData;
return t && t.errors && (t = VA({}, t, {
errors: WA(t.errors)
})), t
}
function WA(e) {
if (!e) return null;
let t = Object.entries(e),
n = {};
for (let [i, a] of t)
if (a && "RouteErrorResponse" === a.__type) n[i] = new gO(a.status, a.statusText, a.data, !0 === a.internal);
else if (a && "Error" === a.__type) {
if (a.__subType) {
let e = window[a.__subType];
if ("function" === typeof e) try {
let t = new e(a.message);
t.stack = "", n[i] = t
} catch (r) {}
}
if (null == n[i]) {
let e = new Error(a.message);
e.stack = "", n[i] = e
}
} else n[i] = a;
return n
}
const $A = Ee.createContext({
isTransitioning: !1
});
const qA = Ee.createContext(new Map);
const HA = Ie.startTransition,
KA = Lo.flushSync;
function YA(e) {
KA ? KA(e) : e()
}
class QA {
constructor() {
this.status = "pending", this.promise = new Promise(((e, t) => {
this.resolve = t => {
"pending" === this.status && (this.status = "resolved", e(t))
}, this.reject = e => {
"pending" === this.status && (this.status = "rejected", t(e))
}
}))
}
}
function ZA(e) {
let {
fallbackElement: t,
router: n,
future: r
} = e, [i, a] = Ee.useState(n.state), [o, s] = Ee.useState(), [l, c] = Ee.useState({
isTransitioning: !1
}), [u, d] = Ee.useState(), [p, h] = Ee.useState(), [f, m] = Ee.useState(), g = Ee.useRef(new Map), {
v7_startTransition: v
} = r || {}, y = Ee.useCallback((e => {
v ? function(e) {
HA ? HA(e) : e()
}(e) : e()
}), [v]), _ = Ee.useCallback(((e, t) => {
let {
deletedFetchers: r,
unstable_flushSync: i,
unstable_viewTransitionOpts: o
} = t;
r.forEach((e => g.current.delete(e))), e.fetchers.forEach(((e, t) => {
void 0 !== e.data && g.current.set(t, e.data)
}));
let l = null == n.window || "function" !== typeof n.window.document.startViewTransition;
if (o && !l) {
if (i) {
YA((() => {
p && (u && u.resolve(), p.skipTransition()), c({
isTransitioning: !0,
flushSync: !0,
currentLocation: o.currentLocation,
nextLocation: o.nextLocation
})
}));
let t = n.window.document.startViewTransition((() => {
YA((() => a(e)))
}));
return t.finished.finally((() => {
YA((() => {
d(void 0), h(void 0), s(void 0), c({
isTransitioning: !1
})
}))
})), void YA((() => h(t)))
}
p ? (u && u.resolve(), p.skipTransition(), m({
state: e,
currentLocation: o.currentLocation,
nextLocation: o.nextLocation
})) : (s(e), c({
isTransitioning: !0,
flushSync: !1,
currentLocation: o.currentLocation,
nextLocation: o.nextLocation
}))
} else i ? YA((() => a(e))) : y((() => a(e)))
}), [n.window, p, u, g, y]);
Ee.useLayoutEffect((() => n.subscribe(_)), [n, _]), Ee.useEffect((() => {
l.isTransitioning && !l.flushSync && d(new QA)
}), [l]), Ee.useEffect((() => {
if (u && o && n.window) {
let e = o,
t = u.promise,
r = n.window.document.startViewTransition((async () => {
y((() => a(e))), await t
}));
r.finished.finally((() => {
d(void 0), h(void 0), s(void 0), c({
isTransitioning: !1
})
})), h(r)
}
}), [y, o, u, n.window]), Ee.useEffect((() => {
u && o && i.location.key === o.location.key && u.resolve()
}), [u, p, i.location, o]), Ee.useEffect((() => {
!l.isTransitioning && f && (s(f.state), c({
isTransitioning: !0,
flushSync: !1,
currentLocation: f.currentLocation,
nextLocation: f.nextLocation
}), m(void 0))
}), [l.isTransitioning, f]);
let b = Ee.useMemo((() => ({
createHref: n.createHref,
encodeLocation: n.encodeLocation,
go: e => n.navigate(e),
push: (e, t, r) => n.navigate(e, {
state: t,
preventScrollReset: null == r ? void 0 : r.preventScrollReset
}),
replace: (e, t, r) => n.navigate(e, {
replace: !0,
state: t,
preventScrollReset: null == r ? void 0 : r.preventScrollReset
})
})), [n]),
x = n.basename || "/",
k = Ee.useMemo((() => ({
router: n,
navigator: b,
static: !1,
basename: x
})), [n, b, x]);
return Ee.createElement(Ee.Fragment, null, Ee.createElement(dC.Provider, {
value: k
}, Ee.createElement(pC.Provider, {
value: i
}, Ee.createElement(qA.Provider, {
value: g.current
}, Ee.createElement($A.Provider, {
value: l
}, Ee.createElement(jC, {
basename: x,
location: i.location,
navigationType: i.historyAction,
navigator: b
}, i.initialized ? Ee.createElement(XA, {
routes: n.routes,
state: i
}) : t))))), null)
}
function XA(e) {
let {
routes: t,
state: n
} = e;
return SC(t, void 0, n)
}
const JA = "undefined" !== typeof window && "undefined" !== typeof window.document && "undefined" !== typeof window.document.createElement,
eP = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,
tP = Ee.forwardRef((function(e, t) {
let n, {
onClick: r,
relative: i,
reloadDocument: a,
replace: o,
state: s,
target: l,
to: c,
preventScrollReset: u,
unstable_viewTransition: d
} = e,
p = UA(e, BA),
{
basename: h
} = Ee.useContext(hC),
f = !1;
if ("string" === typeof c && eP.test(c) && (n = c, JA)) try {
let e = new URL(window.location.href),
t = c.startsWith("//") ? new URL(e.protocol + c) : new URL(c),
n = oO(t.pathname, h);
t.origin === e.origin && null != n ? c = n + t.search + t.hash : f = !0
} catch (v) {}
let m = function(e, t) {
let {
relative: n
} = void 0 === t ? {} : t;
vC() || VI(!1);
let {
basename: r,
navigator: i
} = Ee.useContext(hC), {
hash: a,
pathname: o,
search: s
} = wC(e, {
relative: n
}), l = o;
return "/" !== r && (l = "/" === o ? r : uO([r, o])), i.createHref({
pathname: l,
search: s,
hash: a
})
}(c, {
relative: i
}),
g = function(e, t) {
let {
target: n,
replace: r,
state: i,
preventScrollReset: a,
relative: o,
unstable_viewTransition: s
} = void 0 === t ? {} : t, l = bC(), c = yC(), u = wC(e, {
relative: o
});
return Ee.useCallback((t => {
if (function(e, t) {
return 0 === e.button && (!t || "_self" === t) && ! function(e) {
return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey)
}(e)
}(t, n)) {
t.preventDefault();
let n = void 0 !== r ? r : WI(c) === WI(u);
l(e, {
replace: n,
state: i,
preventScrollReset: a,
relative: o,
unstable_viewTransition: s
})
}
}), [c, l, u, r, i, n, e, a, o, s])
}(c, {
replace: o,
state: s,
target: l,
preventScrollReset: u,
relative: i,
unstable_viewTransition: d
});
return Ee.createElement("a", VA({}, p, {
href: n || m,
onClick: f || a ? r : function(e) {
r && r(e), e.defaultPrevented || g(e)
},
ref: t,
target: l
}))
}));
var nP, rP;
(function(e) {
e.UseScrollRestoration = "useScrollRestoration", e.UseSubmit = "useSubmit", e.UseSubmitFetcher = "useSubmitFetcher", e.UseFetcher = "useFetcher", e.useViewTransitionState = "useViewTransitionState"
})(nP || (nP = {})),
function(e) {
e.UseFetcher = "useFetcher", e.UseFetchers = "useFetchers", e.UseScrollRestoration = "useScrollRestoration"
}(rP || (rP = {}));
const iP = (0, Ee.forwardRef)((({
children: e,
href: t = "",
...n
}, r) => t.startsWith("http") ? (0, _w.jsx)("a", {
href: t,
ref: r,
rel: "noopener noreferrer",
target: "_blank",
...n,
children: e
}) : (0, _w.jsx)(tP, {
ref: r,
to: t,
...n,
children: e
})));
var aP = e => "checkbox" === e.type,
oP = e => e instanceof Date,
sP = e => null == e;
const lP = e => "object" === typeof e;
var cP = e => !sP(e) && !Array.isArray(e) && lP(e) && !oP(e),
uP = e => cP(e) && e.target ? aP(e.target) ? e.target.checked : e.target.value : e,
dP = (e, t) => e.has((e => e.substring(0, e.search(/\.\d+(\.|$)/)) || e)(t)),
pP = e => Array.isArray(e) ? e.filter(Boolean) : [],
hP = e => void 0 === e,
fP = (e, t, n) => {
if (!t || !cP(e)) return n;
const r = pP(t.split(/[,[\].]+?/)).reduce(((e, t) => sP(e) ? e : e[t]), e);
return hP(r) || r === e ? hP(e[t]) ? n : e[t] : r
};
const mP = "blur",
gP = "focusout",
vP = "change",
yP = "onBlur",
_P = "onChange",
bP = "onSubmit",
xP = "onTouched",
kP = "all",
wP = "max",
SP = "min",
EP = "maxLength",
IP = "minLength",
OP = "pattern",
CP = "required",
AP = "validate",
PP = Ee.createContext(null),
TP = () => Ee.useContext(PP);
var RP = (e, t, n, r = !0) => {
const i = {
defaultValues: t._defaultValues
};
for (const a in e) Object.defineProperty(i, a, {
get: () => {
const i = a;
return t._proxyFormState[i] !== kP && (t._proxyFormState[i] = !r || kP), n && (n[i] = !0), e[i]
}
});
return i
},
DP = e => cP(e) && !Object.keys(e).length,
LP = (e, t, n, r) => {
n(e);
const {
name: i,
...a
} = e;
return DP(a) || Object.keys(a).length >= Object.keys(t).length || Object.keys(a).find((e => t[e] === (!r || kP)))
},
NP = e => Array.isArray(e) ? e : [e],
MP = (e, t, n) => n && t ? e === t : !e || !t || e === t || NP(e).some((e => e && (e.startsWith(t) || t.startsWith(e))));
function jP(e) {
const t = Ee.useRef(e);
t.current = e, Ee.useEffect((() => {
const n = !e.disabled && t.current.subject.subscribe({
next: t.current.next
});
return () => {
n && n.unsubscribe()
}
}), [e.disabled])
}
var FP = e => "string" === typeof e,
zP = (e, t, n, r, i) => FP(e) ? (r && t.watch.add(e), fP(n, e, i)) : Array.isArray(e) ? e.map((e => (r && t.watch.add(e), fP(n, e)))) : (r && (t.watchAll = !0), n),
VP = "undefined" !== typeof window && "undefined" !== typeof window.HTMLElement && "undefined" !== typeof document;
function UP(e) {
let t;
const n = Array.isArray(e);
if (e instanceof Date) t = new Date(e);
else if (e instanceof Set) t = new Set(e);
else {
if (VP && (e instanceof Blob || e instanceof FileList) || !n && !cP(e)) return e;
if (t = n ? [] : {}, Array.isArray(e) || (e => {
const t = e.constructor && e.constructor.prototype;
return cP(t) && t.hasOwnProperty("isPrototypeOf")
})(e))
for (const n in e) t[n] = UP(e[n]);
else t = e
}
return t
}
function BP(e) {
const t = TP(),
{
name: n,
control: r = t.control,
shouldUnregister: i
} = e,
a = dP(r._names.array, n),
o = function(e) {
const t = TP(),
{
control: n = t.control,
name: r,
defaultValue: i,
disabled: a,
exact: o
} = e || {},
s = Ee.useRef(r);
s.current = r, jP({
disabled: a,
subject: n._subjects.watch,
next: e => {
MP(s.current, e.name, o) && c(UP(zP(s.current, n._names, e.values || n._formValues, !1, i)))
}
});
const [l, c] = Ee.useState(n._getWatch(r, i));
return Ee.useEffect((() => n._removeUnmounted())), l
}({
control: r,
name: n,
defaultValue: fP(r._formValues, n, fP(r._defaultValues, n, e.defaultValue)),
exact: !0
}),
s = function(e) {
const t = TP(),
{
control: n = t.control,
disabled: r,
name: i,
exact: a
} = e || {},
[o, s] = Ee.useState(n._formState),
l = Ee.useRef(!0),
c = Ee.useRef({
isDirty: !1,
isLoading: !1,
dirtyFields: !1,
touchedFields: !1,
isValidating: !1,
isValid: !1,
errors: !1
}),
u = Ee.useRef(i);
return u.current = i, jP({
disabled: r,
next: e => l.current && MP(u.current, e.name, a) && LP(e, c.current, n._updateFormState) && s({
...n._formState,
...e
}),
subject: n._subjects.state
}), Ee.useEffect((() => {
l.current = !0;
const e = n._proxyFormState.isDirty && n._getDirty();
return e !== n._formState.isDirty && n._subjects.state.next({
isDirty: e
}), c.current.isValid && n._updateValid(!0), () => {
l.current = !1
}
}), [n]), RP(o, n, c.current, !1)
}({
control: r,
name: n
}),
l = Ee.useRef(r.register(n, {
...e.rules,
value: o
}));
return Ee.useEffect((() => {
const e = (e, t) => {
const n = fP(r._fields, e);
n && (n._f.mount = t)
};
return e(n, !0), () => {
const t = r._options.shouldUnregister || i;
(a ? t && !r._stateFlags.action : t) ? r.unregister(n): e(n, !1)
}
}), [n, r, a, i]), {
field: {
name: n,
value: o,
onChange: Ee.useCallback((e => l.current.onChange({
target: {
value: uP(e),
name: n
},
type: vP
})), [n]),
onBlur: Ee.useCallback((() => l.current.onBlur({
target: {
value: fP(r._formValues, n),
name: n
},
type: mP
})), [n, r]),
ref: e => {
const t = fP(r._fields, n);
t && e && (t._f.ref = {
focus: () => e.focus(),
select: () => e.select(),
setCustomValidity: t => e.setCustomValidity(t),
reportValidity: () => e.reportValidity()
})
}
},
formState: s,
fieldState: Object.defineProperties({}, {
invalid: {
enumerable: !0,
get: () => !!fP(s.errors, n)
},
isDirty: {
enumerable: !0,
get: () => !!fP(s.dirtyFields, n)
},
isTouched: {
enumerable: !0,
get: () => !!fP(s.touchedFields, n)
},
error: {
enumerable: !0,
get: () => fP(s.errors, n)
}
})
}
}
var GP = (e, t, n, r, i) => t ? {
...n[e],
types: {
...n[e] && n[e].types ? n[e].types : {},
[r]: i || !0
}
} : {},
WP = e => /^\w*$/.test(e),
$P = e => pP(e.replace(/["|']|\]/g, "").split(/\.|\[/));
function qP(e, t, n) {
let r = -1;
const i = WP(t) ? [t] : $P(t),
a = i.length,
o = a - 1;
for (; ++r < a;) {
const t = i[r];
let a = n;
if (r !== o) {
const n = e[t];
a = cP(n) || Array.isArray(n) ? n : isNaN(+i[r + 1]) ? {} : []
}
e[t] = a, e = e[t]
}
return e
}
const HP = (e, t, n) => {
for (const r of n || Object.keys(e)) {
const n = fP(e, r);
if (n) {
const {
_f: e,
...r
} = n;
if (e && t(e.name)) {
if (e.ref.focus) {
e.ref.focus();
break
}
if (e.refs && e.refs[0].focus) {
e.refs[0].focus();
break
}
} else cP(r) && HP(r, t)
}
}
};
var KP = e => ({
isOnSubmit: !e || e === bP,
isOnBlur: e === yP,
isOnChange: e === _P,
isOnAll: e === kP,
isOnTouch: e === xP
}),
YP = (e, t, n) => !n && (t.watchAll || t.watch.has(e) || [...t.watch].some((t => e.startsWith(t) && /^\.\w+/.test(e.slice(t.length))))),
QP = (e, t, n) => {
const r = pP(fP(e, n));
return qP(r, "root", t[n]), qP(e, n, r), e
},
ZP = e => "boolean" === typeof e,
XP = e => "file" === e.type,
JP = e => "function" === typeof e,
eT = e => {
if (!VP) return !1;
const t = e ? e.ownerDocument : 0;
return e instanceof(t && t.defaultView ? t.defaultView.HTMLElement : HTMLElement)
},
tT = e => FP(e) || Ee.isValidElement(e),
nT = e => "radio" === e.type,
rT = e => e instanceof RegExp;
const iT = {
value: !1,
isValid: !1
},
aT = {
value: !0,
isValid: !0
};
var oT = e => {
if (Array.isArray(e)) {
if (e.length > 1) {
const t = e.filter((e => e && e.checked && !e.disabled)).map((e => e.value));
return {
value: t,
isValid: !!t.length
}
}
return e[0].checked && !e[0].disabled ? e[0].attributes && !hP(e[0].attributes.value) ? hP(e[0].value) || "" === e[0].value ? aT : {
value: e[0].value,
isValid: !0
} : aT : iT
}
return iT
};
const sT = {
isValid: !1,
value: null
};
var lT = e => Array.isArray(e) ? e.reduce(((e, t) => t && t.checked && !t.disabled ? {
isValid: !0,
value: t.value
} : e), sT) : sT;
function cT(e, t, n = "validate") {
if (tT(e) || Array.isArray(e) && e.every(tT) || ZP(e) && !e) return {
type: n,
message: tT(e) ? e : "",
ref: t
}
}
var uT = e => cP(e) && !rT(e) ? e : {
value: e,
message: ""
},
dT = async (e, t, n, r, i) => {
const {
ref: a,
refs: o,
required: s,
maxLength: l,
minLength: c,
min: u,
max: d,
pattern: p,
validate: h,
name: f,
valueAsNumber: m,
mount: g,
disabled: v
} = e._f, y = fP(t, f);
if (!g || v) return {};
const _ = o ? o[0] : a,
b = e => {
r && _.reportValidity && (_.setCustomValidity(ZP(e) ? "" : e || ""), _.reportValidity())
},
x = {},
k = nT(a),
w = aP(a),
S = k || w,
E = (m || XP(a)) && hP(a.value) && hP(y) || eT(a) && "" === a.value || "" === y || Array.isArray(y) && !y.length,
I = GP.bind(null, f, n, x),
O = (e, t, n, r = EP, i = IP) => {
const o = e ? t : n;
x[f] = {
type: e ? r : i,
message: o,
ref: a,
...I(e ? r : i, o)
}
};
if (i ? !Array.isArray(y) || !y.length : s && (!S && (E || sP(y)) || ZP(y) && !y || w && !oT(o).isValid || k && !lT(o).isValid)) {
const {
value: e,
message: t
} = tT(s) ? {
value: !!s,
message: s
} : uT(s);
if (e && (x[f] = {
type: CP,
message: t,
ref: _,
...I(CP, t)
}, !n)) return b(t), x
}
if (!E && (!sP(u) || !sP(d))) {
let e, t;
const r = uT(d),
i = uT(u);
if (sP(y) || isNaN(y)) {
const n = a.valueAsDate || new Date(y),
o = e => new Date((new Date).toDateString() + " " + e),
s = "time" == a.type,
l = "week" == a.type;
FP(r.value) && y && (e = s ? o(y) > o(r.value) : l ? y > r.value : n > new Date(r.value)), FP(i.value) && y && (t = s ? o(y) < o(i.value) : l ? y < i.value : n < new Date(i.value))
} else {
const n = a.valueAsNumber || (y ? +y : y);
sP(r.value) || (e = n > r.value), sP(i.value) || (t = n < i.value)
}
if ((e || t) && (O(!!e, r.message, i.message, wP, SP), !n)) return b(x[f].message), x
}
if ((l || c) && !E && (FP(y) || i && Array.isArray(y))) {
const e = uT(l),
t = uT(c),
r = !sP(e.value) && y.length > e.value,
i = !sP(t.value) && y.length < t.value;
if ((r || i) && (O(r, e.message, t.message), !n)) return b(x[f].message), x
}
if (p && !E && FP(y)) {
const {
value: e,
message: t
} = uT(p);
if (rT(e) && !y.match(e) && (x[f] = {
type: OP,
message: t,
ref: a,
...I(OP, t)
}, !n)) return b(t), x
}
if (h)
if (JP(h)) {
const e = cT(await h(y, t), _);
if (e && (x[f] = {
...e,
...I(AP, e.message)
}, !n)) return b(e.message), x
} else if (cP(h)) {
let e = {};
for (const r in h) {
if (!DP(e) && !n) break;
const i = cT(await h[r](y, t), _, r);
i && (e = {
...i,
...I(r, i.message)
}, b(i.message), n && (x[f] = e))
}
if (!DP(e) && (x[f] = {
ref: _,
...e
}, !n)) return x
}
return b(!0), x
};
function pT(e, t) {
const n = Array.isArray(t) ? t : WP(t) ? [t] : $P(t),
r = 1 === n.length ? e : function(e, t) {
const n = t.slice(0, -1).length;
let r = 0;
for (; r < n;) e = hP(e) ? r++ : e[t[r++]];
return e
}(e, n),
i = n.length - 1,
a = n[i];
return r && delete r[a], 0 !== i && (cP(r) && DP(r) || Array.isArray(r) && function(e) {
for (const t in e)
if (!hP(e[t])) return !1;
return !0
}(r)) && pT(e, n.slice(0, -1)), e
}
function hT() {
let e = [];
return {
get observers() {
return e
},
next: t => {
for (const n of e) n.next(t)
},
subscribe: t => (e.push(t), {
unsubscribe: () => {
e = e.filter((e => e !== t))
}
}),
unsubscribe: () => {
e = []
}
}
}
var fT = e => sP(e) || !lP(e);
function mT(e, t) {
if (fT(e) || fT(t)) return e === t;
if (oP(e) && oP(t)) return e.getTime() === t.getTime();
const n = Object.keys(e),
r = Object.keys(t);
if (n.length !== r.length) return !1;
for (const i of n) {
const n = e[i];
if (!r.includes(i)) return !1;
if ("ref" !== i) {
const e = t[i];
if (oP(n) && oP(e) || cP(n) && cP(e) || Array.isArray(n) && Array.isArray(e) ? !mT(n, e) : n !== e) return !1
}
}
return !0
}
var gT = e => "select-multiple" === e.type,
vT = e => eT(e) && e.isConnected,
yT = e => {
for (const t in e)
if (JP(e[t])) return !0;
return !1
};
function _T(e, t = {}) {
const n = Array.isArray(e);
if (cP(e) || n)
for (const r in e) Array.isArray(e[r]) || cP(e[r]) && !yT(e[r]) ? (t[r] = Array.isArray(e[r]) ? [] : {}, _T(e[r], t[r])) : sP(e[r]) || (t[r] = !0);
return t
}
function bT(e, t, n) {
const r = Array.isArray(e);
if (cP(e) || r)
for (const i in e) Array.isArray(e[i]) || cP(e[i]) && !yT(e[i]) ? hP(t) || fT(n[i]) ? n[i] = Array.isArray(e[i]) ? _T(e[i], []) : {
..._T(e[i])
} : bT(e[i], sP(t) ? {} : t[i], n[i]) : mT(e[i], t[i]) ? delete n[i] : n[i] = !0;
return n
}
var xT = (e, t) => bT(e, t, _T(t)),
kT = (e, {
valueAsNumber: t,
valueAsDate: n,
setValueAs: r
}) => hP(e) ? e : t ? "" === e ? NaN : e ? +e : e : n && FP(e) ? new Date(e) : r ? r(e) : e;
function wT(e) {
const t = e.ref;
if (!(e.refs ? e.refs.every((e => e.disabled)) : t.disabled)) return XP(t) ? t.files : nT(t) ? lT(e.refs).value : gT(t) ? [...t.selectedOptions].map((({
value: e
}) => e)) : aP(t) ? oT(e.refs).value : kT(hP(t.value) ? e.ref.value : t.value, e)
}
var ST = e => hP(e) ? e : rT(e) ? e.source : cP(e) ? rT(e.value) ? e.value.source : e.value : e;
function ET(e, t, n) {
const r = fP(e, n);
if (r || WP(n)) return {
error: r,
name: n
};
const i = n.split(".");
for (; i.length;) {
const r = i.join("."),
a = fP(t, r),
o = fP(e, r);
if (a && !Array.isArray(a) && n !== r) return {
name: n
};
if (o && o.type) return {
name: r,
error: o
};
i.pop()
}
return {
name: n
}
}
const IT = {
mode: bP,
reValidateMode: _P,
shouldFocusError: !0
};
function OT(e = {}, t) {
let n = {
...IT,
...e
};
const r = e.resetOptions && e.resetOptions.keepDirtyValues;
let i, a = {
submitCount: 0,
isDirty: !1,
isLoading: !0,
isValidating: !1,
isSubmitted: !1,
isSubmitting: !1,
isSubmitSuccessful: !1,
isValid: !1,
touchedFields: {},
dirtyFields: {},
errors: {}
},
o = {},
s = cP(n.defaultValues) && UP(n.defaultValues) || {},
l = n.shouldUnregister ? {} : UP(s),
c = {
action: !1,
mount: !1,
watch: !1
},
u = {
mount: new Set,
unMount: new Set,
array: new Set,
watch: new Set
},
d = 0;
const p = {
isDirty: !1,
dirtyFields: !1,
touchedFields: !1,
isValidating: !1,
isValid: !1,
errors: !1
},
h = {
watch: hT(),
array: hT(),
state: hT()
},
f = KP(n.mode),
m = KP(n.reValidateMode),
g = n.criteriaMode === kP,
v = async e => {
if (p.isValid || e) {
const e = n.resolver ? DP((await k()).errors) : await w(o, !0);
e !== a.isValid && (a.isValid = e, h.state.next({
isValid: e
}))
}
}, y = e => p.isValidating && h.state.next({
isValidating: e
}), _ = (e, t, n, r) => {
const i = fP(o, e);
if (i) {
const a = fP(l, e, hP(n) ? fP(s, e) : n);
hP(a) || r && r.defaultChecked || t ? qP(l, e, t ? a : wT(i._f)) : I(e, a), c.mount && v()
}
}, b = (e, t, n, r, i) => {
let o = !1,
l = !1;
const c = {
name: e
};
if (!n || r) {
p.isDirty && (l = a.isDirty, a.isDirty = c.isDirty = S(), o = l !== c.isDirty);
const n = mT(fP(s, e), t);
l = fP(a.dirtyFields, e), n ? pT(a.dirtyFields, e) : qP(a.dirtyFields, e, !0), c.dirtyFields = a.dirtyFields, o = o || p.dirtyFields && l !== !n
}
if (n) {
const t = fP(a.touchedFields, e);
t || (qP(a.touchedFields, e, n), c.touchedFields = a.touchedFields, o = o || p.touchedFields && t !== n)
}
return o && i && h.state.next(c), o ? c : {}
}, x = (t, n, r, o) => {
const s = fP(a.errors, t),
l = p.isValid && ZP(n) && a.isValid !== n;
var c;
if (e.delayError && r ? (c = () => ((e, t) => {
qP(a.errors, e, t), h.state.next({
errors: a.errors
})
})(t, r), i = e => {
clearTimeout(d), d = window.setTimeout(c, e)
}, i(e.delayError)) : (clearTimeout(d), i = null, r ? qP(a.errors, t, r) : pT(a.errors, t)), (r ? !mT(s, r) : s) || !DP(o) || l) {
const e = {
...o,
...l && ZP(n) ? {
isValid: n
} : {},
errors: a.errors,
name: t
};
a = {
...a,
...e
}, h.state.next(e)
}
y(!1)
}, k = async e => await n.resolver(l, n.context, ((e, t, n, r) => {
const i = {};
for (const a of e) {
const e = fP(t, a);
e && qP(i, a, e._f)
}
return {
criteriaMode: n,
names: [...e],
fields: i,
shouldUseNativeValidation: r
}
})(e || u.mount, o, n.criteriaMode, n.shouldUseNativeValidation)), w = async (e, t, r = {
valid: !0
}) => {
for (const i in e) {
const o = e[i];
if (o) {
const {
_f: e,
...i
} = o;
if (e) {
const i = u.array.has(e.name),
s = await dT(o, l, g, n.shouldUseNativeValidation, i);
if (s[e.name] && (r.valid = !1, t)) break;
!t && (fP(s, e.name) ? i ? QP(a.errors, s, e.name) : qP(a.errors, e.name, s[e.name]) : pT(a.errors, e.name))
}
i && await w(i, t, r)
}
}
return r.valid
}, S = (e, t) => (e && t && qP(l, e, t), !mT(T(), s)), E = (e, t, n) => zP(e, u, {
...c.mount ? l : hP(t) ? s : FP(e) ? {
[e]: t
} : t
}, n, t), I = (e, t, n = {}) => {
const r = fP(o, e);
let i = t;
if (r) {
const n = r._f;
n && (!n.disabled && qP(l, e, kT(t, n)), i = eT(n.ref) && sP(t) ? "" : t, gT(n.ref) ? [...n.ref.options].forEach((e => e.selected = i.includes(e.value))) : n.refs ? aP(n.ref) ? n.refs.length > 1 ? n.refs.forEach((e => (!e.defaultChecked || !e.disabled) && (e.checked = Array.isArray(i) ? !!i.find((t => t === e.value)) : i === e.value))) : n.refs[0] && (n.refs[0].checked = !!i) : n.refs.forEach((e => e.checked = e.value === i)) : XP(n.ref) ? n.ref.value = "" : (n.ref.value = i, n.ref.type || h.watch.next({
name: e
})))
}(n.shouldDirty || n.shouldTouch) && b(e, i, n.shouldTouch, n.shouldDirty, !0), n.shouldValidate && P(e)
}, O = (e, t, n) => {
for (const r in t) {
const i = t[r],
a = `${e}.${r}`,
s = fP(o, a);
!u.array.has(e) && fT(i) && (!s || s._f) || oP(i) ? I(a, i, n) : O(a, i, n)
}
}, C = (e, n, r = {}) => {
const i = fP(o, e),
d = u.array.has(e),
f = UP(n);
qP(l, e, f), d ? (h.array.next({
name: e,
values: l
}), (p.isDirty || p.dirtyFields) && r.shouldDirty && (a.dirtyFields = xT(s, l), h.state.next({
name: e,
dirtyFields: a.dirtyFields,
isDirty: S(e, f)
}))) : !i || i._f || sP(f) ? I(e, f, r) : O(e, f, r), YP(e, u) && h.state.next({}), h.watch.next({
name: e
}), !c.mount && t()
}, A = async e => {
const t = e.target;
let r = t.name;
const s = fP(o, r);
if (s) {
let d, _;
const S = t.type ? wT(s._f) : uP(e),
E = e.type === mP || e.type === gP,
I = !((c = s._f).mount && (c.required || c.min || c.max || c.maxLength || c.minLength || c.pattern || c.validate)) && !n.resolver && !fP(a.errors, r) && !s._f.deps || ((e, t, n, r, i) => !i.isOnAll && (!n && i.isOnTouch ? !(t || e) : (n ? r.isOnBlur : i.isOnBlur) ? !e : !(n ? r.isOnChange : i.isOnChange) || e))(E, fP(a.touchedFields, r), a.isSubmitted, m, f),
O = YP(r, u, E);
qP(l, r, S), E ? (s._f.onBlur && s._f.onBlur(e), i && i(0)) : s._f.onChange && s._f.onChange(e);
const C = b(r, S, E, !1),
A = !DP(C) || O;
if (!E && h.watch.next({
name: r,
type: e.type
}), I) return p.isValid && v(), A && h.state.next({
name: r,
...O ? {} : C
});
if (!E && O && h.state.next({}), y(!0), n.resolver) {
const {
errors: e
} = await k([r]), t = ET(a.errors, o, r), n = ET(e, o, t.name || r);
d = n.error, r = n.name, _ = DP(e)
} else d = (await dT(s, l, g, n.shouldUseNativeValidation))[r], d ? _ = !1 : p.isValid && (_ = await w(o, !0));
s._f.deps && P(s._f.deps), x(r, _, d, C)
}
var c
}, P = async (e, t = {}) => {
let r, i;
const s = NP(e);
if (y(!0), n.resolver) {
const t = await (async e => {
const {
errors: t
} = await k();
if (e)
for (const n of e) {
const e = fP(t, n);
e ? qP(a.errors, n, e) : pT(a.errors, n)
} else a.errors = t;
return t
})(hP(e) ? e : s);
r = DP(t), i = e ? !s.some((e => fP(t, e))) : r
} else e ? (i = (await Promise.all(s.map((async e => {
const t = fP(o, e);
return await w(t && t._f ? {
[e]: t
} : t)
})))).every(Boolean), (i || a.isValid) && v()) : i = r = await w(o);
return h.state.next({
...!FP(e) || p.isValid && r !== a.isValid ? {} : {
name: e
},
...n.resolver || !e ? {
isValid: r
} : {},
errors: a.errors,
isValidating: !1
}), t.shouldFocus && !i && HP(o, (e => e && fP(a.errors, e)), e ? s : u.mount), i
}, T = e => {
const t = {
...s,
...c.mount ? l : {}
};
return hP(e) ? t : FP(e) ? fP(t, e) : e.map((e => fP(t, e)))
}, R = (e, t) => ({
invalid: !!fP((t || a).errors, e),
isDirty: !!fP((t || a).dirtyFields, e),
isTouched: !!fP((t || a).touchedFields, e),
error: fP((t || a).errors, e)
}), D = (e, t = {}) => {
for (const r of e ? NP(e) : u.mount) u.mount.delete(r), u.array.delete(r), fP(o, r) && (t.keepValue || (pT(o, r), pT(l, r)), !t.keepError && pT(a.errors, r), !t.keepDirty && pT(a.dirtyFields, r), !t.keepTouched && pT(a.touchedFields, r), !n.shouldUnregister && !t.keepDefaultValue && pT(s, r));
h.watch.next({}), h.state.next({
...a,
...t.keepDirty ? {
isDirty: S()
} : {}
}), !t.keepIsValid && v()
}, L = (e, t = {}) => {
let r = fP(o, e);
const i = ZP(t.disabled);
return qP(o, e, {
...r || {},
_f: {
...r && r._f ? r._f : {
ref: {
name: e
}
},
name: e,
mount: !0,
...t
}
}), u.mount.add(e), r ? i && qP(l, e, t.disabled ? void 0 : fP(l, e, wT(r._f))) : _(e, !0, t.value), {
...i ? {
disabled: t.disabled
} : {},
...n.shouldUseNativeValidation ? {
required: !!t.required,
min: ST(t.min),
max: ST(t.max),
minLength: ST(t.minLength),
maxLength: ST(t.maxLength),
pattern: ST(t.pattern)
} : {},
name: e,
onChange: A,
onBlur: A,
ref: i => {
if (i) {
L(e, t), r = fP(o, e);
const n = hP(i.value) && i.querySelectorAll && i.querySelectorAll("input,select,textarea")[0] || i,
a = (e => nT(e) || aP(e))(n),
l = r._f.refs || [];
if (a ? l.find((e => e === n)) : n === r._f.ref) return;
qP(o, e, {
_f: {
...r._f,
...a ? {
refs: [...l.filter(vT), n, ...Array.isArray(fP(s, e)) ? [{}] : []],
ref: {
type: n.type,
name: e
}
} : {
ref: n
}
}
}), _(e, !1, void 0, n)
} else r = fP(o, e, {}), r._f && (r._f.mount = !1), (n.shouldUnregister || t.shouldUnregister) && (!dP(u.array, e) || !c.action) && u.unMount.add(e)
}
}
}, N = () => n.shouldFocusError && HP(o, (e => e && fP(a.errors, e)), u.mount), M = (n, i = {}) => {
const d = n || s,
f = UP(d),
m = n && !DP(n) ? f : s;
if (i.keepDefaultValues || (s = d), !i.keepValues) {
if (i.keepDirtyValues || r)
for (const e of u.mount) fP(a.dirtyFields, e) ? qP(m, e, fP(l, e)) : C(e, fP(m, e));
else {
if (VP && hP(n))
for (const e of u.mount) {
const t = fP(o, e);
if (t && t._f) {
const e = Array.isArray(t._f.refs) ? t._f.refs[0] : t._f.ref;
if (eT(e)) {
const t = e.closest("form");
if (t) {
t.reset();
break
}
}
}
}
o = {}
}
l = e.shouldUnregister ? i.keepDefaultValues ? UP(s) : {} : f, h.array.next({
values: m
}), h.watch.next({
values: m
})
}
u = {
mount: new Set,
unMount: new Set,
array: new Set,
watch: new Set,
watchAll: !1,
focus: ""
}, !c.mount && t(), c.mount = !p.isValid || !!i.keepIsValid, c.watch = !!e.shouldUnregister, h.state.next({
submitCount: i.keepSubmitCount ? a.submitCount : 0,
isDirty: i.keepDirty || i.keepDirtyValues ? a.isDirty : !(!i.keepDefaultValues || mT(n, s)),
isSubmitted: !!i.keepIsSubmitted && a.isSubmitted,
dirtyFields: i.keepDirty || i.keepDirtyValues ? a.dirtyFields : i.keepDefaultValues && n ? xT(s, n) : {},
touchedFields: i.keepTouched ? a.touchedFields : {},
errors: i.keepErrors ? a.errors : {},
isSubmitting: !1,
isSubmitSuccessful: !1
})
}, j = (e, t) => M(JP(e) ? e(l) : e, t);
return JP(n.defaultValues) && n.defaultValues().then((e => {
j(e, n.resetOptions), h.state.next({
isLoading: !1
})
})), {
control: {
register: L,
unregister: D,
getFieldState: R,
_executeSchema: k,
_focusError: N,
_getWatch: E,
_getDirty: S,
_updateValid: v,
_removeUnmounted: () => {
for (const e of u.unMount) {
const t = fP(o, e);
t && (t._f.refs ? t._f.refs.every((e => !vT(e))) : !vT(t._f.ref)) && D(e)
}
u.unMount = new Set
},
_updateFieldArray: (e, t = [], n, r, i = !0, u = !0) => {
if (r && n) {
if (c.action = !0, u && Array.isArray(fP(o, e))) {
const t = n(fP(o, e), r.argA, r.argB);
i && qP(o, e, t)
}
if (u && Array.isArray(fP(a.errors, e))) {
const t = n(fP(a.errors, e), r.argA, r.argB);
i && qP(a.errors, e, t), ((e, t) => {
!pP(fP(e, t)).length && pT(e, t)
})(a.errors, e)
}
if (p.touchedFields && u && Array.isArray(fP(a.touchedFields, e))) {
const t = n(fP(a.touchedFields, e), r.argA, r.argB);
i && qP(a.touchedFields, e, t)
}
p.dirtyFields && (a.dirtyFields = xT(s, l)), h.state.next({
name: e,
isDirty: S(e, t),
dirtyFields: a.dirtyFields,
errors: a.errors,
isValid: a.isValid
})
} else qP(l, e, t)
},
_getFieldArray: t => pP(fP(c.mount ? l : s, t, e.shouldUnregister ? fP(s, t, []) : [])),
_reset: M,
_updateFormState: e => {
a = {
...a,
...e
}
},
_subjects: h,
_proxyFormState: p,
get _fields() {
return o
},
get _formValues() {
return l
},
get _stateFlags() {
return c
},
set _stateFlags(e) {
c = e
},
get _defaultValues() {
return s
},
get _names() {
return u
},
set _names(e) {
u = e
},
get _formState() {
return a
},
set _formState(e) {
a = e
},
get _options() {
return n
},
set _options(e) {
n = {
...n,
...e
}
}
},
trigger: P,
register: L,
handleSubmit: (e, t) => async r => {
r && (r.preventDefault && r.preventDefault(), r.persist && r.persist());
let i = UP(l);
if (h.state.next({
isSubmitting: !0
}), n.resolver) {
const {
errors: e,
values: t
} = await k();
a.errors = e, i = t
} else await w(o);
DP(a.errors) ? (h.state.next({
errors: {}
}), await e(i, r)) : (t && await t({
...a.errors
}, r), N()), h.state.next({
isSubmitted: !0,
isSubmitting: !1,
isSubmitSuccessful: DP(a.errors),
submitCount: a.submitCount + 1,
errors: a.errors
})
},
watch: (e, t) => JP(e) ? h.watch.subscribe({
next: n => e(E(void 0, t), n)
}) : E(e, t, !0),
setValue: C,
getValues: T,
reset: j,
resetField: (e, t = {}) => {
fP(o, e) && (hP(t.defaultValue) ? C(e, fP(s, e)) : (C(e, t.defaultValue), qP(s, e, t.defaultValue)), t.keepTouched || pT(a.touchedFields, e), t.keepDirty || (pT(a.dirtyFields, e), a.isDirty = t.defaultValue ? S(e, fP(s, e)) : S()), t.keepError || (pT(a.errors, e), p.isValid && v()), h.state.next({
...a
}))
},
clearErrors: e => {
e ? NP(e).forEach((e => pT(a.errors, e))) : a.errors = {}, h.state.next({
errors: a.errors
})
},
unregister: D,
setError: (e, t, n) => {
const r = (fP(o, e, {
_f: {}
})._f || {}).ref;
qP(a.errors, e, {
...t,
ref: r
}), h.state.next({
name: e,
errors: a.errors,
isValid: !1
}), n && n.shouldFocus && r && r.focus && r.focus()
},
setFocus: (e, t = {}) => {
const n = fP(o, e),
r = n && n._f;
if (r) {
const e = r.refs ? r.refs[0] : r.ref;
e.focus && (e.focus(), t.shouldSelect && e.select())
}
},
getFieldState: R
}
}
function CT(e = {}) {
const t = Ee.useRef(),
[n, r] = Ee.useState({
isDirty: !1,
isValidating: !1,
isLoading: !0,
isSubmitted: !1,
isSubmitting: !1,
isSubmitSuccessful: !1,
isValid: !1,
submitCount: 0,
dirtyFields: {},
touchedFields: {},
errors: {},
defaultValues: JP(e.defaultValues) ? void 0 : e.defaultValues
});
t.current || (t.current = {
...OT(e, (() => r((e => ({
...e
}))))),
formState: n
});
const i = t.current.control;
return i._options = e, jP({
subject: i._subjects.state,
next: e => {
LP(e, i._proxyFormState, i._updateFormState, !0) && r({
...i._formState
})
}
}), Ee.useEffect((() => {
i._stateFlags.mount || (i._updateValid(), i._stateFlags.mount = !0), i._stateFlags.watch && (i._stateFlags.watch = !1, i._subjects.state.next({})), i._removeUnmounted()
})), Ee.useEffect((() => {
e.values && !mT(e.values, i._defaultValues) && i._reset(e.values, i._options.resetOptions)
}), [e.values, i]), Ee.useEffect((() => {
n.submitCount && i._focusError()
}), [i, n.submitCount]), t.current.formState = RP(n, i), t.current
}
const AT = ({
children: e,
control: t,
name: n,
defaultValue: r,
required: i,
rules: a,
selectProps: o,
...s
}) => {
var l;
const {
field: {
value: c,
onBlur: u,
onChange: d,
ref: p
},
fieldState: {
error: h,
invalid: f
}
} = BP({
name: n,
control: t,
defaultValue: r,
rules: {
required: i,
...a
}
});
return (0, _w.jsx)(Xd, {
error: null === h || void 0 === h ? void 0 : h.message,
invalid: f,
required: null !== (l = !(null === a || void 0 === a || !a.required)) && void 0 !== l ? l : i,
...s,
children: (0, _w.jsx)(lg, {
name: n,
value: null !== c && void 0 !== c ? c : "",
onBlur: u,
onChange: d,
ref: p,
...o,
children: e
})
})
},
PT = ({
control: e,
name: t,
defaultValue: n,
required: r,
rules: i,
type: a,
inputProps: o,
...s
}) => {
var l;
const {
field: {
value: c,
onBlur: u,
onChange: d,
ref: p
},
fieldState: {
error: h,
invalid: f
}
} = BP({
name: t,
control: e,
defaultValue: n,
rules: {
required: r,
...i
}
}), {
t: m
} = bt("form");
return (0, _w.jsx)(Xd, {
error: null === h || void 0 === h ? void 0 : h.message,
invalid: f,
required: null !== (l = !(null === i || void 0 === i || !i.required)) && void 0 !== l ? l : r,
...s,
children: (0, _w.jsx)(Fm, {
name: t,
value: null !== c && void 0 !== c ? c : "",
onBlur: u,
onChange: d,
ref: p,
hidePasswordLabel: m("text_field_show_password"),
showPasswordLabel: m("text_field_hide_password"),
type: a,
...o
})
})
},
TT = (e, t) => ({
dialog: {
actions: {
showExitAppDialog: () => {
const e = t();
return LA.show(MA, {
title: _e.t("dialog_warning_exit_app_title", {
ns: "dialog"
}),
content: (0, _w.jsx)(jd, {
description: _e.t("dialog_warning_exit_app_text", {
ns: "dialog"
}),
gap: "100",
children: (0, _w.jsx)(Fd, {
name: "hideDialog",
value: "checked",
children: (0, _w.jsx)(ft, {
i18nKey: "dialog_warning_exit_app_checkbox",
t: _e.t,
ns: "dialog"
})
})
}),
primaryLabel: _e.t("dialog_warning_exit_app_confirm", {
ns: "dialog"
}),
primaryCallback: () => e.window.actions.exitLauncher()
})
},
showWarningExitAppGameRuningDialog: () => LA.show(jA, {
title: _e.t("dialog_warning_exit_app_title", {
ns: "dialog"
}),
content: _e.t("dialog_warning_exit_app_game_running_text", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_action_ok", {
ns: "dialog"
})
}),
showDiscoverDialog: () => {
const e = t();
return LA.show(jA, {
title: _e.t("dialog_discover_title", {
ns: "dialog"
}),
content: _e.t("dialog_discover_content", {
ns: "dialog"
}),
typeDialog: "default",
primaryLabel: _e.t("dialog_discover_start", {
ns: "dialog"
}),
primaryCallback: () => e.application.actions.setDiscoverStarted(!0),
secondaryLabel: _e.t("dialog_discover_skip", {
ns: "dialog"
}),
secondaryCallback: () => {
e.application.actions.setDiscoverStarted(!1), e.settings.actions.saveApplicationSettings({
name: "isDiscoverDone",
value: !0
})
}
})
},
showLogoutDialog: e => {
const n = t(),
r = n.settings.appSettings.accessibility.reduceMotion.wipeAnimationsDisabled;
return LA.show(jA, {
title: _e.t("dialog_warning_logout_title", {
ns: "dialog"
}),
content: _e.t(e ? "dialog_warning_logout_game_running_text" : "dialog_warning_logout_text", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_warning_logout_confirm", {
ns: "dialog"
}),
primaryCallback: async () => {
if (r) return void await rI();
const e = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
n.application.actions.setAnimatingAppLayoutWipe("in", !0);
const t = setTimeout((() => rI()), e / 2);
return () => clearTimeout(t)
}
})
},
showOsRequirementsDialog: e => LA.show(NA, {
title: _e.t("error_os_requirements_title", {
ns: "errors"
}),
content: (0, _w.jsx)(ft, {
i18nKey: "error_os_requirements_text",
t: _e.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.minimumRequirementsUrl,
external: !0
})],
values: {
game: e.gameName
}
})
}),
showCpuRequirementsDialog: () => LA.show(NA, {
title: _e.t("error_cpu_requirements_title", {
ns: "errors"
}),
content: _e.t("error_cpu_requirements_text", {
ns: "errors"
})
}),
showWarningDialogErrorOccured: ({
title: e,
content: t,
primaryCallback: n,
primaryLabel: r,
secondaryLabel: i,
secondaryCallback: a,
error: o
}) => LA.show(jA, {
title: null !== e && void 0 !== e ? e : _e.t("error_generic_title", {
ns: "errors"
}),
content: null !== t && void 0 !== t ? t : (0, _w.jsx)(ft, {
i18nKey: "error_generic_content",
t: _e.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})],
values: {
code: null === o || void 0 === o ? void 0 : o.code,
message: null === o || void 0 === o ? void 0 : o.message
}
}),
primaryLabel: null !== r && void 0 !== r ? r : _e.t("dialog_action_ok", {
ns: "dialog"
}),
primaryCallback: () => null === n || void 0 === n ? void 0 : n(),
secondaryLabel: null !== i && void 0 !== i ? i : _e.t("dialog_action_cancel", {
ns: "dialog"
}),
secondaryCallback: () => null === a || void 0 === a ? void 0 : a()
}),
showWarningDialogCacheClear: () => LA.show(jA, {
title: _e.t("dialog_debug_cache_clear_title", {
ns: "dialog"
}),
content: _e.t("dialog_debug_cache_clear_content", {
ns: "dialog"
}),
typeDialog: "default",
primaryLabel: _e.t("dialog_debug_cache_clear_button", {
ns: "dialog"
}),
primaryCallback: () => {
window.launcherAPI.store.clearStore()
},
secondaryLabel: _e.t("dialog_action_cancel", {
ns: "dialog"
})
}),
showAcknowledgeDialogErrorOccured: ({
title: e,
content: t,
primaryCallback: n,
primaryLabel: r,
error: i
}) => LA.show(NA, {
title: null !== e && void 0 !== e ? e : _e.t("error_generic_title", {
ns: "errors"
}),
content: null !== t && void 0 !== t ? t : (0, _w.jsx)(ft, {
i18nKey: "error_generic_content",
t: _e.t,
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
external: !0
}), (0, _w.jsx)(zm, {
href: yw.configuration.filesSupportUrl,
external: !0
})],
values: {
code: null === i || void 0 === i ? void 0 : i.code
}
}),
primaryCallback: () => null === n || void 0 === n ? void 0 : n(),
primaryLabel: null !== r && void 0 !== r ? r : void 0
}),
showWarningsDialog: (e, t) => LA.show(jA, {
title: e,
typeDialog: "positive",
content: Ow(t),
secondaryLabel: _e.t("dialog_action_close", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_action_acknowledge", {
ns: "dialog"
})
}),
showAgreementsDialog: (e, t, n) => LA.show(jA, {
title: e,
typeDialog: "positive",
content: Ow(`<h1>${t}</h1>${n}`),
secondaryLabel: _e.t("dialog_action_decline", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_action_accept", {
ns: "dialog"
}),
disablePrimaryUntilScrolled: !0
}),
showResetSettingsDialog: e => {
const n = t();
return LA.show(jA, {
title: _e.t("dialog_settings_reset_title", {
ns: "dialog"
}),
content: _e.t("dialog_settings_reset_content", {
ns: "dialog"
}),
secondaryLabel: _e.t("dialog_action_cancel", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_settings_reset_button", {
ns: "dialog"
}),
primaryCallback: () => {
n.settings.actions.resetChannelGameSettings(e)
}
})
},
showGameNotInstalledDialog: e => {
const n = t();
return LA.show(jA, {
title: _e.t("dialog_settings_game_not_installed_title", {
ns: "dialog"
}),
content: _e.t("dialog_settings_game_not_installed_content", {
ns: "dialog"
}),
secondaryLabel: _e.t("dialog_action_cancel", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_action_install", {
ns: "dialog"
}),
primaryCallback: () => {
n.installer.actions.addInstallationToQueue(e, yw.InstallationType.INSTALL)
}
})
},
showGameStartInstallationDialog: async e => {
const n = t(),
r = n.settings.appSettings.accessibility.reduceMotion.wipeAnimationsDisabled,
i = await ZC(e);
return LA.show(jA, {
typeDialog: "default",
title: _e.t("dialog_start_installation_title", {
ns: "dialog",
game: e.gameName,
channel: e.channelName
}),
content: (0, _w.jsxs)(cl, {
role: "group",
gap: "100",
vertical: !0,
children: [(0, _w.jsxs)(cl, {
role: "group",
gap: "0",
vertical: !0,
children: [(0, _w.jsx)("p", {
children: _e.t("dialog_start_installation_content_location", {
ns: "dialog"
})
}), (0, _w.jsxs)("p", {
children: [(0, _w.jsx)("span", {
className: "sol-u-color-foreground",
children: Lw(n.settings.library.defaultLibraryFolder)
}), i.installDir, "\\", e.channelId]
})]
}), (0, _w.jsx)("p", {
children: _e.t("dialog_start_installation_content_location_settings", {
ns: "dialog"
})
})]
}),
secondaryLabel: _e.t("dialog_start_installation_action_go_to_settings", {
ns: "dialog"
}),
secondaryCallback: () => {
const t = rO(`/${yD.SETTINGS}/${yD.SETTINGS_GAMES}`, {
gameId: e.gameId,
channelId: e.channelId
});
if (!r) return void(window.location.hash = t);
const i = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
n.application.actions.setAnimatingAppLayoutWipe("full", !0);
const a = setTimeout((() => {
window.location.hash = t
}), i / 2);
return () => clearTimeout(a)
},
primaryLabel: _e.t("dialog_start_installation_action_install", {
ns: "dialog"
}),
primaryCallback: () => {
n.installer.actions.addInstallationToQueue(e, yw.InstallationType.INSTALL)
}
})
},
showGameCancelInstallationDialog: e => {
const n = t();
return LA.show(jA, {
title: _e.t("dialog_cancel_installation_title", {
ns: "dialog"
}),
content: (0, _w.jsxs)(cl, {
role: "group",
gap: "100",
vertical: !0,
children: [(0, _w.jsx)("p", {
children: _e.t("dialog_cancel_installation_content", {
ns: "dialog",
info: `${e.game.gameName} - ${e.release?e.release.versionLabel+" - ":""}${e.game.channelId}`
})
}), e.type === yw.InstallationType.INSTALL && (0, _w.jsx)(Fd, {
type: "checkbox",
onChange: t => n.installer.actions.setInstallationOptions(e.game, {
keepFilesOnCancel: t.target.checked
}),
children: _e.t("dialog_cancel_installation_content_keep_files_downloaded", {
ns: "dialog"
})
})]
}),
secondaryLabel: _e.t("dialog_action_discard", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_action_cancel_download", {
ns: "dialog"
}),
secondaryCallback: () => {
n.application.actions.setDownloadPopoverOpened(!0)
},
primaryCallback: () => {
n.installer.actions.removeInstallation(e.game), n.application.actions.setDownloadPopoverOpened(!0)
}
})
},
showGameChannelUpdateAvailableDialog: e => LA.show(NA, {
typeDialog: "positive",
title: _e.t("dialog_launch_check_update_available_title", {
ns: "dialog"
}),
content: _e.t("dialog_launch_check_update_available_content", {
ns: "dialog",
game: e.gameName,
channel: e.channelName
})
}),
showWarningUninstallDialog: e => LA.show(MA, {
title: _e.t("dialog_warning_uninstall_title", {
game: e.gameName,
channel: e.channelName,
ns: "dialog"
}),
content: (0, _w.jsx)(jd, {
description: _e.t("dialog_warning_uninstall_text", {
ns: "dialog"
}),
gap: "100",
children: (0, _w.jsx)(Fd, {
name: "keepUserFolder",
value: "checked",
description: be("dialog_warning_uninstall_userFolder_checkbox_description", {
ns: "dialog",
path: Lw(`${e.libraryFolder}\\${e.installDir}\\${e.channelId}\\user`)
}),
defaultChecked: !0,
children: (0, _w.jsx)(ft, {
i18nKey: "dialog_warning_uninstall_userFolder_checkbox",
t: _e.t,
ns: "dialog"
})
})
}),
secondaryLabel: _e.t("dialog_action_cancel", {
ns: "dialog"
}),
primaryLabel: _e.t("dialog_warning_uninstall_confirm", {
ns: "dialog"
})
}),
showLostConnectionDialog: () => LA.show(NA, {
typeDialog: "default",
title: _e.t("dialog_warning_lost_connection_title", {
ns: "dialog"
}),
content: (0, _w.jsx)("span", {
children: (0, _w.jsx)(ft, {
i18nKey: "dialog_warning_lost_connection_content",
t: _e.t,
ns: "dialog"
})
}),
primaryLabel: _e.t("dialog_action_continue_offline", {
ns: "dialog"
})
})
}
}
}),
RT = SC_TOOLBOX_ENABLE_DOWNLOADER_BOOST ? [{
label: "!1024",
value: 1024
}, {
label: "!512",
value: 512
}, {
label: "!256",
value: 256
}, {
label: "!128",
value: 128
}, {
label: "CIG-MAX (25)",
value: 25
}, {
label: "20",
value: 20
}, {
label: "15",
value: 15
}, {
label: "10",
value: 10
}, {
label: "5",
value: 5
},{
label: "1",
value: 1
}] : [{
label: "Max",
value: 25
}, {
label: "20",
value: 20
}, {
label: "15",
value: 15
}, {
label: "10",
value: 10
}, {
label: "5",
value: 5
}],
DT = {
reduceMotion: {
syncWithSystem: !1,
backgroundVideoDisabled: !1,
unessentialAnimationsDisabled: !1,
wipeAnimationsDisabled: !1
}
},
LT = {
appSettings: {
quitOnWindowClose: !1,
hideQuitWarning: !1,
isDiscoverDone: !1,
download: {
concurrentTransfers: RT[0].value,
maximumDownloadBandwidth: 0
},
accessibility: DT
},
library: {
defaultLibraryFolder: ""
}
},
NT = ({
defaultLibraryFolder: e = "",
gamesSettings: t = [],
quitOnWindowClose: n = LT.appSettings.quitOnWindowClose,
hideQuitWarning: r = LT.appSettings.hideQuitWarning,
isDiscoverDone: i = LT.appSettings.isDiscoverDone,
download: a = LT.appSettings.download,
accessibility: o = LT.appSettings.accessibility
} = {}) => ({
...LT,
appSettings: {
...LT.appSettings,
quitOnWindowClose: n,
hideQuitWarning: r,
isDiscoverDone: i,
download: a,
accessibility: o
},
library: {
...LT.library,
defaultLibraryFolder: e
},
gamesSettings: t
}),
MT = (e, t) => ({
settings: {
...NT(),
actions: {
initializeApplicationSettings: async () => {
var n;
const r = null !== (n = await window.launcherAPI.store.getValueFromStore("library.libraryFolder")) && void 0 !== n ? n : `${yw.configuration.infoApp.defaultLibraryPath}${yw.configuration.infoApp.defaultLibraryFolder}`,
i = await window.launcherAPI.store.getValueFromStore("application.quitOnWindowClose"),
a = await window.launcherAPI.store.getValueFromStore("application.hideQuitWarning"),
o = await window.launcherAPI.store.getValueFromStore("application.isDiscoverDone"),
s = await window.launcherAPI.store.getValueFromStore("application.download"),
l = await t().settings.actions.getAccessibilitySettingsFromPersistentStore();
e((e => ({
settings: {
...e.settings,
...NT({
defaultLibraryFolder: Lw(r),
gamesSettings: e.settings.gamesSettings,
quitOnWindowClose: i,
hideQuitWarning: a,
isDiscoverDone: o,
download: s,
accessibility: l
})
}
})))
},
initializeGameSettings: async () => {
const {
library: n
} = t(), r = await window.launcherAPI.store.getValueFromStore("library.settings"), i = n.actions.getAvailableGamesChannelsWeightSorted().map((e => e.channels.map((t => ({
...r.find((n => n.channelId === t.id && n.gameId === e.id)),
gameId: e.id,
gameName: e.name,
channelId: t.id,
channelName: t.name,
platformId: t.platformId,
installDir: t.installDir
})))));
e((e => ({
settings: {
...e.settings,
gamesSettings: i.flat()
}
})))
},
getChannelDefaultGameSettings: e => {
const {
settings: n
} = t(), {
gameId: r,
channelId: i,
platformId: a,
gameName: o,
channelName: s
} = e;
return {
gameId: r,
gameName: o,
channelId: i,
channelName: s,
platformId: a,
libraryFolder: n.library.defaultLibraryFolder
}
},
getChannelGameSettings: async e => {
var t;
const n = await window.launcherAPI.store.getValueFromStore("library.settings");
return null !== (t = null === n || void 0 === n ? void 0 : n.find((({
gameId: t,
channelId: n
}) => t === (null === e || void 0 === e ? void 0 : e.gameId) && n === e.channelId))) && void 0 !== t ? t : null
},
resetChannelGameSettings: async n => {
const r = t(),
{
gameId: i,
channelId: a
} = n;
try {
const {
gamesSettings: t
} = r.settings, o = r.settings.actions.getChannelDefaultGameSettings(n);
let s = [...t.filter((e => e.channelId !== a)), o].sort(((e, t) => eA(e.channelId, t.channelId)));
e((e => ({
settings: {
...e.settings,
gamesSettings: s
}
})));
const l = (await window.launcherAPI.store.getValueFromStore("library.settings")).filter((e => e.gameId !== i || e.channelId !== a));
window.launcherAPI.store.setValueToStore("library.settings", l)
} catch (o) {
console.error("[ResetSettings - error]", o)
}
},
saveLibraryFolder: async n => {
e((e => ({
settings: {
...e.settings,
library: {
...e.library,
defaultLibraryFolder: n
}
}
}))), window.launcherAPI.store.setValueToStore("library.libraryFolder", n), window.launcherAPI.settings.setLibraryFolder(n), await t().settings.actions.initializeGameSettings()
},
saveChannelGameSettings: async n => {
const {
channelId: r
} = n, {
gamesSettings: i
} = t().settings;
let a = [...i.filter((e => e.channelId !== r)), n].sort(((e, t) => eA(e.channelId, t.channelId)));
e((e => ({
settings: {
...e.settings,
gamesSettings: a
}
})));
const o = await window.launcherAPI.store.getValueFromStore("library.settings");
if (o) {
const e = [...o.filter((e => e.channelId !== r)), {
...n
}].sort(((e, t) => eA(e.channelId, t.channelId)));
window.launcherAPI.store.setValueToStore("library.settings", e)
} else window.launcherAPI.store.setValueToStore("library.settings", a)
},
saveApplicationSettings: async t => {
e((e => ({
settings: {
...e.settings,
appSettings: {
...e.settings.appSettings,
[t.name]: t.value
}
}
}))), window.launcherAPI.store.setValueToStore(`application.${t.name}`, t.value)
},
getAccessibilitySettingsFromPersistentStore: async () => await window.launcherAPI.store.getValueFromStore("application.settings.accessibility"),
getAccessibilitySettings: () => t().settings.appSettings.accessibility,
setAccessibilitySettingsToPersistentStore: async e => {
e.forEach((e => {
window.launcherAPI.store.setValueToStore(`application.settings.accessibility.reduceMotion.${e.id}`, e.value)
}))
},
setAccessibilitySettings: t => {
const n = t.reduce(((e, t) => (e[t.id] = t.value, e)), {});
e((e => ({
...e,
settings: {
...e.settings,
appSettings: {
...e.settings.appSettings,
accessibility: {
...e.settings.appSettings.accessibility,
reduceMotion: {
...e.settings.appSettings.accessibility.reduceMotion,
...n
}
}
}
}
})))
},
setDownloadSettings: (e, t) => {
window.launcherAPI.installer.setDownloadOptions({
name: e,
value: t
}), window.launcherAPI.store.setValueToStore(`application.download.${e}`, t)
},
onSetDownloadSettingsSuccess: async e => {
const n = {
...t().settings.appSettings.download,
[e.name]: e.value
};
await t().settings.actions.saveApplicationSettings({
name: "download",
value: n
})
},
debugGetLogs: async () => {
window.launcherAPI.settings.openLogsFolder()
},
getAnimationSystemSettings: async () => await window.launcherAPI.settings.getAnimationSystemSettings(),
restartApp: () => window.launcherAPI.settings.restartApp()
}
}
});
let jT = null;
const FT = e => Object.entries(e).reduce(((e, [t, n]) => ({
...e,
[t]: `${yw.configuration.assets.directory}${n}`
})), {}),
zT = e => ({
volume: null !== e && void 0 !== e ? e : 50,
previousVolume: null,
system: null,
soundList: FT(yw.configuration.assets.sounds),
trackList: FT(yw.configuration.assets.musics)
}),
VT = (e, t) => ({
soundSystem: {
...zT(),
actions: {
initializeSoundContext: async () => {
var t;
const n = await window.launcherAPI.store.getValueFromStore("application.volume"),
r = zT(n);
jT = null !== (t = jT) && void 0 !== t ? t : new _E({
sounds: r.soundList,
musics: r.trackList,
volume: r.volume
}), e((e => ({
soundSystem: {
...e.soundSystem,
...r,
system: jT
}
}))), jT.playSound("open"), jT.playBackgroundTrack()
},
changeVolume: (n, r = 0) => {
const i = t().soundSystem.system;
if (!i) return;
let a = t().soundSystem.volume;
const o = setInterval((() => {
r > 0 && a !== n ? a = a < n ? Math.min(a + 1, n) : Math.max(a - 1, n) : clearInterval(o);
const t = r > 0 ? a : n;
e((e => ({
soundSystem: {
...e.soundSystem,
previousVolume: a,
volume: t
}
}))), window.launcherAPI.store.setValueToStore("application.volume", t), i.setGain(t)
}), r ? r / (n > a ? n - a : a - n) : 0)
},
mute: () => {
e((e => ({
soundSystem: {
...e.soundSystem,
previousVolume: e.soundSystem.volume
}
}))), t().soundSystem.actions.changeVolume(0)
},
unmute: () => {
var n;
t().soundSystem.actions.changeVolume(null !== (n = t().soundSystem.previousVolume) && void 0 !== n ? n : 50), e((e => ({
soundSystem: {
...e.soundSystem,
previousVolume: null
}
})))
}
}
}
}),
UT = {
randomUUID: "undefined" !== typeof crypto && crypto.randomUUID && crypto.randomUUID.bind(crypto)
};
let BT;
const GT = new Uint8Array(16);
function WT() {
if (!BT && (BT = "undefined" !== typeof crypto && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !BT)) throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
return BT(GT)
}
const $T = [];
for (let n = 0; n < 256; ++n) $T.push((n + 256).toString(16).slice(1));
function qT(e, t = 0) {
return ($T[e[t + 0]] + $T[e[t + 1]] + $T[e[t + 2]] + $T[e[t + 3]] + "-" + $T[e[t + 4]] + $T[e[t + 5]] + "-" + $T[e[t + 6]] + $T[e[t + 7]] + "-" + $T[e[t + 8]] + $T[e[t + 9]] + "-" + $T[e[t + 10]] + $T[e[t + 11]] + $T[e[t + 12]] + $T[e[t + 13]] + $T[e[t + 14]] + $T[e[t + 15]]).toLowerCase()
}
const HT = function(e, t, n) {
if (UT.randomUUID && !t && !e) return UT.randomUUID();
const r = (e = e || {}).random || (e.rng || WT)();
if (r[6] = 15 & r[6] | 64, r[8] = 63 & r[8] | 128, t) {
n = n || 0;
for (let e = 0; e < 16; ++e) t[n + e] = r[e];
return t
}
return qT(r)
},
KT = {
list: []
},
YT = (e, t) => ({
toasts: {
...KT,
actions: {
async init() {
const e = t();
window.launcherAPI.autoUpdate.onNewVersionInstalled((() => {
e.toasts.actions.add({
title: AI("auto_update_toast_update_installed"),
type: "positive",
icon: fI,
closeOnClick: !1
}, !0)
}))
},
async add(n, r = !1) {
const i = await window.launcherAPI.window.isMinimized(),
a = t(),
o = HT();
r && window.launcherAPI.notification.show({
title: Tw(n.title),
body: Tw(n.children)
}), i || e({
toasts: {
...a.toasts,
list: [...a.toasts.list, {
...n,
id: o,
onClose: e => a.toasts.actions.remove(e)
}]
}
})
},
remove(n) {
const r = t();
e({
toasts: {
...r.toasts,
list: r.toasts.list.filter((e => e.id !== n))
}
})
}
}
}
}),
QT = (e = null, t = null, n = {}) => ({
identity: e,
device: t,
sessions: n
}),
ZT = (e, t) => ({
user: {
...QT(),
actions: {
initializeUser: async () => {
const {
environment: t
} = await window.launcherAPI.game.getGlobalConfig(), n = await window.launcherAPI.store.getValueFromStore("identity"), r = await window.launcherAPI.store.getValueFromStore("device"), i = await window.launcherAPI.store.getValueFromStore("session"), a = QT(n, r, i ? {
[t]: i
} : {});
var o, s, l;
n && Rw().authentication.onSignInSuccess({
accountName: null !== (o = n.username) && void 0 !== o ? o : "",
trackingMetricsId: null !== (s = n.trackingMetricsId) && void 0 !== s ? s : "",
heapAccountId: null !== (l = n.heapAccountId) && void 0 !== l ? l : ""
});
e((e => ({
user: {
...e.user,
...a
}
})))
},
clearSession: t => {
e((e => ({
user: {
...e.user,
sessions: {
...e.user.sessions,
[t]: {}
}
}
})))
},
setSession: ({
session: n,
platform: r,
remember: i = !1
}) => {
const {
application: a
} = t(), {
store: o
} = Rw(), s = null !== r && void 0 !== r ? r : a.platformMaster;
i && s === a.platformMaster && o.setValueToStore("session", n), e((e => ({
user: {
...e.user,
sessions: {
...e.user.sessions,
[s]: {
...e.user.sessions[s],
...n
}
}
}
})))
},
setIdentity: ({
identity: t,
remember: n = !1
}) => {
const {
store: r
} = Rw();
n && r.setValueToStore("identity", t), e((e => ({
user: {
...e.user,
identity: t
}
})))
},
setDevice: ({
device: t,
remember: n = !1
}) => {
const {
store: r
} = Rw();
n && r.setValueToStore("device", t), e((e => ({
user: {
...e.user,
device: t
}
})))
},
getSession: async e => {
const {
application: n,
user: r
} = t(), i = r.sessions[null !== e && void 0 !== e ? e : n.platformMaster];
if (i && (e => "key" in e && "value" in e && "cookie" in e)(i)) return i;
const a = await aI.fetchQuery((o = e, {
queryKey: [`signinSession-${o}`],
queryFn: async () => yE.authentication.getSignInSession(o)
}));
var o;
if (!a) throw new wS({
message: `Not able to log-in to ${e} platform.`,
code: Fw,
payload: null,
environment: e
});
return r.actions.setSession({
session: a,
platform: e
}), a
},
isLoggedIn: (e, n) => {
var r, i;
const {
application: a,
user: o
} = t(), s = null !== (r = o.sessions[a.platformMaster]) && void 0 !== r ? r : e, l = null !== (i = o.identity) && void 0 !== i ? i : n, c = o.device;
var u;
return !!c && !("expires" in (u = c) && u.expires && u.expires <= Date.now()) && !!s && !!l
},
resetUser: t => {
window.launcherAPI.store.setValueToStore("session", null), window.launcherAPI.store.setValueToStore("identity", null), t.clearDevice && window.launcherAPI.store.setValueToStore("device", null), e((e => ({
user: {
...e.user,
...QT(),
device: t.clearDevice ? null : e.user.device
}
})))
}
}
}
}),
XT = (e, t) => ({
window: {
actions: {
openInternalWindow: async (e, t) => {
const n = pR.getState().application,
r = pR.getState().user,
i = n.platformMaster,
a = r.sessions[i],
o = r.device,
s = [{
name: "viewed_cookie_notif",
value: "1",
sameSite: "unspecified"
}, {
name: "viewed_privacy_notif",
value: "1",
sameSite: "unspecified"
}];
s.push({
name: a.cookie,
value: a.value,
sameSite: "unspecified"
}), o && s.push({
name: o.cookie,
value: o.value,
sameSite: "unspecified"
}), window.launcherAPI.window.setOpenInternalWindow(e, s, t)
},
openUserAccount: e => {
t().window.actions.openInternalWindow(e, {
target: "website",
reload: !0
})
},
openDiscover: () => t().dialog.actions.showDiscoverDialog(),
exitLauncher: () => {
const {
application: e,
dialog: n,
settings: r
} = t(), {
wipeAnimationsDisabled: i
} = r.appSettings.accessibility.reduceMotion;
if (e.isGameRunning) return n.actions.showWarningExitAppGameRuningDialog();
if (i) return void Rw().window.setQuitWindow();
const a = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
return e.actions.setAnimatingAppLayoutWipe("in", !0), setTimeout((() => {
Rw().window.setQuitWindow()
}), a / 2)
},
closeLauncher: async () => {
const {
application: n,
dialog: r,
settings: i,
window: a
} = t(), {
wipeAnimationsDisabled: o
} = i.appSettings.accessibility.reduceMotion, s = i.appSettings.quitOnWindowClose, l = i.appSettings.hideQuitWarning, c = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)), u = () => {
s ? a.actions.exitLauncher() : Rw().window.setCloseWindow()
};
if (l || !s) {
if (o) {
n.actions.setAnimatingAppLayoutWipe("in", !0);
const e = setTimeout(u, c / 2);
return () => clearTimeout(e)
}
return u()
}
const d = await r.actions.showExitAppDialog(),
p = Boolean(d.results && d.results.hideDialog);
p && (e((e => ({
settings: {
...e.settings,
application: {
...e.settings.appSettings,
hideQuitWarning: p
}
}
}))), await t().settings.actions.saveApplicationSettings({
name: "hideQuitWarning",
value: p
}))
},
logoutLauncher: () => {
const e = t();
return e.dialog.actions.showLogoutDialog(e.application.isGameRunning)
}
}
}
}),
JT = e => {
let t;
const n = new Set,
r = (e, r) => {
const i = "function" === typeof e ? e(t) : e;
if (!Object.is(i, t)) {
const e = t;
t = (null != r ? r : "object" !== typeof i || null === i) ? i : Object.assign({}, t, i), n.forEach((n => n(t, e)))
}
},
i = () => t,
a = {
setState: r,
getState: i,
getInitialState: () => o,
subscribe: e => (n.add(e), () => n.delete(e)),
destroy: () => {
console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."), n.clear()
}
},
o = t = e(r, i, a);
return a
},
eR = e => e ? JT(e) : JT;
var tR = n(327);
const {
useDebugValue: nR
} = Ee, {
useSyncExternalStoreWithSelector: rR
} = tR;
let iR = !1;
const aR = e => e;
const oR = e => {
"function" !== typeof e && console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");
const t = "function" === typeof e ? eR(e) : e,
n = (e, n) => function(e, t = aR, n) {
n && !iR && (console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"), iR = !0);
const r = rR(e.subscribe, e.getState, e.getServerState || e.getInitialState, t, n);
return nR(r), r
}(t, e, n);
return Object.assign(n, t), n
},
sR = e => e ? oR(e) : oR;
const lR = new Map,
cR = e => {
const t = lR.get(e);
return t ? Object.fromEntries(Object.entries(t.stores).map((([e, t]) => [e, t.getState()]))) : {}
},
uR = (e, t = {}) => (n, r, i) => {
const {
enabled: a,
anonymousActionType: o,
store: s,
...l
} = t;
let c;
try {
c = (null == a || a) && window.__REDUX_DEVTOOLS_EXTENSION__
} catch (m) {}
if (!c) return a && console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"), e(n, r, i);
const {
connection: u,
...d
} = ((e, t, n) => {
if (void 0 === e) return {
type: "untracked",
connection: t.connect(n)
};
const r = lR.get(n.name);
if (r) return {
type: "tracked",
store: e,
...r
};
const i = {
connection: t.connect(n),
stores: {}
};
return lR.set(n.name, i), {
type: "tracked",
store: e,
...i
}
})(s, c, l);
let p = !0;
i.setState = (e, t, a) => {
const c = n(e, t);
if (!p) return c;
const d = void 0 === a ? {
type: o || "anonymous"
} : "string" === typeof a ? {
type: a
} : a;
return void 0 === s ? (null == u || u.send(d, r()), c) : (null == u || u.send({
...d,
type: `${s}/${d.type}`
}, {
...cR(l.name),
[s]: i.getState()
}), c)
};
const h = (...e) => {
const t = p;
p = !1, n(...e), p = t
},
f = e(i.setState, r, i);
if ("untracked" === d.type ? null == u || u.init(f) : (d.stores[d.store] = i, null == u || u.init(Object.fromEntries(Object.entries(d.stores).map((([e, t]) => [e, e === d.store ? f : t.getState()]))))), i.dispatchFromDevtools && "function" === typeof i.dispatch) {
let e = !1;
const t = i.dispatch;
i.dispatch = (...n) => {
"__setState" !== n[0].type || e || (console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'), e = !0), t(...n)
}
}
return u.subscribe((e => {
var t;
switch (e.type) {
case "ACTION":
return "string" !== typeof e.payload ? void console.error("[zustand devtools middleware] Unsupported action format") : dR(e.payload, (e => {
if ("__setState" !== e.type) i.dispatchFromDevtools && "function" === typeof i.dispatch && i.dispatch(e);
else {
if (void 0 === s) return void h(e.state);
1 !== Object.keys(e.state).length && console.error('\n [zustand devtools middleware] Unsupported __setState action format. \n When using \'store\' option in devtools(), the \'state\' should have only one key, which is a value of \'store\' that was passed in devtools(),\n and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }\n ');
const t = e.state[s];
if (void 0 === t || null === t) return;
JSON.stringify(i.getState()) !== JSON.stringify(t) && h(t)
}
}));
case "DISPATCH":
switch (e.payload.type) {
case "RESET":
return h(f), void 0 === s ? null == u ? void 0 : u.init(i.getState()) : null == u ? void 0 : u.init(cR(l.name));
case "COMMIT":
return void 0 === s ? void(null == u || u.init(i.getState())) : null == u ? void 0 : u.init(cR(l.name));
case "ROLLBACK":
return dR(e.state, (e => {
if (void 0 === s) return h(e), void(null == u || u.init(i.getState()));
h(e[s]), null == u || u.init(cR(l.name))
}));
case "JUMP_TO_STATE":
case "JUMP_TO_ACTION":
return dR(e.state, (e => {
void 0 !== s ? JSON.stringify(i.getState()) !== JSON.stringify(e[s]) && h(e[s]) : h(e)
}));
case "IMPORT_STATE": {
const {
nextLiftedState: n
} = e.payload, r = null == (t = n.computedStates.slice(-1)[0]) ? void 0 : t.state;
if (!r) return;
return h(void 0 === s ? r : r[s]), void(null == u || u.send(null, n))
}
case "PAUSE_RECORDING":
return p = !p
}
return
}
})), f
},
dR = (e, t) => {
let n;
try {
n = JSON.parse(e)
} catch (r) {
console.error("[zustand devtools middleware] Could not parse the received json", r)
}
void 0 !== n && t(n)
};
const pR = sR()(uR(((...e) => ({
...oI(...e),
...II(...e),
...OI(...e),
...MT(...e),
...VT(...e),
...BC(...e),
...ZT(...e),
...RI(...e),
...aA(...e),
...TT(...e),
...YT(...e),
...iA(...e),
...XT(...e)
})), {
name: "launcher-store",
enabled: !0,
trace: !0
})),
hR = window.envVars.reviewAppRootUrl,
fR = e => {
var t;
const n = yw.configuration.env,
r = pR.getState().application.platformMaster;
return ("reviewapp" === r ? hR : null !== (t = n[r].rootUrl) && void 0 !== t ? t : yw.configuration.rootUrl) + e
},
mR = e => e / 1e3,
gR = (0, Ee.createContext)({}),
vR = ({
children: e
}) => {
const {
window: {
onSetHideWindowSuccessFul: t,
onSetShowWindowSuccessFul: n
}
} = window.launcherAPI, r = pR.getState().application, [i, a] = (0, Ee.useState)(!1);
return (0, Ee.useEffect)((() => {
const e = t((() => {
a(!0), r.actions.setWindowMinimized(!0)
})),
i = n((() => {
a(!1), r.actions.setWindowMinimized(!1)
}));
return () => {
e(), i()
}
}), [r.actions, t, n]), (0, _w.jsx)(gR.Provider, {
value: {
isMinimized: i
},
children: e
})
};
var yR = class extends zE.l {
constructor(e, t) {
super(), this.#I = void 0, this.#O = e, this.setOptions(t), this.bindMethods(), this.#C()
}
#O;
#I;
#A;
#P;
bindMethods() {
this.mutate = this.mutate.bind(this), this.reset = this.reset.bind(this)
}
setOptions(e) {
const t = this.options;
this.options = this.#O.defaultMutationOptions(e), (0, jE.VS)(t, this.options) || this.#O.getMutationCache().notify({
type: "observerOptionsUpdated",
mutation: this.#A,
observer: this
}), this.#A?.setOptions(this.options)
}
onUnsubscribe() {
this.hasListeners() || this.#A?.removeObserver(this)
}
onMutationUpdate(e) {
this.#C(), this.#T(e)
}
getCurrentResult() {
return this.#I
}
reset() {
this.#A = void 0, this.#C(), this.#T()
}
mutate(e, t) {
return this.#P = t, this.#A?.removeObserver(this), this.#A = this.#O.getMutationCache().build(this.#O, this.options), this.#A.addObserver(this), this.#A.execute(e)
}
#C() {
const e = this.#A?.state ?? {
context: void 0,
data: void 0,
error: null,
failureCount: 0,
failureReason: null,
isPaused: !1,
status: "idle",
variables: void 0,
submittedAt: 0
};
this.#I = {
...e,
isPending: "pending" === e.status,
isSuccess: "success" === e.status,
isError: "error" === e.status,
isIdle: "idle" === e.status,
mutate: this.mutate,
reset: this.reset
}
}
#T(e) {
FE.batch((() => {
this.#P && this.hasListeners() && ("success" === e?.type ? (this.#P.onSuccess?.(e.data, this.#I.variables, this.#I.context), this.#P.onSettled?.(e.data, null, this.#I.variables, this.#I.context)) : "error" === e?.type && (this.#P.onError?.(e.error, this.#I.variables, this.#I.context), this.#P.onSettled?.(void 0, e.error, this.#I.variables, this.#I.context))), this.listeners.forEach((e => {
e(this.#I)
}))
}))
}
},
_R = n(3713);
function bR(e, t) {
return "function" === typeof e ? e(...t) : !!e
}
function xR(e, t) {
const n = (0, _R.NL)(t),
[r] = Ee.useState((() => new yR(n, e)));
Ee.useEffect((() => {
r.setOptions(e)
}), [r, e]);
const i = Ee.useSyncExternalStore(Ee.useCallback((e => r.subscribe(FE.batchCalls(e))), [r]), (() => r.getCurrentResult()), (() => r.getCurrentResult())),
a = Ee.useCallback(((e, t) => {
r.mutate(e, t).catch(kR)
}), [r]);
if (i.error && bR(r.options.throwOnError, [i.error])) throw i.error;
return {
...i,
mutate: a,
mutateAsync: i.mutate
}
}
function kR() {}
const wR = {
cancelOnUnmount: !0,
cancelOnConditionChange: !0
},
SR = (e, t, n, r = wR) => {
const i = {
...wR,
...r || {}
},
a = (0, Ee.useRef)(),
o = (0, Ee.useRef)(e),
[s, l] = (0, Ee.useState)(!1),
c = (e => {
const t = (0, Ee.useRef)();
return (0, Ee.useEffect)((() => (t.current = e, () => {
t.current = void 0
}))), t.current
})(n),
u = (0, Ee.useCallback)((() => {
a.current && (clearTimeout(a.current), l(!0))
}), []);
return (0, Ee.useEffect)((() => {
var t;
"function" === typeof(t = e) && t.constructor && t.call && t.apply && (o.current = e)
}), [e]), (0, Ee.useEffect)((() => {
n && "number" === typeof t && (a.current = setTimeout((() => {
o.current()
}), t))
}), [n, t]), (0, Ee.useEffect)((() => {
c && n !== c && i.cancelOnConditionChange && u()
}), [n, r]), (0, Ee.useEffect)((() => () => {
i.cancelOnUnmount && u()
}), []), [s, u]
},
ER = ({
location: e,
delay: t
}) => {
const n = bC(),
r = (0, Ee.useRef)(n);
return (0, Ee.useEffect)((() => {
const n = setTimeout((() => {
e && r.current(e)
}), t);
return () => clearTimeout(n)
}), [e, t]), r.current
},
IR = [{
id: "website",
action: () => window.open(yw.configuration.websiteUrl, "_blank")
}, {
id: "report_bug",
action: () => window.open(yw.configuration.issueCouncilUrl, "_blank")
}, {
id: "spectrum",
action: () => window.open(yw.configuration.spectrumUrl, "_blank")
}, {
id: "community_hub",
action: () => window.open(yw.configuration.communityHubUrl, "_blank")
}, {
id: "support",
action: () => window.open(yw.configuration.supportUrl, "_blank")
}],
OR = () => {
const {
t: e
} = bt("tray"), {
tray: {
onMenuItemClicked: t,
updateMenu: n
}
} = Rw(), {
isMinimized: r
} = (() => {
const e = (0, Ee.useContext)(gR);
if (!e) throw new Error("useTheme must be used within a ThemeProvider");
return e
})(), {
exitLauncher: i,
logoutLauncher: a
} = pR((e => e.window.actions)), {
identity: o
} = pR((e => e.user)), {
volume: s,
actions: {
mute: l,
unmute: c
}
} = pR((e => e.soundSystem)), u = 0 === s, d = !!o, p = (0, Ee.useMemo)((() => [...IR, {
id: "logout",
action: a,
visible: d
}, {
id: "mute",
action: l,
visible: !u && !r
}, {
id: "unmute",
action: c,
visible: u && !r
}, {
id: "quit",
action: i
}]), [i, r, u, d, a, l, c]), h = p.map((({
action: t,
id: n,
visible: r
}) => ({
id: n,
label: e(`tray_${n}`),
visible: r
})));
n(h), (0, Ee.useEffect)((() => {
const e = t((e => {
var t;
return null === (t = p.find((t => t.id === e))) || void 0 === t ? void 0 : t.action()
}));
return e
}), [p, t])
},
CR = () => {
const e = pR((e => e.autoUpdate)),
{
onUpdateDownloaded: t,
onQuitInstallError: n
} = window.launcherAPI.autoUpdate;
(0, Ee.useEffect)((() => t((t => e.actions.displayDialog(t)))), [e.actions, t]), (0, Ee.useEffect)((() => n((t => e.actions.displayDialog(t)))), [e.actions, n])
};
function AR(e, t, n) {
var r = this,
i = (0, Ee.useRef)(null),
a = (0, Ee.useRef)(0),
o = (0, Ee.useRef)(null),
s = (0, Ee.useRef)([]),
l = (0, Ee.useRef)(),
c = (0, Ee.useRef)(),
u = (0, Ee.useRef)(e),
d = (0, Ee.useRef)(!0);
u.current = e;
var p = "undefined" != typeof window,
h = !t && 0 !== t && p;
if ("function" != typeof e) throw new TypeError("Expected a function");
t = +t || 0;
var f = !!(n = n || {}).leading,
m = !("trailing" in n) || !!n.trailing,
g = "maxWait" in n,
v = "debounceOnServer" in n && !!n.debounceOnServer,
y = g ? Math.max(+n.maxWait || 0, t) : null;
(0, Ee.useEffect)((function() {
return d.current = !0,
function() {
d.current = !1
}
}), []);
var _ = (0, Ee.useMemo)((function() {
var e = function(e) {
var t = s.current,
n = l.current;
return s.current = l.current = null, a.current = e, c.current = u.current.apply(n, t)
},
n = function(e, t) {
h && cancelAnimationFrame(o.current), o.current = h ? requestAnimationFrame(e) : setTimeout(e, t)
},
_ = function(e) {
if (!d.current) return !1;
var n = e - i.current;
return !i.current || n >= t || n < 0 || g && e - a.current >= y
},
b = function(t) {
return o.current = null, m && s.current ? e(t) : (s.current = l.current = null, c.current)
},
x = function e() {
var r = Date.now();
if (_(r)) return b(r);
if (d.current) {
var o = t - (r - i.current),
s = g ? Math.min(o, y - (r - a.current)) : o;
n(e, s)
}
},
k = function() {
if (p || v) {
var u = Date.now(),
h = _(u);
if (s.current = [].slice.call(arguments), l.current = r, i.current = u, h) {
if (!o.current && d.current) return a.current = i.current, n(x, t), f ? e(i.current) : c.current;
if (g) return n(x, t), e(i.current)
}
return o.current || n(x, t), c.current
}
};
return k.cancel = function() {
o.current && (h ? cancelAnimationFrame(o.current) : clearTimeout(o.current)), a.current = 0, s.current = i.current = l.current = o.current = null
}, k.isPending = function() {
return !!o.current
}, k.flush = function() {
return o.current ? b(Date.now()) : c.current
}, k
}), [f, g, t, y, m, h, p, v]);
return _
}
function PR(e, t, n) {
var r = void 0 === n ? {} : n,
i = r.leading,
a = r.trailing;
return AR(e, t, {
maxWait: t,
leading: void 0 === i || i,
trailing: void 0 === a || a
})
}
const TR = () => {
const [e, t] = (0, Ee.useState)(!1), [n, r] = (0, Ee.useState)([{
id: "backgroundVideoDisabled",
title: "settings_accessibility_reduce_motion_background_video_toggle_title",
description: "settings_accessibility_reduce_motion_background_video_toggle_description",
value: !1,
dirty: null
}, {
id: "unessentialAnimationsDisabled",
title: "settings_accessibility_reduce_motion_unessential_animation_toggle_title",
description: "settings_accessibility_reduce_motion_unessential_animation_toggle_description",
value: !1,
dirty: null
}, {
id: "wipeAnimationsDisabled",
title: "settings_accessibility_reduce_motion_transition_effects_toggle_title",
description: "settings_accessibility_reduce_motion_transition_effects_toggle_description",
value: !1,
dirty: null
}]), [i, a] = (0, Ee.useState)({
id: "syncWithSystem",
title: "settings_accessibility_reduce_motion_system_sync_title",
description: "settings_accessibility_reduce_motion_system_sync_description",
value: !1,
dirty: null
}), {
t: o
} = bt("settingsPage"), s = pR((e => e.settings)), l = PR((async e => await s.actions.setAccessibilitySettingsToPersistentStore(e)), 400), c = (0, Ee.useCallback)((() => {
const e = n.some((e => e.dirty)),
t = i.dirty;
return e || t
}), [n, i]), u = (0, Ee.useCallback)((async () => {
var e;
const n = s.actions.getAccessibilitySettings(),
i = null !== (e = await s.actions.getAccessibilitySettingsFromPersistentStore()) && void 0 !== e ? e : DT,
o = await s.actions.getAnimationSystemSettings();
t(o.prefersReducedMotion), a((e => {
const t = n.reduceMotion.syncWithSystem !== i.reduceMotion.syncWithSystem;
return {
...e,
value: i.reduceMotion.syncWithSystem,
dirty: t
}
})), i.reduceMotion.syncWithSystem ? r((e => e.map((e => {
const t = n.reduceMotion[e.id] !== o.prefersReducedMotion;
return t && (l([{
id: e.id,
value: o.prefersReducedMotion
}]), s.actions.setAccessibilitySettings([{
id: e.id,
value: o.prefersReducedMotion
}])), {
...e,
value: o.prefersReducedMotion,
dirty: t
}
})))) : r((e => e.map((e => {
const t = i.reduceMotion[e.id],
r = n.reduceMotion[e.id] !== t;
return {
...e,
value: t,
dirty: r
}
}))))
}), [s.actions]), d = (0, Ee.useCallback)((async (e, t) => {
r((n => n.map((n => n.id === t ? {
...n,
value: e,
dirty: !0
} : n)))), l([{
id: t,
value: e
}])
}), [l]), p = (0, Ee.useCallback)((async e => {
const o = await s.actions.getAnimationSystemSettings();
t(o.prefersReducedMotion), r((t => t.map((t => ({
...t,
value: !!e && o.prefersReducedMotion,
dirty: !0
}))))), a((t => ({
...t,
value: e,
dirty: !0
})));
const c = [...n.map((t => ({
id: t.id,
value: !!e && o.prefersReducedMotion
}))), ...i && [{
id: "syncWithSystem",
value: e
}]];
l(c)
}), [l]);
return (0, Ee.useEffect)((() => {
u()
}), []), (0, _w.jsxs)(jd, {
title: o("settings_accessibility_reduce_motion_title"),
description: o("settings_accessibility_reduce_motion_description"),
children: [(0, _w.jsx)(Fd, {
checked: i.value,
type: "checkbox",
onChange: ({
target: {
checked: e
}
}) => p(e),
description: o(i.description),
warning: i.dirty,
children: o(i.title)
}), (0, _w.jsx)(cl, {
vertical: !0,
gap: "100",
className: "sol-u-padding-is-250",
children: n.map((e => (0, _w.jsx)(Fd, {
type: "toggle",
description: o(e.description),
checked: e.value,
onChange: ({
target: {
checked: t
}
}) => d(t, e.id),
disabled: i.value,
warning: e.dirty,
children: o(e.title)
}, e.id)))
}), i.value && (0, _w.jsx)(Md, {
className: "sol-u-padding-is-250",
children: (0, _w.jsx)(Nd, {
type: "informative",
children: o("settings_accessibility_reduce_motion_information_" + (e ? "enabled" : "disabled"))
})
}), c() && (0, _w.jsx)(Nd, {
className: "sol-u-margin-bs-150",
type: "notice",
icon: wI,
children: (0, _w.jsx)(ft, {
i18nKey: "settings_accessibility_reduce_motion_information_restart_link_label",
ns: "settingsPage",
components: {
iclink: (0, _w.jsx)(zm, {
href: "#",
onClick: () => s.actions.restartApp(),
inherit: !0
})
}
})
})]
})
},
RR = () => {
const {
t: e
} = bt("settingsPage");
return (0, _w.jsx)(cg, {
title: e("settings_accessibility_title"),
children: (0, _w.jsx)(TR, {})
})
},
DR = () => {
const e = pR((e => e.dialog)),
t = pR((e => e.settings)),
{
t: n
} = bt("settingsPage"),
[r, i] = (0, Ee.useState)(!1),
[a, o] = (0, Ee.useState)(null);
SR((() => {
o(null), i(!1)
}), Nw, r), (0, Ee.useEffect)((() => {
const e = window.launcherAPI.store.onClearStoreSuccess((() => {
i(!0), o({
id: "isCacheCleared",
message: n("settings_common_saved")
})
})),
t = window.launcherAPI.store.onClearStoreError((() => {
i(!1), o(null)
}));
return () => {
e(), t()
}
}), []);
const s = (0, Ee.useCallback)((async () => {
a && o(null), await e.actions.showWarningDialogCacheClear()
}), [e.actions, a]),
l = (0, Ee.useCallback)((async () => {
t.actions.debugGetLogs()
}), [t.actions]);
return (0, _w.jsx)(jd, {
title: n("settings_application_debug_tools_title"),
description: (0, _w.jsx)(ft, {
i18nKey: "settings_application_debug_tools_description",
ns: "settingsPage",
components: {
iclink: (0, _w.jsx)(zm, {
href: yw.configuration.issueCouncilUrl,
label: n("app_header_menu_issue_council"),
external: !0
})
}
}),
children: (0, _w.jsxs)(Xd, {
horizontal: !0,
success: a && a.message,
label: n("settings_application_debug_tools_label"),
labelType: "hidden",
children: [(0, _w.jsx)(el, {
onClick: () => s(),
type: "button",
children: n("settings_application_debug_tools_button_clear_cache")
}), (0, _w.jsx)(el, {
onClick: () => l(),
type: "button",
children: n("settings_application_debug_tools_button_get_logs")
})]
})
})
},
LR = () => {
const e = pR((e => e.settings)),
[t, n] = (0, Ee.useState)(e.appSettings.quitOnWindowClose),
[r, i] = (0, Ee.useState)(!1),
[a, o] = (0, Ee.useState)(null),
{
t: s
} = bt("settingsPage");
SR((() => {
o(null), i(!1)
}), Nw, r), (0, Ee.useEffect)((() => {
const e = window.launcherAPI.store.onSetValueToStoreSuccess((e => {
"application.quitOnWindowClose" === e.key && (i(!0), o({
id: "quitOnWindowClose",
message: s("settings_common_saved")
}))
})),
t = window.launcherAPI.store.onSetValueToStoreError((e => {
"application.quitOnWindowClose" === e.key && (i(!1), o(null))
}));
return () => {
e(), t()
}
}), []), (0, Ee.useEffect)((() => {
n(e.appSettings.quitOnWindowClose)
}), [e.appSettings.quitOnWindowClose]);
const l = PR((async t => await e.actions.saveApplicationSettings({
name: "quitOnWindowClose",
value: t
})), 400),
c = (0, Ee.useCallback)((async e => {
a && o(null), n(e), l(e)
}), [l, a]);
return (0, _w.jsx)(jd, {
title: s("settings_application_window_behavior_title"),
description: s("settings_application_window_behavior_description"),
children: (0, _w.jsx)(Fd, {
type: "toggle",
checked: t,
onChange: ({
target: {
checked: e
}
}) => c(e),
success: a && a.message,
children: s("settings_application_window_behavior_close_to_quit")
})
})
},
NR = () => {
const {
t: e
} = bt("settingsPage");
return (0, _w.jsxs)(cg, {
title: e("settings_application_title"),
children: [(0, _w.jsx)(LR, {}), (0, _w.jsx)($d, {
spacing: "250"
}), (0, _w.jsx)(DR, {})]
})
},
MR = () => {
const e = pR((e => e.settings)),
[t, n] = (0, Ee.useState)(e.appSettings.isDiscoverDone),
[r, i] = (0, Ee.useState)(!1),
[a, o] = (0, Ee.useState)(null),
{
t: s
} = bt("settingsPage");
SR((() => {
o(null), i(!1)
}), Nw, r), (0, Ee.useEffect)((() => {
const e = window.launcherAPI.store.onSetValueToStoreSuccess((e => {
"application.isDiscoverDone" === e.key && (i(!0), o({
id: "isDiscoverDone",
message: s("settings_common_saved")
}))
})),
t = window.launcherAPI.store.onSetValueToStoreError((e => {
"application.isDiscoverDone" === e.key && (i(!1), o(null))
}));
return () => {
e(), t()
}
}), []), (0, Ee.useEffect)((() => {
n(e.appSettings.isDiscoverDone)
}), [e.appSettings.isDiscoverDone]);
const l = PR((async t => await e.actions.saveApplicationSettings({
name: "isDiscoverDone",
value: t
})), 400),
c = (0, Ee.useCallback)((async e => {
a && o(null), n(e), l(e)
}), [l, a]);
return (0, _w.jsx)(cg, {
title: s("settings_dev_title"),
children: (0, _w.jsx)(jd, {
title: s("settings_application_discover_behavior_title"),
description: s("settings_application_discover_behavior_description"),
children: (0, _w.jsx)(Fd, {
type: "toggle",
checked: t,
onChange: ({
target: {
checked: e
}
}) => c(e),
success: a && a.message,
children: s("settings_application_discover_behavior_isDiscoverDone")
})
})
})
},
jR = () => {
const {
t: e
} = bt("settingsPage"), t = pR((e => e.settings)), [n, r] = (0, Ee.useState)({
state: !1
}), [i, a] = (0, Ee.useState)(t.appSettings.download.concurrentTransfers), {
value: o,
setValue: s
} = (({
initialValue: e,
cb: t,
delay: n = 2e3
}) => {
const [r, i] = (0, Ee.useState)(e);
return (0, Ee.useEffect)((() => {
const e = setTimeout((() => {
t()
}), n);
return () => clearTimeout(e)
}), [t, n]), {
value: r,
setValue: i
}
})({
initialValue: mR(t.appSettings.download.maximumDownloadBandwidth),
cb: () => {
mR(t.appSettings.download.maximumDownloadBandwidth) !== o && c(o)
}
});
SR((() => {
r({
state: !1
})
}), Nw, n.state);
const l = (0, Ee.useCallback)((async e => {
const n = parseInt(e, 10);
a(n), t.actions.setDownloadSettings(yw.InstallerOptions.ConcurrentTransfers, n)
}), [t.actions]),
c = (0, Ee.useCallback)((async e => {
s(e), t.actions.setDownloadSettings(yw.InstallerOptions.MaximumDownloadBandwidth, 1e3 * e)
}), [s, t.actions]);
return (0, Ee.useEffect)((() => {
const e = window.launcherAPI.installer.onSetDownloadOptionsSuccess((e => {
t.actions.onSetDownloadSettingsSuccess(e), r({
state: !0,
option: e.name
})
}));
return () => {
e()
}
}), [t.actions]), (0, _w.jsx)(cg, {
title: e("settings_download_title"),
children: (0, _w.jsxs)(jd, {
title: e("settings_download_main_title"),
description: e("settings_download_main_content"),
children: [(0, _w.jsx)(Xd, {
horizontal: !0,
label: e("settings_download_concurrent_title"),
success: n.state && n.option === yw.InstallerOptions.ConcurrentTransfers ? e("settings_common_saved") : null,
help: e("settings_download_concurrent_desc"),
children: (0, _w.jsx)(lg, {
onValueChange: e => l(e),
value: i.toString(),
children: RT.map((e => (0, _w.jsx)(sg, {
value: e.value.toString(),
label: e.label
}, e.label)))
})
}), (0, _w.jsx)(Xd, {
horizontal: !0,
label: e("settings_download_speed_title"),
success: n.state && n.option === yw.InstallerOptions.MaximumDownloadBandwidth ? e("settings_common_saved") : null,
help: e("settings_download_speed_desc"),
children: (0, _w.jsx)(Fm, {
name: "speed-limit",
type: "number",
placeholder: e("settings_download_speed_unlimited"),
value: 0 === o ? void 0 : o.toString(),
onChange: e => s(parseInt(e.target.value || 0, 10)),
suffix: "KB/s"
})
})]
})
})
};
var FR = class extends zE.l {
constructor(e, t) {
super(), this.#R = void 0, this.#D = void 0, this.#I = void 0, this.#L = new Set, this.#O = e, this.options = t, this.#N = null, this.bindMethods(), this.setOptions(t)
}
#O;
#R;
#D;
#I;
#M;
#j;
#N;
#F;
#z;
#V;
#U;
#B;
#G;
#L;
bindMethods() {
this.refetch = this.refetch.bind(this)
}
onSubscribe() {
1 === this.listeners.size && (this.#R.addObserver(this), zR(this.#R, this.options) ? this.#W() : this.updateResult(), this.#$())
}
onUnsubscribe() {
this.hasListeners() || this.destroy()
}
shouldFetchOnReconnect() {
return VR(this.#R, this.options, this.options.refetchOnReconnect)
}
shouldFetchOnWindowFocus() {
return VR(this.#R, this.options, this.options.refetchOnWindowFocus)
}
destroy() {
this.listeners = new Set, this.#q(), this.#H(), this.#R.removeObserver(this)
}
setOptions(e, t) {
const n = this.options,
r = this.#R;
if (this.options = this.#O.defaultQueryOptions(e), (0, jE.VS)(n, this.options) || this.#O.getQueryCache().notify({
type: "observerOptionsUpdated",
query: this.#R,
observer: this
}), "undefined" !== typeof this.options.enabled && "boolean" !== typeof this.options.enabled) throw new Error("Expected enabled to be a boolean");
this.options.queryKey || (this.options.queryKey = n.queryKey), this.#K();
const i = this.hasListeners();
i && UR(this.#R, r, this.options, n) && this.#W(), this.updateResult(t), !i || this.#R === r && this.options.enabled === n.enabled && this.options.staleTime === n.staleTime || this.#Y();
const a = this.#Q();
!i || this.#R === r && this.options.enabled === n.enabled && a === this.#G || this.#Z(a)
}
getOptimisticResult(e) {
const t = this.#O.getQueryCache().build(this.#O, e),
n = this.createResult(t, e);
return function(e, t) {
if (!(0, jE.VS)(e.getCurrentResult(), t)) return !0;
return !1
}(this, n) && (this.#I = n, this.#j = this.options, this.#M = this.#R.state), n
}
getCurrentResult() {
return this.#I
}
trackResult(e) {
const t = {};
return Object.keys(e).forEach((n => {
Object.defineProperty(t, n, {
configurable: !1,
enumerable: !0,
get: () => (this.#L.add(n), e[n])
})
})), t
}
getCurrentQuery() {
return this.#R
}
refetch({
...e
} = {}) {
return this.fetch({
...e
})
}
fetchOptimistic(e) {
const t = this.#O.defaultQueryOptions(e),
n = this.#O.getQueryCache().build(this.#O, t);
return n.isFetchingOptimistic = !0, n.fetch().then((() => this.createResult(n, t)))
}
fetch(e) {
return this.#W({
...e,
cancelRefetch: e.cancelRefetch ?? !0
}).then((() => (this.updateResult(), this.#I)))
}
#W(e) {
this.#K();
let t = this.#R.fetch(this.options, e);
return e?.throwOnError || (t = t.catch(jE.ZT)), t
}
#Y() {
if (this.#q(), jE.sk || this.#I.isStale || !(0, jE.PN)(this.options.staleTime)) return;
const e = (0, jE.Kp)(this.#I.dataUpdatedAt, this.options.staleTime) + 1;
this.#U = setTimeout((() => {
this.#I.isStale || this.updateResult()
}), e)
}
#Q() {
return ("function" === typeof this.options.refetchInterval ? this.options.refetchInterval(this.#R) : this.options.refetchInterval) ?? !1
}
#Z(e) {
this.#H(), this.#G = e, !jE.sk && !1 !== this.options.enabled && (0, jE.PN)(this.#G) && 0 !== this.#G && (this.#B = setInterval((() => {
(this.options.refetchIntervalInBackground || VE.isFocused()) && this.#W()
}), this.#G))
}
#$() {
this.#Y(), this.#Z(this.#Q())
}
#q() {
this.#U && (clearTimeout(this.#U), this.#U = void 0)
}
#H() {
this.#B && (clearInterval(this.#B), this.#B = void 0)
}
createResult(e, t) {
const n = this.#R,
r = this.options,
i = this.#I,
a = this.#M,
o = this.#j,
s = e !== n ? e.state : this.#D,
{
state: l
} = e;
let c, {
error: u,
errorUpdatedAt: d,
fetchStatus: p,
status: h
} = l,
f = !1;
if (t._optimisticResults) {
const i = this.hasListeners(),
a = !i && zR(e, t),
o = i && UR(e, n, t, r);
(a || o) && (p = GE(e.options.networkMode) ? "fetching" : "paused", l.dataUpdatedAt || (h = "pending")), "isRestoring" === t._optimisticResults && (p = "idle")
}
if (t.select && "undefined" !== typeof l.data)
if (i && l.data === a?.data && t.select === this.#F) c = this.#z;
else try {
this.#F = t.select, c = t.select(l.data), c = (0, jE.oE)(i?.data, c, t), this.#z = c, this.#N = null
} catch (_) {
this.#N = _
} else c = l.data;
if ("undefined" !== typeof t.placeholderData && "undefined" === typeof c && "pending" === h) {
let e;
if (i?.isPlaceholderData && t.placeholderData === o?.placeholderData) e = i.data;
else if (e = "function" === typeof t.placeholderData ? t.placeholderData(this.#V?.state.data, this.#V) : t.placeholderData, t.select && "undefined" !== typeof e) try {
e = t.select(e), this.#N = null
} catch (_) {
this.#N = _
}
"undefined" !== typeof e && (h = "success", c = (0, jE.oE)(i?.data, e, t), f = !0)
}
this.#N && (u = this.#N, c = this.#z, d = Date.now(), h = "error");
const m = "fetching" === p,
g = "pending" === h,
v = "error" === h,
y = g && m;
return {
status: h,
fetchStatus: p,
isPending: g,
isSuccess: "success" === h,
isError: v,
isInitialLoading: y,
isLoading: y,
data: c,
dataUpdatedAt: l.dataUpdatedAt,
error: u,
errorUpdatedAt: d,
failureCount: l.fetchFailureCount,
failureReason: l.fetchFailureReason,
errorUpdateCount: l.errorUpdateCount,
isFetched: l.dataUpdateCount > 0 || l.errorUpdateCount > 0,
isFetchedAfterMount: l.dataUpdateCount > s.dataUpdateCount || l.errorUpdateCount > s.errorUpdateCount,
isFetching: m,
isRefetching: m && !g,
isLoadingError: v && 0 === l.dataUpdatedAt,
isPaused: "paused" === p,
isPlaceholderData: f,
isRefetchError: v && 0 !== l.dataUpdatedAt,
isStale: BR(e, t),
refetch: this.refetch
}
}
updateResult(e) {
const t = this.#I,
n = this.createResult(this.#R, this.options);
if (this.#M = this.#R.state, this.#j = this.options, (0, jE.VS)(n, t)) return;
void 0 !== this.#M.data && (this.#V = this.#R), this.#I = n;
const r = {};
!1 !== e?.listeners && (() => {
if (!t) return !0;
const {
notifyOnChangeProps: e
} = this.options, n = "function" === typeof e ? e() : e;
if ("all" === n || !n && !this.#L.size) return !0;
const r = new Set(n ?? this.#L);
return this.options.throwOnError && r.add("error"), Object.keys(this.#I).some((e => {
const n = e;
return this.#I[n] !== t[n] && r.has(n)
}))
})() && (r.listeners = !0), this.#T({
...r,
...e
})
}
#K() {
const e = this.#O.getQueryCache().build(this.#O, this.options);
if (e === this.#R) return;
const t = this.#R;
this.#R = e, this.#D = e.state, this.hasListeners() && (t?.removeObserver(this), e.addObserver(this))
}
onQueryUpdate() {
this.updateResult(), this.hasListeners() && this.#$()
}
#T(e) {
FE.batch((() => {
e.listeners && this.listeners.forEach((e => {
e(this.#I)
})), this.#O.getQueryCache().notify({
query: this.#R,
type: "observerResultsUpdated"
})
}))
}
};
function zR(e, t) {
return function(e, t) {
return !1 !== t.enabled && !e.state.dataUpdatedAt && !("error" === e.state.status && !1 === t.retryOnMount)
}(e, t) || e.state.dataUpdatedAt > 0 && VR(e, t, t.refetchOnMount)
}
function VR(e, t, n) {
if (!1 !== t.enabled) {
const r = "function" === typeof n ? n(e) : n;
return "always" === r || !1 !== r && BR(e, t)
}
return !1
}
function UR(e, t, n, r) {
return !1 !== n.enabled && (e !== t || !1 === r.enabled) && (!n.suspense || "error" !== e.state.status) && BR(e, n)
}
function BR(e, t) {
return e.isStaleByTime(t.staleTime)
}
function GR() {
let e = !1;
return {
clearReset: () => {
e = !1
},
reset: () => {
e = !0
},
isReset: () => e
}
}
var WR = Ee.createContext(GR()),
$R = Ee.createContext(!1);
$R.Provider;
function qR(e, t, n) {
const r = (0, _R.NL)(n),
i = Ee.useContext($R),
a = Ee.useContext(WR),
o = r.defaultQueryOptions(e);
o._optimisticResults = i ? "isRestoring" : "optimistic", (e => {
e.suspense && "number" !== typeof e.staleTime && (e.staleTime = 1e3)
})(o), ((e, t) => {
(e.suspense || e.throwOnError) && (t.isReset() || (e.retryOnMount = !1))
})(o, a), (e => {
Ee.useEffect((() => {
e.clearReset()
}), [e])
})(a);
const [s] = Ee.useState((() => new t(r, o))), l = s.getOptimisticResult(o);
if (Ee.useSyncExternalStore(Ee.useCallback((e => {
const t = i ? () => {} : s.subscribe(FE.batchCalls(e));
return s.updateResult(), t
}), [s, i]), (() => s.getCurrentResult()), (() => s.getCurrentResult())), Ee.useEffect((() => {
s.setOptions(o, {
listeners: !1
})
}), [o, s]), ((e, t, n) => e?.suspense && ((e, t) => e.isLoading && e.isFetching && !t)(t, n))(o, l, i)) throw ((e, t, n) => t.fetchOptimistic(e).catch((() => {
n.clearReset()
})))(o, s, a);
if ((({
result: e,
errorResetBoundary: t,
throwOnError: n,
query: r
}) => e.isError && !t.isReset() && !e.isFetching && bR(n, [e.error, r]))({
result: l,
errorResetBoundary: a,
throwOnError: o.throwOnError,
query: s.getCurrentQuery()
})) throw l.error;
return o.notifyOnChangeProps ? l : s.trackResult(l)
}
function HR(e, t) {
return qR(e, FR, t)
}
let KR;
! function(e) {
e.HOSTNAME = "hostname", e.PORT = "port", e.EXECUTABLE = "executable", e.LAUNCHOPTIONS = "launchOptions", e.EACSANDBOX = "eacSandbox"
}(KR || (KR = {}));
const YR = e => {
var t, n, r, i, a, o;
const {
t: s
} = bt("settingsPage"), l = pR((e => e.settings)), c = e.gameSettings, u = {
[KR.HOSTNAME]: null !== (t = c.hostname) && void 0 !== t ? t : "",
[KR.PORT]: null !== (n = c.port) && void 0 !== n ? n : null,
[KR.EXECUTABLE]: null !== (r = c.executable) && void 0 !== r ? r : "",
[KR.LAUNCHOPTIONS]: null !== (i = c.launchOptions) && void 0 !== i ? i : "",
[KR.EACSANDBOX]: null !== (a = c.eacSandbox) && void 0 !== a ? a : null
}, [d, p] = (0, Ee.useState)(!1), [h, f] = (0, Ee.useState)(null), [m, g] = (0, Ee.useState)(u), v = null !== (o = (() => {
const {
data: e
} = HR(NE(c.gameId, c.channelId));
return e
})()) && void 0 !== o ? o : {};
SR((() => {
f(null), p(!1)
}), Nw, d);
const y = PR((async (e, t) => {
const n = Object.fromEntries(Object.entries({
...m,
[e]: b(e, t)
}).filter((([e, t]) => null != t && "" !== t)));
0 === Object.values(n).length ? await l.actions.resetChannelGameSettings(c) : await l.actions.saveChannelGameSettings({
...n,
gameId: c.gameId,
gameName: c.gameName,
channelId: c.channelId,
channelName: c.channelName,
platformId: c.platformId
}), p(!0), f({
id: e,
message: s("settings_common_saved")
})
}), 600),
_ = (0, Ee.useCallback)((async (e, t) => {
h && f(null), g({
...m,
[e]: b(e, t)
}), y(e, t)
}), [m, y, h]),
b = (e, t) => {
var n;
return e === KR.PORT ? "" === t ? null : parseInt(t) : e === KR.EACSANDBOX ? !1 === t ? null : t : e !== KR.LAUNCHOPTIONS ? null !== (n = t.trim()) && void 0 !== n ? n : "" : null !== t && void 0 !== t ? t : ""
};
return (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)($d, {
spacing: "250"
}), (0, _w.jsxs)(jd, {
title: s("settings_games_launch_command_line"),
description: s("settings_games_launch_disclaimer"),
children: [(0, _w.jsx)(Xd, {
horizontal: !0,
label: s("settings_games_launch_hostname"),
necessityIndicator: "Optional",
help: v.universeHost ? (0, _w.jsxs)(Ys, {
as: "span",
variant: "body-m-bold",
children: [s("settings_games_launch_default"), " ", (0, _w.jsx)(Ys, {
as: "span",
children: v.universeHost
})]
}) : void 0,
success: h && h.id === KR.HOSTNAME ? s("settings_common_saved") : void 0,
children: (0, _w.jsx)(Fm, {
value: null === m || void 0 === m ? void 0 : m.hostname,
name: KR.HOSTNAME,
onChange: ({
target: {
name: e,
value: t
}
}) => _(e, t)
})
}), (0, _w.jsx)(Xd, {
horizontal: !0,
label: s("settings_games_launch_port"),
necessityIndicator: "Optional",
help: v.universePort ? (0, _w.jsxs)(Ys, {
as: "span",
variant: "body-m-bold",
children: [s("settings_games_launch_default"), " ", (0, _w.jsx)(Ys, {
as: "span",
children: v.universePort
})]
}) : void 0,
success: h && h.id === KR.PORT ? s("settings_common_saved") : void 0,
children: (0, _w.jsx)(Fm, {
value: null === (null === m || void 0 === m ? void 0 : m.port) ? "" : null === m || void 0 === m ? void 0 : m.port,
name: KR.PORT,
type: "number",
onChange: ({
target: {
name: e,
value: t
}
}) => _(e, t)
})
}), (0, _w.jsx)(Xd, {
horizontal: !0,
label: s("settings_games_launch_executable"),
necessityIndicator: "Optional",
help: v.executable ? (0, _w.jsxs)(Ys, {
as: "span",
variant: "body-m-bold",
children: [s("settings_games_launch_default"), " ", (0, _w.jsx)(Ys, {
as: "span",
children: v.executable
})]
}) : void 0,
success: h && h.id === KR.EXECUTABLE ? s("settings_common_saved") : void 0,
children: (0, _w.jsx)(Fm, {
value: null === m || void 0 === m ? void 0 : m.executable,
name: KR.EXECUTABLE,
onChange: ({
target: {
name: e,
value: t
}
}) => _(e, t)
})
}), (0, _w.jsx)(Xd, {
horizontal: !0,
label: s("settings_games_launch_launch_options"),
necessityIndicator: "Optional",
help: v.launchOptions ? (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Ys, {
as: "span",
variant: "body-m-bold",
children: s("settings_games_launch_default")
}), (0, _w.jsx)("br", {}), (0, _w.jsx)(Ys, {
as: "span",
children: v.launchOptions
})]
}) : void 0,
success: h && h.id === KR.LAUNCHOPTIONS ? s("settings_common_saved") : null,
children: (0, _w.jsx)(Fm, {
as: "textarea",
value: null === m || void 0 === m ? void 0 : m.launchOptions,
name: KR.LAUNCHOPTIONS,
onChange: ({
target: {
name: e,
value: t
}
}) => _(e, t)
})
})]
}), (0, _w.jsx)($d, {
spacing: "250"
}), (0, _w.jsxs)(jd, {
title: s("settings_games_launch_eac_title"),
description: s("settings_games_launch_eac_description"),
children: [(0, _w.jsx)(Ad, {
type: "informative",
children: s("settings_games_launch_eac_informative")
}), (0, _w.jsx)(Fd, {
type: "toggle",
checked: null !== (null === m || void 0 === m ? void 0 : m.eacSandbox),
disabled: !(null != (null === m || void 0 === m ? void 0 : m.executable) && "" !== (null === m || void 0 === m ? void 0 : m.executable)) && (null != (null === m || void 0 === m ? void 0 : m.eacSandbox) && g({
...m,
[KR.EACSANDBOX]: null
}), !0),
onChange: ({
target: {
checked: e
}
}) => _(KR.EACSANDBOX, e),
success: h && h.id === KR.EACSANDBOX ? s("settings_common_saved") : null,
children: s("settings_games_launch_eac_disable")
})]
})]
})
},
QR = ({
open: e = !1,
...t
}) => {
var n;
const {
t: r
} = bt("settingsPage"), i = pR((e => e.application)), a = pR((e => e.installer)), o = pR((e => e.library)), s = pR((e => e.settings)), l = pR((e => e.user)), c = (0, Ee.useMemo)((() => ({
platformId: t.item.platformId,
gameId: t.item.gameId,
gameName: t.item.gameName,
channelId: t.item.channelId,
channelName: t.item.channelName
})), [t]), u = (0, Ee.useMemo)((() => IE(a.installations, c)), [a, c]), d = (0, Ee.useMemo)((() => OE(a.uninstallations, c)), [a, c]), p = (0, Ee.useCallback)((e => {
const t = o.availableGames.find((t => t.id === e.gameId));
return null === t || void 0 === t ? void 0 : t.logo
}), [o.availableGames]), {
isGameChannelInstalled: h,
isInstalling: f,
isUninstalling: m,
isUserPriviled: g,
isVerifying: v
} = (0, Ee.useMemo)((() => {
var e, t;
const n = o.actions.getInstalledChannel(c);
return {
isGameChannelInstalled: (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.INSTALLED || (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.UPDATE_AVAILABLE || (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.RUNNING,
isVerifying: u && u.type === yw.InstallationType.VERIFY && u.status !== yw.InstallationStatus.COMPLETED,
isInstalling: u && u.type === yw.InstallationType.INSTALL && u.status !== yw.InstallationStatus.COMPLETED,
isUninstalling: void 0 !== d,
isUserPriviled: null !== (e = null === (t = l.identity) || void 0 === t ? void 0 : t.privileged) && void 0 !== e && e
}
}), [c, u, o, d, null === (n = l.identity) || void 0 === n ? void 0 : n.privileged]), y = i.actions.isOffline(), {
verifyButtonLabel: _,
installButtonLabel: b,
uninstallButtonLabel: x
} = (0, Ee.useMemo)((() => ({
verifyButtonLabel: v && (null === u || void 0 === u ? void 0 : u.status) === yw.InstallationStatus.PAUSED ? r("settings_games_game_files_process_paused") : r(v ? "settings_games_game_files_verifying_files" : "settings_games_game_files_verify_files"),
installButtonLabel: f && (null === u || void 0 === u ? void 0 : u.status) === yw.InstallationStatus.PAUSED ? r("settings_games_game_files_process_paused") : r(f ? "settings_games_game_files_installing_files" : "settings_games_game_files_install_files"),
uninstallButtonLabel: r(m ? "settings_games_game_files_uninstalling_files" : "settings_games_game_files_uninstall_files")
})), [null === u || void 0 === u ? void 0 : u.status, f, m, v, r]), k = (0, Ee.useMemo)((() => v && (null === u || void 0 === u ? void 0 : u.status) === yw.InstallationStatus.PAUSED ? hI : v ? MI : void 0), [null === u || void 0 === u ? void 0 : u.status, v]), w = (0, Ee.useCallback)((e => u && u.type === e ? i.actions.setDownloadPopoverOpened(!0) : a.actions.addInstallationToQueue(c, e)), [i.actions, c, u, a.actions]), S = (0, Ee.useCallback)((() => a.actions.startUninstallation(t.item)), [a.actions, t.item]);
return (0, _w.jsxs)(sl, {
prefix: (0, _w.jsx)("img", {
src: p(c),
alt: "",
width: "32"
}),
open: e,
title: `${c.gameName} - ${c.channelId}`,
children: [(0, _w.jsx)(jd, {
title: r("settings_games_installation_path_title"),
description: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)("span", {
className: "sol-u-color-foreground",
children: Lw(s.library.defaultLibraryFolder)
}), t.item.installDir, "\\", c.channelId]
})
}), (0, _w.jsx)($d, {
spacing: "250"
}), (0, _w.jsx)(jd, {
title: r("settings_games_game_files_title"),
description: r("settings_games_game_files_description"),
children: (0, _w.jsxs)(cl, {
vertical: !1,
gap: "100",
children: [(0, _w.jsx)(el, {
onClick: () => w(yw.InstallationType.VERIFY),
disabled: i.isGameRunning || f || m || y,
loading: v,
loadingIcon: k,
children: _
}), !h && (0, _w.jsx)(el, {
onClick: () => w(yw.InstallationType.INSTALL),
disabled: i.isGameRunning || v || y,
loading: f,
loadingIcon: k,
icon: f ? void 0 : gI,
children: b
}), h && (0, _w.jsx)(el, {
variant: "plain",
color: "negative",
onClick: S,
disabled: i.isGameRunning || v,
loading: m,
loadingIcon: k,
children: x
})]
})
}), g ? (0, _w.jsx)(YR, {
gameSettings: t.item
}) : null]
}, `${c.gameName}${c.channelId}`)
},
ZR = () => {
const {
t: e
} = bt("settingsPage"), [t, n] = (0, Ee.useState)(!1), [r, i] = (0, Ee.useState)(null), a = pR((e => e.settings)), o = pR((e => e.installer)), s = pR((e => e.application)), {
gameId: l,
channelId: c
} = kC();
SR((() => {
i(null), n(!1)
}), Nw, t);
const {
items: u
} = (0, Ee.useMemo)((() => {
const e = a.gamesSettings.find((e => e.gameId === l && e.channelId === c));
return {
items: a.gamesSettings.map((t => (0, _w.jsx)(QR, {
item: t,
open: t === e
}, `${t.gameName}${t.channelId}`)))
}
}), [c, l, a.gamesSettings]), d = (0, Ee.useCallback)((async () => {
const t = a.library.defaultLibraryFolder,
r = await window.launcherAPI.settings.openLibraryFolderDialog(t);
if (r.length > 0) {
const t = Lw(r[0]);
a.actions.saveLibraryFolder(t), i({
id: "library",
message: e("settings_games_installation_library_folder_success")
}), n(!0)
}
}), [a.actions]);
return (0, _w.jsxs)(cg, {
title: e("settings_games_title"),
children: [(0, _w.jsxs)(jd, {
title: e("settings_games_installation_title"),
description: e("settings_games_installation_description"),
children: [(0, _w.jsx)(Ad, {
type: "informative",
children: e("settings_games_installation_information")
}), (0, _w.jsxs)(Xd, {
horizontal: !0,
label: e("settings_games_installation_library_folder_label"),
success: r && "library" === r.id ? r.message : null,
children: [(0, _w.jsx)(Fm, {
readOnly: !0,
value: a.library.defaultLibraryFolder
}), (0, _w.jsx)(el, {
disabled: o.installations.length > 0 || s.isGameRunning,
onClick: () => d(),
type: "button",
children: e("settings_games_installation_library_folder_change")
})]
})]
}), (0, _w.jsx)(ll, {
openAll: e("settings_common_accordion_open_all"),
closeAll: e("settings_common_accordion_close_all"),
children: u,
className: 1 === u.length ? "sol-u-margin-bs-250" : ""
})]
})
},
XR = () => {
const {
t: e
} = bt("form"), t = pR((e => e.application)), n = bC(), {
isPending: r,
submitSignIn: i,
register: a,
handleSubmit: o,
captcha: s,
refreshCaptcha: l,
serverError: c,
control: u
} = (() => {
const e = bC(),
[t, n] = Ee.useState(null),
{
captcha: r,
actions: {
resetAuthentication: i,
fetchCaptcha: a
}
} = pR((e => e.authentication)),
o = pR((e => e.user)),
{
launcherVersion: s,
platformMaster: l
} = pR((e => e.application)),
{
handleSubmit: c,
register: u,
setError: d,
formState: {
errors: p
},
resetField: h,
control: f
} = CT(),
{
authentication: {
onSignInSuccess: m
}
} = Rw(),
{
mutate: g,
isPending: v
} = xR({
mutationFn: ({
username: e,
password: t,
captcha: n,
remember: r,
launcherVersion: i
}) => yE.authentication.signIn({
username: e,
password: t,
captcha: n,
remember: r,
launcherVersion: i
}),
onSuccess: (e, t) => b(e, t),
onError: async (e, t) => await _(e, t)
}),
y = (0, Ee.useCallback)((async () => {
await o.actions.getSession(l) && a()
}), [a, l, o.actions]),
_ = async (t, r) => {
const {
username: i,
remember: o,
captcha: s
} = r;
if (s && a(), t instanceof PS) {
const e = await yE.authentication.getCaptcha();
pR.setState((t => ({
authentication: {
...t.authentication,
captcha: e
}
})))
} else {
if (t instanceof NS) throw e(yD.SIGN_IN_GAME_PACKAGE_MISSING);
if (t instanceof TS) return d("captcha", {
type: "custom",
message: null === t || void 0 === t ? void 0 : t.message
}), void h("captcha", {
keepDirty: !0,
keepError: !0,
keepTouched: !0,
defaultValue: ""
});
if (t instanceof SS) throw e(yD.SIGN_IN_MFA, {
state: {
remember: o,
username: i
}
});
if (t instanceof lE) throw n((0, _w.jsx)(ft, {
i18nKey: "error_sign_in_not_authorized",
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.downloadUrl,
external: !0,
inherit: !0
})]
})), t;
n(t.message)
}
}, b = ({
identity: t,
session: n
}, r) => {
i();
const a = r.remember;
throw o.actions.setIdentity({
identity: t,
remember: a
}), o.actions.setSession({
session: n,
remember: a
}), m({
accountName: t.username,
trackingMetricsId: t.trackingMetricsId,
heapAccountId: t.heapAccountId
}), e(yD.HOME)
};
return {
refreshCaptcha: y,
submitSignIn: e => {
const t = {
...e,
launcherVersion: s
};
n(null), g(t)
},
mutateSignIn: g,
handleSubmit: c,
register: u,
control: f,
captcha: r,
isPending: v,
formErrors: p,
serverError: t
}
})();
(0, Ee.useEffect)((() => {
t.connection.mode !== yw.ConnectionMode.ONLINE && n(`/${yD.OFFLINE}`)
}), [t.connection, n]);
const d = (0, Ee.useMemo)((() => (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsxs)(Ys, {
className: "footer__sign-up",
color: "foreground-weak",
variant: "body-m",
children: [e("sign_in_no_account"), (0, _w.jsx)(zm, {
external: !0,
href: yw.configuration.enlistUrl,
"data-test-id": "enlist",
children: e("sign_in_create_account")
})]
}), (0, _w.jsx)(el, {
className: "footer__sign-in-button",
loading: r && e("sign_in_loading"),
size: "large",
type: "submit",
"data-test-id": "sign_in_submit",
children: e("sign_in_submit")
})]
})), [r]);
return (0, _w.jsxs)(hg, {
as: "form",
"data-test-id": "sign-in-form",
title: e("sign_in_title"),
footer: d,
onSubmit: o(i),
children: [c && (0, _w.jsx)(Ad, {
type: "negative",
children: c
}), (0, _w.jsx)(PT, {
control: u,
name: "username",
rules: {
required: {
value: !0,
message: e("error_email_field_is_required")
}
},
label: e("sign_in_email"),
disabled: r,
"data-test-id": "email",
inputProps: {
id: "email"
}
}), (0, _w.jsx)(PT, {
control: u,
name: "password",
rules: {
required: {
value: !0,
message: e("error_password_field_is_required")
}
},
label: e("sign_in_password"),
type: "password",
disabled: r,
"data-test-id": "password",
inputProps: {
id: "password"
}
}), (0, _w.jsxs)(cl, {
align: "center",
gap: "100",
justify: "space-between",
children: [(0, _w.jsx)(Fd, {
label: e("sign_in_remember_me"),
inputProps: a("remember"),
"data-test-id": "remember",
children: e("sign_in_remember_me")
}), (0, _w.jsx)(zm, {
href: yw.configuration.recoverUrl,
external: !0,
"data-test-id": "recover",
children: e("sign_in_forgot_password")
})]
}), s && (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)("img", {
id: "captcha",
src: s,
alt: ""
}), (0, _w.jsx)(PT, {
control: u,
name: "captcha",
rules: {
required: {
value: !0,
message: e("error_field_is_required")
}
},
label: e("sign_in_captcha"),
help: e("sign_in_captcha_help"),
disabled: r,
"data-test-id": "captcha",
inputProps: {
"aria-describedby": "captcha",
suffix: (0, _w.jsx)(el, {
"aria-label": e("sign_in_captcha_refresh"),
"aria-controls": "captcha",
disabled: r,
icon: cI,
variant: "plain",
size: "small",
onClick: l
})
}
})]
})]
})
},
JR = () => {
const e = pR((e => e.user)),
t = pR((e => e.authentication)),
{
t: n
} = bt("form"),
{
serverError: r,
submitSignInMfa: i,
handleSubmit: a,
isPending: o,
control: s
} = (() => {
const {
t: e
} = bt("errors"), [t, n] = Ee.useState(null), r = bC(), i = yC(), {
actions: {
resetAuthentication: a
}
} = pR((e => e.authentication)), o = pR((e => e.user)), {
handleSubmit: s,
register: l,
formState: {
errors: c
},
control: u
} = CT(), {
authentication: {
onSignInSuccess: d
}
} = Rw(), {
mutate: p,
isPending: h
} = xR({
mutationFn: ({
username: e,
codeMfa: t,
deviceName: n,
duration: r
}) => yE.authentication.signInMfa({
username: e,
codeMfa: t,
deviceName: n,
duration: r
}),
onSuccess: e => m(e),
onError: e => f(e)
}), f = t => {
if (t instanceof ES) n(e("error_wrong_mfa_code"));
else {
if (t instanceof NS) throw r(`../${yD.SIGN_IN_GAME_PACKAGE_MISSING}`);
if (t instanceof lE) throw n((0, _w.jsx)(ft, {
i18nKey: "error_sign_in_not_authorized",
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.downloadUrl,
external: !0,
inherit: !0
})]
})), t;
n(t.message)
}
}, m = ({
identity: e,
session: t,
device: n
}) => {
a();
const s = i.state.remember && n.duration !== XS.SESSION;
throw o.actions.setIdentity({
identity: e,
remember: s
}), o.actions.setSession({
session: t,
remember: s
}), o.actions.setDevice({
device: n,
remember: s
}), d({
accountName: e.username,
trackingMetricsId: e.trackingMetricsId,
heapAccountId: e.heapAccountId
}), r(yD.HOME)
};
return {
isPending: h,
submitSignInMfa: e => {
const t = {
username: i.state.username,
codeMfa: e.codeMfa,
deviceName: e.deviceName,
duration: e.duration
};
n(null), p(t)
},
mutateMfaSignIn: p,
handleSubmit: s,
register: l,
control: u,
errors: c,
serverError: t
}
})(),
l = [{
label: n("sign_in_mfa_session"),
value: XS.SESSION
}, {
label: n("sign_in_mfa_day"),
value: XS.DAY
}, {
label: n("sign_in_mfa_week"),
value: XS.WEEK
}, {
label: n("sign_in_mfa_month"),
value: XS.MONTH
}, {
label: n("sign_in_mfa_year"),
value: XS.YEAR
}],
c = l[3].value,
u = (0, Ee.useCallback)((() => {
e.actions.resetUser({
clearDevice: !1
}), t.actions.resetAuthentication()
}), []),
d = (0, Ee.useMemo)((() => (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(el, {
disabled: o,
onClick: u,
variant: "plain",
href: "..",
icon: sI,
size: "large",
children: n("sign_in_mfa_back_sign_in")
}), (0, _w.jsx)(el, {
loading: o && n("sign_in_loading"),
size: "large",
type: "submit",
children: n("sign_in_mfa_submit")
})]
})), [o, u]);
return (0, _w.jsxs)(hg, {
as: "form",
title: n("sign_in_mfa_title"),
subtitle: n("sign_in_mfa_subtitle"),
footer: d,
onSubmit: a(i),
children: [r && (0, _w.jsx)(Ad, {
type: "negative",
children: r
}), (0, _w.jsx)(PT, {
control: s,
name: "codeMfa",
rules: {
required: {
value: !0,
message: n("error_code_required")
}
},
help: n("sign_in_mfa_code_help"),
label: n("sign_in_mfa_code_label")
}), (0, _w.jsx)(PT, {
control: s,
name: "deviceName",
rules: {
minLength: {
value: 3,
message: n("error_device_min_length")
},
required: {
value: !0,
message: n("error_device_required")
}
},
help: n("sign_in_mfa_device_help"),
label: n("sign_in_mfa_device_label")
}), (0, _w.jsx)(AT, {
control: s,
name: "duration",
label: n("sign_in_mfa_duration_label"),
help: n("sign_in_mfa_duration_help"),
defaultValue: c,
children: l.map((({
label: e,
value: t
}) => (0, _w.jsx)(sg, {
value: t,
children: e
}, t)))
})]
})
},
eD = () => {
const {
t: e
} = bt("errors");
return (0, _w.jsx)(hg, {
title: e("error_game_package_missing_title"),
subtitle: (0, _w.jsx)(ft, {
i18nKey: "error_game_package_missing_subtitle",
ns: "errors",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.playnowUrl,
external: !0
})]
}),
footer: (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(el, {
href: yw.configuration.supportUrl,
external: !0,
variant: "plain",
icon: pI,
size: "large",
children: e("error_game_package_missing_support")
}), (0, _w.jsx)(el, {
href: `/${yD.SIGN_IN}`,
size: "large",
children: e("error_game_package_missing_retry")
})]
}),
children: (0, _w.jsx)("video", {
autoPlay: !0,
loop: !0,
muted: !0,
playsInline: !0,
src: yw.configuration.assets.directory + "/videos/no-game-package.mp4",
style: {
borderRadius: "var(--sol-radius-8)"
}
})
})
},
tD = ({
date: e
}) => (0, _w.jsx)(Od, {
content: Pw(e, "long"),
placement: "bottom",
interactive: !1,
children: (0, _w.jsx)("time", {
dateTime: e,
children: Pw(e, "relative")
})
}),
nD = () => {
const {
t: e
} = bt("gamePage"), {
channelSelected: t
} = pR((e => e.library)), n = pR((e => e.application)), [r, i] = (0, Ee.useState)(JS.COMM_LINKS), {
dynamicContentSections: a,
contents: o,
isLoading: s
} = (({
channelId: e,
gameId: t
}) => {
const n = pR((e => e.application)),
{
data: r,
isLoading: i
} = HR({
...ME(t, e),
enabled: n.connection.mode === yw.ConnectionMode.ONLINE && !n.isWindowMinimized
});
return {
...(0, Ee.useMemo)((() => {
var e, t, n;
const i = null !== (e = null === r || void 0 === r ? void 0 : r.commLinks) && void 0 !== e ? e : [],
a = null !== (t = null === r || void 0 === r ? void 0 : r.patchNotes) && void 0 !== t ? t : [],
o = null !== (n = null === r || void 0 === r ? void 0 : r.launcherCards) && void 0 !== n ? n : [],
s = [],
l = {};
return l[`${JS.COMM_LINKS}`] = i.map(xw).sort(ww).slice(0, 8), l[`${JS.PATCH_NOTES}`] = a, o.map(kw).forEach((e => {
var t, n;
if (null === (t = e.channel) || void 0 === t || !t.name) return;
const r = void 0 !== l[e.channel.name];
l[e.channel.name] = [...null !== (n = l[e.channel.name]) && void 0 !== n ? n : [], e].sort(Sw), r || s.push(e.channel)
})), {
dynamicContentSections: s.sort(Ew).map((e => e.name)),
contents: l
}
}), [r]),
isLoading: i
}
})({
gameId: t.gameId,
channelId: t.channelId
}), l = (0, Ee.useMemo)((() => {
const e = [JS.PATCH_NOTES],
t = [...a, JS.COMM_LINKS, JS.PATCH_NOTES].filter((t => {
const n = e.find((e => e === t));
return !(0 === o[t].length && n)
}));
return i(t[0]), t
}), [a, o]), c = s && 0 === a.length;
return !n.actions.isOffline() && c ? (0, _w.jsx)(rp, {
empty: e("game_page_cards_loading")
}) : (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(Cm, {
children: l.map((t => (0, _w.jsx)(sp, {
label: e(`game_page_cards_tab_${t&&t.toLowerCase()}`),
active: r === t,
onClick: () => i(t)
}, t)))
}), n.actions.isOffline() && (s || 0 === o[JS.COMM_LINKS].length) ? (0, _w.jsx)(rD, {}) : (0, _w.jsx)(iD, {
contents: o,
activeTab: r
})]
})
},
rD = () => (0, _w.jsx)(rp, {
children: (0, _w.jsx)(Cd, {
title: "No Connection",
href: "#",
isOffline: !0
}, "Card-no-connection")
}),
iD = ({
contents: e,
activeTab: t
}) => {
const {
t: n
} = bt("gamePage"), r = (0, Ee.useCallback)((e => {
var t;
return null !== (t = e.media) && void 0 !== t && t.overlay ? {
src: `${yw.configuration.rootUrl}${e.media.overlay.resize}`,
srcSet: `${e.media.overlay.source} 2x`
} : void 0
}), []), i = (0, Ee.useCallback)((e => {
var t, n, r;
return null !== (t = e.media) && void 0 !== t && t.thumbnail ? `${yw.configuration.rootUrl}${null===(r=e.media)||void 0===r?void 0:r.thumbnail}` : null !== (n = e.media) && void 0 !== n && n.background ? {
src: `${yw.configuration.rootUrl}${e.media.background.resize}`,
srcSet: `${e.media.background.source} 2x`
} : void 0
}), []);
return (0, _w.jsx)(_w.Fragment, {
children: e[t] && e[t].length > 0 ? (0, _w.jsx)(rp, {
children: e[t].map((e => (0, _w.jsx)(Cd, {
href: e["meta.button_url"] ? e["meta.button_url"] : e.url,
label: e["meta.button_label"] ? e["meta.button_label"] : n("game_page_card_button_label"),
title: e.title,
excerpt: e.excerpt,
external: !0,
subtitle: null !== e && void 0 !== e && e.publish_start ? (0, _w.jsx)(tD, {
date: e.publish_start
}) : void 0,
image: i(e),
overlay: r(e)
}, `Card-${e.id}`)))
}) : (0, _w.jsx)(rp, {
empty: n("game_page_cards_empty")
})
})
},
aD = (e, t, n) => {
return n ? yw.GameChannelStatus.UNINSTALLING : t && t.status !== yw.InstallationStatus.COMPLETED ? t.status : null !== (r = null === e || void 0 === e ? void 0 : e.status) && void 0 !== r ? r : yw.GameChannelStatus.AVAILABLE;
var r
},
oD = JSON.parse('{"v":"5.9.0","fr":30,"ip":0,"op":120,"w":16,"h":16,"nm":"install","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Light","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":12,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":24,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":36,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":48,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":60,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":72,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":84,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":96,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":108,"s":[0]},{"t":120,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[11.75,11.75,0],"ix":2,"l":2},"a":{"a":0,"k":[1,1,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.414,0],[0,-0.414],[0.414,0],[0,0.414]],"o":[[0.414,0],[0,0.414],[-0.414,0],[0,-0.414]],"v":[[0,-0.75],[0.75,0],[0,0.75],[-0.75,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[1,1],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":120,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Arrow","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":2.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":4.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":6.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":8.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":10.01,"s":[10]},{"t":12.01171875,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[7.925,4.036,0],"ix":2,"l":2},"a":{"a":0,"k":[2.981,3.287,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0.221,0],[0,-0.414],[-0.164,-0.138],[0,0],[-0.206,0],[-0.136,0.134],[0,0],[0,0.232],[0.414,0],[0.137,-0.151],[0,0]],"o":[[0,0],[0,0],[0,0],[-0.137,-0.151],[-0.414,0],[0,0.232],[0,0],[0.136,0.134],[0.206,0],[0,0],[0.164,-0.138],[0,-0.414],[-0.22,0],[0,0],[0,0]],"v":[[0.825,-3.036],[-0.675,-3.036],[-0.675,0.482],[-1.425,-0.115],[-1.981,-0.363],[-2.731,0.387],[-2.462,0.964],[-0.453,2.82],[0.075,3.036],[0.603,2.82],[2.462,0.964],[2.731,0.387],[1.981,-0.363],[1.425,-0.115],[0.825,0.482]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2.981,3.287],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":120,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Base","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[7.25,7.25,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.69,0],[0,0],[0,0.69],[0,0],[0,0]],"o":[[0,0.69],[0,0],[-0.69,0],[0,0],[0,0],[0,0]],"v":[[5.5,4.25],[4.25,5.5],[-4.25,5.5],[-5.5,4.25],[-5.5,2],[5.5,2]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[1.519,0],[0,0],[0,0],[0,0],[0,-0.69],[0,0],[0,0],[0,0],[-0.69,0],[0,0],[0,0],[0,0],[0,-1.519],[0,0],[-1.519,0],[0,0],[0,1.519],[0,0]],"o":[[0,0],[0,0],[0,0],[0.69,0],[0,0],[0,0],[0,0],[0,-0.69],[0,0],[0,0],[0,0],[-1.519,0],[0,0],[0,1.519],[0,0],[1.519,0],[0,0],[0,-1.519]],"v":[[4.25,-7],[2,-7],[2,-5.5],[4.25,-5.5],[5.5,-4.25],[5.5,0.5],[-5.5,0.5],[-5.5,-4.25],[-4.25,-5.5],[-2,-5.5],[-2,-7],[-4.25,-7],[-7,-4.25],[-7,4.25],[-4.25,7],[4.25,7],[7,4.25],[7,-4.25]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[7.25,7.25],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":120,"st":0,"bm":0}],"markers":[]}'),
sD = JSON.parse('{"v":"5.9.0","fr":30,"ip":0,"op":120,"w":16,"h":16,"nm":"play - option 5","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"play-2 Outlines","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":20.021,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22.022,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":24.024,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":26.026,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":28.028,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30.03,"s":[10]},{"t":32.0322265625,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8.086,8,0],"ix":2,"l":2},"a":{"a":0,"k":[7.236,7.911,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0.685,0.383],[0,0],[0,-0.765],[0,0],[-0.685,0.382]],"o":[[0.685,-0.383],[0,0],[-0.685,-0.383],[0,0],[0,0.766],[0,0]],"v":[[5.051,0.861],[5.051,-0.861],[-4.195,-6.029],[-5.736,-5.167],[-5.736,5.167],[-4.195,6.029]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[7.236,7.911],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.985],"y":[2.857]},"o":{"x":[0.159],"y":[0]},"t":0,"s":[100]},{"i":{"x":[0.735],"y":[3.042]},"o":{"x":[0.143],"y":[3.552]},"t":30.03,"s":[100]},{"t":60.060546875,"s":[100]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.709],"y":[1.164]},"o":{"x":[0.474],"y":[0.066]},"t":0,"s":[0]},{"i":{"x":[0.602],"y":[0.921]},"o":{"x":[0.314],"y":[0.13]},"t":30.03,"s":[78.782]},{"t":52,"s":[0]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.472],"y":[0.887]},"o":{"x":[0.51],"y":[0.095]},"t":0,"s":[-360]},{"t":60.060546875,"s":[720]}],"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":0,"op":1261.26126126126,"st":0,"bm":0}],"markers":[]}'),
lD = JSON.parse('{"v":"5.9.0","fr":30,"ip":0,"op":120,"w":16,"h":16,"nm":"update","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Circle 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":27,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":29.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":31.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":33.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":35.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":37.01,"s":[10]},{"t":39.01171875,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[7.7,7.7,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.1,0],[0,3.4],[-3.5,0],[-1,-2.1]],"o":[[-0.5,3],[-3.5,0],[0,-3.4],[2.5,0],[0,0]],"v":[[6.2,1],[0,6.2],[-6.2,0],[0,-6.2],[5.6,-2.7]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[7.7,7.7],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":120,"s":[0]},{"t":146,"s":[100]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":30,"s":[0]},{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":45,"s":[100]},{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":120,"s":[100]},{"t":146,"s":[100]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":120,"s":[0]},{"t":146,"s":[360]}],"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":27,"op":147,"st":27,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Circle","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-84.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-82.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-80.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-78.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-76,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-73.998,"s":[10]},{"t":-71.99609375,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[8,8,0],"ix":2,"l":2},"a":{"a":0,"k":[7.7,7.7,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[3.1,0],[0,3.4],[-3.5,0],[-1,-2.1]],"o":[[-0.5,3],[-3.5,0],[0,-3.4],[2.5,0],[0,0]],"v":[[6.2,1],[0,6.2],[-6.2,0],[0,-6.2],[5.6,-2.7]],"c":false},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[7.7,7.7],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":0,"s":[0]},{"t":26,"s":[100]}],"ix":1},"e":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":-90,"s":[0]},{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":-75,"s":[100]},{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":0,"s":[100]},{"t":26,"s":[100]}],"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.5],"y":[1]},"o":{"x":[0.5],"y":[0]},"t":0,"s":[0]},{"t":26,"s":[360]}],"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false}],"ip":-93,"op":27,"st":-93,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Arrow 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":27,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":29.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":31.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":33.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":35.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":37.01,"s":[10]},{"t":39.01171875,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[12.7,4,0],"ix":2,"l":2},"a":{"a":0,"k":[3,3,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.5,"y":1},"o":{"x":0.5,"y":0},"t":43,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-0.281,-0.312],[1.5,1.5],[-0.375,-0.406]],"c":false}]},{"i":{"x":0.5,"y":1},"o":{"x":0.167,"y":0},"t":46,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[1.5,-1.5],[1.5,1.5],[-1.5,1.5]],"c":false}]},{"i":{"x":0.5,"y":1},"o":{"x":0.167,"y":0},"t":130,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[1.5,-1.5],[1.5,1.5],[-1.5,1.5]],"c":false}]},{"t":133,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-0.281,-0.312],[1.5,1.5],[-0.375,-0.406]],"c":false}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[3,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":43,"op":133,"st":25,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Arrow","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-84.008,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-82.006,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-80.004,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-78.002,"s":[10]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-76,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":-73.998,"s":[10]},{"t":-71.99609375,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[12.7,4,0],"ix":2,"l":2},"a":{"a":0,"k":[3,3,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.5,"y":1},"o":{"x":0.5,"y":0},"t":-77,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-0.281,-0.312],[1.5,1.5],[-0.375,-0.406]],"c":false}]},{"i":{"x":0.5,"y":1},"o":{"x":0.167,"y":0},"t":-74,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[1.5,-1.5],[1.5,1.5],[-1.5,1.5]],"c":false}]},{"i":{"x":0.5,"y":1},"o":{"x":0.167,"y":0},"t":10,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[1.5,-1.5],[1.5,1.5],[-1.5,1.5]],"c":false}]},{"t":13,"s":[{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-0.281,-0.312],[1.5,1.5],[-0.375,-0.406]],"c":false}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":1.5,"ix":5},"lc":2,"lj":2,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[3,3],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":-77,"op":13,"st":-95,"bm":0}],"markers":[]}'),
cD = e => {
var t, n, r, i, a, o, s;
const l = pR((e => e.installer)),
c = pR((e => e.library)),
{
status: u
} = (0, Ee.useMemo)((() => {
const t = Dw(e.gameId, c.installedGames),
n = null === t || void 0 === t ? void 0 : t.channels.find((t => t.id === e.channelId)),
r = IE(l.installations, e),
i = OE(l.uninstallations, e);
return {
channel: n,
status: aD(n, r, i)
}
}), [e, l.installations, l.uninstallations, c.installedGames]);
return {
displayProgressBar: (u === yw.InstallationStatus.PAUSED || u === yw.InstallationStatus.IN_PROGRESS || u === yw.InstallationStatus.WAITING) && l.progress,
ProgressBarComponent: (0, _w.jsx)(Hd, {
state: u,
progress: u === yw.InstallationStatus.IN_PROGRESS && null !== (t = l.progress) && void 0 !== t && t.showProgress ? null === (n = l.progress) || void 0 === n ? void 0 : n.percentage : void 0,
stats: u === yw.InstallationStatus.WAITING ? [] : [{
label: be("download_speed", {
ns: "download"
}),
value: `${null===(r=l.progress)||void 0===r?void 0:r.speed}/s`
}, {
label: be("download_left", {
ns: "download"
}),
value: SE()(Math.max((null !== (i = null === (a = l.progress) || void 0 === a ? void 0 : a.total) && void 0 !== i ? i : 0) - (null !== (o = null === (s = l.progress) || void 0 === s ? void 0 : s.downloaded) && void 0 !== o ? o : 0), 0))
}]
})
}
},
uD = () => {
var e, t;
const {
t: n
} = bt("gamePage"), {
gameId: r
} = kC(), i = pR((e => e.library)), a = pR((e => e.application)), {
reduceMotion: {
backgroundVideoDisabled: o,
unessentialAnimationsDisabled: s
}
} = Ns(), {
selectedGame: l,
selectedChannel: c,
channels: u
} = (0, Ee.useMemo)((() => {
const e = Dw(null !== r && void 0 !== r ? r : i.channelSelected.gameId, i.availableGames),
t = null === e || void 0 === e ? void 0 : e.channels.find((e => e.id === i.channelSelected.channelId));
return {
selectedGame: e,
selectedChannel: t,
channels: i.actions.getChannels(null !== r && void 0 !== r ? r : i.channelSelected.gameId)
}
}), [r, i.actions, i.availableGames, i.channelSelected.channelId, i.channelSelected.gameId]), d = (e => {
var t;
const n = pR((e => e.application)),
r = pR((e => e.installer)),
i = pR((e => e.library)),
a = pR((e => e.dialog)),
o = Rw(),
{
reduceMotion: {
unessentialAnimationsDisabled: s
}
} = Ns(),
{
status: l,
installation: c
} = (0, Ee.useMemo)((() => {
const t = Dw(e.gameId, i.installedGames),
n = null === t || void 0 === t ? void 0 : t.channels.find((t => t.id === e.channelId)),
a = IE(r.installations, e),
o = OE(r.uninstallations, e);
return {
installation: a,
status: aD(n, a, o)
}
}), [e, i.installedGames, r.installations, r.uninstallations]),
u = n.actions.isOffline(),
d = {
[yw.InstallationType.INSTALL]: {
titleInProgress: "game_page_installing",
titlePaused: "game_page_installing_paused"
},
[yw.InstallationType.UPDATE]: {
titleInProgress: "game_page_updating",
titlePaused: "game_page_updating_paused"
},
[yw.InstallationType.VERIFY]: {
titleInProgress: "game_page_verifying",
titlePaused: "game_page_verifying_paused"
}
} [null !== (t = null === c || void 0 === c ? void 0 : c.type) && void 0 !== t ? t : yw.InstallationType.INSTALL];
switch (l) {
case yw.InstallationStatus.PAUSED:
return {
buttonProps: {
children: xt.t(d.titlePaused, {
ns: "gamePage"
}),
iconAnimation: !1,
icon: hI,
disabled: u
}, action: () => n.actions.toggleDownloadPopoverOpened()
};
case yw.InstallationStatus.CANCELLING:
case yw.InstallationStatus.IN_PROGRESS:
return {
buttonProps: {
children: xt.t(d.titleInProgress, {
ns: "gamePage"
}),
loading: !0,
disabled: !1,
loadingIcon: s ? hI : MI
}, action: () => n.actions.toggleDownloadPopoverOpened()
};
case yw.GameChannelStatus.INSTALLED:
return {
buttonProps: {
children: xt.t("game_page_launch_game", {
ns: "gamePage"
}),
disabled: u || n.isGameRunning,
icon: s ? bI : sD
}, action: () => {
i.actions.launchGame(e)
}
};
case yw.GameChannelStatus.RUNNING:
return {
buttonProps: {
children: xt.t("game_page_game_is_running", {
ns: "gamePage"
}),
loading: !0,
disabled: !1
}, action: () => {
o.window.setMinimizeWindow()
}
};
case yw.GameChannelStatus.UNINSTALLING:
return {
buttonProps: {
children: xt.t("game_page_uninstalling", {
ns: "gamePage"
}),
loading: !0,
disabled: !0
}, action: () => {}
};
case yw.GameChannelStatus.UPDATE_AVAILABLE:
return {
buttonProps: {
children: xt.t("game_page_update_game", {
ns: "gamePage"
}),
icon: s ? xI : lD,
disabled: u
}, action: async () => {
r.actions.addInstallationToQueue(e, yw.InstallationType.UPDATE)
}
};
case yw.InstallationStatus.ERROR:
case yw.InstallationStatus.WAITING:
return {
buttonProps: {
children: xt.t("game_page_waiting_in_queue", {
ns: "gamePage"
}),
loading: !0,
disabled: !1
}, action: () => n.actions.toggleDownloadPopoverOpened()
};
case yw.InstallationStatus.COMPLETED:
case yw.GameChannelStatus.AVAILABLE:
default:
return {
buttonProps: {
children: xt.t("game_page_install_game", {
ns: "gamePage"
}),
icon: s ? gI : oD,
disabled: u
}, action: async () => {
await a.actions.showGameStartInstallationDialog(e)
}
}
}
})(i.channelSelected), {
GameNotAvailableOfflineMessageComponent: p,
UpdateAvailableMessageComponent: h
} = (e => {
const t = pR((e => e.library)),
n = pR((e => e.application)),
r = pR((e => e.installer)),
{
channel: i,
status: a
} = (0, Ee.useMemo)((() => {
const n = Dw(e.gameId, t.installedGames),
i = null === n || void 0 === n ? void 0 : n.channels.find((t => t.id === e.channelId)),
a = IE(r.installations, e),
o = OE(r.uninstallations, e);
return {
channel: i,
status: aD(i, a, o)
}
}), [e, t.installedGames, r.installations, r.uninstallations]),
o = n.actions.isOffline();
return {
UpdateAvailableMessageComponent: (0, Ee.useMemo)((() => a === yw.GameChannelStatus.UPDATE_AVAILABLE ? (0, _w.jsx)(ft, {
i18nKey: "game_page_update_game_is_available",
ns: "gamePage",
components: [(0, _w.jsx)(zm, {
href: yw.configuration.patchnotesUrl,
external: !0
})],
values: {
version: null === i || void 0 === i ? void 0 : i.versionLabel
}
}) : void 0), [null === i || void 0 === i ? void 0 : i.versionLabel, a]),
GameNotAvailableOfflineMessageComponent: (0, Ee.useMemo)((() => o ? (0, _w.jsx)(ft, {
i18nKey: "game_page_game_is_not_available_offline",
ns: "gamePage",
values: {
game: e.gameName
}
}) : void 0), [e.gameName, o])
}
})(i.channelSelected), {
handleChannelSelection: f,
channelSelectorSuffix: m,
setGameSettingsMenuAnchor: g
} = (e => {
const {
t: t
} = bt("gamePage"), [n, r] = (0, Ee.useState)(null), i = pR((e => e.application)), a = pR((e => e.installer)), o = pR((e => e.library)), s = bC(), {
reduceMotion: {
wipeAnimationsDisabled: l
}
} = Ns(), {
isGameChannelInstalled: c,
isGameChannelInstalling: u,
isGameChannelUninstalling: d,
settingsUrl: p
} = (0, Ee.useMemo)((() => {
var t;
const n = o.actions.getInstalledChannel(o.channelSelected),
r = (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.INSTALLED || (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.UPDATE_AVAILABLE || (null === n || void 0 === n ? void 0 : n.status) === yw.GameChannelStatus.RUNNING,
i = void 0 !== OE(a.uninstallations, e);
return {
isGameChannelInstalled: r,
isGameChannelInstalling: void 0 !== IE(a.installations, e),
isGameChannelUninstalling: i,
settingsUrl: rO(`/${yD.SETTINGS}/${yD.SETTINGS_GAMES}`, {
gameId: null !== (t = e.gameId) && void 0 !== t ? t : o.channelSelected.gameId,
channelId: o.channelSelected.channelId
})
}
}), [o.actions, o.channelSelected, a.installations, a.uninstallations, e]), h = i.actions.isOffline(), f = (0, Ee.useCallback)((() => {
if (l) return void s(p);
const e = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
i.actions.setAnimatingAppLayoutWipe("full", !0);
const t = setTimeout((() => {
s(p)
}), e / 2);
return () => clearTimeout(t)
}), [i.actions, s, p, l]);
return {
handleChannelSelection: (0, Ee.useCallback)((t => {
var n;
const r = o.actions.getAvailableChannelsSorted(null !== (n = e.gameId) && void 0 !== n ? n : o.channelSelected.gameId).find((e => e.id === t)),
i = o.availableGames.find((e => e.id === o.gameSelected));
if (!r || !i) return;
const a = {
gameId: i.id,
gameName: i.name,
channelId: r.id,
platformId: r.platformId,
channelName: r.name
};
o.actions.setGameChannelSelected(a)
}), [e, o.actions, o.availableGames, o.channelSelected.gameId, o.gameSelected]),
channelSelectorSuffix: (0, Ee.useMemo)((() => (0, _w.jsxs)(Jm, {
anchor: n,
placement: "bottom-end",
trigger: (0, _w.jsx)(el, {
"aria-label": t("game_page_settings"),
icon: kI,
size: "small",
variant: "plain"
}),
children: [(0, _w.jsx)(Zm, {
label: t("game_page_settings"),
onClick: f
}), (0, _w.jsx)(Zm, {
label: t("game_page_settings_verify"),
onClick: () => a.actions.addInstallationToQueue(e, yw.InstallationType.VERIFY),
disabled: u || d || h
}), c && (0, _w.jsx)(Zm, {
color: "negative",
label: t("game_page_settings_uninstall"),
onClick: () => a.actions.startUninstallation(e),
disabled: u || d
})]
})), [n, t, f, u, d, h, c, a.actions, e]),
setGameSettingsMenuAnchor: r
}
})(i.channelSelected), {
displayProgressBar: v,
ProgressBarComponent: y
} = cD(i.channelSelected), _ = null === (e = a.animations.gamePageEntering) || void 0 === e ? void 0 : e.isAnimating, b = null === (t = a.animations.gamePageEntering) || void 0 === t ? void 0 : t.animState, x = a.actions.isOffline(), k = "SC" === (null === l || void 0 === l ? void 0 : l.id) && (null === c || void 0 === c ? void 0 : c.id) === tA && a.nonOperationalStatus;
return (0, _w.jsxs)(_w.Fragment, {
children: [(0, _w.jsx)(tp, {
image: null === l || void 0 === l ? void 0 : l.bgImage,
video: o || null === l || void 0 === l ? void 0 : l.bgVideo
}), (0, _w.jsx)(ip, {
logo: null === l || void 0 === l ? void 0 : l.logoWide,
animation: null === l || void 0 === l ? void 0 : l.logoAnimation,
playLottie: _ && "entering" === b
}), (0, _w.jsx)(Am, {
children: (0, _w.jsx)(ft, {
i18nKey: "game_page_title",
values: {
name: null === l || void 0 === l ? void 0 : l.name
},
components: [(0, _w.jsx)("br", {}), (0, _w.jsx)("b", {})],
t: n
})
}), (0, _w.jsxs)(ep, {
children: [i.availableGames.length > 0 && (0, _w.jsx)(Xd, {
label: n("game_page_channels"),
labelType: "classic",
className: "sol-c-game-page__channel-selector",
children: (0, _w.jsx)(lg, {
onValueChange: f,
value: null === c || void 0 === c ? void 0 : c.id,
suffix: m,
wrapperProps: {
ref: g
},
children: u.map((({
description: e,
label: t,
value: n
}) => (0, _w.jsx)(sg, {
description: e,
label: t,
value: n
}, n)))
})
}), (0, _w.jsx)(Jd, {
iconAnimation: !s && "hover",
onClick: () => d.action(),
...d.buttonProps
}), v && y, p && (0, _w.jsx)(op, {
children: p
}), !v && h && (0, _w.jsx)(op, {
children: h
}), !x && k && a.nonOperationalStatus && (0, _w.jsx)(zA, {
status: a.nonOperationalStatus
})]
}), (0, _w.jsx)(nD, {})]
})
},
dD = () => {
const {
t: e
} = bt("errors"), t = pR((e => e.window)), n = pR((e => e.application)), r = bC(), [i, a] = (0, Ee.useState)(!1), o = (0, Ee.useCallback)((() => t.actions.exitLauncher()), [t]), s = (0, Ee.useCallback)((() => {
a(!0);
const e = setTimeout((() => {
a(!1), r(`/${yD.SIGN_IN}`), clearTimeout(e)
}), 3 * Cw.second)
}), [a, r]);
return (0, Ee.useEffect)((() => {
n.connection.mode === yw.ConnectionMode.ONLINE && r(`/${yD.SIGN_IN}`)
}), [n.connection, r]), (0, _w.jsx)(fg, {
children: (0, _w.jsx)(hg, {
title: e("error_sign_in_offline_header_title"),
subtitle: (0, _w.jsx)(ft, {
i18nKey: "error_sign_in_offline_header_subtitle",
ns: "errors"
}),
footer: (0, _w.jsxs)(cl, {
align: "end",
gap: "100",
children: [(0, _w.jsx)(el, {
variant: "monochrome",
size: "large",
onClick: o,
children: e("error_sign_in_offline_exit")
}), (0, _w.jsx)(el, {
loading: i,
onClick: s,
size: "large",
children: e("error_sign_in_offline_retry")
})]
}),
children: (0, _w.jsxs)(cl, {
gap: "100",
vertical: !0,
children: [(0, _w.jsx)($d, {}), (0, _w.jsx)(Ys, {
color: "foreground-weak",
className: "sol-u-margin-b-050",
children: (0, _w.jsx)("h2", {
children: e("error_sign_in_offline_content_title")
})
}), (0, _w.jsxs)(Ys, {
color: "foreground-weak",
children: [(0, _w.jsx)("span", {
children: e("error_sign_in_offline_content_description")
}), (0, _w.jsxs)("ul", {
children: [(0, _w.jsx)("li", {
children: e("error_sign_in_offline_content_description_first")
}), (0, _w.jsx)("li", {
children: e("error_sign_in_offline_content_description_second")
}), (0, _w.jsx)("li", {
children: e("error_sign_in_offline_content_description_third")
})]
})]
})]
})
})
})
},
pD = () => {
const e = pR((e => e.toasts)),
{
wipeAnimType: t,
isHeaderVisible: n
} = (() => {
var e, t;
const n = pR((e => e.application)),
r = null === (e = n.animations.appLayoutWipe) || void 0 === e ? void 0 : e.isAnimating,
i = null === (t = n.animations.appLayoutWipe) || void 0 === t ? void 0 : t.animType,
a = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)),
[o, s] = (0, Ee.useState)(!1),
[l, c] = (0, Ee.useState)("");
return (0, Ee.useEffect)((() => {
r ? (async () => {
switch (n.actions.setAnimatingAppLayoutWipe("", !1), c(""), i) {
case "in":
c("in");
break;
case "in-rtl":
c("in-rtl");
break;
case "out":
c("out"), s(!0);
break;
case "out-rtl":
c("out-rtl"), s(!0);
break;
case "full-rtl":
c("in-rtl"), await new Promise((e => setTimeout(e, a / 2))), c("out-rtl");
break;
default:
c("in"), await new Promise((e => setTimeout(e, a / 2))), c("out")
}
await new Promise((e => setTimeout(e, a / 2))), n.actions.setAnimatingAppLayoutWipe("", !1), c("")
})() : s(!0)
}), [i, r, n.actions, a]), {
wipeAnimType: l,
isHeaderVisible: o
}
})();
return OR(), (() => {
const {
game: {
onLaunchGameSuccessfull: e,
onLaunchGameFailed: t,
onLaunchGameStopped: n
}
} = window.launcherAPI, r = pR((e => e.library));
(0, Ee.useEffect)((() => e((e => {
r.actions.setLaunchGameSuccessfull(e)
}))), [r.actions, e]), (0, Ee.useEffect)((() => t((e => {
r.actions.setLaunchGameFailed(e)
}))), [r.actions, t]), (0, Ee.useEffect)((() => n((e => {
r.actions.setLaunchGameStopped(e)
}))), [r.actions, n])
})(), (() => {
const {
installer: {
onInstallFailed: e,
onInstallSuccess: t,
onInstallProgress: n,
onCancelationSuccess: r,
onCancelationFailed: i,
onUninstallSuccess: a,
onUninstallFailed: o
}
} = window.launcherAPI, s = pR((e => e.installer));
(0, Ee.useEffect)((() => n((e => {
s.actions.setInstallationProgress(e)
}))), [s.actions, n]), (0, Ee.useEffect)((() => t((e => {
s.actions.setInstallationSuccess(e)
}))), [s.actions, t]), (0, Ee.useEffect)((() => e((e => {
s.actions.setInstallationFailed(e)
}))), [s.actions, e]), (0, Ee.useEffect)((() => r((() => {
s.actions.setCancelationSuccess()
}))), [s.actions, r]), (0, Ee.useEffect)((() => i((e => {
s.actions.setCancelationFailed(e)
}))), [s.actions, i]), (0, Ee.useEffect)((() => a((e => {
s.actions.setUninstallationSuccess(e)
}))), [s.actions, a]), (0, Ee.useEffect)((() => o((e => {
s.actions.setUninstallationFailed(e)
}))), [s.actions, o])
})(), (() => {
const {
connectivity: {
onConnectionAvailable: e,
onConnectionUnavailable: t
}
} = window.launcherAPI, n = pR((e => e.application));
(0, Ee.useEffect)((() => e((() => {
n.actions.setConnectionAvailable()
}))), [n.actions, e]), (0, Ee.useEffect)((() => t((() => {
n.actions.setConnectionUnavailable()
}))), [n.actions, t]), (0, Ee.useEffect)((() => {
const e = () => {
n.actions.checkConnection()
},
t = () => {
n.actions.checkConnection()
};
return window.addEventListener("offline", e), window.addEventListener("online", t), () => {
window.removeEventListener("offline", e), window.removeEventListener("online", t)
}
}), [n.actions])
})(), (0, Ee.useEffect)((() => {
e.actions.init()
}), [e.actions]), (0, _w.jsx)(_w.Fragment, {
children: (0, _w.jsx)(DI, {
children: (0, _w.jsxs)(fl, {
className: "sol-u-animation-wipe",
"data-sol-animation-wipe": t,
header: n ? (0, _w.jsx)(oA, {}) : void 0,
children: [(0, _w.jsx)(MC, {}), (0, _w.jsx)(lA, {}), (0, _w.jsx)(_g, {
toasts: e.list
})]
})
})
})
},
hD = () => {
(0, Ee.useEffect)((() => {
Rw().window.setLargeWindow()
}), [])
},
fD = () => {
const e = pR((e => e.application)),
{
wipeAnimationsDisabled: t
} = Ns().reduceMotion,
n = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
return (0, Ee.useEffect)((() => {
Rw().window.setSmallWindow()
}), []), (0, Ee.useEffect)((() => {
if (t) {
const t = setTimeout((() => {
e.actions.setAnimatingAppLayoutWipe("out", !1)
}), n);
return () => clearTimeout(t)
}
}), [e.actions, n]), (0, _w.jsx)(fg, {
children: (0, _w.jsx)(MC, {})
})
},
mD = () => {
var e;
const t = pR((e => e.library)),
n = pR((e => e.application)),
r = null === (e = n.animations.appLayoutWipe) || void 0 === e ? void 0 : e.isAnimating,
{
wipeAnimationsDisabled: i
} = Ns().reduceMotion;
hD();
const a = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)),
[o, s] = (0, Ee.useState)("is-init"),
l = (0, Ee.useCallback)((async () => {
await t.actions.checkForGameChannelUpdates()
}), [t.actions]);
(0, Ee.useEffect)((() => {
t.installedGames.length > 0 && l()
}), [l, t.installedGames.length]), (0, Ee.useEffect)((() => {
if (i) return n.actions.setAnimatingGamePageEntering(!1, "entered"), void s("is-entered");
r || "is-init" !== o || (n.actions.setAnimatingGamePageEntering(!0, "entering"), s("is-entering"), setTimeout((() => {
n.actions.setAnimatingGamePageEntering(!1, "entered"), s("is-entered")
}), a / 2 + 2e3))
}), [r, o, n.actions, a, i]);
const c = (0, Ee.useMemo)((() => Aw(yw.configuration.requestPollingInterval.library.base, yw.configuration.requestPollingInterval.library.window)), []);
return ((e, t) => {
const n = (0, Ee.useRef)(e);
(0, Ee.useEffect)((() => {
n.current = e
}), [e]), (0, Ee.useEffect)((() => {
if (null !== t) {
const e = setInterval((() => n.current()), t);
return () => clearInterval(e)
}
}), [t])
})((() => l()), t.installedGames.length > 0 ? c : null), (0, _w.jsx)(Pm, {
navigation: (0, _w.jsx)(FA, {}),
"data-sol-animation-gamepage": o,
children: (0, _w.jsx)(MC, {})
})
},
gD = () => {
const e = pR((e => e.application)),
t = pR((e => e.user)),
n = bC(),
{
pathname: r
} = yC(),
{
t: i
} = bt("settingsPage");
hD();
const {
wipeAnimationsDisabled: a
} = Ns().reduceMotion, o = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/)), s = [{
title: i("settings_nav_items_application"),
path: "application"
}, {
title: i("settings_nav_items_accessibility"),
path: "accessibility"
}, {
title: i("settings_nav_items_games"),
path: "games"
}, {
title: i("settings_nav_items_download"),
path: "download"
}, {
title: i("settings_nav_items_about"),
path: "about"
}, {
title: i("settings_nav_items_dev"),
path: "dev",
staff: !0
}];
return (0, _w.jsxs)(pg, {
children: [(0, _w.jsx)(ug, {
back: {
label: i("settings_common_back"),
href: ".."
},
title: "Settings",
backCallback: () => {
if (a) return void n(yD.HOME);
e.actions.setAnimatingAppLayoutWipe("full-rtl", !0);
const t = setTimeout((() => {
n(yD.HOME)
}), o / 2);
return () => clearTimeout(t)
},
children: s.map((e => {
const n = t.identity && t.identity.privileged,
i = iO({
path: `/${yD.SETTINGS}/${e.path}`,
end: !1
}, r);
return (!e.staff || e.staff && n) && (0, _w.jsx)(dg, {
active: Boolean(i),
href: e.path,
children: e.title
}, e.path)
}))
}), (0, _w.jsx)(MC, {})]
})
};
const vD = () => {
const e = yC();
return pR((e => e.user)).actions.isLoggedIn() ? (0, _w.jsx)(MC, {}) : (0, _w.jsx)(NC, {
to: "sign-in",
replace: !0,
state: {
from: e
}
})
},
yD = {
HOME: "/",
SIGN_IN: "sign-in",
SIGN_IN_MFA: "mfa",
SIGN_IN_GAME_PACKAGE_MISSING: "game-package-missing",
GAME_PAGE: "game-page/:gameId",
SETTINGS: "settings",
SETTINGS_APPLICATION: "application",
SETTINGS_ACCESSIBILITY: "accessibility",
SETTINGS_GAMES: "games/:gameId?/:channelId?",
SETTINGS_ABOUT: "about",
SETTINGS_DOWNLOAD: "download",
SETTINGS_DEV: "dev",
OFFLINE: "offline"
},
_D = function(e, t) {
return PO({
basename: null == t ? void 0 : t.basename,
future: VA({}, null == t ? void 0 : t.future, {
v7_prependBasename: !0
}),
history: (n = {
window: null == t ? void 0 : t.window
}, void 0 === n && (n = {}), qI((function(e, t) {
let {
pathname: n = "/",
search: r = "",
hash: i = ""
} = $I(e.location.hash.substr(1));
return n.startsWith("/") || n.startsWith(".") || (n = "/" + n), GI("", {
pathname: n,
search: r,
hash: i
}, t.state && t.state.usr || null, t.state && t.state.key || "default")
}), (function(e, t) {
let n = e.document.querySelector("base"),
r = "";
if (n && n.getAttribute("href")) {
let t = e.location.href,
n = t.indexOf("#");
r = -1 === n ? t : t.slice(0, n)
}
return r + "#" + ("string" === typeof t ? t : WI(t))
}), (function(e, t) {
UI("/" === e.pathname.charAt(0), "relative pathnames are not supported in hash history.push(" + JSON.stringify(t) + ")")
}), n)),
hydrationData: (null == t ? void 0 : t.hydrationData) || GA(),
routes: e,
mapRouteProperties: zC,
window: null == t ? void 0 : t.window
}).initialize();
var n
}([{
element: (0, _w.jsx)(pD, {}),
loader: async () => {
const e = Number(getComputedStyle(document.body).getPropertyValue("--sol-motion-anim-wipe-duration").match(/\d+/));
try {
const t = pR.getState().application;
if (t.isAppInitialized) return void t.actions.checkConnection();
await new Promise((t => setTimeout(t, yw.configuration.appLayoutLoaderWipeTrigger + e / 2)))
} finally {
return null
}
},
children: [{
path: yD.HOME,
element: (0, _w.jsx)(vD, {}),
children: [{
element: (0, _w.jsx)(mD, {}),
children: [{
index: !0,
loader: async () => {
const e = `/game-page/${pR.getState().library.gameSelected}`;
throw mO(e)
}
}, {
path: yD.GAME_PAGE,
element: (0, _w.jsx)(uD, {}),
loader: async ({
params: e
}) => {
try {
var t;
if (await async function(e = yD.SIGN_IN) {
const t = pR.getState().user,
n = pR.getState().application;
if (n.actions.isOffline() && !n.actions.isOfflineSessionValid() && await rI(), !t.actions.isLoggedIn()) throw mO(e);
return t.identity
}(), !e.gameId) return null;
const n = pR.getState().library,
r = pR.getState().settings;
n.gameSelected !== e.gameId && n.actions.setGameSelected(e.gameId);
const i = null !== (t = aI.getQueryData(LE().queryKey)) && void 0 !== t ? t : await aI.fetchQuery(LE());
if (!i) return null;
n.actions.setAvailableGames(i), r.actions.initializeGameSettings();
const a = null === i || void 0 === i ? void 0 : i.find((({
id: e
}) => n.gameSelected === e));
if (!a) return null;
const o = (await window.launcherAPI.store.getValueFromStore("library.defaults")).find((t => t.gameId === e.gameId));
if (o) n.actions.setGameChannelSelected(o);
else {
const t = a.channels[0],
r = e.gameId === n.channelSelected.gameId ? n.channelSelected : {
gameId: t.id,
gameName: t.name,
channelId: t.id,
platformId: t.platformId,
channelName: t.name
};
n.actions.setGameChannelSelected(r)
}
return {
fetchedLibrary: i
}
} catch (n) {
return null
} finally {
pR.getState().status.actions.checkStatus()
}
}
}]
}, {
element: (0, _w.jsx)(gD, {}),
path: yD.SETTINGS,
children: [{
index: !0,
loader: async () => {
throw mO(yD.SETTINGS_APPLICATION)
}
}, {
path: yD.SETTINGS_APPLICATION,
element: (0, _w.jsx)(NR, {})
}, {
path: yD.SETTINGS_ACCESSIBILITY,
element: (0, _w.jsx)(RR, {})
}, {
path: yD.SETTINGS_GAMES,
element: (0, _w.jsx)(ZR, {})
}, {
path: yD.SETTINGS_DOWNLOAD,
element: (0, _w.jsx)(jR, {})
}, {
path: yD.SETTINGS_ABOUT,
element: (0, _w.jsx)(bw, {})
}, {
path: yD.SETTINGS_DEV,
element: (0, _w.jsx)(MR, {})
}]
}]
}, {
path: yD.SIGN_IN,
element: (0, _w.jsx)(fD, {}),
loader: async () => {
const e = pR.getState().user,
t = pR.getState().library,
n = pR.getState().application,
r = `/game-page/${t.gameSelected}`,
i = `/${yD.OFFLINE}`;
return e.actions.isLoggedIn() ? mO(r) : n.actions.isOffline() ? mO(i) : null
},
children: [{
index: !0,
element: (0, _w.jsx)(XR, {})
}, {
path: yD.SIGN_IN_MFA,
element: (0, _w.jsx)(JR, {})
}, {
path: yD.SIGN_IN_GAME_PACKAGE_MISSING,
element: (0, _w.jsx)(eD, {})
}]
}, {
path: yD.OFFLINE,
element: (0, _w.jsx)(dD, {})
}]
}]),
bD = () => (0, _w.jsx)(ZA, {
router: _D,
fallbackElement: (0, _w.jsx)(sA, {})
});
var xD = n(95),
kD = function() {
return null
};
const wD = e => {
e && e instanceof Function && n.e(496).then(n.bind(n, 1496)).then((({
getCLS: t,
getFID: n,
getFCP: r,
getLCP: i,
getTTFB: a
}) => {
t(e), n(e), r(e), i(e), a(e)
}))
};
var SD;
! function(e = {}, t = Oo) {
window?.__SENTRY__RENDERER_INIT__ ? Qt.warn("The browser SDK has already been initialized.\nIf init has been called in the preload and contextIsolation is disabled, is not required to call init in the renderer") : (window.__SENTRY__RENDERER_INIT__ = !0, void 0 === e.autoSessionTracking && (e.autoSessionTracking = !1), e.sendClientReports = !1, void 0 === e.defaultIntegrations && (e.defaultIntegrations = [...Io(), cw()]), void 0 === e.stackParser && (e.stackParser = vw), void 0 === e.dsn && (e.dsn = "https://12345@dummy.dsn/12345"), void 0 === e.transport && (e.transport = uw), e.anrDetection && function(e) {
const t = {
pollInterval: 1e3,
anrThreshold: 5e3,
captureStackTrace: !1,
...e
},
n = lw();
document.addEventListener("visibilitychange", (() => {
n.sendStatus({
status: document.visibilityState,
config: t
})
})), n.sendStatus({
status: document.visibilityState,
config: t
}), setInterval((() => {
n.sendStatus({
status: "alive",
config: t
})
}), t.pollInterval)
}(!0 === e.anrDetection ? {} : e.anrDetection), delete e.initialScope, t(e))
}({
integrations: [((e = {}) => {
Uy || (Uy = !0, $a(By), Ka(By));
const {
enableInp: t,
enableLongTask: n,
enableLongAnimationFrame: r,
_experiments: {
enableInteractions: i
},
beforeStartSpan: a,
idleTimeout: o,
finalTimeout: s,
childSpanTimeout: l,
markBackgroundSpan: c,
traceFetch: u,
traceXHR: d,
shouldCreateSpanForRequest: p,
enableHTTPTimings: h,
instrumentPageLoad: f,
instrumentNavigation: m
} = {
...Yy,
...e
}, g = Ty();
t && jy(), r && PerformanceObserver.supportedEntryTypes.includes("long-animation-frame") ? new PerformanceObserver((e => {
for (const t of e.getEntries()) {
if (!jr()) return;
if (!t.scripts[0]) return;
const e = Iy(kn + t.startTime),
n = Iy(t.duration),
r = {
[hr]: "auto.ui.browser.metrics"
},
i = t.scripts[0];
if (i) {
const {
invoker: e,
invokerType: t,
sourceURL: n,
sourceFunctionName: a,
sourceCharPosition: o
} = i;
r["browser.script.invoker"] = e, r["browser.script.invoker_type"] = t, n && (r["code.filepath"] = n), a && (r["code.function"] = a), -1 !== o && (r["browser.script.source_char_position"] = o)
}
const a = yv({
name: "Main UI thread blocked",
op: "ui.long-animation-frame",
startTime: e,
attributes: r
});
a && a.end(e + n)
}
})).observe({
type: "long-animation-frame",
buffered: !0
}) : n && hy("longtask", (({
entries: e
}) => {
for (const t of e) {
if (!jr()) return;
const e = Iy(kn + t.startTime),
n = Iy(t.duration),
r = yv({
name: "Main UI thread blocked",
op: "ui.long-task",
startTime: e,
attributes: {
[hr]: "auto.ui.browser.metrics"
}
});
r && r.end(e + n)
}
})), i && hy("event", (({
entries: e
}) => {
for (const t of e) {
if (!jr()) return;
if ("click" === t.name) {
const e = Iy(kn + t.startTime),
n = Iy(t.duration),
r = {
name: Bt(t.target),
op: `ui.interaction.${t.name}`,
startTime: e,
attributes: {
[hr]: "auto.ui.browser.metrics"
}
},
i = $t(t.target);
i && (r.attributes["ui.component_name"] = i);
const a = yv(r);
a && a.end(e + n)
}
}
}));
const v = {
name: void 0,
source: void 0
};
function y(e, t) {
const n = "pageload" === t.op,
r = a ? a(t) : t,
i = r.attributes || {};
t.name !== r.name && (i[ur] = "custom", r.attributes = i), v.name = r.name, v.source = i[ur];
const c = Vy(r, {
idleTimeout: o,
finalTimeout: s,
childSpanTimeout: l,
disableAutoFinish: n,
beforeSpanEnd: e => {
g(), Ry(e)
}
});
function u() {
["interactive", "complete"].includes(da.document.readyState) && e.emit("idleSpanEnableAutoFinish", c)
}
return n && da.document && (da.document.addEventListener("readystatechange", (() => {
u()
})), u()), c
}
return {
name: "BrowserTracing",
afterAllSetup(e) {
let n, r = da.location && da.location.href;
e.on("startNavigationSpan", (t => {
zn() === e && (n && !Ar(n).timestamp && (ta && Qt.log(`[Tracing] Finishing current root span with op: ${Ar(n).op}`), n.end()), n = y(e, {
op: "navigation",
...t
}))
})), e.on("startPageLoadSpan", ((t, r = {}) => {
if (zn() !== e) return;
n && !Ar(n).timestamp && (ta && Qt.log(`[Tracing] Finishing current root span with op: ${Ar(n).op}`), n.end());
const i = _r(r.sentryTrace || Qy("sentry-trace"), r.baggage || Qy("baggage"));
Mn().setPropagationContext(i), n = y(e, {
op: "pageload",
...t
})
})), e.on("spanEnd", (e => {
const t = Ar(e).op;
if (e !== Mr(e) || "navigation" !== t && "pageload" !== t) return;
const n = Mn(),
r = n.getPropagationContext();
n.setPropagationContext({
...r,
sampled: void 0 !== r.sampled ? r.sampled : Pr(e),
dsc: r.dsc || Ur(e)
})
})), da.location && (f && function(e, t, n) {
e.emit("startPageLoadSpan", t, n), Mn().setTransactionName(t.name);
const r = jr(),
i = r && Ar(r).op
}(e, {
name: da.location.pathname,
startTime: kn ? kn / 1e3 : void 0,
attributes: {
[ur]: "url",
[hr]: "auto.pageload.browser"
}
}), m && Ni((({
to: t,
from: n
}) => {
void 0 === n && r && -1 !== r.indexOf(t) ? r = void 0 : n !== t && (r = void 0, function(e, t) {
jn().setPropagationContext(yn()), Mn().setPropagationContext(yn()), e.emit("startNavigationSpan", t), Mn().setTransactionName(t.name);
const n = jr(),
r = n && Ar(n).op
}(e, {
name: da.location.pathname,
attributes: {
[ur]: "url",
[hr]: "auto.navigation.browser"
}
}))
}))), c && (da && da.document ? da.document.addEventListener("visibilitychange", (() => {
const e = jr();
if (!e) return;
const t = Mr(e);
if (da.document.hidden && t) {
const e = "cancelled",
{
op: n,
status: r
} = Ar(t);
ta && Qt.log(`[Tracing] Transaction: ${e} -> since tab moved to the background, op: ${n}`), r || t.setStatus({
code: 2,
message: e
}), t.setAttribute("sentry.cancellation_reason", "document.hidden"), t.end()
}
})) : ta && Qt.warn("[Tracing] Could not set up background tab detection due to lack of global document")), i && function(e, t, n, r) {
let i;
const a = () => {
const a = "ui.action.click",
o = jr(),
s = o && Mr(o);
if (s) {
const e = Ar(s).op;
if (["navigation", "pageload"].includes(e)) return void(ta && Qt.warn(`[Tracing] Did not create ${a} span because a pageload or navigation span is in progress.`))
}
i && (i.setAttribute(fr, "interactionInterrupted"), i.end(), i = void 0), r.name ? i = Vy({
name: r.name,
op: a,
attributes: {
[ur]: r.source || "url"
}
}, {
idleTimeout: e,
finalTimeout: t,
childSpanTimeout: n
}) : ta && Qt.warn(`[Tracing] Did not create ${a} transaction because _latestRouteName is missing.`)
};
da.document && addEventListener("click", a, {
once: !1,
capture: !0
})
}(o, s, l, v), t && function(e) {
const t = ({
entries: e
}) => {
const t = jr(),
n = t && Mr(t);
e.forEach((e => {
if (! function(e) {
return "duration" in e
}(e) || !n) return;
const t = e.interactionId;
if (null != t && !My.has(t)) {
if (Ny.length > 10) {
const e = Ny.shift();
My.delete(e)
}
Ny.push(t), My.set(t, n)
}
}))
};
hy("event", t), hy("first-input", t)
}(), $y({
traceFetch: u,
traceXHR: d,
tracePropagationTargets: e.getOptions().tracePropagationTargets,
shouldCreateSpanForRequest: p,
enableHTTPTimings: h
})
}
}
})(), new tw(SD)]
}, (function(e) {
const t = {
...e
};
return ea(t, "react"), Zr("react", {
version: Ee.version
}), Oo(t)
}));
const ED = Ee.lazy((() => n.e(803).then(n.bind(n, 803)).then((e => ({
default: e.ReactQueryDevtools
}))))),
ID = () => {
const [e, t] = Ee.useState(!1), {
reduceMotion: n
} = pR((e => e.settings.appSettings.accessibility));
return (0, Ee.useEffect)((() => {
window.toggleDevtools = () => t((e => !e))
}), []), (async () => {
const e = pR.getState().application,
t = pR.getState().library,
n = pR.getState().soundSystem,
r = pR.getState().authentication,
i = pR.getState().settings,
a = pR.getState().installer,
o = pR.getState().status,
s = pR.getState().user;
e.isAppInitialized || (await e.actions.initializeApplication(), await n.actions.initializeSoundContext(), await r.actions.initializeAuthentication(), await s.actions.initializeUser(), await t.actions.initializeLibrary(), await i.actions.initializeApplicationSettings(), await i.actions.initializeGameSettings(), await a.actions.initializeInstaller(), await o.actions.initializeStatus())
})(), (0, _w.jsx)(Ee.StrictMode, {
children: (0, _w.jsx)(Ro, {
fallback: (0, _w.jsx)("p", {
children: "An error has occurred"
}),
children: (0, _w.jsx)(vR, {
children: (0, _w.jsx)(_R.aH, {
client: aI,
children: (0, _w.jsxs)(Ls, {
reduceMotion: null !== n && void 0 !== n ? n : DT.reduceMotion,
children: [(0, _w.jsx)(Ps, {
value: iP,
children: (0, _w.jsx)(LA.Provider, {
children: (0, _w.jsx)(bD, {})
})
}), (0, _w.jsx)(kD, {
initialIsOpen: !0
}), e && (0, _w.jsx)(Ee.Suspense, {
fallback: null,
children: (0, _w.jsx)(ED, {})
})]
})
})
})
}, HT())
})
};
xD.createRoot(document.getElementById("root")).render((0, _w.jsx)(ID, {})), wD()
})()
})();
//# sourceMappingURL=main.d5394d7f.js.map