react-healthy
Version:
Incrementally check and alert your users to the health of your APIs
16 lines (9 loc) • 1.65 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var css = require('@emotion/css');
var React = require('react');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
const DEFAULT_MESSAGES={ERROR:"Service Interruption",OPERATIONAL:"Operational"};function StatusRow(a){let{name:b,hasError:c,className:e="",messages:d}=a;const f=(null===d||void 0===d?void 0:d.error)||DEFAULT_MESSAGES.ERROR,g=(null===d||void 0===d?void 0:d.operational)||DEFAULT_MESSAGES.OPERATIONAL;return/*#__PURE__*/React__default["default"].createElement("div",{className:css.cx(rowStyles,e),"data-testid":"row"},/*#__PURE__*/React__default["default"].createElement("div",{className:infoStyles},/*#__PURE__*/React__default["default"].createElement("h4",null,b)),/*#__PURE__*/React__default["default"].createElement("div",{className:statusStyles},/*#__PURE__*/React__default["default"].createElement("span",{className:css.cx(indicatorStyles,c?"error":"ok")},c?f:g)))}const rowStyles=css.css({color:"#3d464d",padding:"10px 20px",display:"flex",fontFamily:"inherit",alignItems:"center",border:"1px solid #e0e0e0",borderTop:"none","&:last-child":{borderRadius:"0 0 4px 4px"},"&.first":{borderRadius:"4px 4px 0 0",borderTop:"1px solid #e0e0e0 !important"}}),infoStyles=css.css({flex:"2","& h4":{margin:"5px",textAlign:"left"}}),statusStyles=css.css({textAlign:"right",flex:"1"}),indicatorStyles=css.css({"&.ok":{color:"#2ecc71"},"&.error":{color:"#ef5350"}});
exports.StatusRow = StatusRow;
exports["default"] = StatusRow;