@openmrs/esm-fast-data-entry-app 1.4.2-pre.725 → 1.4.2-pre.734
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/9108.js +1 -1
- package/dist/9108.js.LICENSE.txt +9 -0
- package/dist/9108.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/openmrs-esm-fast-data-entry-app.js +1 -1
- package/dist/openmrs-esm-fast-data-entry-app.js.buildmanifest.json +5 -5
- package/dist/routes.json +1 -1
- package/package.json +12 -13
- package/src/FormBootstrap.test.tsx +12 -11
- package/src/add-group-modal/AddGroupModal.test.tsx +13 -12
- package/src/context/FormWorkflowReducer.test.ts +3 -2
- package/src/context/GroupFormWorkflowReducer.test.ts +6 -5
- package/src/form-entry-workflow/patient-banner/PatientBanner.test.tsx +1 -0
- package/src/form-entry-workflow/patient-search-header/PatientSearchHeader.test.tsx +17 -17
- package/src/group-form-entry-workflow/GroupSessionWorkspace.test.tsx +24 -23
- package/src/group-form-entry-workflow/SessionMetaWorkspace.test.tsx +6 -5
- package/src/group-form-entry-workflow/group-display-header/GroupDisplayHeader.test.tsx +1 -0
- package/src/group-form-entry-workflow/group-search-header/GroupSearchHeader.test.tsx +11 -10
- package/src/hooks/useGetPatient.test.tsx +5 -4
- package/src/setup-tests.ts +5 -1
- package/vitest.config.ts +40 -0
- package/jest.config.json +0 -31
package/dist/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var e,r,t,n,o={8091(e,r,t){"use strict";var n=t(7224),o={featureName:"fast-data-entry-app",moduleName:(n.Type.Array,n.Type.String,n.Type.Array,n.Type.UUID,n.Type.String,n.Type.Boolean,n.Type.Array,n.Type.String,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.Array,n.Type.Array,n.Type.UUID,n.Type.String,n.Type.Boolean,n.Type.Boolean,"@openmrs/esm-fast-data-entry-app")};t(4767),(0,n.getAsyncLifecycle)((function(){return Promise.all([t.e(6072),t.e(7114),t.e(564)]).then(t.bind(t,564))}),o),(0,n.getAsyncLifecycle)((function(){return Promise.all([t.e(6072),t.e(3941),t.e(7219)]).then(t.bind(t,7219))}),o)},4767(e,r,t){var n={"./am.json":[1197,[1197]],"./ar.json":[4132,[4132]],"./ar_SY.json":[7617,[7617]],"./bn.json":[7159,[7159]],"./cs.json":[6589,[6589]],"./de.json":[4944,[4944]],"./en.json":[4300,[4300]],"./en_US.json":[9569,[9569]],"./es.json":[3099,[3099]],"./es_MX.json":[8349,[8349]],"./fr.json":[4055,[4055]],"./he.json":[4652,[4652]],"./hi.json":[6840,[6840]],"./hi_IN.json":[5442,[5442]],"./id.json":[2690,[2690]],"./it.json":[9538,[9538]],"./ka.json":[795,[795]],"./km.json":[4335,[4335]],"./ku.json":[9895,[9895]],"./ky.json":[8163,[8163]],"./lg.json":[4618,[4618]],"./ne.json":[2146,[2146]],"./pl.json":[1119,[1119]],"./pt.json":[6679,[6679]],"./pt_BR.json":[6468,[6468]],"./qu.json":[5173,[5173]],"./ro_RO.json":[6022,[6022]],"./ru_RU.json":[986,[986]],"./si.json":[6859,[6859]],"./sq.json":[8371,[8371]],"./sw.json":[9913,[9913]],"./sw_KE.json":[8618,[8618]],"./tr.json":[5241,[5241]],"./tr_TR.json":[9900,[9900]],"./uk.json":[723,[723]],"./uz.json":[3584,[3584]],"./uz@Latn.json":[7097,[7097]],"./uz_UZ.json":[890,[890]],"./vi.json":[9214,[9214]],"./zh.json":[5661,[5661]],"./zh_CN.json":[9879,[9879]],"./zh_TW.json":[439,[439]]};function o(e){try{if(!t.o(n,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=n[e],o=r[0];return t.e(r[1][0]).then((()=>t(o)))}o.keys=()=>Object.keys(n),o.id=4767,e.exports=o}},a={};function s(e){var r=a[e];if(void 0!==r)return r.exports;var t=a[e]={id:e,exports:{}};return o[e].call(t.exports,t,t.exports,s),t.exports}s.m=o,s.c=a,s.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return s.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,s.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);s.r(o);var a={};e=e||[null,r({}),r([]),r(r)];for(var i=2&n&&t;("object"==typeof i||"function"==typeof i)&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>a[e]=()=>t[e]));return a.default=()=>t,s.d(o,a),o},s.d=(e,r)=>{for(var t in r)s.o(r,t)&&!s.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((r,t)=>(s.f[t](e,r),r)),[])),s.u=e=>e+".js",s.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},n="@openmrs/esm-fast-data-entry-app:",s.l=(e,r,o,a)=>{if(t[e])t[e].push(r);else{var i,l;if(void 0!==o)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")==n+o){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",n+o),i.src=e),t[e]=[r];var c=(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(c.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=c.bind(null,i.onerror),i.onload=c.bind(null,i.onload),l&&document.head.appendChild(i)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{s.S={};var e={},r={};s.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];s.o(s.S,t)||(s.S[t]={});var a=s.S[t],i="@openmrs/esm-fast-data-entry-app",l=(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})},u=[];return"default"===t&&(l("@carbon/react","1.92.1",(()=>Promise.all([s.e(8254),s.e(771),s.e(9043),s.e(5576),s.e(9108),s.e(6072),s.e(2646)]).then((()=>()=>s(9108))))),l("@openmrs/esm-framework","9.0.3-pre.4728",(()=>Promise.all([s.e(2177),s.e(771),s.e(9043),s.e(8949),s.e(6072),s.e(3941),s.e(2646),s.e(559),s.e(4746),s.e(7114),s.e(4209)]).then((()=>()=>s(7702))))),l("lodash-es","4.17.21",(()=>s.e(1258).then((()=>()=>s(8877))))),l("react-dom","18.3.1",(()=>Promise.all([s.e(961),s.e(6072)]).then((()=>()=>s(961))))),l("react-i18next","11.18.6",(()=>Promise.all([s.e(962),s.e(6072)]).then((()=>()=>s(962))))),l("react-router-dom","6.22.3",(()=>Promise.all([s.e(282),s.e(6072),s.e(2646)]).then((()=>()=>s(282))))),l("react","18.3.1",(()=>s.e(6540).then((()=>()=>s(6540))))),l("swr/immutable","2.3.3",(()=>Promise.all([s.e(2177),s.e(6072),s.e(4225)]).then((()=>()=>s(4225))))),l("swr/infinite","2.3.3",(()=>Promise.all([s.e(2177),s.e(6072),s.e(3041)]).then((()=>()=>s(3041)))))),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 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(/\/[^\/]+$/,"/"),s.p=e})(),(()=>{var e=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},r=e=>{var t=e[0],n="";if(1===e.length)return"*";if(t+.5){n+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var o=1,a=1;a<e.length;a++)o--,n+="u"==(typeof(i=e[a]))[0]?"-":(o>0?".":"")+(o=2,i);return n}var s=[];for(a=1;a<e.length;a++){var i=e[a];s.push(0===i?"not("+l()+")":1===i?"("+l()+" || "+l()+")":2===i?s.pop()+" "+s.pop():r(i))}return l();function l(){return s.pop().replace(/^\((.+)\)$/,"$1")}},t=(r,n)=>{if(0 in r){n=e(n);var o=r[0],a=o<0;a&&(o=-o-1);for(var s=0,i=1,l=!0;;i++,s++){var u,p,f=i<r.length?(typeof r[i])[0]:"";if(s>=n.length||"o"==(p=(typeof(u=n[s]))[0]))return!l||("u"==f?i>o&&!a:""==f!=a);if("u"==p){if(!l||"u"!=f)return!1}else if(l)if(f==p)if(i<=o){if(u!=r[i])return!1}else{if(a?u>r[i]:u<r[i])return!1;u!=r[i]&&(l=!1)}else if("s"!=f&&"n"!=f){if(a||i<=o)return!1;l=!1,i--}else{if(i<=o||p<f!=a)return!1;l=!1}else"s"!=f&&"n"!=f&&(l=!1,i--)}}var c=[],d=c.pop.bind(c);for(s=1;s<r.length;s++){var h=r[s];c.push(1==h?d()|d():2==h?d()&d():h?t(h,n):!d())}return!!d()},n=(r,t,n)=>{var o=n?(e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}))(r[t]):r[t];return Object.keys(o).reduce(((r,t)=>!r||!o[r].loaded&&((r,t)=>{r=e(r),t=e(t);for(var n=0;;){if(n>=r.length)return n<t.length&&"u"!=(typeof t[n])[0];var o=r[n],a=(typeof o)[0];if(n>=t.length)return"u"==a;var s=t[n],i=(typeof s)[0];if(a!=i)return"o"==a&&"n"==i||"s"==i||"u"==a;if("o"!=a&&"u"!=a&&o!=s)return o<s;n++}})(r,t)?t:r),0)},o=(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,n,o,a){var i=s.I(r);return i&&i.then&&!n?i.then(e.bind(e,r,s.S[r],t,!1,o,a)):e(r,s.S[r],t,n,o,a)})(((e,a,i,l,u,p)=>{if(!((e,r)=>e&&s.o(e,r))(a,i))return o(e,i,p);var f,c,d=n(a,i,l);return t(u,d)||(c=((e,t,n,o)=>"Unsatisfied version "+n+" from "+(n&&e[t][n].from)+" of shared singleton module "+t+" (required "+r(o)+")")(a,i,d,u),"undefined"!=typeof console&&console.warn&&console.warn(c)),(f=a[i][d]).loaded=1,f.get()})),i={},l={7224:()=>a("default","@openmrs/esm-framework",!1,[1,9],(()=>Promise.all([s.e(2177),s.e(771),s.e(9043),s.e(8949),s.e(6072),s.e(3941),s.e(2646),s.e(559),s.e(4746),s.e(7114),s.e(4209)]).then((()=>()=>s(7702))))),6072:()=>a("default","react",!1,[1,18],(()=>s.e(6540).then((()=>()=>s(6540))))),7114:()=>a("default","react-router-dom",!1,[1,6],(()=>Promise.all([s.e(282),s.e(2646)]).then((()=>()=>s(282))))),3941:()=>a("default","react-i18next",!1,[1,11],(()=>s.e(962).then((()=>()=>s(962))))),2646:()=>a("default","react-dom",!1,[1,18],(()=>s.e(961).then((()=>()=>s(961))))),559:()=>a("default","@carbon/react",!1,[1,1],(()=>Promise.all([s.e(8254),s.e(771),s.e(9043),s.e(5576),s.e(9108),s.e(2646)]).then((()=>()=>s(9108))))),4836:()=>a("default","lodash-es",!1,[1,4],(()=>s.e(1258).then((()=>()=>s(8877))))),6339:()=>a("default","swr/infinite",!1,[1,2],(()=>s.e(5422).then((()=>()=>s(3041))))),4209:()=>a("default","swr/immutable",!1,[1,2],(()=>s.e(6606).then((()=>()=>s(4225)))))};[7224].forEach((e=>{s.m[e]=r=>{i[e]=0,delete s.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={559:[559],2646:[2646],3941:[3941],4209:[4209],4746:[4836,6339],6072:[6072],7114:[7114],8792:[7224]},p={};s.f.consumes=(e,r)=>{s.o(u,e)&&u[e].forEach((e=>{if(s.o(i,e))return r.push(i[e]);if(!p[e]){var t=r=>{i[e]=0,s.m[e]=t=>{delete s.c[e],t.exports=r()}};p[e]=!0;var n=r=>{delete i[e],s.m[e]=t=>{throw delete s.c[e],r}};try{var o=l[e]();o.then?r.push(i[e]=o.then(t).catch(n)):t(o)}catch(e){n(e)}}}))}})(),(()=>{var e={8091:0,8792:0};s.f.j=(r,t)=>{var n=s.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else if(/^((26|47)46|3941|4209|559|6072|7114)$/.test(r))e[r]=0;else{var o=new Promise(((t,o)=>n=e[r]=[t,o]));t.push(n[2]=o);var a=s.p+s.u(r),i=new Error;s.l(a,(t=>{if(s.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,l]=t,u=0;if(a.some((r=>0!==e[r]))){for(n in i)s.o(i,n)&&(s.m[n]=i[n]);l&&l(s)}for(r&&r(t);u<a.length;u++)o=a[u],s.o(e,o)&&e[o]&&e[o][0](),e[o]=0},t=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),s.nc=void 0,s(8091)})();
|
|
1
|
+
(()=>{var e,r,t,n,o={8091(e,r,t){"use strict";var n=t(7224),o={featureName:"fast-data-entry-app",moduleName:(n.Type.Array,n.Type.String,n.Type.Array,n.Type.UUID,n.Type.String,n.Type.Boolean,n.Type.Array,n.Type.String,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.UUID,n.Type.Array,n.Type.Array,n.Type.UUID,n.Type.String,n.Type.Boolean,n.Type.Boolean,"@openmrs/esm-fast-data-entry-app")};t(4767),(0,n.getAsyncLifecycle)((function(){return Promise.all([t.e(6072),t.e(7114),t.e(564)]).then(t.bind(t,564))}),o),(0,n.getAsyncLifecycle)((function(){return Promise.all([t.e(6072),t.e(3941),t.e(7219)]).then(t.bind(t,7219))}),o)},4767(e,r,t){var n={"./am.json":[1197,[1197]],"./ar.json":[4132,[4132]],"./ar_SY.json":[7617,[7617]],"./bn.json":[7159,[7159]],"./cs.json":[6589,[6589]],"./de.json":[4944,[4944]],"./en.json":[4300,[4300]],"./en_US.json":[9569,[9569]],"./es.json":[3099,[3099]],"./es_MX.json":[8349,[8349]],"./fr.json":[4055,[4055]],"./he.json":[4652,[4652]],"./hi.json":[6840,[6840]],"./hi_IN.json":[5442,[5442]],"./id.json":[2690,[2690]],"./it.json":[9538,[9538]],"./ka.json":[795,[795]],"./km.json":[4335,[4335]],"./ku.json":[9895,[9895]],"./ky.json":[8163,[8163]],"./lg.json":[4618,[4618]],"./ne.json":[2146,[2146]],"./pl.json":[1119,[1119]],"./pt.json":[6679,[6679]],"./pt_BR.json":[6468,[6468]],"./qu.json":[5173,[5173]],"./ro_RO.json":[6022,[6022]],"./ru_RU.json":[986,[986]],"./si.json":[6859,[6859]],"./sq.json":[8371,[8371]],"./sw.json":[9913,[9913]],"./sw_KE.json":[8618,[8618]],"./tr.json":[5241,[5241]],"./tr_TR.json":[9900,[9900]],"./uk.json":[723,[723]],"./uz.json":[3584,[3584]],"./uz@Latn.json":[7097,[7097]],"./uz_UZ.json":[890,[890]],"./vi.json":[9214,[9214]],"./zh.json":[5661,[5661]],"./zh_CN.json":[9879,[9879]],"./zh_TW.json":[439,[439]]};function o(e){try{if(!t.o(n,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=n[e],o=r[0];return t.e(r[1][0]).then((()=>t(o)))}o.keys=()=>Object.keys(n),o.id=4767,e.exports=o}},a={};function s(e){var r=a[e];if(void 0!==r)return r.exports;var t=a[e]={id:e,exports:{}};return o[e].call(t.exports,t,t.exports,s),t.exports}s.m=o,s.c=a,s.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return s.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,s.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);s.r(o);var a={};e=e||[null,r({}),r([]),r(r)];for(var i=2&n&&t;("object"==typeof i||"function"==typeof i)&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>a[e]=()=>t[e]));return a.default=()=>t,s.d(o,a),o},s.d=(e,r)=>{for(var t in r)s.o(r,t)&&!s.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((r,t)=>(s.f[t](e,r),r)),[])),s.u=e=>e+".js",s.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},n="@openmrs/esm-fast-data-entry-app:",s.l=(e,r,o,a)=>{if(t[e])t[e].push(r);else{var i,l;if(void 0!==o)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")==n+o){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",s.nc&&i.setAttribute("nonce",s.nc),i.setAttribute("data-webpack",n+o),i.src=e),t[e]=[r];var c=(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(c.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=c.bind(null,i.onerror),i.onload=c.bind(null,i.onload),l&&document.head.appendChild(i)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{s.S={};var e={},r={};s.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];s.o(s.S,t)||(s.S[t]={});var a=s.S[t],i="@openmrs/esm-fast-data-entry-app",l=(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})},u=[];return"default"===t&&(l("@carbon/react","1.92.1",(()=>Promise.all([s.e(8254),s.e(771),s.e(9043),s.e(5576),s.e(9108),s.e(6072),s.e(2646)]).then((()=>()=>s(9108))))),l("@openmrs/esm-framework","9.0.3-pre.4740",(()=>Promise.all([s.e(2177),s.e(771),s.e(9043),s.e(8949),s.e(6072),s.e(3941),s.e(2646),s.e(559),s.e(4746),s.e(7114),s.e(4209)]).then((()=>()=>s(7702))))),l("lodash-es","4.17.21",(()=>s.e(1258).then((()=>()=>s(8877))))),l("react-dom","18.3.1",(()=>Promise.all([s.e(961),s.e(6072)]).then((()=>()=>s(961))))),l("react-i18next","11.18.6",(()=>Promise.all([s.e(962),s.e(6072)]).then((()=>()=>s(962))))),l("react-router-dom","6.22.3",(()=>Promise.all([s.e(282),s.e(6072),s.e(2646)]).then((()=>()=>s(282))))),l("react","18.3.1",(()=>s.e(6540).then((()=>()=>s(6540))))),l("swr/immutable","2.3.3",(()=>Promise.all([s.e(2177),s.e(6072),s.e(4225)]).then((()=>()=>s(4225))))),l("swr/infinite","2.3.3",(()=>Promise.all([s.e(2177),s.e(6072),s.e(3041)]).then((()=>()=>s(3041)))))),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 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(/\/[^\/]+$/,"/"),s.p=e})(),(()=>{var e=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},r=e=>{var t=e[0],n="";if(1===e.length)return"*";if(t+.5){n+=0==t?">=":-1==t?"<":1==t?"^":2==t?"~":t>0?"=":"!=";for(var o=1,a=1;a<e.length;a++)o--,n+="u"==(typeof(i=e[a]))[0]?"-":(o>0?".":"")+(o=2,i);return n}var s=[];for(a=1;a<e.length;a++){var i=e[a];s.push(0===i?"not("+l()+")":1===i?"("+l()+" || "+l()+")":2===i?s.pop()+" "+s.pop():r(i))}return l();function l(){return s.pop().replace(/^\((.+)\)$/,"$1")}},t=(r,n)=>{if(0 in r){n=e(n);var o=r[0],a=o<0;a&&(o=-o-1);for(var s=0,i=1,l=!0;;i++,s++){var u,p,f=i<r.length?(typeof r[i])[0]:"";if(s>=n.length||"o"==(p=(typeof(u=n[s]))[0]))return!l||("u"==f?i>o&&!a:""==f!=a);if("u"==p){if(!l||"u"!=f)return!1}else if(l)if(f==p)if(i<=o){if(u!=r[i])return!1}else{if(a?u>r[i]:u<r[i])return!1;u!=r[i]&&(l=!1)}else if("s"!=f&&"n"!=f){if(a||i<=o)return!1;l=!1,i--}else{if(i<=o||p<f!=a)return!1;l=!1}else"s"!=f&&"n"!=f&&(l=!1,i--)}}var c=[],d=c.pop.bind(c);for(s=1;s<r.length;s++){var h=r[s];c.push(1==h?d()|d():2==h?d()&d():h?t(h,n):!d())}return!!d()},n=(r,t,n)=>{var o=n?(e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}))(r[t]):r[t];return Object.keys(o).reduce(((r,t)=>!r||!o[r].loaded&&((r,t)=>{r=e(r),t=e(t);for(var n=0;;){if(n>=r.length)return n<t.length&&"u"!=(typeof t[n])[0];var o=r[n],a=(typeof o)[0];if(n>=t.length)return"u"==a;var s=t[n],i=(typeof s)[0];if(a!=i)return"o"==a&&"n"==i||"s"==i||"u"==a;if("o"!=a&&"u"!=a&&o!=s)return o<s;n++}})(r,t)?t:r),0)},o=(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,n,o,a){var i=s.I(r);return i&&i.then&&!n?i.then(e.bind(e,r,s.S[r],t,!1,o,a)):e(r,s.S[r],t,n,o,a)})(((e,a,i,l,u,p)=>{if(!((e,r)=>e&&s.o(e,r))(a,i))return o(e,i,p);var f,c,d=n(a,i,l);return t(u,d)||(c=((e,t,n,o)=>"Unsatisfied version "+n+" from "+(n&&e[t][n].from)+" of shared singleton module "+t+" (required "+r(o)+")")(a,i,d,u),"undefined"!=typeof console&&console.warn&&console.warn(c)),(f=a[i][d]).loaded=1,f.get()})),i={},l={7224:()=>a("default","@openmrs/esm-framework",!1,[1,9],(()=>Promise.all([s.e(2177),s.e(771),s.e(9043),s.e(8949),s.e(6072),s.e(3941),s.e(2646),s.e(559),s.e(4746),s.e(7114),s.e(4209)]).then((()=>()=>s(7702))))),6072:()=>a("default","react",!1,[1,18],(()=>s.e(6540).then((()=>()=>s(6540))))),7114:()=>a("default","react-router-dom",!1,[1,6],(()=>Promise.all([s.e(282),s.e(2646)]).then((()=>()=>s(282))))),3941:()=>a("default","react-i18next",!1,[1,11],(()=>s.e(962).then((()=>()=>s(962))))),2646:()=>a("default","react-dom",!1,[1,18],(()=>s.e(961).then((()=>()=>s(961))))),559:()=>a("default","@carbon/react",!1,[1,1],(()=>Promise.all([s.e(8254),s.e(771),s.e(9043),s.e(5576),s.e(9108),s.e(2646)]).then((()=>()=>s(9108))))),4836:()=>a("default","lodash-es",!1,[1,4],(()=>s.e(1258).then((()=>()=>s(8877))))),6339:()=>a("default","swr/infinite",!1,[1,2],(()=>s.e(5422).then((()=>()=>s(3041))))),4209:()=>a("default","swr/immutable",!1,[1,2],(()=>s.e(6606).then((()=>()=>s(4225)))))};[7224].forEach((e=>{s.m[e]=r=>{i[e]=0,delete s.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={559:[559],2646:[2646],3941:[3941],4209:[4209],4746:[4836,6339],6072:[6072],7114:[7114],8792:[7224]},p={};s.f.consumes=(e,r)=>{s.o(u,e)&&u[e].forEach((e=>{if(s.o(i,e))return r.push(i[e]);if(!p[e]){var t=r=>{i[e]=0,s.m[e]=t=>{delete s.c[e],t.exports=r()}};p[e]=!0;var n=r=>{delete i[e],s.m[e]=t=>{throw delete s.c[e],r}};try{var o=l[e]();o.then?r.push(i[e]=o.then(t).catch(n)):t(o)}catch(e){n(e)}}}))}})(),(()=>{var e={8091:0,8792:0};s.f.j=(r,t)=>{var n=s.o(e,r)?e[r]:void 0;if(0!==n)if(n)t.push(n[2]);else if(/^((26|47)46|3941|4209|559|6072|7114)$/.test(r))e[r]=0;else{var o=new Promise(((t,o)=>n=e[r]=[t,o]));t.push(n[2]=o);var a=s.p+s.u(r),i=new Error;s.l(a,(t=>{if(s.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,l]=t,u=0;if(a.some((r=>0!==e[r]))){for(n in i)s.o(i,n)&&(s.m[n]=i[n]);l&&l(s)}for(r&&r(t);u<a.length;u++)o=a[u],s.o(e,o)&&e[o]&&e[o][0](),e[o]=0},t=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),s.nc=void 0,s(8091)})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var _openmrs_esm_fast_data_entry_app;(()=>{"use strict";var e,r,t,a,n,o,i,l,s,u,f,p,d,c,h,m,v,b,g,y,_,w={1080(e,r,t){var a={"./start":()=>t.e(8091).then((()=>()=>t(8091)))},n=(e,r)=>(t.R=r,r=t.o(a,e)?a[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),o=(e,r)=>{if(t.S){var a="default",n=t.S[a];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[a]=e,t.I(a,r)}};t.d(r,{get:()=>n,init:()=>o})}},P={};function S(e){var r=P[e];if(void 0!==r)return r.exports;var t=P[e]={id:e,exports:{}};return w[e].call(t.exports,t,t.exports,S),t.exports}S.m=w,S.c=P,S.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return S.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,S.t=function(t,a){if(1&a&&(t=this(t)),8&a)return t;if("object"==typeof t&&t){if(4&a&&t.__esModule)return t;if(16&a&&"function"==typeof t.then)return t}var n=Object.create(null);S.r(n);var o={};e=e||[null,r({}),r([]),r(r)];for(var i=2&a&&t;("object"==typeof i||"function"==typeof i)&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>o[e]=()=>t[e]));return o.default=()=>t,S.d(n,o),n},S.d=(e,r)=>{for(var t in r)S.o(r,t)&&!S.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},S.f={},S.e=e=>Promise.all(Object.keys(S.f).reduce(((r,t)=>(S.f[t](e,r),r)),[])),S.u=e=>e+".js",S.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},a="@openmrs/esm-fast-data-entry-app:",S.l=(e,r,n,o)=>{if(t[e])t[e].push(r);else{var i,l;if(void 0!==n)for(var s=document.getElementsByTagName("script"),u=0;u<s.length;u++){var f=s[u];if(f.getAttribute("src")==e||f.getAttribute("data-webpack")==a+n){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",S.nc&&i.setAttribute("nonce",S.nc),i.setAttribute("data-webpack",a+n),i.src=e),t[e]=[r];var p=(r,a)=>{i.onerror=i.onload=null,clearTimeout(d);var n=t[e];if(delete t[e],i.parentNode&&i.parentNode.removeChild(i),n&&n.forEach((e=>e(a))),r)return r(a)},d=setTimeout(p.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=p.bind(null,i.onerror),i.onload=p.bind(null,i.onload),l&&document.head.appendChild(i)}},S.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{S.S={};var e={},r={};S.I=(t,a)=>{a||(a=[]);var n=r[t];if(n||(n=r[t]={}),!(a.indexOf(n)>=0)){if(a.push(n),e[t])return e[t];S.o(S.S,t)||(S.S[t]={});var o=S.S[t],i="@openmrs/esm-fast-data-entry-app",l=(e,r,t,a)=>{var n=o[e]=o[e]||{},l=n[r];(!l||!l.loaded&&(!a!=!l.eager?a:i>l.from))&&(n[r]={get:t,from:i,eager:!!a})},s=[];return"default"===t&&(l("@carbon/react","1.92.1",(()=>Promise.all([S.e(8254),S.e(771),S.e(9043),S.e(5576),S.e(9108),S.e(6072),S.e(2646)]).then((()=>()=>S(9108))))),l("@openmrs/esm-framework","9.0.3-pre.
|
|
1
|
+
var _openmrs_esm_fast_data_entry_app;(()=>{"use strict";var e,r,t,a,n,o,i,l,s,u,f,p,d,c,h,m,v,b,g,y,_,w={1080(e,r,t){var a={"./start":()=>t.e(8091).then((()=>()=>t(8091)))},n=(e,r)=>(t.R=r,r=t.o(a,e)?a[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),o=(e,r)=>{if(t.S){var a="default",n=t.S[a];if(n&&n!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[a]=e,t.I(a,r)}};t.d(r,{get:()=>n,init:()=>o})}},P={};function S(e){var r=P[e];if(void 0!==r)return r.exports;var t=P[e]={id:e,exports:{}};return w[e].call(t.exports,t,t.exports,S),t.exports}S.m=w,S.c=P,S.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return S.d(r,{a:r}),r},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,S.t=function(t,a){if(1&a&&(t=this(t)),8&a)return t;if("object"==typeof t&&t){if(4&a&&t.__esModule)return t;if(16&a&&"function"==typeof t.then)return t}var n=Object.create(null);S.r(n);var o={};e=e||[null,r({}),r([]),r(r)];for(var i=2&a&&t;("object"==typeof i||"function"==typeof i)&&!~e.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((e=>o[e]=()=>t[e]));return o.default=()=>t,S.d(n,o),n},S.d=(e,r)=>{for(var t in r)S.o(r,t)&&!S.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},S.f={},S.e=e=>Promise.all(Object.keys(S.f).reduce(((r,t)=>(S.f[t](e,r),r)),[])),S.u=e=>e+".js",S.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t={},a="@openmrs/esm-fast-data-entry-app:",S.l=(e,r,n,o)=>{if(t[e])t[e].push(r);else{var i,l;if(void 0!==n)for(var s=document.getElementsByTagName("script"),u=0;u<s.length;u++){var f=s[u];if(f.getAttribute("src")==e||f.getAttribute("data-webpack")==a+n){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",S.nc&&i.setAttribute("nonce",S.nc),i.setAttribute("data-webpack",a+n),i.src=e),t[e]=[r];var p=(r,a)=>{i.onerror=i.onload=null,clearTimeout(d);var n=t[e];if(delete t[e],i.parentNode&&i.parentNode.removeChild(i),n&&n.forEach((e=>e(a))),r)return r(a)},d=setTimeout(p.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=p.bind(null,i.onerror),i.onload=p.bind(null,i.onload),l&&document.head.appendChild(i)}},S.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{S.S={};var e={},r={};S.I=(t,a)=>{a||(a=[]);var n=r[t];if(n||(n=r[t]={}),!(a.indexOf(n)>=0)){if(a.push(n),e[t])return e[t];S.o(S.S,t)||(S.S[t]={});var o=S.S[t],i="@openmrs/esm-fast-data-entry-app",l=(e,r,t,a)=>{var n=o[e]=o[e]||{},l=n[r];(!l||!l.loaded&&(!a!=!l.eager?a:i>l.from))&&(n[r]={get:t,from:i,eager:!!a})},s=[];return"default"===t&&(l("@carbon/react","1.92.1",(()=>Promise.all([S.e(8254),S.e(771),S.e(9043),S.e(5576),S.e(9108),S.e(6072),S.e(2646)]).then((()=>()=>S(9108))))),l("@openmrs/esm-framework","9.0.3-pre.4740",(()=>Promise.all([S.e(2177),S.e(771),S.e(9043),S.e(8949),S.e(6072),S.e(3941),S.e(2646),S.e(559),S.e(4746),S.e(7114),S.e(4209)]).then((()=>()=>S(7702))))),l("lodash-es","4.17.21",(()=>S.e(1258).then((()=>()=>S(8877))))),l("react-dom","18.3.1",(()=>Promise.all([S.e(961),S.e(6072)]).then((()=>()=>S(961))))),l("react-i18next","11.18.6",(()=>Promise.all([S.e(962),S.e(6072)]).then((()=>()=>S(962))))),l("react-router-dom","6.22.3",(()=>Promise.all([S.e(282),S.e(6072),S.e(2646)]).then((()=>()=>S(282))))),l("react","18.3.1",(()=>S.e(6540).then((()=>()=>S(6540))))),l("swr/immutable","2.3.3",(()=>Promise.all([S.e(2177),S.e(6072),S.e(4225)]).then((()=>()=>S(4225))))),l("swr/infinite","2.3.3",(()=>Promise.all([S.e(2177),S.e(6072),S.e(3041)]).then((()=>()=>S(3041)))))),e[t]=s.length?Promise.all(s).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 a=t.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=t[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),S.p=e})(),n=e=>{var r=e=>e.split(".").map((e=>+e==e?+e:e)),t=/^([^-+]+)?(?:-([^+]+))?(?:\+(.+))?$/.exec(e),a=t[1]?r(t[1]):[];return t[2]&&(a.length++,a.push.apply(a,r(t[2]))),t[3]&&(a.push([]),a.push.apply(a,r(t[3]))),a},o=(e,r)=>{e=n(e),r=n(r);for(var t=0;;){if(t>=e.length)return t<r.length&&"u"!=(typeof r[t])[0];var a=e[t],o=(typeof a)[0];if(t>=r.length)return"u"==o;var i=r[t],l=(typeof i)[0];if(o!=l)return"o"==o&&"n"==l||"s"==l||"u"==o;if("o"!=o&&"u"!=o&&a!=i)return a<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 a=1,n=1;n<e.length;n++)a--,t+="u"==(typeof(l=e[n]))[0]?"-":(a>0?".":"")+(a=2,l);return t}var o=[];for(n=1;n<e.length;n++){var l=e[n];o.push(0===l?"not("+s()+")":1===l?"("+s()+" || "+s()+")":2===l?o.pop()+" "+o.pop():i(l))}return s();function s(){return o.pop().replace(/^\((.+)\)$/,"$1")}},l=(e,r)=>{if(0 in e){r=n(r);var t=e[0],a=t<0;a&&(t=-t-1);for(var o=0,i=1,s=!0;;i++,o++){var u,f,p=i<e.length?(typeof e[i])[0]:"";if(o>=r.length||"o"==(f=(typeof(u=r[o]))[0]))return!s||("u"==p?i>t&&!a:""==p!=a);if("u"==f){if(!s||"u"!=p)return!1}else if(s)if(p==f)if(i<=t){if(u!=e[i])return!1}else{if(a?u>e[i]:u<e[i])return!1;u!=e[i]&&(s=!1)}else if("s"!=p&&"n"!=p){if(a||i<=t)return!1;s=!1,i--}else{if(i<=t||f<p!=a)return!1;s=!1}else"s"!=p&&"n"!=p&&(s=!1,i--)}}var d=[],c=d.pop.bind(d);for(o=1;o<e.length;o++){var h=e[o];d.push(1==h?c()|c():2==h?c()&c():h?l(h,r):!c())}return!!c()},s=(e,r)=>e&&S.o(e,r),u=e=>(e.loaded=1,e.get()),f=e=>Object.keys(e).reduce(((r,t)=>(e[t].eager&&(r[t]=e[t]),r)),{}),p=(e,r,t)=>{var a=t?f(e[r]):e[r];return Object.keys(a).reduce(((e,r)=>!e||!a[e].loaded&&o(e,r)?r:e),0)},d=(e,r,t,a)=>"Unsatisfied version "+t+" from "+(t&&e[r][t].from)+" of shared singleton module "+r+" (required "+i(a)+")",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),v=(e=>function(r,t,a,n,o){var i=S.I(r);return i&&i.then&&!a?i.then(e.bind(e,r,S.S[r],t,!1,n,o)):e(r,S.S[r],t,a,n,o)})(((e,r,t,a,n,o)=>{if(!s(r,t))return m(e,t,o);var i=p(r,t,a);return l(n,i)||h(d(r,t,i,n)),u(r[t][i])})),b={},g={6072:()=>v("default","react",!1,[1,18],(()=>S.e(6540).then((()=>()=>S(6540))))),2646:()=>v("default","react-dom",!1,[1,18],(()=>S.e(961).then((()=>()=>S(961))))),3941:()=>v("default","react-i18next",!1,[1,11],(()=>S.e(962).then((()=>()=>S(962))))),559:()=>v("default","@carbon/react",!1,[1,1],(()=>Promise.all([S.e(8254),S.e(771),S.e(9043),S.e(5576),S.e(9108),S.e(2646)]).then((()=>()=>S(9108))))),4836:()=>v("default","lodash-es",!1,[1,4],(()=>S.e(1258).then((()=>()=>S(8877))))),6339:()=>v("default","swr/infinite",!1,[1,2],(()=>S.e(5422).then((()=>()=>S(3041))))),7114:()=>v("default","react-router-dom",!1,[1,6],(()=>Promise.all([S.e(282),S.e(2646)]).then((()=>()=>S(282))))),4209:()=>v("default","swr/immutable",!1,[1,2],(()=>S.e(6606).then((()=>()=>S(4225))))),7224:()=>v("default","@openmrs/esm-framework",!1,[1,9],(()=>Promise.all([S.e(2177),S.e(771),S.e(9043),S.e(8949),S.e(6072),S.e(3941),S.e(2646),S.e(559),S.e(4746),S.e(7114),S.e(4209)]).then((()=>()=>S(7702)))))},y={559:[559],2646:[2646],3941:[3941],4209:[4209],4746:[4836,6339],6072:[6072],7114:[7114],8091:[7224]},_={},S.f.consumes=(e,r)=>{S.o(y,e)&&y[e].forEach((e=>{if(S.o(b,e))return r.push(b[e]);if(!_[e]){var t=r=>{b[e]=0,S.m[e]=t=>{delete S.c[e],t.exports=r()}};_[e]=!0;var a=r=>{delete b[e],S.m[e]=t=>{throw delete S.c[e],r}};try{var n=g[e]();n.then?r.push(b[e]=n.then(t).catch(a)):t(n)}catch(e){a(e)}}}))},(()=>{var e={2990:0};S.f.j=(r,t)=>{var a=S.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^((26|47)46|3941|4209|559|6072|7114)$/.test(r))e[r]=0;else{var n=new Promise(((t,n)=>a=e[r]=[t,n]));t.push(a[2]=n);var o=S.p+S.u(r),i=new Error;S.l(o,(t=>{if(S.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+n+": "+o+")",i.name="ChunkLoadError",i.type=n,i.request=o,a[1](i)}}),"chunk-"+r,r)}};var r=(r,t)=>{var a,n,[o,i,l]=t,s=0;if(o.some((r=>0!==e[r]))){for(a in i)S.o(i,a)&&(S.m[a]=i[a]);l&&l(S)}for(r&&r(t);s<o.length;s++)n=o[s],S.o(e,n)&&e[n]&&e[n][0](),e[n]=0},t=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app=globalThis.webpackChunk_openmrs_esm_fast_data_entry_app||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),S.nc=void 0;var O=S(1080);_openmrs_esm_fast_data_entry_app=O})();
|
|
@@ -550,7 +550,7 @@
|
|
|
550
550
|
"auxiliaryFiles": [
|
|
551
551
|
"openmrs-esm-fast-data-entry-app.js.map"
|
|
552
552
|
],
|
|
553
|
-
"hash": "
|
|
553
|
+
"hash": "d269916f17ff4623",
|
|
554
554
|
"childrenByOrder": {}
|
|
555
555
|
},
|
|
556
556
|
{
|
|
@@ -1500,7 +1500,7 @@
|
|
|
1500
1500
|
"auxiliaryFiles": [
|
|
1501
1501
|
"main.js.map"
|
|
1502
1502
|
],
|
|
1503
|
-
"hash": "
|
|
1503
|
+
"hash": "84aa5cfaea8abf5d",
|
|
1504
1504
|
"childrenByOrder": {}
|
|
1505
1505
|
},
|
|
1506
1506
|
{
|
|
@@ -1563,9 +1563,9 @@
|
|
|
1563
1563
|
"entry": false,
|
|
1564
1564
|
"recorded": false,
|
|
1565
1565
|
"reason": "split chunk (cache group: defaultVendors)",
|
|
1566
|
-
"size":
|
|
1566
|
+
"size": 3147823,
|
|
1567
1567
|
"sizes": {
|
|
1568
|
-
"javascript":
|
|
1568
|
+
"javascript": 3147823
|
|
1569
1569
|
},
|
|
1570
1570
|
"names": [],
|
|
1571
1571
|
"idHints": [
|
|
@@ -1581,7 +1581,7 @@
|
|
|
1581
1581
|
"auxiliaryFiles": [
|
|
1582
1582
|
"9108.js.map"
|
|
1583
1583
|
],
|
|
1584
|
-
"hash": "
|
|
1584
|
+
"hash": "496ab30cbbad651a",
|
|
1585
1585
|
"childrenByOrder": {}
|
|
1586
1586
|
},
|
|
1587
1587
|
{
|
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"},"pages":[{"component":"root","routeRegex":"forms","online":true,"offline":true}],"extensions":[{"name":"forms-app-link","slot":"app-menu-slot","component":"formsAppMenuLink","online":true,"offline":true}],"version":"1.4.2-pre.
|
|
1
|
+
{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2","webservices.rest":">=2.2.0"},"pages":[{"component":"root","routeRegex":"forms","online":true,"offline":true}],"extensions":[{"name":"forms-app-link","slot":"app-menu-slot","component":"formsAppMenuLink","online":true,"offline":true}],"version":"1.4.2-pre.734"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openmrs/esm-fast-data-entry-app",
|
|
3
|
-
"version": "1.4.2-pre.
|
|
3
|
+
"version": "1.4.2-pre.734",
|
|
4
4
|
"license": "MPL-2.0",
|
|
5
5
|
"description": "O3 frontend module for fast data entry using the OpenMRS Angular Form Engine",
|
|
6
6
|
"browser": "dist/openmrs-esm-fast-data-entry-app.js",
|
|
@@ -14,9 +14,10 @@
|
|
|
14
14
|
"lint": "eslint \"src/**/*.ts\" \"src/**/*.tsx\" --fix --max-warnings=0",
|
|
15
15
|
"prettier": "prettier --write \"src/**/*.{ts,tsx}\" --list-different",
|
|
16
16
|
"typescript": "tsc",
|
|
17
|
-
"test": "
|
|
17
|
+
"test": "cross-env TZ=UTC vitest run --passWithNoTests",
|
|
18
|
+
"test:watch": "cross-env TZ=UTC vitest watch",
|
|
18
19
|
"verify": "turbo lint typescript test",
|
|
19
|
-
"coverage": "
|
|
20
|
+
"coverage": "cross-env TZ=UTC vitest run --coverage --passWithNoTests",
|
|
20
21
|
"postinstall": "husky install",
|
|
21
22
|
"extract-translations": "i18next 'src/**/*.tsx' --config ./tools/i18next-parser.config.js",
|
|
22
23
|
"test-e2e": "playwright test"
|
|
@@ -55,29 +56,26 @@
|
|
|
55
56
|
"@playwright/test": "^1.50.1",
|
|
56
57
|
"@swc-node/loader": "^1.3.7",
|
|
57
58
|
"@swc/core": "^1.3.84",
|
|
58
|
-
"@
|
|
59
|
-
"@testing-library/dom": "^
|
|
60
|
-
"@testing-library/
|
|
61
|
-
"@testing-library/react": "^13.4.0",
|
|
59
|
+
"@testing-library/dom": "^10.4.1",
|
|
60
|
+
"@testing-library/jest-dom": "^6.8.0",
|
|
61
|
+
"@testing-library/react": "^16.3.0",
|
|
62
62
|
"@testing-library/user-event": "^14.4.3",
|
|
63
|
-
"@types/jest": "^28.1.8",
|
|
64
63
|
"@types/react": "^18.3.21",
|
|
65
64
|
"@types/react-dom": "^18.3.0",
|
|
66
65
|
"@types/react-router-dom": "^5.3.3",
|
|
67
|
-
"@types/testing-library__jest-dom": "^5.14.9",
|
|
68
66
|
"@types/webpack-env": "^1.18.1",
|
|
69
67
|
"@typescript-eslint/eslint-plugin": "^6.7.0",
|
|
70
68
|
"@typescript-eslint/parser": "^6.7.0",
|
|
69
|
+
"@vitest/coverage-v8": "^4.1.2",
|
|
71
70
|
"concurrently": "^6.5.1",
|
|
71
|
+
"cross-env": "^10.1.0",
|
|
72
72
|
"eslint": "^8.49.0",
|
|
73
73
|
"eslint-config-react-app": "^7.0.1",
|
|
74
74
|
"eslint-plugin-import": "^2.31.0",
|
|
75
75
|
"eslint-plugin-react-hooks": "^5.0.0",
|
|
76
76
|
"husky": "^8.0.3",
|
|
77
77
|
"identity-obj-proxy": "^3.0.0",
|
|
78
|
-
"
|
|
79
|
-
"jest-cli": "^28.1.3",
|
|
80
|
-
"jest-environment-jsdom": "^28.1.3",
|
|
78
|
+
"jsdom": "^28.0.0",
|
|
81
79
|
"lint-staged": "^15.2.0",
|
|
82
80
|
"lodash-es": "^4.17.21",
|
|
83
81
|
"openmrs": "next",
|
|
@@ -89,7 +87,8 @@
|
|
|
89
87
|
"semver": "^7.5.4",
|
|
90
88
|
"swr": "^2.2.4",
|
|
91
89
|
"turbo": "^2.5.2",
|
|
92
|
-
"typescript": "^5.0.0"
|
|
90
|
+
"typescript": "^5.0.0",
|
|
91
|
+
"vitest": "^4.1.2"
|
|
93
92
|
},
|
|
94
93
|
"dependencies": {
|
|
95
94
|
"dotenv": "^16.4.7",
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { vi, describe, it, expect, beforeEach, afterEach, type MockedFunction } from 'vitest';
|
|
2
3
|
import { act, render, screen } from '@testing-library/react';
|
|
3
4
|
import { detach, ExtensionSlot } from '@openmrs/esm-framework';
|
|
4
5
|
import GroupFormWorkflowContext from './context/GroupFormWorkflowContext';
|
|
5
6
|
import useGetPatient from './hooks/useGetPatient';
|
|
6
7
|
import FormBootstrap from './FormBootstrap';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
vi.mock('./hooks/useGetPatient', () => ({ default: vi.fn() }));
|
|
9
10
|
|
|
10
|
-
const mockDetach =
|
|
11
|
-
const mockExtensionSlot =
|
|
12
|
-
const mockUseGetPatient = useGetPatient as
|
|
11
|
+
const mockDetach = vi.mocked(detach);
|
|
12
|
+
const mockExtensionSlot = vi.mocked(ExtensionSlot);
|
|
13
|
+
const mockUseGetPatient = useGetPatient as MockedFunction<typeof useGetPatient>;
|
|
13
14
|
|
|
14
15
|
const renderFormBootstrap = (props = {}) =>
|
|
15
16
|
render(
|
|
@@ -31,9 +32,9 @@ const renderFormBootstrap = (props = {}) =>
|
|
|
31
32
|
visitUuid="visit-1"
|
|
32
33
|
visitTypeUuid="visit-type-1"
|
|
33
34
|
encounterUuid="encounter-1"
|
|
34
|
-
handlePostResponse={
|
|
35
|
-
handleEncounterCreate={
|
|
36
|
-
handleOnValidate={
|
|
35
|
+
handlePostResponse={vi.fn()}
|
|
36
|
+
handleEncounterCreate={vi.fn()}
|
|
37
|
+
handleOnValidate={vi.fn()}
|
|
37
38
|
hidePatientBanner={true}
|
|
38
39
|
{...props}
|
|
39
40
|
/>
|
|
@@ -50,7 +51,7 @@ describe('FormBootstrap', () => {
|
|
|
50
51
|
});
|
|
51
52
|
|
|
52
53
|
afterEach(() => {
|
|
53
|
-
|
|
54
|
+
vi.useRealTimers();
|
|
54
55
|
});
|
|
55
56
|
|
|
56
57
|
it('passes the expected widget state once the patient is available', () => {
|
|
@@ -84,8 +85,8 @@ describe('FormBootstrap', () => {
|
|
|
84
85
|
});
|
|
85
86
|
|
|
86
87
|
it('refreshes the widget after submit and detaches it on unmount', () => {
|
|
87
|
-
|
|
88
|
-
const handlePostResponse =
|
|
88
|
+
vi.useFakeTimers();
|
|
89
|
+
const handlePostResponse = vi.fn();
|
|
89
90
|
const { unmount } = renderFormBootstrap({ handlePostResponse });
|
|
90
91
|
|
|
91
92
|
const [{ state }] = mockExtensionSlot.mock.calls[0];
|
|
@@ -99,7 +100,7 @@ describe('FormBootstrap', () => {
|
|
|
99
100
|
expect(screen.queryByTestId('form-widget-slot')).not.toBeInTheDocument();
|
|
100
101
|
|
|
101
102
|
act(() => {
|
|
102
|
-
|
|
103
|
+
vi.advanceTimersByTime(1);
|
|
103
104
|
});
|
|
104
105
|
|
|
105
106
|
expect(screen.getByTestId('form-widget-slot')).toBeInTheDocument();
|
|
@@ -6,15 +6,16 @@ import {
|
|
|
6
6
|
type Session,
|
|
7
7
|
PatientIdentifierType,
|
|
8
8
|
} from '@openmrs/esm-framework';
|
|
9
|
+
import { vi, describe, it, expect, test, beforeEach, type MockedFunction } from 'vitest';
|
|
9
10
|
import { useHsuIdIdentifier } from '../hooks/location-tag.resource';
|
|
10
11
|
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
vi.mock('@openmrs/esm-framework');
|
|
13
|
+
vi.mock('../hooks/location-tag.resource');
|
|
13
14
|
|
|
14
|
-
const mockShowSnackbar = showSnackbar as
|
|
15
|
-
const mockUseConfig = useConfig as
|
|
16
|
-
const mockUseSession = useSession as
|
|
17
|
-
const mockUseHsuIdIdentifier = useHsuIdIdentifier as
|
|
15
|
+
const mockShowSnackbar = showSnackbar as MockedFunction<typeof showSnackbar>;
|
|
16
|
+
const mockUseConfig = useConfig as MockedFunction<typeof useConfig>;
|
|
17
|
+
const mockUseSession = useSession as MockedFunction<typeof useSession>;
|
|
18
|
+
const mockUseHsuIdIdentifier = useHsuIdIdentifier as MockedFunction<typeof useHsuIdIdentifier>;
|
|
18
19
|
|
|
19
20
|
describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
20
21
|
const mockSessionLocation = {
|
|
@@ -28,7 +29,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
28
29
|
};
|
|
29
30
|
|
|
30
31
|
beforeEach(() => {
|
|
31
|
-
|
|
32
|
+
vi.clearAllMocks();
|
|
32
33
|
});
|
|
33
34
|
|
|
34
35
|
it('should show error snackbar when enforcePatientListLocationMatch is enabled and location mismatch occurs', () => {
|
|
@@ -48,7 +49,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
48
49
|
},
|
|
49
50
|
} as unknown as ReturnType<typeof useHsuIdIdentifier>);
|
|
50
51
|
|
|
51
|
-
const config = mockUseConfig();
|
|
52
|
+
const config = mockUseConfig() as ConfigSchema;
|
|
52
53
|
const session = mockUseSession();
|
|
53
54
|
const hsuData = mockUseHsuIdIdentifier('patient-uuid');
|
|
54
55
|
|
|
@@ -88,7 +89,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
88
89
|
},
|
|
89
90
|
} as unknown as ReturnType<typeof useHsuIdIdentifier>);
|
|
90
91
|
|
|
91
|
-
const config = mockUseConfig();
|
|
92
|
+
const config = mockUseConfig() as ConfigSchema;
|
|
92
93
|
const session = mockUseSession();
|
|
93
94
|
const hsuData = mockUseHsuIdIdentifier('patient-uuid');
|
|
94
95
|
|
|
@@ -122,7 +123,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
122
123
|
},
|
|
123
124
|
} as unknown as ReturnType<typeof useHsuIdIdentifier>);
|
|
124
125
|
|
|
125
|
-
const config = mockUseConfig();
|
|
126
|
+
const config = mockUseConfig() as ConfigSchema;
|
|
126
127
|
const session = mockUseSession();
|
|
127
128
|
const hsuData = mockUseHsuIdIdentifier('patient-uuid');
|
|
128
129
|
|
|
@@ -160,7 +161,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
160
161
|
},
|
|
161
162
|
} as unknown as ReturnType<typeof useHsuIdIdentifier>);
|
|
162
163
|
|
|
163
|
-
const config = mockUseConfig();
|
|
164
|
+
const config = mockUseConfig() as ConfigSchema;
|
|
164
165
|
const session = mockUseSession();
|
|
165
166
|
const hsuData = mockUseHsuIdIdentifier('patient-uuid');
|
|
166
167
|
|
|
@@ -187,7 +188,7 @@ describe('AddGroupModal - enforcePatientListLocationMatch', () => {
|
|
|
187
188
|
patientLocationMismatchCheck: true,
|
|
188
189
|
} as ConfigSchema);
|
|
189
190
|
|
|
190
|
-
const config = mockUseConfig();
|
|
191
|
+
const config = mockUseConfig() as ConfigSchema;
|
|
191
192
|
|
|
192
193
|
const shouldShowError = config.enforcePatientListLocationMatch === true;
|
|
193
194
|
const shouldShowModal = !config.enforcePatientListLocationMatch && config.patientLocationMismatchCheck;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { navigate } from '@openmrs/esm-framework';
|
|
2
|
+
import { vi, describe, it, expect, beforeEach } from 'vitest';
|
|
2
3
|
import { initialWorkflowState } from './FormWorkflowContext';
|
|
3
4
|
import reducer, { fdeWorkflowStorageName, fdeWorkflowStorageVersion } from './FormWorkflowReducer';
|
|
4
5
|
|
|
5
|
-
const mockNavigate =
|
|
6
|
+
const mockNavigate = vi.mocked(navigate);
|
|
6
7
|
|
|
7
8
|
const buildState = (formStateOverrides = {}) => ({
|
|
8
9
|
...initialWorkflowState,
|
|
@@ -81,7 +82,7 @@ describe('FormWorkflowReducer', () => {
|
|
|
81
82
|
});
|
|
82
83
|
|
|
83
84
|
it('dispatches the submit event and moves the workflow into SUBMIT_FOR_NEXT', () => {
|
|
84
|
-
const dispatchEventSpy =
|
|
85
|
+
const dispatchEventSpy = vi.spyOn(window, 'dispatchEvent');
|
|
85
86
|
const state = buildState({
|
|
86
87
|
workflowState: 'EDIT_FORM',
|
|
87
88
|
activePatientUuid: 'patient-a',
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { navigate } from '@openmrs/esm-framework';
|
|
2
|
+
import { vi, describe, it, expect, beforeEach } from 'vitest';
|
|
2
3
|
import { initialWorkflowState } from './GroupFormWorkflowContext';
|
|
3
4
|
import reducer, { fdeGroupWorkflowStorageName, fdeGroupWorkflowStorageVersion } from './GroupFormWorkflowReducer';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
v4:
|
|
6
|
+
vi.mock('uuid', () => ({
|
|
7
|
+
v4: vi.fn(() => 'generated-session-uuid'),
|
|
7
8
|
}));
|
|
8
9
|
|
|
9
|
-
const mockNavigate =
|
|
10
|
+
const mockNavigate = vi.mocked(navigate);
|
|
10
11
|
|
|
11
12
|
const buildState = (formStateOverrides = {}, rootStateOverrides = {}) => ({
|
|
12
13
|
...initialWorkflowState,
|
|
@@ -185,7 +186,7 @@ describe('GroupFormWorkflowReducer', () => {
|
|
|
185
186
|
});
|
|
186
187
|
|
|
187
188
|
it('dispatches validate events and stores the visit UUID for the active patient', () => {
|
|
188
|
-
const dispatchEventSpy =
|
|
189
|
+
const dispatchEventSpy = vi.spyOn(window, 'dispatchEvent');
|
|
189
190
|
const state = buildState({
|
|
190
191
|
workflowState: 'EDIT_FORM',
|
|
191
192
|
activePatientUuid: 'patient-a',
|
|
@@ -217,7 +218,7 @@ describe('GroupFormWorkflowReducer', () => {
|
|
|
217
218
|
});
|
|
218
219
|
|
|
219
220
|
it('submits for next and advances to the requested patient after saving', () => {
|
|
220
|
-
const dispatchEventSpy =
|
|
221
|
+
const dispatchEventSpy = vi.spyOn(window, 'dispatchEvent');
|
|
221
222
|
const state = buildState(
|
|
222
223
|
{
|
|
223
224
|
workflowState: 'EDIT_FORM',
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { vi, describe, it, expect, beforeEach, afterEach, type MockedFunction } from 'vitest';
|
|
2
3
|
import { render, screen, fireEvent, cleanup, waitFor } from '@testing-library/react';
|
|
3
|
-
import '@testing-library/jest-dom';
|
|
4
4
|
import PatientSearchHeader from './PatientSearchHeader';
|
|
5
5
|
import FormWorkflowContext from '../../context/FormWorkflowContext';
|
|
6
6
|
import { showSnackbar, useConfig, useSession, type ConfigSchema, type Session } from '@openmrs/esm-framework';
|
|
7
7
|
import { useHsuIdIdentifier } from '../../hooks/location-tag.resource';
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
vi.mock('@openmrs/esm-framework', () => ({
|
|
10
10
|
ExtensionSlot: ({ state }) => (
|
|
11
11
|
<button data-testid="mock-search-select" onClick={() => state.selectPatientAction('patient-123')}>
|
|
12
12
|
Select Patient
|
|
13
13
|
</button>
|
|
14
14
|
),
|
|
15
|
-
interpolateUrl:
|
|
16
|
-
navigate:
|
|
17
|
-
showSnackbar:
|
|
18
|
-
useConfig:
|
|
19
|
-
useSession:
|
|
15
|
+
interpolateUrl: vi.fn((url) => url),
|
|
16
|
+
navigate: vi.fn(),
|
|
17
|
+
showSnackbar: vi.fn(),
|
|
18
|
+
useConfig: vi.fn(),
|
|
19
|
+
useSession: vi.fn(),
|
|
20
20
|
}));
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
vi.mock('react-i18next', () => ({
|
|
23
23
|
useTranslation: () => ({
|
|
24
24
|
t: (key: string, defaultValue: string, interpolation: { hsuLocation?: string; sessionLocation?: string }) => {
|
|
25
25
|
if (interpolation?.hsuLocation) {
|
|
@@ -30,22 +30,22 @@ jest.mock('react-i18next', () => ({
|
|
|
30
30
|
}),
|
|
31
31
|
}));
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
useHsuIdIdentifier:
|
|
33
|
+
vi.mock('../../hooks/location-tag.resource', () => ({
|
|
34
|
+
useHsuIdIdentifier: vi.fn(),
|
|
35
35
|
}));
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
vi.mock('react-router-dom', () => ({
|
|
38
38
|
Link: ({ children }) => <div>{children}</div>,
|
|
39
39
|
}));
|
|
40
40
|
|
|
41
|
-
const mockShowSnackbar = showSnackbar as
|
|
42
|
-
const mockUseConfig = useConfig as
|
|
43
|
-
const mockUseSession = useSession as
|
|
44
|
-
const mockUseHsuIdIdentifier = useHsuIdIdentifier as
|
|
41
|
+
const mockShowSnackbar = showSnackbar as MockedFunction<typeof showSnackbar>;
|
|
42
|
+
const mockUseConfig = useConfig as MockedFunction<typeof useConfig>;
|
|
43
|
+
const mockUseSession = useSession as MockedFunction<typeof useSession>;
|
|
44
|
+
const mockUseHsuIdIdentifier = useHsuIdIdentifier as MockedFunction<typeof useHsuIdIdentifier>;
|
|
45
45
|
|
|
46
46
|
describe('PatientSearchHeader - Enforcement Feature', () => {
|
|
47
47
|
const mockContext = {
|
|
48
|
-
addPatient:
|
|
48
|
+
addPatient: vi.fn(),
|
|
49
49
|
workflowState: 'NEW_PATIENT',
|
|
50
50
|
activeFormUuid: 'form-123',
|
|
51
51
|
};
|
|
@@ -60,7 +60,7 @@ describe('PatientSearchHeader - Enforcement Feature', () => {
|
|
|
60
60
|
});
|
|
61
61
|
|
|
62
62
|
afterEach(() => {
|
|
63
|
-
|
|
63
|
+
vi.clearAllMocks();
|
|
64
64
|
cleanup();
|
|
65
65
|
});
|
|
66
66
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { vi, describe, it, expect, beforeEach, type Mock } from 'vitest';
|
|
2
3
|
import { act, render, screen } from '@testing-library/react';
|
|
3
4
|
import userEvent from '@testing-library/user-event';
|
|
4
5
|
import { getGlobalStore, useConfig, useSession, useStore } from '@openmrs/esm-framework';
|
|
@@ -6,23 +7,23 @@ import FormBootstrap from '../FormBootstrap';
|
|
|
6
7
|
import GroupFormWorkflowContext from '../context/GroupFormWorkflowContext';
|
|
7
8
|
import GroupSessionWorkspace from './GroupSessionWorkspace';
|
|
8
9
|
|
|
9
|
-
|
|
10
|
-
getGlobalStore:
|
|
11
|
-
useConfig:
|
|
12
|
-
useSession:
|
|
13
|
-
useStore:
|
|
10
|
+
vi.mock('@openmrs/esm-framework', () => ({
|
|
11
|
+
getGlobalStore: vi.fn(),
|
|
12
|
+
useConfig: vi.fn(),
|
|
13
|
+
useSession: vi.fn(),
|
|
14
|
+
useStore: vi.fn(),
|
|
14
15
|
}));
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
v4:
|
|
17
|
+
vi.mock('uuid', () => ({
|
|
18
|
+
v4: vi.fn(() => 'generated-visit-uuid'),
|
|
18
19
|
}));
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
vi.mock('../FormBootstrap', () => ({
|
|
21
22
|
__esModule: true,
|
|
22
|
-
default:
|
|
23
|
+
default: vi.fn(() => <div data-testid="form-bootstrap" />),
|
|
23
24
|
}));
|
|
24
25
|
|
|
25
|
-
|
|
26
|
+
vi.mock('../patient-card/PatientCard', () => ({
|
|
26
27
|
__esModule: true,
|
|
27
28
|
default: ({ patientUuid, editEncounter }) => (
|
|
28
29
|
<button data-testid={`patient-card-${patientUuid}`} onClick={() => editEncounter(patientUuid)}>
|
|
@@ -31,21 +32,21 @@ jest.mock('../patient-card/PatientCard', () => ({
|
|
|
31
32
|
),
|
|
32
33
|
}));
|
|
33
34
|
|
|
34
|
-
|
|
35
|
+
vi.mock('../CancelModal', () => ({
|
|
35
36
|
__esModule: true,
|
|
36
37
|
default: () => null,
|
|
37
38
|
}));
|
|
38
39
|
|
|
39
|
-
|
|
40
|
+
vi.mock('../CompleteModal', () => ({
|
|
40
41
|
__esModule: true,
|
|
41
42
|
default: () => null,
|
|
42
43
|
}));
|
|
43
44
|
|
|
44
|
-
const mockGetGlobalStore =
|
|
45
|
-
const mockUseConfig =
|
|
46
|
-
const mockUseSession =
|
|
47
|
-
const mockUseStore =
|
|
48
|
-
const mockFormBootstrap = FormBootstrap as
|
|
45
|
+
const mockGetGlobalStore = vi.mocked(getGlobalStore);
|
|
46
|
+
const mockUseConfig = vi.mocked(useConfig);
|
|
47
|
+
const mockUseSession = vi.mocked(useSession);
|
|
48
|
+
const mockUseStore = vi.mocked(useStore);
|
|
49
|
+
const mockFormBootstrap = FormBootstrap as Mock;
|
|
49
50
|
|
|
50
51
|
const renderWorkspace = (contextOverrides = {}) => {
|
|
51
52
|
const defaultContext = {
|
|
@@ -66,9 +67,9 @@ const renderWorkspace = (contextOverrides = {}) => {
|
|
|
66
67
|
},
|
|
67
68
|
groupVisitTypeUuid: 'visit-type-1',
|
|
68
69
|
encounters: {},
|
|
69
|
-
saveEncounter:
|
|
70
|
-
updateVisitUuid:
|
|
71
|
-
submitForNext:
|
|
70
|
+
saveEncounter: vi.fn(),
|
|
71
|
+
updateVisitUuid: vi.fn(),
|
|
72
|
+
submitForNext: vi.fn(),
|
|
72
73
|
};
|
|
73
74
|
|
|
74
75
|
return render(
|
|
@@ -104,7 +105,7 @@ describe('GroupSessionWorkspace', () => {
|
|
|
104
105
|
});
|
|
105
106
|
|
|
106
107
|
it('builds encounter payloads with group-session metadata when no visit exists yet', () => {
|
|
107
|
-
const updateVisitUuid =
|
|
108
|
+
const updateVisitUuid = vi.fn();
|
|
108
109
|
renderWorkspace({ updateVisitUuid });
|
|
109
110
|
|
|
110
111
|
const [formBootstrapProps] = mockFormBootstrap.mock.calls[0];
|
|
@@ -169,8 +170,8 @@ describe('GroupSessionWorkspace', () => {
|
|
|
169
170
|
|
|
170
171
|
it('wires patient switching and save actions through the workflow callbacks', async () => {
|
|
171
172
|
const user = userEvent.setup();
|
|
172
|
-
const saveEncounter =
|
|
173
|
-
const submitForNext =
|
|
173
|
+
const saveEncounter = vi.fn();
|
|
174
|
+
const submitForNext = vi.fn();
|
|
174
175
|
renderWorkspace({ saveEncounter, submitForNext });
|
|
175
176
|
|
|
176
177
|
const [formBootstrapProps] = mockFormBootstrap.mock.calls[0];
|