@@ -28,6 +28,7 @@ class SemanticDatepicker extends React.Component {
28
28
date : PropTypes . instanceOf ( Date ) ,
29
29
format : PropTypes . string ,
30
30
keepOpenOnClear : PropTypes . bool ,
31
+ keepOpenOnSelect : PropTypes . bool ,
31
32
locale : PropTypes . object ,
32
33
onDateChange : PropTypes . func . isRequired ,
33
34
placeholder : PropTypes . string ,
@@ -41,6 +42,7 @@ class SemanticDatepicker extends React.Component {
41
42
static defaultProps = {
42
43
clearable : true ,
43
44
keepOpenOnClear : false ,
45
+ keepOpenOnSelect : false ,
44
46
date : undefined ,
45
47
format : 'YYYY-MM-DD' ,
46
48
locale : localeEn ,
@@ -147,7 +149,7 @@ class SemanticDatepicker extends React.Component {
147
149
} ;
148
150
149
151
handleRangeInput = newDates => {
150
- const { format, onDateChange } = this . props ;
152
+ const { format, keepOpenOnSelect , onDateChange } = this . props ;
151
153
152
154
if ( ! newDates . length ) {
153
155
this . resetState ( ) ;
@@ -164,13 +166,13 @@ class SemanticDatepicker extends React.Component {
164
166
onDateChange ( newDates ) ;
165
167
166
168
if ( newDates . length === 2 ) {
167
- this . setState ( { isVisible : false } ) ;
169
+ this . setState ( { isVisible : keepOpenOnSelect } ) ;
168
170
}
169
171
} ) ;
170
172
} ;
171
173
172
174
handleBasicInput = newDate => {
173
- const { format, onDateChange } = this . props ;
175
+ const { format, keepOpenOnSelect , onDateChange } = this . props ;
174
176
175
177
if ( ! newDate ) {
176
178
this . resetState ( ) ;
@@ -179,7 +181,7 @@ class SemanticDatepicker extends React.Component {
179
181
}
180
182
181
183
const newState = {
182
- isVisible : false ,
184
+ isVisible : keepOpenOnSelect ,
183
185
selectedDate : newDate ,
184
186
selectedDateFormatted : formatSelectedDate ( newDate , format ) ,
185
187
} ;
0 commit comments