@alfalab/core-components-calendar-range 5.2.0 → 5.4.0
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/CHANGELOG.md +11 -0
- package/dist/Component.d.ts +5 -0
- package/dist/Component.js +1 -1
- package/dist/cssm/Component.d.ts +5 -0
- package/dist/cssm/hooks.d.ts +2 -1
- package/dist/cssm/hooks.js +5 -1
- package/dist/cssm/views/static.d.ts +6 -1
- package/dist/cssm/views/static.js +9 -8
- package/dist/esm/Component.d.ts +5 -0
- package/dist/esm/Component.js +1 -1
- package/dist/esm/hooks.d.ts +2 -1
- package/dist/esm/hooks.js +5 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{index.module-8ed37480.d.ts → index.module-3c348e5c.d.ts} +0 -0
- package/dist/esm/{index.module-8ed37480.js → index.module-3c348e5c.js} +1 -1
- package/dist/esm/views/index.css +8 -8
- package/dist/esm/views/popover.js +1 -1
- package/dist/esm/views/static.d.ts +6 -1
- package/dist/esm/views/static.js +10 -9
- package/dist/hooks.d.ts +2 -1
- package/dist/hooks.js +5 -1
- package/dist/index.js +1 -1
- package/dist/{index.module-f819da5e.d.ts → index.module-6a4b60a6.d.ts} +0 -0
- package/dist/{index.module-f819da5e.js → index.module-6a4b60a6.js} +1 -1
- package/dist/modern/Component.d.ts +5 -0
- package/dist/modern/Component.js +1 -1
- package/dist/modern/hooks.d.ts +2 -1
- package/dist/modern/hooks.js +7 -3
- package/dist/modern/index.js +1 -1
- package/dist/modern/index.module-93e8a01c.js +4 -0
- package/dist/modern/views/index.css +8 -8
- package/dist/modern/views/popover.js +1 -1
- package/dist/modern/views/static.d.ts +6 -1
- package/dist/modern/views/static.js +3 -2
- package/dist/utils.js +1 -3
- package/dist/views/index.css +8 -8
- package/dist/views/popover.js +1 -1
- package/dist/views/static.d.ts +6 -1
- package/dist/views/static.js +10 -9
- package/package.json +5 -5
- package/dist/modern/index.module-c84943a7.js +0 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [5.4.0](https://github.com/core-ds/core-components/compare/@alfalab/core-components-calendar-range@5.3.1...@alfalab/core-components-calendar-range@5.4.0) (2022-06-03)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **date-input:** removed date validation ([#69](https://github.com/core-ds/core-components/issues/69)) ([ca56ec9](https://github.com/core-ds/core-components/commit/ca56ec97db0d966233bd4312fdddabd59ed427ae))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [5.1.3](https://github.com/core-ds/core-components/compare/@alfalab/core-components-calendar-range@5.1.2...@alfalab/core-components-calendar-range@5.1.3) (2022-03-18)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @alfalab/core-components-calendar-range
|
package/dist/Component.d.ts
CHANGED
|
@@ -72,6 +72,11 @@ type CalendarRangeProps = {
|
|
|
72
72
|
* Определяет, как рендерить календарь — в поповере или снизу инпута
|
|
73
73
|
*/
|
|
74
74
|
calendarPosition?: 'static' | 'popover';
|
|
75
|
+
/**
|
|
76
|
+
* calendarPosition = static
|
|
77
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
78
|
+
*/
|
|
79
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
75
80
|
};
|
|
76
81
|
declare const CalendarRange: FC<CalendarRangeProps>;
|
|
77
82
|
export { CalendarRangeProps, CalendarRange };
|
package/dist/Component.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index_module = require('./index.module-
|
|
5
|
+
var index_module = require('./index.module-6a4b60a6.js');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
require('classnames');
|
|
8
8
|
require('date-fns/startOfMonth');
|
package/dist/cssm/Component.d.ts
CHANGED
|
@@ -72,6 +72,11 @@ type CalendarRangeProps = {
|
|
|
72
72
|
* Определяет, как рендерить календарь — в поповере или снизу инпута
|
|
73
73
|
*/
|
|
74
74
|
calendarPosition?: 'static' | 'popover';
|
|
75
|
+
/**
|
|
76
|
+
* calendarPosition = static
|
|
77
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
78
|
+
*/
|
|
79
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
75
80
|
};
|
|
76
81
|
declare const CalendarRange: FC<CalendarRangeProps>;
|
|
77
82
|
export { CalendarRangeProps, CalendarRange };
|
package/dist/cssm/hooks.d.ts
CHANGED
|
@@ -9,10 +9,11 @@ declare function usePopoverViewMonthes({ dateFrom, dateTo, defaultMonth, resetKe
|
|
|
9
9
|
handleMonthFromChange: (newMonthFrom: number) => void;
|
|
10
10
|
handleMonthToChange: (newMonthTo: number) => void;
|
|
11
11
|
};
|
|
12
|
-
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, }: {
|
|
12
|
+
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, defaultMonthPosition, }: {
|
|
13
13
|
selectedFrom?: number;
|
|
14
14
|
selectedTo?: number;
|
|
15
15
|
defaultMonth: number;
|
|
16
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
16
17
|
}): {
|
|
17
18
|
monthFrom: number;
|
|
18
19
|
monthTo: number;
|
package/dist/cssm/hooks.js
CHANGED
|
@@ -50,7 +50,7 @@ function usePopoverViewMonthes(_a) {
|
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
52
|
function useStaticViewMonthes(_a) {
|
|
53
|
-
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth;
|
|
53
|
+
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth, defaultMonthPosition = _a.defaultMonthPosition;
|
|
54
54
|
/**
|
|
55
55
|
* Если указана начальная дата — левый месяц равен ей, иначе используется дата конца.
|
|
56
56
|
* Если обе даты не указаны, то используется дефолтный месяц
|
|
@@ -69,6 +69,10 @@ function useStaticViewMonthes(_a) {
|
|
|
69
69
|
},
|
|
70
70
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
71
71
|
[]);
|
|
72
|
+
if (defaultMonthPosition === 'right') {
|
|
73
|
+
initialMonthTo = initialMonthFrom;
|
|
74
|
+
initialMonthFrom = subMonths__default['default'](initialMonthFrom, 1).getTime();
|
|
75
|
+
}
|
|
72
76
|
var _b = React.useState(initialMonthFrom), monthFrom = _b[0], setMonthFrom = _b[1];
|
|
73
77
|
var _c = React.useState(initialMonthTo), monthTo = _c[0], setMonthTo = _c[1];
|
|
74
78
|
var handleMonthFromChange = React.useCallback(function (newMonthFrom) {
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { CalendarRangeProps } from "../Component";
|
|
3
|
-
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'
|
|
3
|
+
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'> & {
|
|
4
|
+
/**
|
|
5
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
6
|
+
*/
|
|
7
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
8
|
+
};
|
|
4
9
|
declare const CalendarRangeStatic: FC<CalendarRangeStaticProps>;
|
|
5
10
|
export { CalendarRangeStaticProps, CalendarRangeStatic };
|
|
@@ -31,9 +31,9 @@ var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
|
31
31
|
var endOfMonth__default = /*#__PURE__*/_interopDefaultLegacy(endOfMonth);
|
|
32
32
|
|
|
33
33
|
var CalendarRangeStatic = function (_a) {
|
|
34
|
-
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth__default['default'](new Date()).getTime() : _b, minDate = _a.minDate, maxDate = _a.maxDate,
|
|
35
|
-
var
|
|
36
|
-
var
|
|
34
|
+
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth__default['default'](new Date()).getTime() : _b, _c = _a.defaultMonthPosition, defaultMonthPosition = _c === void 0 ? 'left' : _c, minDate = _a.minDate, maxDate = _a.maxDate, _d = _a.valueFrom, valueFrom = _d === void 0 ? '' : _d, _e = _a.valueTo, valueTo = _e === void 0 ? '' : _e, _f = _a.onDateFromChange, onDateFromChange = _f === void 0 ? function () { return null; } : _f, _g = _a.onDateToChange, onDateToChange = _g === void 0 ? function () { return null; } : _g, _h = _a.onChange, onChange = _h === void 0 ? function () { return null; } : _h, _j = _a.inputFromProps, inputFromProps = _j === void 0 ? {} : _j, _k = _a.inputToProps, inputToProps = _k === void 0 ? {} : _k, offDays = _a.offDays, events = _a.events, dataTestId = _a.dataTestId;
|
|
35
|
+
var _l = React.useState(valueFrom), inputFromValue = _l[0], setInputFromValue = _l[1];
|
|
36
|
+
var _m = React.useState(valueTo), inputToValue = _m[0], setInputToValue = _m[1];
|
|
37
37
|
var dateFrom = coreComponentsCalendarInput.isValidInputValue(inputFromValue, minDate, maxDate, offDays)
|
|
38
38
|
? coreComponentsCalendarInput.parseDateString(inputFromValue).getTime()
|
|
39
39
|
: null;
|
|
@@ -46,20 +46,21 @@ var CalendarRangeStatic = function (_a) {
|
|
|
46
46
|
var bothInvalid = coreComponentsDateInput.isCompleteDateInput(inputFromValue) &&
|
|
47
47
|
coreComponentsDateInput.isCompleteDateInput(inputToValue) &&
|
|
48
48
|
coreComponentsCalendarInput.parseDateString(inputFromValue).getTime() > coreComponentsCalendarInput.parseDateString(inputToValue).getTime();
|
|
49
|
-
var
|
|
49
|
+
var _o = React.useState(undefined), highlightedDate = _o[0], setHighlightedDate = _o[1];
|
|
50
50
|
var period = coreComponentsCalendar.usePeriodWithReset({
|
|
51
51
|
initialSelectedFrom: dateFrom ? coreComponentsCalendarInput.parseDateString(inputFromValue).getTime() : undefined,
|
|
52
52
|
initialSelectedTo: dateTo ? coreComponentsCalendarInput.parseDateString(inputToValue).getTime() : undefined,
|
|
53
53
|
});
|
|
54
54
|
var validateInputFromValue = React.useCallback(function (value) { return coreComponentsCalendarInput.isValidInputValue(value, minDate, dateFrom || maxDate, offDays); }, [dateFrom, maxDate, minDate, offDays]);
|
|
55
55
|
var validateInputToValue = React.useCallback(function (value) { return coreComponentsCalendarInput.isValidInputValue(value, dateFrom || minDate, maxDate, offDays); }, [dateFrom, minDate, maxDate, offDays]);
|
|
56
|
-
var
|
|
57
|
-
var
|
|
58
|
-
var
|
|
56
|
+
var _p = React.useState(validateInputFromValue(inputFromValue) === false), inputFromInvalid = _p[0], setInputFromInvalid = _p[1];
|
|
57
|
+
var _q = React.useState(validateInputToValue(inputToValue) === false), inputToInvalid = _q[0], setInputToInvalid = _q[1];
|
|
58
|
+
var _r = hooks.useStaticViewMonthes({
|
|
59
59
|
selectedFrom: period.selectedFrom,
|
|
60
60
|
selectedTo: period.selectedTo,
|
|
61
61
|
defaultMonth: defaultMonth,
|
|
62
|
-
|
|
62
|
+
defaultMonthPosition: defaultMonthPosition,
|
|
63
|
+
}), monthFrom = _r.monthFrom, monthTo = _r.monthTo, handleMonthFromChange = _r.handleMonthFromChange, handleMonthToChange = _r.handleMonthToChange;
|
|
63
64
|
var handleValidInputFrom = React.useCallback(function () {
|
|
64
65
|
setInputFromInvalid(inputFromValue !== '' && !validateInputFromValue(inputFromValue));
|
|
65
66
|
}, [inputFromValue, validateInputFromValue]);
|
package/dist/esm/Component.d.ts
CHANGED
|
@@ -72,6 +72,11 @@ type CalendarRangeProps = {
|
|
|
72
72
|
* Определяет, как рендерить календарь — в поповере или снизу инпута
|
|
73
73
|
*/
|
|
74
74
|
calendarPosition?: 'static' | 'popover';
|
|
75
|
+
/**
|
|
76
|
+
* calendarPosition = static
|
|
77
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
78
|
+
*/
|
|
79
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
75
80
|
};
|
|
76
81
|
declare const CalendarRange: FC<CalendarRangeProps>;
|
|
77
82
|
export { CalendarRangeProps, CalendarRange };
|
package/dist/esm/Component.js
CHANGED
package/dist/esm/hooks.d.ts
CHANGED
|
@@ -9,10 +9,11 @@ declare function usePopoverViewMonthes({ dateFrom, dateTo, defaultMonth, resetKe
|
|
|
9
9
|
handleMonthFromChange: (newMonthFrom: number) => void;
|
|
10
10
|
handleMonthToChange: (newMonthTo: number) => void;
|
|
11
11
|
};
|
|
12
|
-
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, }: {
|
|
12
|
+
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, defaultMonthPosition, }: {
|
|
13
13
|
selectedFrom?: number;
|
|
14
14
|
selectedTo?: number;
|
|
15
15
|
defaultMonth: number;
|
|
16
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
16
17
|
}): {
|
|
17
18
|
monthFrom: number;
|
|
18
19
|
monthTo: number;
|
package/dist/esm/hooks.js
CHANGED
|
@@ -37,7 +37,7 @@ function usePopoverViewMonthes(_a) {
|
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
function useStaticViewMonthes(_a) {
|
|
40
|
-
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth;
|
|
40
|
+
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth, defaultMonthPosition = _a.defaultMonthPosition;
|
|
41
41
|
/**
|
|
42
42
|
* Если указана начальная дата — левый месяц равен ей, иначе используется дата конца.
|
|
43
43
|
* Если обе даты не указаны, то используется дефолтный месяц
|
|
@@ -56,6 +56,10 @@ function useStaticViewMonthes(_a) {
|
|
|
56
56
|
},
|
|
57
57
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
58
58
|
[]);
|
|
59
|
+
if (defaultMonthPosition === 'right') {
|
|
60
|
+
initialMonthTo = initialMonthFrom;
|
|
61
|
+
initialMonthFrom = subMonths(initialMonthFrom, 1).getTime();
|
|
62
|
+
}
|
|
59
63
|
var _b = useState(initialMonthFrom), monthFrom = _b[0], setMonthFrom = _b[1];
|
|
60
64
|
var _c = useState(initialMonthTo), monthTo = _c[0], setMonthTo = _c[1];
|
|
61
65
|
var handleMonthFromChange = useCallback(function (newMonthFrom) {
|
package/dist/esm/index.js
CHANGED
|
File without changes
|
|
@@ -37,7 +37,7 @@ function __rest(s, e) {
|
|
|
37
37
|
return t;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
var styles = {"component":"calendar-
|
|
40
|
+
var styles = {"component":"calendar-range__component_1qqfo","divider":"calendar-range__divider_1qqfo","static":"calendar-range__static_1qqfo","calendar":"calendar-range__calendar_1qqfo"};
|
|
41
41
|
require('./views/index.css')
|
|
42
42
|
|
|
43
43
|
export { __rest as _, __assign as a, styles as s };
|
package/dist/esm/views/index.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: dx64y */
|
|
2
2
|
:root {
|
|
3
3
|
--color-light-graphic-primary: #0b1f35;
|
|
4
4
|
}
|
|
@@ -34,19 +34,19 @@
|
|
|
34
34
|
|
|
35
35
|
/* marker */
|
|
36
36
|
}
|
|
37
|
-
.calendar-
|
|
37
|
+
.calendar-range__component_1qqfo {
|
|
38
38
|
display: flex
|
|
39
39
|
}
|
|
40
|
-
.calendar-
|
|
40
|
+
.calendar-range__component_1qqfo button[aria-selected='true'] {
|
|
41
41
|
cursor: pointer;
|
|
42
42
|
}
|
|
43
|
-
.calendar-
|
|
43
|
+
.calendar-range__component_1qqfo *[class*='errorIcon_'] {
|
|
44
44
|
display: none;
|
|
45
45
|
}
|
|
46
|
-
.calendar-
|
|
46
|
+
.calendar-range__component_1qqfo *[class*='calendarIcon_'] {
|
|
47
47
|
margin-right: 0;
|
|
48
48
|
}
|
|
49
|
-
.calendar-
|
|
49
|
+
.calendar-range__divider_1qqfo {
|
|
50
50
|
height: 48px;
|
|
51
51
|
display: flex;
|
|
52
52
|
align-items: center;
|
|
@@ -54,13 +54,13 @@
|
|
|
54
54
|
width: 16px;
|
|
55
55
|
margin: 0 var(--gap-xs)
|
|
56
56
|
}
|
|
57
|
-
.calendar-
|
|
57
|
+
.calendar-range__divider_1qqfo:after {
|
|
58
58
|
content: '';
|
|
59
59
|
display: block;
|
|
60
60
|
width: 100%;
|
|
61
61
|
height: 1px;
|
|
62
62
|
background-color: var(--color-light-graphic-primary);
|
|
63
63
|
}
|
|
64
|
-
.calendar-
|
|
64
|
+
.calendar-range__static_1qqfo .calendar-range__calendar_1qqfo {
|
|
65
65
|
width: var(--calendar-inner-width);
|
|
66
66
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { s as styles, a as __assign } from '../index.module-
|
|
1
|
+
import { s as styles, a as __assign } from '../index.module-3c348e5c.js';
|
|
2
2
|
import React, { useState, useCallback, useEffect } from 'react';
|
|
3
3
|
import cn from 'classnames';
|
|
4
4
|
import startOfMonth from 'date-fns/startOfMonth';
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { CalendarRangeProps } from "../Component";
|
|
3
|
-
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'
|
|
3
|
+
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'> & {
|
|
4
|
+
/**
|
|
5
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
6
|
+
*/
|
|
7
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
8
|
+
};
|
|
4
9
|
declare const CalendarRangeStatic: FC<CalendarRangeStaticProps>;
|
|
5
10
|
export { CalendarRangeStaticProps, CalendarRangeStatic };
|
package/dist/esm/views/static.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as __rest, s as styles, a as __assign } from '../index.module-
|
|
1
|
+
import { _ as __rest, s as styles, a as __assign } from '../index.module-3c348e5c.js';
|
|
2
2
|
import React, { useState, useCallback, useEffect } from 'react';
|
|
3
3
|
import cn from 'classnames';
|
|
4
4
|
import startOfMonth from 'date-fns/startOfMonth';
|
|
@@ -15,9 +15,9 @@ import { usePeriodWithReset, Calendar } from '@alfalab/core-components-calendar/
|
|
|
15
15
|
import { isDayButton } from '../utils.js';
|
|
16
16
|
|
|
17
17
|
var CalendarRangeStatic = function (_a) {
|
|
18
|
-
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth(new Date()).getTime() : _b, minDate = _a.minDate, maxDate = _a.maxDate,
|
|
19
|
-
var
|
|
20
|
-
var
|
|
18
|
+
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth(new Date()).getTime() : _b, _c = _a.defaultMonthPosition, defaultMonthPosition = _c === void 0 ? 'left' : _c, minDate = _a.minDate, maxDate = _a.maxDate, _d = _a.valueFrom, valueFrom = _d === void 0 ? '' : _d, _e = _a.valueTo, valueTo = _e === void 0 ? '' : _e, _f = _a.onDateFromChange, onDateFromChange = _f === void 0 ? function () { return null; } : _f, _g = _a.onDateToChange, onDateToChange = _g === void 0 ? function () { return null; } : _g, _h = _a.onChange, onChange = _h === void 0 ? function () { return null; } : _h, _j = _a.inputFromProps, inputFromProps = _j === void 0 ? {} : _j, _k = _a.inputToProps, inputToProps = _k === void 0 ? {} : _k, offDays = _a.offDays, events = _a.events, dataTestId = _a.dataTestId;
|
|
19
|
+
var _l = useState(valueFrom), inputFromValue = _l[0], setInputFromValue = _l[1];
|
|
20
|
+
var _m = useState(valueTo), inputToValue = _m[0], setInputToValue = _m[1];
|
|
21
21
|
var dateFrom = isValidInputValue(inputFromValue, minDate, maxDate, offDays)
|
|
22
22
|
? parseDateString(inputFromValue).getTime()
|
|
23
23
|
: null;
|
|
@@ -30,20 +30,21 @@ var CalendarRangeStatic = function (_a) {
|
|
|
30
30
|
var bothInvalid = isCompleteDateInput(inputFromValue) &&
|
|
31
31
|
isCompleteDateInput(inputToValue) &&
|
|
32
32
|
parseDateString(inputFromValue).getTime() > parseDateString(inputToValue).getTime();
|
|
33
|
-
var
|
|
33
|
+
var _o = useState(undefined), highlightedDate = _o[0], setHighlightedDate = _o[1];
|
|
34
34
|
var period = usePeriodWithReset({
|
|
35
35
|
initialSelectedFrom: dateFrom ? parseDateString(inputFromValue).getTime() : undefined,
|
|
36
36
|
initialSelectedTo: dateTo ? parseDateString(inputToValue).getTime() : undefined,
|
|
37
37
|
});
|
|
38
38
|
var validateInputFromValue = useCallback(function (value) { return isValidInputValue(value, minDate, dateFrom || maxDate, offDays); }, [dateFrom, maxDate, minDate, offDays]);
|
|
39
39
|
var validateInputToValue = useCallback(function (value) { return isValidInputValue(value, dateFrom || minDate, maxDate, offDays); }, [dateFrom, minDate, maxDate, offDays]);
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
40
|
+
var _p = useState(validateInputFromValue(inputFromValue) === false), inputFromInvalid = _p[0], setInputFromInvalid = _p[1];
|
|
41
|
+
var _q = useState(validateInputToValue(inputToValue) === false), inputToInvalid = _q[0], setInputToInvalid = _q[1];
|
|
42
|
+
var _r = useStaticViewMonthes({
|
|
43
43
|
selectedFrom: period.selectedFrom,
|
|
44
44
|
selectedTo: period.selectedTo,
|
|
45
45
|
defaultMonth: defaultMonth,
|
|
46
|
-
|
|
46
|
+
defaultMonthPosition: defaultMonthPosition,
|
|
47
|
+
}), monthFrom = _r.monthFrom, monthTo = _r.monthTo, handleMonthFromChange = _r.handleMonthFromChange, handleMonthToChange = _r.handleMonthToChange;
|
|
47
48
|
var handleValidInputFrom = useCallback(function () {
|
|
48
49
|
setInputFromInvalid(inputFromValue !== '' && !validateInputFromValue(inputFromValue));
|
|
49
50
|
}, [inputFromValue, validateInputFromValue]);
|
package/dist/hooks.d.ts
CHANGED
|
@@ -9,10 +9,11 @@ declare function usePopoverViewMonthes({ dateFrom, dateTo, defaultMonth, resetKe
|
|
|
9
9
|
handleMonthFromChange: (newMonthFrom: number) => void;
|
|
10
10
|
handleMonthToChange: (newMonthTo: number) => void;
|
|
11
11
|
};
|
|
12
|
-
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, }: {
|
|
12
|
+
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, defaultMonthPosition, }: {
|
|
13
13
|
selectedFrom?: number;
|
|
14
14
|
selectedTo?: number;
|
|
15
15
|
defaultMonth: number;
|
|
16
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
16
17
|
}): {
|
|
17
18
|
monthFrom: number;
|
|
18
19
|
monthTo: number;
|
package/dist/hooks.js
CHANGED
|
@@ -50,7 +50,7 @@ function usePopoverViewMonthes(_a) {
|
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
52
|
function useStaticViewMonthes(_a) {
|
|
53
|
-
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth;
|
|
53
|
+
var selectedFrom = _a.selectedFrom, selectedTo = _a.selectedTo, defaultMonth = _a.defaultMonth, defaultMonthPosition = _a.defaultMonthPosition;
|
|
54
54
|
/**
|
|
55
55
|
* Если указана начальная дата — левый месяц равен ей, иначе используется дата конца.
|
|
56
56
|
* Если обе даты не указаны, то используется дефолтный месяц
|
|
@@ -69,6 +69,10 @@ function useStaticViewMonthes(_a) {
|
|
|
69
69
|
},
|
|
70
70
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
71
71
|
[]);
|
|
72
|
+
if (defaultMonthPosition === 'right') {
|
|
73
|
+
initialMonthTo = initialMonthFrom;
|
|
74
|
+
initialMonthFrom = subMonths__default['default'](initialMonthFrom, 1).getTime();
|
|
75
|
+
}
|
|
72
76
|
var _b = React.useState(initialMonthFrom), monthFrom = _b[0], setMonthFrom = _b[1];
|
|
73
77
|
var _c = React.useState(initialMonthTo), monthTo = _c[0], setMonthTo = _c[1];
|
|
74
78
|
var handleMonthFromChange = React.useCallback(function (newMonthFrom) {
|
package/dist/index.js
CHANGED
|
File without changes
|
|
@@ -39,7 +39,7 @@ function __rest(s, e) {
|
|
|
39
39
|
return t;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
var styles = {"component":"calendar-
|
|
42
|
+
var styles = {"component":"calendar-range__component_1qqfo","divider":"calendar-range__divider_1qqfo","static":"calendar-range__static_1qqfo","calendar":"calendar-range__calendar_1qqfo"};
|
|
43
43
|
require('./views/index.css')
|
|
44
44
|
|
|
45
45
|
exports.__rest = __rest;
|
|
@@ -72,6 +72,11 @@ type CalendarRangeProps = {
|
|
|
72
72
|
* Определяет, как рендерить календарь — в поповере или снизу инпута
|
|
73
73
|
*/
|
|
74
74
|
calendarPosition?: 'static' | 'popover';
|
|
75
|
+
/**
|
|
76
|
+
* calendarPosition = static
|
|
77
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
78
|
+
*/
|
|
79
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
75
80
|
};
|
|
76
81
|
declare const CalendarRange: FC<CalendarRangeProps>;
|
|
77
82
|
export { CalendarRangeProps, CalendarRange };
|
package/dist/modern/Component.js
CHANGED
|
@@ -9,7 +9,7 @@ import 'date-fns/max';
|
|
|
9
9
|
import 'date-fns/min';
|
|
10
10
|
import 'date-fns/isEqual';
|
|
11
11
|
import './hooks.js';
|
|
12
|
-
import './index.module-
|
|
12
|
+
import './index.module-93e8a01c.js';
|
|
13
13
|
import { CalendarRangePopover } from './views/popover.js';
|
|
14
14
|
import 'date-fns/endOfMonth';
|
|
15
15
|
import '@alfalab/core-components-calendar/dist/modern';
|
package/dist/modern/hooks.d.ts
CHANGED
|
@@ -9,10 +9,11 @@ declare function usePopoverViewMonthes({ dateFrom, dateTo, defaultMonth, resetKe
|
|
|
9
9
|
handleMonthFromChange: (newMonthFrom: number) => void;
|
|
10
10
|
handleMonthToChange: (newMonthTo: number) => void;
|
|
11
11
|
};
|
|
12
|
-
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, }: {
|
|
12
|
+
declare function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, defaultMonthPosition, }: {
|
|
13
13
|
selectedFrom?: number;
|
|
14
14
|
selectedTo?: number;
|
|
15
15
|
defaultMonth: number;
|
|
16
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
16
17
|
}): {
|
|
17
18
|
monthFrom: number;
|
|
18
19
|
monthTo: number;
|
package/dist/modern/hooks.js
CHANGED
|
@@ -35,23 +35,27 @@ function usePopoverViewMonthes({ dateFrom, dateTo, defaultMonth, resetKey, }) {
|
|
|
35
35
|
handleMonthToChange,
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, }) {
|
|
38
|
+
function useStaticViewMonthes({ selectedFrom, selectedTo, defaultMonth, defaultMonthPosition, }) {
|
|
39
39
|
/**
|
|
40
40
|
* Если указана начальная дата — левый месяц равен ей, иначе используется дата конца.
|
|
41
41
|
* Если обе даты не указаны, то используется дефолтный месяц
|
|
42
42
|
*/
|
|
43
|
-
|
|
43
|
+
let initialMonthFrom = useMemo(() => startOfMonth(selectedFrom || selectedTo || defaultMonth).getTime(),
|
|
44
44
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
45
45
|
[]);
|
|
46
46
|
/**
|
|
47
47
|
* Правый месяц должен быть как минимум на 1 месяц больше левого
|
|
48
48
|
*/
|
|
49
|
-
|
|
49
|
+
let initialMonthTo = useMemo(() => max([
|
|
50
50
|
selectedTo ? startOfMonth(selectedTo) : 0,
|
|
51
51
|
addMonths(initialMonthFrom, 1),
|
|
52
52
|
]).getTime(),
|
|
53
53
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
54
54
|
[]);
|
|
55
|
+
if (defaultMonthPosition === 'right') {
|
|
56
|
+
initialMonthTo = initialMonthFrom;
|
|
57
|
+
initialMonthFrom = subMonths(initialMonthFrom, 1).getTime();
|
|
58
|
+
}
|
|
55
59
|
const [monthFrom, setMonthFrom] = useState(initialMonthFrom);
|
|
56
60
|
const [monthTo, setMonthTo] = useState(initialMonthTo);
|
|
57
61
|
const handleMonthFromChange = useCallback((newMonthFrom) => {
|
package/dist/modern/index.js
CHANGED
|
@@ -9,7 +9,7 @@ import 'date-fns/max';
|
|
|
9
9
|
import 'date-fns/min';
|
|
10
10
|
import 'date-fns/isEqual';
|
|
11
11
|
import './hooks.js';
|
|
12
|
-
import './index.module-
|
|
12
|
+
import './index.module-93e8a01c.js';
|
|
13
13
|
import './views/popover.js';
|
|
14
14
|
import 'date-fns/endOfMonth';
|
|
15
15
|
import '@alfalab/core-components-calendar/dist/modern';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: dx64y */
|
|
2
2
|
:root {
|
|
3
3
|
--color-light-graphic-primary: #0b1f35;
|
|
4
4
|
}
|
|
@@ -34,19 +34,19 @@
|
|
|
34
34
|
|
|
35
35
|
/* marker */
|
|
36
36
|
}
|
|
37
|
-
.calendar-
|
|
37
|
+
.calendar-range__component_1qqfo {
|
|
38
38
|
display: flex
|
|
39
39
|
}
|
|
40
|
-
.calendar-
|
|
40
|
+
.calendar-range__component_1qqfo button[aria-selected='true'] {
|
|
41
41
|
cursor: pointer;
|
|
42
42
|
}
|
|
43
|
-
.calendar-
|
|
43
|
+
.calendar-range__component_1qqfo *[class*='errorIcon_'] {
|
|
44
44
|
display: none;
|
|
45
45
|
}
|
|
46
|
-
.calendar-
|
|
46
|
+
.calendar-range__component_1qqfo *[class*='calendarIcon_'] {
|
|
47
47
|
margin-right: 0;
|
|
48
48
|
}
|
|
49
|
-
.calendar-
|
|
49
|
+
.calendar-range__divider_1qqfo {
|
|
50
50
|
height: 48px;
|
|
51
51
|
display: flex;
|
|
52
52
|
align-items: center;
|
|
@@ -54,13 +54,13 @@
|
|
|
54
54
|
width: 16px;
|
|
55
55
|
margin: 0 var(--gap-xs)
|
|
56
56
|
}
|
|
57
|
-
.calendar-
|
|
57
|
+
.calendar-range__divider_1qqfo:after {
|
|
58
58
|
content: '';
|
|
59
59
|
display: block;
|
|
60
60
|
width: 100%;
|
|
61
61
|
height: 1px;
|
|
62
62
|
background-color: var(--color-light-graphic-primary);
|
|
63
63
|
}
|
|
64
|
-
.calendar-
|
|
64
|
+
.calendar-range__static_1qqfo .calendar-range__calendar_1qqfo {
|
|
65
65
|
width: var(--calendar-inner-width);
|
|
66
66
|
}
|
|
@@ -9,7 +9,7 @@ import 'date-fns/max';
|
|
|
9
9
|
import 'date-fns/min';
|
|
10
10
|
import 'date-fns/isEqual';
|
|
11
11
|
import { usePopoverViewMonthes } from '../hooks.js';
|
|
12
|
-
import { s as styles } from '../index.module-
|
|
12
|
+
import { s as styles } from '../index.module-93e8a01c.js';
|
|
13
13
|
|
|
14
14
|
const CalendarRangePopover = ({ className, defaultMonth = startOfMonth(new Date()).getTime(), minDate, maxDate, valueFrom = '', valueTo = '', onDateFromChange = () => null, onDateToChange = () => null, onChange = () => null, inputFromProps = {}, inputToProps = {}, offDays, events, dataTestId, }) => {
|
|
15
15
|
const [inputFromValue, setInputFromValue] = useState(valueFrom);
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { CalendarRangeProps } from "../Component";
|
|
3
|
-
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'
|
|
3
|
+
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'> & {
|
|
4
|
+
/**
|
|
5
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
6
|
+
*/
|
|
7
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
8
|
+
};
|
|
4
9
|
declare const CalendarRangeStatic: FC<CalendarRangeStaticProps>;
|
|
5
10
|
export { CalendarRangeStaticProps, CalendarRangeStatic };
|
|
@@ -9,13 +9,13 @@ import max from 'date-fns/max';
|
|
|
9
9
|
import 'date-fns/min';
|
|
10
10
|
import 'date-fns/isEqual';
|
|
11
11
|
import { useStaticViewMonthes, useSelectionProps } from '../hooks.js';
|
|
12
|
-
import { s as styles } from '../index.module-
|
|
12
|
+
import { s as styles } from '../index.module-93e8a01c.js';
|
|
13
13
|
import endOfMonth from 'date-fns/endOfMonth';
|
|
14
14
|
import { usePeriodWithReset, Calendar } from '@alfalab/core-components-calendar/dist/modern';
|
|
15
15
|
import { isDayButton } from '../utils.js';
|
|
16
16
|
|
|
17
17
|
/* eslint-disable complexity */
|
|
18
|
-
const CalendarRangeStatic = ({ className, defaultMonth = startOfMonth(new Date()).getTime(), minDate, maxDate, valueFrom = '', valueTo = '', onDateFromChange = () => null, onDateToChange = () => null, onChange = () => null, inputFromProps = {}, inputToProps = {}, offDays, events, dataTestId, }) => {
|
|
18
|
+
const CalendarRangeStatic = ({ className, defaultMonth = startOfMonth(new Date()).getTime(), defaultMonthPosition = 'left', minDate, maxDate, valueFrom = '', valueTo = '', onDateFromChange = () => null, onDateToChange = () => null, onChange = () => null, inputFromProps = {}, inputToProps = {}, offDays, events, dataTestId, }) => {
|
|
19
19
|
const [inputFromValue, setInputFromValue] = useState(valueFrom);
|
|
20
20
|
const [inputToValue, setInputToValue] = useState(valueTo);
|
|
21
21
|
let dateFrom = isValidInputValue(inputFromValue, minDate, maxDate, offDays)
|
|
@@ -43,6 +43,7 @@ const CalendarRangeStatic = ({ className, defaultMonth = startOfMonth(new Date()
|
|
|
43
43
|
selectedFrom: period.selectedFrom,
|
|
44
44
|
selectedTo: period.selectedTo,
|
|
45
45
|
defaultMonth,
|
|
46
|
+
defaultMonthPosition,
|
|
46
47
|
});
|
|
47
48
|
const handleValidInputFrom = useCallback(() => {
|
|
48
49
|
setInputFromInvalid(inputFromValue !== '' && !validateInputFromValue(inputFromValue));
|
package/dist/utils.js
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var isDayButton = function (node) {
|
|
6
|
-
return node && node.tagName === 'BUTTON' && node.dataset.date;
|
|
7
|
-
};
|
|
5
|
+
var isDayButton = function (node) { return node && node.tagName === 'BUTTON' && node.dataset.date; };
|
|
8
6
|
|
|
9
7
|
exports.isDayButton = isDayButton;
|
package/dist/views/index.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: dx64y */
|
|
2
2
|
:root {
|
|
3
3
|
--color-light-graphic-primary: #0b1f35;
|
|
4
4
|
}
|
|
@@ -34,19 +34,19 @@
|
|
|
34
34
|
|
|
35
35
|
/* marker */
|
|
36
36
|
}
|
|
37
|
-
.calendar-
|
|
37
|
+
.calendar-range__component_1qqfo {
|
|
38
38
|
display: flex
|
|
39
39
|
}
|
|
40
|
-
.calendar-
|
|
40
|
+
.calendar-range__component_1qqfo button[aria-selected='true'] {
|
|
41
41
|
cursor: pointer;
|
|
42
42
|
}
|
|
43
|
-
.calendar-
|
|
43
|
+
.calendar-range__component_1qqfo *[class*='errorIcon_'] {
|
|
44
44
|
display: none;
|
|
45
45
|
}
|
|
46
|
-
.calendar-
|
|
46
|
+
.calendar-range__component_1qqfo *[class*='calendarIcon_'] {
|
|
47
47
|
margin-right: 0;
|
|
48
48
|
}
|
|
49
|
-
.calendar-
|
|
49
|
+
.calendar-range__divider_1qqfo {
|
|
50
50
|
height: 48px;
|
|
51
51
|
display: flex;
|
|
52
52
|
align-items: center;
|
|
@@ -54,13 +54,13 @@
|
|
|
54
54
|
width: 16px;
|
|
55
55
|
margin: 0 var(--gap-xs)
|
|
56
56
|
}
|
|
57
|
-
.calendar-
|
|
57
|
+
.calendar-range__divider_1qqfo:after {
|
|
58
58
|
content: '';
|
|
59
59
|
display: block;
|
|
60
60
|
width: 100%;
|
|
61
61
|
height: 1px;
|
|
62
62
|
background-color: var(--color-light-graphic-primary);
|
|
63
63
|
}
|
|
64
|
-
.calendar-
|
|
64
|
+
.calendar-range__static_1qqfo .calendar-range__calendar_1qqfo {
|
|
65
65
|
width: var(--calendar-inner-width);
|
|
66
66
|
}
|
package/dist/views/popover.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index_module = require('../index.module-
|
|
5
|
+
var index_module = require('../index.module-6a4b60a6.js');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
var startOfMonth = require('date-fns/startOfMonth');
|
package/dist/views/static.d.ts
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import { CalendarRangeProps } from "../Component";
|
|
3
|
-
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'
|
|
3
|
+
type CalendarRangeStaticProps = Omit<CalendarRangeProps, 'calendarPosition'> & {
|
|
4
|
+
/**
|
|
5
|
+
* Отображать начальный месяц слева или справа (влияет только на начальный рендер)
|
|
6
|
+
*/
|
|
7
|
+
defaultMonthPosition?: 'left' | 'right';
|
|
8
|
+
};
|
|
4
9
|
declare const CalendarRangeStatic: FC<CalendarRangeStaticProps>;
|
|
5
10
|
export { CalendarRangeStaticProps, CalendarRangeStatic };
|
package/dist/views/static.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var index_module = require('../index.module-
|
|
5
|
+
var index_module = require('../index.module-6a4b60a6.js');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var cn = require('classnames');
|
|
8
8
|
var startOfMonth = require('date-fns/startOfMonth');
|
|
@@ -29,9 +29,9 @@ var max__default = /*#__PURE__*/_interopDefaultLegacy(max);
|
|
|
29
29
|
var endOfMonth__default = /*#__PURE__*/_interopDefaultLegacy(endOfMonth);
|
|
30
30
|
|
|
31
31
|
var CalendarRangeStatic = function (_a) {
|
|
32
|
-
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth__default['default'](new Date()).getTime() : _b, minDate = _a.minDate, maxDate = _a.maxDate,
|
|
33
|
-
var
|
|
34
|
-
var
|
|
32
|
+
var className = _a.className, _b = _a.defaultMonth, defaultMonth = _b === void 0 ? startOfMonth__default['default'](new Date()).getTime() : _b, _c = _a.defaultMonthPosition, defaultMonthPosition = _c === void 0 ? 'left' : _c, minDate = _a.minDate, maxDate = _a.maxDate, _d = _a.valueFrom, valueFrom = _d === void 0 ? '' : _d, _e = _a.valueTo, valueTo = _e === void 0 ? '' : _e, _f = _a.onDateFromChange, onDateFromChange = _f === void 0 ? function () { return null; } : _f, _g = _a.onDateToChange, onDateToChange = _g === void 0 ? function () { return null; } : _g, _h = _a.onChange, onChange = _h === void 0 ? function () { return null; } : _h, _j = _a.inputFromProps, inputFromProps = _j === void 0 ? {} : _j, _k = _a.inputToProps, inputToProps = _k === void 0 ? {} : _k, offDays = _a.offDays, events = _a.events, dataTestId = _a.dataTestId;
|
|
33
|
+
var _l = React.useState(valueFrom), inputFromValue = _l[0], setInputFromValue = _l[1];
|
|
34
|
+
var _m = React.useState(valueTo), inputToValue = _m[0], setInputToValue = _m[1];
|
|
35
35
|
var dateFrom = coreComponentsCalendarInput.isValidInputValue(inputFromValue, minDate, maxDate, offDays)
|
|
36
36
|
? coreComponentsCalendarInput.parseDateString(inputFromValue).getTime()
|
|
37
37
|
: null;
|
|
@@ -44,20 +44,21 @@ var CalendarRangeStatic = function (_a) {
|
|
|
44
44
|
var bothInvalid = coreComponentsDateInput.isCompleteDateInput(inputFromValue) &&
|
|
45
45
|
coreComponentsDateInput.isCompleteDateInput(inputToValue) &&
|
|
46
46
|
coreComponentsCalendarInput.parseDateString(inputFromValue).getTime() > coreComponentsCalendarInput.parseDateString(inputToValue).getTime();
|
|
47
|
-
var
|
|
47
|
+
var _o = React.useState(undefined), highlightedDate = _o[0], setHighlightedDate = _o[1];
|
|
48
48
|
var period = coreComponentsCalendar.usePeriodWithReset({
|
|
49
49
|
initialSelectedFrom: dateFrom ? coreComponentsCalendarInput.parseDateString(inputFromValue).getTime() : undefined,
|
|
50
50
|
initialSelectedTo: dateTo ? coreComponentsCalendarInput.parseDateString(inputToValue).getTime() : undefined,
|
|
51
51
|
});
|
|
52
52
|
var validateInputFromValue = React.useCallback(function (value) { return coreComponentsCalendarInput.isValidInputValue(value, minDate, dateFrom || maxDate, offDays); }, [dateFrom, maxDate, minDate, offDays]);
|
|
53
53
|
var validateInputToValue = React.useCallback(function (value) { return coreComponentsCalendarInput.isValidInputValue(value, dateFrom || minDate, maxDate, offDays); }, [dateFrom, minDate, maxDate, offDays]);
|
|
54
|
-
var
|
|
55
|
-
var
|
|
56
|
-
var
|
|
54
|
+
var _p = React.useState(validateInputFromValue(inputFromValue) === false), inputFromInvalid = _p[0], setInputFromInvalid = _p[1];
|
|
55
|
+
var _q = React.useState(validateInputToValue(inputToValue) === false), inputToInvalid = _q[0], setInputToInvalid = _q[1];
|
|
56
|
+
var _r = hooks.useStaticViewMonthes({
|
|
57
57
|
selectedFrom: period.selectedFrom,
|
|
58
58
|
selectedTo: period.selectedTo,
|
|
59
59
|
defaultMonth: defaultMonth,
|
|
60
|
-
|
|
60
|
+
defaultMonthPosition: defaultMonthPosition,
|
|
61
|
+
}), monthFrom = _r.monthFrom, monthTo = _r.monthTo, handleMonthFromChange = _r.handleMonthFromChange, handleMonthToChange = _r.handleMonthToChange;
|
|
61
62
|
var handleValidInputFrom = React.useCallback(function () {
|
|
62
63
|
setInputFromInvalid(inputFromValue !== '' && !validateInputFromValue(inputFromValue));
|
|
63
64
|
}, [inputFromValue, validateInputFromValue]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alfalab/core-components-calendar-range",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.4.0",
|
|
4
4
|
"description": "Calendar range component",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "MIT",
|
|
@@ -19,11 +19,11 @@
|
|
|
19
19
|
"react-dom": "^16.9.0 || ^17.0.1"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@alfalab/core-components-calendar": "^5.3.
|
|
23
|
-
"@alfalab/core-components-calendar-input": "^6.
|
|
24
|
-
"@alfalab/core-components-date-input": "^2.
|
|
22
|
+
"@alfalab/core-components-calendar": "^5.3.2",
|
|
23
|
+
"@alfalab/core-components-calendar-input": "^6.3.0",
|
|
24
|
+
"@alfalab/core-components-date-input": "^2.2.0",
|
|
25
25
|
"classnames": "2.2.6",
|
|
26
26
|
"date-fns": "2.16.1"
|
|
27
27
|
},
|
|
28
|
-
"gitHead": "
|
|
28
|
+
"gitHead": "d86d1207351d2e8dceb0519cbb0b64c06aaa6884"
|
|
29
29
|
}
|