UNPKG

terra-clinical-result

Version:

The Terra Clinical Result package is a collection of standardized views for presenting clinical results documented to a Patient's Medical Chart, such as Vital Signs, Laboratory Results, and Discretely Documented Values

90 lines (89 loc) 3.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _reactIntl = require("react-intl"); var _terraVisuallyHiddenText = _interopRequireDefault(require("terra-visually-hidden-text")); var _observationPropTypes = _interopRequireDefault(require("./proptypes/observationPropTypes")); var _Observation = _interopRequireDefault(require("./common/observation/_Observation")); var _ResultError = _interopRequireDefault(require("./common/other/_ResultError")); var _KnownNoData = _interopRequireDefault(require("./common/other/_KnownNoData")); var _utils = require("./common/utils"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var propTypes = { /** * Result for blood pressure */ result: _observationPropTypes.default, /** * Whether or not the unit of measure should be presented in a series of side-by-side columns of the same unit. */ hideUnit: _propTypes.default.bool, /** * Blood Pressure grouped result id */ id: _propTypes.default.string, /** * What type the display is */ type: _propTypes.default.string, /** * The cleaned unit of the diastolic display. */ diastolicUnit: _propTypes.default.string, /** * @private * The intl object to be injected for translations. */ intl: _propTypes.default.shape({ formatMessage: _propTypes.default.func }).isRequired }; var BloodPressureDisplay = function BloodPressureDisplay(_ref) { var _result$result, _result$result2; var result = _ref.result, hideUnit = _ref.hideUnit, id = _ref.id, type = _ref.type, diastolicUnit = _ref.diastolicUnit, intl = _ref.intl; var isValidValue = result === null || result === void 0 || (_result$result = result.result) === null || _result$result === void 0 ? void 0 : _result$result.value; var isUnitPresent = !hideUnit && (result === null || result === void 0 || (_result$result2 = result.result) === null || _result$result2 === void 0 ? void 0 : _result$result2.unit); if (!result) { return /*#__PURE__*/_react.default.createElement(_ResultError.default, { key: "Error-".concat(type, "-").concat(id) }); } if (result.noData) { return /*#__PURE__*/_react.default.createElement(_KnownNoData.default, { key: "NoData-".concat(type, "-").concat(id) }); } return /*#__PURE__*/_react.default.createElement(_utils.ConditionalWrapper, { key: "del-".concat(type, "-").concat(result.eventId), condition: result.statusInError, wrapper: function wrapper(children) { return /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement("s", { "aria-hidden": "true" }, children), isValidValue ? /*#__PURE__*/_react.default.createElement(_terraVisuallyHiddenText.default, { text: intl.formatMessage({ id: 'Terra.clinicalResult.statusInErrorStrikethrough' }, { strikethroughResult: "".concat(result.result.value, " ").concat(isUnitPresent ? result.result.unit : '') }) }) : null); } }, /*#__PURE__*/_react.default.createElement(_Observation.default, { key: "Observation-".concat(type, "-").concat(result.eventId), eventId: result.eventId, result: result.result, interpretation: !result.statusInError ? result.interpretation : null, isUnverified: result.isUnverified, hideUnit: hideUnit || result.cleanedUnit === diastolicUnit && !result.statusInError })); }; BloodPressureDisplay.propTypes = propTypes; var _default = exports.default = (0, _reactIntl.injectIntl)(BloodPressureDisplay);