@ampath/esm-reports-app 1.0.0-next.3 → 1.0.0-next.30

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 (140) hide show
  1. package/dist/138.js +2 -0
  2. package/dist/138.js.LICENSE.txt +20 -0
  3. package/dist/138.js.map +1 -0
  4. package/dist/184.js +1 -1
  5. package/dist/184.js.map +1 -1
  6. package/dist/205.js +1 -0
  7. package/dist/205.js.map +1 -0
  8. package/dist/282.js +1 -1
  9. package/dist/282.js.LICENSE.txt +3 -3
  10. package/dist/282.js.map +1 -1
  11. package/dist/311.js +1 -0
  12. package/dist/311.js.map +1 -0
  13. package/dist/353.js +1 -2
  14. package/dist/353.js.map +1 -1
  15. package/dist/478.js +2 -0
  16. package/dist/478.js.LICENSE.txt +9 -0
  17. package/dist/478.js.map +1 -0
  18. package/dist/540.js +1 -1
  19. package/dist/540.js.map +1 -1
  20. package/dist/645.js +1 -0
  21. package/dist/645.js.map +1 -0
  22. package/dist/812.js +1 -0
  23. package/dist/812.js.map +1 -0
  24. package/dist/961.js +1 -1
  25. package/dist/961.js.map +1 -1
  26. package/dist/ampath-esm-reports-app.js +1 -1
  27. package/dist/ampath-esm-reports-app.js.buildmanifest.json +174 -99
  28. package/dist/ampath-esm-reports-app.js.map +1 -1
  29. package/dist/main.js +1 -1
  30. package/dist/main.js.map +1 -1
  31. package/dist/routes.json +1 -1
  32. package/package.json +2 -1
  33. package/src/common/report-filters/report-filters.component.tsx +127 -0
  34. package/src/common/report-filters/report-filters.scss +49 -0
  35. package/src/dashboard/reports-dasboard.tsx +38 -1
  36. package/src/dashboard/reports-dashboard.module.scss +14 -0
  37. package/src/index.ts +1 -1
  38. package/src/reports/datatable-wrapper/datatable-wrapper.component.tsx +54 -0
  39. package/src/reports/moh-240/moh-240-header.component.tsx +61 -0
  40. package/src/reports/moh-240/moh-240.component.tsx +68 -0
  41. package/src/reports/moh-240/moh-240.scss +3 -0
  42. package/src/reports/moh-240/sub-reports/moh-240-register.component.tsx +72 -0
  43. package/src/reports/moh-240/sub-reports/page-summary.component.tsx +95 -0
  44. package/src/reports/moh-505/moh-505-header.component.tsx +62 -0
  45. package/src/reports/moh-505/moh-505.component.tsx +240 -0
  46. package/src/reports/moh-505/moh-505.scss +3 -0
  47. package/src/reports/moh-705B/moh-204b-register.component.tsx +235 -0
  48. package/src/reports/moh-705B/moh-705b.component.tsx +524 -0
  49. package/src/reports/moh-705B/moh-705b.scss +44 -0
  50. package/src/reports/moh-705a/moh-705a.component.tsx +528 -0
  51. package/src/reports/moh-705a/moh-705a.scss +45 -0
  52. package/src/reports/moh-705a/registers/moh-204a-register.component.tsx +320 -0
  53. package/src/reports/moh-705a/type.ts +6 -0
  54. package/src/reports/moh-706/moh-706-header.component.tsx +61 -0
  55. package/src/reports/moh-706/moh-706.component.tsx +104 -0
  56. package/src/reports/moh-706/moh-706.scss +30 -0
  57. package/src/reports/moh-706/sub-reports/bacteriology/bacteriology.component.tsx +124 -0
  58. package/src/reports/moh-706/sub-reports/blood-chemistry/blood-chemistry.component.tsx +318 -0
  59. package/src/reports/moh-706/sub-reports/drug-susceptibility-testing/drug-susceptibility-testing.component.tsx +137 -0
  60. package/src/reports/moh-706/sub-reports/haematology/haematology.component.tsx +179 -0
  61. package/src/reports/moh-706/sub-reports/histology-and-cytology/histology-and-cytology.component.tsx +88 -0
  62. package/src/reports/moh-706/sub-reports/parasitology/parasitology.component.tsx +121 -0
  63. package/src/reports/moh-706/sub-reports/serology/serology.component.tsx +47 -0
  64. package/src/reports/moh-706/sub-reports/specimen-referral-to-higher-levels/specimen-referral-to-higher-levels.component.tsx +39 -0
  65. package/src/reports/moh-706/sub-reports/urine-analysis/urine-analysis.component.tsx +108 -0
  66. package/src/reports/moh-710/moh-710.component.tsx +665 -0
  67. package/src/reports/moh-710/moh-710.scss +45 -0
  68. package/src/reports/moh-710/patient-list/moh-710-patient-list.component.tsx +13 -0
  69. package/src/reports/moh-711/moh-711.component.tsx +139 -0
  70. package/src/reports/moh-711/moh711.scss +82 -0
  71. package/src/reports/moh-711/registers/moh-333-register.component.tsx +636 -0
  72. package/src/reports/moh-711/registers/moh-405-register.component.tsx +518 -0
  73. package/src/reports/moh-711/registers/moh-406-register.component.tsx +530 -0
  74. package/src/reports/moh-711/registers/moh-510-register.component.tsx +61 -0
  75. package/src/reports/moh-711/registers/moh-511-register.component.tsx +263 -0
  76. package/src/reports/moh-711/registers/type.ts +194 -0
  77. package/src/reports/moh-711/sections/anc.component.tsx +153 -0
  78. package/src/reports/moh-711/sections/cervical-cancer.component.tsx +104 -0
  79. package/src/reports/moh-711/sections/chanis.component.tsx +367 -0
  80. package/src/reports/moh-711/sections/family-planning.component.tsx +221 -0
  81. package/src/reports/moh-711/sections/gbv.component.tsx +115 -0
  82. package/src/reports/moh-711/sections/maternity.component.tsx +319 -0
  83. package/src/reports/moh-711/sections/medical-social-work.component.tsx +83 -0
  84. package/src/reports/moh-711/sections/other.component.tsx +47 -0
  85. package/src/reports/moh-711/sections/physiotherapy.component.tsx +61 -0
  86. package/src/reports/moh-711/sections/pnc.component.tsx +118 -0
  87. package/src/reports/moh-711/sections/post-abortion.component.tsx +42 -0
  88. package/src/reports/moh-711/sections/rehabilitation.component.tsx +57 -0
  89. package/src/reports/moh-711/sections/report-compiled-by.component.tsx +42 -0
  90. package/src/reports/moh-711/sections/tb-screening.component.tsx +57 -0
  91. package/src/reports/moh-717/moh-717.component.tsx +170 -0
  92. package/src/reports/moh-717/moh717.scss +154 -0
  93. package/src/reports/moh-717/sections/finance.component.tsx +42 -0
  94. package/src/reports/moh-717/sections/inpatient.component.tsx +374 -0
  95. package/src/reports/moh-717/sections/maternity.component.tsx +119 -0
  96. package/src/reports/moh-717/sections/medical-records.component.tsx +35 -0
  97. package/src/reports/moh-717/sections/mortuary.component.tsx +43 -0
  98. package/src/reports/moh-717/sections/operations.component.tsx +53 -0
  99. package/src/reports/moh-717/sections/orthopaedic-trauma.component.tsx +98 -0
  100. package/src/reports/moh-717/sections/outpatient.component.tsx +489 -0
  101. package/src/reports/moh-717/sections/pharmacy.component.tsx +43 -0
  102. package/src/reports/moh-717/sections/preparedby.component.tsx +47 -0
  103. package/src/reports/moh-717/sections/special-services.component.tsx +114 -0
  104. package/src/reports/moh-740/moh-740.component.scss +120 -0
  105. package/src/reports/moh-740/moh-740.component.tsx +1263 -0
  106. package/src/reports/moh-740/moh-740.resource.ts +42 -0
  107. package/src/reports/moh-740/registers/moh-222-daily-register/moh-222-daily-register.tsx +6 -0
  108. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.scss +18 -0
  109. package/src/reports/moh-740/registers/moh-270-permanent-register/moh-270-permanent-register.tsx +79 -0
  110. package/src/reports/moh-740/registers/moh-740-patient-list.scss +0 -0
  111. package/src/reports/moh-740/registers/moh-740-patient-list.tsx +43 -0
  112. package/src/reports/moh-740/shared/data-cell/data-cell.scss +6 -0
  113. package/src/reports/moh-740/shared/data-cell/data-cell.tsx +23 -0
  114. package/src/reports/moh-740/shared/utils/format-indicator.ts +22 -0
  115. package/src/reports/moh-740/types/index.ts +183 -0
  116. package/src/reports/moh-745/moh-745.component.tsx +928 -0
  117. package/src/reports/moh-745/moh-745.scss +74 -0
  118. package/src/reports/moh-745/registers/moh-412-register.component.tsx +191 -0
  119. package/src/reports/moh-745/registers/type.ts +29 -0
  120. package/src/reports/table-wrapper/table-row-mapper.component.tsx +51 -0
  121. package/src/reports/table-wrapper/table-wrapper.component.tsx +21 -0
  122. package/src/reports/table-wrapper/table-wrapper.scss +31 -0
  123. package/src/resources/moh-705.resource.ts +117 -0
  124. package/src/resources/moh-706.resource.ts +86 -0
  125. package/src/resources/moh-710.resource.ts +60 -0
  126. package/src/resources/moh-711.resource.ts +175 -0
  127. package/src/resources/moh-717.resource.ts +35 -0
  128. package/src/resources/moh-745.resource.ts +64 -0
  129. package/src/root.component.tsx +38 -0
  130. package/src/utils/get-base-url.ts +12 -0
  131. package/src/utils/utils.ts +36 -0
  132. package/dist/255.js +0 -1
  133. package/dist/255.js.map +0 -1
  134. package/dist/353.js.LICENSE.txt +0 -39
  135. package/dist/36.js +0 -1
  136. package/dist/36.js.map +0 -1
  137. package/dist/734.js +0 -1
  138. package/dist/734.js.map +0 -1
  139. package/dist/97.js +0 -1
  140. package/dist/97.js.map +0 -1
