@openmrs/esm-generic-patient-widgets-app 11.3.1-pre.9188 → 11.3.1-pre.9199
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/.turbo/turbo-build.log +4 -4
- package/dist/9351.js +1 -1
- package/dist/9351.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/openmrs-esm-generic-patient-widgets-app.js +1 -1
- package/dist/openmrs-esm-generic-patient-widgets-app.js.buildmanifest.json +7 -7
- package/dist/routes.json +1 -1
- package/package.json +2 -2
- package/src/obs-graph/obs-graph.component.tsx +68 -33
- package/src/obs-graph/obs-graph.scss +19 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
var _openmrs_esm_generic_patient_widgets_app;(()=>{"use strict";var e,r,t,n,o,a,i,s,l,u,p,f,d,c,h,m,g,v,b,w,y,_={45684:(e,r,t)=>{var n={"./start":()=>Promise.all([t.e(251),t.e(3204),t.e(5641),t.e(5434),t.e(8571),t.e(9351)]).then((()=>()=>t(39351)))},o=(e,r)=>(t.R=r,r=t.o(n,e)?n[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),a=(e,r)=>{if(t.S){var n="default",o=t.S[n];if(o&&o!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[n]=e,t.I(n,r)}};t.d(r,{get:()=>o,init:()=>a})}},P={};function j(e){var r=P[e];if(void 0!==r)return r.exports;var t=P[e]={id:e,exports:{}};return _[e].call(t.exports,t,t.exports,j),t.exports}j.m=_,j.c=P,j.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return j.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,j.t=function(t,n){if(1&n&&(t=this(t)),8&n)return t;if("object"==typeof t&&t){if(4&n&&t.__esModule)return t;if(16&n&&"function"==typeof t.then)return t}var o=Object.create(null);j.r(o);var a={};e=e||[null,r({}),r([]),r(r)];for(var i=2&n&&t;"object"==typeof i&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>a[e]=()=>t[e]));return a.default=()=>t,j.d(o,a),o},j.d=(e,r)=>{for(var t in r)j.o(r,t)&&!j.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},j.f={},j.e=e=>Promise.all(Object.keys(j.f).reduce(((r,t)=>(j.f[t](e,r),r)),[])),j.u=e=>e+".js",j.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),j.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},n="@openmrs/esm-generic-patient-widgets-app:",j.l=(e,r,o,a)=>{if(t[e])t[e].push(r);else{var i,s;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u<l.length;u++){var p=l[u];if(p.getAttribute("src")==e||p.getAttribute("data-webpack")==n+o){i=p;break}}i||(s=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,j.nc&&i.setAttribute("nonce",j.nc),i.setAttribute("data-webpack",n+o),i.src=e),t[e]=[r];var f=(r,n)=>{i.onerror=i.onload=null,clearTimeout(d);var o=t[e];if(delete t[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach((e=>e(n))),r)return r(n)},d=setTimeout(f.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=f.bind(null,i.onerror),i.onload=f.bind(null,i.onload),s&&document.head.appendChild(i)}},j.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{j.S={};var e={},r={};j.I=(t,n)=>{n||(n=[]);var o=r[t];if(o||(o=r[t]={}),!(n.indexOf(o)>=0)){if(n.push(o),e[t])return e[t];j.o(j.S,t)||(j.S[t]={});var a=j.S[t],i="@openmrs/esm-generic-patient-widgets-app",s=(e,r,t,n)=>{var o=a[e]=a[e]||{},s=o[r];(!s||!s.loaded&&(!n!=!s.eager?n:i>s.from))&&(o[r]={get:t,from:i,eager:!!n})},l=[];return"default"===t&&(s("@openmrs/esm-framework","8.0.1-pre.3473",(()=>Promise.all([j.e(2499),j.e(251),j.e(5670),j.e(5641),j.e(5434),j.e(8382),j.e(8571)]).then((()=>()=>j(55670))))),s("@openmrs/esm-patient-common-lib","11.3.1-pre.
|
|
1
|
+
var _openmrs_esm_generic_patient_widgets_app;(()=>{"use strict";var e,r,t,n,o,a,i,s,l,u,p,f,d,c,h,m,g,v,b,w,y,_={45684:(e,r,t)=>{var n={"./start":()=>Promise.all([t.e(251),t.e(3204),t.e(5641),t.e(5434),t.e(8571),t.e(9351)]).then((()=>()=>t(39351)))},o=(e,r)=>(t.R=r,r=t.o(n,e)?n[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),a=(e,r)=>{if(t.S){var n="default",o=t.S[n];if(o&&o!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[n]=e,t.I(n,r)}};t.d(r,{get:()=>o,init:()=>a})}},P={};function j(e){var r=P[e];if(void 0!==r)return r.exports;var t=P[e]={id:e,exports:{}};return _[e].call(t.exports,t,t.exports,j),t.exports}j.m=_,j.c=P,j.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return j.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,j.t=function(t,n){if(1&n&&(t=this(t)),8&n)return t;if("object"==typeof t&&t){if(4&n&&t.__esModule)return t;if(16&n&&"function"==typeof t.then)return t}var o=Object.create(null);j.r(o);var a={};e=e||[null,r({}),r([]),r(r)];for(var i=2&n&&t;"object"==typeof i&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>a[e]=()=>t[e]));return a.default=()=>t,j.d(o,a),o},j.d=(e,r)=>{for(var t in r)j.o(r,t)&&!j.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},j.f={},j.e=e=>Promise.all(Object.keys(j.f).reduce(((r,t)=>(j.f[t](e,r),r)),[])),j.u=e=>e+".js",j.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),j.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},n="@openmrs/esm-generic-patient-widgets-app:",j.l=(e,r,o,a)=>{if(t[e])t[e].push(r);else{var i,s;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u<l.length;u++){var p=l[u];if(p.getAttribute("src")==e||p.getAttribute("data-webpack")==n+o){i=p;break}}i||(s=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,j.nc&&i.setAttribute("nonce",j.nc),i.setAttribute("data-webpack",n+o),i.src=e),t[e]=[r];var f=(r,n)=>{i.onerror=i.onload=null,clearTimeout(d);var o=t[e];if(delete t[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach((e=>e(n))),r)return r(n)},d=setTimeout(f.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=f.bind(null,i.onerror),i.onload=f.bind(null,i.onload),s&&document.head.appendChild(i)}},j.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{j.S={};var e={},r={};j.I=(t,n)=>{n||(n=[]);var o=r[t];if(o||(o=r[t]={}),!(n.indexOf(o)>=0)){if(n.push(o),e[t])return e[t];j.o(j.S,t)||(j.S[t]={});var a=j.S[t],i="@openmrs/esm-generic-patient-widgets-app",s=(e,r,t,n)=>{var o=a[e]=a[e]||{},s=o[r];(!s||!s.loaded&&(!n!=!s.eager?n:i>s.from))&&(o[r]={get:t,from:i,eager:!!n})},l=[];return"default"===t&&(s("@openmrs/esm-framework","8.0.1-pre.3473",(()=>Promise.all([j.e(2499),j.e(251),j.e(5670),j.e(5641),j.e(5434),j.e(8382),j.e(8571)]).then((()=>()=>j(55670))))),s("@openmrs/esm-patient-common-lib","11.3.1-pre.9199",(()=>Promise.all([j.e(2499),j.e(251),j.e(5641),j.e(5434),j.e(8382),j.e(8571),j.e(8803)]).then((()=>()=>j(18803))))),s("dayjs","1.11.13",(()=>j.e(3464).then((()=>()=>j(23464))))),s("react-i18next","16.0.0",(()=>Promise.all([j.e(6336),j.e(5641)]).then((()=>()=>j(16336))))),s("react-router-dom","6.16.0",(()=>Promise.all([j.e(2913),j.e(5641)]).then((()=>()=>j(52913))))),s("react","18.3.1",(()=>j.e(4041).then((()=>()=>j(14041))))),s("rxjs","6.6.7",(()=>j.e(2457).then((()=>()=>j(82457))))),s("swr/_internal","2.2.5",(()=>Promise.all([j.e(2372),j.e(5641)]).then((()=>()=>j(42372))))),s("swr/immutable","2.2.5",(()=>Promise.all([j.e(5641),j.e(5434),j.e(7495)]).then((()=>()=>j(29876))))),s("swr/infinite","2.2.5",(()=>Promise.all([j.e(5641),j.e(5434),j.e(89)]).then((()=>()=>j(52470)))))),e[t]=l.length?Promise.all(l).then((()=>e[t]=1)):1}}})(),(()=>{var e;j.g.importScripts&&(e=j.g.location+"");var r=j.g.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 n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),j.p=e})(),o=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),n=t[1]?r(t[1]):[];return t[2]&&(n.length++,n.push.apply(n,r(t[2]))),t[3]&&(n.push([]),n.push.apply(n,r(t[3]))),n},a=(e,r)=>{e=o(e),r=o(r);for(var t=0;;){if(t>=e.length)return t<r.length&&"u"!=(typeof r[t])[0];var n=e[t],a=(typeof n)[0];if(t>=r.length)return"u"==a;var i=r[t],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;t++}},i=e=>{var r=e[0],t="";if(1===e.length)return"*";if(r+.5){t+=0==r?">=":-1==r?"<":1==r?"^":2==r?"~":r>0?"=":"!=";for(var n=1,o=1;o<e.length;o++)n--,t+="u"==(typeof(s=e[o]))[0]?"-":(n>0?".":"")+(n=2,s);return t}var a=[];for(o=1;o<e.length;o++){var s=e[o];a.push(0===s?"not("+l()+")":1===s?"("+l()+" || "+l()+")":2===s?a.pop()+" "+a.pop():i(s))}return l();function l(){return a.pop().replace(/^\((.+)\)$/,"$1")}},s=(e,r)=>{if(0 in e){r=o(r);var t=e[0],n=t<0;n&&(t=-t-1);for(var a=0,i=1,l=!0;;i++,a++){var u,p,f=i<e.length?(typeof e[i])[0]:"";if(a>=r.length||"o"==(p=(typeof(u=r[a]))[0]))return!l||("u"==f?i>t&&!n:""==f!=n);if("u"==p){if(!l||"u"!=f)return!1}else if(l)if(f==p)if(i<=t){if(u!=e[i])return!1}else{if(n?u>e[i]:u<e[i])return!1;u!=e[i]&&(l=!1)}else if("s"!=f&&"n"!=f){if(n||i<=t)return!1;l=!1,i--}else{if(i<=t||p<f!=n)return!1;l=!1}else"s"!=f&&"n"!=f&&(l=!1,i--)}}var d=[],c=d.pop.bind(d);for(a=1;a<e.length;a++){var h=e[a];d.push(1==h?c()|c():2==h?c()&c():h?s(h,r):!c())}return!!c()},l=(e,r)=>e&&j.o(e,r),u=e=>(e.loaded=1,e.get()),p=e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}),f=(e,r,t)=>{var n=t?p(e[r]):e[r];return Object.keys(n).reduce(((e,r)=>!e||!n[e].loaded&&a(e,r)?r:e),0)},d=(e,r,t,n)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+i(n)+")",c=e=>{throw new Error(e)},h=e=>{"undefined"!=typeof console&&console.warn&&console.warn(e)},m=(e,r,t)=>t?t():((e,r)=>c("Shared module "+r+" doesn't exist in shared scope "+e))(e,r),g=(e=>function(r,t,n,o,a){var i=j.I(r);return i&&i.then&&!n?i.then(e.bind(e,r,j.S[r],t,!1,o,a)):e(r,j.S[r],t,n,o,a)})(((e,r,t,n,o,a)=>{if(!l(r,t))return m(e,t,a);var i=f(r,t,n);return s(o,i)||h(d(r,t,i,o)),u(r[t][i])})),v={},b={75641:()=>g("default","react",!1,[1,18,2,0],(()=>j.e(4041).then((()=>()=>j(14041))))),55434:()=>g("default","swr/_internal",!1,[1,2],(()=>j.e(2372).then((()=>()=>j(42372))))),8877:()=>g("default","react-router-dom",!1,[1,6],(()=>j.e(2913).then((()=>()=>j(52913))))),24818:()=>g("default","rxjs",!1,[1,6],(()=>j.e(2457).then((()=>()=>j(82457))))),46372:()=>g("default","dayjs",!1,[1,1],(()=>j.e(3464).then((()=>()=>j(23464))))),98394:()=>g("default","swr/infinite",!1,[1,2],(()=>j.e(2470).then((()=>()=>j(52470))))),54440:()=>g("default","@openmrs/esm-framework",!1,[1,8],(()=>Promise.all([j.e(2499),j.e(5670),j.e(8382)]).then((()=>()=>j(55670))))),72339:()=>g("default","react-i18next",!1,[1,16],(()=>j.e(6336).then((()=>()=>j(16336))))),88010:()=>g("default","swr/immutable",!1,[1,2],(()=>j.e(9876).then((()=>()=>j(29876))))),36274:()=>g("default","@openmrs/esm-patient-common-lib",!1,[1,11],(()=>Promise.all([j.e(2499),j.e(8382),j.e(8803)]).then((()=>()=>j(18803)))))},w={5434:[55434],5641:[75641],8382:[8877,24818,46372,98394],8571:[54440,72339,88010],9351:[36274]},y={},j.f.consumes=(e,r)=>{j.o(w,e)&&w[e].forEach((e=>{if(j.o(v,e))return r.push(v[e]);if(!y[e]){var t=r=>{v[e]=0,j.m[e]=t=>{delete j.c[e],t.exports=r()}};y[e]=!0;var n=r=>{delete v[e],j.m[e]=t=>{throw delete j.c[e],r}};try{var o=b[e]();o.then?r.push(v[e]=o.then(t).catch(n)):t(o)}catch(e){n(e)}}}))},(()=>{var e={3461:0};j.f.j=(r,t)=>{var n=j.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else if(/^(5434|5641|8382|8571)$/.test(r))e[r]=0;else{var o=new Promise(((t,o)=>n=e[r]=[t,o]));t.push(n[2]=o);var a=j.p+j.u(r),i=new Error;j.l(a,(t=>{if(j.o(e,r)&&(0!==(n=e[r])&&(e[r]=void 0),n)){var o=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+o+": "+a+")",i.name="ChunkLoadError",i.type=o,i.request=a,n[1](i)}}),"chunk-"+r,r)}};var r=(r,t)=>{var n,o,[a,i,s]=t,l=0;if(a.some((r=>0!==e[r]))){for(n in i)j.o(i,n)&&(j.m[n]=i[n]);s&&s(j)}for(r&&r(t);l<a.length;l++)o=a[l],j.o(e,o)&&e[o]&&e[o][0](),e[o]=0},t=globalThis.webpackChunk_openmrs_esm_generic_patient_widgets_app=globalThis.webpackChunk_openmrs_esm_generic_patient_widgets_app||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),j.nc=void 0;var S=j(45684);_openmrs_esm_generic_patient_widgets_app=S})();
|
|
@@ -431,7 +431,7 @@
|
|
|
431
431
|
"auxiliaryFiles": [
|
|
432
432
|
"openmrs-esm-generic-patient-widgets-app.js.map"
|
|
433
433
|
],
|
|
434
|
-
"hash": "
|
|
434
|
+
"hash": "e0d0c8672ab56c4a",
|
|
435
435
|
"childrenByOrder": {}
|
|
436
436
|
},
|
|
437
437
|
{
|
|
@@ -1155,10 +1155,10 @@
|
|
|
1155
1155
|
"initial": true,
|
|
1156
1156
|
"entry": true,
|
|
1157
1157
|
"recorded": false,
|
|
1158
|
-
"size":
|
|
1158
|
+
"size": 3558393,
|
|
1159
1159
|
"sizes": {
|
|
1160
1160
|
"consume-shared": 252,
|
|
1161
|
-
"javascript":
|
|
1161
|
+
"javascript": 3535033,
|
|
1162
1162
|
"share-init": 420,
|
|
1163
1163
|
"runtime": 22688
|
|
1164
1164
|
},
|
|
@@ -1175,7 +1175,7 @@
|
|
|
1175
1175
|
"auxiliaryFiles": [
|
|
1176
1176
|
"main.js.map"
|
|
1177
1177
|
],
|
|
1178
|
-
"hash": "
|
|
1178
|
+
"hash": "825f021559da57c8",
|
|
1179
1179
|
"childrenByOrder": {}
|
|
1180
1180
|
},
|
|
1181
1181
|
{
|
|
@@ -1230,9 +1230,9 @@
|
|
|
1230
1230
|
"initial": false,
|
|
1231
1231
|
"entry": false,
|
|
1232
1232
|
"recorded": false,
|
|
1233
|
-
"size":
|
|
1233
|
+
"size": 120498,
|
|
1234
1234
|
"sizes": {
|
|
1235
|
-
"javascript":
|
|
1235
|
+
"javascript": 120456,
|
|
1236
1236
|
"consume-shared": 42
|
|
1237
1237
|
},
|
|
1238
1238
|
"names": [],
|
|
@@ -1246,7 +1246,7 @@
|
|
|
1246
1246
|
"auxiliaryFiles": [
|
|
1247
1247
|
"9351.js.map"
|
|
1248
1248
|
],
|
|
1249
|
-
"hash": "
|
|
1249
|
+
"hash": "8222f0fc48a5bd7d",
|
|
1250
1250
|
"childrenByOrder": {}
|
|
1251
1251
|
},
|
|
1252
1252
|
{
|
package/dist/routes.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2"},"extensions":[{"name":"obs-by-encounter-widget","component":"switchableObs","online":true,"offline":true,"meta":{"fullWidth":false}},{"name":"obs-table-horizontal-widget-small","component":"obsTableHorizontal","online":true,"offline":true,"meta":{"fullWidth":false}},{"name":"obs-table-horizontal-widget","component":"obsTableHorizontal","online":true,"offline":true,"meta":{"fullWidth":true}}],"version":"11.3.1-pre.
|
|
1
|
+
{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2"},"extensions":[{"name":"obs-by-encounter-widget","component":"switchableObs","online":true,"offline":true,"meta":{"fullWidth":false}},{"name":"obs-table-horizontal-widget-small","component":"obsTableHorizontal","online":true,"offline":true,"meta":{"fullWidth":false}},{"name":"obs-table-horizontal-widget","component":"obsTableHorizontal","online":true,"offline":true,"meta":{"fullWidth":true}}],"version":"11.3.1-pre.9199"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openmrs/esm-generic-patient-widgets-app",
|
|
3
|
-
"version": "11.3.1-pre.
|
|
3
|
+
"version": "11.3.1-pre.9199",
|
|
4
4
|
"license": "MPL-2.0",
|
|
5
5
|
"description": "Generic widgets for the patient chart",
|
|
6
6
|
"browser": "dist/openmrs-esm-generic-patient-widgets-app.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"swr": "2.x"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@openmrs/esm-patient-common-lib": "11.3.1-pre.
|
|
55
|
+
"@openmrs/esm-patient-common-lib": "11.3.1-pre.9199",
|
|
56
56
|
"webpack": "^5.99.9"
|
|
57
57
|
},
|
|
58
58
|
"stableVersion": "11.3.0"
|
|
@@ -88,42 +88,77 @@ const ObsGraph: React.FC<ObsGraphProps> = ({ patientUuid }) => {
|
|
|
88
88
|
[obsForConcepts, configForObs, config.graphOldestFirst, t],
|
|
89
89
|
);
|
|
90
90
|
|
|
91
|
-
const chartColors =
|
|
91
|
+
const chartColors = useMemo(
|
|
92
|
+
() => Object.fromEntries(selectedMenuItem.concepts.map((d) => [d.label, d.color])),
|
|
93
|
+
[selectedMenuItem.concepts],
|
|
94
|
+
);
|
|
92
95
|
|
|
93
|
-
const chartOptions: LineChartOptions = {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
96
|
+
const chartOptions: LineChartOptions = useMemo(() => {
|
|
97
|
+
return {
|
|
98
|
+
title: t(selectedMenuItem.groupLabel),
|
|
99
|
+
axes: {
|
|
100
|
+
bottom: {
|
|
101
|
+
title: t('date', 'Date'),
|
|
102
|
+
mapsTo: 'key',
|
|
103
|
+
scaleType: ScaleTypes.TIME,
|
|
104
|
+
ticks: {
|
|
105
|
+
formatter: (value: Date) => formatDate(value, { year: true, time: false }),
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
left: {
|
|
109
|
+
mapsTo: 'value',
|
|
110
|
+
title: t(selectedMenuItem.groupLabel),
|
|
111
|
+
scaleType: ScaleTypes.LINEAR,
|
|
112
|
+
includeZero: false,
|
|
101
113
|
},
|
|
102
114
|
},
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
title: t(selectedMenuItem.groupLabel),
|
|
106
|
-
scaleType: ScaleTypes.LINEAR,
|
|
107
|
-
includeZero: false,
|
|
115
|
+
legend: {
|
|
116
|
+
enabled: false,
|
|
108
117
|
},
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
enabled: false,
|
|
112
|
-
},
|
|
113
|
-
color: {
|
|
114
|
-
scale: chartColors,
|
|
115
|
-
},
|
|
116
|
-
tooltip: {
|
|
117
|
-
alwaysShowRulerTooltip: true,
|
|
118
|
-
showTotal: false,
|
|
119
|
-
valueFormatter: (value: any, label: string) =>
|
|
120
|
-
label == t('date', 'Date') ? formatDate(value, { year: true, time: true }) : value.toString(),
|
|
121
|
-
truncation: {
|
|
122
|
-
numCharacter: 40,
|
|
118
|
+
color: {
|
|
119
|
+
scale: chartColors,
|
|
123
120
|
},
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
121
|
+
tooltip: {
|
|
122
|
+
alwaysShowRulerTooltip: true,
|
|
123
|
+
showTotal: false,
|
|
124
|
+
valueFormatter: (value: any, label: string) =>
|
|
125
|
+
label == t('date', 'Date') ? formatDate(value, { year: true, time: true }) : value.toString(),
|
|
126
|
+
truncation: {
|
|
127
|
+
numCharacter: 40,
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
toolbar: {
|
|
131
|
+
enabled: true,
|
|
132
|
+
numberOfIcons: 4,
|
|
133
|
+
controls: [
|
|
134
|
+
{
|
|
135
|
+
type: 'Zoom in',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
type: 'Zoom out',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'Reset zoom',
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'Export as CSV',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'Export as PNG',
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'Make fullscreen',
|
|
151
|
+
},
|
|
152
|
+
],
|
|
153
|
+
},
|
|
154
|
+
zoomBar: {
|
|
155
|
+
top: {
|
|
156
|
+
enabled: true,
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
height: '400px',
|
|
160
|
+
};
|
|
161
|
+
}, [selectedMenuItem.groupLabel, t, chartColors]);
|
|
127
162
|
|
|
128
163
|
return (
|
|
129
164
|
<>
|
|
@@ -153,7 +188,7 @@ const ObsGraph: React.FC<ObsGraphProps> = ({ patientUuid }) => {
|
|
|
153
188
|
{groupedConfigData.map(({ groupLabel, concepts }) => (
|
|
154
189
|
<TabPanel key={groupLabel}>
|
|
155
190
|
<div className={styles.lineChartContainer}>
|
|
156
|
-
<LineChart data={chartDataForConcepts(concepts)
|
|
191
|
+
<LineChart data={chartDataForConcepts(concepts)} options={chartOptions} />
|
|
157
192
|
</div>
|
|
158
193
|
</TabPanel>
|
|
159
194
|
))}
|
|
@@ -163,7 +198,7 @@ const ObsGraph: React.FC<ObsGraphProps> = ({ patientUuid }) => {
|
|
|
163
198
|
</div>
|
|
164
199
|
) : (
|
|
165
200
|
<div className={styles.lineChartContainer}>
|
|
166
|
-
<LineChart data={chartDataForConcepts(selectedMenuItem.concepts)
|
|
201
|
+
<LineChart data={chartDataForConcepts(selectedMenuItem.concepts)} options={chartOptions} />
|
|
167
202
|
</div>
|
|
168
203
|
)}
|
|
169
204
|
</div>
|
|
@@ -15,24 +15,32 @@
|
|
|
15
15
|
margin: 0 layout.$spacing-05;
|
|
16
16
|
flex-direction: row;
|
|
17
17
|
justify-content: space-between;
|
|
18
|
+
|
|
19
|
+
// This is a hack to override the max-width of the overflow menu button
|
|
20
|
+
:global(
|
|
21
|
+
.cds--chart-holder
|
|
22
|
+
.cds--cc--toolbar
|
|
23
|
+
.cds--overflow-menu-options
|
|
24
|
+
.cds--overflow-menu-options__option
|
|
25
|
+
.cds--overflow-menu-options__btn
|
|
26
|
+
) {
|
|
27
|
+
max-width: none !important;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Ensures the chart toolbar tooltips are visible
|
|
31
|
+
:global(.cds--tabs--vertical ~ .cds--tab-content) {
|
|
32
|
+
overflow-y: visible;
|
|
33
|
+
}
|
|
18
34
|
}
|
|
19
35
|
|
|
20
36
|
.conceptPickerTabs {
|
|
21
37
|
margin: layout.$spacing-03 0;
|
|
22
|
-
|
|
38
|
+
flex-grow: 1;
|
|
23
39
|
}
|
|
24
40
|
|
|
25
41
|
.lineChartContainer {
|
|
26
|
-
flex-grow:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
:global(.cds--cc--layout-row) {
|
|
30
|
-
height: 0;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
:global(.layout-child) {
|
|
34
|
-
margin-top: layout.$spacing-03;
|
|
35
|
-
}
|
|
42
|
+
flex-grow: 1;
|
|
43
|
+
margin: layout.$spacing-03 0;
|
|
36
44
|
}
|
|
37
45
|
|
|
38
46
|
.tab {
|