birth-of-date-v3
Version:
Birth Of Date V3
8,311 lines • 245 kB
JavaScript
import { isVNode as mi, Comment as gi, Fragment as ue, reactive as Qt, computed as h, watchEffect as qe, toRefs as zl, capitalize as Hl, shallowRef as U, unref as Ce, getCurrentInstance as yi, inject as he, ref as $, provide as Le, warn as Jt, defineComponent as hi, camelize as Wl, h as Zt, isRef as st, createVNode as c, mergeProps as X, toRef as G, Text as bi, TransitionGroup as En, Transition as nt, watch as K, onBeforeMount as jl, nextTick as ke, onBeforeUnmount as $e, withDirectives as Fe, resolveDirective as vt, vShow as mt, onScopeDispose as Ve, effectScope as On, toRaw as re, onMounted as Ot, onUpdated as Si, readonly as Bn, resolveDynamicComponent as wi, Teleport as Ci, onDeactivated as pi, cloneVNode as xi, createTextVNode as Ul, useCssVars as ki, openBlock as We, createElementBlock as je, normalizeStyle as Ft, createElementVNode as Se, normalizeClass as Be, createCommentVNode as Je, toDisplayString as rn } from "vue";
const Vi = (e, n) => {
const t = e.__vccOpts || e;
for (const [l, a] of n)
t[l] = a;
return t;
}, me = typeof window < "u", _n = me && "IntersectionObserver" in window;
function Gl(e, n, t) {
const l = n.length - 1;
if (l < 0) return e === void 0 ? t : e;
for (let a = 0; a < l; a++) {
if (e == null)
return t;
e = e[n[a]];
}
return e == null || e[n[l]] === void 0 ? t : e[n[l]];
}
function gt(e, n) {
if (e === n) return !0;
if (e instanceof Date && n instanceof Date && e.getTime() !== n.getTime() || e !== Object(e) || n !== Object(n))
return !1;
const t = Object.keys(e);
return t.length !== Object.keys(n).length ? !1 : t.every((l) => gt(e[l], n[l]));
}
function Ii(e, n, t) {
return e == null || !n || typeof n != "string" ? t : e[n] !== void 0 ? e[n] : (n = n.replace(/\[(\w+)\]/g, ".$1"), n = n.replace(/^\./, ""), Gl(e, n.split("."), t));
}
function De(e, n, t) {
if (n === !0) return e === void 0 ? t : e;
if (n == null || typeof n == "boolean") return t;
if (e !== Object(e)) {
if (typeof n != "function") return t;
const a = n(e, t);
return typeof a > "u" ? t : a;
}
if (typeof n == "string") return Ii(e, n, t);
if (Array.isArray(n)) return Gl(e, n, t);
if (typeof n != "function") return t;
const l = n(e, t);
return typeof l > "u" ? t : l;
}
function q(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "px";
if (!(e == null || e === ""))
return isNaN(+e) ? String(e) : isFinite(+e) ? `${Number(e)}${n}` : void 0;
}
function Pi(e) {
return e !== null && typeof e == "object" && !Array.isArray(e);
}
function tl(e) {
let n;
return e !== null && typeof e == "object" && ((n = Object.getPrototypeOf(e)) === Object.prototype || n === null);
}
function Kl(e) {
if (e && "$el" in e) {
const n = e.$el;
return (n == null ? void 0 : n.nodeType) === Node.TEXT_NODE ? n.nextElementSibling : n;
}
return e;
}
const nl = Object.freeze({
enter: 13,
tab: 9,
delete: 46,
esc: 27,
space: 32,
up: 38,
down: 40,
left: 37,
right: 39,
end: 35,
home: 36,
del: 46,
backspace: 8,
insert: 45,
pageup: 33,
pagedown: 34,
shift: 16
});
function un(e, n) {
return n.every((t) => e.hasOwnProperty(t));
}
function ql(e, n) {
const t = {}, l = new Set(Object.keys(e));
for (const a of n)
l.has(a) && (t[a] = e[a]);
return t;
}
function ll(e, n, t) {
const l = /* @__PURE__ */ Object.create(null), a = /* @__PURE__ */ Object.create(null);
for (const i in e)
n.some((o) => o instanceof RegExp ? o.test(i) : o === i) && !(t != null && t.some((o) => o === i)) ? l[i] = e[i] : a[i] = e[i];
return [l, a];
}
function at(e, n) {
const t = {
...e
};
return n.forEach((l) => delete t[l]), t;
}
function Ai(e, n) {
const t = {};
return n.forEach((l) => t[l] = e[l]), t;
}
const Yl = /^on[^a-z]/, Tn = (e) => Yl.test(e), Ei = ["onAfterscriptexecute", "onAnimationcancel", "onAnimationend", "onAnimationiteration", "onAnimationstart", "onAuxclick", "onBeforeinput", "onBeforescriptexecute", "onChange", "onClick", "onCompositionend", "onCompositionstart", "onCompositionupdate", "onContextmenu", "onCopy", "onCut", "onDblclick", "onFocusin", "onFocusout", "onFullscreenchange", "onFullscreenerror", "onGesturechange", "onGestureend", "onGesturestart", "onGotpointercapture", "onInput", "onKeydown", "onKeypress", "onKeyup", "onLostpointercapture", "onMousedown", "onMousemove", "onMouseout", "onMouseover", "onMouseup", "onMousewheel", "onPaste", "onPointercancel", "onPointerdown", "onPointerenter", "onPointerleave", "onPointermove", "onPointerout", "onPointerover", "onPointerup", "onReset", "onSelect", "onSubmit", "onTouchcancel", "onTouchend", "onTouchmove", "onTouchstart", "onTransitioncancel", "onTransitionend", "onTransitionrun", "onTransitionstart", "onWheel"];
function Xl(e) {
const [n, t] = ll(e, [Yl]), l = at(n, Ei), [a, i] = ll(t, ["class", "style", "id", /^data-/]);
return Object.assign(a, n), Object.assign(i, l), [a, i];
}
function pe(e) {
return e == null ? [] : Array.isArray(e) ? e : [e];
}
function Oi(e, n) {
let t = 0;
const l = function() {
for (var a = arguments.length, i = new Array(a), o = 0; o < a; o++)
i[o] = arguments[o];
clearTimeout(t), t = setTimeout(() => e(...i), Ce(n));
};
return l.clear = () => {
clearTimeout(t);
}, l.immediate = e, l;
}
function Ge(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 1;
return Math.max(n, Math.min(t, e));
}
function al(e, n) {
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "0";
return e + t.repeat(Math.max(0, n - e.length));
}
function Bi(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 1;
const t = [];
let l = 0;
for (; l < e.length; )
t.push(e.substr(l, n)), l += n;
return t;
}
function Ne() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, t = arguments.length > 2 ? arguments[2] : void 0;
const l = {};
for (const a in e)
l[a] = e[a];
for (const a in n) {
const i = e[a], o = n[a];
if (tl(i) && tl(o)) {
l[a] = Ne(i, o, t);
continue;
}
if (t && Array.isArray(i) && Array.isArray(o)) {
l[a] = t(i, o);
continue;
}
l[a] = o;
}
return l;
}
function Ql(e) {
return e.map((n) => n.type === ue ? Ql(n.children) : n).flat();
}
function Ze() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "";
if (Ze.cache.has(e)) return Ze.cache.get(e);
const n = e.replace(/[^a-z]/gi, "-").replace(/\B([A-Z])/g, "-$1").toLowerCase();
return Ze.cache.set(e, n), n;
}
Ze.cache = /* @__PURE__ */ new Map();
function pt(e, n) {
if (!n || typeof n != "object") return [];
if (Array.isArray(n))
return n.map((t) => pt(e, t)).flat(1);
if (n.suspense)
return pt(e, n.ssContent);
if (Array.isArray(n.children))
return n.children.map((t) => pt(e, t)).flat(1);
if (n.component) {
if (Object.getOwnPropertySymbols(n.component.provides).includes(e))
return [n.component];
if (n.component.subTree)
return pt(e, n.component.subTree).flat(1);
}
return [];
}
function Ln(e) {
const n = Qt({}), t = h(e);
return qe(() => {
for (const l in t.value)
n[l] = t.value[l];
}, {
flush: "sync"
}), zl(n);
}
function Ht(e, n) {
return e.includes(n);
}
function Jl(e) {
return e[2].toLowerCase() + e.slice(3);
}
const xe = () => [Function, Array];
function il(e, n) {
return n = "on" + Hl(n), !!(e[n] || e[`${n}Once`] || e[`${n}Capture`] || e[`${n}OnceCapture`] || e[`${n}CaptureOnce`]);
}
function _i(e) {
for (var n = arguments.length, t = new Array(n > 1 ? n - 1 : 0), l = 1; l < n; l++)
t[l - 1] = arguments[l];
if (Array.isArray(e))
for (const a of e)
a(...t);
else typeof e == "function" && e(...t);
}
function Wt(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
const t = ["button", "[href]", 'input:not([type="hidden"])', "select", "textarea", "[tabindex]"].map((l) => `${l}${n ? ':not([tabindex="-1"])' : ""}:not([disabled])`).join(", ");
return [...e.querySelectorAll(t)];
}
function Zl(e, n, t) {
let l, a = e.indexOf(document.activeElement);
const i = n === "next" ? 1 : -1;
do
a += i, l = e[a];
while ((!l || l.offsetParent == null || !((t == null ? void 0 : t(l)) ?? !0)) && a < e.length && a >= 0);
return l;
}
function kt(e, n) {
var l, a, i, o;
const t = Wt(e);
if (!n)
(e === document.activeElement || !e.contains(document.activeElement)) && ((l = t[0]) == null || l.focus());
else if (n === "first")
(a = t[0]) == null || a.focus();
else if (n === "last")
(i = t.at(-1)) == null || i.focus();
else if (typeof n == "number")
(o = t[n]) == null || o.focus();
else {
const r = Zl(t, n);
r ? r.focus() : kt(e, n === "next" ? "first" : "last");
}
}
function Ti() {
}
function ct(e, n) {
if (!(me && typeof CSS < "u" && typeof CSS.supports < "u" && CSS.supports(`selector(${n})`))) return null;
try {
return !!e && e.matches(n);
} catch {
return null;
}
}
function Fn(e) {
return e.some((n) => mi(n) ? n.type === gi ? !1 : n.type !== ue || Fn(n.children) : !0) ? e : null;
}
function Li(e, n) {
if (!me || e === 0)
return n(), () => {
};
const t = window.setTimeout(n, e);
return () => window.clearTimeout(t);
}
function Fi(e, n) {
const t = e.clientX, l = e.clientY, a = n.getBoundingClientRect(), i = a.left, o = a.top, r = a.right, u = a.bottom;
return t >= i && t <= r && l >= o && l <= u;
}
function bn() {
const e = U(), n = (t) => {
e.value = t;
};
return Object.defineProperty(n, "value", {
enumerable: !0,
get: () => e.value,
set: (t) => e.value = t
}), Object.defineProperty(n, "el", {
enumerable: !0,
get: () => Kl(e.value)
}), n;
}
function Sn(e) {
const n = e.key.length === 1, t = !e.ctrlKey && !e.metaKey && !e.altKey;
return n && t;
}
function ge(e, n) {
const t = yi();
if (!t)
throw new Error(`[Vuetify] ${e} must be called from inside a setup function`);
return t;
}
function ze() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "composables";
const n = ge(e).type;
return Ze((n == null ? void 0 : n.aliasName) || (n == null ? void 0 : n.name));
}
let ea = 0, $t = /* @__PURE__ */ new WeakMap();
function He() {
const e = ge("getUid");
if ($t.has(e)) return $t.get(e);
{
const n = ea++;
return $t.set(e, n), n;
}
}
He.reset = () => {
ea = 0, $t = /* @__PURE__ */ new WeakMap();
};
function Mi(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ge("injectSelf");
const {
provides: t
} = n;
if (t && e in t)
return t[e];
}
const jt = Symbol.for("vuetify:defaults");
function Mn() {
const e = he(jt);
if (!e) throw new Error("[Vuetify] Could not find defaults instance");
return e;
}
function en(e, n) {
const t = Mn(), l = $(e), a = h(() => {
if (Ce(n == null ? void 0 : n.disabled)) return t.value;
const o = Ce(n == null ? void 0 : n.scoped), r = Ce(n == null ? void 0 : n.reset), u = Ce(n == null ? void 0 : n.root);
if (l.value == null && !(o || r || u)) return t.value;
let s = Ne(l.value, {
prev: t.value
});
if (o) return s;
if (r || u) {
const d = Number(r || 1 / 0);
for (let v = 0; v <= d && !(!s || !("prev" in s)); v++)
s = s.prev;
return s && typeof u == "string" && u in s && (s = Ne(Ne(s, {
prev: s
}), s[u])), s;
}
return s.prev ? Ne(s.prev, s) : s;
});
return Le(jt, a), a;
}
function Ri(e, n) {
var t, l;
return typeof ((t = e.props) == null ? void 0 : t[n]) < "u" || typeof ((l = e.props) == null ? void 0 : l[Ze(n)]) < "u";
}
function Di() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = arguments.length > 1 ? arguments[1] : void 0, t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Mn();
const l = ge("useDefaults");
if (n = n ?? l.type.name ?? l.type.__name, !n)
throw new Error("[Vuetify] Could not determine component name");
const a = h(() => {
var u;
return (u = t.value) == null ? void 0 : u[e._as ?? n];
}), i = new Proxy(e, {
get(u, s) {
var v, f, m, g, y, b, S;
const d = Reflect.get(u, s);
return s === "class" || s === "style" ? [(v = a.value) == null ? void 0 : v[s], d].filter((_) => _ != null) : typeof s == "string" && !Ri(l.vnode, s) ? ((f = a.value) == null ? void 0 : f[s]) !== void 0 ? (m = a.value) == null ? void 0 : m[s] : ((y = (g = t.value) == null ? void 0 : g.global) == null ? void 0 : y[s]) !== void 0 ? (S = (b = t.value) == null ? void 0 : b.global) == null ? void 0 : S[s] : d : d;
}
}), o = U();
qe(() => {
if (a.value) {
const u = Object.entries(a.value).filter((s) => {
let [d] = s;
return d.startsWith(d[0].toUpperCase());
});
o.value = u.length ? Object.fromEntries(u) : void 0;
} else
o.value = void 0;
});
function r() {
const u = Mi(jt, l);
Le(jt, h(() => o.value ? Ne((u == null ? void 0 : u.value) ?? {}, o.value) : u == null ? void 0 : u.value));
}
return {
props: i,
provideSubDefaults: r
};
}
const ta = ["top", "bottom"], $i = ["start", "end", "left", "right"];
function wn(e, n) {
let [t, l] = e.split(" ");
return l || (l = Ht(ta, t) ? "start" : Ht($i, t) ? "top" : "center"), {
side: ol(t, n),
align: ol(l, n)
};
}
function ol(e, n) {
return e === "start" ? n ? "right" : "left" : e === "end" ? n ? "left" : "right" : e;
}
function sn(e) {
return {
side: {
center: "center",
top: "bottom",
bottom: "top",
left: "right",
right: "left"
}[e.side],
align: e.align
};
}
function cn(e) {
return {
side: e.side,
align: {
center: "center",
top: "bottom",
bottom: "top",
left: "right",
right: "left"
}[e.align]
};
}
function rl(e) {
return {
side: e.align,
align: e.side
};
}
function ul(e) {
return Ht(ta, e.side) ? "y" : "x";
}
class et {
constructor(n) {
let {
x: t,
y: l,
width: a,
height: i
} = n;
this.x = t, this.y = l, this.width = a, this.height = i;
}
get top() {
return this.y;
}
get bottom() {
return this.y + this.height;
}
get left() {
return this.x;
}
get right() {
return this.x + this.width;
}
}
function sl(e, n) {
return {
x: {
before: Math.max(0, n.left - e.left),
after: Math.max(0, e.right - n.right)
},
y: {
before: Math.max(0, n.top - e.top),
after: Math.max(0, e.bottom - n.bottom)
}
};
}
function na(e) {
return Array.isArray(e) ? new et({
x: e[0],
y: e[1],
width: 0,
height: 0
}) : e.getBoundingClientRect();
}
function Rn(e) {
const n = e.getBoundingClientRect(), t = getComputedStyle(e), l = t.transform;
if (l) {
let a, i, o, r, u;
if (l.startsWith("matrix3d("))
a = l.slice(9, -1).split(/, /), i = +a[0], o = +a[5], r = +a[12], u = +a[13];
else if (l.startsWith("matrix("))
a = l.slice(7, -1).split(/, /), i = +a[0], o = +a[3], r = +a[4], u = +a[5];
else
return new et(n);
const s = t.transformOrigin, d = n.x - r - (1 - i) * parseFloat(s), v = n.y - u - (1 - o) * parseFloat(s.slice(s.indexOf(" ") + 1)), f = i ? n.width / i : e.offsetWidth + 1, m = o ? n.height / o : e.offsetHeight + 1;
return new et({
x: d,
y: v,
width: f,
height: m
});
} else
return new et(n);
}
function ut(e, n, t) {
if (typeof e.animate > "u") return {
finished: Promise.resolve()
};
let l;
try {
l = e.animate(n, t);
} catch {
return {
finished: Promise.resolve()
};
}
return typeof l.finished > "u" && (l.finished = new Promise((a) => {
l.onfinish = () => {
a(l);
};
})), l;
}
const Nt = /* @__PURE__ */ new WeakMap();
function Ni(e, n) {
Object.keys(n).forEach((t) => {
if (Tn(t)) {
const l = Jl(t), a = Nt.get(e);
if (n[t] == null)
a == null || a.forEach((i) => {
const [o, r] = i;
o === l && (e.removeEventListener(l, r), a.delete(i));
});
else if (!a || ![...a].some((i) => i[0] === l && i[1] === n[t])) {
e.addEventListener(l, n[t]);
const i = a || /* @__PURE__ */ new Set();
i.add([l, n[t]]), Nt.has(e) || Nt.set(e, i);
}
} else
n[t] == null ? e.removeAttribute(t) : e.setAttribute(t, n[t]);
});
}
function zi(e, n) {
Object.keys(n).forEach((t) => {
if (Tn(t)) {
const l = Jl(t), a = Nt.get(e);
a == null || a.forEach((i) => {
const [o, r] = i;
o === l && (e.removeEventListener(l, r), a.delete(i));
});
} else
e.removeAttribute(t);
});
}
const rt = 2.4, cl = 0.2126729, dl = 0.7151522, fl = 0.072175, Hi = 0.55, Wi = 0.58, ji = 0.57, Ui = 0.62, Mt = 0.03, vl = 1.45, Gi = 5e-4, Ki = 1.25, qi = 1.25, ml = 0.078, gl = 12.82051282051282, Rt = 0.06, yl = 1e-3;
function hl(e, n) {
const t = (e.r / 255) ** rt, l = (e.g / 255) ** rt, a = (e.b / 255) ** rt, i = (n.r / 255) ** rt, o = (n.g / 255) ** rt, r = (n.b / 255) ** rt;
let u = t * cl + l * dl + a * fl, s = i * cl + o * dl + r * fl;
if (u <= Mt && (u += (Mt - u) ** vl), s <= Mt && (s += (Mt - s) ** vl), Math.abs(s - u) < Gi) return 0;
let d;
if (s > u) {
const v = (s ** Hi - u ** Wi) * Ki;
d = v < yl ? 0 : v < ml ? v - v * gl * Rt : v - Rt;
} else {
const v = (s ** Ui - u ** ji) * qi;
d = v > -yl ? 0 : v > -ml ? v - v * gl * Rt : v + Rt;
}
return d * 100;
}
function tt(e) {
Jt(`Vuetify: ${e}`);
}
function Yi(e) {
Jt(`Vuetify error: ${e}`);
}
function Xi(e, n) {
n = Array.isArray(n) ? n.slice(0, -1).map((t) => `'${t}'`).join(", ") + ` or '${n.at(-1)}'` : `'${n}'`, Jt(`[Vuetify UPGRADE] '${e}' is deprecated, use ${n} instead.`);
}
function Cn(e) {
return !!e && /^(#|var\(--|(rgb|hsl)a?\()/.test(e);
}
function Qi(e) {
return Cn(e) && !/^((rgb|hsl)a?\()?var\(--/.test(e);
}
const bl = /^(?<fn>(?:rgb|hsl)a?)\((?<values>.+)\)/, Ji = {
rgb: (e, n, t, l) => ({
r: e,
g: n,
b: t,
a: l
}),
rgba: (e, n, t, l) => ({
r: e,
g: n,
b: t,
a: l
}),
hsl: (e, n, t, l) => Sl({
h: e,
s: n,
l: t,
a: l
}),
hsla: (e, n, t, l) => Sl({
h: e,
s: n,
l: t,
a: l
}),
hsv: (e, n, t, l) => Vt({
h: e,
s: n,
v: t,
a: l
}),
hsva: (e, n, t, l) => Vt({
h: e,
s: n,
v: t,
a: l
})
};
function xt(e) {
if (typeof e == "number")
return (isNaN(e) || e < 0 || e > 16777215) && tt(`'${e}' is not a valid hex color`), {
r: (e & 16711680) >> 16,
g: (e & 65280) >> 8,
b: e & 255
};
if (typeof e == "string" && bl.test(e)) {
const {
groups: n
} = e.match(bl), {
fn: t,
values: l
} = n, a = l.split(/,\s*/).map((i) => i.endsWith("%") && ["hsl", "hsla", "hsv", "hsva"].includes(t) ? parseFloat(i) / 100 : parseFloat(i));
return Ji[t](...a);
} else if (typeof e == "string") {
let n = e.startsWith("#") ? e.slice(1) : e;
[3, 4].includes(n.length) ? n = n.split("").map((l) => l + l).join("") : [6, 8].includes(n.length) || tt(`'${e}' is not a valid hex(a) color`);
const t = parseInt(n, 16);
return (isNaN(t) || t < 0 || t > 4294967295) && tt(`'${e}' is not a valid hex(a) color`), Zi(n);
} else if (typeof e == "object") {
if (un(e, ["r", "g", "b"]))
return e;
if (un(e, ["h", "s", "l"]))
return Vt(la(e));
if (un(e, ["h", "s", "v"]))
return Vt(e);
}
throw new TypeError(`Invalid color: ${e == null ? e : String(e) || e.constructor.name}
Expected #hex, #hexa, rgb(), rgba(), hsl(), hsla(), object or number`);
}
function Vt(e) {
const {
h: n,
s: t,
v: l,
a
} = e, i = (r) => {
const u = (r + n / 60) % 6;
return l - l * t * Math.max(Math.min(u, 4 - u, 1), 0);
}, o = [i(5), i(3), i(1)].map((r) => Math.round(r * 255));
return {
r: o[0],
g: o[1],
b: o[2],
a
};
}
function Sl(e) {
return Vt(la(e));
}
function la(e) {
const {
h: n,
s: t,
l,
a
} = e, i = l + t * Math.min(l, 1 - l), o = i === 0 ? 0 : 2 - 2 * l / i;
return {
h: n,
s: o,
v: i,
a
};
}
function Zi(e) {
e = eo(e);
let [n, t, l, a] = Bi(e, 2).map((i) => parseInt(i, 16));
return a = a === void 0 ? a : a / 255, {
r: n,
g: t,
b: l,
a
};
}
function eo(e) {
return e.startsWith("#") && (e = e.slice(1)), e = e.replace(/([^0-9a-f])/gi, "F"), (e.length === 3 || e.length === 4) && (e = e.split("").map((n) => n + n).join("")), e.length !== 6 && (e = al(al(e, 6), 8, "F")), e;
}
function to(e) {
const n = Math.abs(hl(xt(0), xt(e)));
return Math.abs(hl(xt(16777215), xt(e))) > Math.min(n, 50) ? "#fff" : "#000";
}
function F(e, n) {
return (t) => Object.keys(e).reduce((l, a) => {
const o = typeof e[a] == "object" && e[a] != null && !Array.isArray(e[a]) ? e[a] : {
type: e[a]
};
return t && a in t ? l[a] = {
...o,
default: t[a]
} : l[a] = o, n && !l[a].source && (l[a].source = n), l;
}, {});
}
const ae = F({
class: [String, Array, Object],
style: {
type: [String, Array, Object],
default: null
}
}, "component");
function Bt(e) {
if (e._setup = e._setup ?? e.setup, !e.name)
return tt("The component is missing an explicit name, unable to generate default prop value"), e;
if (e._setup) {
e.props = F(e.props ?? {}, e.name)();
const n = Object.keys(e.props).filter((t) => t !== "class" && t !== "style");
e.filterProps = function(l) {
return ql(l, n);
}, e.props._as = String, e.setup = function(l, a) {
const i = Mn();
if (!i.value) return e._setup(l, a);
const {
props: o,
provideSubDefaults: r
} = Di(l, l._as ?? e.name, i), u = e._setup(o, a);
return r(), u;
};
}
return e;
}
function Q() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !0;
return (n) => (e ? Bt : hi)(n);
}
function no(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "div", t = arguments.length > 2 ? arguments[2] : void 0;
return Q()({
name: t ?? Hl(Wl(e.replace(/__/g, "-"))),
props: {
tag: {
type: String,
default: n
},
...ae()
},
setup(l, a) {
let {
slots: i
} = a;
return () => {
var o;
return Zt(l.tag, {
class: [e, l.class],
style: l.style
}, (o = i.default) == null ? void 0 : o.call(i));
};
}
});
}
function aa(e) {
if (typeof e.getRootNode != "function") {
for (; e.parentNode; ) e = e.parentNode;
return e !== document ? null : document;
}
const n = e.getRootNode();
return n !== document && n.getRootNode({
composed: !0
}) !== document ? null : n;
}
const Ut = "cubic-bezier(0.4, 0, 0.2, 1)", lo = "cubic-bezier(0.0, 0, 0.2, 1)", ao = "cubic-bezier(0.4, 0, 1, 1)";
function ia(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1;
for (; e; ) {
if (n ? io(e) : Dn(e)) return e;
e = e.parentElement;
}
return document.scrollingElement;
}
function Gt(e, n) {
const t = [];
if (n && e && !n.contains(e)) return t;
for (; e && (Dn(e) && t.push(e), e !== n); )
e = e.parentElement;
return t;
}
function Dn(e) {
if (!e || e.nodeType !== Node.ELEMENT_NODE) return !1;
const n = window.getComputedStyle(e);
return n.overflowY === "scroll" || n.overflowY === "auto" && e.scrollHeight > e.clientHeight;
}
function io(e) {
if (!e || e.nodeType !== Node.ELEMENT_NODE) return !1;
const n = window.getComputedStyle(e);
return ["scroll", "auto"].includes(n.overflowY);
}
function oo(e) {
for (; e; ) {
if (window.getComputedStyle(e).position === "fixed")
return !0;
e = e.offsetParent;
}
return !1;
}
function ne(e) {
const n = ge("useRender");
n.render = e;
}
const ro = F({
defaults: Object,
disabled: Boolean,
reset: [Number, String],
root: [Boolean, String],
scoped: Boolean
}, "VDefaultsProvider"), Te = Q(!1)({
name: "VDefaultsProvider",
props: ro(),
setup(e, n) {
let {
slots: t
} = n;
const {
defaults: l,
disabled: a,
reset: i,
root: o,
scoped: r
} = zl(e);
return en(l, {
reset: i,
root: o,
scoped: r,
disabled: a
}), () => {
var u;
return (u = t.default) == null ? void 0 : u.call(t);
};
}
});
function $n(e) {
return Ln(() => {
const n = [], t = {};
if (e.value.background)
if (Cn(e.value.background)) {
if (t.backgroundColor = e.value.background, !e.value.text && Qi(e.value.background)) {
const l = xt(e.value.background);
if (l.a == null || l.a === 1) {
const a = to(l);
t.color = a, t.caretColor = a;
}
}
} else
n.push(`bg-${e.value.background}`);
return e.value.text && (Cn(e.value.text) ? (t.color = e.value.text, t.caretColor = e.value.text) : n.push(`text-${e.value.text}`)), {
colorClasses: n,
colorStyles: t
};
});
}
function Ye(e, n) {
const t = h(() => ({
text: st(e) ? e.value : n ? e[n] : null
})), {
colorClasses: l,
colorStyles: a
} = $n(t);
return {
textColorClasses: l,
textColorStyles: a
};
}
function Ke(e, n) {
const t = h(() => ({
background: st(e) ? e.value : n ? e[n] : null
})), {
colorClasses: l,
colorStyles: a
} = $n(t);
return {
backgroundColorClasses: l,
backgroundColorStyles: a
};
}
const se = [String, Function, Object, Array], uo = Symbol.for("vuetify:icons"), tn = F({
icon: {
type: se
},
// Could not remove this and use makeTagProps, types complained because it is not required
tag: {
type: String,
required: !0
}
}, "icon"), wl = Q()({
name: "VComponentIcon",
props: tn(),
setup(e, n) {
let {
slots: t
} = n;
return () => {
const l = e.icon;
return c(e.tag, null, {
default: () => {
var a;
return [e.icon ? c(l, null, null) : (a = t.default) == null ? void 0 : a.call(t)];
}
});
};
}
}), so = Bt({
name: "VSvgIcon",
inheritAttrs: !1,
props: tn(),
setup(e, n) {
let {
attrs: t
} = n;
return () => c(e.tag, X(t, {
style: null
}), {
default: () => [c("svg", {
class: "v-icon__svg",
xmlns: "http://www.w3.org/2000/svg",
viewBox: "0 0 24 24",
role: "img",
"aria-hidden": "true"
}, [Array.isArray(e.icon) ? e.icon.map((l) => Array.isArray(l) ? c("path", {
d: l[0],
"fill-opacity": l[1]
}, null) : c("path", {
d: l
}, null)) : c("path", {
d: e.icon
}, null)])]
});
}
});
Bt({
name: "VLigatureIcon",
props: tn(),
setup(e) {
return () => c(e.tag, null, {
default: () => [e.icon]
});
}
});
Bt({
name: "VClassIcon",
props: tn(),
setup(e) {
return () => c(e.tag, {
class: e.icon
}, null);
}
});
const co = (e) => {
const n = he(uo);
if (!n) throw new Error("Missing Vuetify Icons provide!");
return {
iconData: h(() => {
var u;
const l = Ce(e);
if (!l) return {
component: wl
};
let a = l;
if (typeof a == "string" && (a = a.trim(), a.startsWith("$") && (a = (u = n.aliases) == null ? void 0 : u[a.slice(1)])), a || tt(`Could not find aliased icon "${l}"`), Array.isArray(a))
return {
component: so,
icon: a
};
if (typeof a != "string")
return {
component: wl,
icon: a
};
const i = Object.keys(n.sets).find((s) => typeof a == "string" && a.startsWith(`${s}:`)), o = i ? a.slice(i.length + 1) : a;
return {
component: n.sets[i ?? n.defaultSet].component,
icon: o
};
})
};
}, fo = ["x-small", "small", "default", "large", "x-large"], Nn = F({
size: {
type: [String, Number],
default: "default"
}
}, "size");
function zn(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
return Ln(() => {
let t, l;
return Ht(fo, e.size) ? t = `${n}--size-${e.size}` : e.size && (l = {
width: q(e.size),
height: q(e.size)
}), {
sizeClasses: t,
sizeStyles: l
};
});
}
const Me = F({
tag: {
type: String,
default: "div"
}
}, "tag"), Cl = Symbol.for("vuetify:theme"), Ee = F({
theme: String
}, "theme");
function Re(e) {
ge("provideTheme");
const n = he(Cl, null);
if (!n) throw new Error("Could not find Vuetify theme injection");
const t = h(() => e.theme ?? n.name.value), l = h(() => n.themes.value[t.value]), a = h(() => n.isDisabled ? void 0 : `v-theme--${t.value}`), i = {
...n,
name: t,
current: l,
themeClasses: a
};
return Le(Cl, i), i;
}
const vo = F({
color: String,
disabled: Boolean,
start: Boolean,
end: Boolean,
icon: se,
...ae(),
...Nn(),
...Me({
tag: "i"
}),
...Ee()
}, "VIcon"), we = Q()({
name: "VIcon",
props: vo(),
setup(e, n) {
let {
attrs: t,
slots: l
} = n;
const a = $(), {
themeClasses: i
} = Re(e), {
iconData: o
} = co(h(() => a.value || e.icon)), {
sizeClasses: r
} = zn(e), {
textColorClasses: u,
textColorStyles: s
} = Ye(G(e, "color"));
return ne(() => {
var f, m;
const d = (f = l.default) == null ? void 0 : f.call(l);
d && (a.value = (m = Ql(d).filter((g) => g.type === bi && g.children && typeof g.children == "string")[0]) == null ? void 0 : m.children);
const v = !!(t.onClick || t.onClickOnce);
return c(o.value.component, {
tag: e.tag,
icon: o.value.icon,
class: ["v-icon", "notranslate", i.value, r.value, u.value, {
"v-icon--clickable": v,
"v-icon--disabled": e.disabled,
"v-icon--start": e.start,
"v-icon--end": e.end
}, e.class],
style: [r.value ? void 0 : {
fontSize: q(e.size),
height: q(e.size),
width: q(e.size)
}, s.value, e.style],
role: v ? "button" : void 0,
"aria-hidden": !v,
tabindex: v ? e.disabled ? -1 : 0 : void 0
}, {
default: () => [d]
});
}), {};
}
}), yt = F({
height: [Number, String],
maxHeight: [Number, String],
maxWidth: [Number, String],
minHeight: [Number, String],
minWidth: [Number, String],
width: [Number, String]
}, "dimension");
function ht(e) {
return {
dimensionStyles: h(() => {
const t = {}, l = q(e.height), a = q(e.maxHeight), i = q(e.maxWidth), o = q(e.minHeight), r = q(e.minWidth), u = q(e.width);
return l != null && (t.height = l), a != null && (t.maxHeight = a), i != null && (t.maxWidth = i), o != null && (t.minHeight = o), r != null && (t.minWidth = r), u != null && (t.width = u), t;
})
};
}
function mo(e) {
return {
aspectStyles: h(() => {
const n = Number(e.aspectRatio);
return n ? {
paddingBottom: String(1 / n * 100) + "%"
} : void 0;
})
};
}
const oa = F({
aspectRatio: [String, Number],
contentClass: null,
inline: Boolean,
...ae(),
...yt()
}, "VResponsive"), pl = Q()({
name: "VResponsive",
props: oa(),
setup(e, n) {
let {
slots: t
} = n;
const {
aspectStyles: l
} = mo(e), {
dimensionStyles: a
} = ht(e);
return ne(() => {
var i;
return c("div", {
class: ["v-responsive", {
"v-responsive--inline": e.inline
}, e.class],
style: [a.value, e.style]
}, [c("div", {
class: "v-responsive__sizer",
style: l.value
}, null), (i = t.additional) == null ? void 0 : i.call(t), t.default && c("div", {
class: ["v-responsive__content", e.contentClass]
}, [t.default()])]);
}), {};
}
}), it = F({
rounded: {
type: [Boolean, Number, String],
default: void 0
},
tile: Boolean
}, "rounded");
function ot(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
return {
roundedClasses: h(() => {
const l = st(e) ? e.value : e.rounded, a = st(e) ? e.value : e.tile, i = [];
if (l === !0 || l === "")
i.push(`${n}--rounded`);
else if (typeof l == "string" || l === 0)
for (const o of String(l).split(" "))
i.push(`rounded-${o}`);
else (a || l === !1) && i.push("rounded-0");
return i;
})
};
}
const bt = F({
transition: {
type: [Boolean, String, Object],
default: "fade-transition",
validator: (e) => e !== !0
}
}, "transition"), Ue = (e, n) => {
let {
slots: t
} = n;
const {
transition: l,
disabled: a,
group: i,
...o
} = e, {
component: r = i ? En : nt,
...u
} = typeof l == "object" ? l : {};
return Zt(r, X(typeof l == "string" ? {
name: a ? "" : l
} : u, typeof l == "string" ? {} : Object.fromEntries(Object.entries({
disabled: a,
group: i
}).filter((s) => {
let [d, v] = s;
return v !== void 0;
})), o), t);
};
function go(e, n) {
if (!_n) return;
const t = n.modifiers || {}, l = n.value, {
handler: a,
options: i
} = typeof l == "object" ? l : {
handler: l,
options: {}
}, o = new IntersectionObserver(function() {
var v;
let r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], u = arguments.length > 1 ? arguments[1] : void 0;
const s = (v = e._observe) == null ? void 0 : v[n.instance.$.uid];
if (!s) return;
const d = r.some((f) => f.isIntersecting);
a && (!t.quiet || s.init) && (!t.once || d || s.init) && a(d, r, u), d && t.once ? ra(e, n) : s.init = !0;
}, i);
e._observe = Object(e._observe), e._observe[n.instance.$.uid] = {
init: !1,
observer: o
}, o.observe(e);
}
function ra(e, n) {
var l;
const t = (l = e._observe) == null ? void 0 : l[n.instance.$.uid];
t && (t.observer.unobserve(e), delete e._observe[n.instance.$.uid]);
}
const ua = {
mounted: go,
unmounted: ra
}, yo = F({
absolute: Boolean,
alt: String,
cover: Boolean,
color: String,
draggable: {
type: [Boolean, String],
default: void 0
},
eager: Boolean,
gradient: String,
lazySrc: String,
options: {
type: Object,
// For more information on types, navigate to:
// https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API
default: () => ({
root: void 0,
rootMargin: void 0,
threshold: void 0
})
},
sizes: String,
src: {
type: [String, Object],
default: ""
},
crossorigin: String,
referrerpolicy: String,
srcset: String,
position: String,
...oa(),
...ae(),
...it(),
...bt()
}, "VImg"), ho = Q()({
name: "VImg",
directives: {
intersect: ua
},
props: yo(),
emits: {
loadstart: (e) => !0,
load: (e) => !0,
error: (e) => !0
},
setup(e, n) {
let {
emit: t,
slots: l
} = n;
const {
backgroundColorClasses: a,
backgroundColorStyles: i
} = Ke(G(e, "color")), {
roundedClasses: o
} = ot(e), r = ge("VImg"), u = U(""), s = $(), d = U(e.eager ? "loading" : "idle"), v = U(), f = U(), m = h(() => e.src && typeof e.src == "object" ? {
src: e.src.src,
srcset: e.srcset || e.src.srcset,
lazySrc: e.lazySrc || e.src.lazySrc,
aspect: Number(e.aspectRatio || e.src.aspect || 0)
} : {
src: e.src,
srcset: e.srcset,
lazySrc: e.lazySrc,
aspect: Number(e.aspectRatio || 0)
}), g = h(() => m.value.aspect || v.value / f.value || 0);
K(() => e.src, () => {
y(d.value !== "idle");
}), K(g, (C, p) => {
!C && p && s.value && V(s.value);
}), jl(() => y());
function y(C) {
if (!(e.eager && C) && !(_n && !C && !e.eager)) {
if (d.value = "loading", m.value.lazySrc) {
const p = new Image();
p.src = m.value.lazySrc, V(p, null);
}
m.value.src && ke(() => {
var p;
t("loadstart", ((p = s.value) == null ? void 0 : p.currentSrc) || m.value.src), setTimeout(() => {
var w;
if (!r.isUnmounted)
if ((w = s.value) != null && w.complete) {
if (s.value.naturalWidth || S(), d.value === "error") return;
g.value || V(s.value, null), d.value === "loading" && b();
} else
g.value || V(s.value), _();
});
});
}
}
function b() {
var C;
r.isUnmounted || (_(), V(s.value), d.value = "loaded", t("load", ((C = s.value) == null ? void 0 : C.currentSrc) || m.value.src));
}
function S() {
var C;
r.isUnmounted || (d.value = "error", t("error", ((C = s.value) == null ? void 0 : C.currentSrc) || m.value.src));
}
function _() {
const C = s.value;
C && (u.value = C.currentSrc || C.src);
}
let B = -1;
$e(() => {
clearTimeout(B);
});
function V(C) {
let p = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 100;
const w = () => {
if (clearTimeout(B), r.isUnmounted) return;
const {
naturalHeight: T,
naturalWidth: N
} = C;
T || N ? (v.value = N, f.value = T) : !C.complete && d.value === "loading" && p != null ? B = window.setTimeout(w, p) : (C.currentSrc.endsWith(".svg") || C.currentSrc.startsWith("data:image/svg+xml")) && (v.value = 1, f.value = 1);
};
w();
}
const A = h(() => ({
"v-img__img--cover": e.cover,
"v-img__img--contain": !e.cover
})), P = () => {
var w;
if (!m.value.src || d.value === "idle") return null;
const C = c("img", {
class: ["v-img__img", A.value],
style: {
objectPosition: e.position
},
src: m.value.src,
srcset: m.value.srcset,
alt: e.alt,
crossorigin: e.crossorigin,
referrerpolicy: e.referrerpolicy,
draggable: e.draggable,
sizes: e.sizes,
ref: s,
onLoad: b,
onError: S
}, null), p = (w = l.sources) == null ? void 0 : w.call(l);
return c(Ue, {
transition: e.transition,
appear: !0
}, {
default: () => [Fe(p ? c("picture", {
class: "v-img__picture"
}, [p, C]) : C, [[mt, d.value === "loaded"]])]
});
}, O = () => c(Ue, {
transition: e.transition
}, {
default: () => [m.value.lazySrc && d.value !== "loaded" && c("img", {
class: ["v-img__img", "v-img__img--preload", A.value],
style: {
objectPosition: e.position
},
src: m.value.lazySrc,
alt: e.alt,
crossorigin: e.crossorigin,
referrerpolicy: e.referrerpolicy,
draggable: e.draggable
}, null)]
}), E = () => l.placeholder ? c(Ue, {
transition: e.transition,
appear: !0
}, {
default: () => [(d.value === "loading" || d.value === "error" && !l.error) && c("div", {
class: "v-img__placeholder"
}, [l.placeholder()])]
}) : null, R = () => l.error ? c(Ue, {
transition: e.transition,
appear: !0
}, {
default: () => [d.value === "error" && c("div", {
class: "v-img__error"
}, [l.error()])]
}) : null, z = () => e.gradient ? c("div", {
class: "v-img__gradient",
style: {
backgroundImage: `linear-gradient(${e.gradient})`
}
}, null) : null, M = U(!1);
{
const C = K(g, (p) => {
p && (requestAnimationFrame(() => {
requestAnimationFrame(() => {
M.value = !0;
});
}), C());
});
}
return ne(() => {
const C = pl.filterProps(e);
return Fe(c(pl, X({
class: ["v-img", {
"v-img--absolute": e.absolute,
"v-img--booting": !M.value
}, a.value, o.value, e.class],
style: [{
width: q(e.width === "auto" ? v.value : e.width)
}, i.value, e.style]
}, C, {
aspectRatio: g.value,
"aria-label": e.alt,
role: e.alt ? "img" : void 0
}), {
additional: () => c(ue, null, [c(P, null, null), c(O, null, null), c(z, null, null), c(E, null, null), c(R, null, null)]),
default: l.default
}), [[vt("intersect"), {
handler: y,
options: e.options
}, null, {
once: !0
}]]);
}), {
currentSrc: u,
image: s,
state: d,
naturalWidth: v,
naturalHeight: f
};
}
}), nn = F({
border: [Boolean, Number, String]
}, "border");
function ln(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
return {
borderClasses: h(() => {
const l = st(e) ? e.value : e.border, a = [];
if (l === !0 || l === "")
a.push(`${n}--border`);
else if (typeof l == "string" || l === 0)
for (const i of String(l).split(" "))
a.push(`border-${i}`);
return a;
})
};
}
const bo = [null, "default", "comfortable", "compact"], St = F({
density: {
type: String,
default: "default",
validator: (e) => bo.includes(e)
}
}, "density");
function wt(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
return {
densityClasses: h(() => `${n}--density-${e.density}`)
};
}
const So = ["elevated", "flat", "tonal", "outlined", "text", "plain"];
function Hn(e, n) {
return c(ue, null, [e && c("span", {
key: "overlay",
class: `${n}__overlay`
}, null), c("span", {
key: "underlay",
class: `${n}__underlay`
}, null)]);
}
const _t = F({
color: String,
variant: {
type: String,
default: "elevated",
validator: (e) => So.includes(e)
}
}, "variant");
function Wn(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
const t = h(() => {
const {
variant: i
} = Ce(e);
return `${n}--variant-${i}`;
}), {
colorClasses: l,
colorStyles: a
} = $n(h(() => {
const {
variant: i,
color: o
} = Ce(e);
return {
[["elevated", "flat"].includes(i) ? "background" : "text"]: o
};
}));
return {
colorClasses: l,
colorStyles: a,
variantClasses: t
};
}
const wo = F({
start: Boolean,
end: Boolean,
icon: se,
image: String,
text: String,
...nn(),
...ae(),
...St(),
...it(),
...Nn(),
...Me(),
...Ee(),
..._t({
variant: "flat"
})
}, "VAvatar"), dt = Q()({
name: "VAvatar",
props: wo(),
setup(e, n) {
let {
slots: t
} = n;
const {
themeClasses: l
} = Re(e), {
borderClasses: a
} = ln(e), {
colorClasses: i,
colorStyles: o,
variantClasses: r
} = Wn(e), {
densityClasses: u
} = wt(e), {
roundedClasses: s
} = ot(e), {
sizeClasses: d,
sizeStyles: v
} = zn(e);
return ne(() => c(e.tag, {
class: ["v-avatar", {
"v-avatar--start": e.start,
"v-avatar--end": e.end
}, l.value, a.value, i.value, u.value, s.value, d.value, r.value, e.class],
style: [o.value, v.value, e.style]
}, {
default: () => [t.default ? c(Te, {
key: "content-defaults",
defaults: {
VImg: {
cover: !0,
src: e.image
},
VIcon: {
icon: e.icon
}
}
}, {
default: () => [t.default()]
}) : e.image ? c(ho, {
key: "image",
src: e.image,
alt: "",
cover: !0
}, null) : e.icon ? c(we, {
key: "icon",
icon: e.icon
}, null) : e.text, Hn(!1, "v-avatar")]
})), {};
}
}), Co = F({
text: String,
onClick: xe(),
...ae(),
...Ee()
}, "VLabel"), sa = Q()({
name: "VLabel",
props: Co(),
setup(e, n) {
let {
slots: t
} = n;
return ne(() => {
var l;
return c("label", {
class: ["v-label", {
"v-label--clickable": !!e.onClick
}, e.class],
style: e.style,
onClick: e.onClick
}, [e.text, (l = t.default) == null ? void 0 : l.call(t)]);
}), {};
}
});
function lt(e, n) {
let t;
function l() {
t = On(), t.run(() => n.length ? n(() => {
t == null || t.stop(), l();
}) : n());
}
K(e, (a) => {
a && !t ? l() : a || (t == null || t.stop(), t = void 0);
}, {
immediate: !0
}), Ve(() => {
t == null || t.stop();
});
}
function ve(e, n, t) {
let l = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : (v) => v, a = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : (v) => v;
const i = ge("useProxiedModel"), o = $(e[n] !== void 0 ? e[n] : t), r = Ze(n), s = r !== n ? h(() => {
var v, f, m, g;
return e[n], !!(((v = i.vnode.props) != null && v.hasOwnProperty(n) || (f = i.vnode.props) != null && f.hasOwnProperty(r)) && ((m = i.vnode.props) != null && m.hasOwnProperty(`onUpdate:${n}`) || (g = i.vnode.props) != null && g.hasOwnProperty(`onUpdate:${r}`)));
}) : h(() => {
var v, f;
return e[n], !!((v = i.vnode.props) != null && v.hasOwnProperty(n) && ((f = i.vnode.props) != null && f.hasOwnProperty(`onUpdate:${n}`)));
});
lt(() => !s.value, () => {
K(() => e[n], (v) => {
o.value = v;
});
});
const d = h({
get() {
const v = e[n];
return l(s.value ? v : o.value);
},
set(v) {
const f = a(v), m = re(s.value ? e[n] : o.value);
m === f || l(m) === v || (o.value = f, i == null || i.emit(`update:${n}`, f));
}
});
return Object.defineProperty(d, "externalValue", {
get: () => s.value ? e[n] : o.value
}), d;
}
const ca = Symbol.for("vuetify:selection-control-group"), da = F({
color: String,
disabled: {
type: Boolean,
default: null
},
defaultsTarget: String,
error: Boolean,
id: String,
inline: Boolean,
falseIcon: se,
trueIcon: se,
ripple: {
type: [Boolean, Object],
default: !0
},
multiple: {
type: Boolean,
default: null
},
name: String,
readonly: {
type: Boolean,
default: null
},
modelValue: null,
type: String,
valueComparator: {
type: Function,
default: gt
},
...ae(),
...St(),
...Ee()
}, "SelectionControlGroup"), po = F({
...da({
defaultsTarget: "VSelectionControl"
})
}, "VSelectionControlGroup");
Q()({
name: "VSelectionControlGroup",
props: po(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const l = ve(e, "modelValue"), a = He(), i = h(() => e.id || `v-selection-control-group-${a}`), o = h(() => e.name || i.value), r = /* @__PURE__ */ new Set();
return Le(ca, {
modelValue: l,
forceUpdate: () => {
r.forEach((u) => u());
},
onForceUpdate: (u) => {
r.add(u), Ve(() => {
r.delete(u);
});
}
}), en({
[e.defaultsTarget]: {
color: G(e, "color"),
disabled: G(e, "disabled"),
density: G(e, "density"),
error: G(e, "error"),
inline: G(e, "inline"),
modelValue: l,
multiple: h(() => !!e.multiple || e.multiple == null && Array.isArray(l.value)),
name: o,
falseIcon: G(e, "falseIcon"),
trueIcon: G(e, "trueIcon"),
readonly: G(e, "readonly"),
ripple: G(e, "ripple"),
type: G(e, "type"),
valueComparator: G(e, "valueComparator")
}
}), ne(() => {
var u;
return c("div", {
class: ["v-selection-control-group", {
"v-selection-control-group--inline": e.inline
}, e.class],
style: e.style,
role: e.type === "radio" ? "radiogroup" : void 0
}, [(u = t.default) == null ? void 0 : u.call(t)]);
}), {};
}
});
const pn = Symbol("rippleStop"), xo = 80;
function xl(e, n) {
e.style.transform = n, e.style.webkitTransform = n;
}
function xn(e) {
return e.constructor.name === "TouchEvent";
}
function fa(e) {
return e.constructor.name === "KeyboardEvent";
}
const ko = function(e, n) {
var v;
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, l = 0, a = 0;
if (!fa(e)) {
const f = n.getBoundingClientRect(), m = xn(e) ? e.touches[e.touches.length - 1] : e;
l = m.clientX - f.left, a = m.clientY - f.top;
}
let i = 0, o = 0.3;
(v = n._ripple) != null && v.circle ? (o = 0.15, i = n.clientWidth / 2, i = t.center ? i : i + Math.sqrt((l - i) ** 2 + (a - i) ** 2) / 4) : i = Math.sqrt(n.clientWidth ** 2 + n.clientHeight ** 2) / 2;
const r = `${(n.clientWidth - i * 2) / 2}px`, u = `${(n.clientHeight - i * 2) / 2}px`, s = t.center ? r : `${l - i}px`, d = t.center ? u : `${a - i}px`;
return {
radius: i,
scale: o,
x: s,
y: d,
centerX: r,
centerY: u
};
}, Kt = {
/* eslint-disable max-statements */
show(e, n) {
var m;
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
if (!((m = n == null ? void 0 : n._ripple) != null && m.enabled))
return;
const l = document.createElement("span"), a = document.createElement("span");
l.appendChild(a), l.className = "v-ripple__container", t.class && (l.className += ` ${t.class}`);
const {
radius: i,
scale: o,
x: r,
y: u,
centerX: s,
centerY: d
} = ko(e, n, t), v = `${i * 2}px`;
a.className = "v-ripple__animation", a.style.width = v, a.style.height = v, n.appendChild(l);
const f = window.getComputedStyle(n);
f && f.position === "static" && (n.style.position = "relative", n.dataset.previousPosition = "static"), a.classList.add("v-ripple__animation--enter"), a.classList.add("v-ripple__animation--visible"), xl(a, `translate(${r}, ${u}) scale3d(${o},${o},${o})`), a.dataset.activated = String(performance.now()), setTimeout(() => {
a.classList.remove("v-ripple__animation--enter"), a.classList.add("v-ripple__animation--in"), xl(a, `translate(${s}, ${d}) scale3d(1,1,1)`);
}, 0);
},
hide(e) {
var i;
if (!((i = e == null ? void 0 : e._ripple) != null && i.enabled)) return;
const n = e.getElementsByClassName("v-ripple__animation");
if (n.length === 0) return;
const t = n[n.length - 1];
if (t.dataset.isHiding) return;
t.dataset.isHiding = "true";
const l = performance.now() - Number(t.dataset.activated), a = Math.max(250 - l, 0);
setTimeout(() => {
t.classList.remove("v-ripple__animation--in"), t.classList.add("v-ripple__animation--out"), setTimeout(() => {
var r;
e.getElementsByClassName("v-ripple__animation").length === 1 && e.dataset.previousPosition && (e.style.position = e.dataset.previousPosition, delete e.dataset.previousPosition), ((r = t.parentNode) == null ? void 0 : r.parentNode) === e && e.removeChild(t.parentNode);
}, 300);
}, a);
}
};
function va(e) {
return typeof e > "u" || !!e;
}
function It(e) {
const n = {}, t = e.currentTarget;
if (!(!(t != null && t._ripple) || t._ripple.touched || e[pn])) {
if (e[pn] = !0, xn(e))
t._ripple.touched = !0, t._ripple.isTouch = !0;
else if (t._ripple.isTouch) return;
if (n.center = t._ripple.centered || fa(e), t._ripple.class && (n.class = t._ripple.class), xn(e)) {
if (t._ripple.showTimerCommit) return;
t._ripple.showTimerCommit = () => {
Kt.show(e, t, n);
}, t._ripple.showTimer = window.setTimeout(() => {
var l;
(l = t == null ? void 0 : t._ripple) != null && l.showTimerCommit && (t._ripple.showTimerCommit(), t._ripple.showTimerCommit = null);
}, xo);
} else
Kt.show(e, t, n);
}
}
function kl(e) {
e[pn] = !0;
}
function Ae(e) {
const n = e.currentTarget;
if (n != null && n._ripple) {
if (window.clearTimeout(n._ripple.showTimer), e.type === "touchend" && n._ripple.showTimerCommit) {
n._ripple.showTimerCommit(), n._ripple.showTimerCommit = null, n._ripple.showTimer = window.setTimeout(() => {
Ae(e);
});
return;
}
window.setTimeout(() => {
n._ripple && (n._ripple.touched = !1);
}), Kt.hide(n);
}
}
function ma(e) {
const n = e.currentTarget;
n != null && n._ripple && (n._ripple.showTimerCommit && (n._ripple.showTimerCommit = null), window.clearTimeout(n._ripple.showTimer));
}
let Pt = !1;
function ga(e) {
!Pt && (e.keyCode === nl.enter || e.keyCode === nl.space) && (Pt = !0, It(e));
}
function ya(e) {
Pt = !1, Ae(e);
}
function ha(e) {
Pt && (Pt = !1, Ae(e));
}
function ba(e, n, t) {
const {
value: l,
modifiers: a
} = n, i = va(l);
if (i || Kt.hide(e), e._ripple = e._ripple ?? {}, e._ripple.enabled = i, e._ripple.centered = a.center, e._ripple.circle = a.circle, Pi(l) && l.class && (e._ripple.class = l.class), i && !t) {
if (a.stop) {
e.addEventListener("touchstart", kl, {
passive: !0
}), e.addEventListener("mousedown", kl);
return;
}
e.addEventListener("touchstart", It, {
passive: !0
}), e.addEventListener("touchend", Ae, {
passive: !0
}), e.addEventListener("touchmove", ma, {
passive: !0
}), e.addEventListener("touchcancel", Ae), e.addEventListener("mousedown", It), e.addEventListener("mouseup", Ae), e.addEventListener("mouseleave", Ae), e.addEventListener("keydown", ga), e.addEventListener("keyup", ya), e.addEventListener("blur", ha), e.addEventListener("dragstart", Ae, {
passive: !0
});
} else !i && t && Sa(e);
}
function Sa(e) {
e.removeEventListener("mousedown", It), e.removeEventListener("touchstart", It), e.removeEventListener("touchend", Ae), e.removeEventListener("touchmove", ma), e.removeEventListener("touchcancel", Ae), e.removeEventListener("mouseup", Ae), e.removeEventListener("mouseleave", Ae), e.removeEventListener("keydown", ga), e.removeEventListener("keyup", ya), e.removeEventListener("dragstart", Ae), e.removeEventListener("blur", ha);
}
function Vo(e, n) {
ba(e, n, !1);
}
function Io(e) {
delete e._ripple, Sa(e);
}
function Po(e, n) {
if (n.value === n.oldValue)
return;
const t = va(n.oldValue);
ba(e, n, t);
}
const jn = {
mounted: Vo,
unmounted: Io,
updated: Po
}, wa = F({
label: String,
baseColor: String,
trueValue: null,
falseValue: null,
value: null,
...ae(),
...da()
}, "VSelectionControl");
function Ao(e) {
const n = he(ca, void 0), {
densityClasses: t
} = wt(e), l = ve(e, "modelValue"), a = h(() => e.trueValue !== void 0 ? e.trueValue : e.value !== void 0 ? e.value : !0), i = h(() => e.falseValue !== void 0 ? e.falseValue : !1), o = h(() => !!e.multiple || e.multiple == null && Array.isArray(l.value)), r = h({
get() {
const m = n ? n.modelValue.value : l.value;
return o.value ? pe(m).some((g) => e.valueComparator(g, a.value)) : e.valueComparator(m, a.value);
},
set(m) {
if (e.readonly) return;
const g = m ? a.value : i.value;
let y = g;
o.value && (y = m ? [...pe(l.value), g] : pe(l.value).filter((b) => !e.valueComparator(b, a.value))), n ? n.modelValue.value = y : l.value = y;
}
}), {
textColorClasses: u,
textColorStyles: s
} = Ye(h(() => {
if (!(e.error || e.disabled))
return r.value ? e.color : e.baseColor;
})), {
backgroundColorClasses: d,
backgroundColorStyles: v
} = Ke(h(() => r.value && !e.error && !e.disabled ? e.color : e.baseColor)), f = h(() => r.value ? e.trueIcon : e.falseIcon);
return {
group: n,
densityClasses: t,
trueValue: a,
falseValue: i,
model: r,
textColorClasses: u,
textColorStyles: s,
backgroundColorClasses: d,
backgroundColorStyles: v,
icon: f
};
}
const Vl = Q()({
name: "VSelectionControl",
directives: {
Ripple: jn
},
inheritAttrs: !1,
props: wa(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
attrs: t,
slots: l
} = n;
const {
group: a,
densityClasses: i,
icon: o,
model: r,
textColorClasses: u,
textColorStyles: s,
backgroundColorClasses: d,
backgroundColorStyles: v,
trueValue: f
} = Ao(e), m = He(), g = U(!1), y = U(!1), b = $(), S = h(() => e.id || `input-${m}`), _ = h(() => !e.disabled && !e.readonly);
a == null || a.onForceUpdate(() => {
b.value && (b.value.checked = r.value);
});
function B(O) {
_.value && (g.value = !0, ct(O.target, ":focus-visible") !== !1 && (y.value = !0));
}
function V() {
g.value = !1, y.value = !1;
}
function A(O) {
O.stopPropagation();
}
function P(O) {
if (!_.value) {
b.value && (b.value.checked = r.value);
return;
}
e.readonly && a && ke(() => a.forceUpdate()), r.value = O.target.checked;
}
return ne(() => {
var M, C;
const O = l.label ? l.label({
label: e.label,
props: {
for: S.value
}
}) : e.label, [E, R] = Xl(t), z = c("input", X({
ref: b,
checked: r.value,
disabled: !!e.disabled,
id: S.value,
onBlur: V,
onFocus: B,
onInput: P,
"aria-disabled": !!e.disabled,
"aria-label": e.label,
type: e.type,
value: f.value,
name: e.name,
"aria-checked": e.type === "checkbox" ? r.value : void 0
}, R), null);
return c("div", X({
class: ["v-selection-control", {
"v-selection-control--dirty": r.value,
"v-selection-control--disabled": e.disabled,
"v-selection-control--error": e.error,
"v-selection-control--focused": g.value,
"v-selection-control--focus-visible": y.value,
"v-selection-control--inline": e.inline
}, i.value, e.class]
}, E, {
style: e.style
}), [c("div", {
class: ["v-selection-control__wrapper", u.value],
style: s.value
}, [(M = l.default) == null ? void 0 : M.call(l, {
backgroundColorClasses: d,
backgroundColorStyles: v
}), Fe(c("div", {
class: ["v-selection-control__input"]
}, [((C = l.input) == null ? void 0 : C.call(l, {
model: r,
textColorClasses: u,
textColorStyles: s,
backgroundColorClasses: d,
backgroundColorStyles: v,
inputNode: z,
icon: o.value,
props: {
onFocus: B,
onBlur: V,
id: S.value
}
})) ?? c(ue, null, [o.value && c(we, {
key: "icon",
icon: o.value
}, null), z])]), [[vt("ripple"), e.ripple && [!e.disabled && !e.readonly, null, ["center", "circle"]]]])]), O && c(sa, {
for: S.value,
onClick: A
}, {
default: () => [O]
})]);
}), {
isFocused: g,
input: b
};
}
}), Eo = F({
indeterminate: Boolean,
indeterminateIcon: {
type: se,
default: "$checkboxIndeterminate"
},
...wa({
falseIcon: "$checkboxOff",
trueIcon: "$checkboxOn"
})
}, "VCheckboxBtn"), Ca = Q()({
name: "VCheckboxBtn",
props: Eo(),
emits: {
"update:modelValue": (e) => !0,
"update:indeterminate": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const l = ve(e, "indeterminate"), a = ve(e, "modelValue");
function i(u) {
l.value && (l.value = !1);
}
const o = h(() => l.value ? e.indeterminateIcon : e.falseIcon), r = h(() => l.value ? e.indeterminateIcon : e.trueIcon);
return ne(() => {
const u = at(Vl.filterProps(e), ["modelValue"]);
return c(Vl, X(u, {
modelValue: a.value,
"onUpdate:modelValue": [(s) => a.value = s, i],
class: ["v-checkbox-btn", e.class],
style: e.style,
type: "checkbox",
falseIcon: o.value,
trueIcon: r.value,
"aria-checked": l.value ? "mixed" : void 0
}), t);
}), {};
}
}), pa = Symbol.for("vuetify:locale");
function an() {
const e = he(pa);
if (!e) throw new Error("[Vuetify] Could not find injected locale instance");
return e;
}
function Xe() {
const e = he(pa);
if (!e) throw new Error("[Vuetify] Could not find injected rtl instance");
return {
isRtl: e.isRtl,
rtlClasses: e.rtlClasses
};
}
function xa(e) {
const {
t: n
} = an();
function t(l) {
let {
name: a
} = l;
const i = {
prepend: "prependAction",
prependInner: "prependAction",
append: "appendAction",
appendInner: "appendAction",
clear: "clear"
}[a], o = e[`onClick:${a}`], r = o && i ? n(`$vuetify.input.${i}`, e.label ?? "") : void 0;
return c(we, {
icon: e[`${a}Icon`],
"aria-label": r,
onClick: o
}, null);
}
return {
InputIcon: t
};
}
const Oo = F({
disabled: Boolean,
group: Boolean,
hideOnLeave: Boolean,
leaveAbsolute: Boolean,
mode: String,
origin: String
}, "transition");
function Oe(e, n, t) {
return Q()({
name: e,
props: Oo({
mode: t,
origin: n
}),
setup(l, a) {
let {
slots: i
} = a;
const o = {
onBeforeEnter(r) {
l.origin && (r.style.transformOrigin = l.origin);
},
onLeave(r) {
if (l.leaveAbsolute) {
const {
offsetTop: u,
offsetLeft: s,
offsetWidth: d,
offsetHeight: v
} = r;
r._transitionInitialStyles = {
position: r.style.position,
top: r.style.top,
left: r.style.left,
width: r.style.width,
height: r.style.height
}, r.style.position = "absolute", r.style.top = `${u}px`, r.style.left = `${s}px`, r.style.width = `${d}px`, r.style.height = `${v}px`;
}
l.hideOnLeave && r.style.setProperty("display", "none", "important");
},
onAfterLeave(r) {
if (l.leaveAbsolute && (r != null && r._transitionInitialStyles)) {
const {
position: u,
top: s,
left: d,
width: v,
height: f
} = r._transitionInitialStyles;
delete r._transitionInitialStyles, r.style.position = u || "", r.style.top = s || "", r.style.left = d || "", r.style.width = v || "", r.style.height = f || "";
}
}
};
return () => {
const r = l.group ? En : nt;
return Zt(r, {
name: l.disabled ? "" : e,
css: !l.disabled,
...l.group ? void 0 : {
mode: l.mode
},
...l.disabled ? {} : o
}, i.default);
};
}
});
}
function ka(e, n) {
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "in-out";
return Q()({
name: e,
props: {
mode: {
type: String,
default: t
},
disabled: Boolean,
group: Boolean
},
setup(l, a) {
let {
slots: i
} = a;
const o = l.group ? En : nt;
return () => Zt(o, {
name: l.disabled ? "" : e,
css: !l.disabled,
// mode: props.mode, // TODO: vuejs/vue-next#3104
...l.disabled ? {} : n
}, i.default);
}
});
}
function Va() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "";
const t = (arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1) ? "width" : "height", l = Wl(`offset-${t}`);
return {
onBeforeEnter(o) {
o._parent = o.parentNode, o._initialStyle = {
transition: o.style.transition,
overflow: o.style.overflow,
[t]: o.style[t]
};
},
onEnter(o) {
const r = o._initialStyle;
o.style.setProperty("transition", "none", "important"), o.style.overflow = "hidden";
const u = `${o[l]}px`;
o.style[t] = "0", o.offsetHeight, o.style.transition = r.transition, e && o._parent && o._parent.classList.add(e), requestAnimationFrame(() => {
o.style[t] = u;
});
},
onAfterEnter: i,
onEnterCancelled: i,
onLeave(o) {
o._initialStyle = {
transition: "",
overflow: o.style.overflow,
[t]: o.style[t]
}, o.style.overflow = "hidden", o.style[t] = `${o[l]}px`, o.offsetHeight, requestAnimationFrame(() => o.style[t] = "0");
},
onAfterLeave: a,
onLeaveCancelled: a
};
function a(o) {
e && o._parent && o._parent.classList.remove(e), i(o);
}
function i(o) {
const r = o._initialStyle[t];
o.style.overflow = o._initialStyle.overflow, r != null && (o.style[t] = r), delete o._initialStyle;
}
}
const Bo = F({
target: [Object, Array]
}, "v-dialog-transition"), Ia = Q()({
name: "VDialogTransition",
props: Bo(),
setup(e, n) {
let {
slots: t
} = n;
const l = {
onBeforeEnter(a) {
a.style.pointerEvents = "none", a.style.visibility = "hidden";
},
async onEnter(a, i) {
var f;
await new Promise((m) => requestAnimationFrame(m)), await new Promise((m) => requestAnimationFrame(m)), a.style.visibility = "";
const {
x: o,
y: r,
sx: u,
sy: s,
speed: d
} = Pl(e.target, a), v = ut(a, [{
transform: `translate(${o}px, ${r}px) scale(${u}, ${s})`,
opacity: 0
}, {}], {
duration: 225 * d,
easing: lo
});
(f = Il(a)) == null || f.forEach((m) => {
ut(m, [{
opacity: 0
}, {
opacity: 0,
offset: 0.33
}, {}], {
duration: 225 * 2 * d,
easing: Ut
});
}), v.finished.then(() => i());
},
onAfterEnter(a) {
a.style.removeProperty("pointer-events");
},
onBeforeLeave(a) {
a.style.pointerEvents = "none";
},
async onLeave(a, i) {
var f;
await new Promise((m) => requestAnimationFrame(m));
const {
x: o,
y: r,
sx: u,
sy: s,
speed: d
} = Pl(e.target, a);
ut(a, [{}, {
transform: `translate(${o}px, ${r}px) scale(${u}, ${s})`,
opacity: 0
}], {
duration: 125 * d,
easing: ao
}).finished.then(() => i()), (f = Il(a)) == null || f.forEach((m) => {
ut(m, [{}, {
opacity: 0,
offset: 0.2
}, {
opacity: 0
}], {
duration: 125 * 2 * d,
easing: Ut
});
});
},
onAfterLeave(a) {
a.style.removeProperty("pointer-events");
}
};
return () => e.target ? c(nt, X({
name: "dialog-transition"
}, l, {
css: !1
}), t) : c(nt, {
name: "dialog-transition"
}, t);
}
});
function Il(e) {
var t;
const n = (t = e.querySelector(":scope > .v-card, :scope > .v-sheet, :scope > .v-list")) == null ? void 0 : t.children;
return n && [...n];
}
function Pl(e, n) {
const t = na(e), l = Rn(n), [a, i] = getComputedStyle(n).transformOrigin.split(" ").map((S) => parseFloat(S)), [o, r] = getComputedStyle(n).getPropertyValue("--v-overlay-anchor-origin").split(" ");
let u = t.left + t.width / 2;
o === "left" || r === "left" ? u -= t.width / 2 : (o === "right" || r === "right") && (u += t.width / 2);
let s = t.top + t.height / 2;
o === "top" || r === "top" ? s -= t.height / 2 : (o === "bottom" || r === "bottom") && (s += t.height / 2);
const d = t.width / l.width, v = t.height / l.height, f = Math.max(1, d, v), m = d / f || 0, g = v / f || 0, y = l.width * l.height / (window.innerWidth * window.innerHeight), b = y > 0.12 ? Math.min(1.5, (y - 0.12) * 10 + 1) : 1;
return {
x: u - (a + l.left),
y: s - (i + l.top),
sx: m,
sy: g,
speed: b
};
}
Oe("fab-transition", "center center", "out-in");
Oe("dialog-bottom-transition");
Oe("dialog-top-transition");
const Al = Oe("fade-transition");
Oe("scale-transition");
Oe("scroll-x-transition");
Oe("scroll-x-reverse-transition");
Oe("scroll-y-transition");
Oe("scroll-y-reverse-transition");
Oe("slide-x-transition");
Oe("slide-x-reverse-transition");
const Pa = Oe("slide-y-transition");
Oe("slide-y-reverse-transition");
const _o = ka("expand-transition", Va()), Aa = ka("expand-x-transition", Va("", !0)), To = F({
active: Boolean,
color: String,
messages: {
type: [Array, String],
default: () => []
},
...ae(),
...bt({
transition: {
component: Pa,
leaveAbsolute: !0,
group: !0
}
})
}, "VMessages"), Lo = Q()({
name: "VMessages",
props: To(),
setup(e, n) {
let {
slots: t
} = n;
const l = h(() => pe(e.messages)), {
textColorClasses: a,
textColorStyles: i
} = Ye(h(() => e.color));
return ne(() => c(Ue, {
transition: e.transition,
tag: "div",
class: ["v-messages", a.value, e.class],
style: [i.value, e.style],
role: "alert",
"aria-live": "polite"
}, {
default: () => [e.active && l.value.map((o, r) => c("div", {
class: "v-messages__message",
key: `${r}-${l.value}`
}, [t.message ? t.message({
message: o
}) : o]))]
})), {};
}
}), Ea = F({
focused: Boolean,
"onUpdate:focused": xe()
}, "focus");
function Oa(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
const t = ve(e, "focused"), l = h(() => ({
[`${n}--focused`]: t.value
}));
function a() {
t.value = !0;
}
function i() {
t.value = !1;
}
return {
focusClasses: l,
isFocused: t,
focus: a,
blur: i
};
}
const Fo = Symbol.for("vuetify:form");
function Un() {
return he(Fo, null);
}
const Mo = F({
disabled: {
type: Boolean,
default: null
},
error: Boolean,
errorMessages: {
type: [Array, String],
default: () => []
},
maxErrors: {
type: [Number, String],
default: 1
},
name: String,
label: String,
readonly: {
type: Boolean,
default: null
},
rules: {
type: Array,
default: () => []
},
modelValue: null,
validateOn: String,
validationValue: null,
...Ea()
}, "validation");
function Ro(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze(), t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : He();
const l = ve(e, "modelValue"), a = h(() => e.validationValue === void 0 ? l.value : e.validationValue), i = Un(), o = $([]), r = U(!0), u = h(() => !!(pe(l.value === "" ? null : l.value).length || pe(a.value === "" ? null : a.value).length)), s = h(() => !!(e.disabled ?? (i == null ? void 0 : i.isDisabled.value))), d = h(() => !!(e.readonly ?? (i == null ? void 0 : i.isReadonly.value))), v = h(() => {
var A;
return (A = e.errorMessages) != null && A.length ? pe(e.errorMessages).concat(o.value).slice(0, Math.max(0, +e.maxErrors)) : o.value;
}), f = h(() => {
let A = (e.validateOn ?? (i == null ? void 0 : i.validateOn.value)) || "input";
A === "lazy" && (A = "input lazy"), A === "eager" && (A = "input eager");
const P = new Set((A == null ? void 0 : A.split(" ")) ?? []);
return {
input: P.has("input"),
blur: P.has("blur") || P.has("input") || P.has("invalid-input"),
invalidInput: P.has("invalid-input"),
lazy: P.has("lazy"),
eager: P.has("eager")
};
}), m = h(() => {
var A;
return e.error || (A = e.errorMessages) != null && A.length ? !1 : e.rules.length ? r.value ? o.value.length || f.value.lazy ? null : !0 : !o.value.length : !0;
}), g = U(!1), y = h(() => ({
[`${n}--error`]: m.value === !1,
[`${n}--dirty`]: u.value,
[`${n}--disabled`]: s.value,
[`${n}--readonly`]: d.value
})), b = ge("validation"), S = h(() => e.name ?? Ce(t));
jl(() => {
i == null || i.register({
id: S.value,
vm: b,
validate: V,
reset: _,
resetValidation: B
});
}), $e(() => {
i == null || i.unregister(S.value);
}), Ot(async () => {
f.value.lazy || await V(!f.value.eager), i == null || i.update(S.value, m.value, v.value);
}), lt(() => f.value.input || f.value.invalidInput && m.value === !1, () => {
K(a, () => {
if (a.value != null)
V();
else if (e.focused) {
const A = K(() => e.focused, (P) => {
P || V(), A();
});
}
});
}), lt(() => f.value.blur, () => {
K(() => e.focused, (A) => {
A || V();
});
}), K([m, v], () => {
i == null || i.update(S.value, m.value, v.value);
});
async function _() {
l.value = null, await ke(), await B();
}
async function B() {
r.value = !0, f.value.lazy ? o.value = [] : await V(!f.value.eager);
}
async function V() {
let A = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !1;
const P = [];
g.value = !0;
for (const O of e.rules) {
if (P.length >= +(e.maxErrors ?? 1))
break;
const R = await (typeof O == "function" ? O : () => O)(a.value);
if (R !== !0) {
if (R !== !1 && typeof R != "string") {
console.warn(`${R} is not a valid value. Rule functions must return boolean true or a string.`);
continue;
}
P.push(R || "");
}
}
return o.value = P, g.value = !1, r.value = A, o.value;
}
return {
errorMessages: v,
isDirty: u,
isDisabled: s,
isReadonly: d,
isPristine: r,
isValid: m,
isValidating: g,
reset: _,
resetValidation: B,
validate: V,
validationClasses: y
};
}
const Ba = F({
id: String,
appendIcon: se,
centerAffix: {
type: Boolean,
default: !0
},
prependIcon: se,
hideDetails: [Boolean, String],
hideSpinButtons: Boolean,
hint: String,
persistentHint: Boolean,
messages: {
type: [Array, String],
default: () => []
},
direction: {
type: String,
default: "horizontal",
validator: (e) => ["horizontal", "vertical"].includes(e)
},
"onClick:prepend": xe(),
"onClick:append": xe(),
...ae(),
...St(),
...Ai(yt(), ["maxWidth", "minWidth", "width"]),
...Ee(),
...Mo()
}, "VInput"), El = Q()({
name: "VInput",
props: {
...Ba()
},
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
attrs: t,
slots: l,
emit: a
} = n;
const {
densityClasses: i
} = wt(e), {
dimensionStyles: o
} = ht(e), {
themeClasses: r
} = Re(e), {
rtlClasses: u
} = Xe(), {
InputIcon: s
} = xa(e), d = He(), v = h(() => e.id || `input-${d}`), f = h(() => `${v.value}-messages`), {
errorMessages: m,
isDirty: g,
isDisabled: y,
isReadonly: b,
isPristine: S,
isValid: _,
isValidating: B,
reset: V,
resetValidation: A,
validate: P,
validationClasses: O
} = Ro(e, "v-input", v), E = h(() => ({
id: v,
messagesId: f,
isDirty: g,
isDisabled: y,
isReadonly: b,
isPristine: S,
isValid: _,
isValidating: B,
reset: V,
resetValidation: A,
validate: P
})), R = h(() => {
var z;
return (z = e.errorMessages) != null && z.length || !S.value && m.value.length ? m.value : e.hint && (e.persistentHint || e.focused) ? e.hint : e.messages;
});
return ne(() => {
var w, T, N, J;
const z = !!(l.prepend || e.prependIcon), M = !!(l.append || e.appendIcon), C = R.value.length > 0, p = !e.hideDetails || e.hideDetails === "auto" && (C || !!l.details);
return c("div", {
class: ["v-input", `v-input--${e.direction}`, {
"v-input--center-affix": e.centerAffix,
"v-input--hide-spin-buttons": e.hideSpinButtons
}, i.value, r.value, u.value, O.value, e.class],
style: [o.value, e.style]
}, [z && c("div", {
key: "prepend",
class: "v-input__prepend"
}, [(w = l.prepend) == null ? void 0 : w.call(l, E.value), e.prependIcon && c(s, {
key: "prepend-icon",
name: "prepend"
}, null)]), l.default && c("div", {
class: "v-input__control"
}, [(T = l.default) == null ? void 0 : T.call(l, E.value)]), M && c("div", {
key: "append",
class: "v-input__append"
}, [e.appendIcon && c(s, {
key: "append-icon",
name: "append"
}, null), (N = l.append) == null ? void 0 : N.call(l, E.value)]), p && c("div", {
class: "v-input__details"
}, [c(Lo, {
id: f.value,
active: C,
messages: R.value
}, {
message: l.message
}), (J = l.details) == null ? void 0 : J.call(l, E.value)])]);
}), {
reset: V,
resetValidation: A,
validate: P,
isValid: _,
errorMessages: m
};
}
}), Do = Symbol.for("vuetify:display"), $o = F({
mobile: {
type: Boolean,
default: !1
},
mobileBreakpoint: [Number, String]
}, "display");
function Gn() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
const t = he(Do);
if (!t) throw new Error("Could not find Vuetify display injection");
const l = h(() => {
if (e.mobile != null) return e.mobile;
if (!e.mobileBreakpoint) return t.mobile.value;
const i = typeof e.mobileBreakpoint == "number" ? e.mobileBreakpoint : t.thresholds.value[e.mobileBreakpoint];
return t.width.value < i;
}), a = h(() => n ? {
[`${n}--mobile`]: l.value
} : {});
return {
...t,
displayClasses: a,
mobile: l
};
}
const No = Symbol.for("vuetify:goto");
function zo() {
return {
container: void 0,
duration: 300,
layout: !1,
offset: 0,
easing: "easeInOutCubic",
patterns: {
linear: (e) => e,
easeInQuad: (e) => e ** 2,
easeOutQuad: (e) => e * (2 - e),
easeInOutQuad: (e) => e < 0.5 ? 2 * e ** 2 : -1 + (4 - 2 * e) * e,
easeInCubic: (e) => e ** 3,
easeOutCubic: (e) => --e ** 3 + 1,
easeInOutCubic: (e) => e < 0.5 ? 4 * e ** 3 : (e - 1) * (2 * e - 2) * (2 * e - 2) + 1,
easeInQuart: (e) => e ** 4,
easeOutQuart: (e) => 1 - --e ** 4,
easeInOutQuart: (e) => e < 0.5 ? 8 * e ** 4 : 1 - 8 * --e ** 4,
easeInQuint: (e) => e ** 5,
easeOutQuint: (e) => 1 + --e ** 5,
easeInOutQuint: (e) => e < 0.5 ? 16 * e ** 5 : 1 + 16 * --e ** 5
}
};
}
function Ho(e) {
return Kn(e) ?? (document.scrollingElement || document.body);
}
function Kn(e) {
return typeof e == "string" ? document.querySelector(e) : Kl(e);
}
function dn(e, n, t) {
if (typeof e == "number") return n && t ? -e : e;
let l = Kn(e), a = 0;
for (; l; )
a += n ? l.offsetLeft : l.offsetTop, l = l.offsetParent;
return a;
}
async function Ol(e, n, t, l) {
const a = t ? "scrollLeft" : "scrollTop", i = Ne((l == null ? void 0 : l.options) ?? zo(), n), o = l == null ? void 0 : l.rtl.value, r = (typeof e == "number" ? e : Kn(e)) ?? 0, u = i.container === "parent" && r instanceof HTMLElement ? r.parentElement : Ho(i.container), s = typeof i.easing == "function" ? i.easing : i.patterns[i.easing];
if (!s) throw new TypeError(`Easing function "${i.easing}" not found.`);
let d;
if (typeof r == "number")
d = dn(r, t, o);
else if (d = dn(r, t, o) - dn(u, t, o), i.layout) {
const g = window.getComputedStyle(r).getPropertyValue("--v-layout-top");
g && (d -= parseInt(g, 10));
}
d += i.offset, d = jo(u, d, !!o, !!t);
const v = u[a] ?? 0;
if (d === v) return Promise.resolve(d);
const f = performance.now();
return new Promise((m) => requestAnimationFrame(function g(y) {
const S = (y - f) / i.duration, _ = Math.floor(v + (d - v) * s(Ge(S, 0, 1)));
if (u[a] = _, S >= 1 && Math.abs(_ - u[a]) < 10)
return m(d);
if (S > 2)
return tt("Scroll target is not reachable"), m(u[a]);
requestAnimationFrame(g);
}));
}
function Wo() {
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
const n = he(No), {
isRtl: t
} = Xe();
if (!n) throw new Error("[Vuetify] Could not find injected goto instance");
const l = {
...n,
// can be set via VLocaleProvider
rtl: h(() => n.rtl.value || t.value)
};
async function a(i, o) {
return Ol(i, Ne(e, o), !1, l);
}
return a.horizontal = async (i, o) => Ol(i, Ne(e, o), !0, l), a;
}
function jo(e, n, t, l) {
const {
scrollWidth: a,
scrollHeight: i
} = e, [o, r] = e === document.scrollingElement ? [window.innerWidth, window.innerHeight] : [e.offsetWidth, e.offsetHeight];
let u, s;
return l ? t ? (u = -(a - o), s = 0) : (u = 0, s = a - o) : (u = 0, s = i + -r), Math.max(Math.min(n, s), u);
}
const _a = F({
modelValue: {
type: null,
default: void 0
},
multiple: Boolean,
mandatory: [Boolean, String],
max: Number,
selectedClass: String,
disabled: Boolean
}, "group"), Uo = F({
value: null,
disabled: Boolean,
selectedClass: String
}, "group-item");
function Go(e, n) {
let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !0;
const l = ge("useGroupItem");
if (!l)
throw new Error("[Vuetify] useGroupItem composable must be used inside a component setup function");
const a = He();
Le(Symbol.for(`${n.description}:id`), a);
const i = he(n, null);
if (!i) {
if (!t) return i;
throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${n.description}`);
}
const o = G(e, "value"), r = h(() => !!(i.disabled.value || e.disabled));
i.register({
id: a,
value: o,
disabled: r
}, l), $e(() => {
i.unregister(a);
});
const u = h(() => i.isSelected(a)), s = h(() => i.items.value[0].id === a), d = h(() => i.items.value[i.items.value.length - 1].id === a), v = h(() => u.value && [i.selectedClass.value, e.selectedClass]);
return K(u, (f) => {
l.emit("group:selected", {
value: f
});
}, {
flush: "sync"
}), {
id: a,
isSelected: u,
isFirst: s,
isLast: d,
toggle: () => i.select(a, !u.value),
select: (f) => i.select(a, f),
selectedClass: v,
value: o,
disabled: r,
group: i
};
}
function Ta(e, n) {
let t = !1;
const l = Qt([]), a = ve(e, "modelValue", [], (f) => f == null ? [] : La(l, pe(f)), (f) => {
const m = qo(l, f);
return e.multiple ? m : m[0];
}), i = ge("useGroup");
function o(f, m) {
const g = f, y = Symbol.for(`${n.description}:id`), S = pt(y, i == null ? void 0 : i.vnode).indexOf(m);
Ce(g.value) == null && (g.value = S, g.useIndexAsValue = !0), S > -1 ? l.splice(S, 0, g) : l.push(g);
}
function r(f) {
if (t) return;
u();
const m = l.findIndex((g) => g.id === f);
l.splice(m, 1);
}
function u() {
const f = l.find((m) => !m.disabled);
f && e.mandatory === "force" && !a.value.length && (a.value = [f.id]);
}
Ot(() => {
u();
}), $e(() => {
t = !0;
}), Si(() => {
for (let f = 0; f < l.length; f++)
l[f].useIndexAsValue && (l[f].value = f);
});
function s(f, m) {
const g = l.find((y) => y.id === f);
if (!(m && (g != null && g.disabled)))
if (e.multiple) {
const y = a.value.slice(), b = y.findIndex((_) => _ === f), S = ~b;
if (m = m ?? !S, S && e.mandatory && y.length <= 1 || !S && e.max != null && y.length + 1 > e.max) return;
b < 0 && m ? y.push(f) : b >= 0 && !m && y.splice(b, 1), a.value = y;
} else {
const y = a.value.includes(f);
if (e.mandatory && y) return;
a.value = m ?? !y ? [f] : [];
}
}
function d(f) {
if (e.multiple && tt('This method is not supported when using "multiple" prop'), a.value.length) {
const m = a.value[0], g = l.findIndex((S) => S.id === m);
let y = (g + f) % l.length, b = l[y];
for (; b.disabled && y !== g; )
y = (y + f) % l.length, b = l[y];
if (b.disabled) return;
a.value = [l[y].id];
} else {
const m = l.find((g) => !g.disabled);
m && (a.value = [m.id]);
}
}
const v = {
register: o,
unregister: r,
selected: a,
select: s,
disabled: G(e, "disabled"),
prev: () => d(l.length - 1),
next: () => d(1),
isSelected: (f) => a.value.includes(f),
selectedClass: h(() => e.selectedClass),
items: h(() => l),
getItemIndex: (f) => Ko(l, f)
};
return Le(n, v), v;
}
function Ko(e, n) {
const t = La(e, [n]);
return t.length ? e.findIndex((l) => l.id === t[0]) : -1;
}
function La(e, n) {
const t = [];
return n.forEach((l) => {
const a = e.find((o) => gt(l, o.value)), i = e[l];
(a == null ? void 0 : a.value) != null ? t.push(a.id) : i != null && t.push(i.id);
}), t;
}
function qo(e, n) {
const t = [];
return n.forEach((l) => {
const a = e.findIndex((i) => i.id === l);
if (~a) {
const i = e[a];
t.push(i.value != null ? i.value : a);
}
}), t;
}
function qt(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "content";
const t = bn(), l = $();
if (me) {
const a = new ResizeObserver((i) => {
i.length && (n === "content" ? l.value = i[0].contentRect : l.value = i[0].target.getBoundingClientRect());
});
$e(() => {
a.disconnect();
}), K(() => t.el, (i, o) => {
o && (a.unobserve(o), l.value = void 0), i && a.observe(i);
}, {
flush: "post"
});
}
return {
resizeRef: t,
contentRect: Bn(l)
};
}
function Yo(e) {
let {
selectedElement: n,
containerElement: t,
isRtl: l,
isHorizontal: a
} = e;
const i = At(a, t), o = Fa(a, l, t), r = At(a, n), u = Ma(a, n), s = r * 0.4;
return o > u ? u - s : o + i < u + r ? u - i + r + s : o;
}
function Xo(e) {
let {
selectedElement: n,
containerElement: t,
isHorizontal: l
} = e;
const a = At(l, t), i = Ma(l, n), o = At(l, n);
return i - a / 2 + o / 2;
}
function Bl(e, n) {
const t = e ? "scrollWidth" : "scrollHeight";
return (n == null ? void 0 : n[t]) || 0;
}
function Qo(e, n) {
const t = e ? "clientWidth" : "clientHeight";
return (n == null ? void 0 : n[t]) || 0;
}
function Fa(e, n, t) {
if (!t)
return 0;
const {
scrollLeft: l,
offsetWidth: a,
scrollWidth: i
} = t;
return e ? n ? i - a + l : l : t.scrollTop;
}
function At(e, n) {
const t = e ? "offsetWidth" : "offsetHeight";
return (n == null ? void 0 : n[t]) || 0;
}
function Ma(e, n) {
const t = e ? "offsetLeft" : "offsetTop";
return (n == null ? void 0 : n[t]) || 0;
}
const Jo = Symbol.for("vuetify:v-slide-group"), Ra = F({
centerActive: Boolean,
direction: {
type: String,
default: "horizontal"
},
symbol: {
type: null,
default: Jo
},
nextIcon: {
type: se,
default: "$next"
},
prevIcon: {
type: se,
default: "$prev"
},
showArrows: {
type: [Boolean, String],
validator: (e) => typeof e == "boolean" || ["always", "desktop", "mobile"].includes(e)
},
...ae(),
...$o({
mobile: null
}),
...Me(),
..._a({
selectedClass: "v-slide-group-item--active"
})
}, "VSlideGroup"), _l = Q()({
name: "VSlideGroup",
props: Ra(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const {
isRtl: l
} = Xe(), {
displayClasses: a,
mobile: i
} = Gn(e), o = Ta(e, e.symbol), r = U(!1), u = U(0), s = U(0), d = U(0), v = h(() => e.direction === "horizontal"), {
resizeRef: f,
contentRect: m
} = qt(), {
resizeRef: g,
contentRect: y
} = qt(), b = Wo(), S = h(() => ({
container: f.el,
duration: 200,
easing: "easeOutQuart"
})), _ = h(() => o.selected.value.length ? o.items.value.findIndex((x) => x.id === o.selected.value[0]) : -1), B = h(() => o.selected.value.length ? o.items.value.findIndex((x) => x.id === o.selected.value[o.selected.value.length - 1]) : -1);
if (me) {
let x = -1;
K(() => [o.selected.value, m.value, y.value, v.value], () => {
cancelAnimationFrame(x), x = requestAnimationFrame(() => {
if (m.value && y.value) {
const I = v.value ? "width" : "height";
s.value = m.value[I], d.value = y.value[I], r.value = s.value + 1 < d.value;
}
if (_.value >= 0 && g.el) {
const I = g.el.children[B.value];
A(I, e.centerActive);
}
});
});
}
const V = U(!1);
function A(x, I) {
let D = 0;
I ? D = Xo({
containerElement: f.el,
isHorizontal: v.value,
selectedElement: x
}) : D = Yo({
containerElement: f.el,
isHorizontal: v.value,
isRtl: l.value,
selectedElement: x
}), P(D);
}
function P(x) {
if (!me || !f.el) return;
const I = At(v.value, f.el), D = Fa(v.value, l.value, f.el);
if (!(Bl(v.value, f.el) <= I || // Prevent scrolling by only a couple of pixels, which doesn't look smooth
Math.abs(x - D) < 16)) {
if (v.value && l.value && f.el) {
const {
scrollWidth: W,
offsetWidth: le
} = f.el;
x = W - le - x;
}
v.value ? b.horizontal(x, S.value) : b(x, S.value);
}
}
function O(x) {
const {
scrollTop: I,
scrollLeft: D
} = x.target;
u.value = v.value ? D : I;
}
function E(x) {
if (V.value = !0, !(!r.value || !g.el)) {
for (const I of x.composedPath())
for (const D of g.el.children)
if (D === I) {
A(D);
return;
}
}
}
function R(x) {
V.value = !1;
}
let z = !1;
function M(x) {
var I;
!z && !V.value && !(x.relatedTarget && ((I = g.el) != null && I.contains(x.relatedTarget))) && w(), z = !1;
}
function C() {
z = !0;
}
function p(x) {
if (!g.el) return;
function I(D) {
x.preventDefault(), w(D);
}
v.value ? x.key === "ArrowRight" ? I(l.value ? "prev" : "next") : x.key === "ArrowLeft" && I(l.value ? "next" : "prev") : x.key === "ArrowDown" ? I("next") : x.key === "ArrowUp" && I("prev"), x.key === "Home" ? I("first") : x.key === "End" && I("last");
}
function w(x) {
var D, ee;
if (!g.el) return;
let I;
if (!x)
I = Wt(g.el)[0];
else if (x === "next") {
if (I = (D = g.el.querySelector(":focus")) == null ? void 0 : D.nextElementSibling, !I) return w("first");
} else if (x === "prev") {
if (I = (ee = g.el.querySelector(":focus")) == null ? void 0 : ee.previousElementSibling, !I) return w("last");
} else x === "first" ? I = g.el.firstElementChild : x === "last" && (I = g.el.lastElementChild);
I && I.focus({
preventScroll: !0
});
}
function T(x) {
const I = v.value && l.value ? -1 : 1, D = (x === "prev" ? -I : I) * s.value;
let ee = u.value + D;
if (v.value && l.value && f.el) {
const {
scrollWidth: W,
offsetWidth: le
} = f.el;
ee += W - le;
}
P(ee);
}
const N = h(() => ({
next: o.next,
prev: o.prev,
select: o.select,
isSelected: o.isSelected
})), J = h(() => {
switch (e.showArrows) {
case "always":
return !0;
case "desktop":
return !i.value;
case !0:
return r.value || Math.abs(u.value) > 0;
case "mobile":
return i.value || r.value || Math.abs(u.value) > 0;
default:
return !i.value && (r.value || Math.abs(u.value) > 0);
}
}), j = h(() => Math.abs(u.value) > 1), k = h(() => {
if (!f.value) return !1;
const x = Bl(v.value, f.el), I = Qo(v.value, f.el);
return x - I - Math.abs(u.value) > 1;
});
return ne(() => c(e.tag, {
class: ["v-slide-group", {
"v-slide-group--vertical": !v.value,
"v-slide-group--has-affixes": J.value,
"v-slide-group--is-overflowing": r.value
}, a.value, e.class],
style: e.style,
tabindex: V.value || o.selected.value.length ? -1 : 0,
onFocus: M
}, {
default: () => {
var x, I, D;
return [J.value && c("div", {
key: "prev",
class: ["v-slide-group__prev", {
"v-slide-group__prev--disabled": !j.value
}],
onMousedown: C,
onClick: () => j.value && T("prev")
}, [((x = t.prev) == null ? void 0 : x.call(t, N.value)) ?? c(Al, null, {
default: () => [c(we, {
icon: l.value ? e.nextIcon : e.prevIcon
}, null)]
})]), c("div", {
key: "container",
ref: f,
class: "v-slide-group__container",
onScroll: O
}, [c("div", {
ref: g,
class: "v-slide-group__content",
onFocusin: E,
onFocusout: R,
onKeydown: p
}, [(I = t.default) == null ? void 0 : I.call(t, N.value)])]), J.value && c("div", {
key: "next",
class: ["v-slide-group__next", {
"v-slide-group__next--disabled": !k.value
}],
onMousedown: C,
onClick: () => k.value && T("next")
}, [((D = t.next) == null ? void 0 : D.call(t, N.value)) ?? c(Al, null, {
default: () => [c(we, {
icon: l.value ? e.prevIcon : e.nextIcon
}, null)]
})])];
}
})), {
selected: o.selected,
scrollTo: T,
scrollOffset: u,
focus: w,
hasPrev: j,
hasNext: k
};
}
}), Da = Symbol.for("vuetify:v-chip-group"), Zo = F({
column: Boolean,
filter: Boolean,
valueComparator: {
type: Function,
default: gt
},
...Ra(),
...ae(),
..._a({
selectedClass: "v-chip--selected"
}),
...Me(),
...Ee(),
..._t({
variant: "tonal"
})
}, "VChipGroup");
Q()({
name: "VChipGroup",
props: Zo(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const {
themeClasses: l
} = Re(e), {
isSelected: a,
select: i,
next: o,
prev: r,
selected: u
} = Ta(e, Da);
return en({
VChip: {
color: G(e, "color"),
disabled: G(e, "disabled"),
filter: G(e, "filter"),
variant: G(e, "variant")
}
}), ne(() => {
const s = _l.filterProps(e);
return c(_l, X(s, {
class: ["v-chip-group", {
"v-chip-group--column": e.column
}, l.value, e.class],
style: e.style
}), {
default: () => {
var d;
return [(d = t.default) == null ? void 0 : d.call(t, {
isSelected: a,
select: i,
next: o,
prev: r,
selected: u.value
})];
}
});
}), {};
}
});
const qn = F({
elevation: {
type: [Number, String],
validator(e) {
const n = parseInt(e);
return !isNaN(n) && n >= 0 && // Material Design has a maximum elevation of 24
// https://material.io/design/environment/elevation.html#default-elevations
n <= 24;
}
}
}, "elevation");
function Yn(e) {
return {
elevationClasses: h(() => {
const t = st(e) ? e.value : e.elevation, l = [];
return t == null || l.push(`elevation-${t}`), l;
})
};
}
function er() {
const e = ge("useRoute");
return h(() => {
var n;
return (n = e == null ? void 0 : e.proxy) == null ? void 0 : n.$route;
});
}
function tr() {
var e, n;
return (n = (e = ge("useRouter")) == null ? void 0 : e.proxy) == null ? void 0 : n.$router;
}
function $a(e, n) {
var s, d;
const t = wi("RouterLink"), l = h(() => !!(e.href || e.to)), a = h(() => (l == null ? void 0 : l.value) || il(n, "click") || il(e, "click"));
if (typeof t == "string" || !("useLink" in t))
return {
isLink: l,
isClickable: a,
href: G(e, "href")
};
const i = h(() => ({
...e,
to: G(() => e.to || "")
})), o = t.useLink(i.value), r = h(() => e.to ? o : void 0), u = er();
return {
isLink: l,
isClickable: a,
route: (s = r.value) == null ? void 0 : s.route,
navigate: (d = r.value) == null ? void 0 : d.navigate,
isActive: h(() => {
var v, f, m;
return r.value ? e.exact ? u.value ? ((m = r.value.isExactActive) == null ? void 0 : m.value) && gt(r.value.route.value.query, u.value.query) : ((f = r.value.isExactActive) == null ? void 0 : f.value) ?? !1 : ((v = r.value.isActive) == null ? void 0 : v.value) ?? !1 : !1;
}),
href: h(() => {
var v;
return e.to ? (v = r.value) == null ? void 0 : v.route.value.href : e.href;
})
};
}
const Na = F({
href: String,
replace: Boolean,
to: [String, Object],
exact: Boolean
}, "router");
let fn = !1;
function nr(e, n) {
let t = !1, l, a;
me && (ke(() => {
window.addEventListener("popstate", i), l = e == null ? void 0 : e.beforeEach((o, r, u) => {
fn ? t ? n(u) : u() : setTimeout(() => t ? n(u) : u()), fn = !0;
}), a = e == null ? void 0 : e.afterEach(() => {
fn = !1;
});
}), Ve(() => {
window.removeEventListener("popstate", i), l == null || l(), a == null || a();
}));
function i(o) {
var r;
(r = o.state) != null && r.replaced || (t = !0, setTimeout(() => t = !1));
}
}
const lr = F({
activeClass: String,
appendAvatar: String,
appendIcon: se,
closable: Boolean,
closeIcon: {
type: se,
default: "$delete"
},
closeLabel: {
type: String,
default: "$vuetify.close"
},
draggable: Boolean,
filter: Boolean,
filterIcon: {
type: String,
default: "$complete"
},
label: Boolean,
link: {
type: Boolean,
default: void 0
},
pill: Boolean,
prependAvatar: String,
prependIcon: se,
ripple: {
type: [Boolean, Object],
default: !0
},
text: String,
modelValue: {
type: Boolean,
default: !0
},
onClick: xe(),
onClickOnce: xe(),
...nn(),
...ae(),
...St(),
...qn(),
...Uo(),
...it(),
...Na(),
...Nn(),
...Me({
tag: "span"
}),
...Ee(),
..._t({
variant: "tonal"
})
}, "VChip"), za = Q()({
name: "VChip",
directives: {
Ripple: jn
},
props: lr(),
emits: {
"click:close": (e) => !0,
"update:modelValue": (e) => !0,
"group:selected": (e) => !0,
click: (e) => !0
},
setup(e, n) {
let {
attrs: t,
emit: l,
slots: a
} = n;
const {
t: i
} = an(), {
borderClasses: o
} = ln(e), {
colorClasses: r,
colorStyles: u,
variantClasses: s
} = Wn(e), {
densityClasses: d
} = wt(e), {
elevationClasses: v
} = Yn(e), {
roundedClasses: f
} = ot(e), {
sizeClasses: m
} = zn(e), {
themeClasses: g
} = Re(e), y = ve(e, "modelValue"), b = Go(e, Da, !1), S = $a(e, t), _ = h(() => e.link !== !1 && S.isLink.value), B = h(() => !e.disabled && e.link !== !1 && (!!b || e.link || S.isClickable.value)), V = h(() => ({
"aria-label": i(e.closeLabel),
onClick(O) {
O.preventDefault(), O.stopPropagation(), y.value = !1, l("click:close", O);
}
}));
function A(O) {
var E;
l("click", O), B.value && ((E = S.navigate) == null || E.call(S, O), b == null || b.toggle());
}
function P(O) {
(O.key === "Enter" || O.key === " ") && (O.preventDefault(), A(O));
}
return () => {
const O = S.isLink.value ? "a" : e.tag, E = !!(e.appendIcon || e.appendAvatar), R = !!(E || a.append), z = !!(a.close || e.closable), M = !!(a.filter || e.filter) && b, C = !!(e.prependIcon || e.prependAvatar), p = !!(C || a.prepend), w = !b || b.isSelected.value;
return y.value && Fe(c(O, {
class: ["v-chip", {
"v-chip--disabled": e.disabled,
"v-chip--label": e.label,
"v-chip--link": B.value,
"v-chip--filter": M,
"v-chip--pill": e.pill
}, g.value, o.value, w ? r.value : void 0, d.value, v.value, f.value, m.value, s.value, b == null ? void 0 : b.selectedClass.value, e.class],
style: [w ? u.value : void 0, e.style],
disabled: e.disabled || void 0,
draggable: e.draggable,
href: S.href.value,
tabindex: B.value ? 0 : void 0,
onClick: A,
onKeydown: B.value && !_.value && P
}, {
default: () => {
var T;
return [Hn(B.value, "v-chip"), M && c(Aa, {
key: "filter"
}, {
default: () => [Fe(c("div", {
class: "v-chip__filter"
}, [a.filter ? c(Te, {
key: "filter-defaults",
disabled: !e.filterIcon,
defaults: {
VIcon: {
icon: e.filterIcon
}
}
}, a.filter) : c(we, {
key: "filter-icon",
icon: e.filterIcon
}, null)]), [[mt, b.isSelected.value]])]
}), p && c("div", {
key: "prepend",
class: "v-chip__prepend"
}, [a.prepend ? c(Te, {
key: "prepend-defaults",
disabled: !C,
defaults: {
VAvatar: {
image: e.prependAvatar,
start: !0
},
VIcon: {
icon: e.prependIcon,
start: !0
}
}
}, a.prepend) : c(ue, null, [e.prependIcon && c(we, {
key: "prepend-icon",
icon: e.prependIcon,
start: !0
}, null), e.prependAvatar && c(dt, {
key: "prepend-avatar",
image: e.prependAvatar,
start: !0
}, null)])]), c("div", {
class: "v-chip__content",
"data-no-activator": ""
}, [((T = a.default) == null ? void 0 : T.call(a, {
isSelected: b == null ? void 0 : b.isSelected.value,
selectedClass: b == null ? void 0 : b.selectedClass.value,
select: b == null ? void 0 : b.select,
toggle: b == null ? void 0 : b.toggle,
value: b == null ? void 0 : b.value.value,
disabled: e.disabled
})) ?? e.text]), R && c("div", {
key: "append",
class: "v-chip__append"
}, [a.append ? c(Te, {
key: "append-defaults",
disabled: !E,
defaults: {
VAvatar: {
end: !0,
image: e.appendAvatar
},
VIcon: {
end: !0,
icon: e.appendIcon
}
}
}, a.append) : c(ue, null, [e.appendIcon && c(we, {
key: "append-icon",
end: !0,
icon: e.appendIcon
}, null), e.appendAvatar && c(dt, {
key: "append-avatar",
end: !0,
image: e.appendAvatar
}, null)])]), z && c("button", X({
key: "close",
class: "v-chip__close",
type: "button"
}, V.value), [a.close ? c(Te, {
key: "close-defaults",
defaults: {
VIcon: {
icon: e.closeIcon,
size: "x-small"
}
}
}, a.close) : c(we, {
key: "close-icon",
icon: e.closeIcon,
size: "x-small"
}, null)])];
}
}), [[vt("ripple"), B.value && e.ripple, null]]);
};
}
}), kn = Symbol.for("vuetify:list");
function Ha() {
const e = he(kn, {
hasPrepend: U(!1),
updateHasPrepend: () => null
}), n = {
hasPrepend: U(!1),
updateHasPrepend: (t) => {
t && (n.hasPrepend.value = t);
}
};
return Le(kn, n), e;
}
function Wa() {
return he(kn, null);
}
const Xn = (e) => {
const n = {
activate: (t) => {
let {
id: l,
value: a,
activated: i
} = t;
return l = re(l), e && !a && i.size === 1 && i.has(l) || (a ? i.add(l) : i.delete(l)), i;
},
in: (t, l, a) => {
let i = /* @__PURE__ */ new Set();
if (t != null)
for (const o of pe(t))
i = n.activate({
id: o,
value: !0,
activated: new Set(i),
children: l,
parents: a
});
return i;
},
out: (t) => Array.from(t)
};
return n;
}, ja = (e) => {
const n = Xn(e);
return {
activate: (l) => {
let {
activated: a,
id: i,
...o
} = l;
i = re(i);
const r = a.has(i) ? /* @__PURE__ */ new Set([i]) : /* @__PURE__ */ new Set();
return n.activate({
...o,
id: i,
activated: r
});
},
in: (l, a, i) => {
let o = /* @__PURE__ */ new Set();
if (l != null) {
const r = pe(l);
r.length && (o = n.in(r.slice(0, 1), a, i));
}
return o;
},
out: (l, a, i) => n.out(l, a, i)
};
}, ar = (e) => {
const n = Xn(e);
return {
activate: (l) => {
let {
id: a,
activated: i,
children: o,
...r
} = l;
return a = re(a), o.has(a) ? i : n.activate({
id: a,
activated: i,
children: o,
...r
});
},
in: n.in,
out: n.out
};
}, ir = (e) => {
const n = ja(e);
return {
activate: (l) => {
let {
id: a,
activated: i,
children: o,
...r
} = l;
return a = re(a), o.has(a) ? i : n.activate({
id: a,
activated: i,
children: o,
...r
});
},
in: n.in,
out: n.out
};
}, or = {
open: (e) => {
let {
id: n,
value: t,
opened: l,
parents: a
} = e;
if (t) {
const i = /* @__PURE__ */ new Set();
i.add(n);
let o = a.get(n);
for (; o != null; )
i.add(o), o = a.get(o);
return i;
} else
return l.delete(n), l;
},
select: () => null
}, Ua = {
open: (e) => {
let {
id: n,
value: t,
opened: l,
parents: a
} = e;
if (t) {
let i = re(a.get(n));
for (l.add(n); i != null && i !== n; )
l.add(i), i = re(a.get(i));
return l;
} else
l.delete(n);
return l;
},
select: () => null
}, rr = {
open: Ua.open,
select: (e) => {
let {
id: n,
value: t,
opened: l,
parents: a
} = e;
if (!t) return l;
const i = [];
let o = a.get(n);
for (; o != null; )
i.push(o), o = a.get(o);
return new Set(i);
}
}, Qn = (e) => {
const n = {
select: (t) => {
let {
id: l,
value: a,
selected: i
} = t;
if (l = re(l), e && !a) {
const o = Array.from(i.entries()).reduce((r, u) => {
let [s, d] = u;
return d === "on" && r.push(s), r;
}, []);
if (o.length === 1 && o[0] === l) return i;
}
return i.set(l, a ? "on" : "off"), i;
},
in: (t, l, a) => {
let i = /* @__PURE__ */ new Map();
for (const o of t || [])
i = n.select({
id: o,
value: !0,
selected: new Map(i),
children: l,
parents: a
});
return i;
},
out: (t) => {
const l = [];
for (const [a, i] of t.entries())
i === "on" && l.push(a);
return l;
}
};
return n;
}, Ga = (e) => {
const n = Qn(e);
return {
select: (l) => {
let {
selected: a,
id: i,
...o
} = l;
i = re(i);
const r = a.has(i) ? /* @__PURE__ */ new Map([[i, a.get(i)]]) : /* @__PURE__ */ new Map();
return n.select({
...o,
id: i,
selected: r
});
},
in: (l, a, i) => {
let o = /* @__PURE__ */ new Map();
return l != null && l.length && (o = n.in(l.slice(0, 1), a, i)), o;
},
out: (l, a, i) => n.out(l, a, i)
};
}, ur = (e) => {
const n = Qn(e);
return {
select: (l) => {
let {
id: a,
selected: i,
children: o,
...r
} = l;
return a = re(a), o.has(a) ? i : n.select({
id: a,
selected: i,
children: o,
...r
});
},
in: n.in,
out: n.out
};
}, sr = (e) => {
const n = Ga(e);
return {
select: (l) => {
let {
id: a,
selected: i,
children: o,
...r
} = l;
return a = re(a), o.has(a) ? i : n.select({
id: a,
selected: i,
children: o,
...r
});
},
in: n.in,
out: n.out
};
}, cr = (e) => {
const n = {
select: (t) => {
let {
id: l,
value: a,
selected: i,
children: o,
parents: r
} = t;
l = re(l);
const u = new Map(i), s = [l];
for (; s.length; ) {
const v = s.shift();
i.set(re(v), a ? "on" : "off"), o.has(v) && s.push(...o.get(v));
}
let d = re(r.get(l));
for (; d; ) {
const v = o.get(d), f = v.every((g) => i.get(re(g)) === "on"), m = v.every((g) => !i.has(re(g)) || i.get(re(g)) === "off");
i.set(d, f ? "on" : m ? "off" : "indeterminate"), d = re(r.get(d));
}
return e && !a && Array.from(i.entries()).reduce((f, m) => {
let [g, y] = m;
return y === "on" && f.push(g), f;
}, []).length === 0 ? u : i;
},
in: (t, l, a) => {
let i = /* @__PURE__ */ new Map();
for (const o of t || [])
i = n.select({
id: o,
value: !0,
selected: new Map(i),
children: l,
parents: a
});
return i;
},
out: (t, l) => {
const a = [];
for (const [i, o] of t.entries())
o === "on" && !l.has(i) && a.push(i);
return a;
}
};
return n;
}, Et = Symbol.for("vuetify:nested"), Ka = {
id: U(),
root: {
register: () => null,
unregister: () => null,
parents: $(/* @__PURE__ */ new Map()),
children: $(/* @__PURE__ */ new Map()),
open: () => null,
openOnSelect: () => null,
activate: () => null,
select: () => null,
activatable: $(!1),
selectable: $(!1),
opened: $(/* @__PURE__ */ new Set()),
activated: $(/* @__PURE__ */ new Set()),
selected: $(/* @__PURE__ */ new Map()),
selectedValues: $([])
}
}, dr = F({
activatable: Boolean,
selectable: Boolean,
activeStrategy: [String, Function, Object],
selectStrategy: [String, Function, Object],
openStrategy: [String, Object],
opened: null,
activated: null,
selected: null,
mandatory: Boolean
}, "nested"), fr = (e) => {
let n = !1;
const t = $(/* @__PURE__ */ new Map()), l = $(/* @__PURE__ */ new Map()), a = ve(e, "opened", e.opened, (m) => new Set(re(m)), (m) => [...m.values()]), i = h(() => {
if (typeof e.activeStrategy == "object") return e.activeStrategy;
if (typeof e.activeStrategy == "function") return e.activeStrategy(e.mandatory);
switch (e.activeStrategy) {
case "leaf":
return ar(e.mandatory);
case "single-leaf":
return ir(e.mandatory);
case "independent":
return Xn(e.mandatory);
case "single-independent":
default:
return ja(e.mandatory);
}
}), o = h(() => {
if (typeof e.selectStrategy == "object") return e.selectStrategy;
if (typeof e.selectStrategy == "function") return e.selectStrategy(e.mandatory);
switch (e.selectStrategy) {
case "single-leaf":
return sr(e.mandatory);
case "leaf":
return ur(e.mandatory);
case "independent":
return Qn(e.mandatory);
case "single-independent":
return Ga(e.mandatory);
case "classic":
default:
return cr(e.mandatory);
}
}), r = h(() => {
if (typeof e.openStrategy == "object") return e.openStrategy;
switch (e.openStrategy) {
case "list":
return rr;
case "single":
return or;
case "multiple":
default:
return Ua;
}
}), u = ve(e, "activated", e.activated, (m) => i.value.in(m, t.value, l.value), (m) => i.value.out(m, t.value, l.value)), s = ve(e, "selected", e.selected, (m) => o.value.in(m, t.value, l.value), (m) => o.value.out(m, t.value, l.value));
$e(() => {
n = !0;
});
function d(m) {
const g = [];
let y = m;
for (; y != null; )
g.unshift(y), y = l.value.get(y);
return g;
}
const v = ge("nested"), f = {
id: U(),
root: {
opened: a,
activatable: G(e, "activatable"),
selectable: G(e, "selectable"),
activated: u,
selected: s,
selectedValues: h(() => {
const m = [];
for (const [g, y] of s.value.entries())
y === "on" && m.push(g);
return m;
}),
register: (m, g, y) => {
g && m !== g && l.value.set(m, g), y && t.value.set(m, []), g != null && t.value.set(g, [...t.value.get(g) || [], m]);
},
unregister: (m) => {
if (n) return;
t.value.delete(m);
const g = l.value.get(m);
if (g) {
const y = t.value.get(g) ?? [];
t.value.set(g, y.filter((b) => b !== m));
}
l.value.delete(m);
},
open: (m, g, y) => {
v.emit("click:open", {
id: m,
value: g,
path: d(m),
event: y
});
const b = r.value.open({
id: m,
value: g,
opened: new Set(a.value),
children: t.value,
parents: l.value,
event: y
});
b && (a.value = b);
},
openOnSelect: (m, g, y) => {
const b = r.value.select({
id: m,
value: g,
selected: new Map(s.value),
opened: new Set(a.value),
children: t.value,
parents: l.value,
event: y
});
b && (a.value = b);
},
select: (m, g, y) => {
v.emit("click:select", {
id: m,
value: g,
path: d(m),
event: y
});
const b = o.value.select({
id: m,
value: g,
selected: new Map(s.value),
children: t.value,
parents: l.value,
event: y
});
b && (s.value = b), f.root.openOnSelect(m, g, y);
},
activate: (m, g, y) => {
if (!e.activatable)
return f.root.select(m, !0, y);
v.emit("click:activate", {
id: m,
value: g,
path: d(m),
event: y
});
const b = i.value.activate({
id: m,
value: g,
activated: new Set(u.value),
children: t.value,
parents: l.value,
event: y
});
b && (u.value = b);
},
children: t,
parents: l
}
};
return Le(Et, f), f.root;
}, qa = (e, n) => {
const t = he(Et, Ka), l = Symbol(He()), a = h(() => e.value !== void 0 ? e.value : l), i = {
...t,
id: a,
open: (o, r) => t.root.open(re(a.value), o, r),
openOnSelect: (o, r) => t.root.openOnSelect(a.value, o, r),
isOpen: h(() => t.root.opened.value.has(re(a.value))),
parent: h(() => t.root.parents.value.get(a.value)),
activate: (o, r) => t.root.activate(a.value, o, r),
isActivated: h(() => t.root.activated.value.has(re(a.value))),
select: (o, r) => t.root.select(a.value, o, r),
isSelected: h(() => t.root.selected.value.get(re(a.value)) === "on"),
isIndeterminate: h(() => t.root.selected.value.get(a.value) === "indeterminate"),
isLeaf: h(() => !t.root.children.value.get(a.value)),
isGroupActivator: t.isGroupActivator
};
return !t.isGroupActivator && t.root.register(a.value, t.id.value, n), $e(() => {
!t.isGroupActivator && t.root.unregister(a.value);
}), n && Le(Et, i), i;
}, vr = () => {
const e = he(Et, Ka);
Le(Et, {
...e,
isGroupActivator: !0
});
};
function mr() {
const e = U(!1);
return Ot(() => {
window.requestAnimationFrame(() => {
e.value = !0;
});
}), {
ssrBootStyles: h(() => e.value ? void 0 : {
transition: "none !important"
}),
isBooted: Bn(e)
};
}
const gr = Bt({
name: "VListGroupActivator",
setup(e, n) {
let {
slots: t
} = n;
return vr(), () => {
var l;
return (l = t.default) == null ? void 0 : l.call(t);
};
}
}), yr = F({
/* @deprecated */
activeColor: String,
baseColor: String,
color: String,
collapseIcon: {
type: se,
default: "$collapse"
},
expandIcon: {
type: se,
default: "$expand"
},
prependIcon: se,
appendIcon: se,
fluid: Boolean,
subgroup: Boolean,
title: String,
value: null,
...ae(),
...Me()
}, "VListGroup"), Tl = Q()({
name: "VListGroup",
props: yr(),
setup(e, n) {
let {
slots: t
} = n;
const {
isOpen: l,
open: a,
id: i
} = qa(G(e, "value"), !0), o = h(() => `v-list-group--id-${String(i.value)}`), r = Wa(), {
isBooted: u
} = mr();
function s(m) {
m.stopPropagation(), a(!l.value, m);
}
const d = h(() => ({
onClick: s,
class: "v-list-group__header",
id: o.value
})), v = h(() => l.value ? e.collapseIcon : e.expandIcon), f = h(() => ({
VListItem: {
active: l.value,
activeColor: e.activeColor,
baseColor: e.baseColor,
color: e.color,
prependIcon: e.prependIcon || e.subgroup && v.value,
appendIcon: e.appendIcon || !e.subgroup && v.value,
title: e.title,
value: e.value
}
}));
return ne(() => c(e.tag, {
class: ["v-list-group", {
"v-list-group--prepend": r == null ? void 0 : r.hasPrepend.value,
"v-list-group--fluid": e.fluid,
"v-list-group--subgroup": e.subgroup,
"v-list-group--open": l.value
}, e.class],
style: e.style
}, {
default: () => [t.activator && c(Te, {
defaults: f.value
}, {
default: () => [c(gr, null, {
default: () => [t.activator({
props: d.value,
isOpen: l.value
})]
})]
}), c(Ue, {
transition: {
component: _o
},
disabled: !u.value
}, {
default: () => {
var m;
return [Fe(c("div", {
class: "v-list-group__items",
role: "group",
"aria-labelledby": o.value
}, [(m = t.default) == null ? void 0 : m.call(t)]), [[mt, l.value]])];
}
})]
})), {
isOpen: l
};
}
}), hr = F({
opacity: [Number, String],
...ae(),
...Me()
}, "VListItemSubtitle"), br = Q()({
name: "VListItemSubtitle",
props: hr(),
setup(e, n) {
let {
slots: t
} = n;
return ne(() => c(e.tag, {
class: ["v-list-item-subtitle", e.class],
style: [{
"--v-list-item-subtitle-opacity": e.opacity
}, e.style]
}, t)), {};
}
}), Sr = no("v-list-item-title"), wr = F({
active: {
type: Boolean,
default: void 0
},
activeClass: String,
/* @deprecated */
activeColor: String,
appendAvatar: String,
appendIcon: se,
baseColor: String,
disabled: Boolean,
lines: [Boolean, String],
link: {
type: Boolean,
default: void 0
},
nav: Boolean,
prependAvatar: String,
prependIcon: se,
ripple: {
type: [Boolean, Object],
default: !0
},
slim: Boolean,
subtitle: [String, Number],
title: [String, Number],
value: null,
onClick: xe(),
onClickOnce: xe(),
...nn(),
...ae(),
...St(),
...yt(),
...qn(),
...it(),
...Na(),
...Me(),
...Ee(),
..._t({
variant: "text"
})
}, "VListItem"), ft = Q()({
name: "VListItem",
directives: {
Ripple: jn
},
props: wr(),
emits: {
click: (e) => !0
},
setup(e, n) {
let {
attrs: t,
slots: l,
emit: a
} = n;
const i = $a(e, t), o = h(() => e.value === void 0 ? i.href.value : e.value), {
activate: r,
isActivated: u,
select: s,
isOpen: d,
isSelected: v,
isIndeterminate: f,
isGroupActivator: m,
root: g,
parent: y,
openOnSelect: b
} = qa(o, !1), S = Wa(), _ = h(() => {
var I;
return e.active !== !1 && (e.active || ((I = i.isActive) == null ? void 0 : I.value) || (g.activatable.value ? u.value : v.value));
}), B = h(() => e.link !== !1 && i.isLink.value), V = h(() => !e.disabled && e.link !== !1 && (e.link || i.isClickable.value || !!S && (g.selectable.value || g.activatable.value || e.value != null))), A = h(() => e.rounded || e.nav), P = h(() => e.color ?? e.activeColor), O = h(() => ({
color: _.value ? P.value ?? e.baseColor : e.baseColor,
variant: e.variant
}));
K(() => {
var I;
return (I = i.isActive) == null ? void 0 : I.value;
}, (I) => {
I && y.value != null && g.open(y.value, !0), I && b(I);
}, {
immediate: !0
});
const {
themeClasses: E
} = Re(e), {
borderClasses: R
} = ln(e), {
colorClasses: z,
colorStyles: M,
variantClasses: C
} = Wn(O), {
densityClasses: p
} = wt(e), {
dimensionStyles: w
} = ht(e), {
elevationClasses: T
} = Yn(e), {
roundedClasses: N
} = ot(A), J = h(() => e.lines ? `v-list-item--${e.lines}-line` : void 0), j = h(() => ({
isActive: _.value,
select: s,
isOpen: d.value,
isSelected: v.value,
isIndeterminate: f.value
}));
function k(I) {
var D;
a("click", I), V.value && ((D = i.navigate) == null || D.call(i, I), !m && (g.activatable.value ? r(!u.value, I) : (g.selectable.value || e.value != null) && s(!v.value, I)));
}
function x(I) {
(I.key === "Enter" || I.key === " ") && (I.preventDefault(), I.target.dispatchEvent(new MouseEvent("click", I)));
}
return ne(() => {
const I = B.value ? "a" : e.tag, D = l.title || e.title != null, ee = l.subtitle || e.subtitle != null, W = !!(e.appendAvatar || e.appendIcon), le = !!(W || l.append), H = !!(e.prependAvatar || e.prependIcon), te = !!(H || l.prepend);
return S == null || S.updateHasPrepend(te), e.activeColor && Xi("active-color", ["color", "base-color"]), Fe(c(I, {
class: ["v-list-item", {
"v-list-item--active": _.value,
"v-list-item--disabled": e.disabled,
"v-list-item--link": V.value,
"v-list-item--nav": e.nav,
"v-list-item--prepend": !te && (S == null ? void 0 : S.hasPrepend.value),
"v-list-item--slim": e.slim,
[`${e.activeClass}`]: e.activeClass && _.value
}, E.value, R.value, z.value, p.value, T.value, J.value, N.value, C.value, e.class],
style: [M.value, w.value, e.style],
href: i.href.value,
tabindex: V.value ? S ? -2 : 0 : void 0,
onClick: k,
onKeydown: V.value && !B.value && x
}, {
default: () => {
var ce;
return [Hn(V.value || _.value, "v-list-item"), te && c("div", {
key: "prepend",
class: "v-list-item__prepend"
}, [l.prepend ? c(Te, {
key: "prepend-defaults",
disabled: !H,
defaults: {
VAvatar: {
density: e.density,
image: e.prependAvatar
},
VIcon: {
density: e.density,
icon: e.prependIcon
},
VListItemAction: {
start: !0
}
}
}, {
default: () => {
var ie;
return [(ie = l.prepend) == null ? void 0 : ie.call(l, j.value)];
}
}) : c(ue, null, [e.prependAvatar && c(dt, {
key: "prepend-avatar",
density: e.density,
image: e.prependAvatar
}, null), e.prependIcon && c(we, {
key: "prepend-icon",
density: e.density,
icon: e.prependIcon
}, null)]), c("div", {
class: "v-list-item__spacer"
}, null)]), c("div", {
class: "v-list-item__content",
"data-no-activator": ""
}, [D && c(Sr, {
key: "title"
}, {
default: () => {
var ie;
return [((ie = l.title) == null ? void 0 : ie.call(l, {
title: e.title
})) ?? e.title];
}
}), ee && c(br, {
key: "subtitle"
}, {
default: () => {
var ie;
return [((ie = l.subtitle) == null ? void 0 : ie.call(l, {
subtitle: e.subtitle
})) ?? e.subtitle];
}
}), (ce = l.default) == null ? void 0 : ce.call(l, j.value)]), le && c("div", {
key: "append",
class: "v-list-item__append"
}, [l.append ? c(Te, {
key: "append-defaults",
disabled: !W,
defaults: {
VAvatar: {
density: e.density,
image: e.appendAvatar
},
VIcon: {
density: e.density,
icon: e.appendIcon
},
VListItemAction: {
end: !0
}
}
}, {
default: () => {
var ie;
return [(ie = l.append) == null ? void 0 : ie.call(l, j.value)];
}
}) : c(ue, null, [e.appendIcon && c(we, {
key: "append-icon",
density: e.density,
icon: e.appendIcon
}, null), e.appendAvatar && c(dt, {
key: "append-avatar",
density: e.density,
image: e.appendAvatar
}, null)]), c("div", {
class: "v-list-item__spacer"
}, null)])];
}
}), [[vt("ripple"), V.value && e.ripple]]);
}), {
activate: r,
isActivated: u,
isGroupActivator: m,
isSelected: v,
list: S,
select: s
};
}
}), Cr = F({
color: String,
inset: Boolean,
sticky: Boolean,
title: String,
...ae(),
...Me()
}, "VListSubheader"), pr = Q()({
name: "VListSubheader",
props: Cr(),
setup(e, n) {
let {
slots: t
} = n;
const {
textColorClasses: l,
textColorStyles: a
} = Ye(G(e, "color"));
return ne(() => {
const i = !!(t.default || e.title);
return c(e.tag, {
class: ["v-list-subheader", {
"v-list-subheader--inset": e.inset,
"v-list-subheader--sticky": e.sticky
}, l.value, e.class],
style: [{
textColorStyles: a
}, e.style]
}, {
default: () => {
var o;
return [i && c("div", {
class: "v-list-subheader__text"
}, [((o = t.default) == null ? void 0 : o.call(t)) ?? e.title])];
}
});
}), {};
}
}), xr = F({
color: String,
inset: Boolean,
length: [Number, String],
opacity: [Number, String],
thickness: [Number, String],
vertical: Boolean,
...ae(),
...Ee()
}, "VDivider"), kr = Q()({
name: "VDivider",
props: xr(),
setup(e, n) {
let {
attrs: t,
slots: l
} = n;
const {
themeClasses: a
} = Re(e), {
textColorClasses: i,
textColorStyles: o
} = Ye(G(e, "color")), r = h(() => {
const u = {};
return e.length && (u[e.vertical ? "height" : "width"] = q(e.length)), e.thickness && (u[e.vertical ? "borderRightWidth" : "borderTopWidth"] = q(e.thickness)), u;
});
return ne(() => {
const u = c("hr", {
class: [{
"v-divider": !0,
"v-divider--inset": e.inset,
"v-divider--vertical": e.vertical
}, a.value, i.value, e.class],
style: [r.value, o.value, {
"--v-border-opacity": e.opacity
}, e.style],
"aria-orientation": !t.role || t.role === "separator" ? e.vertical ? "vertical" : "horizontal" : void 0,
role: `${t.role || "separator"}`
}, null);
return l.default ? c("div", {
class: ["v-divider__wrapper", {
"v-divider__wrapper--vertical": e.vertical,
"v-divider__wrapper--inset": e.inset
}]
}, [u, c("div", {
class: "v-divider__content"
}, [l.default()]), u]) : u;
}), {};
}
}), Vr = F({
items: Array,
returnObject: Boolean
}, "VListChildren"), Ya = Q()({
name: "VListChildren",
props: Vr(),
setup(e, n) {
let {
slots: t
} = n;
return Ha(), () => {
var l, a;
return ((l = t.default) == null ? void 0 : l.call(t)) ?? ((a = e.items) == null ? void 0 : a.map((i) => {
var f, m;
let {
children: o,
props: r,
type: u,
raw: s
} = i;
if (u === "divider")
return ((f = t.divider) == null ? void 0 : f.call(t, {
props: r
})) ?? c(kr, r, null);
if (u === "subheader")
return ((m = t.subheader) == null ? void 0 : m.call(t, {
props: r
})) ?? c(pr, r, null);
const d = {
subtitle: t.subtitle ? (g) => {
var y;
return (y = t.subtitle) == null ? void 0 : y.call(t, {
...g,
item: s
});
} : void 0,
prepend: t.prepend ? (g) => {
var y;
return (y = t.prepend) == null ? void 0 : y.call(t, {
...g,
item: s
});
} : void 0,
append: t.append ? (g) => {
var y;
return (y = t.append) == null ? void 0 : y.call(t, {
...g,
item: s
});
} : void 0,
title: t.title ? (g) => {
var y;
return (y = t.title) == null ? void 0 : y.call(t, {
...g,
item: s
});
} : void 0
}, v = Tl.filterProps(r);
return o ? c(Tl, X({
value: r == null ? void 0 : r.value
}, v), {
activator: (g) => {
let {
props: y
} = g;
const b = {
...r,
...y,
value: e.returnObject ? s : r.value
};
return t.header ? t.header({
props: b
}) : c(ft, b, d);
},
default: () => c(Ya, {
items: o,
returnObject: e.returnObject
}, t)
}) : t.item ? t.item({
props: r
}) : c(ft, X(r, {
value: e.returnObject ? s : r.value
}), d);
}));
};
}
}), Xa = F({
items: {
type: Array,
default: () => []
},
itemTitle: {
type: [String, Array, Function],
default: "title"
},
itemValue: {
type: [String, Array, Function],
default: "value"
},
itemChildren: {
type: [Boolean, String, Array, Function],
default: "children"
},
itemProps: {
type: [Boolean, String, Array, Function],
default: "props"
},
returnObject: Boolean,
valueComparator: {
type: Function,
default: gt
}
}, "list-items");
function Vn(e, n) {
const t = De(n, e.itemTitle, n), l = De(n, e.itemValue, t), a = De(n, e.itemChildren), i = e.itemProps === !0 ? typeof n == "object" && n != null && !Array.isArray(n) ? "children" in n ? at(n, ["children"]) : n : void 0 : De(n, e.itemProps), o = {
title: t,
value: l,
...i
};
return {
title: String(o.title ?? ""),
value: o.value,
props: o,
children: Array.isArray(a) ? Qa(e, a) : void 0,
raw: n
};
}
function Qa(e, n) {
const t = [];
for (const l of n)
t.push(Vn(e, l));
return t;
}
function Ja(e) {
const n = h(() => Qa(e, e.items)), t = h(() => n.value.some((i) => i.value === null));
function l(i) {
return t.value || (i = i.filter((o) => o !== null)), i.map((o) => e.returnObject && typeof o == "string" ? Vn(e, o) : n.value.find((r) => e.valueComparator(o, r.value)) || Vn(e, o));
}
function a(i) {
return e.returnObject ? i.map((o) => {
let {
raw: r
} = o;
return r;
}) : i.map((o) => {
let {
value: r
} = o;
return r;
});
}
return {
items: n,
transformIn: l,
transformOut: a
};
}
function Ir(e) {
return typeof e == "string" || typeof e == "number" || typeof e == "boolean";
}
function Pr(e, n) {
const t = De(n, e.itemType, "item"), l = Ir(n) ? n : De(n, e.itemTitle), a = De(n, e.itemValue, void 0), i = De(n, e.itemChildren), o = e.itemProps === !0 ? at(n, ["children"]) : De(n, e.itemProps), r = {
title: l,
value: a,
...o
};
return {
type: t,
title: r.title,
value: r.value,
props: r,
children: t === "item" && i ? Za(e, i) : void 0,
raw: n
};
}
function Za(e, n) {
const t = [];
for (const l of n)
t.push(Pr(e, l));
return t;
}
function Ar(e) {
return {
items: h(() => Za(e, e.items))
};
}
const Er = F({
baseColor: String,
/* @deprecated */
activeColor: String,
activeClass: String,
bgColor: String,
disabled: Boolean,
expandIcon: String,
collapseIcon: String,
lines: {
type: [Boolean, String],
default: "one"
},
slim: Boolean,
nav: Boolean,
"onClick:open": xe(),
"onClick:select": xe(),
"onUpdate:opened": xe(),
...dr({
selectStrategy: "single-leaf",
openStrategy: "list"
}),
...nn(),
...ae(),
...St(),
...yt(),
...qn(),
itemType: {
type: String,
default: "type"
},
...Xa(),
...it(),
...Me(),
...Ee(),
..._t({
variant: "text"
})
}, "VList"), ei = Q()({
name: "VList",
props: Er(),
emits: {
"update:selected": (e) => !0,
"update:activated": (e) => !0,
"update:opened": (e) => !0,
"click:open": (e) => !0,
"click:activate": (e) => !0,
"click:select": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const {
items: l
} = Ar(e), {
themeClasses: a
} = Re(e), {
backgroundColorClasses: i,
backgroundColorStyles: o
} = Ke(G(e, "bgColor")), {
borderClasses: r
} = ln(e), {
densityClasses: u
} = wt(e), {
dimensionStyles: s
} = ht(e), {
elevationClasses: d
} = Yn(e), {
roundedClasses: v
} = ot(e), {
children: f,
open: m,
parents: g,
select: y
} = fr(e), b = h(() => e.lines ? `v-list--${e.lines}-line` : void 0), S = G(e, "activeColor"), _ = G(e, "baseColor"), B = G(e, "color");
Ha(), en({
VListGroup: {
activeColor: S,
baseColor: _,
color: B,
expandIcon: G(e, "expandIcon"),
collapseIcon: G(e, "collapseIcon")
},
VListItem: {
activeClass: G(e, "activeClass"),
activeColor: S,
baseColor: _,
color: B,
density: G(e, "density"),
disabled: G(e, "disabled"),
lines: G(e, "lines"),
nav: G(e, "nav"),
slim: G(e, "slim"),
variant: G(e, "variant")
}
});
const V = U(!1), A = $();
function P(C) {
V.value = !0;
}
function O(C) {
V.value = !1;
}
function E(C) {
var p;
!V.value && !(C.relatedTarget && ((p = A.value) != null && p.contains(C.relatedTarget))) && M();
}
function R(C) {
const p = C.target;
if (!(!A.value || ["INPUT", "TEXTAREA"].includes(p.tagName))) {
if (C.key === "ArrowDown")
M("next");
else if (C.key === "ArrowUp")
M("prev");
else if (C.key === "Home")
M("first");
else if (C.key === "End")
M("last");
else
return;
C.preventDefault();
}
}
function z(C) {
V.value = !0;
}
function M(C) {
if (A.value)
return kt(A.value, C);
}
return ne(() => c(e.tag, {
ref: A,
class: ["v-list", {
"v-list--disabled": e.disabled,
"v-list--nav": e.nav,
"v-list--slim": e.slim
}, a.value, i.value, r.value, u.value, d.value, b.value, v.value, e.class],
style: [o.value, s.value, e.style],
tabindex: e.disabled || V.value ? -1 : 0,
role: "listbox",
"aria-activedescendant": void 0,
onFocusin: P,
onFocusout: O,
onFocus: E,
onKeydown: R,
onMousedown: z
}, {
default: () => [c(Ya, {
items: l.value,
returnObject: e.returnObject
}, t)]
})), {
open: m,
select: y,
focus: M,
children: f,
parents: g
};
}
});
function vn(e, n) {
return {
x: e.x + n.x,
y: e.y + n.y
};
}
function Or(e, n) {
return {
x: e.x - n.x,
y: e.y - n.y
};
}
function Ll(e, n) {
if (e.side === "top" || e.side === "bottom") {
const {
side: t,
align: l
} = e, a = l === "left" ? 0 : l === "center" ? n.width / 2 : l === "right" ? n.width : l, i = t === "top" ? 0 : t === "bottom" ? n.height : t;
return vn({
x: a,
y: i
}, n);
} else if (e.side === "left" || e.side === "right") {
const {
side: t,
align: l
} = e, a = t === "left" ? 0 : t === "right" ? n.width : t, i = l === "top" ? 0 : l === "center" ? n.height / 2 : l === "bottom" ? n.height : l;
return vn({
x: a,
y: i
}, n);
}
return vn({
x: n.width / 2,
y: n.height / 2
}, n);
}
const ti = {
static: Tr,
// specific viewport position, usually centered
connected: Fr
// connected to a certain element
}, Br = F({
locationStrategy: {
type: [String, Function],
default: "static",
validator: (e) => typeof e == "function" || e in ti
},
location: {
type: String,
default: "bottom"
},
origin: {
type: String,
default: "auto"
},
offset: [Number, String, Array]
}, "VOverlay-location-strategies");
function _r(e, n) {
const t = $({}), l = $();
me && lt(() => !!(n.isActive.value && e.locationStrategy), (i) => {
var o, r;
K(() => e.locationStrategy, i), Ve(() => {
window.removeEventListener("resize", a), l.value = void 0;
}), window.addEventListener("resize", a, {
passive: !0
}), typeof e.locationStrategy == "function" ? l.value = (o = e.locationStrategy(n, e, t)) == null ? void 0 : o.updateLocation : l.value = (r = ti[e.locationStrategy](n, e, t)) == null ? void 0 : r.updateLocation;
});
function a(i) {
var o;
(o = l.value) == null || o.call(l, i);
}
return {
contentStyles: t,
updateLocation: l
};
}
function Tr() {
}
function Lr(e, n) {
const t = Rn(e);
return n ? t.x += parseFloat(e.style.right || 0) : t.x -= parseFloat(e.style.left || 0), t.y -= parseFloat(e.style.top || 0), t;
}
function Fr(e, n, t) {
(Array.isArray(e.target.value) || oo(e.target.value)) && Object.assign(t.value, {
position: "fixed",
top: 0,
[e.isRtl.value ? "right" : "left"]: 0
});
const {
preferredAnchor: a,
preferredOrigin: i
} = Ln(() => {
const g = wn(n.location, e.isRtl.value), y = n.origin === "overlap" ? g : n.origin === "auto" ? sn(g) : wn(n.origin, e.isRtl.value);
return g.side === y.side && g.align === cn(y).align ? {
preferredAnchor: rl(g),
preferredOrigin: rl(y)
} : {
preferredAnchor: g,
preferredOrigin: y
};
}), [o, r, u, s] = ["minWidth", "minHeight", "maxWidth", "maxHeight"].map((g) => h(() => {
const y = parseFloat(n[g]);
return isNaN(y) ? 1 / 0 : y;
})), d = h(() => {
if (Array.isArray(n.offset))
return n.offset;
if (typeof n.offset == "string") {
const g = n.offset.split(" ").map(parseFloat);
return g.length < 2 && g.push(0), g;
}
return typeof n.offset == "number" ? [n.offset, 0] : [0, 0];
});
let v = !1;
const f = new ResizeObserver(() => {
v && m();
});
K([e.target, e.contentEl], (g, y) => {
let [b, S] = g, [_, B] = y;
_ && !Array.isArray(_) && f.unobserve(_), b && !Array.isArray(b) && f.observe(b), B && f.unobserve(B), S && f.observe(S);
}, {
immediate: !0
}), Ve(() => {
f.disconnect();
});
function m() {
if (v = !1, requestAnimationFrame(() => v = !0), !e.target.value || !e.contentEl.value) return;
const g = na(e.target.value), y = Lr(e.contentEl.value, e.isRtl.value), b = Gt(e.contentEl.value), S = 12;
b.length || (b.push(document.documentElement), e.contentEl.value.style.top && e.contentEl.value.style.left || (y.x -= parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x") || 0), y.y -= parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y") || 0)));
const _ = b.reduce((M, C) => {
const p = C.getBoundingClientRect(), w = new et({
x: C === document.documentElement ? 0 : p.x,
y: C === document.documentElement ? 0 : p.y,
width: C.clientWidth,
height: C.clientHeight
});
return M ? new et({
x: Math.max(M.left, w.left),
y: Math.max(M.top, w.top),
width: Math.min(M.right, w.right) - Math.max(M.left, w.left),
height: Math.min(M.bottom, w.bottom) - Math.max(M.top, w.top)
}) : w;
}, void 0);
_.x += S, _.y += S, _.width -= S * 2, _.height -= S * 2;
let B = {
anchor: a.value,
origin: i.value
};
function V(M) {
const C = new et(y), p = Ll(M.anchor, g), w = Ll(M.origin, C);
let {
x: T,
y: N
} = Or(p, w);
switch (M.anchor.side) {
case "top":
N -= d.value[0];
break;
case "bottom":
N += d.value[0];
break;
case "left":
T -= d.value[0];
break;
case "right":
T += d.value[0];
break;
}
switch (M.anchor.align) {
case "top":
N -= d.value[1];
break;
case "bottom":
N += d.value[1];
break;
case "left":
T -= d.value[1];
break;
case "right":
T += d.value[1];
break;
}
return C.x += T, C.y += N, C.width = Math.min(C.width, u.value), C.height = Math.min(C.height, s.value), {
overflows: sl(C, _),
x: T,
y: N
};
}
let A = 0, P = 0;
const O = {
x: 0,
y: 0
}, E = {
x: !1,
y: !1
};
let R = -1;
for (; ; ) {
if (R++ > 10) {
Yi("Infinite loop detected in connectedLocationStrategy");
break;
}
const {
x: M,
y: C,
overflows: p
} = V(B);
A += M, P += C, y.x += M, y.y += C;
{
const w = ul(B.anchor), T = p.x.before || p.x.after, N = p.y.before || p.y.after;
let J = !1;
if (["x", "y"].forEach((j) => {
if (j === "x" && T && !E.x || j === "y" && N && !E.y) {
const k = {
anchor: {
...B.anchor
},
origin: {
...B.origin
}
}, x = j === "x" ? w === "y" ? cn : sn : w === "y" ? sn : cn;
k.anchor = x(k.anchor), k.origin = x(k.origin);
const {
overflows: I
} = V(k);
(I[j].before <= p[j].before && I[j].after <= p[j].after || I[j].before + I[j].after < (p[j].before + p[j].after) / 2) && (B = k, J = E[j] = !0);
}
}), J) continue;
}
p.x.before && (A += p.x.before, y.x += p.x.before), p.x.after && (A -= p.x.after, y.x -= p.x.after), p.y.before && (P += p.y.before, y.y += p.y.before), p.y.after && (P -= p.y.after, y.y -= p.y.after);
{
const w = sl(y, _);
O.x = _.width - w.x.before - w.x.after, O.y = _.height - w.y.before - w.y.after, A += w.x.before, y.x += w.x.before, P += w.y.before, y.y += w.y.before;
}
break;
}
const z = ul(B.anchor);
return Object.assign(t.value, {
"--v-overlay-anchor-origin": `${B.anchor.side} ${B.anchor.align}`,
transformOrigin: `${B.origin.side} ${B.origin.align}`,
// transform: `translate(${pixelRound(x)}px, ${pixelRound(y)}px)`,
top: q(mn(P)),
left: e.isRtl.value ? void 0 : q(mn(A)),
right: e.isRtl.value ? q(mn(-A)) : void 0,
minWidth: q(z === "y" ? Math.min(o.value, g.width) : o.value),
maxWidth: q(Fl(Ge(O.x, o.value === 1 / 0 ? 0 : o.value, u.value))),
maxHeight: q(Fl(Ge(O.y, r.value === 1 / 0 ? 0 : r.value, s.value)))
}), {
available: O,
contentBox: y
};
}
return K(() => [a.value, i.value, n.offset, n.minWidth, n.minHeight, n.maxWidth, n.maxHeight], () => m()), ke(() => {
const g = m();
if (!g) return;
const {
available: y,
contentBox: b
} = g;
b.height > y.y && requestAnimationFrame(() => {
m(), requestAnimationFrame(() => {
m();
});
});
}), {
updateLocation: m
};
}
function mn(e) {
return Math.round(e * devicePixelRatio) / devicePixelRatio;
}
function Fl(e) {
return Math.ceil(e * devicePixelRatio) / devicePixelRatio;
}
let In = !0;
const Yt = [];
function Mr(e) {
!In || Yt.length ? (Yt.push(e), Pn()) : (In = !1, e(), Pn());
}
let Ml = -1;
function Pn() {
cancelAnimationFrame(Ml), Ml = requestAnimationFrame(() => {
const e = Yt.shift();
e && e(), Yt.length ? Pn() : In = !0;
});
}
const zt = {
none: null,
close: $r,
block: Nr,
reposition: zr
}, Rr = F({
scrollStrategy: {
type: [String, Function],
default: "block",
validator: (e) => typeof e == "function" || e in zt
}
}, "VOverlay-scroll-strategies");
function Dr(e, n) {
if (!me) return;
let t;
qe(async () => {
t == null || t.stop(), n.isActive.value && e.scrollStrategy && (t = On(), await new Promise((l) => setTimeout(l)), t.active && t.run(() => {
var l;
typeof e.scrollStrategy == "function" ? e.scrollStrategy(n, e, t) : (l = zt[e.scrollStrategy]) == null || l.call(zt, n, e, t);
}));
}), Ve(() => {
t == null || t.stop();
});
}
function $r(e) {
function n(t) {
e.isActive.value = !1;
}
ni(e.targetEl.value ?? e.contentEl.value, n);
}
function Nr(e, n) {
var o;
const t = (o = e.root.value) == null ? void 0 : o.offsetParent, l = [.../* @__PURE__ */ new Set([...Gt(e.targetEl.value, n.contained ? t : void 0), ...Gt(e.contentEl.value, n.contained ? t : void 0)])].filter((r) => !r.classList.contains("v-overlay-scroll-blocked")), a = window.innerWidth - document.documentElement.offsetWidth, i = ((r) => Dn(r) && r)(t || document.documentElement);
i && e.root.value.classList.add("v-overlay--scroll-blocked"), l.forEach((r, u) => {
r.style.setProperty("--v-body-scroll-x", q(-r.scrollLeft)), r.style.setProperty("--v-body-scroll-y", q(-r.scrollTop)), r !== document.documentElement && r.style.setProperty("--v-scrollbar-offset", q(a)), r.classList.add("v-overlay-scroll-blocked");
}), Ve(() => {
l.forEach((r, u) => {
const s = parseFloat(r.style.getPropertyValue("--v-body-scroll-x")), d = parseFloat(r.style.getPropertyValue("--v-body-scroll-y")), v = r.style.scrollBehavior;
r.style.scrollBehavior = "auto", r.style.removeProperty("--v-body-scroll-x"), r.style.removeProperty("--v-body-scroll-y"), r.style.removeProperty("--v-scrollbar-offset"), r.classList.remove("v-overlay-scroll-blocked"), r.scrollLeft = -s, r.scrollTop = -d, r.style.scrollBehavior = v;
}), i && e.root.value.classList.remove("v-overlay--scroll-blocked");
});
}
function zr(e, n, t) {
let l = !1, a = -1, i = -1;
function o(r) {
Mr(() => {
var d, v;
const u = performance.now();
(v = (d = e.updateLocation).value) == null || v.call(d, r), l = (performance.now() - u) / (1e3 / 60) > 2;
});
}
i = (typeof requestIdleCallback > "u" ? (r) => r() : requestIdleCallback)(() => {
t.run(() => {
ni(e.targetEl.value ?? e.contentEl.value, (r) => {
l ? (cancelAnimationFrame(a), a = requestAnimationFrame(() => {
a = requestAnimationFrame(() => {
o(r);
});
})) : o(r);
});
});
}), Ve(() => {
typeof cancelIdleCallback < "u" && cancelIdleCallback(i), cancelAnimationFrame(a);
});
}
function ni(e, n) {
const t = [document, ...Gt(e)];
t.forEach((l) => {
l.addEventListener("scroll", n, {
passive: !0
});
}), Ve(() => {
t.forEach((l) => {
l.removeEventListener("scroll", n);
});
});
}
const An = Symbol.for("vuetify:v-menu"), Hr = F({
closeDelay: [Number, String],
openDelay: [Number, String]
}, "delay");
function Wr(e, n) {
let t = () => {
};
function l(o) {
t == null || t();
const r = Number(o ? e.openDelay : e.closeDelay);
return new Promise((u) => {
t = Li(r, () => {
n == null || n(o), u(o);
});
});
}
function a() {
return l(!0);
}
function i() {
return l(!1);
}
return {
clearDelay: t,
runOpenDelay: a,
runCloseDelay: i
};
}
const jr = F({
target: [String, Object],
activator: [String, Object],
activatorProps: {
type: Object,
default: () => ({})
},
openOnClick: {
type: Boolean,
default: void 0
},
openOnHover: Boolean,
openOnFocus: {
type: Boolean,
default: void 0
},
closeOnContentClick: Boolean,
...Hr()
}, "VOverlay-activator");
function Ur(e, n) {
let {
isActive: t,
isTop: l,
contentEl: a
} = n;
const i = ge("useActivator"), o = $();
let r = !1, u = !1, s = !0;
const d = h(() => e.openOnFocus || e.openOnFocus == null && e.openOnHover), v = h(() => e.openOnClick || e.openOnClick == null && !e.openOnHover && !d.value), {
runOpenDelay: f,
runCloseDelay: m
} = Wr(e, (E) => {
E === (e.openOnHover && r || d.value && u) && !(e.openOnHover && t.value && !l.value) && (t.value !== E && (s = !0), t.value = E);
}), g = $(), y = {
onClick: (E) => {
E.stopPropagation(), o.value = E.currentTarget || E.target, t.value || (g.value = [E.clientX, E.clientY]), t.value = !t.value;
},
onMouseenter: (E) => {
var R;
(R = E.sourceCapabilities) != null && R.firesTouchEvents || (r = !0, o.value = E.currentTarget || E.target, f());
},
onMouseleave: (E) => {
r = !1, m();
},
onFocus: (E) => {
ct(E.target, ":focus-visible") !== !1 && (u = !0, E.stopPropagation(), o.value = E.currentTarget || E.target, f());
},
onBlur: (E) => {
u = !1, E.stopPropagation(), m();
}
}, b = h(() => {
const E = {};
return v.value && (E.onClick = y.onClick), e.openOnHover && (E.onMouseenter = y.onMouseenter, E.onMouseleave = y.onMouseleave), d.value && (E.onFocus = y.onFocus, E.onBlur = y.onBlur), E;
}), S = h(() => {
const E = {};
if (e.openOnHover && (E.onMouseenter = () => {
r = !0, f();
}, E.onMouseleave = () => {
r = !1, m();
}), d.value && (E.onFocusin = () => {
u = !0, f();
}, E.onFocusout = () => {
u = !1, m();
}), e.closeOnContentClick) {
const R = he(An, null);
E.onClick = () => {
t.value = !1, R == null || R.closeParents();
};
}
return E;
}), _ = h(() => {
const E = {};
return e.openOnHover && (E.onMouseenter = () => {
s && (r = !0, s = !1, f());
}, E.onMouseleave = () => {
r = !1, m();
}), E;
});
K(l, (E) => {
var R;
E && (e.openOnHover && !r && (!d.value || !u) || d.value && !u && (!e.openOnHover || !r)) && !((R = a.value) != null && R.contains(document.activeElement)) && (t.value = !1);
}), K(t, (E) => {
E || setTimeout(() => {
g.value = void 0;
});
}, {
flush: "post"
});
const B = bn();
qe(() => {
B.value && ke(() => {
o.value = B.el;
});
});
const V = bn(), A = h(() => e.target === "cursor" && g.value ? g.value : V.value ? V.el : li(e.target, i) || o.value), P = h(() => Array.isArray(A.value) ? void 0 : A.value);
let O;
return K(() => !!e.activator, (E) => {
E && me ? (O = On(), O.run(() => {
Gr(e, i, {
activatorEl: o,
activatorEvents: b
});
})) : O && O.stop();
}, {
flush: "post",
immediate: !0
}), Ve(() => {
O == null || O.stop();
}), {
activatorEl: o,
activatorRef: B,
target: A,
targetEl: P,
targetRef: V,
activatorEvents: b,
contentEvents: S,
scrimEvents: _
};
}
function Gr(e, n, t) {
let {
activatorEl: l,
activatorEvents: a
} = t;
K(() => e.activator, (u, s) => {
if (s && u !== s) {
const d = r(s);
d && o(d);
}
u && ke(() => i());
}, {
immediate: !0
}), K(() => e.activatorProps, () => {
i();
}), Ve(() => {
o();
});
function i() {
let u = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : r(), s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : e.activatorProps;
u && Ni(u, X(a.value, s));
}
function o() {
let u = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : r(), s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : e.activatorProps;
u && zi(u, X(a.value, s));
}
function r() {
let u = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : e.activator;
const s = li(u, n);
return l.value = (s == null ? void 0 : s.nodeType) === Node.ELEMENT_NODE ? s : void 0, l.value;
}
}
function li(e, n) {
var l, a;
if (!e) return;
let t;
if (e === "parent") {
let i = (a = (l = n == null ? void 0 : n.proxy) == null ? void 0 : l.$el) == null ? void 0 : a.parentNode;
for (; i != null && i.hasAttribute("data-no-activator"); )
i = i.parentNode;
t = i;
} else typeof e == "string" ? t = document.querySelector(e) : "$el" in e ? t = e.$el : t = e;
return t;
}
function Kr() {
if (!me) return U(!1);
const {
ssr: e
} = Gn();
if (e) {
const n = U(!1);
return Ot(() => {
n.value = !0;
}), n;
} else
return U(!0);
}
const qr = F({
eager: Boolean
}, "lazy");
function Yr(e, n) {
const t = U(!1), l = h(() => t.value || e.eager || n.value);
K(n, () => t.value = !0);
function a() {
e.eager || (t.value = !1);
}
return {
isBooted: t,
hasContent: l,
onAfterLeave: a
};
}
function ai() {
const n = ge("useScopeId").vnode.scopeId;
return {
scopeId: n ? {
[n]: ""
} : void 0
};
}
const Rl = Symbol.for("vuetify:stack"), Ct = Qt([]);
function Xr(e, n, t) {
const l = ge("useStack"), a = !t, i = he(Rl, void 0), o = Qt({
activeChildren: /* @__PURE__ */ new Set()
});
Le(Rl, o);
const r = U(+n.value);
lt(e, () => {
var v;
const d = (v = Ct.at(-1)) == null ? void 0 : v[1];
r.value = d ? d + 10 : +n.value, a && Ct.push([l.uid, r.value]), i == null || i.activeChildren.add(l.uid), Ve(() => {
if (a) {
const f = re(Ct).findIndex((m) => m[0] === l.uid);
Ct.splice(f, 1);
}
i == null || i.activeChildren.delete(l.uid);
});
});
const u = U(!0);
a && qe(() => {
var v;
const d = ((v = Ct.at(-1)) == null ? void 0 : v[0]) === l.uid;
setTimeout(() => u.value = d);
});
const s = h(() => !o.activeChildren.size);
return {
globalTop: Bn(u),
localTop: s,
stackStyles: h(() => ({
zIndex: r.value
}))
};
}
function Qr(e) {
return {
teleportTarget: h(() => {
const t = e();
if (t === !0 || !me) return;
const l = t === !1 ? document.body : typeof t == "string" ? document.querySelector(t) : t;
if (l == null) {
Jt(`Unable to locate target ${t}`);
return;
}
let a = [...l.children].find((i) => i.matches(".v-overlay-container"));
return a || (a = document.createElement("div"), a.className = "v-overlay-container", l.appendChild(a)), a;
})
};
}
function Jr() {
return !0;
}
function ii(e, n, t) {
if (!e || oi(e, t) === !1) return !1;
const l = aa(n);
if (typeof ShadowRoot < "u" && l instanceof ShadowRoot && l.host === e.target) return !1;
const a = (typeof t.value == "object" && t.value.include || (() => []))();
return a.push(n), !a.some((i) => i == null ? void 0 : i.contains(e.target));
}
function oi(e, n) {
return (typeof n.value == "object" && n.value.closeConditional || Jr)(e);
}
function Zr(e, n, t) {
const l = typeof t.value == "function" ? t.value : t.value.handler;
e.shadowTarget = e.target, n._clickOutside.lastMousedownWasOutside && ii(e, n, t) && setTimeout(() => {
oi(e, t) && l && l(e);
}, 0);
}
function Dl(e, n) {
const t = aa(e);
n(document), typeof ShadowRoot < "u" && t instanceof ShadowRoot && n(t);
}
const eu = {
// [data-app] may not be found
// if using bind, inserted makes
// sure that the root element is
// available, iOS does not support
// clicks on body
mounted(e, n) {
const t = (a) => Zr(a, e, n), l = (a) => {
e._clickOutside.lastMousedownWasOutside = ii(a, e, n);
};
Dl(e, (a) => {
a.addEventListener("click", t, !0), a.addEventListener("mousedown", l, !0);
}), e._clickOutside || (e._clickOutside = {
lastMousedownWasOutside: !1
}), e._clickOutside[n.instance.$.uid] = {
onClick: t,
onMousedown: l
};
},
beforeUnmount(e, n) {
e._clickOutside && (Dl(e, (t) => {
var i;
if (!t || !((i = e._clickOutside) != null && i[n.instance.$.uid])) return;
const {
onClick: l,
onMousedown: a
} = e._clickOutside[n.instance.$.uid];
t.removeEventListener("click", l, !0), t.removeEventListener("mousedown", a, !0);
}), delete e._clickOutside[n.instance.$.uid]);
}
};
function tu(e) {
const {
modelValue: n,
color: t,
...l
} = e;
return c(nt, {
name: "fade-transition",
appear: !0
}, {
default: () => [e.modelValue && c("div", X({
class: ["v-overlay__scrim", e.color.backgroundColorClasses.value],
style: e.color.backgroundColorStyles.value
}, l), null)]
});
}
const ri = F({
absolute: Boolean,
attach: [Boolean, String, Object],
closeOnBack: {
type: Boolean,
default: !0
},
contained: Boolean,
contentClass: null,
contentProps: null,
disabled: Boolean,
opacity: [Number, String],
noClickAnimation: Boolean,
modelValue: Boolean,
persistent: Boolean,
scrim: {
type: [Boolean, String],
default: !0
},
zIndex: {
type: [Number, String],
default: 2e3
},
...jr(),
...ae(),
...yt(),
...qr(),
...Br(),
...Rr(),
...Ee(),
...bt()
}, "VOverlay"), $l = Q()({
name: "VOverlay",
directives: {
ClickOutside: eu
},
inheritAttrs: !1,
props: {
_disableGlobalStack: Boolean,
...ri()
},
emits: {
"click:outside": (e) => !0,
"update:modelValue": (e) => !0,
afterEnter: () => !0,
afterLeave: () => !0
},
setup(e, n) {
let {
slots: t,
attrs: l,
emit: a
} = n;
const i = ge("VOverlay"), o = $(), r = $(), u = $(), s = ve(e, "modelValue"), d = h({
get: () => s.value,
set: (H) => {
H && e.disabled || (s.value = H);
}
}), {
themeClasses: v
} = Re(e), {
rtlClasses: f,
isRtl: m
} = Xe(), {
hasContent: g,
onAfterLeave: y
} = Yr(e, d), b = Ke(h(() => typeof e.scrim == "string" ? e.scrim : null)), {
globalTop: S,
localTop: _,
stackStyles: B
} = Xr(d, G(e, "zIndex"), e._disableGlobalStack), {
activatorEl: V,
activatorRef: A,
target: P,
targetEl: O,
targetRef: E,
activatorEvents: R,
contentEvents: z,
scrimEvents: M
} = Ur(e, {
isActive: d,
isTop: _,
contentEl: u
}), {
teleportTarget: C
} = Qr(() => {
var ce, ie, oe;
const H = e.attach || e.contained;
if (H) return H;
const te = ((ce = V == null ? void 0 : V.value) == null ? void 0 : ce.getRootNode()) || ((oe = (ie = i.proxy) == null ? void 0 : ie.$el) == null ? void 0 : oe.getRootNode());
return te instanceof ShadowRoot ? te : !1;
}), {
dimensionStyles: p
} = ht(e), w = Kr(), {
scopeId: T
} = ai();
K(() => e.disabled, (H) => {
H && (d.value = !1);
});
const {
contentStyles: N,
updateLocation: J
} = _r(e, {
isRtl: m,
contentEl: u,
target: P,
isActive: d
});
Dr(e, {
root: o,
contentEl: u,
targetEl: O,
isActive: d,
updateLocation: J
});
function j(H) {
a("click:outside", H), e.persistent ? ee() : d.value = !1;
}
function k(H) {
return d.value && S.value && // If using scrim, only close if clicking on it rather than anything opened on top
(!e.scrim || H.target === r.value || H instanceof MouseEvent && H.shadowTarget === r.value);
}
me && K(d, (H) => {
H ? window.addEventListener("keydown", x) : window.removeEventListener("keydown", x);
}, {
immediate: !0
}), $e(() => {
me && window.removeEventListener("keydown", x);
});
function x(H) {
var te, ce;
H.key === "Escape" && S.value && (e.persistent ? ee() : (d.value = !1, (te = u.value) != null && te.contains(document.activeElement) && ((ce = V.value) == null || ce.focus())));
}
const I = tr();
lt(() => e.closeOnBack, () => {
nr(I, (H) => {
S.value && d.value ? (H(!1), e.persistent ? ee() : d.value = !1) : H();
});
});
const D = $();
K(() => d.value && (e.absolute || e.contained) && C.value == null, (H) => {
if (H) {
const te = ia(o.value);
te && te !== document.scrollingElement && (D.value = te.scrollTop);
}
});
function ee() {
e.noClickAnimation || u.value && ut(u.value, [{
transformOrigin: "center"
}, {
transform: "scale(1.03)"
}, {
transformOrigin: "center"
}], {
duration: 150,
easing: Ut
});
}
function W() {
a("afterEnter");
}
function le() {
y(), a("afterLeave");
}
return ne(() => {
var H;
return c(ue, null, [(H = t.activator) == null ? void 0 : H.call(t, {
isActive: d.value,
targetRef: E,
props: X({
ref: A
}, R.value, e.activatorProps)
}), w.value && g.value && c(Ci, {
disabled: !C.value,
to: C.value
}, {
default: () => [c("div", X({
class: ["v-overlay", {
"v-overlay--absolute": e.absolute || e.contained,
"v-overlay--active": d.value,
"v-overlay--contained": e.contained
}, v.value, f.value, e.class],
style: [B.value, {
"--v-overlay-opacity": e.opacity,
top: q(D.value)
}, e.style],
ref: o
}, T, l), [c(tu, X({
color: b,
modelValue: d.value && !!e.scrim,
ref: r
}, M.value), null), c(Ue, {
appear: !0,
persisted: !0,
transition: e.transition,
target: P.value,
onAfterEnter: W,
onAfterLeave: le
}, {
default: () => {
var te;
return [Fe(c("div", X({
ref: u,
class: ["v-overlay__content", e.contentClass],
style: [p.value, N.value]
}, z.value, e.contentProps), [(te = t.default) == null ? void 0 : te.call(t, {
isActive: d
})]), [[mt, d.value], [vt("click-outside"), {
handler: j,
closeConditional: k,
include: () => [V.value]
}]])];
}
})])]
})]);
}), {
activatorEl: V,
scrimEl: r,
target: P,
animateClick: ee,
contentEl: u,
globalTop: S,
localTop: _,
updateLocation: J
};
}
}), gn = Symbol("Forwarded refs");
function yn(e, n) {
let t = e;
for (; t; ) {
const l = Reflect.getOwnPropertyDescriptor(t, n);
if (l) return l;
t = Object.getPrototypeOf(t);
}
}
function on(e) {
for (var n = arguments.length, t = new Array(n > 1 ? n - 1 : 0), l = 1; l < n; l++)
t[l - 1] = arguments[l];
return e[gn] = t, new Proxy(e, {
get(a, i) {
if (Reflect.has(a, i))
return Reflect.get(a, i);
if (!(typeof i == "symbol" || i.startsWith("$") || i.startsWith("__"))) {
for (const o of t)
if (o.value && Reflect.has(o.value, i)) {
const r = Reflect.get(o.value, i);
return typeof r == "function" ? r.bind(o.value) : r;
}
}
},
has(a, i) {
if (Reflect.has(a, i))
return !0;
if (typeof i == "symbol" || i.startsWith("$") || i.startsWith("__")) return !1;
for (const o of t)
if (o.value && Reflect.has(o.value, i))
return !0;
return !1;
},
set(a, i, o) {
if (Reflect.has(a, i))
return Reflect.set(a, i, o);
if (typeof i == "symbol" || i.startsWith("$") || i.startsWith("__")) return !1;
for (const r of t)
if (r.value && Reflect.has(r.value, i))
return Reflect.set(r.value, i, o);
return !1;
},
getOwnPropertyDescriptor(a, i) {
var r;
const o = Reflect.getOwnPropertyDescriptor(a, i);
if (o) return o;
if (!(typeof i == "symbol" || i.startsWith("$") || i.startsWith("__"))) {
for (const u of t) {
if (!u.value) continue;
const s = yn(u.value, i) ?? ("_" in u.value ? yn((r = u.value._) == null ? void 0 : r.setupState, i) : void 0);
if (s) return s;
}
for (const u of t) {
const s = u.value && u.value[gn];
if (!s) continue;
const d = s.slice();
for (; d.length; ) {
const v = d.shift(), f = yn(v.value, i);
if (f) return f;
const m = v.value && v.value[gn];
m && d.push(...m);
}
}
}
}
});
}
const nu = F({
// TODO
// disableKeys: Boolean,
id: String,
submenu: Boolean,
...at(ri({
closeDelay: 250,
closeOnContentClick: !0,
locationStrategy: "connected",
location: void 0,
openDelay: 300,
scrim: !1,
scrollStrategy: "reposition",
transition: {
component: Ia
}
}), ["absolute"])
}, "VMenu"), ui = Q()({
name: "VMenu",
props: nu(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const l = ve(e, "modelValue"), {
scopeId: a
} = ai(), {
isRtl: i
} = Xe(), o = He(), r = h(() => e.id || `v-menu-${o}`), u = $(), s = he(An, null), d = U(/* @__PURE__ */ new Set());
Le(An, {
register() {
d.value.add(o);
},
unregister() {
d.value.delete(o);
},
closeParents(b) {
setTimeout(() => {
var S;
!d.value.size && !e.persistent && (b == null || (S = u.value) != null && S.contentEl && !Fi(b, u.value.contentEl)) && (l.value = !1, s == null || s.closeParents());
}, 40);
}
}), $e(() => s == null ? void 0 : s.unregister()), pi(() => l.value = !1);
async function v(b) {
var B, V, A;
const S = b.relatedTarget, _ = b.target;
await ke(), l.value && S !== _ && ((B = u.value) != null && B.contentEl) && // We're the topmost menu
((V = u.value) != null && V.globalTop) && // It isn't the document or the menu body
![document, u.value.contentEl].includes(_) && // It isn't inside the menu body
!u.value.contentEl.contains(_) && ((A = Wt(u.value.contentEl)[0]) == null || A.focus());
}
K(l, (b) => {
b ? (s == null || s.register(), document.addEventListener("focusin", v, {
once: !0
})) : (s == null || s.unregister(), document.removeEventListener("focusin", v));
});
function f(b) {
s == null || s.closeParents(b);
}
function m(b) {
var S, _, B, V, A;
if (!e.disabled)
if (b.key === "Tab" || b.key === "Enter" && !e.closeOnContentClick) {
if (b.key === "Enter" && (b.target instanceof HTMLTextAreaElement || b.target instanceof HTMLInputElement && b.target.closest("form"))) return;
b.key === "Enter" && b.preventDefault(), Zl(Wt((S = u.value) == null ? void 0 : S.contentEl, !1), b.shiftKey ? "prev" : "next", (O) => O.tabIndex >= 0) || (l.value = !1, (B = (_ = u.value) == null ? void 0 : _.activatorEl) == null || B.focus());
} else e.submenu && b.key === (i.value ? "ArrowRight" : "ArrowLeft") && (l.value = !1, (A = (V = u.value) == null ? void 0 : V.activatorEl) == null || A.focus());
}
function g(b) {
var _;
if (e.disabled) return;
const S = (_ = u.value) == null ? void 0 : _.contentEl;
S && l.value ? b.key === "ArrowDown" ? (b.preventDefault(), b.stopImmediatePropagation(), kt(S, "next")) : b.key === "ArrowUp" ? (b.preventDefault(), b.stopImmediatePropagation(), kt(S, "prev")) : e.submenu && (b.key === (i.value ? "ArrowRight" : "ArrowLeft") ? l.value = !1 : b.key === (i.value ? "ArrowLeft" : "ArrowRight") && (b.preventDefault(), kt(S, "first"))) : (e.submenu ? b.key === (i.value ? "ArrowLeft" : "ArrowRight") : ["ArrowDown", "ArrowUp"].includes(b.key)) && (l.value = !0, b.preventDefault(), setTimeout(() => setTimeout(() => g(b))));
}
const y = h(() => X({
"aria-haspopup": "menu",
"aria-expanded": String(l.value),
"aria-owns": r.value,
onKeydown: g
}, e.activatorProps));
return ne(() => {
const b = $l.filterProps(e);
return c($l, X({
ref: u,
id: r.value,
class: ["v-menu", e.class],
style: e.style
}, b, {
modelValue: l.value,
"onUpdate:modelValue": (S) => l.value = S,
absolute: !0,
activatorProps: y.value,
location: e.location ?? (e.submenu ? "end" : "bottom"),
"onClick:outside": f,
onKeydown: m
}, a), {
activator: t.activator,
default: function() {
for (var S = arguments.length, _ = new Array(S), B = 0; B < S; B++)
_[B] = arguments[B];
return c(Te, {
root: "VMenu"
}, {
default: () => {
var V;
return [(V = t.default) == null ? void 0 : V.call(t, ..._)];
}
});
}
});
}), on({
id: r,
ΨopenChildren: d
}, u);
}
}), lu = F({
active: Boolean,
disabled: Boolean,
max: [Number, String],
value: {
type: [Number, String],
default: 0
},
...ae(),
...bt({
transition: {
component: Pa
}
})
}, "VCounter"), au = Q()({
name: "VCounter",
functional: !0,
props: lu(),
setup(e, n) {
let {
slots: t
} = n;
const l = h(() => e.max ? `${e.value} / ${e.max}` : String(e.value));
return ne(() => c(Ue, {
transition: e.transition
}, {
default: () => [Fe(c("div", {
class: ["v-counter", {
"text-error": e.max && !e.disabled && parseFloat(e.value) > parseFloat(e.max)
}, e.class],
style: e.style
}, [t.default ? t.default({
counter: l.value,
max: e.max,
value: e.value
}) : l.value]), [[mt, e.active]])]
})), {};
}
}), iu = F({
floating: Boolean,
...ae()
}, "VFieldLabel"), Dt = Q()({
name: "VFieldLabel",
props: iu(),
setup(e, n) {
let {
slots: t
} = n;
return ne(() => c(sa, {
class: ["v-field-label", {
"v-field-label--floating": e.floating
}, e.class],
style: e.style,
"aria-hidden": e.floating || void 0
}, t)), {};
}
});
function ou(e, n) {
const t = $(), l = U(!1);
if (_n) {
const a = new IntersectionObserver((i) => {
l.value = !!i.find((o) => o.isIntersecting);
}, n);
$e(() => {
a.disconnect();
}), K(t, (i, o) => {
o && (a.unobserve(o), l.value = !1), i && a.observe(i);
}, {
flush: "post"
});
}
return {
intersectionRef: t,
isIntersecting: l
};
}
const Nl = {
center: "center",
top: "bottom",
bottom: "top",
left: "right",
right: "left"
}, ru = F({
location: String
}, "location");
function uu(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1, t = arguments.length > 2 ? arguments[2] : void 0;
const {
isRtl: l
} = Xe();
return {
locationStyles: h(() => {
if (!e.location) return {};
const {
side: i,
align: o
} = wn(e.location.split(" ").length > 1 ? e.location : `${e.location} center`, l.value);
function r(s) {
return t ? t(s) : 0;
}
const u = {};
return i !== "center" && (n ? u[Nl[i]] = `calc(100% - ${r(i)}px)` : u[i] = 0), o !== "center" ? n ? u[Nl[o]] = `calc(100% - ${r(o)}px)` : u[o] = 0 : (i === "center" ? u.top = u.left = "50%" : u[{
top: "left",
bottom: "left",
left: "top",
right: "top"
}[i]] = "50%", u.transform = {
top: "translateX(-50%)",
bottom: "translateX(-50%)",
left: "translateY(-50%)",
right: "translateY(-50%)",
center: "translate(-50%, -50%)"
}[i]), u;
})
};
}
const su = F({
absolute: Boolean,
active: {
type: Boolean,
default: !0
},
bgColor: String,
bgOpacity: [Number, String],
bufferValue: {
type: [Number, String],
default: 0
},
bufferColor: String,
bufferOpacity: [Number, String],
clickable: Boolean,
color: String,
height: {
type: [Number, String],
default: 4
},
indeterminate: Boolean,
max: {
type: [Number, String],
default: 100
},
modelValue: {
type: [Number, String],
default: 0
},
opacity: [Number, String],
reverse: Boolean,
stream: Boolean,
striped: Boolean,
roundedBar: Boolean,
...ae(),
...ru({
location: "top"
}),
...it(),
...Me(),
...Ee()
}, "VProgressLinear"), cu = Q()({
name: "VProgressLinear",
props: su(),
emits: {
"update:modelValue": (e) => !0
},
setup(e, n) {
var M;
let {
slots: t
} = n;
const l = ve(e, "modelValue"), {
isRtl: a,
rtlClasses: i
} = Xe(), {
themeClasses: o
} = Re(e), {
locationStyles: r
} = uu(e), {
textColorClasses: u,
textColorStyles: s
} = Ye(e, "color"), {
backgroundColorClasses: d,
backgroundColorStyles: v
} = Ke(h(() => e.bgColor || e.color)), {
backgroundColorClasses: f,
backgroundColorStyles: m
} = Ke(h(() => e.bufferColor || e.bgColor || e.color)), {
backgroundColorClasses: g,
backgroundColorStyles: y
} = Ke(e, "color"), {
roundedClasses: b
} = ot(e), {
intersectionRef: S,
isIntersecting: _
} = ou(), B = h(() => parseFloat(e.max)), V = h(() => parseFloat(e.height)), A = h(() => Ge(parseFloat(e.bufferValue) / B.value * 100, 0, 100)), P = h(() => Ge(parseFloat(l.value) / B.value * 100, 0, 100)), O = h(() => a.value !== e.reverse), E = h(() => e.indeterminate ? "fade-transition" : "slide-x-transition"), R = me && ((M = window.matchMedia) == null ? void 0 : M.call(window, "(forced-colors: active)").matches);
function z(C) {
if (!S.value) return;
const {
left: p,
right: w,
width: T
} = S.value.getBoundingClientRect(), N = O.value ? T - C.clientX + (w - T) : C.clientX - p;
l.value = Math.round(N / T * B.value);
}
return ne(() => c(e.tag, {
ref: S,
class: ["v-progress-linear", {
"v-progress-linear--absolute": e.absolute,
"v-progress-linear--active": e.active && _.value,
"v-progress-linear--reverse": O.value,
"v-progress-linear--rounded": e.rounded,
"v-progress-linear--rounded-bar": e.roundedBar,
"v-progress-linear--striped": e.striped
}, b.value, o.value, i.value, e.class],
style: [{
bottom: e.location === "bottom" ? 0 : void 0,
top: e.location === "top" ? 0 : void 0,
height: e.active ? q(V.value) : 0,
"--v-progress-linear-height": q(V.value),
...e.absolute ? r.value : {}
}, e.style],
role: "progressbar",
"aria-hidden": e.active ? "false" : "true",
"aria-valuemin": "0",
"aria-valuemax": e.max,
"aria-valuenow": e.indeterminate ? void 0 : P.value,
onClick: e.clickable && z
}, {
default: () => [e.stream && c("div", {
key: "stream",
class: ["v-progress-linear__stream", u.value],
style: {
...s.value,
[O.value ? "left" : "right"]: q(-V.value),
borderTop: `${q(V.value / 2)} dotted`,
opacity: parseFloat(e.bufferOpacity),
top: `calc(50% - ${q(V.value / 4)})`,
width: q(100 - A.value, "%"),
"--v-progress-linear-stream-to": q(V.value * (O.value ? 1 : -1))
}
}, null), c("div", {
class: ["v-progress-linear__background", R ? void 0 : d.value],
style: [v.value, {
opacity: parseFloat(e.bgOpacity),
width: e.stream ? 0 : void 0
}]
}, null), c("div", {
class: ["v-progress-linear__buffer", R ? void 0 : f.value],
style: [m.value, {
opacity: parseFloat(e.bufferOpacity),
width: q(A.value, "%")
}]
}, null), c(nt, {
name: E.value
}, {
default: () => [e.indeterminate ? c("div", {
class: "v-progress-linear__indeterminate"
}, [["long", "short"].map((C) => c("div", {
key: C,
class: ["v-progress-linear__indeterminate", C, R ? void 0 : g.value],
style: y.value
}, null))]) : c("div", {
class: ["v-progress-linear__determinate", R ? void 0 : g.value],
style: [y.value, {
width: q(P.value, "%")
}]
}, null)]
}), t.default && c("div", {
class: "v-progress-linear__content"
}, [t.default({
value: P.value,
buffer: A.value
})])]
})), {};
}
}), du = F({
loading: [Boolean, String]
}, "loader");
function fu(e) {
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : ze();
return {
loaderClasses: h(() => ({
[`${n}--loading`]: e.loading
}))
};
}
function vu(e, n) {
var l;
let {
slots: t
} = n;
return c("div", {
class: `${e.name}__loader`
}, [((l = t.default) == null ? void 0 : l.call(t, {
color: e.color,
isActive: e.active
})) || c(cu, {
absolute: e.absolute,
active: e.active,
color: e.color,
height: "2",
indeterminate: !0
}, null)]);
}
const mu = ["underlined", "outlined", "filled", "solo", "solo-inverted", "solo-filled", "plain"], si = F({
appendInnerIcon: se,
bgColor: String,
clearable: Boolean,
clearIcon: {
type: se,
default: "$clear"
},
active: Boolean,
centerAffix: {
type: Boolean,
default: void 0
},
color: String,
baseColor: String,
dirty: Boolean,
disabled: {
type: Boolean,
default: null
},
error: Boolean,
flat: Boolean,
label: String,
persistentClear: Boolean,
prependInnerIcon: se,
reverse: Boolean,
singleLine: Boolean,
variant: {
type: String,
default: "filled",
validator: (e) => mu.includes(e)
},
"onClick:clear": xe(),
"onClick:appendInner": xe(),
"onClick:prependInner": xe(),
...ae(),
...du(),
...it(),
...Ee()
}, "VField"), ci = Q()({
name: "VField",
inheritAttrs: !1,
props: {
id: String,
...Ea(),
...si()
},
emits: {
"update:focused": (e) => !0,
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
attrs: t,
emit: l,
slots: a
} = n;
const {
themeClasses: i
} = Re(e), {
loaderClasses: o
} = fu(e), {
focusClasses: r,
isFocused: u,
focus: s,
blur: d
} = Oa(e), {
InputIcon: v
} = xa(e), {
roundedClasses: f
} = ot(e), {
rtlClasses: m
} = Xe(), g = h(() => e.dirty || e.active), y = h(() => !e.singleLine && !!(e.label || a.label)), b = He(), S = h(() => e.id || `input-${b}`), _ = h(() => `${S.value}-messages`), B = $(), V = $(), A = $(), P = h(() => ["plain", "underlined"].includes(e.variant)), {
backgroundColorClasses: O,
backgroundColorStyles: E
} = Ke(G(e, "bgColor")), {
textColorClasses: R,
textColorStyles: z
} = Ye(h(() => e.error || e.disabled ? void 0 : g.value && u.value ? e.color : e.baseColor));
K(g, (w) => {
if (y.value) {
const T = B.value.$el, N = V.value.$el;
requestAnimationFrame(() => {
const J = Rn(T), j = N.getBoundingClientRect(), k = j.x - J.x, x = j.y - J.y - (J.height / 2 - j.height / 2), I = j.width / 0.75, D = Math.abs(I - J.width) > 1 ? {
maxWidth: q(I)
} : void 0, ee = getComputedStyle(T), W = getComputedStyle(N), le = parseFloat(ee.transitionDuration) * 1e3 || 150, H = parseFloat(W.getPropertyValue("--v-field-label-scale")), te = W.getPropertyValue("color");
T.style.visibility = "visible", N.style.visibility = "hidden", ut(T, {
transform: `translate(${k}px, ${x}px) scale(${H})`,
color: te,
...D
}, {
duration: le,
easing: Ut,
direction: w ? "normal" : "reverse"
}).finished.then(() => {
T.style.removeProperty("visibility"), N.style.removeProperty("visibility");
});
});
}
}, {
flush: "post"
});
const M = h(() => ({
isActive: g,
isFocused: u,
controlRef: A,
blur: d,
focus: s
}));
function C(w) {
w.target !== document.activeElement && w.preventDefault();
}
function p(w) {
var T;
w.key !== "Enter" && w.key !== " " || (w.preventDefault(), w.stopPropagation(), (T = e["onClick:clear"]) == null || T.call(e, new MouseEvent("click")));
}
return ne(() => {
var k, x, I;
const w = e.variant === "outlined", T = !!(a["prepend-inner"] || e.prependInnerIcon), N = !!(e.clearable || a.clear), J = !!(a["append-inner"] || e.appendInnerIcon || N), j = () => a.label ? a.label({
...M.value,
label: e.label,
props: {
for: S.value
}
}) : e.label;
return c("div", X({
class: ["v-field", {
"v-field--active": g.value,
"v-field--appended": J,
"v-field--center-affix": e.centerAffix ?? !P.value,
"v-field--disabled": e.disabled,
"v-field--dirty": e.dirty,
"v-field--error": e.error,
"v-field--flat": e.flat,
"v-field--has-background": !!e.bgColor,
"v-field--persistent-clear": e.persistentClear,
"v-field--prepended": T,
"v-field--reverse": e.reverse,
"v-field--single-line": e.singleLine,
"v-field--no-label": !j(),
[`v-field--variant-${e.variant}`]: !0
}, i.value, O.value, r.value, o.value, f.value, m.value, e.class],
style: [E.value, e.style],
onClick: C
}, t), [c("div", {
class: "v-field__overlay"
}, null), c(vu, {
name: "v-field",
active: !!e.loading,
color: e.error ? "error" : typeof e.loading == "string" ? e.loading : e.color
}, {
default: a.loader
}), T && c("div", {
key: "prepend",
class: "v-field__prepend-inner"
}, [e.prependInnerIcon && c(v, {
key: "prepend-icon",
name: "prependInner"
}, null), (k = a["prepend-inner"]) == null ? void 0 : k.call(a, M.value)]), c("div", {
class: "v-field__field",
"data-no-activator": ""
}, [["filled", "solo", "solo-inverted", "solo-filled"].includes(e.variant) && y.value && c(Dt, {
key: "floating-label",
ref: V,
class: [R.value],
floating: !0,
for: S.value,
style: z.value
}, {
default: () => [j()]
}), c(Dt, {
ref: B,
for: S.value
}, {
default: () => [j()]
}), (x = a.default) == null ? void 0 : x.call(a, {
...M.value,
props: {
id: S.value,
class: "v-field__input",
"aria-describedby": _.value
},
focus: s,
blur: d
})]), N && c(Aa, {
key: "clear"
}, {
default: () => [Fe(c("div", {
class: "v-field__clearable",
onMousedown: (D) => {
D.preventDefault(), D.stopPropagation();
}
}, [c(Te, {
defaults: {
VIcon: {
icon: e.clearIcon
}
}
}, {
default: () => [a.clear ? a.clear({
...M.value,
props: {
onKeydown: p,
onFocus: s,
onBlur: d,
onClick: e["onClick:clear"]
}
}) : c(v, {
name: "clear",
onKeydown: p,
onFocus: s,
onBlur: d
}, null)]
})]), [[mt, e.dirty]])]
}), J && c("div", {
key: "append",
class: "v-field__append-inner"
}, [(I = a["append-inner"]) == null ? void 0 : I.call(a, M.value), e.appendInnerIcon && c(v, {
key: "append-icon",
name: "appendInner"
}, null)]), c("div", {
class: ["v-field__outline", R.value],
style: z.value
}, [w && c(ue, null, [c("div", {
class: "v-field__outline__start"
}, null), y.value && c("div", {
class: "v-field__outline__notch"
}, [c(Dt, {
ref: V,
floating: !0,
for: S.value
}, {
default: () => [j()]
})]), c("div", {
class: "v-field__outline__end"
}, null)]), P.value && y.value && c(Dt, {
ref: V,
floating: !0,
for: S.value
}, {
default: () => [j()]
})])]);
}), {
controlRef: A
};
}
});
function gu(e) {
const n = Object.keys(ci.props).filter((t) => !Tn(t) && t !== "class" && t !== "style");
return ql(e, n);
}
const yu = ["color", "file", "time", "date", "datetime-local", "week", "month"], Jn = F({
autofocus: Boolean,
counter: [Boolean, Number, String],
counterValue: [Number, Function],
prefix: String,
placeholder: String,
persistentPlaceholder: Boolean,
persistentCounter: Boolean,
suffix: String,
role: String,
type: {
type: String,
default: "text"
},
modelModifiers: Object,
...Ba(),
...si()
}, "VTextField"), Xt = Q()({
name: "VTextField",
directives: {
Intersect: ua
},
inheritAttrs: !1,
props: Jn(),
emits: {
"click:control": (e) => !0,
"mousedown:control": (e) => !0,
"update:focused": (e) => !0,
"update:modelValue": (e) => !0
},
setup(e, n) {
let {
attrs: t,
emit: l,
slots: a
} = n;
const i = ve(e, "modelValue"), {
isFocused: o,
focus: r,
blur: u
} = Oa(e), s = h(() => typeof e.counterValue == "function" ? e.counterValue(i.value) : typeof e.counterValue == "number" ? e.counterValue : (i.value ?? "").toString().length), d = h(() => {
if (t.maxlength) return t.maxlength;
if (!(!e.counter || typeof e.counter != "number" && typeof e.counter != "string"))
return e.counter;
}), v = h(() => ["plain", "underlined"].includes(e.variant));
function f(P, O) {
var E, R;
!e.autofocus || !P || (R = (E = O[0].target) == null ? void 0 : E.focus) == null || R.call(E);
}
const m = $(), g = $(), y = $(), b = h(() => yu.includes(e.type) || e.persistentPlaceholder || o.value || e.active);
function S() {
var P;
y.value !== document.activeElement && ((P = y.value) == null || P.focus()), o.value || r();
}
function _(P) {
l("mousedown:control", P), P.target !== y.value && (S(), P.preventDefault());
}
function B(P) {
S(), l("click:control", P);
}
function V(P) {
P.stopPropagation(), S(), ke(() => {
i.value = null, _i(e["onClick:clear"], P);
});
}
function A(P) {
var E;
const O = P.target;
if (i.value = O.value, (E = e.modelModifiers) != null && E.trim && ["text", "search", "password", "tel", "url"].includes(e.type)) {
const R = [O.selectionStart, O.selectionEnd];
ke(() => {
O.selectionStart = R[0], O.selectionEnd = R[1];
});
}
}
return ne(() => {
const P = !!(a.counter || e.counter !== !1 && e.counter != null), O = !!(P || a.details), [E, R] = Xl(t), {
modelValue: z,
...M
} = El.filterProps(e), C = gu(e);
return c(El, X({
ref: m,
modelValue: i.value,
"onUpdate:modelValue": (p) => i.value = p,
class: ["v-text-field", {
"v-text-field--prefixed": e.prefix,
"v-text-field--suffixed": e.suffix,
"v-input--plain-underlined": v.value
}, e.class],
style: e.style
}, E, M, {
centerAffix: !v.value,
focused: o.value
}), {
...a,
default: (p) => {
let {
id: w,
isDisabled: T,
isDirty: N,
isReadonly: J,
isValid: j
} = p;
return c(ci, X({
ref: g,
onMousedown: _,
onClick: B,
"onClick:clear": V,
"onClick:prependInner": e["onClick:prependInner"],
"onClick:appendInner": e["onClick:appendInner"],
role: e.role
}, C, {
id: w.value,
active: b.value || N.value,
dirty: N.value || e.dirty,
disabled: T.value,
focused: o.value,
error: j.value === !1
}), {
...a,
default: (k) => {
let {
props: {
class: x,
...I
}
} = k;
const D = Fe(c("input", X({
ref: y,
value: i.value,
onInput: A,
autofocus: e.autofocus,
readonly: J.value,
disabled: T.value,
name: e.name,
placeholder: e.placeholder,
size: 1,
type: e.type,
onFocus: S,
onBlur: u
}, I, R), null), [[vt("intersect"), {
handler: f
}, null, {
once: !0
}]]);
return c(ue, null, [e.prefix && c("span", {
class: "v-text-field__prefix"
}, [c("span", {
class: "v-text-field__prefix__text"
}, [e.prefix])]), a.default ? c("div", {
class: x,
"data-no-activator": ""
}, [a.default(), D]) : xi(D, {
class: x
}), e.suffix && c("span", {
class: "v-text-field__suffix"
}, [c("span", {
class: "v-text-field__suffix__text"
}, [e.suffix])])]);
}
});
},
details: O ? (p) => {
var w;
return c(ue, null, [(w = a.details) == null ? void 0 : w.call(a, p), P && c(ue, null, [c("span", null, null), c(au, {
active: e.persistentCounter || o.value,
value: s.value,
max: d.value,
disabled: e.disabled
}, a.counter)])]);
} : void 0
});
}), on({}, m, g, y);
}
}), hu = F({
renderless: Boolean,
...ae()
}, "VVirtualScrollItem"), bu = Q()({
name: "VVirtualScrollItem",
inheritAttrs: !1,
props: hu(),
emits: {
"update:height": (e) => !0
},
setup(e, n) {
let {
attrs: t,
emit: l,
slots: a
} = n;
const {
resizeRef: i,
contentRect: o
} = qt(void 0, "border");
K(() => {
var r;
return (r = o.value) == null ? void 0 : r.height;
}, (r) => {
r != null && l("update:height", r);
}), ne(() => {
var r, u;
return e.renderless ? c(ue, null, [(r = a.default) == null ? void 0 : r.call(a, {
itemRef: i
})]) : c("div", X({
ref: i,
class: ["v-virtual-scroll__item", e.class],
style: e.style
}, t), [(u = a.default) == null ? void 0 : u.call(a)]);
});
}
}), Su = -1, wu = 1, hn = 100, Cu = F({
itemHeight: {
type: [Number, String],
default: null
},
height: [Number, String]
}, "virtual");
function pu(e, n) {
const t = Gn(), l = U(0);
qe(() => {
l.value = parseFloat(e.itemHeight || 0);
});
const a = U(0), i = U(Math.ceil(
// Assume 16px items filling the entire screen height if
// not provided. This is probably incorrect but it minimises
// the chance of ending up with empty space at the bottom.
// The default value is set here to avoid poisoning getSize()
(parseInt(e.height) || t.height.value) / (l.value || 16)
) || 1), o = U(0), r = U(0), u = $(), s = $();
let d = 0;
const {
resizeRef: v,
contentRect: f
} = qt();
qe(() => {
v.value = u.value;
});
const m = h(() => {
var k;
return u.value === document.documentElement ? t.height.value : ((k = f.value) == null ? void 0 : k.height) || parseInt(e.height) || 0;
}), g = h(() => !!(u.value && s.value && m.value && l.value));
let y = Array.from({
length: n.value.length
}), b = Array.from({
length: n.value.length
});
const S = U(0);
let _ = -1;
function B(k) {
return y[k] || l.value;
}
const V = Oi(() => {
const k = performance.now();
b[0] = 0;
const x = n.value.length;
for (let I = 1; I <= x - 1; I++)
b[I] = (b[I - 1] || 0) + B(I - 1);
S.value = Math.max(S.value, performance.now() - k);
}, S), A = K(g, (k) => {
k && (A(), d = s.value.offsetTop, V.immediate(), T(), ~_ && ke(() => {
me && window.requestAnimationFrame(() => {
J(_), _ = -1;
});
}));
});
Ve(() => {
V.clear();
});
function P(k, x) {
const I = y[k], D = l.value;
l.value = D ? Math.min(l.value, x) : x, (I !== x || D !== l.value) && (y[k] = x, V());
}
function O(k) {
return k = Ge(k, 0, n.value.length - 1), b[k] || 0;
}
function E(k) {
return xu(b, k);
}
let R = 0, z = 0, M = 0;
K(m, (k, x) => {
x && (T(), k < x && requestAnimationFrame(() => {
z = 0, T();
}));
});
function C() {
if (!u.value || !s.value) return;
const k = u.value.scrollTop, x = performance.now();
x - M > 500 ? (z = Math.sign(k - R), d = s.value.offsetTop) : z = k - R, R = k, M = x, T();
}
function p() {
!u.value || !s.value || (z = 0, M = 0, T());
}
let w = -1;
function T() {
cancelAnimationFrame(w), w = requestAnimationFrame(N);
}
function N() {
if (!u.value || !m.value) return;
const k = R - d, x = Math.sign(z), I = Math.max(0, k - hn), D = Ge(E(I), 0, n.value.length), ee = k + m.value + hn, W = Ge(E(ee) + 1, D + 1, n.value.length);
if (
// Only update the side we're scrolling towards,
// the other side will be updated incidentally
(x !== Su || D < a.value) && (x !== wu || W > i.value)
) {
const le = O(a.value) - O(D), H = O(W) - O(i.value);
Math.max(le, H) > hn ? (a.value = D, i.value = W) : (D <= 0 && (a.value = D), W >= n.value.length && (i.value = W));
}
o.value = O(a.value), r.value = O(n.value.length) - O(i.value);
}
function J(k) {
const x = O(k);
!u.value || k && !x ? _ = k : u.value.scrollTop = x;
}
const j = h(() => n.value.slice(a.value, i.value).map((k, x) => ({
raw: k,
index: x + a.value
})));
return K(n, () => {
y = Array.from({
length: n.value.length
}), b = Array.from({
length: n.value.length
}), V.immediate(), T();
}, {
deep: !0
}), {
calculateVisibleItems: T,
containerRef: u,
markerRef: s,
computedItems: j,
paddingTop: o,
paddingBottom: r,
scrollToIndex: J,
handleScroll: C,
handleScrollend: p,
handleItemResize: P
};
}
function xu(e, n) {
let t = e.length - 1, l = 0, a = 0, i = null, o = -1;
if (e[t] < n)
return t;
for (; l <= t; )
if (a = l + t >> 1, i = e[a], i > n)
t = a - 1;
else if (i < n)
o = a, l = a + 1;
else return i === n ? a : l;
return o;
}
const ku = F({
items: {
type: Array,
default: () => []
},
renderless: Boolean,
...Cu(),
...ae(),
...yt()
}, "VVirtualScroll"), di = Q()({
name: "VVirtualScroll",
props: ku(),
setup(e, n) {
let {
slots: t
} = n;
const l = ge("VVirtualScroll"), {
dimensionStyles: a
} = ht(e), {
calculateVisibleItems: i,
containerRef: o,
markerRef: r,
handleScroll: u,
handleScrollend: s,
handleItemResize: d,
scrollToIndex: v,
paddingTop: f,
paddingBottom: m,
computedItems: g
} = pu(e, G(e, "items"));
return lt(() => e.renderless, () => {
function y() {
var _, B;
const S = (arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : !1) ? "addEventListener" : "removeEventListener";
o.value === document.documentElement ? (document[S]("scroll", u, {
passive: !0
}), document[S]("scrollend", s)) : ((_ = o.value) == null || _[S]("scroll", u, {
passive: !0
}), (B = o.value) == null || B[S]("scrollend", s));
}
Ot(() => {
o.value = ia(l.vnode.el, !0), y(!0);
}), Ve(y);
}), ne(() => {
const y = g.value.map((b) => c(bu, {
key: b.index,
renderless: e.renderless,
"onUpdate:height": (S) => d(b.index, S)
}, {
default: (S) => {
var _;
return (_ = t.default) == null ? void 0 : _.call(t, {
item: b.raw,
index: b.index,
...S
});
}
}));
return e.renderless ? c(ue, null, [c("div", {
ref: r,
class: "v-virtual-scroll__spacer",
style: {
paddingTop: q(f.value)
}
}, null), y, c("div", {
class: "v-virtual-scroll__spacer",
style: {
paddingBottom: q(m.value)
}
}, null)]) : c("div", {
ref: o,
class: ["v-virtual-scroll", e.class],
onScrollPassive: u,
onScrollend: s,
style: [a.value, e.style]
}, [c("div", {
ref: r,
class: "v-virtual-scroll__container",
style: {
paddingTop: q(f.value),
paddingBottom: q(m.value)
}
}, [y])]);
}), {
calculateVisibleItems: i,
scrollToIndex: v
};
}
});
function fi(e, n) {
const t = U(!1);
let l;
function a(r) {
cancelAnimationFrame(l), t.value = !0, l = requestAnimationFrame(() => {
l = requestAnimationFrame(() => {
t.value = !1;
});
});
}
async function i() {
await new Promise((r) => requestAnimationFrame(r)), await new Promise((r) => requestAnimationFrame(r)), await new Promise((r) => requestAnimationFrame(r)), await new Promise((r) => {
if (t.value) {
const u = K(t, () => {
u(), r();
});
} else r();
});
}
async function o(r) {
var d, v;
if (r.key === "Tab" && ((d = n.value) == null || d.focus()), !["PageDown", "PageUp", "Home", "End"].includes(r.key)) return;
const u = (v = e.value) == null ? void 0 : v.$el;
if (!u) return;
(r.key === "Home" || r.key === "End") && u.scrollTo({
top: r.key === "Home" ? 0 : u.scrollHeight,
behavior: "smooth"
}), await i();
const s = u.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");
if (r.key === "PageDown" || r.key === "Home") {
const f = u.getBoundingClientRect().top;
for (const m of s)
if (m.getBoundingClientRect().top >= f) {
m.focus();
break;
}
} else {
const f = u.getBoundingClientRect().bottom;
for (const m of [...s].reverse())
if (m.getBoundingClientRect().bottom <= f) {
m.focus();
break;
}
}
}
return {
onScrollPassive: a,
onKeydown: o
};
}
const vi = F({
chips: Boolean,
closableChips: Boolean,
closeText: {
type: String,
default: "$vuetify.close"
},
openText: {
type: String,
default: "$vuetify.open"
},
eager: Boolean,
hideNoData: Boolean,
hideSelected: Boolean,
listProps: {
type: Object
},
menu: Boolean,
menuIcon: {
type: se,
default: "$dropdown"
},
menuProps: {
type: Object
},
multiple: Boolean,
noDataText: {
type: String,
default: "$vuetify.noDataText"
},
openOnClear: Boolean,
itemColor: String,
...Xa({
itemChildren: !1
})
}, "Select"), Vu = F({
...vi(),
...at(Jn({
modelValue: null,
role: "combobox"
}), ["validationValue", "dirty", "appendInnerIcon"]),
...bt({
transition: {
component: Ia
}
})
}, "VSelect");
Q()({
name: "VSelect",
props: Vu(),
emits: {
"update:focused": (e) => !0,
"update:modelValue": (e) => !0,
"update:menu": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const {
t: l
} = an(), a = $(), i = $(), o = $(), r = ve(e, "menu"), u = h({
get: () => r.value,
set: (k) => {
var x;
r.value && !k && ((x = i.value) != null && x.ΨopenChildren.size) || (r.value = k);
}
}), {
items: s,
transformIn: d,
transformOut: v
} = Ja(e), f = ve(e, "modelValue", [], (k) => d(k === null ? [null] : pe(k)), (k) => {
const x = v(k);
return e.multiple ? x : x[0] ?? null;
}), m = h(() => typeof e.counterValue == "function" ? e.counterValue(f.value) : typeof e.counterValue == "number" ? e.counterValue : f.value.length), g = Un(), y = h(() => f.value.map((k) => k.value)), b = U(!1), S = h(() => u.value ? e.closeText : e.openText);
let _ = "", B;
const V = h(() => e.hideSelected ? s.value.filter((k) => !f.value.some((x) => e.valueComparator(x, k))) : s.value), A = h(() => e.hideNoData && !V.value.length || e.readonly || (g == null ? void 0 : g.isReadonly.value)), P = h(() => {
var k;
return {
...e.menuProps,
activatorProps: {
...((k = e.menuProps) == null ? void 0 : k.activatorProps) || {},
"aria-haspopup": "listbox"
// Set aria-haspopup to 'listbox'
}
};
}), O = $(), E = fi(O, a);
function R(k) {
e.openOnClear && (u.value = !0);
}
function z() {
A.value || (u.value = !u.value);
}
function M(k) {
Sn(k) && C(k);
}
function C(k) {
var ee, W;
if (!k.key || e.readonly || g != null && g.isReadonly.value) return;
["Enter", " ", "ArrowDown", "ArrowUp", "Home", "End"].includes(k.key) && k.preventDefault(), ["Enter", "ArrowDown", " "].includes(k.key) && (u.value = !0), ["Escape", "Tab"].includes(k.key) && (u.value = !1), k.key === "Home" ? (ee = O.value) == null || ee.focus("first") : k.key === "End" && ((W = O.value) == null || W.focus("last"));
const x = 1e3;
if (e.multiple || !Sn(k)) return;
const I = performance.now();
I - B > x && (_ = ""), _ += k.key.toLowerCase(), B = I;
const D = s.value.find((le) => le.title.toLowerCase().startsWith(_));
if (D !== void 0) {
f.value = [D];
const le = V.value.indexOf(D);
me && window.requestAnimationFrame(() => {
var H;
le >= 0 && ((H = o.value) == null || H.scrollToIndex(le));
});
}
}
function p(k) {
let x = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
if (!k.props.disabled)
if (e.multiple) {
const I = f.value.findIndex((ee) => e.valueComparator(ee.value, k.value)), D = x ?? !~I;
if (~I) {
const ee = D ? [...f.value, k] : [...f.value];
ee.splice(I, 1), f.value = ee;
} else D && (f.value = [...f.value, k]);
} else {
const I = x !== !1;
f.value = I ? [k] : [], ke(() => {
u.value = !1;
});
}
}
function w(k) {
var x;
(x = O.value) != null && x.$el.contains(k.relatedTarget) || (u.value = !1);
}
function T() {
var k;
e.eager && ((k = o.value) == null || k.calculateVisibleItems());
}
function N() {
var k;
b.value && ((k = a.value) == null || k.focus());
}
function J(k) {
b.value = !0;
}
function j(k) {
if (k == null) f.value = [];
else if (ct(a.value, ":autofill") || ct(a.value, ":-webkit-autofill")) {
const x = s.value.find((I) => I.title === k);
x && p(x);
} else a.value && (a.value.value = "");
}
return K(u, () => {
if (!e.hideSelected && u.value && f.value.length) {
const k = V.value.findIndex((x) => f.value.some((I) => e.valueComparator(I.value, x.value)));
me && window.requestAnimationFrame(() => {
var x;
k >= 0 && ((x = o.value) == null || x.scrollToIndex(k));
});
}
}), K(() => e.items, (k, x) => {
u.value || b.value && !x.length && k.length && (u.value = !0);
}), ne(() => {
const k = !!(e.chips || t.chip), x = !!(!e.hideNoData || V.value.length || t["prepend-item"] || t["append-item"] || t["no-data"]), I = f.value.length > 0, D = Xt.filterProps(e), ee = I || !b.value && e.label && !e.persistentPlaceholder ? void 0 : e.placeholder;
return c(Xt, X({
ref: a
}, D, {
modelValue: f.value.map((W) => W.props.value).join(", "),
"onUpdate:modelValue": j,
focused: b.value,
"onUpdate:focused": (W) => b.value = W,
validationValue: f.externalValue,
counterValue: m.value,
dirty: I,
class: ["v-select", {
"v-select--active-menu": u.value,
"v-select--chips": !!e.chips,
[`v-select--${e.multiple ? "multiple" : "single"}`]: !0,
"v-select--selected": f.value.length,
"v-select--selection-slot": !!t.selection
}, e.class],
style: e.style,
inputmode: "none",
placeholder: ee,
"onClick:clear": R,
"onMousedown:control": z,
onBlur: w,
onKeydown: C,
"aria-label": l(S.value),
title: l(S.value)
}), {
...t,
default: () => c(ue, null, [c(ui, X({
ref: i,
modelValue: u.value,
"onUpdate:modelValue": (W) => u.value = W,
activator: "parent",
contentClass: "v-select__content",
disabled: A.value,
eager: e.eager,
maxHeight: 310,
openOnClick: !1,
closeOnContentClick: !1,
transition: e.transition,
onAfterEnter: T,
onAfterLeave: N
}, P.value), {
default: () => [x && c(ei, X({
ref: O,
selected: y.value,
selectStrategy: e.multiple ? "independent" : "single-independent",
onMousedown: (W) => W.preventDefault(),
onKeydown: M,
onFocusin: J,
tabindex: "-1",
"aria-live": "polite",
color: e.itemColor ?? e.color
}, E, e.listProps), {
default: () => {
var W, le, H;
return [(W = t["prepend-item"]) == null ? void 0 : W.call(t), !V.value.length && !e.hideNoData && (((le = t["no-data"]) == null ? void 0 : le.call(t)) ?? c(ft, {
title: l(e.noDataText)
}, null)), c(di, {
ref: o,
renderless: !0,
items: V.value
}, {
default: (te) => {
var Y;
let {
item: ce,
index: ie,
itemRef: oe
} = te;
const L = X(ce.props, {
ref: oe,
key: ie,
onClick: () => p(ce, null)
});
return ((Y = t.item) == null ? void 0 : Y.call(t, {
item: ce,
index: ie,
props: L
})) ?? c(ft, X(L, {
role: "option"
}), {
prepend: (de) => {
let {
isSelected: Z
} = de;
return c(ue, null, [e.multiple && !e.hideSelected ? c(Ca, {
key: ce.value,
modelValue: Z,
ripple: !1,
tabindex: "-1"
}, null) : void 0, ce.props.prependAvatar && c(dt, {
image: ce.props.prependAvatar
}, null), ce.props.prependIcon && c(we, {
icon: ce.props.prependIcon
}, null)]);
}
});
}
}), (H = t["append-item"]) == null ? void 0 : H.call(t)];
}
})]
}), f.value.map((W, le) => {
function H(oe) {
oe.stopPropagation(), oe.preventDefault(), p(W, !1);
}
const te = {
"onClick:close": H,
onKeydown(oe) {
oe.key !== "Enter" && oe.key !== " " || (oe.preventDefault(), oe.stopPropagation(), H(oe));
},
onMousedown(oe) {
oe.preventDefault(), oe.stopPropagation();
},
modelValue: !0,
"onUpdate:modelValue": void 0
}, ce = k ? !!t.chip : !!t.selection, ie = ce ? Fn(k ? t.chip({
item: W,
index: le,
props: te
}) : t.selection({
item: W,
index: le
})) : void 0;
if (!(ce && !ie))
return c("div", {
key: W.value,
class: "v-select__selection"
}, [k ? t.chip ? c(Te, {
key: "chip-defaults",
defaults: {
VChip: {
closable: e.closableChips,
size: "small",
text: W.title
}
}
}, {
default: () => [ie]
}) : c(za, X({
key: "chip",
closable: e.closableChips,
size: "small",
text: W.title,
disabled: W.props.disabled
}, te), null) : ie ?? c("span", {
class: "v-select__selection-text"
}, [W.title, e.multiple && le < f.value.length - 1 && c("span", {
class: "v-select__selection-comma"
}, [Ul(",")])])]);
})]),
"append-inner": function() {
var te;
for (var W = arguments.length, le = new Array(W), H = 0; H < W; H++)
le[H] = arguments[H];
return c(ue, null, [(te = t["append-inner"]) == null ? void 0 : te.call(t, ...le), e.menuIcon ? c(we, {
class: "v-select__menu-icon",
icon: e.menuIcon
}, null) : void 0]);
}
});
}), on({
isFocused: b,
menu: u,
select: p
}, a);
}
});
const Iu = (e, n, t) => e == null || n == null ? -1 : e.toString().toLocaleLowerCase().indexOf(n.toString().toLocaleLowerCase()), Pu = F({
customFilter: Function,
customKeyFilter: Object,
filterKeys: [Array, String],
filterMode: {
type: String,
default: "intersection"
},
noFilter: Boolean
}, "filter");
function Au(e, n, t) {
var r;
const l = [], a = (t == null ? void 0 : t.default) ?? Iu, i = t != null && t.filterKeys ? pe(t.filterKeys) : !1, o = Object.keys((t == null ? void 0 : t.customKeyFilter) ?? {}).length;
if (!(e != null && e.length)) return l;
e: for (let u = 0; u < e.length; u++) {
const [s, d = s] = pe(e[u]), v = {}, f = {};
let m = -1;
if ((n || o > 0) && !(t != null && t.noFilter)) {
if (typeof s == "object") {
const b = i || Object.keys(d);
for (const S of b) {
const _ = De(d, S), B = (r = t == null ? void 0 : t.customKeyFilter) == null ? void 0 : r[S];
if (m = B ? B(_, n, s) : a(_, n, s), m !== -1 && m !== !1)
B ? v[S] = m : f[S] = m;
else if ((t == null ? void 0 : t.filterMode) === "every")
continue e;
}
} else
m = a(s, n, s), m !== -1 && m !== !1 && (f.title = m);
const g = Object.keys(f).length, y = Object.keys(v).length;
if (!g && !y || (t == null ? void 0 : t.filterMode) === "union" && y !== o && !g || (t == null ? void 0 : t.filterMode) === "intersection" && (y !== o || !g)) continue;
}
l.push({
index: u,
matches: {
...f,
...v
}
});
}
return l;
}
function Eu(e, n, t, l) {
const a = $([]), i = $(/* @__PURE__ */ new Map()), o = h(() => Ce(n));
qe(() => {
const u = typeof t == "function" ? t() : Ce(t), s = typeof u != "string" && typeof u != "number" ? "" : String(u), d = Au(o.value, s, {
customKeyFilter: {
...e.customKeyFilter,
...Ce(l == null ? void 0 : l.customKeyFilter)
},
default: e.customFilter,
filterKeys: e.filterKeys,
filterMode: e.filterMode,
noFilter: e.noFilter
}), v = Ce(n), f = [], m = /* @__PURE__ */ new Map();
d.forEach((g) => {
let {
index: y,
matches: b
} = g;
const S = v[y];
f.push(S), m.set(S.value, b);
}), a.value = f, i.value = m;
});
function r(u) {
return i.value.get(u.value);
}
return {
filteredItems: a,
filteredMatches: i,
getMatches: r
};
}
function Ou(e, n, t) {
if (n == null) return e;
if (Array.isArray(n)) throw new Error("Multiple matches is not implemented");
return typeof n == "number" && ~n ? c(ue, null, [c("span", {
class: "v-autocomplete__unmask"
}, [e.substr(0, n)]), c("span", {
class: "v-autocomplete__mask"
}, [e.substr(n, t)]), c("span", {
class: "v-autocomplete__unmask"
}, [e.substr(n + t)])]) : e;
}
const Bu = F({
autoSelectFirst: {
type: [Boolean, String]
},
clearOnSelect: Boolean,
search: String,
...Pu({
filterKeys: ["title"]
}),
...vi(),
...at(Jn({
modelValue: null,
role: "combobox"
}), ["validationValue", "dirty", "appendInnerIcon"]),
...bt({
transition: !1
})
}, "VAutocomplete"), _e = Q()({
name: "VAutocomplete",
props: Bu(),
emits: {
"update:focused": (e) => !0,
"update:search": (e) => !0,
"update:modelValue": (e) => !0,
"update:menu": (e) => !0
},
setup(e, n) {
let {
slots: t
} = n;
const {
t: l
} = an(), a = $(), i = U(!1), o = U(!0), r = U(!1), u = $(), s = $(), d = ve(e, "menu"), v = h({
get: () => d.value,
set: (L) => {
var Y;
d.value && !L && ((Y = u.value) != null && Y.ΨopenChildren.size) || (d.value = L);
}
}), f = U(-1), m = h(() => {
var L;
return (L = a.value) == null ? void 0 : L.color;
}), g = h(() => v.value ? e.closeText : e.openText), {
items: y,
transformIn: b,
transformOut: S
} = Ja(e), {
textColorClasses: _,
textColorStyles: B
} = Ye(m), V = ve(e, "search", ""), A = ve(e, "modelValue", [], (L) => b(L === null ? [null] : pe(L)), (L) => {
const Y = S(L);
return e.multiple ? Y : Y[0] ?? null;
}), P = h(() => typeof e.counterValue == "function" ? e.counterValue(A.value) : typeof e.counterValue == "number" ? e.counterValue : A.value.length), O = Un(), {
filteredItems: E,
getMatches: R
} = Eu(e, y, () => o.value ? "" : V.value), z = h(() => e.hideSelected ? E.value.filter((L) => !A.value.some((Y) => Y.value === L.value)) : E.value), M = h(() => !!(e.chips || t.chip)), C = h(() => M.value || !!t.selection), p = h(() => A.value.map((L) => L.props.value)), w = h(() => {
var Y;
return (e.autoSelectFirst === !0 || e.autoSelectFirst === "exact" && V.value === ((Y = z.value[0]) == null ? void 0 : Y.title)) && z.value.length > 0 && !o.value && !r.value;
}), T = h(() => e.hideNoData && !z.value.length || e.readonly || (O == null ? void 0 : O.isReadonly.value)), N = $(), J = fi(N, a);
function j(L) {
e.openOnClear && (v.value = !0), V.value = "";
}
function k() {
T.value || (v.value = !0);
}
function x(L) {
T.value || (i.value && (L.preventDefault(), L.stopPropagation()), v.value = !v.value);
}
function I(L) {
var Y;
Sn(L) && ((Y = a.value) == null || Y.focus());
}
function D(L) {
var Z, fe, Ie;
if (e.readonly || O != null && O.isReadonly.value) return;
const Y = a.value.selectionStart, de = A.value.length;
if ((f.value > -1 || ["Enter", "ArrowDown", "ArrowUp"].includes(L.key)) && L.preventDefault(), ["Enter", "ArrowDown"].includes(L.key) && (v.value = !0), ["Escape"].includes(L.key) && (v.value = !1), w.value && ["Enter", "Tab"].includes(L.key) && !A.value.some((ye) => {
let {
value: be
} = ye;
return be === z.value[0].value;
}) && oe(z.value[0]), L.key === "ArrowDown" && w.value && ((Z = N.value) == null || Z.focus("next")), ["Backspace", "Delete"].includes(L.key)) {
if (!e.multiple && C.value && A.value.length > 0 && !V.value) return oe(A.value[0], !1);
if (~f.value) {
const ye = f.value;
oe(A.value[f.value], !1), f.value = ye >= de - 1 ? de - 2 : ye;
} else L.key === "Backspace" && !V.value && (f.value = de - 1);
}
if (e.multiple) {
if (L.key === "ArrowLeft") {
if (f.value < 0 && Y > 0) return;
const ye = f.value > -1 ? f.value - 1 : de - 1;
A.value[ye] ? f.value = ye : (f.value = -1, a.value.setSelectionRange((fe = V.value) == null ? void 0 : fe.length, (Ie = V.value) == null ? void 0 : Ie.length));
}
if (L.key === "ArrowRight") {
if (f.value < 0) return;
const ye = f.value + 1;
A.value[ye] ? f.value = ye : (f.value = -1, a.value.setSelectionRange(0, 0));
}
}
}
function ee(L) {
if (ct(a.value, ":autofill") || ct(a.value, ":-webkit-autofill")) {
const Y = y.value.find((de) => de.title === L.target.value);
Y && oe(Y);
}
}
function W() {
var L;
e.eager && ((L = s.value) == null || L.calculateVisibleItems());
}
function le() {
var L;
i.value && (o.value = !0, (L = a.value) == null || L.focus());
}
function H(L) {
i.value = !0, setTimeout(() => {
r.value = !0;
});
}
function te(L) {
r.value = !1;
}
function ce(L) {
(L == null || L === "" && !e.multiple && !C.value) && (A.value = []);
}
const ie = U(!1);
function oe(L) {
let Y = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
if (!(!L || L.props.disabled))
if (e.multiple) {
const de = A.value.findIndex((fe) => e.valueComparator(fe.value, L.value)), Z = Y ?? !~de;
if (~de) {
const fe = Z ? [...A.value, L] : [...A.value];
fe.splice(de, 1), A.value = fe;
} else Z && (A.value = [...A.value, L]);
e.clearOnSelect && (V.value = "");
} else {
const de = Y !== !1;
A.value = de ? [L] : [], V.value = de && !C.value ? L.title : "", ke(() => {
v.value = !1, o.value = !0;
});
}
}
return K(i, (L, Y) => {
var de;
L !== Y && (L ? (ie.value = !0, V.value = e.multiple || C.value ? "" : String(((de = A.value.at(-1)) == null ? void 0 : de.props.title) ?? ""), o.value = !0, ke(() => ie.value = !1)) : (!e.multiple && V.value == null && (A.value = []), v.value = !1, A.value.some((Z) => {
let {
title: fe
} = Z;
return fe === V.value;
}) || (V.value = ""), f.value = -1));
}), K(V, (L) => {
!i.value || ie.value || (L && (v.value = !0), o.value = !L);
}), K(v, () => {
if (!e.hideSelected && v.value && A.value.length) {
const L = z.value.findIndex((Y) => A.value.some((de) => Y.value === de.value));
me && window.requestAnimationFrame(() => {
var Y;
L >= 0 && ((Y = s.value) == null || Y.scrollToIndex(L));
});
}
}), K(() => e.items, (L, Y) => {
v.value || i.value && !Y.length && L.length && (v.value = !0);
}), ne(() => {
const L = !!(!e.hideNoData || z.value.length || t["prepend-item"] || t["append-item"] || t["no-data"]), Y = A.value.length > 0, de = Xt.filterProps(e);
return c(Xt, X({
ref: a
}, de, {
modelValue: V.value,
"onUpdate:modelValue": [(Z) => V.value = Z, ce],
focused: i.value,
"onUpdate:focused": (Z) => i.value = Z,
validationValue: A.externalValue,
counterValue: P.value,
dirty: Y,
onChange: ee,
class: ["v-autocomplete", `v-autocomplete--${e.multiple ? "multiple" : "single"}`, {
"v-autocomplete--active-menu": v.value,
"v-autocomplete--chips": !!e.chips,
"v-autocomplete--selection-slot": !!C.value,
"v-autocomplete--selecting-index": f.value > -1
}, e.class],
style: e.style,
readonly: e.readonly,
placeholder: Y ? void 0 : e.placeholder,
"onClick:clear": j,
"onMousedown:control": k,
onKeydown: D
}), {
...t,
default: () => c(ue, null, [c(ui, X({
ref: u,
modelValue: v.value,
"onUpdate:modelValue": (Z) => v.value = Z,
activator: "parent",
contentClass: "v-autocomplete__content",
disabled: T.value,
eager: e.eager,
maxHeight: 310,
openOnClick: !1,
closeOnContentClick: !1,
transition: e.transition,
onAfterEnter: W,
onAfterLeave: le
}, e.menuProps), {
default: () => [L && c(ei, X({
ref: N,
selected: p.value,
selectStrategy: e.multiple ? "independent" : "single-independent",
onMousedown: (Z) => Z.preventDefault(),
onKeydown: I,
onFocusin: H,
onFocusout: te,
tabindex: "-1",
"aria-live": "polite",
color: e.itemColor ?? e.color
}, J, e.listProps), {
default: () => {
var Z, fe, Ie;
return [(Z = t["prepend-item"]) == null ? void 0 : Z.call(t), !z.value.length && !e.hideNoData && (((fe = t["no-data"]) == null ? void 0 : fe.call(t)) ?? c(ft, {
title: l(e.noDataText)
}, null)), c(di, {
ref: s,
renderless: !0,
items: z.value
}, {
default: (ye) => {
var el;
let {
item: be,
index: Qe,
itemRef: Pe
} = ye;
const Zn = X(be.props, {
ref: Pe,
key: Qe,
active: w.value && Qe === 0 ? !0 : void 0,
onClick: () => oe(be, null)
});
return ((el = t.item) == null ? void 0 : el.call(t, {
item: be,
index: Qe,
props: Zn
})) ?? c(ft, X(Zn, {
role: "option"
}), {
prepend: (Tt) => {
let {
isSelected: Lt
} = Tt;
return c(ue, null, [e.multiple && !e.hideSelected ? c(Ca, {
key: be.value,
modelValue: Lt,
ripple: !1,
tabindex: "-1"
}, null) : void 0, be.props.prependAvatar && c(dt, {
image: be.props.prependAvatar
}, null), be.props.prependIcon && c(we, {
icon: be.props.prependIcon
}, null)]);
},
title: () => {
var Tt, Lt;
return o.value ? be.title : Ou(be.title, (Tt = R(be)) == null ? void 0 : Tt.title, ((Lt = V.value) == null ? void 0 : Lt.length) ?? 0);
}
});
}
}), (Ie = t["append-item"]) == null ? void 0 : Ie.call(t)];
}
})]
}), A.value.map((Z, fe) => {
function Ie(Pe) {
Pe.stopPropagation(), Pe.preventDefault(), oe(Z, !1);
}
const ye = {
"onClick:close": Ie,
onKeydown(Pe) {
Pe.key !== "Enter" && Pe.key !== " " || (Pe.preventDefault(), Pe.stopPropagation(), Ie(Pe));
},
onMousedown(Pe) {
Pe.preventDefault(), Pe.stopPropagation();
},
modelValue: !0,
"onUpdate:modelValue": void 0
}, be = M.value ? !!t.chip : !!t.selection, Qe = be ? Fn(M.value ? t.chip({
item: Z,
index: fe,
props: ye
}) : t.selection({
item: Z,
index: fe
})) : void 0;
if (!(be && !Qe))
return c("div", {
key: Z.value,
class: ["v-autocomplete__selection", fe === f.value && ["v-autocomplete__selection--selected", _.value]],
style: fe === f.value ? B.value : {}
}, [M.value ? t.chip ? c(Te, {
key: "chip-defaults",
defaults: {
VChip: {
closable: e.closableChips,
size: "small",
text: Z.title
}
}
}, {
default: () => [Qe]
}) : c(za, X({
key: "chip",
closable: e.closableChips,
size: "small",
text: Z.title,
disabled: Z.props.disabled
}, ye), null) : Qe ?? c("span", {
class: "v-autocomplete__selection-text"
}, [Z.title, e.multiple && fe < A.value.length - 1 && c("span", {
class: "v-autocomplete__selection-comma"
}, [Ul(",")])])]);
})]),
"append-inner": function() {
var ye;
for (var Z = arguments.length, fe = new Array(Z), Ie = 0; Ie < Z; Ie++)
fe[Ie] = arguments[Ie];
return c(ue, null, [(ye = t["append-inner"]) == null ? void 0 : ye.call(t, ...fe), e.menuIcon ? c(we, {
class: "v-autocomplete__menu-icon",
icon: e.menuIcon,
onMousedown: x,
onClick: Ti,
"aria-label": l(g.value),
title: l(g.value),
tabindex: "-1"
}, null) : void 0]);
}
});
}), on({
isFocused: i,
isPristine: o,
menu: v,
search: V,
filteredItems: E,
select: oe
}, a);
}
}), _u = { class: "relative common-width" }, Tu = { class: "relative mgl common-width" }, Lu = { class: "relative common-width" }, Fu = { class: "date-of-birth date-of-birth-format" }, Mu = { class: "relative common-width" }, Ru = { class: "relative common-width" }, Du = { class: "relative common-width" }, $u = {
key: 0,
class: "error-font"
}, Nu = { class: "date-of-birth date-of-birth-format" }, zu = { class: "relative common-width" }, Hu = { class: "relative common-width" }, Wu = { class: "relative common-width" }, ju = {
key: 0,
class: "error-font"
}, Uu = { class: "date-of-birth date-of-birth-format" }, Gu = { class: "relative common-width" }, Ku = { class: "relative common-width" }, qu = { class: "relative common-width" }, Yu = {
key: 0,
class: "error-font"
}, Xu = {
name: "BirthOfDate"
}, Qu = /* @__PURE__ */ Object.assign(Xu, {
props: {
width: {
type: String,
default: "100%"
},
inputHeight: {
type: String,
default: "default"
// default | comfortable | compact
},
title: {
required: !0,
type: Object,
default() {
return {
year: "Year",
month: "Month",
day: "Day"
};
}
},
clear: {
type: Boolean,
default: !1
},
values: {
required: !1,
type: String,
default: ""
},
format: {
type: String,
default: ""
},
isError: {
type: Boolean,
default: !1
},
gap: {
type: String,
default: "12px"
// 间距
}
},
emits: ["changeValue", "verified"],
setup(e, { expose: n, emit: t }) {
ki((C) => ({
d504b622: e.gap
}));
const l = e, a = t, i = $([]), o = $([]), r = $([]), u = $(), s = $(), d = $(), v = $(!1), f = $(!1), m = $(!1), g = (C, p, w) => {
let T = [];
for (let N = C; N <= p; N++)
N < w ? T.push({
name: "0" + N,
value: "0" + N
}) : T.push({
name: "" + N,
value: "" + N
});
return T;
};
let y = $(!1), b = $(0);
l.isError ? y.value = !0 : y.value = !1;
const S = h(() => {
if (l.format === "")
return !1;
if (b.value++, b.value <= 9 && l.isError && l.values)
return !0;
if (u.value && s.value && !d.value)
return !_(s.value * 1, u.value * 1) || y.value;
if (u.value && s.value && d.value || y.value) {
if (u.value && s.value && d.value) {
let p = d.value + "-" + s.value + "-" + u.value;
a("changeValue", p);
} else
a("changeValue", null);
return !A(`${d.value}-${s.value}-${u.value}`) || y.value;
}
}), _ = (C, p) => {
if (C < 1 || C > 12)
return !1;
const w = {
1: 31,
// January
2: 28,
// February
3: 31,
// March
4: 30,
// April
5: 31,
// May
6: 30,
// June
7: 31,
// July
8: 31,
// August
9: 30,
// September
10: 31,
// October
11: 30,
// November
12: 31
// December
};
return !(p < 1 || p > w[C]);
}, B = () => {
y.value = !1;
};
n({
validateDOB: () => l.format === "" ? !1 : !S.value
});
const A = (C) => {
if (!/^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[12][0-9]|3[01])$/.test(C))
return !1;
const [w, T, N] = C.split("-").map(Number), J = new Date(w, T - 1, N);
if (J.getFullYear() !== w || J.getMonth() + 1 !== T || T === 2 && N === 29 && !(w % 4 === 0 && w % 100 !== 0 || w % 400 === 0))
return !1;
const j = new Date(w, T, 0).getDate();
return !(N > j);
}, P = (C) => JSON.parse(window.localStorage.getItem("langList"))[C] || C;
(() => {
o.value = [], i.value = [], r.value = [];
let C = (/* @__PURE__ */ new Date()).getFullYear();
o.value = g(1, 12, 10), i.value = g(1, 31, 10), r.value = g(C - 120, C, 999).reverse();
})(), K(l, (C) => {
let p = C.values;
if (p) {
let w = p.split(" ")[0].split("-");
d.value = w[0], s.value = w[1], u.value = w[2], f.value = !0, v.value = !0, m.value = !0;
}
}, { immediate: !0, deep: !0 }), K(s, (C) => {
let p = (/* @__PURE__ */ new Date()).getFullYear(), w = (/* @__PURE__ */ new Date()).getMonth() + 1, T = (/* @__PURE__ */ new Date()).getDate();
d.value == p && C == w && !l.format && (i.value = g(1, T, 10), u.value > T && (u.value = "", v.value = !1));
}, { immediate: !0, deep: !0 }), K(d, (C) => {
let p = (/* @__PURE__ */ new Date()).getFullYear(), w = (/* @__PURE__ */ new Date()).getMonth() + 1, T = (/* @__PURE__ */ new Date()).getDate();
C == p && s.value == w && !l.format && (i.value = g(1, T, 10), u.value > T && (u.value = "", v.value = !1));
}, { immediate: !0, deep: !0 });
const E = () => {
if (v.value = !0, d.value && s.value && u.value) {
let C = d.value + "-" + s.value + "-" + u.value;
a("changeValue", C);
} else
a("changeValue", null);
}, R = (C) => {
if (f.value = !!C, i.value = [], C === "02" && d.value === "" ? (i.value = g(1, 28, 10), u.value > 28 && (u.value = "", v.value = !1)) : C === "02" && d.value !== "" && M(d.value) === !0 ? (i.value = g(1, 29, 10), u.value > 29 && (u.value = "", v.value = !1)) : C === "02" && d.value !== "" && M(d.value) !== !0 ? (i.value = g(1, 28, 10), u.value > 28 && (u.value = "", v.value = !1)) : C !== "02" && ["01", "03", "05", "07", "08", "10", "12"].includes(C) ? i.value = g(1, 31, 10) : (i.value = g(1, 30, 10), u.value > 30 && (u.value = "", v.value = !1)), d.value && s.value && u.value) {
let p = d.value + "-" + s.value + "-" + u.value;
a("changeValue", p);
} else
a("changeValue", null);
}, z = () => {
m.value = !0, R(s.value);
}, M = (C) => C % 4 == 0 && (C % 100 != 0 || C % 400 == 0);
return (C, p) => (We(), je(ue, null, [
e.format === "" ? (We(), je("div", {
key: 0,
class: "date-of-birth",
style: Ft({ width: e.width })
}, [
Se("div", _u, [
c(_e, {
color: "primary",
modelValue: d.value,
"onUpdate:modelValue": [
p[0] || (p[0] = (w) => d.value = w),
z
],
density: e.inputHeight,
class: Be(d.value ? "hasValue" : ""),
items: r.value,
rules: [(w) => !!w || P("Please select")],
label: P(e.title.year),
placeholder: P(e.title.year),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined",
required: ""
}, null, 8, ["modelValue", "density", "class", "items", "rules", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Tu, [
c(_e, {
color: "primary",
modelValue: s.value,
"onUpdate:modelValue": [
p[1] || (p[1] = (w) => s.value = w),
R
],
density: e.inputHeight,
class: Be(s.value ? "hasValue" : ""),
items: o.value,
rules: [(w) => !!w || P("Please select")],
label: P(e.title.month),
placeholder: P(e.title.month),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined",
required: ""
}, null, 8, ["modelValue", "density", "class", "items", "rules", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Lu, [
c(_e, {
color: "primary",
modelValue: u.value,
"onUpdate:modelValue": [
p[2] || (p[2] = (w) => u.value = w),
E
],
density: e.inputHeight,
class: Be(u.value ? "hasValue" : ""),
items: i.value,
rules: [(w) => !!w || P("Please select")],
label: P(e.title.day),
placeholder: P(e.title.day),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined",
required: ""
}, null, 8, ["modelValue", "density", "class", "items", "rules", "label", "placeholder", "item-value", "clearable"])
])
], 4)) : Je("", !0),
e.format === "YYYY-MM-DD" ? (We(), je("div", {
key: 1,
style: Ft({ width: e.width })
}, [
Se("div", Fu, [
Se("div", Mu, [
c(_e, {
color: "primary",
modelValue: d.value,
"onUpdate:modelValue": [
p[3] || (p[3] = (w) => d.value = w),
B
],
density: e.inputHeight,
class: Be([d.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: r.value,
label: P(e.title.year),
placeholder: P(e.title.year),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Ru, [
c(_e, {
color: "primary",
modelValue: s.value,
"onUpdate:modelValue": [
p[4] || (p[4] = (w) => s.value = w),
B
],
density: e.inputHeight,
class: Be([s.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: o.value,
label: P(e.title.month),
placeholder: P(e.title.month),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Du, [
c(_e, {
color: "primary",
modelValue: u.value,
"onUpdate:modelValue": [
p[5] || (p[5] = (w) => u.value = w),
B
],
density: e.inputHeight,
class: Be([u.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: i.value,
label: P(e.title.day),
placeholder: P(e.title.day),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
])
]),
S.value ? (We(), je("div", $u, rn(P("Please enter the correct date of birth.")), 1)) : Je("", !0)
], 4)) : Je("", !0),
e.format === "DD-MM-YYYY" ? (We(), je("div", {
key: 2,
style: Ft({ width: e.width })
}, [
Se("div", Nu, [
Se("div", zu, [
c(_e, {
color: "primary",
modelValue: u.value,
"onUpdate:modelValue": [
p[6] || (p[6] = (w) => u.value = w),
B
],
density: e.inputHeight,
class: Be([u.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: i.value,
label: P(e.title.day),
placeholder: P(e.title.day),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Hu, [
c(_e, {
color: "primary",
modelValue: s.value,
"onUpdate:modelValue": [
p[7] || (p[7] = (w) => s.value = w),
B
],
density: e.inputHeight,
class: Be([s.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: o.value,
label: P(e.title.month),
placeholder: P(e.title.month),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Wu, [
c(_e, {
color: "primary",
modelValue: d.value,
"onUpdate:modelValue": [
p[8] || (p[8] = (w) => d.value = w),
B
],
density: e.inputHeight,
class: Be([d.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: r.value,
label: P(e.title.year),
placeholder: P(e.title.year),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
])
]),
S.value ? (We(), je("div", ju, rn(P("Please enter the correct date of birth.")), 1)) : Je("", !0)
], 4)) : Je("", !0),
e.format === "MM-DD-YYYY" ? (We(), je("div", {
key: 3,
style: Ft({ width: e.width })
}, [
Se("div", Uu, [
Se("div", Gu, [
c(_e, {
color: "primary",
modelValue: s.value,
"onUpdate:modelValue": [
p[9] || (p[9] = (w) => s.value = w),
B
],
density: e.inputHeight,
class: Be([s.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: o.value,
label: P(e.title.month),
placeholder: P(e.title.month),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", Ku, [
c(_e, {
color: "primary",
modelValue: u.value,
"onUpdate:modelValue": [
p[10] || (p[10] = (w) => u.value = w),
B
],
density: e.inputHeight,
class: Be([u.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: i.value,
label: P(e.title.day),
placeholder: P(e.title.day),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
]),
Se("div", qu, [
c(_e, {
color: "primary",
modelValue: d.value,
"onUpdate:modelValue": [
p[11] || (p[11] = (w) => d.value = w),
B
],
density: e.inputHeight,
class: Be([d.value ? "hasValue" : "", S.value ? "v-field--error is_error" : ""]),
items: r.value,
label: P(e.title.year),
placeholder: P(e.title.year),
"item-title": "name",
"item-value": (w) => w.value,
"hide-details": "auto",
clearable: e.clear,
variant: "outlined"
}, null, 8, ["modelValue", "density", "class", "items", "label", "placeholder", "item-value", "clearable"])
])
]),
S.value ? (We(), je("div", Yu, rn(P("Please enter the correct date of birth.")), 1)) : Je("", !0)
], 4)) : Je("", !0)
], 64));
}
}), Ju = /* @__PURE__ */ Vi(Qu, [["__scopeId", "data-v-42fc352f"]]), Zu = [Ju], ts = {
install(e) {
Zu.forEach((n) => {
e.component(n.name, n);
});
}
};
export {
Ju as BirthOfDate,
ts as default
};