diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-08 12:09:43 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-04-08 12:09:43 +0300 |
commit | f5050253469fc0961c02deec0e698ad62bdd9de5 (patch) | |
tree | 30bbd8f8b556fd5b730f0123921138ee1d6bdaa2 /app/assets/javascripts/pipelines/stores | |
parent | f6cdec670b9b757fc2225a2c6627ab79765e5b8a (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/pipelines/stores')
-rw-r--r-- | app/assets/javascripts/pipelines/stores/pipeline_store.js | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/app/assets/javascripts/pipelines/stores/pipeline_store.js b/app/assets/javascripts/pipelines/stores/pipeline_store.js index 69e3579a3c7..1ef73760e02 100644 --- a/app/assets/javascripts/pipelines/stores/pipeline_store.js +++ b/app/assets/javascripts/pipelines/stores/pipeline_store.js @@ -54,16 +54,24 @@ export default class PipelineStore { */ parseTriggeredByPipelines(oldPipeline = {}, newPipeline) { // keep old value in case it's opened because we're polling - Vue.set(newPipeline, 'isExpanded', oldPipeline.isExpanded || false); // add isLoading property Vue.set(newPipeline, 'isLoading', false); + // Because there can only ever be one `triggered_by` for any given pipeline, + // the API returns an object for the value instead of an Array. However, + // it's easier to deal with an array in the FE so we convert it. if (newPipeline.triggered_by) { if (!Array.isArray(newPipeline.triggered_by)) { Object.assign(newPipeline, { triggered_by: [newPipeline.triggered_by] }); } - this.parseTriggeredByPipelines(oldPipeline, newPipeline.triggered_by[0]); + + if (newPipeline.triggered_by?.length > 0) { + newPipeline.triggered_by.forEach(el => { + const oldTriggeredBy = oldPipeline.triggered_by?.find(element => element.id === el.id); + this.parseTriggeredPipelines(oldTriggeredBy, el); + }); + } } } |