2015-10-02 06:10:00 +00:00
|
|
|
/* 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/. */
|
|
|
|
|
2016-02-21 21:59:12 +00:00
|
|
|
/* global React */
|
2015-10-02 06:10:00 +00:00
|
|
|
|
|
|
|
"use strict";
|
|
|
|
|
2016-02-23 01:00:51 +00:00
|
|
|
const Services = require("Services");
|
|
|
|
|
|
|
|
const React = require("devtools/client/shared/vendor/react");
|
|
|
|
const { Target } = require("./target");
|
2015-10-02 06:10:00 +00:00
|
|
|
|
|
|
|
const Strings = Services.strings.createBundle(
|
2015-11-04 21:35:53 +00:00
|
|
|
"chrome://devtools/locale/aboutdebugging.properties");
|
2016-02-23 01:00:51 +00:00
|
|
|
|
2015-10-02 06:10:00 +00:00
|
|
|
const LocaleCompare = (a, b) => {
|
|
|
|
return a.name.toLowerCase().localeCompare(b.name.toLowerCase());
|
|
|
|
};
|
|
|
|
|
2016-02-21 21:59:12 +00:00
|
|
|
exports.TargetList = React.createClass({
|
|
|
|
displayName: "TargetList",
|
2015-10-02 06:10:00 +00:00
|
|
|
|
|
|
|
render() {
|
2016-02-04 20:58:02 +00:00
|
|
|
let { client, debugDisabled } = this.props;
|
2015-10-02 06:10:00 +00:00
|
|
|
let targets = this.props.targets.sort(LocaleCompare).map(target => {
|
2016-02-21 21:59:12 +00:00
|
|
|
return React.createElement(Target, { client, target, debugDisabled });
|
2015-10-02 06:10:00 +00:00
|
|
|
});
|
|
|
|
return (
|
2015-12-03 14:42:34 +00:00
|
|
|
React.createElement("div", { id: this.props.id, className: "targets" },
|
2015-10-02 06:10:00 +00:00
|
|
|
React.createElement("h4", null, this.props.name),
|
|
|
|
targets.length > 0 ? targets :
|
|
|
|
React.createElement("p", null, Strings.GetStringFromName("nothing"))
|
|
|
|
)
|
|
|
|
);
|
|
|
|
},
|
|
|
|
});
|