Skip to content

Commit 42e6fbe

Browse files
committed
chore: merge filled logic
1 parent 6425fbf commit 42e6fbe

File tree

2 files changed

+27
-10
lines changed

2 files changed

+27
-10
lines changed

src/NewPicker/PickerInput/RangePicker.tsx

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import PickerContext from './context';
2626
import useCellRender from './hooks/useCellRender';
2727
import useDisabledBoundary from './hooks/useDisabledBoundary';
2828
import { useFieldFormat } from './hooks/useFieldFormat';
29+
import useFilledProps from './hooks/useFilledProps';
2930
import useInputReadOnly from './hooks/useInputReadOnly';
3031
import useInvalidate from './hooks/useInvalidate';
3132
import useOpen from './hooks/useOpen';
@@ -219,16 +220,10 @@ function RangePicker<DateType extends object = any>(
219220
const mergedClearIcon = useClearIcon(prefixCls, allowClear, clearIcon);
220221

221222
// ========================= Prop =========================
222-
const filledProps = React.useMemo(
223-
() => ({
224-
...props,
225-
locale: filledLocale,
226-
allowEmpty: mergedAllowEmpty,
227-
order,
228-
picker,
229-
}),
230-
[props],
231-
);
223+
const filledProps = useFilledProps(props, {
224+
allowEmpty: mergedAllowEmpty,
225+
order,
226+
});
232227

233228
// ======================= ShowTime =======================
234229
const mergedShowTime = useTimeConfig(filledProps);
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import * as React from 'react';
2+
import useLocale from '../../hooks/useLocale';
3+
import type { Locale, PickerMode } from '../../interface';
4+
5+
export default function useFilledProps<T extends { locale: Locale; picker?: PickerMode }>(
6+
props: T,
7+
additionalProps?: Partial<T>,
8+
): T {
9+
const { locale, picker = 'date' } = props;
10+
11+
const filledLocale = useLocale(locale);
12+
13+
return React.useMemo(
14+
() => ({
15+
...props,
16+
locale: filledLocale,
17+
picker,
18+
...additionalProps,
19+
}),
20+
[props],
21+
);
22+
}

0 commit comments

Comments
 (0)