Skip to content

Commit e5df38a

Browse files
authored
fix: Year Panel super prev disabled logic (#893)
* fix: year lock * test: add test case
1 parent b2ca430 commit e5df38a

File tree

4 files changed

+17
-4
lines changed

4 files changed

+17
-4
lines changed

docs/examples/debug.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,13 @@ export default () => {
8383
// }}
8484
/>
8585

86-
<RangePicker {...sharedLocale} style={{ width: 400 }} allowEmpty />
86+
<RangePicker
87+
{...sharedLocale}
88+
style={{ width: 400 }}
89+
minDate={dayjs('2024')}
90+
open
91+
mode={['year', 'year']}
92+
/>
8793
{/* <SinglePicker
8894
{...dateFnsSharedLocale}
8995
style={{ width: 400 }}

src/PickerPanel/DecadePanel/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export default function DecadePanel<DateType extends object = any>(
1717
const [info] = useInfo(props, 'decade');
1818

1919
const getStartYear = (date: DateType) => {
20-
const startYear = Math.floor(generateConfig.getYear(pickerValue) / 100) * 100;
20+
const startYear = Math.floor(generateConfig.getYear(date) / 100) * 100;
2121
return generateConfig.setYear(date, startYear);
2222
};
2323
const getEndYear = (date: DateType) => {

src/PickerPanel/YearPanel/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export default function YearPanel<DateType extends object = any>(
2323
// ========================== Base ==========================
2424
const [info] = useInfo(props, 'year');
2525
const getStartYear = (date: DateType) => {
26-
const startYear = Math.floor(generateConfig.getYear(pickerValue) / 10) * 10;
26+
const startYear = Math.floor(generateConfig.getYear(date) / 10) * 10;
2727
return generateConfig.setYear(date, startYear);
2828
};
2929
const getEndYear = (date: DateType) => {

tests/new-range.spec.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1098,7 +1098,7 @@ describe('NewPicker.Range', () => {
10981098
it('pass tabIndex', () => {
10991099
const { container } = render(
11001100
<div>
1101-
<DayRangePicker tabIndex={-1}/>
1101+
<DayRangePicker tabIndex={-1} />
11021102
</div>,
11031103
);
11041104

@@ -1255,6 +1255,13 @@ describe('NewPicker.Range', () => {
12551255
});
12561256
expect(onChange).toHaveBeenCalled();
12571257
});
1258+
1259+
it('should disabled super prev correctly', () => {
1260+
render(<DayRangePicker minDate={dayjs()} picker="year" open />);
1261+
1262+
// Expect super prev disabled
1263+
expect(document.querySelector('.rc-picker-header-super-prev-btn-disabled')).toBeDisabled();
1264+
});
12581265
});
12591266

12601267
it('double click now button', () => {

0 commit comments

Comments
 (0)