(function polyfill() {
const relList = document.createElement("link").relList;
if (relList && relList.supports && relList.supports("modulepreload")) {
return;
}
for (const link of document.querySelectorAll('link[rel="modulepreload"]')) {
processPreload(link);
}
new MutationObserver((mutations) => {
for (const mutation of mutations) {
if (mutation.type !== "childList") {
continue;
}
for (const node of mutation.addedNodes) {
if (node.tagName === "LINK" && node.rel === "modulepreload")
processPreload(node);
}
}
}).observe(document, { childList: true, subtree: true });
function getFetchOpts(link) {
const fetchOpts = {};
if (link.integrity) fetchOpts.integrity = link.integrity;
if (link.referrerPolicy) fetchOpts.referrerPolicy = link.referrerPolicy;
if (link.crossOrigin === "use-credentials")
fetchOpts.credentials = "include";
else if (link.crossOrigin === "anonymous") fetchOpts.credentials = "omit";
else fetchOpts.credentials = "same-origin";
return fetchOpts;
}
function processPreload(link) {
if (link.ep)
return;
link.ep = true;
const fetchOpts = getFetchOpts(link);
fetch(link.href, fetchOpts);
}
})();
var n, l$1, u$2, i$1, r$1, o$1, e$1, f$2, c$1, s$1, a$1, p$1 = {}, v$1 = [], y$1 = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i, d$1 = Array.isArray;
function w$1(n2, l2) {
for (var u2 in l2) n2[u2] = l2[u2];
return n2;
}
function _(n2) {
n2 && n2.parentNode && n2.parentNode.removeChild(n2);
}
function g(l2, u2, t2) {
var i2, r2, o2, e2 = {};
for (o2 in u2) "key" == o2 ? i2 = u2[o2] : "ref" == o2 ? r2 = u2[o2] : e2[o2] = u2[o2];
if (arguments.length > 2 && (e2.children = arguments.length > 3 ? n.call(arguments, 2) : t2), "function" == typeof l2 && null != l2.defaultProps) for (o2 in l2.defaultProps) void 0 === e2[o2] && (e2[o2] = l2.defaultProps[o2]);
return m$1(l2, e2, i2, r2, null);
}
function m$1(n2, t2, i2, r2, o2) {
var e2 = { type: n2, props: t2, key: i2, ref: r2, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: null == o2 ? ++u$2 : o2, __i: -1, __u: 0 };
return null == o2 && null != l$1.vnode && l$1.vnode(e2), e2;
}
function k$1(n2) {
return n2.children;
}
function x(n2, l2) {
this.props = n2, this.context = l2;
}
function C$1(n2, l2) {
if (null == l2) return n2.__ ? C$1(n2.__, n2.__i + 1) : null;
for (var u2; l2 < n2.__k.length; l2++) if (null != (u2 = n2.__k[l2]) && null != u2.__e) return u2.__e;
return "function" == typeof n2.type ? C$1(n2) : null;
}
function S(n2) {
var l2, u2;
if (null != (n2 = n2.__) && null != n2.__c) {
for (n2.__e = n2.__c.base = null, l2 = 0; l2 < n2.__k.length; l2++) if (null != (u2 = n2.__k[l2]) && null != u2.__e) {
n2.__e = n2.__c.base = u2.__e;
break;
}
return S(n2);
}
}
function M(n2) {
(!n2.__d && (n2.__d = true) && i$1.push(n2) && !P.__r++ || r$1 !== l$1.debounceRendering) && ((r$1 = l$1.debounceRendering) || o$1)(P);
}
function P() {
var n2, u2, t2, r2, o2, f2, c2, s2;
for (i$1.sort(e$1); n2 = i$1.shift(); ) n2.__d && (u2 = i$1.length, r2 = void 0, f2 = (o2 = (t2 = n2).__v).__e, c2 = [], s2 = [], t2.__P && ((r2 = w$1({}, o2)).__v = o2.__v + 1, l$1.vnode && l$1.vnode(r2), j$1(t2.__P, r2, o2, t2.__n, t2.__P.namespaceURI, 32 & o2.__u ? [f2] : null, c2, null == f2 ? C$1(o2) : f2, !!(32 & o2.__u), s2), r2.__v = o2.__v, r2.__.__k[r2.__i] = r2, z$1(c2, r2, s2), r2.__e != f2 && S(r2)), i$1.length > u2 && i$1.sort(e$1));
P.__r = 0;
}
function $(n2, l2, u2, t2, i2, r2, o2, e2, f2, c2, s2) {
var a2, h2, y2, d2, w2, _2, g2 = t2 && t2.__k || v$1, m2 = l2.length;
for (f2 = I(u2, l2, g2, f2, m2), a2 = 0; a2 < m2; a2++) null != (y2 = u2.__k[a2]) && (h2 = -1 === y2.__i ? p$1 : g2[y2.__i] || p$1, y2.__i = a2, _2 = j$1(n2, y2, h2, i2, r2, o2, e2, f2, c2, s2), d2 = y2.__e, y2.ref && h2.ref != y2.ref && (h2.ref && V(h2.ref, null, y2), s2.push(y2.ref, y2.__c || d2, y2)), null == w2 && null != d2 && (w2 = d2), 4 & y2.__u || h2.__k === y2.__k ? f2 = A(y2, f2, n2) : "function" == typeof y2.type && void 0 !== _2 ? f2 = _2 : d2 && (f2 = d2.nextSibling), y2.__u &= -7);
return u2.__e = w2, f2;
}
function I(n2, l2, u2, t2, i2) {
var r2, o2, e2, f2, c2, s2 = u2.length, a2 = s2, h2 = 0;
for (n2.__k = new Array(i2), r2 = 0; r2 < i2; r2++) null != (o2 = l2[r2]) && "boolean" != typeof o2 && "function" != typeof o2 ? (f2 = r2 + h2, (o2 = n2.__k[r2] = "string" == typeof o2 || "number" == typeof o2 || "bigint" == typeof o2 || o2.constructor == String ? m$1(null, o2, null, null, null) : d$1(o2) ? m$1(k$1, { children: o2 }, null, null, null) : void 0 === o2.constructor && o2.__b > 0 ? m$1(o2.type, o2.props, o2.key, o2.ref ? o2.ref : null, o2.__v) : o2).__ = n2, o2.__b = n2.__b + 1, e2 = null, -1 !== (c2 = o2.__i = L(o2, u2, f2, a2)) && (a2--, (e2 = u2[c2]) && (e2.__u |= 2)), null == e2 || null === e2.__v ? (-1 == c2 && h2--, "function" != typeof o2.type && (o2.__u |= 4)) : c2 != f2 && (c2 == f2 - 1 ? h2-- : c2 == f2 + 1 ? h2++ : (c2 > f2 ? h2-- : h2++, o2.__u |= 4))) : n2.__k[r2] = null;
if (a2) for (r2 = 0; r2 < s2; r2++) null != (e2 = u2[r2]) && 0 == (2 & e2.__u) && (e2.__e == t2 && (t2 = C$1(e2)), q$1(e2, e2));
return t2;
}
function A(n2, l2, u2) {
var t2, i2;
if ("function" == typeof n2.type) {
for (t2 = n2.__k, i2 = 0; t2 && i2 < t2.length; i2++) t2[i2] && (t2[i2].__ = n2, l2 = A(t2[i2], l2, u2));
return l2;
}
n2.__e != l2 && (l2 && n2.type && !u2.contains(l2) && (l2 = C$1(n2)), u2.insertBefore(n2.__e, l2 || null), l2 = n2.__e);
do {
l2 = l2 && l2.nextSibling;
} while (null != l2 && 8 == l2.nodeType);
return l2;
}
function L(n2, l2, u2, t2) {
var i2, r2, o2 = n2.key, e2 = n2.type, f2 = l2[u2];
if (null === f2 || f2 && o2 == f2.key && e2 === f2.type && 0 == (2 & f2.__u)) return u2;
if (t2 > (null != f2 && 0 == (2 & f2.__u) ? 1 : 0)) for (i2 = u2 - 1, r2 = u2 + 1; i2 >= 0 || r2 < l2.length; ) {
if (i2 >= 0) {
if ((f2 = l2[i2]) && 0 == (2 & f2.__u) && o2 == f2.key && e2 === f2.type) return i2;
i2--;
}
if (r2 < l2.length) {
if ((f2 = l2[r2]) && 0 == (2 & f2.__u) && o2 == f2.key && e2 === f2.type) return r2;
r2++;
}
}
return -1;
}
function T$1(n2, l2, u2) {
"-" == l2[0] ? n2.setProperty(l2, null == u2 ? "" : u2) : n2[l2] = null == u2 ? "" : "number" != typeof u2 || y$1.test(l2) ? u2 : u2 + "px";
}
function F(n2, l2, u2, t2, i2) {
var r2;
n: if ("style" == l2) if ("string" == typeof u2) n2.style.cssText = u2;
else {
if ("string" == typeof t2 && (n2.style.cssText = t2 = ""), t2) for (l2 in t2) u2 && l2 in u2 || T$1(n2.style, l2, "");
if (u2) for (l2 in u2) t2 && u2[l2] === t2[l2] || T$1(n2.style, l2, u2[l2]);
}
else if ("o" == l2[0] && "n" == l2[1]) r2 = l2 != (l2 = l2.replace(f$2, "$1")), l2 = l2.toLowerCase() in n2 || "onFocusOut" == l2 || "onFocusIn" == l2 ? l2.toLowerCase().slice(2) : l2.slice(2), n2.l || (n2.l = {}), n2.l[l2 + r2] = u2, u2 ? t2 ? u2.u = t2.u : (u2.u = c$1, n2.addEventListener(l2, r2 ? a$1 : s$1, r2)) : n2.removeEventListener(l2, r2 ? a$1 : s$1, r2);
else {
if ("http://www.w3.org/2000/svg" == i2) l2 = l2.replace(/xlink(H|:h)/, "h").replace(/sName$/, "s");
else if ("width" != l2 && "height" != l2 && "href" != l2 && "list" != l2 && "form" != l2 && "tabIndex" != l2 && "download" != l2 && "rowSpan" != l2 && "colSpan" != l2 && "role" != l2 && "popover" != l2 && l2 in n2) try {
n2[l2] = null == u2 ? "" : u2;
break n;
} catch (n3) {
}
"function" == typeof u2 || (null == u2 || false === u2 && "-" != l2[4] ? n2.removeAttribute(l2) : n2.setAttribute(l2, "popover" == l2 && 1 == u2 ? "" : u2));
}
}
function O(n2) {
return function(u2) {
if (this.l) {
var t2 = this.l[u2.type + n2];
if (null == u2.t) u2.t = c$1++;
else if (u2.t < t2.u) return;
return t2(l$1.event ? l$1.event(u2) : u2);
}
};
}
function j$1(n2, u2, t2, i2, r2, o2, e2, f2, c2, s2) {
var a2, h2, p2, v2, y2, g2, m2, b, C2, S2, M2, P2, I2, A2, H, L2, T2, F2 = u2.type;
if (void 0 !== u2.constructor) return null;
128 & t2.__u && (c2 = !!(32 & t2.__u), o2 = [f2 = u2.__e = t2.__e]), (a2 = l$1.__b) && a2(u2);
n: if ("function" == typeof F2) try {
if (b = u2.props, C2 = "prototype" in F2 && F2.prototype.render, S2 = (a2 = F2.contextType) && i2[a2.__c], M2 = a2 ? S2 ? S2.props.value : a2.__ : i2, t2.__c ? m2 = (h2 = u2.__c = t2.__c).__ = h2.__E : (C2 ? u2.__c = h2 = new F2(b, M2) : (u2.__c = h2 = new x(b, M2), h2.constructor = F2, h2.render = B$1), S2 && S2.sub(h2), h2.props = b, h2.state || (h2.state = {}), h2.context = M2, h2.__n = i2, p2 = h2.__d = true, h2.__h = [], h2._sb = []), C2 && null == h2.__s && (h2.__s = h2.state), C2 && null != F2.getDerivedStateFromProps && (h2.__s == h2.state && (h2.__s = w$1({}, h2.__s)), w$1(h2.__s, F2.getDerivedStateFromProps(b, h2.__s))), v2 = h2.props, y2 = h2.state, h2.__v = u2, p2) C2 && null == F2.getDerivedStateFromProps && null != h2.componentWillMount && h2.componentWillMount(), C2 && null != h2.componentDidMount && h2.__h.push(h2.componentDidMount);
else {
if (C2 && null == F2.getDerivedStateFromProps && b !== v2 && null != h2.componentWillReceiveProps && h2.componentWillReceiveProps(b, M2), !h2.__e && (null != h2.shouldComponentUpdate && false === h2.shouldComponentUpdate(b, h2.__s, M2) || u2.__v == t2.__v)) {
for (u2.__v != t2.__v && (h2.props = b, h2.state = h2.__s, h2.__d = false), u2.__e = t2.__e, u2.__k = t2.__k, u2.__k.some(function(n3) {
n3 && (n3.__ = u2);
}), P2 = 0; P2 < h2._sb.length; P2++) h2.__h.push(h2._sb[P2]);
h2._sb = [], h2.__h.length && e2.push(h2);
break n;
}
null != h2.componentWillUpdate && h2.componentWillUpdate(b, h2.__s, M2), C2 && null != h2.componentDidUpdate && h2.__h.push(function() {
h2.componentDidUpdate(v2, y2, g2);
});
}
if (h2.context = M2, h2.props = b, h2.__P = n2, h2.__e = false, I2 = l$1.__r, A2 = 0, C2) {
for (h2.state = h2.__s, h2.__d = false, I2 && I2(u2), a2 = h2.render(h2.props, h2.state, h2.context), H = 0; H < h2._sb.length; H++) h2.__h.push(h2._sb[H]);
h2._sb = [];
} else do {
h2.__d = false, I2 && I2(u2), a2 = h2.render(h2.props, h2.state, h2.context), h2.state = h2.__s;
} while (h2.__d && ++A2 < 25);
h2.state = h2.__s, null != h2.getChildContext && (i2 = w$1(w$1({}, i2), h2.getChildContext())), C2 && !p2 && null != h2.getSnapshotBeforeUpdate && (g2 = h2.getSnapshotBeforeUpdate(v2, y2)), f2 = $(n2, d$1(L2 = null != a2 && a2.type === k$1 && null == a2.key ? a2.props.children : a2) ? L2 : [L2], u2, t2, i2, r2, o2, e2, f2, c2, s2), h2.base = u2.__e, u2.__u &= -161, h2.__h.length && e2.push(h2), m2 && (h2.__E = h2.__ = null);
} catch (n3) {
if (u2.__v = null, c2 || null != o2) if (n3.then) {
for (u2.__u |= c2 ? 160 : 128; f2 && 8 == f2.nodeType && f2.nextSibling; ) f2 = f2.nextSibling;
o2[o2.indexOf(f2)] = null, u2.__e = f2;
} else for (T2 = o2.length; T2--; ) _(o2[T2]);
else u2.__e = t2.__e, u2.__k = t2.__k;
l$1.__e(n3, u2, t2);
}
else null == o2 && u2.__v == t2.__v ? (u2.__k = t2.__k, u2.__e = t2.__e) : f2 = u2.__e = N(t2.__e, u2, t2, i2, r2, o2, e2, c2, s2);
return (a2 = l$1.diffed) && a2(u2), 128 & u2.__u ? void 0 : f2;
}
function z$1(n2, u2, t2) {
for (var i2 = 0; i2 < t2.length; i2++) V(t2[i2], t2[++i2], t2[++i2]);
l$1.__c && l$1.__c(u2, n2), n2.some(function(u3) {
try {
n2 = u3.__h, u3.__h = [], n2.some(function(n3) {
n3.call(u3);
});
} catch (n3) {
l$1.__e(n3, u3.__v);
}
});
}
function N(u2, t2, i2, r2, o2, e2, f2, c2, s2) {
var a2, h2, v2, y2, w2, g2, m2, b = i2.props, k2 = t2.props, x2 = t2.type;
if ("svg" == x2 ? o2 = "http://www.w3.org/2000/svg" : "math" == x2 ? o2 = "http://www.w3.org/1998/Math/MathML" : o2 || (o2 = "http://www.w3.org/1999/xhtml"), null != e2) {
for (a2 = 0; a2 < e2.length; a2++) if ((w2 = e2[a2]) && "setAttribute" in w2 == !!x2 && (x2 ? w2.localName == x2 : 3 == w2.nodeType)) {
u2 = w2, e2[a2] = null;
break;
}
}
if (null == u2) {
if (null == x2) return document.createTextNode(k2);
u2 = document.createElementNS(o2, x2, k2.is && k2), c2 && (l$1.__m && l$1.__m(t2, e2), c2 = false), e2 = null;
}
if (null === x2) b === k2 || c2 && u2.data === k2 || (u2.data = k2);
else {
if (e2 = e2 && n.call(u2.childNodes), b = i2.props || p$1, !c2 && null != e2) for (b = {}, a2 = 0; a2 < u2.attributes.length; a2++) b[(w2 = u2.attributes[a2]).name] = w2.value;
for (a2 in b) if (w2 = b[a2], "children" == a2) ;
else if ("dangerouslySetInnerHTML" == a2) v2 = w2;
else if (!(a2 in k2)) {
if ("value" == a2 && "defaultValue" in k2 || "checked" == a2 && "defaultChecked" in k2) continue;
F(u2, a2, null, w2, o2);
}
for (a2 in k2) w2 = k2[a2], "children" == a2 ? y2 = w2 : "dangerouslySetInnerHTML" == a2 ? h2 = w2 : "value" == a2 ? g2 = w2 : "checked" == a2 ? m2 = w2 : c2 && "function" != typeof w2 || b[a2] === w2 || F(u2, a2, w2, b[a2], o2);
if (h2) c2 || v2 && (h2.__html === v2.__html || h2.__html === u2.innerHTML) || (u2.innerHTML = h2.__html), t2.__k = [];
else if (v2 && (u2.innerHTML = ""), $(u2, d$1(y2) ? y2 : [y2], t2, i2, r2, "foreignObject" == x2 ? "http://www.w3.org/1999/xhtml" : o2, e2, f2, e2 ? e2[0] : i2.__k && C$1(i2, 0), c2, s2), null != e2) for (a2 = e2.length; a2--; ) _(e2[a2]);
c2 || (a2 = "value", "progress" == x2 && null == g2 ? u2.removeAttribute("value") : void 0 !== g2 && (g2 !== u2[a2] || "progress" == x2 && !g2 || "option" == x2 && g2 !== b[a2]) && F(u2, a2, g2, b[a2], o2), a2 = "checked", void 0 !== m2 && m2 !== u2[a2] && F(u2, a2, m2, b[a2], o2));
}
return u2;
}
function V(n2, u2, t2) {
try {
if ("function" == typeof n2) {
var i2 = "function" == typeof n2.__u;
i2 && n2.__u(), i2 && null == u2 || (n2.__u = n2(u2));
} else n2.current = u2;
} catch (n3) {
l$1.__e(n3, t2);
}
}
function q$1(n2, u2, t2) {
var i2, r2;
if (l$1.unmount && l$1.unmount(n2), (i2 = n2.ref) && (i2.current && i2.current !== n2.__e || V(i2, null, u2)), null != (i2 = n2.__c)) {
if (i2.componentWillUnmount) try {
i2.componentWillUnmount();
} catch (n3) {
l$1.__e(n3, u2);
}
i2.base = i2.__P = null;
}
if (i2 = n2.__k) for (r2 = 0; r2 < i2.length; r2++) i2[r2] && q$1(i2[r2], u2, t2 || "function" != typeof n2.type);
t2 || _(n2.__e), n2.__c = n2.__ = n2.__e = void 0;
}
function B$1(n2, l2, u2) {
return this.constructor(n2, u2);
}
function D$1(u2, t2, i2) {
var r2, o2, e2, f2;
t2 == document && (t2 = document.documentElement), l$1.__ && l$1.__(u2, t2), o2 = (r2 = false) ? null : t2.__k, e2 = [], f2 = [], j$1(t2, u2 = t2.__k = g(k$1, null, [u2]), o2 || p$1, p$1, t2.namespaceURI, o2 ? null : t2.firstChild ? n.call(t2.childNodes) : null, e2, o2 ? o2.__e : t2.firstChild, r2, f2), z$1(e2, u2, f2);
}
n = v$1.slice, l$1 = { __e: function(n2, l2, u2, t2) {
for (var i2, r2, o2; l2 = l2.__; ) if ((i2 = l2.__c) && !i2.__) try {
if ((r2 = i2.constructor) && null != r2.getDerivedStateFromError && (i2.setState(r2.getDerivedStateFromError(n2)), o2 = i2.__d), null != i2.componentDidCatch && (i2.componentDidCatch(n2, t2 || {}), o2 = i2.__d), o2) return i2.__E = i2;
} catch (l3) {
n2 = l3;
}
throw n2;
} }, u$2 = 0, x.prototype.setState = function(n2, l2) {
var u2;
u2 = null != this.__s && this.__s !== this.state ? this.__s : this.__s = w$1({}, this.state), "function" == typeof n2 && (n2 = n2(w$1({}, u2), this.props)), n2 && w$1(u2, n2), null != n2 && this.__v && (l2 && this._sb.push(l2), M(this));
}, x.prototype.forceUpdate = function(n2) {
this.__v && (this.__e = true, n2 && this.__h.push(n2), M(this));
}, x.prototype.render = k$1, i$1 = [], o$1 = "function" == typeof Promise ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, e$1 = function(n2, l2) {
return n2.__v.__b - l2.__v.__b;
}, P.__r = 0, f$2 = /(PointerCapture)$|Capture$/i, c$1 = 0, s$1 = O(false), a$1 = O(true);
var f$1 = 0;
function u$1(e2, t2, n2, o2, i2, u2) {
t2 || (t2 = {});
var a2, c2, p2 = t2;
if ("ref" in p2) for (c2 in p2 = {}, t2) "ref" == c2 ? a2 = t2[c2] : p2[c2] = t2[c2];
var l2 = { type: e2, props: p2, key: n2, ref: a2, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: --f$1, __i: -1, __u: 0, __source: i2, __self: u2 };
if ("function" == typeof e2 && (a2 = e2.defaultProps)) for (c2 in a2) void 0 === p2[c2] && (p2[c2] = a2[c2]);
return l$1.vnode && l$1.vnode(l2), l2;
}
var t, r, u, i, o = 0, f = [], c = l$1, e = c.__b, a = c.__r, v = c.diffed, l = c.__c, m = c.unmount, s = c.__;
function d(n2, t2) {
c.__h && c.__h(r, n2, o || t2), o = 0;
var u2 = r.__H || (r.__H = { __: [], __h: [] });
return n2 >= u2.__.length && u2.__.push({}), u2.__[n2];
}
function h(n2) {
return o = 1, p(D, n2);
}
function p(n2, u2, i2) {
var o2 = d(t++, 2);
if (o2.t = n2, !o2.__c && (o2.__ = [D(void 0, u2), function(n3) {
var t2 = o2.__N ? o2.__N[0] : o2.__[0], r2 = o2.t(t2, n3);
t2 !== r2 && (o2.__N = [r2, o2.__[1]], o2.__c.setState({}));
}], o2.__c = r, !r.u)) {
var f2 = function(n3, t2, r2) {
if (!o2.__c.__H) return true;
var u3 = o2.__c.__H.__.filter(function(n4) {
return !!n4.__c;
});
if (u3.every(function(n4) {
return !n4.__N;
})) return !c2 || c2.call(this, n3, t2, r2);
var i3 = o2.__c.props !== n3;
return u3.forEach(function(n4) {
if (n4.__N) {
var t3 = n4.__[0];
n4.__ = n4.__N, n4.__N = void 0, t3 !== n4.__[0] && (i3 = true);
}
}), c2 && c2.call(this, n3, t2, r2) || i3;
};
r.u = true;
var c2 = r.shouldComponentUpdate, e2 = r.componentWillUpdate;
r.componentWillUpdate = function(n3, t2, r2) {
if (this.__e) {
var u3 = c2;
c2 = void 0, f2(n3, t2, r2), c2 = u3;
}
e2 && e2.call(this, n3, t2, r2);
}, r.shouldComponentUpdate = f2;
}
return o2.__N || o2.__;
}
function y(n2, u2) {
var i2 = d(t++, 3);
!c.__s && C(i2.__H, u2) && (i2.__ = n2, i2.i = u2, r.__H.__h.push(i2));
}
function T(n2, r2) {
var u2 = d(t++, 7);
return C(u2.__H, r2) && (u2.__ = n2(), u2.__H = r2, u2.__h = n2), u2.__;
}
function q(n2, t2) {
return o = 8, T(function() {
return n2;
}, t2);
}
function j() {
for (var n2; n2 = f.shift(); ) if (n2.__P && n2.__H) try {
n2.__H.__h.forEach(z), n2.__H.__h.forEach(B), n2.__H.__h = [];
} catch (t2) {
n2.__H.__h = [], c.__e(t2, n2.__v);
}
}
c.__b = function(n2) {
r = null, e && e(n2);
}, c.__ = function(n2, t2) {
n2 && t2.__k && t2.__k.__m && (n2.__m = t2.__k.__m), s && s(n2, t2);
}, c.__r = function(n2) {
a && a(n2), t = 0;
var i2 = (r = n2.__c).__H;
i2 && (u === r ? (i2.__h = [], r.__h = [], i2.__.forEach(function(n3) {
n3.__N && (n3.__ = n3.__N), n3.i = n3.__N = void 0;
})) : (i2.__h.forEach(z), i2.__h.forEach(B), i2.__h = [], t = 0)), u = r;
}, c.diffed = function(n2) {
v && v(n2);
var t2 = n2.__c;
t2 && t2.__H && (t2.__H.__h.length && (1 !== f.push(t2) && i === c.requestAnimationFrame || ((i = c.requestAnimationFrame) || w)(j)), t2.__H.__.forEach(function(n3) {
n3.i && (n3.__H = n3.i), n3.i = void 0;
})), u = r = null;
}, c.__c = function(n2, t2) {
t2.some(function(n3) {
try {
n3.__h.forEach(z), n3.__h = n3.__h.filter(function(n4) {
return !n4.__ || B(n4);
});
} catch (r2) {
t2.some(function(n4) {
n4.__h && (n4.__h = []);
}), t2 = [], c.__e(r2, n3.__v);
}
}), l && l(n2, t2);
}, c.unmount = function(n2) {
m && m(n2);
var t2, r2 = n2.__c;
r2 && r2.__H && (r2.__H.__.forEach(function(n3) {
try {
z(n3);
} catch (n4) {
t2 = n4;
}
}), r2.__H = void 0, t2 && c.__e(t2, r2.__v));
};
var k = "function" == typeof requestAnimationFrame;
function w(n2) {
var t2, r2 = function() {
clearTimeout(u2), k && cancelAnimationFrame(t2), setTimeout(n2);
}, u2 = setTimeout(r2, 100);
k && (t2 = requestAnimationFrame(r2));
}
function z(n2) {
var t2 = r, u2 = n2.__c;
"function" == typeof u2 && (n2.__c = void 0, u2()), r = t2;
}
function B(n2) {
var t2 = r;
n2.__c = n2.__(), r = t2;
}
function C(n2, t2) {
return !n2 || n2.length !== t2.length || t2.some(function(t3, r2) {
return t3 !== n2[r2];
});
}
function D(n2, t2) {
return "function" == typeof t2 ? t2(n2) : t2;
}
const header = "_header_1hnaa_1";
const logo = "_logo_1hnaa_6";
const style$a = {
header,
logo
};
const container = "_container_1putz_1";
const style$9 = {
container
};
function Container(props) {
return /* @__PURE__ */ u$1("div", { class: style$9.container, children: props.children });
}
const itemKey$1 = "topics";
function loadTopics() {
const storedTopics = localStorage.getItem(itemKey$1);
if (storedTopics) {
return JSON.parse(storedTopics);
} else {
return [];
}
}
function saveTopics(topics) {
localStorage.setItem(itemKey$1, JSON.stringify(topics));
}
function getDefaultExportFromCjs(x2) {
return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
}
var classnames = { exports: {} };
/*!
Copyright (c) 2018 Jed Watson.
Licensed under the MIT License (MIT), see
http://jedwatson.github.io/classnames
*/
var hasRequiredClassnames;
function requireClassnames() {
if (hasRequiredClassnames) return classnames.exports;
hasRequiredClassnames = 1;
(function(module) {
(function() {
var hasOwn = {}.hasOwnProperty;
function classNames() {
var classes = "";
for (var i2 = 0; i2 < arguments.length; i2++) {
var arg = arguments[i2];
if (arg) {
classes = appendClass(classes, parseValue(arg));
}
}
return classes;
}
function parseValue(arg) {
if (typeof arg === "string" || typeof arg === "number") {
return arg;
}
if (typeof arg !== "object") {
return "";
}
if (Array.isArray(arg)) {
return classNames.apply(null, arg);
}
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
return arg.toString();
}
var classes = "";
for (var key in arg) {
if (hasOwn.call(arg, key) && arg[key]) {
classes = appendClass(classes, key);
}
}
return classes;
}
function appendClass(value, newClass) {
if (!newClass) {
return value;
}
if (value) {
return value + " " + newClass;
}
return value + newClass;
}
if (module.exports) {
classNames.default = classNames;
module.exports = classNames;
} else {
window.classNames = classNames;
}
})();
})(classnames);
return classnames.exports;
}
var classnamesExports = requireClassnames();
const cn = /* @__PURE__ */ getDefaultExportFromCjs(classnamesExports);
const spinnerSquare = "_spinnerSquare_4vgl0_1";
const square1 = "_square1_4vgl0_14";
const square2 = "_square2_4vgl0_18";
const square3 = "_square3_4vgl0_22";
const style$8 = {
spinnerSquare,
square1,
"square-anim": "_square-anim_4vgl0_1",
square2,
square3
};
function Spinner(props) {
return /* @__PURE__ */ u$1("div", { className: cn(style$8.spinnerSquare, props.className), children: [
/* @__PURE__ */ u$1("div", { className: style$8.square1 }),
/* @__PURE__ */ u$1("div", { className: style$8.square2 }),
/* @__PURE__ */ u$1("div", { className: style$8.square3 })
] });
}
const spinner$1 = "_spinner_1pqws_1";
const list = "_list_1pqws_5";
const highlight = "_highlight_1pqws_44";
const head = "_head_1pqws_48";
const generationSettings$1 = "_generationSettings_1pqws_52";
const style$7 = {
spinner: spinner$1,
list,
highlight,
head,
generationSettings: generationSettings$1
};
const routes = {
home: "home",
topic: "topic",
settings: "settings"
};
const btn = "_btn_1ts7o_1";
const disabled = "_disabled_1ts7o_18";
const secondary = "_secondary_1ts7o_22";
const spinner = "_spinner_1ts7o_32";
const load3 = "_load3_1ts7o_1";
const style$6 = {
btn,
disabled,
secondary,
spinner,
load3
};
function Button(props) {
const disabled2 = props.disabled || props.loading;
const buttonClass = cn(style$6.btn, { [style$6.secondary]: props.secondary }, "button", props.className, { [style$6.disabled]: disabled2 });
let spinner2 = void 0;
if (props.loading) {
spinner2 = /* @__PURE__ */ u$1("span", { className: style$6.spinner });
}
return /* @__PURE__ */ u$1(
"button",
{
type: "button",
onClick: () => {
if (!disabled2) {
props.onClick();
}
},
className: buttonClass,
disabled: disabled2,
title: props.title,
children: [
spinner2,
props.children
]
}
);
}
const iso8601ToFrenchRegex = /(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})/;
function iso8601ToFrench(iso8601) {
console.log("iso8601ToTokens", iso8601);
const matches = iso8601.match(iso8601ToFrenchRegex);
const year = matches[1];
const month = months[parseInt(matches[2], 10) - 1];
const day = matches[3];
const hours = matches[4];
const minutes = matches[5];
const seconds = matches[6];
return `${day} ${month} ${year} à ${hours}:${minutes}:${seconds}`;
}
const frenchToIso8601Regex = /(\d{1,2}) ([a-zA-Z\u00C0-\u024F]+) (\d{4}) à (\d{2}):(\d{2}):(\d{2})/;
function frenchToIso8601(french) {
console.log("tokensToIso8601", french);
const match = french.match(frenchToIso8601Regex);
if (!match) {
throw new Error("Invalid date format");
}
const [, day, month, year, hours, minutes, seconds] = match;
const monthNumber = (months.indexOf(month) + 1).toString();
if (!monthNumber) {
throw new Error("Invalid month name");
}
const isoDate = `${year}-${monthNumber.padStart(2, "0")}-${day.padStart(2, "0")}T${hours}:${minutes}:${seconds}`;
return isoDate;
}
const months = [
"janvier",
"février",
"mars",
"avril",
"mai",
"juin",
"juillet",
"août",
"septembre",
"octobre",
"novembre",
"décembre"
];
const formGroup = "_formGroup_b3g81_1";
const style$5 = {
formGroup
};
function FormGroup(props) {
return /* @__PURE__ */ u$1("div", { className: style$5.formGroup, children: props.children });
}
const slider = "_slider_1hlzr_1";
const outputContainer = "_outputContainer_1hlzr_36";
const output = "_output_1hlzr_36";
const progress = "_progress_1hlzr_56";
const input$1 = "_input_1hlzr_83";
const style$4 = {
slider,
outputContainer,
output,
progress,
input: input$1
};
function Slider(props) {
return /* @__PURE__ */ u$1(
"div",
{
className: cn(style$4.slider, props.className),
style: {
"--value": props.value,
"--min": props.min,
"--max": props.max,
"--step": props.step
},
children: [
/* @__PURE__ */ u$1(
"input",
{
type: "range",
className: style$4.input,
name: props.name,
min: props.min,
max: props.max,
step: props.step,
value: props.value,
onInput: (e2) => props.onChange(Number(e2.target.value))
}
),
/* @__PURE__ */ u$1("div", { className: style$4.progress }),
/* @__PURE__ */ u$1("div", { className: style$4.outputContainer, children: /* @__PURE__ */ u$1("output", { className: style$4.output, children: props.value }) })
]
}
);
}
function Topics(props) {
const sortedTopics = T(() => {
if (props.topics === null || props.topics.length < 1) {
return props.topics;
}
return props.topics.sort((topicA, topicB) => {
if (topicA.posts.length < 1 || topicB.posts.length < 1) {
return 0;
}
return topicB.posts[topicB.posts.length - 1].date.localeCompare(topicA.posts[topicA.posts.length - 1].date);
});
}, [props.topics]);
return /* @__PURE__ */ u$1("div", { children: [
sortedTopics === null ? /* @__PURE__ */ u$1(Spinner, { className: style$7.spinner }) : /* @__PURE__ */ u$1(
List,
{
topics: sortedTopics,
setRoute: props.setRoute,
latestGeneratedTopicId: props.latestGeneratedTopicId
}
),
/* @__PURE__ */ u$1("div", { children: [
/* @__PURE__ */ u$1("h2", { children: "Nouveau sujet" }),
/* @__PURE__ */ u$1("div", { className: style$7.generationSettings, children: /* @__PURE__ */ u$1(FormGroup, { children: [
/* @__PURE__ */ u$1("label", { for: "postCount", children: "Nombre de posts" }),
/* @__PURE__ */ u$1(
Slider,
{
name: "postCount",
value: props.settings.postCount,
onChange: (v2) => props.setSettings({ ...props.settings, postCount: v2 }),
min: 1,
max: 10,
step: 1
}
)
] }) }),
/* @__PURE__ */ u$1(
Button,
{
onClick: () => props.generateTopic(props.settings.postCount),
secondary: true,
loading: props.pendingGeneration,
children: "Générer"
}
)
] }),
/* @__PURE__ */ u$1("hr", {})
] });
}
function List(props) {
return /* @__PURE__ */ u$1("ul", { className: style$7.list, children: [
/* @__PURE__ */ u$1("li", { className: style$7.head, children: [
/* @__PURE__ */ u$1("span", { children: "Sujet" }),
/* @__PURE__ */ u$1("span", { children: "Auteur" }),
/* @__PURE__ */ u$1("span", { children: "NB" }),
/* @__PURE__ */ u$1("span", { children: "Dernier msg" })
] }),
props.topics.length < 1 && /* @__PURE__ */ u$1("li", { children: [
/* @__PURE__ */ u$1("span", { children: "Aucun sujet" }),
/* @__PURE__ */ u$1("span", {}),
/* @__PURE__ */ u$1("span", {}),
/* @__PURE__ */ u$1("span", {})
] }),
props.topics.map((topic) => /* @__PURE__ */ u$1("li", { className: cn({ [style$7.highlight]: topic.id === props.latestGeneratedTopicId }), children: [
/* @__PURE__ */ u$1("span", { children: /* @__PURE__ */ u$1("a", { href: "#", onClick: (e2) => {
e2.preventDefault();
props.setRoute(routes.topic, 0, topic.id);
}, children: topic.title }) }),
/* @__PURE__ */ u$1("span", { children: topic.posts[0].user }),
/* @__PURE__ */ u$1("span", { children: topic.posts.length }),
/* @__PURE__ */ u$1("span", { children: iso8601ToFrench(topic.posts[topic.posts.length - 1].date) })
] }))
] });
}
const post = "_post_uuidr_1";
const postHeader = "_postHeader_uuidr_12";
const avatar = "_avatar_uuidr_23";
const user = "_user_uuidr_31";
const date = "_date_uuidr_39";
const generationSettings = "_generationSettings_uuidr_46";
const style$3 = {
post,
postHeader,
avatar,
user,
date,
generationSettings
};
const wrapper$1 = "_wrapper_cfqzy_1";
const style$2 = {
wrapper: wrapper$1
};
const smileysMap = [
[":)", "1"],
// https://image.jeuxvideo.com/smileys_img/1.gif
[":snif:", "20"],
[":gba:", "17"],
[":g)", "3"],
[":-)", "46"],
[":snif2:", "13"],
[":bravo:", "69"],
[":d)", "4"],
[":hap:", "18"],
[":ouch:", "22"],
[":pacg:", "9"],
[":cd:", "5"],
[":-)))", "23"],
[":ouch2:", "57"],
[":pacd:", "10"],
[":cute:", "nyu"],
[":content:", "24"],
[":p)", "7"],
[":-p", "31"],
[":noel:", "11"],
[":oui:", "37"],
[":(", "45"],
[":peur:", "47"],
[":question:", "2"],
[":cool:", "26"],
[":-(", "14"],
[":coeur:", "54"],
[":mort:", "21"],
[":rire:", "39"],
[":-((", "15"],
[":fou:", "50"],
[":sleep:", "27"],
[":-D", "40"],
[":nonnon:", "25"],
[":fier:", "53"],
[":honte:", "30"],
[":rire2:", "41"],
[":non2:", "33"],
[":sarcastic:", "43"],
[":monoeil:", "34"],
[":o))", "12"],
[":nah:", "19"],
[":doute:", "28"],
[":rouge:", "55"],
[":ok:", "36"],
[":non:", "35"],
[":malade:", "8"],
[":fete:", "66"],
[":sournois:", "67"],
[":hum:", "68"],
[":ange:", "60"],
[":diable:", "61"],
[":gni:", "62"],
[":play:", "play"],
[":desole:", "65"],
[":spoiler:", "63"],
[":merci:", "58"],
[":svp:", "59"],
[":sors:", "56"],
[":salut:", "42"],
[":rechercher:", "38"],
[":hello:", "29"],
[":up:", "44"],
[":bye:", "48"],
[":gne:", "51"],
[":lol:", "32"],
[":dpdr:", "49"],
[":dehors:", "52"],
[":hs:", "64"],
[":banzai:", "70"],
[":bave:", "71"],
[":pf:", "pf"],
[":cimer:", "cimer"],
[":ddb:", "ddb"],
[":pave:", "pave"],
[":objection:", "objection"],
[":siffle:", "siffle"]
];
function Preview(props) {
const html = T(() => {
const escaped = escapeHtml(props.raw);
return injectHTML(escaped).replace(/\n/g, "
");
}, [props.raw]);
return /* @__PURE__ */ u$1("div", { className: style$2.wrapper, dangerouslySetInnerHTML: { __html: html } });
}
const jvcodeMap = [
// [/(https?:\/\/image\.noelshack\.com\/\S+)/g]: ""
[
// Stickers
/(^| )https?:\/\/image\.noelshack\.com\/(?:fichiers|minis)(\S+)/gm,
'$1
'
],
[
// Vocaroo
/(^| )https:\/\/vocaroo.com\/(.+)/gm,
'$1
${match[0].replace(/^>/gm, "")}` + raw.substring(index + length); } ], [ // Spoil /<spoil>(.*?)<\/spoil>/gm, (reg, raw) => { return raw.replace(reg, (_2, matched) => { const randomId = (Math.random() + 1).toString(36).substring(2); return `${matched}`; }); } ], [ // Regular links /(^| )(https?:\/\/\S+)/gm, '$1$2' ], // Generate regexes for smileys // ...smileysMap.map((maping) => { // return [new RegExp( // Object.keys(smileysMap).map(s => ( // "(?:(?:^| )" + s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') + ")" // )).join("|"), "gm" // ), `