@ampath/esm-reports-app 1.0.0-next.7 → 1.0.0-next.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/dist/812.js +1 -1
- package/dist/{711.js → 879.js} +1 -1
- package/dist/{711.js.map → 879.js.map} +1 -1
- package/dist/ampath-esm-reports-app.js.buildmanifest.json +26 -26
- package/dist/main.js +1 -1
- package/dist/routes.json +1 -1
- package/package.json +1 -1
- package/src/reports/moh-706/sub-reports/bacteriology/bacteriology.component.tsx +24 -39
- package/src/reports/moh-706/sub-reports/blood-chemistry/blood-chemistry.component.tsx +22 -35
- package/src/reports/moh-706/sub-reports/drug-susceptibility-testing/drug-susceptibility-testing.component.tsx +31 -46
- package/src/reports/moh-706/sub-reports/haematology/haematology.component.tsx +23 -38
- package/src/reports/moh-706/sub-reports/histology-and-cytology/histology-and-cytology.component.tsx +20 -35
- package/src/reports/moh-706/sub-reports/parasitology/parasitology.component.tsx +9 -24
- package/src/reports/moh-706/sub-reports/serology/serology.component.tsx +7 -22
- package/src/reports/moh-706/sub-reports/specimen-referral-to-higher-levels/specimen-referral-to-higher-levels.component.tsx +7 -22
- package/src/reports/moh-706/sub-reports/urine-analysis/urine-analysis.component.tsx +17 -32
- package/src/reports/table-wrapper/table-row-mapper.component.tsx +42 -0
- package/src/utils/utils.ts +7 -0
|
@@ -432,30 +432,6 @@
|
|
|
432
432
|
"hash": "38c7cb6254f8f614",
|
|
433
433
|
"childrenByOrder": {}
|
|
434
434
|
},
|
|
435
|
-
{
|
|
436
|
-
"rendered": true,
|
|
437
|
-
"initial": false,
|
|
438
|
-
"entry": false,
|
|
439
|
-
"recorded": false,
|
|
440
|
-
"size": 324424,
|
|
441
|
-
"sizes": {
|
|
442
|
-
"javascript": 324424
|
|
443
|
-
},
|
|
444
|
-
"names": [],
|
|
445
|
-
"idHints": [],
|
|
446
|
-
"runtime": [
|
|
447
|
-
"@ampath/esm-reports-app",
|
|
448
|
-
"main"
|
|
449
|
-
],
|
|
450
|
-
"files": [
|
|
451
|
-
"711.js"
|
|
452
|
-
],
|
|
453
|
-
"auxiliaryFiles": [
|
|
454
|
-
"711.js.map"
|
|
455
|
-
],
|
|
456
|
-
"hash": "65d1349cac1d3d5c",
|
|
457
|
-
"childrenByOrder": {}
|
|
458
|
-
},
|
|
459
435
|
{
|
|
460
436
|
"rendered": true,
|
|
461
437
|
"initial": true,
|
|
@@ -481,7 +457,7 @@
|
|
|
481
457
|
"auxiliaryFiles": [
|
|
482
458
|
"main.js.map"
|
|
483
459
|
],
|
|
484
|
-
"hash": "
|
|
460
|
+
"hash": "9e7f9cb2c709901c",
|
|
485
461
|
"childrenByOrder": {}
|
|
486
462
|
},
|
|
487
463
|
{
|
|
@@ -505,7 +481,31 @@
|
|
|
505
481
|
"auxiliaryFiles": [
|
|
506
482
|
"812.js.map"
|
|
507
483
|
],
|
|
508
|
-
"hash": "
|
|
484
|
+
"hash": "296f5eb3d4e3ba43",
|
|
485
|
+
"childrenByOrder": {}
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
"rendered": true,
|
|
489
|
+
"initial": false,
|
|
490
|
+
"entry": false,
|
|
491
|
+
"recorded": false,
|
|
492
|
+
"size": 319389,
|
|
493
|
+
"sizes": {
|
|
494
|
+
"javascript": 319389
|
|
495
|
+
},
|
|
496
|
+
"names": [],
|
|
497
|
+
"idHints": [],
|
|
498
|
+
"runtime": [
|
|
499
|
+
"@ampath/esm-reports-app",
|
|
500
|
+
"main"
|
|
501
|
+
],
|
|
502
|
+
"files": [
|
|
503
|
+
"879.js"
|
|
504
|
+
],
|
|
505
|
+
"auxiliaryFiles": [
|
|
506
|
+
"879.js.map"
|
|
507
|
+
],
|
|
508
|
+
"hash": "5ae80764bd063673",
|
|
509
509
|
"childrenByOrder": {}
|
|
510
510
|
},
|
|
511
511
|
{
|
package/dist/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var e,r,t,o,n={8812(e,r,t){"use strict";t.d(r,{moduleName:()=>l});var o,n=t(2141),a=(n.Type.String,t(6072)),i=t(7114),s={path:"reports",slot:"ampath-reports",title:"Reports",basePath:"".concat(window.spaBase,"/home")},l="@ampath/esm-reports-app",u={featureName:"ampath-esm-reports",moduleName:l};t(4767),(0,n.getAsyncLifecycle)(function(){return Promise.all([t.e(961),t.e(138),t.e(
|
|
1
|
+
(()=>{var e,r,t,o,n={8812(e,r,t){"use strict";t.d(r,{moduleName:()=>l});var o,n=t(2141),a=(n.Type.String,t(6072)),i=t(7114),s={path:"reports",slot:"ampath-reports",title:"Reports",basePath:"".concat(window.spaBase,"/home")},l="@ampath/esm-reports-app",u={featureName:"ampath-esm-reports",moduleName:l};t(4767),(0,n.getAsyncLifecycle)(function(){return Promise.all([t.e(961),t.e(138),t.e(879)]).then(t.bind(t,3879))},u),(0,n.getSyncLifecycle)((o=s,function(){return a.createElement(i.BrowserRouter,null,a.createElement(n.DashboardExtension,{path:o.path,title:o.title,basePath:o.basePath,icon:o.icon}))}),u)},4767(e,r,t){var o={"./am.json":[1197,[197]],"./en.json":[4300,[300]],"./es.json":[3099,[99]],"./fr.json":[4055,[55]],"./he.json":[4652,[652]],"./km.json":[4335,[335]]};function n(e){try{if(!t.o(o,e))return Promise.resolve().then(()=>{var r=new Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r})}catch(e){return Promise.reject(e)}var r=o[e],n=r[0];return t.e(r[1][0]).then(()=>t(n))}n.keys=()=>Object.keys(o),n.id=4767,e.exports=n}},a={};function i(e){var r=a[e];if(void 0!==r)return r.exports;var t=a[e]={id:e,exports:{}};return n[e].call(t.exports,t,t.exports,i),t.exports}i.m=n,i.c=a,i.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return i.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(t,o){if(1&o&&(t=this(t)),8&o)return t;if("object"==typeof t&&t){if(4&o&&t.__esModule)return t;if(16&o&&"function"==typeof t.then)return t}var n=Object.create(null);i.r(n);var a={};e=e||[null,r({}),r([]),r(r)];for(var s=2&o&&t;("object"==typeof s||"function"==typeof s)&&!~e.indexOf(s);s=r(s))Object.getOwnPropertyNames(s).forEach(e=>a[e]=()=>t[e]);return a.default=()=>t,i.d(n,a),n},i.d=(e,r)=>{for(var t in r)i.o(r,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((r,t)=>(i.f[t](e,r),r),[])),i.u=e=>e+".js",i.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},o="@ampath/esm-reports-app:",i.l=(e,r,n,a)=>{if(t[e])t[e].push(r);else{var s,l;if(void 0!==n)for(var u=document.getElementsByTagName("script"),p=0;p<u.length;p++){var f=u[p];if(f.getAttribute("src")==e||f.getAttribute("data-webpack")==o+n){s=f;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",o+n),s.src=e),t[e]=[r];var c=(r,o)=>{s.onerror=s.onload=null,clearTimeout(h);var n=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach(e=>e(o)),r)return r(o)},h=setTimeout(c.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=c.bind(null,s.onerror),s.onload=c.bind(null,s.onload),l&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{i.S={};var e={},r={};i.I=(t,o)=>{o||(o=[]);var n=r[t];if(n||(n=r[t]={}),!(o.indexOf(n)>=0)){if(o.push(n),e[t])return e[t];i.o(i.S,t)||(i.S[t]={});var a=i.S[t],s="@ampath/esm-reports-app",l=(e,r,t,o)=>{var n=a[e]=a[e]||{},i=n[r];(!i||!i.loaded&&(!o!=!i.eager?o:s>i.from))&&(n[r]={get:t,from:s,eager:!!o})},u=[];return"default"===t&&(l("@openmrs/esm-framework","9.0.3-pre.4482",()=>Promise.all([i.e(961),i.e(138),i.e(478),i.e(205),i.e(72),i.e(336),i.e(114)]).then(()=>()=>i(9205))),l("dayjs","1.11.20",()=>i.e(353).then(()=>()=>i(4353))),l("react-i18next","16.6.6",()=>Promise.all([i.e(478),i.e(311),i.e(72)]).then(()=>()=>i(3311))),l("react-router-dom","6.30.3",()=>Promise.all([i.e(961),i.e(282),i.e(72)]).then(()=>()=>i(282))),l("react","18.3.1",()=>i.e(540).then(()=>()=>i(6540))),l("rxjs","6.6.7",()=>i.e(184).then(()=>()=>i(3184)))),e[t]=u.length?Promise.all(u).then(()=>e[t]=1):1}}})(),(()=>{var e;globalThis.importScripts&&(e=globalThis.location+"");var r=globalThis.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var o=t.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=t[o--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{var e=e=>{var r=e=>e.split(".").map(e=>+e==e?+e:e),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),o=t[1]?r(t[1]):[];return t[2]&&(o.length++,o.push.apply(o,r(t[2]))),t[3]&&(o.push([]),o.push.apply(o,r(t[3]))),o},r=e=>{var t=e[0],o="";if(1===e.length)return"*";if(t+.5){o+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var n=1,a=1;a<e.length;a++)n--,o+="u"==(typeof(s=e[a]))[0]?"-":(n>0?".":"")+(n=2,s);return o}var i=[];for(a=1;a<e.length;a++){var s=e[a];i.push(0===s?"not("+l()+")":1===s?"("+l()+" || "+l()+")":2===s?i.pop()+" "+i.pop():r(s))}return l();function l(){return i.pop().replace(/^\((.+)\)$/,"$1")}},t=(r,o)=>{if(0 in r){o=e(o);var n=r[0],a=n<0;a&&(n=-n-1);for(var i=0,s=1,l=!0;;s++,i++){var u,p,f=s<r.length?(typeof r[s])[0]:"";if(i>=o.length||"o"==(p=(typeof(u=o[i]))[0]))return!l||("u"==f?s>n&&!a:""==f!=a);if("u"==p){if(!l||"u"!=f)return!1}else if(l)if(f==p)if(s<=n){if(u!=r[s])return!1}else{if(a?u>r[s]:u<r[s])return!1;u!=r[s]&&(l=!1)}else if("s"!=f&&"n"!=f){if(a||s<=n)return!1;l=!1,s--}else{if(s<=n||p<f!=a)return!1;l=!1}else"s"!=f&&"n"!=f&&(l=!1,s--)}}var c=[],h=c.pop.bind(c);for(i=1;i<r.length;i++){var d=r[i];c.push(1==d?h()|h():2==d?h()&h():d?t(d,o):!h())}return!!h()},o=(r,t,o)=>{var n=o?(e=>Object.keys(e).reduce((r,t)=>(e[t].eager&&(r[t]=e[t]),r),{}))(r[t]):r[t];return Object.keys(n).reduce((r,t)=>!r||!n[r].loaded&&((r,t)=>{r=e(r),t=e(t);for(var o=0;;){if(o>=r.length)return o<t.length&&"u"!=(typeof t[o])[0];var n=r[o],a=(typeof n)[0];if(o>=t.length)return"u"==a;var i=t[o],s=(typeof i)[0];if(a!=s)return"o"==a&&"n"==s||"s"==s||"u"==a;if("o"!=a&&"u"!=a&&n!=i)return n<i;o++}})(r,t)?t:r,0)},n=(e,r,t)=>t?t():((e,r)=>(e=>{throw new Error(e)})("Shared module "+r+" doesn't exist in shared scope "+e))(e,r),a=(e=>function(r,t,o,n,a){var s=i.I(r);return s&&s.then&&!o?s.then(e.bind(e,r,i.S[r],t,!1,n,a)):e(r,i.S[r],t,o,n,a)})((e,a,s,l,u,p)=>{if(!((e,r)=>e&&i.o(e,r))(a,s))return n(e,s,p);var f,c,h=o(a,s,l);return t(u,h)||(c=((e,t,o,n)=>"Unsatisfied version "+o+" from "+(o&&e[t][o].from)+" of shared singleton module "+t+" (required "+r(n)+")")(a,s,h,u),"undefined"!=typeof console&&console.warn&&console.warn(c)),(f=a[s][h]).loaded=1,f.get()}),s={},l={2141:()=>a("default","@openmrs/esm-framework",!1,[0],()=>Promise.all([i.e(961),i.e(138),i.e(478),i.e(205),i.e(336)]).then(()=>()=>i(9205))),6072:()=>a("default","react",!1,[1,18],()=>i.e(540).then(()=>()=>i(6540))),7114:()=>a("default","react-router-dom",!1,[1,6],()=>Promise.all([i.e(961),i.e(282)]).then(()=>()=>i(282))),231:()=>a("default","dayjs",!1,[1,1],()=>i.e(353).then(()=>()=>i(4353))),2076:()=>a("default","react-i18next",!1,[1,16],()=>i.e(311).then(()=>()=>i(3311))),3083:()=>a("default","rxjs",!1,[1,6],()=>i.e(184).then(()=>()=>i(3184)))};[2141,6072,7114].forEach(e=>{i.m[e]=r=>{s[e]=0,delete i.c[e];var t=l[e]();if("function"!=typeof t)throw new Error("Shared module is not available for eager consumption: "+e);r.exports=t()}});var u={72:[6072],114:[7114],336:[231,2076,3083],792:[2141,6072,7114]},p={};i.f.consumes=(e,r)=>{i.o(u,e)&&u[e].forEach(e=>{if(i.o(s,e))return r.push(s[e]);if(!p[e]){var t=r=>{s[e]=0,i.m[e]=t=>{delete i.c[e],t.exports=r()}};p[e]=!0;var o=r=>{delete s[e],i.m[e]=t=>{throw delete i.c[e],r}};try{var n=l[e]();n.then?r.push(s[e]=n.then(t).catch(o)):t(n)}catch(e){o(e)}}})}})(),(()=>{var e={72:0,114:0,792:0,812:0};i.f.j=(r,t)=>{var o=i.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else if(/^(114|336|72)$/.test(r))e[r]=0;else{var n=new Promise((t,n)=>o=e[r]=[t,n]);t.push(o[2]=n);var a=i.p+i.u(r),s=new Error;i.l(a,t=>{if(i.o(e,r)&&(0!==(o=e[r])&&(e[r]=void 0),o)){var n=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;s.message="Loading chunk "+r+" failed.\n("+n+": "+a+")",s.name="ChunkLoadError",s.type=n,s.request=a,o[1](s)}},"chunk-"+r,r)}};var r=(r,t)=>{var o,n,[a,s,l]=t,u=0;if(a.some(r=>0!==e[r])){for(o in s)i.o(s,o)&&(i.m[o]=s[o]);l&&l(i)}for(r&&r(t);u<a.length;u++)n=a[u],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0},t=globalThis.webpackChunk_ampath_esm_reports_app=globalThis.webpackChunk_ampath_esm_reports_app||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),i.nc=void 0,i(8812)})();
|
package/dist/routes.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2","webservices.rest":">=2.2.0"},"extensions":[{"name":"ampath-reports-dashboard-link","component":"reportsDashboardLink","slot":"homepage-dashboard-slot","meta":{"name":"reports","slot":"ampath-reports-dashboard-slot","title":"Reports"},"online":true,"offline":true},{"component":"root","name":"ampath-reports-dashboard-root","slot":"ampath-reports-dashboard-slot"}],"pages":[],"version":"1.0.0-next.
|
|
1
|
+
{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2","webservices.rest":">=2.2.0"},"extensions":[{"name":"ampath-reports-dashboard-link","component":"reportsDashboardLink","slot":"homepage-dashboard-slot","meta":{"name":"reports","slot":"ampath-reports-dashboard-slot","title":"Reports"},"online":true,"offline":true},{"component":"root","name":"ampath-reports-dashboard-root","slot":"ampath-reports-dashboard-slot"}],"pages":[],"version":"1.0.0-next.8"}
|
package/package.json
CHANGED
|
@@ -1,27 +1,20 @@
|
|
|
1
1
|
import React, { useMemo } from "react";
|
|
2
|
-
import { TableRow, TableCell } from '@carbon/react';
|
|
3
2
|
import TableWrapper from "../../../table-wrapper/table-wrapper.component";
|
|
4
|
-
import
|
|
3
|
+
import TableRowMapper from "../../../table-wrapper/table-row-mapper.component";
|
|
4
|
+
import { getCell } from "../../../../utils/utils";
|
|
5
5
|
|
|
6
6
|
const Bacteriology: React.FC = () => {
|
|
7
|
-
const getCell = (key = "", value = "", colSpan = 1, strong = false) => ({
|
|
8
|
-
key,
|
|
9
|
-
value,
|
|
10
|
-
strong,
|
|
11
|
-
colSpan
|
|
12
|
-
});
|
|
13
|
-
|
|
14
7
|
const tableRows = useMemo(() => {
|
|
15
8
|
return [
|
|
16
9
|
{
|
|
17
|
-
tableCells: [getCell("", "5 BACTERIOLOGY", 4, true)]
|
|
10
|
+
tableCells: [getCell("", "5 BACTERIOLOGY", 4, 1, true)]
|
|
18
11
|
},
|
|
19
12
|
{
|
|
20
13
|
tableCells: [
|
|
21
|
-
getCell("", "Bacteriological Sample", 1, true),
|
|
22
|
-
getCell("", "Total Exam", 1, true),
|
|
23
|
-
getCell("", "Total Cultures", 1, true),
|
|
24
|
-
getCell("", "Number Culture Positive", 1, true),
|
|
14
|
+
getCell("", "Bacteriological Sample", 1, 1, true),
|
|
15
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
16
|
+
getCell("", "Total Cultures", 1, 1, true),
|
|
17
|
+
getCell("", "Number Culture Positive", 1, 1, true),
|
|
25
18
|
]
|
|
26
19
|
},
|
|
27
20
|
{ tableCells: [getCell("", "5.1 Urine"), getCell(), getCell(), getCell()] },
|
|
@@ -35,9 +28,9 @@ const Bacteriology: React.FC = () => {
|
|
|
35
28
|
{ tableCells: [getCell("", "5.9 Urethral swabs"), getCell(), getCell(), getCell()] },
|
|
36
29
|
{
|
|
37
30
|
tableCells: [
|
|
38
|
-
getCell("", "Bacterial enteric pathogens", 2, true),
|
|
39
|
-
getCell("", "Total Exam", 1, true),
|
|
40
|
-
getCell("", "Number Positive", 1, true),
|
|
31
|
+
getCell("", "Bacterial enteric pathogens", 2, 1, true),
|
|
32
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
33
|
+
getCell("", "Number Positive", 1, 1, true),
|
|
41
34
|
]
|
|
42
35
|
},
|
|
43
36
|
{
|
|
@@ -49,8 +42,8 @@ const Bacteriology: React.FC = () => {
|
|
|
49
42
|
},
|
|
50
43
|
{
|
|
51
44
|
tableCells: [
|
|
52
|
-
getCell("", "Stool Isolates", 3, true),
|
|
53
|
-
getCell("", "Number Positive", 1, true),
|
|
45
|
+
getCell("", "Stool Isolates", 3, 1, true),
|
|
46
|
+
getCell("", "Number Positive", 1, 1, true),
|
|
54
47
|
]
|
|
55
48
|
},
|
|
56
49
|
{ tableCells: [getCell("", "5.11 Salmonella typhi", 3), getCell()] },
|
|
@@ -60,14 +53,14 @@ const Bacteriology: React.FC = () => {
|
|
|
60
53
|
{ tableCells: [getCell("", "5.15 V. cholerae O139", 3), getCell()] },
|
|
61
54
|
|
|
62
55
|
{
|
|
63
|
-
tableCells: [getCell("", "Bacterial meningitis", 4, true)]
|
|
56
|
+
tableCells: [getCell("", "Bacterial meningitis", 4, 1, true)]
|
|
64
57
|
},
|
|
65
58
|
{
|
|
66
59
|
tableCells: [
|
|
67
|
-
getCell("", "Bacterial meningitis", 1, true),
|
|
68
|
-
getCell("", "Total Exam", 1, true),
|
|
69
|
-
getCell("", "Number Positive", 1, true),
|
|
70
|
-
getCell("", "Number Contaminated", 2, true),
|
|
60
|
+
getCell("", "Bacterial meningitis", 1, 1, true),
|
|
61
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
62
|
+
getCell("", "Number Positive", 1, 1, true),
|
|
63
|
+
getCell("", "Number Contaminated", 2, 1, true),
|
|
71
64
|
]
|
|
72
65
|
},
|
|
73
66
|
{
|
|
@@ -80,8 +73,8 @@ const Bacteriology: React.FC = () => {
|
|
|
80
73
|
},
|
|
81
74
|
{
|
|
82
75
|
tableCells: [
|
|
83
|
-
getCell("", "Bacterial meningitis Serotypes", 1, true),
|
|
84
|
-
getCell("", "Number Positive", 3, true),
|
|
76
|
+
getCell("", "Bacterial meningitis Serotypes", 1, 1, true),
|
|
77
|
+
getCell("", "Number Positive", 3, 1, true),
|
|
85
78
|
]
|
|
86
79
|
},
|
|
87
80
|
{ tableCells: [getCell("", "5.17 Neisseria meningitidis A"), getCell("", "", 3)] },
|
|
@@ -95,16 +88,16 @@ const Bacteriology: React.FC = () => {
|
|
|
95
88
|
{ tableCells: [getCell("", "5.25 Haemophilus influenzae (type b)"), getCell("", "", 3)] },
|
|
96
89
|
{ tableCells: [getCell("", "5.26 Cryptococcal Meningitis"), getCell("", "", 3)] },
|
|
97
90
|
{
|
|
98
|
-
tableCells: [getCell("", "Bacterial Pathogens from other types of specimen", 4, true)]
|
|
91
|
+
tableCells: [getCell("", "Bacterial Pathogens from other types of specimen", 4, 1, true)]
|
|
99
92
|
},
|
|
100
93
|
{ tableCells: [getCell("", "5.27 B. anthracis"), getCell("", "", 3)] },
|
|
101
94
|
{ tableCells: [getCell("", "5.28 Y. pestis"), getCell("", "", 3)] },
|
|
102
95
|
{ tableCells: [getCell("", "TB SPUTUM", 4)] },
|
|
103
96
|
{
|
|
104
97
|
tableCells: [
|
|
105
|
-
getCell("", "TB SPUTUM", 1, true),
|
|
106
|
-
getCell("", "Total Exam", 1, true),
|
|
107
|
-
getCell("", "Number Positive", 1, true),
|
|
98
|
+
getCell("", "TB SPUTUM", 1, 1, true),
|
|
99
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
100
|
+
getCell("", "Number Positive", 1, 1, true),
|
|
108
101
|
]
|
|
109
102
|
},
|
|
110
103
|
{ tableCells: [getCell("", "5.29 Total TB smears"), getCell(), getCell()] },
|
|
@@ -117,15 +110,7 @@ const Bacteriology: React.FC = () => {
|
|
|
117
110
|
|
|
118
111
|
|
|
119
112
|
return <TableWrapper>
|
|
120
|
-
{tableRows
|
|
121
|
-
<TableRow>
|
|
122
|
-
{tR.tableCells.map((tC) => (
|
|
123
|
-
<TableCell className={styles.dataCell} colSpan={tC.colSpan}>
|
|
124
|
-
{tC.strong ? <strong>{tC.value}</strong> : tC.value}
|
|
125
|
-
</TableCell>
|
|
126
|
-
))}
|
|
127
|
-
</TableRow>
|
|
128
|
-
))}
|
|
113
|
+
<TableRowMapper tableRows={tableRows} />
|
|
129
114
|
</TableWrapper>
|
|
130
115
|
}
|
|
131
116
|
|
|
@@ -2,20 +2,15 @@ import React, { useMemo } from "react";
|
|
|
2
2
|
import { TableRow, TableCell } from '@carbon/react';
|
|
3
3
|
import TableWrapper from "../../../table-wrapper/table-wrapper.component";
|
|
4
4
|
import styles from '../../../table-wrapper/table-wrapper.scss';
|
|
5
|
+
import TableRowMapper from "../../../table-wrapper/table-row-mapper.component";
|
|
6
|
+
import { getCell } from "../../../../utils/utils";
|
|
5
7
|
|
|
6
8
|
const BloodChemistry: React.FC = () => {
|
|
7
|
-
const getCell = (key = "", value = "", colSpan = 1, strong = false) => ({
|
|
8
|
-
key,
|
|
9
|
-
value,
|
|
10
|
-
strong,
|
|
11
|
-
colSpan
|
|
12
|
-
});
|
|
13
|
-
|
|
14
9
|
const tableRows = useMemo(() => {
|
|
15
10
|
return [
|
|
16
11
|
{
|
|
17
12
|
tableCells: [
|
|
18
|
-
getCell("", "2. BLOOD CHEMISTRY", 4, true),
|
|
13
|
+
getCell("", "2. BLOOD CHEMISTRY", 4, 1, true),
|
|
19
14
|
]
|
|
20
15
|
},
|
|
21
16
|
{
|
|
@@ -25,10 +20,10 @@ const BloodChemistry: React.FC = () => {
|
|
|
25
20
|
},
|
|
26
21
|
{
|
|
27
22
|
tableCells: [
|
|
28
|
-
getCell("", "Blood Sugar Test", 1, true),
|
|
29
|
-
getCell("", "Total Exam", 1, true),
|
|
30
|
-
getCell("", "Low", 1, true),
|
|
31
|
-
getCell("", "High", 1, true),
|
|
23
|
+
getCell("", "Blood Sugar Test", 1, 1, true),
|
|
24
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
25
|
+
getCell("", "Low", 1, 1, true),
|
|
26
|
+
getCell("", "High", 1, 1, true),
|
|
32
27
|
]
|
|
33
28
|
},
|
|
34
29
|
{
|
|
@@ -49,7 +44,7 @@ const BloodChemistry: React.FC = () => {
|
|
|
49
44
|
},
|
|
50
45
|
{
|
|
51
46
|
tableCells: [
|
|
52
|
-
getCell("", "2.3 Renal Function Test", 1, true),
|
|
47
|
+
getCell("", "2.3 Renal Function Test", 1, 1, true),
|
|
53
48
|
getCell(),
|
|
54
49
|
getCell(),
|
|
55
50
|
getCell(),
|
|
@@ -105,7 +100,7 @@ const BloodChemistry: React.FC = () => {
|
|
|
105
100
|
},
|
|
106
101
|
{
|
|
107
102
|
tableCells: [
|
|
108
|
-
getCell("", "2.8 Liver Function Test", 1, true),
|
|
103
|
+
getCell("", "2.8 Liver Function Test", 1, 1, true),
|
|
109
104
|
getCell(),
|
|
110
105
|
getCell(),
|
|
111
106
|
getCell(),
|
|
@@ -169,7 +164,7 @@ const BloodChemistry: React.FC = () => {
|
|
|
169
164
|
},
|
|
170
165
|
{
|
|
171
166
|
tableCells: [
|
|
172
|
-
getCell("", "2.16 Lipid Profile", 1, true),
|
|
167
|
+
getCell("", "2.16 Lipid Profile", 1, 1, true),
|
|
173
168
|
getCell(),
|
|
174
169
|
getCell(),
|
|
175
170
|
getCell(),
|
|
@@ -201,10 +196,10 @@ const BloodChemistry: React.FC = () => {
|
|
|
201
196
|
},
|
|
202
197
|
{
|
|
203
198
|
tableCells: [
|
|
204
|
-
getCell("", "Hormonal Test", 1, true),
|
|
205
|
-
getCell("", "Total Exam", 1, true),
|
|
206
|
-
getCell("", "Low", 1, true),
|
|
207
|
-
getCell("", "High", 1, true),
|
|
199
|
+
getCell("", "Hormonal Test", 1, 1, true),
|
|
200
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
201
|
+
getCell("", "Low", 1, 1, true),
|
|
202
|
+
getCell("", "High", 1, 1, true),
|
|
208
203
|
]
|
|
209
204
|
},
|
|
210
205
|
{
|
|
@@ -233,9 +228,9 @@ const BloodChemistry: React.FC = () => {
|
|
|
233
228
|
},
|
|
234
229
|
{
|
|
235
230
|
tableCells: [
|
|
236
|
-
getCell("", "Tumor Markers", 1, true),
|
|
237
|
-
getCell("", "Total Exam", 1, true),
|
|
238
|
-
getCell("", "Number Positive", 2, true),
|
|
231
|
+
getCell("", "Tumor Markers", 1, 1, true),
|
|
232
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
233
|
+
getCell("", "Number Positive", 2, 1, true),
|
|
239
234
|
]
|
|
240
235
|
},
|
|
241
236
|
{
|
|
@@ -282,10 +277,10 @@ const BloodChemistry: React.FC = () => {
|
|
|
282
277
|
},
|
|
283
278
|
{
|
|
284
279
|
tableCells: [
|
|
285
|
-
getCell("", "CSF Chemistry", 1, true),
|
|
286
|
-
getCell("", "Total Exam", 1, true),
|
|
287
|
-
getCell("", "Low", 1, true),
|
|
288
|
-
getCell("", "High", 1, true),
|
|
280
|
+
getCell("", "CSF Chemistry", 1, 1, true),
|
|
281
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
282
|
+
getCell("", "Low", 1, 1, true),
|
|
283
|
+
getCell("", "High", 1, 1, true),
|
|
289
284
|
]
|
|
290
285
|
},
|
|
291
286
|
{
|
|
@@ -309,15 +304,7 @@ const BloodChemistry: React.FC = () => {
|
|
|
309
304
|
|
|
310
305
|
|
|
311
306
|
return <TableWrapper>
|
|
312
|
-
|
|
313
|
-
<TableRow>
|
|
314
|
-
{tR.tableCells.map((tC) => (
|
|
315
|
-
<TableCell className={styles.dataCell} colSpan={tC.colSpan}>
|
|
316
|
-
{tC.strong ? <strong>{tC.value}</strong> : tC.value}
|
|
317
|
-
</TableCell>
|
|
318
|
-
))}
|
|
319
|
-
</TableRow>
|
|
320
|
-
))}
|
|
307
|
+
<TableRowMapper tableRows={tableRows} />
|
|
321
308
|
</TableWrapper>
|
|
322
309
|
}
|
|
323
310
|
|
|
@@ -1,51 +1,44 @@
|
|
|
1
1
|
import React, { useMemo } from "react";
|
|
2
|
-
import { TableRow, TableCell } from '@carbon/react';
|
|
3
2
|
import TableWrapper from "../../../table-wrapper/table-wrapper.component";
|
|
4
|
-
import
|
|
3
|
+
import TableRowMapper from "../../../table-wrapper/table-row-mapper.component";
|
|
4
|
+
import { getCell } from "../../../../utils/utils";
|
|
5
5
|
|
|
6
6
|
const DrugSusceptibilityTesting: React.FC = () => {
|
|
7
|
-
const
|
|
8
|
-
key,
|
|
9
|
-
value,
|
|
10
|
-
strong,
|
|
11
|
-
colSpan
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
const cells = Array.from({ length: 25}, (_, i) => getCell());
|
|
7
|
+
const cells = Array.from({ length: 25 }, (_, i) => getCell());
|
|
15
8
|
|
|
16
9
|
const tableRows = useMemo(() => {
|
|
17
10
|
return [
|
|
18
11
|
{
|
|
19
|
-
tableCells: [getCell("", "9. DRUG SUSCEPTIBILITY TESTING", 12, true)]
|
|
12
|
+
tableCells: [getCell("", "9. DRUG SUSCEPTIBILITY TESTING", 12, 1, true)]
|
|
20
13
|
},
|
|
21
14
|
{
|
|
22
15
|
tableCells: [
|
|
23
|
-
getCell("", "Drug Resistance Pattern", 1, true),
|
|
24
|
-
getCell("", "a. Ciprofloxacin", 1, true),
|
|
25
|
-
getCell("", "b. Levofloxacin", 1, true),
|
|
26
|
-
getCell("", "c. Gentamicin", 1, true),
|
|
27
|
-
getCell("", "d. Tetracycline", 1, true),
|
|
28
|
-
getCell("", "e. Ceftazidime", 1, true),
|
|
29
|
-
getCell("", "f. Cefuroxime", 1, true),
|
|
30
|
-
getCell("", "g. Cefotaxime", 1, true),
|
|
31
|
-
getCell("", "h. Ampicillin", 1, true),
|
|
32
|
-
getCell("", "i. Cefazolin", 1, true),
|
|
33
|
-
getCell("", "j. Amoxillin-Clavulanate", 1, true),
|
|
34
|
-
getCell("", "k. Amikacin", 1, true),
|
|
35
|
-
getCell("", "m. Chloramphenicol", 1, true),
|
|
36
|
-
getCell("", "n. Cefepime", 1, true),
|
|
37
|
-
getCell("", "p. Piperacillin-tazobactam", 1, true),
|
|
38
|
-
getCell("", "q. obramycin", 1, true),
|
|
39
|
-
getCell("", "r. Ampicillin Sulbactam", 1, true),
|
|
40
|
-
getCell("", "s. Trimethoprim Sulfamethoxazole", 1, true),
|
|
41
|
-
getCell("", "t. Penicillin", 1, true),
|
|
42
|
-
getCell("", "u. Vancomycin", 1, true),
|
|
43
|
-
getCell("", "v. Meropenem", 1, true),
|
|
44
|
-
getCell("", "w. Clindamycin", 1, true),
|
|
45
|
-
getCell("", "x. Doxycycline/tetracyclin", 1, true),
|
|
46
|
-
getCell("", "y. Ceftazidime-avibactam", 1, true),
|
|
47
|
-
getCell("", "z. Erythromycin", 1, true),
|
|
48
|
-
getCell("", "aa. Gentamicin", 1, true),
|
|
16
|
+
getCell("", "Drug Resistance Pattern", 1, 1, true),
|
|
17
|
+
getCell("", "a. Ciprofloxacin", 1, 1, true),
|
|
18
|
+
getCell("", "b. Levofloxacin", 1, 1, true),
|
|
19
|
+
getCell("", "c. Gentamicin", 1, 1, true),
|
|
20
|
+
getCell("", "d. Tetracycline", 1, 1, true),
|
|
21
|
+
getCell("", "e. Ceftazidime", 1, 1, true),
|
|
22
|
+
getCell("", "f. Cefuroxime", 1, 1, true),
|
|
23
|
+
getCell("", "g. Cefotaxime", 1, 1, true),
|
|
24
|
+
getCell("", "h. Ampicillin", 1, 1, true),
|
|
25
|
+
getCell("", "i. Cefazolin", 1, 1, true),
|
|
26
|
+
getCell("", "j. Amoxillin-Clavulanate", 1, 1, true),
|
|
27
|
+
getCell("", "k. Amikacin", 1, 1, true),
|
|
28
|
+
getCell("", "m. Chloramphenicol", 1, 1, true),
|
|
29
|
+
getCell("", "n. Cefepime", 1, 1, true),
|
|
30
|
+
getCell("", "p. Piperacillin-tazobactam", 1, 1, true),
|
|
31
|
+
getCell("", "q. obramycin", 1, 1, true),
|
|
32
|
+
getCell("", "r. Ampicillin Sulbactam", 1, 1, true),
|
|
33
|
+
getCell("", "s. Trimethoprim Sulfamethoxazole", 1, 1, true),
|
|
34
|
+
getCell("", "t. Penicillin", 1, 1, true),
|
|
35
|
+
getCell("", "u. Vancomycin", 1, 1, true),
|
|
36
|
+
getCell("", "v. Meropenem", 1, 1, true),
|
|
37
|
+
getCell("", "w. Clindamycin", 1, 1, true),
|
|
38
|
+
getCell("", "x. Doxycycline/tetracyclin", 1, 1, true),
|
|
39
|
+
getCell("", "y. Ceftazidime-avibactam", 1, 1, true),
|
|
40
|
+
getCell("", "z. Erythromycin", 1, 1, true),
|
|
41
|
+
getCell("", "aa. Gentamicin", 1, 1, true),
|
|
49
42
|
]
|
|
50
43
|
},
|
|
51
44
|
{
|
|
@@ -137,15 +130,7 @@ const DrugSusceptibilityTesting: React.FC = () => {
|
|
|
137
130
|
|
|
138
131
|
|
|
139
132
|
return <TableWrapper>
|
|
140
|
-
{tableRows
|
|
141
|
-
<TableRow>
|
|
142
|
-
{tR.tableCells.map((tC) => (
|
|
143
|
-
<TableCell className={styles.dataCell} colSpan={tC.colSpan}>
|
|
144
|
-
{tC.strong ? <strong>{tC.value}</strong> : tC.value}
|
|
145
|
-
</TableCell>
|
|
146
|
-
))}
|
|
147
|
-
</TableRow>
|
|
148
|
-
))}
|
|
133
|
+
<TableRowMapper tableRows={tableRows} />
|
|
149
134
|
</TableWrapper>
|
|
150
135
|
}
|
|
151
136
|
|
|
@@ -1,29 +1,22 @@
|
|
|
1
1
|
import React, { useMemo } from "react";
|
|
2
|
-
import { TableRow, TableCell } from '@carbon/react';
|
|
3
2
|
import TableWrapper from "../../../table-wrapper/table-wrapper.component";
|
|
4
|
-
import
|
|
3
|
+
import { getCell } from "../../../../utils/utils";
|
|
4
|
+
import TableRowMapper from "../../../table-wrapper/table-row-mapper.component";
|
|
5
5
|
|
|
6
6
|
const Haematology: React.FC = () => {
|
|
7
|
-
const getCell = (key = "", value = "", colSpan = 1, strong = false) => ({
|
|
8
|
-
key,
|
|
9
|
-
value,
|
|
10
|
-
strong,
|
|
11
|
-
colSpan
|
|
12
|
-
});
|
|
13
|
-
|
|
14
7
|
const tableRows = useMemo(() => {
|
|
15
8
|
return [
|
|
16
9
|
{
|
|
17
10
|
tableCells: [
|
|
18
|
-
getCell("", "4 HAEMATOLOGY", 4, true)
|
|
11
|
+
getCell("", "4 HAEMATOLOGY", 4, 1, true)
|
|
19
12
|
]
|
|
20
13
|
},
|
|
21
14
|
{
|
|
22
15
|
tableCells: [
|
|
23
|
-
getCell("", "Haematology tests", 1, true),
|
|
24
|
-
getCell("", "Total Exam", 1, true),
|
|
25
|
-
getCell("", "HB <5 g/dl", 1, true),
|
|
26
|
-
getCell("", "HB between 5 and 10 g/dl", 1, true),
|
|
16
|
+
getCell("", "Haematology tests", 1, 1, true),
|
|
17
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
18
|
+
getCell("", "HB <5 g/dl", 1, 1, true),
|
|
19
|
+
getCell("", "HB between 5 and 10 g/dl", 1, 1, true),
|
|
27
20
|
]
|
|
28
21
|
},
|
|
29
22
|
{
|
|
@@ -45,9 +38,9 @@ const Haematology: React.FC = () => {
|
|
|
45
38
|
{
|
|
46
39
|
tableCells: [
|
|
47
40
|
getCell(),
|
|
48
|
-
getCell("", "Total Exam", 1, true),
|
|
49
|
-
getCell("", "Pre-diabetes", 1, true),
|
|
50
|
-
getCell("", "Diabetes", 1, true),
|
|
41
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
42
|
+
getCell("", "Pre-diabetes", 1, 1, true),
|
|
43
|
+
getCell("", "Diabetes", 1, 1, true),
|
|
51
44
|
]
|
|
52
45
|
},
|
|
53
46
|
{
|
|
@@ -61,8 +54,8 @@ const Haematology: React.FC = () => {
|
|
|
61
54
|
{
|
|
62
55
|
tableCells: [
|
|
63
56
|
getCell(),
|
|
64
|
-
getCell("", "Total Exam", 1, true),
|
|
65
|
-
getCell("", "Number <500", 2, true),
|
|
57
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
58
|
+
getCell("", "Number <500", 2, 1, true),
|
|
66
59
|
]
|
|
67
60
|
},
|
|
68
61
|
{
|
|
@@ -74,9 +67,9 @@ const Haematology: React.FC = () => {
|
|
|
74
67
|
},
|
|
75
68
|
{
|
|
76
69
|
tableCells: [
|
|
77
|
-
getCell("", "Other Haematology tests", 1, true),
|
|
78
|
-
getCell("", "Total Exam", 1, true),
|
|
79
|
-
getCell("", "Number Positive", 2, true),
|
|
70
|
+
getCell("", "Other Haematology tests", 1, 1, true),
|
|
71
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
72
|
+
getCell("", "Number Positive", 2, 1, true),
|
|
80
73
|
]
|
|
81
74
|
},
|
|
82
75
|
{
|
|
@@ -97,8 +90,8 @@ const Haematology: React.FC = () => {
|
|
|
97
90
|
{
|
|
98
91
|
tableCells: [
|
|
99
92
|
getCell(),
|
|
100
|
-
getCell("", "Total Exam", 1, true),
|
|
101
|
-
getCell("", "High", 2, true),
|
|
93
|
+
getCell("", "Total Exam", 1, 1, true),
|
|
94
|
+
getCell("", "High", 2, 1, true),
|
|
102
95
|
]
|
|
103
96
|
},
|
|
104
97
|
{
|
|
@@ -110,8 +103,8 @@ const Haematology: React.FC = () => {
|
|
|
110
103
|
},
|
|
111
104
|
{
|
|
112
105
|
tableCells: [
|
|
113
|
-
getCell("", "Blood Grouping", 3, true),
|
|
114
|
-
getCell("", "Number", 1, true),
|
|
106
|
+
getCell("", "Blood Grouping", 3, 1, true),
|
|
107
|
+
getCell("", "Number", 1, 1, true),
|
|
115
108
|
]
|
|
116
109
|
},
|
|
117
110
|
{
|
|
@@ -128,7 +121,7 @@ const Haematology: React.FC = () => {
|
|
|
128
121
|
},
|
|
129
122
|
{
|
|
130
123
|
tableCells: [
|
|
131
|
-
getCell("", "Blood Safety", 4, true),
|
|
124
|
+
getCell("", "Blood Safety", 4, 1, true),
|
|
132
125
|
]
|
|
133
126
|
},
|
|
134
127
|
{
|
|
@@ -151,8 +144,8 @@ const Haematology: React.FC = () => {
|
|
|
151
144
|
},
|
|
152
145
|
{
|
|
153
146
|
tableCells: [
|
|
154
|
-
getCell("", "Blood Screening at facility", 3, true),
|
|
155
|
-
getCell("", "Number Positive", 1, true),
|
|
147
|
+
getCell("", "Blood Screening at facility", 3, 1, true),
|
|
148
|
+
getCell("", "Number Positive", 1, 1, true),
|
|
156
149
|
]
|
|
157
150
|
},
|
|
158
151
|
{
|
|
@@ -172,15 +165,7 @@ const Haematology: React.FC = () => {
|
|
|
172
165
|
|
|
173
166
|
|
|
174
167
|
return <TableWrapper>
|
|
175
|
-
{tableRows
|
|
176
|
-
<TableRow>
|
|
177
|
-
{tR.tableCells.map((tC) => (
|
|
178
|
-
<TableCell className={styles.dataCell} colSpan={tC.colSpan}>
|
|
179
|
-
{tC.strong ? <strong>{tC.value}</strong> : tC.value}
|
|
180
|
-
</TableCell>
|
|
181
|
-
))}
|
|
182
|
-
</TableRow>
|
|
183
|
-
))}
|
|
168
|
+
<TableRowMapper tableRows={tableRows} />
|
|
184
169
|
</TableWrapper>
|
|
185
170
|
}
|
|
186
171
|
|