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