mimir-ui-kit 1.27.3 → 1.27.5
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +62 -62
- package/dist/components/DatePicker/DatePicker.js +12 -4
- package/dist/components/DatePicker/DatePickerModal.js +7 -5
- package/dist/components/Steps/Steps.js +1 -1
- package/dist/components/Vote/Vote.js +15 -3
- package/dist/index.js +2 -0
- package/dist/utils/formating/Date.d.ts +1 -0
- package/dist/utils/formating/Date.js +7 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +3 -1
- package/package.json +1 -1
package/README.md
CHANGED
@@ -1,62 +1,62 @@
|
|
1
|
-
# Mimir-ui
|
2
|
-
|
3
|
-
## Установка и запуск проекта
|
4
|
-
|
5
|
-
1. Установите зависимости:
|
6
|
-
```bash
|
7
|
-
npm install
|
8
|
-
```
|
9
|
-
2. Запуск storybook
|
10
|
-
```bash
|
11
|
-
npm run storybook
|
12
|
-
```
|
13
|
-
|
14
|
-
## Сборка проекта
|
15
|
-
|
16
|
-
1. Скрипт для сборки
|
17
|
-
```bash
|
18
|
-
npm run build
|
19
|
-
```
|
20
|
-
|
21
|
-
## Создание нового компонента
|
22
|
-
|
23
|
-
```bash
|
24
|
-
npm run create-component <ComponentName>
|
25
|
-
```
|
26
|
-
|
27
|
-
## Поднятие версии для публикации на npm
|
28
|
-
|
29
|
-
Для поднятия версии пакета перед публикацией на npm используем следующие скрипты:
|
30
|
-
|
31
|
-
1. `patch`: Этот скрипт увеличивает версию пакета на один патч (например, с версии 1.0.0 до 1.0.1). Он автоматически обновляет версию в файле package.json и создает коммит с обновленной версией.
|
32
|
-
|
33
|
-
```bash
|
34
|
-
npm version patch
|
35
|
-
```
|
36
|
-
|
37
|
-
2. `minor`: Этот скрипт увеличивает версию пакета на один минорный уровень (например, с версии 1.0.0 до 1.1.0). Также обновляет версию в package.json и создает коммит.
|
38
|
-
```bash
|
39
|
-
npm version minor
|
40
|
-
```
|
41
|
-
3. `major`: Этот скрипт увеличивает версию пакета на один мажорный уровень (например, с версии 1.0.0 до 2.0.0). Он также обновляет версию в package.json и создает коммит.
|
42
|
-
```bash
|
43
|
-
npm version major
|
44
|
-
```
|
45
|
-
|
46
|
-
## Публикация на npm
|
47
|
-
|
48
|
-
1. Скрипт для публикации на npm:
|
49
|
-
```bash
|
50
|
-
npm publish
|
51
|
-
```
|
52
|
-
|
53
|
-
## Ручная Генерация иконок
|
54
|
-
|
55
|
-
1. Экспортируем с фигмы иконку.
|
56
|
-
2. Добавляем ее в папку svgs.
|
57
|
-
3. Запускаем скрипт:
|
58
|
-
```bash
|
59
|
-
npm run icons
|
60
|
-
```
|
61
|
-
4. Смотрим в папку `icons/components`
|
62
|
-
5. Готово.
|
1
|
+
# Mimir-ui
|
2
|
+
|
3
|
+
## Установка и запуск проекта
|
4
|
+
|
5
|
+
1. Установите зависимости:
|
6
|
+
```bash
|
7
|
+
npm install
|
8
|
+
```
|
9
|
+
2. Запуск storybook
|
10
|
+
```bash
|
11
|
+
npm run storybook
|
12
|
+
```
|
13
|
+
|
14
|
+
## Сборка проекта
|
15
|
+
|
16
|
+
1. Скрипт для сборки
|
17
|
+
```bash
|
18
|
+
npm run build
|
19
|
+
```
|
20
|
+
|
21
|
+
## Создание нового компонента
|
22
|
+
|
23
|
+
```bash
|
24
|
+
npm run create-component <ComponentName>
|
25
|
+
```
|
26
|
+
|
27
|
+
## Поднятие версии для публикации на npm
|
28
|
+
|
29
|
+
Для поднятия версии пакета перед публикацией на npm используем следующие скрипты:
|
30
|
+
|
31
|
+
1. `patch`: Этот скрипт увеличивает версию пакета на один патч (например, с версии 1.0.0 до 1.0.1). Он автоматически обновляет версию в файле package.json и создает коммит с обновленной версией.
|
32
|
+
|
33
|
+
```bash
|
34
|
+
npm version patch
|
35
|
+
```
|
36
|
+
|
37
|
+
2. `minor`: Этот скрипт увеличивает версию пакета на один минорный уровень (например, с версии 1.0.0 до 1.1.0). Также обновляет версию в package.json и создает коммит.
|
38
|
+
```bash
|
39
|
+
npm version minor
|
40
|
+
```
|
41
|
+
3. `major`: Этот скрипт увеличивает версию пакета на один мажорный уровень (например, с версии 1.0.0 до 2.0.0). Он также обновляет версию в package.json и создает коммит.
|
42
|
+
```bash
|
43
|
+
npm version major
|
44
|
+
```
|
45
|
+
|
46
|
+
## Публикация на npm
|
47
|
+
|
48
|
+
1. Скрипт для публикации на npm:
|
49
|
+
```bash
|
50
|
+
npm publish
|
51
|
+
```
|
52
|
+
|
53
|
+
## Ручная Генерация иконок
|
54
|
+
|
55
|
+
1. Экспортируем с фигмы иконку.
|
56
|
+
2. Добавляем ее в папку svgs.
|
57
|
+
3. Запускаем скрипт:
|
58
|
+
```bash
|
59
|
+
npm run icons
|
60
|
+
```
|
61
|
+
4. Смотрим в папку `icons/components`
|
62
|
+
5. Готово.
|
@@ -10,6 +10,7 @@ import { formating } from "../../utils/index.js";
|
|
10
10
|
import { Button } from "../Button/Button.js";
|
11
11
|
import { I as Input } from "../../Input-6mudFqTb.js";
|
12
12
|
import { EInputVariant } from "../Input/constants.js";
|
13
|
+
import { parseDate } from "../../utils/formating/Date.js";
|
13
14
|
const DatePicker = memo(
|
14
15
|
forwardRef(
|
15
16
|
({
|
@@ -26,9 +27,12 @@ const DatePicker = memo(
|
|
26
27
|
}, ref) => {
|
27
28
|
const [isActive, setActive] = useState(false);
|
28
29
|
const [pickerType, setType] = useState(type);
|
29
|
-
const [date, setDate] = useState(
|
30
|
-
|
31
|
-
|
30
|
+
const [date, setDate] = useState(() => {
|
31
|
+
if (value) {
|
32
|
+
return parseDate(value);
|
33
|
+
}
|
34
|
+
return /* @__PURE__ */ new Date();
|
35
|
+
});
|
32
36
|
const [isError, setError] = useState(error);
|
33
37
|
useEffect(() => {
|
34
38
|
setError(error);
|
@@ -45,6 +49,10 @@ const DatePicker = memo(
|
|
45
49
|
if (!disabled) setActive(true);
|
46
50
|
};
|
47
51
|
const onDate = (d) => {
|
52
|
+
if (!isNaN(d.getTime())) {
|
53
|
+
setDate(d);
|
54
|
+
onChangeValue == null ? void 0 : onChangeValue({ value: d, name });
|
55
|
+
}
|
48
56
|
if (pickerType === "years") {
|
49
57
|
if (type === "years") {
|
50
58
|
setActive(false);
|
@@ -81,7 +89,7 @@ const DatePicker = memo(
|
|
81
89
|
size,
|
82
90
|
type: "text",
|
83
91
|
variant: isError ? EInputVariant.Error : variant,
|
84
|
-
value: formating.Date(date, "dd.mm.yy"),
|
92
|
+
value: !isNaN(date.getTime()) ? formating.Date(date, "dd.mm.yy") : "",
|
85
93
|
...props
|
86
94
|
}
|
87
95
|
)
|
@@ -5,6 +5,7 @@ import { c as cls } from "../../styles.module-BZXDqssF.js";
|
|
5
5
|
import { Icon } from "../../icons/Icon.js";
|
6
6
|
import { formating } from "../../utils/index.js";
|
7
7
|
import { Button } from "../Button/Button.js";
|
8
|
+
import { parseDate } from "../../utils/formating/Date.js";
|
8
9
|
function DatePickerModal({
|
9
10
|
date,
|
10
11
|
onChangeValue,
|
@@ -12,9 +13,10 @@ function DatePickerModal({
|
|
12
13
|
before,
|
13
14
|
onType
|
14
15
|
}) {
|
16
|
+
var _a;
|
15
17
|
const field = useRef(null);
|
16
|
-
const _current =
|
17
|
-
const _selecte =
|
18
|
+
const _current = parseDate(date);
|
19
|
+
const _selecte = parseDate(date);
|
18
20
|
const current = {
|
19
21
|
y: _current.getFullYear(),
|
20
22
|
d: _current.getDate(),
|
@@ -29,11 +31,11 @@ function DatePickerModal({
|
|
29
31
|
const [month, setMonth] = useState({ y: selecte.y, m: selecte.m });
|
30
32
|
const blockWidth = 368;
|
31
33
|
useEffect(() => {
|
32
|
-
var
|
34
|
+
var _a2, _b, _c, _d;
|
33
35
|
const windowHeight = window.innerHeight;
|
34
36
|
const windowWidth = window.innerWidth;
|
35
37
|
if (field.current !== null) {
|
36
|
-
const inputWidth = ((_b = (
|
38
|
+
const inputWidth = ((_b = (_a2 = field == null ? void 0 : field.current) == null ? void 0 : _a2.parentElement) == null ? void 0 : _b.offsetWidth) || 0;
|
37
39
|
const inputHeight = (_d = (_c = field == null ? void 0 : field.current) == null ? void 0 : _c.parentElement) == null ? void 0 : _d.offsetHeight;
|
38
40
|
const inputPosition = field.current.getBoundingClientRect();
|
39
41
|
const calendarSize = field.current.offsetHeight;
|
@@ -130,7 +132,7 @@ function DatePickerModal({
|
|
130
132
|
}
|
131
133
|
),
|
132
134
|
/* @__PURE__ */ jsxs("div", { className: cls["d"], onClick: () => onType == null ? void 0 : onType("months"), children: [
|
133
|
-
formating.Month(month.m).name,
|
135
|
+
((_a = formating.Month(month.m)) == null ? void 0 : _a.name) || "Неизвестный месяц",
|
134
136
|
"’",
|
135
137
|
month.y.toString().slice(-2),
|
136
138
|
/* @__PURE__ */ jsx(Icon, { iconName: "DropdownArrowBottom16px" })
|
@@ -89,7 +89,7 @@ const Steps = forwardRef(
|
|
89
89
|
const handleMouseLeave = () => {
|
90
90
|
setHoveredStep(null);
|
91
91
|
onStepMouseLeave && onStepMouseLeave();
|
92
|
-
const zone = zones.find((zone2) => zone2.to >= (step2
|
92
|
+
const zone = zones.find((zone2) => zone2.to >= (step2 || 0));
|
93
93
|
if (zone) {
|
94
94
|
setParentColor && setParentColor(zone.color);
|
95
95
|
if (fillByActualZone) {
|
@@ -60,6 +60,18 @@ const Vote = forwardRef((props, ref) => {
|
|
60
60
|
setHoveredScore(null);
|
61
61
|
};
|
62
62
|
const maxContainerWidth = resizable ? quantity * ((customSize == null ? void 0 : customSize.width) ?? StepSize[size].width) : void 0;
|
63
|
+
let showingScore;
|
64
|
+
let showingScoreBackground;
|
65
|
+
let showingScoreColor;
|
66
|
+
if (hoveredScore) {
|
67
|
+
showingScore = hoveredScore;
|
68
|
+
showingScoreBackground = currentColor;
|
69
|
+
showingScoreColor = scoreTextColor.selected;
|
70
|
+
} else {
|
71
|
+
showingScore = isZeroStep ? ZERO_VALUE : score2;
|
72
|
+
showingScoreBackground = isZeroStep ? unselectedColor : currentColor;
|
73
|
+
showingScoreColor = isZeroStep ? scoreTextColor.unselected : scoreTextColor.selected;
|
74
|
+
}
|
63
75
|
return /* @__PURE__ */ jsxs("div", { className: classNames(cls.container, rootClassName), ref, children: [
|
64
76
|
!withoutTitle && /* @__PURE__ */ jsx("p", { className: classNames(cls.title, titleClassName), children: title2 }),
|
65
77
|
/* @__PURE__ */ jsx(
|
@@ -67,10 +79,10 @@ const Vote = forwardRef((props, ref) => {
|
|
67
79
|
{
|
68
80
|
className: classNames(cls.score, scoreClassName),
|
69
81
|
style: {
|
70
|
-
backgroundColor:
|
71
|
-
color:
|
82
|
+
backgroundColor: showingScoreBackground,
|
83
|
+
color: showingScoreColor
|
72
84
|
},
|
73
|
-
children:
|
85
|
+
children: showingScore
|
74
86
|
}
|
75
87
|
),
|
76
88
|
/* @__PURE__ */ jsx(
|
package/dist/index.js
CHANGED
@@ -53,6 +53,7 @@ import { useMergeRefs } from "./hooks/useMergeRefs/useMergeRefs.js";
|
|
53
53
|
import { useResizeObserver } from "./hooks/useResizeObserver/useResizeObserver.js";
|
54
54
|
import { Icon } from "./icons/Icon.js";
|
55
55
|
import { formating } from "./utils/index.js";
|
56
|
+
import { parseDate } from "./utils/formating/Date.js";
|
56
57
|
import './assets/index.css';export {
|
57
58
|
Accordion,
|
58
59
|
AccordionItem,
|
@@ -114,6 +115,7 @@ import './assets/index.css';export {
|
|
114
115
|
formating,
|
115
116
|
getMaskedInputPhoneValue,
|
116
117
|
getUnmaskedInputValue,
|
118
|
+
parseDate,
|
117
119
|
useCopyToClipboard,
|
118
120
|
useInterval,
|
119
121
|
useLockBodyScroll,
|
@@ -21,6 +21,12 @@ function _Date(x, y) {
|
|
21
21
|
});
|
22
22
|
return y;
|
23
23
|
}
|
24
|
+
const parseDate = (dateString) => {
|
25
|
+
if (dateString instanceof Date) return dateString;
|
26
|
+
const [day, month, year] = dateString.split(".");
|
27
|
+
return new Date(parseInt(year), parseInt(month) - 1, parseInt(day));
|
28
|
+
};
|
24
29
|
export {
|
25
|
-
_Date as default
|
30
|
+
_Date as default,
|
31
|
+
parseDate
|
26
32
|
};
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import _Date from "./formating/Date.js";
|
2
|
+
import { parseDate } from "./formating/Date.js";
|
2
3
|
import Size from "./formating/FileSize.js";
|
3
4
|
import Month from "./formating/Month.js";
|
4
5
|
import Numbers from "./formating/Numbers.js";
|
@@ -11,5 +12,6 @@ const formating = {
|
|
11
12
|
Size
|
12
13
|
};
|
13
14
|
export {
|
14
|
-
formating
|
15
|
+
formating,
|
16
|
+
parseDate
|
15
17
|
};
|