rsuite 5.30.0 → 5.31.1
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 +18 -0
- package/Calendar/styles/index.less +3 -2
- package/Toggle/styles/mixin.less +14 -0
- package/cjs/Calendar/Calendar.d.ts +5 -3
- package/cjs/Calendar/Calendar.js +19 -9
- package/cjs/Calendar/CalendarContainer.d.ts +0 -2
- package/cjs/Calendar/CalendarContainer.js +5 -11
- package/cjs/Calendar/CalendarHeader.js +4 -0
- package/cjs/DatePicker/DatePicker.js +0 -4
- package/cjs/DateRangePicker/Calendar.js +0 -4
- package/cjs/Table/Table.d.ts +1 -1
- package/cjs/locales/ru_RU.js +6 -6
- package/dist/rsuite-no-reset-rtl.css +31 -3
- package/dist/rsuite-no-reset-rtl.min.css +1 -1
- package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
- package/dist/rsuite-no-reset.css +31 -3
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +31 -3
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +31 -3
- package/dist/rsuite.js +8 -8
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/Calendar/Calendar.d.ts +5 -3
- package/esm/Calendar/Calendar.js +20 -11
- package/esm/Calendar/CalendarContainer.d.ts +0 -2
- package/esm/Calendar/CalendarContainer.js +7 -13
- package/esm/Calendar/CalendarHeader.js +4 -0
- package/esm/DatePicker/DatePicker.js +0 -4
- package/esm/DateRangePicker/Calendar.js +1 -5
- package/esm/Table/Table.d.ts +1 -1
- package/esm/locales/ru_RU.js +6 -6
- package/package.json +2 -2
- package/toaster/styles/index.less +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
2
|
+
import CalendarContainer from './CalendarContainer';
|
|
3
3
|
import { CalendarLocale } from '../locales';
|
|
4
4
|
import { RsRefForwardingComponent, WithAsProps } from '../@types/common';
|
|
5
5
|
export interface CalendarProps extends WithAsProps {
|
|
@@ -17,10 +17,12 @@ export interface CalendarProps extends WithAsProps {
|
|
|
17
17
|
locale?: CalendarLocale;
|
|
18
18
|
/** Callback fired before the value changed */
|
|
19
19
|
onChange?: (date: Date) => void;
|
|
20
|
+
/** Callback fired before the month changed */
|
|
21
|
+
onMonthChange?: (date: Date) => void;
|
|
20
22
|
/** Callback fired before the date selected */
|
|
21
23
|
onSelect?: (date: Date) => void;
|
|
22
24
|
/** Custom render calendar cells */
|
|
23
25
|
renderCell?: (date: Date) => React.ReactNode;
|
|
24
26
|
}
|
|
25
|
-
declare const
|
|
26
|
-
export default
|
|
27
|
+
declare const Calendar: RsRefForwardingComponent<typeof CalendarContainer, CalendarProps>;
|
|
28
|
+
export default Calendar;
|
package/esm/Calendar/Calendar.js
CHANGED
|
@@ -2,14 +2,15 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
import React, { useCallback } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
|
-
import
|
|
5
|
+
import isSameMonth from 'date-fns/isSameMonth';
|
|
6
|
+
import CalendarContainer from './CalendarContainer';
|
|
6
7
|
import Button from '../Button';
|
|
7
8
|
import { FormattedDate } from '../CustomProvider';
|
|
8
9
|
import { useClassNames, useCustom } from '../utils';
|
|
9
10
|
import useCalendarDate from './useCalendarDate';
|
|
10
|
-
var
|
|
11
|
+
var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
11
12
|
var _props$as = props.as,
|
|
12
|
-
Component = _props$as === void 0 ?
|
|
13
|
+
Component = _props$as === void 0 ? CalendarContainer : _props$as,
|
|
13
14
|
bordered = props.bordered,
|
|
14
15
|
className = props.className,
|
|
15
16
|
_props$classPrefix = props.classPrefix,
|
|
@@ -20,10 +21,11 @@ var CalendarPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
20
21
|
isoWeek = props.isoWeek,
|
|
21
22
|
overrideLocale = props.locale,
|
|
22
23
|
onChange = props.onChange,
|
|
24
|
+
onMonthChange = props.onMonthChange,
|
|
23
25
|
onSelect = props.onSelect,
|
|
24
26
|
renderCell = props.renderCell,
|
|
25
27
|
value = props.value,
|
|
26
|
-
rest = _objectWithoutPropertiesLoose(props, ["as", "bordered", "className", "classPrefix", "compact", "defaultValue", "isoWeek", "locale", "onChange", "onSelect", "renderCell", "value"]);
|
|
28
|
+
rest = _objectWithoutPropertiesLoose(props, ["as", "bordered", "className", "classPrefix", "compact", "defaultValue", "isoWeek", "locale", "onChange", "onMonthChange", "onSelect", "renderCell", "value"]);
|
|
27
29
|
|
|
28
30
|
var _useCalendarDate = useCalendarDate(value, defaultValue),
|
|
29
31
|
calendarDate = _useCalendarDate.calendarDate,
|
|
@@ -42,7 +44,14 @@ var CalendarPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
42
44
|
var handleSelect = useCallback(function (nextValue) {
|
|
43
45
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue);
|
|
44
46
|
handleChange(nextValue);
|
|
45
|
-
}, [handleChange, onSelect]);
|
|
47
|
+
}, [handleChange, onSelect]); // Trigger onMonthChange when the month changes
|
|
48
|
+
|
|
49
|
+
var handleMonthChange = useCallback(function (nextValue) {
|
|
50
|
+
if (!isSameMonth(nextValue, calendarDate)) {
|
|
51
|
+
handleChange(nextValue);
|
|
52
|
+
onMonthChange === null || onMonthChange === void 0 ? void 0 : onMonthChange(nextValue);
|
|
53
|
+
}
|
|
54
|
+
}, [calendarDate, handleChange, onMonthChange]);
|
|
46
55
|
|
|
47
56
|
var _useClassNames = useClassNames(classPrefix),
|
|
48
57
|
prefix = _useClassNames.prefix,
|
|
@@ -80,14 +89,14 @@ var CalendarPanel = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
80
89
|
},
|
|
81
90
|
renderToolbar: renderToolbar,
|
|
82
91
|
renderCell: customRenderCell,
|
|
83
|
-
onMoveForward:
|
|
84
|
-
onMoveBackward:
|
|
85
|
-
onChangeMonth:
|
|
92
|
+
onMoveForward: handleMonthChange,
|
|
93
|
+
onMoveBackward: handleMonthChange,
|
|
94
|
+
onChangeMonth: handleMonthChange,
|
|
86
95
|
onSelect: handleSelect
|
|
87
96
|
}));
|
|
88
97
|
});
|
|
89
|
-
|
|
90
|
-
|
|
98
|
+
Calendar.displayName = 'Calendar';
|
|
99
|
+
Calendar.propTypes = {
|
|
91
100
|
value: PropTypes.instanceOf(Date),
|
|
92
101
|
defaultValue: PropTypes.instanceOf(Date),
|
|
93
102
|
isoWeek: PropTypes.bool,
|
|
@@ -100,4 +109,4 @@ CalendarPanel.propTypes = {
|
|
|
100
109
|
onSelect: PropTypes.func,
|
|
101
110
|
renderCell: PropTypes.func
|
|
102
111
|
};
|
|
103
|
-
export default
|
|
112
|
+
export default Calendar;
|
|
@@ -30,8 +30,6 @@ export interface CalendarProps extends WithAsProps, Omit<HTMLAttributes<HTMLDivE
|
|
|
30
30
|
hideSeconds?: (second: number, date: Date) => boolean;
|
|
31
31
|
/** The value that mouse hover on in range selection */
|
|
32
32
|
hoverRangeValue?: [Date, Date];
|
|
33
|
-
/** Is it in the same month as today */
|
|
34
|
-
inSameMonth?: (date: Date) => boolean;
|
|
35
33
|
/** ISO 8601 standard, each calendar week begins on Monday and Sunday on the seventh day */
|
|
36
34
|
isoWeek?: boolean;
|
|
37
35
|
/** Limit showing how many years in the future */
|
|
@@ -7,8 +7,8 @@ import MonthDropdown from './MonthDropdown';
|
|
|
7
7
|
import TimeDropdown from './TimeDropdown';
|
|
8
8
|
import CalendarBody from './CalendarBody';
|
|
9
9
|
import CalendarHeader from './CalendarHeader';
|
|
10
|
-
import { useClassNames
|
|
11
|
-
import { disabledTime, addMonths, shouldRenderDate, shouldRenderTime, shouldRenderMonth,
|
|
10
|
+
import { useClassNames } from '../utils';
|
|
11
|
+
import { disabledTime, addMonths, shouldRenderDate, shouldRenderTime, shouldRenderMonth, isSameMonth, calendarOnlyProps, omitHideDisabledProps } from '../utils/dateUtils';
|
|
12
12
|
import { CalendarProvider } from './CalendarContext';
|
|
13
13
|
import useCalendarState, { CalendarState } from './useCalendarState';
|
|
14
14
|
import AngleUpIcon from '@rsuite/icons/legacy/AngleUp';
|
|
@@ -25,7 +25,6 @@ var CalendarContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
25
25
|
disabledForward = props.disabledForward,
|
|
26
26
|
format = props.format,
|
|
27
27
|
hoverRangeValue = props.hoverRangeValue,
|
|
28
|
-
inSameMonth = props.inSameMonth,
|
|
29
28
|
_props$isoWeek = props.isoWeek,
|
|
30
29
|
isoWeek = _props$isoWeek === void 0 ? false : _props$isoWeek,
|
|
31
30
|
limitEndYear = props.limitEndYear,
|
|
@@ -46,7 +45,7 @@ var CalendarContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
46
45
|
showMeridian = props.showMeridian,
|
|
47
46
|
showWeekNumbers = props.showWeekNumbers,
|
|
48
47
|
inline = props.inline,
|
|
49
|
-
rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "dateRange", "disabledBackward", "defaultState", "disabledDate", "disabledForward", "format", "hoverRangeValue", "
|
|
48
|
+
rest = _objectWithoutPropertiesLoose(props, ["as", "className", "classPrefix", "dateRange", "disabledBackward", "defaultState", "disabledDate", "disabledForward", "format", "hoverRangeValue", "isoWeek", "limitEndYear", "locale", "onChangeMonth", "onChangeTime", "onMouseMove", "onMoveBackward", "onMoveForward", "onSelect", "onToggleMeridian", "onToggleMonthDropdown", "onToggleTimeDropdown", "calendarDate", "renderCell", "renderTitle", "renderToolbar", "showMeridian", "showWeekNumbers", "inline"]);
|
|
50
49
|
|
|
51
50
|
var _useClassNames = useClassNames(classPrefix),
|
|
52
51
|
withClassPrefix = _useClassNames.withClassPrefix,
|
|
@@ -106,12 +105,8 @@ var CalendarContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
106
105
|
var showTime = calendarState === CalendarState.TIME || onlyShowTime;
|
|
107
106
|
var showMonth = calendarState === CalendarState.MONTH || onlyShowMonth;
|
|
108
107
|
var inSameThisMonthDate = useCallback(function (date) {
|
|
109
|
-
return
|
|
110
|
-
|
|
111
|
-
}, function (d) {
|
|
112
|
-
return isSameMonth(d, date);
|
|
113
|
-
})(date);
|
|
114
|
-
}, []);
|
|
108
|
+
return isSameMonth(calendarDate, date);
|
|
109
|
+
}, [calendarDate]);
|
|
115
110
|
var calendarClasses = merge(className, withClassPrefix({
|
|
116
111
|
'time-view': showTime,
|
|
117
112
|
'month-view': showMonth,
|
|
@@ -129,7 +124,7 @@ var CalendarContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
129
124
|
disabledDate: isDisabledDate,
|
|
130
125
|
format: format,
|
|
131
126
|
hoverRangeValue: hoverRangeValue,
|
|
132
|
-
inSameMonth:
|
|
127
|
+
inSameMonth: inSameThisMonthDate,
|
|
133
128
|
isoWeek: isoWeek,
|
|
134
129
|
locale: locale,
|
|
135
130
|
onChangeMonth: handleChangeMonth,
|
|
@@ -140,7 +135,7 @@ var CalendarContainer = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
140
135
|
showWeekNumbers: showWeekNumbers,
|
|
141
136
|
inline: inline
|
|
142
137
|
};
|
|
143
|
-
}, [calendarDate, dateRange, format, handleChangeMonth, hoverRangeValue,
|
|
138
|
+
}, [calendarDate, dateRange, format, handleChangeMonth, hoverRangeValue, inSameThisMonthDate, inline, isDisabledDate, isoWeek, locale, onChangeTime, onMouseMove, onSelect, renderCell, showWeekNumbers]);
|
|
144
139
|
return /*#__PURE__*/React.createElement(CalendarProvider, {
|
|
145
140
|
value: contextValue
|
|
146
141
|
}, /*#__PURE__*/React.createElement(Component, _extends({}, omitHideDisabledProps(rest), {
|
|
@@ -186,7 +181,6 @@ CalendarContainer.propTypes = {
|
|
|
186
181
|
hideHours: PropTypes.func,
|
|
187
182
|
hideMinutes: PropTypes.func,
|
|
188
183
|
hideSeconds: PropTypes.func,
|
|
189
|
-
inSameMonth: PropTypes.func,
|
|
190
184
|
isoWeek: PropTypes.bool,
|
|
191
185
|
limitEndYear: PropTypes.number,
|
|
192
186
|
locale: PropTypes.object,
|
|
@@ -103,13 +103,17 @@ var CalendarHeader = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
103
103
|
var monthToolbar = /*#__PURE__*/React.createElement("div", {
|
|
104
104
|
className: prefix('month-toolbar')
|
|
105
105
|
}, /*#__PURE__*/React.createElement(IconButton, _extends({}, btnProps, {
|
|
106
|
+
// TODO: aria-label should be translated by i18n
|
|
107
|
+
"aria-label": "Previous month",
|
|
106
108
|
className: backwardClass,
|
|
107
109
|
onClick: disabledBackward ? undefined : onMoveBackward,
|
|
108
110
|
icon: /*#__PURE__*/React.createElement(AngleLeftIcon, null)
|
|
109
111
|
})), /*#__PURE__*/React.createElement(Button, _extends({}, btnProps, {
|
|
112
|
+
"aria-label": "Select month",
|
|
110
113
|
className: dateTitleClasses,
|
|
111
114
|
onClick: onToggleMonthDropdown
|
|
112
115
|
}), renderTitle()), /*#__PURE__*/React.createElement(IconButton, _extends({}, btnProps, {
|
|
116
|
+
"aria-label": "Next month",
|
|
113
117
|
className: forwardClass,
|
|
114
118
|
onClick: disabledForward ? undefined : onMoveForward,
|
|
115
119
|
icon: /*#__PURE__*/React.createElement(AngleRightIcon, null)
|
|
@@ -343,9 +343,6 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
343
343
|
};
|
|
344
344
|
});
|
|
345
345
|
}, [props]);
|
|
346
|
-
var inSameMonth = useCallback(function (date) {
|
|
347
|
-
return DateUtils.isSameMonth(date, calendarDate);
|
|
348
|
-
}, [calendarDate]);
|
|
349
346
|
var calendar = /*#__PURE__*/React.createElement(CalendarContainer, _extends({}, calendarProps, {
|
|
350
347
|
locale: locale,
|
|
351
348
|
showWeekNumbers: showWeekNumbers,
|
|
@@ -357,7 +354,6 @@ var DatePicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
357
354
|
limitEndYear: limitEndYear,
|
|
358
355
|
format: formatStr,
|
|
359
356
|
isoWeek: isoWeek,
|
|
360
|
-
inSameMonth: inSameMonth,
|
|
361
357
|
calendarDate: calendarDate,
|
|
362
358
|
onMoveForward: handleMoveForward,
|
|
363
359
|
onMoveBackward: handleMoveBackward,
|
|
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import React, { useCallback } from 'react';
|
|
5
|
-
import { addMonths
|
|
5
|
+
import { addMonths } from '../utils/dateUtils';
|
|
6
6
|
import CalendarCore from '../Calendar/CalendarContainer';
|
|
7
7
|
import { DATERANGE_DISABLED_TARGET } from '../utils';
|
|
8
8
|
var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
@@ -42,9 +42,6 @@ var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
42
42
|
var handleToggleMeridian = useCallback(function (event) {
|
|
43
43
|
onToggleMeridian(index, event);
|
|
44
44
|
}, [index, onToggleMeridian]);
|
|
45
|
-
var inSameMonth = useCallback(function (date) {
|
|
46
|
-
return isSameMonth(date, calendarDate[index]);
|
|
47
|
-
}, [calendarDate, index]);
|
|
48
45
|
var getCalendarDate = useCallback(function () {
|
|
49
46
|
return calendarDate[index];
|
|
50
47
|
}, [calendarDate, index]);
|
|
@@ -61,7 +58,6 @@ var Calendar = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
61
58
|
format: format,
|
|
62
59
|
dateRange: value,
|
|
63
60
|
disabledDate: disabledMonth,
|
|
64
|
-
inSameMonth: inSameMonth,
|
|
65
61
|
index: index,
|
|
66
62
|
limitEndYear: limitEndYear,
|
|
67
63
|
onChangeMonth: handleChangeMonth,
|
package/esm/Table/Table.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export interface CellProps<T = any> extends Omit<TableCellProps, 'rowData' | 'da
|
|
|
6
6
|
/** Row Data */
|
|
7
7
|
rowData?: T;
|
|
8
8
|
}
|
|
9
|
-
declare const _default: (<Row extends RowDataType
|
|
9
|
+
declare const _default: (<Row extends RowDataType<never>, Key>(props: TableProps<Row, Key> & React.RefAttributes<TableInstance<Row, Key>>) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) & {
|
|
10
10
|
Cell: React.ForwardRefExoticComponent<import("rsuite-table/lib/Cell").InnerCellProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
Column: typeof Column;
|
|
12
12
|
HeaderCell: React.ForwardRefExoticComponent<import("rsuite-table").HeaderCellProps & React.RefAttributes<HTMLDivElement>>;
|
package/esm/locales/ru_RU.js
CHANGED
|
@@ -15,7 +15,7 @@ var Calendar = {
|
|
|
15
15
|
minutes: 'Минут',
|
|
16
16
|
seconds: 'Секунд',
|
|
17
17
|
formattedMonthPattern: 'MMM, yyyy',
|
|
18
|
-
formattedDayPattern: 'MMM
|
|
18
|
+
formattedDayPattern: 'dd MMM yyyy',
|
|
19
19
|
dateLocale: ru
|
|
20
20
|
};
|
|
21
21
|
export default {
|
|
@@ -25,8 +25,8 @@ export default {
|
|
|
25
25
|
},
|
|
26
26
|
Plaintext: {
|
|
27
27
|
unfilled: 'незаполненной',
|
|
28
|
-
notSelected: '
|
|
29
|
-
notUploaded: '
|
|
28
|
+
notSelected: 'Не выбрано',
|
|
29
|
+
notUploaded: 'Не загружено'
|
|
30
30
|
},
|
|
31
31
|
Pagination: {
|
|
32
32
|
more: 'Больше',
|
|
@@ -36,7 +36,7 @@ export default {
|
|
|
36
36
|
last: 'Последняя',
|
|
37
37
|
limit: '{0} / страниц',
|
|
38
38
|
total: 'всего: {0}',
|
|
39
|
-
skip: '
|
|
39
|
+
skip: 'Перейти к {0}'
|
|
40
40
|
},
|
|
41
41
|
Calendar: Calendar,
|
|
42
42
|
DatePicker: _extends({}, Calendar),
|
|
@@ -55,9 +55,9 @@ export default {
|
|
|
55
55
|
},
|
|
56
56
|
Uploader: {
|
|
57
57
|
inited: 'Начало',
|
|
58
|
-
progress: '
|
|
58
|
+
progress: 'Загрузка',
|
|
59
59
|
error: 'Ошибка',
|
|
60
|
-
complete: '
|
|
60
|
+
complete: 'Завершено',
|
|
61
61
|
emptyFile: 'Пусто',
|
|
62
62
|
upload: 'Загрузить'
|
|
63
63
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rsuite",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.31.1",
|
|
4
4
|
"description": "A suite of react components",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"module": "esm/index.js",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"lodash": "^4.17.11",
|
|
38
38
|
"prop-types": "^15.8.1",
|
|
39
39
|
"react-window": "^1.8.8",
|
|
40
|
-
"rsuite-table": "^5.10.
|
|
40
|
+
"rsuite-table": "^5.10.3",
|
|
41
41
|
"schema-typed": "^2.1.2"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|