Skip to content

Commit b258d12

Browse files
committed
make 'noon' clearer, fix calendar picker update function
1 parent b23675c commit b258d12

2 files changed

Lines changed: 15 additions & 6 deletions

File tree

src/components/widgets/DateTimePicker.js

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -157,16 +157,16 @@ export default class DateTimePicker extends Component {
157157
}
158158
}
159159

160-
onDateUpdate() {
160+
onDateUpdate(value) {
161161
const {date: currentDate, time: currentTime} = this.parseDateTime(this.props.value);
162-
const isValidDate = isDateTime(this.state.dateValue + ' ' + testTime);
162+
const isValidDate = isDateTime(value + ' ' + testTime);
163163

164164
if (isValidDate) {
165-
this.props.onChange(this.state.dateValue + ' ' + currentTime);
165+
this.props.onChange(value + ' ' + currentTime);
166166
return;
167167
}
168168

169-
if (this.state.dateValue === '') {
169+
if (value === '') {
170170
this.setState({
171171
dateValue: currentDate,
172172
dateInputClassName: 'datetimepicker-container-date-input',
@@ -177,6 +177,7 @@ export default class DateTimePicker extends Component {
177177

178178
render() {
179179
const JSDate = new Date(this.props.value);
180+
const localeTime = JSDate.toLocaleTimeString('en-US').split(' ');
180181
const currentYear = JSDate.getFullYear();
181182

182183
return (
@@ -224,7 +225,8 @@ export default class DateTimePicker extends Component {
224225
month={JSDate}
225226
onDayClick={value => {
226227
const plotlyDate = this.toPlotlyJSDate(value).split(' ')[0];
227-
this.updateDate(plotlyDate);
228+
this.onDateChange(plotlyDate);
229+
this.onDateUpdate(plotlyDate);
228230
}}
229231
/>
230232
</div>
@@ -240,7 +242,7 @@ export default class DateTimePicker extends Component {
240242
editableClassName={this.state.timeInputClassName}
241243
/>
242244
<span className="datetimepicker-date-units">
243-
{JSDate.toLocaleTimeString('en-US').split(' ')[1] === 'PM' ? 'PM' : 'AM'}
245+
{localeTime[1] === 'PM' ? (localeTime[0].startsWith('12:') ? 'noon' : 'PM') : 'AM'}
244246
</span>
245247
</div>
246248
</div>

src/styles/components/widgets/_datetimepicker.scss

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@
3434
margin-top: 5px;
3535
}
3636

37+
.datetimepicker-container-time-input,
38+
.datetimepicker-container-date-input {
39+
width: 130px;
40+
}
41+
3742
.datetimepicker-time-icon--selected,
3843
.datetimepicker-date-icon--selected {
3944
fill: var(--color-accent);
@@ -67,11 +72,13 @@
6772

6873
.DayPicker-Months {
6974
margin: 2px 0;
75+
outline: none;
7076
}
7177

7278
.DayPicker-wrapper {
7379
width: 220px;
7480
padding-bottom: 5px;
81+
outline: none;
7582
}
7683

7784
.DayPicker-Day {

0 commit comments

Comments
 (0)