// ../../node_modules/preact/dist/preact.module.js var n; var l; var u; var i; var t; var r; var o; var f; var e = {}; var c = []; var s = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i; function a(n4, l4) { for (var u4 in l4) n4[u4] = l4[u4]; return n4; } function h(n4) { var l4 = n4.parentNode; l4 && l4.removeChild(n4); } function v(l4, u4, i4) { var t5, r4, o5, f4 = {}; for (o5 in u4) o5 == "key" ? t5 = u4[o5] : o5 == "ref" ? r4 = u4[o5] : f4[o5] = u4[o5]; if (arguments.length > 2 && (f4.children = arguments.length > 3 ? n.call(arguments, 2) : i4), typeof l4 == "function" && l4.defaultProps != null) for (o5 in l4.defaultProps) f4[o5] === void 0 && (f4[o5] = l4.defaultProps[o5]); return y(l4, f4, t5, r4, null); } function y(n4, i4, t5, r4, o5) { var f4 = { type: n4, props: i4, key: t5, ref: r4, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: o5 == null ? ++u : o5 }; return o5 == null && l.vnode != null && l.vnode(f4), f4; } function d(n4) { return n4.children; } function _(n4, l4) { this.props = n4, this.context = l4; } function k(n4, l4) { if (l4 == null) return n4.__ ? k(n4.__, n4.__.__k.indexOf(n4) + 1) : null; for (var u4; l4 < n4.__k.length; l4++) if ((u4 = n4.__k[l4]) != null && u4.__e != null) return u4.__e; return typeof n4.type == "function" ? k(n4) : null; } function b(n4) { var l4, u4; if ((n4 = n4.__) != null && n4.__c != null) { for (n4.__e = n4.__c.base = null, l4 = 0; l4 < n4.__k.length; l4++) if ((u4 = n4.__k[l4]) != null && u4.__e != null) { n4.__e = n4.__c.base = u4.__e; break; } return b(n4); } } function m(n4) { (!n4.__d && (n4.__d = true) && t.push(n4) && !g.__r++ || o !== l.debounceRendering) && ((o = l.debounceRendering) || r)(g); } function g() { for (var n4; g.__r = t.length; ) n4 = t.sort(function(n5, l4) { return n5.__v.__b - l4.__v.__b; }), t = [], n4.some(function(n5) { var l4, u4, i4, t5, r4, o5; n5.__d && (r4 = (t5 = (l4 = n5).__v).__e, (o5 = l4.__P) && (u4 = [], (i4 = a({}, t5)).__v = t5.__v + 1, j(o5, t5, i4, l4.__n, o5.ownerSVGElement !== void 0, t5.__h != null ? [r4] : null, u4, r4 == null ? k(t5) : r4, t5.__h), z(u4, t5), t5.__e != r4 && b(t5))); }); } function w(n4, l4, u4, i4, t5, r4, o5, f4, s4, a4) { var h3, v3, p3, _2, b3, m4, g3, w3 = i4 && i4.__k || c, A2 = w3.length; for (u4.__k = [], h3 = 0; h3 < l4.length; h3++) if ((_2 = u4.__k[h3] = (_2 = l4[h3]) == null || typeof _2 == "boolean" ? null : typeof _2 == "string" || typeof _2 == "number" || typeof _2 == "bigint" ? y(null, _2, null, null, _2) : Array.isArray(_2) ? y(d, { children: _2 }, null, null, null) : _2.__b > 0 ? y(_2.type, _2.props, _2.key, null, _2.__v) : _2) != null) { if (_2.__ = u4, _2.__b = u4.__b + 1, (p3 = w3[h3]) === null || p3 && _2.key == p3.key && _2.type === p3.type) w3[h3] = void 0; else for (v3 = 0; v3 < A2; v3++) { if ((p3 = w3[v3]) && _2.key == p3.key && _2.type === p3.type) { w3[v3] = void 0; break; } p3 = null; } j(n4, _2, p3 = p3 || e, t5, r4, o5, f4, s4, a4), b3 = _2.__e, (v3 = _2.ref) && p3.ref != v3 && (g3 || (g3 = []), p3.ref && g3.push(p3.ref, null, _2), g3.push(v3, _2.__c || b3, _2)), b3 != null ? (m4 == null && (m4 = b3), typeof _2.type == "function" && _2.__k === p3.__k ? _2.__d = s4 = x(_2, s4, n4) : s4 = P(n4, _2, p3, w3, b3, s4), typeof u4.type == "function" && (u4.__d = s4)) : s4 && p3.__e == s4 && s4.parentNode != n4 && (s4 = k(p3)); } for (u4.__e = m4, h3 = A2; h3--; ) w3[h3] != null && (typeof u4.type == "function" && w3[h3].__e != null && w3[h3].__e == u4.__d && (u4.__d = k(i4, h3 + 1)), N(w3[h3], w3[h3])); if (g3) for (h3 = 0; h3 < g3.length; h3++) M(g3[h3], g3[++h3], g3[++h3]); } function x(n4, l4, u4) { for (var i4, t5 = n4.__k, r4 = 0; t5 && r4 < t5.length; r4++) (i4 = t5[r4]) && (i4.__ = n4, l4 = typeof i4.type == "function" ? x(i4, l4, u4) : P(u4, i4, i4, t5, i4.__e, l4)); return l4; } function P(n4, l4, u4, i4, t5, r4) { var o5, f4, e4; if (l4.__d !== void 0) o5 = l4.__d, l4.__d = void 0; else if (u4 == null || t5 != r4 || t5.parentNode == null) n: if (r4 == null || r4.parentNode !== n4) n4.appendChild(t5), o5 = null; else { for (f4 = r4, e4 = 0; (f4 = f4.nextSibling) && e4 < i4.length; e4 += 2) if (f4 == t5) break n; n4.insertBefore(t5, r4), o5 = r4; } return o5 !== void 0 ? o5 : t5.nextSibling; } function C(n4, l4, u4, i4, t5) { var r4; for (r4 in u4) r4 === "children" || r4 === "key" || r4 in l4 || H(n4, r4, null, u4[r4], i4); for (r4 in l4) t5 && typeof l4[r4] != "function" || r4 === "children" || r4 === "key" || r4 === "value" || r4 === "checked" || u4[r4] === l4[r4] || H(n4, r4, l4[r4], u4[r4], i4); } function $(n4, l4, u4) { l4[0] === "-" ? n4.setProperty(l4, u4) : n4[l4] = u4 == null ? "" : typeof u4 != "number" || s.test(l4) ? u4 : u4 + "px"; } function H(n4, l4, u4, i4, t5) { var r4; n: if (l4 === "style") if (typeof u4 == "string") n4.style.cssText = u4; else { if (typeof i4 == "string" && (n4.style.cssText = i4 = ""), i4) for (l4 in i4) u4 && l4 in u4 || $(n4.style, l4, ""); if (u4) for (l4 in u4) i4 && u4[l4] === i4[l4] || $(n4.style, l4, u4[l4]); } else if (l4[0] === "o" && l4[1] === "n") r4 = l4 !== (l4 = l4.replace(/Capture$/, "")), l4 = l4.toLowerCase() in n4 ? l4.toLowerCase().slice(2) : l4.slice(2), n4.l || (n4.l = {}), n4.l[l4 + r4] = u4, u4 ? i4 || n4.addEventListener(l4, r4 ? T : I, r4) : n4.removeEventListener(l4, r4 ? T : I, r4); else if (l4 !== "dangerouslySetInnerHTML") { if (t5) l4 = l4.replace(/xlink[H:h]/, "h").replace(/sName$/, "s"); else if (l4 !== "href" && l4 !== "list" && l4 !== "form" && l4 !== "tabIndex" && l4 !== "download" && l4 in n4) try { n4[l4] = u4 == null ? "" : u4; break n; } catch (n5) { } typeof u4 == "function" || (u4 != null && (u4 !== false || l4[0] === "a" && l4[1] === "r") ? n4.setAttribute(l4, u4) : n4.removeAttribute(l4)); } } function I(n4) { this.l[n4.type + false](l.event ? l.event(n4) : n4); } function T(n4) { this.l[n4.type + true](l.event ? l.event(n4) : n4); } function j(n4, u4, i4, t5, r4, o5, f4, e4, c4) { var s4, h3, v3, y4, p3, k3, b3, m4, g3, x3, A2, P2 = u4.type; if (u4.constructor !== void 0) return null; i4.__h != null && (c4 = i4.__h, e4 = u4.__e = i4.__e, u4.__h = null, o5 = [e4]), (s4 = l.__b) && s4(u4); try { n: if (typeof P2 == "function") { if (m4 = u4.props, g3 = (s4 = P2.contextType) && t5[s4.__c], x3 = s4 ? g3 ? g3.props.value : s4.__ : t5, i4.__c ? b3 = (h3 = u4.__c = i4.__c).__ = h3.__E : ("prototype" in P2 && P2.prototype.render ? u4.__c = h3 = new P2(m4, x3) : (u4.__c = h3 = new _(m4, x3), h3.constructor = P2, h3.render = O), g3 && g3.sub(h3), h3.props = m4, h3.state || (h3.state = {}), h3.context = x3, h3.__n = t5, v3 = h3.__d = true, h3.__h = []), h3.__s == null && (h3.__s = h3.state), P2.getDerivedStateFromProps != null && (h3.__s == h3.state && (h3.__s = a({}, h3.__s)), a(h3.__s, P2.getDerivedStateFromProps(m4, h3.__s))), y4 = h3.props, p3 = h3.state, v3) P2.getDerivedStateFromProps == null && h3.componentWillMount != null && h3.componentWillMount(), h3.componentDidMount != null && h3.__h.push(h3.componentDidMount); else { if (P2.getDerivedStateFromProps == null && m4 !== y4 && h3.componentWillReceiveProps != null && h3.componentWillReceiveProps(m4, x3), !h3.__e && h3.shouldComponentUpdate != null && h3.shouldComponentUpdate(m4, h3.__s, x3) === false || u4.__v === i4.__v) { h3.props = m4, h3.state = h3.__s, u4.__v !== i4.__v && (h3.__d = false), h3.__v = u4, u4.__e = i4.__e, u4.__k = i4.__k, u4.__k.forEach(function(n5) { n5 && (n5.__ = u4); }), h3.__h.length && f4.push(h3); break n; } h3.componentWillUpdate != null && h3.componentWillUpdate(m4, h3.__s, x3), h3.componentDidUpdate != null && h3.__h.push(function() { h3.componentDidUpdate(y4, p3, k3); }); } h3.context = x3, h3.props = m4, h3.state = h3.__s, (s4 = l.__r) && s4(u4), h3.__d = false, h3.__v = u4, h3.__P = n4, s4 = h3.render(h3.props, h3.state, h3.context), h3.state = h3.__s, h3.getChildContext != null && (t5 = a(a({}, t5), h3.getChildContext())), v3 || h3.getSnapshotBeforeUpdate == null || (k3 = h3.getSnapshotBeforeUpdate(y4, p3)), A2 = s4 != null && s4.type === d && s4.key == null ? s4.props.children : s4, w(n4, Array.isArray(A2) ? A2 : [A2], u4, i4, t5, r4, o5, f4, e4, c4), h3.base = u4.__e, u4.__h = null, h3.__h.length && f4.push(h3), b3 && (h3.__E = h3.__ = null), h3.__e = false; } else o5 == null && u4.__v === i4.__v ? (u4.__k = i4.__k, u4.__e = i4.__e) : u4.__e = L(i4.__e, u4, i4, t5, r4, o5, f4, c4); (s4 = l.diffed) && s4(u4); } catch (n5) { u4.__v = null, (c4 || o5 != null) && (u4.__e = e4, u4.__h = !!c4, o5[o5.indexOf(e4)] = null), l.__e(n5, u4, i4); } } function z(n4, u4) { l.__c && l.__c(u4, n4), n4.some(function(u5) { try { n4 = u5.__h, u5.__h = [], n4.some(function(n5) { n5.call(u5); }); } catch (n5) { l.__e(n5, u5.__v); } }); } function L(l4, u4, i4, t5, r4, o5, f4, c4) { var s4, a4, v3, y4 = i4.props, p3 = u4.props, d3 = u4.type, _2 = 0; if (d3 === "svg" && (r4 = true), o5 != null) { for (; _2 < o5.length; _2++) if ((s4 = o5[_2]) && (s4 === l4 || (d3 ? s4.localName == d3 : s4.nodeType == 3))) { l4 = s4, o5[_2] = null; break; } } if (l4 == null) { if (d3 === null) return document.createTextNode(p3); l4 = r4 ? document.createElementNS("http://www.w3.org/2000/svg", d3) : document.createElement(d3, p3.is && p3), o5 = null, c4 = false; } if (d3 === null) y4 === p3 || c4 && l4.data === p3 || (l4.data = p3); else { if (o5 = o5 && n.call(l4.childNodes), a4 = (y4 = i4.props || e).dangerouslySetInnerHTML, v3 = p3.dangerouslySetInnerHTML, !c4) { if (o5 != null) for (y4 = {}, _2 = 0; _2 < l4.attributes.length; _2++) y4[l4.attributes[_2].name] = l4.attributes[_2].value; (v3 || a4) && (v3 && (a4 && v3.__html == a4.__html || v3.__html === l4.innerHTML) || (l4.innerHTML = v3 && v3.__html || "")); } if (C(l4, p3, y4, r4, c4), v3) u4.__k = []; else if (_2 = u4.props.children, w(l4, Array.isArray(_2) ? _2 : [_2], u4, i4, t5, r4 && d3 !== "foreignObject", o5, f4, o5 ? o5[0] : i4.__k && k(i4, 0), c4), o5 != null) for (_2 = o5.length; _2--; ) o5[_2] != null && h(o5[_2]); c4 || ("value" in p3 && (_2 = p3.value) !== void 0 && (_2 !== l4.value || d3 === "progress" && !_2) && H(l4, "value", _2, y4.value, false), "checked" in p3 && (_2 = p3.checked) !== void 0 && _2 !== l4.checked && H(l4, "checked", _2, y4.checked, false)); } return l4; } function M(n4, u4, i4) { try { typeof n4 == "function" ? n4(u4) : n4.current = u4; } catch (n5) { l.__e(n5, i4); } } function N(n4, u4, i4) { var t5, r4; if (l.unmount && l.unmount(n4), (t5 = n4.ref) && (t5.current && t5.current !== n4.__e || M(t5, null, u4)), (t5 = n4.__c) != null) { if (t5.componentWillUnmount) try { t5.componentWillUnmount(); } catch (n5) { l.__e(n5, u4); } t5.base = t5.__P = null; } if (t5 = n4.__k) for (r4 = 0; r4 < t5.length; r4++) t5[r4] && N(t5[r4], u4, typeof n4.type != "function"); i4 || n4.__e == null || h(n4.__e), n4.__e = n4.__d = void 0; } function O(n4, l4, u4) { return this.constructor(n4, u4); } function S(u4, i4, t5) { var r4, o5, f4; l.__ && l.__(u4, i4), o5 = (r4 = typeof t5 == "function") ? null : t5 && t5.__k || i4.__k, f4 = [], j(i4, u4 = (!r4 && t5 || i4).__k = v(d, null, [u4]), o5 || e, e, i4.ownerSVGElement !== void 0, !r4 && t5 ? [t5] : o5 ? null : i4.firstChild ? n.call(i4.childNodes) : null, f4, !r4 && t5 ? t5 : o5 ? o5.__e : i4.firstChild, r4), z(f4, u4); } n = c.slice, l = { __e: function(n4, l4) { for (var u4, i4, t5; l4 = l4.__; ) if ((u4 = l4.__c) && !u4.__) try { if ((i4 = u4.constructor) && i4.getDerivedStateFromError != null && (u4.setState(i4.getDerivedStateFromError(n4)), t5 = u4.__d), u4.componentDidCatch != null && (u4.componentDidCatch(n4), t5 = u4.__d), t5) return u4.__E = u4; } catch (l5) { n4 = l5; } throw n4; } }, u = 0, i = function(n4) { return n4 != null && n4.constructor === void 0; }, _.prototype.setState = function(n4, l4) { var u4; u4 = this.__s != null && this.__s !== this.state ? this.__s : this.__s = a({}, this.state), typeof n4 == "function" && (n4 = n4(a({}, u4), this.props)), n4 && a(u4, n4), n4 != null && this.__v && (l4 && this.__h.push(l4), m(this)); }, _.prototype.forceUpdate = function(n4) { this.__v && (this.__e = true, n4 && this.__h.push(n4), m(this)); }, _.prototype.render = d, t = [], r = typeof Promise == "function" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, g.__r = 0, f = 0; // ../../node_modules/preact/devtools/dist/devtools.module.js typeof window != "undefined" && window.__PREACT_DEVTOOLS__ && window.__PREACT_DEVTOOLS__.attachPreact("10.5.15", l, { Fragment: d, Component: _ }); // ../../node_modules/preact/debug/dist/debug.module.js var o2 = {}; function a2(n4) { return n4.type === d ? "Fragment" : typeof n4.type == "function" ? n4.type.displayName || n4.type.name : typeof n4.type == "string" ? n4.type : "#text"; } var i2 = []; var s2 = []; function c2() { return i2.length > 0 ? i2[i2.length - 1] : null; } var l2 = false; function u2(n4) { return typeof n4.type == "function" && n4.type != d; } function f2(n4) { for (var t5 = [n4], e4 = n4; e4.__o != null; ) t5.push(e4.__o), e4 = e4.__o; return t5.reduce(function(n5, t6) { n5 += " in " + a2(t6); var e5 = t6.__source; return e5 ? n5 += " (at " + e5.fileName + ":" + e5.lineNumber + ")" : l2 || (l2 = true, console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.")), n5 + "\n"; }, ""); } var p = typeof WeakMap == "function"; var d2 = _.prototype.setState; _.prototype.setState = function(n4, t5) { return this.__v == null ? this.state == null && console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n' + f2(c2())) : this.__P == null && console.warn(`Can't call "this.setState" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method. ` + f2(this.__v)), d2.call(this, n4, t5); }; var h2 = _.prototype.forceUpdate; function y2(n4) { var t5 = n4.props, e4 = a2(n4), o5 = ""; for (var r4 in t5) if (t5.hasOwnProperty(r4) && r4 !== "children") { var i4 = t5[r4]; typeof i4 == "function" && (i4 = "function " + (i4.displayName || i4.name) + "() {}"), i4 = Object(i4) !== i4 || i4.toString ? i4 + "" : Object.prototype.toString.call(i4), o5 += " " + r4 + "=" + JSON.stringify(i4); } var s4 = t5.children; return "<" + e4 + o5 + (s4 && s4.length ? ">.." : " />"); } _.prototype.forceUpdate = function(n4) { return this.__v == null ? console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n' + f2(c2())) : this.__P == null && console.warn(`Can't call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method. ` + f2(this.__v)), h2.call(this, n4); }, function() { !function() { var t6 = l.__b, e5 = l.diffed, o5 = l.__, r5 = l.vnode, a4 = l.__r; l.diffed = function(n4) { u2(n4) && s2.pop(), i2.pop(), e5 && e5(n4); }, l.__b = function(n4) { u2(n4) && i2.push(n4), t6 && t6(n4); }, l.__ = function(n4, t7) { s2 = [], o5 && o5(n4, t7); }, l.vnode = function(n4) { n4.__o = s2.length > 0 ? s2[s2.length - 1] : null, r5 && r5(n4); }, l.__r = function(n4) { u2(n4) && s2.push(n4), a4 && a4(n4); }; }(); var t5 = false, e4 = l.__b, r4 = l.diffed, c4 = l.vnode, l4 = l.__e, d3 = l.__, h3 = l.__h, m4 = p ? { useEffect: new WeakMap(), useLayoutEffect: new WeakMap(), lazyPropTypes: new WeakMap() } : null, v3 = []; l.__e = function(n4, t6, e5) { if (t6 && t6.__c && typeof n4.then == "function") { var o5 = n4; n4 = new Error("Missing Suspense. The throwing component was: " + a2(t6)); for (var r5 = t6; r5; r5 = r5.__) if (r5.__c && r5.__c.__c) { n4 = o5; break; } if (n4 instanceof Error) throw n4; } try { l4(n4, t6, e5), typeof n4.then != "function" && setTimeout(function() { throw n4; }); } catch (n5) { throw n5; } }, l.__ = function(n4, t6) { if (!t6) throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id."); var e5; switch (t6.nodeType) { case 1: case 11: case 9: e5 = true; break; default: e5 = false; } if (!e5) { var o5 = a2(n4); throw new Error("Expected a valid HTML node as a second argument to render. Received " + t6 + " instead: render(<" + o5 + " />, " + t6 + ");"); } d3 && d3(n4, t6); }, l.__b = function(n4) { var r5 = n4.type, i4 = function n5(t6) { return t6 ? typeof t6.type == "function" ? n5(t6.__) : t6 : {}; }(n4.__); if (t5 = true, r5 === void 0) throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports" + y2(n4) + "\n\n" + f2(n4)); if (r5 != null && typeof r5 == "object") { if (r5.__k !== void 0 && r5.__e !== void 0) throw new Error("Invalid type passed to createElement(): " + r5 + "\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My" + a2(n4) + " = " + y2(r5) + ";\n let vnode = ;\n\nThis usually happens when you export a JSX literal and not the component.\n\n" + f2(n4)); throw new Error("Invalid type passed to createElement(): " + (Array.isArray(r5) ? "array" : r5)); } if (r5 !== "thead" && r5 !== "tfoot" && r5 !== "tbody" || i4.type === "table" ? r5 === "tr" && i4.type !== "thead" && i4.type !== "tfoot" && i4.type !== "tbody" && i4.type !== "table" ? console.error("Improper nesting of table. Your should have a parent." + y2(n4) + "\n\n" + f2(n4)) : r5 === "td" && i4.type !== "tr" ? console.error("Improper nesting of table. Your should have a parent." + y2(n4) + "\n\n" + f2(n4)) : r5 === "th" && i4.type !== "tr" && console.error("Improper nesting of table. Your should have a ." + y2(n4) + "\n\n" + f2(n4)) : console.error("Improper nesting of table. Your should have a parent." + y2(n4) + "\n\n" + f2(n4)), n4.ref !== void 0 && typeof n4.ref != "function" && typeof n4.ref != "object" && !("$$typeof" in n4)) throw new Error(`Component's "ref" property should be a function, or an object created by createRef(), but got [` + typeof n4.ref + "] instead\n" + y2(n4) + "\n\n" + f2(n4)); if (typeof n4.type == "string") { for (var s4 in n4.props) if (s4[0] === "o" && s4[1] === "n" && typeof n4.props[s4] != "function" && n4.props[s4] != null) throw new Error(`Component's "` + s4 + '" property should be a function, but got [' + typeof n4.props[s4] + "] instead\n" + y2(n4) + "\n\n" + f2(n4)); } if (typeof n4.type == "function" && n4.type.propTypes) { if (n4.type.displayName === "Lazy" && m4 && !m4.lazyPropTypes.has(n4.type)) { var c5 = "PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. "; try { var l5 = n4.type(); m4.lazyPropTypes.set(n4.type, true), console.warn(c5 + "Component wrapped in lazy() is " + a2(l5)); } catch (n5) { console.warn(c5 + "We will log the wrapped component's name once it is loaded."); } } var u4 = n4.props; n4.type.__f && delete (u4 = function(n5, t6) { for (var e5 in t6) n5[e5] = t6[e5]; return n5; }({}, u4)).ref, function(n5, t6, e5, r6, a4) { Object.keys(n5).forEach(function(e6) { var i5; try { i5 = n5[e6](t6, e6, r6, "prop", null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"); } catch (n6) { i5 = n6; } !i5 || i5.message in o2 || (o2[i5.message] = true, console.error("Failed prop type: " + i5.message + (a4 && "\n" + a4() || ""))); }); }(n4.type.propTypes, u4, 0, a2(n4), function() { return f2(n4); }); } e4 && e4(n4); }, l.__h = function(n4, e5, o5) { if (!n4 || !t5) throw new Error("Hook can only be invoked from render methods."); h3 && h3(n4, e5, o5); }; var b3 = function(n4, t6) { return { get: function() { var e5 = "get" + n4 + t6; v3 && v3.indexOf(e5) < 0 && (v3.push(e5), console.warn("getting vnode." + n4 + " is deprecated, " + t6)); }, set: function() { var e5 = "set" + n4 + t6; v3 && v3.indexOf(e5) < 0 && (v3.push(e5), console.warn("setting vnode." + n4 + " is not allowed, " + t6)); } }; }, w3 = { nodeName: b3("nodeName", "use vnode.type"), attributes: b3("attributes", "use vnode.props"), children: b3("children", "use vnode.props.children") }, g3 = Object.create({}, w3); l.vnode = function(n4) { var t6 = n4.props; if (n4.type !== null && t6 != null && ("__source" in t6 || "__self" in t6)) { var e5 = n4.props = {}; for (var o5 in t6) { var r5 = t6[o5]; o5 === "__source" ? n4.__source = r5 : o5 === "__self" ? n4.__self = r5 : e5[o5] = r5; } } n4.__proto__ = g3, c4 && c4(n4); }, l.diffed = function(n4) { if (n4.__k && n4.__k.forEach(function(t6) { if (t6 && t6.type === void 0) { delete t6.__, delete t6.__b; var e6 = Object.keys(t6).join(","); throw new Error("Objects are not valid as a child. Encountered an object with the keys {" + e6 + "}.\n\n" + f2(n4)); } }), t5 = false, r4 && r4(n4), n4.__k != null) for (var e5 = [], o5 = 0; o5 < n4.__k.length; o5++) { var a4 = n4.__k[o5]; if (a4 && a4.key != null) { var i4 = a4.key; if (e5.indexOf(i4) !== -1) { console.error('Following component has two or more children with the same key attribute: "' + i4 + '". This may cause glitches and misbehavior in rendering process. Component: \n\n' + y2(n4) + "\n\n" + f2(n4)); break; } e5.push(i4); } } }; }(); // ../../node_modules/jwt-decode/build/jwt-decode.esm.js function e2(e4) { this.message = e4; } e2.prototype = new Error(), e2.prototype.name = "InvalidCharacterError"; var r2 = typeof window != "undefined" && window.atob && window.atob.bind(window) || function(r4) { var t5 = String(r4).replace(/=+$/, ""); if (t5.length % 4 == 1) throw new e2("'atob' failed: The string to be decoded is not correctly encoded."); for (var n4, o5, a4 = 0, i4 = 0, c4 = ""; o5 = t5.charAt(i4++); ~o5 && (n4 = a4 % 4 ? 64 * n4 + o5 : o5, a4++ % 4) ? c4 += String.fromCharCode(255 & n4 >> (-2 * a4 & 6)) : 0) o5 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(o5); return c4; }; function t2(e4) { var t5 = e4.replace(/-/g, "+").replace(/_/g, "/"); switch (t5.length % 4) { case 0: break; case 2: t5 += "=="; break; case 3: t5 += "="; break; default: throw "Illegal base64url string!"; } try { return function(e5) { return decodeURIComponent(r2(e5).replace(/(.)/g, function(e6, r4) { var t6 = r4.charCodeAt(0).toString(16).toUpperCase(); return t6.length < 2 && (t6 = "0" + t6), "%" + t6; })); }(t5); } catch (e5) { return r2(t5); } } function n2(e4) { this.message = e4; } function o3(e4, r4) { if (typeof e4 != "string") throw new n2("Invalid token specified"); var o5 = (r4 = r4 || {}).header === true ? 0 : 1; try { return JSON.parse(t2(e4.split(".")[o5])); } catch (e5) { throw new n2("Invalid token specified: " + e5.message); } } n2.prototype = new Error(), n2.prototype.name = "InvalidTokenError"; var jwt_decode_esm_default = o3; // ../../node_modules/preact/hooks/dist/hooks.module.js var t3; var u3; var r3; var o4 = 0; var i3 = []; var c3 = l.__b; var f3 = l.__r; var e3 = l.diffed; var a3 = l.__c; var v2 = l.unmount; function m2(t5, r4) { l.__h && l.__h(u3, t5, o4 || r4), o4 = 0; var i4 = u3.__H || (u3.__H = { __: [], __h: [] }); return t5 >= i4.__.length && i4.__.push({}), i4.__[t5]; } function l3(n4) { return o4 = 1, p2(w2, n4); } function p2(n4, r4, o5) { var i4 = m2(t3++, 2); return i4.t = n4, i4.__c || (i4.__ = [o5 ? o5(r4) : w2(void 0, r4), function(n5) { var t5 = i4.t(i4.__[0], n5); i4.__[0] !== t5 && (i4.__ = [t5, i4.__[1]], i4.__c.setState({})); }], i4.__c = u3), i4.__; } function y3(r4, o5) { var i4 = m2(t3++, 3); !l.__s && k2(i4.__H, o5) && (i4.__ = r4, i4.__H = o5, u3.__H.__h.push(i4)); } function s3(n4) { return o4 = 5, A(function() { return { current: n4 }; }, []); } function A(n4, u4) { var r4 = m2(t3++, 7); return k2(r4.__H, u4) && (r4.__ = n4(), r4.__H = u4, r4.__h = n4), r4.__; } function x2() { i3.forEach(function(t5) { if (t5.__P) try { t5.__H.__h.forEach(g2), t5.__H.__h.forEach(j2), t5.__H.__h = []; } catch (u4) { t5.__H.__h = [], l.__e(u4, t5.__v); } }), i3 = []; } l.__b = function(n4) { u3 = null, c3 && c3(n4); }, l.__r = function(n4) { f3 && f3(n4), t3 = 0; var r4 = (u3 = n4.__c).__H; r4 && (r4.__h.forEach(g2), r4.__h.forEach(j2), r4.__h = []); }, l.diffed = function(t5) { e3 && e3(t5); var o5 = t5.__c; o5 && o5.__H && o5.__H.__h.length && (i3.push(o5) !== 1 && r3 === l.requestAnimationFrame || ((r3 = l.requestAnimationFrame) || function(n4) { var t6, u4 = function() { clearTimeout(r4), b2 && cancelAnimationFrame(t6), setTimeout(n4); }, r4 = setTimeout(u4, 100); b2 && (t6 = requestAnimationFrame(u4)); })(x2)), u3 = null; }, l.__c = function(t5, u4) { u4.some(function(t6) { try { t6.__h.forEach(g2), t6.__h = t6.__h.filter(function(n4) { return !n4.__ || j2(n4); }); } catch (r4) { u4.some(function(n4) { n4.__h && (n4.__h = []); }), u4 = [], l.__e(r4, t6.__v); } }), a3 && a3(t5, u4); }, l.unmount = function(t5) { v2 && v2(t5); var u4 = t5.__c; if (u4 && u4.__H) try { u4.__H.__.forEach(g2); } catch (t6) { l.__e(t6, u4.__v); } }; var b2 = typeof requestAnimationFrame == "function"; function g2(n4) { var t5 = u3; typeof n4.__c == "function" && n4.__c(), u3 = t5; } function j2(n4) { var t5 = u3; n4.__c = n4.__(), u3 = t5; } function k2(n4, t5) { return !n4 || n4.length !== t5.length || t5.some(function(t6, u4) { return t6 !== n4[u4]; }); } function w2(n4, t5) { return typeof t5 == "function" ? t5(n4) : t5; } // ../../node_modules/htm/dist/htm.module.js var n3 = function(t5, s4, r4, e4) { var u4; s4[0] = 0; for (var h3 = 1; h3 < s4.length; h3++) { var p3 = s4[h3++], a4 = s4[h3] ? (s4[0] |= p3 ? 1 : 2, r4[s4[h3++]]) : s4[++h3]; p3 === 3 ? e4[0] = a4 : p3 === 4 ? e4[1] = Object.assign(e4[1] || {}, a4) : p3 === 5 ? (e4[1] = e4[1] || {})[s4[++h3]] = a4 : p3 === 6 ? e4[1][s4[++h3]] += a4 + "" : p3 ? (u4 = t5.apply(a4, n3(t5, a4, r4, ["", null])), e4.push(u4), a4[0] ? s4[0] |= 2 : (s4[h3 - 2] = 0, s4[h3] = u4)) : e4.push(a4); } return e4; }; var t4 = new Map(); function htm_module_default(s4) { var r4 = t4.get(this); return r4 || (r4 = new Map(), t4.set(this, r4)), (r4 = n3(this, r4.get(s4) || (r4.set(s4, r4 = function(n4) { for (var t5, s5, r5 = 1, e4 = "", u4 = "", h3 = [0], p3 = function(n5) { r5 === 1 && (n5 || (e4 = e4.replace(/^\s*\n\s*|\s*\n\s*$/g, ""))) ? h3.push(0, n5, e4) : r5 === 3 && (n5 || e4) ? (h3.push(3, n5, e4), r5 = 2) : r5 === 2 && e4 === "..." && n5 ? h3.push(4, n5, 0) : r5 === 2 && e4 && !n5 ? h3.push(5, 0, true, e4) : r5 >= 5 && ((e4 || !n5 && r5 === 5) && (h3.push(r5, 0, e4, s5), r5 = 6), n5 && (h3.push(r5, n5, 0, s5), r5 = 6)), e4 = ""; }, a4 = 0; a4 < n4.length; a4++) { a4 && (r5 === 1 && p3(), p3(a4)); for (var l4 = 0; l4 < n4[a4].length; l4++) t5 = n4[a4][l4], r5 === 1 ? t5 === "<" ? (p3(), h3 = [h3], r5 = 3) : e4 += t5 : r5 === 4 ? e4 === "--" && t5 === ">" ? (r5 = 1, e4 = "") : e4 = t5 + e4[0] : u4 ? t5 === u4 ? u4 = "" : e4 += t5 : t5 === '"' || t5 === "'" ? u4 = t5 : t5 === ">" ? (p3(), r5 = 1) : r5 && (t5 === "=" ? (r5 = 5, s5 = e4, e4 = "") : t5 === "/" && (r5 < 5 || n4[a4][l4 + 1] === ">") ? (p3(), r5 === 3 && (h3 = h3[0]), r5 = h3, (h3 = h3[0]).push(2, 0, r5), r5 = 0) : t5 === " " || t5 === " " || t5 === "\n" || t5 === "\r" ? (p3(), r5 = 2) : e4 += t5), r5 === 3 && e4 === "!--" && (r5 = 4, h3 = h3[0]); } return p3(), h3; }(s4)), r4), arguments, [])).length > 1 ? r4 : r4[0]; } // ../../node_modules/htm/preact/index.module.js var m3 = htm_module_default.bind(v); // ../../src/utils/http.js var request = async (url, options) => { const headers = { "Content-Type": "application/json", ...options.headers }; const response = await fetch(url, { ...options, headers }); if (response.status < 300) { try { return await response.json(); } catch (e4) { try { return await response.body(); } catch (e22) { return null; } } } else throw response; }; var qs = (obj = {}) => new URLSearchParams(obj).toString(); var get = (url, body = {}, options = {}) => request(`${url}${body ? `?${qs(body)}` : ""}`, { ...options, method: "GET" }); // ../../src/utils/hooks.js var useInterval = (callback, delay = 1e3, ...args) => { const savedCallback = s3(); y3(() => { savedCallback.current = callback; }, [callback]); y3(() => { function tick() { if (savedCallback.current) { savedCallback.current(...args); } } const id = setInterval(tick, delay); return () => clearInterval(id); }, [callback.toString(), delay]); }; var useJitsi = (options, domain = "meet.jit.si", meetingConfig = { allowComunication: true, onDisconnect: () => { } }) => { const [isAPILoaded, setIsAPILoaded] = l3(false); const jitsiAPIRef = s3(null); const comunicationConfig = [ "microphone", "camera", "raisehand", "mute-everyone", "mute-video-everyone", "shareaudio", "sharedvideo", "desktop", "toggle-camera" ]; y3(() => { const jitsiScript = document.createElement("script"); jitsiScript.setAttribute("src", "https://8x8.vc/external_api.js"); jitsiScript.setAttribute("id", "jitsiScript"); document.head.appendChild(jitsiScript); return () => document.getElementById("jitsiScript").remove(); }, []); y3(() => { const apiCheckInterval = setInterval(() => { if (window.JitsiMeetExternalAPI != void 0) { setIsAPILoaded(true); clearInterval(apiCheckInterval); } }, 100); return () => clearInterval(apiCheckInterval); }, []); y3(() => { if (isAPILoaded && options.jwt !== "") { if (jitsiAPIRef.current) { jitsiAPIRef.current.dispose(); } if (options.roomName === null) { jitsiAPIRef.current = null; } else { const jitsiAPI = new window.JitsiMeetExternalAPI(domain, { ...options, configOverwrite: { remoteVideoMenu: { disableKick: !meetingConfig.allowComunication }, startWithAudioMuted: !meetingConfig.allowComunication, disableInviteFunctions: true, disableRemoteMute: !meetingConfig.allowComunication, toolbarButtons: [...[ "closedcaptions", "chat", "download", "embedmeeting", "etherpad", "feedback", "filmstrip", "fullscreen", "hangup", "help", "participants-pane", "profile", "recording", "select-background", "settings", "shortcuts", "tileview", "__end" ], ...meetingConfig.allowComunication ? comunicationConfig : []] } }); jitsiAPI.addListener("readyToClose", () => { if (typeof meetingConfig.onDisconnect === "function") meetingConfig.onDisconnect(); return jitsiAPI.dispose(); }); jitsiAPIRef.current = jitsiAPI; } } return () => { if (jitsiAPIRef.current) { jitsiAPIRef.current.dispose(); } jitsiAPIRef.current = null; }; }, [ isAPILoaded, domain, JSON.stringify(options) ]); }; // ../../src/utils/fw.js var Modal = ({ children, dismiss, dismissHTML = null, dismissStyle }) => m3`
${children} ${dismissHTML} `; var ModalWrapper = ({ children, wrapperStyle = {}, dismissStyle = {} }) => m3`
x ${children} `; // ../../src/components/styles.js var flex = { display: "flex" }; var fc = { ...flex, flexDirection: "column" }; var fr = { ...flex, flexDirection: "row" }; var fcenter = { ...flex, alignItems: "center", justifyContent: "center" }; var ffill = { ...flex, alignItems: "stretch", justifyContent: "space-around" }; var fullscreen = { height: "100vh", left: 0, position: "fixed", top: 0, width: "100vw", zIndex: 1 }; var colors = { orange: "#e31d48", purple: "#3c1d4a", white: "#fff", agm21Color: "#1994AC" }; var rounded = { borderRadius: "1vw" }; var bg = (color) => ({ backgroundColor: color }); var whitewash = { backgroundColor: "rgba(255, 255, 255, 0.4" }; var pad = (size) => ({ padding: size }); var rel = { position: "relative" }; var abs = { position: "absolute" }; // ../../src/components/layout.js var Row = ({ children, styleOverride = {}, ...props }) => /* @__PURE__ */ v("div", { style: { ...fr, ...styleOverride }, ...props }, children); var Column = ({ children, styleOverride = {}, ...props }) => /* @__PURE__ */ v("div", { style: { ...fc, ...styleOverride }, ...props }, children); // ../../src/components/http.js var request2 = async (url, options) => fetch(url, { headers: { "Content-Type": "application/json" }, ...options }).then((res) => { if (res.status < 300) { try { return res.json(); } catch (e4) { try { return res.body(); } catch (e22) { throw e22; } } } else { return { status: res.status }; } }).catch(console.error); var qs2 = (obj = {}) => new URLSearchParams(obj).toString(); var get2 = (url, body = {}, options = {}) => request2(`${url}${body ? `?${qs2(body)}` : ""}`, { ...options, method: "GET" }); // ../../src/components/jitsi/api.js var getJaaSToken = async () => { const [{ "Registrant ID": id, "First & Last Name": name, "Email Address": email, "Please make it more personal by uploading a head and shoulders photo:": avatar }] = window.dataLayer; const response = await get2("https://isf2021.swoogo-retrofit.tkevents.io/rt/getToken", { avatar, email, id, name }); if (!response.token) { throw response; } else { return response.token; } }; // ../../src/utils/socket.js function socket_default(datasource) { const url = new URL(datasource); url.protocol = "wss"; const ws = new WebSocket(url.toString()); ws.onopen = () => { console.log("Connection opened!"); }; ws.onclose = () => { console.log("ws closed"); }; return { ws, isActive: () => ws.readyState == 1 }; } // ../../src/components/Roundtables.js var Others = ({ participants, tableName }) => { const [othersCard, setOthersCard] = l3(false); const close = (e4) => { e4.stopPropagation(); setOthersCard(false); }; return /* @__PURE__ */ v("div", { className: "participant others", onclick: (e4) => { e4.stopPropagation(); setOthersCard(true); } }, /* @__PURE__ */ v("span", { className: "others_text" }, "and ", participants.length - 7, /* @__PURE__ */ v("br", null), "others"), othersCard ? /* @__PURE__ */ v(Modal, { dismiss: close }, /* @__PURE__ */ v(ModalWrapper, null, /* @__PURE__ */ v(OthersCard, { participants, tableName, dismiss: close }))) : null); }; var OthersCard = ({ participants, dismiss, tableName }) => /* @__PURE__ */ v(Column, { styleOverride: { ...fcenter, margin: "5px", padding: "5px", width: "400px" } }, /* @__PURE__ */ v("h3", { style: { margin: "5px", padding: "5px" } }, tableName), /* @__PURE__ */ v(Row, { styleOverride: { flexWrap: "wrap" } }, participants.map(({ name }, i4) => /* @__PURE__ */ v("p", { key: i4, className: "otherscard_name", style: { margin: "5px", padding: "5px" } }, name))), /* @__PURE__ */ v("button", { className: "otherscard_close", style: { background: "none", border: "2px solid white", borderRadius: "6px", margin: "5px", padding: "5px" }, onclick: dismiss }, "Close")); var InfoCard = ({ participant, hide }) => /* @__PURE__ */ v("div", { style: { ...fcenter, ...fullscreen, ...whitewash } }, /* @__PURE__ */ v("div", { style: { ...fr, ...fcenter, ...rounded, ...bg(colors.agm21Color), ...pad("2vw"), ...rel } }, /* @__PURE__ */ v("p", { style: { ...abs, right: "10px", top: "4px" }, onclick: hide }, "X"), participant.headshot && /* @__PURE__ */ v("img", { src: participant.headshot, style: { height: "18vw" } }), /* @__PURE__ */ v("div", { style: { ...fc, ...fcenter, alignItems: "stretch" } }, /* @__PURE__ */ v("p", null, "Company: ", participant.company), /* @__PURE__ */ v("p", null, "Name: ", participant.name)))); var Participant = (participant) => { const [isActive, setIsActive] = l3(false); const show = (event) => { event.stopPropagation(); setIsActive(!isActive); }; const hide = (event) => { event.stopPropagation(); setIsActive(false); }; return /* @__PURE__ */ v("div", { className: `participant participant${participant.id + 1}`, onclick: show }, isActive ? /* @__PURE__ */ v(InfoCard, { participant, hide }) : null, participant.headshot ? /* @__PURE__ */ v("img", { style: { maxHeight: "100%", maxWidth: "100%" }, src: participant.headshot, title: "click me for participant info" }) : participant.initials); }; var Table = ({ id, participants = [], joinCall, seatsPerTable }) => { const overflowed = participants.length >= seatsPerTable; return /* @__PURE__ */ v("div", { id: `table${id + 1}`, style: { cursor: "pointer" }, class: "hotspot _gtm-event", "data-event-category": "Networking", "data-event-action": "Link Click", "data-event-label": `table${id + 1}`, onclick: () => { console.log("test"); joinCall(id); } }, participants.slice(0, overflowed ? seatsPerTable - 1 : seatsPerTable).map(({ id: id2, ...rest }, i4) => /* @__PURE__ */ v(Participant, { id: i4, ...rest, userRegID: id2 })), overflowed ? /* @__PURE__ */ v(Others, { participants, tableName: `Table ${id + 1}` }) : null); }; var RoundTables = ({ numTables = 4, seatsPerTable = 8, dataSource = "https://db.swoogo-retrofit.tkevents.io", roomBasename = "", allowComunication = true }) => { const [dataLayer] = window.dataLayer; const { "First & Last Name": name, "Headshot": headshot, "Company": company, "Registrant ID": userRegID, "Event ID": eventID } = dataLayer; const [ws, setWs] = l3(null); if (ws == null) setWs(socket_default(dataSource)); const { current: jitsiWindowID } = s3(Math.floor(Math.random() * 1e5)); const [callNumber, setCallNumber] = l3(null); const [jwt, updatejwt] = l3(""); y3(async () => { const interval = window.setInterval(async () => { updatejwt(await getJaaSToken()); }, 72e5); updatejwt(await getJaaSToken()); return () => window.clearInterval(interval); }, []); const options = { jwt, parentNode: document.getElementById(`${jitsiWindowID}`), roomName: callNumber === null ? null : `${jwt_decode_esm_default(jwt).sub}/${roomBasename} ${callNumber + 1}` }; useJitsi(options, "8x8.vc", { allowComunication, onDisconnect: () => { ws.ws.send(JSON.stringify({ type: "quit", user: { id: userRegID }, message: {} })); } }); const [tables, setTables] = l3(new Array(numTables).fill([])); useInterval(async () => { try { const newParticipants = (await get(`${dataSource}/rt`, { active: true, eventID })).sort((a4, b3) => a4.createdAt < b3.createdAt ? 1 : -1).filter((ping, index, arr) => index === arr.findIndex((p3) => p3.name === ping.name)); const newTables = new Array(numTables).fill(null).map((_2) => []); newParticipants.forEach(({ tableID, ...rest }) => { newTables[tableID].push(rest); }); setTables(newTables); } catch (e4) { if (e4.status != 404) { throw e4; } } }, 1e3); const joinCall = (number) => { const initials = name.split(" ").reduce((acc, val) => `${acc}${val[0]}`, ""); if (!ws.isActive()) throw "Socket offline"; ws.ws.send(JSON.stringify({ type: "jump-in", user: { id: userRegID, company, eventID, headshot, initials, name, tableID: number }, message: {} })); setCallNumber(number); }; window.joincall = (arg) => { joinCall(arg); }; return /* @__PURE__ */ v(d, null, /* @__PURE__ */ v("div", { id: jitsiWindowID, className: "jitsi-screen" }), Array(numTables).fill([]).map((_2, i4) => /* @__PURE__ */ v(Table, { joinCall, id: i4, participants: tables[i4], seatsPerTable: seatsPerTable.length ? seatsPerTable[i4] : seatsPerTable, onclick: console.log }))); }; // skeleton.js var init = (domNode, allowComunication = true) => { S(/* @__PURE__ */ v(RoundTables, { numTables: 3, seatsPerTable: 6, roomBasename: "Dell TTF 2022", allowComunication }), domNode); }; export { init }; //# sourceMappingURL=output.js.map