blob: 527678250fb547e4d451ce67152082e84d392cd3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
import Vue from 'vue';
import RefSelector from '~/ref/components/ref_selector.vue';
import { visitUrl } from '~/lib/utils/url_utility';
import { generateRefDestinationPath } from './utils';
export default function initRefSwitcherBadges() {
const refSwitcherElements = document.getElementsByClassName('js-ref-switcher-badge');
if (refSwitcherElements.length === 0) return false;
return Array.from(refSwitcherElements).forEach((element) => {
const { projectId, ref } = element.dataset;
return new Vue({
el: element,
render(createElement) {
return createElement(RefSelector, {
props: {
projectId,
value: ref,
},
on: {
input(selectedRef) {
visitUrl(generateRefDestinationPath(selectedRef));
},
},
});
},
});
});
}
|