@ampath/esm-reports-app 1.0.0-next.4 → 1.0.0-next.41

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.
Files changed (132) hide show
  1. package/dist/110.js +1 -0
  2. package/dist/110.js.map +1 -0
  3. package/dist/{260.js → 205.js} +1 -1
  4. package/dist/{260.js.map → 205.js.map} +1 -1
  5. package/dist/812.js +1 -1
  6. package/dist/812.js.map +1 -1
  7. package/dist/822.js +2 -0
  8. package/dist/822.js.map +1 -0
  9. package/dist/ampath-esm-reports-app.js +1 -1
  10. package/dist/ampath-esm-reports-app.js.buildmanifest.json +95 -74
  11. package/dist/ampath-esm-reports-app.js.map +1 -1
  12. package/dist/main.js +1 -1
  13. package/dist/main.js.map +1 -1
  14. package/dist/routes.json +1 -1
  15. package/package.json +1 -1
  16. package/src/common/report-filters/report-filters.component.tsx +68 -7
  17. package/src/common/report-filters/report-filters.scss +42 -0
  18. package/src/dashboard/reports-dasboard.tsx +21 -0
  19. package/src/reports/datatable-wrapper/datatable-wrapper.component.tsx +54 -0
  20. package/src/reports/moh-240/moh-240-header.component.tsx +61 -0
  21. package/src/reports/moh-240/moh-240.component.tsx +93 -0
  22. package/src/reports/moh-240/moh-240.scss +11 -0
  23. package/src/reports/moh-240/sub-reports/moh-240-register.component.tsx +75 -0
  24. package/src/reports/moh-240/sub-reports/page-summary.component.tsx +98 -0
  25. package/src/reports/moh-505/moh-505-header.component.tsx +62 -0
  26. package/src/reports/moh-505/moh-505.component.tsx +440 -0
  27. package/src/reports/moh-505/moh-505.scss +3 -0
  28. package/src/reports/moh-705B/moh-204b-register.component.tsx +236 -0
  29. package/src/reports/moh-705B/moh-705b.component.tsx +524 -0
  30. package/src/reports/moh-705B/moh-705b.scss +44 -0
  31. package/src/reports/moh-705a/moh-705a.component.tsx +528 -0
  32. package/src/reports/moh-705a/moh-705a.scss +45 -0
  33. package/src/reports/moh-705a/registers/moh-204a-register.component.tsx +321 -0
  34. package/src/reports/moh-705a/type.ts +6 -0
  35. package/src/reports/moh-706/moh-706-header.component.tsx +61 -0
  36. package/src/reports/moh-706/moh-706.component.tsx +117 -0
  37. package/src/reports/moh-706/moh-706.scss +30 -0
  38. package/src/reports/moh-706/sub-reports/bacteriology/bacteriology.component.tsx +124 -0
  39. package/src/reports/moh-706/sub-reports/blood-chemistry/blood-chemistry.component.tsx +318 -0
  40. package/src/reports/moh-706/sub-reports/drug-susceptibility-testing/drug-susceptibility-testing.component.tsx +137 -0
  41. package/src/reports/moh-706/sub-reports/haematology/haematology.component.tsx +179 -0
  42. package/src/reports/moh-706/sub-reports/histology-and-cytology/histology-and-cytology.component.tsx +88 -0
  43. package/src/reports/moh-706/sub-reports/parasitology/parasitology.component.tsx +121 -0
  44. package/src/reports/moh-706/sub-reports/serology/serology.component.tsx +47 -0
  45. package/src/reports/moh-706/sub-reports/specimen-referral-to-higher-levels/specimen-referral-to-higher-levels.component.tsx +39 -0
  46. package/src/reports/moh-706/sub-reports/urine-analysis/urine-analysis.component.tsx +108 -0
  47. package/src/reports/moh-710/moh-710.component.tsx +211 -79
  48. package/src/reports/moh-710/moh-710.scss +5 -1
  49. package/src/reports/moh-710/registers/moh-511-710-register.component.tsx +263 -0
  50. package/src/reports/moh-710/registers/type.ts +31 -0
  51. package/src/reports/moh-711/moh-711.component.tsx +109 -1234
  52. package/src/reports/moh-711/moh711.scss +92 -8
  53. package/src/reports/moh-711/registers/moh-333-register.component.tsx +639 -0
  54. package/src/reports/moh-711/registers/moh-405-register.component.tsx +521 -0
  55. package/src/reports/moh-711/registers/moh-406-register.component.tsx +533 -0
  56. package/src/reports/moh-711/registers/moh-510-register.component.tsx +61 -0
  57. package/src/reports/moh-711/registers/moh-511-register.component.tsx +271 -0
  58. package/src/reports/moh-711/registers/type.ts +192 -0
  59. package/src/reports/moh-711/sections/anc.component.tsx +159 -0
  60. package/src/reports/moh-711/sections/cervical-cancer.component.tsx +148 -0
  61. package/src/reports/moh-711/sections/chanis.component.tsx +367 -0
  62. package/src/reports/moh-711/sections/family-planning.component.tsx +221 -0
  63. package/src/reports/moh-711/sections/gbv.component.tsx +115 -0
  64. package/src/reports/moh-711/sections/maternity.component.tsx +326 -0
  65. package/src/reports/moh-711/sections/medical-social-work.component.tsx +83 -0
  66. package/src/reports/moh-711/sections/other.component.tsx +47 -0
  67. package/src/reports/moh-711/sections/physiotherapy.component.tsx +61 -0
  68. package/src/reports/moh-711/sections/pnc.component.tsx +125 -0
  69. package/src/reports/moh-711/sections/post-abortion.component.tsx +42 -0
  70. package/src/reports/moh-711/sections/rehabilitation.component.tsx +57 -0
  71. package/src/reports/moh-711/sections/report-compiled-by.component.tsx +42 -0
  72. package/src/reports/moh-711/sections/tb-screening.component.tsx +57 -0
  73. package/src/reports/moh-717/moh-717.component.tsx +120 -946
  74. package/src/reports/moh-717/moh717.scss +138 -3
  75. package/src/reports/moh-717/registers/nutrition-register.component.tsx +48 -0
  76. package/src/reports/moh-717/sections/finance.component.tsx +42 -0
  77. package/src/reports/moh-717/sections/inpatient.component.tsx +374 -0
  78. package/src/reports/moh-717/sections/maternity.component.tsx +126 -0
  79. package/src/reports/moh-717/sections/medical-records.component.tsx +35 -0
  80. package/src/reports/moh-717/sections/mortuary.component.tsx +43 -0
  81. package/src/reports/moh-717/sections/operations.component.tsx +53 -0
  82. package/src/reports/moh-717/sections/orthopaedic-trauma.component.tsx +98 -0
  83. package/src/reports/moh-717/sections/outpatient.component.tsx +597 -0
  84. package/src/reports/moh-717/sections/pharmacy.component.tsx +43 -0
  85. package/src/reports/moh-717/sections/preparedby.component.tsx +47 -0
  86. package/src/reports/moh-717/sections/special-services.component.tsx +114 -0
  87. package/src/reports/moh-731/moh-731.component.tsx +181 -0
  88. package/src/reports/moh-731/moh-731.scss +118 -0
  89. package/src/reports/moh-731/registers/moh-366.component.tsx +478 -0
  90. package/src/reports/moh-731/registers/moh-366.scss +45 -0
  91. package/src/reports/moh-731/registers/prep-register.component.tsx +292 -0
  92. package/src/reports/moh-731/registers/prep-registers.scss +45 -0
  93. package/src/reports/moh-731/sections/hiv-and-tb-treatment.component.tsx +932 -0
  94. package/src/reports/moh-731/sections/hiv-testing-and-pre-exposure.component.tsx +569 -0
  95. package/src/reports/moh-731/sections/pmtct.component.tsx +451 -0
  96. package/src/reports/moh-740/moh-740.component.scss +120 -0
  97. package/src/reports/moh-740/moh-740.component.tsx +1271 -0
  98. package/src/reports/moh-740/moh-740.resource.ts +42 -0
  99. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.scss +18 -0
  100. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.tsx +104 -0
  101. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.scss +18 -0
  102. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.tsx +79 -0
  103. package/src/reports/moh-740/registers/moh-740-patient-list.scss +0 -0
  104. package/src/reports/moh-740/registers/moh-740-patient-list.tsx +66 -0
  105. package/src/reports/moh-740/shared/data-cell/data-cell.scss +6 -0
  106. package/src/reports/moh-740/shared/data-cell/data-cell.tsx +23 -0
  107. package/src/reports/moh-740/shared/utils/format-indicator.ts +22 -0
  108. package/src/reports/moh-740/shared/utils/indicator-register-map.ts +157 -0
  109. package/src/reports/moh-740/types/index.ts +216 -0
  110. package/src/reports/moh-745/moh-745.component.tsx +928 -0
  111. package/src/reports/moh-745/moh-745.scss +74 -0
  112. package/src/reports/moh-745/registers/moh-412-register.component.tsx +191 -0
  113. package/src/reports/moh-745/registers/type.ts +30 -0
  114. package/src/reports/table-wrapper/table-row-mapper.component.tsx +53 -0
  115. package/src/reports/table-wrapper/table-wrapper.component.tsx +21 -0
  116. package/src/reports/table-wrapper/table-wrapper.scss +31 -0
  117. package/src/resources/moh-505.resource.ts +86 -0
  118. package/src/resources/moh-705.resource.ts +117 -0
  119. package/src/resources/moh-706.resource.ts +86 -0
  120. package/src/resources/moh-710.resource.ts +28 -0
  121. package/src/resources/moh-711.resource.ts +146 -0
  122. package/src/resources/moh-717.resource.ts +27 -0
  123. package/src/resources/moh-731.resource.ts +96 -0
  124. package/src/resources/moh-745.resource.ts +64 -0
  125. package/src/root.component.tsx +39 -0
  126. package/src/routes.json +3 -1
  127. package/src/utils/utils.ts +36 -0
  128. package/dist/367.js +0 -2
  129. package/dist/367.js.map +0 -1
  130. package/dist/86.js +0 -1
  131. package/dist/86.js.map +0 -1
  132. /package/dist/{367.js.LICENSE.txt → 822.js.LICENSE.txt} +0 -0
