From ed23d5dd9d846bf0b24f8b853bb2eb14b0f2461a Mon Sep 17 00:00:00 2001 From: Severiano Badajoz Date: Thu, 16 Jul 2020 14:00:57 -0700 Subject: [PATCH] fix truncation edge cases (#1637) --- client/src/components/util/truncate.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/client/src/components/util/truncate.js b/client/src/components/util/truncate.js index 81ab3158..da06a58f 100644 --- a/client/src/components/util/truncate.js +++ b/client/src/components/util/truncate.js @@ -42,8 +42,21 @@ export default (props) => { } const originalString = children.props.children; - const firstString = originalString.substr(0, originalString.length / 2); - const secondString = originalString.substr(originalString.length / 2); + let firstString; + let secondString; + + if (originalString.length === 1) { + firstString = originalString; + } else { + firstString = originalString.substr(0, originalString.length / 2); + secondString = originalString.substr(originalString.length / 2); + if (firstString.charAt(firstString.length - 1) === " ") { + firstString = `${firstString.substr(0, firstString.length - 1)}\u00a0`; + } + if (secondString.charAt(0) === " ") { + secondString = `\u00a0${secondString.substr(1)}`; + } + } const inheritedColor = children.props.style.color;