mimir-ui-kit 1.36.10 → 1.36.12
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/assets/styles.css +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts +8 -0
- package/dist/components/DatePicker/DatePicker.js +109 -92
- package/dist/components/DatePicker/DatePickerModal.js +1 -1
- package/dist/components/DatePicker/MonthPickerModal.js +1 -1
- package/dist/components/DatePicker/YearPickerModal.js +1 -1
- package/dist/components/Drawer/Drawer.js +76 -76
- package/dist/components/ListFiles/ListFiles.d.ts +1 -1
- package/dist/components/ListFiles/ListFiles.js +5 -5
- package/dist/components/ListPhotos/ListPhotos.d.ts +1 -1
- package/dist/components/ListPhotos/ListPhotos.js +13 -13
- package/dist/components/MultiSelectSearch/utils.d.ts +1 -1
- package/dist/components/SelectSearch/utils.d.ts +1 -1
- package/dist/components/Uploader/Uploader.js +18 -18
- package/dist/styles.module-B3xL6-zc.js +25 -0
- package/package.json +1 -1
- package/dist/styles.module-Chnn6DA-.js +0 -24
package/dist/assets/styles.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
.
|
1
|
+
._input_hmkm7_2{padding-right:var(--mimir-space-3xl)}._input-wrapper_hmkm7_6{flex:1}._date-wrapper_hmkm7_10{position:relative;width:100%}._date-wrapper_hmkm7_10 ._inputBorderControl_hmkm7_14{border:transparent}._date-wrapper_hmkm7_10:hover ._input-wrapper_hmkm7_6{background-color:var(--input-bg-color-hover)}._date-wrapper_hmkm7_10:before{position:absolute;top:0;right:45px;bottom:0;left:0;z-index:3;cursor:pointer;content:""}._date-wrapper_hmkm7_10._editable_hmkm7_27:before{display:none}._date-wrapper_hmkm7_10 svg{cursor:pointer}[data-disabled=true] ._date-wrapper_hmkm7_10:before{cursor:auto}[data-disabled=true] ._date-wrapper_hmkm7_10 ._input-wrapper_hmkm7_6{background:var(--black-20)}[data-disabled=true] ._date-wrapper_hmkm7_10 ._input-wrapper_hmkm7_6 label,[data-disabled=true] ._date-wrapper_hmkm7_10 ._input-wrapper_hmkm7_6 input{color:var(--white)}[data-disabled=true] ._button-wrapper_hmkm7_44 svg{color:var(--white);cursor:default;fill:var(--white)}._wrapper_hmkm7_50{position:relative;display:flex;align-items:center;border-radius:var(--mimir-control-radius-s)}._wrapper_hmkm7_50._active_hmkm7_56{border-bottom:1px solid var(--citrine-100)}._button-wrapper_hmkm7_44{position:absolute;top:0;right:0;z-index:2;display:flex;justify-content:center;width:44px;height:100%;max-height:var(--button-height-xxl)}._button_hmkm7_44{align-self:center;background-color:transparent;border-radius:var(--mimir-control-radius-s)}._calendar-block_hmkm7_78{position:absolute;z-index:var(--mimir-zindex-dropdown);display:flex;flex-direction:column;width:368px;max-height:none;padding:var(--mimir-space-m);font-weight:var(--mimir-font-weight-text-regular);font-size:var(--mimir-size-text-l);font-family:var(--mimir-font-inter);line-height:var(--mimir-line-height-text-2xs);text-align:center;text-overflow:ellipsis;background:var(--white);border-radius:var(--mimir-control-radius-s);box-shadow:0 0 #16172705,0 2px 4px #16172705,0 6px 6px #16172705,0 15px 9px #16172703;opacity:0;transition:height .5s ease-in;font-feature-settings:"zero";font-variant-numeric:slashed-zero}._calendar-block_hmkm7_78 ._h_hmkm7_100{display:flex;width:100%;color:var(--black-100)}._calendar-block_hmkm7_78 ._b_hmkm7_44{display:grid;grid-template-columns:repeat(7,1fr)}._calendar-block_hmkm7_78 ._d_hmkm7_10{display:flex;flex:1;gap:var(--mimir-space-2xs);align-items:center;justify-content:center;color:var(--black-100);font-size:var(--mimir-size-text-l);cursor:pointer}._calendar-block_hmkm7_78 ._m_hmkm7_122,._calendar-block_hmkm7_78 ._a_hmkm7_56,._calendar-block_hmkm7_78 ._prev_hmkm7_124{width:auto;height:48px;overflow:hidden}._calendar-block_hmkm7_78 ._m_hmkm7_122{display:flex;align-items:center;justify-content:center;color:var(--disabled);font-size:var(--mimir-size-text-l)}._calendar-block_hmkm7_78 ._orange_hmkm7_138{color:var(--citrine-100)}._calendar-block_hmkm7_78 ._a_hmkm7_56{color:var(--black-100);font-size:var(--mimir-size-text-l);border-radius:var(--mimir-control-radius-s)}._calendar-block_hmkm7_78 ._a_hmkm7_56:hover{background:var(--black-10)}._calendar-block_hmkm7_78 ._a_hmkm7_56:active{color:var(--white);background:var(--sapphire-100)}._calendar-block_hmkm7_78 ._current_hmkm7_155{background:var(--sapphire-10);border-radius:var(--mimir-control-radius-s)}._calendar-block_hmkm7_78 ._monthGrid_hmkm7_160{display:grid;grid-template-columns:repeat(3,1fr)}._icon-button_hmkm7_165{display:flex}
|
@@ -41,6 +41,10 @@ export type TProps = {
|
|
41
41
|
* Флаг разрешения ручного ввода даты
|
42
42
|
*/
|
43
43
|
editable?: boolean;
|
44
|
+
/**
|
45
|
+
* Флаг открытия модального окна календаря при вводе
|
46
|
+
*/
|
47
|
+
openOnInput?: boolean;
|
44
48
|
} & TInputProps;
|
45
49
|
export type TDatePickerValue = {
|
46
50
|
value?: string;
|
@@ -91,4 +95,8 @@ export declare const DatePicker: import('react').MemoExoticComponent<import('rea
|
|
91
95
|
* Флаг разрешения ручного ввода даты
|
92
96
|
*/
|
93
97
|
editable?: boolean;
|
98
|
+
/**
|
99
|
+
* Флаг открытия модального окна календаря при вводе
|
100
|
+
*/
|
101
|
+
openOnInput?: boolean;
|
94
102
|
} & import('../Input/types').TInputProps & import('../Input').TAdditionalProps & import('react').RefAttributes<HTMLInputElement>>>;
|
@@ -1,132 +1,149 @@
|
|
1
|
-
import { jsxs as
|
1
|
+
import { jsxs as B, jsx as r } from "react/jsx-runtime";
|
2
2
|
import { c as v } from "../../index-DIxK0V-G.js";
|
3
|
-
import { memo as
|
4
|
-
import { MAX_DAY as
|
5
|
-
import { DatePickerModal as
|
6
|
-
import { MonthPickerModal as
|
7
|
-
import { c as
|
8
|
-
import { formatDatePart as
|
9
|
-
import { YearPickerModal as
|
10
|
-
import { useClickOutside as
|
11
|
-
import {
|
12
|
-
import {
|
13
|
-
import {
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
3
|
+
import { memo as V, forwardRef as tt, useState as y, useEffect as I } from "react";
|
4
|
+
import { MAX_DAY as st, MAX_MONTH as et, DATE_LENGTH as ot } from "./constants.js";
|
5
|
+
import { DatePickerModal as it } from "./DatePickerModal.js";
|
6
|
+
import { MonthPickerModal as at } from "./MonthPickerModal.js";
|
7
|
+
import { c as o } from "../../styles.module-B3xL6-zc.js";
|
8
|
+
import { formatDatePart as $ } from "./utils.js";
|
9
|
+
import { YearPickerModal as rt } from "./YearPickerModal.js";
|
10
|
+
import { useClickOutside as ct } from "../../hooks/useClickOutside/useClickOutside.js";
|
11
|
+
import { Icon as H } from "../../icons/Icon.js";
|
12
|
+
import { formating as f } from "../../utils/index.js";
|
13
|
+
import { I as mt } from "../../Input-CbgqYgLo.js";
|
14
|
+
import { EInputStatus as pt, EInputSize as L } from "../Input/constants.js";
|
15
|
+
const dt = {
|
16
|
+
days: it,
|
17
|
+
months: at,
|
18
|
+
years: rt
|
19
|
+
}, nt = V(
|
20
|
+
tt(
|
20
21
|
({
|
21
|
-
size:
|
22
|
+
size: T,
|
22
23
|
value: s,
|
23
24
|
onChangeValue: e,
|
24
|
-
name:
|
25
|
-
before:
|
25
|
+
name: c,
|
26
|
+
before: P,
|
26
27
|
type: m = "days",
|
27
|
-
error:
|
28
|
-
onError:
|
29
|
-
onBlur:
|
30
|
-
validateImmediately:
|
31
|
-
variant:
|
32
|
-
disabled:
|
33
|
-
editable:
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
error: M,
|
29
|
+
onError: p,
|
30
|
+
onBlur: d,
|
31
|
+
validateImmediately: _,
|
32
|
+
variant: R,
|
33
|
+
disabled: u = !1,
|
34
|
+
editable: l = !1,
|
35
|
+
openOnInput: b = !0,
|
36
|
+
...U
|
37
|
+
}, X) => {
|
38
|
+
const [w, a] = y(!1), [g, n] = y(m), [i, D] = y(
|
37
39
|
() => s && !isNaN(new Date(s).getTime()) ? new Date(s) : void 0
|
38
|
-
), [
|
39
|
-
|
40
|
-
M
|
41
|
-
}, [
|
40
|
+
), [x, S] = y(M), [F, h] = y("");
|
41
|
+
I(() => {
|
42
|
+
S(M);
|
43
|
+
}, [M]), I(() => {
|
42
44
|
D(
|
43
45
|
s && !isNaN(new Date(s).getTime()) ? new Date(s) : void 0
|
44
46
|
);
|
45
|
-
}, [s]),
|
46
|
-
i && typeof i != "string" && !isNaN(i == null ? void 0 : i.getTime()) ?
|
47
|
+
}, [s]), I(() => {
|
48
|
+
i && typeof i != "string" && !isNaN(i == null ? void 0 : i.getTime()) ? h(f.Date(i, "dd/mm/yyyy")) : h("");
|
47
49
|
}, [i]);
|
48
|
-
const
|
49
|
-
|
50
|
-
|
51
|
-
}, [
|
52
|
-
isActive:
|
50
|
+
const j = s && new Date(s).getTime;
|
51
|
+
I(() => {
|
52
|
+
_ && (j ? (S(!1), p == null || p({ name: c, active: !1 })) : (S(!0), p == null || p({ name: c, active: !0 })));
|
53
|
+
}, [_, c, j]), ct({
|
54
|
+
isActive: w,
|
53
55
|
setActive: (t) => {
|
54
|
-
|
56
|
+
a(t), n(m);
|
55
57
|
},
|
56
|
-
className:
|
58
|
+
className: o["calendar-block"]
|
57
59
|
});
|
58
60
|
const G = () => {
|
59
|
-
|
61
|
+
!u && (b || !l) && a(!0);
|
60
62
|
}, K = (t) => {
|
61
63
|
isNaN(t.getTime()) || (D(t), e == null || e({
|
62
|
-
value:
|
63
|
-
name:
|
64
|
-
})),
|
65
|
-
value:
|
66
|
-
name:
|
67
|
-
}),
|
68
|
-
},
|
69
|
-
if (
|
70
|
-
const
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
],
|
75
|
-
if (
|
76
|
-
const
|
77
|
-
`${
|
64
|
+
value: f.Date(t, "yyyy-mm-dd"),
|
65
|
+
name: c
|
66
|
+
})), g === "years" && (m === "years" ? (a(!1), n(m)) : n("months")), g === "months" && (m === "months" ? (a(!1), n(m)) : n("days")), D(t), e == null || e({
|
67
|
+
value: f.Date(t, "yyyy-mm-dd"),
|
68
|
+
name: c
|
69
|
+
}), d == null || d(f.Date(t, "yyyy-mm-dd"));
|
70
|
+
}, W = (t) => {
|
71
|
+
if (l) {
|
72
|
+
const N = t.target.value.replace(/[^\d]/g, ""), [k, C, O] = [
|
73
|
+
$(N.substring(0, 2), st),
|
74
|
+
$(N.substring(2, 4), et),
|
75
|
+
N.substring(4, 8)
|
76
|
+
], Y = [k, C, O].filter(Boolean).join("/");
|
77
|
+
if (h(Y), Y.length === ot) {
|
78
|
+
const z = parseInt(O), A = /* @__PURE__ */ new Date(
|
79
|
+
`${z}-${C.padStart(2, "0")}-${k.padStart(2, "0")}`
|
78
80
|
);
|
79
|
-
isNaN(
|
80
|
-
value:
|
81
|
-
name:
|
82
|
-
}),
|
81
|
+
isNaN(A.getTime()) || (D(A), e == null || e({
|
82
|
+
value: f.Date(A, "yyyy-mm-dd"),
|
83
|
+
name: c
|
84
|
+
}), d == null || d(f.Date(A, "yyyy-mm-dd")));
|
83
85
|
}
|
84
86
|
}
|
85
|
-
}, q = v(
|
87
|
+
}, q = v(o.wrapper, w && o.active), E = v(o.input, o.inputBorderControl), J = {
|
86
88
|
onChangeValue: K,
|
87
89
|
date: i || /* @__PURE__ */ new Date(),
|
88
|
-
before: typeof
|
89
|
-
onChangeType:
|
90
|
-
setIsActive:
|
91
|
-
},
|
92
|
-
|
93
|
-
|
90
|
+
before: typeof P == "string" ? new Date(P) : P,
|
91
|
+
onChangeType: n,
|
92
|
+
setIsActive: a
|
93
|
+
}, Q = dt[g], Z = ({ isActive: t }) => /* @__PURE__ */ r("button", { onClick: (k) => {
|
94
|
+
k.stopPropagation(), u || a(!t);
|
95
|
+
}, className: o["icon-button"], children: t ? /* @__PURE__ */ r(
|
96
|
+
H,
|
97
|
+
{
|
98
|
+
iconName: T === L.S ? "DropdownArrowUp16px" : "DropdownArrowUp24px"
|
99
|
+
}
|
100
|
+
) : /* @__PURE__ */ r(
|
101
|
+
H,
|
102
|
+
{
|
103
|
+
iconName: T === L.S ? "DropdownArrowBottom16px" : "DropdownArrowDown24px"
|
104
|
+
}
|
105
|
+
) });
|
106
|
+
return /* @__PURE__ */ B("div", { className: q, "data-disabled": u, children: [
|
107
|
+
/* @__PURE__ */ r(
|
94
108
|
"div",
|
95
109
|
{
|
96
110
|
role: "button",
|
97
|
-
"data-error":
|
98
|
-
className: v(
|
99
|
-
[
|
111
|
+
"data-error": x,
|
112
|
+
className: v(o["date-wrapper"], {
|
113
|
+
[o.editable]: l
|
100
114
|
}),
|
101
115
|
onClick: G,
|
102
|
-
children: /* @__PURE__ */
|
103
|
-
|
116
|
+
children: /* @__PURE__ */ r(
|
117
|
+
mt,
|
104
118
|
{
|
105
|
-
ref:
|
106
|
-
className:
|
107
|
-
wrapperClassName:
|
108
|
-
size:
|
119
|
+
ref: X,
|
120
|
+
className: E,
|
121
|
+
wrapperClassName: o["input-wrapper"],
|
122
|
+
size: T,
|
109
123
|
type: "text",
|
110
|
-
variant:
|
111
|
-
status:
|
112
|
-
value:
|
113
|
-
onChange:
|
124
|
+
variant: R,
|
125
|
+
status: x ? pt.Error : void 0,
|
126
|
+
value: F,
|
127
|
+
onChange: W,
|
114
128
|
rightAddon: {
|
115
|
-
addonType: "
|
116
|
-
addonContent:
|
129
|
+
addonType: "react-node",
|
130
|
+
addonContent: /* @__PURE__ */ r(Z, { isActive: w })
|
131
|
+
},
|
132
|
+
onFocus: () => {
|
133
|
+
b && !l && a(!0);
|
117
134
|
},
|
118
|
-
"data-error":
|
119
|
-
...
|
135
|
+
"data-error": x,
|
136
|
+
...U
|
120
137
|
}
|
121
138
|
)
|
122
139
|
}
|
123
140
|
),
|
124
|
-
|
141
|
+
w && /* @__PURE__ */ r(Q, { ...J })
|
125
142
|
] });
|
126
143
|
}
|
127
144
|
)
|
128
145
|
);
|
129
|
-
|
146
|
+
nt.displayName = "DatePicker";
|
130
147
|
export {
|
131
|
-
|
148
|
+
nt as DatePicker
|
132
149
|
};
|
@@ -3,7 +3,7 @@ import { c as x } from "../../index-DIxK0V-G.js";
|
|
3
3
|
import { useState as O } from "react";
|
4
4
|
import { week as Y, COUNT_WORK_DAYS as j } from "./constants.js";
|
5
5
|
import { useDatePickerPosition as z } from "./hooks.js";
|
6
|
-
import { c as o } from "../../styles.module-
|
6
|
+
import { c as o } from "../../styles.module-B3xL6-zc.js";
|
7
7
|
import { getUpdateDate as M } from "./utils.js";
|
8
8
|
import { Icon as G } from "../../icons/Icon.js";
|
9
9
|
import { formating as s } from "../../utils/index.js";
|
@@ -3,7 +3,7 @@ import { c as k } from "../../index-DIxK0V-G.js";
|
|
3
3
|
import { useState as $ } from "react";
|
4
4
|
import { months as x } from "./constants.js";
|
5
5
|
import { useDatePickerPosition as v } from "./hooks.js";
|
6
|
-
import { c as e } from "../../styles.module-
|
6
|
+
import { c as e } from "../../styles.module-B3xL6-zc.js";
|
7
7
|
import { Icon as B } from "../../icons/Icon.js";
|
8
8
|
import { formating as a } from "../../utils/index.js";
|
9
9
|
import { Button as b } from "../Button/Button.js";
|
@@ -2,7 +2,7 @@ import { jsxs as p, jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { c as v } from "../../index-DIxK0V-G.js";
|
3
3
|
import { useState as x } from "react";
|
4
4
|
import { useDatePickerPosition as Y } from "./hooks.js";
|
5
|
-
import { c as t } from "../../styles.module-
|
5
|
+
import { c as t } from "../../styles.module-B3xL6-zc.js";
|
6
6
|
import { formating as n } from "../../utils/index.js";
|
7
7
|
import { Button as y } from "../Button/Button.js";
|
8
8
|
const F = ({
|
@@ -1,97 +1,97 @@
|
|
1
|
-
import { jsxs as m, jsx as t, Fragment as
|
1
|
+
import { jsxs as m, jsx as t, Fragment as X } from "react/jsx-runtime";
|
2
2
|
import { c as s } from "../../index-DIxK0V-G.js";
|
3
|
-
import { useState as
|
4
|
-
import { EDrawerPosition as
|
5
|
-
import { useMediaQuery as
|
6
|
-
import { EMediaQuery as
|
7
|
-
import { useLockBodyScroll as
|
8
|
-
import { useResizeObserver as
|
9
|
-
import { Button as
|
10
|
-
import { EButtonVariantDefault as
|
11
|
-
import { Loader as
|
12
|
-
import { Portal as
|
13
|
-
import '../../assets/Drawer.css';const
|
14
|
-
drawer:
|
15
|
-
content:
|
3
|
+
import { useState as N, useRef as j, useCallback as u, useEffect as P } from "react";
|
4
|
+
import { EDrawerPosition as w } from "./constants.js";
|
5
|
+
import { useMediaQuery as Q } from "../../hooks/useMediaQuery/useMediaQuery.js";
|
6
|
+
import { EMediaQuery as F } from "../../hooks/useMediaQuery/constants.js";
|
7
|
+
import { useLockBodyScroll as G } from "../../hooks/useLockBodyScroll/useLockBodyScroll.js";
|
8
|
+
import { useResizeObserver as H } from "../../hooks/useResizeObserver/useResizeObserver.js";
|
9
|
+
import { Button as k } from "../Button/Button.js";
|
10
|
+
import { EButtonVariantDefault as K, EButtonSize as n } from "../Button/constants.js";
|
11
|
+
import { Loader as V } from "../Loader/Loader.js";
|
12
|
+
import { Portal as W } from "../Portal/Portal.js";
|
13
|
+
import '../../assets/Drawer.css';const Y = "_drawer_1xs4d_3", q = "_content_1xs4d_27", J = "_header_1xs4d_45", U = "_title_1xs4d_59", Z = "_space_1xs4d_73", $ = "_inner_1xs4d_84", O = "_button_1xs4d_87", ee = "_footer_1xs4d_92", te = "_left_1xs4d_105", oe = "_right_1xs4d_109", se = "_full_1xs4d_113", re = "_bottom_1xs4d_123", ne = "_opened_1xs4d_140", ae = "_overlay_1xs4d_196", ie = "_unmount_1xs4d_212", e = {
|
14
|
+
drawer: Y,
|
15
|
+
content: q,
|
16
16
|
"is-loading": "_is-loading_1xs4d_41",
|
17
|
-
header:
|
17
|
+
header: J,
|
18
18
|
"sticky-header": "_sticky-header_1xs4d_53",
|
19
|
-
title:
|
20
|
-
space:
|
21
|
-
inner:
|
22
|
-
button:
|
23
|
-
footer:
|
19
|
+
title: U,
|
20
|
+
space: Z,
|
21
|
+
inner: $,
|
22
|
+
button: O,
|
23
|
+
footer: ee,
|
24
24
|
"footer-button": "_footer-button_1xs4d_101",
|
25
|
-
left:
|
26
|
-
right:
|
27
|
-
full:
|
28
|
-
bottom:
|
25
|
+
left: te,
|
26
|
+
right: oe,
|
27
|
+
full: se,
|
28
|
+
bottom: re,
|
29
29
|
"full-bottom-height": "_full-bottom-height_1xs4d_134",
|
30
|
-
opened:
|
30
|
+
opened: ne,
|
31
31
|
"is-closing": "_is-closing_1xs4d_159",
|
32
|
-
overlay:
|
33
|
-
unmount:
|
34
|
-
},
|
32
|
+
overlay: ae,
|
33
|
+
unmount: ie
|
34
|
+
}, le = 300, ve = ({
|
35
35
|
isOpen: r,
|
36
|
-
onClose:
|
36
|
+
onClose: a,
|
37
37
|
title: E,
|
38
38
|
className: M,
|
39
|
-
unmount:
|
40
|
-
isLoading:
|
39
|
+
unmount: f = !0,
|
40
|
+
isLoading: i = !1,
|
41
41
|
stickyHeader: B,
|
42
|
-
fullBottomHeight:
|
43
|
-
position:
|
44
|
-
paddingRight:
|
42
|
+
fullBottomHeight: I = !1,
|
43
|
+
position: l = w.RIGHT,
|
44
|
+
paddingRight: S = 8,
|
45
45
|
footer: c,
|
46
|
-
children:
|
47
|
-
classNameInner:
|
48
|
-
classNameFooter:
|
49
|
-
closeOnClickOutside:
|
50
|
-
showCloseButton:
|
46
|
+
children: T,
|
47
|
+
classNameInner: C,
|
48
|
+
classNameFooter: D,
|
49
|
+
closeOnClickOutside: h = !0,
|
50
|
+
showCloseButton: x = !0
|
51
51
|
}) => {
|
52
|
-
const [
|
53
|
-
enabled:
|
52
|
+
const [p, y] = N(!1), [z, b] = N(!1), g = j(), d = Q(F.XS1), { ref: L } = H({
|
53
|
+
enabled: l === w.BOTTOM
|
54
54
|
});
|
55
|
-
|
56
|
-
on:
|
57
|
-
paddingRight:
|
55
|
+
G({
|
56
|
+
on: r && !p,
|
57
|
+
paddingRight: S
|
58
58
|
});
|
59
|
-
const o =
|
60
|
-
|
61
|
-
|
62
|
-
},
|
63
|
-
}, [
|
64
|
-
|
65
|
-
}, [
|
66
|
-
(
|
67
|
-
|
59
|
+
const o = u(() => {
|
60
|
+
a && (y(!0), g.current = setTimeout(() => {
|
61
|
+
a(), y(!1);
|
62
|
+
}, le));
|
63
|
+
}, [a]), R = u(() => {
|
64
|
+
h && o();
|
65
|
+
}, [h, o]), _ = u(
|
66
|
+
(A) => {
|
67
|
+
A.key === "Escape" && o();
|
68
68
|
},
|
69
69
|
[o]
|
70
70
|
);
|
71
|
-
|
72
|
-
b(!1), clearTimeout(
|
71
|
+
P(() => (r && (b(!0), window.addEventListener("keydown", _)), () => {
|
72
|
+
b(!1), clearTimeout(g.current), window.removeEventListener("keydown", _);
|
73
73
|
}), [r, _]);
|
74
|
-
const
|
74
|
+
const v = {
|
75
75
|
[e.opened]: z,
|
76
|
-
[e["is-closing"]]:
|
77
|
-
[e["full-bottom-height"]]:
|
78
|
-
[e["is-loading"]]:
|
76
|
+
[e["is-closing"]]: p,
|
77
|
+
[e["full-bottom-height"]]: I,
|
78
|
+
[e["is-loading"]]: i
|
79
79
|
};
|
80
|
-
return !r &&
|
80
|
+
return !r && f ? null : /* @__PURE__ */ m(W, { children: [
|
81
81
|
/* @__PURE__ */ t(
|
82
82
|
"div",
|
83
83
|
{
|
84
84
|
"aria-hidden": !r,
|
85
85
|
role: "dialog",
|
86
|
-
className: s(e.drawer, e[
|
86
|
+
className: s(e.drawer, e[l], v, M),
|
87
87
|
children: /* @__PURE__ */ t(
|
88
88
|
"section",
|
89
89
|
{
|
90
|
-
ref:
|
91
|
-
className: s(e.content, e[
|
92
|
-
[e["is-loading"]]: !!
|
90
|
+
ref: L,
|
91
|
+
className: s(e.content, e[l], {
|
92
|
+
[e["is-loading"]]: !!i
|
93
93
|
}),
|
94
|
-
children:
|
94
|
+
children: i ? /* @__PURE__ */ t(V, {}) : /* @__PURE__ */ m(X, { children: [
|
95
95
|
/* @__PURE__ */ m(
|
96
96
|
"header",
|
97
97
|
{
|
@@ -100,10 +100,10 @@ import '../../assets/Drawer.css';const J = "_drawer_1xs4d_3", O = "_content_1xs4
|
|
100
100
|
}),
|
101
101
|
children: [
|
102
102
|
/* @__PURE__ */ t("h2", { className: e.title, children: E }),
|
103
|
-
/* @__PURE__ */ t("div", { className: e.space, children:
|
104
|
-
|
103
|
+
/* @__PURE__ */ t("div", { className: e.space, children: x && /* @__PURE__ */ t(
|
104
|
+
k,
|
105
105
|
{
|
106
|
-
variant:
|
106
|
+
variant: K.SecondaryWhite,
|
107
107
|
isIconButton: !0,
|
108
108
|
size: d ? n.S : n.M,
|
109
109
|
iconName: "Close16px",
|
@@ -114,9 +114,9 @@ import '../../assets/Drawer.css';const J = "_drawer_1xs4d_3", O = "_content_1xs4
|
|
114
114
|
]
|
115
115
|
}
|
116
116
|
),
|
117
|
-
/* @__PURE__ */ t("div", { className: s(e.inner,
|
118
|
-
/* @__PURE__ */ t("footer", { className: s(e.footer,
|
119
|
-
|
117
|
+
/* @__PURE__ */ t("div", { className: s(e.inner, C), children: T }),
|
118
|
+
/* @__PURE__ */ t("footer", { className: s(e.footer, D), children: typeof c == "function" ? c({ handleClose: o }) : c || x && /* @__PURE__ */ t(
|
119
|
+
k,
|
120
120
|
{
|
121
121
|
size: d ? n.M : n.XXL,
|
122
122
|
full: d,
|
@@ -136,17 +136,17 @@ import '../../assets/Drawer.css';const J = "_drawer_1xs4d_3", O = "_content_1xs4
|
|
136
136
|
className: s(
|
137
137
|
e.overlay,
|
138
138
|
{
|
139
|
-
[e.unmount]: !
|
139
|
+
[e.unmount]: !f
|
140
140
|
},
|
141
|
-
|
141
|
+
v
|
142
142
|
),
|
143
143
|
"data-testid": "drawer-overlay",
|
144
|
-
onClick:
|
144
|
+
onClick: R
|
145
145
|
}
|
146
146
|
)
|
147
147
|
] });
|
148
148
|
};
|
149
149
|
export {
|
150
|
-
|
151
|
-
|
150
|
+
le as ANIMATION_DELAY,
|
151
|
+
ve as Drawer
|
152
152
|
};
|
@@ -23,4 +23,4 @@ export type TFilesDetail = {
|
|
23
23
|
size?: number;
|
24
24
|
type?: string;
|
25
25
|
};
|
26
|
-
export declare function ListFiles({ value, onChange }: TListFiles): import("react/jsx-runtime").JSX.Element;
|
26
|
+
export declare function ListFiles({ value, onChange }: TListFiles): import("react/jsx-runtime").JSX.Element | null;
|
@@ -12,15 +12,15 @@ import '../../assets/ListFiles.css';const e = {
|
|
12
12
|
"delete-button": "_delete-button_12h1y_51"
|
13
13
|
};
|
14
14
|
function z({ value: o, onChange: s }) {
|
15
|
-
const [
|
15
|
+
const [l, f] = m(o);
|
16
16
|
d(() => {
|
17
|
-
|
17
|
+
f(o);
|
18
18
|
}, [o]);
|
19
19
|
const r = async (i) => {
|
20
|
-
const n = [...
|
21
|
-
|
20
|
+
const n = [...l.filter((c) => c.id !== i)];
|
21
|
+
f(n), s == null || s({ deleteId: i, list: n });
|
22
22
|
};
|
23
|
-
return /* @__PURE__ */ t("ul", { className: e["file-upload-container"], children:
|
23
|
+
return l.length === 0 ? null : /* @__PURE__ */ t("ul", { className: e["file-upload-container"], children: l.map((i, n) => /* @__PURE__ */ a("li", { className: e["file-upload-container-item"], children: [
|
24
24
|
/* @__PURE__ */ a("div", { className: e["file-info"], children: [
|
25
25
|
(i == null ? void 0 : i.size) && /* @__PURE__ */ a("span", { className: e["file-info-size"], children: [
|
26
26
|
" ",
|
@@ -21,4 +21,4 @@ export type TPhotosDetail = {
|
|
21
21
|
url: string;
|
22
22
|
file?: File;
|
23
23
|
};
|
24
|
-
export declare function ListPhotos({ value, onChange }: TListPhotos): import("react/jsx-runtime").JSX.Element;
|
24
|
+
export declare function ListPhotos({ value, onChange }: TListPhotos): import("react/jsx-runtime").JSX.Element | null;
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import { useState as
|
3
|
-
import { Button as
|
1
|
+
import { jsx as l, jsxs as n } from "react/jsx-runtime";
|
2
|
+
import { useState as a, useEffect as u } from "react";
|
3
|
+
import { Button as _ } from "../Button/Button.js";
|
4
4
|
import '../../assets/ListPhotos.css';const i = {
|
5
5
|
"list-photos": "_list-photos_1tpc1_2",
|
6
6
|
"list-photos-item": "_list-photos-item_1tpc1_11",
|
@@ -8,16 +8,16 @@ import '../../assets/ListPhotos.css';const i = {
|
|
8
8
|
"delete-button": "_delete-button_1tpc1_25"
|
9
9
|
};
|
10
10
|
function L({ value: o, onChange: s }) {
|
11
|
-
const [
|
12
|
-
|
11
|
+
const [e, c] = a(o);
|
12
|
+
u(() => {
|
13
13
|
c(o);
|
14
14
|
}, [o]);
|
15
|
-
const
|
16
|
-
const
|
17
|
-
c(
|
15
|
+
const m = async (t) => {
|
16
|
+
const r = [...e.filter((p) => p.id !== t)];
|
17
|
+
c(r), s == null || s({ deleteId: t, list: r });
|
18
18
|
};
|
19
|
-
return /* @__PURE__ */
|
20
|
-
/* @__PURE__ */
|
19
|
+
return e.length === 0 ? null : /* @__PURE__ */ l("ul", { className: i["list-photos"], children: e.map((t) => /* @__PURE__ */ n("li", { className: i["list-photos-item"], children: [
|
20
|
+
/* @__PURE__ */ l(
|
21
21
|
"img",
|
22
22
|
{
|
23
23
|
className: i["list-photos-image"],
|
@@ -25,15 +25,15 @@ function L({ value: o, onChange: s }) {
|
|
25
25
|
alt: ""
|
26
26
|
}
|
27
27
|
),
|
28
|
-
s && /* @__PURE__ */
|
29
|
-
|
28
|
+
s && /* @__PURE__ */ l(
|
29
|
+
_,
|
30
30
|
{
|
31
31
|
isIconButton: !0,
|
32
32
|
iconName: "Close12px",
|
33
33
|
size: "m-s",
|
34
34
|
variant: "secondary-gray",
|
35
35
|
className: i["delete-button"],
|
36
|
-
onClick: () =>
|
36
|
+
onClick: () => m(t.id)
|
37
37
|
}
|
38
38
|
)
|
39
39
|
] }, t.id)) });
|
@@ -3,6 +3,6 @@ import { TMultiSelectOption } from './types';
|
|
3
3
|
import { EInputSize } from '../Input';
|
4
4
|
|
5
5
|
export declare const mapSizeToInputSize: (size: EMultiSelectSearchSize) => EInputSize;
|
6
|
-
export declare const getDropdownArrowIcon: (isOpen: boolean, size: EMultiSelectSearchSize) => "DropdownArrowBottom16px" | "
|
6
|
+
export declare const getDropdownArrowIcon: (isOpen: boolean, size: EMultiSelectSearchSize) => "DropdownArrowBottom16px" | "DropdownArrowUp16px" | "DropdownArrowUp24px" | "DropdownArrowDown24px";
|
7
7
|
export declare const getInitialInputValue: (value: TMultiSelectOption[] | undefined | null, displayValue: string) => string;
|
8
8
|
export declare const joinSelectedItems: (items: TMultiSelectOption[], displayValue: string) => string;
|
@@ -2,4 +2,4 @@ import { ESelectSearchSize } from './constants';
|
|
2
2
|
import { EInputSize } from '../Input';
|
3
3
|
|
4
4
|
export declare const mapSizeToInputSize: (size: ESelectSearchSize) => EInputSize;
|
5
|
-
export declare const getDropdownArrowIcon: (isOpen: boolean, size: ESelectSearchSize) => "DropdownArrowBottom16px" | "
|
5
|
+
export declare const getDropdownArrowIcon: (isOpen: boolean, size: ESelectSearchSize) => "DropdownArrowBottom16px" | "DropdownArrowUp16px" | "DropdownArrowUp24px" | "DropdownArrowDown24px";
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { jsxs as n, jsx as a, Fragment as U } from "react/jsx-runtime";
|
2
|
-
import { forwardRef as V, useRef as
|
2
|
+
import { forwardRef as V, useRef as u, useId as z } from "react";
|
3
3
|
import { Icon as A } from "../../icons/Icon.js";
|
4
4
|
import { Button as B } from "../Button/Button.js";
|
5
5
|
import { EButtonVariantDefault as C } from "../Button/constants.js";
|
@@ -7,7 +7,7 @@ import '../../assets/Uploader.css';const p = {
|
|
7
7
|
"upload-file-wrapper": "_upload-file-wrapper_bplvw_2",
|
8
8
|
"upload-text": "_upload-text_bplvw_25",
|
9
9
|
"upload-file-input": "_upload-file-input_bplvw_35"
|
10
|
-
},
|
10
|
+
}, g = {
|
11
11
|
jpeg: "image/jpeg",
|
12
12
|
jpg: "image/jpg",
|
13
13
|
png: "image/png",
|
@@ -32,34 +32,34 @@ import '../../assets/Uploader.css';const p = {
|
|
32
32
|
let i = 0;
|
33
33
|
return () => (i = (i + 1) % Number.MAX_SAFE_INTEGER, i);
|
34
34
|
}, k = M(), q = V(
|
35
|
-
(i,
|
35
|
+
(i, x) => {
|
36
36
|
const {
|
37
37
|
filesType: o = S,
|
38
|
-
onChangeValue:
|
39
|
-
arrayName:
|
38
|
+
onChangeValue: h,
|
39
|
+
arrayName: b,
|
40
40
|
maxSize: r = 15,
|
41
|
-
maxFiles:
|
41
|
+
maxFiles: w,
|
42
42
|
isDisabled: s,
|
43
|
-
titleUploader:
|
43
|
+
titleUploader: c = "Или перетащите сюда",
|
44
44
|
buttonText: y = "Выберите файлы",
|
45
45
|
showOnlyUploadButton: _ = !1,
|
46
46
|
uploadButtonVariant: j = C.SecondaryAsphalt
|
47
|
-
} = i,
|
47
|
+
} = i, d = u(null), l = u(null), f = z(), v = (e) => {
|
48
48
|
var t;
|
49
49
|
return e.type ? e.type : ((t = e.name.split(".").pop()) == null ? void 0 : t.toLowerCase()) === "heic" ? "image/heic" : "";
|
50
50
|
}, I = (e) => {
|
51
51
|
if (e.target.files && e.target.files[0]) {
|
52
|
-
const
|
53
|
-
const T = v(t), E = o.map((R) =>
|
52
|
+
const m = Array.from(e.target.files).filter((t) => {
|
53
|
+
const T = v(t), E = o.map((R) => g[R]).includes(T), F = t.size / 1024 ** 2 <= r;
|
54
54
|
return E && F;
|
55
|
-
}).slice(0,
|
56
|
-
|
55
|
+
}).slice(0, w).map((t) => ({ file: t, id: k() }));
|
56
|
+
h({ arrayName: b, value: m }), l.current && (l.current.value = "");
|
57
57
|
}
|
58
58
|
}, N = () => {
|
59
59
|
var e;
|
60
|
-
(e =
|
60
|
+
(e = d.current) == null || e.click();
|
61
61
|
};
|
62
|
-
return /* @__PURE__ */ n("div", { className: p["upload-file-wrapper"], ref:
|
62
|
+
return /* @__PURE__ */ n("div", { className: p["upload-file-wrapper"], ref: x, children: [
|
63
63
|
/* @__PURE__ */ a(
|
64
64
|
"input",
|
65
65
|
{
|
@@ -71,12 +71,12 @@ import '../../assets/Uploader.css';const p = {
|
|
71
71
|
multiple: !0,
|
72
72
|
onChange: I,
|
73
73
|
title: "",
|
74
|
-
id:
|
75
|
-
accept: o.map((e) =>
|
74
|
+
id: f,
|
75
|
+
accept: o.map((e) => g[e]).join(),
|
76
76
|
disabled: s
|
77
77
|
}
|
78
78
|
),
|
79
|
-
/* @__PURE__ */ n("label", { htmlFor:
|
79
|
+
/* @__PURE__ */ n("label", { htmlFor: f, ref: d, children: [
|
80
80
|
/* @__PURE__ */ a(
|
81
81
|
B,
|
82
82
|
{
|
@@ -89,7 +89,7 @@ import '../../assets/Uploader.css';const p = {
|
|
89
89
|
}
|
90
90
|
),
|
91
91
|
!_ && /* @__PURE__ */ n(U, { children: [
|
92
|
-
/* @__PURE__ */ a("b", { children:
|
92
|
+
c && /* @__PURE__ */ a("b", { children: c }),
|
93
93
|
/* @__PURE__ */ n("span", { className: p["upload-text"], children: [
|
94
94
|
"Максимальный размер одного файла – ",
|
95
95
|
r,
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import './assets/styles.css';const _ = "_input_hmkm7_2", t = "_inputBorderControl_hmkm7_14", n = "_editable_hmkm7_27", m = "_wrapper_hmkm7_50", r = "_active_hmkm7_56", o = "_button_hmkm7_44", e = "_h_hmkm7_100", c = "_b_hmkm7_44", p = "_d_hmkm7_10", a = "_m_hmkm7_122", h = "_a_hmkm7_56", k = "_prev_hmkm7_124", i = "_orange_hmkm7_138", s = "_current_hmkm7_155", u = "_monthGrid_hmkm7_160", d = {
|
2
|
+
input: _,
|
3
|
+
"input-wrapper": "_input-wrapper_hmkm7_6",
|
4
|
+
"date-wrapper": "_date-wrapper_hmkm7_10",
|
5
|
+
inputBorderControl: t,
|
6
|
+
editable: n,
|
7
|
+
"button-wrapper": "_button-wrapper_hmkm7_44",
|
8
|
+
wrapper: m,
|
9
|
+
active: r,
|
10
|
+
button: o,
|
11
|
+
"calendar-block": "_calendar-block_hmkm7_78",
|
12
|
+
h: e,
|
13
|
+
b: c,
|
14
|
+
d: p,
|
15
|
+
m: a,
|
16
|
+
a: h,
|
17
|
+
prev: k,
|
18
|
+
orange: i,
|
19
|
+
current: s,
|
20
|
+
monthGrid: u,
|
21
|
+
"icon-button": "_icon-button_hmkm7_165"
|
22
|
+
};
|
23
|
+
export {
|
24
|
+
d as c
|
25
|
+
};
|
package/package.json
CHANGED
@@ -1,24 +0,0 @@
|
|
1
|
-
import './assets/styles.css';const _ = "_input_yyf2c_2", t = "_inputBorderControl_yyf2c_14", c = "_editable_yyf2c_27", r = "_wrapper_yyf2c_50", n = "_active_yyf2c_56", o = "_button_yyf2c_44", y = "_h_yyf2c_100", e = "_b_yyf2c_44", p = "_d_yyf2c_10", a = "_m_yyf2c_122", f = "_a_yyf2c_56", s = "_prev_yyf2c_124", i = "_orange_yyf2c_138", d = "_current_yyf2c_155", u = "_monthGrid_yyf2c_160", b = {
|
2
|
-
input: _,
|
3
|
-
"input-wrapper": "_input-wrapper_yyf2c_6",
|
4
|
-
"date-wrapper": "_date-wrapper_yyf2c_10",
|
5
|
-
inputBorderControl: t,
|
6
|
-
editable: c,
|
7
|
-
"button-wrapper": "_button-wrapper_yyf2c_44",
|
8
|
-
wrapper: r,
|
9
|
-
active: n,
|
10
|
-
button: o,
|
11
|
-
"calendar-block": "_calendar-block_yyf2c_78",
|
12
|
-
h: y,
|
13
|
-
b: e,
|
14
|
-
d: p,
|
15
|
-
m: a,
|
16
|
-
a: f,
|
17
|
-
prev: s,
|
18
|
-
orange: i,
|
19
|
-
current: d,
|
20
|
-
monthGrid: u
|
21
|
-
};
|
22
|
-
export {
|
23
|
-
b as c
|
24
|
-
};
|