SingleWeekPicker
Overview
Datenel also provides a SingleWeekPicker component for selecting a specific week of the year (starts from Monday). Compared to SingleDatePicker, SingleWeekPicker keeps the same layout and includes specific optimization for week selection.
Preference Props
accentColor
The accent color of the panel, including the background color of the selected date.
- Type:
string
- Accept any color string can be accepted by CSS.
- Default:
#000000
Example
{/* Adjust custom main color to pure red */}
<SingleWeekPicker accentColor="#ff0000" />
{/* Adaptive to the light/dark color scheme preference */}
<SingleWeekPicker accentColor={darkScheme ? "#ffffff" : "#000000"} />
borderColor
The border color of the panel, including the divider color between the header and the body.
- Type:
string
- Accept any color string can be accepted by CSS.
- Default:
#e0e0e0
Example
{/* Adjust custom main color to pure red */}
<SingleWeekPicker borderColor="#ff0000" />
{/* Adaptive to the light/dark color scheme preference */}
<SingleWeekPicker borderColor={darkScheme ? "#ffffff" : "#000000"} />
hoverColor
The hover color of the panel, including the hover background color of the date.
- Type:
string
- Accept any color string can be accepted by CSS.
- Default:
#00000017
Example
{/* Adjust custom main color to transparented red */}
<SingleWeekPicker hoverColor="#ff000022" />
{/* Adaptive to the light/dark color scheme preference */}
<SingleWeekPicker hoverColor={darkScheme ? "#ffffff17" : "#00000017"} />
localization
Datenel will use the language code to localize the panel and accept standard ISO 639 language codes, such as zh-CN
, en-US
, ja-JP
, etc.
♿️ Accessbility reminder
It will not affect the context strings of screen reader aria tags (will be read in English), but the screen reader will still read the date according to this preference.
- Type:
string
(ISO 639 code) - Default value:
undefined
(Will follows user browser’s language)
Example
{/* Force the panel use the localization of Simplified Chinese */}
<SingleWeekPicker localization="zh-CN" />
mainColor
The main color of the panel, including the general text color.
- Type:
string
- Accept any color string can be accepted by CSS.
- Default:
#000000
Example
{/* Adjust custom main color to pure red */}
<SingleWeekPicker mainColor="#ff0000" />
{/* Adaptive to the light/dark color scheme preference */}
<SingleWeekPicker mainColor={darkScheme ? "#ffffff" : "#000000"} />
reversedColor
The reversed color of the panel, including the text color of the selected date.
- Type:
string
- Accept any color string can be accepted by CSS.
- Default:
#ffffff
Example
{/* Adjust custom main color to pure red */}
<SingleWeekPicker reversedColor="#ff0000" />
{/* Adaptive to the light/dark color scheme preference */}
<SingleWeekPicker reversedColor={darkScheme ? "#000000" : "#ffffff"} />
value
You can programmatically control the selected date, including providing a default value or controlling the date chosen by the parent component. You can also use this property to navigate the panel to show the month you want programmatically.
🤓 Use Date object to target week
When using the Date object, the week number related to the date will be applied to the panel.
- Type:
{ weekYear: number, weekNum: number } | Date
- Default value:
new Date()
(today’s week)
Example
{/* Navigate to first week of 2025 */}
<SingleWeekPicker value={{ weekYear: 2025, weekNum: 1}} />
{/* Navigate to week 29 of 2025 */}
<SingleWeekPicker value={new Date(2025, 6, 15)} />
Trigger Props
onClose() => void
A screen-reader-exclusive property. The user is required to close the panel without selecting a specific date.
The close button is not visible, but screen readers can read this button. The screen reader’s close button is only available when this prop is not undefined
.
Function parameters
No parameters.
Return value
This callback function does not require any return value.
Example
<SingleDatePicker onClose={() => setPresentPanel(false)} />
onSelect(week) => void
A callback function that will be called when a date is selected inside the panel.
Function parameters
week
: The date user selected- Type:
{ weekYear: number, weekNum: number }
- Type:
Return value
This callback function does not require any return value.
Example
{/* Storage the selection result */}
<SingleDatePicker
onSelect={value => {
setSelectedWeek(value)
}}
/>