aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/js/components/issue
diff options
context:
space:
mode:
authorPascal Mugnier <pascal.mugnier@sonarsource.com>2018-04-18 16:09:17 +0200
committerSonarTech <sonartech@sonarsource.com>2018-04-26 20:20:52 +0200
commit4c9a714da9a988f779652f43e53bf2dc23d8cbeb (patch)
tree93fcdb97aa981063d84ef5322865266398dc527d /server/sonar-web/src/main/js/components/issue
parent9c04ec39f96d56889bd5a7570d4728f82046b1df (diff)
downloadsonarqube-4c9a714da9a988f779652f43e53bf2dc23d8cbeb.tar.gz
sonarqube-4c9a714da9a988f779652f43e53bf2dc23d8cbeb.zip
Feature/pm/sonar 10554 display issues from external engine (#155)
Diffstat (limited to 'server/sonar-web/src/main/js/components/issue')
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueMessage.js16
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js11
-rw-r--r--server/sonar-web/src/main/js/components/issue/types.js1
3 files changed, 22 insertions, 6 deletions
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueMessage.js b/server/sonar-web/src/main/js/components/issue/components/IssueMessage.js
index 515edd9b3ba..888d7f2d521 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueMessage.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueMessage.js
@@ -20,13 +20,15 @@
// @flow
import React from 'react';
import PropTypes from 'prop-types';
-import { translate } from '../../../helpers/l10n';
+import Tooltip from '../../controls/Tooltip';
+import { translate, translateWithParameters } from '../../../helpers/l10n';
export default class IssueMessage extends React.PureComponent {
/*:: props: {
+ engine?: string;
message: string,
- rule: string,
- organization: string
+ organization: string,
+ rule: string
};
*/
@@ -52,6 +54,14 @@ export default class IssueMessage extends React.PureComponent {
aria-label={translate('issue.rule_details')}
onClick={this.handleClick}
/>
+ {this.props.engine && (
+ <Tooltip
+ overlay={translateWithParameters('issue.from_external_rule_engine', this.props.engine)}>
+ <div className="outline-badge badge-tiny-height spacer-left vertical-text-top">
+ {this.props.engine}
+ </div>
+ </Tooltip>
+ )}
</div>
);
}
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js b/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
index 3dbe2919e6e..0dad342b1b5 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
@@ -75,7 +75,12 @@ export default function IssueTitleBar(props /*: Props */) {
return (
<div className="issue-row">
- <IssueMessage message={issue.message} rule={issue.rule} organization={issue.organization} />
+ <IssueMessage
+ engine={issue.externalRuleEngine}
+ message={issue.message}
+ organization={issue.organization}
+ rule={issue.rule}
+ />
<div className="issue-row-meta">
<ul className="list-inline issue-meta-list">
@@ -84,8 +89,8 @@ export default function IssueTitleBar(props /*: Props */) {
creationDate={issue.creationDate}
isOpen={props.currentPopup === 'changelog'}
issue={issue}
- togglePopup={props.togglePopup}
onFail={props.onFail}
+ togglePopup={props.togglePopup}
/>
</li>
{issue.textRange != null && (
@@ -120,9 +125,9 @@ export default function IssueTitleBar(props /*: Props */) {
<SimilarIssuesFilter
isOpen={props.currentPopup === 'similarIssues'}
issue={issue}
- togglePopup={props.togglePopup}
onFail={props.onFail}
onFilter={props.onFilter}
+ togglePopup={props.togglePopup}
/>
</li>
)}
diff --git a/server/sonar-web/src/main/js/components/issue/types.js b/server/sonar-web/src/main/js/components/issue/types.js
index 6b0ee3a90af..2a5ce7ed3fa 100644
--- a/server/sonar-web/src/main/js/components/issue/types.js
+++ b/server/sonar-web/src/main/js/components/issue/types.js
@@ -65,6 +65,7 @@ export type Issue = {
componentUuid: string,
creationDate: string,
effort?: string,
+ externalRuleEngine?: string,
key: string,
flows: Array<Array<FlowLocation>>,
line?: number,