@@ -1,4 +1,5 @@
1
- import React, { useState } from 'react';
1
+ import React, { useEffect, useState } from 'react';
2
+ import { useLocation, useNavigate } from 'react-router-dom';
2
3
  import ReportFiltersComponent from '../../common/report-filters/report-filters.component';
3
4
 
4
5
  import styles from './moh-710.scss';
@@ -6,19 +7,42 @@ import classNames from 'classnames';
6
7
  import { useSession } from '@openmrs/esm-framework';
7
8
  import { getMoh710 } from '../../resources/moh-710.resource';
8
9
  import { Loading } from '@carbon/react';
10
+ import { type ReportFilters } from '../moh-705a/type';
9
11
 
10
12
  const Moh710Report: React.FC = () => {
11
13
  let errorMessage: string = '';
12
- const [moh710Data, setMoh710Data] = useState<any>([]);
14
+ const [moh710Data, setMoh710Data] = useState<any>(() => {
15
+ const saved = sessionStorage.getItem('moh710Data');
16
+ return saved ? JSON.parse(saved) : [];
17
+ });
13
18
  const [isLoading, setIsLoading] = useState<boolean>(false);
19
+ const navigate = useNavigate();
20
+
21
+ const [startDate, setStartDate] = useState<string>(() => {
22
+ return sessionStorage.getItem('moh710StartDate') || '';
23
+ });
24
+
25
+ const [endDate, setEndDate] = useState<string>(() => {
26
+ return sessionStorage.getItem('moh710EndDate') || '';
27
+ });
28
+ useEffect(() => {
29
+ sessionStorage.setItem('moh710Data', JSON.stringify(moh710Data));
30
+ }, [moh710Data]);
31
+
32
+ useEffect(() => {
33
+ sessionStorage.setItem('moh710StartDate', startDate);
34
+ }, [startDate]);
35
+
36
+ useEffect(() => {
37
+ sessionStorage.setItem('moh710EndDate', endDate);
38
+ }, [endDate]);
14
39
 
15
40
  const session = useSession();
16
41
  const locationUuids = session?.sessionLocation?.uuid;
42
+ const location = useLocation();
17
43
 
18
- const fetchMoh710ReportData = async (filters: { startDate?: string; endDate?: string; month?: string }) => {
19
- setIsLoading(true);
20
- let startDate = filters.startDate;
21
- let endDate = filters.endDate;
44
+ const getReportParams = (filters: ReportFilters) => {
45
+ let { startDate: sDate, endDate: eDate } = filters;
22
46
 
23
47
  if (filters.month) {
24
48
  const [year, monthIndex] = filters.month.split('-').map(Number);
@@ -27,16 +51,27 @@ const Moh710Report: React.FC = () => {
27
51
  const end = new Date(year, monthIndex, 0);
28
52
 
29
53
  const formatLocalDate = (d: Date) => {
30
- const year = d.getFullYear();
31
- const month = String(d.getMonth() + 1).padStart(2, '0');
54
+ const y = d.getFullYear();
55
+ const m = String(d.getMonth() + 1).padStart(2, '0');
32
56
  const day = String(d.getDate()).padStart(2, '0');
33
- return `${year}-${month}-${day}`;
57
+ return `${y}-${m}-${day}`;
34
58
  };
35
59
 
36
- startDate = formatLocalDate(start);
37
- endDate = formatLocalDate(end);
60
+ sDate = formatLocalDate(start);
61
+ eDate = formatLocalDate(end);
38
62
  }
39
63
 
64
+ setStartDate(sDate || '');
65
+ setEndDate(eDate || '');
66
+
67
+ return { startDate: sDate, endDate: eDate };
68
+ };
69
+
70
+ const fetchMoh710ReportData = async (filters: { startDate?: string; endDate?: string; month?: string }) => {
71
+ setIsLoading(true);
72
+
73
+ const { startDate, endDate } = getReportParams(filters);
74
+
40
75
  const params = {
41
76
  locationUuids: locationUuids || '',
42
77
  startDate,
@@ -53,6 +88,18 @@ const Moh710Report: React.FC = () => {
53
88
  throw new Error(`Failed to fetch MOH-710 report data: ${error instanceof Error ? error.message : String(error)}`);
54
89
  }
55
90
  };
91
+
92
+ const navigateToRegister = (indicator: string) => {
93
+ navigate(
94
+ `/moh-511-register?startDate=${startDate}&endDate=${endDate}&locationUuids=${locationUuids}&indicator=${indicator}`,
95
+ {
96
+ state: {
97
+ from: location.pathname,
98
+ reportName: 'moh710Report',
99
+ },
100
+ },
101
+ );
102
+ };
56
103
  return (
57
104
  <>
58
105
  <ReportFiltersComponent
@@ -81,7 +128,6 @@ const Moh710Report: React.FC = () => {
81
128
  <h3>KHIS Aggregate</h3>
82
129
  <div className={styles.container}>
83
130
  <p className={styles.title}>A. Child Immunization</p>
84
- <p className={styles.sectionTitle}>&lt; 1 Years&gt; 1 Years</p>
85
131
  <div className={styles.tableContainer}>
86
132
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
87
133
  <thead>
@@ -94,103 +140,183 @@ const Moh710Report: React.FC = () => {
94
140
  <tbody>
95
141
  <tr>
96
142
  <td>BCG doses Administered</td>
97
- <td>{moh710Data.bcg_vaccine_age_less_than_1yr}</td>
98
- <td>{moh710Data.bcg_vaccine_age_greater_than_1yr}</td>
143
+ <td onClick={() => navigateToRegister('bcg_vaccine_age_less_than_1yr')}>
144
+ {moh710Data.bcg_vaccine_age_less_than_1yr}
145
+ </td>
146
+ <td onClick={() => navigateToRegister('bcg_vaccine_age_greater_than_1yr')}>
147
+ {moh710Data.bcg_vaccine_age_greater_than_1yr}
148
+ </td>
99
149
  </tr>
100
150
  <tr>
101
151
  <td>OPV Birth doses Administered</td>
102
- <td>{moh710Data.opv_vaccine_age_less_than_1yr}</td>
103
- <td>{moh710Data.opv_vaccine_age_greater_than_1yr}</td>
152
+ <td onClick={() => navigateToRegister('opv_vaccine_age_less_than_1yr')}>
153
+ {moh710Data.opv_vaccine_age_less_than_1yr}
154
+ </td>
155
+ <td onClick={() => navigateToRegister('opv_vaccine_age_greater_than_1yr')}>
156
+ {moh710Data.opv_vaccine_age_greater_than_1yr}
157
+ </td>
104
158
  </tr>
105
159
  <tr>
106
160
  <td>OPV1 doses Administered</td>
107
- <td>{moh710Data.opv1_vaccine_age_less_than_1yr}</td>
108
- <td>{moh710Data.opv1_vaccine_age_greater_than_1yr}</td>
161
+ <td onClick={() => navigateToRegister('opv1_vaccine_age_less_than_1yr')}>
162
+ {moh710Data.opv1_vaccine_age_less_than_1yr}
163
+ </td>
164
+ <td onClick={() => navigateToRegister('opv1_vaccine_age_greater_than_1yr')}>
165
+ {moh710Data.opv1_vaccine_age_greater_than_1yr}
166
+ </td>
109
167
  </tr>
110
168
  <tr>
111
169
  <td>OPV2 doses Administered</td>
112
- <td>{moh710Data.opv2_vaccine_age_less_than_1yr}</td>
113
- <td>{moh710Data.opv2_vaccine_age_greater_than_1yr}</td>
170
+ <td onClick={() => navigateToRegister('opv2_vaccine_age_less_than_1yr')}>
171
+ {moh710Data.opv2_vaccine_age_less_than_1yr}
172
+ </td>
173
+ <td onClick={() => navigateToRegister('opv2_vaccine_age_greater_than_1yr')}>
174
+ {moh710Data.opv2_vaccine_age_greater_than_1yr}
175
+ </td>
114
176
  </tr>
115
177
  <tr>
116
178
  <td>OPV3 doses Administered</td>
117
- <td>{moh710Data.opv3_vaccine_age_less_than_1yr}</td>
118
- <td>{moh710Data.opv3_vaccine_age_greater_than_1yr}</td>
179
+ <td onClick={() => navigateToRegister('opv3_vaccine_age_less_than_1yr')}>
180
+ {moh710Data.opv3_vaccine_age_less_than_1yr}
181
+ </td>
182
+ <td onClick={() => navigateToRegister('opv3_vaccine_age_greater_than_1yr')}>
183
+ {moh710Data.opv3_vaccine_age_greater_than_1yr}
184
+ </td>
119
185
  </tr>
120
186
  <tr>
121
187
  <td>IPV 1 doses Administered</td>
122
- <td>{moh710Data.ipv1_vaccine_age_less_than_1yr}</td>
123
- <td>{moh710Data.ipv1_vaccine_age_greater_than_1yr}</td>
188
+ <td onClick={() => navigateToRegister('ipv1_vaccine_age_less_than_1yr')}>
189
+ {moh710Data.ipv1_vaccine_age_less_than_1yr}
190
+ </td>
191
+ <td onClick={() => navigateToRegister('ipv1_vaccine_age_greater_than_1yr')}>
192
+ {moh710Data.ipv1_vaccine_age_greater_than_1yr}
193
+ </td>
124
194
  </tr>
125
195
  <tr>
126
196
  <td>IPV 2 doses Administered</td>
127
- <td>{moh710Data.ipv2_vaccine_age_less_than_1yr}</td>
128
- <td>{moh710Data.ipv2_vaccine_age_greater_than_1yr}</td>
197
+ <td onClick={() => navigateToRegister('ipv2_vaccine_age_less_than_1yr')}>
198
+ {moh710Data.ipv2_vaccine_age_less_than_1yr}
199
+ </td>
200
+ <td onClick={() => navigateToRegister('ipv2_vaccine_age_greater_than_1yr')}>
201
+ {moh710Data.ipv2_vaccine_age_greater_than_1yr}
202
+ </td>
129
203
  </tr>
130
204
  <tr>
131
205
  <td>DPT/Hep+HiB 1 doses Administered</td>
132
- <td>{moh710Data.dpt_hep_vaccine1_age_less_than_1yr}</td>
133
- <td>{moh710Data.dpt_hep_vaccine1_age_greater_than_1yr}</td>
206
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine1_age_less_than_1yr')}>
207
+ {moh710Data.dpt_hep_vaccine1_age_less_than_1yr}
208
+ </td>
209
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine1_age_greater_than_1yr')}>
210
+ {moh710Data.dpt_hep_vaccine1_age_greater_than_1yr}
211
+ </td>
134
212
  </tr>
135
213
  <tr>
136
214
  <td>DPT/Hep+HiB2 doses Administered</td>
137
- <td>{moh710Data.dpt_hep_vaccine2_age_less_than_1yr}</td>
138
- <td>{moh710Data.dpt_hep_vaccine2_age_greater_than_1yr}</td>
215
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine2_age_less_than_1yr')}>
216
+ {moh710Data.dpt_hep_vaccine2_age_less_than_1yr}
217
+ </td>
218
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine2_age_greater_than_1yr')}>
219
+ {moh710Data.dpt_hep_vaccine2_age_greater_than_1yr}
220
+ </td>
139
221
  </tr>
140
222
  <tr>
141
223
  <td>DPT/Hep+HiB3 doses Administered</td>
142
- <td>{moh710Data.dpt_hep_vaccine3_age_less_than_1yr}</td>
143
- <td>{moh710Data.dpt_hep_vaccine3_age_greater_than_1yr}</td>
224
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine3_age_less_than_1yr')}>
225
+ {moh710Data.dpt_hep_vaccine3_age_less_than_1yr}
226
+ </td>
227
+ <td onClick={() => navigateToRegister('dpt_hep_vaccine3_age_greater_than_1yr')}>
228
+ {moh710Data.dpt_hep_vaccine3_age_greater_than_1yr}
229
+ </td>
144
230
  </tr>
145
231
  <tr>
146
232
  <td>Pneumococal 1 doses Administered</td>
147
- <td>{moh710Data.pneumococal_vaccine1_age_less_than_1yr}</td>
148
- <td>{moh710Data.pneumococal_vaccine1_age_greater_than_1yr}</td>
233
+ <td onClick={() => navigateToRegister('pneumococal_vaccine1_age_less_than_1yr')}>
234
+ {moh710Data.pneumococal_vaccine1_age_less_than_1yr}
235
+ </td>
236
+ <td onClick={() => navigateToRegister('pneumococal_vaccine1_age_greater_than_1yr')}>
237
+ {moh710Data.pneumococal_vaccine1_age_greater_than_1yr}
238
+ </td>
149
239
  </tr>
150
240
  <tr>
151
241
  <td>Pneumococal 2 doses Administered</td>
152
- <td>{moh710Data.pneumococal_vaccine2_age_less_than_1yr}</td>
153
- <td>{moh710Data.pneumococal_vaccine2_age_greater_than_1yr}</td>
242
+ <td onClick={() => navigateToRegister('pneumococal_vaccine2_age_less_than_1yr')}>
243
+ {moh710Data.pneumococal_vaccine2_age_less_than_1yr}
244
+ </td>
245
+ <td onClick={() => navigateToRegister('pneumococal_vaccine2_age_greater_than_1yr')}>
246
+ {moh710Data.pneumococal_vaccine2_age_greater_than_1yr}
247
+ </td>
154
248
  </tr>
155
249
  <tr>
156
250
  <td>Pneumococal 3 doses Administered</td>
157
- <td>{moh710Data.pneumococal_vaccine3_age_less_than_1yr}</td>
158
- <td>{moh710Data.pneumococal_vaccine3_age_greater_than_1yr}</td>
251
+ <td onClick={() => navigateToRegister('pneumococal_vaccine3_age_less_than_1yr')}>
252
+ {moh710Data.pneumococal_vaccine3_age_less_than_1yr}
253
+ </td>
254
+ <td onClick={() => navigateToRegister('pneumococal_vaccine3_age_greater_than_1yr')}>
255
+ {moh710Data.pneumococal_vaccine3_age_greater_than_1yr}
256
+ </td>
159
257
  </tr>
160
258
  <tr>
161
259
  <td>Rotavirus 1 doses Administered</td>
162
- <td>{moh710Data.rotavirus_vaccine1_age_less_than_1yr}</td>
163
- <td>{moh710Data.rotavirus_vaccine1_age_greater_than_1yr}</td>
260
+ <td onClick={() => navigateToRegister('rotavirus_vaccine1_age_less_than_1yr')}>
261
+ {moh710Data.rotavirus_vaccine1_age_less_than_1yr}
262
+ </td>
263
+ <td onClick={() => navigateToRegister('rotavirus_vaccine1_age_greater_than_1yr')}>
264
+ {moh710Data.rotavirus_vaccine1_age_greater_than_1yr}
265
+ </td>
164
266
  </tr>
165
267
  <tr>
166
268
  <td>Rotavirus 2 doses Administered</td>
167
- <td>{moh710Data.rotavirus_vaccine2_age_less_than_1yr}</td>
168
- <td>{moh710Data.rotavirus_vaccine2_age_greater_than_1yr}</td>
269
+ <td onClick={() => navigateToRegister('rotavirus_vaccine2_age_less_than_1yr')}>
270
+ {moh710Data.rotavirus_vaccine2_age_less_than_1yr}
271
+ </td>
272
+ <td onClick={() => navigateToRegister('rotavirus_vaccine2_age_greater_than_1yr')}>
273
+ {moh710Data.rotavirus_vaccine2_age_greater_than_1yr}
274
+ </td>
169
275
  </tr>
170
276
  <tr>
171
277
  <td>Rotavirus 3 doses Administered</td>
172
- <td>{moh710Data.rotavirus_vaccine3_age_less_than_1yr}</td>
173
- <td>{moh710Data.rotavirus_vaccine3_age_greater_than_1yr}</td>
278
+ <td onClick={() => navigateToRegister('rotavirus_vaccine3_age_less_than_1yr')}>
279
+ {moh710Data.rotavirus_vaccine3_age_less_than_1yr}
280
+ </td>
281
+ <td onClick={() => navigateToRegister('rotavirus_vaccine3_age_greater_than_1yr')}>
282
+ {moh710Data.rotavirus_vaccine3_age_greater_than_1yr}
283
+ </td>
174
284
  </tr>
175
285
  <tr>
176
286
  <td>Vitamin A at 6 - 11 months(100, 000 IU)</td>
177
- <td>{moh710Data.vitaminA_vaccine_age_less_than_1yr}</td>
178
- <td>{moh710Data.vitaminA_vaccine_age_greater_than_1yr}</td>
287
+ <td onClick={() => navigateToRegister('vitaminA_vaccine_age_less_than_1yr')}>
288
+ {moh710Data.vitaminA_vaccine_age_less_than_1yr}
289
+ </td>
290
+ <td onClick={() => navigateToRegister('vitaminA_vaccine_age_greater_than_1yr')}>
291
+ {moh710Data.vitaminA_vaccine_age_greater_than_1yr}
292
+ </td>
179
293
  </tr>
180
294
  <tr>
181
295
  <td>Yellow fever doses Administered</td>
182
- <td>{moh710Data.yellow_fever_vaccine_age_greater_than_1yr}</td>
183
- <td>{moh710Data.yellow_fever_vaccine_age_less_than_1yr}</td>
296
+ <td onClick={() => navigateToRegister('yellow_fever_vaccine_age_greater_than_1yr')}>
297
+ {moh710Data.yellow_fever_vaccine_age_greater_than_1yr}
298
+ </td>
299
+ <td onClick={() => navigateToRegister('yellow_fever_vaccine_age_less_than_1yr')}>
300
+ {moh710Data.yellow_fever_vaccine_age_less_than_1yr}
301
+ </td>
184
302
  </tr>
185
303
  <tr>
186
304
  <td>Measles-Rubella 1 doses Administered</td>
187
- <td>{moh710Data.measles_vaccine_age_greater_than_1yr}</td>
188
- <td>{moh710Data.measles_vaccine_age_less_than_1yr}</td>
305
+ <td onClick={() => navigateToRegister('measles_vaccine_age_greater_than_1yr')}>
306
+ {moh710Data.measles_vaccine_age_greater_than_1yr}
307
+ </td>
308
+ <td onClick={() => navigateToRegister('measles_vaccine_age_less_than_1yr')}>
309
+ {moh710Data.measles_vaccine_age_less_than_1yr}
310
+ </td>
189
311
  </tr>
190
312
  <tr>
191
313
  <td>Typhoid Conjugate Vaccine (TCV) doses Administered</td>
192
- <td>{moh710Data.typhoid_conjugate_vaccine_age_greater_than_1yr}</td>
193
- <td>{moh710Data.typhoid_conjugate_vaccine_age_less_than_1yr}</td>
314
+ <td onClick={() => navigateToRegister('typhoid_conjugate_vaccine_age_greater_than_1yr')}>
315
+ {moh710Data.typhoid_conjugate_vaccine_age_greater_than_1yr}
316
+ </td>
317
+ <td onClick={() => navigateToRegister('typhoid_conjugate_vaccine_age_less_than_1yr')}>
318
+ {moh710Data.typhoid_conjugate_vaccine_age_less_than_1yr}
319
+ </td>
194
320
  </tr>
195
321
  <tr>
196
322
  <td>Fully Immunized Children(FIC) under 1 year</td>
@@ -203,7 +329,6 @@ const Moh710Report: React.FC = () => {
203
329
  </div>
204
330
  <div className={styles.container}>
205
331
  <p className={styles.title}>B. Vitamin A and Measles Rubella</p>
206
- <p className={styles.sectionTitle}>default</p>
207
332
  <div className={styles.tableContainer}>
208
333
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
209
334
  <thead>
@@ -215,15 +340,19 @@ const Moh710Report: React.FC = () => {
215
340
  <tbody>
216
341
  <tr>
217
342
  <td>Vitamin A at 12 to 59 months (200, 000 IU)</td>
218
- <td>{moh710Data.vitaminA_12_59_months}</td>
343
+ <td onClick={() => navigateToRegister('vitaminA_12_59_months')}>{moh710Data.vitaminA_12_59_months}</td>
219
344
  </tr>
220
345
  <tr>
221
346
  <td>Measles-Rubella 2 DoseAdm (at 1 1/2-2years)</td>
222
- <td>{moh710Data.measles_rubella_1_2_years}</td>
347
+ <td onClick={() => navigateToRegister('measles_rubella_1_2_years')}>
348
+ {moh710Data.measles_rubella_1_2_years}
349
+ </td>
223
350
  </tr>
224
351
  <tr>
225
352
  <td>Measles-Rubella 2 Dose Administered &gt;2 yrs</td>
226
- <td>{moh710Data.measles_rubella_greater_2_years}</td>
353
+ <td onClick={() => navigateToRegister('measles_rubella_greater_2_years')}>
354
+ {moh710Data.measles_rubella_greater_2_years}
355
+ </td>
227
356
  </tr>
228
357
  </tbody>
229
358
  </table>
@@ -231,7 +360,6 @@ const Moh710Report: React.FC = () => {
231
360
  </div>
232
361
  <div className={styles.container}>
233
362
  <p className={styles.title}>C. Tetanus Toxoid</p>
234
- <p className={styles.sectionTitle}>default</p>
235
363
  <div className={styles.tableContainer}>
236
364
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
237
365
  <thead>
@@ -248,7 +376,6 @@ const Moh710Report: React.FC = () => {
248
376
  </tbody>
249
377
  </table>
250
378
  </div>
251
- <p className={styles.sectionTitle}>1st Dose2nd Dose3rd Dose4th Dose5th Dose</p>
252
379
  <div className={styles.tableContainer}>
253
380
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
254
381
  <thead>
@@ -264,11 +391,11 @@ const Moh710Report: React.FC = () => {
264
391
  <tbody>
265
392
  <tr>
266
393
  <td>Tetanus Toxoid for Pregnant women</td>
267
- <td>{moh710Data.tetanus_toxoid1}</td>
268
- <td>{moh710Data.tetanus_toxoid2}</td>
269
- <td>{moh710Data.tetanus_toxoid3}</td>
270
- <td>{moh710Data.tetanus_toxoid4}</td>
271
- <td>{moh710Data.tetanus_toxoid5}</td>
394
+ <td onClick={() => navigateToRegister('tetanus_toxoid1')}>{moh710Data.tetanus_toxoid1}</td>
395
+ <td onClick={() => navigateToRegister('tetanus_toxoid2')}>{moh710Data.tetanus_toxoid2}</td>
396
+ <td onClick={() => navigateToRegister('tetanus_toxoid3')}>{moh710Data.tetanus_toxoid3}</td>
397
+ <td onClick={() => navigateToRegister('tetanus_toxoid4')}>{moh710Data.tetanus_toxoid4}</td>
398
+ <td onClick={() => navigateToRegister('tetanus_toxoid5')}>{moh710Data.tetanus_toxoid5}</td>
272
399
  </tr>
273
400
  </tbody>
274
401
  </table>
@@ -276,7 +403,6 @@ const Moh710Report: React.FC = () => {
276
403
  </div>
277
404
  <div className={styles.container}>
278
405
  <p className={styles.title}>D. HPV</p>
279
- <p className={styles.sectionTitle}>default</p>
280
406
  <div className={styles.tableContainer}>
281
407
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
282
408
  <thead>
@@ -288,16 +414,17 @@ const Moh710Report: React.FC = () => {
288
414
  <tbody>
289
415
  <tr>
290
416
  <td>HPV Vaccine Dose1(10-14years)</td>
291
- <td>{moh710Data.hpv_vaccine1_10_14_years}</td>
417
+ <td onClick={() => navigateToRegister('hpv_vaccine1_10_14_years')}>
418
+ {moh710Data.hpv_vaccine1_10_14_years}
419
+ </td>
292
420
  </tr>
293
421
  <tr>
294
422
  <td>HPV Vaccine Dose 2</td>
295
- <td>{moh710Data.hpv_vaccine2}</td>
423
+ <td onClick={() => navigateToRegister('hpv_vaccine2')}>{moh710Data.hpv_vaccine2}</td>
296
424
  </tr>
297
425
  </tbody>
298
426
  </table>
299
427
  </div>
300
- <p className={styles.sectionTitle}>At 10 yearsAbove 10 years</p>
301
428
  <div className={styles.tableContainer}>
302
429
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
303
430
  <thead>
@@ -310,13 +437,17 @@ const Moh710Report: React.FC = () => {
310
437
  <tbody>
311
438
  <tr>
312
439
  <td>HPV Vaccine 1</td>
313
- <td>{moh710Data.hpv_vaccine1_10_years}</td>
314
- <td>{moh710Data.hpv_vaccine1_greater_10_years}</td>
440
+ <td onClick={() => navigateToRegister('hpv_vaccine1_10_years')}>{moh710Data.hpv_vaccine1_10_years}</td>
441
+ <td onClick={() => navigateToRegister('hpv_vaccine1_greater_10_years')}>
442
+ {moh710Data.hpv_vaccine1_greater_10_years}
443
+ </td>
315
444
  </tr>
316
445
  <tr>
317
446
  <td>HPV Vaccine 2</td>
318
- <td>{moh710Data.hpv_vaccine2_10_years}</td>
319
- <td>{moh710Data.hpv_vaccine2_greater_10_years}</td>
447
+ <td onClick={() => navigateToRegister('hpv_vaccine2_10_years')}>{moh710Data.hpv_vaccine2_10_years}</td>
448
+ <td onClick={() => navigateToRegister('hpv_vaccine2_greater_10_years')}>
449
+ {moh710Data.hpv_vaccine2_greater_10_years}
450
+ </td>
320
451
  </tr>
321
452
  </tbody>
322
453
  </table>
@@ -324,7 +455,6 @@ const Moh710Report: React.FC = () => {
324
455
  </div>
325
456
  <div className={styles.container}>
326
457
  <p className={styles.title}>E. Adverse Events</p>
327
- <p className={styles.sectionTitle}>default</p>
328
458
  <div className={styles.tableContainer}>
329
459
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
330
460
  <thead>
@@ -341,7 +471,6 @@ const Moh710Report: React.FC = () => {
341
471
  </tbody>
342
472
  </table>
343
473
  </div>
344
- <p className={styles.sectionTitle}>&lt1 Years &gt;1Years</p>
345
474
  <div className={styles.tableContainer}>
346
475
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
347
476
  <thead>
@@ -363,7 +492,6 @@ const Moh710Report: React.FC = () => {
363
492
  </div>
364
493
  <div className={styles.container}>
365
494
  <p className={styles.title}>F. Special Clinics COVID 19</p>
366
- <p className={styles.sectionTitle}>12 - 17 Yrs18-59 Years60+ Years</p>
367
495
  <div className={styles.tableContainer}>
368
496
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
369
497
  <thead>
@@ -377,9 +505,15 @@ const Moh710Report: React.FC = () => {
377
505
  <tbody>
378
506
  <tr>
379
507
  <td>COVID 19 Reporting</td>
380
- <td>{moh710Data.covid_19_vaccine_12_17}</td>
381
- <td>{moh710Data.covid_19_vaccine_18_59}</td>
382
- <td>{moh710Data.covid_19_vaccine_60_above}</td>
508
+ <td onClick={() => navigateToRegister('covid_19_vaccine_12_17')}>
509
+ {moh710Data.covid_19_vaccine_12_17}
510
+ </td>
511
+ <td onClick={() => navigateToRegister('covid_19_vaccine_18_59')}>
512
+ {moh710Data.covid_19_vaccine_18_59}
513
+ </td>
514
+ <td onClick={() => navigateToRegister('covid_19_vaccine_60_above')}>
515
+ {moh710Data.covid_19_vaccine_60_above}
516
+ </td>
383
517
  </tr>
384
518
  </tbody>
385
519
  </table>
@@ -387,7 +521,6 @@ const Moh710Report: React.FC = () => {
387
521
  </div>
388
522
  <div className={styles.container}>
389
523
  <p className={styles.title}>Section B Logistics Dose Balance</p>
390
- <p className={styles.sectionTitle}>default</p>
391
524
  <div className={styles.tableContainer}>
392
525
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
393
526
  <thead>
@@ -641,7 +774,6 @@ const Moh710Report: React.FC = () => {
641
774
  </div>
642
775
  <div className={styles.container}>
643
776
  <p className={styles.title}>Section B: HPV Logistics Dose Balance</p>
644
- <p className={styles.sectionTitle}>default</p>
645
777
  <div className={styles.tableContainer}>
646
778
  <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
647
779
  <thead>
@@ -31,11 +31,15 @@ h3 {
31
31
 
32
32
  .tableBordered td,
33
33
  .tableBordered th {
34
- border: 1px solid #dee2e6;
34
+ border: 1px solid black;
35
35
  padding: 0.3rem;
36
36
  font-size: small;
37
37
  }
38
38
 
39
39
  .tableStriped tbody tr:nth-of-type(odd) {
40
40
  background-color: #f9f9f9;
41
+ }
42
+
43
+ .buttonContainer {
44
+ margin: 1rem;
41
45
  }