Commit e658ca96 authored by Clement Ho's avatar Clement Ho

Add initPipelineDetails to pipelines build path

parent eb08e1d1
...@@ -14,10 +14,10 @@ import CycleAnalyticsStore from './cycle_analytics_store'; ...@@ -14,10 +14,10 @@ import CycleAnalyticsStore from './cycle_analytics_store';
Vue.use(Translate); Vue.use(Translate);
document.addEventListener('DOMContentLoaded', () => { $(() => {
const OVERVIEW_DIALOG_COOKIE = 'cycle_analytics_help_dismissed'; const OVERVIEW_DIALOG_COOKIE = 'cycle_analytics_help_dismissed';
const cycleAnalyticsApp = new Vue({ gl.cycleAnalyticsApp = new Vue({
el: '#cycle-analytics', el: '#cycle-analytics',
name: 'CycleAnalytics', name: 'CycleAnalytics',
components: { components: {
......
import initPipelineDetails from '~/pipelines/pipeline_details_bundle';
import initPipelines from '../init_pipelines'; import initPipelines from '../init_pipelines';
document.addEventListener('DOMContentLoaded', initPipelines); document.addEventListener('DOMContentLoaded', () => {
initPipelines();
initPipelineDetails();
});
import initPipelineDetails from '~/pipelines/pipeline_details_bundle';
import Vue from 'vue';
import { __ } from '~/locale';
import Flash from '~/flash';
import PipelinesMediator from '~/pipelines/pipeline_details_mediator';
import pipelineGraph from '~/pipelines/components/graph/graph_component.vue';
import pipelineHeader from '~/pipelines/components/header_component.vue';
import eventHub from '~/pipelines/event_hub';
import initPipelines from '../init_pipelines'; import initPipelines from '../init_pipelines';
document.addEventListener('DOMContentLoaded', () => { document.addEventListener('DOMContentLoaded', () => {
const dataset = document.querySelector('.js-pipeline-details-vue').dataset;
const mediator = new PipelinesMediator({ endpoint: dataset.endpoint });
mediator.fetchPipeline();
initPipelines(); initPipelines();
initPipelineDetails();
// eslint-disable-next-line
new Vue({
el: '#js-pipeline-graph-vue',
components: {
pipelineGraph,
},
data() {
return {
mediator,
};
},
render(createElement) {
return createElement('pipeline-graph', {
props: {
isLoading: this.mediator.state.isLoading,
pipeline: this.mediator.store.state.pipeline,
},
});
},
});
// eslint-disable-next-line
new Vue({
el: '#js-pipeline-header-vue',
components: {
pipelineHeader,
},
data() {
return {
mediator,
};
},
created() {
eventHub.$on('headerPostAction', this.postAction);
},
beforeDestroy() {
eventHub.$off('headerPostAction', this.postAction);
},
methods: {
postAction(action) {
this.mediator.service.postAction(action.path)
.then(() => this.mediator.refreshPipeline())
.catch(() => new Flash(__('An error occurred while making the request.')));
},
},
render(createElement) {
return createElement('pipeline-header', {
props: {
isLoading: this.mediator.state.isLoading,
pipeline: this.mediator.store.state.pipeline,
},
});
},
});
}); });
...@@ -9,16 +9,18 @@ import eventHub from './event_hub'; ...@@ -9,16 +9,18 @@ import eventHub from './event_hub';
Vue.use(Translate); Vue.use(Translate);
document.addEventListener('DOMContentLoaded', () => { export default () => {
const dataset = document.querySelector('.js-pipeline-details-vue').dataset; const dataset = document.querySelector('.js-pipeline-details-vue').dataset;
const mediator = new PipelinesMediator({ endpoint: dataset.endpoint }); const mediator = new PipelinesMediator({ endpoint: dataset.endpoint });
mediator.fetchPipeline(); mediator.fetchPipeline();
const pipelineGraphEl = document.querySelector('#js-pipeline-graph-vue');
if (pipelineGraphEl) {
// eslint-disable-next-line // eslint-disable-next-line
new Vue({ new Vue({
el: '#js-pipeline-graph-vue', el: pipelineGraphEl,
components: { components: {
pipelineGraph, pipelineGraph,
}, },
...@@ -36,10 +38,13 @@ document.addEventListener('DOMContentLoaded', () => { ...@@ -36,10 +38,13 @@ document.addEventListener('DOMContentLoaded', () => {
}); });
}, },
}); });
}
const pipelineHeaderEl = document.querySelector('#js-pipeline-header-vue');
if (pipelineHeaderEl) {
// eslint-disable-next-line // eslint-disable-next-line
new Vue({ new Vue({
el: '#js-pipeline-header-vue', el: pipelineHeaderEl,
components: { components: {
pipelineHeader, pipelineHeader,
}, },
...@@ -70,4 +75,5 @@ document.addEventListener('DOMContentLoaded', () => { ...@@ -70,4 +75,5 @@ document.addEventListener('DOMContentLoaded', () => {
}); });
}, },
}); });
}); }
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment