mirror of
https://github.com/ant-design/ant-design.git
synced 2024-11-30 22:39:34 +08:00
38474628fd
* fix: prepend use-client directive for with Next.js App Router * Update components/affix/index.tsx Co-authored-by: MadCcc <1075746765@qq.com> Signed-off-by: lijianan <574980606@qq.com> * Update components/badge/index.tsx Co-authored-by: MadCcc <1075746765@qq.com> Signed-off-by: lijianan <574980606@qq.com> * Update components/divider/index.tsx Co-authored-by: MadCcc <1075746765@qq.com> Signed-off-by: lijianan <574980606@qq.com> * Update components/cascader/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/list/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/mentions/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/mentions/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/mentions/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/mentions/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/qrcode/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/spin/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/select/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/spin/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/spin/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/steps/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/time-picker/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/transfer/index.tsx Signed-off-by: lijianan <574980606@qq.com> * Update components/tree-select/index.tsx Signed-off-by: lijianan <574980606@qq.com> --------- Signed-off-by: lijianan <574980606@qq.com> Co-authored-by: MadCcc <1075746765@qq.com>
48 lines
1.7 KiB
TypeScript
Executable File
48 lines
1.7 KiB
TypeScript
Executable File
'use client';
|
|
|
|
import type { Dayjs } from 'dayjs';
|
|
import dayjsGenerateConfig from 'rc-picker/lib/generate/dayjs';
|
|
import genPurePanel from '../_util/PurePanel';
|
|
import type {
|
|
RangePickerProps as BaseRangePickerProps,
|
|
PickerDateProps,
|
|
PickerProps,
|
|
} from './generatePicker';
|
|
import generatePicker from './generatePicker';
|
|
import { transPlacement2DropdownAlign } from './util';
|
|
|
|
export type DatePickerProps = PickerProps<Dayjs>;
|
|
export type MonthPickerProps = Omit<PickerDateProps<Dayjs>, 'picker'>;
|
|
export type WeekPickerProps = Omit<PickerDateProps<Dayjs>, 'picker'>;
|
|
export type RangePickerProps = BaseRangePickerProps<Dayjs>;
|
|
|
|
const DatePicker = generatePicker<Dayjs>(dayjsGenerateConfig);
|
|
|
|
export type DatePickerType = typeof DatePicker & {
|
|
_InternalPanelDoNotUseOrYouWillBeFired: typeof PurePanel;
|
|
_InternalRangePanelDoNotUseOrYouWillBeFired: typeof PureRangePanel;
|
|
generatePicker: typeof generatePicker;
|
|
};
|
|
|
|
function postPureProps(props: DatePickerProps) {
|
|
const dropdownAlign = transPlacement2DropdownAlign(props.direction, props.placement);
|
|
|
|
dropdownAlign.overflow!.adjustY = false;
|
|
dropdownAlign.overflow!.adjustX = false;
|
|
|
|
return {
|
|
...props,
|
|
dropdownAlign,
|
|
};
|
|
}
|
|
|
|
// We don't care debug panel
|
|
/* istanbul ignore next */
|
|
const PurePanel = genPurePanel(DatePicker, 'picker', null, postPureProps);
|
|
(DatePicker as DatePickerType)._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;
|
|
const PureRangePanel = genPurePanel(DatePicker.RangePicker, 'picker', null, postPureProps);
|
|
(DatePicker as DatePickerType)._InternalRangePanelDoNotUseOrYouWillBeFired = PureRangePanel;
|
|
(DatePicker as DatePickerType).generatePicker = generatePicker;
|
|
|
|
export default DatePicker as DatePickerType;
|