summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/user_popovers.js
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-02-06 12:10:29 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-02-06 12:10:29 +0000
commit5564275a0b378298dc6281599cbfe71a937109ff (patch)
treea468e1e60046356410219c35c23a8a428c5e2c5e /app/assets/javascripts/user_popovers.js
parentd87918510a866a5fcbbc2f899ad65c6938ebf5f5 (diff)
downloadgitlab-ce-5564275a0b378298dc6281599cbfe71a937109ff.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/user_popovers.js')
-rw-r--r--app/assets/javascripts/user_popovers.js10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/assets/javascripts/user_popovers.js b/app/assets/javascripts/user_popovers.js
index 5b9e3817f3a..67e5f175039 100644
--- a/app/assets/javascripts/user_popovers.js
+++ b/app/assets/javascripts/user_popovers.js
@@ -54,11 +54,17 @@ const populateUserInfo = user => {
);
};
+const initializedPopovers = new Map();
+
export default (elements = document.querySelectorAll('.js-user-link')) => {
const userLinks = Array.from(elements);
+ const UserPopoverComponent = Vue.extend(UserPopover);
return userLinks.map(el => {
- const UserPopoverComponent = Vue.extend(UserPopover);
+ if (initializedPopovers.has(el)) {
+ return initializedPopovers.get(el);
+ }
+
const user = {
location: null,
bio: null,
@@ -73,6 +79,8 @@ export default (elements = document.querySelectorAll('.js-user-link')) => {
},
});
+ initializedPopovers.set(el, renderedPopover);
+
renderedPopover.$mount();
el.addEventListener('mouseenter', ({ target }) => {