1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
// React
const { Component } = require("devtools/client/shared/vendor/react");
const { span } = require("devtools/client/shared/vendor/react-dom-factories");
const PropTypes = require("devtools/client/shared/vendor/react-prop-types");
class Badge extends Component {
static get propTypes() {
return {
score: PropTypes.string.isRequired,
label: PropTypes.string.isRequired,
ariaLabel: PropTypes.string,
tooltip: PropTypes.string,
};
}
render() {
const { score, label, ariaLabel, tooltip } = this.props;
return span(
{
className: `audit-badge badge`,
"data-score": score,
title: tooltip,
"aria-label": ariaLabel || label,
},
label
);
}
}
module.exports = Badge;
|