From 2b86d1734cf839a20e0bf87476a11c79e81c14fb Mon Sep 17 00:00:00 2001 From: Wojciech Maj Date: Sun, 26 Mar 2023 19:58:40 +0200 Subject: [PATCH] Refactor constructing date in onChangeExternal --- src/DateInput.jsx | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/DateInput.jsx b/src/DateInput.jsx index 86eba8ea..303b6f11 100644 --- a/src/DateInput.jsx +++ b/src/DateInput.jsx @@ -493,7 +493,10 @@ export default class DateInput extends PureComponent { const values = {}; formElements.forEach((formElement) => { - values[formElement.name] = formElement.value; + values[formElement.name] = + 'valueAsNumber' in formElement + ? formElement.valueAsNumber + : parseInt(formElement.value, 10); }); if (formElements.every((formElement) => !formElement.value)) { @@ -501,9 +504,9 @@ export default class DateInput extends PureComponent { } else if ( formElements.every((formElement) => formElement.value && formElement.validity.valid) ) { - const year = parseInt(values.year, 10) || new Date().getFullYear(); - const monthIndex = parseInt(values.month || 1, 10) - 1; - const day = parseInt(values.day || 1, 10); + const year = values.year || new Date().getFullYear(); + const monthIndex = (values.month || 1) - 1; + const day = values.day || 1; const proposedValue = new Date(); proposedValue.setFullYear(year, monthIndex, day);