coolant
Version:
The modular build radiator
33 lines (32 loc) • 1.43 kB
JavaScript
;
var _a, _b;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var react_1 = tslib_1.__importDefault(require("react"));
var fa_1 = require("react-icons/fa");
var Style_1 = require("../../util/Style");
var model_1 = require("../../model");
var Card_1 = require("./generic/Card");
var styled_1 = require("../styled");
var statusColorMap = (_a = {},
_a[model_1.BuildStatus.Passed] = Style_1.Style.color.state.success,
_a[model_1.BuildStatus.Running] = Style_1.Style.color.state.inProgress,
_a[model_1.BuildStatus.Failed] = Style_1.Style.color.state.failed,
_a);
var statusGlyphMap = (_b = {},
_b[model_1.BuildStatus.Passed] = react_1.default.createElement(fa_1.FaCheck, null),
_b[model_1.BuildStatus.Running] = react_1.default.createElement(fa_1.FaClock, null),
_b[model_1.BuildStatus.Failed] = react_1.default.createElement(fa_1.FaExclamation, null),
_b);
var Name = styled_1.styled("div", function () { return ({
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}); });
exports.BuildCardPresenter = function (_a) {
var name = _a.name, status = _a.status, scaleFactor = _a.scaleFactor;
return react_1.default.createElement(Card_1.Card, { color: statusColorMap[status], scaleFactor: scaleFactor },
react_1.default.createElement(Name, null, name),
" ",
statusGlyphMap[status]);
};