Init MR Popovers on system note mounted
All `renderGFM()` calls are finished before the system note is mounted so this MR inits the popover for each system note, and only the elements in the system note
This commit is contained in:
parent
674e5e5baa
commit
ba8113c323
3 changed files with 16 additions and 0 deletions
|
@ -22,6 +22,7 @@ import noteHeader from '~/notes/components/note_header.vue';
|
|||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import TimelineEntryItem from './timeline_entry_item.vue';
|
||||
import { spriteIcon } from '../../../lib/utils/common_utils';
|
||||
import initMRPopovers from '~/mr_popover/';
|
||||
|
||||
const MAX_VISIBLE_COMMIT_LIST_COUNT = 3;
|
||||
|
||||
|
@ -71,6 +72,9 @@ export default {
|
|||
);
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
initMRPopovers(this.$el.querySelectorAll('.gfm-merge_request'));
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Fix bug where system note MR has no popover
|
||||
merge_request: 27747
|
||||
author:
|
||||
type: fixed
|
|
@ -1,6 +1,9 @@
|
|||
import Vue from 'vue';
|
||||
import issueSystemNote from '~/vue_shared/components/notes/system_note.vue';
|
||||
import createStore from '~/notes/stores';
|
||||
import initMRPopovers from '~/mr_popover/index';
|
||||
|
||||
jest.mock('~/mr_popover/index', () => jest.fn());
|
||||
|
||||
describe('system note component', () => {
|
||||
let vm;
|
||||
|
@ -56,4 +59,8 @@ describe('system note component', () => {
|
|||
it('removes wrapping paragraph from note HTML', () => {
|
||||
expect(vm.$el.querySelector('.system-note-message').innerHTML).toEqual('<span>closed</span>');
|
||||
});
|
||||
|
||||
it('should initMRPopovers onMount', () => {
|
||||
expect(initMRPopovers).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue