@ltht-react/diagnosis-summary 2.0.102 → 2.0.104

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
1
  import { FC, HTMLAttributes } from 'react';
2
2
  import { Condition } from '@ltht-react/types';
3
- declare const DiagnosisStatus: FC<Props>;
3
+ declare const DiagnosisDataSource: FC<Props>;
4
4
  interface Props extends HTMLAttributes<HTMLDivElement> {
5
5
  condition: Condition;
6
6
  enteredInError: boolean;
7
7
  }
8
- export default DiagnosisStatus;
8
+ export default DiagnosisDataSource;
@@ -32,20 +32,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
32
32
  var jsx_runtime_1 = require("react/jsx-runtime");
33
33
  var styled_1 = __importDefault(require("@emotion/styled"));
34
34
  var styles_1 = require("@ltht-react/styles");
35
- var utils_1 = require("@ltht-react/utils");
36
35
  var StyledConditionStatus = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n color: ", ";\n text-align: left;\n font-size: smaller;\n padding-top: 0.25rem;\n text-decoration: ", ";\n"], ["\n color: ", ";\n text-align: left;\n font-size: smaller;\n padding-top: 0.25rem;\n text-decoration: ", ";\n"])), styles_1.TEXT_COLOURS.SECONDARY.VALUE, function (_a) {
37
36
  var enteredInError = _a.enteredInError;
38
37
  return (enteredInError ? 'line-through' : 'none');
39
38
  });
