Commit 8b7c86ea authored by Mike Greiling's avatar Mike Greiling

Prettify vue_merge_request_widget modules

parent 550f5574
......@@ -22,9 +22,7 @@ export default {
directives: {
tooltip,
},
mixins: [
timeagoMixin,
],
mixins: [timeagoMixin],
props: {
deployment: {
type: Object,
......@@ -50,7 +48,7 @@ export default {
return !!(this.deployment.url && this.deployment.name);
},
hasMetrics() {
return !!(this.deployment.metrics_url);
return !!this.deployment.metrics_url;
},
},
methods: {
......@@ -63,7 +61,7 @@ export default {
MRWidgetService.stopEnvironment(this.deployment.stop_url)
.then(res => res.data)
.then((data) => {
.then(data => {
if (data.redirect_url) {
visitUrl(data.redirect_url);
}
......
......@@ -60,11 +60,29 @@ export default {
let memoryUsageMsg = '';
if (memoryTo > memoryFrom) {
memoryUsageMsg = sprintf(s__('mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage %{emphasisStart} increased %{emphasisEnd} from %{memoryFrom}MB to %{memoryTo}MB'), messageProps, false);
memoryUsageMsg = sprintf(
s__(
'mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage %{emphasisStart} increased %{emphasisEnd} from %{memoryFrom}MB to %{memoryTo}MB',
),
messageProps,
false,
);
} else if (memoryTo < memoryFrom) {
memoryUsageMsg = sprintf(s__('mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage %{emphasisStart} decreased %{emphasisEnd} from %{memoryFrom}MB to %{memoryTo}MB'), messageProps, false);
memoryUsageMsg = sprintf(
s__(
'mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage %{emphasisStart} decreased %{emphasisEnd} from %{memoryFrom}MB to %{memoryTo}MB',
),
messageProps,
false,
);
} else {
memoryUsageMsg = sprintf(s__('mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage is %{emphasisStart} unchanged %{emphasisEnd} at %{memoryFrom}MB'), messageProps, false);
memoryUsageMsg = sprintf(
s__(
'mrWidget|%{metricsLinkStart} Memory %{metricsLinkEnd} usage is %{emphasisStart} unchanged %{emphasisEnd} at %{memoryFrom}MB',
),
messageProps,
false,
);
}
return memoryUsageMsg;
......@@ -77,7 +95,7 @@ export default {
methods: {
getMegabytes(bytesString) {
const valueInBytes = Number(bytesString).toFixed(2);
return (bytesToMiB(valueInBytes)).toFixed(2);
return bytesToMiB(valueInBytes).toFixed(2);
},
computeGraphData(metrics, deploymentTime) {
this.loadingMetrics = false;
......@@ -103,7 +121,7 @@ export default {
loadMetrics() {
backOff((next, stop) => {
MRWidgetService.fetchMetrics(this.metricsUrl)
.then((res) => {
.then(res => {
if (res.status === statusCodes.NO_CONTENT) {
this.backOffRequestCounter += 1;
/* eslint-disable no-unused-expressions */
......@@ -114,14 +132,14 @@ export default {
})
.catch(stop);
})
.then((res) => {
.then(res => {
if (res.status === statusCodes.NO_CONTENT) {
return res;
}
return res.data;
})
.then((data) => {
.then(data => {
this.computeGraphData(data.metrics, data.deployment_time);
return data;
})
......
<script>
import tooltip from '../../vue_shared/directives/tooltip';
import tooltip from '../../vue_shared/directives/tooltip';
export default {
export default {
name: 'MrWidgetAuthor',
directives: {
tooltip,
......@@ -30,7 +30,7 @@
return this.author.avatarUrl || this.author.avatar_url;
},
},
};
};
</script>
<template>
<a
......
<script>
import tooltip from '~/vue_shared/directives/tooltip';
import MrWidgetAuthor from './mr_widget_author.vue';
import tooltip from '~/vue_shared/directives/tooltip';
import MrWidgetAuthor from './mr_widget_author.vue';
export default {
export default {
name: 'MrWidgetAuthorTime',
components: {
MrWidgetAuthor,
......@@ -28,7 +28,7 @@
required: true,
},
},
};
};
</script>
<template>
<h4 class="js-mr-widget-author">
......
<script>
import { sprintf, s__ } from '~/locale';
import { sprintf, s__ } from '~/locale';
export default {
export default {
name: 'MRWidgetMergeHelp',
props: {
missingBranch: {
......@@ -13,12 +13,14 @@
computed: {
missingBranchInfo() {
return sprintf(
s__('mrWidget|If the %{branch} branch exists in your local repository, you can merge this merge request manually using the'),
s__(
'mrWidget|If the %{branch} branch exists in your local repository, you can merge this merge request manually using the',
),
{ branch: this.missingBranch },
);
},
},
};
};
</script>
<template>
<section class="mr-widget-help">
......
<script>
import { s__ } from '~/locale';
import { s__ } from '~/locale';
export default {
export default {
name: 'MRWidgetRelatedLinks',
props: {
relatedLinks: {
......@@ -26,7 +26,7 @@
return s__('mrWidget|Closes');
},
},
};
};
</script>
<template>
<section class="mr-info-list mr-links">
......
<script>
import ciIcon from '../../vue_shared/components/ci_icon.vue';
import ciIcon from '../../vue_shared/components/ci_icon.vue';
export default {
export default {
components: {
ciIcon,
},
......@@ -27,7 +27,7 @@
};
},
},
};
};
</script>
<template>
<div class="space-children d-flex append-right-10 widget-status-icon">
......
<script>
import tooltip from '../../vue_shared/directives/tooltip';
import { __ } from '../../locale';
import tooltip from '../../vue_shared/directives/tooltip';
import { __ } from '../../locale';
export default {
export default {
directives: {
tooltip,
},
......@@ -10,7 +10,7 @@
this.removesBranchText = __('<strong>Removes</strong> source branch');
this.tooltipTitle = __('A user with write access to the source branch selected this option');
},
};
};
</script>
<template>
......
<script>
import statusIcon from '../mr_widget_status_icon.vue';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetArchived',
components: {
statusIcon,
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import eventHub from '../../event_hub';
import statusIcon from '../mr_widget_status_icon.vue';
import eventHub from '../../event_hub';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetAutoMergeFailed',
components: {
statusIcon,
......@@ -26,7 +26,7 @@
});
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import statusIcon from '../mr_widget_status_icon.vue';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetChecking',
components: {
statusIcon,
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import MrWidgetAuthorTime from '../../components/mr_widget_author_time.vue';
import statusIcon from '../mr_widget_status_icon.vue';
import MrWidgetAuthorTime from '../../components/mr_widget_author_time.vue';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetClosed',
components: {
MrWidgetAuthorTime,
......@@ -17,7 +17,7 @@
default: () => ({}),
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import statusIcon from '../mr_widget_status_icon.vue';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetConflicts',
components: {
statusIcon,
......@@ -15,7 +15,7 @@
default: () => ({}),
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import Flash from '../../../flash';
import statusIcon from '../mr_widget_status_icon.vue';
import MrWidgetAuthor from '../../components/mr_widget_author.vue';
import eventHub from '../../event_hub';
import Flash from '../../../flash';
import statusIcon from '../mr_widget_status_icon.vue';
import MrWidgetAuthor from '../../components/mr_widget_author.vue';
import eventHub from '../../event_hub';
export default {
export default {
name: 'MRWidgetMergeWhenPipelineSucceeds',
components: {
MrWidgetAuthor,
......@@ -37,17 +37,16 @@
currentUserId,
} = this.mr;
return !shouldRemoveSourceBranch &&
canRemoveSourceBranch &&
mergeUserId === currentUserId;
return !shouldRemoveSourceBranch && canRemoveSourceBranch && mergeUserId === currentUserId;
},
},
methods: {
cancelAutomaticMerge() {
this.isCancellingAutoMerge = true;
this.service.cancelAutomaticMerge()
this.service
.cancelAutomaticMerge()
.then(res => res.data)
.then((data) => {
.then(data => {
eventHub.$emit('UpdateWidgetData', data);
})
.catch(() => {
......@@ -63,9 +62,10 @@
};
this.isRemovingSourceBranch = true;
this.service.merge(options)
this.service
.merge(options)
.then(res => res.data)
.then((data) => {
.then(data => {
if (data.status === 'merge_when_pipeline_succeeds') {
eventHub.$emit('MRWidgetUpdateRequested');
}
......@@ -76,7 +76,7 @@
});
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import Flash from '~/flash';
import tooltip from '~/vue_shared/directives/tooltip';
import { s__, __ } from '~/locale';
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
import MrWidgetAuthorTime from '../../components/mr_widget_author_time.vue';
import statusIcon from '../mr_widget_status_icon.vue';
import eventHub from '../../event_hub';
import Flash from '~/flash';
import tooltip from '~/vue_shared/directives/tooltip';
import { s__, __ } from '~/locale';
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
import MrWidgetAuthorTime from '../../components/mr_widget_author_time.vue';
import statusIcon from '../mr_widget_status_icon.vue';
import eventHub from '../../event_hub';
export default {
export default {
name: 'MRWidgetMerged',
directives: {
tooltip,
......@@ -36,24 +36,18 @@
},
computed: {
shouldShowRemoveSourceBranch() {
const {
sourceBranchRemoved,
isRemovingSourceBranch,
canRemoveSourceBranch,
} = this.mr;
const { sourceBranchRemoved, isRemovingSourceBranch, canRemoveSourceBranch } = this.mr;
return !sourceBranchRemoved &&
return (
!sourceBranchRemoved &&
canRemoveSourceBranch &&
!this.isMakingRequest &&
!isRemovingSourceBranch;
!isRemovingSourceBranch
);
},
shouldShowSourceBranchRemoving() {
const {
sourceBranchRemoved,
isRemovingSourceBranch,
} = this.mr;
return !sourceBranchRemoved &&
(isRemovingSourceBranch || this.isMakingRequest);
const { sourceBranchRemoved, isRemovingSourceBranch } = this.mr;
return !sourceBranchRemoved && (isRemovingSourceBranch || this.isMakingRequest);
},
shouldShowMergedButtons() {
const {
......@@ -63,10 +57,9 @@
cherryPickInForkPath,
} = this.mr;
return canRevertInCurrentMR ||
canCherryPickInCurrentMR ||
revertInForkPath ||
cherryPickInForkPath;
return (
canRevertInCurrentMR || canCherryPickInCurrentMR || revertInForkPath || cherryPickInForkPath
);
},
revertTitle() {
return s__('mrWidget|Revert this merge request in a new merge request');
......@@ -85,9 +78,10 @@
removeSourceBranch() {
this.isMakingRequest = true;
this.service.removeSourceBranch()
this.service
.removeSourceBranch()
.then(res => res.data)
.then((data) => {
.then(data => {
if (data.message === 'Branch was removed') {
eventHub.$emit('MRWidgetUpdateRequested', () => {
this.isMakingRequest = false;
......@@ -100,7 +94,7 @@
});
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import statusIcon from '../mr_widget_status_icon.vue';
import statusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetMerging',
components: {
statusIcon,
......@@ -13,7 +13,7 @@
default: () => ({}),
},
},
};
};
</script>
<template>
<div class="mr-widget-body mr-state-locked media">
......
<script>
import { sprintf, s__ } from '~/locale';
import tooltip from '~/vue_shared/directives/tooltip';
import statusIcon from '../mr_widget_status_icon.vue';
import mrWidgetMergeHelp from '../../components/mr_widget_merge_help.vue';
import { sprintf, s__ } from '~/locale';
import tooltip from '~/vue_shared/directives/tooltip';
import statusIcon from '../mr_widget_status_icon.vue';
import mrWidgetMergeHelp from '../../components/mr_widget_merge_help.vue';
export default {
export default {
name: 'MRWidgetMissingBranch',
directives: {
tooltip,
......@@ -24,17 +24,25 @@
return this.mr.sourceBranchRemoved ? 'source' : 'target';
},
missingBranchNameMessage() {
return sprintf(s__('mrWidget| Please restore it or use a different %{missingBranchName} branch'), {
return sprintf(
s__('mrWidget| Please restore it or use a different %{missingBranchName} branch'),
{
missingBranchName: this.missingBranchName,
});
},
);
},
message() {
return sprintf(s__('mrWidget|If the %{missingBranchName} branch exists in your local repository, you can merge this merge request manually using the command line'), {
return sprintf(
s__(
'mrWidget|If the %{missingBranchName} branch exists in your local repository, you can merge this merge request manually using the command line',
),
{
missingBranchName: this.missingBranchName,
});
},
);
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import StatusIcon from '../mr_widget_status_icon.vue';
import StatusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetNotAllowed',
components: {
StatusIcon,
},
};
};
</script>
<template>
......
<script>
import StatusIcon from '../mr_widget_status_icon.vue';
import StatusIcon from '../mr_widget_status_icon.vue';
export default {
export default {
name: 'MRWidgetPipelineBlocked',
components: {
StatusIcon,
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
<script>
import simplePoll from '../../../lib/utils/simple_poll';
import eventHub from '../../event_hub';
import statusIcon from '../mr_widget_status_icon.vue';
import Flash from '../../../flash';
import simplePoll from '../../../lib/utils/simple_poll';
import eventHub from '../../event_hub';
import statusIcon from '../mr_widget_status_icon.vue';
import Flash from '../../../flash';
export default {
export default {
name: 'MRWidgetRebase',
components: {
statusIcon,
......@@ -44,20 +44,22 @@
this.isMakingRequest = true;
this.rebasingError = null;
this.service.rebase()
this.service
.rebase()
.then(() => {
simplePoll(this.checkRebaseStatus);
})
.catch((error) => {
.catch(error => {
this.rebasingError = error.merge_error;
this.isMakingRequest = false;
Flash('Something went wrong. Please try again.');
});
},
checkRebaseStatus(continuePolling, stopPolling) {
this.service.poll()
this.service
.poll()
.then(res => res.data)
.then((res) => {
.then(res => {
if (res.rebase_in_progress) {
continuePolling();
} else {
......@@ -79,7 +81,7 @@
});
},
},
};
};
</script>
<template>
<div class="mr-widget-body media">
......
......@@ -24,9 +24,10 @@ export default {
methods: {
removeWIP() {
this.isMakingRequest = true;
this.service.removeWIP()
this.service
.removeWIP()
.then(res => res.data)
.then((data) => {
.then(data => {
eventHub.$emit('UpdateWidgetData', data);
new window.Flash('The merge request can now be merged.', 'notice'); // eslint-disable-line
$('.merge-request .detail-page-description .title').text(this.mr.title);
......
<script>
import Project from '~/pages/projects/project';
import SmartInterval from '~/smart_interval';
import createFlash from '../flash';
......@@ -100,8 +99,11 @@ export default {
return !!this.mr.relatedLinks && !this.mr.isNothingToMergeState;
},
shouldRenderSourceBranchRemovalStatus() {
return !this.mr.canRemoveSourceBranch && this.mr.shouldRemoveSourceBranch &&
(!this.mr.isNothingToMergeState && !this.mr.isMergedState);
return (
!this.mr.canRemoveSourceBranch &&
this.mr.shouldRemoveSourceBranch &&
(!this.mr.isNothingToMergeState && !this.mr.isMergedState)
);
},
},
created() {
......@@ -133,9 +135,10 @@ export default {
return new MRWidgetService(endpoints);
},
checkStatus(cb) {
return this.service.checkStatus()
return this.service
.checkStatus()
.then(res => res.data)
.then((data) => {
.then(data => {
this.handleNotification(data);
this.mr.setData(data);
this.setFaviconHelper();
......@@ -172,20 +175,24 @@ export default {
return Promise.resolve();
},
fetchDeployments() {
return this.service.fetchDeployments()
return this.service
.fetchDeployments()
.then(res => res.data)
.then((data) => {
.then(data => {
if (data.length) {
this.mr.deployments = data;
}
})
.catch(() => {
createFlash('Something went wrong while fetching the environments for this merge request. Please try again.');
createFlash(
'Something went wrong while fetching the environments for this merge request. Please try again.',
);
});
},
fetchActionsContent() {
this.service.fetchMergeActionsContent()
.then((res) => {
this.service
.fetchMergeActionsContent()
.then(res => {
if (res.data) {
const el = document.createElement('div');
el.innerHTML = res.data;
......@@ -212,22 +219,22 @@ export default {
this.pollingInterval.stopTimer();
},
bindEventHubListeners() {
eventHub.$on('MRWidgetUpdateRequested', (cb) => {
eventHub.$on('MRWidgetUpdateRequested', cb => {
this.checkStatus(cb);
});
// `params` should be an Array contains a Boolean, like `[true]`
// Passing parameter as Boolean didn't work.
eventHub.$on('SetBranchRemoveFlag', (params) => {
eventHub.$on('SetBranchRemoveFlag', params => {
[this.mr.isRemovingSourceBranch] = params;
});
eventHub.$on('FailedToMerge', (mergeError) => {
eventHub.$on('FailedToMerge', mergeError => {
this.mr.state = 'failedToMerge';
this.mr.mergeError = mergeError;
});
eventHub.$on('UpdateWidgetData', (data) => {
eventHub.$on('UpdateWidgetData', data => {
this.mr.setData(data);
});
......
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