fhir-react 0.3.5 → 0.3.8
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.
- package/.circleci/config.yml +1 -1
- package/.eslintrc +10 -1
- package/.stylelintrc +6 -2
- package/README.md +19 -1
- package/build/index.js +15 -11
- package/build/style.css +9 -8
- package/package.json +55 -54
- package/src/assets/containers/AdverseEvent/adverse-event.svg +6 -0
- package/src/assets/containers/Coverage/coverage.svg +4 -0
- package/src/assets/containers/{ResourceCategory/resource-placeholder.svg → Generic/generic.svg} +0 -0
- package/src/assets/containers/MedicationDispense/medication-dispense.svg +5 -0
- package/src/assets/containers/MedicationOrder/medication-order.svg +5 -0
- package/src/assets/containers/MedicationRequest/medication-request.svg +5 -0
- package/src/assets/containers/Organization/organization.svg +5 -0
- package/src/assets/containers/PractitionerRole/practitioner-role.svg +5 -0
- package/src/assets/containers/ReferralRequest/referral-request.svg +8 -0
- package/src/assets/containers/RelatedPerson/related-person.svg +6 -0
- package/src/assets/containers/ResourceCategory/resource-category.svg +3 -0
- package/src/components/containers/Accordion/Accordion.js +21 -13
- package/src/components/datatypes/Attachment/Attachment.css +5 -0
- package/src/components/datatypes/Attachment/Attachment.js +7 -2
- package/src/components/datatypes/CodeableConcept/CodeableConcept.js +6 -3
- package/src/components/datatypes/Coding/Coding.js +7 -3
- package/src/components/datatypes/Identifier/Identifier.js +7 -3
- package/src/components/datatypes/Reference/Reference.js +7 -1
- package/src/components/datatypes/Telecom/Telecom.js +2 -3
- package/src/components/resources/AdverseEvent/AdverseEvent.js +81 -42
- package/src/components/resources/AdverseEvent/AdverseEvent.stories.js +12 -2
- package/src/components/resources/AdverseEvent/AdverseEvent.test.js +109 -2
- package/src/components/resources/AllergyIntolerance/AllergyIntolerance.js +9 -5
- package/src/components/resources/AllergyIntolerance/AllergyIntolerance.stories.js +5 -4
- package/src/components/resources/AllergyIntolerance/AllergyIntolerance.test.js +107 -1
- package/src/components/resources/Appointment/Appointment.js +2 -1
- package/src/components/resources/Appointment/Appointment.test.js +36 -1
- package/src/components/resources/Binary/Binary.js +1 -2
- package/src/components/resources/Binary/Binary.stories.js +10 -4
- package/src/components/resources/Binary/Binary.test.js +67 -0
- package/src/components/resources/Bundle/Bundle.css +7 -0
- package/src/components/resources/Bundle/Bundle.js +15 -11
- package/src/components/resources/Bundle/Bundle.stories.js +12 -78
- package/src/components/resources/Bundle/Bundle.test.js +0 -3
- package/src/components/resources/CarePlan/CarePlan.js +2 -1
- package/src/components/resources/CarePlan/CarePlan.stories.js +31 -5
- package/src/components/resources/CarePlan/CarePlan.test.js +114 -6
- package/src/components/resources/CareTeam/CareTeam.js +72 -50
- package/src/components/resources/CareTeam/CareTeam.stories.js +20 -3
- package/src/components/resources/CareTeam/CareTeam.test.js +109 -1
- package/src/components/resources/CareTeam/CareTeamParticipants.js +1 -1
- package/src/components/resources/Claim/CareTeam.js +55 -0
- package/src/components/resources/Claim/Claim.css +2 -11
- package/src/components/resources/Claim/Claim.js +158 -309
- package/src/components/resources/Claim/Claim.stories.js +37 -5
- package/src/components/resources/Claim/Claim.test.js +104 -1
- package/src/components/resources/Claim/Diagnosis.js +61 -0
- package/src/components/resources/Claim/Insurance.js +58 -0
- package/src/components/resources/Claim/Item.js +79 -0
- package/src/components/resources/Claim/Items.js +29 -0
- package/src/components/resources/ClaimResponse/AddedItem.js +61 -11
- package/src/components/resources/ClaimResponse/AddedItems.js +5 -9
- package/src/components/resources/ClaimResponse/ClaimResponse.js +137 -83
- package/src/components/resources/ClaimResponse/ClaimResponse.stories.js +15 -2
- package/src/components/resources/ClaimResponse/ClaimResponse.test.js +112 -1
- package/src/components/resources/ClaimResponse/Item.js +44 -9
- package/src/components/resources/ClaimResponse/Items.js +5 -4
- package/src/components/resources/Condition/Condition.js +3 -3
- package/src/components/resources/Condition/Condition.test.js +37 -4
- package/src/components/resources/Coverage/Coverage.js +97 -69
- package/src/components/resources/Coverage/Coverage.stories.js +31 -5
- package/src/components/resources/Coverage/Coverage.test.js +111 -4
- package/src/components/resources/Device/Device.js +2 -1
- package/src/components/resources/Device/Device.stories.js +33 -5
- package/src/components/resources/Device/Device.test.js +108 -1
- package/src/components/resources/DiagnosticReport/DiagnosticReport.js +7 -2
- package/src/components/resources/DiagnosticReport/DiagnosticReport.stories.js +5 -4
- package/src/components/resources/DiagnosticReport/DiagnosticReport.test.js +107 -1
- package/src/components/resources/DocumentReference/DocumentReference.js +7 -2
- package/src/components/resources/DocumentReference/DocumentReference.stories.js +3 -2
- package/src/components/resources/DocumentReference/DocumentReference.test.js +113 -1
- package/src/components/resources/Encounter/Encounter.js +2 -1
- package/src/components/resources/Encounter/Encounter.test.js +36 -1
- package/src/components/resources/ExplanationOfBenefit/ExplanationOfBenefit.js +2 -0
- package/src/components/resources/ExplanationOfBenefit/ExplanationOfBenefit.test.js +38 -1
- package/src/components/resources/FamilyMemberHistory/FamilyMemberHistory.js +7 -2
- package/src/components/resources/FamilyMemberHistory/FamilyMemberHistory.stories.js +3 -2
- package/src/components/resources/FamilyMemberHistory/FamilyMemberHistory.test.js +108 -1
- package/src/components/resources/Generic/Generic.js +20 -7
- package/src/components/resources/Generic/Generic.stories.js +2 -1
- package/src/components/resources/Generic/Generic.test.js +26 -7
- package/src/components/resources/Goal/Goal.js +3 -5
- package/src/components/resources/Goal/Goal.stories.js +5 -4
- package/src/components/resources/Goal/Goal.test.js +101 -1
- package/src/components/resources/Immunization/Immunization.js +2 -2
- package/src/components/resources/Immunization/Immunization.test.js +36 -1
- package/src/components/resources/List/DrugTierDefinitionExtension.js +79 -35
- package/src/components/resources/List/Entries.js +3 -3
- package/src/components/resources/List/List.js +135 -88
- package/src/components/resources/List/List.stories.js +38 -5
- package/src/components/resources/List/List.test.js +105 -1
- package/src/components/resources/Location/Location.js +65 -47
- package/src/components/resources/Location/Location.stories.js +11 -4
- package/src/components/resources/Location/Location.test.js +106 -4
- package/src/components/resources/Medication/Medication.js +91 -51
- package/src/components/resources/Medication/Medication.stories.js +37 -7
- package/src/components/resources/Medication/Medication.test.js +113 -4
- package/src/components/resources/MedicationAdministration/MedicationAdministration.js +86 -62
- package/src/components/resources/MedicationAdministration/MedicationAdministration.stories.js +7 -0
- package/src/components/resources/MedicationAdministration/MedicationAdministration.test.js +117 -1
- package/src/components/resources/MedicationDispense/DosageInstruction.js +25 -0
- package/src/components/resources/MedicationDispense/MedicationDispense.js +68 -68
- package/src/components/resources/MedicationDispense/MedicationDispense.stories.js +7 -0
- package/src/components/resources/MedicationDispense/MedicationDispense.test.js +108 -1
- package/src/components/resources/MedicationKnowledge/MedicationKnowledge.js +115 -66
- package/src/components/resources/MedicationKnowledge/MedicationKnowledge.stories.js +6 -0
- package/src/components/resources/MedicationKnowledge/MedicationKnowledge.test.js +110 -1
- package/src/components/resources/MedicationOrder/MedicationOrder.js +3 -4
- package/src/components/resources/MedicationOrder/MedicationOrder.stories.js +1 -2
- package/src/components/resources/MedicationOrder/MedicationOrder.test.js +102 -4
- package/src/components/resources/MedicationRequest/MedicationRequest.js +3 -4
- package/src/components/resources/MedicationRequest/MedicationRequest.stories.js +11 -6
- package/src/components/resources/MedicationRequest/MedicationRequest.test.js +100 -4
- package/src/components/resources/MedicationStatement/MedicationDosage.js +2 -2
- package/src/components/resources/MedicationStatement/MedicationStatement.js +8 -2
- package/src/components/resources/MedicationStatement/MedicationStatement.stories.js +5 -4
- package/src/components/resources/MedicationStatement/MedicationStatement.test.js +108 -1
- package/src/components/resources/Observation/Observation.js +2 -1
- package/src/components/resources/Observation/Observation.test.js +30 -1
- package/src/components/resources/Organization/Organization.js +56 -37
- package/src/components/resources/Organization/Organization.stories.js +15 -2
- package/src/components/resources/Organization/Organization.test.js +109 -1
- package/src/components/resources/Patient/Patient.js +2 -0
- package/src/components/resources/Patient/Patient.test.js +31 -2
- package/src/components/resources/Practitioner/Practitioner.js +2 -1
- package/src/components/resources/Practitioner/Practitioner.test.js +36 -1
- package/src/components/resources/PractitionerRole/PractitionerRole.js +50 -29
- package/src/components/resources/PractitionerRole/PractitionerRole.stories.js +7 -0
- package/src/components/resources/PractitionerRole/PractitionerRole.test.js +108 -1
- package/src/components/resources/Procedure/Procedure.js +2 -2
- package/src/components/resources/Procedure/Procedure.test.js +30 -1
- package/src/components/resources/Questionnaire/Group.js +53 -0
- package/src/components/resources/Questionnaire/Items.js +45 -0
- package/src/components/resources/Questionnaire/Questionnaire.css +24 -5
- package/src/components/resources/Questionnaire/Questionnaire.js +31 -170
- package/src/components/resources/Questionnaire/Questionnaire.stories.js +8 -0
- package/src/components/resources/Questionnaire/Questionnaire.test.js +194 -15
- package/src/components/resources/Questionnaire/Questions.js +40 -0
- package/src/components/resources/Questionnaire/getQuestionText.js +20 -0
- package/src/components/resources/QuestionnaireResponse/Answers.js +59 -0
- package/src/components/resources/QuestionnaireResponse/Group.js +70 -0
- package/src/components/resources/QuestionnaireResponse/Items.js +45 -0
- package/src/components/resources/QuestionnaireResponse/QuestionnaireResponse.css +33 -8
- package/src/components/resources/QuestionnaireResponse/QuestionnaireResponse.js +52 -236
- package/src/components/resources/QuestionnaireResponse/QuestionnaireResponse.stories.js +8 -0
- package/src/components/resources/QuestionnaireResponse/QuestionnaireResponse.test.js +38 -3
- package/src/components/resources/QuestionnaireResponse/Questions.js +43 -0
- package/src/components/resources/QuestionnaireResponse/getQuestionText.js +22 -0
- package/src/components/resources/ReferralRequest/ReferralRequest.js +65 -40
- package/src/components/resources/ReferralRequest/ReferralRequest.test.js +111 -11
- package/src/components/resources/RelatedPerson/RelatedPerson.js +151 -0
- package/src/components/resources/RelatedPerson/RelatedPerson.stories.js +46 -0
- package/src/components/resources/RelatedPerson/RelatedPerson.test.js +156 -0
- package/src/components/resources/RelatedPerson/index.js +3 -0
- package/src/components/resources/ResearchStudy/ResearchStudy.js +160 -130
- package/src/components/resources/ResearchStudy/ResearchStudy.stories.js +2 -0
- package/src/components/resources/ResearchStudy/ResearchStudy.test.js +108 -1
- package/src/components/resources/ResourceCategory/ResourceCategory.js +7 -12
- package/src/components/resources/ResourceCategory/ResourceCategory.stories.js +13 -2
- package/src/components/resources/ResourceCategory/ResourceCategory.test.js +77 -18
- package/src/components/ui/index.js +32 -12
- package/src/fixtures/dstu2/resources/relatedPerson/example1.json +79 -0
- package/src/fixtures/example-icons.jsx +81 -11
- package/src/fixtures/r4/resources/relatedPerson/example1.json +64 -0
- package/src/fixtures/stu3/resources/relatedPerson/example1.json +43 -0
- package/src/style.scss +3 -1
|
@@ -5,42 +5,107 @@ import fhirIcons from '../../../fixtures/example-icons';
|
|
|
5
5
|
import ResourceCategory from './ResourceCategory';
|
|
6
6
|
|
|
7
7
|
describe('should render ResourceCategory component properly', () => {
|
|
8
|
-
|
|
8
|
+
it('component without a fhirIcons props should render a default icon', () => {
|
|
9
|
+
const defaultProps = {
|
|
10
|
+
itemsCount: '41',
|
|
11
|
+
title: 'Resource name',
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const { getByAltText } = render(<ResourceCategory {...defaultProps} />);
|
|
15
|
+
const headerIcon = getByAltText('resource category');
|
|
16
|
+
|
|
17
|
+
expect(headerIcon.getAttribute('src')).toContain('IMAGE_MOCK');
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('component with a false as a fhirIcons props should render a placeholder', () => {
|
|
21
|
+
const defaultProps = {
|
|
22
|
+
itemsCount: '41',
|
|
23
|
+
title: 'Resource name',
|
|
24
|
+
fhirIcons: false,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const { getByTestId } = render(<ResourceCategory {...defaultProps} />);
|
|
28
|
+
const headerIcon = getByTestId('placeholder');
|
|
29
|
+
|
|
30
|
+
expect(headerIcon).toBeTruthy();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
it('component with the img as a fhirIcons props should render an img', () => {
|
|
34
|
+
const defaultProps = {
|
|
35
|
+
itemsCount: '41',
|
|
36
|
+
title: 'Resource name',
|
|
37
|
+
fhirIcons: (
|
|
38
|
+
<img
|
|
39
|
+
src={require('../assets/containers/ResourceCategory/resource-category.svg')}
|
|
40
|
+
alt="resource category"
|
|
41
|
+
/>
|
|
42
|
+
),
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
const { getByAltText } = render(<ResourceCategory {...defaultProps} />);
|
|
46
|
+
const headerIcon = getByAltText('resource category');
|
|
47
|
+
|
|
48
|
+
expect(headerIcon.getAttribute('src')).toContain('IMAGE_MOCK');
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
it('component with the resources object as a fhirIcons props should render an img', () => {
|
|
52
|
+
const defaultProps = {
|
|
53
|
+
itemsCount: '41',
|
|
54
|
+
title: 'Resource name',
|
|
55
|
+
fhirIcons: fhirIcons,
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const { getByAltText } = render(<ResourceCategory {...defaultProps} />);
|
|
59
|
+
const headerIcon = getByAltText('resource category');
|
|
60
|
+
|
|
61
|
+
expect(headerIcon.getAttribute('src')).toContain('IMAGE_MOCK');
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
it('component with the url as a fhirIcons props should render an img', () => {
|
|
65
|
+
const avatarSrc =
|
|
66
|
+
'https://www.gravatar.com/avatar/?s=50&r=any&default=identicon&forcedefault=1';
|
|
67
|
+
const defaultProps = {
|
|
68
|
+
itemsCount: '41',
|
|
69
|
+
title: 'Resource name',
|
|
70
|
+
fhirIcons: avatarSrc,
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
const { getByAltText } = render(<ResourceCategory {...defaultProps} />);
|
|
74
|
+
const headerIcon = getByAltText('header icon');
|
|
75
|
+
|
|
76
|
+
expect(headerIcon.getAttribute('src')).toContain(avatarSrc);
|
|
77
|
+
});
|
|
9
78
|
|
|
10
|
-
it('should render ResourceCategory component with
|
|
79
|
+
it('should render ResourceCategory component with itemsCount > 1 correctly', () => {
|
|
11
80
|
const defaultProps = {
|
|
12
81
|
fhirIcons: fhirIcons,
|
|
13
82
|
itemsCount: '41',
|
|
14
83
|
title: 'Resource name',
|
|
15
84
|
};
|
|
16
85
|
|
|
17
|
-
const { container, getByTestId
|
|
86
|
+
const { container, getByTestId } = render(
|
|
18
87
|
<ResourceCategory {...defaultProps} />,
|
|
19
88
|
);
|
|
20
89
|
expect(container).not.toBeNull();
|
|
21
90
|
|
|
22
91
|
expect(getByTestId('itemsCount').textContent).toContain('41 items');
|
|
23
92
|
expect(getByTestId('title').textContent).toContain('Resource name');
|
|
24
|
-
const image = getByAltText(placeholderResource.alt);
|
|
25
|
-
expect(image.src).toContain(placeholderResource.src);
|
|
26
93
|
});
|
|
27
94
|
|
|
28
|
-
it('should render ResourceCategory component with
|
|
95
|
+
it('should render ResourceCategory component with itemsCount === 1 correctly', () => {
|
|
29
96
|
const defaultProps = {
|
|
30
97
|
fhirIcons: fhirIcons,
|
|
31
98
|
itemsCount: 1,
|
|
32
99
|
title: 'Resource name',
|
|
33
100
|
};
|
|
34
101
|
|
|
35
|
-
const { container, getByTestId
|
|
102
|
+
const { container, getByTestId } = render(
|
|
36
103
|
<ResourceCategory {...defaultProps} />,
|
|
37
104
|
);
|
|
38
105
|
expect(container).not.toBeNull();
|
|
39
106
|
|
|
40
107
|
expect(getByTestId('itemsCount').textContent).toContain('1 item');
|
|
41
108
|
expect(getByTestId('title').textContent).toContain('Resource name');
|
|
42
|
-
const image = getByAltText(placeholderResource.alt);
|
|
43
|
-
expect(image.src).toContain(placeholderResource.src);
|
|
44
109
|
});
|
|
45
110
|
|
|
46
111
|
it('should render ResourceCategory correctly with negative number passed as itemsCount', () => {
|
|
@@ -50,7 +115,7 @@ describe('should render ResourceCategory component properly', () => {
|
|
|
50
115
|
title: 'Resource name',
|
|
51
116
|
};
|
|
52
117
|
|
|
53
|
-
const { container, getByTestId,
|
|
118
|
+
const { container, getByTestId, queryByTestId } = render(
|
|
54
119
|
<ResourceCategory {...defaultProps} />,
|
|
55
120
|
);
|
|
56
121
|
expect(container).not.toBeNull();
|
|
@@ -58,8 +123,6 @@ describe('should render ResourceCategory component properly', () => {
|
|
|
58
123
|
const item = queryByTestId('itemsCount');
|
|
59
124
|
expect(item).toBeNull();
|
|
60
125
|
expect(getByTestId('title').textContent).toContain('Resource name');
|
|
61
|
-
const image = getByAltText(placeholderResource.alt);
|
|
62
|
-
expect(image.src).toContain(placeholderResource.src);
|
|
63
126
|
});
|
|
64
127
|
|
|
65
128
|
it('should render ResourceCategory correctly with invalid string passed as itemsCount', () => {
|
|
@@ -69,15 +132,13 @@ describe('should render ResourceCategory component properly', () => {
|
|
|
69
132
|
title: 'Resource name',
|
|
70
133
|
};
|
|
71
134
|
|
|
72
|
-
const { container, getByTestId,
|
|
135
|
+
const { container, getByTestId, queryByTestId } = render(
|
|
73
136
|
<ResourceCategory {...defaultProps} />,
|
|
74
137
|
);
|
|
75
138
|
expect(container).not.toBeNull();
|
|
76
139
|
const item = queryByTestId('itemsCount');
|
|
77
140
|
expect(item).toBeNull();
|
|
78
141
|
expect(getByTestId('title').textContent).toContain('Resource name');
|
|
79
|
-
const image = getByAltText(placeholderResource.alt);
|
|
80
|
-
expect(image.src).toContain(placeholderResource.src);
|
|
81
142
|
});
|
|
82
143
|
|
|
83
144
|
it('should render ResourceCategory correctly with floating point number passed as text in itemsCount', () => {
|
|
@@ -87,7 +148,7 @@ describe('should render ResourceCategory component properly', () => {
|
|
|
87
148
|
title: 'Resource name',
|
|
88
149
|
};
|
|
89
150
|
|
|
90
|
-
const { container, getByTestId,
|
|
151
|
+
const { container, getByTestId, queryByTestId } = render(
|
|
91
152
|
<ResourceCategory {...defaultProps} />,
|
|
92
153
|
);
|
|
93
154
|
expect(container).not.toBeNull();
|
|
@@ -95,7 +156,5 @@ describe('should render ResourceCategory component properly', () => {
|
|
|
95
156
|
const item = queryByTestId('itemsCount');
|
|
96
157
|
expect(item).toBeNull();
|
|
97
158
|
expect(getByTestId('title').textContent).toContain('Resource name');
|
|
98
|
-
const image = getByAltText(placeholderResource.alt);
|
|
99
|
-
expect(image.src).toContain(placeholderResource.src);
|
|
100
159
|
});
|
|
101
160
|
});
|
|
@@ -15,6 +15,8 @@ export const Header = ({
|
|
|
15
15
|
additionalContent,
|
|
16
16
|
rightAdditionalContent,
|
|
17
17
|
children,
|
|
18
|
+
capitalize = false,
|
|
19
|
+
isNoIcon = false,
|
|
18
20
|
}) => {
|
|
19
21
|
const rightItemsClass = 'align-items-center flex-fill d-flex';
|
|
20
22
|
|
|
@@ -31,15 +33,20 @@ export const Header = ({
|
|
|
31
33
|
} d-flex w-100 flex-column flex-sm-row`}
|
|
32
34
|
>
|
|
33
35
|
<div className="d-flex">
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
{!isNoIcon && (
|
|
37
|
+
<div
|
|
38
|
+
className={`fhir-ui__${resourceName}-Header__icon d-flex align-items-center flex-shrink-1 m-half me-2`}
|
|
39
|
+
>
|
|
40
|
+
<HeaderIcon headerIcon={icon} resourceName={resourceName} />
|
|
41
|
+
</div>
|
|
42
|
+
)}
|
|
39
43
|
<div
|
|
40
44
|
className={`fhir-ui__${resourceName}-Header__title flex-fill text-start`}
|
|
41
45
|
>
|
|
42
|
-
<Title
|
|
46
|
+
<Title
|
|
47
|
+
data-testid={titleTestID || 'title'}
|
|
48
|
+
capitalize={capitalize}
|
|
49
|
+
>
|
|
43
50
|
{title || ''}
|
|
44
51
|
</Title>
|
|
45
52
|
</div>
|
|
@@ -77,7 +84,9 @@ export const Header = ({
|
|
|
77
84
|
|
|
78
85
|
export const Title = props => (
|
|
79
86
|
<h4
|
|
80
|
-
className=
|
|
87
|
+
className={`fhir-ui__Title fw-bold fs-4 lh-base mb-0 w-90 title-width-sm ${
|
|
88
|
+
props.capitalize ? 'text-capitalize' : ''
|
|
89
|
+
}`}
|
|
81
90
|
data-testid={props['data-testid'] || 'title'}
|
|
82
91
|
>
|
|
83
92
|
{props.children}
|
|
@@ -87,7 +96,7 @@ export const Title = props => (
|
|
|
87
96
|
export const Badge = props => {
|
|
88
97
|
return (
|
|
89
98
|
<small
|
|
90
|
-
className={`fhir-ui__Badge text-capitalize d-flex align-items-center px-2 py-1 rounded-1 fw-bold ${getBadgeColor(
|
|
99
|
+
className={`fhir-ui__Badge text-capitalize d-flex align-items-center mx-1 px-2 py-1 rounded-1 fw-bold ${getBadgeColor(
|
|
91
100
|
props,
|
|
92
101
|
)}`}
|
|
93
102
|
data-testid={props['data-testid']}
|
|
@@ -128,7 +137,7 @@ export const ValueUnit = props => (
|
|
|
128
137
|
export const Body = ({ tableData = [], reverseContent, children }) => (
|
|
129
138
|
<div className="fhir-ui__Body">
|
|
130
139
|
{reverseContent ? children : null}
|
|
131
|
-
<div className="row">
|
|
140
|
+
<div className="row gap-3">
|
|
132
141
|
{tableData.map(
|
|
133
142
|
(value, index) =>
|
|
134
143
|
value.status && (
|
|
@@ -175,7 +184,9 @@ export const Data = props => (
|
|
|
175
184
|
);
|
|
176
185
|
|
|
177
186
|
export const Root = props => (
|
|
178
|
-
<div className={`fhir-resource__${props.name}
|
|
187
|
+
<div className={`fhir-resource__${props.name} ${props.className}`}>
|
|
188
|
+
{props.children}
|
|
189
|
+
</div>
|
|
179
190
|
);
|
|
180
191
|
|
|
181
192
|
export const Table = props => (
|
|
@@ -199,10 +210,19 @@ export const TableHeader = props => {
|
|
|
199
210
|
);
|
|
200
211
|
};
|
|
201
212
|
|
|
202
|
-
export const TableRow = props =>
|
|
213
|
+
export const TableRow = props => {
|
|
214
|
+
const { children, ...rest } = props;
|
|
215
|
+
return <tr {...rest}>{props.children}</tr>;
|
|
216
|
+
};
|
|
203
217
|
|
|
204
218
|
export const TableCell = props => (
|
|
205
|
-
<td
|
|
219
|
+
<td
|
|
220
|
+
className={`${
|
|
221
|
+
props.isAlignTop ? '' : 'align-middle'
|
|
222
|
+
} border-0 ${props.className || ''}`}
|
|
223
|
+
data-testid={props['data-testid']}
|
|
224
|
+
style={props.style}
|
|
225
|
+
>
|
|
206
226
|
{props.children}
|
|
207
227
|
</td>
|
|
208
228
|
);
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"resourceType": "RelatedPerson",
|
|
3
|
+
"id": "benedicte",
|
|
4
|
+
"text": {
|
|
5
|
+
"status": "generated",
|
|
6
|
+
"div": "<div>\n <table>\n <tbody>\n <tr>\n <td>Name</td>\n <td>Bénédicte du Marché</td>\n </tr>\n <tr>\n <td>Address</td>\n <td>43, Place du Marché Sainte Catherine, 75004 Paris, France</td>\n </tr>\n <tr>\n <td>Contacts</td>\n <td>Phone: +33 (237) 998327</td>\n </tr>\n </tbody>\n </table>\n </div>"
|
|
7
|
+
},
|
|
8
|
+
"identifier": [
|
|
9
|
+
{
|
|
10
|
+
"use": "usual",
|
|
11
|
+
"type": {
|
|
12
|
+
"text": "INSEE"
|
|
13
|
+
},
|
|
14
|
+
"system": "urn:oid:1.2.250.1.61",
|
|
15
|
+
"value": "272117510400399"
|
|
16
|
+
}
|
|
17
|
+
],
|
|
18
|
+
"patient": {
|
|
19
|
+
"reference": "Patient/example"
|
|
20
|
+
},
|
|
21
|
+
"relationship": {
|
|
22
|
+
"coding": [
|
|
23
|
+
{
|
|
24
|
+
"system": "http://hl7.org/fhir/patient-contact-relationship",
|
|
25
|
+
"code": "partner"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"system": "http://hl7.org/fhir/v3/RoleCode",
|
|
29
|
+
"code": "WIFE"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"name": {
|
|
34
|
+
"family": [
|
|
35
|
+
"du",
|
|
36
|
+
"Marché"
|
|
37
|
+
],
|
|
38
|
+
"_family": [
|
|
39
|
+
{
|
|
40
|
+
"extension": [
|
|
41
|
+
{
|
|
42
|
+
"fhir_comments": [
|
|
43
|
+
" the \"du\" part is a family name prefix (VV in iso 21090) "
|
|
44
|
+
],
|
|
45
|
+
"url": "http://hl7.org/fhir/StructureDefinitioniso-21090#qualifier",
|
|
46
|
+
"valueCode": "VV"
|
|
47
|
+
}
|
|
48
|
+
]
|
|
49
|
+
},
|
|
50
|
+
null
|
|
51
|
+
],
|
|
52
|
+
"given": [
|
|
53
|
+
"Bénédicte"
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
"telecom": [
|
|
57
|
+
{
|
|
58
|
+
"system": "phone",
|
|
59
|
+
"value": "+33 (237) 998327"
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"gender": "female",
|
|
63
|
+
"address": [
|
|
64
|
+
{
|
|
65
|
+
"line": [
|
|
66
|
+
"43, Place du Marché Sainte Catherine"
|
|
67
|
+
],
|
|
68
|
+
"city": "Paris",
|
|
69
|
+
"postalCode": "75004",
|
|
70
|
+
"country": "FRA"
|
|
71
|
+
}
|
|
72
|
+
],
|
|
73
|
+
"photo": [
|
|
74
|
+
{
|
|
75
|
+
"contentType": "image/jpeg",
|
|
76
|
+
"url": "Binary/f016"
|
|
77
|
+
}
|
|
78
|
+
]
|
|
79
|
+
}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
export default {
|
|
4
|
+
AdverseEvent: (
|
|
5
|
+
<img
|
|
6
|
+
className="header-icon__image"
|
|
7
|
+
src={require('../assets/containers/AdverseEvent/adverse-event.svg')}
|
|
8
|
+
alt="adverse event"
|
|
9
|
+
/>
|
|
10
|
+
),
|
|
4
11
|
Binary: (
|
|
5
12
|
<img
|
|
6
13
|
className="header-icon__image"
|
|
@@ -36,11 +43,18 @@ export default {
|
|
|
36
43
|
alt="practitioner"
|
|
37
44
|
/>
|
|
38
45
|
),
|
|
46
|
+
PractitionerRole: (
|
|
47
|
+
<img
|
|
48
|
+
className="header-icon__image"
|
|
49
|
+
src={require('../assets/containers/PractitionerRole/practitioner-role.svg')}
|
|
50
|
+
alt="practitioner role"
|
|
51
|
+
/>
|
|
52
|
+
),
|
|
39
53
|
AllergyIntolerance: (
|
|
40
54
|
<img
|
|
41
55
|
className="header-icon__image"
|
|
42
56
|
src={require('../assets/containers/AllergyIntolerance/allergy-intolerance.svg')}
|
|
43
|
-
alt="
|
|
57
|
+
alt="allergy intolerance"
|
|
44
58
|
/>
|
|
45
59
|
),
|
|
46
60
|
Appointment: (
|
|
@@ -54,7 +68,7 @@ export default {
|
|
|
54
68
|
<img
|
|
55
69
|
className="header-icon__image"
|
|
56
70
|
src={require('../assets/containers/CarePlan/care-plan.svg')}
|
|
57
|
-
alt="
|
|
71
|
+
alt="care plan"
|
|
58
72
|
/>
|
|
59
73
|
),
|
|
60
74
|
CareTeam: (
|
|
@@ -82,21 +96,21 @@ export default {
|
|
|
82
96
|
<img
|
|
83
97
|
className="header-icon__image"
|
|
84
98
|
src={require('../assets/containers/Device/device.svg')}
|
|
85
|
-
alt="
|
|
99
|
+
alt="device"
|
|
86
100
|
/>
|
|
87
101
|
),
|
|
88
102
|
DiagnosticReport: (
|
|
89
103
|
<img
|
|
90
104
|
className="header-icon__image"
|
|
91
105
|
src={require('../assets/containers/DiagnosticReport/diagnostic-report.svg')}
|
|
92
|
-
alt="
|
|
106
|
+
alt="diagnostic report"
|
|
93
107
|
/>
|
|
94
108
|
),
|
|
95
109
|
DocumentReference: (
|
|
96
110
|
<img
|
|
97
111
|
className="header-icon__image"
|
|
98
112
|
src={require('../assets/containers/DocumentReference/document-reference.svg')}
|
|
99
|
-
alt="
|
|
113
|
+
alt="document reference"
|
|
100
114
|
/>
|
|
101
115
|
),
|
|
102
116
|
Encounter: (
|
|
@@ -117,14 +131,14 @@ export default {
|
|
|
117
131
|
<img
|
|
118
132
|
className="header-icon__image"
|
|
119
133
|
src={require('../assets/containers/FamilyMemberHistory/family-member-history.svg')}
|
|
120
|
-
alt="
|
|
134
|
+
alt="family member history"
|
|
121
135
|
/>
|
|
122
136
|
),
|
|
123
137
|
Goal: (
|
|
124
138
|
<img
|
|
125
139
|
className="header-icon__image"
|
|
126
140
|
src={require('../assets/containers/Goal/goal.svg')}
|
|
127
|
-
alt="
|
|
141
|
+
alt="goal"
|
|
128
142
|
/>
|
|
129
143
|
),
|
|
130
144
|
List: (
|
|
@@ -145,7 +159,28 @@ export default {
|
|
|
145
159
|
<img
|
|
146
160
|
className="header-icon__image"
|
|
147
161
|
src={require('../assets/containers/Medication/medication.svg')}
|
|
148
|
-
alt="
|
|
162
|
+
alt="medication"
|
|
163
|
+
/>
|
|
164
|
+
),
|
|
165
|
+
MedicationOrder: (
|
|
166
|
+
<img
|
|
167
|
+
className="header-icon__image"
|
|
168
|
+
src={require('../assets/containers/MedicationOrder/medication-order.svg')}
|
|
169
|
+
alt="medication order"
|
|
170
|
+
/>
|
|
171
|
+
),
|
|
172
|
+
MedicationDispense: (
|
|
173
|
+
<img
|
|
174
|
+
className="header-icon__image"
|
|
175
|
+
src={require('../assets/containers/MedicationDispense/medication-dispense.svg')}
|
|
176
|
+
alt="medication dispense"
|
|
177
|
+
/>
|
|
178
|
+
),
|
|
179
|
+
MedicationRequest: (
|
|
180
|
+
<img
|
|
181
|
+
className="header-icon__image"
|
|
182
|
+
src={require('../assets/containers/MedicationRequest/medication-request.svg')}
|
|
183
|
+
alt="medication request"
|
|
149
184
|
/>
|
|
150
185
|
),
|
|
151
186
|
MedicationAdministration: (
|
|
@@ -166,7 +201,7 @@ export default {
|
|
|
166
201
|
<img
|
|
167
202
|
className="header-icon__image"
|
|
168
203
|
src={require('../assets/containers/MedicationStatement/medication-statement.svg')}
|
|
169
|
-
alt="
|
|
204
|
+
alt="medication statement"
|
|
170
205
|
/>
|
|
171
206
|
),
|
|
172
207
|
Observation: (
|
|
@@ -176,6 +211,13 @@ export default {
|
|
|
176
211
|
alt="observation"
|
|
177
212
|
/>
|
|
178
213
|
),
|
|
214
|
+
Organization: (
|
|
215
|
+
<img
|
|
216
|
+
className="header-icon__image"
|
|
217
|
+
src={require('../assets/containers/Organization/organization.svg')}
|
|
218
|
+
alt="organization"
|
|
219
|
+
/>
|
|
220
|
+
),
|
|
179
221
|
Questionnaire: (
|
|
180
222
|
<img
|
|
181
223
|
className="header-icon__image"
|
|
@@ -200,8 +242,8 @@ export default {
|
|
|
200
242
|
ResourceCategory: (
|
|
201
243
|
<img
|
|
202
244
|
className="header-icon__image"
|
|
203
|
-
src={require('../assets/containers/ResourceCategory/resource-
|
|
204
|
-
alt="
|
|
245
|
+
src={require('../assets/containers/ResourceCategory/resource-category.svg')}
|
|
246
|
+
alt="resource category"
|
|
205
247
|
/>
|
|
206
248
|
),
|
|
207
249
|
Patient: (
|
|
@@ -211,4 +253,32 @@ export default {
|
|
|
211
253
|
alt="patient"
|
|
212
254
|
/>
|
|
213
255
|
),
|
|
256
|
+
Coverage: (
|
|
257
|
+
<img
|
|
258
|
+
className="header-icon__image"
|
|
259
|
+
src={require('../assets/containers/Coverage/coverage.svg')}
|
|
260
|
+
alt="coverage"
|
|
261
|
+
/>
|
|
262
|
+
),
|
|
263
|
+
RelatedPerson: (
|
|
264
|
+
<img
|
|
265
|
+
className="header-icon__image"
|
|
266
|
+
src={require('../assets/containers/RelatedPerson/related-person.svg')}
|
|
267
|
+
alt="related person"
|
|
268
|
+
/>
|
|
269
|
+
),
|
|
270
|
+
Generic: (
|
|
271
|
+
<img
|
|
272
|
+
className="header-icon__image"
|
|
273
|
+
src={require('../assets/containers/Generic/generic.svg')}
|
|
274
|
+
alt="generic"
|
|
275
|
+
/>
|
|
276
|
+
),
|
|
277
|
+
ReferralRequest: (
|
|
278
|
+
<img
|
|
279
|
+
className="header-icon__image"
|
|
280
|
+
src={require('../assets/containers/ReferralRequest/referral-request.svg')}
|
|
281
|
+
alt="referral request"
|
|
282
|
+
/>
|
|
283
|
+
),
|
|
214
284
|
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"resourceType": "RelatedPerson",
|
|
3
|
+
"id": "newborn-mom",
|
|
4
|
+
"text": {
|
|
5
|
+
"status": "generated",
|
|
6
|
+
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: newborn-mom</p><p><b>identifier</b>: Social Security number = 444222222</p><p><b>active</b>: true</p><p><b>patient</b>: <a>Patient/newborn</a></p><p><b>relationship</b>: Natural Mother <span>(Details : {http://terminology.hl7.org/CodeSystem/v3-RoleCode code 'NMTH' = 'natural mother', given as 'natural mother'})</span></p><p><b>name</b>: Eve Everywoman (OFFICIAL)</p><p><b>telecom</b>: ph: 555-555-2003(WORK)</p><p><b>gender</b>: female</p><p><b>birthDate</b>: 31/05/1973</p><p><b>address</b>: 2222 Home Street (HOME)</p></div>"
|
|
7
|
+
},
|
|
8
|
+
"identifier": [
|
|
9
|
+
{
|
|
10
|
+
"type": {
|
|
11
|
+
"coding": [
|
|
12
|
+
{
|
|
13
|
+
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
|
|
14
|
+
"code": "SS"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
"system": "http://hl7.org/fhir/sid/us-ssn",
|
|
19
|
+
"value": "444222222"
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"active": true,
|
|
23
|
+
"patient": {
|
|
24
|
+
"reference": "Patient/newborn"
|
|
25
|
+
},
|
|
26
|
+
"relationship": [
|
|
27
|
+
{
|
|
28
|
+
"coding": [
|
|
29
|
+
{
|
|
30
|
+
"system": "http://terminology.hl7.org/CodeSystem/v3-RoleCode",
|
|
31
|
+
"code": "NMTH",
|
|
32
|
+
"display": "natural mother"
|
|
33
|
+
}
|
|
34
|
+
],
|
|
35
|
+
"text": "Natural Mother"
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"name": [
|
|
39
|
+
{
|
|
40
|
+
"use": "official",
|
|
41
|
+
"family": "Everywoman",
|
|
42
|
+
"given": [
|
|
43
|
+
"Eve"
|
|
44
|
+
]
|
|
45
|
+
}
|
|
46
|
+
],
|
|
47
|
+
"telecom": [
|
|
48
|
+
{
|
|
49
|
+
"system": "phone",
|
|
50
|
+
"value": "555-555-2003",
|
|
51
|
+
"use": "work"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"gender": "female",
|
|
55
|
+
"birthDate": "1973-05-31",
|
|
56
|
+
"address": [
|
|
57
|
+
{
|
|
58
|
+
"use": "home",
|
|
59
|
+
"line": [
|
|
60
|
+
"2222 Home Street"
|
|
61
|
+
]
|
|
62
|
+
}
|
|
63
|
+
]
|
|
64
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"resourceType": "RelatedPerson",
|
|
3
|
+
"id": "f002",
|
|
4
|
+
"text": {
|
|
5
|
+
"status": "generated",
|
|
6
|
+
"div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n Ariadne Bor-Jansma\n </div>"
|
|
7
|
+
},
|
|
8
|
+
"patient": {
|
|
9
|
+
"reference": "Patient/f201"
|
|
10
|
+
},
|
|
11
|
+
"relationship": {
|
|
12
|
+
"coding": [
|
|
13
|
+
{
|
|
14
|
+
"system": "http://hl7.org/fhir/v3/RoleCode",
|
|
15
|
+
"code": "SIGOTHR"
|
|
16
|
+
}
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
"name": [
|
|
20
|
+
{
|
|
21
|
+
"use": "usual",
|
|
22
|
+
"text": "Ariadne Bor-Jansma"
|
|
23
|
+
}
|
|
24
|
+
],
|
|
25
|
+
"telecom": [
|
|
26
|
+
{
|
|
27
|
+
"system": "phone",
|
|
28
|
+
"value": "+31201234567",
|
|
29
|
+
"use": "home"
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"gender": "female",
|
|
33
|
+
"birthDate": "1963",
|
|
34
|
+
"photo": [
|
|
35
|
+
{
|
|
36
|
+
"contentType": "image/jpeg",
|
|
37
|
+
"data": "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"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"period": {
|
|
41
|
+
"start": "1975"
|
|
42
|
+
}
|
|
43
|
+
}
|
package/src/style.scss
CHANGED
|
@@ -40,6 +40,7 @@ $spacers: map-merge(
|
|
|
40
40
|
(
|
|
41
41
|
half: $space,
|
|
42
42
|
6: 3.5rem,
|
|
43
|
+
20: 20px,
|
|
43
44
|
40: 40px,
|
|
44
45
|
)
|
|
45
46
|
);
|
|
@@ -61,7 +62,7 @@ $body-color: #152536;
|
|
|
61
62
|
|
|
62
63
|
$table-striped-bg: $gray-100;
|
|
63
64
|
|
|
64
|
-
$secondary: #
|
|
65
|
+
$secondary: #68717a;
|
|
65
66
|
|
|
66
67
|
$light: #dedddd;
|
|
67
68
|
|
|
@@ -84,6 +85,7 @@ $enable-negative-margins: true;
|
|
|
84
85
|
|
|
85
86
|
.dataTable__value-label {
|
|
86
87
|
width: auto;
|
|
88
|
+
|
|
87
89
|
@include media-breakpoint-up(sm) {
|
|
88
90
|
width: 130px;
|
|
89
91
|
min-width: 130px;
|