diff --git a/app/javascript/v3/components/Form/InitialsAvatar.vue b/app/javascript/v3/components/Form/InitialsAvatar.vue
index c58b89cdc..ccfc6a513 100644
--- a/app/javascript/v3/components/Form/InitialsAvatar.vue
+++ b/app/javascript/v3/components/Form/InitialsAvatar.vue
@@ -5,13 +5,13 @@
:style="style"
aria-hidden="true"
>
- {{ userInitial }}
+ {{ initial }}
diff --git a/app/javascript/v3/components/Form/Input.vue b/app/javascript/v3/components/Form/Input.vue
index 5133dd7d3..a0e0bf6e0 100644
--- a/app/javascript/v3/components/Form/Input.vue
+++ b/app/javascript/v3/components/Form/Input.vue
@@ -26,7 +26,7 @@
'px-3 py-2 mb-0': spacing === 'compact',
'pl-9': icon,
}"
- disabled
+ :disabled="disabled"
class="block w-full h-10 ltr:pl-3 ltr:pr-2 rtl:pl-2 rtl:pr-3 py-2.5 !border-none shadow-sm appearance-none reset-base rounded-xl outline outline-1 focus:outline-1 text-ash-900 placeholder:text-ash-200 sm:text-sm sm:leading-6"
@input="onInput"
@blur="$emit('blur')"
diff --git a/app/javascript/v3/helpers/CommonHelper.js b/app/javascript/v3/helpers/CommonHelper.js
index cdd913769..a4b55bdd5 100644
--- a/app/javascript/v3/helpers/CommonHelper.js
+++ b/app/javascript/v3/helpers/CommonHelper.js
@@ -1,3 +1,9 @@
export const replaceRouteWithReload = url => {
window.location = url;
};
+
+export const userInitial = name => {
+ const parts = name.split(/[ -]/).filter(Boolean);
+ let initials = parts.map(part => part[0].toUpperCase()).join('');
+ return initials.slice(0, 2);
+};
diff --git a/app/javascript/v3/helpers/specs/CommonHelper.spec.js b/app/javascript/v3/helpers/specs/CommonHelper.spec.js
new file mode 100644
index 000000000..58d86006c
--- /dev/null
+++ b/app/javascript/v3/helpers/specs/CommonHelper.spec.js
@@ -0,0 +1,10 @@
+import { userInitial } from '../CommonHelper';
+
+describe('#userInitial', () => {
+ it('returns the initials of the user', () => {
+ expect(userInitial('John Doe')).toEqual('JD');
+ expect(userInitial('John')).toEqual('J');
+ expect(userInitial('John-Doe')).toEqual('JD');
+ expect(userInitial('John Doe Smith')).toEqual('JD');
+ });
+});