summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJukka Jokiniva <jukka.jokiniva@qt.io>2021-06-30 12:37:31 +0300
committerJukka Jokiniva <jukka.jokiniva@qt.io>2022-05-30 10:31:03 +0000
commit3b74973e69574b6619236c3db503ada30c18c583 (patch)
treefd7af994980d8c45ffd105fe22010ce258897c51
parent0487ddaea0a95c092ae78003de714775659acc91 (diff)
Update status values staged, integrating and deferred for client side modules
Change-Id: Ib5fcc3fe61c09680c9ea5d60e37915e7e26e8660 Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
-rw-r--r--polygerrit-ui/app/api/rest-api.ts3
-rw-r--r--polygerrit-ui/app/elements/change-list/gr-change-list/gr-change-list.ts2
-rw-r--r--polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts13
-rw-r--r--polygerrit-ui/app/elements/change/gr-label-scores/gr-label-scores.ts18
-rw-r--r--polygerrit-ui/app/elements/change/gr-related-changes-list/gr-related-change.ts9
-rw-r--r--polygerrit-ui/app/elements/core/gr-main-header/gr-main-header.ts12
-rw-r--r--polygerrit-ui/app/elements/core/gr-search-bar/gr-search-bar.ts6
-rw-r--r--polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status.ts3
-rw-r--r--polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status_html.ts12
-rw-r--r--polygerrit-ui/app/styles/themes/app-theme.ts3
-rw-r--r--polygerrit-ui/app/styles/themes/dark-theme.ts3
-rw-r--r--polygerrit-ui/app/utils/change-util.ts9
12 files changed, 90 insertions, 3 deletions
diff --git a/polygerrit-ui/app/api/rest-api.ts b/polygerrit-ui/app/api/rest-api.ts
index 39b40b61d8..2315a4eb88 100644
--- a/polygerrit-ui/app/api/rest-api.ts
+++ b/polygerrit-ui/app/api/rest-api.ts
@@ -54,6 +54,9 @@ export enum ChangeStatus {
ABANDONED = 'ABANDONED',
MERGED = 'MERGED',
NEW = 'NEW',
+ DEFERRED = 'DEFERRED',
+ INTEGRATING = 'INTEGRATING',
+ STAGED = 'STAGED',
}
/**
diff --git a/polygerrit-ui/app/elements/change-list/gr-change-list/gr-change-list.ts b/polygerrit-ui/app/elements/change-list/gr-change-list/gr-change-list.ts
index a79dd8ea0d..e8f1aa5f28 100644
--- a/polygerrit-ui/app/elements/change-list/gr-change-list/gr-change-list.ts
+++ b/polygerrit-ui/app/elements/change-list/gr-change-list/gr-change-list.ts
@@ -52,7 +52,7 @@ import {ScrollMode} from '../../../constants/constants';
import {listen} from '../../../services/shortcuts/shortcuts-service';
const NUMBER_FIXED_COLUMNS = 3;
-const CLOSED_STATUS = ['MERGED', 'ABANDONED'];
+const CLOSED_STATUS = ['MERGED', 'ABANDONED', 'DEFERRED', 'INTEGRATING', 'STAGED'];
const LABEL_PREFIX_INVALID_PROLOG = 'Invalid-Prolog-Rules-Label-Name--';
const MAX_SHORTCUT_CHARS = 5;
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
index b635d3f6da..911f7c4640 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
@@ -216,6 +216,9 @@ const ReloadToastMessage = {
ABANDONED: 'This change has been abandoned',
MERGED: 'This change has been merged',
NEW_MESSAGE: 'There are new messages on this change',
+ STAGED: 'This change has been staged',
+ INTEGRATING: 'This change is now integrating',
+ DEFERRED: 'This change has been deferred',
};
// Making the tab names more unique in case a plugin adds one with same name
@@ -1806,6 +1809,7 @@ export class GrChangeView extends base {
// if a change is deleted then getChanges returns null for that changeId
changes = changes.filter(
change => change && change.status !== ChangeStatus.ABANDONED
+ && change.status !== ChangeStatus.DEFERRED
);
if (!changes.length) return;
const submittedRevert = changes.find(
@@ -2202,6 +2206,9 @@ export class GrChangeView extends base {
// answer for abandoned changes.
if (
this._change.status === ChangeStatus.MERGED ||
+ this._change.status === ChangeStatus.STAGED ||
+ this._change.status === ChangeStatus.INTEGRATING ||
+ this._change.status === ChangeStatus.DEFERRED ||
this._change.status === ChangeStatus.ABANDONED
) {
this._mergeable = false;
@@ -2304,6 +2311,12 @@ export class GrChangeView extends base {
toastMessage = ReloadToastMessage.ABANDONED;
} else if (result.newStatus === ChangeStatus.NEW) {
toastMessage = ReloadToastMessage.RESTORED;
+ } else if (result.newStatus === ChangeStatus.STAGED) {
+ toastMessage = ReloadToastMessage.STAGED;
+ } else if (result.newStatus === ChangeStatus.INTEGRATING) {
+ toastMessage = ReloadToastMessage.INTEGRATING;
+ } else if (result.newStatus === ChangeStatus.DEFERRED) {
+ toastMessage = ReloadToastMessage.DEFERRED;
} else if (result.newMessages) {
toastMessage = ReloadToastMessage.NEW_MESSAGE;
if (result.newMessages.author?.name) {
diff --git a/polygerrit-ui/app/elements/change/gr-label-scores/gr-label-scores.ts b/polygerrit-ui/app/elements/change/gr-label-scores/gr-label-scores.ts
index a496be5bae..181ea16cb6 100644
--- a/polygerrit-ui/app/elements/change/gr-label-scores/gr-label-scores.ts
+++ b/polygerrit-ui/app/elements/change/gr-label-scores/gr-label-scores.ts
@@ -102,6 +102,24 @@ export class GrLabelScores extends LitElement {
?hidden=${this.change?.status !== ChangeStatus.ABANDONED}
>
Because this change has been abandoned, you cannot vote.
+ </div>
+ <div
+ class="abandonedMessage"
+ ?hidden=${this.change?.status !== ChangeStatus.DEFERRED}
+ >
+ Because this change has been deferred, you cannot vote.
+ </div>
+ <div
+ class="mergedMessage"
+ ?hidden=${this.change?.status !== ChangeStatus.STAGED}
+ >
+ Because this change is integrating, votes may not be decreased.
+ </div>
+ <div
+ class="mergedMessage"
+ ?hidden=${this.change?.status !== ChangeStatus.INTEGRATING}
+ >
+ Because this change is integrating, votes may not be decreased.
</div>`;
}
diff --git a/polygerrit-ui/app/elements/change/gr-related-changes-list/gr-related-change.ts b/polygerrit-ui/app/elements/change/gr-related-changes-list/gr-related-change.ts
index e4703df2e6..99e9cb46d0 100644
--- a/polygerrit-ui/app/elements/change/gr-related-changes-list/gr-related-change.ts
+++ b/polygerrit-ui/app/elements/change/gr-related-changes-list/gr-related-change.ts
@@ -132,7 +132,8 @@ export class GrRelatedChange extends LitElement {
_computeLinkClass(change: ChangeInfo | RelatedChangeAndCommitInfo) {
const statuses = [];
- if (change.status === ChangeStatus.ABANDONED) {
+ if (change.status === ChangeStatus.ABANDONED ||
+ change.status === ChangeStatus.DEFERRED) {
statuses.push('strikethrough');
}
if (change.submittable) {
@@ -161,6 +162,12 @@ export class GrRelatedChange extends LitElement {
return 'Merged';
case ChangeStatus.ABANDONED:
return 'Abandoned';
+ case ChangeStatus.DEFERRED:
+ return 'Deferred';
+ case ChangeStatus.INTEGRATING:
+ return 'Integrating';
+ case ChangeStatus.STAGED:
+ return 'Staged';
}
if (change._revision_number !== change._current_revision_number) {
return 'Not current';
diff --git a/polygerrit-ui/app/elements/core/gr-main-header/gr-main-header.ts b/polygerrit-ui/app/elements/core/gr-main-header/gr-main-header.ts
index 9d34929723..ea2b92579d 100644
--- a/polygerrit-ui/app/elements/core/gr-main-header/gr-main-header.ts
+++ b/polygerrit-ui/app/elements/core/gr-main-header/gr-main-header.ts
@@ -58,10 +58,22 @@ const DEFAULT_LINKS: MainHeaderLinkGroup[] = [
name: 'Open',
},
{
+ url: '/q/status:staged',
+ name: 'Staged',
+ },
+ {
+ url: '/q/status:integrating',
+ name: 'Integrating',
+ },
+ {
url: '/q/status:merged',
name: 'Merged',
},
{
+ url: '/q/status:deferred',
+ name: 'Deferred',
+ },
+ {
url: '/q/status:abandoned',
name: 'Abandoned',
},
diff --git a/polygerrit-ui/app/elements/core/gr-search-bar/gr-search-bar.ts b/polygerrit-ui/app/elements/core/gr-search-bar/gr-search-bar.ts
index 2901b8a43b..add8d9bbdd 100644
--- a/polygerrit-ui/app/elements/core/gr-search-bar/gr-search-bar.ts
+++ b/polygerrit-ui/app/elements/core/gr-search-bar/gr-search-bar.ts
@@ -80,7 +80,9 @@ const SEARCH_OPERATORS: ReadonlyArray<string> = [
'is:attention',
'is:cherrypick',
'is:closed',
+ 'is:deferred',
'is:ignored',
+ 'is:integrating',
'is:merge',
'is:merged',
'is:open',
@@ -88,6 +90,7 @@ const SEARCH_OPERATORS: ReadonlyArray<string> = [
'is:private',
'is:reviewed',
'is:reviewer',
+ 'is:staged',
'is:starred',
'is:submittable',
'is:watched',
@@ -117,9 +120,12 @@ const SEARCH_OPERATORS: ReadonlyArray<string> = [
'status:',
'status:abandoned',
'status:closed',
+ 'status:deferred',
+ 'status:integrating',
'status:merged',
'status:open',
'status:reviewed',
+ 'status:staged',
'submissionid:',
'topic:',
'tr:',
diff --git a/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status.ts b/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status.ts
index 0bd02d55f9..eb467d5cca 100644
--- a/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status.ts
+++ b/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status.ts
@@ -37,6 +37,9 @@ export enum ChangeStates {
REVERT_CREATED = 'Revert Created',
REVERT_SUBMITTED = 'Revert Submitted',
WIP = 'WIP',
+ DEFERRED = 'Deferred',
+ INTEGRATING = 'Integrating',
+ STAGED = 'Staged',
}
const WIP_TOOLTIP =
diff --git a/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status_html.ts b/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status_html.ts
index 455bd4e0a9..168647ba07 100644
--- a/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status_html.ts
+++ b/polygerrit-ui/app/elements/shared/gr-change-status/gr-change-status_html.ts
@@ -32,6 +32,18 @@ export const htmlTemplate = html`
background-color: var(--status-abandoned);
color: var(--status-abandoned);
}
+ :host(.deferred) .chip {
+ background-color: var(--status-deferred);
+ color: var(--status-deferred);
+ }
+ :host(.integrating) .chip {
+ background-color: var(--status-integrating);
+ color: var(--status-integrating);
+ }
+ :host(.staged) .chip {
+ background-color: var(--status-staged);
+ color: var(--status-staged);
+ }
:host(.wip) .chip {
background-color: var(--status-wip);
color: var(--status-wip);
diff --git a/polygerrit-ui/app/styles/themes/app-theme.ts b/polygerrit-ui/app/styles/themes/app-theme.ts
index 8b00a79a46..c8dd8b5543 100644
--- a/polygerrit-ui/app/styles/themes/app-theme.ts
+++ b/polygerrit-ui/app/styles/themes/app-theme.ts
@@ -251,6 +251,9 @@ const styleSheet = safeStyleSheet`
/* status colors */
--status-merged: var(--green-700);
--status-abandoned: var(--gray-700);
+ --status-deferred: #5f6368;
+ --status-integrating: #999900;
+ --status-staged: #cccc00;
--status-wip: #795548;
--status-private: var(--purple-500);
--status-conflict: var(--red-600);
diff --git a/polygerrit-ui/app/styles/themes/dark-theme.ts b/polygerrit-ui/app/styles/themes/dark-theme.ts
index 05c6b7df2f..7415e34669 100644
--- a/polygerrit-ui/app/styles/themes/dark-theme.ts
+++ b/polygerrit-ui/app/styles/themes/dark-theme.ts
@@ -149,6 +149,9 @@ function getStyleEl() {
/* status colors */
--status-merged: var(--green-400);
--status-abandoned: var(--gray-300);
+ --status-deferred: #dadce0;
+ --status-integrating: #999900;
+ --status-staged: #cccc00;
--status-wip: #bcaaa4;
--status-private: var(--purple-200);
--status-conflict: var(--red-300);
diff --git a/polygerrit-ui/app/utils/change-util.ts b/polygerrit-ui/app/utils/change-util.ts
index 278e7f3297..b43f427fa0 100644
--- a/polygerrit-ui/app/utils/change-util.ts
+++ b/polygerrit-ui/app/utils/change-util.ts
@@ -145,7 +145,8 @@ export function changeIsMerged(change?: ChangeInfo | ParsedChangeInfo | null) {
export function changeIsAbandoned(
change?: ChangeInfo | ParsedChangeInfo | null
) {
- return change?.status === ChangeStatus.ABANDONED;
+ return change?.status === ChangeStatus.ABANDONED ||
+ change?.status === ChangeStatus.DEFERRED;
}
export function changeStatuses(
@@ -157,6 +158,12 @@ export function changeStatuses(
states.push(ChangeStates.MERGED);
} else if (change.status === ChangeStatus.ABANDONED) {
states.push(ChangeStates.ABANDONED);
+ } else if (change.status === ChangeStatus.DEFERRED) {
+ states.push(ChangeStates.DEFERRED);
+ } else if (change.status === ChangeStatus.INTEGRATING) {
+ states.push(ChangeStates.INTEGRATING);
+ } else if (change.status === ChangeStatus.STAGED) {
+ states.push(ChangeStates.STAGED);
} else if (
change.mergeable === false ||
(opt_options && opt_options.mergeable === false)