epic-designer-cjh
Version:
基于vue3的设计器,可视化开发页面表单
1,894 lines • 366 kB
JavaScript
import { a as $, c as f } from "./_commonjsHelpers-c5d32002.js";
import { r as D } from "./_vue_commonjs-external-eb7fec7f.js";
import { C as tr, e as Cn, m as Dn, u as xt, a as Wn, b as zn } from "./index-e2a664aa.js";
import { u as On } from "./use-false-until-truthy-cceb153b.js";
import { u as Rr } from "./use-memo-01b53d71.js";
import { b as Vr, o as Nn, u as Fn, c as Lt, a as fe, V as ar, d as rr, e as nr, f as v, g as l, h as S, i as u, j as En, k as Hn, l as An, m as In, n as Rn } from "./index-ea4aeba0.js";
import { u as Vn, a as xn } from "./use-clicked-a852ac0d.js";
import { readonly as Re, onBeforeMount as xr, onBeforeUnmount as qt, ref as K, computed as G, reactive as Ln, watch as qn, defineComponent as Bt, onMounted as Lr, onActivated as Bn, onDeactivated as Xn, h as ae, mergeProps as Kn, nextTick as Gn, renderSlot as Yn } from "vue";
import { g as Un, h as qr, i as Br, a as Zn, u as Jn, V as Ve, F as or, L as ir, r as Qn } from "./index-b826a2e2.js";
import { u as eo } from "./use-merged-state-7348d957.js";
import { i as to } from "./use-is-mounted-a0b9f33e.js";
import { o as Ce, a as De } from "./delegate-6e021bb9.js";
import { d as Ft, g as ao, a as lr, p as We } from "./index-7c742dc7.js";
import { l as Xr } from "./lodash-915646fb.js";
import { _ as ro } from "./typeof-dad84d6f.js";
import { c as no, a as oo, g as io, b as lo, h as uo, d as so, r as co, e as mo, f as fo, i as ho, j as vo, s as go, t as po, k as yo, l as bo, m as Po, n as Mo, o as wo, p as ko, q as $o } from "./index-4562f02c.js";
import { c as To, i as _o, r as So, s as jo } from "./index-f636e660.js";
let Et = [], Ht = [];
function Co() {
Et.forEach((e, t) => e(...Ht[t])), Et = [], Ht = [];
}
function Do(e, ...t) {
Et.push(e) === 1 && requestAnimationFrame(Co), Ht.push(t);
}
function Wo(e) {
return e.nodeType === 9 ? null : e.parentNode;
}
function Kr(e) {
if (e === null)
return null;
const t = Wo(e);
if (t === null)
return null;
if (t.nodeType === 9)
return document.documentElement;
if (t.nodeType === 1) {
const { overflow: r, overflowX: a, overflowY: n } = getComputedStyle(t);
if (/(auto|scroll|overlay)/.test(r + n + a))
return t;
}
return Kr(t);
}
function zo(e) {
return typeof e == "string" ? document.querySelector(e) : typeof e == "function" ? e() : e;
}
function Oo(e, t) {
let { target: r } = e;
for (; r; ) {
if (r.dataset && r.dataset[t] !== void 0)
return !0;
r = r.parentElement;
}
return !1;
}
function Gr(e) {
if (typeof e == "number")
return {
"": e.toString()
};
const t = {};
return e.split(/ +/).forEach((r) => {
if (r === "")
return;
const [a, n] = r.split(":");
n === void 0 ? t[""] = a : t[a] = n;
}), t;
}
function No(e, t) {
var r;
if (e == null)
return;
const a = Gr(e);
if (t === void 0)
return a[""];
if (typeof t == "string")
return (r = a[t]) !== null && r !== void 0 ? r : a[""];
if (Array.isArray(t)) {
for (let n = t.length - 1; n >= 0; --n) {
const o = t[n];
if (o in a)
return a[o];
}
return a[""];
} else {
let n, o = -1;
return Object.keys(a).forEach((i) => {
const s = Number(i);
!Number.isNaN(s) && t >= s && s >= o && (o = s, n = a[i]);
}), n;
}
}
function Fo(e, t, r) {
t /= 100, r /= 100;
const a = t * Math.min(r, 1 - r) + r;
return [e, a ? (2 - 2 * r / a) * 100 : 0, a * 100];
}
function Eo(e, t, r) {
t /= 100, r /= 100;
const a = r - r * t / 2, n = Math.min(a, 1 - a);
return [e, n ? (r - a) / n * 100 : 0, a * 100];
}
function Ho(e, t, r) {
t /= 100, r /= 100;
let a = (n, o = (n + e / 60) % 6) => r - r * t * Math.max(Math.min(o, 4 - o, 1), 0);
return [a(5) * 255, a(3) * 255, a(1) * 255];
}
function Ao(e, t, r) {
e /= 255, t /= 255, r /= 255;
let a = Math.max(e, t, r), n = a - Math.min(e, t, r), o = n && (a == e ? (t - r) / n : a == t ? 2 + (r - e) / n : 4 + (e - t) / n);
return [60 * (o < 0 ? o + 6 : o), a && n / a * 100, a * 100];
}
function Io(e, t, r) {
e /= 255, t /= 255, r /= 255;
let a = Math.max(e, t, r), n = a - Math.min(e, t, r), o = 1 - Math.abs(a + a - n - 1), i = n && (a == e ? (t - r) / n : a == t ? 2 + (r - e) / n : 4 + (e - t) / n);
return [60 * (i < 0 ? i + 6 : i), o ? n / o * 100 : 0, (a + a - n) * 50];
}
function Ro(e, t, r) {
t /= 100, r /= 100;
let a = t * Math.min(r, 1 - r), n = (o, i = (o + e / 30) % 12) => r - a * Math.max(Math.min(i - 3, 9 - i, 1), -1);
return [n(0) * 255, n(8) * 255, n(4) * 255];
}
const Vo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
beforeNextFrame: Do,
beforeNextFrameOnce: Vr,
changeColor: no,
composite: oo,
createId: To,
depx: Ft,
getAlpha: io,
getAlphaString: lo,
getGap: ao,
getMargin: lr,
getPadding: lr,
getPreciseEventTarget: Un,
getScrollParent: Kr,
happensIn: Oo,
hsl2hsv: Fo,
hsl2rgb: Ro,
hsla: uo,
hsv2hsl: Eo,
hsv2rgb: Ho,
hsva: so,
indexMap: _o,
parseResponsiveProp: Gr,
parseResponsivePropValue: No,
pxfy: We,
repeat: So,
rgb2hsl: Io,
rgb2hsv: Ao,
rgba: co,
roundAlpha: mo,
roundChannel: fo,
roundDeg: ho,
roundPercent: vo,
scaleColor: go,
sleep: jo,
toHexString: po,
toHexaString: yo,
toHslString: bo,
toHslaString: Po,
toHsvString: Mo,
toHsvaString: wo,
toRgbString: ko,
toRgbaString: $o,
unwrapElement: zo
}, Symbol.toStringTag, { value: "Module" })), xo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
CssRender: tr,
default: tr,
exists: Cn,
hash: Dn
}, Symbol.toStringTag, { value: "Module" })), Lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
off: Ce,
on: De
}, Symbol.toStringTag, { value: "Module" }));
let He = 0;
const qo = typeof window < "u" && window.matchMedia !== void 0, re = K(null);
let B, se;
function xe(e) {
e.matches && (re.value = "dark");
}
function Le(e) {
e.matches && (re.value = "light");
}
function Bo() {
B = window.matchMedia("(prefers-color-scheme: dark)"), se = window.matchMedia("(prefers-color-scheme: light)"), B.matches ? re.value = "dark" : se.matches ? re.value = "light" : re.value = null, B.addEventListener ? (B.addEventListener("change", xe), se.addEventListener("change", Le)) : B.addListener && (B.addListener(xe), se.addListener(Le));
}
function Xo() {
"removeEventListener" in B ? (B.removeEventListener("change", xe), se.removeEventListener("change", Le)) : "removeListener" in B && (B.removeListener(xe), se.removeListener(Le)), B = void 0, se = void 0;
}
let ur = !0;
function Ko() {
return process.env.NODE_ENV !== "test" && !qo ? Re(re) : process.env.NODE_ENV === "test" && window.matchMedia === void 0 ? Re(re) : (He === 0 && Bo(), ur && (ur = qr()) && (xr(() => {
He += 1;
}), qt(() => {
He -= 1, He === 0 && Xo();
})), Re(re));
}
const Go = {
// mobile
// 0 ~ 640 doesn't mean it should display well in all the range,
// but means you should treat it like a mobile phone.)
xs: 0,
s: 640,
m: 1024,
l: 1280,
xl: 1536,
"2xl": 1920
// normal desktop display
};
function Yo(e) {
return `(min-width: ${e}px)`;
}
const Te = {};
function At(e = Go) {
if (!Br)
return G(() => []);
if (typeof window.matchMedia != "function")
return G(() => []);
const t = K({}), r = Object.keys(e), a = (n, o) => {
n.matches ? t.value[o] = !0 : t.value[o] = !1;
};
return r.forEach((n) => {
const o = e[n];
let i, s;
Te[o] === void 0 ? (i = window.matchMedia(Yo(o)), i.addEventListener ? i.addEventListener("change", (d) => {
s.forEach((c) => {
c(d, n);
});
}) : i.addListener && i.addListener((d) => {
s.forEach((c) => {
c(d, n);
});
}), s = /* @__PURE__ */ new Set(), Te[o] = {
mql: i,
cbs: s
}) : (i = Te[o].mql, s = Te[o].cbs), s.add(a), i.matches && s.forEach((d) => {
d(i, n);
});
}), qt(() => {
r.forEach((n) => {
const { cbs: o } = Te[e[n]];
o.has(a) && o.delete(a);
});
}), G(() => {
const { value: n } = t;
return r.filter((o) => n[o]);
});
}
function Uo(e) {
if (!Br)
return G(() => {
});
const t = e !== void 0 ? At(e) : At();
return G(() => {
const { value: r } = t;
if (r.length !== 0)
return r[r.length - 1];
});
}
function Zo(e = {}, t) {
const r = Ln({
ctrl: !1,
command: !1,
win: !1,
shift: !1,
tab: !1
}), { keydown: a, keyup: n } = e, o = (d) => {
switch (d.key) {
case "Control":
r.ctrl = !0;
break;
case "Meta":
r.command = !0, r.win = !0;
break;
case "Shift":
r.shift = !0;
break;
case "Tab":
r.tab = !0;
break;
}
a !== void 0 && Object.keys(a).forEach((c) => {
if (c !== d.key)
return;
const h = a[c];
if (typeof h == "function")
h(d);
else {
const { stop: g = !1, prevent: b = !1 } = h;
g && d.stopPropagation(), b && d.preventDefault(), h.handler(d);
}
});
}, i = (d) => {
switch (d.key) {
case "Control":
r.ctrl = !1;
break;
case "Meta":
r.command = !1, r.win = !1;
break;
case "Shift":
r.shift = !1;
break;
case "Tab":
r.tab = !1;
break;
}
n !== void 0 && Object.keys(n).forEach((c) => {
if (c !== d.key)
return;
const h = n[c];
if (typeof h == "function")
h(d);
else {
const { stop: g = !1, prevent: b = !1 } = h;
g && d.stopPropagation(), b && d.preventDefault(), h.handler(d);
}
});
}, s = () => {
(t === void 0 || t.value) && (De("keydown", document, o), De("keyup", document, i)), t !== void 0 && qn(t, (d) => {
d ? (De("keydown", document, o), De("keyup", document, i)) : (Ce("keydown", document, o), Ce("keyup", document, i));
});
};
return qr() ? (xr(s), qt(() => {
(t === void 0 || t.value) && (Ce("keydown", document, o), Ce("keyup", document, i));
})) : s(), Re(r);
}
const Jo = typeof window > "u" ? !1 : Zn || window.safari !== void 0;
function Qo() {
return Jo;
}
const ei = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
onFontsReady: Nn,
useBreakpoint: Uo,
useBreakpoints: At,
useClickPosition: Vn,
useClicked: xn,
useCompitable: Fn,
useFalseUntilTruthy: On,
useIsIos: Jn,
useIsMounted: to,
useIsSafari: Qo,
useKeyboard: Zo,
useMemo: Rr,
useMergedState: eo,
useOsTheme: Ko
}, Symbol.toStringTag, { value: "Module" }));
function dr(e) {
return e & -e;
}
class ti {
/**
* @param l length of the array
* @param min min value of the array
*/
constructor(t, r) {
this.l = t, this.min = r;
const a = new Array(t + 1);
for (let n = 0; n < t + 1; ++n)
a[n] = 0;
this.ft = a;
}
/**
* Add arr[i] by n, start from 0
* @param i the index of the element to be added
* @param n the value to be added
*/
add(t, r) {
if (r === 0)
return;
const { l: a, ft: n } = this;
for (t += 1; t <= a; )
n[t] += r, t += dr(t);
}
/**
* Get the value of index i
* @param i index
* @returns value of the index
*/
get(t) {
return this.sum(t + 1) - this.sum(t);
}
/**
* Get the sum of first i elements
* @param i count of head elements to be added
* @returns the sum of first i elements
*/
sum(t) {
if (t === void 0 && (t = this.l), t <= 0)
return 0;
const { ft: r, min: a, l: n } = this;
if (t > n)
throw new Error("[FinweckTree.sum]: `i` is larger than length.");
let o = t * a;
for (; t > 0; )
o += r[t], t -= dr(t);
return o;
}
/**
* Get the largest count of head elements whose sum are <= threshold
* @param threshold
* @returns the largest count of head elements whose sum are <= threshold
*/
getBound(t) {
let r = 0, a = this.l;
for (; a > r; ) {
const n = Math.floor((r + a) / 2), o = this.sum(n);
if (o > t) {
a = n;
continue;
} else if (o < t) {
if (r === n)
return this.sum(r + 1) <= t ? r + 1 : n;
r = n;
} else
return n;
}
return r;
}
}
let Ae;
function ai() {
return Ae === void 0 && ("matchMedia" in window ? Ae = window.matchMedia("(pointer:coarse)").matches : Ae = !1), Ae;
}
let wt;
function sr() {
return wt === void 0 && (wt = "chrome" in window ? window.devicePixelRatio : 1), wt;
}
const ri = fe(".v-vl", {
maxHeight: "inherit",
height: "100%",
overflow: "auto",
minWidth: "1px"
// a zero width container won't be scrollable
}, [
fe("&:not(.v-vl--show-scrollbar)", {
scrollbarWidth: "none"
}, [
fe("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb", {
width: 0,
height: 0,
display: "none"
})
])
]), cr = Bt({
name: "VirtualList",
inheritAttrs: !1,
props: {
showScrollbar: {
type: Boolean,
default: !0
},
items: {
type: Array,
default: () => []
},
// it is suppose to be the min height
itemSize: {
type: Number,
required: !0
},
itemResizable: Boolean,
itemsStyle: [String, Object],
visibleItemsTag: {
type: [String, Object],
default: "div"
},
visibleItemsProps: Object,
ignoreItemResize: Boolean,
onScroll: Function,
onWheel: Function,
onResize: Function,
defaultScrollKey: [Number, String],
defaultScrollIndex: Number,
keyField: {
type: String,
default: "key"
},
// Whether it is a good API?
// ResizeObserver + footer & header is not enough.
// Too complex for simple case
paddingTop: {
type: [Number, String],
default: 0
},
paddingBottom: {
type: [Number, String],
default: 0
}
},
setup(e) {
const t = xt();
ri.mount({
id: "vueuc/virtual-list",
head: !0,
anchorMetaName: Lt,
ssr: t
}), Lr(() => {
const { defaultScrollIndex: y, defaultScrollKey: P } = e;
y != null ? w({ index: y }) : P != null && w({ key: P });
});
let r = !1, a = !1;
Bn(() => {
if (r = !1, !a) {
a = !0;
return;
}
w({ top: g.value, left: h });
}), Xn(() => {
r = !0, a || (a = !0);
});
const n = G(() => {
const y = /* @__PURE__ */ new Map(), { keyField: P } = e;
return e.items.forEach((T, W) => {
y.set(T[P], W);
}), y;
}), o = K(null), i = K(void 0), s = /* @__PURE__ */ new Map(), d = G(() => {
const { items: y, itemSize: P, keyField: T } = e, W = new ti(y.length, P);
return y.forEach((O, E) => {
const C = O[T], A = s.get(C);
A !== void 0 && W.add(E, A);
}), W;
}), c = K(0);
let h = 0;
const g = K(0), b = Rr(() => Math.max(d.value.getBound(g.value - Ft(e.paddingTop)) - 1, 0)), M = G(() => {
const { value: y } = i;
if (y === void 0)
return [];
const { items: P, itemSize: T } = e, W = b.value, O = Math.min(W + Math.ceil(y / T + 1), P.length - 1), E = [];
for (let C = W; C <= O; ++C)
E.push(P[C]);
return E;
}), w = (y, P) => {
if (typeof y == "number") {
_(y, P, "auto");
return;
}
const { left: T, top: W, index: O, key: E, position: C, behavior: A, debounce: X = !0 } = y;
if (T !== void 0 || W !== void 0)
_(T, W, A);
else if (O !== void 0)
H(O, A, X);
else if (E !== void 0) {
const ke = n.value.get(E);
ke !== void 0 && H(ke, A, X);
} else
C === "bottom" ? _(0, Number.MAX_SAFE_INTEGER, A) : C === "top" && _(0, 0, A);
};
let j, z = null;
function H(y, P, T) {
const { value: W } = d, O = W.sum(y) + Ft(e.paddingTop);
if (!T)
o.value.scrollTo({
left: 0,
top: O,
behavior: P
});
else {
j = y, z !== null && window.clearTimeout(z), z = window.setTimeout(() => {
j = void 0, z = null;
}, 16);
const { scrollTop: E, offsetHeight: C } = o.value;
if (O > E) {
const A = W.get(y);
O + A <= E + C || o.value.scrollTo({
left: 0,
top: O + A - C,
behavior: P
});
} else
o.value.scrollTo({
left: 0,
top: O,
behavior: P
});
}
}
function _(y, P, T) {
o.value.scrollTo({
left: y,
top: P,
behavior: T
});
}
function x(y, P) {
var T, W, O;
if (r || e.ignoreItemResize || me(P.target))
return;
const { value: E } = d, C = n.value.get(y), A = E.get(C), X = (O = (W = (T = P.borderBoxSize) === null || T === void 0 ? void 0 : T[0]) === null || W === void 0 ? void 0 : W.blockSize) !== null && O !== void 0 ? O : P.contentRect.height;
if (X === A)
return;
X - e.itemSize === 0 ? s.delete(y) : s.set(y, X - e.itemSize);
const le = X - A;
if (le === 0)
return;
E.add(C, le);
const Z = o.value;
if (Z != null) {
if (j === void 0) {
const $e = E.sum(C);
Z.scrollTop > $e && Z.scrollBy(0, le);
} else if (C < j)
Z.scrollBy(0, le);
else if (C === j) {
const $e = E.sum(C);
X + $e > // Note, listEl shouldn't have border, nor offsetHeight won't be
// correct
Z.scrollTop + Z.offsetHeight && Z.scrollBy(0, le);
}
te();
}
c.value++;
}
const N = !ai();
let F = !1;
function L(y) {
var P;
(P = e.onScroll) === null || P === void 0 || P.call(e, y), (!N || !F) && te();
}
function Q(y) {
var P;
if ((P = e.onWheel) === null || P === void 0 || P.call(e, y), N) {
const T = o.value;
if (T != null) {
if (y.deltaX === 0 && (T.scrollTop === 0 && y.deltaY <= 0 || T.scrollTop + T.offsetHeight >= T.scrollHeight && y.deltaY >= 0))
return;
y.preventDefault(), T.scrollTop += y.deltaY / sr(), T.scrollLeft += y.deltaX / sr(), te(), F = !0, Vr(() => {
F = !1;
});
}
}
}
function ee(y) {
if (r || me(y.target) || y.contentRect.height === i.value)
return;
i.value = y.contentRect.height;
const { onResize: P } = e;
P !== void 0 && P(y);
}
function te() {
const { value: y } = o;
y != null && (g.value = y.scrollTop, h = y.scrollLeft);
}
function me(y) {
let P = y;
for (; P !== null; ) {
if (P.style.display === "none")
return !0;
P = P.parentElement;
}
return !1;
}
return {
listHeight: i,
listStyle: {
overflow: "auto"
},
keyToIndex: n,
itemsStyle: G(() => {
const { itemResizable: y } = e, P = We(d.value.sum());
return c.value, [
e.itemsStyle,
{
boxSizing: "content-box",
height: y ? "" : P,
minHeight: y ? P : "",
paddingTop: We(e.paddingTop),
paddingBottom: We(e.paddingBottom)
}
];
}),
visibleItemsStyle: G(() => (c.value, {
transform: `translateY(${We(d.value.sum(b.value))})`
})),
viewportItems: M,
listElRef: o,
itemsElRef: K(null),
scrollTo: w,
handleListResize: ee,
handleListScroll: L,
handleListWheel: Q,
handleItemResize: x
};
},
render() {
const { itemResizable: e, keyField: t, keyToIndex: r, visibleItemsTag: a } = this;
return ae(Ve, {
onResize: this.handleListResize
}, {
default: () => {
var n, o;
return ae("div", Kn(this.$attrs, {
class: ["v-vl", this.showScrollbar && "v-vl--show-scrollbar"],
onScroll: this.handleListScroll,
onWheel: this.handleListWheel,
ref: "listElRef"
}), [
this.items.length !== 0 ? ae("div", {
ref: "itemsElRef",
class: "v-vl-items",
style: this.itemsStyle
}, [
ae(a, Object.assign({
class: "v-vl-visible-items",
style: this.visibleItemsStyle
}, this.visibleItemsProps), {
default: () => this.viewportItems.map((i) => {
const s = i[t], d = r.get(s), c = this.$slots.default({
item: i,
index: d
})[0];
return e ? ae(Ve, {
key: s,
onResize: (h) => this.handleItemResize(s, h)
}, {
default: () => c
}) : (c.key = s, c);
})
})
]) : (o = (n = this.$slots).empty) === null || o === void 0 ? void 0 : o.call(n)
]);
}
});
}
}), ni = fe(".v-x-scroll", {
overflow: "auto",
scrollbarWidth: "none"
}, [
fe("&::-webkit-scrollbar", {
width: 0,
height: 0
})
]), mr = Bt({
name: "XScroll",
props: {
disabled: Boolean,
onScroll: Function
},
setup() {
const e = K(null);
function t(n) {
!(n.currentTarget.offsetWidth < n.currentTarget.scrollWidth) || n.deltaY === 0 || (n.currentTarget.scrollLeft += n.deltaY + n.deltaX, n.preventDefault());
}
const r = xt();
return ni.mount({
id: "vueuc/x-scroll",
head: !0,
anchorMetaName: Lt,
ssr: r
}), Object.assign({
selfRef: e,
handleWheel: t
}, {
scrollTo(...n) {
var o;
(o = e.value) === null || o === void 0 || o.scrollTo(...n);
}
});
},
render() {
return ae("div", {
ref: "selfRef",
onScroll: this.onScroll,
onWheel: this.disabled ? void 0 : this.handleWheel,
class: "v-x-scroll"
}, this.$slots);
}
}), ue = "v-hidden", oi = fe("[v-hidden]", {
display: "none!important"
}), fr = Bt({
name: "Overflow",
props: {
getCounter: Function,
getTail: Function,
updateCounter: Function,
onUpdateOverflow: Function
},
setup(e, { slots: t }) {
const r = K(null), a = K(null);
function n() {
const { value: i } = r, { getCounter: s, getTail: d } = e;
let c;
if (s !== void 0 ? c = s() : c = a.value, !i || !c)
return;
c.hasAttribute(ue) && c.removeAttribute(ue);
const { children: h } = i, g = i.offsetWidth, b = [], M = t.tail ? d == null ? void 0 : d() : null;
let w = M ? M.offsetWidth : 0, j = !1;
const z = i.children.length - (t.tail ? 1 : 0);
for (let _ = 0; _ < z - 1; ++_) {
if (_ < 0)
continue;
const x = h[_];
if (j) {
x.hasAttribute(ue) || x.setAttribute(ue, "");
continue;
} else
x.hasAttribute(ue) && x.removeAttribute(ue);
const N = x.offsetWidth;
if (w += N, b[_] = N, w > g) {
const { updateCounter: F } = e;
for (let L = _; L >= 0; --L) {
const Q = z - 1 - L;
F !== void 0 ? F(Q) : c.textContent = `${Q}`;
const ee = c.offsetWidth;
if (w -= b[L], w + ee <= g || L === 0) {
j = !0, _ = L - 1, M && (_ === -1 ? (M.style.maxWidth = `${g - ee}px`, M.style.boxSizing = "border-box") : M.style.maxWidth = "");
break;
}
}
}
}
const { onUpdateOverflow: H } = e;
j ? H !== void 0 && H(!0) : (H !== void 0 && H(!1), c.setAttribute(ue, ""));
}
const o = xt();
return oi.mount({
id: "vueuc/overflow",
head: !0,
anchorMetaName: Lt,
ssr: o
}), Lr(n), {
selfRef: r,
counterRef: a,
sync: n
};
},
render() {
const { $slots: e } = this;
return Gn(this.sync), ae("div", {
class: "v-overflow",
ref: "selfRef"
}, [
Yn(e, "default"),
// $slots.counter should only has 1 element
e.counter ? e.counter() : ae("span", {
style: {
display: "inline-block"
},
ref: "counterRef"
}),
// $slots.tail should only has 1 element
e.tail ? e.tail() : null
]);
}
}), ii = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
Binder: ar,
FocusTrap: or,
Follower: rr,
LazyTeleport: ir,
Overflow: fr,
ResizeObserver: Ve,
Target: nr,
VBinder: ar,
VFocusTrap: or,
VFollower: rr,
VLazyTeleport: ir,
VOverflow: fr,
VResizeObserver: Ve,
VTarget: nr,
VVirtualList: cr,
VXScroll: mr,
VirtualList: cr,
XScroll: mr,
resizeObserverManager: Qn
}, Symbol.toStringTag, { value: "Module" }));
var li = {
lessThanXSeconds: {
one: "不到 1 秒",
other: "不到 {{count}} 秒"
},
xSeconds: {
one: "1 秒",
other: "{{count}} 秒"
},
halfAMinute: "半分钟",
lessThanXMinutes: {
one: "不到 1 分钟",
other: "不到 {{count}} 分钟"
},
xMinutes: {
one: "1 分钟",
other: "{{count}} 分钟"
},
xHours: {
one: "1 小时",
other: "{{count}} 小时"
},
aboutXHours: {
one: "大约 1 小时",
other: "大约 {{count}} 小时"
},
xDays: {
one: "1 天",
other: "{{count}} 天"
},
aboutXWeeks: {
one: "大约 1 个星期",
other: "大约 {{count}} 个星期"
},
xWeeks: {
one: "1 个星期",
other: "{{count}} 个星期"
},
aboutXMonths: {
one: "大约 1 个月",
other: "大约 {{count}} 个月"
},
xMonths: {
one: "1 个月",
other: "{{count}} 个月"
},
aboutXYears: {
one: "大约 1 年",
other: "大约 {{count}} 年"
},
xYears: {
one: "1 年",
other: "{{count}} 年"
},
overXYears: {
one: "超过 1 年",
other: "超过 {{count}} 年"
},
almostXYears: {
one: "将近 1 年",
other: "将近 {{count}} 年"
}
}, ui = function(t, r, a) {
var n, o = li[t];
return typeof o == "string" ? n = o : r === 1 ? n = o.one : n = o.other.replace("{{count}}", String(r)), a != null && a.addSuffix ? a.comparison && a.comparison > 0 ? n + "内" : n + "前" : n;
};
const di = ui;
var si = {
full: "y'年'M'月'd'日' EEEE",
long: "y'年'M'月'd'日'",
medium: "yyyy-MM-dd",
short: "yy-MM-dd"
}, ci = {
full: "zzzz a h:mm:ss",
long: "z a h:mm:ss",
medium: "a h:mm:ss",
short: "a h:mm"
}, mi = {
full: "{{date}} {{time}}",
long: "{{date}} {{time}}",
medium: "{{date}} {{time}}",
short: "{{date}} {{time}}"
}, fi = {
date: v({
formats: si,
defaultWidth: "full"
}),
time: v({
formats: ci,
defaultWidth: "full"
}),
dateTime: v({
formats: mi,
defaultWidth: "full"
})
};
const hi = fi;
function Xt(e, t) {
if (t.length < e)
throw new TypeError(e + " argument" + (e > 1 ? "s" : "") + " required, but only " + t.length + " present");
}
function Kt(e) {
Xt(1, arguments);
var t = Object.prototype.toString.call(e);
return e instanceof Date || ro(e) === "object" && t === "[object Date]" ? new Date(e.getTime()) : typeof e == "number" || t === "[object Number]" ? new Date(e) : ((typeof e == "string" || t === "[object String]") && typeof console < "u" && (console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"), console.warn(new Error().stack)), /* @__PURE__ */ new Date(NaN));
}
function vi(e) {
if (e === null || e === !0 || e === !1)
return NaN;
var t = Number(e);
return isNaN(t) ? t : t < 0 ? Math.ceil(t) : Math.floor(t);
}
var Yr = {};
function gi() {
return Yr;
}
function r1(e) {
Yr = e;
}
function hr(e, t) {
var r, a, n, o, i, s, d, c;
Xt(1, arguments);
var h = gi(), g = vi((r = (a = (n = (o = t == null ? void 0 : t.weekStartsOn) !== null && o !== void 0 ? o : t == null || (i = t.locale) === null || i === void 0 || (s = i.options) === null || s === void 0 ? void 0 : s.weekStartsOn) !== null && n !== void 0 ? n : h.weekStartsOn) !== null && a !== void 0 ? a : (d = h.locale) === null || d === void 0 || (c = d.options) === null || c === void 0 ? void 0 : c.weekStartsOn) !== null && r !== void 0 ? r : 0);
if (!(g >= 0 && g <= 6))
throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");
var b = Kt(e), M = b.getUTCDay(), w = (M < g ? 7 : 0) + M - g;
return b.setUTCDate(b.getUTCDate() - w), b.setUTCHours(0, 0, 0, 0), b;
}
function U(e, t, r) {
Xt(2, arguments);
var a = hr(e, r), n = hr(t, r);
return a.getTime() === n.getTime();
}
function vr(e, t, r) {
var a = "eeee p";
return U(e, t, r) ? a : e.getTime() > t.getTime() ? "'下个'" + a : "'上个'" + a;
}
var pi = {
lastWeek: vr,
// days before yesterday, maybe in this week or last week
yesterday: "'昨天' p",
today: "'今天' p",
tomorrow: "'明天' p",
nextWeek: vr,
// days after tomorrow, maybe in this week or next week
other: "PP p"
}, yi = function(t, r, a, n) {
var o = pi[t];
return typeof o == "function" ? o(r, a, n) : o;
};
const bi = yi;
var Pi = {
narrow: ["前", "公元"],
abbreviated: ["前", "公元"],
wide: ["公元前", "公元"]
}, Mi = {
narrow: ["1", "2", "3", "4"],
abbreviated: ["第一季", "第二季", "第三季", "第四季"],
wide: ["第一季度", "第二季度", "第三季度", "第四季度"]
}, wi = {
narrow: ["一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二"],
abbreviated: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
wide: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"]
}, ki = {
narrow: ["日", "一", "二", "三", "四", "五", "六"],
short: ["日", "一", "二", "三", "四", "五", "六"],
abbreviated: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"],
wide: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
}, $i = {
narrow: {
am: "上",
pm: "下",
midnight: "凌晨",
noon: "午",
morning: "早",
afternoon: "下午",
evening: "晚",
night: "夜"
},
abbreviated: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜间"
},
wide: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜间"
}
}, Ti = {
narrow: {
am: "上",
pm: "下",
midnight: "凌晨",
noon: "午",
morning: "早",
afternoon: "下午",
evening: "晚",
night: "夜"
},
abbreviated: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜间"
},
wide: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜间"
}
}, _i = function(t, r) {
var a = Number(t);
switch (r == null ? void 0 : r.unit) {
case "date":
return a.toString() + "日";
case "hour":
return a.toString() + "时";
case "minute":
return a.toString() + "分";
case "second":
return a.toString() + "秒";
default:
return "第 " + a.toString();
}
}, Si = {
ordinalNumber: _i,
era: l({
values: Pi,
defaultWidth: "wide"
}),
quarter: l({
values: Mi,
defaultWidth: "wide",
argumentCallback: function(t) {
return t - 1;
}
}),
month: l({
values: wi,
defaultWidth: "wide"
}),
day: l({
values: ki,
defaultWidth: "wide"
}),
dayPeriod: l({
values: $i,
defaultWidth: "wide",
formattingValues: Ti,
defaultFormattingWidth: "wide"
})
};
const ji = Si;
var Ci = /^(第\s*)?\d+(日|时|分|秒)?/i, Di = /\d+/i, Wi = {
narrow: /^(前)/i,
abbreviated: /^(前)/i,
wide: /^(公元前|公元)/i
}, zi = {
any: [/^(前)/i, /^(公元)/i]
}, Oi = {
narrow: /^[1234]/i,
abbreviated: /^第[一二三四]刻/i,
wide: /^第[一二三四]刻钟/i
}, Ni = {
any: [/(1|一)/i, /(2|二)/i, /(3|三)/i, /(4|四)/i]
}, Fi = {
narrow: /^(一|二|三|四|五|六|七|八|九|十[二一])/i,
abbreviated: /^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,
wide: /^(一|二|三|四|五|六|七|八|九|十[二一])月/i
}, Ei = {
narrow: [/^一/i, /^二/i, /^三/i, /^四/i, /^五/i, /^六/i, /^七/i, /^八/i, /^九/i, /^十(?!(一|二))/i, /^十一/i, /^十二/i],
any: [/^一|1/i, /^二|2/i, /^三|3/i, /^四|4/i, /^五|5/i, /^六|6/i, /^七|7/i, /^八|8/i, /^九|9/i, /^十(?!(一|二))|10/i, /^十一|11/i, /^十二|12/i]
}, Hi = {
narrow: /^[一二三四五六日]/i,
short: /^[一二三四五六日]/i,
abbreviated: /^周[一二三四五六日]/i,
wide: /^星期[一二三四五六日]/i
}, Ai = {
any: [/日/i, /一/i, /二/i, /三/i, /四/i, /五/i, /六/i]
}, Ii = {
any: /^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨|)/i
}, Ri = {
any: {
am: /^上午?/i,
pm: /^下午?/i,
midnight: /^午夜/i,
noon: /^[中正]午/i,
morning: /^早上/i,
afternoon: /^下午/i,
evening: /^晚上?/i,
night: /^凌晨/i
}
}, Vi = {
ordinalNumber: S({
matchPattern: Ci,
parsePattern: Di,
valueCallback: function(t) {
return parseInt(t, 10);
}
}),
era: u({
matchPatterns: Wi,
defaultMatchWidth: "wide",
parsePatterns: zi,
defaultParseWidth: "any"
}),
quarter: u({
matchPatterns: Oi,
defaultMatchWidth: "wide",
parsePatterns: Ni,
defaultParseWidth: "any",
valueCallback: function(t) {
return t + 1;
}
}),
month: u({
matchPatterns: Fi,
defaultMatchWidth: "wide",
parsePatterns: Ei,
defaultParseWidth: "any"
}),
day: u({
matchPatterns: Hi,
defaultMatchWidth: "wide",
parsePatterns: Ai,
defaultParseWidth: "any"
}),
dayPeriod: u({
matchPatterns: Ii,
defaultMatchWidth: "any",
parsePatterns: Ri,
defaultParseWidth: "any"
})
};
const xi = Vi;
var Li = {
code: "zh-CN",
formatDistance: di,
formatLong: hi,
formatRelative: bi,
localize: ji,
match: xi,
options: {
weekStartsOn: 1,
firstWeekContainsDate: 4
}
};
const qi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
default: Li
}, Symbol.toStringTag, { value: "Module" }));
var Bi = {
lessThanXSeconds: {
one: "少於 1 秒",
other: "少於 {{count}} 秒"
},
xSeconds: {
one: "1 秒",
other: "{{count}} 秒"
},
halfAMinute: "半分鐘",
lessThanXMinutes: {
one: "少於 1 分鐘",
other: "少於 {{count}} 分鐘"
},
xMinutes: {
one: "1 分鐘",
other: "{{count}} 分鐘"
},
xHours: {
one: "1 小時",
other: "{{count}} 小時"
},
aboutXHours: {
one: "大約 1 小時",
other: "大約 {{count}} 小時"
},
xDays: {
one: "1 天",
other: "{{count}} 天"
},
aboutXWeeks: {
one: "大約 1 個星期",
other: "大約 {{count}} 個星期"
},
xWeeks: {
one: "1 個星期",
other: "{{count}} 個星期"
},
aboutXMonths: {
one: "大約 1 個月",
other: "大約 {{count}} 個月"
},
xMonths: {
one: "1 個月",
other: "{{count}} 個月"
},
aboutXYears: {
one: "大約 1 年",
other: "大約 {{count}} 年"
},
xYears: {
one: "1 年",
other: "{{count}} 年"
},
overXYears: {
one: "超過 1 年",
other: "超過 {{count}} 年"
},
almostXYears: {
one: "將近 1 年",
other: "將近 {{count}} 年"
}
}, Xi = function(t, r, a) {
var n, o = Bi[t];
return typeof o == "string" ? n = o : r === 1 ? n = o.one : n = o.other.replace("{{count}}", String(r)), a != null && a.addSuffix ? a.comparison && a.comparison > 0 ? n + "內" : n + "前" : n;
};
const Ki = Xi;
var Gi = {
full: "y'年'M'月'd'日' EEEE",
long: "y'年'M'月'd'日'",
medium: "yyyy-MM-dd",
short: "yy-MM-dd"
}, Yi = {
full: "zzzz a h:mm:ss",
long: "z a h:mm:ss",
medium: "a h:mm:ss",
short: "a h:mm"
}, Ui = {
full: "{{date}} {{time}}",
long: "{{date}} {{time}}",
medium: "{{date}} {{time}}",
short: "{{date}} {{time}}"
}, Zi = {
date: v({
formats: Gi,
defaultWidth: "full"
}),
time: v({
formats: Yi,
defaultWidth: "full"
}),
dateTime: v({
formats: Ui,
defaultWidth: "full"
})
};
const Ji = Zi;
var Qi = {
lastWeek: "'上個'eeee p",
yesterday: "'昨天' p",
today: "'今天' p",
tomorrow: "'明天' p",
nextWeek: "'下個'eeee p",
other: "P"
}, el = function(t, r, a, n) {
return Qi[t];
};
const tl = el;
var al = {
narrow: ["前", "公元"],
abbreviated: ["前", "公元"],
wide: ["公元前", "公元"]
}, rl = {
narrow: ["1", "2", "3", "4"],
abbreviated: ["第一刻", "第二刻", "第三刻", "第四刻"],
wide: ["第一刻鐘", "第二刻鐘", "第三刻鐘", "第四刻鐘"]
}, nl = {
narrow: ["一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二"],
abbreviated: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
wide: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"]
}, ol = {
narrow: ["日", "一", "二", "三", "四", "五", "六"],
short: ["日", "一", "二", "三", "四", "五", "六"],
abbreviated: ["週日", "週一", "週二", "週三", "週四", "週五", "週六"],
wide: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
}, il = {
narrow: {
am: "上",
pm: "下",
midnight: "凌晨",
noon: "午",
morning: "早",
afternoon: "下午",
evening: "晚",
night: "夜"
},
abbreviated: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜間"
},
wide: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜間"
}
}, ll = {
narrow: {
am: "上",
pm: "下",
midnight: "凌晨",
noon: "午",
morning: "早",
afternoon: "下午",
evening: "晚",
night: "夜"
},
abbreviated: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜間"
},
wide: {
am: "上午",
pm: "下午",
midnight: "凌晨",
noon: "中午",
morning: "早晨",
afternoon: "中午",
evening: "晚上",
night: "夜間"
}
}, ul = function(t, r) {
var a = Number(t);
switch (r == null ? void 0 : r.unit) {
case "date":
return a + "日";
case "hour":
return a + "時";
case "minute":
return a + "分";
case "second":
return a + "秒";
default:
return "第 " + a;
}
}, dl = {
ordinalNumber: ul,
era: l({
values: al,
defaultWidth: "wide"
}),
quarter: l({
values: rl,
defaultWidth: "wide",
argumentCallback: function(t) {
return t - 1;
}
}),
month: l({
values: nl,
defaultWidth: "wide"
}),
day: l({
values: ol,
defaultWidth: "wide"
}),
dayPeriod: l({
values: il,
defaultWidth: "wide",
formattingValues: ll,
defaultFormattingWidth: "wide"
})
};
const sl = dl;
var cl = /^(第\s*)?\d+(日|時|分|秒)?/i, ml = /\d+/i, fl = {
narrow: /^(前)/i,
abbreviated: /^(前)/i,
wide: /^(公元前|公元)/i
}, hl = {
any: [/^(前)/i, /^(公元)/i]
}, vl = {
narrow: /^[1234]/i,
abbreviated: /^第[一二三四]刻/i,
wide: /^第[一二三四]刻鐘/i
}, gl = {
any: [/(1|一)/i, /(2|二)/i, /(3|三)/i, /(4|四)/i]
}, pl = {
narrow: /^(一|二|三|四|五|六|七|八|九|十[二一])/i,
abbreviated: /^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i,
wide: /^(一|二|三|四|五|六|七|八|九|十[二一])月/i
}, yl = {
narrow: [/^一/i, /^二/i, /^三/i, /^四/i, /^五/i, /^六/i, /^七/i, /^八/i, /^九/i, /^十(?!(一|二))/i, /^十一/i, /^十二/i],
any: [/^一|1/i, /^二|2/i, /^三|3/i, /^四|4/i, /^五|5/i, /^六|6/i, /^七|7/i, /^八|8/i, /^九|9/i, /^十(?!(一|二))|10/i, /^十一|11/i, /^十二|12/i]
}, bl = {
narrow: /^[一二三四五六日]/i,
short: /^[一二三四五六日]/i,
abbreviated: /^週[一二三四五六日]/i,
wide: /^星期[一二三四五六日]/i
}, Pl = {
any: [/日/i, /一/i, /二/i, /三/i, /四/i, /五/i, /六/i]
}, Ml = {
any: /^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨)/i
}, wl = {
any: {
am: /^上午?/i,
pm: /^下午?/i,
midnight: /^午夜/i,
noon: /^[中正]午/i,
morning: /^早上/i,
afternoon: /^下午/i,
evening: /^晚上?/i,
night: /^凌晨/i
}
}, kl = {
ordinalNumber: S({
matchPattern: cl,
parsePattern: ml,
valueCallback: function(t) {
return parseInt(t, 10);
}
}),
era: u({
matchPatterns: fl,
defaultMatchWidth: "wide",
parsePatterns: hl,
defaultParseWidth: "any"
}),
quarter: u({
matchPatterns: vl,
defaultMatchWidth: "wide",
parsePatterns: gl,
defaultParseWidth: "any",
valueCallback: function(t) {
return t + 1;
}
}),
month: u({
matchPatterns: pl,
defaultMatchWidth: "wide",
parsePatterns: yl,
defaultParseWidth: "any"
}),
day: u({
matchPatterns: bl,
defaultMatchWidth: "wide",
parsePatterns: Pl,
defaultParseWidth: "any"
}),
dayPeriod: u({
matchPatterns: Ml,
defaultMatchWidth: "any",
parsePatterns: wl,
defaultParseWidth: "any"
})
};
const $l = kl;
var Tl = {
code: "zh-TW",
formatDistance: Ki,
formatLong: Ji,
formatRelative: tl,
localize: sl,
match: $l,
options: {
weekStartsOn: 1,
firstWeekContainsDate: 4
}
};
const _l = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
default: Tl
}, Symbol.toStringTag, { value: "Module" }));
function _e(e, t) {
if (e.one !== void 0 && t === 1)
return e.one;
var r = t % 10, a = t % 100;
return r === 1 && a !== 11 ? e.singularNominative.replace("{{count}}", String(t)) : r >= 2 && r <= 4 && (a < 10 || a > 20) ? e.singularGenitive.replace("{{count}}", String(t)) : e.pluralGenitive.replace("{{count}}", String(t));
}
function R(e) {
return function(t, r) {
return r != null && r.addSuffix ? r.comparison && r.comparison > 0 ? e.future ? _e(e.future, t) : "через " + _e(e.regular, t) : e.past ? _e(e.past, t) : _e(e.regular, t) + " назад" : _e(e.regular, t);
};
}
var Sl = {
lessThanXSeconds: R({
regular: {
one: "меньше секунды",
singularNominative: "меньше {{count}} секунды",
singularGenitive: "меньше {{count}} секунд",
pluralGenitive: "меньше {{count}} секунд"
},
future: {
one: "меньше, чем через секунду",
singularNominative: "меньше, чем через {{count}} секунду",
singularGenitive: "меньше, чем через {{count}} секунды",
pluralGenitive: "меньше, чем через {{count}} секунд"
}
}),
xSeconds: R({
regular: {
singularNominative: "{{count}} секунда",
singularGenitive: "{{count}} секунды",
pluralGenitive: "{{count}} секунд"
},
past: {
singularNominative: "{{count}} секунду назад",
singularGenitive: "{{count}} секунды назад",
pluralGenitive: "{{count}} секунд назад"
},
future: {
singularNominative: "через {{count}} секунду",
singularGenitive: "через {{count}} секунды",
pluralGenitive: "через {{count}} секунд"
}
}),
halfAMinute: function(t, r) {
return r != null && r.addSuffix ? r.comparison && r.comparison > 0 ? "через полминуты" : "полминуты назад" : "полминуты";
},
lessThanXMinutes: R({
regular: {
one: "меньше минуты",
singularNominative: "меньше {{count}} минуты",
singularGenitive: "меньше {{count}} минут",
pluralGenitive: "меньше {{count}} минут"
},
future: {
one: "меньше, чем через минуту",
singularNominative: "меньше, чем через {{count}} минуту",
singularGenitive: "меньше, чем через {{count}} минуты",
pluralGenitive: "меньше, чем через {{count}} минут"
}
}),
xMinutes: R({
regular: {
singularNominative: "{{count}} минута",
singularGenitive: "{{count}} минуты",
pluralGenitive: "{{count}} минут"
},
past: {
singularNominative: "{{count}} минуту назад",
singularGenitive: "{{count}} минуты назад",
pluralGenitive: "{{count}} минут назад"
},
future: {
singularNominative: "через {{count}} минуту",
singularGenitive: "через {{count}} минуты",
pluralGenitive: "через {{count}} минут"
}
}),
aboutXHours: R({
regular: {
singularNominative: "около {{count}} часа",
singularGenitive: "около {{count}} часов",
pluralGenitive: "около {{count}} часов"
},
future: {
singularNominative: "приблизительно через {{count}} час",
singularGenitive: "приблизительно через {{count}} часа",
pluralGenitive: "приблизительно через {{count}} часов"
}
}),
xHours: R({
regular: {
singularNominative: "{{count}} час",
singularGenitive: "{{count}} часа",
pluralGenitive: "{{count}} часов"
}
}),
xDays: R({
regular: {
singularNominative: "{{count}} день",
singularGenitive: "{{count}} дня",
pluralGenitive: "{{count}} дней"
}
}),
aboutXWeeks: R({
regular: {
singularNominative: "около {{count}} недели",
singularGenitive: "около {{count}} недель",
pluralGenitive: "около {{count}} недель"
},
future: {
singularNominative: "приблизительно через {{count}} неделю",
singularGenitive: "приблизительно через {{count}} недели",
pluralGenitive: "приблизительно через {{count}} недель"
}
}),
xWeeks: R({
regular: {
singularNominative: "{{count}} неделя",
singularGenitive: "{{count}} недели",
pluralGenitive: "{{count}} недель"
}
}),
aboutXMonths: R({
regular: {
singularNominative: "около {{count}} месяца",
singularGenitive: "около {{count}} месяцев",
pluralGenitive: "около {{count}} месяцев"
},
future: {
singularNominative: "приблизительно через {{count}} месяц",
singularGenitive: "приблизительно через {{count}} месяца",
pluralGenitive: "приблизительно через {{count}} месяцев"
}
}),
xMonths: R({
regular: {
singularNominative: "{{count}} месяц",
singularGenitive: "{{count}} месяца",
pluralGenitive: "{{count}} месяцев"
}
}),
aboutXYears: R({
regular: {
singularNominative: "около {{count}} года",
singularGenitive: "около {{count}} лет",
pluralGenitive: "около {{count}} лет"
},
future: {
singularNominative: "приблизительно через {{count}} год",
singularGenitive: "приблизительно через {{count}} года",
pluralGenitive: "приблизительно через {{count}} лет"
}
}),
xYears: R({
regular: {
singularNominative: "{{count}} год",
singularGenitive: "{{count}} года",
pluralGenitive: "{{count}} лет"
}
}),
overXYears: R({
regular: {
singularNominative: "больше {{count}} года",
singularGenitive: "больше {{count}} лет",
pluralGenitive: "больше {{count}} лет"
},
future: {
singularNominative: "больше, чем через {{count}} год",
singularGenitive: "больше, чем через {{count}} года",
pluralGenitive: "больше, чем через {{count}} лет"
}
}),
almostXYears: R({
regular: {
singularNominative: "почти {{count}} год",
singularGenitive: "почти {{count}} года",
pluralGenitive: "почти {{count}} лет"
},
future: {
singularNominative: "почти через {{count}} год",
singularGenitive: "почти через {{count}} года",
pluralGenitive: "почти через {{count}} лет"
}
})
}, jl = function(t, r, a) {
return Sl[t](r, a);
};
const Cl = jl;
var Dl = {
full: "EEEE, d MMMM y 'г.'",
long: "d MMMM y 'г.'",
medium: "d MMM y 'г.'",
short: "dd.MM.y"
}, Wl = {
full: "H:mm:ss zzzz",
long: "H:mm:ss z",
medium: "H:mm:ss",
short: "H:mm"
}, zl = {
any: "{{date}}, {{time}}"
}, Ol = {
date: v({
formats: Dl,
defaultWidth: "full"
}),
time: v({
formats: Wl,
defaultWidth: "full"
}),
dateTime: v({
formats: zl,
defaultWidth: "any"
})
};
const Nl = Ol;
var Gt = ["воскресенье", "понедельник", "вторник", "среду", "четверг", "пятницу", "субботу"];
function Fl(e) {
var t = Gt[e];
switch (e) {
case 0:
return "'в прошлое " + t + " в' p";
case 1:
case 2:
case 4:
return "'в прошлый " + t + " в' p";
case 3:
case 5:
case 6:
return "'в прошлую " + t + " в' p";
}
}
function gr(e) {
var t = Gt[e];
return e === 2 ? "'во " + t + " в' p" : "'в " + t + " в' p";
}
function El(e) {
var t = Gt[e];
switch (e) {
case 0:
return "'в следующее " + t + " в' p";
case 1:
case 2:
case 4:
return "'в следующий " + t + " в' p";
case 3:
case 5:
case 6:
return "'в следующую " + t + " в' p";
}
}
var Hl = {
lastWeek: function(t, r, a) {
var n = t.getUTCDay();
return U(t, r, a) ? gr(n) : Fl(n);
},
yesterday: "'вчера в' p",
today: "'сегодня в' p",
tomorrow: "'завтра в' p",
nextWeek: function(t, r, a) {
var n = t.getUTCDay();
return U(t, r, a) ? gr(n) : El(n);
},
other: "P"
}, Al = function(t, r, a, n) {
var o = Hl[t];
return typeof o == "function" ? o(r, a, n) : o;
};
const Il = Al;
var Rl = {
narrow: ["до н.э.", "н.э."],
abbreviated: ["до н. э.", "н. э."],
wide: ["до нашей эры", "нашей эры"]
}, Vl = {
narrow: ["1", "2", "3", "4"],
abbreviated: ["1-й кв.", "2-й кв.", "3-й кв.", "4-й кв."],
wide: ["1-й квартал", "2-й квартал", "3-й квартал", "4-й квартал"]
}, xl = {
narrow: ["Я", "Ф", "М", "А", "М", "И", "И", "А", "С", "О", "Н", "Д"],
abbreviated: ["янв.", "фев.", "март", "апр.", "май", "июнь", "июль", "авг.", "сент.", "окт.", "нояб.", "дек."],
wide: ["январь", "февраль", "март", "апрель", "май", "июнь", "июль", "август", "сентябрь", "октябрь", "ноябрь", "декабрь"]
}, Ll = {
narrow: ["Я", "Ф", "М", "А", "М", "И", "И", "А", "С", "О", "Н", "Д"],
abbreviated: ["янв.", "фев.", "мар.", "апр.", "мая", "июн.", "июл.", "авг.", "сент.", "окт.", "нояб.", "дек."],
wide: ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"]
}, ql = {
narrow: ["В", "П", "В", "С", "Ч", "П", "С"],
short: ["вс", "пн", "вт", "ср", "чт", "пт", "сб"],
abbreviated: ["вск", "пнд", "втр", "срд", "чтв", "птн", "суб"],
wide: ["воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота"]
}, Bl = {
narrow: {
am: "ДП",
pm: "ПП",
midnight: "полн.",
noon: "полд.",
morning: "утро",
afternoon: "день",
evening: "веч.",
night: "ночь"
},
abbreviated: {
am: "ДП",
pm: "ПП",
midnight: "полн.",
noon: "полд.",
morning: "утро",
afternoon: "день",
evening: "веч.",
night: "ночь"
},
wide: {
am: "ДП",
pm: "ПП",
midnight: "полночь",
noon: "полдень",
morning: "утро",
afternoon: "день",
evening: "вечер",
night: "ночь"
}
}, Xl = {
narrow: {
am: "ДП",
pm: "ПП",
mid