Move EE differences for `app/assets/javascripts/vue_merge_request_widget/components/mr_widget_pipeline.vue`
The file `` has differences between CE and EE.
Diferences
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_pipeline.vue b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_pipeline.vue
index f11cf21b0ca..d6cb1dd3c13 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_pipeline.vue
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_pipeline.vue
@@ -5,6 +5,7 @@ import PipelineStage from '~/pipelines/components/stage.vue';
import CiIcon from '~/vue_shared/components/ci_icon.vue';
import Icon from '~/vue_shared/components/icon.vue';
import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue';
+import LinkedPipelinesMiniList from 'ee/vue_shared/components/linked_pipelines_mini_list.vue';
export default {
name: 'MRWidgetPipeline',
@@ -13,6 +14,7 @@ export default {
CiIcon,
Icon,
TooltipOnTruncate,
+ LinkedPipelinesMiniList,
},
props: {
pipeline: {
@@ -74,10 +76,20 @@ export default {
false,
);
},
+ /* We typically set defaults ([]) in the store or prop declarations, but because triggered
+ * and triggeredBy are appended to `pipeline`, we can't set defaults in the store, and we
+ * need to check their length here to prevent initializing linked-pipeline-mini-lists
+ * unneccessarily. */
+ triggered() {
+ return this.pipeline.triggered || [];
+ },
+ triggeredBy() {
+ const response = this.pipeline.triggered_by;
+ return response ? [response] : [];
+ },
},
};
</script>
-
<template>
<div v-if="hasPipeline || hasCIError" class="ci-widget media">
<template v-if="hasCIError">
@@ -126,15 +138,24 @@ export default {
</div>
<div>
<span class="mr-widget-pipeline-graph">
- <span v-if="hasStages" class="stage-cell">
- <div
- v-for="(stage, i) in pipeline.details.stages"
- :key="i"
- class="stage-container dropdown js-mini-pipeline-graph mr-widget-pipeline-stages"
- >
- <pipeline-stage :stage="stage" />
- </div>
+ <span class="stage-cell">
+ <linked-pipelines-mini-list v-if="triggeredBy.length" :triggered-by="triggeredBy" />
+ <template v-if="hasStages">
+ <div
+ v-for="(stage, i) in pipeline.details.stages"
+ :key="i"
+ :class="{
+ 'has-downstream': i === pipeline.details.stages.length - 1 && triggered.length,
+ }"
+ class="stage-container dropdown js-mini-pipeline-graph
+ mr-widget-pipeline-stages"
+ >
+ <pipeline-stage :stage="stage" />
+ </div>
+ </template>
</span>
+
+ <linked-pipelines-mini-list v-if="triggered.length" :triggered="triggered" />
</span>
</div>
</div>