@konnectio/core
Version:
Konnectio Core Frontend Integration.
1,710 lines (1,709 loc) • 47.9 kB
JavaScript
import { At as e, D as t, Dt as n, E as r, H as i, I as a, L as o, M as s, O as c, Ot as l, P as u, Q as d, V as f, X as p, Y as m, bt as h, dt as g, et as _, k as v, kt as y, p as ee, pt as te, tt as b, v as ne, x as re } from "./mitt-Dp_pykgV.js";
import { a as ie, c as ae, h as oe, i as se, l as ce, o as le, s as ue, u as de } from "./SelectField-CfD2awPl.js";
//#region node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs
function x(e) {
return e.ownerDocument?.defaultView || window;
}
function S(e) {
return x(e).getComputedStyle(e);
}
var fe = Math.min, C = Math.max, w = Math.round;
function pe(e) {
let t = S(e), n = parseFloat(t.width), r = parseFloat(t.height), i = e.offsetWidth, a = e.offsetHeight, o = w(n) !== i || w(r) !== a;
return o && (n = i, r = a), {
width: n,
height: r,
fallback: o
};
}
function T(e) {
return he(e) ? (e.nodeName || "").toLowerCase() : "";
}
var E;
function me() {
if (E) return E;
let e = navigator.userAgentData;
return e && Array.isArray(e.brands) ? (E = e.brands.map(((e) => e.brand + "/" + e.version)).join(" "), E) : navigator.userAgent;
}
function D(e) {
return e instanceof x(e).HTMLElement;
}
function O(e) {
return e instanceof x(e).Element;
}
function he(e) {
return e instanceof x(e).Node;
}
function ge(e) {
return typeof ShadowRoot > "u" ? !1 : e instanceof x(e).ShadowRoot || e instanceof ShadowRoot;
}
function k(e) {
let { overflow: t, overflowX: n, overflowY: r, display: i } = S(e);
return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !["inline", "contents"].includes(i);
}
function _e(e) {
return [
"table",
"td",
"th"
].includes(T(e));
}
function ve(e) {
let t = /firefox/i.test(me()), n = S(e), r = n.backdropFilter || n.WebkitBackdropFilter;
return n.transform !== "none" || n.perspective !== "none" || !!r && r !== "none" || t && n.willChange === "filter" || t && !!n.filter && n.filter !== "none" || ["transform", "perspective"].some(((e) => n.willChange.includes(e))) || [
"paint",
"layout",
"strict",
"content"
].some(((e) => {
let t = n.contain;
return t != null && t.includes(e);
}));
}
function ye() {
return !/^((?!chrome|android).)*safari/i.test(me());
}
function be(e) {
return [
"html",
"body",
"#document"
].includes(T(e));
}
function xe(e) {
return O(e) ? e : e.contextElement;
}
var Se = {
x: 1,
y: 1
};
function A(e) {
let t = xe(e);
if (!D(t)) return Se;
let n = t.getBoundingClientRect(), { width: r, height: i, fallback: a } = pe(t), o = (a ? w(n.width) : n.width) / r, s = (a ? w(n.height) : n.height) / i;
return o && Number.isFinite(o) || (o = 1), s && Number.isFinite(s) || (s = 1), {
x: o,
y: s
};
}
function j(e, t, n, r) {
t === void 0 && (t = !1), n === void 0 && (n = !1);
let i = e.getBoundingClientRect(), a = xe(e), o = Se;
t && (r ? O(r) && (o = A(r)) : o = A(e));
let s = a ? x(a) : window, c = !ye() && n, l = (i.left + (c && s.visualViewport?.offsetLeft || 0)) / o.x, u = (i.top + (c && s.visualViewport?.offsetTop || 0)) / o.y, d = i.width / o.x, f = i.height / o.y;
if (a) {
let e = x(a), t = r && O(r) ? x(r) : r, n = e.frameElement;
for (; n && r && t !== e;) {
let e = A(n), t = n.getBoundingClientRect(), r = getComputedStyle(n);
t.x += (n.clientLeft + parseFloat(r.paddingLeft)) * e.x, t.y += (n.clientTop + parseFloat(r.paddingTop)) * e.y, l *= e.x, u *= e.y, d *= e.x, f *= e.y, l += t.x, u += t.y, n = x(n).frameElement;
}
}
return {
width: d,
height: f,
top: u,
right: l + d,
bottom: u + f,
left: l,
x: l,
y: u
};
}
function M(e) {
return ((he(e) ? e.ownerDocument : e.document) || window.document).documentElement;
}
function N(e) {
return O(e) ? {
scrollLeft: e.scrollLeft,
scrollTop: e.scrollTop
} : {
scrollLeft: e.pageXOffset,
scrollTop: e.pageYOffset
};
}
function Ce(e) {
return j(M(e)).left + N(e).scrollLeft;
}
function P(e) {
if (T(e) === "html") return e;
let t = e.assignedSlot || e.parentNode || ge(e) && e.host || M(e);
return ge(t) ? t.host : t;
}
function we(e) {
let t = P(e);
return be(t) ? t.ownerDocument.body : D(t) && k(t) ? t : we(t);
}
function F(e, t) {
t === void 0 && (t = []);
let n = we(e), r = n === e.ownerDocument?.body, i = x(n);
return r ? t.concat(i, i.visualViewport || [], k(n) ? n : []) : t.concat(n, F(n));
}
function Te(e, t, n) {
return t === "viewport" ? oe(function(e, t) {
let n = x(e), r = M(e), i = n.visualViewport, a = r.clientWidth, o = r.clientHeight, s = 0, c = 0;
if (i) {
a = i.width, o = i.height;
let e = ye();
(e || !e && t === "fixed") && (s = i.offsetLeft, c = i.offsetTop);
}
return {
width: a,
height: o,
x: s,
y: c
};
}(e, n)) : O(t) ? oe(function(e, t) {
let n = j(e, !0, t === "fixed"), r = n.top + e.clientTop, i = n.left + e.clientLeft, a = D(e) ? A(e) : {
x: 1,
y: 1
};
return {
width: e.clientWidth * a.x,
height: e.clientHeight * a.y,
x: i * a.x,
y: r * a.y
};
}(t, n)) : oe(function(e) {
let t = M(e), n = N(e), r = e.ownerDocument.body, i = C(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth), a = C(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight), o = -n.scrollLeft + Ce(e), s = -n.scrollTop;
return S(r).direction === "rtl" && (o += C(t.clientWidth, r.clientWidth) - i), {
width: i,
height: a,
x: o,
y: s
};
}(M(e)));
}
function Ee(e) {
return D(e) && S(e).position !== "fixed" ? e.offsetParent : null;
}
function De(e) {
let t = x(e), n = Ee(e);
for (; n && _e(n) && S(n).position === "static";) n = Ee(n);
return n && (T(n) === "html" || T(n) === "body" && S(n).position === "static" && !ve(n)) ? t : n || function(e) {
let t = P(e);
for (; D(t) && !be(t);) {
if (ve(t)) return t;
t = P(t);
}
return null;
}(e) || t;
}
function Oe(e, t, n) {
let r = D(t), i = M(t), a = j(e, !0, n === "fixed", t), o = {
scrollLeft: 0,
scrollTop: 0
}, s = {
x: 0,
y: 0
};
if (r || !r && n !== "fixed") if ((T(t) !== "body" || k(i)) && (o = N(t)), D(t)) {
let e = j(t, !0);
s.x = e.x + t.clientLeft, s.y = e.y + t.clientTop;
} else i && (s.x = Ce(i));
return {
x: a.left + o.scrollLeft - s.x,
y: a.top + o.scrollTop - s.y,
width: a.width,
height: a.height
};
}
var ke = {
getClippingRect: function(e) {
let { element: t, boundary: n, rootBoundary: r, strategy: i } = e, a = [...n === "clippingAncestors" ? function(e, t) {
let n = t.get(e);
if (n) return n;
let r = F(e).filter(((e) => O(e) && T(e) !== "body")), i = null, a = S(e).position === "fixed", o = a ? P(e) : e;
for (; O(o) && !be(o);) {
let e = S(o), t = ve(o);
(a ? t || i : t || e.position !== "static" || !i || !["absolute", "fixed"].includes(i.position)) ? i = e : r = r.filter(((e) => e !== o)), o = P(o);
}
return t.set(e, r), r;
}(t, this._c) : [].concat(n), r], o = a[0], s = a.reduce(((e, n) => {
let r = Te(t, n, i);
return e.top = C(r.top, e.top), e.right = fe(r.right, e.right), e.bottom = fe(r.bottom, e.bottom), e.left = C(r.left, e.left), e;
}), Te(t, o, i));
return {
width: s.right - s.left,
height: s.bottom - s.top,
x: s.left,
y: s.top
};
},
convertOffsetParentRelativeRectToViewportRelativeRect: function(e) {
let { rect: t, offsetParent: n, strategy: r } = e, i = D(n), a = M(n);
if (n === a) return t;
let o = {
scrollLeft: 0,
scrollTop: 0
}, s = {
x: 1,
y: 1
}, c = {
x: 0,
y: 0
};
if ((i || !i && r !== "fixed") && ((T(n) !== "body" || k(a)) && (o = N(n)), D(n))) {
let e = j(n);
s = A(n), c.x = e.x + n.clientLeft, c.y = e.y + n.clientTop;
}
return {
width: t.width * s.x,
height: t.height * s.y,
x: t.x * s.x - o.scrollLeft * s.x + c.x,
y: t.y * s.y - o.scrollTop * s.y + c.y
};
},
isElement: O,
getDimensions: function(e) {
return D(e) ? pe(e) : e.getBoundingClientRect();
},
getOffsetParent: De,
getDocumentElement: M,
getScale: A,
async getElementRects(e) {
let { reference: t, floating: n, strategy: r } = e, i = this.getOffsetParent || De, a = this.getDimensions;
return {
reference: Oe(t, await i(n), r),
floating: {
x: 0,
y: 0,
...await a(n)
}
};
},
getClientRects: (e) => Array.from(e.getClientRects()),
isRTL: (e) => S(e).direction === "rtl"
}, Ae = (e, t, n) => {
let r = /* @__PURE__ */ new Map(), i = {
platform: ke,
...n
}, a = {
...i.platform,
_c: r
};
return le(e, t, {
...i,
platform: a
});
};
//#endregion
//#region node_modules/floating-vue/dist/floating-vue.mjs
function je(e, t) {
for (let n in t) Object.prototype.hasOwnProperty.call(t, n) && (typeof t[n] == "object" && e[n] ? je(e[n], t[n]) : e[n] = t[n]);
}
var I = {
disabled: !1,
distance: 5,
skidding: 0,
container: "body",
boundary: void 0,
instantMove: !1,
disposeTimeout: 150,
popperTriggers: [],
strategy: "absolute",
preventOverflow: !0,
flip: !0,
shift: !0,
overflowPadding: 0,
arrowPadding: 0,
arrowOverflow: !0,
autoHideOnMousedown: !1,
themes: {
tooltip: {
placement: "top",
triggers: [
"hover",
"focus",
"touch"
],
hideTriggers: (e) => [...e, "click"],
delay: {
show: 200,
hide: 0
},
handleResize: !1,
html: !1,
loadingContent: "..."
},
dropdown: {
placement: "bottom",
triggers: ["click"],
delay: 0,
handleResize: !0,
autoHide: !0
},
menu: {
$extend: "dropdown",
triggers: ["hover", "focus"],
popperTriggers: ["hover"],
delay: {
show: 0,
hide: 400
}
}
}
};
function L(e, t) {
let n = I.themes[e] || {}, r;
do
r = n[t], typeof r > "u" ? n.$extend ? n = I.themes[n.$extend] || {} : (n = null, r = I[t]) : n = null;
while (n);
return r;
}
function Me(e) {
let t = [e], n = I.themes[e] || {};
do
n.$extend && !n.$resetCss ? (t.push(n.$extend), n = I.themes[n.$extend] || {}) : n = null;
while (n);
return t.map((e) => `v-popper--theme-${e}`);
}
function Ne(e) {
let t = [e], n = I.themes[e] || {};
do
n.$extend ? (t.push(n.$extend), n = I.themes[n.$extend] || {}) : n = null;
while (n);
return t;
}
var R = !1;
if (typeof window < "u") {
R = !1;
try {
let e = Object.defineProperty({}, "passive", { get() {
R = !0;
} });
window.addEventListener("test", null, e);
} catch {}
}
var Pe = !1;
typeof window < "u" && typeof navigator < "u" && (Pe = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream);
var Fe = [
"auto",
"top",
"bottom",
"left",
"right"
].reduce((e, t) => e.concat([
t,
`${t}-start`,
`${t}-end`
]), []), Ie = {
hover: "mouseenter",
focus: "focus",
click: "click",
touch: "touchstart",
pointer: "pointerdown"
}, Le = {
hover: "mouseleave",
focus: "blur",
click: "click",
touch: "touchend",
pointer: "pointerup"
};
function Re(e, t) {
let n = e.indexOf(t);
n !== -1 && e.splice(n, 1);
}
function z() {
return new Promise((e) => requestAnimationFrame(() => {
requestAnimationFrame(e);
}));
}
var B = [], V = null, ze = {};
function Be(e) {
let t = ze[e];
return t ||= ze[e] = [], t;
}
var H = function() {};
typeof window < "u" && (H = window.Element);
function U(e) {
return function(t) {
return L(t.theme, e);
};
}
var Ve = "__floating-vue__popper", He = () => u({
name: "VPopper",
provide() {
return { [Ve]: { parentPopper: this } };
},
inject: { [Ve]: { default: null } },
props: {
theme: {
type: String,
required: !0
},
targetNodes: {
type: Function,
required: !0
},
referenceNode: {
type: Function,
default: null
},
popperNode: {
type: Function,
required: !0
},
shown: {
type: Boolean,
default: !1
},
showGroup: {
type: String,
default: null
},
ariaId: { default: null },
disabled: {
type: Boolean,
default: U("disabled")
},
positioningDisabled: {
type: Boolean,
default: U("positioningDisabled")
},
placement: {
type: String,
default: U("placement"),
validator: (e) => Fe.includes(e)
},
delay: {
type: [
String,
Number,
Object
],
default: U("delay")
},
distance: {
type: [Number, String],
default: U("distance")
},
skidding: {
type: [Number, String],
default: U("skidding")
},
triggers: {
type: Array,
default: U("triggers")
},
showTriggers: {
type: [Array, Function],
default: U("showTriggers")
},
hideTriggers: {
type: [Array, Function],
default: U("hideTriggers")
},
popperTriggers: {
type: Array,
default: U("popperTriggers")
},
popperShowTriggers: {
type: [Array, Function],
default: U("popperShowTriggers")
},
popperHideTriggers: {
type: [Array, Function],
default: U("popperHideTriggers")
},
container: {
type: [
String,
Object,
H,
Boolean
],
default: U("container")
},
boundary: {
type: [String, H],
default: U("boundary")
},
strategy: {
type: String,
validator: (e) => ["absolute", "fixed"].includes(e),
default: U("strategy")
},
autoHide: {
type: [Boolean, Function],
default: U("autoHide")
},
handleResize: {
type: Boolean,
default: U("handleResize")
},
instantMove: {
type: Boolean,
default: U("instantMove")
},
eagerMount: {
type: Boolean,
default: U("eagerMount")
},
popperClass: {
type: [
String,
Array,
Object
],
default: U("popperClass")
},
computeTransformOrigin: {
type: Boolean,
default: U("computeTransformOrigin")
},
autoMinSize: {
type: Boolean,
default: U("autoMinSize")
},
autoSize: {
type: [Boolean, String],
default: U("autoSize")
},
autoMaxSize: {
type: Boolean,
default: U("autoMaxSize")
},
autoBoundaryMaxSize: {
type: Boolean,
default: U("autoBoundaryMaxSize")
},
preventOverflow: {
type: Boolean,
default: U("preventOverflow")
},
overflowPadding: {
type: [Number, String],
default: U("overflowPadding")
},
arrowPadding: {
type: [Number, String],
default: U("arrowPadding")
},
arrowOverflow: {
type: Boolean,
default: U("arrowOverflow")
},
flip: {
type: Boolean,
default: U("flip")
},
shift: {
type: Boolean,
default: U("shift")
},
shiftCrossAxis: {
type: Boolean,
default: U("shiftCrossAxis")
},
noAutoFocus: {
type: Boolean,
default: U("noAutoFocus")
},
disposeTimeout: {
type: Number,
default: U("disposeTimeout")
}
},
emits: {
show: () => !0,
hide: () => !0,
"update:shown": (e) => !0,
"apply-show": () => !0,
"apply-hide": () => !0,
"close-group": () => !0,
"close-directive": () => !0,
"auto-hide": () => !0,
resize: () => !0
},
data() {
return {
isShown: !1,
isMounted: !1,
skipTransition: !1,
classes: {
showFrom: !1,
showTo: !1,
hideFrom: !1,
hideTo: !0
},
result: {
x: 0,
y: 0,
placement: "",
strategy: this.strategy,
arrow: {
x: 0,
y: 0,
centerOffset: 0
},
transformOrigin: null
},
randomId: `popper_${[Math.random(), Date.now()].map((e) => e.toString(36).substring(2, 10)).join("_")}`,
shownChildren: /* @__PURE__ */ new Set(),
lastAutoHide: !0,
pendingHide: !1,
containsGlobalTarget: !1,
isDisposed: !0,
mouseDownContains: !1
};
},
computed: {
popperId() {
return this.ariaId == null ? this.randomId : this.ariaId;
},
shouldMountContent() {
return this.eagerMount || this.isMounted;
},
slotData() {
return {
popperId: this.popperId,
isShown: this.isShown,
shouldMountContent: this.shouldMountContent,
skipTransition: this.skipTransition,
autoHide: typeof this.autoHide == "function" ? this.lastAutoHide : this.autoHide,
show: this.show,
hide: this.hide,
handleResize: this.handleResize,
onResize: this.onResize,
classes: {
...this.classes,
popperClass: this.popperClass
},
result: this.positioningDisabled ? null : this.result,
attrs: this.$attrs
};
},
parentPopper() {
return this[Ve]?.parentPopper;
},
hasPopperShowTriggerHover() {
return this.popperTriggers?.includes("hover") || this.popperShowTriggers?.includes("hover");
}
},
watch: {
shown: "$_autoShowHide",
disabled(e) {
e ? this.dispose() : this.init();
},
async container() {
this.isShown && (this.$_ensureTeleport(), await this.$_computePosition());
},
triggers: {
handler: "$_refreshListeners",
deep: !0
},
positioningDisabled: "$_refreshListeners",
...[
"placement",
"distance",
"skidding",
"boundary",
"strategy",
"overflowPadding",
"arrowPadding",
"preventOverflow",
"shift",
"shiftCrossAxis",
"flip"
].reduce((e, t) => (e[t] = "$_computePosition", e), {})
},
created() {
this.autoMinSize && console.warn("[floating-vue] `autoMinSize` option is deprecated. Use `autoSize=\"min\"` instead."), this.autoMaxSize && console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead.");
},
mounted() {
this.init(), this.$_detachPopperNode();
},
activated() {
this.$_autoShowHide();
},
deactivated() {
this.hide();
},
beforeUnmount() {
this.dispose();
},
methods: {
show({ event: e = null, skipDelay: t = !1, force: n = !1 } = {}) {
var r;
(r = this.parentPopper) != null && r.lockedChild && this.parentPopper.lockedChild !== this || (this.pendingHide = !1, (n || !this.disabled) && (this.parentPopper?.lockedChild === this && (this.parentPopper.lockedChild = null), this.$_scheduleShow(e, t), this.$emit("show"), this.$_showFrameLocked = !0, requestAnimationFrame(() => {
this.$_showFrameLocked = !1;
})), this.$emit("update:shown", !0));
},
hide({ event: e = null, skipDelay: t = !1 } = {}) {
if (!this.$_hideInProgress) {
if (this.shownChildren.size > 0) {
this.pendingHide = !0;
return;
}
if (this.hasPopperShowTriggerHover && this.$_isAimingPopper()) {
this.parentPopper && (this.parentPopper.lockedChild = this, clearTimeout(this.parentPopper.lockedChildTimer), this.parentPopper.lockedChildTimer = setTimeout(() => {
this.parentPopper.lockedChild === this && (this.parentPopper.lockedChild.hide({ skipDelay: t }), this.parentPopper.lockedChild = null);
}, 1e3));
return;
}
this.parentPopper?.lockedChild === this && (this.parentPopper.lockedChild = null), this.pendingHide = !1, this.$_scheduleHide(e, t), this.$emit("hide"), this.$emit("update:shown", !1);
}
},
init() {
this.isDisposed && (this.isDisposed = !1, this.isMounted = !1, this.$_events = [], this.$_preventShow = !1, this.$_referenceNode = this.referenceNode?.call(this) ?? this.$el, this.$_targetNodes = this.targetNodes().filter((e) => e.nodeType === e.ELEMENT_NODE), this.$_popperNode = this.popperNode(), this.$_innerNode = this.$_popperNode.querySelector(".v-popper__inner"), this.$_arrowNode = this.$_popperNode.querySelector(".v-popper__arrow-container"), this.$_swapTargetAttrs("title", "data-original-title"), this.$_detachPopperNode(), this.triggers.length && this.$_addEventListeners(), this.shown && this.show());
},
dispose() {
this.isDisposed || (this.isDisposed = !0, this.$_removeEventListeners(), this.hide({ skipDelay: !0 }), this.$_detachPopperNode(), this.isMounted = !1, this.isShown = !1, this.$_updateParentShownChildren(!1), this.$_swapTargetAttrs("data-original-title", "title"));
},
async onResize() {
this.isShown && (await this.$_computePosition(), this.$emit("resize"));
},
async $_computePosition() {
if (this.isDisposed || this.positioningDisabled) return;
let e = {
strategy: this.strategy,
middleware: []
};
(this.distance || this.skidding) && e.middleware.push(ae({
mainAxis: this.distance,
crossAxis: this.skidding
}));
let t = this.placement.startsWith("auto");
if (t ? e.middleware.push(ie({ alignment: this.placement.split("-")[1] ?? "" })) : e.placement = this.placement, this.preventOverflow && (this.shift && e.middleware.push(ce({
padding: this.overflowPadding,
boundary: this.boundary,
crossAxis: this.shiftCrossAxis
})), !t && this.flip && e.middleware.push(ue({
padding: this.overflowPadding,
boundary: this.boundary
}))), e.middleware.push(se({
element: this.$_arrowNode,
padding: this.arrowPadding
})), this.arrowOverflow && e.middleware.push({
name: "arrowOverflow",
fn: ({ placement: e, rects: t, middlewareData: n }) => {
let r, { centerOffset: i } = n.arrow;
return r = e.startsWith("top") || e.startsWith("bottom") ? Math.abs(i) > t.reference.width / 2 : Math.abs(i) > t.reference.height / 2, { data: { overflow: r } };
}
}), this.autoMinSize || this.autoSize) {
let t = this.autoSize ? this.autoSize : this.autoMinSize ? "min" : null;
e.middleware.push({
name: "autoSize",
fn: ({ rects: e, placement: n, middlewareData: r }) => {
var i;
if ((i = r.autoSize) != null && i.skip) return {};
let a, o;
return n.startsWith("top") || n.startsWith("bottom") ? a = e.reference.width : o = e.reference.height, this.$_innerNode.style[t === "min" ? "minWidth" : t === "max" ? "maxWidth" : "width"] = a == null ? null : `${a}px`, this.$_innerNode.style[t === "min" ? "minHeight" : t === "max" ? "maxHeight" : "height"] = o == null ? null : `${o}px`, {
data: { skip: !0 },
reset: { rects: !0 }
};
}
});
}
(this.autoMaxSize || this.autoBoundaryMaxSize) && (this.$_innerNode.style.maxWidth = null, this.$_innerNode.style.maxHeight = null, e.middleware.push(de({
boundary: this.boundary,
padding: this.overflowPadding,
apply: ({ availableWidth: e, availableHeight: t }) => {
this.$_innerNode.style.maxWidth = e == null ? null : `${e}px`, this.$_innerNode.style.maxHeight = t == null ? null : `${t}px`;
}
})));
let n = await Ae(this.$_referenceNode, this.$_popperNode, e);
Object.assign(this.result, {
x: n.x,
y: n.y,
placement: n.placement,
strategy: n.strategy,
arrow: {
...n.middlewareData.arrow,
...n.middlewareData.arrowOverflow
}
});
},
$_scheduleShow(e, t = !1) {
if (this.$_updateParentShownChildren(!0), this.$_hideInProgress = !1, clearTimeout(this.$_scheduleTimer), V && this.instantMove && V.instantMove && V !== this.parentPopper) {
V.$_applyHide(!0), this.$_applyShow(!0);
return;
}
t ? this.$_applyShow() : this.$_scheduleTimer = setTimeout(this.$_applyShow.bind(this), this.$_computeDelay("show"));
},
$_scheduleHide(e, t = !1) {
if (this.shownChildren.size > 0) {
this.pendingHide = !0;
return;
}
this.$_updateParentShownChildren(!1), this.$_hideInProgress = !0, clearTimeout(this.$_scheduleTimer), this.isShown && (V = this), t ? this.$_applyHide() : this.$_scheduleTimer = setTimeout(this.$_applyHide.bind(this), this.$_computeDelay("hide"));
},
$_computeDelay(e) {
let t = this.delay;
return parseInt(t && t[e] || t || 0);
},
async $_applyShow(e = !1) {
clearTimeout(this.$_disposeTimer), clearTimeout(this.$_scheduleTimer), this.skipTransition = e, !this.isShown && (this.$_ensureTeleport(), await z(), await this.$_computePosition(), await this.$_applyShowEffect(), this.positioningDisabled || this.$_registerEventListeners([...F(this.$_referenceNode), ...F(this.$_popperNode)], "scroll", () => {
this.$_computePosition();
}));
},
async $_applyShowEffect() {
if (this.$_hideInProgress) return;
if (this.computeTransformOrigin) {
let e = this.$_referenceNode.getBoundingClientRect(), t = this.$_popperNode.querySelector(".v-popper__wrapper"), n = t.parentNode.getBoundingClientRect(), r = e.x + e.width / 2 - (n.left + t.offsetLeft), i = e.y + e.height / 2 - (n.top + t.offsetTop);
this.result.transformOrigin = `${r}px ${i}px`;
}
this.isShown = !0, this.$_applyAttrsToTarget({
"aria-describedby": this.popperId,
"data-popper-shown": ""
});
let e = this.showGroup;
if (e) {
let t;
for (let n = 0; n < B.length; n++) t = B[n], t.showGroup !== e && (t.hide(), t.$emit("close-group"));
}
B.push(this), document.body.classList.add("v-popper--some-open");
for (let e of Ne(this.theme)) Be(e).push(this), document.body.classList.add(`v-popper--some-open--${e}`);
this.$emit("apply-show"), this.classes.showFrom = !0, this.classes.showTo = !1, this.classes.hideFrom = !1, this.classes.hideTo = !1, await z(), this.classes.showFrom = !1, this.classes.showTo = !0, this.noAutoFocus || this.$_popperNode.focus();
},
async $_applyHide(e = !1) {
if (this.shownChildren.size > 0) {
this.pendingHide = !0, this.$_hideInProgress = !1;
return;
}
if (clearTimeout(this.$_scheduleTimer), !this.isShown) return;
this.skipTransition = e, Re(B, this), B.length === 0 && document.body.classList.remove("v-popper--some-open");
for (let e of Ne(this.theme)) {
let t = Be(e);
Re(t, this), t.length === 0 && document.body.classList.remove(`v-popper--some-open--${e}`);
}
V === this && (V = null), this.isShown = !1, this.$_applyAttrsToTarget({
"aria-describedby": void 0,
"data-popper-shown": void 0
}), clearTimeout(this.$_disposeTimer);
let t = this.disposeTimeout;
t !== null && (this.$_disposeTimer = setTimeout(() => {
this.$_popperNode && (this.$_detachPopperNode(), this.isMounted = !1);
}, t)), this.$_removeEventListeners("scroll"), this.$emit("apply-hide"), this.classes.showFrom = !1, this.classes.showTo = !1, this.classes.hideFrom = !0, this.classes.hideTo = !1, await z(), this.classes.hideFrom = !1, this.classes.hideTo = !0;
},
$_autoShowHide() {
this.shown ? this.show() : this.hide();
},
$_ensureTeleport() {
if (this.isDisposed) return;
let e = this.container;
if (typeof e == "string" ? e = window.document.querySelector(e) : e === !1 && (e = this.$_targetNodes[0].parentNode), !e) throw Error("No container for popover: " + this.container);
e.appendChild(this.$_popperNode), this.isMounted = !0;
},
$_addEventListeners() {
let e = (e) => {
this.isShown && !this.$_hideInProgress || (e.usedByTooltip = !0, !this.$_preventShow && this.show({ event: e }));
};
this.$_registerTriggerListeners(this.$_targetNodes, Ie, this.triggers, this.showTriggers, e), this.$_registerTriggerListeners([this.$_popperNode], Ie, this.popperTriggers, this.popperShowTriggers, e);
let t = (e) => {
e.usedByTooltip || this.hide({ event: e });
};
this.$_registerTriggerListeners(this.$_targetNodes, Le, this.triggers, this.hideTriggers, t), this.$_registerTriggerListeners([this.$_popperNode], Le, this.popperTriggers, this.popperHideTriggers, t);
},
$_registerEventListeners(e, t, n) {
this.$_events.push({
targetNodes: e,
eventType: t,
handler: n
}), e.forEach((e) => e.addEventListener(t, n, R ? { passive: !0 } : void 0));
},
$_registerTriggerListeners(e, t, n, r, i) {
let a = n;
r != null && (a = typeof r == "function" ? r(a) : r), a.forEach((n) => {
let r = t[n];
r && this.$_registerEventListeners(e, r, i);
});
},
$_removeEventListeners(e) {
let t = [];
this.$_events.forEach((n) => {
let { targetNodes: r, eventType: i, handler: a } = n;
!e || e === i ? r.forEach((e) => e.removeEventListener(i, a)) : t.push(n);
}), this.$_events = t;
},
$_refreshListeners() {
this.isDisposed || (this.$_removeEventListeners(), this.$_addEventListeners());
},
$_handleGlobalClose(e, t = !1) {
this.$_showFrameLocked || (this.hide({ event: e }), e.closePopover ? this.$emit("close-directive") : this.$emit("auto-hide"), t && (this.$_preventShow = !0, setTimeout(() => {
this.$_preventShow = !1;
}, 300)));
},
$_detachPopperNode() {
this.$_popperNode.parentNode && this.$_popperNode.parentNode.removeChild(this.$_popperNode);
},
$_swapTargetAttrs(e, t) {
for (let n of this.$_targetNodes) {
let r = n.getAttribute(e);
r && (n.removeAttribute(e), n.setAttribute(t, r));
}
},
$_applyAttrsToTarget(e) {
for (let t of this.$_targetNodes) for (let n in e) {
let r = e[n];
r == null ? t.removeAttribute(n) : t.setAttribute(n, r);
}
},
$_updateParentShownChildren(e) {
let t = this.parentPopper;
for (; t;) e ? t.shownChildren.add(this.randomId) : (t.shownChildren.delete(this.randomId), t.pendingHide && t.hide()), t = t.parentPopper;
},
$_isAimingPopper() {
let e = this.$_referenceNode.getBoundingClientRect();
if (K >= e.left && K <= e.right && q >= e.top && q <= e.bottom) {
let e = this.$_popperNode.getBoundingClientRect(), t = K - W, n = q - G, r = e.left + e.width / 2 - W + (e.top + e.height / 2) - G + e.width + e.height, i = W + t * r, a = G + n * r;
return J(W, G, i, a, e.left, e.top, e.left, e.bottom) || J(W, G, i, a, e.left, e.top, e.right, e.top) || J(W, G, i, a, e.right, e.top, e.right, e.bottom) || J(W, G, i, a, e.left, e.bottom, e.right, e.bottom);
}
return !1;
}
},
render() {
return this.$slots.default(this.slotData);
}
});
if (typeof document < "u" && typeof window < "u") {
if (Pe) {
let e = R ? {
passive: !0,
capture: !0
} : !0;
document.addEventListener("touchstart", (e) => Ue(e, !0), e), document.addEventListener("touchend", (e) => We(e, !0), e);
} else window.addEventListener("mousedown", (e) => Ue(e, !1), !0), window.addEventListener("click", (e) => We(e, !1), !0);
window.addEventListener("resize", Je);
}
function Ue(e, t) {
if (I.autoHideOnMousedown) Ge(e, t);
else for (let t = 0; t < B.length; t++) {
let n = B[t];
try {
n.mouseDownContains = n.popperNode().contains(e.target);
} catch {}
}
}
function We(e, t) {
I.autoHideOnMousedown || Ge(e, t);
}
function Ge(e, t) {
let n = {};
for (let r = B.length - 1; r >= 0; r--) {
let i = B[r];
try {
let r = i.containsGlobalTarget = i.mouseDownContains || i.popperNode().contains(e.target);
i.pendingHide = !1, requestAnimationFrame(() => {
if (i.pendingHide = !1, !n[i.randomId] && Ke(i, r, e)) {
if (i.$_handleGlobalClose(e, t), !e.closeAllPopover && e.closePopover && r) {
let e = i.parentPopper;
for (; e;) n[e.randomId] = !0, e = e.parentPopper;
return;
}
let a = i.parentPopper;
for (; a && Ke(a, a.containsGlobalTarget, e);) a.$_handleGlobalClose(e, t), a = a.parentPopper;
}
});
} catch {}
}
}
function Ke(e, t, n) {
return n.closeAllPopover || n.closePopover && t || qe(e, n) && !t;
}
function qe(e, t) {
if (typeof e.autoHide == "function") {
let n = e.autoHide(t);
return e.lastAutoHide = n, n;
}
return e.autoHide;
}
function Je() {
for (let e = 0; e < B.length; e++) B[e].$_computePosition();
}
var W = 0, G = 0, K = 0, q = 0;
typeof window < "u" && window.addEventListener("mousemove", (e) => {
W = K, G = q, K = e.clientX, q = e.clientY;
}, R ? { passive: !0 } : void 0);
function J(e, t, n, r, i, a, o, s) {
let c = ((o - i) * (t - a) - (s - a) * (e - i)) / ((s - a) * (n - e) - (o - i) * (r - t)), l = ((n - e) * (t - a) - (r - t) * (e - i)) / ((s - a) * (n - e) - (o - i) * (r - t));
return c >= 0 && c <= 1 && l >= 0 && l <= 1;
}
var Ye = { extends: He() }, Y = (e, t) => {
let n = e.__vccOpts || e;
for (let [e, r] of t) n[e] = r;
return n;
};
function Xe(e, t, r, i, o, s) {
return m(), v("div", {
ref: "reference",
class: n(["v-popper", { "v-popper--shown": e.slotData.isShown }])
}, [_(e.$slots, "default", l(a(e.slotData)))], 2);
}
var Ze = /* @__PURE__ */ Y(Ye, [["render", Xe]]);
function Qe() {
var e = window.navigator.userAgent, t = e.indexOf("MSIE ");
if (t > 0) return parseInt(e.substring(t + 5, e.indexOf(".", t)), 10);
if (e.indexOf("Trident/") > 0) {
var n = e.indexOf("rv:");
return parseInt(e.substring(n + 3, e.indexOf(".", n)), 10);
}
var r = e.indexOf("Edge/");
return r > 0 ? parseInt(e.substring(r + 5, e.indexOf(".", r)), 10) : -1;
}
var X;
function $e() {
$e.init || ($e.init = !0, X = Qe() !== -1);
}
var Z = {
name: "ResizeObserver",
props: {
emitOnMount: {
type: Boolean,
default: !1
},
ignoreWidth: {
type: Boolean,
default: !1
},
ignoreHeight: {
type: Boolean,
default: !1
}
},
emits: ["notify"],
mounted() {
$e(), i(() => {
this._w = this.$el.offsetWidth, this._h = this.$el.offsetHeight, this.emitOnMount && this.emitSize();
});
let e = document.createElement("object");
this._resizeObject = e, e.setAttribute("aria-hidden", "true"), e.setAttribute("tabindex", -1), e.onload = this.addResizeHandlers, e.type = "text/html", X && this.$el.appendChild(e), e.data = "about:blank", X || this.$el.appendChild(e);
},
beforeUnmount() {
this.removeResizeHandlers();
},
methods: {
compareAndNotify() {
(!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) && (this._w = this.$el.offsetWidth, this._h = this.$el.offsetHeight, this.emitSize());
},
emitSize() {
this.$emit("notify", {
width: this._w,
height: this._h
});
},
addResizeHandlers() {
this._resizeObject.contentDocument.defaultView.addEventListener("resize", this.compareAndNotify), this.compareAndNotify();
},
removeResizeHandlers() {
this._resizeObject && this._resizeObject.onload && (!X && this._resizeObject.contentDocument && this._resizeObject.contentDocument.defaultView.removeEventListener("resize", this.compareAndNotify), this.$el.removeChild(this._resizeObject), this._resizeObject.onload = null, this._resizeObject = null);
}
}
}, et = /* @__PURE__ */ te("data-v-b329ee4c");
d("data-v-b329ee4c");
var tt = {
class: "resize-observer",
tabindex: "-1"
};
p(), Z.render = /* @__PURE__ */ et((e, n, r, i, a, o) => (m(), t("div", tt))), Z.__scopeId = "data-v-b329ee4c", Z.__file = "src/components/ResizeObserver.vue";
var nt = (e = "theme") => ({ computed: { themeClass() {
return Me(this[e]);
} } }), rt = u({
name: "VPopperContent",
components: { ResizeObserver: Z },
mixins: [nt()],
props: {
popperId: String,
theme: String,
shown: Boolean,
mounted: Boolean,
skipTransition: Boolean,
autoHide: Boolean,
handleResize: Boolean,
classes: Object,
result: Object
},
emits: ["hide", "resize"],
methods: { toPx(e) {
return e != null && !isNaN(e) ? `${e}px` : null;
} }
}), it = [
"id",
"aria-hidden",
"tabindex",
"data-popper-placement"
], at = {
ref: "inner",
class: "v-popper__inner"
}, ot = [/* @__PURE__ */ r("div", { class: "v-popper__arrow-outer" }, null, -1), /* @__PURE__ */ r("div", { class: "v-popper__arrow-inner" }, null, -1)];
function st(e, i, a, o, s, l) {
let u = b("ResizeObserver");
return m(), v("div", {
id: e.popperId,
ref: "popover",
class: n(["v-popper__popper", [
e.themeClass,
e.classes.popperClass,
{
"v-popper__popper--shown": e.shown,
"v-popper__popper--hidden": !e.shown,
"v-popper__popper--show-from": e.classes.showFrom,
"v-popper__popper--show-to": e.classes.showTo,
"v-popper__popper--hide-from": e.classes.hideFrom,
"v-popper__popper--hide-to": e.classes.hideTo,
"v-popper__popper--skip-transition": e.skipTransition,
"v-popper__popper--arrow-overflow": e.result && e.result.arrow.overflow,
"v-popper__popper--no-positioning": !e.result
}
]]),
style: y(e.result ? {
position: e.result.strategy,
transform: `translate3d(${Math.round(e.result.x)}px,${Math.round(e.result.y)}px,0)`
} : void 0),
"aria-hidden": e.shown ? "false" : "true",
tabindex: e.autoHide ? 0 : void 0,
"data-popper-placement": e.result ? e.result.placement : void 0,
onKeyup: i[2] ||= ne((t) => e.autoHide && e.$emit("hide"), ["esc"])
}, [r("div", {
class: "v-popper__backdrop",
onClick: i[0] ||= (t) => e.autoHide && e.$emit("hide")
}), r("div", {
class: "v-popper__wrapper",
style: y(e.result ? { transformOrigin: e.result.transformOrigin } : void 0)
}, [r("div", at, [e.mounted ? (m(), v(re, { key: 0 }, [r("div", null, [_(e.$slots, "default")]), e.handleResize ? (m(), t(u, {
key: 0,
onNotify: i[1] ||= (t) => e.$emit("resize", t)
})) : c("", !0)], 64)) : c("", !0)], 512), r("div", {
ref: "arrow",
class: "v-popper__arrow-container",
style: y(e.result ? {
left: e.toPx(e.result.arrow.x),
top: e.toPx(e.result.arrow.y)
} : void 0)
}, ot, 4)], 4)], 46, it);
}
var ct = /* @__PURE__ */ Y(rt, [["render", st]]), lt = { methods: {
show(...e) {
return this.$refs.popper.show(...e);
},
hide(...e) {
return this.$refs.popper.hide(...e);
},
dispose(...e) {
return this.$refs.popper.dispose(...e);
},
onResize(...e) {
return this.$refs.popper.onResize(...e);
}
} }, ut = function() {};
typeof window < "u" && (ut = window.Element);
var dt = u({
name: "VPopperWrapper",
components: {
Popper: Ze,
PopperContent: ct
},
mixins: [lt, nt("finalTheme")],
props: {
theme: {
type: String,
default: null
},
referenceNode: {
type: Function,
default: null
},
shown: {
type: Boolean,
default: !1
},
showGroup: {
type: String,
default: null
},
ariaId: { default: null },
disabled: {
type: Boolean,
default: void 0
},
positioningDisabled: {
type: Boolean,
default: void 0
},
placement: {
type: String,
default: void 0
},
delay: {
type: [
String,
Number,
Object
],
default: void 0
},
distance: {
type: [Number, String],
default: void 0
},
skidding: {
type: [Number, String],
default: void 0
},
triggers: {
type: Array,
default: void 0
},
showTriggers: {
type: [Array, Function],
default: void 0
},
hideTriggers: {
type: [Array, Function],
default: void 0
},
popperTriggers: {
type: Array,
default: void 0
},
popperShowTriggers: {
type: [Array, Function],
default: void 0
},
popperHideTriggers: {
type: [Array, Function],
default: void 0
},
container: {
type: [
String,
Object,
ut,
Boolean
],
default: void 0
},
boundary: {
type: [String, ut],
default: void 0
},
strategy: {
type: String,
default: void 0
},
autoHide: {
type: [Boolean, Function],
default: void 0
},
handleResize: {
type: Boolean,
default: void 0
},
instantMove: {
type: Boolean,
default: void 0
},
eagerMount: {
type: Boolean,
default: void 0
},
popperClass: {
type: [
String,
Array,
Object
],
default: void 0
},
computeTransformOrigin: {
type: Boolean,
default: void 0
},
autoMinSize: {
type: Boolean,
default: void 0
},
autoSize: {
type: [Boolean, String],
default: void 0
},
autoMaxSize: {
type: Boolean,
default: void 0
},
autoBoundaryMaxSize: {
type: Boolean,
default: void 0
},
preventOverflow: {
type: Boolean,
default: void 0
},
overflowPadding: {
type: [Number, String],
default: void 0
},
arrowPadding: {
type: [Number, String],
default: void 0
},
arrowOverflow: {
type: Boolean,
default: void 0
},
flip: {
type: Boolean,
default: void 0
},
shift: {
type: Boolean,
default: void 0
},
shiftCrossAxis: {
type: Boolean,
default: void 0
},
noAutoFocus: {
type: Boolean,
default: void 0
},
disposeTimeout: {
type: Number,
default: void 0
}
},
emits: {
show: () => !0,
hide: () => !0,
"update:shown": (e) => !0,
"apply-show": () => !0,
"apply-hide": () => !0,
"close-group": () => !0,
"close-directive": () => !0,
"auto-hide": () => !0,
resize: () => !0
},
computed: { finalTheme() {
return this.theme ?? this.$options.vPopperTheme;
} },
methods: { getTargetNodes() {
return Array.from(this.$el.children).filter((e) => e !== this.$refs.popperContent.$el);
} }
});
function ft(e, n, r, i, a, o) {
let c = b("PopperContent"), l = b("Popper");
return m(), t(l, f({ ref: "popper" }, e.$props, {
theme: e.finalTheme,
"target-nodes": e.getTargetNodes,
"popper-node": () => e.$refs.popperContent.$el,
class: [e.themeClass],
onShow: n[0] ||= () => e.$emit("show"),
onHide: n[1] ||= () => e.$emit("hide"),
"onUpdate:shown": n[2] ||= (t) => e.$emit("update:shown", t),
onApplyShow: n[3] ||= () => e.$emit("apply-show"),
onApplyHide: n[4] ||= () => e.$emit("apply-hide"),
onCloseGroup: n[5] ||= () => e.$emit("close-group"),
onCloseDirective: n[6] ||= () => e.$emit("close-directive"),
onAutoHide: n[7] ||= () => e.$emit("auto-hide"),
onResize: n[8] ||= () => e.$emit("resize")
}), {
default: g(({ popperId: t, isShown: n, shouldMountContent: r, skipTransition: i, autoHide: a, show: o, hide: l, handleResize: u, onResize: d, classes: f, result: p }) => [_(e.$slots, "default", {
shown: n,
show: o,
hide: l
}), s(c, {
ref: "popperContent",
"popper-id": t,
theme: e.finalTheme,
shown: n,
mounted: r,
"skip-transition": i,
"auto-hide": a,
"handle-resize": u,
classes: f,
result: p,
onHide: l,
onResize: d
}, {
default: g(() => [_(e.$slots, "popper", {
shown: n,
hide: l
})]),
_: 2
}, 1032, [
"popper-id",
"theme",
"shown",
"mounted",
"skip-transition",
"auto-hide",
"handle-resize",
"classes",
"result",
"onHide",
"onResize"
])]),
_: 3
}, 16, [
"theme",
"target-nodes",
"popper-node",
"class"
]);
}
var pt = /* @__PURE__ */ Y(dt, [["render", ft]]), mt = {
...pt,
name: "VDropdown",
vPopperTheme: "dropdown"
}, ht = {
...pt,
name: "VMenu",
vPopperTheme: "menu"
}, gt = {
...pt,
name: "VTooltip",
vPopperTheme: "tooltip"
}, _t = u({
name: "VTooltipDirective",
components: {
Popper: He(),
PopperContent: ct
},
mixins: [lt],
inheritAttrs: !1,
props: {
theme: {
type: String,
default: "tooltip"
},
html: {
type: Boolean,
default: (e) => L(e.theme, "html")
},
content: {
type: [
String,
Number,
Function
],
default: null
},
loadingContent: {
type: String,
default: (e) => L(e.theme, "loadingContent")
},
targetNodes: {
type: Function,
required: !0
}
},
data() {
return { asyncContent: null };
},
computed: {
isContentAsync() {
return typeof this.content == "function";
},
loading() {
return this.isContentAsync && this.asyncContent == null;
},
finalContent() {
return this.isContentAsync ? this.loading ? this.loadingContent : this.asyncContent : this.content;
}
},
watch: {
content: {
handler() {
this.fetchContent(!0);
},
immediate: !0
},
async finalContent() {
await this.$nextTick(), this.$refs.popper.onResize();
}
},
created() {
this.$_fetchId = 0;
},
methods: {
fetchContent(e) {
if (typeof this.content == "function" && this.$_isShown && (e || !this.$_loading && this.asyncContent == null)) {
this.asyncContent = null, this.$_loading = !0;
let e = ++this.$_fetchId, t = this.content(this);
t.then ? t.then((t) => this.onResult(e, t)) : this.onResult(e, t);
}
},
onResult(e, t) {
e === this.$_fetchId && (this.$_loading = !1, this.asyncContent = t);
},
onShow() {
this.$_isShown = !0, this.fetchContent();
},
onHide() {
this.$_isShown = !1;
}
}
}), vt = ["innerHTML"], yt = ["textContent"];
function bt(r, i, a, o, c, l) {
let u = b("PopperContent"), d = b("Popper");
return m(), t(d, f({ ref: "popper" }, r.$attrs, {
theme: r.theme,
"target-nodes": r.targetNodes,
"popper-node": () => r.$refs.popperContent.$el,
onApplyShow: r.onShow,
onApplyHide: r.onHide
}), {
default: g(({ popperId: t, isShown: i, shouldMountContent: a, skipTransition: o, autoHide: c, hide: l, handleResize: d, onResize: f, classes: p, result: h }) => [s(u, {
ref: "popperContent",
class: n({ "v-popper--tooltip-loading": r.loading }),
"popper-id": t,
theme: r.theme,
shown: i,
mounted: a,
"skip-transition": o,
"auto-hide": c,
"handle-resize": d,
classes: p,
result: h,
onHide: l,
onResize: f
}, {
default: g(() => [r.html ? (m(), v("div", {
key: 0,
innerHTML: r.finalContent
}, null, 8, vt)) : (m(), v("div", {
key: 1,
textContent: e(r.finalContent)
}, null, 8, yt))]),
_: 2
}, 1032, [
"class",
"popper-id",
"theme",
"shown",
"mounted",
"skip-transition",
"auto-hide",
"handle-resize",
"classes",
"result",
"onHide",
"onResize"
])]),
_: 1
}, 16, [
"theme",
"target-nodes",
"popper-node",
"onApplyShow",
"onApplyHide"
]);
}
var xt = /* @__PURE__ */ Y(_t, [["render", bt]]), St = "v-popper--has-tooltip";
function Ct(e, t) {
let n = e.placement;
if (!n && t) for (let e of Fe) t[e] && (n = e);
return n ||= L(e.theme || "tooltip", "placement"), n;
}
function wt(e, t, n) {
let r, i = typeof t;
return r = i === "string" ? { content: t } : t && i === "object" ? t : { content: !1 }, r.placement = Ct(r, n), r.targetNodes = () => [e], r.referenceNode = () => e, r;
}
var Tt, Q, Et = 0;
function Dt() {
if (Tt) return;
Q = h([]), Tt = ee({
name: "VTooltipDirectiveApp",
setup() {
return { directives: Q };
},
render() {
return this.directives.map((e) => o(xt, {
...e.options,
shown: e.shown || e.options.shown,
key: e.id
}));
},
devtools: { hide: !0 }
});
let e = document.createElement("div");
document.body.appendChild(e), Tt.mount(e);
}
function Ot(e, t, n) {
Dt();
let r = h(wt(e, t, n)), i = h(!1), a = {
id: Et++,
options: r,
shown: i
};
return Q.value.push(a), e.classList && e.classList.add(St), e.$_popper = {
options: r,
item: a,
show() {
i.value = !0;
},
hide() {
i.value = !1;
}
};
}
function kt(e) {
if (e.$_popper) {
let t = Q.value.indexOf(e.$_popper.item);
t !== -1 && Q.value.splice(t, 1), delete e.$_popper, delete e.$_popperOldShown, delete e.$_popperMountTarget;
}
e.classList && e.classList.remove(St);
}
function At(e, { value: t, modifiers: n }) {
let r = wt(e, t, n);
if (!r.content || L(r.theme || "tooltip", "disabled")) kt(e);
else {
let i;
e.$_popper ? (i = e.$_popper, i.options.value = r) : i = Ot(e, t, n), typeof t.shown < "u" && t.shown !== e.$_popperOldShown && (e.$_popperOldShown = t.shown, t.shown ? i.show() : i.hide());
}
}
var jt = {
beforeMount: At,
updated: At,
beforeUnmount(e) {
kt(e);
}
};
function Mt(e) {
e.addEventListener("mousedown", $), e.addEventListener("click", $), e.addEventListener("touchstart", Pt, R ? { passive: !0 } : !1);
}
function Nt(e) {
e.removeEventListener("mousedown", $), e.removeEventListener("click", $), e.removeEventListener("touchstart", Pt), e.removeEventListener("touchend", Ft), e.removeEventListener("touchcancel", It);
}
function $(e) {
let t = e.currentTarget;
e.closePopover = !t.$_vclosepopover_touch, e.closeAllPopover = t.$_closePopoverModifiers && !!t.$_closePopoverModifiers.all;
}
function Pt(e) {
if (e.changedTouches.length === 1) {
let t = e.currentTarget;
t.$_vclosepopover_touch = !0, t.$_vclosepopover_touchPoint = e.changedTouches[0], t.addEventListener("touchend", Ft), t.addEventListener("touchcancel", It);
}
}
function Ft(e) {
let t = e.currentTarget;
if (t.$_vclosepopover_touch = !1, e.changedTouches.length === 1) {
let n = e.changedTouches[0], r = t.$_vclosepopover_touchPoint;
e.closePopover = Math.abs(n.screenY - r.screenY) < 20 && Math.abs(n.screenX - r.screenX) < 20, e.closeAllPopover = t.$_closePopoverModifiers && !!t.$_closePopoverModifiers.all;
}
}
function It(e) {
let t = e.currentTarget;
t.$_vclosepopover_touch = !1;
}
var Lt = {
beforeMount(e, { value: t, modifiers: n }) {
e.$_closePopoverModifiers = n, (typeof t > "u" || t) && Mt(e);
},
updated(e, { value: t, oldValue: n, modifiers: r }) {
e.$_closePopoverModifiers = r, t !== n && (typeof t > "u" || t ? Mt(e) : Nt(e));
},
beforeUnmount(e) {
Nt(e);
}
};
function Rt(e, t = {}) {
e.$_vTooltipInstalled || (e.$_vTooltipInstalled = !0, je(I, t), e.directive("tooltip", jt), e.directive("close-popper", Lt), e.component("VTooltip", gt), e.component("VDropdown", mt), e.component("VMenu", ht));
}
var zt = {
version: "5.2.2",
install: Rt,
options: I
};
//#endregion
export { zt as t };