@@ -58,6 +58,9 @@ export interface PickerPanelSharedProps<DateType> {
5858 onChange ?: ( value : DateType ) => void ;
5959 onPanelChange ?: OnPanelChange < DateType > ;
6060 onMouseDown ?: React . MouseEventHandler < HTMLDivElement > ;
61+
62+ /** @private This is internal usage. Do not use in your production env */
63+ hideHeader ?: boolean ;
6164}
6265
6366export interface PickerPanelBaseProps < DateType >
@@ -112,6 +115,7 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
112115 showTime,
113116 showToday,
114117 renderExtraFooter,
118+ hideHeader,
115119 onSelect,
116120 onChange,
117121 onPanelChange,
@@ -130,9 +134,10 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
130134 }
131135
132136 // ============================ State =============================
133- const { operationRef, panelRef : panelDivRef } = React . useContext (
134- PanelContext ,
135- ) ;
137+
138+ const panelContext = React . useContext ( PanelContext ) ;
139+ const { operationRef, panelRef : panelDivRef } = panelContext ;
140+
136141 const { extraFooterSelections } = React . useContext ( RangeContext ) ;
137142 const panelRef = React . useRef < PanelRefProps > ( { } ) ;
138143
@@ -413,24 +418,32 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
413418 }
414419
415420 return (
416- < div
417- tabIndex = { tabIndex }
418- className = { classNames ( `${ prefixCls } -panel` , className ) }
419- style = { style }
420- onKeyDown = { onInternalKeyDown }
421- onBlur = { onInternalBlur }
422- onMouseDown = { onMouseDown }
423- ref = { panelDivRef }
421+ < PanelContext . Provider
422+ value = { {
423+ ...panelContext ,
424+ hideHeader :
425+ 'hideHeader' in props ? hideHeader : panelContext . hideHeader ,
426+ } }
424427 >
425- { panelNode }
426- { extraFooter || todayNode || extraSelectionNode ? (
427- < div className = { `${ prefixCls } -footer` } >
428- { extraFooter }
429- { extraSelectionNode }
430- { todayNode }
431- </ div >
432- ) : null }
433- </ div >
428+ < div
429+ tabIndex = { tabIndex }
430+ className = { classNames ( `${ prefixCls } -panel` , className ) }
431+ style = { style }
432+ onKeyDown = { onInternalKeyDown }
433+ onBlur = { onInternalBlur }
434+ onMouseDown = { onMouseDown }
435+ ref = { panelDivRef }
436+ >
437+ { panelNode }
438+ { extraFooter || todayNode || extraSelectionNode ? (
439+ < div className = { `${ prefixCls } -footer` } >
440+ { extraFooter }
441+ { extraSelectionNode }
442+ { todayNode }
443+ </ div >
444+ ) : null }
445+ </ div >
446+ </ PanelContext . Provider >
434447 ) ;
435448}
436449
0 commit comments