diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
commit | 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 (patch) | |
tree | a77e7fe7a93de11213032ed4ab1f33a3db51b738 /app/assets/javascripts/lib/utils/text_utility.js | |
parent | 00b35af3db1abfe813a778f643dad221aad51fca (diff) |
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'app/assets/javascripts/lib/utils/text_utility.js')
-rw-r--r-- | app/assets/javascripts/lib/utils/text_utility.js | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/app/assets/javascripts/lib/utils/text_utility.js b/app/assets/javascripts/lib/utils/text_utility.js index 86714471823..be3fe1ed620 100644 --- a/app/assets/javascripts/lib/utils/text_utility.js +++ b/app/assets/javascripts/lib/utils/text_utility.js @@ -90,6 +90,13 @@ export const truncatePathMiddleToLength = (text, maxWidth) => { while (returnText.length >= maxWidth) { const textSplit = returnText.split('/').filter(s => s !== ELLIPSIS_CHAR); + + if (textSplit.length === 0) { + // There are n - 1 path separators for n segments, so 2n - 1 <= maxWidth + const maxSegments = Math.floor((maxWidth + 1) / 2); + return new Array(maxSegments).fill(ELLIPSIS_CHAR).join('/'); + } + const middleIndex = Math.floor(textSplit.length / 2); returnText = textSplit @@ -168,7 +175,7 @@ export const convertToCamelCase = string => * @param {*} string */ export const convertToSnakeCase = string => - slugifyWithUnderscore(string.match(/([a-zA-Z][^A-Z]*)/g).join(' ')); + slugifyWithUnderscore((string.match(/([a-zA-Z][^A-Z]*)/g) || [string]).join(' ')); /** * Converts a sentence to lower case from the second word onwards |