40
- var DiagnosisStatus = function (_a) {
39
+ var extractDataSourceDisplayNames = function (condition) {
40
+ var dataSourceDisplayNames = [];
41
+ condition.metadata.dataSources.forEach(function (dataSource, _) {
42
+ if (dataSource === null || dataSource === void 0 ? void 0 : dataSource.display) {
43
+ dataSourceDisplayNames.push(dataSource.display);
44
+ }
45
+ });
46
+ return dataSourceDisplayNames.join(', ');
47
+ };
48
+ var DiagnosisDataSource = function (_a) {
41
49
  var condition = _a.condition, enteredInError = _a.enteredInError, rest = __rest(_a, ["condition", "enteredInError"]);
42
- var values = [];
43
- if (condition.clinicalStatus)
44
- values.push((0, utils_1.titleCase)(condition.clinicalStatus));
45
- if (condition.verificationStatus)
46
- values.push((0, utils_1.titleCase)(condition.verificationStatus));
47
- return ((0, jsx_runtime_1.jsx)(StyledConditionStatus, __assign({ enteredInError: enteredInError }, rest, { children: values.length > 0 ? values.join(' - ') : 'Insufficient data provided' })));
50
+ var dataSourceDisplayNames = extractDataSourceDisplayNames(condition);
51
+ return ((0, jsx_runtime_1.jsx)(StyledConditionStatus, __assign({ enteredInError: enteredInError }, rest, { children: "Source: ".concat(dataSourceDisplayNames) })));
48
52
  };
49
- exports.default = DiagnosisStatus;
53
+ exports.default = DiagnosisDataSource;
50
54
  var templateObject_1;
51
- //# sourceMappingURL=diagnosis-status.js.map
55
+ //# sourceMappingURL=diagnosis-data-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnosis-data-source.js","sourceRoot":"","sources":["../../src/atoms/diagnosis-data-source.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2DAAoC;AAEpC,6CAAiD;AAGjD,IAAM,qBAAqB,GAAG,gBAAM,CAAC,GAAG,sLAAoB,aACjD,EAA4B,6FAIlB,EAAkE,KACtF,KALU,qBAAY,CAAC,SAAS,CAAC,KAAK,EAIlB,UAAC,EAAkB;QAAhB,cAAc,oBAAA;IAAO,OAAA,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;AAA1C,CAA0C,CACtF,CAAA;AAED,IAAM,6BAA6B,GAAG,UAAC,SAAoB;IACzD,IAAM,sBAAsB,GAAa,EAAE,CAAA;IAE3C,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,UAAU,EAAE,CAAC;QACnD,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,OAAO,EAAE,CAAC;YACxB,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACjD,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,IAAM,mBAAmB,GAAc,UAAC,EAAsC;IAApC,IAAA,SAAS,eAAA,EAAE,cAAc,oBAAA,EAAK,IAAI,cAApC,+BAAsC,CAAF;IAC1E,IAAM,sBAAsB,GAAG,6BAA6B,CAAC,SAAS,CAAC,CAAA;IAEvE,OAAO,CACL,uBAAC,qBAAqB,aAAC,cAAc,EAAE,cAAc,IAAM,IAAI,cAC5D,kBAAW,sBAAsB,CAAE,IACd,CACzB,CAAA;AACH,CAAC,CAAA;AAWD,kBAAe,mBAAmB,CAAA"}
@@ -6,11 +6,12 @@ interface Props extends HTMLAttributes<HTMLDivElement> {
6
6
  condition: Condition;
7
7
  extendedTemplateDisplayName?: string | undefined;
8
8
  extensionTemplateDisplayName?: string | undefined;
9
- extensionClickHandler?(): void;
10
9
  isReadOnly: boolean;
11
10
  dateOnlyView?: boolean;
11
+ displaySource?: boolean;
12
12
  controls?: ButtonProps[];
13
13
  tags?: ReactElement[];
14
14
  canExtendDiagnosis?: boolean;
15
+ extensionClickHandler?(): void;
15
16
  }
16
17
  export default DiagnosisSummary;
@@ -40,6 +40,7 @@ var styles_1 = require("@ltht-react/styles");
40
40
  var diagnosis_title_1 = __importDefault(require("../atoms/diagnosis-title"));
41
41
  var diagnosis_onset_estimated_1 = __importDefault(require("../atoms/diagnosis-onset-estimated"));
42
42
  var diagnosis_redacted_1 = __importDefault(require("../molecules/diagnosis-redacted"));
43
+ var diagnosis_data_source_1 = __importDefault(require("../atoms/diagnosis-data-source"));
43
44
  var StyledTitle = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n"], ["\n display: inline-block;\n"])));
44
45
  var StyledSummary = styled_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n justify-content: center;\n"], ["\n display: flex;\n justify-content: center;\n"])));
45
46
  var StyledDescription = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n flex-grow: 1;\n"], ["\n flex-grow: 1;\n"])));
@@ -50,12 +51,12 @@ var StyledDate = styled_1.default.div(templateObject_7 || (templateObject_7 = __
50
51
  var IconButtonWrapper = (0, styled_1.default)(button_1.Button)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n -webkit-box-align: center;\n align-items: center;\n -webkit-box-pack: center;\n justify-content: center;\n margin-right: 0.5rem;\n display: inline-block !important;\n margin-left: 0.5rem;\n width: auto;\n"], ["\n -webkit-box-align: center;\n align-items: center;\n -webkit-box-pack: center;\n justify-content: center;\n margin-right: 0.5rem;\n display: inline-block !important;\n margin-left: 0.5rem;\n width: auto;\n"])));
51
52
  var IconWrapper = styled_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n margin-left: 0.5rem;\n display: inline-block;\n"], ["\n margin-left: 0.5rem;\n display: inline-block;\n"])));
52
53
  var DiagnosisSummary = function (_a) {
53
- var condition = _a.condition, extendedTemplateDisplayName = _a.extendedTemplateDisplayName, extensionTemplateDisplayName = _a.extensionTemplateDisplayName, extensionClickHandler = _a.extensionClickHandler, _b = _a.isReadOnly, isReadOnly = _b === void 0 ? false : _b, _c = _a.dateOnlyView, dateOnlyView = _c === void 0 ? false : _c, _d = _a.canExtendDiagnosis, canExtendDiagnosis = _d === void 0 ? false : _d, _e = _a.controls, controls = _e === void 0 ? [] : _e, _f = _a.tags, tags = _f === void 0 ? [] : _f, rest = __rest(_a, ["condition", "extendedTemplateDisplayName", "extensionTemplateDisplayName", "extensionClickHandler", "isReadOnly", "dateOnlyView", "canExtendDiagnosis", "controls", "tags"]);
54
+ var condition = _a.condition, extendedTemplateDisplayName = _a.extendedTemplateDisplayName, extensionTemplateDisplayName = _a.extensionTemplateDisplayName, extensionClickHandler = _a.extensionClickHandler, _b = _a.isReadOnly, isReadOnly = _b === void 0 ? false : _b, _c = _a.dateOnlyView, dateOnlyView = _c === void 0 ? false : _c, _d = _a.canExtendDiagnosis, canExtendDiagnosis = _d === void 0 ? false : _d, _e = _a.displaySource, displaySource = _e === void 0 ? false : _e, _f = _a.controls, controls = _f === void 0 ? [] : _f, _g = _a.tags, tags = _g === void 0 ? [] : _g, rest = __rest(_a, ["condition", "extendedTemplateDisplayName", "extensionTemplateDisplayName", "extensionClickHandler", "isReadOnly", "dateOnlyView", "canExtendDiagnosis", "displaySource", "controls", "tags"]);
54
55
  if (condition.metadata.isRedacted) {
55
56
  return ((0, jsx_runtime_1.jsx)(StyledSummary, __assign({}, rest, { children: (0, jsx_runtime_1.jsx)(diagnosis_redacted_1.default, { condition: condition }) })));
56
57
  }
57
58
  var enteredInError = condition.verificationStatus === types_1.ConditionVerificationStatus.EnteredInError;
58
- return ((0, jsx_runtime_1.jsxs)(StyledSummary, __assign({}, rest, { children: [(0, jsx_runtime_1.jsxs)(StyledLeftContainer, { children: [(0, jsx_runtime_1.jsxs)(StyledDescription, { children: [(0, jsx_runtime_1.jsx)(StyledTitle, { children: (0, jsx_runtime_1.jsx)(diagnosis_title_1.default, { enteredInError: enteredInError, condition: condition }) }), extensionTemplateDisplayName && !isReadOnly && canExtendDiagnosis && !enteredInError && ((0, jsx_runtime_1.jsx)(IconButtonWrapper, { onClick: extensionClickHandler, type: "button", styling: { buttonStyle: 'clear' }, value: "", icon: (0, jsx_runtime_1.jsx)(icon_1.default, { type: "folder-plus", size: "medium" }), iconPlacement: "center", iconColour: styles_1.BTN_COLOURS.PRIMARY.VALUE, title: "This diagnosis can be extended further using form '".concat(extensionTemplateDisplayName, "' by clicking here") })), extendedTemplateDisplayName && ((0, jsx_runtime_1.jsx)(IconWrapper, { children: (0, jsx_runtime_1.jsx)(icon_1.default, { type: "comment", size: "medium", title: "This diagnosis has been extended beyond standard diagnosis with form '".concat(extendedTemplateDisplayName, "'.\n To view these extra details, click into the full diagnosis detail or edit the existing form.") }) }))] }), tags.length > 0 && ((0, jsx_runtime_1.jsx)(StyledResponsiveContainer, { children: tags === null || tags === void 0 ? void 0 : tags.map(function (tag, index) { return (tag.key ? tag : (0, react_1.cloneElement)(tag, { key: index })); }) })), !isReadOnly && controls.length > 0 && ((0, jsx_runtime_1.jsx)(StyledResponsiveContainer, { children: controls.map(function (props, index) { return ((0, jsx_runtime_1.jsx)(StyledButton, __assign({}, props), index)); }) }))] }), (0, jsx_runtime_1.jsxs)(StyledDate, { children: [(0, jsx_runtime_1.jsx)(type_summary_1.DateSummary, { enteredInError: enteredInError, datetime: condition === null || condition === void 0 ? void 0 : condition.assertedDate, dateOnlyView: dateOnlyView }), (0, jsx_runtime_1.jsx)(diagnosis_onset_estimated_1.default, { enteredInError: enteredInError, condition: condition })] })] })));
59
+ return ((0, jsx_runtime_1.jsxs)(StyledSummary, __assign({}, rest, { children: [(0, jsx_runtime_1.jsxs)(StyledLeftContainer, { children: [(0, jsx_runtime_1.jsxs)(StyledDescription, { children: [(0, jsx_runtime_1.jsx)(StyledTitle, { children: (0, jsx_runtime_1.jsx)(diagnosis_title_1.default, { enteredInError: enteredInError, condition: condition }) }), extensionTemplateDisplayName && !isReadOnly && canExtendDiagnosis && !enteredInError && ((0, jsx_runtime_1.jsx)(IconButtonWrapper, { onClick: extensionClickHandler, type: "button", styling: { buttonStyle: 'clear' }, value: "", icon: (0, jsx_runtime_1.jsx)(icon_1.default, { type: "folder-plus", size: "medium" }), iconPlacement: "center", iconColour: styles_1.BTN_COLOURS.PRIMARY.VALUE, title: "This diagnosis can be extended further using form '".concat(extensionTemplateDisplayName, "' by clicking here") })), extendedTemplateDisplayName && ((0, jsx_runtime_1.jsx)(IconWrapper, { children: (0, jsx_runtime_1.jsx)(icon_1.default, { type: "comment", size: "medium", title: "This diagnosis has been extended beyond standard diagnosis with form '".concat(extendedTemplateDisplayName, "'.\n To view these extra details, click into the full diagnosis detail or edit the existing form.") }) })), displaySource && (0, jsx_runtime_1.jsx)(diagnosis_data_source_1.default, { condition: condition, enteredInError: enteredInError })] }), tags.length > 0 && ((0, jsx_runtime_1.jsx)(StyledResponsiveContainer, { children: tags === null || tags === void 0 ? void 0 : tags.map(function (tag, index) { return (tag.key ? tag : (0, react_1.cloneElement)(tag, { key: index })); }) })), !isReadOnly && controls.length > 0 && ((0, jsx_runtime_1.jsx)(StyledResponsiveContainer, { children: controls.map(function (props, index) { return ((0, jsx_runtime_1.jsx)(StyledButton, __assign({}, props), index)); }) }))] }), (0, jsx_runtime_1.jsxs)(StyledDate, { children: [(0, jsx_runtime_1.jsx)(type_summary_1.DateSummary, { enteredInError: enteredInError, datetime: condition === null || condition === void 0 ? void 0 : condition.assertedDate, dateOnlyView: dateOnlyView }), (0, jsx_runtime_1.jsx)(diagnosis_onset_estimated_1.default, { enteredInError: enteredInError, condition: condition })] })] })));
59
60
  };
60
61
  exports.default = DiagnosisSummary;
61
62
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
@@ -1 +1 @@
1
- {"version":3,"file":"diagnosis-summary.js","sourceRoot":"","sources":["../../src/organisms/diagnosis-summary.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnosis-summary.js","sourceRoot":"","sources":["../../src/organisms/diagnosis-summary.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ltht-react/diagnosis-summary",
3
- "version": "2.0.102",
3
+ "version": "2.0.104",
4
4
  "description": "ltht-react clinical DiagnosisSummary component.",
5
5
  "author": "LTHT",
6
6
  "homepage": "",
@@ -28,15 +28,15 @@
28
28
  "dependencies": {
29
29
  "@emotion/react": "^11.0.0",
30
30
  "@emotion/styled": "^11.0.0",
31
- "@ltht-react/button": "^2.0.102",
32
- "@ltht-react/hooks": "^2.0.102",
33
- "@ltht-react/icon": "^2.0.102",
34
- "@ltht-react/list": "^2.0.102",
35
- "@ltht-react/styles": "^2.0.102",
36
- "@ltht-react/type-summary": "^2.0.102",
37
- "@ltht-react/types": "^2.0.102",
38
- "@ltht-react/utils": "^2.0.102",
31
+ "@ltht-react/button": "^2.0.104",
32
+ "@ltht-react/hooks": "^2.0.104",
33
+ "@ltht-react/icon": "^2.0.104",
34
+ "@ltht-react/list": "^2.0.104",
35
+ "@ltht-react/styles": "^2.0.104",
36
+ "@ltht-react/type-summary": "^2.0.104",
37
+ "@ltht-react/types": "^2.0.104",
38
+ "@ltht-react/utils": "^2.0.104",
39
39
  "react": "^18.2.0"
40
40
  },
41
- "gitHead": "307fc15f4ea73306c286e9633c310148afe251d2"
41
+ "gitHead": "17a2dfa58441c97354c65541ff18a5db4e3e26d3"
42
42
  }
@@ -3,7 +3,6 @@ import styled from '@emotion/styled'
3
3
 
4
4
  import { TEXT_COLOURS } from '@ltht-react/styles'
5
5
  import { Condition } from '@ltht-react/types'
6
- import { titleCase } from '@ltht-react/utils'
7
6
 
8
7
  const StyledConditionStatus = styled.div<IStyledDescription>`
9
8
  color: ${TEXT_COLOURS.SECONDARY.VALUE};
@@ -13,15 +12,24 @@ const StyledConditionStatus = styled.div<IStyledDescription>`
13
12
  text-decoration: ${({ enteredInError }) => (enteredInError ? 'line-through' : 'none')};
14
13
  `
15
14
 
16
- const DiagnosisStatus: FC<Props> = ({ condition, enteredInError, ...rest }) => {
17
- const values = []
15
+ const extractDataSourceDisplayNames = (condition: Condition) => {
16
+ const dataSourceDisplayNames: string[] = []
18
17
 
19
- if (condition.clinicalStatus) values.push(titleCase(condition.clinicalStatus))
20
- if (condition.verificationStatus) values.push(titleCase(condition.verificationStatus))
18
+ condition.metadata.dataSources.forEach((dataSource, _) => {
19
+ if (dataSource?.display) {
20
+ dataSourceDisplayNames.push(dataSource.display)
21
+ }
22
+ })
23
+
24
+ return dataSourceDisplayNames.join(', ')
25
+ }
26
+
27
+ const DiagnosisDataSource: FC<Props> = ({ condition, enteredInError, ...rest }) => {
28
+ const dataSourceDisplayNames = extractDataSourceDisplayNames(condition)
21
29
 
22
30
  return (
23
31
  <StyledConditionStatus enteredInError={enteredInError} {...rest}>
24
- {values.length > 0 ? values.join(' - ') : 'Insufficient data provided'}
32
+ {`Source: ${dataSourceDisplayNames}`}
25
33
  </StyledConditionStatus>
26
34
  )
27
35
  }
@@ -35,4 +43,4 @@ interface IStyledDescription {
35
43
  enteredInError: boolean
36
44
  }
37
45
 
38
- export default DiagnosisStatus
46
+ export default DiagnosisDataSource
@@ -10,6 +10,7 @@ import { BTN_COLOURS, MOBILE_MAXIMUM_MEDIA_QUERY, SMALL_SCREEN_MAXIMUM_MEDIA_QUE
10
10
  import Title from '../atoms/diagnosis-title'
11
11
  import OnsetDateEstimated from '../atoms/diagnosis-onset-estimated'
12
12
  import Redacted from '../molecules/diagnosis-redacted'
13
+ import DiagnosisDataSource from '../atoms/diagnosis-data-source'
13
14
 
14
15
  const StyledTitle = styled.div`
15
16
  display: inline-block;
@@ -101,6 +102,7 @@ const DiagnosisSummary: FC<Props> = ({
101
102
  isReadOnly = false,
102
103
  dateOnlyView = false,
103
104
  canExtendDiagnosis = false,
105
+ displaySource = false,
104
106
  controls = [],
105
107
  tags = [],
106
108
  ...rest
@@ -144,6 +146,8 @@ const DiagnosisSummary: FC<Props> = ({
144
146
  />
145
147
  </IconWrapper>
146
148
  )}
149
+
150
+ {displaySource && <DiagnosisDataSource condition={condition} enteredInError={enteredInError} />}
147
151
  </StyledDescription>
148
152
 
149
153
  {tags.length > 0 && (
@@ -172,12 +176,14 @@ interface Props extends HTMLAttributes<HTMLDivElement> {
172
176
  condition: Condition
173
177
  extendedTemplateDisplayName?: string | undefined
174
178
  extensionTemplateDisplayName?: string | undefined
175
- extensionClickHandler?(): void
176
179
  isReadOnly: boolean
177
180
  dateOnlyView?: boolean
181
+ displaySource?: boolean
178
182
  controls?: ButtonProps[]
179
183
  tags?: ReactElement[]
180
184
  canExtendDiagnosis?: boolean
185
+
186
+ extensionClickHandler?(): void
181
187
  }
182
188
 
183
189
  export default DiagnosisSummary
@@ -1 +0,0 @@
1
- {"version":3,"file":"diagnosis-status.js","sourceRoot":"","sources":["../../src/atoms/diagnosis-status.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2DAAoC;AAEpC,6CAAiD;AAEjD,2CAA6C;AAE7C,IAAM,qBAAqB,GAAG,gBAAM,CAAC,GAAG,sLAAoB,aACjD,EAA4B,6FAIlB,EAAkE,KACtF,KALU,qBAAY,CAAC,SAAS,CAAC,KAAK,EAIlB,UAAC,EAAkB;QAAhB,cAAc,oBAAA;IAAO,OAAA,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;AAA1C,CAA0C,CACtF,CAAA;AAED,IAAM,eAAe,GAAc,UAAC,EAAsC;IAApC,IAAA,SAAS,eAAA,EAAE,cAAc,oBAAA,EAAK,IAAI,cAApC,+BAAsC,CAAF;IACtE,IAAM,MAAM,GAAG,EAAE,CAAA;IAEjB,IAAI,SAAS,CAAC,cAAc;QAAE,MAAM,CAAC,IAAI,CAAC,IAAA,iBAAS,EAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAA;IAC9E,IAAI,SAAS,CAAC,kBAAkB;QAAE,MAAM,CAAC,IAAI,CAAC,IAAA,iBAAS,EAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAEtF,OAAO,CACL,uBAAC,qBAAqB,aAAC,cAAc,EAAE,cAAc,IAAM,IAAI,cAC5D,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,4BAA4B,IAChD,CACzB,CAAA;AACH,CAAC,CAAA;AAWD,kBAAe,eAAe,CAAA"}