From ceb6dec1b1120d43e7b39837aa271cd8f125c2c1 Mon Sep 17 00:00:00 2001 From: Yadvir Kaur Date: Wed, 24 Jul 2024 12:30:57 +0530 Subject: [PATCH 1/2] fix hyphen issue for sync and controller code --- src/js/pages/Sync/index.js | 3 +++ src/js/pages/WebController/index.js | 31 ++++++++++------------------- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/src/js/pages/Sync/index.js b/src/js/pages/Sync/index.js index 24fa8ce4f..4fe53d089 100644 --- a/src/js/pages/Sync/index.js +++ b/src/js/pages/Sync/index.js @@ -154,10 +154,13 @@ class Sync extends React.PureComponent { onKeyUp={e => { const typedValue = e.currentTarget.value; const typedChar = e.key; + const hasHyphen = typedValue.includes('-'); const parsedValue = typedValue.match('^[A-Z,a-z]{3}'); const d = parsedValue ? parsedValue[0] === typedValue : false; if (d && typedChar !== 'Backspace') { e.currentTarget.value = typedValue + '-'; + } else if (typedChar === '-' && hasHyphen) { + e.currentTarget.value = typedValue.replace(/-+/g, '-'); } }} /> diff --git a/src/js/pages/WebController/index.js b/src/js/pages/WebController/index.js index 896dab5ae..34943ecc3 100644 --- a/src/js/pages/WebController/index.js +++ b/src/js/pages/WebController/index.js @@ -14,7 +14,6 @@ import { Stub } from '../Search/Layout'; import ControllerShabad from '@/pages/WebController/shabad'; import { versesToGurbani } from '@/util'; import ShabadControls from '@/components/ShabadControls'; -import { isMobile } from 'react-device-detect'; export default class WebControllerPage extends React.PureComponent { constructor(props) { super(props); @@ -274,26 +273,18 @@ export default class WebControllerPage extends React.PureComponent { pattern="[A-Z,a-z]{3}-[A-Z,a-z]{3}" onKeyUp={e => { const typedValue = e.currentTarget.value; - if (isMobile) { - const parsedValue = typedValue.match('^[A-Z,a-z]{4}'); - const isParsedValueExist = parsedValue - ? parsedValue[0] === typedValue - : false; - if (isParsedValueExist) { - const lastChar = typedValue.slice(-1); - e.currentTarget.value = - typedValue.slice(0, 3) + '-' + lastChar; - } - } else { - const typedChar = e.key; - const parsedValue = typedValue.match('^[A-Z,a-z]{3}'); - const isParsedValueExist = parsedValue - ? parsedValue[0] === typedValue - : false; - if (isParsedValueExist && typedChar !== 'Backspace') { - e.currentTarget.value = typedValue + '-'; - } + const typedChar = e.key; + const hasHyphen = typedValue.includes('-'); + const parsedValue = typedValue.match('^[A-Z,a-z]{3}'); + const isParsedValueExist = parsedValue + ? parsedValue[0] === typedValue + : false; + if (isParsedValueExist && typedChar !== 'Backspace') { + e.currentTarget.value = typedValue + '-'; + } else if (typedChar === '-' && hasHyphen) { + e.currentTarget.value = typedValue.replace(/-+/g, '-'); } + }} required /> From 14df762b2988ea5ac53f73642a8a437c934a776a Mon Sep 17 00:00:00 2001 From: Yadvir Kaur Date: Wed, 21 Aug 2024 20:47:37 +0530 Subject: [PATCH 2/2] minnor change for sync and controller code --- src/js/pages/Sync/index.js | 2 +- src/js/pages/WebController/index.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/js/pages/Sync/index.js b/src/js/pages/Sync/index.js index 4fe53d089..03ba1eef7 100644 --- a/src/js/pages/Sync/index.js +++ b/src/js/pages/Sync/index.js @@ -160,7 +160,7 @@ class Sync extends React.PureComponent { if (d && typedChar !== 'Backspace') { e.currentTarget.value = typedValue + '-'; } else if (typedChar === '-' && hasHyphen) { - e.currentTarget.value = typedValue.replace(/-+/g, '-'); + e.currentTarget.value = typedValue.replace(/[-]+/g, '-'); } }} /> diff --git a/src/js/pages/WebController/index.js b/src/js/pages/WebController/index.js index 34943ecc3..232c585be 100644 --- a/src/js/pages/WebController/index.js +++ b/src/js/pages/WebController/index.js @@ -282,7 +282,7 @@ export default class WebControllerPage extends React.PureComponent { if (isParsedValueExist && typedChar !== 'Backspace') { e.currentTarget.value = typedValue + '-'; } else if (typedChar === '-' && hasHyphen) { - e.currentTarget.value = typedValue.replace(/-+/g, '-'); + e.currentTarget.value = typedValue.replace(/[-]+/g, '-'); } }}