Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/PickerPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -179,8 +179,8 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
isSecondStepValid,
`\`secondStep\` ${secondStep} is invalid. It should be a factor of 60.`,
);
warning(!!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`);
warning(!!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`);
warning(!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`);
warning(!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`);
}

// ============================ State =============================
Expand Down
4 changes: 2 additions & 2 deletions src/RangePicker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -778,8 +778,8 @@ function InnerRangePicker<DateType>(props: RangePickerProps<DateType>) {
'`disabled` should not set with empty `value`. You should set `allowEmpty` or `value` instead.',
);
}
warning(!!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`);
warning(!!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`);
warning(!dateRender, `'dateRender' is deprecated. Please use 'cellRender' instead.`);
warning(!monthCellRender, `'monthCellRender' is deprecated. Please use 'cellRender' instead.`);
}

// ============================ Private ============================
Expand Down
35 changes: 32 additions & 3 deletions tests/panel.spec.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import type { PanelMode } from '../src/interface';
import { fireEvent, render } from '@testing-library/react';
import type { Moment } from 'moment';
import moment from 'moment';
import { spyElementPrototypes } from 'rc-util/lib/test/domHook';
import { resetWarned } from 'rc-util/lib/warning';
import React from 'react';
import type { PanelMode } from '../src/interface';
import enUS from '../src/locale/en_US';
import zhCN from '../src/locale/zh_CN';
import {
Expand Down Expand Up @@ -475,7 +475,6 @@ describe('Picker.Panel', () => {

errSpy.mockRestore();
});

it('should render correctly in rtl', () => {
const { container } = render(<MomentPickerPanel direction="rtl" />);
expect(container).toMatchSnapshot();
Expand Down Expand Up @@ -568,7 +567,15 @@ describe('Picker.Panel', () => {
});
});

const supportCellRenderPicker: PanelMode[] = ['year', 'month', 'date', 'quarter', 'week', 'time', 'decade'];
const supportCellRenderPicker: PanelMode[] = [
'year',
'month',
'date',
'quarter',
'week',
'time',
'decade',
];

const getCurText = (picker: PanelMode, current: Moment | number) => {
switch (picker) {
Expand Down Expand Up @@ -618,6 +625,28 @@ describe('Picker.Panel', () => {
expect(container.querySelector(`.rc-picker-${picker}-panel`)).toBeTruthy();
expect(container).toMatchSnapshot();
});

it('warning with dateRender and monthCellRender', () => {
resetWarned();
const errSpy = jest.spyOn(console, 'error').mockImplementation(() => {});

render(
<MomentPickerPanel
picker={picker as any}
dateRender={(current) => (
<div className="customWrapper">{getCurText(picker, current)}</div>
)}
monthCellRender={(current) => (
<div className="customWrapper">{getCurText(picker, current)}</div>
)}
/>,
);
expect(errSpy).toHaveBeenCalledWith("Warning: 'dateRender' is deprecated. Please use 'cellRender' instead.");
expect(errSpy).toHaveBeenCalledWith("Warning: 'monthCellRender' is deprecated. Please use 'cellRender' instead.");

errSpy.mockRestore();
});

it(`append cell with cellRender in ${picker}`, () => {
const App = () => (
<MomentPickerPanel
Expand Down