@@ -0,0 +1,636 @@
1
+ import { Button, Loading } from '@carbon/react';
2
+ import React, { useEffect, useState } from 'react';
3
+ import { useNavigate, useSearchParams } from 'react-router-dom';
4
+
5
+ import styles from '../moh711.scss';
6
+ import classNames from 'classnames';
7
+ import { getMoh333PatientList } from '../../../resources/moh-711.resource';
8
+ import { moh333Columns } from './type';
9
+
10
+ const Moh333Register: React.FC = () => {
11
+ const navigate = useNavigate();
12
+ const [patientlist, setPatientList] = useState<any[]>([]);
13
+ const [isLoading, setIsLoading] = useState(false);
14
+
15
+ const [searchParams] = useSearchParams();
16
+
17
+ const startDate = searchParams.get('startDate');
18
+ const endDate = searchParams.get('endDate');
19
+ const locationUuids = searchParams.get('locationUuids');
20
+ const indicator = searchParams.get('indicator');
21
+
22
+ useEffect(() => {
23
+ const fetchData = async () => {
24
+ if (!startDate || !endDate || !locationUuids || !indicator) return;
25
+
26
+ setIsLoading(true);
27
+
28
+ try {
29
+ const params = {
30
+ startDate,
31
+ endDate,
32
+ locationUuids,
33
+ indicator,
34
+ };
35
+
36
+ const data = await getMoh333PatientList(params);
37
+
38
+ setPatientList(data?.results.results || []);
39
+ } catch (error) {
40
+ console.error('Failed to fetch register data', error);
41
+ } finally {
42
+ setIsLoading(false);
43
+ }
44
+ };
45
+
46
+ fetchData();
47
+ }, [startDate, endDate, locationUuids, indicator]);
48
+
49
+ function navigateBack() {
50
+ navigate('/moh-711');
51
+ }
52
+ return (
53
+ <>
54
+ {' '}
55
+ <div className={styles.buttonContainer}>
56
+ <Button onClick={navigateBack}>Back</Button>
57
+ </div>
58
+ <div>{isLoading && <Loading />}</div>
59
+ <div className={styles.tableContainer}>
60
+ <table className={classNames(`${styles.table}`, `${styles.tableBordered}`, `${styles.tableStriped}`)}>
61
+ <thead>
62
+ <tr>
63
+ <th rowSpan={6}>
64
+ Date of
65
+ <br />
66
+ Admission <br />
67
+ (dd/mm/yyyy)
68
+ </th>
69
+ <th rowSpan={6}>AMRSID</th>
70
+ <th>Admission number (yyyy-mm-nnnn)</th>
71
+ <th rowSpan={6}>
72
+ Full Name
73
+ <br />
74
+ (First, Middle, surname)
75
+ </th>
76
+ <th>
77
+ Date of Birth <br />
78
+ (dd/mm/yyyy)
79
+ </th>
80
+ <th rowSpan={6}>
81
+ County/ <br />
82
+ Subcounty
83
+ </th>
84
+ <th>
85
+ Village/
86
+ <br />
87
+ Estate/
88
+ <br />
89
+ Land mark
90
+ </th>
91
+ <th rowSpan={6}>
92
+ Marital Status <br />
93
+ 1 = Married
94
+ <br />
95
+ 2 = Widowed <br />
96
+ 3 = Single
97
+ <br />
98
+ 4 = Divorced
99
+ <br />5 = Separated
100
+ </th>
101
+ <th rowSpan={6}>
102
+ Parity
103
+ <br />
104
+ (X+Y)
105
+ </th>
106
+ <th rowSpan={6}>Gravidae</th>
107
+ <th rowSpan={6}>
108
+ No. of <br />
109
+ ANC <br />
110
+ visits
111
+ </th>
112
+ <th rowSpan={6}>
113
+ Date of Last
114
+ <br />
115
+ Menstrual
116
+ <br />
117
+ Period (LMP) <br />
118
+ (dd/mm/yyyy)
119
+ </th>
120
+ <th rowSpan={6}>
121
+ Estimated Date <br />
122
+ of Delivery
123
+ <br />
124
+ (EDD)
125
+ <br />
126
+ (dd/mm/yyyy)
127
+ </th>
128
+ <th rowSpan={6}>Diagnosis</th>
129
+ <th colSpan={13}>Delivery</th>
130
+ <th colSpan={9}></th>
131
+ <th>
132
+ VDRL/
133
+ <br />
134
+ RPR
135
+ <br />
136
+ Results
137
+ <br />
138
+ (Specify
139
+ <br />
140
+ 1-VDRL
141
+ <br />
142
+ 2-RPR
143
+ <br />
144
+ 3-Duo
145
+ <br />
146
+ testing)
147
+ </th>
148
+ <th colSpan={4}>Baby</th>
149
+ <th>
150
+ Maternal <br />
151
+ HAART
152
+ </th>
153
+ <th>
154
+ Infant <br />
155
+ Prophylaxis
156
+ </th>
157
+ <th>
158
+ Partner <br />
159
+ Tested for <br />
160
+ HIV
161
+ </th>
162
+ <th rowSpan={6}>
163
+ Counselled <br />
164
+ on infant <br />
165
+ feeding <br />
166
+ (Y/N/NA)
167
+ </th>
168
+ <th rowSpan={6}>
169
+ Delivery <br />
170
+ Conducted by <br />
171
+ (Enter Name)
172
+ </th>
173
+ <th rowSpan={6}>
174
+ Birth <br />
175
+ Notification <br />
176
+ Number
177
+ </th>
178
+ <th colSpan={2}>Discharge</th>
179
+ <th colSpan={3}>Referral</th>
180
+ <th rowSpan={6}>Comments</th>
181
+ </tr>
182
+ <tr>
183
+ <th rowSpan={5}>NUPI</th>
184
+ <th rowSpan={5}>Age</th>
185
+ <th rowSpan={5}>Phone number</th>
186
+ <th rowSpan={5}>
187
+ Duration of <br />
188
+ labour
189
+ <br />
190
+ (hours)
191
+ </th>
192
+ <th rowSpan={5}>
193
+ Date of
194
+ <br />
195
+ Delivery <br />
196
+ (dd/mm/yyyy)
197
+ </th>
198
+ <th rowSpan={5}>
199
+ Time of
200
+ <br />
201
+ Delivery
202
+ </th>
203
+ <th rowSpan={5}>
204
+ Gestation
205
+ <br />
206
+ at Birth
207
+ <br />
208
+ (wks)
209
+ </th>
210
+ <th rowSpan={5}>
211
+ Mode of <br />
212
+ Delivery <br />
213
+ 1) SVD
214
+ <br />
215
+ 2) CS
216
+ <br />
217
+ 3) Breech
218
+ <br />
219
+ 4) AVD
220
+ </th>
221
+ <th rowSpan={5}>
222
+ No.of babies <br />
223
+ delivered
224
+ </th>
225
+ <th rowSpan={5}>
226
+ Placenta
227
+ <br />
228
+ Complete <br />
229
+ 1=Yes
230
+ <br />
231
+ 2=No
232
+ <br />
233
+ 3=BBA
234
+ </th>
235
+ <th rowSpan={5}>
236
+ Uterotonic <br />
237
+ given <br />
238
+ 1=oxytocin <br />
239
+ 2=Carbetocin <br />
240
+ 3=Others <br />
241
+ Specify
242
+ <br />
243
+ 4= None
244
+ </th>
245
+ <th rowSpan={5}>
246
+ Vaginal
247
+ <br />
248
+ Examination
249
+ <br />
250
+ 1= Normal
251
+ <br />
252
+ 2=Episiotomy
253
+ <br />
254
+ 3=Vaginal tear
255
+ <br />
256
+ 4=FGM
257
+ <br />
258
+ 5=Vaginal warts
259
+ </th>
260
+ <th rowSpan={5}>
261
+ Blood
262
+ <br />
263
+ loss
264
+ <br />
265
+ (mls)
266
+ </th>
267
+ <th rowSpan={5}>
268
+ Mother's <br />
269
+ status after <br />
270
+ Delivery
271
+ <br />
272
+ (Alive/ <br />
273
+ Dead)
274
+ </th>
275
+ <th>
276
+ Maternal deaths <br />
277
+ Notified <br />
278
+ (Y/N/NA)
279
+ </th>
280
+ <th rowSpan={5}>
281
+ Delivery
282
+ <br />
283
+ Complications
284
+ <br />
285
+ 1=A.P.H. (Ante Partum <br />
286
+ Haemorrhage); <br />
287
+ 2=P.P.H. (Post Partum <br />
288
+ Haemorrhage); <br />
289
+ 3= Eclampsia; <br />
290
+ 4=Ruptured Uterus;
291
+ <br />
292
+ 5=Obstructed labour; <br />
293
+ 6=Sepsis <br />
294
+ 7= NA
295
+ </th>
296
+ <th rowSpan={5}>
297
+ APGAR <br />
298
+ Score
299
+ </th>
300
+ <th rowSpan={5}>
301
+ Birth
302
+ <br />
303
+ Outcome
304
+ <br />
305
+ (LB/FSB/ <br />
306
+ MSB)
307
+ </th>
308
+ <th rowSpan={5}>
309
+ Birth <br />
310
+ Weight
311
+ <br />
312
+ (grams)
313
+ </th>
314
+ <th rowSpan={5}>
315
+ Sex <br />
316
+ (M/F)
317
+ </th>
318
+ <th>
319
+ Initiated on <br />
320
+ BF in
321
+ <br />
322
+ &lt; 1hr
323
+ <br />
324
+ (Y/N)
325
+ </th>
326
+ <th rowSpan={5}>
327
+ TEO
328
+ <br />
329
+ given at
330
+ <br />
331
+ birth? <br />
332
+ (Y/N)
333
+ </th>
334
+ <th rowSpan={5}>
335
+ Chlorhexidine <br />
336
+ applied on <br />
337
+ cord stump
338
+ <br />
339
+ (Y/N)
340
+ </th>
341
+ <th>
342
+ Birth with <br />
343
+ deformity <br />
344
+ (Y/N)
345
+ </th>
346
+ <th rowSpan={5}>
347
+ Given
348
+ <br />
349
+ Vitamin <br />
350
+ K <br />
351
+ (Y/N)
352
+ </th>
353
+ <th rowSpan={5}>(P/N/ND)</th>
354
+ <th>HIV Test 1</th>
355
+ <th>HIV Test 2</th>
356
+ <th>HIV Test 3</th>
357
+ <th>
358
+ HIV Result <br />
359
+ Maternity <br />
360
+ (N/P/Inc/U/NA)
361
+ </th>
362
+ <th>
363
+ Start at <br />
364
+ Maternity
365
+ </th>
366
+ <th rowSpan={5}>(Y/N/NA)</th>
367
+ <th rowSpan={5}>(Y/N/NA)</th>
368
+ <th rowSpan={5}>
369
+ Date <br />
370
+ (dd/mm/yyyy)
371
+ </th>
372
+ <th rowSpan={5}>
373
+ Status of <br />
374
+ Baby
375
+ <br />
376
+ A= Alive
377
+ <br />
378
+ D= Dead
379
+ </th>
380
+ <th>From</th>
381
+ <th>To</th>
382
+ <th rowSpan={5}>Reason for referral</th>
383
+ </tr>
384
+ <tr>
385
+ <th rowSpan={4}>
386
+ Date Death <br />
387
+ notified
388
+ </th>
389
+ <th rowSpan={4}>
390
+ Kangaroo <br />
391
+ Mother <br />
392
+ Care <br />
393
+ (Y/N)
394
+ </th>
395
+ <th rowSpan={4}>
396
+ 1- congenital <br />
397
+ syphilis.
398
+ <br />
399
+ 2- spina bifida, <br />
400
+ 3- Hydrocephalus,
401
+ <br />
402
+ 4- Talipes
403
+ </th>
404
+ <th>Kit Name:</th>
405
+ <th>Kit Name:</th>
406
+ <th>Kit Name:</th>
407
+ <th rowSpan={4}>
408
+ Initial/Retest/
409
+ <br />
410
+ NA
411
+ </th>
412
+ <th rowSpan={4}>(Y/N/NA)</th>
413
+ <th rowSpan={4}>
414
+ 1= From Community <br />
415
+ Unit,
416
+ <br />
417
+ 2= From Another
418
+ <br />
419
+ Health Facility, <br />
420
+ 3=Not Applicable
421
+ </th>
422
+ <th rowSpan={4}>
423
+ 1= To Community
424
+ <br />
425
+ Unit, <br />
426
+ 2=Referred to HIV <br />
427
+ preventive services
428
+ <br />
429
+ 3=Another Health <br />
430
+ Facility,
431
+ <br />
432
+ 4=Not Applicable
433
+ </th>
434
+ </tr>
435
+ <tr>
436
+ <th>Lot No.</th>
437
+ <th>Lot No.</th>
438
+ <th>Lot No.</th>
439
+ </tr>
440
+ <tr>
441
+ <th>Expiry / /</th>
442
+ <th>Expiry / /</th>
443
+ <th>Expiry / /</th>
444
+ </tr>
445
+ <tr>
446
+ <th>(N/P/I/NA)</th>
447
+ <th>(N/P/I/NA)</th>
448
+ <th>(N/P/I/NA)</th>
449
+ </tr>
450
+ </thead>
451
+ <tbody>
452
+ <tr>
453
+ <td className={styles.textCenter}>(a)</td>
454
+ <td className={styles.textCenter}>(b)</td>
455
+ <td className={styles.textCenter}>(c)</td>
456
+ <td className={styles.textCenter}>(d)</td>
457
+ <td className={styles.textCenter}>(e)</td>
458
+ <td className={styles.textCenter}>(f)</td>
459
+ <td className={styles.textCenter}>(g)</td>
460
+ <td className={styles.textCenter}>(h)</td>
461
+ <td className={styles.textCenter}>(i)</td>
462
+ <td className={styles.textCenter}>(j)</td>
463
+ <td className={styles.textCenter}>(k)</td>
464
+ <td className={styles.textCenter}>(l)</td>
465
+ <td className={styles.textCenter}>(m)</td>
466
+ <td className={styles.textCenter}>(n)</td>
467
+ <td className={styles.textCenter}>(o)</td>
468
+ <td className={styles.textCenter}>(p)</td>
469
+ <td className={styles.textCenter}>(q)</td>
470
+ <td className={styles.textCenter}>(r)</td>
471
+ <td className={styles.textCenter}>(s)</td>
472
+ <td className={styles.textCenter}>(t)</td>
473
+ <td className={styles.textCenter}>(u)</td>
474
+ <td className={styles.textCenter}>(v)</td>
475
+ <td className={styles.textCenter}>(w)</td>
476
+ <td className={styles.textCenter}>(x)</td>
477
+ <td className={styles.textCenter}>(y)</td>
478
+ <td className={styles.textCenter}>(z)</td>
479
+ <td className={styles.textCenter}>(aa)</td>
480
+ <td className={styles.textCenter}>(ab)</td>
481
+ <td className={styles.textCenter}>(ac)</td>
482
+ <td className={styles.textCenter}>(ad)</td>
483
+ <td className={styles.textCenter}>(ae)</td>
484
+ <td className={styles.textCenter}>(af)</td>
485
+ <td className={styles.textCenter}>(ag)</td>
486
+ <td className={styles.textCenter}>(ah)</td>
487
+ <td className={styles.textCenter}>(ai)</td>
488
+ <td className={styles.textCenter}>(aj)</td>
489
+ <td colSpan={3} className={styles.textCenter}>
490
+ (ak)
491
+ </td>
492
+ <td className={styles.textCenter}>(al)</td>
493
+ <td className={styles.textCenter}>(am)</td>
494
+ <td className={styles.textCenter}>(an)</td>
495
+ <td className={styles.textCenter}>(ao)</td>
496
+ <td className={styles.textCenter}>(ap)</td>
497
+ <td className={styles.textCenter}>(aq)</td>
498
+ <td className={styles.textCenter}>(ar)</td>
499
+ <td className={styles.textCenter}>(as)</td>
500
+ <td className={styles.textCenter}>(at)</td>
501
+ <td className={styles.textCenter}>(au)</td>
502
+ <td className={styles.textCenter}>(av)</td>
503
+ <td className={styles.textCenter}>(aw)</td>
504
+ <td className={styles.textCenter}>(ax)</td>
505
+ <td className={styles.textCenter}>(ay)</td>
506
+ </tr>
507
+ {patientlist?.length > 0 ? (
508
+ patientlist.map((row, i) => (
509
+ <React.Fragment key={i}>
510
+ <tr>
511
+ <td rowSpan={2}>
512
+ {row.date_of_admission ? new Date(row.date_of_admission).toLocaleDateString('en-GB') : ''}
513
+ </td>
514
+ <td rowSpan={2}>{row.amrsID}</td>
515
+ <td>{row.admission_number}</td>
516
+ <td rowSpan={2}>{row.full_names}</td>
517
+
518
+ <td>{row.date_of_birth ? new Date(row.date_of_birth).toLocaleDateString('en-GB') : ''}</td>
519
+
520
+ <td rowSpan={2}>{row.subcounty_county}</td>
521
+ <td>{row.village_estate_landmark}</td>
522
+ <td rowSpan={2}>{row.marital_status}</td>
523
+ <td rowSpan={2}>{row.parity}</td>
524
+ <td rowSpan={2}>{row.gravidae}</td>
525
+ <td rowSpan={2}>{row.no_of_anc_visits}</td>
526
+
527
+ <td rowSpan={2}>{row.lmp ? new Date(row.lmp).toLocaleDateString('en-GB') : ''}</td>
528
+
529
+ <td rowSpan={2}>{row.edd ? new Date(row.edd).toLocaleDateString('en-GB') : ''}</td>
530
+
531
+ <td rowSpan={2}>{row.diagnosis}</td>
532
+ <td rowSpan={2}>{row.duration_of_labour}</td>
533
+
534
+ <td rowSpan={2}>
535
+ {row.date_of_delivery ? new Date(row.date_of_delivery).toLocaleDateString('en-GB') : ''}
536
+ </td>
537
+
538
+ <td rowSpan={2}>{row.time_of_delivery}</td>
539
+ <td rowSpan={2}>{row.gestation_at_birth}</td>
540
+ <td rowSpan={2}>{row.mode_of_delivery}</td>
541
+ <td rowSpan={2}>{row.no_of_babies_delivered}</td>
542
+ <td rowSpan={2}>{row.placenta_complete}</td>
543
+ <td rowSpan={2}>{row.uterotonic_given}</td>
544
+ <td rowSpan={2}>{row.vaginal_examination}</td>
545
+ <td rowSpan={2}>{row.blood_loss}</td>
546
+ <td rowSpan={2}>{row.mother_status_after_delivery}</td>
547
+
548
+ <td>{row.maternal_deaths_notified}</td>
549
+
550
+ <td rowSpan={2}>{row.delivery_complications}</td>
551
+ <td rowSpan={2}>{row.apgar_score}</td>
552
+ <td rowSpan={2}>{row.birth_outcome}</td>
553
+ <td rowSpan={2}>{row.birth_weight}</td>
554
+ <td rowSpan={2}>{row.sex}</td>
555
+
556
+ <td>{row.initiated_on_bf_less_one_hour}</td>
557
+
558
+ <td rowSpan={2}>{row.teo_given_at_birth}</td>
559
+ <td rowSpan={2}>{row.chlorhexdine_applied_on_cord_stump}</td>
560
+ <td>{row.birth_with_deformity}</td>
561
+ <td rowSpan={2}>{row.given_vitamin_k}</td>
562
+
563
+ <td>{row.duo_test_result}</td>
564
+
565
+ <td rowSpan={2}>
566
+ {row.hiv_test_1_kit_name} / {row.hiv_test_1_lot_no} /{' '}
567
+ {row.hiv_test_1_expiry_date
568
+ ? new Date(row.hiv_test_1_expiry_date).toLocaleDateString('en-GB')
569
+ : ''}
570
+ </td>
571
+
572
+ <td rowSpan={2}>
573
+ {row.hiv_test_2_kit_name} / {row.hiv_test_2_lot_no} /{' '}
574
+ {row.hiv_test_2_expiry_date
575
+ ? new Date(row.hiv_test_2_expiry_date).toLocaleDateString('en-GB')
576
+ : ''}
577
+ </td>
578
+
579
+ <td rowSpan={2}>
580
+ {row.hiv_test_3_kit_name} / {row.hiv_test_3_lot_no} /{' '}
581
+ {row.hiv_test_3_expiry_date
582
+ ? new Date(row.hiv_test_3_expiry_date).toLocaleDateString('en-GB')
583
+ : ''}
584
+ </td>
585
+
586
+ <td>{row.hiv_test_results_maternity}</td>
587
+
588
+ <td rowSpan={2}>{row.maternal_haart}</td>
589
+ <td rowSpan={2}>{row.infant_prophylaxis}</td>
590
+ <td rowSpan={2}>{row.partner_tested_for_hiv}</td>
591
+ <td rowSpan={2}>{row.counselled_on_infant_feeding}</td>
592
+ <td rowSpan={2}>{row.deleivery_conducted_by}</td>
593
+ <td rowSpan={2}>{row.birth_notification_number}</td>
594
+
595
+ <td rowSpan={2}>
596
+ {row.discharge_date ? new Date(row.discharge_date).toLocaleDateString('en-GB') : ''}
597
+ </td>
598
+
599
+ <td rowSpan={2}>{row.discharge_status_of_baby}</td>
600
+ <td rowSpan={2}>{row.referrals_from}</td>
601
+ <td rowSpan={2}>{row.referrals_to}</td>
602
+ <td rowSpan={2}>{row.reasons_for_refferal}</td>
603
+ <td rowSpan={2}>{row.comments}</td>
604
+ </tr>
605
+
606
+ <tr>
607
+ <td>{row.nupi}</td>
608
+ <td>{row.age}</td>
609
+ <td>{row.phone_number}</td>
610
+
611
+ <td>
612
+ {row.date_maternal_death_notified
613
+ ? new Date(row.date_maternal_death_notified).toLocaleDateString('en-GB')
614
+ : ''}
615
+ </td>
616
+
617
+ <td>{row.kangaroo_mother_care}</td>
618
+ <td>{row.type_of_deformity}</td>
619
+ <td>{row.hiv_test_type}</td>
620
+ <td>{row.hiv_test_type}</td>
621
+ </tr>
622
+ </React.Fragment>
623
+ ))
624
+ ) : (
625
+ <tr>
626
+ <td colSpan={moh333Columns.length}>No data available</td>
627
+ </tr>
628
+ )}
629
+ </tbody>
630
+ </table>
631
+ </div>
632
+ </>
633
+ );
634
+ };
635
+
636
+ export default Moh333Register;