Files
lenz-web/views/assets/scripts.js
2025-03-24 22:44:08 +01:00

4131 lines
160 KiB
JavaScript

var so = (Qr) => {
throw TypeError(Qr);
};
var zs = (Qr, Wr, Gr) => Wr.has(Qr) || so("Cannot " + Gr);
var Xi = (Qr, Wr, Gr) => (zs(Qr, Wr, "read from private field"), Gr ? Gr.call(Qr) : Wr.get(Qr)), xi = (Qr, Wr, Gr) => Wr.has(Qr) ? so("Cannot add the same private member more than once") : Wr instanceof WeakSet ? Wr.add(Qr) : Wr.set(Qr, Gr), zi = (Qr, Wr, Gr, Zr) => (zs(Qr, Wr, "write to private field"), Zr ? Zr.call(Qr, Gr) : Wr.set(Qr, Gr), Gr), ds = (Qr, Wr, Gr) => (zs(Qr, Wr, "access private method"), Gr);
(() => {
var Qr = !1, Wr = !1, Gr = [], Zr = -1;
function Yr(ze) {
an(ze);
}
function an(ze) {
Gr.includes(ze) || Gr.push(ze), ln();
}
function sn(ze) {
let Jr = Gr.indexOf(ze);
Jr !== -1 && Jr > Zr && Gr.splice(Jr, 1);
}
function ln() {
!Wr && !Qr && (Qr = !0, queueMicrotask(cn));
}
function cn() {
Qr = !1, Wr = !0;
for (let ze = 0; ze < Gr.length; ze++) Gr[ze](), Zr = ze;
Gr.length = 0, Zr = -1, Wr = !1;
}
var fn, hn, pn, mn, Hn = !0;
function Un(ze) {
Hn = !1, ze(), Hn = !0;
}
function ri(ze) {
fn = ze.reactive, pn = ze.release, hn = (Jr) => ze.effect(Jr, { scheduler: (Kr) => {
Hn ? Yr(Kr) : Kr();
} }), mn = ze.raw;
}
function Yn(ze) {
hn = ze;
}
function bi(ze) {
let Jr = () => {
};
return [(Kr) => {
let en = hn(Kr);
return ze._x_effects || (ze._x_effects = /* @__PURE__ */ new Set(), ze._x_runEffects = () => {
ze._x_effects.forEach((tn) => tn());
}), ze._x_effects.add(en), Jr = () => {
en !== void 0 && (ze._x_effects.delete(en), pn(en));
}, en;
}, () => {
Jr();
}];
}
function ei(ze, Jr) {
let Kr = !0, en, tn = hn(() => {
let rn = ze();
JSON.stringify(rn), Kr ? en = rn : queueMicrotask(() => {
Jr(rn, en), en = rn;
}), Kr = !1;
});
return () => pn(tn);
}
function Bn(ze, Jr, Kr = {}) {
ze.dispatchEvent(new CustomEvent(Jr, { detail: Kr, bubbles: !0, composed: !0, cancelable: !0 }));
}
function Cn(ze, Jr) {
if (typeof ShadowRoot == "function" && ze instanceof ShadowRoot) {
Array.from(ze.children).forEach((tn) => Cn(tn, Jr));
return;
}
let Kr = !1;
if (Jr(ze, () => Kr = !0), Kr) return;
let en = ze.firstElementChild;
for (; en; ) Cn(en, Jr), en = en.nextElementSibling;
}
function Sn(ze, ...Jr) {
console.warn(`Alpine Warning: ${ze}`, ...Jr);
}
var Ri = !1;
function $n() {
Ri && Sn("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems."), Ri = !0, document.body || Sn("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?"), Bn(document, "alpine:init"), Bn(document, "alpine:initializing"), Ni(), Ei((Jr) => zn(Jr, Cn)), In((Jr) => yi(Jr)), Mi((Jr, Kr) => {
bs(Jr, Kr).forEach((en) => en());
});
let ze = (Jr) => !Qn(Jr.parentElement, !0);
Array.from(document.querySelectorAll(En().join(","))).filter(ze).forEach((Jr) => {
zn(Jr);
}), Bn(document, "alpine:initialized");
}
var Rn = [], ni = [];
function Mn() {
return Rn.map((ze) => ze());
}
function En() {
return Rn.concat(ni).map((ze) => ze());
}
function jn(ze) {
Rn.push(ze);
}
function ii(ze) {
ni.push(ze);
}
function Qn(ze, Jr = !1) {
return bn(ze, (Kr) => {
if ((Jr ? En() : Mn()).some((en) => Kr.matches(en))) return !0;
});
}
function bn(ze, Jr) {
if (ze) {
if (Jr(ze)) return ze;
if (ze._x_teleportBack && (ze = ze._x_teleportBack), !!ze.parentElement) return bn(ze.parentElement, Jr);
}
}
function ci(ze) {
return Mn().some((Jr) => ze.matches(Jr));
}
var Jn = [];
function Xn(ze) {
Jn.push(ze);
}
function zn(ze, Jr = Cn, Kr = () => {
}) {
mo(() => {
Jr(ze, (en, tn) => {
Kr(en, tn), Jn.forEach((rn) => rn(en, tn)), bs(en, en.attributes).forEach((rn) => rn()), en._x_ignore && tn();
});
});
}
function yi(ze, Jr = Cn) {
Jr(ze, (Kr) => {
Si(Kr), Vn(Kr);
});
}
var ti = [], wi = [], Ii = [];
function Ei(ze) {
Ii.push(ze);
}
function In(ze, Jr) {
typeof Jr == "function" ? (ze._x_cleanups || (ze._x_cleanups = []), ze._x_cleanups.push(Jr)) : (Jr = ze, wi.push(Jr));
}
function Mi(ze) {
ti.push(ze);
}
function Wi(ze, Jr, Kr) {
ze._x_attributeCleanups || (ze._x_attributeCleanups = {}), ze._x_attributeCleanups[Jr] || (ze._x_attributeCleanups[Jr] = []), ze._x_attributeCleanups[Jr].push(Kr);
}
function Si(ze, Jr) {
ze._x_attributeCleanups && Object.entries(ze._x_attributeCleanups).forEach(([Kr, en]) => {
(Jr === void 0 || Jr.includes(Kr)) && (en.forEach((tn) => tn()), delete ze._x_attributeCleanups[Kr]);
});
}
function Vn(ze) {
if (ze._x_cleanups) for (; ze._x_cleanups.length; ) ze._x_cleanups.pop()();
}
var qi = new MutationObserver(vs), fi = !1;
function Ni() {
qi.observe(document, { subtree: !0, childList: !0, attributes: !0, attributeOldValue: !0 }), fi = !0;
}
function On() {
Ti(), qi.disconnect(), fi = !1;
}
var Kn = [];
function Ti() {
let ze = qi.takeRecords();
Kn.push(() => ze.length > 0 && vs(ze));
let Jr = Kn.length;
queueMicrotask(() => {
if (Kn.length === Jr) for (; Kn.length > 0; ) Kn.shift()();
});
}
function Tn(ze) {
if (!fi) return ze();
On();
let Jr = ze();
return Ni(), Jr;
}
var Nn = !1, Fn = [];
function si() {
Nn = !0;
}
function Gi() {
Nn = !1, vs(Fn), Fn = [];
}
function vs(ze) {
if (Nn) {
Fn = Fn.concat(ze);
return;
}
let Jr = /* @__PURE__ */ new Set(), Kr = /* @__PURE__ */ new Set(), en = /* @__PURE__ */ new Map(), tn = /* @__PURE__ */ new Map();
for (let rn = 0; rn < ze.length; rn++) if (!ze[rn].target._x_ignoreMutationObserver && (ze[rn].type === "childList" && (ze[rn].addedNodes.forEach((nn) => nn.nodeType === 1 && Jr.add(nn)), ze[rn].removedNodes.forEach((nn) => nn.nodeType === 1 && Kr.add(nn))), ze[rn].type === "attributes")) {
let nn = ze[rn].target, on = ze[rn].attributeName, un = ze[rn].oldValue, dn = () => {
en.has(nn) || en.set(nn, []), en.get(nn).push({ name: on, value: nn.getAttribute(on) });
}, vn = () => {
tn.has(nn) || tn.set(nn, []), tn.get(nn).push(on);
};
nn.hasAttribute(on) && un === null ? dn() : nn.hasAttribute(on) ? (vn(), dn()) : vn();
}
tn.forEach((rn, nn) => {
Si(nn, rn);
}), en.forEach((rn, nn) => {
ti.forEach((on) => on(nn, rn));
});
for (let rn of Kr) Jr.has(rn) || (wi.forEach((nn) => nn(rn)), yi(rn));
Jr.forEach((rn) => {
rn._x_ignoreSelf = !0, rn._x_ignore = !0;
});
for (let rn of Jr) Kr.has(rn) || rn.isConnected && (delete rn._x_ignoreSelf, delete rn._x_ignore, Ii.forEach((nn) => nn(rn)), rn._x_ignore = !0, rn._x_ignoreSelf = !0);
Jr.forEach((rn) => {
delete rn._x_ignoreSelf, delete rn._x_ignore;
}), Jr = null, Kr = null, en = null, tn = null;
}
function Gs(ze) {
return Hi(Li(ze));
}
function Pi(ze, Jr, Kr) {
return ze._x_dataStack = [Jr, ...Li(Kr || ze)], () => {
ze._x_dataStack = ze._x_dataStack.filter((en) => en !== Jr);
};
}
function Li(ze) {
return ze._x_dataStack ? ze._x_dataStack : typeof ShadowRoot == "function" && ze instanceof ShadowRoot ? Li(ze.host) : ze.parentNode ? Li(ze.parentNode) : [];
}
function Hi(ze) {
return new Proxy({ objects: ze }, oo);
}
var oo = { ownKeys({ objects: ze }) {
return Array.from(new Set(ze.flatMap((Jr) => Object.keys(Jr))));
}, has({ objects: ze }, Jr) {
return Jr == Symbol.unscopables ? !1 : ze.some((Kr) => Object.prototype.hasOwnProperty.call(Kr, Jr) || Reflect.has(Kr, Jr));
}, get({ objects: ze }, Jr, Kr) {
return Jr == "toJSON" ? lo : Reflect.get(ze.find((en) => Reflect.has(en, Jr)) || {}, Jr, Kr);
}, set({ objects: ze }, Jr, Kr, en) {
let tn = ze.find((nn) => Object.prototype.hasOwnProperty.call(nn, Jr)) || ze[ze.length - 1], rn = Object.getOwnPropertyDescriptor(tn, Jr);
return rn != null && rn.set && (rn != null && rn.get) ? Reflect.set(tn, Jr, Kr, en) : Reflect.set(tn, Jr, Kr);
} };
function lo() {
return Reflect.ownKeys(this).reduce((ze, Jr) => (ze[Jr] = Reflect.get(this, Jr), ze), {});
}
function Js(ze) {
let Jr = (en) => typeof en == "object" && !Array.isArray(en) && en !== null, Kr = (en, tn = "") => {
Object.entries(Object.getOwnPropertyDescriptors(en)).forEach(([rn, { value: nn, enumerable: on }]) => {
if (on === !1 || nn === void 0 || typeof nn == "object" && nn !== null && nn.__v_skip) return;
let un = tn === "" ? rn : `${tn}.${rn}`;
typeof nn == "object" && nn !== null && nn._x_interceptor ? en[rn] = nn.initialize(ze, un, rn) : Jr(nn) && nn !== en && !(nn instanceof Element) && Kr(nn, un);
});
};
return Kr(ze);
}
function Ks(ze, Jr = () => {
}) {
let Kr = { initialValue: void 0, _x_interceptor: !0, initialize(en, tn, rn) {
return ze(this.initialValue, () => uo(en, tn), (nn) => Zs(en, tn, nn), tn, rn);
} };
return Jr(Kr), (en) => {
if (typeof en == "object" && en !== null && en._x_interceptor) {
let tn = Kr.initialize.bind(Kr);
Kr.initialize = (rn, nn, on) => {
let un = en.initialize(rn, nn, on);
return Kr.initialValue = un, tn(rn, nn, on);
};
} else Kr.initialValue = en;
return Kr;
};
}
function uo(ze, Jr) {
return Jr.split(".").reduce((Kr, en) => Kr[en], ze);
}
function Zs(ze, Jr, Kr) {
if (typeof Jr == "string" && (Jr = Jr.split(".")), Jr.length === 1) ze[Jr[0]] = Kr;
else {
if (Jr.length === 0) throw error;
return ze[Jr[0]] || (ze[Jr[0]] = {}), Zs(ze[Jr[0]], Jr.slice(1), Kr);
}
}
var Ys = {};
function Wn(ze, Jr) {
Ys[ze] = Jr;
}
function gs(ze, Jr) {
return Object.entries(Ys).forEach(([Kr, en]) => {
let tn = null;
function rn() {
if (tn) return tn;
{
let [nn, on] = sa(Jr);
return tn = { interceptor: Ks, ...nn }, In(Jr, on), tn;
}
}
Object.defineProperty(ze, `$${Kr}`, { get() {
return en(Jr, rn());
}, enumerable: !1 });
}), ze;
}
function co(ze, Jr, Kr, ...en) {
try {
return Kr(...en);
} catch (tn) {
Bi(tn, ze, Jr);
}
}
function Bi(ze, Jr, Kr = void 0) {
ze = Object.assign(ze ?? { message: "No error message given." }, { el: Jr, expression: Kr }), console.warn(`Alpine Expression Error: ${ze.message}
${Kr ? 'Expression: "' + Kr + `"
` : ""}`, Jr), setTimeout(() => {
throw ze;
}, 0);
}
var Ji = !0;
function ea(ze) {
let Jr = Ji;
Ji = !1;
let Kr = ze();
return Ji = Jr, Kr;
}
function di(ze, Jr, Kr = {}) {
let en;
return Pn(ze, Jr)((tn) => en = tn, Kr), en;
}
function Pn(...ze) {
return ta(...ze);
}
var ta = ra;
function fo(ze) {
ta = ze;
}
function ra(ze, Jr) {
let Kr = {};
gs(Kr, ze);
let en = [Kr, ...Li(ze)], tn = typeof Jr == "function" ? ho(en, Jr) : vo(en, Jr, ze);
return co.bind(null, ze, Jr, tn);
}
function ho(ze, Jr) {
return (Kr = () => {
}, { scope: en = {}, params: tn = [] } = {}) => {
let rn = Jr.apply(Hi([en, ...ze]), tn);
Ki(Kr, rn);
};
}
var ms = {};
function po(ze, Jr) {
if (ms[ze]) return ms[ze];
let Kr = Object.getPrototypeOf(async function() {
}).constructor, en = /^[\n\s]*if.*\(.*\)/.test(ze.trim()) || /^(let|const)\s/.test(ze.trim()) ? `(async()=>{ ${ze} })()` : ze, tn = (() => {
try {
let rn = new Kr(["__self", "scope"], `with (scope) { __self.result = ${en} }; __self.finished = true; return __self.result;`);
return Object.defineProperty(rn, "name", { value: `[Alpine] ${ze}` }), rn;
} catch (rn) {
return Bi(rn, Jr, ze), Promise.resolve();
}
})();
return ms[ze] = tn, tn;
}
function vo(ze, Jr, Kr) {
let en = po(Jr, Kr);
return (tn = () => {
}, { scope: rn = {}, params: nn = [] } = {}) => {
en.result = void 0, en.finished = !1;
let on = Hi([rn, ...ze]);
if (typeof en == "function") {
let un = en(en, on).catch((dn) => Bi(dn, Kr, Jr));
en.finished ? (Ki(tn, en.result, on, nn, Kr), en.result = void 0) : un.then((dn) => {
Ki(tn, dn, on, nn, Kr);
}).catch((dn) => Bi(dn, Kr, Jr)).finally(() => en.result = void 0);
}
};
}
function Ki(ze, Jr, Kr, en, tn) {
if (Ji && typeof Jr == "function") {
let rn = Jr.apply(Kr, en);
rn instanceof Promise ? rn.then((nn) => Ki(ze, nn, Kr, en)).catch((nn) => Bi(nn, tn, Jr)) : ze(rn);
} else typeof Jr == "object" && Jr instanceof Promise ? Jr.then((rn) => ze(rn)) : ze(Jr);
}
var xs = "x-";
function Ai(ze = "") {
return xs + ze;
}
function go(ze) {
xs = ze;
}
var _s = {};
function An(ze, Jr) {
return _s[ze] = Jr, { before(Kr) {
if (!_s[Kr]) {
console.warn(String.raw`Cannot find directive \`${Kr}\`. \`${ze}\` will use the default order of execution`);
return;
}
let en = hi.indexOf(Kr);
hi.splice(en >= 0 ? en : hi.indexOf("DEFAULT"), 0, ze);
} };
}
function bs(ze, Jr, Kr) {
if (Jr = Array.from(Jr), ze._x_virtualDirectives) {
let tn = Object.entries(ze._x_virtualDirectives).map(([nn, on]) => ({ name: nn, value: on })), rn = na(tn);
tn = tn.map((nn) => rn.find((on) => on.name === nn.name) ? { name: `x-bind:${nn.name}`, value: `"${nn.value}"` } : nn), Jr = Jr.concat(tn);
}
let en = {};
return Jr.map(la((tn, rn) => en[tn] = rn)).filter(ca).map(_o(en, Kr)).sort(bo).map((tn) => xo(ze, tn));
}
function na(ze) {
return Array.from(ze).map(la()).filter((Jr) => !ca(Jr));
}
var ys = !1, $i = /* @__PURE__ */ new Map(), ia = Symbol();
function mo(ze) {
ys = !0;
let Jr = Symbol();
ia = Jr, $i.set(Jr, []);
let Kr = () => {
for (; $i.get(Jr).length; ) $i.get(Jr).shift()();
$i.delete(Jr);
}, en = () => {
ys = !1, Kr();
};
ze(Kr), en();
}
function sa(ze) {
let Jr = [], Kr = (rn) => Jr.push(rn), [en, tn] = bi(ze);
return Jr.push(tn), [{ Alpine: Fi, effect: en, cleanup: Kr, evaluateLater: Pn.bind(Pn, ze), evaluate: di.bind(di, ze) }, () => Jr.forEach((rn) => rn())];
}
function xo(ze, Jr) {
let Kr = () => {
}, en = _s[Jr.type] || Kr, [tn, rn] = sa(ze);
Wi(ze, Jr.original, rn);
let nn = () => {
ze._x_ignore || ze._x_ignoreSelf || (en.inline && en.inline(ze, Jr, tn), en = en.bind(en, ze, Jr, tn), ys ? $i.get(ia).push(en) : en());
};
return nn.runCleanups = rn, nn;
}
var aa = (ze, Jr) => ({ name: Kr, value: en }) => (Kr.startsWith(ze) && (Kr = Kr.replace(ze, Jr)), { name: Kr, value: en }), oa = (ze) => ze;
function la(ze = () => {
}) {
return ({ name: Jr, value: Kr }) => {
let { name: en, value: tn } = ua.reduce((rn, nn) => nn(rn), { name: Jr, value: Kr });
return en !== Jr && ze(en, Jr), { name: en, value: tn };
};
}
var ua = [];
function ws(ze) {
ua.push(ze);
}
function ca({ name: ze }) {
return fa().test(ze);
}
var fa = () => new RegExp(`^${xs}([^:^.]+)\\b`);
function _o(ze, Jr) {
return ({ name: Kr, value: en }) => {
let tn = Kr.match(fa()), rn = Kr.match(/:([a-zA-Z0-9\-_:]+)/), nn = Kr.match(/\.[^.\]]+(?=[^\]]*$)/g) || [], on = Jr || ze[Kr] || Kr;
return { type: tn ? tn[1] : null, value: rn ? rn[1] : null, modifiers: nn.map((un) => un.replace(".", "")), expression: en, original: on };
};
}
var Es = "DEFAULT", hi = ["ignore", "ref", "data", "id", "anchor", "bind", "init", "for", "model", "modelable", "transition", "show", "if", Es, "teleport"];
function bo(ze, Jr) {
let Kr = hi.indexOf(ze.type) === -1 ? Es : ze.type, en = hi.indexOf(Jr.type) === -1 ? Es : Jr.type;
return hi.indexOf(Kr) - hi.indexOf(en);
}
var Ss = [], Ts = !1;
function Ls(ze = () => {
}) {
return queueMicrotask(() => {
Ts || setTimeout(() => {
As();
});
}), new Promise((Jr) => {
Ss.push(() => {
ze(), Jr();
});
});
}
function As() {
for (Ts = !1; Ss.length; ) Ss.shift()();
}
function yo() {
Ts = !0;
}
function Cs(ze, Jr) {
return Array.isArray(Jr) ? da(ze, Jr.join(" ")) : typeof Jr == "object" && Jr !== null ? wo(ze, Jr) : typeof Jr == "function" ? Cs(ze, Jr()) : da(ze, Jr);
}
function da(ze, Jr) {
let Kr = (tn) => tn.split(" ").filter((rn) => !ze.classList.contains(rn)).filter(Boolean), en = (tn) => (ze.classList.add(...tn), () => {
ze.classList.remove(...tn);
});
return Jr = Jr === !0 ? Jr = "" : Jr || "", en(Kr(Jr));
}
function wo(ze, Jr) {
let Kr = (on) => on.split(" ").filter(Boolean), en = Object.entries(Jr).flatMap(([on, un]) => un ? Kr(on) : !1).filter(Boolean), tn = Object.entries(Jr).flatMap(([on, un]) => un ? !1 : Kr(on)).filter(Boolean), rn = [], nn = [];
return tn.forEach((on) => {
ze.classList.contains(on) && (ze.classList.remove(on), nn.push(on));
}), en.forEach((on) => {
ze.classList.contains(on) || (ze.classList.add(on), rn.push(on));
}), () => {
nn.forEach((on) => ze.classList.add(on)), rn.forEach((on) => ze.classList.remove(on));
};
}
function Zi(ze, Jr) {
return typeof Jr == "object" && Jr !== null ? Eo(ze, Jr) : So(ze, Jr);
}
function Eo(ze, Jr) {
let Kr = {};
return Object.entries(Jr).forEach(([en, tn]) => {
Kr[en] = ze.style[en], en.startsWith("--") || (en = To(en)), ze.style.setProperty(en, tn);
}), setTimeout(() => {
ze.style.length === 0 && ze.removeAttribute("style");
}), () => {
Zi(ze, Kr);
};
}
function So(ze, Jr) {
let Kr = ze.getAttribute("style", Jr);
return ze.setAttribute("style", Jr), () => {
ze.setAttribute("style", Kr || "");
};
}
function To(ze) {
return ze.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
}
function Os(ze, Jr = () => {
}) {
let Kr = !1;
return function() {
Kr ? Jr.apply(this, arguments) : (Kr = !0, ze.apply(this, arguments));
};
}
An("transition", (ze, { value: Jr, modifiers: Kr, expression: en }, { evaluate: tn }) => {
typeof en == "function" && (en = tn(en)), en !== !1 && (!en || typeof en == "boolean" ? Ao(ze, Kr, Jr) : Lo(ze, en, Jr));
});
function Lo(ze, Jr, Kr) {
ha(ze, Cs, ""), { enter: (en) => {
ze._x_transition.enter.during = en;
}, "enter-start": (en) => {
ze._x_transition.enter.start = en;
}, "enter-end": (en) => {
ze._x_transition.enter.end = en;
}, leave: (en) => {
ze._x_transition.leave.during = en;
}, "leave-start": (en) => {
ze._x_transition.leave.start = en;
}, "leave-end": (en) => {
ze._x_transition.leave.end = en;
} }[Kr](Jr);
}
function Ao(ze, Jr, Kr) {
ha(ze, Zi);
let en = !Jr.includes("in") && !Jr.includes("out") && !Kr, tn = en || Jr.includes("in") || ["enter"].includes(Kr), rn = en || Jr.includes("out") || ["leave"].includes(Kr);
Jr.includes("in") && !en && (Jr = Jr.filter((wn, Ln) => Ln < Jr.indexOf("out"))), Jr.includes("out") && !en && (Jr = Jr.filter((wn, Ln) => Ln > Jr.indexOf("out")));
let nn = !Jr.includes("opacity") && !Jr.includes("scale"), on = nn || Jr.includes("opacity"), un = nn || Jr.includes("scale"), dn = on ? 0 : 1, vn = un ? ji(Jr, "scale", 95) / 100 : 1, xn = ji(Jr, "delay", 0) / 1e3, _n = ji(Jr, "origin", "center"), kn = "opacity, transform", ui = ji(Jr, "duration", 150) / 1e3, fs = ji(Jr, "duration", 75) / 1e3, gn = "cubic-bezier(0.4, 0.0, 0.2, 1)";
tn && (ze._x_transition.enter.during = { transformOrigin: _n, transitionDelay: `${xn}s`, transitionProperty: kn, transitionDuration: `${ui}s`, transitionTimingFunction: gn }, ze._x_transition.enter.start = { opacity: dn, transform: `scale(${vn})` }, ze._x_transition.enter.end = { opacity: 1, transform: "scale(1)" }), rn && (ze._x_transition.leave.during = { transformOrigin: _n, transitionDelay: `${xn}s`, transitionProperty: kn, transitionDuration: `${fs}s`, transitionTimingFunction: gn }, ze._x_transition.leave.start = { opacity: 1, transform: "scale(1)" }, ze._x_transition.leave.end = { opacity: dn, transform: `scale(${vn})` });
}
function ha(ze, Jr, Kr = {}) {
ze._x_transition || (ze._x_transition = { enter: { during: Kr, start: Kr, end: Kr }, leave: { during: Kr, start: Kr, end: Kr }, in(en = () => {
}, tn = () => {
}) {
ks(ze, Jr, { during: this.enter.during, start: this.enter.start, end: this.enter.end }, en, tn);
}, out(en = () => {
}, tn = () => {
}) {
ks(ze, Jr, { during: this.leave.during, start: this.leave.start, end: this.leave.end }, en, tn);
} });
}
window.Element.prototype._x_toggleAndCascadeWithTransitions = function(ze, Jr, Kr, en) {
let tn = document.visibilityState === "visible" ? requestAnimationFrame : setTimeout, rn = () => tn(Kr);
if (Jr) {
ze._x_transition && (ze._x_transition.enter || ze._x_transition.leave) ? ze._x_transition.enter && (Object.entries(ze._x_transition.enter.during).length || Object.entries(ze._x_transition.enter.start).length || Object.entries(ze._x_transition.enter.end).length) ? ze._x_transition.in(Kr) : rn() : ze._x_transition ? ze._x_transition.in(Kr) : rn();
return;
}
ze._x_hidePromise = ze._x_transition ? new Promise((nn, on) => {
ze._x_transition.out(() => {
}, () => nn(en)), ze._x_transitioning && ze._x_transitioning.beforeCancel(() => on({ isFromCancelledTransition: !0 }));
}) : Promise.resolve(en), queueMicrotask(() => {
let nn = pa(ze);
nn ? (nn._x_hideChildren || (nn._x_hideChildren = []), nn._x_hideChildren.push(ze)) : tn(() => {
let on = (un) => {
let dn = Promise.all([un._x_hidePromise, ...(un._x_hideChildren || []).map(on)]).then(([vn]) => vn());
return delete un._x_hidePromise, delete un._x_hideChildren, dn;
};
on(ze).catch((un) => {
if (!un.isFromCancelledTransition) throw un;
});
});
});
};
function pa(ze) {
let Jr = ze.parentNode;
if (Jr) return Jr._x_hidePromise ? Jr : pa(Jr);
}
function ks(ze, Jr, { during: Kr, start: en, end: tn } = {}, rn = () => {
}, nn = () => {
}) {
if (ze._x_transitioning && ze._x_transitioning.cancel(), Object.keys(Kr).length === 0 && Object.keys(en).length === 0 && Object.keys(tn).length === 0) {
rn(), nn();
return;
}
let on, un, dn;
Co(ze, { start() {
on = Jr(ze, en);
}, during() {
un = Jr(ze, Kr);
}, before: rn, end() {
on(), dn = Jr(ze, tn);
}, after: nn, cleanup() {
un(), dn();
} });
}
function Co(ze, Jr) {
let Kr, en, tn, rn = Os(() => {
Tn(() => {
Kr = !0, en || Jr.before(), tn || (Jr.end(), As()), Jr.after(), ze.isConnected && Jr.cleanup(), delete ze._x_transitioning;
});
});
ze._x_transitioning = { beforeCancels: [], beforeCancel(nn) {
this.beforeCancels.push(nn);
}, cancel: Os(function() {
for (; this.beforeCancels.length; ) this.beforeCancels.shift()();
rn();
}), finish: rn }, Tn(() => {
Jr.start(), Jr.during();
}), yo(), requestAnimationFrame(() => {
if (Kr) return;
let nn = Number(getComputedStyle(ze).transitionDuration.replace(/,.*/, "").replace("s", "")) * 1e3, on = Number(getComputedStyle(ze).transitionDelay.replace(/,.*/, "").replace("s", "")) * 1e3;
nn === 0 && (nn = Number(getComputedStyle(ze).animationDuration.replace("s", "")) * 1e3), Tn(() => {
Jr.before();
}), en = !0, requestAnimationFrame(() => {
Kr || (Tn(() => {
Jr.end();
}), As(), setTimeout(ze._x_transitioning.finish, nn + on), tn = !0);
});
});
}
function ji(ze, Jr, Kr) {
if (ze.indexOf(Jr) === -1) return Kr;
let en = ze[ze.indexOf(Jr) + 1];
if (!en || Jr === "scale" && isNaN(en)) return Kr;
if (Jr === "duration" || Jr === "delay") {
let tn = en.match(/([0-9]+)ms/);
if (tn) return tn[1];
}
return Jr === "origin" && ["top", "right", "left", "center", "bottom"].includes(ze[ze.indexOf(Jr) + 2]) ? [en, ze[ze.indexOf(Jr) + 2]].join(" ") : en;
}
var ai = !1;
function pi(ze, Jr = () => {
}) {
return (...Kr) => ai ? Jr(...Kr) : ze(...Kr);
}
function Oo(ze) {
return (...Jr) => ai && ze(...Jr);
}
var va = [];
function Yi(ze) {
va.push(ze);
}
function ko(ze, Jr) {
va.forEach((Kr) => Kr(ze, Jr)), ai = !0, ga(() => {
zn(Jr, (Kr, en) => {
en(Kr, () => {
});
});
}), ai = !1;
}
var Rs = !1;
function Ro(ze, Jr) {
Jr._x_dataStack || (Jr._x_dataStack = ze._x_dataStack), ai = !0, Rs = !0, ga(() => {
Io(Jr);
}), ai = !1, Rs = !1;
}
function Io(ze) {
let Jr = !1;
zn(ze, (Kr, en) => {
Cn(Kr, (tn, rn) => {
if (Jr && ci(tn)) return rn();
Jr = !0, en(tn, rn);
});
});
}
function ga(ze) {
let Jr = hn;
Yn((Kr, en) => {
let tn = Jr(Kr);
return pn(tn), () => {
};
}), ze(), Yn(Jr);
}
function ma(ze, Jr, Kr, en = []) {
switch (ze._x_bindings || (ze._x_bindings = fn({})), ze._x_bindings[Jr] = Kr, Jr = en.includes("camel") ? jo(Jr) : Jr, Jr) {
case "value":
Mo(ze, Kr);
break;
case "style":
No(ze, Kr);
break;
case "class":
qo(ze, Kr);
break;
case "selected":
case "checked":
Po(ze, Jr, Kr);
break;
default:
xa(ze, Jr, Kr);
break;
}
}
function Mo(ze, Jr) {
if (ze.type === "radio") ze.attributes.value === void 0 && (ze.value = Jr), window.fromModel && (typeof Jr == "boolean" ? ze.checked = es(ze.value) === Jr : ze.checked = _a(ze.value, Jr));
else if (ze.type === "checkbox") Number.isInteger(Jr) ? ze.value = Jr : !Array.isArray(Jr) && typeof Jr != "boolean" && ![null, void 0].includes(Jr) ? ze.value = String(Jr) : Array.isArray(Jr) ? ze.checked = Jr.some((Kr) => _a(Kr, ze.value)) : ze.checked = !!Jr;
else if (ze.tagName === "SELECT") $o(ze, Jr);
else {
if (ze.value === Jr) return;
ze.value = Jr === void 0 ? "" : Jr;
}
}
function qo(ze, Jr) {
ze._x_undoAddedClasses && ze._x_undoAddedClasses(), ze._x_undoAddedClasses = Cs(ze, Jr);
}
function No(ze, Jr) {
ze._x_undoAddedStyles && ze._x_undoAddedStyles(), ze._x_undoAddedStyles = Zi(ze, Jr);
}
function Po(ze, Jr, Kr) {
xa(ze, Jr, Kr), Bo(ze, Jr, Kr);
}
function xa(ze, Jr, Kr) {
[null, void 0, !1].includes(Kr) && Fo(Jr) ? ze.removeAttribute(Jr) : (ba(Jr) && (Kr = Jr), Ho(ze, Jr, Kr));
}
function Ho(ze, Jr, Kr) {
ze.getAttribute(Jr) != Kr && ze.setAttribute(Jr, Kr);
}
function Bo(ze, Jr, Kr) {
ze[Jr] !== Kr && (ze[Jr] = Kr);
}
function $o(ze, Jr) {
let Kr = [].concat(Jr).map((en) => en + "");
Array.from(ze.options).forEach((en) => {
en.selected = Kr.includes(en.value);
});
}
function jo(ze) {
return ze.toLowerCase().replace(/-(\w)/g, (Jr, Kr) => Kr.toUpperCase());
}
function _a(ze, Jr) {
return ze == Jr;
}
function es(ze) {
return [1, "1", "true", "on", "yes", !0].includes(ze) ? !0 : [0, "0", "false", "off", "no", !1].includes(ze) ? !1 : ze ? !!ze : null;
}
function ba(ze) {
return ["disabled", "checked", "required", "readonly", "hidden", "open", "selected", "autofocus", "itemscope", "multiple", "novalidate", "allowfullscreen", "allowpaymentrequest", "formnovalidate", "autoplay", "controls", "loop", "muted", "playsinline", "default", "ismap", "reversed", "async", "defer", "nomodule"].includes(ze);
}
function Fo(ze) {
return !["aria-pressed", "aria-checked", "aria-expanded", "aria-selected"].includes(ze);
}
function Do(ze, Jr, Kr) {
return ze._x_bindings && ze._x_bindings[Jr] !== void 0 ? ze._x_bindings[Jr] : ya(ze, Jr, Kr);
}
function Uo(ze, Jr, Kr, en = !0) {
if (ze._x_bindings && ze._x_bindings[Jr] !== void 0) return ze._x_bindings[Jr];
if (ze._x_inlineBindings && ze._x_inlineBindings[Jr] !== void 0) {
let tn = ze._x_inlineBindings[Jr];
return tn.extract = en, ea(() => di(ze, tn.expression));
}
return ya(ze, Jr, Kr);
}
function ya(ze, Jr, Kr) {
let en = ze.getAttribute(Jr);
return en === null ? typeof Kr == "function" ? Kr() : Kr : en === "" ? !0 : ba(Jr) ? !![Jr, "true"].includes(en) : en;
}
function wa(ze, Jr) {
var Kr;
return function() {
var en = this, tn = arguments, rn = function() {
Kr = null, ze.apply(en, tn);
};
clearTimeout(Kr), Kr = setTimeout(rn, Jr);
};
}
function Ea(ze, Jr) {
let Kr;
return function() {
let en = this, tn = arguments;
Kr || (ze.apply(en, tn), Kr = !0, setTimeout(() => Kr = !1, Jr));
};
}
function Sa({ get: ze, set: Jr }, { get: Kr, set: en }) {
let tn = !0, rn, nn = hn(() => {
let on = ze(), un = Kr();
if (tn) en(Is(on)), tn = !1;
else {
let dn = JSON.stringify(on), vn = JSON.stringify(un);
dn !== rn ? en(Is(on)) : dn !== vn && Jr(Is(un));
}
rn = JSON.stringify(ze()), JSON.stringify(Kr());
});
return () => {
pn(nn);
};
}
function Is(ze) {
return typeof ze == "object" ? JSON.parse(JSON.stringify(ze)) : ze;
}
function Qo(ze) {
(Array.isArray(ze) ? ze : [ze]).forEach((Jr) => Jr(Fi));
}
var vi = {}, Ta = !1;
function Xo(ze, Jr) {
if (Ta || (vi = fn(vi), Ta = !0), Jr === void 0) return vi[ze];
vi[ze] = Jr, typeof Jr == "object" && Jr !== null && Jr.hasOwnProperty("init") && typeof Jr.init == "function" && vi[ze].init(), Js(vi[ze]);
}
function zo() {
return vi;
}
var La = {};
function Vo(ze, Jr) {
let Kr = typeof Jr != "function" ? () => Jr : Jr;
return ze instanceof Element ? Aa(ze, Kr()) : (La[ze] = Kr, () => {
});
}
function Wo(ze) {
return Object.entries(La).forEach(([Jr, Kr]) => {
Object.defineProperty(ze, Jr, { get() {
return (...en) => Kr(...en);
} });
}), ze;
}
function Aa(ze, Jr, Kr) {
let en = [];
for (; en.length; ) en.pop()();
let tn = Object.entries(Jr).map(([nn, on]) => ({ name: nn, value: on })), rn = na(tn);
return tn = tn.map((nn) => rn.find((on) => on.name === nn.name) ? { name: `x-bind:${nn.name}`, value: `"${nn.value}"` } : nn), bs(ze, tn, Kr).map((nn) => {
en.push(nn.runCleanups), nn();
}), () => {
for (; en.length; ) en.pop()();
};
}
var Ca = {};
function Go(ze, Jr) {
Ca[ze] = Jr;
}
function Jo(ze, Jr) {
return Object.entries(Ca).forEach(([Kr, en]) => {
Object.defineProperty(ze, Kr, { get() {
return (...tn) => en.bind(Jr)(...tn);
}, enumerable: !1 });
}), ze;
}
var Ko = { get reactive() {
return fn;
}, get release() {
return pn;
}, get effect() {
return hn;
}, get raw() {
return mn;
}, version: "3.13.7", flushAndStopDeferringMutations: Gi, dontAutoEvaluateFunctions: ea, disableEffectScheduling: Un, startObservingMutations: Ni, stopObservingMutations: On, setReactivityEngine: ri, onAttributeRemoved: Wi, onAttributesAdded: Mi, closestDataStack: Li, skipDuringClone: pi, onlyDuringClone: Oo, addRootSelector: jn, addInitSelector: ii, interceptClone: Yi, addScopeToNode: Pi, deferMutations: si, mapAttributes: ws, evaluateLater: Pn, interceptInit: Xn, setEvaluator: fo, mergeProxies: Hi, extractProp: Uo, findClosest: bn, onElRemoved: In, closestRoot: Qn, destroyTree: yi, interceptor: Ks, transition: ks, setStyles: Zi, mutateDom: Tn, directive: An, entangle: Sa, throttle: Ea, debounce: wa, evaluate: di, initTree: zn, nextTick: Ls, prefixed: Ai, prefix: go, plugin: Qo, magic: Wn, store: Xo, start: $n, clone: Ro, cloneNode: ko, bound: Do, $data: Gs, watch: ei, walk: Cn, data: Go, bind: Vo }, Fi = Ko;
function Oa(ze, Jr) {
let Kr = /* @__PURE__ */ Object.create(null), en = ze.split(",");
for (let tn = 0; tn < en.length; tn++) Kr[en[tn]] = !0;
return (tn) => !!Kr[tn];
}
var Zo = "itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly";
Oa(Zo + ",async,autofocus,autoplay,controls,default,defer,disabled,hidden,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");
var Yo = Object.freeze({}), el = Object.prototype.hasOwnProperty, ts = (ze, Jr) => el.call(ze, Jr), gi = Array.isArray, Di = (ze) => ka(ze) === "[object Map]", tl = (ze) => typeof ze == "string", Ms = (ze) => typeof ze == "symbol", rs = (ze) => ze !== null && typeof ze == "object", rl = Object.prototype.toString, ka = (ze) => rl.call(ze), Ra = (ze) => ka(ze).slice(8, -1), qs = (ze) => tl(ze) && ze !== "NaN" && ze[0] !== "-" && "" + parseInt(ze, 10) === ze, nl = (ze) => {
let Jr = /* @__PURE__ */ Object.create(null);
return (Kr) => Jr[Kr] || (Jr[Kr] = ze(Kr));
}, il = nl((ze) => ze.charAt(0).toUpperCase() + ze.slice(1)), Ia = (ze, Jr) => ze !== Jr && (ze === ze || Jr === Jr), Ns = /* @__PURE__ */ new WeakMap(), Ui = [], Zn, mi = Symbol("iterate"), Ps = Symbol("Map key iterate");
function sl(ze) {
return ze && ze._isEffect === !0;
}
function al(ze, Jr = Yo) {
sl(ze) && (ze = ze.raw);
let Kr = ul(ze, Jr);
return Jr.lazy || Kr(), Kr;
}
function ol(ze) {
ze.active && (Ma(ze), ze.options.onStop && ze.options.onStop(), ze.active = !1);
}
var ll = 0;
function ul(ze, Jr) {
let Kr = function() {
if (!Kr.active) return ze();
if (!Ui.includes(Kr)) {
Ma(Kr);
try {
return fl(), Ui.push(Kr), Zn = Kr, ze();
} finally {
Ui.pop(), qa(), Zn = Ui[Ui.length - 1];
}
}
};
return Kr.id = ll++, Kr.allowRecurse = !!Jr.allowRecurse, Kr._isEffect = !0, Kr.active = !0, Kr.raw = ze, Kr.deps = [], Kr.options = Jr, Kr;
}
function Ma(ze) {
let { deps: Jr } = ze;
if (Jr.length) {
for (let Kr = 0; Kr < Jr.length; Kr++) Jr[Kr].delete(ze);
Jr.length = 0;
}
}
var Ci = !0, Hs = [];
function cl() {
Hs.push(Ci), Ci = !1;
}
function fl() {
Hs.push(Ci), Ci = !0;
}
function qa() {
let ze = Hs.pop();
Ci = ze === void 0 ? !0 : ze;
}
function Gn(ze, Jr, Kr) {
if (!Ci || Zn === void 0) return;
let en = Ns.get(ze);
en || Ns.set(ze, en = /* @__PURE__ */ new Map());
let tn = en.get(Kr);
tn || en.set(Kr, tn = /* @__PURE__ */ new Set()), tn.has(Zn) || (tn.add(Zn), Zn.deps.push(tn), Zn.options.onTrack && Zn.options.onTrack({ effect: Zn, target: ze, type: Jr, key: Kr }));
}
function oi(ze, Jr, Kr, en, tn, rn) {
let nn = Ns.get(ze);
if (!nn) return;
let on = /* @__PURE__ */ new Set(), un = (vn) => {
vn && vn.forEach((xn) => {
(xn !== Zn || xn.allowRecurse) && on.add(xn);
});
};
if (Jr === "clear") nn.forEach(un);
else if (Kr === "length" && gi(ze)) nn.forEach((vn, xn) => {
(xn === "length" || xn >= en) && un(vn);
});
else switch (Kr !== void 0 && un(nn.get(Kr)), Jr) {
case "add":
gi(ze) ? qs(Kr) && un(nn.get("length")) : (un(nn.get(mi)), Di(ze) && un(nn.get(Ps)));
break;
case "delete":
gi(ze) || (un(nn.get(mi)), Di(ze) && un(nn.get(Ps)));
break;
case "set":
Di(ze) && un(nn.get(mi));
break;
}
let dn = (vn) => {
vn.options.onTrigger && vn.options.onTrigger({ effect: vn, target: ze, key: Kr, type: Jr, newValue: en, oldValue: tn, oldTarget: rn }), vn.options.scheduler ? vn.options.scheduler(vn) : vn();
};
on.forEach(dn);
}
var dl = Oa("__proto__,__v_isRef,__isVue"), Na = new Set(Object.getOwnPropertyNames(Symbol).map((ze) => Symbol[ze]).filter(Ms)), hl = Ha(), pl = Ha(!0), Pa = vl();
function vl() {
let ze = {};
return ["includes", "indexOf", "lastIndexOf"].forEach((Jr) => {
ze[Jr] = function(...Kr) {
let en = yn(this);
for (let rn = 0, nn = this.length; rn < nn; rn++) Gn(en, "get", rn + "");
let tn = en[Jr](...Kr);
return tn === -1 || tn === !1 ? en[Jr](...Kr.map(yn)) : tn;
};
}), ["push", "pop", "shift", "unshift", "splice"].forEach((Jr) => {
ze[Jr] = function(...Kr) {
cl();
let en = yn(this)[Jr].apply(this, Kr);
return qa(), en;
};
}), ze;
}
function Ha(ze = !1, Jr = !1) {
return function(Kr, en, tn) {
if (en === "__v_isReactive") return !ze;
if (en === "__v_isReadonly") return ze;
if (en === "__v_raw" && tn === (ze ? Jr ? Ol : Xa : Jr ? Cl : Qa).get(Kr)) return Kr;
let rn = gi(Kr);
if (!ze && rn && ts(Pa, en)) return Reflect.get(Pa, en, tn);
let nn = Reflect.get(Kr, en, tn);
return (Ms(en) ? Na.has(en) : dl(en)) || (ze || Gn(Kr, "get", en), Jr) ? nn : Ds(nn) ? !rn || !qs(en) ? nn.value : nn : rs(nn) ? ze ? za(nn) : Fs(nn) : nn;
};
}
var gl = ml();
function ml(ze = !1) {
return function(Jr, Kr, en, tn) {
let rn = Jr[Kr];
if (!ze && (en = yn(en), rn = yn(rn), !gi(Jr) && Ds(rn) && !Ds(en))) return rn.value = en, !0;
let nn = gi(Jr) && qs(Kr) ? Number(Kr) < Jr.length : ts(Jr, Kr), on = Reflect.set(Jr, Kr, en, tn);
return Jr === yn(tn) && (nn ? Ia(en, rn) && oi(Jr, "set", Kr, en, rn) : oi(Jr, "add", Kr, en)), on;
};
}
function xl(ze, Jr) {
let Kr = ts(ze, Jr), en = ze[Jr], tn = Reflect.deleteProperty(ze, Jr);
return tn && Kr && oi(ze, "delete", Jr, void 0, en), tn;
}
function _l(ze, Jr) {
let Kr = Reflect.has(ze, Jr);
return (!Ms(Jr) || !Na.has(Jr)) && Gn(ze, "has", Jr), Kr;
}
function bl(ze) {
return Gn(ze, "iterate", gi(ze) ? "length" : mi), Reflect.ownKeys(ze);
}
var yl = { get: hl, set: gl, deleteProperty: xl, has: _l, ownKeys: bl }, wl = { get: pl, set(ze, Jr) {
return console.warn(`Set operation on key "${String(Jr)}" failed: target is readonly.`, ze), !0;
}, deleteProperty(ze, Jr) {
return console.warn(`Delete operation on key "${String(Jr)}" failed: target is readonly.`, ze), !0;
} }, Bs = (ze) => rs(ze) ? Fs(ze) : ze, $s = (ze) => rs(ze) ? za(ze) : ze, js = (ze) => ze, ns = (ze) => Reflect.getPrototypeOf(ze);
function is(ze, Jr, Kr = !1, en = !1) {
ze = ze.__v_raw;
let tn = yn(ze), rn = yn(Jr);
Jr !== rn && !Kr && Gn(tn, "get", Jr), !Kr && Gn(tn, "get", rn);
let { has: nn } = ns(tn), on = en ? js : Kr ? $s : Bs;
if (nn.call(tn, Jr)) return on(ze.get(Jr));
if (nn.call(tn, rn)) return on(ze.get(rn));
ze !== tn && ze.get(Jr);
}
function ss(ze, Jr = !1) {
let Kr = this.__v_raw, en = yn(Kr), tn = yn(ze);
return ze !== tn && !Jr && Gn(en, "has", ze), !Jr && Gn(en, "has", tn), ze === tn ? Kr.has(ze) : Kr.has(ze) || Kr.has(tn);
}
function as(ze, Jr = !1) {
return ze = ze.__v_raw, !Jr && Gn(yn(ze), "iterate", mi), Reflect.get(ze, "size", ze);
}
function Ba(ze) {
ze = yn(ze);
let Jr = yn(this);
return ns(Jr).has.call(Jr, ze) || (Jr.add(ze), oi(Jr, "add", ze, ze)), this;
}
function $a(ze, Jr) {
Jr = yn(Jr);
let Kr = yn(this), { has: en, get: tn } = ns(Kr), rn = en.call(Kr, ze);
rn ? Ua(Kr, en, ze) : (ze = yn(ze), rn = en.call(Kr, ze));
let nn = tn.call(Kr, ze);
return Kr.set(ze, Jr), rn ? Ia(Jr, nn) && oi(Kr, "set", ze, Jr, nn) : oi(Kr, "add", ze, Jr), this;
}
function ja(ze) {
let Jr = yn(this), { has: Kr, get: en } = ns(Jr), tn = Kr.call(Jr, ze);
tn ? Ua(Jr, Kr, ze) : (ze = yn(ze), tn = Kr.call(Jr, ze));
let rn = en ? en.call(Jr, ze) : void 0, nn = Jr.delete(ze);
return tn && oi(Jr, "delete", ze, void 0, rn), nn;
}
function Fa() {
let ze = yn(this), Jr = ze.size !== 0, Kr = Di(ze) ? new Map(ze) : new Set(ze), en = ze.clear();
return Jr && oi(ze, "clear", void 0, void 0, Kr), en;
}
function os(ze, Jr) {
return function(Kr, en) {
let tn = this, rn = tn.__v_raw, nn = yn(rn), on = Jr ? js : ze ? $s : Bs;
return !ze && Gn(nn, "iterate", mi), rn.forEach((un, dn) => Kr.call(en, on(un), on(dn), tn));
};
}
function ls(ze, Jr, Kr) {
return function(...en) {
let tn = this.__v_raw, rn = yn(tn), nn = Di(rn), on = ze === "entries" || ze === Symbol.iterator && nn, un = ze === "keys" && nn, dn = tn[ze](...en), vn = Kr ? js : Jr ? $s : Bs;
return !Jr && Gn(rn, "iterate", un ? Ps : mi), { next() {
let { value: xn, done: _n } = dn.next();
return _n ? { value: xn, done: _n } : { value: on ? [vn(xn[0]), vn(xn[1])] : vn(xn), done: _n };
}, [Symbol.iterator]() {
return this;
} };
};
}
function li(ze) {
return function(...Jr) {
{
let Kr = Jr[0] ? `on key "${Jr[0]}" ` : "";
console.warn(`${il(ze)} operation ${Kr}failed: target is readonly.`, yn(this));
}
return ze === "delete" ? !1 : this;
};
}
function El() {
let ze = { get(tn) {
return is(this, tn);
}, get size() {
return as(this);
}, has: ss, add: Ba, set: $a, delete: ja, clear: Fa, forEach: os(!1, !1) }, Jr = { get(tn) {
return is(this, tn, !1, !0);
}, get size() {
return as(this);
}, has: ss, add: Ba, set: $a, delete: ja, clear: Fa, forEach: os(!1, !0) }, Kr = { get(tn) {
return is(this, tn, !0);
}, get size() {
return as(this, !0);
}, has(tn) {
return ss.call(this, tn, !0);
}, add: li("add"), set: li("set"), delete: li("delete"), clear: li("clear"), forEach: os(!0, !1) }, en = { get(tn) {
return is(this, tn, !0, !0);
}, get size() {
return as(this, !0);
}, has(tn) {
return ss.call(this, tn, !0);
}, add: li("add"), set: li("set"), delete: li("delete"), clear: li("clear"), forEach: os(!0, !0) };
return ["keys", "values", "entries", Symbol.iterator].forEach((tn) => {
ze[tn] = ls(tn, !1, !1), Kr[tn] = ls(tn, !0, !1), Jr[tn] = ls(tn, !1, !0), en[tn] = ls(tn, !0, !0);
}), [ze, Kr, Jr, en];
}
var [Sl, Tl, Yl, eu] = El();
function Da(ze, Jr) {
let Kr = ze ? Tl : Sl;
return (en, tn, rn) => tn === "__v_isReactive" ? !ze : tn === "__v_isReadonly" ? ze : tn === "__v_raw" ? en : Reflect.get(ts(Kr, tn) && tn in en ? Kr : en, tn, rn);
}
var Ll = { get: Da(!1) }, Al = { get: Da(!0) };
function Ua(ze, Jr, Kr) {
let en = yn(Kr);
if (en !== Kr && Jr.call(ze, en)) {
let tn = Ra(ze);
console.warn(`Reactive ${tn} contains both the raw and reactive versions of the same object${tn === "Map" ? " as keys" : ""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
}
}
var Qa = /* @__PURE__ */ new WeakMap(), Cl = /* @__PURE__ */ new WeakMap(), Xa = /* @__PURE__ */ new WeakMap(), Ol = /* @__PURE__ */ new WeakMap();
function kl(ze) {
switch (ze) {
case "Object":
case "Array":
return 1;
case "Map":
case "Set":
case "WeakMap":
case "WeakSet":
return 2;
default:
return 0;
}
}
function Rl(ze) {
return ze.__v_skip || !Object.isExtensible(ze) ? 0 : kl(Ra(ze));
}
function Fs(ze) {
return ze && ze.__v_isReadonly ? ze : Va(ze, !1, yl, Ll, Qa);
}
function za(ze) {
return Va(ze, !0, wl, Al, Xa);
}
function Va(ze, Jr, Kr, en, tn) {
if (!rs(ze)) return console.warn(`value cannot be made reactive: ${String(ze)}`), ze;
if (ze.__v_raw && !(Jr && ze.__v_isReactive)) return ze;
let rn = tn.get(ze);
if (rn) return rn;
let nn = Rl(ze);
if (nn === 0) return ze;
let on = new Proxy(ze, nn === 2 ? en : Kr);
return tn.set(ze, on), on;
}
function yn(ze) {
return ze && yn(ze.__v_raw) || ze;
}
function Ds(ze) {
return !!(ze && ze.__v_isRef === !0);
}
Wn("nextTick", () => Ls), Wn("dispatch", (ze) => Bn.bind(Bn, ze)), Wn("watch", (ze, { evaluateLater: Jr, cleanup: Kr }) => (en, tn) => {
let rn = Jr(en), nn = ei(() => {
let on;
return rn((un) => on = un), on;
}, tn);
Kr(nn);
}), Wn("store", zo), Wn("data", (ze) => Gs(ze)), Wn("root", (ze) => Qn(ze)), Wn("refs", (ze) => (ze._x_refs_proxy || (ze._x_refs_proxy = Hi(Il(ze))), ze._x_refs_proxy));
function Il(ze) {
let Jr = [];
return bn(ze, (Kr) => {
Kr._x_refs && Jr.push(Kr._x_refs);
}), Jr;
}
var Us = {};
function Wa(ze) {
return Us[ze] || (Us[ze] = 0), ++Us[ze];
}
function Ml(ze, Jr) {
return bn(ze, (Kr) => {
if (Kr._x_ids && Kr._x_ids[Jr]) return !0;
});
}
function ql(ze, Jr) {
ze._x_ids || (ze._x_ids = {}), ze._x_ids[Jr] || (ze._x_ids[Jr] = Wa(Jr));
}
Wn("id", (ze, { cleanup: Jr }) => (Kr, en = null) => {
let tn = `${Kr}${en ? `-${en}` : ""}`;
return Nl(ze, tn, Jr, () => {
let rn = Ml(ze, Kr), nn = rn ? rn._x_ids[Kr] : Wa(Kr);
return en ? `${Kr}-${nn}-${en}` : `${Kr}-${nn}`;
});
}), Yi((ze, Jr) => {
ze._x_id && (Jr._x_id = ze._x_id);
});
function Nl(ze, Jr, Kr, en) {
if (ze._x_id || (ze._x_id = {}), ze._x_id[Jr]) return ze._x_id[Jr];
let tn = en();
return ze._x_id[Jr] = tn, Kr(() => {
delete ze._x_id[Jr];
}), tn;
}
Wn("el", (ze) => ze), Ga("Focus", "focus", "focus"), Ga("Persist", "persist", "persist");
function Ga(ze, Jr, Kr) {
Wn(Jr, (en) => Sn(`You can't use [$${Jr}] without first installing the "${ze}" plugin here: https://alpinejs.dev/plugins/${Kr}`, en));
}
An("modelable", (ze, { expression: Jr }, { effect: Kr, evaluateLater: en, cleanup: tn }) => {
let rn = en(Jr), nn = () => {
let vn;
return rn((xn) => vn = xn), vn;
}, on = en(`${Jr} = __placeholder`), un = (vn) => on(() => {
}, { scope: { __placeholder: vn } }), dn = nn();
un(dn), queueMicrotask(() => {
if (!ze._x_model) return;
ze._x_removeModelListeners.default();
let vn = ze._x_model.get, xn = ze._x_model.set, _n = Sa({ get() {
return vn();
}, set(kn) {
xn(kn);
} }, { get() {
return nn();
}, set(kn) {
un(kn);
} });
tn(_n);
});
}), An("teleport", (ze, { modifiers: Jr, expression: Kr }, { cleanup: en }) => {
ze.tagName.toLowerCase() !== "template" && Sn("x-teleport can only be used on a <template> tag", ze);
let tn = Ja(Kr), rn = ze.content.cloneNode(!0).firstElementChild;
ze._x_teleport = rn, rn._x_teleportBack = ze, ze.setAttribute("data-teleport-template", !0), rn.setAttribute("data-teleport-target", !0), ze._x_forwardEvents && ze._x_forwardEvents.forEach((on) => {
rn.addEventListener(on, (un) => {
un.stopPropagation(), ze.dispatchEvent(new un.constructor(un.type, un));
});
}), Pi(rn, {}, ze);
let nn = (on, un, dn) => {
dn.includes("prepend") ? un.parentNode.insertBefore(on, un) : dn.includes("append") ? un.parentNode.insertBefore(on, un.nextSibling) : un.appendChild(on);
};
Tn(() => {
nn(rn, tn, Jr), zn(rn), rn._x_ignore = !0;
}), ze._x_teleportPutBack = () => {
let on = Ja(Kr);
Tn(() => {
nn(ze._x_teleport, on, Jr);
});
}, en(() => rn.remove());
});
var Pl = document.createElement("div");
function Ja(ze) {
let Jr = pi(() => document.querySelector(ze), () => Pl)();
return Jr || Sn(`Cannot find x-teleport element for selector: "${ze}"`), Jr;
}
var Ka = () => {
};
Ka.inline = (ze, { modifiers: Jr }, { cleanup: Kr }) => {
Jr.includes("self") ? ze._x_ignoreSelf = !0 : ze._x_ignore = !0, Kr(() => {
Jr.includes("self") ? delete ze._x_ignoreSelf : delete ze._x_ignore;
});
}, An("ignore", Ka), An("effect", pi((ze, { expression: Jr }, { effect: Kr }) => {
Kr(Pn(ze, Jr));
}));
function Qs(ze, Jr, Kr, en) {
let tn = ze, rn = (un) => en(un), nn = {}, on = (un, dn) => (vn) => dn(un, vn);
if (Kr.includes("dot") && (Jr = Hl(Jr)), Kr.includes("camel") && (Jr = Bl(Jr)), Kr.includes("passive") && (nn.passive = !0), Kr.includes("capture") && (nn.capture = !0), Kr.includes("window") && (tn = window), Kr.includes("document") && (tn = document), Kr.includes("debounce")) {
let un = Kr[Kr.indexOf("debounce") + 1] || "invalid-wait", dn = us(un.split("ms")[0]) ? Number(un.split("ms")[0]) : 250;
rn = wa(rn, dn);
}
if (Kr.includes("throttle")) {
let un = Kr[Kr.indexOf("throttle") + 1] || "invalid-wait", dn = us(un.split("ms")[0]) ? Number(un.split("ms")[0]) : 250;
rn = Ea(rn, dn);
}
return Kr.includes("prevent") && (rn = on(rn, (un, dn) => {
dn.preventDefault(), un(dn);
})), Kr.includes("stop") && (rn = on(rn, (un, dn) => {
dn.stopPropagation(), un(dn);
})), Kr.includes("self") && (rn = on(rn, (un, dn) => {
dn.target === ze && un(dn);
})), (Kr.includes("away") || Kr.includes("outside")) && (tn = document, rn = on(rn, (un, dn) => {
ze.contains(dn.target) || dn.target.isConnected !== !1 && (ze.offsetWidth < 1 && ze.offsetHeight < 1 || ze._x_isShown !== !1 && un(dn));
})), Kr.includes("once") && (rn = on(rn, (un, dn) => {
un(dn), tn.removeEventListener(Jr, rn, nn);
})), rn = on(rn, (un, dn) => {
jl(Jr) && Fl(dn, Kr) || un(dn);
}), tn.addEventListener(Jr, rn, nn), () => {
tn.removeEventListener(Jr, rn, nn);
};
}
function Hl(ze) {
return ze.replace(/-/g, ".");
}
function Bl(ze) {
return ze.toLowerCase().replace(/-(\w)/g, (Jr, Kr) => Kr.toUpperCase());
}
function us(ze) {
return !Array.isArray(ze) && !isNaN(ze);
}
function $l(ze) {
return [" ", "_"].includes(ze) ? ze : ze.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[_\s]/, "-").toLowerCase();
}
function jl(ze) {
return ["keydown", "keyup"].includes(ze);
}
function Fl(ze, Jr) {
let Kr = Jr.filter((tn) => !["window", "document", "prevent", "stop", "once", "capture"].includes(tn));
if (Kr.includes("debounce")) {
let tn = Kr.indexOf("debounce");
Kr.splice(tn, us((Kr[tn + 1] || "invalid-wait").split("ms")[0]) ? 2 : 1);
}
if (Kr.includes("throttle")) {
let tn = Kr.indexOf("throttle");
Kr.splice(tn, us((Kr[tn + 1] || "invalid-wait").split("ms")[0]) ? 2 : 1);
}
if (Kr.length === 0 || Kr.length === 1 && Za(ze.key).includes(Kr[0])) return !1;
let en = ["ctrl", "shift", "alt", "meta", "cmd", "super"].filter((tn) => Kr.includes(tn));
return Kr = Kr.filter((tn) => !en.includes(tn)), !(en.length > 0 && en.filter((tn) => ((tn === "cmd" || tn === "super") && (tn = "meta"), ze[`${tn}Key`])).length === en.length && Za(ze.key).includes(Kr[0]));
}
function Za(ze) {
if (!ze) return [];
ze = $l(ze);
let Jr = { ctrl: "control", slash: "/", space: " ", spacebar: " ", cmd: "meta", esc: "escape", up: "arrow-up", down: "arrow-down", left: "arrow-left", right: "arrow-right", period: ".", equal: "=", minus: "-", underscore: "_" };
return Jr[ze] = ze, Object.keys(Jr).map((Kr) => {
if (Jr[Kr] === ze) return Kr;
}).filter((Kr) => Kr);
}
An("model", (ze, { modifiers: Jr, expression: Kr }, { effect: en, cleanup: tn }) => {
let rn = ze;
Jr.includes("parent") && (rn = ze.parentNode);
let nn = Pn(rn, Kr), on;
typeof Kr == "string" ? on = Pn(rn, `${Kr} = __placeholder`) : typeof Kr == "function" && typeof Kr() == "string" ? on = Pn(rn, `${Kr()} = __placeholder`) : on = () => {
};
let un = () => {
let _n;
return nn((kn) => _n = kn), Ya(_n) ? _n.get() : _n;
}, dn = (_n) => {
let kn;
nn((ui) => kn = ui), Ya(kn) ? kn.set(_n) : on(() => {
}, { scope: { __placeholder: _n } });
};
typeof Kr == "string" && ze.type === "radio" && Tn(() => {
ze.hasAttribute("name") || ze.setAttribute("name", Kr);
});
var vn = ze.tagName.toLowerCase() === "select" || ["checkbox", "radio"].includes(ze.type) || Jr.includes("lazy") ? "change" : "input";
let xn = ai ? () => {
} : Qs(ze, vn, Jr, (_n) => {
dn(Dl(ze, Jr, _n, un()));
});
if (Jr.includes("fill") && ([void 0, null, ""].includes(un()) || ze.type === "checkbox" && Array.isArray(un())) && ze.dispatchEvent(new Event(vn, {})), ze._x_removeModelListeners || (ze._x_removeModelListeners = {}), ze._x_removeModelListeners.default = xn, tn(() => ze._x_removeModelListeners.default()), ze.form) {
let _n = Qs(ze.form, "reset", [], (kn) => {
Ls(() => ze._x_model && ze._x_model.set(ze.value));
});
tn(() => _n());
}
ze._x_model = { get() {
return un();
}, set(_n) {
dn(_n);
} }, ze._x_forceModelUpdate = (_n) => {
_n === void 0 && typeof Kr == "string" && Kr.match(/\./) && (_n = ""), window.fromModel = !0, Tn(() => ma(ze, "value", _n)), delete window.fromModel;
}, en(() => {
let _n = un();
Jr.includes("unintrusive") && document.activeElement.isSameNode(ze) || ze._x_forceModelUpdate(_n);
});
});
function Dl(ze, Jr, Kr, en) {
return Tn(() => {
if (Kr instanceof CustomEvent && Kr.detail !== void 0) return Kr.detail !== null && Kr.detail !== void 0 ? Kr.detail : Kr.target.value;
if (ze.type === "checkbox") if (Array.isArray(en)) {
let tn = null;
return Jr.includes("number") ? tn = Xs(Kr.target.value) : Jr.includes("boolean") ? tn = es(Kr.target.value) : tn = Kr.target.value, Kr.target.checked ? en.concat([tn]) : en.filter((rn) => !Ul(rn, tn));
} else return Kr.target.checked;
else return ze.tagName.toLowerCase() === "select" && ze.multiple ? Jr.includes("number") ? Array.from(Kr.target.selectedOptions).map((tn) => {
let rn = tn.value || tn.text;
return Xs(rn);
}) : Jr.includes("boolean") ? Array.from(Kr.target.selectedOptions).map((tn) => {
let rn = tn.value || tn.text;
return es(rn);
}) : Array.from(Kr.target.selectedOptions).map((tn) => tn.value || tn.text) : Jr.includes("number") ? Xs(Kr.target.value) : Jr.includes("boolean") ? es(Kr.target.value) : Jr.includes("trim") ? Kr.target.value.trim() : Kr.target.value;
});
}
function Xs(ze) {
let Jr = ze ? parseFloat(ze) : null;
return Ql(Jr) ? Jr : ze;
}
function Ul(ze, Jr) {
return ze == Jr;
}
function Ql(ze) {
return !Array.isArray(ze) && !isNaN(ze);
}
function Ya(ze) {
return ze !== null && typeof ze == "object" && typeof ze.get == "function" && typeof ze.set == "function";
}
An("cloak", (ze) => queueMicrotask(() => Tn(() => ze.removeAttribute(Ai("cloak"))))), ii(() => `[${Ai("init")}]`), An("init", pi((ze, { expression: Jr }, { evaluate: Kr }) => typeof Jr == "string" ? !!Jr.trim() && Kr(Jr, {}, !1) : Kr(Jr, {}, !1))), An("text", (ze, { expression: Jr }, { effect: Kr, evaluateLater: en }) => {
let tn = en(Jr);
Kr(() => {
tn((rn) => {
Tn(() => {
ze.textContent = rn;
});
});
});
}), An("html", (ze, { expression: Jr }, { effect: Kr, evaluateLater: en }) => {
let tn = en(Jr);
Kr(() => {
tn((rn) => {
Tn(() => {
ze.innerHTML = rn, ze._x_ignoreSelf = !0, zn(ze), delete ze._x_ignoreSelf;
});
});
});
}), ws(aa(":", oa(Ai("bind:"))));
var eo = (ze, { value: Jr, modifiers: Kr, expression: en, original: tn }, { effect: rn }) => {
if (!Jr) {
let on = {};
Wo(on), Pn(ze, en)((un) => {
Aa(ze, un, tn);
}, { scope: on });
return;
}
if (Jr === "key") return Xl(ze, en);
if (ze._x_inlineBindings && ze._x_inlineBindings[Jr] && ze._x_inlineBindings[Jr].extract) return;
let nn = Pn(ze, en);
rn(() => nn((on) => {
on === void 0 && typeof en == "string" && en.match(/\./) && (on = ""), Tn(() => ma(ze, Jr, on, Kr));
}));
};
eo.inline = (ze, { value: Jr, modifiers: Kr, expression: en }) => {
Jr && (ze._x_inlineBindings || (ze._x_inlineBindings = {}), ze._x_inlineBindings[Jr] = { expression: en, extract: !1 });
}, An("bind", eo);
function Xl(ze, Jr) {
ze._x_keyExpression = Jr;
}
jn(() => `[${Ai("data")}]`), An("data", (ze, { expression: Jr }, { cleanup: Kr }) => {
if (zl(ze)) return;
Jr = Jr === "" ? "{}" : Jr;
let en = {};
gs(en, ze);
let tn = {};
Jo(tn, en);
let rn = di(ze, Jr, { scope: tn });
(rn === void 0 || rn === !0) && (rn = {}), gs(rn, ze);
let nn = fn(rn);
Js(nn);
let on = Pi(ze, nn);
nn.init && di(ze, nn.init), Kr(() => {
nn.destroy && di(ze, nn.destroy), on();
});
}), Yi((ze, Jr) => {
ze._x_dataStack && (Jr._x_dataStack = ze._x_dataStack, Jr.setAttribute("data-has-alpine-state", !0));
});
function zl(ze) {
return ai ? Rs ? !0 : ze.hasAttribute("data-has-alpine-state") : !1;
}
An("show", (ze, { modifiers: Jr, expression: Kr }, { effect: en }) => {
let tn = Pn(ze, Kr);
ze._x_doHide || (ze._x_doHide = () => {
Tn(() => {
ze.style.setProperty("display", "none", Jr.includes("important") ? "important" : void 0);
});
}), ze._x_doShow || (ze._x_doShow = () => {
Tn(() => {
ze.style.length === 1 && ze.style.display === "none" ? ze.removeAttribute("style") : ze.style.removeProperty("display");
});
});
let rn = () => {
ze._x_doHide(), ze._x_isShown = !1;
}, nn = () => {
ze._x_doShow(), ze._x_isShown = !0;
}, on = () => setTimeout(nn), un = Os((xn) => xn ? nn() : rn(), (xn) => {
typeof ze._x_toggleAndCascadeWithTransitions == "function" ? ze._x_toggleAndCascadeWithTransitions(ze, xn, nn, rn) : xn ? on() : rn();
}), dn, vn = !0;
en(() => tn((xn) => {
!vn && xn === dn || (Jr.includes("immediate") && (xn ? on() : rn()), un(xn), dn = xn, vn = !1);
}));
}), An("for", (ze, { expression: Jr }, { effect: Kr, cleanup: en }) => {
let tn = Wl(Jr), rn = Pn(ze, tn.items), nn = Pn(ze, ze._x_keyExpression || "index");
ze._x_prevKeys = [], ze._x_lookup = {}, Kr(() => Vl(ze, tn, rn, nn)), en(() => {
Object.values(ze._x_lookup).forEach((on) => on.remove()), delete ze._x_prevKeys, delete ze._x_lookup;
});
});
function Vl(ze, Jr, Kr, en) {
let tn = (nn) => typeof nn == "object" && !Array.isArray(nn), rn = ze;
Kr((nn) => {
Gl(nn) && nn >= 0 && (nn = Array.from(Array(nn).keys(), (gn) => gn + 1)), nn === void 0 && (nn = []);
let on = ze._x_lookup, un = ze._x_prevKeys, dn = [], vn = [];
if (tn(nn)) nn = Object.entries(nn).map(([gn, wn]) => {
let Ln = to(Jr, wn, gn, nn);
en((qn) => {
vn.includes(qn) && Sn("Duplicate key on x-for", ze), vn.push(qn);
}, { scope: { index: gn, ...Ln } }), dn.push(Ln);
});
else for (let gn = 0; gn < nn.length; gn++) {
let wn = to(Jr, nn[gn], gn, nn);
en((Ln) => {
vn.includes(Ln) && Sn("Duplicate key on x-for", ze), vn.push(Ln);
}, { scope: { index: gn, ...wn } }), dn.push(wn);
}
let xn = [], _n = [], kn = [], ui = [];
for (let gn = 0; gn < un.length; gn++) {
let wn = un[gn];
vn.indexOf(wn) === -1 && kn.push(wn);
}
un = un.filter((gn) => !kn.includes(gn));
let fs = "template";
for (let gn = 0; gn < vn.length; gn++) {
let wn = vn[gn], Ln = un.indexOf(wn);
if (Ln === -1) un.splice(gn, 0, wn), xn.push([fs, gn]);
else if (Ln !== gn) {
let qn = un.splice(gn, 1)[0], Dn = un.splice(Ln - 1, 1)[0];
un.splice(gn, 0, Dn), un.splice(Ln, 0, qn), _n.push([qn, Dn]);
} else ui.push(wn);
fs = wn;
}
for (let gn = 0; gn < kn.length; gn++) {
let wn = kn[gn];
on[wn]._x_effects && on[wn]._x_effects.forEach(sn), on[wn].remove(), on[wn] = null, delete on[wn];
}
for (let gn = 0; gn < _n.length; gn++) {
let [wn, Ln] = _n[gn], qn = on[wn], Dn = on[Ln], Oi = document.createElement("div");
Tn(() => {
Dn || Sn('x-for ":key" is undefined or invalid', rn, Ln, on), Dn.after(Oi), qn.after(Dn), Dn._x_currentIfEl && Dn.after(Dn._x_currentIfEl), Oi.before(qn), qn._x_currentIfEl && qn.after(qn._x_currentIfEl), Oi.remove();
}), Dn._x_refreshXForScope(dn[vn.indexOf(Ln)]);
}
for (let gn = 0; gn < xn.length; gn++) {
let [wn, Ln] = xn[gn], qn = wn === "template" ? rn : on[wn];
qn._x_currentIfEl && (qn = qn._x_currentIfEl);
let Dn = dn[Ln], Oi = vn[Ln], Qi = document.importNode(rn.content, !0).firstElementChild, io = fn(Dn);
Pi(Qi, io, rn), Qi._x_refreshXForScope = (Jl) => {
Object.entries(Jl).forEach(([Kl, Zl]) => {
io[Kl] = Zl;
});
}, Tn(() => {
qn.after(Qi), pi(() => zn(Qi))();
}), typeof Oi == "object" && Sn("x-for key cannot be an object, it must be a string or an integer", rn), on[Oi] = Qi;
}
for (let gn = 0; gn < ui.length; gn++) on[ui[gn]]._x_refreshXForScope(dn[vn.indexOf(ui[gn])]);
rn._x_prevKeys = vn;
});
}
function Wl(ze) {
let Jr = /,([^,\}\]]*)(?:,([^,\}\]]*))?$/, Kr = /^\s*\(|\)\s*$/g, en = /([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/, tn = ze.match(en);
if (!tn) return;
let rn = {};
rn.items = tn[2].trim();
let nn = tn[1].replace(Kr, "").trim(), on = nn.match(Jr);
return on ? (rn.item = nn.replace(Jr, "").trim(), rn.index = on[1].trim(), on[2] && (rn.collection = on[2].trim())) : rn.item = nn, rn;
}
function to(ze, Jr, Kr, en) {
let tn = {};
return /^\[.*\]$/.test(ze.item) && Array.isArray(Jr) ? ze.item.replace("[", "").replace("]", "").split(",").map((rn) => rn.trim()).forEach((rn, nn) => {
tn[rn] = Jr[nn];
}) : /^\{.*\}$/.test(ze.item) && !Array.isArray(Jr) && typeof Jr == "object" ? ze.item.replace("{", "").replace("}", "").split(",").map((rn) => rn.trim()).forEach((rn) => {
tn[rn] = Jr[rn];
}) : tn[ze.item] = Jr, ze.index && (tn[ze.index] = Kr), ze.collection && (tn[ze.collection] = en), tn;
}
function Gl(ze) {
return !Array.isArray(ze) && !isNaN(ze);
}
function ro() {
}
ro.inline = (ze, { expression: Jr }, { cleanup: Kr }) => {
let en = Qn(ze);
en._x_refs || (en._x_refs = {}), en._x_refs[Jr] = ze, Kr(() => delete en._x_refs[Jr]);
}, An("ref", ro), An("if", (ze, { expression: Jr }, { effect: Kr, cleanup: en }) => {
ze.tagName.toLowerCase() !== "template" && Sn("x-if can only be used on a <template> tag", ze);
let tn = Pn(ze, Jr), rn = () => {
if (ze._x_currentIfEl) return ze._x_currentIfEl;
let on = ze.content.cloneNode(!0).firstElementChild;
return Pi(on, {}, ze), Tn(() => {
ze.after(on), pi(() => zn(on))();
}), ze._x_currentIfEl = on, ze._x_undoIf = () => {
Cn(on, (un) => {
un._x_effects && un._x_effects.forEach(sn);
}), on.remove(), delete ze._x_currentIfEl;
}, on;
}, nn = () => {
ze._x_undoIf && (ze._x_undoIf(), delete ze._x_undoIf);
};
Kr(() => tn((on) => {
on ? rn() : nn();
})), en(() => ze._x_undoIf && ze._x_undoIf());
}), An("id", (ze, { expression: Jr }, { evaluate: Kr }) => {
Kr(Jr).forEach((en) => ql(ze, en));
}), Yi((ze, Jr) => {
ze._x_ids && (Jr._x_ids = ze._x_ids);
}), ws(aa("@", oa(Ai("on:")))), An("on", pi((ze, { value: Jr, modifiers: Kr, expression: en }, { cleanup: tn }) => {
let rn = en ? Pn(ze, en) : () => {
};
ze.tagName.toLowerCase() === "template" && (ze._x_forwardEvents || (ze._x_forwardEvents = []), ze._x_forwardEvents.includes(Jr) || ze._x_forwardEvents.push(Jr));
let nn = Qs(ze, Jr, Kr, (on) => {
rn(() => {
}, { scope: { $event: on }, params: [on] });
});
tn(() => nn());
})), cs("Collapse", "collapse", "collapse"), cs("Intersect", "intersect", "intersect"), cs("Focus", "trap", "focus"), cs("Mask", "mask", "mask");
function cs(ze, Jr, Kr) {
An(Jr, (en) => Sn(`You can't use [x-${Jr}] without first installing the "${ze}" plugin here: https://alpinejs.dev/plugins/${Kr}`, en));
}
Fi.setEvaluator(ra), Fi.setReactivityEngine({ reactive: Fs, effect: al, release: ol, raw: yn });
var no = Fi;
window.Alpine = no, queueMicrotask(() => {
no.start();
});
})();
(function(Qr, Wr) {
typeof define == "function" && define.amd ? define([], Wr) : typeof module == "object" && module.exports ? module.exports = Wr() : Qr.htmx = Qr.htmx || Wr();
})(typeof self < "u" ? self : void 0, function() {
return function() {
var Q = { onLoad: B, process: zt, on: de, off: ge, trigger: ce, ajax: Nr, find: C, findAll: f, closest: v, values: function(Qr, Wr) {
var Gr = dr(Qr, Wr || "post");
return Gr.values;
}, remove: _, addClass: z, removeClass: n, toggleClass: $, takeClass: W, defineExtension: Ur, removeExtension: Fr, logAll: V, logNone: j, logger: null, config: { historyEnabled: !0, historyCacheSize: 10, refreshOnHistoryMiss: !1, defaultSwapStyle: "innerHTML", defaultSwapDelay: 0, defaultSettleDelay: 20, includeIndicatorStyles: !0, indicatorClass: "htmx-indicator", requestClass: "htmx-request", addedClass: "htmx-added", settlingClass: "htmx-settling", swappingClass: "htmx-swapping", allowEval: !0, allowScriptTags: !0, inlineScriptNonce: "", attributesToSettle: ["class", "style", "width", "height"], withCredentials: !1, timeout: 0, wsReconnectDelay: "full-jitter", wsBinaryType: "blob", disableSelector: "[hx-disable], [data-hx-disable]", useTemplateFragments: !1, scrollBehavior: "smooth", defaultFocusScroll: !1, getCacheBusterParam: !1, globalViewTransitions: !1, methodsThatUseUrlParams: ["get"], selfRequestsOnly: !1, ignoreTitle: !1, scrollIntoViewOnBoost: !0, triggerSpecsCache: null }, parseInterval: d, _: t, createEventSource: function(Qr) {
return new EventSource(Qr, { withCredentials: !0 });
}, createWebSocket: function(Qr) {
var Wr = new WebSocket(Qr, []);
return Wr.binaryType = Q.config.wsBinaryType, Wr;
}, version: "1.9.11" }, r = { addTriggerHandler: Lt, bodyContains: se, canAccessLocalStorage: U, findThisElement: xe, filterValues: yr, hasAttribute: o, getAttributeValue: te, getClosestAttributeValue: ne, getClosestMatch: c, getExpressionVars: Hr, getHeaders: xr, getInputValues: dr, getInternalData: ae, getSwapSpecification: wr, getTriggerSpecs: it, getTarget: ye, makeFragment: l, mergeObjects: le, makeSettleInfo: T, oobSwap: Ee, querySelectorExt: ue, selectAndSwap: je, settleImmediately: nr, shouldCancel: ut, triggerEvent: ce, triggerErrorEvent: fe, withExtensions: R }, w = ["get", "post", "put", "delete", "patch"], i = w.map(function(Qr) {
return "[hx-" + Qr + "], [data-hx-" + Qr + "]";
}).join(", "), S = e("head"), q = e("title"), H = e("svg", !0);
function e(Qr, Wr = !1) {
return new RegExp(`<${Qr}(\\s[^>]*>|>)([\\s\\S]*?)<\\/${Qr}>`, Wr ? "gim" : "im");
}
function d(Qr) {
if (Qr == null)
return;
let Wr = NaN;
return Qr.slice(-2) == "ms" ? Wr = parseFloat(Qr.slice(0, -2)) : Qr.slice(-1) == "s" ? Wr = parseFloat(Qr.slice(0, -1)) * 1e3 : Qr.slice(-1) == "m" ? Wr = parseFloat(Qr.slice(0, -1)) * 1e3 * 60 : Wr = parseFloat(Qr), isNaN(Wr) ? void 0 : Wr;
}
function ee(Qr, Wr) {
return Qr.getAttribute && Qr.getAttribute(Wr);
}
function o(Qr, Wr) {
return Qr.hasAttribute && (Qr.hasAttribute(Wr) || Qr.hasAttribute("data-" + Wr));
}
function te(Qr, Wr) {
return ee(Qr, Wr) || ee(Qr, "data-" + Wr);
}
function u(Qr) {
return Qr.parentElement;
}
function re() {
return document;
}
function c(Qr, Wr) {
for (; Qr && !Wr(Qr); )
Qr = u(Qr);
return Qr || null;
}
function L(Qr, Wr, Gr) {
var Zr = te(Wr, Gr), Yr = te(Wr, "hx-disinherit");
return Qr !== Wr && Yr && (Yr === "*" || Yr.split(" ").indexOf(Gr) >= 0) ? "unset" : Zr;
}
function ne(Qr, Wr) {
var Gr = null;
if (c(Qr, function(Zr) {
return Gr = L(Qr, Zr, Wr);
}), Gr !== "unset")
return Gr;
}
function h(Qr, Wr) {
var Gr = Qr.matches || Qr.matchesSelector || Qr.msMatchesSelector || Qr.mozMatchesSelector || Qr.webkitMatchesSelector || Qr.oMatchesSelector;
return Gr && Gr.call(Qr, Wr);
}
function A(Qr) {
var Wr = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i, Gr = Wr.exec(Qr);
return Gr ? Gr[1].toLowerCase() : "";
}
function s(Qr, Wr) {
for (var Gr = new DOMParser(), Zr = Gr.parseFromString(Qr, "text/html"), Yr = Zr.body; Wr > 0; )
Wr--, Yr = Yr.firstChild;
return Yr == null && (Yr = re().createDocumentFragment()), Yr;
}
function N(Qr) {
return /<body/.test(Qr);
}
function l(Qr) {
var Wr = !N(Qr), Gr = A(Qr), Zr = Qr;
if (Gr === "head" && (Zr = Zr.replace(S, "")), Q.config.useTemplateFragments && Wr) {
var Yr = s("<body><template>" + Zr + "</template></body>", 0), an = Yr.querySelector("template").content;
return Q.config.allowScriptTags ? oe(an.querySelectorAll("script"), function(sn) {
Q.config.inlineScriptNonce && (sn.nonce = Q.config.inlineScriptNonce), sn.htmxExecuted = navigator.userAgent.indexOf("Firefox") === -1;
}) : oe(an.querySelectorAll("script"), function(sn) {
_(sn);
}), an;
}
switch (Gr) {
case "thead":
case "tbody":
case "tfoot":
case "colgroup":
case "caption":
return s("<table>" + Zr + "</table>", 1);
case "col":
return s("<table><colgroup>" + Zr + "</colgroup></table>", 2);
case "tr":
return s("<table><tbody>" + Zr + "</tbody></table>", 2);
case "td":
case "th":
return s("<table><tbody><tr>" + Zr + "</tr></tbody></table>", 3);
case "script":
case "style":
return s("<div>" + Zr + "</div>", 1);
default:
return s(Zr, 0);
}
}
function ie(Qr) {
Qr && Qr();
}
function I(Qr, Wr) {
return Object.prototype.toString.call(Qr) === "[object " + Wr + "]";
}
function k(Qr) {
return I(Qr, "Function");
}
function P(Qr) {
return I(Qr, "Object");
}
function ae(Qr) {
var Wr = "htmx-internal-data", Gr = Qr[Wr];
return Gr || (Gr = Qr[Wr] = {}), Gr;
}
function M(Qr) {
var Wr = [];
if (Qr)
for (var Gr = 0; Gr < Qr.length; Gr++)
Wr.push(Qr[Gr]);
return Wr;
}
function oe(Qr, Wr) {
if (Qr)
for (var Gr = 0; Gr < Qr.length; Gr++)
Wr(Qr[Gr]);
}
function X(Qr) {
var Wr = Qr.getBoundingClientRect(), Gr = Wr.top, Zr = Wr.bottom;
return Gr < window.innerHeight && Zr >= 0;
}
function se(Qr) {
return Qr.getRootNode && Qr.getRootNode() instanceof window.ShadowRoot ? re().body.contains(Qr.getRootNode().host) : re().body.contains(Qr);
}
function D(Qr) {
return Qr.trim().split(/\s+/);
}
function le(Qr, Wr) {
for (var Gr in Wr)
Wr.hasOwnProperty(Gr) && (Qr[Gr] = Wr[Gr]);
return Qr;
}
function E(Qr) {
try {
return JSON.parse(Qr);
} catch (Wr) {
return b(Wr), null;
}
}
function U() {
var Qr = "htmx:localStorageTest";
try {
return localStorage.setItem(Qr, Qr), localStorage.removeItem(Qr), !0;
} catch {
return !1;
}
}
function F(Qr) {
try {
var Wr = new URL(Qr);
return Wr && (Qr = Wr.pathname + Wr.search), /^\/$/.test(Qr) || (Qr = Qr.replace(/\/+$/, "")), Qr;
} catch {
return Qr;
}
}
function t(e) {
return Tr(re().body, function() {
return eval(e);
});
}
function B(Qr) {
var Wr = Q.on("htmx:load", function(Gr) {
Qr(Gr.detail.elt);
});
return Wr;
}
function V() {
Q.logger = function(Qr, Wr, Gr) {
console && console.log(Wr, Qr, Gr);
};
}
function j() {
Q.logger = null;
}
function C(Qr, Wr) {
return Wr ? Qr.querySelector(Wr) : C(re(), Qr);
}
function f(Qr, Wr) {
return Wr ? Qr.querySelectorAll(Wr) : f(re(), Qr);
}
function _(Qr, Wr) {
Qr = p(Qr), Wr ? setTimeout(function() {
_(Qr), Qr = null;
}, Wr) : Qr.parentElement.removeChild(Qr);
}
function z(Qr, Wr, Gr) {
Qr = p(Qr), Gr ? setTimeout(function() {
z(Qr, Wr), Qr = null;
}, Gr) : Qr.classList && Qr.classList.add(Wr);
}
function n(Qr, Wr, Gr) {
Qr = p(Qr), Gr ? setTimeout(function() {
n(Qr, Wr), Qr = null;
}, Gr) : Qr.classList && (Qr.classList.remove(Wr), Qr.classList.length === 0 && Qr.removeAttribute("class"));
}
function $(Qr, Wr) {
Qr = p(Qr), Qr.classList.toggle(Wr);
}
function W(Qr, Wr) {
Qr = p(Qr), oe(Qr.parentElement.children, function(Gr) {
n(Gr, Wr);
}), z(Qr, Wr);
}
function v(Qr, Wr) {
if (Qr = p(Qr), Qr.closest)
return Qr.closest(Wr);
do
if (Qr == null || h(Qr, Wr))
return Qr;
while (Qr = Qr && u(Qr));
return null;
}
function g(Qr, Wr) {
return Qr.substring(0, Wr.length) === Wr;
}
function G(Qr, Wr) {
return Qr.substring(Qr.length - Wr.length) === Wr;
}
function J(Qr) {
var Wr = Qr.trim();
return g(Wr, "<") && G(Wr, "/>") ? Wr.substring(1, Wr.length - 2) : Wr;
}
function Z(Qr, Wr) {
return Wr.indexOf("closest ") === 0 ? [v(Qr, J(Wr.substr(8)))] : Wr.indexOf("find ") === 0 ? [C(Qr, J(Wr.substr(5)))] : Wr === "next" ? [Qr.nextElementSibling] : Wr.indexOf("next ") === 0 ? [K(Qr, J(Wr.substr(5)))] : Wr === "previous" ? [Qr.previousElementSibling] : Wr.indexOf("previous ") === 0 ? [Y(Qr, J(Wr.substr(9)))] : Wr === "document" ? [document] : Wr === "window" ? [window] : Wr === "body" ? [document.body] : re().querySelectorAll(J(Wr));
}
var K = function(Qr, Wr) {
for (var Gr = re().querySelectorAll(Wr), Zr = 0; Zr < Gr.length; Zr++) {
var Yr = Gr[Zr];
if (Yr.compareDocumentPosition(Qr) === Node.DOCUMENT_POSITION_PRECEDING)
return Yr;
}
}, Y = function(Qr, Wr) {
for (var Gr = re().querySelectorAll(Wr), Zr = Gr.length - 1; Zr >= 0; Zr--) {
var Yr = Gr[Zr];
if (Yr.compareDocumentPosition(Qr) === Node.DOCUMENT_POSITION_FOLLOWING)
return Yr;
}
};
function ue(Qr, Wr) {
return Wr ? Z(Qr, Wr)[0] : Z(re().body, Qr)[0];
}
function p(Qr) {
return I(Qr, "String") ? C(Qr) : Qr;
}
function ve(Qr, Wr, Gr) {
return k(Wr) ? { target: re().body, event: Qr, listener: Wr } : { target: p(Qr), event: Wr, listener: Gr };
}
function de(Qr, Wr, Gr) {
jr(function() {
var Yr = ve(Qr, Wr, Gr);
Yr.target.addEventListener(Yr.event, Yr.listener);
});
var Zr = k(Wr);
return Zr ? Wr : Gr;
}
function ge(Qr, Wr, Gr) {
return jr(function() {
var Zr = ve(Qr, Wr, Gr);
Zr.target.removeEventListener(Zr.event, Zr.listener);
}), k(Wr) ? Wr : Gr;
}
var pe = re().createElement("output");
function me(Qr, Wr) {
var Gr = ne(Qr, Wr);
if (Gr) {
if (Gr === "this")
return [xe(Qr, Wr)];
var Zr = Z(Qr, Gr);
return Zr.length === 0 ? (b('The selector "' + Gr + '" on ' + Wr + " returned no matches!"), [pe]) : Zr;
}
}
function xe(Qr, Wr) {
return c(Qr, function(Gr) {
return te(Gr, Wr) != null;
});
}
function ye(Qr) {
var Wr = ne(Qr, "hx-target");
if (Wr)
return Wr === "this" ? xe(Qr, "hx-target") : ue(Qr, Wr);
var Gr = ae(Qr);
return Gr.boosted ? re().body : Qr;
}
function be(Qr) {
for (var Wr = Q.config.attributesToSettle, Gr = 0; Gr < Wr.length; Gr++)
if (Qr === Wr[Gr])
return !0;
return !1;
}
function we(Qr, Wr) {
oe(Qr.attributes, function(Gr) {
!Wr.hasAttribute(Gr.name) && be(Gr.name) && Qr.removeAttribute(Gr.name);
}), oe(Wr.attributes, function(Gr) {
be(Gr.name) && Qr.setAttribute(Gr.name, Gr.value);
});
}
function Se(Qr, Wr) {
for (var Gr = Br(Wr), Zr = 0; Zr < Gr.length; Zr++) {
var Yr = Gr[Zr];
try {
if (Yr.isInlineSwap(Qr))
return !0;
} catch (an) {
b(an);
}
}
return Qr === "outerHTML";
}
function Ee(Qr, Wr, Gr) {
var Zr = "#" + ee(Wr, "id"), Yr = "outerHTML";
Qr === "true" || (Qr.indexOf(":") > 0 ? (Yr = Qr.substr(0, Qr.indexOf(":")), Zr = Qr.substr(Qr.indexOf(":") + 1, Qr.length)) : Yr = Qr);
var an = re().querySelectorAll(Zr);
return an ? (oe(an, function(sn) {
var ln, cn = Wr.cloneNode(!0);
ln = re().createDocumentFragment(), ln.appendChild(cn), Se(Yr, sn) || (ln = cn);
var fn = { shouldSwap: !0, target: sn, fragment: ln };
ce(sn, "htmx:oobBeforeSwap", fn) && (sn = fn.target, fn.shouldSwap && Be(Yr, sn, sn, ln, Gr), oe(Gr.elts, function(hn) {
ce(hn, "htmx:oobAfterSwap", fn);
}));
}), Wr.parentNode.removeChild(Wr)) : (Wr.parentNode.removeChild(Wr), fe(re().body, "htmx:oobErrorNoTarget", { content: Wr })), Qr;
}
function Ce(Qr, Wr, Gr) {
var Zr = ne(Qr, "hx-select-oob");
if (Zr)
for (var Yr = Zr.split(","), an = 0; an < Yr.length; an++) {
var sn = Yr[an].split(":", 2), ln = sn[0].trim();
ln.indexOf("#") === 0 && (ln = ln.substring(1));
var cn = sn[1] || "true", fn = Wr.querySelector("#" + ln);
fn && Ee(cn, fn, Gr);
}
oe(f(Wr, "[hx-swap-oob], [data-hx-swap-oob]"), function(hn) {
var pn = te(hn, "hx-swap-oob");
pn != null && Ee(pn, hn, Gr);
});
}
function Re(Qr) {
oe(f(Qr, "[hx-preserve], [data-hx-preserve]"), function(Wr) {
var Gr = te(Wr, "id"), Zr = re().getElementById(Gr);
Zr != null && Wr.parentNode.replaceChild(Zr, Wr);
});
}
function Te(Qr, Wr, Gr) {
oe(Wr.querySelectorAll("[id]"), function(Zr) {
var Yr = ee(Zr, "id");
if (Yr && Yr.length > 0) {
var an = Yr.replace("'", "\\'"), sn = Zr.tagName.replace(":", "\\:"), ln = Qr.querySelector(sn + "[id='" + an + "']");
if (ln && ln !== Qr) {
var cn = Zr.cloneNode();
we(Zr, ln), Gr.tasks.push(function() {
we(Zr, cn);
});
}
}
});
}
function Oe(Qr) {
return function() {
n(Qr, Q.config.addedClass), zt(Qr), Nt(Qr), qe(Qr), ce(Qr, "htmx:load");
};
}
function qe(Qr) {
var Wr = "[autofocus]", Gr = h(Qr, Wr) ? Qr : Qr.querySelector(Wr);
Gr != null && Gr.focus();
}
function a(Qr, Wr, Gr, Zr) {
for (Te(Qr, Gr, Zr); Gr.childNodes.length > 0; ) {
var Yr = Gr.firstChild;
z(Yr, Q.config.addedClass), Qr.insertBefore(Yr, Wr), Yr.nodeType !== Node.TEXT_NODE && Yr.nodeType !== Node.COMMENT_NODE && Zr.tasks.push(Oe(Yr));
}
}
function He(Qr, Wr) {
for (var Gr = 0; Gr < Qr.length; )
Wr = (Wr << 5) - Wr + Qr.charCodeAt(Gr++) | 0;
return Wr;
}
function Le(Qr) {
var Wr = 0;
if (Qr.attributes)
for (var Gr = 0; Gr < Qr.attributes.length; Gr++) {
var Zr = Qr.attributes[Gr];
Zr.value && (Wr = He(Zr.name, Wr), Wr = He(Zr.value, Wr));
}
return Wr;
}
function Ae(Qr) {
var Wr = ae(Qr);
if (Wr.onHandlers) {
for (var Gr = 0; Gr < Wr.onHandlers.length; Gr++) {
const Zr = Wr.onHandlers[Gr];
Qr.removeEventListener(Zr.event, Zr.listener);
}
delete Wr.onHandlers;
}
}
function Ne(Qr) {
var Wr = ae(Qr);
Wr.timeout && clearTimeout(Wr.timeout), Wr.webSocket && Wr.webSocket.close(), Wr.sseEventSource && Wr.sseEventSource.close(), Wr.listenerInfos && oe(Wr.listenerInfos, function(Gr) {
Gr.on && Gr.on.removeEventListener(Gr.trigger, Gr.listener);
}), Ae(Qr), oe(Object.keys(Wr), function(Gr) {
delete Wr[Gr];
});
}
function m(Qr) {
ce(Qr, "htmx:beforeCleanupElement"), Ne(Qr), Qr.children && oe(Qr.children, function(Wr) {
m(Wr);
});
}
function Ie(Qr, Wr, Gr) {
if (Qr.tagName === "BODY")
return Ue(Qr, Wr, Gr);
var Zr, Yr = Qr.previousSibling;
for (a(u(Qr), Qr, Wr, Gr), Yr == null ? Zr = u(Qr).firstChild : Zr = Yr.nextSibling, Gr.elts = Gr.elts.filter(function(an) {
return an != Qr;
}); Zr && Zr !== Qr; )
Zr.nodeType === Node.ELEMENT_NODE && Gr.elts.push(Zr), Zr = Zr.nextElementSibling;
m(Qr), u(Qr).removeChild(Qr);
}
function ke(Qr, Wr, Gr) {
return a(Qr, Qr.firstChild, Wr, Gr);
}
function Pe(Qr, Wr, Gr) {
return a(u(Qr), Qr, Wr, Gr);
}
function Me(Qr, Wr, Gr) {
return a(Qr, null, Wr, Gr);
}
function Xe(Qr, Wr, Gr) {
return a(u(Qr), Qr.nextSibling, Wr, Gr);
}
function De(Qr, Wr, Gr) {
return m(Qr), u(Qr).removeChild(Qr);
}
function Ue(Qr, Wr, Gr) {
var Zr = Qr.firstChild;
if (a(Qr, Zr, Wr, Gr), Zr) {
for (; Zr.nextSibling; )
m(Zr.nextSibling), Qr.removeChild(Zr.nextSibling);
m(Zr), Qr.removeChild(Zr);
}
}
function Fe(Qr, Wr, Gr) {
var Zr = Gr || ne(Qr, "hx-select");
if (Zr) {
var Yr = re().createDocumentFragment();
oe(Wr.querySelectorAll(Zr), function(an) {
Yr.appendChild(an);
}), Wr = Yr;
}
return Wr;
}
function Be(Qr, Wr, Gr, Zr, Yr) {
switch (Qr) {
case "none":
return;
case "outerHTML":
Ie(Gr, Zr, Yr);
return;
case "afterbegin":
ke(Gr, Zr, Yr);
return;
case "beforebegin":
Pe(Gr, Zr, Yr);
return;
case "beforeend":
Me(Gr, Zr, Yr);
return;
case "afterend":
Xe(Gr, Zr, Yr);
return;
case "delete":
De(Gr);
return;
default:
for (var an = Br(Wr), sn = 0; sn < an.length; sn++) {
var ln = an[sn];
try {
var cn = ln.handleSwap(Qr, Gr, Zr, Yr);
if (cn) {
if (typeof cn.length < "u")
for (var fn = 0; fn < cn.length; fn++) {
var hn = cn[fn];
hn.nodeType !== Node.TEXT_NODE && hn.nodeType !== Node.COMMENT_NODE && Yr.tasks.push(Oe(hn));
}
return;
}
} catch (pn) {
b(pn);
}
}
Qr === "innerHTML" ? Ue(Gr, Zr, Yr) : Be(Q.config.defaultSwapStyle, Wr, Gr, Zr, Yr);
}
}
function Ve(Qr) {
if (Qr.indexOf("<title") > -1) {
var Wr = Qr.replace(H, ""), Gr = Wr.match(q);
if (Gr)
return Gr[2];
}
}
function je(Qr, Wr, Gr, Zr, Yr, an) {
Yr.title = Ve(Zr);
var sn = l(Zr);
if (sn)
return Ce(Gr, sn, Yr), sn = Fe(Gr, sn, an), Re(sn), Be(Qr, Gr, Wr, sn, Yr);
}
function _e(Qr, Wr, Gr) {
var Zr = Qr.getResponseHeader(Wr);
if (Zr.indexOf("{") === 0) {
var Yr = E(Zr);
for (var an in Yr)
if (Yr.hasOwnProperty(an)) {
var sn = Yr[an];
P(sn) || (sn = { value: sn }), ce(Gr, an, sn);
}
} else
for (var ln = Zr.split(","), cn = 0; cn < ln.length; cn++)
ce(Gr, ln[cn].trim(), []);
}
var x = /[\s,]/, $e = /[_$a-zA-Z]/, We = /[_$a-zA-Z0-9]/, Ge = ['"', "'", "/"], Je = /[^\s]/, Ze = /[{(]/, Ke = /[})]/;
function Ye(Qr) {
for (var Wr = [], Gr = 0; Gr < Qr.length; ) {
if ($e.exec(Qr.charAt(Gr))) {
for (var Zr = Gr; We.exec(Qr.charAt(Gr + 1)); )
Gr++;
Wr.push(Qr.substr(Zr, Gr - Zr + 1));
} else if (Ge.indexOf(Qr.charAt(Gr)) !== -1) {
var Yr = Qr.charAt(Gr), Zr = Gr;
for (Gr++; Gr < Qr.length && Qr.charAt(Gr) !== Yr; )
Qr.charAt(Gr) === "\\" && Gr++, Gr++;
Wr.push(Qr.substr(Zr, Gr - Zr + 1));
} else {
var an = Qr.charAt(Gr);
Wr.push(an);
}
Gr++;
}
return Wr;
}
function Qe(Qr, Wr, Gr) {
return $e.exec(Qr.charAt(0)) && Qr !== "true" && Qr !== "false" && Qr !== "this" && Qr !== Gr && Wr !== ".";
}
function et(Qr, Wr, Gr) {
if (Wr[0] === "[") {
Wr.shift();
for (var Zr = 1, Yr = " return (function(" + Gr + "){ return (", an = null; Wr.length > 0; ) {
var sn = Wr[0];
if (sn === "]") {
if (Zr--, Zr === 0) {
an === null && (Yr = Yr + "true"), Wr.shift(), Yr += ")})";
try {
var ln = Tr(Qr, function() {
return Function(Yr)();
}, function() {
return !0;
});
return ln.source = Yr, ln;
} catch (cn) {
return fe(re().body, "htmx:syntax:error", { error: cn, source: Yr }), null;
}
}
} else sn === "[" && Zr++;
Qe(sn, an, Gr) ? Yr += "((" + Gr + "." + sn + ") ? (" + Gr + "." + sn + ") : (window." + sn + "))" : Yr = Yr + sn, an = Wr.shift();
}
}
}
function y(Qr, Wr) {
for (var Gr = ""; Qr.length > 0 && !Wr.test(Qr[0]); )
Gr += Qr.shift();
return Gr;
}
function tt(Qr) {
var Wr;
return Qr.length > 0 && Ze.test(Qr[0]) ? (Qr.shift(), Wr = y(Qr, Ke).trim(), Qr.shift()) : Wr = y(Qr, x), Wr;
}
var rt = "input, textarea, select";
function nt(Qr, Wr, Gr) {
var Zr = [], Yr = Ye(Wr);
do {
y(Yr, Je);
var an = Yr.length, sn = y(Yr, /[,\[\s]/);
if (sn !== "")
if (sn === "every") {
var ln = { trigger: "every" };
y(Yr, Je), ln.pollInterval = d(y(Yr, /[,\[\s]/)), y(Yr, Je);
var cn = et(Qr, Yr, "event");
cn && (ln.eventFilter = cn), Zr.push(ln);
} else if (sn.indexOf("sse:") === 0)
Zr.push({ trigger: "sse", sseEvent: sn.substr(4) });
else {
var fn = { trigger: sn }, cn = et(Qr, Yr, "event");
for (cn && (fn.eventFilter = cn); Yr.length > 0 && Yr[0] !== ","; ) {
y(Yr, Je);
var hn = Yr.shift();
if (hn === "changed")
fn.changed = !0;
else if (hn === "once")
fn.once = !0;
else if (hn === "consume")
fn.consume = !0;
else if (hn === "delay" && Yr[0] === ":")
Yr.shift(), fn.delay = d(y(Yr, x));
else if (hn === "from" && Yr[0] === ":") {
if (Yr.shift(), Ze.test(Yr[0]))
var pn = tt(Yr);
else {
var pn = y(Yr, x);
if (pn === "closest" || pn === "find" || pn === "next" || pn === "previous") {
Yr.shift();
var mn = tt(Yr);
mn.length > 0 && (pn += " " + mn);
}
}
fn.from = pn;
} else hn === "target" && Yr[0] === ":" ? (Yr.shift(), fn.target = tt(Yr)) : hn === "throttle" && Yr[0] === ":" ? (Yr.shift(), fn.throttle = d(y(Yr, x))) : hn === "queue" && Yr[0] === ":" ? (Yr.shift(), fn.queue = y(Yr, x)) : hn === "root" && Yr[0] === ":" ? (Yr.shift(), fn[hn] = tt(Yr)) : hn === "threshold" && Yr[0] === ":" ? (Yr.shift(), fn[hn] = y(Yr, x)) : fe(Qr, "htmx:syntax:error", { token: Yr.shift() });
}
Zr.push(fn);
}
Yr.length === an && fe(Qr, "htmx:syntax:error", { token: Yr.shift() }), y(Yr, Je);
} while (Yr[0] === "," && Yr.shift());
return Gr && (Gr[Wr] = Zr), Zr;
}
function it(Qr) {
var Wr = te(Qr, "hx-trigger"), Gr = [];
if (Wr) {
var Zr = Q.config.triggerSpecsCache;
Gr = Zr && Zr[Wr] || nt(Qr, Wr, Zr);
}
return Gr.length > 0 ? Gr : h(Qr, "form") ? [{ trigger: "submit" }] : h(Qr, 'input[type="button"], input[type="submit"]') ? [{ trigger: "click" }] : h(Qr, rt) ? [{ trigger: "change" }] : [{ trigger: "click" }];
}
function at(Qr) {
ae(Qr).cancelled = !0;
}
function ot(Qr, Wr, Gr) {
var Zr = ae(Qr);
Zr.timeout = setTimeout(function() {
se(Qr) && Zr.cancelled !== !0 && (ct(Gr, Qr, Wt("hx:poll:trigger", { triggerSpec: Gr, target: Qr })) || Wr(Qr), ot(Qr, Wr, Gr));
}, Gr.pollInterval);
}
function st(Qr) {
return location.hostname === Qr.hostname && ee(Qr, "href") && ee(Qr, "href").indexOf("#") !== 0;
}
function lt(Qr, Wr, Gr) {
if (Qr.tagName === "A" && st(Qr) && (Qr.target === "" || Qr.target === "_self") || Qr.tagName === "FORM") {
Wr.boosted = !0;
var Zr, Yr;
if (Qr.tagName === "A")
Zr = "get", Yr = ee(Qr, "href");
else {
var an = ee(Qr, "method");
Zr = an ? an.toLowerCase() : "get", Yr = ee(Qr, "action");
}
Gr.forEach(function(sn) {
ht(Qr, function(ln, cn) {
if (v(ln, Q.config.disableSelector)) {
m(ln);
return;
}
he(Zr, Yr, ln, cn);
}, Wr, sn, !0);
});
}
}
function ut(Qr, Wr) {
return !!((Qr.type === "submit" || Qr.type === "click") && (Wr.tagName === "FORM" || h(Wr, 'input[type="submit"], button') && v(Wr, "form") !== null || Wr.tagName === "A" && Wr.href && (Wr.getAttribute("href") === "#" || Wr.getAttribute("href").indexOf("#") !== 0)));
}
function ft(Qr, Wr) {
return ae(Qr).boosted && Qr.tagName === "A" && Wr.type === "click" && (Wr.ctrlKey || Wr.metaKey);
}
function ct(Qr, Wr, Gr) {
var Zr = Qr.eventFilter;
if (Zr)
try {
return Zr.call(Wr, Gr) !== !0;
} catch (Yr) {
return fe(re().body, "htmx:eventFilter:error", { error: Yr, source: Zr.source }), !0;
}
return !1;
}
function ht(Qr, Wr, Gr, Zr, Yr) {
var an = ae(Qr), sn;
Zr.from ? sn = Z(Qr, Zr.from) : sn = [Qr], Zr.changed && sn.forEach(function(ln) {
var cn = ae(ln);
cn.lastValue = ln.value;
}), oe(sn, function(ln) {
var cn = function(fn) {
if (!se(Qr)) {
ln.removeEventListener(Zr.trigger, cn);
return;
}
if (!ft(Qr, fn) && ((Yr || ut(fn, Qr)) && fn.preventDefault(), !ct(Zr, Qr, fn))) {
var hn = ae(fn);
if (hn.triggerSpec = Zr, hn.handledFor == null && (hn.handledFor = []), hn.handledFor.indexOf(Qr) < 0) {
if (hn.handledFor.push(Qr), Zr.consume && fn.stopPropagation(), Zr.target && fn.target && !h(fn.target, Zr.target))
return;
if (Zr.once) {
if (an.triggeredOnce)
return;
an.triggeredOnce = !0;
}
if (Zr.changed) {
var pn = ae(ln);
if (pn.lastValue === ln.value)
return;
pn.lastValue = ln.value;
}
if (an.delayed && clearTimeout(an.delayed), an.throttle)
return;
Zr.throttle > 0 ? an.throttle || (Wr(Qr, fn), an.throttle = setTimeout(function() {
an.throttle = null;
}, Zr.throttle)) : Zr.delay > 0 ? an.delayed = setTimeout(function() {
Wr(Qr, fn);
}, Zr.delay) : (ce(Qr, "htmx:trigger"), Wr(Qr, fn));
}
}
};
Gr.listenerInfos == null && (Gr.listenerInfos = []), Gr.listenerInfos.push({ trigger: Zr.trigger, listener: cn, on: ln }), ln.addEventListener(Zr.trigger, cn);
});
}
var vt = !1, dt = null;
function gt() {
dt || (dt = function() {
vt = !0;
}, window.addEventListener("scroll", dt), setInterval(function() {
vt && (vt = !1, oe(re().querySelectorAll("[hx-trigger='revealed'],[data-hx-trigger='revealed']"), function(Qr) {
pt(Qr);
}));
}, 200));
}
function pt(Qr) {
if (!o(Qr, "data-hx-revealed") && X(Qr)) {
Qr.setAttribute("data-hx-revealed", "true");
var Wr = ae(Qr);
Wr.initHash ? ce(Qr, "revealed") : Qr.addEventListener("htmx:afterProcessNode", function(Gr) {
ce(Qr, "revealed");
}, { once: !0 });
}
}
function mt(Qr, Wr, Gr) {
for (var Zr = D(Gr), Yr = 0; Yr < Zr.length; Yr++) {
var an = Zr[Yr].split(/:(.+)/);
an[0] === "connect" && xt(Qr, an[1], 0), an[0] === "send" && bt(Qr);
}
}
function xt(Qr, Wr, Gr) {
if (se(Qr)) {
if (Wr.indexOf("/") == 0) {
var Zr = location.hostname + (location.port ? ":" + location.port : "");
location.protocol == "https:" ? Wr = "wss://" + Zr + Wr : location.protocol == "http:" && (Wr = "ws://" + Zr + Wr);
}
var Yr = Q.createWebSocket(Wr);
Yr.onerror = function(an) {
fe(Qr, "htmx:wsError", { error: an, socket: Yr }), yt(Qr);
}, Yr.onclose = function(an) {
if ([1006, 1012, 1013].indexOf(an.code) >= 0) {
var sn = wt(Gr);
setTimeout(function() {
xt(Qr, Wr, Gr + 1);
}, sn);
}
}, Yr.onopen = function(an) {
Gr = 0;
}, ae(Qr).webSocket = Yr, Yr.addEventListener("message", function(an) {
if (!yt(Qr)) {
var sn = an.data;
R(Qr, function(mn) {
sn = mn.transformResponse(sn, null, Qr);
});
for (var ln = T(Qr), cn = l(sn), fn = M(cn.children), hn = 0; hn < fn.length; hn++) {
var pn = fn[hn];
Ee(te(pn, "hx-swap-oob") || "true", pn, ln);
}
nr(ln.tasks);
}
});
}
}
function yt(Qr) {
if (!se(Qr))
return ae(Qr).webSocket.close(), !0;
}
function bt(Qr) {
var Wr = c(Qr, function(Gr) {
return ae(Gr).webSocket != null;
});
Wr ? Qr.addEventListener(it(Qr)[0].trigger, function(Gr) {
var Zr = ae(Wr).webSocket, Yr = xr(Qr, Wr), an = dr(Qr, "post"), sn = an.errors, ln = an.values, cn = Hr(Qr), fn = le(ln, cn), hn = yr(fn, Qr);
if (hn.HEADERS = Yr, sn && sn.length > 0) {
ce(Qr, "htmx:validation:halted", sn);
return;
}
Zr.send(JSON.stringify(hn)), ut(Gr, Qr) && Gr.preventDefault();
}) : fe(Qr, "htmx:noWebSocketSourceError");
}
function wt(Qr) {
var Wr = Q.config.wsReconnectDelay;
if (typeof Wr == "function")
return Wr(Qr);
if (Wr === "full-jitter") {
var Gr = Math.min(Qr, 6), Zr = 1e3 * Math.pow(2, Gr);
return Zr * Math.random();
}
b('htmx.config.wsReconnectDelay must either be a function or the string "full-jitter"');
}
function St(Qr, Wr, Gr) {
for (var Zr = D(Gr), Yr = 0; Yr < Zr.length; Yr++) {
var an = Zr[Yr].split(/:(.+)/);
an[0] === "connect" && Et(Qr, an[1]), an[0] === "swap" && Ct(Qr, an[1]);
}
}
function Et(Qr, Wr) {
var Gr = Q.createEventSource(Wr);
Gr.onerror = function(Zr) {
fe(Qr, "htmx:sseError", { error: Zr, source: Gr }), Tt(Qr);
}, ae(Qr).sseEventSource = Gr;
}
function Ct(Qr, Wr) {
var Gr = c(Qr, Ot);
if (Gr) {
var Zr = ae(Gr).sseEventSource, Yr = function(an) {
if (!Tt(Gr)) {
if (!se(Qr)) {
Zr.removeEventListener(Wr, Yr);
return;
}
var sn = an.data;
R(Qr, function(hn) {
sn = hn.transformResponse(sn, null, Qr);
});
var ln = wr(Qr), cn = ye(Qr), fn = T(Qr);
je(ln.swapStyle, cn, Qr, sn, fn), nr(fn.tasks), ce(Qr, "htmx:sseMessage", an);
}
};
ae(Qr).sseListener = Yr, Zr.addEventListener(Wr, Yr);
} else
fe(Qr, "htmx:noSSESourceError");
}
function Rt(Qr, Wr, Gr) {
var Zr = c(Qr, Ot);
if (Zr) {
var Yr = ae(Zr).sseEventSource, an = function() {
Tt(Zr) || (se(Qr) ? Wr(Qr) : Yr.removeEventListener(Gr, an));
};
ae(Qr).sseListener = an, Yr.addEventListener(Gr, an);
} else
fe(Qr, "htmx:noSSESourceError");
}
function Tt(Qr) {
if (!se(Qr))
return ae(Qr).sseEventSource.close(), !0;
}
function Ot(Qr) {
return ae(Qr).sseEventSource != null;
}
function qt(Qr, Wr, Gr, Zr) {
var Yr = function() {
Gr.loaded || (Gr.loaded = !0, Wr(Qr));
};
Zr > 0 ? setTimeout(Yr, Zr) : Yr();
}
function Ht(Qr, Wr, Gr) {
var Zr = !1;
return oe(w, function(Yr) {
if (o(Qr, "hx-" + Yr)) {
var an = te(Qr, "hx-" + Yr);
Zr = !0, Wr.path = an, Wr.verb = Yr, Gr.forEach(function(sn) {
Lt(Qr, sn, Wr, function(ln, cn) {
if (v(ln, Q.config.disableSelector)) {
m(ln);
return;
}
he(Yr, an, ln, cn);
});
});
}
}), Zr;
}
function Lt(Qr, Wr, Gr, Zr) {
if (Wr.sseEvent)
Rt(Qr, Zr, Wr.sseEvent);
else if (Wr.trigger === "revealed")
gt(), ht(Qr, Zr, Gr, Wr), pt(Qr);
else if (Wr.trigger === "intersect") {
var Yr = {};
Wr.root && (Yr.root = ue(Qr, Wr.root)), Wr.threshold && (Yr.threshold = parseFloat(Wr.threshold));
var an = new IntersectionObserver(function(sn) {
for (var ln = 0; ln < sn.length; ln++) {
var cn = sn[ln];
if (cn.isIntersecting) {
ce(Qr, "intersect");
break;
}
}
}, Yr);
an.observe(Qr), ht(Qr, Zr, Gr, Wr);
} else Wr.trigger === "load" ? ct(Wr, Qr, Wt("load", { elt: Qr })) || qt(Qr, Zr, Gr, Wr.delay) : Wr.pollInterval > 0 ? (Gr.polling = !0, ot(Qr, Zr, Wr)) : ht(Qr, Zr, Gr, Wr);
}
function At(Qr) {
if (!Qr.htmxExecuted && Q.config.allowScriptTags && (Qr.type === "text/javascript" || Qr.type === "module" || Qr.type === "")) {
var Wr = re().createElement("script");
oe(Qr.attributes, function(Zr) {
Wr.setAttribute(Zr.name, Zr.value);
}), Wr.textContent = Qr.textContent, Wr.async = !1, Q.config.inlineScriptNonce && (Wr.nonce = Q.config.inlineScriptNonce);
var Gr = Qr.parentElement;
try {
Gr.insertBefore(Wr, Qr);
} catch (Zr) {
b(Zr);
} finally {
Qr.parentElement && Qr.parentElement.removeChild(Qr);
}
}
}
function Nt(Qr) {
h(Qr, "script") && At(Qr), oe(f(Qr, "script"), function(Wr) {
At(Wr);
});
}
function It(Qr) {
for (var Wr = Qr.attributes, Gr = 0; Gr < Wr.length; Gr++) {
var Zr = Wr[Gr].name;
if (g(Zr, "hx-on:") || g(Zr, "data-hx-on:") || g(Zr, "hx-on-") || g(Zr, "data-hx-on-"))
return !0;
}
return !1;
}
function kt(Qr) {
var Wr = null, Gr = [];
if (It(Qr) && Gr.push(Qr), document.evaluate)
for (var Zr = document.evaluate('.//*[@*[ starts-with(name(), "hx-on:") or starts-with(name(), "data-hx-on:") or starts-with(name(), "hx-on-") or starts-with(name(), "data-hx-on-") ]]', Qr); Wr = Zr.iterateNext(); ) Gr.push(Wr);
else
for (var Yr = Qr.getElementsByTagName("*"), an = 0; an < Yr.length; an++)
It(Yr[an]) && Gr.push(Yr[an]);
return Gr;
}
function Pt(Qr) {
if (Qr.querySelectorAll) {
var Wr = ", [hx-boost] a, [data-hx-boost] a, a[hx-boost], a[data-hx-boost]", Gr = Qr.querySelectorAll(i + Wr + ", form, [type='submit'], [hx-sse], [data-hx-sse], [hx-ws], [data-hx-ws], [hx-ext], [data-hx-ext], [hx-trigger], [data-hx-trigger], [hx-on], [data-hx-on]");
return Gr;
} else
return [];
}
function Mt(Qr) {
var Wr = v(Qr.target, "button, input[type='submit']"), Gr = Dt(Qr);
Gr && (Gr.lastButtonClicked = Wr);
}
function Xt(Qr) {
var Wr = Dt(Qr);
Wr && (Wr.lastButtonClicked = null);
}
function Dt(Qr) {
var Wr = v(Qr.target, "button, input[type='submit']");
if (Wr) {
var Gr = p("#" + ee(Wr, "form")) || v(Wr, "form");
if (Gr)
return ae(Gr);
}
}
function Ut(Qr) {
Qr.addEventListener("click", Mt), Qr.addEventListener("focusin", Mt), Qr.addEventListener("focusout", Xt);
}
function Ft(Qr) {
for (var Wr = Ye(Qr), Gr = 0, Zr = 0; Zr < Wr.length; Zr++) {
const Yr = Wr[Zr];
Yr === "{" ? Gr++ : Yr === "}" && Gr--;
}
return Gr;
}
function Bt(Qr, Wr, Gr) {
var Zr = ae(Qr);
Array.isArray(Zr.onHandlers) || (Zr.onHandlers = []);
var Yr, an = function(sn) {
return Tr(Qr, function() {
Yr || (Yr = new Function("event", Gr)), Yr.call(Qr, sn);
});
};
Qr.addEventListener(Wr, an), Zr.onHandlers.push({ event: Wr, listener: an });
}
function Vt(Qr) {
var Wr = te(Qr, "hx-on");
if (Wr) {
for (var Gr = {}, Zr = Wr.split(`
`), Yr = null, an = 0; Zr.length > 0; ) {
var sn = Zr.shift(), ln = sn.match(/^\s*([a-zA-Z:\-\.]+:)(.*)/);
an === 0 && ln ? (sn.split(":"), Yr = ln[1].slice(0, -1), Gr[Yr] = ln[2]) : Gr[Yr] += sn, an += Ft(sn);
}
for (var cn in Gr)
Bt(Qr, cn, Gr[cn]);
}
}
function jt(Qr) {
Ae(Qr);
for (var Wr = 0; Wr < Qr.attributes.length; Wr++) {
var Gr = Qr.attributes[Wr].name, Zr = Qr.attributes[Wr].value;
if (g(Gr, "hx-on") || g(Gr, "data-hx-on")) {
var Yr = Gr.indexOf("-on") + 3, an = Gr.slice(Yr, Yr + 1);
if (an === "-" || an === ":") {
var sn = Gr.slice(Yr + 1);
g(sn, ":") ? sn = "htmx" + sn : g(sn, "-") ? sn = "htmx:" + sn.slice(1) : g(sn, "htmx-") && (sn = "htmx:" + sn.slice(5)), Bt(Qr, sn, Zr);
}
}
}
}
function _t(Qr) {
if (v(Qr, Q.config.disableSelector)) {
m(Qr);
return;
}
var Wr = ae(Qr);
if (Wr.initHash !== Le(Qr)) {
Ne(Qr), Wr.initHash = Le(Qr), Vt(Qr), ce(Qr, "htmx:beforeProcessNode"), Qr.value && (Wr.lastValue = Qr.value);
var Gr = it(Qr), Zr = Ht(Qr, Wr, Gr);
Zr || (ne(Qr, "hx-boost") === "true" ? lt(Qr, Wr, Gr) : o(Qr, "hx-trigger") && Gr.forEach(function(sn) {
Lt(Qr, sn, Wr, function() {
});
})), (Qr.tagName === "FORM" || ee(Qr, "type") === "submit" && o(Qr, "form")) && Ut(Qr);
var Yr = te(Qr, "hx-sse");
Yr && St(Qr, Wr, Yr);
var an = te(Qr, "hx-ws");
an && mt(Qr, Wr, an), ce(Qr, "htmx:afterProcessNode");
}
}
function zt(Qr) {
if (Qr = p(Qr), v(Qr, Q.config.disableSelector)) {
m(Qr);
return;
}
_t(Qr), oe(Pt(Qr), function(Wr) {
_t(Wr);
}), oe(kt(Qr), jt);
}
function $t(Qr) {
return Qr.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
}
function Wt(Qr, Wr) {
var Gr;
return window.CustomEvent && typeof window.CustomEvent == "function" ? Gr = new CustomEvent(Qr, { bubbles: !0, cancelable: !0, detail: Wr }) : (Gr = re().createEvent("CustomEvent"), Gr.initCustomEvent(Qr, !0, !0, Wr)), Gr;
}
function fe(Qr, Wr, Gr) {
ce(Qr, Wr, le({ error: Wr }, Gr));
}
function Gt(Qr) {
return Qr === "htmx:afterProcessNode";
}
function R(Qr, Wr) {
oe(Br(Qr), function(Gr) {
try {
Wr(Gr);
} catch (Zr) {
b(Zr);
}
});
}
function b(Qr) {
console.error ? console.error(Qr) : console.log && console.log("ERROR: ", Qr);
}
function ce(Qr, Wr, Gr) {
Qr = p(Qr), Gr == null && (Gr = {}), Gr.elt = Qr;
var Zr = Wt(Wr, Gr);
Q.logger && !Gt(Wr) && Q.logger(Qr, Wr, Gr), Gr.error && (b(Gr.error), ce(Qr, "htmx:error", { errorInfo: Gr }));
var Yr = Qr.dispatchEvent(Zr), an = $t(Wr);
if (Yr && an !== Wr) {
var sn = Wt(an, Zr.detail);
Yr = Yr && Qr.dispatchEvent(sn);
}
return R(Qr, function(ln) {
Yr = Yr && ln.onEvent(Wr, Zr) !== !1 && !Zr.defaultPrevented;
}), Yr;
}
var Jt = location.pathname + location.search;
function Zt() {
var Qr = re().querySelector("[hx-history-elt],[data-hx-history-elt]");
return Qr || re().body;
}
function Kt(Qr, Wr, Gr, Zr) {
if (U()) {
if (Q.config.historyCacheSize <= 0) {
localStorage.removeItem("htmx-history-cache");
return;
}
Qr = F(Qr);
for (var Yr = E(localStorage.getItem("htmx-history-cache")) || [], an = 0; an < Yr.length; an++)
if (Yr[an].url === Qr) {
Yr.splice(an, 1);
break;
}
var sn = { url: Qr, content: Wr, title: Gr, scroll: Zr };
for (ce(re().body, "htmx:historyItemCreated", { item: sn, cache: Yr }), Yr.push(sn); Yr.length > Q.config.historyCacheSize; )
Yr.shift();
for (; Yr.length > 0; )
try {
localStorage.setItem("htmx-history-cache", JSON.stringify(Yr));
break;
} catch (ln) {
fe(re().body, "htmx:historyCacheError", { cause: ln, cache: Yr }), Yr.shift();
}
}
}
function Yt(Qr) {
if (!U())
return null;
Qr = F(Qr);
for (var Wr = E(localStorage.getItem("htmx-history-cache")) || [], Gr = 0; Gr < Wr.length; Gr++)
if (Wr[Gr].url === Qr)
return Wr[Gr];
return null;
}
function Qt(Qr) {
var Wr = Q.config.requestClass, Gr = Qr.cloneNode(!0);
return oe(f(Gr, "." + Wr), function(Zr) {
n(Zr, Wr);
}), Gr.innerHTML;
}
function er() {
var Qr = Zt(), Wr = Jt || location.pathname + location.search, Gr;
try {
Gr = re().querySelector('[hx-history="false" i],[data-hx-history="false" i]');
} catch {
Gr = re().querySelector('[hx-history="false"],[data-hx-history="false"]');
}
Gr || (ce(re().body, "htmx:beforeHistorySave", { path: Wr, historyElt: Qr }), Kt(Wr, Qt(Qr), re().title, window.scrollY)), Q.config.historyEnabled && history.replaceState({ htmx: !0 }, re().title, window.location.href);
}
function tr(Qr) {
Q.config.getCacheBusterParam && (Qr = Qr.replace(/org\.htmx\.cache-buster=[^&]*&?/, ""), (G(Qr, "&") || G(Qr, "?")) && (Qr = Qr.slice(0, -1))), Q.config.historyEnabled && history.pushState({ htmx: !0 }, "", Qr), Jt = Qr;
}
function rr(Qr) {
Q.config.historyEnabled && history.replaceState({ htmx: !0 }, "", Qr), Jt = Qr;
}
function nr(Qr) {
oe(Qr, function(Wr) {
Wr.call();
});
}
function ir(Qr) {
var Wr = new XMLHttpRequest(), Gr = { path: Qr, xhr: Wr };
ce(re().body, "htmx:historyCacheMiss", Gr), Wr.open("GET", Qr, !0), Wr.setRequestHeader("HX-Request", "true"), Wr.setRequestHeader("HX-History-Restore-Request", "true"), Wr.setRequestHeader("HX-Current-URL", re().location.href), Wr.onload = function() {
if (this.status >= 200 && this.status < 400) {
ce(re().body, "htmx:historyCacheMissLoad", Gr);
var Zr = l(this.response);
Zr = Zr.querySelector("[hx-history-elt],[data-hx-history-elt]") || Zr;
var Yr = Zt(), an = T(Yr), sn = Ve(this.response);
if (sn) {
var ln = C("title");
ln ? ln.innerHTML = sn : window.document.title = sn;
}
Ue(Yr, Zr, an), nr(an.tasks), Jt = Qr, ce(re().body, "htmx:historyRestore", { path: Qr, cacheMiss: !0, serverResponse: this.response });
} else
fe(re().body, "htmx:historyCacheMissLoadError", Gr);
}, Wr.send();
}
function ar(Qr) {
er(), Qr = Qr || location.pathname + location.search;
var Wr = Yt(Qr);
if (Wr) {
var Gr = l(Wr.content), Zr = Zt(), Yr = T(Zr);
Ue(Zr, Gr, Yr), nr(Yr.tasks), document.title = Wr.title, setTimeout(function() {
window.scrollTo(0, Wr.scroll);
}, 0), Jt = Qr, ce(re().body, "htmx:historyRestore", { path: Qr, item: Wr });
} else
Q.config.refreshOnHistoryMiss ? window.location.reload(!0) : ir(Qr);
}
function or(Qr) {
var Wr = me(Qr, "hx-indicator");
return Wr == null && (Wr = [Qr]), oe(Wr, function(Gr) {
var Zr = ae(Gr);
Zr.requestCount = (Zr.requestCount || 0) + 1, Gr.classList.add.call(Gr.classList, Q.config.requestClass);
}), Wr;
}
function sr(Qr) {
var Wr = me(Qr, "hx-disabled-elt");
return Wr == null && (Wr = []), oe(Wr, function(Gr) {
var Zr = ae(Gr);
Zr.requestCount = (Zr.requestCount || 0) + 1, Gr.setAttribute("disabled", "");
}), Wr;
}
function lr(Qr, Wr) {
oe(Qr, function(Gr) {
var Zr = ae(Gr);
Zr.requestCount = (Zr.requestCount || 0) - 1, Zr.requestCount === 0 && Gr.classList.remove.call(Gr.classList, Q.config.requestClass);
}), oe(Wr, function(Gr) {
var Zr = ae(Gr);
Zr.requestCount = (Zr.requestCount || 0) - 1, Zr.requestCount === 0 && Gr.removeAttribute("disabled");
});
}
function ur(Qr, Wr) {
for (var Gr = 0; Gr < Qr.length; Gr++) {
var Zr = Qr[Gr];
if (Zr.isSameNode(Wr))
return !0;
}
return !1;
}
function fr(Qr) {
return Qr.name === "" || Qr.name == null || Qr.disabled || v(Qr, "fieldset[disabled]") || Qr.type === "button" || Qr.type === "submit" || Qr.tagName === "image" || Qr.tagName === "reset" || Qr.tagName === "file" ? !1 : Qr.type === "checkbox" || Qr.type === "radio" ? Qr.checked : !0;
}
function cr(Qr, Wr, Gr) {
if (Qr != null && Wr != null) {
var Zr = Gr[Qr];
Zr === void 0 ? Gr[Qr] = Wr : Array.isArray(Zr) ? Array.isArray(Wr) ? Gr[Qr] = Zr.concat(Wr) : Zr.push(Wr) : Array.isArray(Wr) ? Gr[Qr] = [Zr].concat(Wr) : Gr[Qr] = [Zr, Wr];
}
}
function hr(Qr, Wr, Gr, Zr, Yr) {
if (!(Zr == null || ur(Qr, Zr))) {
if (Qr.push(Zr), fr(Zr)) {
var an = ee(Zr, "name"), sn = Zr.value;
Zr.multiple && Zr.tagName === "SELECT" && (sn = M(Zr.querySelectorAll("option:checked")).map(function(cn) {
return cn.value;
})), Zr.files && (sn = M(Zr.files)), cr(an, sn, Wr), Yr && vr(Zr, Gr);
}
if (h(Zr, "form")) {
var ln = Zr.elements;
oe(ln, function(cn) {
hr(Qr, Wr, Gr, cn, Yr);
});
}
}
}
function vr(Qr, Wr) {
Qr.willValidate && (ce(Qr, "htmx:validation:validate"), Qr.checkValidity() || (Wr.push({ elt: Qr, message: Qr.validationMessage, validity: Qr.validity }), ce(Qr, "htmx:validation:failed", { message: Qr.validationMessage, validity: Qr.validity })));
}
function dr(Qr, Wr) {
var Gr = [], Zr = {}, Yr = {}, an = [], sn = ae(Qr);
sn.lastButtonClicked && !se(sn.lastButtonClicked) && (sn.lastButtonClicked = null);
var ln = h(Qr, "form") && Qr.noValidate !== !0 || te(Qr, "hx-validate") === "true";
if (sn.lastButtonClicked && (ln = ln && sn.lastButtonClicked.formNoValidate !== !0), Wr !== "get" && hr(Gr, Yr, an, v(Qr, "form"), ln), hr(Gr, Zr, an, Qr, ln), sn.lastButtonClicked || Qr.tagName === "BUTTON" || Qr.tagName === "INPUT" && ee(Qr, "type") === "submit") {
var cn = sn.lastButtonClicked || Qr, fn = ee(cn, "name");
cr(fn, cn.value, Yr);
}
var hn = me(Qr, "hx-include");
return oe(hn, function(pn) {
hr(Gr, Zr, an, pn, ln), h(pn, "form") || oe(pn.querySelectorAll(rt), function(mn) {
hr(Gr, Zr, an, mn, ln);
});
}), Zr = le(Zr, Yr), { errors: an, values: Zr };
}
function gr(Qr, Wr, Gr) {
Qr !== "" && (Qr += "&"), String(Gr) === "[object Object]" && (Gr = JSON.stringify(Gr));
var Zr = encodeURIComponent(Gr);
return Qr += encodeURIComponent(Wr) + "=" + Zr, Qr;
}
function pr(Qr) {
var Wr = "";
for (var Gr in Qr)
if (Qr.hasOwnProperty(Gr)) {
var Zr = Qr[Gr];
Array.isArray(Zr) ? oe(Zr, function(Yr) {
Wr = gr(Wr, Gr, Yr);
}) : Wr = gr(Wr, Gr, Zr);
}
return Wr;
}
function mr(Qr) {
var Wr = new FormData();
for (var Gr in Qr)
if (Qr.hasOwnProperty(Gr)) {
var Zr = Qr[Gr];
Array.isArray(Zr) ? oe(Zr, function(Yr) {
Wr.append(Gr, Yr);
}) : Wr.append(Gr, Zr);
}
return Wr;
}
function xr(Qr, Wr, Gr) {
var Zr = { "HX-Request": "true", "HX-Trigger": ee(Qr, "id"), "HX-Trigger-Name": ee(Qr, "name"), "HX-Target": te(Wr, "id"), "HX-Current-URL": re().location.href };
return Rr(Qr, "hx-headers", !1, Zr), Gr !== void 0 && (Zr["HX-Prompt"] = Gr), ae(Qr).boosted && (Zr["HX-Boosted"] = "true"), Zr;
}
function yr(Qr, Wr) {
var Gr = ne(Wr, "hx-params");
if (Gr) {
if (Gr === "none")
return {};
if (Gr === "*")
return Qr;
if (Gr.indexOf("not ") === 0)
return oe(Gr.substr(4).split(","), function(Yr) {
Yr = Yr.trim(), delete Qr[Yr];
}), Qr;
var Zr = {};
return oe(Gr.split(","), function(Yr) {
Yr = Yr.trim(), Zr[Yr] = Qr[Yr];
}), Zr;
} else
return Qr;
}
function br(Qr) {
return ee(Qr, "href") && ee(Qr, "href").indexOf("#") >= 0;
}
function wr(Qr, Wr) {
var Gr = Wr || ne(Qr, "hx-swap"), Zr = { swapStyle: ae(Qr).boosted ? "innerHTML" : Q.config.defaultSwapStyle, swapDelay: Q.config.defaultSwapDelay, settleDelay: Q.config.defaultSettleDelay };
if (Q.config.scrollIntoViewOnBoost && ae(Qr).boosted && !br(Qr) && (Zr.show = "top"), Gr) {
var Yr = D(Gr);
if (Yr.length > 0)
for (var an = 0; an < Yr.length; an++) {
var sn = Yr[an];
if (sn.indexOf("swap:") === 0)
Zr.swapDelay = d(sn.substr(5));
else if (sn.indexOf("settle:") === 0)
Zr.settleDelay = d(sn.substr(7));
else if (sn.indexOf("transition:") === 0)
Zr.transition = sn.substr(11) === "true";
else if (sn.indexOf("ignoreTitle:") === 0)
Zr.ignoreTitle = sn.substr(12) === "true";
else if (sn.indexOf("scroll:") === 0) {
var ln = sn.substr(7), cn = ln.split(":"), fn = cn.pop(), hn = cn.length > 0 ? cn.join(":") : null;
Zr.scroll = fn, Zr.scrollTarget = hn;
} else if (sn.indexOf("show:") === 0) {
var pn = sn.substr(5), cn = pn.split(":"), mn = cn.pop(), hn = cn.length > 0 ? cn.join(":") : null;
Zr.show = mn, Zr.showTarget = hn;
} else if (sn.indexOf("focus-scroll:") === 0) {
var Hn = sn.substr(13);
Zr.focusScroll = Hn == "true";
} else an == 0 ? Zr.swapStyle = sn : b("Unknown modifier in hx-swap: " + sn);
}
}
return Zr;
}
function Sr(Qr) {
return ne(Qr, "hx-encoding") === "multipart/form-data" || h(Qr, "form") && ee(Qr, "enctype") === "multipart/form-data";
}
function Er(Qr, Wr, Gr) {
var Zr = null;
return R(Wr, function(Yr) {
Zr == null && (Zr = Yr.encodeParameters(Qr, Gr, Wr));
}), Zr ?? (Sr(Wr) ? mr(Gr) : pr(Gr));
}
function T(Qr) {
return { tasks: [], elts: [Qr] };
}
function Cr(Qr, Wr) {
var Gr = Qr[0], Zr = Qr[Qr.length - 1];
if (Wr.scroll) {
var Yr = null;
Wr.scrollTarget && (Yr = ue(Gr, Wr.scrollTarget)), Wr.scroll === "top" && (Gr || Yr) && (Yr = Yr || Gr, Yr.scrollTop = 0), Wr.scroll === "bottom" && (Zr || Yr) && (Yr = Yr || Zr, Yr.scrollTop = Yr.scrollHeight);
}
if (Wr.show) {
var Yr = null;
if (Wr.showTarget) {
var an = Wr.showTarget;
Wr.showTarget === "window" && (an = "body"), Yr = ue(Gr, an);
}
Wr.show === "top" && (Gr || Yr) && (Yr = Yr || Gr, Yr.scrollIntoView({ block: "start", behavior: Q.config.scrollBehavior })), Wr.show === "bottom" && (Zr || Yr) && (Yr = Yr || Zr, Yr.scrollIntoView({ block: "end", behavior: Q.config.scrollBehavior }));
}
}
function Rr(Qr, Wr, Gr, Zr) {
if (Zr == null && (Zr = {}), Qr == null)
return Zr;
var Yr = te(Qr, Wr);
if (Yr) {
var an = Yr.trim(), sn = Gr;
if (an === "unset")
return null;
an.indexOf("javascript:") === 0 ? (an = an.substr(11), sn = !0) : an.indexOf("js:") === 0 && (an = an.substr(3), sn = !0), an.indexOf("{") !== 0 && (an = "{" + an + "}");
var ln;
sn ? ln = Tr(Qr, function() {
return Function("return (" + an + ")")();
}, {}) : ln = E(an);
for (var cn in ln)
ln.hasOwnProperty(cn) && Zr[cn] == null && (Zr[cn] = ln[cn]);
}
return Rr(u(Qr), Wr, Gr, Zr);
}
function Tr(Qr, Wr, Gr) {
return Q.config.allowEval ? Wr() : (fe(Qr, "htmx:evalDisallowedError"), Gr);
}
function Or(Qr, Wr) {
return Rr(Qr, "hx-vars", !0, Wr);
}
function qr(Qr, Wr) {
return Rr(Qr, "hx-vals", !1, Wr);
}
function Hr(Qr) {
return le(Or(Qr), qr(Qr));
}
function Lr(Qr, Wr, Gr) {
if (Gr !== null)
try {
Qr.setRequestHeader(Wr, Gr);
} catch {
Qr.setRequestHeader(Wr, encodeURIComponent(Gr)), Qr.setRequestHeader(Wr + "-URI-AutoEncoded", "true");
}
}
function Ar(Qr) {
if (Qr.responseURL && typeof URL < "u")
try {
var Wr = new URL(Qr.responseURL);
return Wr.pathname + Wr.search;
} catch {
fe(re().body, "htmx:badResponseUrl", { url: Qr.responseURL });
}
}
function O(Qr, Wr) {
return Wr.test(Qr.getAllResponseHeaders());
}
function Nr(Qr, Wr, Gr) {
return Qr = Qr.toLowerCase(), Gr ? Gr instanceof Element || I(Gr, "String") ? he(Qr, Wr, null, null, { targetOverride: p(Gr), returnPromise: !0 }) : he(Qr, Wr, p(Gr.source), Gr.event, { handler: Gr.handler, headers: Gr.headers, values: Gr.values, targetOverride: p(Gr.target), swapOverride: Gr.swap, select: Gr.select, returnPromise: !0 }) : he(Qr, Wr, null, null, { returnPromise: !0 });
}
function Ir(Qr) {
for (var Wr = []; Qr; )
Wr.push(Qr), Qr = Qr.parentElement;
return Wr;
}
function kr(Qr, Wr, Gr) {
var Zr, Yr;
if (typeof URL == "function") {
Yr = new URL(Wr, document.location.href);
var an = document.location.origin;
Zr = an === Yr.origin;
} else
Yr = Wr, Zr = g(Wr, document.location.origin);
return Q.config.selfRequestsOnly && !Zr ? !1 : ce(Qr, "htmx:validateUrl", le({ url: Yr, sameHost: Zr }, Gr));
}
function he(Qr, Wr, Gr, Zr, Yr, an) {
var sn = null, ln = null;
if (Yr = Yr ?? {}, Yr.returnPromise && typeof Promise < "u")
var cn = new Promise(function(Nn, Fn) {
sn = Nn, ln = Fn;
});
Gr == null && (Gr = re().body);
var fn = Yr.handler || Mr, hn = Yr.select || null;
if (!se(Gr))
return ie(sn), cn;
var pn = Yr.targetOverride || ye(Gr);
if (pn == null || pn == pe)
return fe(Gr, "htmx:targetError", { target: te(Gr, "hx-target") }), ie(ln), cn;
var mn = ae(Gr), Hn = mn.lastButtonClicked;
if (Hn) {
var Un = ee(Hn, "formaction");
Un != null && (Wr = Un);
var ri = ee(Hn, "formmethod");
ri != null && ri.toLowerCase() !== "dialog" && (Qr = ri);
}
var Yn = ne(Gr, "hx-confirm");
if (an === void 0) {
var bi = function(Nn) {
return he(Qr, Wr, Gr, Zr, Yr, !!Nn);
}, ei = { target: pn, elt: Gr, path: Wr, verb: Qr, triggeringEvent: Zr, etc: Yr, issueRequest: bi, question: Yn };
if (ce(Gr, "htmx:confirm", ei) === !1)
return ie(sn), cn;
}
var Bn = Gr, Cn = ne(Gr, "hx-sync"), Sn = null, Ri = !1;
if (Cn) {
var $n = Cn.split(":"), Rn = $n[0].trim();
if (Rn === "this" ? Bn = xe(Gr, "hx-sync") : Bn = ue(Gr, Rn), Cn = ($n[1] || "drop").trim(), mn = ae(Bn), Cn === "drop" && mn.xhr && mn.abortable !== !0)
return ie(sn), cn;
if (Cn === "abort") {
if (mn.xhr)
return ie(sn), cn;
Ri = !0;
} else if (Cn === "replace")
ce(Bn, "htmx:abort");
else if (Cn.indexOf("queue") === 0) {
var ni = Cn.split(" ");
Sn = (ni[1] || "last").trim();
}
}
if (mn.xhr)
if (mn.abortable)
ce(Bn, "htmx:abort");
else {
if (Sn == null) {
if (Zr) {
var Mn = ae(Zr);
Mn && Mn.triggerSpec && Mn.triggerSpec.queue && (Sn = Mn.triggerSpec.queue);
}
Sn == null && (Sn = "last");
}
return mn.queuedRequests == null && (mn.queuedRequests = []), Sn === "first" && mn.queuedRequests.length === 0 ? mn.queuedRequests.push(function() {
he(Qr, Wr, Gr, Zr, Yr);
}) : Sn === "all" ? mn.queuedRequests.push(function() {
he(Qr, Wr, Gr, Zr, Yr);
}) : Sn === "last" && (mn.queuedRequests = [], mn.queuedRequests.push(function() {
he(Qr, Wr, Gr, Zr, Yr);
})), ie(sn), cn;
}
var En = new XMLHttpRequest();
mn.xhr = En, mn.abortable = Ri;
var jn = function() {
if (mn.xhr = null, mn.abortable = !1, mn.queuedRequests != null && mn.queuedRequests.length > 0) {
var Nn = mn.queuedRequests.shift();
Nn();
}
}, ii = ne(Gr, "hx-prompt");
if (ii) {
var Qn = prompt(ii);
if (Qn === null || !ce(Gr, "htmx:prompt", { prompt: Qn, target: pn }))
return ie(sn), jn(), cn;
}
if (Yn && !an && !confirm(Yn))
return ie(sn), jn(), cn;
var bn = xr(Gr, pn, Qn);
Qr !== "get" && !Sr(Gr) && (bn["Content-Type"] = "application/x-www-form-urlencoded"), Yr.headers && (bn = le(bn, Yr.headers));
var ci = dr(Gr, Qr), Jn = ci.errors, Xn = ci.values;
Yr.values && (Xn = le(Xn, Yr.values));
var zn = Hr(Gr), yi = le(Xn, zn), ti = yr(yi, Gr);
Q.config.getCacheBusterParam && Qr === "get" && (ti["org.htmx.cache-buster"] = ee(pn, "id") || "true"), (Wr == null || Wr === "") && (Wr = re().location.href);
var wi = Rr(Gr, "hx-request"), Ii = ae(Gr).boosted, Ei = Q.config.methodsThatUseUrlParams.indexOf(Qr) >= 0, In = { boosted: Ii, useUrlParams: Ei, parameters: ti, unfilteredParameters: yi, headers: bn, target: pn, verb: Qr, errors: Jn, withCredentials: Yr.credentials || wi.credentials || Q.config.withCredentials, timeout: Yr.timeout || wi.timeout || Q.config.timeout, path: Wr, triggeringEvent: Zr };
if (!ce(Gr, "htmx:configRequest", In))
return ie(sn), jn(), cn;
if (Wr = In.path, Qr = In.verb, bn = In.headers, ti = In.parameters, Jn = In.errors, Ei = In.useUrlParams, Jn && Jn.length > 0)
return ce(Gr, "htmx:validation:halted", In), ie(sn), jn(), cn;
var Mi = Wr.split("#"), Wi = Mi[0], Si = Mi[1], Vn = Wr;
if (Ei) {
Vn = Wi;
var qi = Object.keys(ti).length !== 0;
qi && (Vn.indexOf("?") < 0 ? Vn += "?" : Vn += "&", Vn += pr(ti), Si && (Vn += "#" + Si));
}
if (!kr(Gr, Vn, In))
return fe(Gr, "htmx:invalidPath", In), ie(ln), cn;
if (En.open(Qr.toUpperCase(), Vn, !0), En.overrideMimeType("text/html"), En.withCredentials = In.withCredentials, En.timeout = In.timeout, !wi.noHeaders) {
for (var fi in bn)
if (bn.hasOwnProperty(fi)) {
var Ni = bn[fi];
Lr(En, fi, Ni);
}
}
var On = { xhr: En, target: pn, requestConfig: In, etc: Yr, boosted: Ii, select: hn, pathInfo: { requestPath: Wr, finalRequestPath: Vn, anchor: Si } };
if (En.onload = function() {
try {
var Nn = Ir(Gr);
if (On.pathInfo.responsePath = Ar(En), fn(Gr, On), lr(Kn, Ti), ce(Gr, "htmx:afterRequest", On), ce(Gr, "htmx:afterOnLoad", On), !se(Gr)) {
for (var Fn = null; Nn.length > 0 && Fn == null; ) {
var si = Nn.shift();
se(si) && (Fn = si);
}
Fn && (ce(Fn, "htmx:afterRequest", On), ce(Fn, "htmx:afterOnLoad", On));
}
ie(sn), jn();
} catch (Gi) {
throw fe(Gr, "htmx:onLoadError", le({ error: Gi }, On)), Gi;
}
}, En.onerror = function() {
lr(Kn, Ti), fe(Gr, "htmx:afterRequest", On), fe(Gr, "htmx:sendError", On), ie(ln), jn();
}, En.onabort = function() {
lr(Kn, Ti), fe(Gr, "htmx:afterRequest", On), fe(Gr, "htmx:sendAbort", On), ie(ln), jn();
}, En.ontimeout = function() {
lr(Kn, Ti), fe(Gr, "htmx:afterRequest", On), fe(Gr, "htmx:timeout", On), ie(ln), jn();
}, !ce(Gr, "htmx:beforeRequest", On))
return ie(sn), jn(), cn;
var Kn = or(Gr), Ti = sr(Gr);
oe(["loadstart", "loadend", "progress", "abort"], function(Nn) {
oe([En, En.upload], function(Fn) {
Fn.addEventListener(Nn, function(si) {
ce(Gr, "htmx:xhr:" + Nn, { lengthComputable: si.lengthComputable, loaded: si.loaded, total: si.total });
});
});
}), ce(Gr, "htmx:beforeSend", On);
var Tn = Ei ? null : Er(En, Gr, ti);
return En.send(Tn), cn;
}
function Pr(Qr, Wr) {
var Gr = Wr.xhr, Zr = null, Yr = null;
if (O(Gr, /HX-Push:/i) ? (Zr = Gr.getResponseHeader("HX-Push"), Yr = "push") : O(Gr, /HX-Push-Url:/i) ? (Zr = Gr.getResponseHeader("HX-Push-Url"), Yr = "push") : O(Gr, /HX-Replace-Url:/i) && (Zr = Gr.getResponseHeader("HX-Replace-Url"), Yr = "replace"), Zr)
return Zr === "false" ? {} : { type: Yr, path: Zr };
var an = Wr.pathInfo.finalRequestPath, sn = Wr.pathInfo.responsePath, ln = ne(Qr, "hx-push-url"), cn = ne(Qr, "hx-replace-url"), fn = ae(Qr).boosted, hn = null, pn = null;
return ln ? (hn = "push", pn = ln) : cn ? (hn = "replace", pn = cn) : fn && (hn = "push", pn = sn || an), pn ? pn === "false" ? {} : (pn === "true" && (pn = sn || an), Wr.pathInfo.anchor && pn.indexOf("#") === -1 && (pn = pn + "#" + Wr.pathInfo.anchor), { type: hn, path: pn }) : {};
}
function Mr(Qr, Wr) {
var Gr = Wr.xhr, Zr = Wr.target, Yr = Wr.etc;
Wr.requestConfig;
var an = Wr.select;
if (ce(Qr, "htmx:beforeOnLoad", Wr)) {
if (O(Gr, /HX-Trigger:/i) && _e(Gr, "HX-Trigger", Qr), O(Gr, /HX-Location:/i)) {
er();
var sn = Gr.getResponseHeader("HX-Location"), ln;
sn.indexOf("{") === 0 && (ln = E(sn), sn = ln.path, delete ln.path), Nr("GET", sn, ln).then(function() {
tr(sn);
});
return;
}
var cn = O(Gr, /HX-Refresh:/i) && Gr.getResponseHeader("HX-Refresh") === "true";
if (O(Gr, /HX-Redirect:/i)) {
location.href = Gr.getResponseHeader("HX-Redirect"), cn && location.reload();
return;
}
if (cn) {
location.reload();
return;
}
O(Gr, /HX-Retarget:/i) && (Gr.getResponseHeader("HX-Retarget") === "this" ? Wr.target = Qr : Wr.target = ue(Qr, Gr.getResponseHeader("HX-Retarget")));
var fn = Pr(Qr, Wr), hn = Gr.status >= 200 && Gr.status < 400 && Gr.status !== 204, pn = Gr.response, mn = Gr.status >= 400, Hn = Q.config.ignoreTitle, Un = le({ shouldSwap: hn, serverResponse: pn, isError: mn, ignoreTitle: Hn }, Wr);
if (ce(Zr, "htmx:beforeSwap", Un)) {
if (Zr = Un.target, pn = Un.serverResponse, mn = Un.isError, Hn = Un.ignoreTitle, Wr.target = Zr, Wr.failed = mn, Wr.successful = !mn, Un.shouldSwap) {
Gr.status === 286 && at(Qr), R(Qr, function($n) {
pn = $n.transformResponse(pn, Gr, Qr);
}), fn.type && er();
var ri = Yr.swapOverride;
O(Gr, /HX-Reswap:/i) && (ri = Gr.getResponseHeader("HX-Reswap"));
var ln = wr(Qr, ri);
ln.hasOwnProperty("ignoreTitle") && (Hn = ln.ignoreTitle), Zr.classList.add(Q.config.swappingClass);
var Yn = null, bi = null, ei = function() {
try {
var $n = document.activeElement, Rn = {};
try {
Rn = { elt: $n, start: $n ? $n.selectionStart : null, end: $n ? $n.selectionEnd : null };
} catch {
}
var ni;
an && (ni = an), O(Gr, /HX-Reselect:/i) && (ni = Gr.getResponseHeader("HX-Reselect")), fn.type && (ce(re().body, "htmx:beforeHistoryUpdate", le({ history: fn }, Wr)), fn.type === "push" ? (tr(fn.path), ce(re().body, "htmx:pushedIntoHistory", { path: fn.path })) : (rr(fn.path), ce(re().body, "htmx:replacedInHistory", { path: fn.path })));
var Mn = T(Zr);
if (je(ln.swapStyle, Zr, Qr, pn, Mn, ni), Rn.elt && !se(Rn.elt) && ee(Rn.elt, "id")) {
var En = document.getElementById(ee(Rn.elt, "id")), jn = { preventScroll: ln.focusScroll !== void 0 ? !ln.focusScroll : !Q.config.defaultFocusScroll };
if (En) {
if (Rn.start && En.setSelectionRange)
try {
En.setSelectionRange(Rn.start, Rn.end);
} catch {
}
En.focus(jn);
}
}
if (Zr.classList.remove(Q.config.swappingClass), oe(Mn.elts, function(bn) {
bn.classList && bn.classList.add(Q.config.settlingClass), ce(bn, "htmx:afterSwap", Wr);
}), O(Gr, /HX-Trigger-After-Swap:/i)) {
var ii = Qr;
se(Qr) || (ii = re().body), _e(Gr, "HX-Trigger-After-Swap", ii);
}
var Qn = function() {
if (oe(Mn.tasks, function(Xn) {
Xn.call();
}), oe(Mn.elts, function(Xn) {
Xn.classList && Xn.classList.remove(Q.config.settlingClass), ce(Xn, "htmx:afterSettle", Wr);
}), Wr.pathInfo.anchor) {
var bn = re().getElementById(Wr.pathInfo.anchor);
bn && bn.scrollIntoView({ block: "start", behavior: "auto" });
}
if (Mn.title && !Hn) {
var ci = C("title");
ci ? ci.innerHTML = Mn.title : window.document.title = Mn.title;
}
if (Cr(Mn.elts, ln), O(Gr, /HX-Trigger-After-Settle:/i)) {
var Jn = Qr;
se(Qr) || (Jn = re().body), _e(Gr, "HX-Trigger-After-Settle", Jn);
}
ie(Yn);
};
ln.settleDelay > 0 ? setTimeout(Qn, ln.settleDelay) : Qn();
} catch (bn) {
throw fe(Qr, "htmx:swapError", Wr), ie(bi), bn;
}
}, Bn = Q.config.globalViewTransitions;
if (ln.hasOwnProperty("transition") && (Bn = ln.transition), Bn && ce(Qr, "htmx:beforeTransition", Wr) && typeof Promise < "u" && document.startViewTransition) {
var Cn = new Promise(function($n, Rn) {
Yn = $n, bi = Rn;
}), Sn = ei;
ei = function() {
document.startViewTransition(function() {
return Sn(), Cn;
});
};
}
ln.swapDelay > 0 ? setTimeout(ei, ln.swapDelay) : ei();
}
mn && fe(Qr, "htmx:responseError", le({ error: "Response Status Error Code " + Gr.status + " from " + Wr.pathInfo.requestPath }, Wr));
}
}
}
var Xr = {};
function Dr() {
return { init: function(Qr) {
return null;
}, onEvent: function(Qr, Wr) {
return !0;
}, transformResponse: function(Qr, Wr, Gr) {
return Qr;
}, isInlineSwap: function(Qr) {
return !1;
}, handleSwap: function(Qr, Wr, Gr, Zr) {
return !1;
}, encodeParameters: function(Qr, Wr, Gr) {
return null;
} };
}
function Ur(Qr, Wr) {
Wr.init && Wr.init(r), Xr[Qr] = le(Dr(), Wr);
}
function Fr(Qr) {
delete Xr[Qr];
}
function Br(Qr, Wr, Gr) {
if (Qr == null)
return Wr;
Wr == null && (Wr = []), Gr == null && (Gr = []);
var Zr = te(Qr, "hx-ext");
return Zr && oe(Zr.split(","), function(Yr) {
if (Yr = Yr.replace(/ /g, ""), Yr.slice(0, 7) == "ignore:") {
Gr.push(Yr.slice(7));
return;
}
if (Gr.indexOf(Yr) < 0) {
var an = Xr[Yr];
an && Wr.indexOf(an) < 0 && Wr.push(an);
}
}), Br(u(Qr), Wr, Gr);
}
var Vr = !1;
re().addEventListener("DOMContentLoaded", function() {
Vr = !0;
});
function jr(Qr) {
Vr || re().readyState === "complete" ? Qr() : re().addEventListener("DOMContentLoaded", Qr);
}
function _r() {
Q.config.includeIndicatorStyles !== !1 && re().head.insertAdjacentHTML("beforeend", "<style> ." + Q.config.indicatorClass + "{opacity:0} ." + Q.config.requestClass + " ." + Q.config.indicatorClass + "{opacity:1; transition: opacity 200ms ease-in;} ." + Q.config.requestClass + "." + Q.config.indicatorClass + "{opacity:1; transition: opacity 200ms ease-in;} </style>");
}
function zr() {
var Qr = re().querySelector('meta[name="htmx-config"]');
return Qr ? E(Qr.content) : null;
}
function $r() {
var Qr = zr();
Qr && (Q.config = le(Q.config, Qr));
}
return jr(function() {
$r(), _r();
var Qr = re().body;
zt(Qr);
var Wr = re().querySelectorAll("[hx-trigger='restored'],[data-hx-trigger='restored']");
Qr.addEventListener("htmx:abort", function(Zr) {
var Yr = Zr.target, an = ae(Yr);
an && an.xhr && an.xhr.abort();
});
const Gr = window.onpopstate ? window.onpopstate.bind(window) : null;
window.onpopstate = function(Zr) {
Zr.state && Zr.state.htmx ? (ar(), oe(Wr, function(Yr) {
ce(Yr, "htmx:restored", { document: re(), triggerEvent: ce });
})) : Gr && Gr(Zr);
}, setTimeout(function() {
ce(Qr, "htmx:load", {}), Qr = null;
}, 0);
}), Q;
}();
});
(function() {
var Qr, Wr = "hx-target-";
function Gr(an, sn) {
return an.substring(0, sn.length) === sn;
}
function Zr(an, sn) {
if (!an || !sn) return null;
var ln = sn.toString(), cn = [
ln,
ln.substr(0, 2) + "*",
ln.substr(0, 2) + "x",
ln.substr(0, 1) + "*",
ln.substr(0, 1) + "x",
ln.substr(0, 1) + "**",
ln.substr(0, 1) + "xx",
"*",
"x",
"***",
"xxx"
];
(Gr(ln, "4") || Gr(ln, "5")) && cn.push("error");
for (var fn = 0; fn < cn.length; fn++) {
var hn = Wr + cn[fn], pn = Qr.getClosestAttributeValue(an, hn);
if (pn)
return pn === "this" ? Qr.findThisElement(an, hn) : Qr.querySelectorExt(an, pn);
}
return null;
}
function Yr(an) {
an.detail.isError ? htmx.config.responseTargetUnsetsError && (an.detail.isError = !1) : htmx.config.responseTargetSetsError && (an.detail.isError = !0);
}
htmx.defineExtension("response-targets", {
/** @param {import("../htmx").HtmxInternalApi} apiRef */
init: function(an) {
Qr = an, htmx.config.responseTargetUnsetsError === void 0 && (htmx.config.responseTargetUnsetsError = !0), htmx.config.responseTargetSetsError === void 0 && (htmx.config.responseTargetSetsError = !1), htmx.config.responseTargetPrefersExisting === void 0 && (htmx.config.responseTargetPrefersExisting = !1), htmx.config.responseTargetPrefersRetargetHeader === void 0 && (htmx.config.responseTargetPrefersRetargetHeader = !0);
},
/**
* @param {string} name
* @param {Event} evt
*/
onEvent: function(an, sn) {
if (an === "htmx:beforeSwap" && sn.detail.xhr && sn.detail.xhr.status !== 200) {
if (sn.detail.target && (htmx.config.responseTargetPrefersExisting || htmx.config.responseTargetPrefersRetargetHeader && sn.detail.xhr.getAllResponseHeaders().match(/HX-Retarget:/i)))
return sn.detail.shouldSwap = !0, Yr(sn), !0;
if (!sn.detail.requestConfig)
return !0;
var ln = Zr(sn.detail.requestConfig.elt, sn.detail.xhr.status);
return ln && (Yr(sn), sn.detail.shouldSwap = !0, sn.detail.target = ln), !0;
}
}
});
})();
const ATTR_XSLT_ONLOAD = "script[xslt-onload]", ATTR_XSLT_TEMPLATE = "xslt-template", ATTR_XSLT_STATE = "xslt-transformed", FILTER_LIST_ELEMENT = "filter-list", FILTER_LIST_LIST = "filter-list-list", FILTER_LIST_ITEM = "filter-list-item", FILTER_LIST_INPUT = "filter-list-input", FILTER_LIST_SEARCHABLE = "filter-list-searchable", SCROLL_BUTTON_ELEMENT = "scroll-button", TOOLTIP_ELEMENT = "tool-tip", ABBREV_TOOLTIPS_ELEMENT = "abbrev-tooltips", INT_LINK_ELEMENT = "int-link", POPUP_IMAGE_ELEMENT = "popup-image", TABLIST_ELEMENT = "tab-list", FILTER_PILL_ELEMENT = "filter-pill", IMAGE_REEL_ELEMENT = "image-reel";
var ki, hs, ao;
class XSLTParseProcess {
constructor() {
xi(this, hs);
xi(this, ki);
zi(this, ki, /* @__PURE__ */ new Map());
}
setup() {
let Wr = htmx.findAll(ATTR_XSLT_ONLOAD);
for (let Gr of Wr)
ds(this, hs, ao).call(this, Gr);
}
hookupHTMX() {
htmx.on("htmx:load", (Wr) => {
this.setup();
});
}
}
ki = new WeakMap(), hs = new WeakSet(), ao = function(Wr) {
if (Wr.getAttribute(ATTR_XSLT_STATE) === "true" || !Wr.hasAttribute(ATTR_XSLT_TEMPLATE))
return;
let Gr = "#" + Wr.getAttribute(ATTR_XSLT_TEMPLATE), Zr = Xi(this, ki).get(Gr);
if (!Zr) {
let ln = htmx.find(Gr);
if (ln) {
let cn = ln.innerHTML ? new DOMParser().parseFromString(ln.innerHTML, "application/xml") : ln.contentDocument;
Zr = new XSLTProcessor(), Zr.importStylesheet(cn), Xi(this, ki).set(Gr, Zr);
} else
throw new Error("Unknown XSLT template: " + Gr);
}
let Yr = new DOMParser().parseFromString(Wr.innerHTML, "application/xml"), an = Zr.transformToFragment(Yr, document), sn = new XMLSerializer().serializeToString(an);
Wr.outerHTML = sn;
};
class FilterPill extends HTMLElement {
constructor() {
super(), this._value = "", this.render();
}
static get observedAttributes() {
return ["data-text", "data-queryparam", "data-value"];
}
set value(Wr) {
this.setAttribute("data-value", Wr);
}
get value() {
return this.getAttribute("data-value") || "";
}
set text(Wr) {
this.setAttribute("data-text", Wr);
}
get text() {
return this.getAttribute("data-text") || "";
}
set queryparam(Wr) {
this.setAttribute("data-queryparam", Wr);
}
get queryparam() {
return this.getAttribute("data-queryparam") || "";
}
connectedCallback() {
this._filter = this.text, this._queryparam = this.queryparam, this.render(), htmx.process(this);
}
attributeChangedCallback(Wr, Gr, Zr) {
Gr !== Zr && (Wr === "data-text" && (this._filter = Zr), Wr === "data-queryparam" && (this._queryparam = Zr), Wr === "data-value" && (this._value = Zr), this.render());
}
getURL() {
if (this._queryparam) {
let Wr = new URL(window.location), Gr = new URLSearchParams(Wr.search);
return Gr.delete(this._queryparam), Gr.delete("page"), Wr.search = Gr.toString(), Wr.toString();
}
return "#";
}
render() {
this.innerHTML = `
<a href="${this.getURL()}" class="!no-underline block text-base" hx-target="#searchresults" hx-select="#searchresults" hx-indicator="body" hx-swap="outerHTML show:window:top">
<div class="flex flex-row filter-pill rounded-lg bg-orange-100 hover:saturate-50 px-2.5">
${this.renderIcon()}
<div class="flex flex-row filter-pill-label-value !items-baseline text-slate-700">
<div class="filter-pill-label font-bold mr-1.5 align-baseline">${this.text}</div>
${this.renderValue()}
</div>
</div>
</a>
`;
}
renderIcon() {
return this.value === "true" || this.value === "false" ? `
<div href="${this.getURL()}" class="filter-pill-close no-underline font-bold mr-1 text-orange-900 hover:text-orange-800">
<i class="ri-close-circle-line"></i>
</div>
` : `<div
href="${this.getURL()}"
class="filter-pill-close no-underline font-bold mr-1 text-orange-900 hover:text-orange-800">
<i class="ri-arrow-left-s-line"></i>
</div>
`;
}
renderValue() {
return this.value === "true" || this.value === "false" ? "" : `
<div class="filter-pill-value">${this.value}</div>
`;
}
}
var _i, Ws, Vi, Vs;
class FilterList extends HTMLElement {
constructor() {
super();
xi(this, Vi);
xi(this, _i, !1);
xi(this, Ws, "");
this._items = [], this._url = "", this._filterstart = !1, this._placeholder = "Liste filtern...", this._queryparam = "", this._startparams = null, this.render();
}
static get observedAttributes() {
return ["data-url"];
}
set items(Gr) {
Array.isArray(Gr) && (this._items = Gr, this.render());
}
get items() {
return this._items;
}
connectedCallback() {
this._url = this.getAttribute("data-url") || "./", this._filterstart = this.getAttribute("data-filterstart") === "true", this._placeholder = this.getAttribute("data-placeholder") || "Liste filtern...", this._queryparam = this.getAttribute("data-queryparam") || "", this._queryparam, this._filterstart && zi(this, _i, !0), this.addEventListener("input", this.onInput.bind(this)), this.addEventListener("keydown", this.onEnter.bind(this)), this.addEventListener("focusin", this.onGainFocus.bind(this)), this.addEventListener("focusout", this.onLoseFocus.bind(this));
}
attributeChangedCallback(Gr, Zr, Yr) {
Gr === "data-url" && Zr !== Yr && (this._url = Yr, this.render()), Gr === "data-filterstart" && Zr !== Yr && (this._filterstart = Yr === "true", this.render()), Gr === "data-placeholder" && Zr !== Yr && (this._placeholder = Yr, this.render()), Gr === "data-queryparam" && Zr !== Yr && (this._queryparam = Yr, this.render());
}
onInput(Gr) {
Gr.target && Gr.target.tagName.toLowerCase() === "input" && (this._filter = Gr.target.value, this.renderList());
}
onGainFocus(Gr) {
Gr.target && Gr.target.tagName.toLowerCase() === "input" && (zi(this, _i, !1), this.renderList());
}
onLoseFocus(Gr) {
let Zr = this.querySelector("input");
if (Gr.target && Gr.target === Zr) {
if (relatedElement = Gr.relatedTarget, relatedElement && this.contains(relatedElement))
return;
Zr.value = "", this._filter = "", this._filterstart && zi(this, _i, !0), this.renderList();
}
}
onEnter(Gr) {
if (Gr.target && Gr.target.tagName.toLowerCase() === "input" && Gr.key === "Enter") {
Gr.preventDefault();
const Zr = this.querySelector("a");
Zr && Zr.click();
}
}
mark() {
if (typeof Mark != "function")
return;
let Gr = this.querySelector("#" + FILTER_LIST_LIST);
if (!Gr)
return;
let Zr = new Mark(Gr.querySelectorAll("." + FILTER_LIST_SEARCHABLE));
this._filter && Zr.mark(this._filter, {
separateWordSearch: !0
});
}
// INFO: allows for setting a custom HREF of the list item
// The function takes the item as parameter fn(item) and should return a string.
setHREFFunc(Gr) {
this.getHREF = Gr, this.render();
}
// INFO: allows for setting a custom link text of the list item
// The function takes the item as parameter fn(item) and should return a string or
// an HTML template literal.
setLinkTextFunc(Gr) {
this.getLinkText = Gr, this.render();
}
// INFO: allows for setting the text that will be filtered for.
// The function takes the item as parameter fn(item) and should return a string.
setSearchTextFunc(Gr) {
this.getSearchText = Gr, this.render();
}
getHREF(Gr) {
if (Gr) {
if (!Gr.id)
return "";
} else return "";
return Gr.id;
}
getHREFEncoded(Gr) {
return encodeURIComponent(this.getHREF(Gr));
}
getSearchText(Gr) {
if (Gr) {
if (!Gr.name)
return "";
} else return "";
return Gr.name;
}
getLinkText(Gr) {
let Zr = this.getSearchText(Gr);
return Zr === "" ? "" : `<span class="${FILTER_LIST_SEARCHABLE}">${Zr}</span>`;
}
getURL(Gr) {
if (this._queryparam) {
let Zr = new URL(window.location), Yr = new URLSearchParams(Zr.search);
return Yr.set(this._queryparam, this.getHREF(Gr)), Yr.delete("page"), Zr.search = Yr.toString(), Zr.toString();
}
return this._url + this.getHREFEncoded(Gr);
}
renderList() {
let Gr = this.querySelector("#" + FILTER_LIST_LIST);
Gr && (Gr.outerHTML = this.List()), this.mark();
}
render() {
this.innerHTML = `
<div class="font-serif text-base shadow-inner border border-stone-100">
${this.Input()}
${this.List()}
</div>
`, htmx && htmx.process(this);
}
ActiveDot(Gr) {
return ds(this, Vi, Vs).call(this, Gr), "";
}
NoItems(Gr) {
return Gr.length === 0 ? '<div class="px-2 py-0.5 italic text-gray-500">Keine Einträge gefunden</div>' : "";
}
Input() {
return `
<div class="flex w-full py-0.5 border-b border-zinc-600 bg-stone-50">
<i class="ri-arrow-right-s-line pl-2"></i>
<div class="grow">
<input
type="text"
placeholder="${this._placeholder}"
class="${FILTER_LIST_INPUT} w-full placeholder:italic px-2 py-0.5" />
</div>
</div>
`;
}
List() {
let Gr = this._items;
if (this._filter)
if (this._filterstart)
Gr = this._items.filter((Zr) => this.getSearchText(Zr).toLowerCase().startsWith(this._filter.toLowerCase()));
else {
let Zr = this._filter.split(" ");
Gr = this._items.filter((Yr) => Zr.every((an) => this.getSearchText(Yr).toLowerCase().includes(an.toLowerCase())));
}
return `
<div id="${FILTER_LIST_LIST}" class="${FILTER_LIST_LIST} pt-1 max-h-60 overflow-auto bg-stone-50 ${Xi(this, _i) ? "hidden" : ""}">
${Gr.map(
(Zr, Yr) => `
<a
href="${this.getURL(Zr)}"
hx-indicator="body"
hx-swap="outerHTML show:none"
hx-select="main"
hx-target="main"
class="${FILTER_LIST_ITEM} block px-2.5 py-0.5 hover:bg-slate-200 no-underline ${Yr % 2 === 0 ? "bg-stone-100" : "bg-stone-50"}"
${ds(this, Vi, Vs).call(this, Zr) ? 'aria-current="page"' : ""}>
${this.ActiveDot(Zr)}
${this.getLinkText(Zr)}
</a>
`
).join("")}
${this.NoItems(Gr)}
</div>
`;
}
}
_i = new WeakMap(), Ws = new WeakMap(), Vi = new WeakSet(), Vs = function(Gr) {
if (!Gr)
return !1;
let Zr = this.getHREF(Gr);
return Zr === "" ? !1 : this._queryparam && (new URLSearchParams(window.location.search).get(this._queryparam) || "") === Zr ? !0 : !!window.location.href.endsWith(Zr);
};
class ScrollButton extends HTMLElement {
constructor() {
super(), this.handleScroll = this.handleScroll.bind(this), this.scrollToTop = this.scrollToTop.bind(this);
}
connectedCallback() {
this.innerHTML = `
<button
class="
scroll-to-top
fixed bottom-5 right-5
hidden
bg-gray-800 text-white
p-2
rounded-md
cursor-pointer
text-2xl
hover:opacity-80
transition-opacity
border-0
"
aria-label="Scroll to top"
>
<i class="ri-arrow-up-double-line"></i>
</button>
`, this._button = this.querySelector(".scroll-to-top"), window.addEventListener("scroll", this.handleScroll), this._button.addEventListener("click", this.scrollToTop);
}
disconnectedCallback() {
window.removeEventListener("scroll", this.handleScroll), this._button.removeEventListener("click", this.scrollToTop);
}
handleScroll() {
(window.scrollY || document.documentElement.scrollTop) > 300 ? this._button.classList.remove("hidden") : this._button.classList.add("hidden");
}
scrollToTop() {
window.scrollTo({ top: 0, behavior: "smooth" });
}
}
class ToolTip extends HTMLElement {
static get observedAttributes() {
return ["position", "timeout"];
}
constructor() {
super(), this._tooltipBox = null, this._timeout = 200, this._hideTimeout = null, this._hiddenTimeout = null;
}
connectedCallback() {
this.classList.add(
"w-full",
"h-full",
"relative",
"block",
"leading-none",
"[&>*]:leading-normal"
);
const Wr = this.querySelector(".data-tip"), Gr = Wr ? Wr.innerHTML : "Tooltip";
Wr && Wr.classList.add("hidden"), this._tooltipBox = document.createElement("div"), this._tooltipBox.innerHTML = Gr, this._tooltipBox.className = [
"opacity-0",
"hidden",
"absolute",
"px-2",
"py-1",
"text-sm",
"text-white",
"bg-gray-900",
"rounded",
"shadow",
"z-10",
"whitespace-nowrap",
"transition-all",
"duration-200",
"font-sans"
].join(" "), this.appendChild(this._tooltipBox), this._updatePosition(), this.addEventListener("mouseenter", () => this._showTooltip()), this.addEventListener("mouseleave", () => this._hideTooltip());
}
attributeChangedCallback(Wr, Gr, Zr) {
Wr === "position" && this._tooltipBox && this._updatePosition(), Wr === "timeout" && Zr && (this._timeout = parseInt(Zr) || 200);
}
_showTooltip() {
clearTimeout(this._hideTimeout), clearTimeout(this._hiddenTimeout), this._tooltipBox.classList.remove("hidden"), setTimeout(() => {
this._tooltipBox.classList.remove("opacity-0"), this._tooltipBox.classList.add("opacity-100");
}, 16);
}
_hideTooltip() {
this._hideTimeout = setTimeout(() => {
this._tooltipBox.classList.remove("opacity-100"), this._tooltipBox.classList.add("opacity-0"), this._hiddenTimeout = setTimeout(() => {
this._tooltipBox.classList.add("hidden");
}, this._timeout + 100);
}, this._timeout);
}
_updatePosition() {
switch (this._tooltipBox.classList.remove(
"bottom-full",
"left-1/2",
"-translate-x-1/2",
"mb-2",
// top
"top-full",
"mt-2",
// bottom
"right-full",
"-translate-y-1/2",
"mr-2",
"top-1/2",
// left
"left-full",
"ml-2"
// right
), this.getAttribute("position") || "top") {
case "bottom":
this._tooltipBox.classList.add(
"top-full",
"left-1/2",
"transform",
"-translate-x-1/2",
"mt-0.5"
);
break;
case "left":
this._tooltipBox.classList.add(
"right-full",
"top-1/2",
"transform",
"-translate-y-1/2",
"mr-0.5"
);
break;
case "right":
this._tooltipBox.classList.add(
"left-full",
"top-1/2",
"transform",
"-translate-y-1/2",
"ml-0.5"
);
break;
case "top":
default:
this._tooltipBox.classList.add(
"bottom-full",
"left-1/2",
"transform",
"-translate-x-1/2",
"mb-0.5"
);
}
}
}
class PopupImage extends HTMLElement {
constructor() {
super(), this.overlay = null, this._preview = null, this._description = null, this._imageURL = "", this._hideDLButton = !1;
}
connectedCallback() {
this.classList.add("cursor-pointer"), this.classList.add("select-none"), this._imageURL = this.getAttribute("data-image-url") || "", this._hideDLButton = this.getAttribute("data-hide-dl-button") || !1, this._preview = this.querySelector("img"), this._description = this.querySelector(".image-description"), this._preview && this._preview.addEventListener("click", () => {
this.showOverlay();
});
}
disconnectedCallback() {
this.overlay && this.overlay.parentNode && this.overlay.parentNode.removeChild(this.overlay);
}
showOverlay() {
this.overlay = document.createElement("div"), this.overlay.classList.add(
"fixed",
"inset-0",
"z-50",
"bg-black/70",
"flex",
"items-center",
"justify-center",
"p-4"
), this.overlay.innerHTML = `
<div class="relative w-max max-w-dvw max-h-dvh shadow-lg flex flex-col items-center justify-center gap-4">
<div>
<div class="absolute -right-16 text-white text-4xl flex flex-col">
<button class="hover:text-gray-300 cursor-pointer focus:outline-none" aria-label="Close popup">
<i class="ri-close-fill text-4xl"></i>
</button>
${this.downloadButton()}
</div>
<img
src="${this._imageURL}"
alt="Popup Image"
class="full max-h-[80vh] max-w-[80vw] object-contain block relative ${this.descriptionImgClass()}"
/>
${this.description()}
</div>
</div>
`;
const Wr = this.overlay.querySelector("button");
Wr && Wr.addEventListener("click", () => {
this.hideOverlay();
}), this.overlay.addEventListener("click", (Gr) => {
Gr.target === this.overlay && this.hideOverlay();
}), document.body.appendChild(this.overlay);
}
descriptionImgClass() {
return this.description ? "" : "0";
}
description() {
return this._description ? `
<div class="font-serif text-left description-content mt-3 text-slate-900 ">
<div class="max-w-[80ch] hyphens-auto px-6 py-2 bg-stone-50 shadow-lg">
${this._description.innerHTML}
</div>
</div>
` : "";
}
downloadButton() {
return this._hideDLButton ? "" : `
<tool-tip position="right">
<a href="${this._imageURL}" target="_blank" class="text-white no-underline hover:text-gray-300"><i class="ri-file-download-line"></i></a>
<div class="data-tip">Bild herunterladen</div>
</tool-tip>
`;
}
hideOverlay() {
this.overlay.parentNode.removeChild(this.overlay), this.overlay = null;
}
}
class Tablist extends HTMLElement {
static get observedAttributes() {
}
constructor() {
super(), this._showall = !1, this.shown = -1, this._headings = [], this._contents = [];
}
connectedCallback() {
this._headings = Array.from(this.querySelectorAll(".tab-list-head")), this._contents = Array.from(this.querySelectorAll(".tab-list-panel")), this.hookupEvtHandlers(), this.hideDependent(), this._headings.length === 1 && this.expand(0);
}
expand(Wr) {
Wr < 0 || Wr >= this._headings.length || (this.shown = Wr, this._contents.forEach((Gr, Zr) => {
Zr === Wr ? (Gr.classList.remove("hidden"), this._headings[Zr].setAttribute("aria-pressed", "true")) : (Gr.classList.add("hidden"), this._headings[Zr].setAttribute("aria-pressed", "false"));
}));
}
hookupEvtHandlers() {
for (let Wr of this._headings)
Wr.addEventListener("click", this.handleTabClick.bind(this)), Wr.classList.add("cursor-pointer"), Wr.classList.add("select-none"), Wr.setAttribute("role", "button"), Wr.setAttribute("aria-pressed", "false"), Wr.setAttribute("tabindex", "0");
for (let Wr of this._contents)
Wr.classList.add("hidden");
}
restore() {
for (let Wr of this._headings)
Wr.classList.add("cursor-pointer"), Wr.classList.add("select-none"), Wr.setAttribute("role", "button"), Wr.setAttribute("aria-pressed", "false"), Wr.setAttribute("tabindex", "0"), Wr.classList.remove("pointer-events-none"), Wr.classList.remove("!text-slate-900");
for (let Wr of this._contents)
Wr.classList.add("hidden");
}
disable() {
for (let Wr of this._headings)
Wr.classList.remove("cursor-pointer"), Wr.classList.remove("select-none"), Wr.removeAttribute("role"), Wr.removeAttribute("aria-pressed"), Wr.removeAttribute("tabindex"), Wr.classList.add("pointer-events-none"), Wr.classList.add("!text-slate-900");
}
showAll() {
this._showall = !0, this.shown = -1, this.disable(), this._contents.forEach((Wr, Gr) => {
Wr.classList.remove("hidden");
let Zr = this._headings[Gr], Yr = Zr.querySelectorAll(".show-opened");
for (let sn of Yr)
sn.classList.add("hidden");
let an = Zr.querySelectorAll(".show-closed");
for (let sn of an)
sn.classList.add("hidden");
});
}
default() {
this._showall = !1, this.restore(), this.hideDependent();
}
hideDependent() {
if (this.shown < 0)
for (const Wr of this._headings)
this._hideAllDep(Wr, !1);
else
this._headings.forEach((Wr, Gr) => {
this._hideAllDep(Wr, Gr === this.shown);
});
}
_hideAllDep(Wr, Gr) {
const Zr = Wr.querySelectorAll(".show-closed");
for (let an of Zr)
Gr ? an.classList.add("hidden") : an.classList.remove("hidden");
const Yr = Array.from(Wr.querySelectorAll(".show-opened"));
for (let an of Yr)
Gr ? an.classList.remove("hidden") : an.classList.add("hidden");
}
handleTabClick(Wr) {
if (!Wr.target) {
console.warn("Invalid event target");
return;
}
const Gr = this.findParentWithClass(Wr.target, "tab-list-head");
if (!Gr) {
console.warn("No parent found with class 'tab-list-head'");
return;
}
const Zr = this._headings.indexOf(Gr);
Zr === this.shown ? (this._contents[Zr].classList.toggle("hidden"), this._headings[Zr].setAttribute("aria-pressed", "false"), this.shown = -1) : this.expand(Zr), this.hideDependent();
}
findParentWithClass(Wr, Gr) {
for (; Wr; ) {
if (Wr.classList && Wr.classList.contains(Gr))
return Wr;
Wr = Wr.parentElement;
}
return null;
}
}
class AbbreviationTooltips extends HTMLElement {
static get observedAttributes() {
return ["data-text", "data-abbrevmap"];
}
static get defaultAbbrevMap() {
return {
"#": "Hinweis auf weitere Informationen in der Anmerkung.",
$: "vermutlich",
"+++": "Inhalte aus mehreren Almanachen interpoliert",
B: "Blatt",
BB: "Blätter",
C: "Corrigenda",
Diagr: "Diagramm",
G: "Graphik",
"G-Verz": "Verzeichnis der Kupfer u. ä.",
GG: "Graphiken",
Hrsg: "Herausgeber",
"I-Verz": "Inhaltsverzeichnis",
Kal: "Kalendarium",
Kr: "Karte",
MusB: "Musikbeigabe",
MusBB: "Musikbeigaben",
S: "Seite",
SS: "Seiten",
Sp: "Spiegel",
T: "Titel",
TG: "Titelgraphik, Titelportrait etc",
"TG r": "Titelgraphik, Titelportrait etc recto",
"TG v": "Titelgraphik, Titelportrait etc verso",
Tab: "Tabelle",
UG: "Umschlaggraphik",
"UG r": "Umschlaggraphik recto",
"UG v": "Umschlaggraphik verso",
VB: "Vorsatzblatt",
Vf: "Verfasser",
VrlgM: "Verlagsmitteilung",
Vrwrt: "Vorwort",
ar: "arabische Paginierung",
ar1: "erste arabische Paginierung",
ar2: "zweite arabische Paginierung",
ar3: "dritte arabische Paginierung",
ar4: "vierte arabische Paginierung",
ar5: "fünfte arabische Paginierung",
ar6: "sechste arabische Paginierung",
ar7: "siebte arabische Paginierung",
gA: "graphische Anleitung",
gT: "graphischer Titel",
gTzA: "graphische Tanzanleitung",
nT: "Nachtitel",
röm: "römische Paginierung",
röm1: "erste römische Paginierung",
röm2: "zweite römische Paginierung",
röm3: "dritte römische Paginierung",
röm4: "vierte römische Paginierung",
röm5: "fünfte römische Paginierung",
röm6: "sechste römische Paginierung",
röm7: "siebte römische Paginierung",
vT: "Vortitel",
zT: "Zwischentitel",
"§§": "Hinweis auf Mängel im Almanach (Beschädigungen, fehlende Graphiken, unvollständige Sammlungen etc) in der Anmerkung"
};
}
constructor() {
super(), this._abbrevMap = AbbreviationTooltips.defaultAbbrevMap;
}
connectedCallback() {
this.render();
}
attributeChangedCallback(Wr, Gr, Zr) {
Gr !== Zr && (Wr === "data-abbrevmap" && this._parseAndSetAbbrevMap(Zr), this.render());
}
_parseAndSetAbbrevMap(Wr) {
if (!Wr) {
this._abbrevMap = AbbreviationTooltips.defaultAbbrevMap;
return;
}
try {
this._abbrevMap = JSON.parse(Wr);
} catch {
this._abbrevMap = AbbreviationTooltips.defaultAbbrevMap;
}
}
setAbbrevMap(Wr) {
typeof Wr == "object" && Wr !== null && (this._abbrevMap = Wr, this.render());
}
get text() {
return this.getAttribute("data-text") || "";
}
set text(Wr) {
this.setAttribute("data-text", Wr);
}
render() {
this.innerHTML = this.transformText(this.text, this._abbrevMap);
}
transformText(Wr, Gr) {
let Zr = "", Yr = 0;
for (; Yr < Wr.length; ) {
if (Yr > 0 && !this.isSpaceOrPunct(Wr[Yr - 1])) {
Zr += Wr[Yr], Yr++;
continue;
}
const an = this.findLongestAbbrevAt(Wr, Yr, Gr);
if (an) {
const { match: sn, meaning: ln } = an;
Zr += `
<tool-tip position="top" class="!inline" timeout="300">
<div class="data-tip p-2 text-sm text-white bg-gray-700 rounded shadow">
${ln}
</div>
<span class="cursor-help text-blue-900 hover:text-slate-800">
${sn}
</span>
</tool-tip>
`, Yr += sn.length;
} else
Zr += Wr[Yr], Yr++;
}
return Zr;
}
findLongestAbbrevAt(Wr, Gr, Zr) {
let Yr = null, an = 0;
for (const sn of Object.keys(Zr))
Wr.startsWith(sn, Gr) && sn.length > an && (Yr = sn, an = sn.length);
return Yr ? { match: Yr, meaning: Zr[Yr] } : null;
}
isSpaceOrPunct(Wr) {
return /\s|[.,;:!?]/.test(Wr);
}
}
class IntLink extends HTMLElement {
constructor() {
super();
}
connectedCallback() {
this.style.cursor = "pointer", this.addEventListener("click", this.handleClick);
}
disconnectedCallback() {
this.removeEventListener("click", this.handleClick);
}
handleClick(Wr) {
const Gr = this.getAttribute("data-jump");
if (Gr) {
const Zr = document.querySelector(Gr);
Zr ? Zr.scrollIntoView({ behavior: "smooth" }) : console.warn(`No element found for selector: ${Gr}`);
}
}
}
var ps;
class ImageReel extends HTMLElement {
constructor() {
super();
xi(this, ps, 176);
this._images = [];
}
connectedCallback() {
this._images = Array.from(this.querySelectorAll(".primages")), this.calculateShownImages();
const Gr = new ResizeObserver((Zr, Yr) => {
this.calculateShownImages();
});
this._resizeObserver = Gr, Gr.observe(this);
}
disconnectedCallback() {
this._resizeObserver.unobserve(this);
}
calculateShownImages() {
const Gr = this.getBoundingClientRect();
console.log(Gr);
const Zr = Math.floor(Gr.width / (Xi(this, ps) + 10));
for (let Yr = 0; Yr < this._images.length; Yr++)
Yr < Zr - 1 ? this._images[Yr].classList.remove("hidden") : this._images[Yr].classList.add("hidden");
}
}
ps = new WeakMap();
customElements.define(INT_LINK_ELEMENT, IntLink);
customElements.define(ABBREV_TOOLTIPS_ELEMENT, AbbreviationTooltips);
customElements.define(FILTER_LIST_ELEMENT, FilterList);
customElements.define(SCROLL_BUTTON_ELEMENT, ScrollButton);
customElements.define(TOOLTIP_ELEMENT, ToolTip);
customElements.define(POPUP_IMAGE_ELEMENT, PopupImage);
customElements.define(TABLIST_ELEMENT, Tablist);
customElements.define(FILTER_PILL_ELEMENT, FilterPill);
customElements.define(IMAGE_REEL_ELEMENT, ImageReel);
export {
AbbreviationTooltips,
FilterList,
ScrollButton,
XSLTParseProcess
};