From b3bdb8dfaff55cc9751ce23aff1f5265adbb60ee Mon Sep 17 00:00:00 2001 From: unknown <n.santhanam@redkarma.eu> Date: Fri, 26 Feb 2021 13:32:26 +0530 Subject: [PATCH] TMSS-494 Changes updated based on review comments --- .../src/components/Spreadsheet/DegreeInputmask.js | 6 +++--- .../src/components/Spreadsheet/TimeInputmask.js | 6 +++--- .../frontend/tmss_webapp/src/layout/_overrides.scss | 6 ++++++ SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js | 10 ++++++++-- 4 files changed, 20 insertions(+), 8 deletions(-) diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js index 320f815503e..66ac10063cc 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/DegreeInputmask.js @@ -33,10 +33,10 @@ export default class DegreeInputMask extends Component { render() { return ( - <InputMask mask="99:99:99" value={this.props.value} - placeholder="DD:mm:ss" + <InputMask mask="99:99:99.9999" value={this.props.value} + placeholder="DD:mm:ss.ssss" className="inputmask" - onComplete={this.callbackUpdateAngle} + onChange={this.callbackUpdateAngle} autoFocus ref={input =>{this.input = input}} /> ); diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js index d8047ddebd0..3b80b7a82e7 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/components/Spreadsheet/TimeInputmask.js @@ -33,10 +33,10 @@ export default class TimeInputMask extends Component { return ( <InputMask value={this.props.value} - mask="99:99:99" - placeholder="HH:mm:ss" + mask="99:99:99.9999" + placeholder="HH:mm:ss.ssss" className="inputmask" - onComplete={this.callbackUpdateAngle} + onChange={this.callbackUpdateAngle} ref={input =>{this.input = input}} /> ); diff --git a/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss b/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss index ab16a8fe25e..53104f01b65 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss +++ b/SAS/TMSS/frontend/tmss_webapp/src/layout/_overrides.scss @@ -235,3 +235,9 @@ In Excel View the for Accordion background color override .p-grid { width: -webkit-fill-available; } +.inputmask { + height: 35px; + width: 100px; + text-align: left; + border-color: transparent !important; +} \ No newline at end of file diff --git a/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js b/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js index 79107d64b50..4f4b1b2aba5 100644 --- a/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js +++ b/SAS/TMSS/frontend/tmss_webapp/src/utils/validator.js @@ -1,13 +1,16 @@ const Validator = { validateTime(value) { const splitOutput = value.split(':'); + const seconds = splitOutput[2]?splitOutput[2].split('.')[0].split('.')[0]:splitOutput[2]; + let milliSeconds = value.split('.')[1] || '0000'; + milliSeconds = milliSeconds.padEnd(4,0); if (splitOutput.length < 3) { return false; } else { if (parseInt(splitOutput[0]) > 23 || parseInt(splitOutput[1])>59 || parseInt(splitOutput[2])>59) { return false; } - const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(splitOutput[2]); + const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(seconds) + milliSeconds/10000; if (timeValue >= 86400) { return false; } @@ -16,13 +19,16 @@ const Validator = { }, validateAngle(value) { const splitOutput = value.split(':'); + const seconds = splitOutput[2]?splitOutput[2].split('.')[0].split('.')[0]:splitOutput[2]; + let milliSeconds = value.split('.')[1] || '0000'; + milliSeconds = milliSeconds.padEnd(4,0); if (splitOutput.length < 3) { return false; } else { if (parseInt(splitOutput[0]) > 90 || parseInt(splitOutput[1])>59 || parseInt(splitOutput[2])>59) { return false; } - const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(splitOutput[2]); + const timeValue = parseInt(splitOutput[0]*60*60) + parseInt(splitOutput[1]*60) + parseInt(seconds) + milliSeconds/10000; if (timeValue > 324000) { return false; } -- GitLab