@companix/uikit 0.0.9 → 0.0.12
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/README.md +16 -0
- package/dist/DatePicker/index.d.ts +1 -1
- package/dist/FormGroup/FormGroup.scss +32 -0
- package/dist/FormGroup/index.d.ts +10 -0
- package/dist/{Form → Input}/index.d.ts +1 -1
- package/dist/NumberInput/index.d.ts +1 -1
- package/dist/Select/index.d.ts +1 -1
- package/dist/bundle.es.js +18 -16
- package/dist/bundle.es10.js +1 -1
- package/dist/bundle.es11.js +7 -7
- package/dist/bundle.es14.js +1 -1
- package/dist/bundle.es19.js +1 -1
- package/dist/bundle.es20.js +1 -1
- package/dist/bundle.es23.js +1 -1
- package/dist/bundle.es24.js +2 -2
- package/dist/bundle.es25.js +14 -14
- package/dist/bundle.es27.js +11 -10
- package/dist/bundle.es28.js +10 -24
- package/dist/bundle.es29.js +17 -28
- package/dist/bundle.es30.js +32 -20
- package/dist/bundle.es31.js +24 -81
- package/dist/bundle.es32.js +81 -18
- package/dist/bundle.es33.js +17 -13
- package/dist/bundle.es34.js +14 -22
- package/dist/bundle.es35.js +22 -5
- package/dist/bundle.es36.js +5 -21
- package/dist/bundle.es37.js +20 -13
- package/dist/bundle.es38.js +13 -69
- package/dist/bundle.es39.js +68 -66
- package/dist/bundle.es40.js +67 -31
- package/dist/bundle.es41.js +23 -59
- package/dist/bundle.es42.js +63 -38
- package/dist/bundle.es43.js +42 -30
- package/dist/bundle.es44.js +30 -74
- package/dist/bundle.es45.js +71 -45
- package/dist/bundle.es46.js +51 -0
- package/dist/bundle.es8.js +3 -3
- package/dist/bundle.es9.js +26 -24
- package/dist/index.d.ts +2 -1
- package/dist/index.scss +3 -2
- package/package.json +4 -3
- package/dist/normalize.css +0 -376
- /package/dist/{Form → Input}/Form.scss +0 -0
- /package/dist/{Form → Input}/Input.scss +0 -0
package/dist/bundle.es41.js
CHANGED
|
@@ -1,70 +1,34 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const { side: f = "top", align: i = "center", gap: m = 14, duration: u, swipeThreshold: v, closeIcon: x } = e, [l, p] = I([]), o = P(() => ({}), []);
|
|
9
|
-
R(
|
|
10
|
-
h,
|
|
1
|
+
import { jsx as s, Fragment as p } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as f, useState as u, useImperativeHandle as c } from "react";
|
|
3
|
+
import { AlertDialog as x } from "./bundle.es19.js";
|
|
4
|
+
const g = f((a, l) => {
|
|
5
|
+
const [i, n] = u([]);
|
|
6
|
+
c(
|
|
7
|
+
l,
|
|
11
8
|
() => ({
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
showAlert: (e) => {
|
|
10
|
+
n((t) => [...t, e]);
|
|
14
11
|
}
|
|
15
12
|
}),
|
|
16
13
|
[]
|
|
17
14
|
);
|
|
18
|
-
const d =
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
o[t[n].id] && (s += o[t[n].id].clientHeight + m);
|
|
23
|
-
o[r] && o[r].style.setProperty("--offset", `${s}px`);
|
|
24
|
-
});
|
|
25
|
-
}, []), y = (t) => {
|
|
26
|
-
p((r) => {
|
|
27
|
-
const a = [...r], s = a.findIndex((n) => n.id === t);
|
|
28
|
-
return s !== -1 && a.splice(s, 1), a;
|
|
15
|
+
const d = (e) => {
|
|
16
|
+
n((t) => {
|
|
17
|
+
const r = [...t], o = r.findIndex((m) => m.id === e);
|
|
18
|
+
return o !== -1 && r.splice(o, 1), r;
|
|
29
19
|
});
|
|
30
20
|
};
|
|
31
|
-
return /* @__PURE__ */
|
|
32
|
-
|
|
21
|
+
return /* @__PURE__ */ s(p, { children: i.map(({ id: e, ...t }) => /* @__PURE__ */ s(
|
|
22
|
+
x,
|
|
33
23
|
{
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
...r,
|
|
42
|
-
key: `toaster-${t}`,
|
|
43
|
-
closeIcon: x,
|
|
44
|
-
onInitialized: (a) => {
|
|
45
|
-
o[t] = a, d(l);
|
|
46
|
-
},
|
|
47
|
-
onRemoving: () => {
|
|
48
|
-
delete o[t], d(l);
|
|
49
|
-
},
|
|
50
|
-
onRemoved: () => {
|
|
51
|
-
o[t] && delete o[t], y(t);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
)),
|
|
55
|
-
/* @__PURE__ */ $(
|
|
56
|
-
c.Viewport,
|
|
57
|
-
{
|
|
58
|
-
"data-side": f,
|
|
59
|
-
"data-align": i,
|
|
60
|
-
className: "toaster-viewport",
|
|
61
|
-
style: w({ "--toasters-gap": `${m}px` })
|
|
62
|
-
}
|
|
63
|
-
)
|
|
64
|
-
]
|
|
65
|
-
}
|
|
66
|
-
);
|
|
24
|
+
defaultOpen: !0,
|
|
25
|
+
onUnMounted: () => d(e),
|
|
26
|
+
...a,
|
|
27
|
+
...t
|
|
28
|
+
},
|
|
29
|
+
`alert-${e}`
|
|
30
|
+
)) });
|
|
67
31
|
});
|
|
68
32
|
export {
|
|
69
|
-
|
|
33
|
+
g as Viewport
|
|
70
34
|
};
|
package/dist/bundle.es42.js
CHANGED
|
@@ -1,45 +1,70 @@
|
|
|
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
|
-
|
|
23
|
-
|
|
1
|
+
import { jsxs as T, jsx as $ } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as b, useState as I, useMemo as P, useImperativeHandle as R, useCallback as j, createElement as k } from "react";
|
|
3
|
+
import * as c from "@radix-ui/react-toast";
|
|
4
|
+
import { varToStyle as w } from "@companix/utils-browser";
|
|
5
|
+
import { Toast as C } from "./bundle.es43.js";
|
|
6
|
+
var g = /* @__PURE__ */ ((e) => (e["top-center"] = "up", e["top-left"] = "left", e["top-right"] = "right", e["bottom-center"] = "down", e["bottom-left"] = "left", e["bottom-right"] = "right", e))(g || {});
|
|
7
|
+
const M = b((e, h) => {
|
|
8
|
+
const { side: f = "top", align: i = "center", gap: m = 14, duration: u, swipeThreshold: v, closeIcon: x } = e, [l, p] = I([]), o = P(() => ({}), []);
|
|
9
|
+
R(
|
|
10
|
+
h,
|
|
11
|
+
() => ({
|
|
12
|
+
addToast: (t) => {
|
|
13
|
+
p((r) => [...r, t]);
|
|
14
|
+
}
|
|
15
|
+
}),
|
|
16
|
+
[]
|
|
17
|
+
);
|
|
18
|
+
const d = j((t) => {
|
|
19
|
+
t.forEach(({ id: r }, a) => {
|
|
20
|
+
let s = 0;
|
|
21
|
+
for (let n = a + 1; n < t.length; n++)
|
|
22
|
+
o[t[n].id] && (s += o[t[n].id].clientHeight + m);
|
|
23
|
+
o[r] && o[r].style.setProperty("--offset", `${s}px`);
|
|
24
|
+
});
|
|
25
|
+
}, []), y = (t) => {
|
|
26
|
+
p((r) => {
|
|
27
|
+
const a = [...r], s = a.findIndex((n) => n.id === t);
|
|
28
|
+
return s !== -1 && a.splice(s, 1), a;
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
return /* @__PURE__ */ T(
|
|
32
|
+
c.Provider,
|
|
24
33
|
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"data-mounted": C(c),
|
|
29
|
-
className: "toaster",
|
|
30
|
-
duration: m,
|
|
34
|
+
duration: u,
|
|
35
|
+
swipeThreshold: v,
|
|
36
|
+
swipeDirection: g[`${f}-${i}`],
|
|
31
37
|
children: [
|
|
32
|
-
/* @__PURE__ */
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
38
|
+
l.map(({ id: t, ...r }) => /* @__PURE__ */ k(
|
|
39
|
+
C,
|
|
40
|
+
{
|
|
41
|
+
...r,
|
|
42
|
+
key: `toaster-${t}`,
|
|
43
|
+
closeIcon: x,
|
|
44
|
+
onInitialized: (a) => {
|
|
45
|
+
o[t] = a, d(l);
|
|
46
|
+
},
|
|
47
|
+
onRemoving: () => {
|
|
48
|
+
delete o[t], d(l);
|
|
49
|
+
},
|
|
50
|
+
onRemoved: () => {
|
|
51
|
+
o[t] && delete o[t], y(t);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
)),
|
|
55
|
+
/* @__PURE__ */ $(
|
|
56
|
+
c.Viewport,
|
|
57
|
+
{
|
|
58
|
+
"data-side": f,
|
|
59
|
+
"data-align": i,
|
|
60
|
+
className: "toaster-viewport",
|
|
61
|
+
style: w({ "--toasters-gap": `${m}px` })
|
|
62
|
+
}
|
|
63
|
+
)
|
|
39
64
|
]
|
|
40
65
|
}
|
|
41
66
|
);
|
|
42
|
-
};
|
|
67
|
+
});
|
|
43
68
|
export {
|
|
44
|
-
|
|
69
|
+
M as Viewport
|
|
45
70
|
};
|
package/dist/bundle.es43.js
CHANGED
|
@@ -1,33 +1,45 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
1
|
+
import { jsxs as n, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import * as t from "@radix-ui/react-toast";
|
|
3
|
+
import { attr as C } from "@companix/utils-browser";
|
|
4
|
+
import { useState as h, useRef as v, useEffect as N, useLayoutEffect as x } from "react";
|
|
5
|
+
import { RemoveListener as R } from "./bundle.es36.js";
|
|
6
|
+
const E = (i) => {
|
|
7
|
+
const [c, l] = h(!1), o = v(null), {
|
|
8
|
+
appearance: d = "neutral",
|
|
9
|
+
icon: r,
|
|
10
|
+
title: a,
|
|
11
|
+
description: s,
|
|
12
|
+
duration: m,
|
|
13
|
+
closeIcon: u,
|
|
14
|
+
onRemoving: p,
|
|
15
|
+
onRemoved: f,
|
|
16
|
+
onInitialized: L
|
|
17
|
+
} = i;
|
|
18
|
+
return N(() => {
|
|
19
|
+
l(!0);
|
|
20
|
+
}, []), x(() => {
|
|
21
|
+
o.current && L(o.current);
|
|
22
|
+
}, []), /* @__PURE__ */ n(
|
|
23
|
+
t.Root,
|
|
24
|
+
{
|
|
25
|
+
ref: o,
|
|
26
|
+
"data-expanded": !0,
|
|
27
|
+
"data-appearance": d,
|
|
28
|
+
"data-mounted": C(c),
|
|
29
|
+
className: "toaster",
|
|
30
|
+
duration: m,
|
|
31
|
+
children: [
|
|
32
|
+
/* @__PURE__ */ e(R, { callback: f }),
|
|
33
|
+
r && /* @__PURE__ */ e("div", { className: "toaster-icon", children: r }),
|
|
34
|
+
/* @__PURE__ */ n("div", { className: "toaster-content", children: [
|
|
35
|
+
a && /* @__PURE__ */ e(t.Title, { className: "toaster-title", children: a }),
|
|
36
|
+
s && /* @__PURE__ */ e(t.Description, { className: "toaster-description", children: s })
|
|
37
|
+
] }),
|
|
38
|
+
/* @__PURE__ */ e(t.Close, { className: "toaster-close", onClick: p, children: u ?? /* @__PURE__ */ e("svg", { viewBox: "0 0 16 16", fill: "currentColor", children: /* @__PURE__ */ e("path", { d: "M2.96967 2.96967C3.26256 2.67678 3.73744 2.67678 4.03033 2.96967L8 6.939L11.9697 2.96967C12.2626 2.67678 12.7374 2.67678 13.0303 2.96967C13.3232 3.26256 13.3232 3.73744 13.0303 4.03033L9.061 8L13.0303 11.9697C13.2966 12.2359 13.3208 12.6526 13.1029 12.9462L13.0303 13.0303C12.7374 13.3232 12.2626 13.3232 11.9697 13.0303L8 9.061L4.03033 13.0303C3.73744 13.3232 3.26256 13.3232 2.96967 13.0303C2.67678 12.7374 2.67678 12.2626 2.96967 11.9697L6.939 8L2.96967 4.03033C2.7034 3.76406 2.6792 3.3474 2.89705 3.05379L2.96967 2.96967Z" }) }) })
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
);
|
|
21
42
|
};
|
|
22
43
|
export {
|
|
23
|
-
|
|
24
|
-
c as DEFAULT_MIN_YEAR,
|
|
25
|
-
u as createVoids,
|
|
26
|
-
h as dateToFormat,
|
|
27
|
-
i as getDayIndex,
|
|
28
|
-
g as getFirstDay,
|
|
29
|
-
D as getMonthMaxDay,
|
|
30
|
-
p as getMonths,
|
|
31
|
-
f as getYears,
|
|
32
|
-
y as weeks
|
|
44
|
+
E as Toast
|
|
33
45
|
};
|
package/dist/bundle.es44.js
CHANGED
|
@@ -1,77 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
), x = u(
|
|
22
|
-
(t) => {
|
|
23
|
-
c(F(n, t));
|
|
24
|
-
},
|
|
25
|
-
[c, n]
|
|
26
|
-
), A = h(() => k(s).map((t) => ({
|
|
27
|
-
...t,
|
|
28
|
-
className: "capitalize",
|
|
29
|
-
disabled: a && a(t.value)
|
|
30
|
-
})), [s, a]), Y = h(() => z(e, 100).map((t) => ({
|
|
31
|
-
...t,
|
|
32
|
-
disabled: m && m(t.value)
|
|
33
|
-
})), [e, m]);
|
|
34
|
-
let l = r === 11 && e === f;
|
|
35
|
-
a && !l && (l = a(
|
|
36
|
-
r === 11 ? 0 : r + 1,
|
|
37
|
-
r === 11 ? Math.min(e + 1, f) : e
|
|
38
|
-
));
|
|
39
|
-
let i = r === 0 && e === g;
|
|
40
|
-
return a && !i && (i = a(
|
|
41
|
-
r === 0 ? 11 : r - 1,
|
|
42
|
-
r === 0 ? Math.max(e - 1, g) : e
|
|
43
|
-
)), /* @__PURE__ */ d("div", { className: "calendar-header", children: [
|
|
44
|
-
!i && /* @__PURE__ */ o("button", { className: "calendar-navigation", "data-side": "left", onClick: v, children: /* @__PURE__ */ o(C, { icon: E }) }),
|
|
45
|
-
/* @__PURE__ */ d("div", { className: "calendar-pickers", children: [
|
|
46
|
-
/* @__PURE__ */ o(
|
|
47
|
-
p,
|
|
48
|
-
{
|
|
49
|
-
fill: !0,
|
|
50
|
-
options: Y,
|
|
51
|
-
size: "sm",
|
|
52
|
-
value: e,
|
|
53
|
-
minimalOptions: !0,
|
|
54
|
-
matchTarget: "min-width",
|
|
55
|
-
onChange: (t) => x(t || 0)
|
|
56
|
-
}
|
|
57
|
-
),
|
|
58
|
-
/* @__PURE__ */ o(
|
|
59
|
-
p,
|
|
60
|
-
{
|
|
61
|
-
fill: !0,
|
|
62
|
-
options: A,
|
|
63
|
-
size: "sm",
|
|
64
|
-
className: "capitalize",
|
|
65
|
-
value: r,
|
|
66
|
-
minimalOptions: !0,
|
|
67
|
-
matchTarget: "min-width",
|
|
68
|
-
onChange: (t) => M(t || 0)
|
|
69
|
-
}
|
|
70
|
-
)
|
|
71
|
-
] }),
|
|
72
|
-
!l && /* @__PURE__ */ o("button", { className: "calendar-navigation", "data-side": "right", onClick: N, children: /* @__PURE__ */ o(C, { icon: T }) })
|
|
73
|
-
] });
|
|
1
|
+
import { clamp as a } from "@companix/utils-browser";
|
|
2
|
+
const D = (t, e) => new Date(e, t, 0).getDate(), g = (t, e) => new Date(e, t - 1, 1).getDay(), i = (t) => t === 0 ? 6 : t - 1, u = (t) => new Array(t).fill(0), h = (t) => ({
|
|
3
|
+
day: t.getDate(),
|
|
4
|
+
month: t.getMonth() + 1,
|
|
5
|
+
year: t.getFullYear()
|
|
6
|
+
}), y = ["Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Вс"], s = 9999, c = 100, f = (t, e) => {
|
|
7
|
+
const o = [], n = a(t - e, c, s), l = a(t + e, c, s);
|
|
8
|
+
for (let r = n; r <= l; r++)
|
|
9
|
+
o.push({ title: String(r).padStart(4, "0"), value: r });
|
|
10
|
+
return o;
|
|
11
|
+
}, p = (t) => {
|
|
12
|
+
const e = [], o = new Intl.DateTimeFormat(t, {
|
|
13
|
+
month: "long"
|
|
14
|
+
});
|
|
15
|
+
for (let n = 0; n < 12; n++)
|
|
16
|
+
e.push({
|
|
17
|
+
title: o.format(new Date(2023, n, 15)),
|
|
18
|
+
value: n
|
|
19
|
+
});
|
|
20
|
+
return e;
|
|
74
21
|
};
|
|
75
22
|
export {
|
|
76
|
-
|
|
23
|
+
s as DEFAULT_MAX_YEAR,
|
|
24
|
+
c as DEFAULT_MIN_YEAR,
|
|
25
|
+
u as createVoids,
|
|
26
|
+
h as dateToFormat,
|
|
27
|
+
i as getDayIndex,
|
|
28
|
+
g as getFirstDay,
|
|
29
|
+
D as getMonthMaxDay,
|
|
30
|
+
p as getMonths,
|
|
31
|
+
f as getYears,
|
|
32
|
+
y as weeks
|
|
77
33
|
};
|
package/dist/bundle.es45.js
CHANGED
|
@@ -1,51 +1,77 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { jsxs as d, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback as u, useMemo as h } from "react";
|
|
3
|
+
import { Select as p } from "./bundle.es8.js";
|
|
4
|
+
import { getMonths as k, getYears as z, DEFAULT_MAX_YEAR as f, DEFAULT_MIN_YEAR as g } from "./bundle.es44.js";
|
|
5
|
+
import { Icon as C } from "./bundle.es35.js";
|
|
6
|
+
import { faChevronLeft as E, faChevronRight as T } from "@fortawesome/free-solid-svg-icons";
|
|
7
|
+
import { setMonth as _, setYear as F } from "./bundle.es40.js";
|
|
8
|
+
const y = ({
|
|
9
|
+
viewDate: n,
|
|
10
|
+
onChange: c,
|
|
11
|
+
isMonthDisabled: a,
|
|
12
|
+
isYearDisabled: m,
|
|
13
|
+
onNextMonth: N,
|
|
14
|
+
onPrevMonth: v
|
|
11
15
|
}) => {
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
u(N(e, 1));
|
|
16
|
-
}, [e]), D = R({
|
|
17
|
-
disableFuture: c,
|
|
18
|
-
disablePast: r,
|
|
19
|
-
shouldDisableDate: E,
|
|
20
|
-
minDateTime: l,
|
|
21
|
-
maxDateTime: s
|
|
22
|
-
}), k = M(
|
|
23
|
-
(o, t) => {
|
|
24
|
-
const n = /* @__PURE__ */ new Date();
|
|
25
|
-
t = t || e.getFullYear();
|
|
26
|
-
const h = l ? l.getMonth() : 0, Y = s ? s.getMonth() : 11, F = l?.getFullYear() || w, f = s?.getFullYear() || A;
|
|
27
|
-
let g = t >= F && t <= f ? t === F && h > o || t === f && o > Y : !0;
|
|
28
|
-
return c && (g = g || (t === n.getFullYear() ? o > n.getMonth() : t > n.getFullYear())), r && (g = g || (t === n.getFullYear() ? o < n.getMonth() : t < n.getFullYear())), g;
|
|
16
|
+
const e = n.getFullYear(), r = n.getMonth(), s = "ru", M = u(
|
|
17
|
+
(t) => {
|
|
18
|
+
c(_(n, t));
|
|
29
19
|
},
|
|
30
|
-
[c,
|
|
31
|
-
),
|
|
32
|
-
(
|
|
33
|
-
|
|
34
|
-
let Y = n > o || o > h;
|
|
35
|
-
return c && (Y = Y || o > t.getFullYear()), r && (Y = Y || o < t.getFullYear()), Y;
|
|
20
|
+
[c, n]
|
|
21
|
+
), x = u(
|
|
22
|
+
(t) => {
|
|
23
|
+
c(F(n, t));
|
|
36
24
|
},
|
|
37
|
-
[c,
|
|
38
|
-
)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
25
|
+
[c, n]
|
|
26
|
+
), A = h(() => k(s).map((t) => ({
|
|
27
|
+
...t,
|
|
28
|
+
className: "capitalize",
|
|
29
|
+
disabled: a && a(t.value)
|
|
30
|
+
})), [s, a]), Y = h(() => z(e, 100).map((t) => ({
|
|
31
|
+
...t,
|
|
32
|
+
disabled: m && m(t.value)
|
|
33
|
+
})), [e, m]);
|
|
34
|
+
let l = r === 11 && e === f;
|
|
35
|
+
a && !l && (l = a(
|
|
36
|
+
r === 11 ? 0 : r + 1,
|
|
37
|
+
r === 11 ? Math.min(e + 1, f) : e
|
|
38
|
+
));
|
|
39
|
+
let i = r === 0 && e === g;
|
|
40
|
+
return a && !i && (i = a(
|
|
41
|
+
r === 0 ? 11 : r - 1,
|
|
42
|
+
r === 0 ? Math.max(e - 1, g) : e
|
|
43
|
+
)), /* @__PURE__ */ d("div", { className: "calendar-header", children: [
|
|
44
|
+
!i && /* @__PURE__ */ o("button", { className: "calendar-navigation", "data-side": "left", onClick: v, children: /* @__PURE__ */ o(C, { icon: E }) }),
|
|
45
|
+
/* @__PURE__ */ d("div", { className: "calendar-pickers", children: [
|
|
46
|
+
/* @__PURE__ */ o(
|
|
47
|
+
p,
|
|
48
|
+
{
|
|
49
|
+
fill: !0,
|
|
50
|
+
options: Y,
|
|
51
|
+
size: "sm",
|
|
52
|
+
value: e,
|
|
53
|
+
minimalOptions: !0,
|
|
54
|
+
matchTarget: "min-width",
|
|
55
|
+
onChange: (t) => x(t || 0)
|
|
56
|
+
}
|
|
57
|
+
),
|
|
58
|
+
/* @__PURE__ */ o(
|
|
59
|
+
p,
|
|
60
|
+
{
|
|
61
|
+
fill: !0,
|
|
62
|
+
options: A,
|
|
63
|
+
size: "sm",
|
|
64
|
+
className: "capitalize",
|
|
65
|
+
value: r,
|
|
66
|
+
minimalOptions: !0,
|
|
67
|
+
matchTarget: "min-width",
|
|
68
|
+
onChange: (t) => M(t || 0)
|
|
69
|
+
}
|
|
70
|
+
)
|
|
71
|
+
] }),
|
|
72
|
+
!l && /* @__PURE__ */ o("button", { className: "calendar-navigation", "data-side": "right", onClick: N, children: /* @__PURE__ */ o(C, { icon: T }) })
|
|
73
|
+
] });
|
|
48
74
|
};
|
|
49
75
|
export {
|
|
50
|
-
|
|
76
|
+
y as CalendarHeader
|
|
51
77
|
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { subMonths as L, addMonths as N, useDayDisableCheker as R } from "./bundle.es40.js";
|
|
2
|
+
import { DEFAULT_MIN_YEAR as w, DEFAULT_MAX_YEAR as A } from "./bundle.es44.js";
|
|
3
|
+
import { useState as U, useCallback as M } from "react";
|
|
4
|
+
const X = ({
|
|
5
|
+
value: p,
|
|
6
|
+
disablePast: r,
|
|
7
|
+
disableFuture: c,
|
|
8
|
+
shouldDisableDate: E,
|
|
9
|
+
minDateTime: l,
|
|
10
|
+
maxDateTime: s
|
|
11
|
+
}) => {
|
|
12
|
+
const [e, u] = U(p || /* @__PURE__ */ new Date()), _ = M(() => {
|
|
13
|
+
u(L(e));
|
|
14
|
+
}, [e]), C = M(() => {
|
|
15
|
+
u(N(e, 1));
|
|
16
|
+
}, [e]), D = R({
|
|
17
|
+
disableFuture: c,
|
|
18
|
+
disablePast: r,
|
|
19
|
+
shouldDisableDate: E,
|
|
20
|
+
minDateTime: l,
|
|
21
|
+
maxDateTime: s
|
|
22
|
+
}), k = M(
|
|
23
|
+
(o, t) => {
|
|
24
|
+
const n = /* @__PURE__ */ new Date();
|
|
25
|
+
t = t || e.getFullYear();
|
|
26
|
+
const h = l ? l.getMonth() : 0, Y = s ? s.getMonth() : 11, F = l?.getFullYear() || w, f = s?.getFullYear() || A;
|
|
27
|
+
let g = t >= F && t <= f ? t === F && h > o || t === f && o > Y : !0;
|
|
28
|
+
return c && (g = g || (t === n.getFullYear() ? o > n.getMonth() : t > n.getFullYear())), r && (g = g || (t === n.getFullYear() ? o < n.getMonth() : t < n.getFullYear())), g;
|
|
29
|
+
},
|
|
30
|
+
[c, r, e, l, s]
|
|
31
|
+
), v = M(
|
|
32
|
+
(o) => {
|
|
33
|
+
const t = /* @__PURE__ */ new Date(), n = l?.getFullYear() || w, h = s?.getFullYear() || A;
|
|
34
|
+
let Y = n > o || o > h;
|
|
35
|
+
return c && (Y = Y || o > t.getFullYear()), r && (Y = Y || o < t.getFullYear()), Y;
|
|
36
|
+
},
|
|
37
|
+
[c, r, l, s]
|
|
38
|
+
);
|
|
39
|
+
return {
|
|
40
|
+
viewDate: e,
|
|
41
|
+
setViewDate: u,
|
|
42
|
+
setPrevMonth: _,
|
|
43
|
+
setNextMonth: C,
|
|
44
|
+
isDayDisabled: D,
|
|
45
|
+
isMonthDisabled: k,
|
|
46
|
+
isYearDisabled: v
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
export {
|
|
50
|
+
X as useCalendar
|
|
51
|
+
};
|
package/dist/bundle.es8.js
CHANGED
|
@@ -3,9 +3,9 @@ import { useMemo as E, useEffect as I } from "react";
|
|
|
3
3
|
import { OptionsList as b } from "./bundle.es12.js";
|
|
4
4
|
import { OptionItem as B } from "./bundle.es10.js";
|
|
5
5
|
import { Popover as F } from "./bundle.es6.js";
|
|
6
|
-
import { useFroozeClosing as z } from "./bundle.
|
|
7
|
-
import { SelectInput as D } from "./bundle.
|
|
8
|
-
import { useScrollListController as L } from "./bundle.
|
|
6
|
+
import { useFroozeClosing as z } from "./bundle.es31.js";
|
|
7
|
+
import { SelectInput as D } from "./bundle.es32.js";
|
|
8
|
+
import { useScrollListController as L } from "./bundle.es33.js";
|
|
9
9
|
const y = (c) => {
|
|
10
10
|
const {
|
|
11
11
|
options: e,
|