From a09f4d12d50cf56d7959df8c82303bfcc0de3efa Mon Sep 17 00:00:00 2001 From: Lukas Brabec Date: Jul 08 2020 09:57:22 +0000 Subject: ProposedBlocker badge, bug sort (proposed first) --- diff --git a/src/App.css b/src/App.css index 72754a8..d4008d8 100644 --- a/src/App.css +++ b/src/App.css @@ -199,3 +199,20 @@ html, body { .text-muted-more { color: #9facb8 !important; } + +.proposed-blocker { + +} + +.proposed-blocker .media i.fa { + color: #ffc107; +} + +.proposed-blocker a { +} + +.proposed-blocker .comments { +} + +.proposed-blocker small { +} diff --git a/src/components/Widget.js b/src/components/Widget.js index 0093dd9..5bfb820 100644 --- a/src/components/Widget.js +++ b/src/components/Widget.js @@ -7,9 +7,10 @@ import { Override } from "./WidgetItemOverride" import { Koschei } from "./WidgetItemKoschei" import { FTI } from "./WidgetItemFTI" import { Orphan } from "./WidgetItemOrphan" -import { OrphanBadge, FTBadge } from "./WidgetLayout" +import { OrphanBadge, FTBadge, BBBadge } from "./WidgetLayout" import $ from "jquery" import * as R from "ramda" +import * as moment from "moment" class Widget extends PureComponent { componentDidMount() { @@ -31,7 +32,12 @@ class Widget extends PureComponent { orphan, } = this.props - const bugs_items = bugs.map((bug) => ) + const bugs_items = R.sortWith([ + R.descend(bug => bug.keywords.includes("ProposedBlocker")? 1:0 + + bug.keywords.includes("AcceptedBlocker")? 1:0 + ), + R.descend(bug => moment.utc(bug.reported).unix()) + ], bugs).map((bug) => ) const updates_items = updates.map((update) => ( )) @@ -54,6 +60,7 @@ class Widget extends PureComponent { const fti_src = fti.map(f => R.keys(f.reason).includes("src")).some(R.identity) const ftbfs_badge = (fti_src || koschei.length > 0) ? FTBFS : null const fti_badge = fti_no_src.length > 0 ? FTI : null + const pb_badge = bugs.map(bug => bug.keywords.includes("ProposedBlocker")).some(R.identity)? Proposed Blocker : null return (
@@ -64,6 +71,7 @@ class Widget extends PureComponent { {orphan_badge} {ftbfs_badge} {fti_badge} + {pb_badge}
{ownershipIcon}
diff --git a/src/components/WidgetItemBug.js b/src/components/WidgetItemBug.js index 8c7a6d1..d03aa4a 100644 --- a/src/components/WidgetItemBug.js +++ b/src/components/WidgetItemBug.js @@ -27,9 +27,10 @@ const priority_severity_color = (ps) => { export class Bug extends PureComponent { render() { const reported = moment.utc(this.props.reported) + const isProposedB = this.props.keywords.includes("ProposedBlocker") return ( - + {this.props.title} @@ -42,7 +43,7 @@ export class Bug extends PureComponent { {this.props.status} - + {this.props.comments} {this.props.priority_severity === "unspecified" ? null : ( diff --git a/src/components/WidgetLayout.js b/src/components/WidgetLayout.js index 5edb294..49d8467 100644 --- a/src/components/WidgetLayout.js +++ b/src/components/WidgetLayout.js @@ -5,7 +5,7 @@ import * as moment from "moment" export class WidgetRow extends PureComponent { render() { return ( -
+
{this.props.children}
) @@ -103,7 +103,7 @@ export class WidgetIconDetail extends PureComponent { return (
@@ -141,6 +141,18 @@ export class FTBadge extends PureComponent { } } +export class BBBadge extends PureComponent { + render() { + return ( + + +  {this.props.children} + + + ) + } +} + export class WidgetChevron extends PureComponent { render() { return (