@companix/uikit 0.1.15 → 0.1.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DrawerMobile/MobileDrawer.scss +71 -0
- package/dist/DrawerMobile/constants.d.ts +9 -0
- package/dist/DrawerMobile/context.d.ts +18 -0
- package/dist/DrawerMobile/helpers.d.ts +13 -0
- package/dist/DrawerMobile/index.d.ts +17 -0
- package/dist/DrawerMobile/types.d.ts +5 -0
- package/dist/DrawerMobile/use-prevent-scroll.d.ts +5 -0
- package/dist/Popup/index.d.ts +4 -2
- package/dist/__helpers/createPopupRegistry.d.ts +4 -0
- package/dist/bundle.es.js +112 -109
- package/dist/bundle.es10.js +1 -1
- package/dist/bundle.es13.js +4 -4
- package/dist/bundle.es14.js +4 -4
- package/dist/bundle.es15.js +2 -2
- package/dist/bundle.es16.js +1 -1
- package/dist/bundle.es17.js +1 -1
- package/dist/bundle.es19.js +1 -1
- package/dist/bundle.es22.js +1 -1
- package/dist/bundle.es23.js +260 -13
- package/dist/bundle.es24.js +14 -21
- package/dist/bundle.es25.js +20 -37
- package/dist/bundle.es26.js +38 -21
- package/dist/bundle.es27.js +20 -18
- package/dist/bundle.es28.js +18 -20
- package/dist/bundle.es29.js +20 -43
- package/dist/bundle.es30.js +37 -114
- package/dist/bundle.es31.js +119 -72
- package/dist/bundle.es32.js +68 -38
- package/dist/bundle.es33.js +42 -10
- package/dist/bundle.es34.js +11 -85
- package/dist/bundle.es35.js +85 -19
- package/dist/bundle.es36.js +20 -7
- package/dist/bundle.es37.js +7 -3
- package/dist/bundle.es38.js +3 -23
- package/dist/bundle.es39.js +16 -45
- package/dist/bundle.es40.js +51 -56
- package/dist/bundle.es41.js +57 -162
- package/dist/bundle.es42.js +160 -79
- package/dist/bundle.es43.js +81 -7
- package/dist/bundle.es44.js +7 -35
- package/dist/bundle.es45.js +33 -20
- package/dist/bundle.es46.js +19 -47
- package/dist/bundle.es47.js +49 -11
- package/dist/bundle.es48.js +11 -13
- package/dist/bundle.es49.js +13 -13
- package/dist/bundle.es50.js +13 -30
- package/dist/bundle.es51.js +29 -25
- package/dist/bundle.es52.js +17 -29
- package/dist/bundle.es53.js +36 -48
- package/dist/bundle.es54.js +49 -50
- package/dist/bundle.es55.js +56 -8
- package/dist/bundle.es56.js +8 -26
- package/dist/bundle.es57.js +27 -5
- package/dist/bundle.es58.js +5 -66
- package/dist/bundle.es59.js +66 -23
- package/dist/bundle.es60.js +22 -23
- package/dist/bundle.es61.js +24 -88
- package/dist/bundle.es62.js +88 -18
- package/dist/bundle.es63.js +17 -92
- package/dist/bundle.es64.js +92 -73
- package/dist/bundle.es65.js +73 -23
- package/dist/bundle.es66.js +20 -35
- package/dist/bundle.es67.js +37 -68
- package/dist/bundle.es68.js +23 -10
- package/dist/bundle.es69.js +78 -42
- package/dist/bundle.es70.js +93 -33
- package/dist/bundle.es71.js +10 -66
- package/dist/bundle.es72.js +69 -40
- package/dist/bundle.es73.js +10 -14
- package/dist/bundle.es74.js +43 -32
- package/dist/bundle.es75.js +32 -69
- package/dist/bundle.es76.js +65 -74
- package/dist/bundle.es77.js +39 -47
- package/dist/bundle.es78.js +14 -13
- package/dist/bundle.es79.js +32 -14
- package/dist/bundle.es80.js +72 -0
- package/dist/bundle.es81.js +77 -0
- package/dist/bundle.es82.js +51 -0
- package/dist/bundle.es83.js +16 -0
- package/dist/bundle.es84.js +16 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.scss +1 -0
- package/package.json +1 -1
package/dist/bundle.es65.js
CHANGED
|
@@ -1,26 +1,76 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
mask: r,
|
|
17
|
-
maskChar: f,
|
|
18
|
-
onChange: p,
|
|
19
|
-
...a
|
|
20
|
-
}
|
|
21
|
-
) : /* @__PURE__ */ u("input", { ref: e, ...a, onChange: p });
|
|
1
|
+
import { clamp as m } from "@companix/utils-browser";
|
|
2
|
+
import { formatTime as i } from "@companix/utils-js";
|
|
3
|
+
const d = (n, r) => new Date(r, n, 0).getDate(), u = (n, r) => new Date(r, n - 1, 1).getDay(), g = (n) => n === 0 ? 6 : n - 1, D = (n) => new Array(n).fill(0), T = {
|
|
4
|
+
add: (n, r) => n.includes(r) ? [...n] : [...n, r],
|
|
5
|
+
remove: (n, r) => n.filter((t) => r !== t)
|
|
6
|
+
}, p = (n) => ({
|
|
7
|
+
day: n.getDate(),
|
|
8
|
+
month: n.getMonth() + 1,
|
|
9
|
+
year: n.getFullYear()
|
|
10
|
+
}), A = ({ min: n, max: r }) => (t) => {
|
|
11
|
+
if (n.year === t.year) {
|
|
12
|
+
if (t.month !== 0 && t.month < n.month)
|
|
13
|
+
return t.month = 0, t.day = 0, t;
|
|
14
|
+
if (t.month === n.month && t.day < n.day && t.day !== 0)
|
|
15
|
+
return t.day = 0, t;
|
|
22
16
|
}
|
|
23
|
-
)
|
|
17
|
+
if (r.year === t.year) {
|
|
18
|
+
if (t.month !== 0 && t.month > r.month)
|
|
19
|
+
return t.month = 0, t.day = 0, t;
|
|
20
|
+
if (t.month === r.month && t.day > r.day && t.day !== 0)
|
|
21
|
+
return t.day = 0, t;
|
|
22
|
+
}
|
|
23
|
+
}, M = ["Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Вс"], w = [
|
|
24
|
+
"Январь",
|
|
25
|
+
"Февраль",
|
|
26
|
+
"Март",
|
|
27
|
+
"Апрель",
|
|
28
|
+
"Май",
|
|
29
|
+
"Июнь",
|
|
30
|
+
"Июль",
|
|
31
|
+
"Август",
|
|
32
|
+
"Сентябрь",
|
|
33
|
+
"Октябрь",
|
|
34
|
+
"Ноябрь",
|
|
35
|
+
"Декабрь"
|
|
36
|
+
], c = 9999, a = 100, F = (n, r) => {
|
|
37
|
+
const t = [], o = m(n - r, a, c), e = m(n + r, a, c);
|
|
38
|
+
for (let s = o; s <= e; s++)
|
|
39
|
+
t.push({ title: String(s).padStart(4, "0"), value: s });
|
|
40
|
+
return t;
|
|
41
|
+
}, Y = (n) => {
|
|
42
|
+
const r = [], t = new Intl.DateTimeFormat(n, {
|
|
43
|
+
month: "long"
|
|
44
|
+
});
|
|
45
|
+
for (let o = 0; o < 12; o++)
|
|
46
|
+
r.push({
|
|
47
|
+
title: t.format(new Date(2023, o, 15)),
|
|
48
|
+
value: o
|
|
49
|
+
});
|
|
50
|
+
return r;
|
|
51
|
+
}, E = (n, r) => r.reduce((t, o) => t.replaceAll(o, ""), n.trim()), _ = ({ hours: n, minutes: r }, t = ":") => [i(n), i(r)].join(t), h = (n, r = ":") => {
|
|
52
|
+
const [t, o] = [i(n.hours), i(n.minutes)], e = [t, o].join(r);
|
|
53
|
+
return { title: e, value: e, hours: t, minutes: o };
|
|
54
|
+
}, I = (n, r = ":") => {
|
|
55
|
+
const t = { minutes: -n, hours: 0 };
|
|
56
|
+
return Array.from({ length: 1440 / n }).map(() => (t.minutes += n, t.minutes === 60 && (t.minutes = 0, t.hours++), h(t, r)));
|
|
57
|
+
};
|
|
24
58
|
export {
|
|
25
|
-
|
|
59
|
+
c as DEFAULT_MAX_YEAR,
|
|
60
|
+
a as DEFAULT_MIN_YEAR,
|
|
61
|
+
w as DefaultMonths,
|
|
62
|
+
T as arrays,
|
|
63
|
+
_ as convertTimeToOption,
|
|
64
|
+
A as createDateValidation,
|
|
65
|
+
D as createVoids,
|
|
66
|
+
p as dateToFormat,
|
|
67
|
+
g as getDayIndex,
|
|
68
|
+
u as getFirstDay,
|
|
69
|
+
d as getMonthMaxDay,
|
|
70
|
+
Y as getMonths,
|
|
71
|
+
h as getTimeValue,
|
|
72
|
+
I as getTimesOptions,
|
|
73
|
+
F as getYears,
|
|
74
|
+
E as removeDigits,
|
|
75
|
+
M as weeks
|
|
26
76
|
};
|
package/dist/bundle.es66.js
CHANGED
|
@@ -1,41 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
className: f,
|
|
15
|
-
inputRef: m,
|
|
16
|
-
children: n,
|
|
17
|
-
...p
|
|
18
|
-
}, c) => {
|
|
19
|
-
const { leftRef: l, rightRef: u } = N(m, [r, a]);
|
|
20
|
-
return /* @__PURE__ */ b(
|
|
21
|
-
"div",
|
|
1
|
+
import { jsx as u } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as m, useCallback as i } from "react";
|
|
3
|
+
import c from "react-input-mask";
|
|
4
|
+
const I = m(
|
|
5
|
+
({ mask: r, maskChar: f = "_", onChange: n, onValueChange: o, ...a }, e) => {
|
|
6
|
+
const p = i(
|
|
7
|
+
(t) => {
|
|
8
|
+
n?.(t), o?.(t.target.value, t.target);
|
|
9
|
+
},
|
|
10
|
+
[n, o]
|
|
11
|
+
);
|
|
12
|
+
return r ? /* @__PURE__ */ u(
|
|
13
|
+
c,
|
|
22
14
|
{
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"data-disabled": e(t),
|
|
29
|
-
...p,
|
|
30
|
-
children: [
|
|
31
|
-
r && /* @__PURE__ */ o("span", { ref: l, className: "form-input-base-left-element", children: r }),
|
|
32
|
-
n,
|
|
33
|
-
a && /* @__PURE__ */ o("span", { ref: u, className: "form-input-base-right-element", children: a })
|
|
34
|
-
]
|
|
15
|
+
inputRef: e,
|
|
16
|
+
mask: r,
|
|
17
|
+
maskChar: f,
|
|
18
|
+
onChange: p,
|
|
19
|
+
...a
|
|
35
20
|
}
|
|
36
|
-
);
|
|
21
|
+
) : /* @__PURE__ */ u("input", { ref: e, ...a, onChange: p });
|
|
37
22
|
}
|
|
38
23
|
);
|
|
39
24
|
export {
|
|
40
|
-
|
|
25
|
+
I as InputElement
|
|
41
26
|
};
|
package/dist/bundle.es67.js
CHANGED
|
@@ -1,72 +1,41 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
return /* @__PURE__ */ D("div", { className: "calendar", children: [
|
|
23
|
-
/* @__PURE__ */ t(
|
|
24
|
-
F,
|
|
1
|
+
import { jsxs as b, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import h from "classnames";
|
|
3
|
+
import { attr as e } from "@companix/utils-browser";
|
|
4
|
+
import { forwardRef as x } from "react";
|
|
5
|
+
import { useInputPadding as N } from "./bundle.es83.js";
|
|
6
|
+
const v = x(
|
|
7
|
+
({
|
|
8
|
+
required: s,
|
|
9
|
+
disabled: t,
|
|
10
|
+
size: i,
|
|
11
|
+
fill: d,
|
|
12
|
+
leftElement: r,
|
|
13
|
+
rightElement: a,
|
|
14
|
+
className: f,
|
|
15
|
+
inputRef: m,
|
|
16
|
+
children: n,
|
|
17
|
+
...p
|
|
18
|
+
}, c) => {
|
|
19
|
+
const { leftRef: l, rightRef: u } = N(m, [r, a]);
|
|
20
|
+
return /* @__PURE__ */ b(
|
|
21
|
+
"div",
|
|
25
22
|
{
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
23
|
+
ref: c,
|
|
24
|
+
className: h("form", f),
|
|
25
|
+
"data-size": i ?? "md",
|
|
26
|
+
"data-fill": e(d),
|
|
27
|
+
"data-required": e(s),
|
|
28
|
+
"data-disabled": e(t),
|
|
29
|
+
...p,
|
|
30
|
+
children: [
|
|
31
|
+
r && /* @__PURE__ */ o("span", { ref: l, className: "form-input-base-left-element", children: r }),
|
|
32
|
+
n,
|
|
33
|
+
a && /* @__PURE__ */ o("span", { ref: u, className: "form-input-base-right-element", children: a })
|
|
34
|
+
]
|
|
33
35
|
}
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
p(b(u(o.month, o.year))).map((d, a) => /* @__PURE__ */ t("div", { className: "calendar-day", "data-void": !0 }, `void-${d}-${a}`)),
|
|
38
|
-
p(k(o.month, o.year)).map((d, a) => {
|
|
39
|
-
const s = new Date(y, h, a + 1);
|
|
40
|
-
return /* @__PURE__ */ t(
|
|
41
|
-
P,
|
|
42
|
-
{
|
|
43
|
-
day: a + 1,
|
|
44
|
-
disabled: w(s),
|
|
45
|
-
selected: !!(e && f(e, s)),
|
|
46
|
-
today: f(s, C),
|
|
47
|
-
onSelect: () => i?.(s)
|
|
48
|
-
},
|
|
49
|
-
`date-${d}-${y}-${h}-${a}`
|
|
50
|
-
);
|
|
51
|
-
})
|
|
52
|
-
] })
|
|
53
|
-
] });
|
|
54
|
-
}, P = ({ day: c, disabled: e, selected: i, today: l, onSelect: n }) => {
|
|
55
|
-
const r = () => {
|
|
56
|
-
e || n?.();
|
|
57
|
-
};
|
|
58
|
-
return /* @__PURE__ */ t(
|
|
59
|
-
"div",
|
|
60
|
-
{
|
|
61
|
-
className: "calendar-day",
|
|
62
|
-
"data-disabled": m(e),
|
|
63
|
-
"data-selected": m(i),
|
|
64
|
-
"data-today": m(l),
|
|
65
|
-
onClick: r,
|
|
66
|
-
children: /* @__PURE__ */ t("span", { className: "calendar-day-number", children: c })
|
|
67
|
-
}
|
|
68
|
-
);
|
|
69
|
-
};
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
);
|
|
70
39
|
export {
|
|
71
|
-
|
|
40
|
+
v as InputContainer
|
|
72
41
|
};
|
package/dist/bundle.es68.js
CHANGED
|
@@ -1,13 +1,26 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import r from "react";
|
|
2
|
+
const t = r.createContext({
|
|
3
|
+
drawerRef: { current: null },
|
|
4
|
+
overlayRef: { current: null },
|
|
5
|
+
onPress: () => {
|
|
6
|
+
},
|
|
7
|
+
onRelease: () => {
|
|
8
|
+
},
|
|
9
|
+
onDrag: () => {
|
|
10
|
+
},
|
|
11
|
+
isOpen: !1,
|
|
12
|
+
isDragging: !1,
|
|
13
|
+
keyboardIsOpen: { current: !1 },
|
|
14
|
+
closeDrawer: () => {
|
|
15
|
+
},
|
|
16
|
+
shouldAnimate: { current: !0 }
|
|
17
|
+
}), o = () => {
|
|
18
|
+
const e = r.useContext(t);
|
|
19
|
+
if (!e)
|
|
20
|
+
throw new Error("useDrawerContext must be used within a MobileDrawer.Root");
|
|
21
|
+
return e;
|
|
10
22
|
};
|
|
11
23
|
export {
|
|
12
|
-
|
|
24
|
+
t as DrawerContext,
|
|
25
|
+
o as useDrawerContext
|
|
13
26
|
};
|
package/dist/bundle.es69.js
CHANGED
|
@@ -1,45 +1,81 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const n = f.map((o, a) => ({
|
|
10
|
-
title: o,
|
|
11
|
-
value: a + 1
|
|
12
|
-
}));
|
|
13
|
-
if (t.month && r.year === t.year) {
|
|
14
|
-
const o = n.findIndex(({ value: a }) => a === t.month);
|
|
15
|
-
n.splice(0, o);
|
|
1
|
+
const a = /* @__PURE__ */ new WeakMap();
|
|
2
|
+
function d(t, n, e = !1) {
|
|
3
|
+
if (!t || !(t instanceof HTMLElement)) return;
|
|
4
|
+
const o = {};
|
|
5
|
+
Object.entries(n).forEach(([i, s]) => {
|
|
6
|
+
if (i.startsWith("--")) {
|
|
7
|
+
t.style.setProperty(i, s);
|
|
8
|
+
return;
|
|
16
9
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
10
|
+
o[i] = t.style[i], t.style[i] = s;
|
|
11
|
+
}), !e && a.set(t, o);
|
|
12
|
+
}
|
|
13
|
+
function p(t, n) {
|
|
14
|
+
if (!t || !(t instanceof HTMLElement)) return;
|
|
15
|
+
const e = a.get(t);
|
|
16
|
+
e && (t.style[n] = e[n]);
|
|
17
|
+
}
|
|
18
|
+
function w(t) {
|
|
19
|
+
if (!t)
|
|
20
|
+
return null;
|
|
21
|
+
const n = window.getComputedStyle(t), e = (
|
|
22
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
23
|
+
// @ts-ignore
|
|
24
|
+
n.transform || n.webkitTransform || n.mozTransform
|
|
25
|
+
);
|
|
26
|
+
let o = e.match(/^matrix3d\((.+)\)$/);
|
|
27
|
+
return o ? parseFloat(o[1].split(", ")[13]) : (o = e.match(/^matrix\((.+)\)$/), o ? parseFloat(o[1].split(", ")[5]) : null);
|
|
28
|
+
}
|
|
29
|
+
function h(t) {
|
|
30
|
+
return 8 * (Math.log(t + 1) - 2);
|
|
31
|
+
}
|
|
32
|
+
const u = /* @__PURE__ */ new Set([
|
|
33
|
+
"checkbox",
|
|
34
|
+
"radio",
|
|
35
|
+
"range",
|
|
36
|
+
"color",
|
|
37
|
+
"file",
|
|
38
|
+
"image",
|
|
39
|
+
"button",
|
|
40
|
+
"submit",
|
|
41
|
+
"reset"
|
|
42
|
+
]);
|
|
43
|
+
function T(t) {
|
|
44
|
+
return t instanceof HTMLInputElement && !u.has(t.type) || t instanceof HTMLTextAreaElement || t instanceof HTMLElement && t.isContentEditable;
|
|
45
|
+
}
|
|
46
|
+
function r(t) {
|
|
47
|
+
return typeof window < "u" && window.navigator != null ? t.test(window.navigator.platform) : void 0;
|
|
48
|
+
}
|
|
49
|
+
function f() {
|
|
50
|
+
return r(/^Mac/);
|
|
51
|
+
}
|
|
52
|
+
function c() {
|
|
53
|
+
return r(/^iPhone/);
|
|
54
|
+
}
|
|
55
|
+
function l() {
|
|
56
|
+
return r(/^iPad/) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.
|
|
57
|
+
f() && navigator.maxTouchPoints > 1;
|
|
58
|
+
}
|
|
59
|
+
function M() {
|
|
60
|
+
return c() || l();
|
|
61
|
+
}
|
|
62
|
+
function g() {
|
|
63
|
+
const t = navigator.userAgent;
|
|
64
|
+
return typeof window < "u" && (/Firefox/.test(t) && /Mobile/.test(t) || /FxiOS/.test(t));
|
|
65
|
+
}
|
|
66
|
+
function m(t, n) {
|
|
67
|
+
typeof t == "function" ? t(n) : t != null && (t.current = n);
|
|
68
|
+
}
|
|
69
|
+
function x(...t) {
|
|
70
|
+
return (n) => t.forEach((e) => m(e, n));
|
|
71
|
+
}
|
|
41
72
|
export {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
73
|
+
x as composeRefs,
|
|
74
|
+
h as dampenValue,
|
|
75
|
+
w as getTranslate,
|
|
76
|
+
M as isIOS,
|
|
77
|
+
T as isInput,
|
|
78
|
+
g as isMobileFirefox,
|
|
79
|
+
p as reset,
|
|
80
|
+
d as set
|
|
45
81
|
};
|
package/dist/bundle.es70.js
CHANGED
|
@@ -1,35 +1,95 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}, [e
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
1
|
+
import { useLayoutEffect as Y, useEffect as B } from "react";
|
|
2
|
+
import { isIOS as R, isInput as g } from "./bundle.es69.js";
|
|
3
|
+
const C = 24, F = typeof window < "u" ? Y : B;
|
|
4
|
+
function w(...t) {
|
|
5
|
+
return (...e) => {
|
|
6
|
+
for (const o of t)
|
|
7
|
+
typeof o == "function" && o(...e);
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
const m = typeof document < "u" ? window.visualViewport : null;
|
|
11
|
+
function E(t) {
|
|
12
|
+
const e = window.getComputedStyle(t);
|
|
13
|
+
return /(auto|scroll)/.test(e.overflow + e.overflowX + e.overflowY);
|
|
14
|
+
}
|
|
15
|
+
function y(t) {
|
|
16
|
+
for (E(t) && (t = t.parentElement); t && !E(t); )
|
|
17
|
+
t = t.parentElement;
|
|
18
|
+
return t || document.scrollingElement || document.documentElement;
|
|
19
|
+
}
|
|
20
|
+
let s = 0, v;
|
|
21
|
+
function H(t = {}) {
|
|
22
|
+
const { isDisabled: e } = t;
|
|
23
|
+
F(() => {
|
|
24
|
+
if (!e)
|
|
25
|
+
return s++, s === 1 && R() && (v = D()), () => {
|
|
26
|
+
s--, s === 0 && v?.();
|
|
27
|
+
};
|
|
28
|
+
}, [e]);
|
|
29
|
+
}
|
|
30
|
+
function D() {
|
|
31
|
+
let t, e = 0;
|
|
32
|
+
const o = (r) => {
|
|
33
|
+
t = y(r.target), !(t === document.documentElement && t === document.body) && (e = r.changedTouches[0].pageY);
|
|
34
|
+
}, c = (r) => {
|
|
35
|
+
if (!t || t === document.documentElement || t === document.body) {
|
|
36
|
+
r.preventDefault();
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const n = r.changedTouches[0].pageY, d = t.scrollTop, p = t.scrollHeight - t.clientHeight;
|
|
40
|
+
p !== 0 && ((d <= 0 && n > e || d >= p && n < e) && r.preventDefault(), e = n);
|
|
41
|
+
}, i = (r) => {
|
|
42
|
+
const n = r.target;
|
|
43
|
+
g(n) && n !== document.activeElement && (r.preventDefault(), n.style.transform = "translateY(-2000px)", n.focus(), requestAnimationFrame(() => {
|
|
44
|
+
n.style.transform = "";
|
|
45
|
+
}));
|
|
46
|
+
}, u = (r) => {
|
|
47
|
+
const n = r.target;
|
|
48
|
+
g(n) && (n.style.transform = "translateY(-2000px)", requestAnimationFrame(() => {
|
|
49
|
+
n.style.transform = "", m && (m.height < window.innerHeight ? requestAnimationFrame(() => {
|
|
50
|
+
h(n);
|
|
51
|
+
}) : m.addEventListener("resize", () => h(n), { once: !0 }));
|
|
52
|
+
}));
|
|
53
|
+
}, a = () => {
|
|
54
|
+
window.scrollTo(0, 0);
|
|
55
|
+
}, f = window.pageXOffset, b = window.pageYOffset, T = w(
|
|
56
|
+
L(document.documentElement, "paddingRight", `${window.innerWidth - document.documentElement.clientWidth}px`)
|
|
57
|
+
);
|
|
58
|
+
window.scrollTo(0, 0);
|
|
59
|
+
const S = w(
|
|
60
|
+
l(document, "touchstart", o, { passive: !1, capture: !0 }),
|
|
61
|
+
l(document, "touchmove", c, { passive: !1, capture: !0 }),
|
|
62
|
+
l(document, "touchend", i, { passive: !1, capture: !0 }),
|
|
63
|
+
l(document, "focus", u, !0),
|
|
64
|
+
l(window, "scroll", a)
|
|
65
|
+
);
|
|
66
|
+
return () => {
|
|
67
|
+
T(), S(), window.scrollTo(f, b);
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function L(t, e, o) {
|
|
71
|
+
const c = t.style[e];
|
|
72
|
+
return t.style[e] = o, () => {
|
|
73
|
+
t.style[e] = c;
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
function l(t, e, o, c) {
|
|
77
|
+
return t.addEventListener(e, o, c), () => {
|
|
78
|
+
t.removeEventListener(e, o, c);
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function h(t) {
|
|
82
|
+
const e = document.scrollingElement || document.documentElement;
|
|
83
|
+
let o = t;
|
|
84
|
+
for (; o && o !== e; ) {
|
|
85
|
+
const c = y(o);
|
|
86
|
+
if (c !== document.documentElement && c !== document.body && c !== o) {
|
|
87
|
+
const i = c.getBoundingClientRect().top, u = o.getBoundingClientRect().top, a = o.getBoundingClientRect().bottom, f = c.getBoundingClientRect().bottom + C;
|
|
88
|
+
a > f && (c.scrollTop += u - i);
|
|
89
|
+
}
|
|
90
|
+
o = c.parentElement;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
33
93
|
export {
|
|
34
|
-
|
|
94
|
+
H as usePreventScroll
|
|
35
95
|
};
|
package/dist/bundle.es71.js
CHANGED
|
@@ -1,68 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
"ArrowDown",
|
|
6
|
-
"ArrowUp",
|
|
7
|
-
"Mod+ArrowDown",
|
|
8
|
-
"Mod+ArrowUp",
|
|
9
|
-
"Enter",
|
|
10
|
-
"Escape",
|
|
11
|
-
"Backspace",
|
|
12
|
-
"Shift+Enter",
|
|
13
|
-
"Mod+Enter",
|
|
14
|
-
"ArrowLeft",
|
|
15
|
-
"ArrowRight",
|
|
16
|
-
"Tab",
|
|
17
|
-
"Shift+Tab",
|
|
18
|
-
"Space",
|
|
19
|
-
"Mod+B",
|
|
20
|
-
"Mod+U",
|
|
21
|
-
"Mod+I",
|
|
22
|
-
"Mod+S",
|
|
23
|
-
"Mod+K",
|
|
24
|
-
"Mod+Equal",
|
|
25
|
-
"Mod+Shift+Equal",
|
|
26
|
-
"Mod+Minus",
|
|
27
|
-
"Mod+Shift+Minus",
|
|
28
|
-
"PageUp",
|
|
29
|
-
"PageDown",
|
|
30
|
-
"Home",
|
|
31
|
-
"End"
|
|
32
|
-
], c = typeof navigator < "u" && /Mac|iPhone|iPad|iPod/i.test(navigator.platform), d = (o) => o.key === "Meta" || o.metaKey, s = (o) => o.key === "Control" || o.ctrlKey, M = {
|
|
33
|
-
Mod: (o) => c ? d(o) : s(o),
|
|
34
|
-
Alt: (o) => o.key === "Alt" || o.altKey,
|
|
35
|
-
Shift: (o) => o.key === "Shift" || o.shiftKey,
|
|
36
|
-
Meta: (o) => c ? s(o) : d(o)
|
|
37
|
-
}, f = (o) => {
|
|
38
|
-
try {
|
|
39
|
-
const t = [];
|
|
40
|
-
for (const e of Object.values(a))
|
|
41
|
-
M[e](o) && t.push(e);
|
|
42
|
-
if (["Meta", "Control", "Alt", "Shift"].includes(o.key)) {
|
|
43
|
-
const e = t.join("+");
|
|
44
|
-
return { key: e, code: e };
|
|
45
|
-
}
|
|
46
|
-
const r = ["Key", "Digit", "Numpad"].find((e) => o.code.startsWith(e)), n = r ? o.code.slice(r.length) : o.code, i = o.key.length === 1 ? o.key.toUpperCase() : o.key;
|
|
47
|
-
return {
|
|
48
|
-
key: [...t, i].join("+"),
|
|
49
|
-
code: [...t, n].join("+")
|
|
50
|
-
};
|
|
51
|
-
} catch {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
}, y = (o) => {
|
|
55
|
-
const t = f(o);
|
|
56
|
-
if (!t)
|
|
57
|
-
return null;
|
|
58
|
-
const { key: r, code: n } = t;
|
|
59
|
-
return [r, n].find((i) => l.includes(i)) ?? null;
|
|
60
|
-
}, u = (o) => (t) => {
|
|
61
|
-
o(y(t), t);
|
|
62
|
-
};
|
|
1
|
+
const O = {
|
|
2
|
+
DURATION: 0.5,
|
|
3
|
+
EASE: [0.32, 0.72, 0, 1]
|
|
4
|
+
}, S = 0.4, T = 0.25, E = 100, L = "drawer-dragging", n = 26;
|
|
63
5
|
export {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
6
|
+
T as CLOSE_THRESHOLD,
|
|
7
|
+
L as DRAG_CLASS,
|
|
8
|
+
E as SCROLL_LOCK_TIMEOUT,
|
|
9
|
+
O as TRANSITIONS,
|
|
10
|
+
S as VELOCITY_THRESHOLD,
|
|
11
|
+
n as WINDOW_TOP_OFFSET
|
|
68
12
|
};
|