Commit 75434a33 authored by Jose's avatar Jose
Browse files

Fix close merge request button text

parent 62078e6e
...@@ -102,3 +102,16 @@ export const convertToSentenceCase = string => { ...@@ -102,3 +102,16 @@ export const convertToSentenceCase = string => {
return splitWord.join(' '); return splitWord.join(' ');
}; };
/**
* Splits camelCase or PascalCase words
* e.g. HelloWorld => Hello World
*
* @param {*} string
*/
export const splitCamelCase = string => (
string
.replace(/([A-Z]+)([A-Z][a-z])/g, ' $1 $2')
.replace(/([a-z\d])([A-Z])/g, '$1 $2')
.trim()
);
...@@ -7,7 +7,7 @@ import { __, sprintf } from '~/locale'; ...@@ -7,7 +7,7 @@ import { __, sprintf } from '~/locale';
import Flash from '../../flash'; import Flash from '../../flash';
import Autosave from '../../autosave'; import Autosave from '../../autosave';
import TaskList from '../../task_list'; import TaskList from '../../task_list';
import { capitalizeFirstCharacter, convertToCamelCase } from '../../lib/utils/text_utility'; import { capitalizeFirstCharacter, convertToCamelCase, splitCamelCase } from '../../lib/utils/text_utility';
import * as constants from '../constants'; import * as constants from '../constants';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import issueWarning from '../../vue_shared/components/issue/issue_warning.vue'; import issueWarning from '../../vue_shared/components/issue/issue_warning.vue';
...@@ -53,7 +53,7 @@ export default { ...@@ -53,7 +53,7 @@ export default {
]), ]),
...mapState(['isToggleStateButtonLoading']), ...mapState(['isToggleStateButtonLoading']),
noteableDisplayName() { noteableDisplayName() {
return this.noteableType.replace(/_/g, ' '); return splitCamelCase(this.noteableType).toLowerCase();
}, },
isLoggedIn() { isLoggedIn() {
return this.getUserData.id; return this.getUserData.id;
......
...@@ -98,4 +98,10 @@ describe('text_utility', () => { ...@@ -98,4 +98,10 @@ describe('text_utility', () => {
expect(textUtils.truncateSha('shortsha')).toBe('shortsha'); expect(textUtils.truncateSha('shortsha')).toBe('shortsha');
}); });
}); });
describe('splitCamelCase', () => {
it('separates a PascalCase word to two', () => {
expect(textUtils.splitCamelCase('HelloWorld')).toBe('Hello World');
});
});
}); });
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment