File tree Expand file tree Collapse file tree 2 files changed +23
-1
lines changed Expand file tree Collapse file tree 2 files changed +23
-1
lines changed Original file line number Diff line number Diff line change @@ -23,6 +23,23 @@ describe("Week", () => {
23
23
expect ( container . querySelector ( ".react-datepicker__week" ) ) . not . toBeNull ( ) ;
24
24
} ) ;
25
25
26
+ it ( "should apply className returned from passed weekClassName prop function" , ( ) => {
27
+ const className = "customClassNameWeek" ;
28
+ const monthClassNameFunc = ( ) => className ;
29
+ const { container } = render (
30
+ < Week
31
+ day = { newDate ( ) }
32
+ month = { getMonth ( newDate ( ) ) }
33
+ weekClassName = { monthClassNameFunc }
34
+ /> ,
35
+ ) ;
36
+ expect (
37
+ container
38
+ . querySelector ( ".react-datepicker__week" )
39
+ ?. classList . contains ( className ) ,
40
+ ) . toBe ( true ) ;
41
+ } ) ;
42
+
26
43
it ( "should render the days of the week" , ( ) => {
27
44
const weekStart = getStartOfWeek ( newDate ( "2015-12-20" ) ) ;
28
45
const { container } = render (
Original file line number Diff line number Diff line change @@ -12,6 +12,7 @@ import Day from "./day";
12
12
import WeekNumber from "./week_number" ;
13
13
14
14
interface DayProps extends React . ComponentPropsWithoutRef < typeof Day > { }
15
+
15
16
interface WeekNumberProps
16
17
extends React . ComponentPropsWithoutRef < typeof WeekNumber > { }
17
18
@@ -38,6 +39,7 @@ interface WeekProps
38
39
weekNumber : number ,
39
40
event : React . MouseEvent < HTMLDivElement > ,
40
41
) => void ;
42
+ weekClassName ?: ( date : Date ) => string ;
41
43
}
42
44
43
45
export default class Week extends Component < WeekProps > {
@@ -192,6 +194,9 @@ export default class Week extends Component<WeekProps> {
192
194
) ,
193
195
"react-datepicker__week--keyboard-selected" : this . isKeyboardSelected ( ) ,
194
196
} ;
195
- return < div className = { clsx ( weekNumberClasses ) } > { this . renderDays ( ) } </ div > ;
197
+ const customWeekClassName = this . props . weekClassName
198
+ ? this . props . weekClassName ( this . startOfWeek ( ) )
199
+ : undefined ;
200
+ return < div className = { clsx ( weekNumberClasses , customWeekClassName ) } > { this . renderDays ( ) } </ div > ;
196
201
}
197
202
}
You can’t perform that action at this time.
0 commit comments