29 lines
1 KiB
JavaScript
29 lines
1 KiB
JavaScript
import Vue from 'vue';
|
|
import { parseBoolean } from '~/lib/utils/common_utils';
|
|
import RelatedIssuesRoot from './components/related_issues_root.vue';
|
|
|
|
export default function initRelatedIssues() {
|
|
const relatedIssuesRootElement = document.querySelector('.js-related-issues-root');
|
|
if (relatedIssuesRootElement) {
|
|
// eslint-disable-next-line no-new
|
|
new Vue({
|
|
el: relatedIssuesRootElement,
|
|
name: 'RelatedIssuesRoot',
|
|
components: {
|
|
relatedIssuesRoot: RelatedIssuesRoot,
|
|
},
|
|
render: (createElement) =>
|
|
createElement('related-issues-root', {
|
|
props: {
|
|
endpoint: relatedIssuesRootElement.dataset.endpoint,
|
|
canAdmin: parseBoolean(relatedIssuesRootElement.dataset.canAddRelatedIssues),
|
|
helpPath: relatedIssuesRootElement.dataset.helpPath,
|
|
showCategorizedIssues: parseBoolean(
|
|
relatedIssuesRootElement.dataset.showCategorizedIssues,
|
|
),
|
|
autoCompleteEpics: false,
|
|
},
|
|
}),
|
|
});
|
|
}
|
|
}
|