Skip to content

Commit ebbca53

Browse files
Merge pull request #25 from RavenHursT/master
Feature: Allow for placeholder prop for "falsey" value prop
2 parents 2a5b20d + f626c4e commit ebbca53

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

src/DateTimePicker.jsx

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export default class DateTimePicker extends Component {
2929
onChange: PropTypes.func,
3030
onFocus: PropTypes.func,
3131
disabled: PropTypes.bool,
32+
placeholder: PropTypes.string,
3233

3334
// styles
3435
className: PropTypes.string,
@@ -62,7 +63,7 @@ export default class DateTimePicker extends Component {
6263
}
6364

6465
static defaultProps = {
65-
value: new Date(),
66+
value: undefined,
6667
okLabel: 'OK',
6768
minDate: undefined,
6869
maxDate: undefined,
@@ -78,6 +79,7 @@ export default class DateTimePicker extends Component {
7879
hideCalendarDate: false,
7980
firstDayOfWeek: 1,
8081
disabled: false,
82+
placeholder: undefined,
8183

8284
timeFormat: 'ampm',
8385
autoOkTimePicker: false,
@@ -145,7 +147,7 @@ export default class DateTimePicker extends Component {
145147
const { dateTime } = this.state;
146148
const defaultTime = this.props.showCurrentDateByDefault
147149
? moment().format(this.props.format)
148-
: '';
150+
: this.props.placeholder || '';
149151

150152
return dateTime
151153
? dateTime.format(this.props.format)
@@ -200,16 +202,18 @@ export default class DateTimePicker extends Component {
200202
datePickerMode, disableYearSelection, shouldDisableDate,
201203
hideCalendarDate, openToYearSelection, timePickerBodyStyle,
202204
okLabel, autoOkTimePicker, timePickerDialogStyle, clearIconStyle, style, textFieldStyle,
203-
minutesStep, timePickerDelay,
204-
showCurrentDateByDefault, returnMomentDate,
205+
minutesStep,
206+
timePickerDelay,
207+
showCurrentDateByDefault,
208+
returnMomentDate,
205209
DatePicker, TimePicker,
206-
onChange, onFocus,
207210
onTimePickerShow,
208211
onDatePickerShow,
209212
onDatePickerDismiss,
210213
onDateSelected,
211214
onTimeSelected,
212215
disabled,
216+
placeholder,
213217
value,
214218
...other
215219
} = this.props;
@@ -220,7 +224,7 @@ export default class DateTimePicker extends Component {
220224
onFocus={this.handleFocus}
221225
className={textFieldClassName}
222226
onClick={this.openDatePicker}
223-
value={this.getDisplayTime()}
227+
value={value ? this.getDisplayTime() : placeholder}
224228
style={{ ...styles.textField, ...textFieldStyle }}
225229
disabled={disabled}
226230
{...other}

0 commit comments

Comments
 (0)