intelicoreact 1.5.14 → 1.5.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.
|
@@ -12,7 +12,7 @@ require("./Label.scss");
|
|
|
12
12
|
const Label = _ref => {
|
|
13
13
|
let {
|
|
14
14
|
className = "",
|
|
15
|
-
label,
|
|
15
|
+
label = "",
|
|
16
16
|
note,
|
|
17
17
|
hint,
|
|
18
18
|
isRequired,
|
|
@@ -22,17 +22,19 @@ const Label = _ref => {
|
|
|
22
22
|
isAccessability = false,
|
|
23
23
|
isAccessabilityHint = false
|
|
24
24
|
} = _ref;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
className:
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
25
|
+
const correctLabel = isRequired ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, label, " ", /*#__PURE__*/_react.default.createElement("span", {
|
|
26
|
+
className: "label_asterisk"
|
|
27
|
+
}, "*"), " ", note && /*#__PURE__*/_react.default.createElement("span", {
|
|
28
|
+
className: "label_note"
|
|
29
|
+
}, note), hint && /*#__PURE__*/_react.default.createElement(_Hint.default, {
|
|
30
|
+
isAccessability: isAccessabilityHint,
|
|
31
|
+
hint: hint.text,
|
|
32
|
+
icon: hint.icon,
|
|
33
|
+
variant: hint.variant,
|
|
34
|
+
side: hint.hintSide,
|
|
35
|
+
className: "label-hint",
|
|
36
|
+
onClickCallback: onClickHintCallback
|
|
37
|
+
})) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, label, " ", note && /*#__PURE__*/_react.default.createElement("span", {
|
|
36
38
|
className: "label_note"
|
|
37
39
|
}, note), hint && /*#__PURE__*/_react.default.createElement(_Hint.default, {
|
|
38
40
|
isAccessability: isAccessabilityHint,
|
|
@@ -43,5 +45,16 @@ const Label = _ref => {
|
|
|
43
45
|
className: "label-hint",
|
|
44
46
|
onClickCallback: onClickHintCallback
|
|
45
47
|
}));
|
|
48
|
+
return /*#__PURE__*/_react.default.createElement("span", {
|
|
49
|
+
tabIndex: isAccessability ? 0 : -1,
|
|
50
|
+
"aria-label": label,
|
|
51
|
+
className: (0, _classnames.default)("label", {
|
|
52
|
+
label_bold: isLabelBolt,
|
|
53
|
+
error: error,
|
|
54
|
+
isRequired: isRequired
|
|
55
|
+
}, className)
|
|
56
|
+
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
57
|
+
className: "label_text"
|
|
58
|
+
}, correctLabel));
|
|
46
59
|
};
|
|
47
60
|
var _default = exports.default = Label;
|
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
.label {
|
|
2
|
-
|
|
2
|
+
position: relative;
|
|
3
|
+
display: inline-flex;
|
|
3
4
|
align-items: center;
|
|
4
5
|
margin-bottom: 5px;
|
|
5
6
|
|
|
6
7
|
font-size: 13px;
|
|
8
|
+
width: 100%;
|
|
7
9
|
|
|
8
10
|
color: #1e1e2d;
|
|
9
11
|
|
|
10
12
|
.label_text {
|
|
11
|
-
|
|
13
|
+
vertical-align: middle;
|
|
14
|
+
width: 100%;
|
|
15
|
+
word-wrap: break-word;
|
|
16
|
+
white-space: normal;
|
|
12
17
|
}
|
|
13
18
|
|
|
14
|
-
&.isRequired
|
|
15
|
-
margin-right: 8px;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
&.isRequired .label_text::after {
|
|
19
|
-
content: '*';
|
|
20
|
-
position: absolute;
|
|
21
|
-
right: -8px;
|
|
19
|
+
&.isRequired .label_asterisk {
|
|
22
20
|
color: red;
|
|
23
21
|
}
|
|
24
22
|
|
|
@@ -26,11 +24,8 @@
|
|
|
26
24
|
font-weight: 500;
|
|
27
25
|
}
|
|
28
26
|
|
|
27
|
+
&_note,
|
|
29
28
|
&-hint {
|
|
30
|
-
margin-left: 5px;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&_note {
|
|
34
29
|
margin-left: 4px;
|
|
35
30
|
}
|
|
36
31
|
}
|
|
@@ -11,7 +11,7 @@ var _moment = _interopRequireDefault(require("moment"));
|
|
|
11
11
|
* @constant {Object} DATETIME_FORMATS
|
|
12
12
|
* @description Все доступные форматы дат и времени.
|
|
13
13
|
*/
|
|
14
|
-
const DATETIME_FORMATS = exports.DATETIME_FORMATS = {
|
|
14
|
+
const DATETIME_FORMATS = exports.DATETIME_FORMATS = Object.freeze({
|
|
15
15
|
// Основные форматы
|
|
16
16
|
DATE_FORMAT: "YYYY-MM-DD",
|
|
17
17
|
// Стандартный формат даты
|
|
@@ -58,63 +58,108 @@ const DATETIME_FORMATS = exports.DATETIME_FORMATS = {
|
|
|
58
58
|
MONTH_DAY: "MM/DD",
|
|
59
59
|
// Только месяц и день
|
|
60
60
|
YEAR_MONTH_DAY: "YYYY/MM/DD" // Год/Месяц/День
|
|
61
|
-
};
|
|
61
|
+
});
|
|
62
|
+
const formatMap = Object.freeze({
|
|
63
|
+
[DATETIME_FORMATS.DATE_FORMAT]: "YYYY-MM-DD",
|
|
64
|
+
// Стандартный формат даты
|
|
65
|
+
[DATETIME_FORMATS.DATE_WITHOUT_SEPARATORS]: "MMDDYYYY",
|
|
66
|
+
// Без разделителей
|
|
67
|
+
[DATETIME_FORMATS.VALIDATION_DATE_FORMAT]: "MM/DD/YYYY",
|
|
68
|
+
// Для валидации
|
|
69
|
+
[DATETIME_FORMATS.INPUT_DATE_FORMAT]: "MM.DD.YYYY",
|
|
70
|
+
// Формат для ввода
|
|
71
|
+
[DATETIME_FORMATS.INPUT_TIME_FORMAT]: "YYYY-MM-DD HH:mm:SS",
|
|
72
|
+
// Ввод времени
|
|
73
|
+
[DATETIME_FORMATS.TIME_FORMAT_WSPACE]: "YYYY-MM-DD HH:mm:SS",
|
|
74
|
+
// Время с пробелом
|
|
75
|
+
[DATETIME_FORMATS.TIME_FORMAT]: "YYYY-MM-DDTHH:mm:SS",
|
|
76
|
+
// Время с T (ISO формат)
|
|
77
|
+
[DATETIME_FORMATS.DATE_FORMAT_WITH_SLASH]: "MM/DD/YYYY",
|
|
78
|
+
// Дата с разделителем /
|
|
79
|
+
[DATETIME_FORMATS.DATE_WITH_DASHES]: "MM-DD-YYYY",
|
|
80
|
+
// Дата с дефисами
|
|
81
|
+
[DATETIME_FORMATS.DATE_WITH_DOTS]: "DD.MM.YYYY",
|
|
82
|
+
// Дата с точками
|
|
83
|
+
[DATETIME_FORMATS.DATE_WITH_COMMA]: "DD,MM,YYYY",
|
|
84
|
+
// Дата с запятыми
|
|
85
|
+
[DATETIME_FORMATS.FULL_DATE_TIME]: "YYYY-MM-DD HH:mm:ss",
|
|
86
|
+
// Полная дата и время
|
|
87
|
+
[DATETIME_FORMATS.ISO_DATE_TIME]: "YYYY-MM-DDTHH:mm:ss.SSSZ",
|
|
88
|
+
// ISO стандарт с миллисекундами
|
|
89
|
+
[DATETIME_FORMATS.LOCALIZED_DATE]: "MMMM DD, YYYY",
|
|
90
|
+
// Локализованный формат с полным названием месяца
|
|
91
|
+
[DATETIME_FORMATS.SHORT_DATE]: "MM/DD/YY",
|
|
92
|
+
// Краткая дата
|
|
93
|
+
[DATETIME_FORMATS.SHORT_DATE_WITH_TIME]: "MM/DD/YY HH:mm",
|
|
94
|
+
// Краткая дата с временем
|
|
95
|
+
[DATETIME_FORMATS.TIME_24H]: "HH:mm",
|
|
96
|
+
// Время в 24-часовом формате
|
|
97
|
+
[DATETIME_FORMATS.TIME_12H]: "hh:mm A",
|
|
98
|
+
// Время в 12-часовом формате
|
|
99
|
+
[DATETIME_FORMATS.TIME_12H_WITH_SECONDS]: "hh:mm:ss A",
|
|
100
|
+
// Время в 12-часовом формате с секундами
|
|
101
|
+
[DATETIME_FORMATS.TIME_24H_WITH_SECONDS]: "HH:mm:ss",
|
|
102
|
+
// Время в 24-часовом формате с секундами
|
|
103
|
+
[DATETIME_FORMATS.MONTH_DAY]: "MM/DD",
|
|
104
|
+
// Только месяц и день
|
|
105
|
+
[DATETIME_FORMATS.YEAR_MONTH_DAY]: "YYYY/MM/DD" // Год/Месяц/День
|
|
106
|
+
});
|
|
62
107
|
|
|
63
108
|
/**
|
|
64
109
|
* @constant {Object} DATE_UNITS
|
|
65
110
|
* @description Единицы времени, которые могут быть использованы для работы с датами.
|
|
66
111
|
*/
|
|
67
|
-
const DATE_UNITS = exports.DATE_UNITS = {
|
|
68
|
-
YEARS: {
|
|
112
|
+
const DATE_UNITS = exports.DATE_UNITS = Object.freeze({
|
|
113
|
+
YEARS: Object.freeze({
|
|
69
114
|
YEARS: "years",
|
|
70
115
|
YEAR: "year",
|
|
71
116
|
Y: "y",
|
|
72
117
|
TEMPLATE: "YYYY"
|
|
73
|
-
},
|
|
74
|
-
MONTHS: {
|
|
118
|
+
}),
|
|
119
|
+
MONTHS: Object.freeze({
|
|
75
120
|
MONTHS: "months",
|
|
76
121
|
MONTH: "month",
|
|
77
122
|
MON: "M",
|
|
78
123
|
TEMPLATE: "MM"
|
|
79
|
-
},
|
|
80
|
-
DAYS: {
|
|
124
|
+
}),
|
|
125
|
+
DAYS: Object.freeze({
|
|
81
126
|
DAYS: "days",
|
|
82
127
|
DAY: "day",
|
|
83
128
|
D: "d",
|
|
84
129
|
TEMPLATE: "DD"
|
|
85
|
-
},
|
|
86
|
-
HOURS: {
|
|
130
|
+
}),
|
|
131
|
+
HOURS: Object.freeze({
|
|
87
132
|
HOURS: "hours",
|
|
88
133
|
HOUR: "hour",
|
|
89
134
|
H: "h",
|
|
90
135
|
TEMPLATE: "HH"
|
|
91
|
-
},
|
|
92
|
-
WEEKS: {
|
|
136
|
+
}),
|
|
137
|
+
WEEKS: Object.freeze({
|
|
93
138
|
WEEKS: "weeks",
|
|
94
139
|
WEEK: "week",
|
|
95
140
|
W: "w"
|
|
96
|
-
},
|
|
97
|
-
QUARTERS: {
|
|
141
|
+
}),
|
|
142
|
+
QUARTERS: Object.freeze({
|
|
98
143
|
QUARTERS: "quarters",
|
|
99
144
|
QUARTER: "quarter",
|
|
100
145
|
Q: "Q"
|
|
101
|
-
},
|
|
102
|
-
MINUTES: {
|
|
146
|
+
}),
|
|
147
|
+
MINUTES: Object.freeze({
|
|
103
148
|
MINUTES: "minutes",
|
|
104
149
|
MINUTE: "minute",
|
|
105
150
|
MIN: "m"
|
|
106
|
-
},
|
|
107
|
-
SECONDS: {
|
|
151
|
+
}),
|
|
152
|
+
SECONDS: Object.freeze({
|
|
108
153
|
SECONDS: "seconds",
|
|
109
154
|
SECOND: "second",
|
|
110
155
|
S: "s"
|
|
111
|
-
},
|
|
112
|
-
MILLISECONDS: {
|
|
156
|
+
}),
|
|
157
|
+
MILLISECONDS: Object.freeze({
|
|
113
158
|
MILLISECONDS: "milliseconds",
|
|
114
159
|
MILLISECOND: "millisecond",
|
|
115
160
|
MS: "ms"
|
|
116
|
-
}
|
|
117
|
-
};
|
|
161
|
+
})
|
|
162
|
+
});
|
|
118
163
|
|
|
119
164
|
/**
|
|
120
165
|
* Функция для парсинга и форматирования строки с датой в указанный формат.
|
|
@@ -129,10 +174,11 @@ const DATE_UNITS = exports.DATE_UNITS = {
|
|
|
129
174
|
*/
|
|
130
175
|
function parseAndFormatDate(value) {
|
|
131
176
|
let outputFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DATETIME_FORMATS.INPUT_DATE_FORMAT;
|
|
132
|
-
if (!value || typeof value !== "string")
|
|
133
|
-
for (let format
|
|
134
|
-
|
|
135
|
-
|
|
177
|
+
if (!value || typeof value !== "string") return value;
|
|
178
|
+
for (let format in formatMap) {
|
|
179
|
+
const parsedDate = (0, _moment.default)(value, formatMap[format], true);
|
|
180
|
+
if (parsedDate.isValid()) {
|
|
181
|
+
return parsedDate.format(outputFormat);
|
|
136
182
|
}
|
|
137
183
|
}
|
|
138
184
|
return value;
|
|
@@ -5,27 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
if (typeof window !== "undefined" && "matchMedia" in window) {
|
|
13
|
-
return window.matchMedia(inputQuery).matches;
|
|
14
|
-
}
|
|
15
|
-
return false;
|
|
16
|
-
};
|
|
17
|
-
}, []);
|
|
18
|
-
const [matches, setMatches] = (0, _react.useState)(getMatches(query));
|
|
19
|
-
(0, _react.useEffect)(() => {
|
|
20
|
-
if (typeof window !== "undefined" && "matchMedia" in window) {
|
|
21
|
-
const matchMedia = window.matchMedia(query);
|
|
22
|
-
const debouncedChangeHandler = (0, _utils.debounce)(() => setMatches(getMatches(query)), 300);
|
|
23
|
-
matchMedia === null || matchMedia === void 0 || matchMedia.addEventListener("change", debouncedChangeHandler);
|
|
24
|
-
return () => {
|
|
25
|
-
matchMedia === null || matchMedia === void 0 || matchMedia.removeEventListener("change", debouncedChangeHandler);
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
}, [query, getMatches]);
|
|
29
|
-
return matches;
|
|
8
|
+
function subscribe(callback) {
|
|
9
|
+
const observer = new ResizeObserver(() => callback());
|
|
10
|
+
observer.observe(document.documentElement);
|
|
11
|
+
return () => observer.disconnect();
|
|
30
12
|
}
|
|
13
|
+
const useMediaQuery = query => {
|
|
14
|
+
return (0, _react.useSyncExternalStore)(subscribe, () => window.matchMedia(query).matches, () => false);
|
|
15
|
+
};
|
|
31
16
|
var _default = exports.default = useMediaQuery;
|