@openmrs/esm-app-shell 5.4.1-pre.1608 → 5.4.1-pre.1616

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/.turbo/turbo-build.log +44 -99
  2. package/lib/index.html +0 -4
  3. package/lib/openmrs.js +4 -4
  4. package/lib/service-worker.js +2 -2
  5. package/package.json +4 -4
  6. package/dist/023bd53d342b7463.woff +0 -0
  7. package/dist/02acc4469a2fe2e4.woff2 +0 -0
  8. package/dist/033e03f8663ab9b1.woff +0 -0
  9. package/dist/052607e67da262ec.woff +0 -0
  10. package/dist/081587ca0db8e63f.woff2 +0 -0
  11. package/dist/08cf53c4e5e71cf1.woff2 +0 -0
  12. package/dist/090b2bc014d24ea4.woff2 +0 -0
  13. package/dist/0a28cd0b47497b71.woff +0 -0
  14. package/dist/0a9765a89ff0437d.woff +0 -0
  15. package/dist/0ae92bcea615e948.woff2 +0 -0
  16. package/dist/0be8520d8945b3b7.woff2 +0 -0
  17. package/dist/0bf6b66a8b86b014.woff +0 -0
  18. package/dist/0e7dd073cd8bb0ad.woff2 +0 -0
  19. package/dist/1348b3a910102b7f.js +0 -1
  20. package/dist/1348b3a910102b7f.js.map +0 -1
  21. package/dist/14869ac5d1830304.woff2 +0 -0
  22. package/dist/14aaceff85fc8b28.woff2 +0 -0
  23. package/dist/1590052e1cf8f28d.woff +0 -0
  24. package/dist/16f443eed01776ca.woff2 +0 -0
  25. package/dist/183bae0e53a22182.woff2 +0 -0
  26. package/dist/19b239a0bb74b27e.woff +0 -0
  27. package/dist/19c8f94ccd6289f5.woff2 +0 -0
  28. package/dist/1ae86565eab7451c.woff2 +0 -0
  29. package/dist/1c76d0a5a3ae4f33.js +0 -1
  30. package/dist/1c76d0a5a3ae4f33.js.map +0 -1
  31. package/dist/1c7bf8797e0a9be6.woff2 +0 -0
  32. package/dist/1d9aff9a93a3bb66.woff +0 -0
  33. package/dist/1f266d3619b30f16.woff2 +0 -0
  34. package/dist/1f8c5a4087a524fd.woff2 +0 -0
  35. package/dist/20ba2b23c5c0cd0b.woff2 +0 -0
  36. package/dist/2269d45733c5cf8f.woff +0 -0
  37. package/dist/258ecbd235953099.woff +0 -0
  38. package/dist/295dd01a1fbfee6d.woff2 +0 -0
  39. package/dist/2d7f835ab7c7c764.woff +0 -0
  40. package/dist/2f66cca99eeead63.woff +0 -0
  41. package/dist/2f686985e26e7107.woff2 +0 -0
  42. package/dist/315eff729e4ccbd9.woff2 +0 -0
  43. package/dist/32f1e5aadf845e08.woff +0 -0
  44. package/dist/338484e1c850669c.woff +0 -0
  45. package/dist/33b7a82f1e295190.woff +0 -0
  46. package/dist/3674d98ec4a9173d.woff +0 -0
  47. package/dist/368d16e3259bf207.woff2 +0 -0
  48. package/dist/36c49aa341a7079a.woff2 +0 -0
  49. package/dist/36e1e0430475edee.woff2 +0 -0
  50. package/dist/3bc19662b8630ee9.woff2 +0 -0
  51. package/dist/3f645f473b3f8fba.woff2 +0 -0
  52. package/dist/4095df88acae9e98.woff +0 -0
  53. package/dist/4218ac9901b9d36d.woff2 +0 -0
  54. package/dist/4680ba68412e4da9.woff2 +0 -0
  55. package/dist/47d7a8698d562a0e.woff +0 -0
  56. package/dist/47ec6c9dffe776a0.woff +0 -0
  57. package/dist/48e37bd7ebf85a1f.woff2 +0 -0
  58. package/dist/48edfdf51dfb3160.woff +0 -0
  59. package/dist/4a35a2746c8ad7a5.woff +0 -0
  60. package/dist/4e11b8a7c445255f.woff2 +0 -0
  61. package/dist/4ea1f5c3baf89fe3.woff +0 -0
  62. package/dist/4ea99f41c896bf9d.woff +0 -0
  63. package/dist/5005db1d1caf70c7.woff +0 -0
  64. package/dist/528a8e7c1c141a31.woff +0 -0
  65. package/dist/52ca12f5b516d4ea.woff +0 -0
  66. package/dist/537ddd61c5c1fce2.woff2 +0 -0
  67. package/dist/5432f7541ec25c34.woff +0 -0
  68. package/dist/54a95d73a9454ba3.woff +0 -0
  69. package/dist/56c4118c0907f151.woff2 +0 -0
  70. package/dist/5938bc2ae7ec60c0.woff2 +0 -0
  71. package/dist/594306657c4e44e8.woff +0 -0
  72. package/dist/5a538aa477a66067.woff +0 -0
  73. package/dist/5c6586155f0d278a.woff2 +0 -0
  74. package/dist/60ec587649ba812a.woff2 +0 -0
  75. package/dist/616567cd947eb9dd.woff +0 -0
  76. package/dist/65168b59f44caab4.woff +0 -0
  77. package/dist/65c0982f98374864.woff +0 -0
  78. package/dist/65e6511e035870e1.woff2 +0 -0
  79. package/dist/661425f6798cd16a.woff2 +0 -0
  80. package/dist/66b864fe213caf46.woff2 +0 -0
  81. package/dist/6775fee945132ef9.woff +0 -0
  82. package/dist/68bbd362c8e4983b.woff +0 -0
  83. package/dist/68d6deec87b6b604.woff +0 -0
  84. package/dist/69a7e6d31d390296.woff +0 -0
  85. package/dist/69d087d970ee9455.woff2 +0 -0
  86. package/dist/69fa3fc7363bbc04.woff +0 -0
  87. package/dist/6a1f0178b45b2e9e.woff +0 -0
  88. package/dist/6c6c45e66ff54281.woff2 +0 -0
  89. package/dist/6ffb9ed97b21fdc0.woff +0 -0
  90. package/dist/7073a7323e92bd11.woff2 +0 -0
  91. package/dist/718c6cc31274ab1a.woff2 +0 -0
  92. package/dist/72cdbedfe04be9f9.woff2 +0 -0
  93. package/dist/7509c9f56fe9e532.woff2 +0 -0
  94. package/dist/75dc5c5b04adc8bf.woff2 +0 -0
  95. package/dist/76a7c256fc8b3490.woff +0 -0
  96. package/dist/77b48bc05299ecca.woff2 +0 -0
  97. package/dist/787f56efa306ddbc.woff +0 -0
  98. package/dist/7a0a0215c248c73d.woff2 +0 -0
  99. package/dist/7c4463d9c84f263a.woff +0 -0
  100. package/dist/7d112a556b7670d2.woff +0 -0
  101. package/dist/7d52d6014b5f2bbc.woff +0 -0
  102. package/dist/7f00bebb24e40167.woff2 +0 -0
  103. package/dist/7f2c6ea3e740417e.woff +0 -0
  104. package/dist/802c6176541eeed7.woff2 +0 -0
  105. package/dist/8080081b3379c637.woff2 +0 -0
  106. package/dist/8274cc1afc7619f1.woff +0 -0
  107. package/dist/8605507b7a8487c4.woff2 +0 -0
  108. package/dist/8a83d654702f6534.woff2 +0 -0
  109. package/dist/8ccee65f6cf254ee.woff +0 -0
  110. package/dist/8d82a082a4aba439.woff +0 -0
  111. package/dist/8de04ae985937b56.woff +0 -0
  112. package/dist/8fe71173a13fe571.woff2 +0 -0
  113. package/dist/90edccb224a51cee.woff +0 -0
  114. package/dist/94b292fe87831a8b.woff +0 -0
  115. package/dist/95dc66c1b88745f8.woff +0 -0
  116. package/dist/95fb698be77c85ef.woff +0 -0
  117. package/dist/9624cec0f9bdd81e.woff2 +0 -0
  118. package/dist/9662331fa31e3f20.woff +0 -0
  119. package/dist/98a3af55a1698171.woff2 +0 -0
  120. package/dist/9ba85996af74c5ce.woff2 +0 -0
  121. package/dist/9bc133b1df25cb74.woff +0 -0
  122. package/dist/9ddb22faa35006e7.woff2 +0 -0
  123. package/dist/9e97352380611b95.woff +0 -0
  124. package/dist/a167fb2799dd741b.woff2 +0 -0
  125. package/dist/a2045a5cc4fdf94f.woff2 +0 -0
  126. package/dist/a246c73905a31c93.woff2 +0 -0
  127. package/dist/a401aa7939cb6e6f.woff2 +0 -0
  128. package/dist/a41a71258c38684d.woff +0 -0
  129. package/dist/a60d94a72d615a8e.woff +0 -0
  130. package/dist/a66764dd0c1fa213.woff +0 -0
  131. package/dist/a6ed036f17a1ea29.woff2 +0 -0
  132. package/dist/a8f635129d660202.woff +0 -0
  133. package/dist/a9f25ca430709a1a.woff2 +0 -0
  134. package/dist/ae14d98ad8a1212c.woff +0 -0
  135. package/dist/aeec4f78084adf7f.woff +0 -0
  136. package/dist/af11e94b0644eba5.woff +0 -0
  137. package/dist/afa9121a49e95351.woff2 +0 -0
  138. package/dist/afcda12d9f805543.woff2 +0 -0
  139. package/dist/b09ded85a7da77f1.woff2 +0 -0
  140. package/dist/b2f4e9d1e821b71c.woff2 +0 -0
  141. package/dist/b30b06698dc369b2.woff +0 -0
  142. package/dist/b4a074bf828bb757.woff2 +0 -0
  143. package/dist/b66a463116735f62.js +0 -1
  144. package/dist/b66a463116735f62.js.map +0 -1
  145. package/dist/b7f447da43f6e596.woff2 +0 -0
  146. package/dist/b7f633b871b84820.woff +0 -0
  147. package/dist/bcca84a524572d10.woff2 +0 -0
  148. package/dist/be4d1f97b11d087c.woff2 +0 -0
  149. package/dist/be91def2232f6776.woff +0 -0
  150. package/dist/bec14780d81164de.woff2 +0 -0
  151. package/dist/c285f4b15d11f172.woff +0 -0
  152. package/dist/c4673617b80801f3.woff +0 -0
  153. package/dist/c553f7e0199c5084.woff2 +0 -0
  154. package/dist/c8470ed2c145ace7.woff +0 -0
  155. package/dist/c9d9ce9f465df4fe.woff2 +0 -0
  156. package/dist/ccb2870475da9fe8.woff +0 -0
  157. package/dist/d04134fa33c2606d.woff +0 -0
  158. package/dist/d11f9c5cd7d9ea16.woff +0 -0
  159. package/dist/d188f7f036ac5779.woff2 +0 -0
  160. package/dist/d265d81c58525ae4.woff2 +0 -0
  161. package/dist/d5942cd81663e136.woff2 +0 -0
  162. package/dist/d6097a5c452acf6d.woff +0 -0
  163. package/dist/d66b8ff73d95cabb.woff2 +0 -0
  164. package/dist/d77f5bf95de8edaa.woff +0 -0
  165. package/dist/d8829a685af4f372.woff +0 -0
  166. package/dist/d88899ef0fd16719.woff2 +0 -0
  167. package/dist/d9a5d958e69e058d.woff2 +0 -0
  168. package/dist/da65d9a514c628c8.woff +0 -0
  169. package/dist/dac90d495be353a0.woff2 +0 -0
  170. package/dist/dd7071bc6306585c.woff +0 -0
  171. package/dist/dd8ce598529c3fab.woff2 +0 -0
  172. package/dist/ddef6f2dd566c2b9.woff +0 -0
  173. package/dist/de013f1be25103fa.woff2 +0 -0
  174. package/dist/dee2ff599db31e5b.woff +0 -0
  175. package/dist/dee7c6b5dd954d9b.woff +0 -0
  176. package/dist/df222fceeffca849.woff2 +0 -0
  177. package/dist/e0d2e5b12f028b5d.woff +0 -0
  178. package/dist/e33e3db8e4f7559f.woff +0 -0
  179. package/dist/e62b00b9199c1ac9.woff2 +0 -0
  180. package/dist/e696cef1407b2610.woff2 +0 -0
  181. package/dist/e89ca83b24959664.woff +0 -0
  182. package/dist/eb8c0ae77ad55249.woff +0 -0
  183. package/dist/ed0997bd7d221b8e.woff +0 -0
  184. package/dist/eed48feba743e21c.woff2 +0 -0
  185. package/dist/f280bda8a6e535a6.woff +0 -0
  186. package/dist/f543c88feb236d11.woff2 +0 -0
  187. package/dist/f591b0079faa93fe.woff2 +0 -0
  188. package/dist/f6ed27923769ad1d.woff2 +0 -0
  189. package/dist/f8803bebe640d99a.woff +0 -0
  190. package/dist/favicon.ico +0 -0
  191. package/dist/fbebeb4336e67012.woff2 +0 -0
  192. package/dist/fd522cd7a5c646fe.woff +0 -0
  193. package/dist/icon_128x128.3dde25c6e69b1c010a6a5d6b27b3f436.png +0 -0
  194. package/dist/icon_144x144.e263e02b838d229b02ff9133e6e0f2ba.png +0 -0
  195. package/dist/icon_192x192.d3d318638bbe8a10a3c687d3d302d01a.png +0 -0
  196. package/dist/icon_256x256.c729f6e7e914b58fcea5ce91d7aa9bad.png +0 -0
  197. package/dist/icon_384x384.c8923df6b6bd08eba5c79b78d7fcecc0.png +0 -0
  198. package/dist/icon_512x512.7163efb26df832de513bc58d925ea22e.png +0 -0
  199. package/dist/icon_96x96.682ee334ae19d49894217370b8596f61.png +0 -0
  200. package/dist/index.html +0 -9
  201. package/dist/logo-512.png +0 -0
  202. package/dist/logo.svg +0 -30
  203. package/dist/manifest.266df36f2271d27ae9bcaa196a2976ae.json +0 -47
  204. package/dist/openmrs.5d6cda634d8a12b1.css +0 -16
  205. package/dist/openmrs.5d6cda634d8a12b1.css.map +0 -1
  206. package/dist/openmrs.c0b50aa0712c5234.js +0 -2
  207. package/dist/openmrs.c0b50aa0712c5234.js.LICENSE.txt +0 -75
  208. package/dist/openmrs.c0b50aa0712c5234.js.map +0 -1
  209. package/dist/service-worker.js +0 -1
  210. package/dist/service-worker.js.map +0 -1
  211. package/lib/esm-devtools-app/630.js +0 -1
  212. package/lib/esm-devtools-app/630.js.map +0 -1
  213. package/lib/esm-devtools-app/729.js +0 -1
  214. package/lib/esm-devtools-app/729.js.map +0 -1
  215. package/lib/esm-devtools-app/735.js +0 -2
  216. package/lib/esm-devtools-app/735.js.LICENSE.txt +0 -9
  217. package/lib/esm-devtools-app/735.js.map +0 -1
  218. package/lib/esm-devtools-app/788.js +0 -2
  219. package/lib/esm-devtools-app/788.js.LICENSE.txt +0 -19
  220. package/lib/esm-devtools-app/788.js.map +0 -1
  221. package/lib/esm-devtools-app/875.js +0 -1
  222. package/lib/esm-devtools-app/875.js.map +0 -1
  223. package/lib/esm-devtools-app/889.js +0 -2
  224. package/lib/esm-devtools-app/889.js.LICENSE.txt +0 -3
  225. package/lib/esm-devtools-app/889.js.map +0 -1
  226. package/lib/esm-devtools-app/961.js +0 -2
  227. package/lib/esm-devtools-app/961.js.LICENSE.txt +0 -15
  228. package/lib/esm-devtools-app/961.js.map +0 -1
  229. package/lib/esm-devtools-app/988.js +0 -1
  230. package/lib/esm-devtools-app/988.js.map +0 -1
  231. package/lib/esm-devtools-app/main.js +0 -1
  232. package/lib/esm-devtools-app/main.js.map +0 -1
  233. package/lib/esm-devtools-app/openmrs-esm-devtools-app.js +0 -1
  234. package/lib/esm-devtools-app/openmrs-esm-devtools-app.js.buildmanifest.json +0 -303
  235. package/lib/esm-devtools-app/openmrs-esm-devtools-app.js.map +0 -1
  236. package/lib/esm-devtools-app/routes.json +0 -1
  237. package/lib/esm-implementer-tools-app/271.js +0 -1
  238. package/lib/esm-implementer-tools-app/319.js +0 -1
  239. package/lib/esm-implementer-tools-app/426.js +0 -1
  240. package/lib/esm-implementer-tools-app/426.js.map +0 -1
  241. package/lib/esm-implementer-tools-app/460.js +0 -1
  242. package/lib/esm-implementer-tools-app/56.js +0 -1
  243. package/lib/esm-implementer-tools-app/56.js.map +0 -1
  244. package/lib/esm-implementer-tools-app/560.js +0 -1
  245. package/lib/esm-implementer-tools-app/560.js.map +0 -1
  246. package/lib/esm-implementer-tools-app/574.js +0 -1
  247. package/lib/esm-implementer-tools-app/587.js +0 -1
  248. package/lib/esm-implementer-tools-app/587.js.map +0 -1
  249. package/lib/esm-implementer-tools-app/620.js +0 -2
  250. package/lib/esm-implementer-tools-app/620.js.LICENSE.txt +0 -38
  251. package/lib/esm-implementer-tools-app/620.js.map +0 -1
  252. package/lib/esm-implementer-tools-app/625.js +0 -1
  253. package/lib/esm-implementer-tools-app/644.js +0 -1
  254. package/lib/esm-implementer-tools-app/651.js +0 -1
  255. package/lib/esm-implementer-tools-app/651.js.map +0 -1
  256. package/lib/esm-implementer-tools-app/727.js +0 -1
  257. package/lib/esm-implementer-tools-app/727.js.map +0 -1
  258. package/lib/esm-implementer-tools-app/735.js +0 -2
  259. package/lib/esm-implementer-tools-app/735.js.LICENSE.txt +0 -9
  260. package/lib/esm-implementer-tools-app/735.js.map +0 -1
  261. package/lib/esm-implementer-tools-app/738.js +0 -1
  262. package/lib/esm-implementer-tools-app/738.js.map +0 -1
  263. package/lib/esm-implementer-tools-app/757.js +0 -1
  264. package/lib/esm-implementer-tools-app/767.js +0 -2
  265. package/lib/esm-implementer-tools-app/767.js.LICENSE.txt +0 -19
  266. package/lib/esm-implementer-tools-app/767.js.map +0 -1
  267. package/lib/esm-implementer-tools-app/788.js +0 -2
  268. package/lib/esm-implementer-tools-app/788.js.LICENSE.txt +0 -19
  269. package/lib/esm-implementer-tools-app/788.js.map +0 -1
  270. package/lib/esm-implementer-tools-app/807.js +0 -1
  271. package/lib/esm-implementer-tools-app/833.js +0 -1
  272. package/lib/esm-implementer-tools-app/889.js +0 -2
  273. package/lib/esm-implementer-tools-app/889.js.LICENSE.txt +0 -3
  274. package/lib/esm-implementer-tools-app/889.js.map +0 -1
  275. package/lib/esm-implementer-tools-app/913.js +0 -2
  276. package/lib/esm-implementer-tools-app/913.js.LICENSE.txt +0 -5
  277. package/lib/esm-implementer-tools-app/913.js.map +0 -1
  278. package/lib/esm-implementer-tools-app/main.js +0 -2
  279. package/lib/esm-implementer-tools-app/main.js.LICENSE.txt +0 -5
  280. package/lib/esm-implementer-tools-app/main.js.map +0 -1
  281. package/lib/esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js +0 -1
  282. package/lib/esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js.buildmanifest.json +0 -627
  283. package/lib/esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js.map +0 -1
  284. package/lib/esm-implementer-tools-app/routes.json +0 -1
  285. package/lib/esm-login-app/111.js +0 -1
  286. package/lib/esm-login-app/111.js.map +0 -1
  287. package/lib/esm-login-app/126.js +0 -2
  288. package/lib/esm-login-app/126.js.LICENSE.txt +0 -9
  289. package/lib/esm-login-app/126.js.map +0 -1
  290. package/lib/esm-login-app/173.js +0 -1
  291. package/lib/esm-login-app/173.js.map +0 -1
  292. package/lib/esm-login-app/224.js +0 -1
  293. package/lib/esm-login-app/224.js.map +0 -1
  294. package/lib/esm-login-app/236.js +0 -1
  295. package/lib/esm-login-app/240.js +0 -1
  296. package/lib/esm-login-app/271.js +0 -1
  297. package/lib/esm-login-app/272.js +0 -1
  298. package/lib/esm-login-app/319.js +0 -1
  299. package/lib/esm-login-app/336.js +0 -1
  300. package/lib/esm-login-app/363.js +0 -1
  301. package/lib/esm-login-app/363.js.map +0 -1
  302. package/lib/esm-login-app/460.js +0 -1
  303. package/lib/esm-login-app/539.js +0 -1
  304. package/lib/esm-login-app/56.js +0 -1
  305. package/lib/esm-login-app/56.js.map +0 -1
  306. package/lib/esm-login-app/574.js +0 -1
  307. package/lib/esm-login-app/625.js +0 -1
  308. package/lib/esm-login-app/627.js +0 -1
  309. package/lib/esm-login-app/627.js.map +0 -1
  310. package/lib/esm-login-app/63.js +0 -2
  311. package/lib/esm-login-app/63.js.LICENSE.txt +0 -32
  312. package/lib/esm-login-app/63.js.map +0 -1
  313. package/lib/esm-login-app/644.js +0 -1
  314. package/lib/esm-login-app/673.js +0 -1
  315. package/lib/esm-login-app/729.js +0 -1
  316. package/lib/esm-login-app/729.js.map +0 -1
  317. package/lib/esm-login-app/735.js +0 -2
  318. package/lib/esm-login-app/735.js.LICENSE.txt +0 -9
  319. package/lib/esm-login-app/735.js.map +0 -1
  320. package/lib/esm-login-app/757.js +0 -1
  321. package/lib/esm-login-app/788.js +0 -2
  322. package/lib/esm-login-app/788.js.LICENSE.txt +0 -19
  323. package/lib/esm-login-app/788.js.map +0 -1
  324. package/lib/esm-login-app/807.js +0 -1
  325. package/lib/esm-login-app/833.js +0 -1
  326. package/lib/esm-login-app/836.js +0 -2
  327. package/lib/esm-login-app/836.js.LICENSE.txt +0 -5
  328. package/lib/esm-login-app/836.js.map +0 -1
  329. package/lib/esm-login-app/889.js +0 -2
  330. package/lib/esm-login-app/889.js.LICENSE.txt +0 -3
  331. package/lib/esm-login-app/889.js.map +0 -1
  332. package/lib/esm-login-app/main.js +0 -2
  333. package/lib/esm-login-app/main.js.LICENSE.txt +0 -15
  334. package/lib/esm-login-app/main.js.map +0 -1
  335. package/lib/esm-login-app/openmrs-esm-login-app.js +0 -1
  336. package/lib/esm-login-app/openmrs-esm-login-app.js.buildmanifest.json +0 -761
  337. package/lib/esm-login-app/openmrs-esm-login-app.js.map +0 -1
  338. package/lib/esm-login-app/routes.json +0 -1
  339. package/lib/esm-offline-tools-app/1584c81d564cacde.svg +0 -8
  340. package/lib/esm-offline-tools-app/271.js +0 -1
  341. package/lib/esm-offline-tools-app/319.js +0 -1
  342. package/lib/esm-offline-tools-app/430.js +0 -2
  343. package/lib/esm-offline-tools-app/430.js.LICENSE.txt +0 -25
  344. package/lib/esm-offline-tools-app/430.js.map +0 -1
  345. package/lib/esm-offline-tools-app/460.js +0 -1
  346. package/lib/esm-offline-tools-app/56.js +0 -1
  347. package/lib/esm-offline-tools-app/56.js.map +0 -1
  348. package/lib/esm-offline-tools-app/574.js +0 -1
  349. package/lib/esm-offline-tools-app/625.js +0 -1
  350. package/lib/esm-offline-tools-app/63.js +0 -2
  351. package/lib/esm-offline-tools-app/63.js.LICENSE.txt +0 -32
  352. package/lib/esm-offline-tools-app/63.js.map +0 -1
  353. package/lib/esm-offline-tools-app/644.js +0 -1
  354. package/lib/esm-offline-tools-app/729.js +0 -1
  355. package/lib/esm-offline-tools-app/729.js.map +0 -1
  356. package/lib/esm-offline-tools-app/735.js +0 -2
  357. package/lib/esm-offline-tools-app/735.js.LICENSE.txt +0 -9
  358. package/lib/esm-offline-tools-app/735.js.map +0 -1
  359. package/lib/esm-offline-tools-app/757.js +0 -1
  360. package/lib/esm-offline-tools-app/788.js +0 -2
  361. package/lib/esm-offline-tools-app/788.js.LICENSE.txt +0 -19
  362. package/lib/esm-offline-tools-app/788.js.map +0 -1
  363. package/lib/esm-offline-tools-app/807.js +0 -1
  364. package/lib/esm-offline-tools-app/833.js +0 -1
  365. package/lib/esm-offline-tools-app/889.js +0 -2
  366. package/lib/esm-offline-tools-app/889.js.LICENSE.txt +0 -3
  367. package/lib/esm-offline-tools-app/889.js.map +0 -1
  368. package/lib/esm-offline-tools-app/922.js +0 -1
  369. package/lib/esm-offline-tools-app/922.js.map +0 -1
  370. package/lib/esm-offline-tools-app/main.js +0 -2
  371. package/lib/esm-offline-tools-app/main.js.LICENSE.txt +0 -25
  372. package/lib/esm-offline-tools-app/main.js.map +0 -1
  373. package/lib/esm-offline-tools-app/openmrs-esm-offline-tools-app.js +0 -1
  374. package/lib/esm-offline-tools-app/openmrs-esm-offline-tools-app.js.buildmanifest.json +0 -489
  375. package/lib/esm-offline-tools-app/openmrs-esm-offline-tools-app.js.map +0 -1
  376. package/lib/esm-offline-tools-app/routes.json +0 -1
  377. package/lib/esm-primary-navigation-app/271.js +0 -1
  378. package/lib/esm-primary-navigation-app/319.js +0 -1
  379. package/lib/esm-primary-navigation-app/460.js +0 -1
  380. package/lib/esm-primary-navigation-app/574.js +0 -1
  381. package/lib/esm-primary-navigation-app/625.js +0 -1
  382. package/lib/esm-primary-navigation-app/63.js +0 -2
  383. package/lib/esm-primary-navigation-app/63.js.LICENSE.txt +0 -32
  384. package/lib/esm-primary-navigation-app/63.js.map +0 -1
  385. package/lib/esm-primary-navigation-app/644.js +0 -1
  386. package/lib/esm-primary-navigation-app/729.js +0 -1
  387. package/lib/esm-primary-navigation-app/729.js.map +0 -1
  388. package/lib/esm-primary-navigation-app/735.js +0 -2
  389. package/lib/esm-primary-navigation-app/735.js.LICENSE.txt +0 -9
  390. package/lib/esm-primary-navigation-app/735.js.map +0 -1
  391. package/lib/esm-primary-navigation-app/757.js +0 -1
  392. package/lib/esm-primary-navigation-app/762.js +0 -1
  393. package/lib/esm-primary-navigation-app/762.js.map +0 -1
  394. package/lib/esm-primary-navigation-app/780.js +0 -2
  395. package/lib/esm-primary-navigation-app/780.js.LICENSE.txt +0 -15
  396. package/lib/esm-primary-navigation-app/780.js.map +0 -1
  397. package/lib/esm-primary-navigation-app/788.js +0 -2
  398. package/lib/esm-primary-navigation-app/788.js.LICENSE.txt +0 -19
  399. package/lib/esm-primary-navigation-app/788.js.map +0 -1
  400. package/lib/esm-primary-navigation-app/807.js +0 -1
  401. package/lib/esm-primary-navigation-app/833.js +0 -1
  402. package/lib/esm-primary-navigation-app/889.js +0 -2
  403. package/lib/esm-primary-navigation-app/889.js.LICENSE.txt +0 -3
  404. package/lib/esm-primary-navigation-app/889.js.map +0 -1
  405. package/lib/esm-primary-navigation-app/958.js +0 -1
  406. package/lib/esm-primary-navigation-app/958.js.map +0 -1
  407. package/lib/esm-primary-navigation-app/main.js +0 -2
  408. package/lib/esm-primary-navigation-app/main.js.LICENSE.txt +0 -15
  409. package/lib/esm-primary-navigation-app/main.js.map +0 -1
  410. package/lib/esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js +0 -1
  411. package/lib/esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js.buildmanifest.json +0 -482
  412. package/lib/esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js.map +0 -1
  413. package/lib/esm-primary-navigation-app/routes.json +0 -1
@@ -1,99 +1,44 @@
1
- @openmrs/esm-app-shell:build: cache hit, replaying output c56667860123f5c6
2
- @openmrs/esm-app-shell:build: 
3
- @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@5.4.1-pre.1608 build:production
4
- @openmrs/esm-app-shell:build: > cross-env OMRS_ESM_IMPORTMAP_URL="https://dev3.openmrs.org/openmrs/spa/importmap.json" OMRS_OFFLINE="enable" OMRS_CLEAN_BEFORE_BUILD="true" NODE_ENV="production" webpack --mode production
5
- @openmrs/esm-app-shell:build: 
6
- @openmrs/esm-app-shell:build: (node:3157) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
7
- @openmrs/esm-app-shell:build: BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
8
- @openmrs/esm-app-shell:build:  Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
9
- @openmrs/esm-app-shell:build:  Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
10
- @openmrs/esm-app-shell:build: (Use `node --trace-deprecation ...` to show where the warning was created)
11
- @openmrs/esm-app-shell:build: assets by info 4.9 MiB [immutable]
12
- @openmrs/esm-app-shell:build:  assets by path *.woff 1.35 MiB 90 assets
13
- @openmrs/esm-app-shell:build:  assets by path *.woff2 1.04 MiB 90 assets
14
- @openmrs/esm-app-shell:build:  assets by path *.js 1.19 MiB 4 assets
15
- @openmrs/esm-app-shell:build:  asset openmrs.5d6cda634d8a12b1.css 1.31 MiB [emitted] [immutable] [big] (name: main) 1 related asset
16
- @openmrs/esm-app-shell:build: assets by path *.png 64.8 KiB
17
- @openmrs/esm-app-shell:build:  asset logo-512.png 15.5 KiB [emitted] [from: src/assets/logo-512.png] [copied]
18
- @openmrs/esm-app-shell:build:  asset icon_512x512.7163efb26df832de513bc58d925ea22e.png 13.9 KiB [emitted]
19
- @openmrs/esm-app-shell:build:  asset icon_384x384.c8923df6b6bd08eba5c79b78d7fcecc0.png 12.7 KiB [emitted]
20
- @openmrs/esm-app-shell:build:  + 5 assets
21
- @openmrs/esm-app-shell:build: asset service-worker.js 215 KiB [emitted] [minimized] 1 related asset
22
- @openmrs/esm-app-shell:build: asset index.html 3.09 KiB [emitted]
23
- @openmrs/esm-app-shell:build: asset logo.svg 1.33 KiB [emitted] [from: src/assets/logo.svg] [copied]
24
- @openmrs/esm-app-shell:build: asset manifest.266df36f2271d27ae9bcaa196a2976ae.json 1.29 KiB [emitted]
25
- @openmrs/esm-app-shell:build: asset favicon.ico 1.12 KiB [emitted] [from: src/assets/favicon.ico] [copied]
26
- @openmrs/esm-app-shell:build: Entrypoint main [big] 2.47 MiB (1.56 MiB) = openmrs.5d6cda634d8a12b1.css 1.31 MiB openmrs.c0b50aa0712c5234.js 1.16 MiB 2 auxiliary assets
27
- @openmrs/esm-app-shell:build: orphan modules 10.9 MiB (javascript) 39.7 KiB (css/mini-extract) 2.4 MiB (asset) 49.2 KiB (runtime) [orphan] 1502 modules
28
- @openmrs/esm-app-shell:build: runtime modules 18.9 KiB 13 modules
29
- @openmrs/esm-app-shell:build: built modules 4.4 MiB (javascript) 1.32 MiB (css/mini-extract) 420 bytes (share-init) 420 bytes (consume-shared) [built]
30
- @openmrs/esm-app-shell:build:  javascript modules 4.4 MiB 236 modules
31
- @openmrs/esm-app-shell:build:  css modules 1.32 MiB
32
- @openmrs/esm-app-shell:build:  modules by path ../../../node_modules/ 582 KiB 11 modules
33
- @openmrs/esm-app-shell:build:  modules by path ../../framework/ 764 KiB 4 modules
34
- @openmrs/esm-app-shell:build:  provide-module modules 420 bytes
35
- @openmrs/esm-app-shell:build:  modules by path provide shared module (default) @openmrs/ 84 bytes 2 modules
36
- @openmrs/esm-app-shell:build:  + 8 modules
37
- @openmrs/esm-app-shell:build:  consume-shared-module modules 420 bytes
38
- @openmrs/esm-app-shell:build:  modules by path consume shared module (default) @openmrs/ 84 bytes 2 modules
39
- @openmrs/esm-app-shell:build:  + 8 modules
40
- @openmrs/esm-app-shell:build: 
41
- @openmrs/esm-app-shell:build: LOG from InjectManifest
42
- @openmrs/esm-app-shell:build: <i> The service worker at service-worker.js will precache
43
- @openmrs/esm-app-shell:build: <i>  192 URLs, totaling 5.16 MB.
44
- @openmrs/esm-app-shell:build: 
45
- @openmrs/esm-app-shell:build: WARNING in asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
46
- @openmrs/esm-app-shell:build: This can impact web performance.
47
- @openmrs/esm-app-shell:build: Assets:
48
- @openmrs/esm-app-shell:build:  openmrs.5d6cda634d8a12b1.css (1.31 MiB)
49
- @openmrs/esm-app-shell:build:  openmrs.c0b50aa0712c5234.js (1.16 MiB)
50
- @openmrs/esm-app-shell:build: 
51
- @openmrs/esm-app-shell:build: WARNING in entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
52
- @openmrs/esm-app-shell:build: Entrypoints:
53
- @openmrs/esm-app-shell:build:  main (2.47 MiB)
54
- @openmrs/esm-app-shell:build:  openmrs.5d6cda634d8a12b1.css
55
- @openmrs/esm-app-shell:build:  openmrs.c0b50aa0712c5234.js
56
- @openmrs/esm-app-shell:build: 
57
- @openmrs/esm-app-shell:build: 
58
- @openmrs/esm-app-shell:build: webpack 5.88.0 compiled with 2 warnings in 91956 ms
59
- @openmrs/esm-app-shell:build: 
60
- @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@5.4.1-pre.1608 build:development
61
- @openmrs/esm-app-shell:build: > cross-env OMRS_OFFLINE="enable" OMRS_CLEAN_BEFORE_BUILD="true" NODE_ENV="development" webpack --mode development
62
- @openmrs/esm-app-shell:build: 
63
- @openmrs/esm-app-shell:build: (node:3368) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
64
- @openmrs/esm-app-shell:build: BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
65
- @openmrs/esm-app-shell:build:  Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
66
- @openmrs/esm-app-shell:build:  Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
67
- @openmrs/esm-app-shell:build: (Use `node --trace-deprecation ...` to show where the warning was created)
68
- @openmrs/esm-app-shell:build: assets by info 2.71 MiB [immutable]
69
- @openmrs/esm-app-shell:build:  assets by chunk 2.4 MiB (auxiliary name: main) 180 assets
70
- @openmrs/esm-app-shell:build:  assets by path *.js 323 KiB
71
- @openmrs/esm-app-shell:build:  asset 49af280eabf5f1f5.js 171 KiB [emitted] [immutable] (id hint: vendors)
72
- @openmrs/esm-app-shell:build:  + 2 assets
73
- @openmrs/esm-app-shell:build: assets by path esm-login-app/ 2.27 MiB 54 assets
74
- @openmrs/esm-app-shell:build: assets by path esm-implementer-tools-app/ 4.03 MiB 48 assets
75
- @openmrs/esm-app-shell:build: assets by path esm-offline-tools-app/ 3.82 MiB 38 assets
76
- @openmrs/esm-app-shell:build: assets by path esm-primary-navigation-app/ 2.19 MiB 37 assets
77
- @openmrs/esm-app-shell:build: assets by path esm-devtools-app/ 1.62 MiB 26 assets
78
- @openmrs/esm-app-shell:build: assets by path *.png 64.8 KiB
79
- @openmrs/esm-app-shell:build:  asset logo-512.png 15.5 KiB [emitted] [from: src/assets/logo-512.png] [copied]
80
- @openmrs/esm-app-shell:build:  + 7 assets
81
- @openmrs/esm-app-shell:build: + 6 assets
82
- @openmrs/esm-app-shell:build: orphan modules 1.63 MiB [orphan] 447 modules
83
- @openmrs/esm-app-shell:build: runtime modules 21.9 KiB 14 modules
84
- @openmrs/esm-app-shell:build: javascript modules 11.9 MiB 983 modules
85
- @openmrs/esm-app-shell:build: asset modules 40.1 KiB (javascript) 2.4 MiB (asset)
86
- @openmrs/esm-app-shell:build:  modules by path ../../framework/esm-styleguide/dist/ 7.38 KiB (javascript) 2.4 MiB (asset) 180 modules
87
- @openmrs/esm-app-shell:build:  modules by path ../../framework/esm-styleguide/src/ 32.7 KiB 27 modules
88
- @openmrs/esm-app-shell:build: provide-module modules 420 bytes
89
- @openmrs/esm-app-shell:build:  modules by path provide shared module (default) @openmrs/ 84 bytes 2 modules
90
- @openmrs/esm-app-shell:build:  + 8 modules
91
- @openmrs/esm-app-shell:build: consume-shared-module modules 420 bytes
92
- @openmrs/esm-app-shell:build:  modules by path consume shared module (default) @openmrs/ 84 bytes 2 modules
93
- @openmrs/esm-app-shell:build:  + 8 modules
94
- @openmrs/esm-app-shell:build: 
95
- @openmrs/esm-app-shell:build: LOG from InjectManifest
96
- @openmrs/esm-app-shell:build: <i> The service worker at service-worker.js will precache
97
- @openmrs/esm-app-shell:build: <i>  333 URLs, totaling 46.4 MB.
98
- @openmrs/esm-app-shell:build: 
99
- @openmrs/esm-app-shell:build: webpack 5.88.0 compiled successfully in 8111 ms
1
+ @openmrs/esm-app-shell:build: cache hit, replaying output 210b0fab66b9e433
2
+ @openmrs/esm-app-shell:build: Not serving @openmrs/esm-devtools-app because couldn't find /home/runner/work/openmrs-esm-core/openmrs-esm-core/packages/apps/esm-devtools-app/dist
3
+ @openmrs/esm-app-shell:build: Not serving @openmrs/esm-implementer-tools-app because couldn't find /home/runner/work/openmrs-esm-core/openmrs-esm-core/packages/apps/esm-implementer-tools-app/dist
4
+ @openmrs/esm-app-shell:build: Not serving @openmrs/esm-login-app because couldn't find /home/runner/work/openmrs-esm-core/openmrs-esm-core/packages/apps/esm-login-app/dist
5
+ @openmrs/esm-app-shell:build: Not serving @openmrs/esm-offline-tools-app because couldn't find /home/runner/work/openmrs-esm-core/openmrs-esm-core/packages/apps/esm-offline-tools-app/dist
6
+ @openmrs/esm-app-shell:build: Not serving @openmrs/esm-primary-navigation-app because couldn't find /home/runner/work/openmrs-esm-core/openmrs-esm-core/packages/apps/esm-primary-navigation-app/dist
7
+ @openmrs/esm-app-shell:build: (node:3166) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
8
+ @openmrs/esm-app-shell:build: BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
9
+ @openmrs/esm-app-shell:build:  Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
10
+ @openmrs/esm-app-shell:build:  Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
11
+ @openmrs/esm-app-shell:build: (Use `node --trace-deprecation ...` to show where the warning was created)
12
+ @openmrs/esm-app-shell:build: assets by chunk 2.4 MiB (auxiliary name: main)
13
+ @openmrs/esm-app-shell:build:  assets by path *.woff 1.35 MiB 90 assets
14
+ @openmrs/esm-app-shell:build:  assets by path *.woff2 1.04 MiB 90 assets
15
+ @openmrs/esm-app-shell:build: assets by path *.png 64.8 KiB
16
+ @openmrs/esm-app-shell:build:  asset logo-512.png 15.5 KiB [emitted] [from: src/assets/logo-512.png] [copied]
17
+ @openmrs/esm-app-shell:build:  asset icon_512x512.7163efb26df832de513bc58d925ea22e.png 13.9 KiB [emitted]
18
+ @openmrs/esm-app-shell:build:  + 6 assets
19
+ @openmrs/esm-app-shell:build: assets by path *.js 36.4 MiB
20
+ @openmrs/esm-app-shell:build:  assets by info 323 KiB [immutable] 3 assets
21
+ @openmrs/esm-app-shell:build:  asset openmrs.js 34.1 MiB [emitted] (name: main)
22
+ @openmrs/esm-app-shell:build:  asset service-worker.js 1.96 MiB [emitted]
23
+ @openmrs/esm-app-shell:build: asset index.html 3.5 KiB [emitted]
24
+ @openmrs/esm-app-shell:build: asset logo.svg 1.33 KiB [emitted] [from: src/assets/logo.svg] [copied]
25
+ @openmrs/esm-app-shell:build: asset manifest.266df36f2271d27ae9bcaa196a2976ae.json 1.29 KiB [emitted]
26
+ @openmrs/esm-app-shell:build: asset favicon.ico 1.12 KiB [emitted] [from: src/assets/favicon.ico] [copied]
27
+ @openmrs/esm-app-shell:build: orphan modules 1.63 MiB [orphan] 447 modules
28
+ @openmrs/esm-app-shell:build: runtime modules 21.9 KiB 14 modules
29
+ @openmrs/esm-app-shell:build: javascript modules 11.9 MiB 983 modules
30
+ @openmrs/esm-app-shell:build: asset modules 40.1 KiB (javascript) 2.4 MiB (asset)
31
+ @openmrs/esm-app-shell:build:  modules by path ../../framework/esm-styleguide/dist/ 7.38 KiB (javascript) 2.4 MiB (asset) 180 modules
32
+ @openmrs/esm-app-shell:build:  modules by path ../../framework/esm-styleguide/src/ 32.7 KiB 27 modules
33
+ @openmrs/esm-app-shell:build: provide-module modules 420 bytes
34
+ @openmrs/esm-app-shell:build:  modules by path provide shared module (default) @openmrs/ 84 bytes 2 modules
35
+ @openmrs/esm-app-shell:build:  + 8 modules
36
+ @openmrs/esm-app-shell:build: consume-shared-module modules 420 bytes
37
+ @openmrs/esm-app-shell:build:  modules by path consume shared module (default) @openmrs/ 84 bytes 2 modules
38
+ @openmrs/esm-app-shell:build:  + 8 modules
39
+ @openmrs/esm-app-shell:build: 
40
+ @openmrs/esm-app-shell:build: LOG from InjectManifest
41
+ @openmrs/esm-app-shell:build: <i> The service worker at service-worker.js will precache
42
+ @openmrs/esm-app-shell:build: <i>  190 URLs, totaling 38.6 MB.
43
+ @openmrs/esm-app-shell:build: 
44
+ @openmrs/esm-app-shell:build: webpack 5.88.0 compiled successfully in 52358 ms
package/lib/index.html CHANGED
@@ -22,8 +22,6 @@
22
22
  <script type="systemjs-importmap" src="/openmrs/spa/importmap.json"></script>
23
23
 
24
24
 
25
- <script type="systemjs-importmap">{"imports":{"@openmrs/esm-devtools-app":"./esm-devtools-app/openmrs-esm-devtools-app.js","@openmrs/esm-implementer-tools-app":"./esm-implementer-tools-app/openmrs-esm-implementer-tools-app.js","@openmrs/esm-login-app":"./esm-login-app/openmrs-esm-login-app.js","@openmrs/esm-offline-tools-app":"./esm-offline-tools-app/openmrs-esm-offline-tools-app.js","@openmrs/esm-primary-navigation-app":"./esm-primary-navigation-app/openmrs-esm-primary-navigation-app.js"}}</script>
26
-
27
25
 
28
26
  <link
29
27
  rel="preload"
@@ -34,8 +32,6 @@
34
32
  <script type="openmrs-routes" src="/openmrs/spa/routes.registry.json"></script>
35
33
 
36
34
 
37
- <script type="openmrs-routes">{"@openmrs/esm-devtools-app":{"$schema":"https://json.openmrs.org/routes.schema.json","pages":[{"component":"devtools","route":true,"online":true,"offline":true}],"extensions":[{"name":"importmap-override-modal","component":"importmapOverrideModal"}],"version":"5.4.1-pre.1608"},"@openmrs/esm-implementer-tools-app":{"$schema":"https://json.openmrs.org/routes.schema.json","pages":[{"component":"implementerTools","route":true},{"component":"globalImplementerTools","route":true}],"extensions":[{"name":"implementer-tools-button","slot":"top-nav-actions-slot","component":"implementerToolsButton"}],"version":"5.4.1-pre.1608"},"@openmrs/esm-login-app":{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"webservices.rest":">=2.24.0"},"pages":[{"component":"root","route":"login","online":true,"offline":true},{"component":"root","route":"logout","online":true,"offline":true}],"extensions":[{"name":"location-picker","slot":"location-picker","component":"locationPicker","online":true,"offline":true},{"name":"logout-button","slot":"user-panel-bottom-slot","component":"logoutButton","online":true,"offline":true},{"name":"location-changer","slot":"user-panel-slot","component":"changeLocationLink","online":true,"offline":true,"order":1}],"version":"5.4.1-pre.1608"},"@openmrs/esm-offline-tools-app":{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"webservices.rest":"^2.24.0"},"pages":[{"component":"offlineTools","route":"offline-tools","online":true,"offline":true}],"extensions":[{"name":"offline-tools-link","slot":"app-menu-slot","component":"offlineToolsLink","online":true,"offline":true},{"name":"offline-tools-nav-items","component":"offlineToolsNavItems","online":true,"offline":true},{"name":"offline-tools-confirmation-modal","component":"offlineToolsConfirmationModal","online":true,"offline":true},{"name":"offline-tools-dashboard-patients-card","slot":"offline-tools-dashboard-cards","component":"offlineToolsPatientsCard","online":true,"offline":true,"order":0},{"name":"offline-tools-dashboard-actions-card","slot":"offline-tools-dashboard-cards","component":"offlineToolsActionsCard","online":true,"offline":true,"order":2},{"name":"offline-tools-page-offline-patients-link","slot":"offline-tools-page-slot","component":"offlineToolsPatientsLink","meta":{"name":"patients","slot":"offline-tools-page-offline-patients-slot"},"online":true,"offline":true},{"name":"offline-tools-page-offline-actions-link","slot":"offline-tools-page-slot","component":"offlineToolsActionsLink","meta":{"name":"actions","slot":"offline-tools-page-offline-actions-slot"},"online":true,"offline":true},{"name":"offline-tools-page-offline-actions","slot":"offline-tools-page-offline-actions-slot","component":"offlineToolsPageActions","online":true,"offline":true},{"name":"offline-tools-page-offline-patients","slot":"offline-tools-page-offline-patients-slot","component":"offlineToolsPatients","online":true,"offline":true},{"name":"offline-tools-page-actions-link","slot":"offline-tools-page-actions-slot","component":"offlineToolsPatientsLink","meta":{"name":"actions","slot":"offline-tools-page-actions-slot"},"online":true,"offline":true},{"name":"offline-tools-page-actions","slot":"offline-tools-page-actions-slot","component":"offlineToolsPageActions","online":true,"offline":true},{"name":"offline-tools-patient-chart-actions-widget","slot":"patient-chart-summary-dashboard-slot","component":"offlineToolsPatientChartActions","meta":{"columnSpan":4},"online":false,"offline":true,"order":0},{"name":"offline-tools-patient-chart-actions-dashboard","slot":"patient-chart-offline-actions-dashboard-slot","component":"offlineToolsPatientChartActions","online":true,"offline":true,"order":0},{"name":"offline-tools-patient-chart-actions-dashboard-link","slot":"patient-chart-dashboard-slot","component":"offlineToolsPatientChartActionsDashboardLink","meta":{"columns":1,"title":"Offline Actions"},"order":12,"online":true,"offline":true},{"name":"offline-tools-opt-in-offline-mode-button","slot":"user-panel-slot","component":"offlineToolsOptInButton","online":true,"offline":true,"order":1}],"version":"5.4.1-pre.1608"},"@openmrs/esm-primary-navigation-app":{"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"webservices.rest":">=2.2.0"},"pages":[{"component":"root","routeRegex":"^(?!login/?)","online":true,"offline":true,"order":0},{"component":"redirect","routeRegex":"^$","online":true,"offline":true,"order":0}],"extensions":[{"name":"default-user-panel","slot":"user-panel-slot","component":"userPanel","online":true,"offline":true,"order":0},{"name":"change-language","slot":"user-panel-slot","component":"changeLanguageLink","online":true,"offline":true,"order":1},{"name":"change-language-modal","component":"changeLanguageModal","online":true,"offline":true},{"name":"offline-banner","slot":"user-panel-slot","component":"offlineBanner","online":false,"offline":true,"order":1},{"name":"link","component":"linkComponent","online":true,"offline":true}],"version":"5.4.1-pre.1608"}}</script>
38
-
39
35
  <meta name="theme-color" content="#000000" /><link rel="manifest" href="/openmrs/spa/manifest.266df36f2271d27ae9bcaa196a2976ae.json" /></head>
40
36
  <body>
41
37
  <script src="/openmrs/spa/openmrs.js"></script>
package/lib/openmrs.js CHANGED
@@ -6589,7 +6589,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
6589
6589
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6590
6590
 
6591
6591
  "use strict";
6592
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCurrentImportMap: () => (/* binding */ getCurrentImportMap),\n/* harmony export */ importDynamic: () => (/* binding */ importDynamic),\n/* harmony export */ preloadImport: () => (/* binding */ preloadImport),\n/* harmony export */ slugify: () => (/* binding */ slugify)\n/* harmony export */ });\n/** @module @category Dynamic Loading */ \nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n/**\n * @internal\n *\n * Transforms an ESM module name to a valid JS identifier\n *\n * @param name the name of a module\n * @returns An opaque, equivalent JS identifier for the module\n */ function slugify(name) {\n return name.replace(/[\\/\\-@]/g, \"_\");\n}\n/**\n * Loads the named export from a named package. This might be used like:\n *\n * ```js\n * const { someComponent } = importDynamic(\"@openmrs/esm-template-app\")\n * ```\n *\n * @param jsPackage The package to load the export from.\n * @param share Indicates the name of the shared module; this is an advanced feature if the package you are loading\n * doesn't use the default OpenMRS shared module name \"./start\".\n * @param options Additional options to control loading this script.\n * @param options.importMap The import map to use to load the script. This is useful for situations where you're\n * loading multiple scripts at a time, since it allows the calling code to supply an importMap, saving multiple\n * calls to `getCurrentImportMap()`.\n * @param options.maxLoadingTime A positive integer representing the maximum number of milliseconds to wait for the\n * script to load before the promise returned from this function will be rejected. Defaults to 600,000 milliseconds,\n * i.e., 10 minutes.\n */ function importDynamic(jsPackage) {\n return _importDynamic.apply(this, arguments);\n}\nfunction _importDynamic() {\n _importDynamic = _async_to_generator(function(jsPackage) {\n var share, options, maxLoadingTime, timeout, jsPackageSlug, container, error, factory, module, error1;\n var _arguments = arguments;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n share = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : \"./start\", options = _arguments.length > 2 ? _arguments[2] : void 0;\n maxLoadingTime = !(options === null || options === void 0 ? void 0 : options.maxLoadingTime) || options.maxLoadingTime <= 0 ? 600000 : options.maxLoadingTime;\n timeout = undefined;\n return [\n 4,\n Promise.race([\n preloadImport(jsPackage, options === null || options === void 0 ? void 0 : options.importMap),\n new Promise(function(_, reject) {\n timeout = setTimeout(function() {\n reject(new Error(\"Could not resolve requested script, \".concat(jsPackage, \", within \").concat(humanReadableMs(maxLoadingTime), \".\")));\n }, maxLoadingTime);\n })\n ])\n ];\n case 1:\n _state.sent();\n timeout && clearTimeout(timeout);\n jsPackageSlug = slugify(jsPackage);\n container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n error = \"The global variable \".concat(jsPackageSlug, \" does not refer to a federated module\");\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_require__.S.default);\n return [\n 4,\n container.get(share)\n ];\n case 2:\n factory = _state.sent();\n module = factory();\n if (!(typeof module === \"object\") || module === null) {\n error1 = \"Container for \".concat(jsPackage, \" did not return an ESM module as expected\");\n console.error(error1);\n throw new Error(error1);\n }\n return [\n 2,\n module\n ];\n }\n });\n });\n return _importDynamic.apply(this, arguments);\n}\n/**\n * Utility function to convert milliseconds into human-readable strings with rather absurd\n * levels of precision.\n *\n * @param ms Number of milliseconds\n * @returns A human-readable string useful only for error logging, where we can assume English\n */ function humanReadableMs(ms) {\n if (ms < 1000) {\n return \"\".concat(ms, \" milliseconds\");\n } else if (ms < 60000) {\n return \"\".concat(Math.floor(ms / 1000), \" seconds\");\n } else if (ms < 3600000) {\n return \"\".concat(Math.floor(ms / 60000), \" minutes\");\n } else if (ms < 86400000) {\n return \"\".concat(Math.floor(ms / 3600000), \" hours\");\n } else {\n return \"\".concat(Math.floor(ms / 86400000), \" days\");\n }\n}\n/**\n * @internal\n *\n * This internal method is used to ensure that the script belonging\n * to the given package is loaded and added to the head.\n *\n * @param jsPackage The package to load\n * @param importMap The import map to use for loading this package.\n * The main reason for specifying this is to avoid needing to call\n * `getCurrentPageMap()` for every script when bulk loading.\n */ function preloadImport(jsPackage, importMap) {\n return _preloadImport.apply(this, arguments);\n}\nfunction _preloadImport() {\n _preloadImport = _async_to_generator(function(jsPackage, importMap) {\n var error, jsPackageSlug, activeImportMap, _tmp, error1, url;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (typeof jsPackage !== \"string\" || jsPackage.trim().length === 0) {\n error = \"Attempted to call importDynamic() without supplying a package to load\";\n console.error(error);\n throw new Error(error);\n }\n jsPackageSlug = slugify(jsPackage);\n if (!!window[jsPackageSlug]) return [\n 3,\n 5\n ];\n if (!(importMap !== null && importMap !== void 0)) return [\n 3,\n 1\n ];\n _tmp = importMap;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getCurrentImportMap()\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n activeImportMap = _tmp;\n if (!activeImportMap.imports.hasOwnProperty(jsPackage)) {\n error1 = \"Could not find the package \".concat(jsPackage, \" defined in the current importmap\");\n console.error(error1);\n throw new Error(error1);\n }\n url = activeImportMap.imports[jsPackage];\n if (url.startsWith(\"./\")) {\n url = window.spaBase + url.substring(1);\n }\n return [\n 4,\n new Promise(function(resolve, reject) {\n loadScript(url, resolve, reject);\n })\n ];\n case 4:\n return [\n 2,\n _state.sent()\n ];\n case 5:\n return [\n 2,\n Promise.resolve()\n ];\n }\n });\n });\n return _preloadImport.apply(this, arguments);\n}\n/**\n * @internal\n *\n * Used to load the current import map\n *\n * @returns The current page map\n */ function getCurrentImportMap() {\n return _getCurrentImportMap.apply(this, arguments);\n}\nfunction _getCurrentImportMap() {\n _getCurrentImportMap = _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n return [\n 2,\n window.importMapOverrides.getCurrentPageMap()\n ];\n });\n });\n return _getCurrentImportMap.apply(this, arguments);\n}\nfunction isFederatedModule(a) {\n return typeof a === \"object\" && a !== null && \"init\" in a && typeof a[\"init\"] === \"function\" && \"get\" in a && typeof a[\"get\"] === \"function\";\n}\n// internals to track script loading\n// basically, if we're already loading a script, we should wait until the script is loaded\n// we use a global to track this\nvar OPENMRS_SCRIPT_LOADING = Symbol(\"__openmrs_script_loading\");\n/**\n * Appends a `<script>` to the DOM with the given URL.\n */ function loadScript(url, resolve, reject) {\n var scriptElement = document.head.querySelector('script[src=\"'.concat(url, '\"]'));\n var scriptLoading = window[OPENMRS_SCRIPT_LOADING];\n if (!scriptLoading) {\n scriptLoading = window[OPENMRS_SCRIPT_LOADING] = new Set([]);\n }\n if (!scriptElement) {\n scriptLoading.add(url);\n var element = document.createElement(\"script\");\n element.src = url;\n element.type = \"text/javascript\";\n element.async = true;\n // loadTime() displays an error if a script takes more than 5 seconds to load\n var loadTimeout = setTimeout(function() {\n console.error(\"The script at \".concat(url, \" did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.\"));\n }, 5000); // 5 seconds; this is arbitrary\n var loadFn, errFn, finishScriptLoading;\n finishScriptLoading = function() {\n clearTimeout(loadTimeout);\n scriptLoading.delete(url);\n loadFn && element.removeEventListener(\"load\", loadFn);\n errFn && element.removeEventListener(\"error\", errFn);\n };\n loadFn = function() {\n finishScriptLoading();\n resolve(null);\n };\n errFn = function(ev) {\n finishScriptLoading();\n var msg = \"Failed to load script from \".concat(url);\n console.error(msg, ev);\n var _ev_message;\n reject((_ev_message = ev.message) !== null && _ev_message !== void 0 ? _ev_message : msg);\n };\n element.addEventListener(\"load\", loadFn);\n element.addEventListener(\"error\", errFn);\n document.head.appendChild(element);\n } else {\n if (scriptLoading.has(url)) {\n var loadFn1, errFn1;\n loadFn1 = function() {\n if (scriptElement) {\n scriptElement.removeEventListener(\"load\", loadFn1);\n scriptElement.removeEventListener(\"error\", errFn1);\n }\n resolve(null);\n };\n // this errFn does not log anything\n errFn1 = function(ev) {\n if (scriptElement) {\n scriptElement.removeEventListener(\"load\", loadFn1);\n scriptElement.removeEventListener(\"error\", errFn1);\n }\n reject(ev.message);\n };\n scriptElement.addEventListener(\"load\", loadFn1);\n scriptElement.addEventListener(\"error\", errFn1);\n } else {\n console.warn(\"Script at \".concat(url, \" already loaded. Not loading it again.\"));\n resolve(null);\n }\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi4vLi4vZnJhbWV3b3JrL2VzbS1keW5hbWljLWxvYWRpbmcvc3JjL2R5bmFtaWMtbG9hZGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsc0NBQXNDLEdBQ3RDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUlBOzs7Ozs7O0NBT0MsR0FDTSxTQUFTQSxRQUFRQyxJQUFZLEVBQUU7SUFDcEMsT0FBT0EsS0FBS0MsT0FBTyxDQUFDLFlBQVk7QUFDbEMsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7OztDQWlCQyxHQUNNLFNBQWVDLGNBQ3BCQyxTQUFpQjtXQURHRDtDQThDckI7U0E5Q3FCQTtJQUFBQSxpQkFBZiw2QkFDTEMsU0FBaUIsRUFNTDtZQUxaQyxPQUNBQyxTQU1NQyxnQkFFRkMsU0FjRUMsZUFFQUMsV0FFRUMsT0FPRkMsU0FDQUMsUUFHRUY7Ozs7O29CQXRDUk4sUUFBQUEsb0VBQWdCLFNBQVMsRUFDekJDO29CQU1NQyxpQkFBaUIsQ0FBQ0QsQ0FBQUEsb0JBQUFBLHFCQUFBQSxLQUFBQSxJQUFBQSxRQUFTQyxjQUFjLEtBQUlELFFBQVFDLGNBQWMsSUFBSSxJQUFJLFNBQVVELFFBQVFDLGNBQWM7b0JBRTdHQyxVQUFxRE07b0JBQ3pEOzt3QkFBTUMsUUFBUUMsSUFBSTs0QkFDaEJDLGNBQWNiLFdBQVdFLG9CQUFBQSxxQkFBQUEsS0FBQUEsSUFBQUEsUUFBU1ksU0FBUzs0QkFDM0MsSUFBSUgsUUFBUSxTQUFDSSxHQUFHQyxRQUFXO2dDQUN6QlosVUFBVWEsV0FBVyxXQUFNO29DQUN6QkQsT0FDRSxJQUFJRSxNQUFNLHVDQUE0REMsT0FBckJuQixXQUFVLGFBQTJDLE9BQWhDbUIsZ0JBQWdCaEIsaUJBQWdCO2dDQUUxRyxHQUFHQTs0QkFDTDs7OztvQkFSRjtvQkFX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QUFDO0lBQ0gsQ0FBQztBQUNIIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQG9wZW5tcnMvZXNtLWFwcC1zaGVsbC8uLi8uLi9mcmFtZXdvcmsvZXNtLWR5bmFtaWMtbG9hZGluZy9zcmMvZHluYW1pYy1sb2FkaW5nLnRzPzdkM2QiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqIEBtb2R1bGUgQGNhdGVnb3J5IER5bmFtaWMgTG9hZGluZyAqL1xuJ3VzZSBzdHJpY3QnO1xuLy8gaGFjayB0byBtYWtlIHRoZSB0eXBlcyBkZWZpbmVkIGluIGVzbS1nbG9iYWxzIGF2YWlsYWJsZSBoZXJlXG5pbXBvcnQgdHlwZSB7IEltcG9ydE1hcCB9IGZyb20gJ0BvcGVubXJzL2VzbS1nbG9iYWxzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBUcmFuc2Zvcm1zIGFuIEVTTSBtb2R1bGUgbmFtZSB0byBhIHZhbGlkIEpTIGlkZW50aWZpZXJcbiAqXG4gKiBAcGFyYW0gbmFtZSB0aGUgbmFtZSBvZiBhIG1vZHVsZVxuICogQHJldHVybnMgQW4gb3BhcXVlLCBlcXVpdmFsZW50IEpTIGlkZW50aWZpZXIgZm9yIHRoZSBtb2R1bGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNsdWdpZnkobmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiBuYW1lLnJlcGxhY2UoL1tcXC9cXC1AXS9nLCAnXycpO1xufVxuXG4vKipcbiAqIExvYWRzIHRoZSBuYW1lZCBleHBvcnQgZnJvbSBhIG5hbWVkIHBhY2thZ2UuIFRoaXMgbWlnaHQgYmUgdXNlZCBsaWtlOlxuICpcbiAqIGBgYGpzXG4gKiBjb25zdCB7IHNvbWVDb21wb25lbnQgfSA9IGltcG9ydER5bmFtaWMoXCJAb3Blbm1ycy9lc20tdGVtcGxhdGUtYXBwXCIpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ganNQYWNrYWdlIFRoZSBwYWNrYWdlIHRvIGxvYWQgdGhlIGV4cG9ydCBmcm9tLlxuICogQHBhcmFtIHNoYXJlIEluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgc2hhcmVkIG1vZHVsZTsgdGhpcyBpcyBhbiBhZHZhbmNlZCBmZWF0dXJlIGlmIHRoZSBwYWNrYWdlIHlvdSBhcmUgbG9hZGluZ1xuICogICBkb2Vzbid0IHVzZSB0aGUgZGVmYXVsdCBPcGVuTVJTIHNoYXJlZCBtb2R1bGUgbmFtZSBcIi4vc3RhcnRcIi5cbiAqIEBwYXJhbSBvcHRpb25zIEFkZGl0aW9uYWwgb3B0aW9ucyB0byBjb250cm9sIGxvYWRpbmcgdGhpcyBzY3JpcHQuXG4gKiBAcGFyYW0gb3B0aW9ucy5pbXBvcnRNYXAgVGhlIGltcG9ydCBtYXAgdG8gdXNlIHRvIGxvYWQgdGhlIHNjcmlwdC4gVGhpcyBpcyB1c2VmdWwgZm9yIHNpdHVhdGlvbnMgd2hlcmUgeW91J3JlXG4gKiAgIGxvYWRpbmcgbXVsdGlwbGUgc2NyaXB0cyBhdCBhIHRpbWUsIHNpbmNlIGl0IGFsbG93cyB0aGUgY2FsbGluZyBjb2RlIHRvIHN1cHBseSBhbiBpbXBvcnRNYXAsIHNhdmluZyBtdWx0aXBsZVxuICogICBjYWxscyB0byBgZ2V0Q3VycmVudEltcG9ydE1hcCgpYC5cbiAqIEBwYXJhbSBvcHRpb25zLm1heExvYWRpbmdUaW1lIEEgcG9zaXRpdmUgaW50ZWdlciByZXByZXNlbnRpbmcgdGhlIG1heGltdW0gbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGZvciB0aGVcbiAqICAgc2NyaXB0IHRvIGxvYWQgYmVmb3JlIHRoZSBwcm9taXNlIHJldHVybmVkIGZyb20gdGhpcyBmdW5jdGlvbiB3aWxsIGJlIHJlamVjdGVkLiBEZWZhdWx0cyB0byA2MDAsMDAwIG1pbGxpc2Vjb25kcyxcbiAqICAgaS5lLiwgMTAgbWludXRlcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGltcG9ydER5bmFtaWM8VCA9IGFueT4oXG4gIGpzUGFja2FnZTogc3RyaW5nLFxuICBzaGFyZTogc3RyaW5nID0gJy4vc3RhcnQnLFxuICBvcHRpb25zPzoge1xuICAgIGltcG9ydE1hcD86IEltcG9ydE1hcDtcbiAgICBtYXhMb2FkaW5nVGltZT86IG51bWJlcjtcbiAgfSxcbik6IFByb21pc2U8VD4ge1xuICAvLyBkZWZhdWx0IHRvIDEwIG1pbnV0ZXNcbiAgY29uc3QgbWF4TG9hZGluZ1RpbWUgPSAhb3B0aW9ucz8ubWF4TG9hZGluZ1RpbWUgfHwgb3B0aW9ucy5tYXhMb2FkaW5nVGltZSA8PSAwID8gNjAwXzAwMCA6IG9wdGlvbnMubWF4TG9hZGluZ1RpbWU7XG5cbiAgbGV0IHRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgIHByZWxvYWRJbXBvcnQoanNQYWNrYWdlLCBvcHRpb25zPy5pbXBvcnRNYXApLFxuICAgIG5ldyBQcm9taXNlKChfLCByZWplY3QpID0+IHtcbiAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgcmVqZWN0KFxuICAgICAgICAgIG5ldyBFcnJvcihgQ291bGQgbm90IHJlc29sdmUgcmVxdWVzdGVkIHNjcmlwdCwgJHtqc1BhY2thZ2V9LCB3aXRoaW4gJHtodW1hblJlYWRhYmxlTXMobWF4TG9hZGluZ1RpbWUpfS5gKSxcbiAgICAgICAgKTtcbiAgICAgIH0sIG1heExvYWRpbmdUaW1lKTtcbiAgICB9KSxcbiAgXSk7XG5cbiAgdGltZW91dCAmJiBjbGVhclRpbWVvdXQodGltZW91dCk7XG5cbiAgY29uc3QganNQYWNrYWdlU2x1ZyA9IHNsdWdpZnkoanNQYWNrYWdlKTtcblxuICBjb25zdCBjb250YWluZXIgPSB3aW5kb3dbanNQYWNrYWdlU2x1Z10gYXMgdW5rbm93bjtcbiAgaWYgKCFpc0ZlZGVyYXRlZE1vZHVsZShjb250YWluZXIpKSB7XG4gICAgY29uc3QgZXJyb3IgPSBgVGhlIGdsb2JhbCB2YXJpYWJsZSAke2pzUGFja2FnZVNsdWd9IGRvZXMgbm90IHJlZmVyIHRvIGEgZmVkZXJhdGVkIG1vZHVsZWA7XG4gICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgfVxuXG4gIGNvbnRhaW5lci5pbml0KF9fd2VicGFja19zaGFyZV9zY29wZXNfXy5kZWZhdWx0KTtcblxuICBjb25zdCBmYWN0b3J5ID0gYXdhaXQgY29udGFpbmVyLmdldChzaGFyZSk7XG4gIGNvbnN0IG1vZHVsZSA9IGZhY3RvcnkoKTtcblxuICBpZiAoISh0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JykgfHwgbW9kdWxlID09PSBudWxsKSB7XG4gICAgY29uc3QgZXJyb3IgPSBgQ29udGFpbmVyIGZvciAke2pzUGFja2FnZX0gZGlkIG5vdCByZXR1cm4gYW4gRVNNIG1vZHVsZSBhcyBleHBlY3RlZGA7XG4gICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgfVxuXG4gIHJldHVybiBtb2R1bGUgYXMgdW5rbm93biBhcyBUO1xufVxuXG4vKipcbiAqIFV0aWxpdHkgZnVuY3Rpb24gdG8gY29udmVydCBtaWxsaXNlY29uZHMgaW50byBodW1hbi1yZWFkYWJsZSBzdHJpbmdzIHdpdGggcmF0aGVyIGFic3VyZFxuICogbGV2ZWxzIG9mIHByZWNpc2lvbi5cbiAqXG4gKiBAcGFyYW0gbXMgTnVtYmVyIG9mIG1pbGxpc2Vjb25kc1xuICogQHJldHVybnMgQSBodW1hbi1yZWFkYWJsZSBzdHJpbmcgdXNlZnVsIG9ubHkgZm9yIGVycm9yIGxvZ2dpbmcsIHdoZXJlIHdlIGNhbiBhc3N1bWUgRW5nbGlzaFxuICovXG5mdW5jdGlvbiBodW1hblJlYWRhYmxlTXMobXM6IG51bWJlcikge1xuICBpZiAobXMgPCAxXzAwMCkge1xuICAgIHJldHVybiBgJHttc30gbWlsbGlzZWNvbmRzYDtcbiAgfSBlbHNlIGlmIChtcyA8IDYwXzAwMCkge1xuICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gMTAwMCl9IHNlY29uZHNgO1xuICB9IGVsc2UgaWYgKG1zIDwgM182MDBfMDAwKSB7XG4gICAgcmV0dXJuIGAke01hdGguZmxvb3IobXMgLyA2MF8wMDApfSBtaW51dGVzYDtcbiAgfSBlbHNlIGlmIChtcyA8IDg2XzQwMF8wMDApIHtcbiAgICByZXR1cm4gYCR7TWF0aC5mbG9vcihtcyAvIDNfNjAwXzAwMCl9IGhvdXJzYDtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYCR7TWF0aC5mbG9vcihtcyAvIDg2XzQwMF8wMDApfSBkYXlzYDtcbiAgfVxufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICpcbiAqIFRoaXMgaW50ZXJuYWwgbWV0aG9kIGlzIHVzZWQgdG8gZW5zdXJlIHRoYXQgdGhlIHNjcmlwdCBiZWxvbmdpbmdcbiAqIHRvIHRoZSBnaXZlbiBwYWNrYWdlIGlzIGxvYWRlZCBhbmQgYWRkZWQgdG8gdGhlIGhlYWQuXG4gKlxuICogQHBhcmFtIGpzUGFja2FnZSBUaGUgcGFja2FnZSB0byBsb2FkXG4gKiBAcGFyYW0gaW1wb3J0TWFwIFRoZSBpbXBvcnQgbWFwIHRvIHVzZSBmb3IgbG9hZGluZyB0aGlzIHBhY2thZ2UuXG4gKiAgVGhlIG1haW4gcmVhc29uIGZvciBzcGVjaWZ5aW5nIHRoaXMgaXMgdG8gYXZvaWQgbmVlZGluZyB0byBjYWxsXG4gKiAgYGdldEN1cnJlbnRQYWdlTWFwKClgIGZvciBldmVyeSBzY3JpcHQgd2hlbiBidWxrIGxvYWRpbmcuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVsb2FkSW1wb3J0KGpzUGFja2FnZTogc3RyaW5nLCBpbXBvcnRNYXA/OiBJbXBvcnRNYXApIHtcbiAgaWYgKHR5cGVvZiBqc1BhY2thZ2UgIT09ICdzdHJpbmcnIHx8IGpzUGFja2FnZS50cmltKCkubGVuZ3RoID09PSAwKSB7XG4gICAgY29uc3QgZXJyb3IgPSAnQXR0ZW1wdGVkIHRvIGNhbGwgaW1wb3J0RHluYW1pYygpIHdpdGhvdXQgc3VwcGx5aW5nIGEgcGFja2FnZSB0byBsb2FkJztcbiAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICB9XG5cbiAgY29uc3QganNQYWNrYWdlU2x1ZyA9IHNsdWdpZnkoanNQYWNrYWdlKTtcblxuICBpZiAoIXdpbmRvd1tqc1BhY2thZ2VTbHVnXSkge1xuICAgIGNvbnN0IGFjdGl2ZUltcG9ydE1hcCA9IGltcG9ydE1hcCA/PyAoYXdhaXQgZ2V0Q3VycmVudEltcG9ydE1hcCgpKTtcbiAgICBpZiAoIWFjdGl2ZUltcG9ydE1hcC5pbXBvcnRzLmhhc093blByb3BlcnR5KGpzUGFja2FnZSkpIHtcbiAgICAgIGNvbnN0IGVycm9yID0gYENvdWxkIG5vdCBmaW5kIHRoZSBwYWNrYWdlICR7anNQYWNrYWdlfSBkZWZpbmVkIGluIHRoZSBjdXJyZW50IGltcG9ydG1hcGA7XG4gICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgfVxuXG4gICAgbGV0IHVybCA9IGFjdGl2ZUltcG9ydE1hcC5pbXBvcnRzW2pzUGFja2FnZV07XG4gICAgaWYgKHVybC5zdGFydHNXaXRoKCcuLycpKSB7XG4gICAgICB1cmwgPSB3aW5kb3cuc3BhQmFzZSArIHVybC5zdWJzdHJpbmcoMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGxvYWRTY3JpcHQodXJsLCByZXNvbHZlLCByZWplY3QpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICpcbiAqIFVzZWQgdG8gbG9hZCB0aGUgY3VycmVudCBpbXBvcnQgbWFwXG4gKlxuICogQHJldHVybnMgVGhlIGN1cnJlbnQgcGFnZSBtYXBcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEN1cnJlbnRJbXBvcnRNYXAoKSB7XG4gIHJldHVybiB3aW5kb3cuaW1wb3J0TWFwT3ZlcnJpZGVzLmdldEN1cnJlbnRQYWdlTWFwKCk7XG59XG5cbmludGVyZmFjZSBGZWRlcmF0ZWRNb2R1bGUge1xuICBpbml0OiAoc2NvcGU6IHR5cGVvZiBfX3dlYnBhY2tfc2hhcmVfc2NvcGVzX18uZGVmYXVsdCkgPT4gdm9pZDtcbiAgZ2V0OiAoX2V4cG9ydDogc3RyaW5nKSA9PiBQcm9taXNlPCgpID0+IHVua25vd24+O1xufVxuXG5mdW5jdGlvbiBpc0ZlZGVyYXRlZE1vZHVsZShhOiB1bmtub3duKTogYSBpcyBGZWRlcmF0ZWRNb2R1bGUge1xuICByZXR1cm4gKFxuICAgIHR5cGVvZiBhID09PSAnb2JqZWN0JyAmJlxuICAgIGEgIT09IG51bGwgJiZcbiAgICAnaW5pdCcgaW4gYSAmJlxuICAgIHR5cGVvZiBhWydpbml0J10gPT09ICdmdW5jdGlvbicgJiZcbiAgICAnZ2V0JyBpbiBhICYmXG4gICAgdHlwZW9mIGFbJ2dldCddID09PSAnZnVuY3Rpb24nXG4gICk7XG59XG5cbi8vIGludGVybmFscyB0byB0cmFjayBzY3JpcHQgbG9hZGluZ1xuLy8gYmFzaWNhbGx5LCBpZiB3ZSdyZSBhbHJlYWR5IGxvYWRpbmcgYSBzY3JpcHQsIHdlIHNob3VsZCB3YWl0IHVudGlsIHRoZSBzY3JpcHQgaXMgbG9hZGVkXG4vLyB3ZSB1c2UgYSBnbG9iYWwgdG8gdHJhY2sgdGhpc1xuY29uc3QgT1BFTk1SU19TQ1JJUFRfTE9BRElORyA9IFN5bWJvbCgnX19vcGVubXJzX3NjcmlwdF9sb2FkaW5nJyk7XG5cbi8qKlxuICogQXBwZW5kcyBhIGA8c2NyaXB0PmAgdG8gdGhlIERPTSB3aXRoIHRoZSBnaXZlbiBVUkwuXG4gKi9cbmZ1bmN0aW9uIGxvYWRTY3JpcHQoXG4gIHVybDogc3RyaW5nLFxuICByZXNvbHZlOiAodmFsdWU6IHVua25vd24gfCBQcm9taXNlTGlrZTx1bmtub3duPikgPT4gdm9pZCxcbiAgcmVqZWN0OiAocmVhc29uPzogYW55KSA9PiB2b2lkLFxuKSB7XG4gIGNvbnN0IHNjcmlwdEVsZW1lbnQgPSBkb2N1bWVudC5oZWFkLnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmM9XCIke3VybH1cIl1gKTtcbiAgbGV0IHNjcmlwdExvYWRpbmc6IFNldDxTdHJpbmc+ID0gd2luZG93W09QRU5NUlNfU0NSSVBUX0xPQURJTkddO1xuICBpZiAoIXNjcmlwdExvYWRpbmcpIHtcbiAgICBzY3JpcHRMb2FkaW5nID0gd2luZG93W09QRU5NUlNfU0NSSVBUX0xPQURJTkddID0gbmV3IFNldChbXSk7XG4gIH1cblxuICBpZiAoIXNjcmlwdEVsZW1lbnQpIHtcbiAgICBzY3JpcHRMb2FkaW5nLmFkZCh1cmwpO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICBlbGVtZW50LnNyYyA9IHVybDtcbiAgICBlbGVtZW50LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcbiAgICBlbGVtZW50LmFzeW5jID0gdHJ1ZTtcblxuICAgIC8vIGxvYWRUaW1lKCkgZGlzcGxheXMgYW4gZXJyb3IgaWYgYSBzY3JpcHQgdGFrZXMgbW9yZSB0aGFuIDUgc2Vjb25kcyB0byBsb2FkXG4gICAgY29uc3QgbG9hZFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgIGBUaGUgc2NyaXB0IGF0ICR7dXJsfSBkaWQgbm90IGxvYWQgd2l0aGluIDUgc2Vjb25kcy4gVGhpcyBtYXkgaW5kaWNhdGUgYW4gaXNzdWUgd2l0aCB0aGUgaW1wb3J0cyBpbiB0aGUgc2NyaXB0J3MgZW50cnktcG9pbnQgZmlsZSBvciB3aXRoIHRoZSBzY3JpcHQncyBidW5kbGVyIGNvbmZpZ3VyYXRpb24uYCxcbiAgICAgICk7XG4gICAgfSwgNV8wMDApOyAvLyA1IHNlY29uZHM7IHRoaXMgaXMgYXJiaXRyYXJ5XG5cbiAgICBsZXQgbG9hZEZuOiAoKSA9PiB2b2lkLCBlcnJGbjogKGV2OiBFcnJvckV2ZW50KSA9PiB2b2lkLCBmaW5pc2hTY3JpcHRMb2FkaW5nOiAoKSA9PiB2b2lkO1xuXG4gICAgZmluaXNoU2NyaXB0TG9hZGluZyA9ICgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dChsb2FkVGltZW91dCk7XG4gICAgICBzY3JpcHRMb2FkaW5nLmRlbGV0ZSh1cmwpO1xuICAgICAgbG9hZEZuICYmIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9hZCcsIGxvYWRGbik7XG4gICAgICBlcnJGbiAmJiBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuICAgIH07XG5cbiAgICBsb2FkRm4gPSAoKSA9PiB7XG4gICAgICBmaW5pc2hTY3JpcHRMb2FkaW5nKCk7XG4gICAgICByZXNvbHZlKG51bGwpO1xuICAgIH07XG5cbiAgICBlcnJGbiA9IChldjogRXJyb3JFdmVudCkgPT4ge1xuICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgY29uc3QgbXNnID0gYEZhaWxlZCB0byBsb2FkIHNjcmlwdCBmcm9tICR7dXJsfWA7XG4gICAgICBjb25zb2xlLmVycm9yKG1zZywgZXYpO1xuICAgICAgcmVqZWN0KGV2Lm1lc3NhZ2UgPz8gbXNnKTtcbiAgICB9O1xuXG4gICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuXG4gICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChlbGVtZW50KTtcbiAgfSBlbHNlIHtcbiAgICBpZiAoc2NyaXB0TG9hZGluZy5oYXModXJsKSkge1xuICAgICAgbGV0IGxvYWRGbjogKCkgPT4gdm9pZCwgZXJyRm46IChldjogRXJyb3JFdmVudCkgPT4gdm9pZDtcbiAgICAgIGxvYWRGbiA9ICgpID0+IHtcbiAgICAgICAgaWYgKHNjcmlwdEVsZW1lbnQpIHtcbiAgICAgICAgICBzY3JpcHRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBsb2FkRm4pO1xuICAgICAgICAgIHNjcmlwdEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgICAgIH1cblxuICAgICAgICByZXNvbHZlKG51bGwpO1xuICAgICAgfTtcblxuICAgICAgLy8gdGhpcyBlcnJGbiBkb2VzIG5vdCBsb2cgYW55dGhpbmdcbiAgICAgIGVyckZuID0gKGV2OiBFcnJvckV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChzY3JpcHRFbGVtZW50KSB7XG4gICAgICAgICAgc2NyaXB0RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICAgICAgICBzY3JpcHRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVqZWN0KGV2Lm1lc3NhZ2UpO1xuICAgICAgfTtcblxuICAgICAgc2NyaXB0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICAgIHNjcmlwdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgU2NyaXB0IGF0ICR7dXJsfSBhbHJlYWR5IGxvYWRlZC4gTm90IGxvYWRpbmcgaXQgYWdhaW4uYCk7XG4gICAgICByZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbInNsdWdpZnkiLCJuYW1lIiwicmVwbGFjZSIsImltcG9ydER5bmFtaWMiLCJqc1BhY2thZ2UiLCJzaGFyZSIsIm9wdGlvbnMiLCJtYXhMb2FkaW5nVGltZSIsInRpbWVvdXQiLCJqc1BhY2thZ2VTbHVnIiwiY29udGFpbmVyIiwiZXJyb3IiLCJmYWN0b3J5IiwibW9kdWxlIiwidW5kZWZpbmVkIiwiUHJvbWlzZSIsInJhY2UiLCJwcmVsb2FkSW1wb3J0IiwiaW1wb3J0TWFwIiwiXyIsInJlamVjdCIsInNldFRpbWVvdXQiLCJFcnJvciIsImh1bWFuUmVhZGFibGVNcyIsImNsZWFyVGltZW91dCIsIndpbmRvdyIsImlzRmVkZXJhdGVkTW9kdWxlIiwiY29uc29sZSIsImluaXQiLCJfX3dlYnBhY2tfc2hhcmVfc2NvcGVzX18iLCJkZWZhdWx0IiwiZ2V0IiwibXMiLCJNYXRoIiwiZmxvb3IiLCJhY3RpdmVJbXBvcnRNYXAiLCJ1cmwiLCJ0cmltIiwibGVuZ3RoIiwiZ2V0Q3VycmVudEltcG9ydE1hcCIsImltcG9ydHMiLCJoYXNPd25Qcm9wZXJ0eSIsInN0YXJ0c1dpdGgiLCJzcGFCYXNlIiwic3Vic3RyaW5nIiwicmVzb2x2ZSIsImxvYWRTY3JpcHQiLCJpbXBvcnRNYXBPdmVycmlkZXMiLCJnZXRDdXJyZW50UGFnZU1hcCIsImEiLCJPUEVOTVJTX1NDUklQVF9MT0FESU5HIiwiU3ltYm9sIiwic2NyaXB0RWxlbWVudCIsImRvY3VtZW50IiwiaGVhZCIsInF1ZXJ5U2VsZWN0b3IiLCJzY3JpcHRMb2FkaW5nIiwiU2V0IiwiYWRkIiwiZWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJzcmMiLCJ0eXBlIiwiYXN5bmMiLCJsb2FkVGltZW91dCIsImxvYWRGbiIsImVyckZuIiwiZmluaXNoU2NyaXB0TG9hZGluZyIsImRlbGV0ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJldiIsIm1zZyIsIm1lc3NhZ2UiLCJhZGRFdmVudExpc3RlbmVyIiwiYXBwZW5kQ2hpbGQiLCJoYXMiLCJ3YXJuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///../../framework/esm-dynamic-loading/src/dynamic-loading.ts\n");
6592
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCurrentImportMap: () => (/* binding */ getCurrentImportMap),\n/* harmony export */ importDynamic: () => (/* binding */ importDynamic),\n/* harmony export */ preloadImport: () => (/* binding */ preloadImport),\n/* harmony export */ slugify: () => (/* binding */ slugify)\n/* harmony export */ });\n/* harmony import */ var _openmrs_esm_globals__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openmrs/esm-globals */ \"../../framework/esm-globals/src/index.ts\");\n/** @module @category Dynamic Loading */ \nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n// hack to make the types defined in esm-globals available here\n\n/**\n * @internal\n *\n * Transforms an ESM module name to a valid JS identifier\n *\n * @param name the name of a module\n * @returns An opaque, equivalent JS identifier for the module\n */ function slugify(name) {\n return name.replace(/[\\/\\-@]/g, \"_\");\n}\n/**\n * Loads the named export from a named package. This might be used like:\n *\n * ```js\n * const { someComponent } = importDynamic(\"@openmrs/esm-template-app\")\n * ```\n *\n * @param jsPackage The package to load the export from.\n * @param share Indicates the name of the shared module; this is an advanced feature if the package you are loading\n * doesn't use the default OpenMRS shared module name \"./start\".\n * @param options Additional options to control loading this script.\n * @param options.importMap The import map to use to load the script. This is useful for situations where you're\n * loading multiple scripts at a time, since it allows the calling code to supply an importMap, saving multiple\n * calls to `getCurrentImportMap()`.\n * @param options.maxLoadingTime A positive integer representing the maximum number of milliseconds to wait for the\n * script to load before the promise returned from this function will be rejected. Defaults to 600,000 milliseconds,\n * i.e., 10 minutes.\n */ function importDynamic(jsPackage) {\n return _importDynamic.apply(this, arguments);\n}\nfunction _importDynamic() {\n _importDynamic = _async_to_generator(function(jsPackage) {\n var share, options, maxLoadingTime, timeout, jsPackageSlug, container, error, factory, module, error1;\n var _arguments = arguments;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n share = _arguments.length > 1 && _arguments[1] !== void 0 ? _arguments[1] : \"./start\", options = _arguments.length > 2 ? _arguments[2] : void 0;\n maxLoadingTime = !(options === null || options === void 0 ? void 0 : options.maxLoadingTime) || options.maxLoadingTime <= 0 ? 600000 : options.maxLoadingTime;\n timeout = undefined;\n return [\n 4,\n Promise.race([\n preloadImport(jsPackage, options === null || options === void 0 ? void 0 : options.importMap),\n new Promise(function(_, reject) {\n timeout = setTimeout(function() {\n reject(new Error(\"Could not resolve requested script, \".concat(jsPackage, \", within \").concat(humanReadableMs(maxLoadingTime), \".\")));\n }, maxLoadingTime);\n })\n ])\n ];\n case 1:\n _state.sent();\n timeout && clearTimeout(timeout);\n jsPackageSlug = slugify(jsPackage);\n container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n error = \"The global variable \".concat(jsPackageSlug, \" does not refer to a federated module\");\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_require__.S.default);\n return [\n 4,\n container.get(share)\n ];\n case 2:\n factory = _state.sent();\n module = factory();\n if (!(typeof module === \"object\") || module === null) {\n error1 = \"Container for \".concat(jsPackage, \" did not return an ESM module as expected\");\n console.error(error1);\n throw new Error(error1);\n }\n return [\n 2,\n module\n ];\n }\n });\n });\n return _importDynamic.apply(this, arguments);\n}\n/**\n * Utility function to convert milliseconds into human-readable strings with rather absurd\n * levels of precision.\n *\n * @param ms Number of milliseconds\n * @returns A human-readable string useful only for error logging, where we can assume English\n */ function humanReadableMs(ms) {\n if (ms < 1000) {\n return \"\".concat(ms, \" milliseconds\");\n } else if (ms < 60000) {\n return \"\".concat(Math.floor(ms / 1000), \" seconds\");\n } else if (ms < 3600000) {\n return \"\".concat(Math.floor(ms / 60000), \" minutes\");\n } else if (ms < 86400000) {\n return \"\".concat(Math.floor(ms / 3600000), \" hours\");\n } else {\n return \"\".concat(Math.floor(ms / 86400000), \" days\");\n }\n}\n/**\n * @internal\n *\n * This internal method is used to ensure that the script belonging\n * to the given package is loaded and added to the head.\n *\n * @param jsPackage The package to load\n * @param importMap The import map to use for loading this package.\n * The main reason for specifying this is to avoid needing to call\n * `getCurrentPageMap()` for every script when bulk loading.\n */ function preloadImport(jsPackage, importMap) {\n return _preloadImport.apply(this, arguments);\n}\nfunction _preloadImport() {\n _preloadImport = _async_to_generator(function(jsPackage, importMap) {\n var error, jsPackageSlug, activeImportMap, _tmp, error1, url, isOverridden, err;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (typeof jsPackage !== \"string\" || jsPackage.trim().length === 0) {\n error = \"Attempted to call importDynamic() without supplying a package to load\";\n console.error(error);\n throw new Error(error);\n }\n jsPackageSlug = slugify(jsPackage);\n if (!!window[jsPackageSlug]) return [\n 3,\n 7\n ];\n if (!(importMap !== null && importMap !== void 0)) return [\n 3,\n 1\n ];\n _tmp = importMap;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getCurrentImportMap()\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n activeImportMap = _tmp;\n if (!activeImportMap.imports.hasOwnProperty(jsPackage)) {\n error1 = \"Could not find the package \".concat(jsPackage, \" defined in the current importmap\");\n console.error(error1);\n throw new Error(error1);\n }\n url = activeImportMap.imports[jsPackage];\n if (url.startsWith(\"./\")) {\n url = window.spaBase + url.substring(1);\n }\n isOverridden = !!window.localStorage.getItem(\"import-map-override:\".concat(jsPackage));\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 6,\n ,\n 7\n ]);\n return [\n 4,\n new Promise(function(resolve, reject) {\n loadScript(url, resolve, reject);\n })\n ];\n case 5:\n return [\n 2,\n _state.sent()\n ];\n case 6:\n err = _state.sent();\n if (isOverridden) {\n (0,_openmrs_esm_globals__WEBPACK_IMPORTED_MODULE_0__.dispatchToastShown)({\n kind: \"error\",\n title: \"Error loading script\",\n description: \"Failed to load overridden script from \".concat(url, \". Click below to reset all overrides.\"),\n actionButtonLabel: \"Reload\",\n onActionButtonClick: function onActionButtonClick() {\n window.importMapOverrides.resetOverrides();\n window.location.reload();\n }\n });\n }\n return [\n 2,\n Promise.reject(err)\n ];\n case 7:\n return [\n 2,\n Promise.resolve()\n ];\n }\n });\n });\n return _preloadImport.apply(this, arguments);\n}\n/**\n * @internal\n *\n * Used to load the current import map\n *\n * @returns The current page map\n */ function getCurrentImportMap() {\n return _getCurrentImportMap.apply(this, arguments);\n}\nfunction _getCurrentImportMap() {\n _getCurrentImportMap = _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n return [\n 2,\n window.importMapOverrides.getCurrentPageMap()\n ];\n });\n });\n return _getCurrentImportMap.apply(this, arguments);\n}\nfunction isFederatedModule(a) {\n return typeof a === \"object\" && a !== null && \"init\" in a && typeof a[\"init\"] === \"function\" && \"get\" in a && typeof a[\"get\"] === \"function\";\n}\n// internals to track script loading\n// basically, if we're already loading a script, we should wait until the script is loaded\n// we use a global to track this\nvar OPENMRS_SCRIPT_LOADING = Symbol(\"__openmrs_script_loading\");\n/**\n * Appends a `<script>` to the DOM with the given URL.\n */ function loadScript(url, resolve, reject) {\n var scriptElement = document.head.querySelector('script[src=\"'.concat(url, '\"]'));\n var scriptLoading = window[OPENMRS_SCRIPT_LOADING];\n if (!scriptLoading) {\n scriptLoading = window[OPENMRS_SCRIPT_LOADING] = new Set([]);\n }\n if (!scriptElement) {\n scriptLoading.add(url);\n var element = document.createElement(\"script\");\n element.src = url;\n element.type = \"text/javascript\";\n element.async = true;\n // loadTime() displays an error if a script takes more than 5 seconds to load\n var loadTimeout = setTimeout(function() {\n console.error(\"The script at \".concat(url, \" did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.\"));\n }, 5000); // 5 seconds; this is arbitrary\n var loadFn, errFn, finishScriptLoading;\n finishScriptLoading = function() {\n clearTimeout(loadTimeout);\n scriptLoading.delete(url);\n loadFn && element.removeEventListener(\"load\", loadFn);\n errFn && element.removeEventListener(\"error\", errFn);\n };\n loadFn = function() {\n finishScriptLoading();\n resolve(null);\n };\n errFn = function(ev) {\n finishScriptLoading();\n var msg = \"Failed to load script from \".concat(url);\n console.error(msg, ev);\n var _ev_message;\n reject((_ev_message = ev.message) !== null && _ev_message !== void 0 ? _ev_message : msg);\n };\n element.addEventListener(\"load\", loadFn);\n element.addEventListener(\"error\", errFn);\n document.head.appendChild(element);\n } else {\n if (scriptLoading.has(url)) {\n var loadFn1, errFn1, finishScriptLoading1;\n finishScriptLoading1 = function() {\n loadFn1 && scriptElement.removeEventListener(\"load\", loadFn1);\n errFn1 && scriptElement.removeEventListener(\"error\", errFn1);\n };\n loadFn1 = function() {\n finishScriptLoading1();\n resolve(null);\n };\n // this errFn does not log anything\n errFn1 = function(ev) {\n finishScriptLoading1();\n reject(ev.message);\n };\n scriptElement.addEventListener(\"load\", loadFn1);\n scriptElement.addEventListener(\"error\", errFn1);\n } else {\n console.warn(\"Script at \".concat(url, \" already loaded. Not loading it again.\"));\n resolve(null);\n }\n }\n}\nfunction closureScope() {}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi4vLi4vZnJhbWV3b3JrL2VzbS1keW5hbWljLWxvYWRpbmcvc3JjL2R5bmFtaWMtbG9hZGluZy50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLHNDQUFzQyxHQUN0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwrREFBK0Q7QUFDVztBQUUxRTs7Ozs7OztDQU9DLEdBQ00sU0FBU0MsUUFBUUMsSUFBWSxFQUFFO0lBQ3BDLE9BQU9BLEtBQUtDLE9BQU8sQ0FBQyxZQUFZO0FBQ2xDLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FpQkMsR0FDTSxTQUFlQyxjQUNwQkMsU0FBaUI7V0FER0Q7Q0E4Q3JCO1NBOUNxQkE7SUFBQUEsaUJBQWYsNkJBQ0xDLFNBQWlCLEVBTUw7WUFMWkMsT0FDQUMsU0FNTUMsZ0JBRUZDLFNBY0VDLGVBRUFDLFdBRUVDLE9BT0ZDLFNBQ0FDLFFBR0VGOzs7OztvQkF0Q1JOLFFBQUFBLG9FQUFnQixTQUFTLEVBQ3pCQztvQkFNTUMsaUJBQWlCLENBQUNELENBQUFBLG9CQUFBQSxxQkFBQUEsS0FBQUEsSUFBQUEsUUFBU0MsY0FBYyxLQUFJRCxRQUFRQyxjQUFjLElBQUksSUFBSSxTQUFVRCxRQUFRQyxjQUFjO29CQUU3R0MsVUFBcURNO29CQUN6RDs7d0JBQU1DLFFBQVFDLElBQUk7NEJBQ2hCQyxjQUFjYixXQUFXRSxvQkFBQUEscUJBQUFBLEtBQUFBLElBQUFBLFFBQVNZLFNBQVM7NEJBQzNDLElBQUlILFFBQVEsU0FBQ0ksR0FBR0MsUUFBVztnQ0FDekJaLFVBQVVhLFdBQVcsV0FBTTtvQ0FDekJELE9BQ0UsSUFBSUUsTUFBTSx1Q0FBNERDLE9BQXJCbkIsV0FBVSxhQUEyQyxPQUFoQ21CLGdCQUFnQmhCLGlCQUFnQjtnQ0FFMUcsR0FBR0E7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QUFRSjtnQkFDcERDLFVBQVNkLGNBQWNpQixtQkFBbUIsQ0FBQyxTQUFTSDtZQUN0RDtZQUVBRCxVQUFTLFdBQU07Z0JBQ2JFO2dCQUNBOUIsUUFBUSxJQUFJO1lBQ2Q7WUFFQSxtQ0FBbUM7WUFDbkM2QixTQUFRLFNBQUNJLElBQW1CO2dCQUMxQkg7Z0JBQ0EzRCxPQUFPOEQsR0FBR0UsT0FBTztZQUNuQjtZQUVBcEIsY0FBY3FCLGdCQUFnQixDQUFDLFFBQVFSO1lBQ3ZDYixjQUFjcUIsZ0JBQWdCLENBQUMsU0FBU1A7UUFDMUMsT0FBTztZQUNMbkQsUUFBUTZELElBQUksQ0FBQyxhQUFpQixPQUFKcEQsS0FBSTtZQUM5QmEsUUFBUSxJQUFJO1FBQ2QsQ0FBQztJQUNILENBQUM7QUFDSDtBQUVBLFNBQVN3QyxlQUFlLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4uLy4uL2ZyYW1ld29yay9lc20tZHluYW1pYy1sb2FkaW5nL3NyYy9keW5hbWljLWxvYWRpbmcudHM/N2QzZCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQG1vZHVsZSBAY2F0ZWdvcnkgRHluYW1pYyBMb2FkaW5nICovXG4ndXNlIHN0cmljdCc7XG4vLyBoYWNrIHRvIG1ha2UgdGhlIHR5cGVzIGRlZmluZWQgaW4gZXNtLWdsb2JhbHMgYXZhaWxhYmxlIGhlcmVcbmltcG9ydCB7IGRpc3BhdGNoVG9hc3RTaG93biwgdHlwZSBJbXBvcnRNYXAgfSBmcm9tICdAb3Blbm1ycy9lc20tZ2xvYmFscyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKlxuICogVHJhbnNmb3JtcyBhbiBFU00gbW9kdWxlIG5hbWUgdG8gYSB2YWxpZCBKUyBpZGVudGlmaWVyXG4gKlxuICogQHBhcmFtIG5hbWUgdGhlIG5hbWUgb2YgYSBtb2R1bGVcbiAqIEByZXR1cm5zIEFuIG9wYXF1ZSwgZXF1aXZhbGVudCBKUyBpZGVudGlmaWVyIGZvciB0aGUgbW9kdWxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzbHVnaWZ5KG5hbWU6IHN0cmluZykge1xuICByZXR1cm4gbmFtZS5yZXBsYWNlKC9bXFwvXFwtQF0vZywgJ18nKTtcbn1cblxuLyoqXG4gKiBMb2FkcyB0aGUgbmFtZWQgZXhwb3J0IGZyb20gYSBuYW1lZCBwYWNrYWdlLiBUaGlzIG1pZ2h0IGJlIHVzZWQgbGlrZTpcbiAqXG4gKiBgYGBqc1xuICogY29uc3QgeyBzb21lQ29tcG9uZW50IH0gPSBpbXBvcnREeW5hbWljKFwiQG9wZW5tcnMvZXNtLXRlbXBsYXRlLWFwcFwiKVxuICogYGBgXG4gKlxuICogQHBhcmFtIGpzUGFja2FnZSBUaGUgcGFja2FnZSB0byBsb2FkIHRoZSBleHBvcnQgZnJvbS5cbiAqIEBwYXJhbSBzaGFyZSBJbmRpY2F0ZXMgdGhlIG5hbWUgb2YgdGhlIHNoYXJlZCBtb2R1bGU7IHRoaXMgaXMgYW4gYWR2YW5jZWQgZmVhdHVyZSBpZiB0aGUgcGFja2FnZSB5b3UgYXJlIGxvYWRpbmdcbiAqICAgZG9lc24ndCB1c2UgdGhlIGRlZmF1bHQgT3Blbk1SUyBzaGFyZWQgbW9kdWxlIG5hbWUgXCIuL3N0YXJ0XCIuXG4gKiBAcGFyYW0gb3B0aW9ucyBBZGRpdGlvbmFsIG9wdGlvbnMgdG8gY29udHJvbCBsb2FkaW5nIHRoaXMgc2NyaXB0LlxuICogQHBhcmFtIG9wdGlvbnMuaW1wb3J0TWFwIFRoZSBpbXBvcnQgbWFwIHRvIHVzZSB0byBsb2FkIHRoZSBzY3JpcHQuIFRoaXMgaXMgdXNlZnVsIGZvciBzaXR1YXRpb25zIHdoZXJlIHlvdSdyZVxuICogICBsb2FkaW5nIG11bHRpcGxlIHNjcmlwdHMgYXQgYSB0aW1lLCBzaW5jZSBpdCBhbGxvd3MgdGhlIGNhbGxpbmcgY29kZSB0byBzdXBwbHkgYW4gaW1wb3J0TWFwLCBzYXZpbmcgbXVsdGlwbGVcbiAqICAgY2FsbHMgdG8gYGdldEN1cnJlbnRJbXBvcnRNYXAoKWAuXG4gKiBAcGFyYW0gb3B0aW9ucy5tYXhMb2FkaW5nVGltZSBBIHBvc2l0aXZlIGludGVnZXIgcmVwcmVzZW50aW5nIHRoZSBtYXhpbXVtIG51bWJlciBvZiBtaWxsaXNlY29uZHMgdG8gd2FpdCBmb3IgdGhlXG4gKiAgIHNjcmlwdCB0byBsb2FkIGJlZm9yZSB0aGUgcHJvbWlzZSByZXR1cm5lZCBmcm9tIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSByZWplY3RlZC4gRGVmYXVsdHMgdG8gNjAwLDAwMCBtaWxsaXNlY29uZHMsXG4gKiAgIGkuZS4sIDEwIG1pbnV0ZXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbXBvcnREeW5hbWljPFQgPSBhbnk+KFxuICBqc1BhY2thZ2U6IHN0cmluZyxcbiAgc2hhcmU6IHN0cmluZyA9ICcuL3N0YXJ0JyxcbiAgb3B0aW9ucz86IHtcbiAgICBpbXBvcnRNYXA/OiBJbXBvcnRNYXA7XG4gICAgbWF4TG9hZGluZ1RpbWU/OiBudW1iZXI7XG4gIH0sXG4pOiBQcm9taXNlPFQ+IHtcbiAgLy8gZGVmYXVsdCB0byAxMCBtaW51dGVzXG4gIGNvbnN0IG1heExvYWRpbmdUaW1lID0gIW9wdGlvbnM/Lm1heExvYWRpbmdUaW1lIHx8IG9wdGlvbnMubWF4TG9hZGluZ1RpbWUgPD0gMCA/IDYwMF8wMDAgOiBvcHRpb25zLm1heExvYWRpbmdUaW1lO1xuXG4gIGxldCB0aW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgYXdhaXQgUHJvbWlzZS5yYWNlKFtcbiAgICBwcmVsb2FkSW1wb3J0KGpzUGFja2FnZSwgb3B0aW9ucz8uaW1wb3J0TWFwKSxcbiAgICBuZXcgUHJvbWlzZSgoXywgcmVqZWN0KSA9PiB7XG4gICAgICB0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHJlamVjdChcbiAgICAgICAgICBuZXcgRXJyb3IoYENvdWxkIG5vdCByZXNvbHZlIHJlcXVlc3RlZCBzY3JpcHQsICR7anNQYWNrYWdlfSwgd2l0aGluICR7aHVtYW5SZWFkYWJsZU1zKG1heExvYWRpbmdUaW1lKX0uYCksXG4gICAgICAgICk7XG4gICAgICB9LCBtYXhMb2FkaW5nVGltZSk7XG4gICAgfSksXG4gIF0pO1xuXG4gIHRpbWVvdXQgJiYgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuXG4gIGNvbnN0IGpzUGFja2FnZVNsdWcgPSBzbHVnaWZ5KGpzUGFja2FnZSk7XG5cbiAgY29uc3QgY29udGFpbmVyID0gd2luZG93W2pzUGFja2FnZVNsdWddIGFzIHVua25vd247XG4gIGlmICghaXNGZWRlcmF0ZWRNb2R1bGUoY29udGFpbmVyKSkge1xuICAgIGNvbnN0IGVycm9yID0gYFRoZSBnbG9iYWwgdmFyaWFibGUgJHtqc1BhY2thZ2VTbHVnfSBkb2VzIG5vdCByZWZlciB0byBhIGZlZGVyYXRlZCBtb2R1bGVgO1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gIH1cblxuICBjb250YWluZXIuaW5pdChfX3dlYnBhY2tfc2hhcmVfc2NvcGVzX18uZGVmYXVsdCk7XG5cbiAgY29uc3QgZmFjdG9yeSA9IGF3YWl0IGNvbnRhaW5lci5nZXQoc2hhcmUpO1xuICBjb25zdCBtb2R1bGUgPSBmYWN0b3J5KCk7XG5cbiAgaWYgKCEodHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpIHx8IG1vZHVsZSA9PT0gbnVsbCkge1xuICAgIGNvbnN0IGVycm9yID0gYENvbnRhaW5lciBmb3IgJHtqc1BhY2thZ2V9IGRpZCBub3QgcmV0dXJuIGFuIEVTTSBtb2R1bGUgYXMgZXhwZWN0ZWRgO1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gIH1cblxuICByZXR1cm4gbW9kdWxlIGFzIHVua25vd24gYXMgVDtcbn1cblxuLyoqXG4gKiBVdGlsaXR5IGZ1bmN0aW9uIHRvIGNvbnZlcnQgbWlsbGlzZWNvbmRzIGludG8gaHVtYW4tcmVhZGFibGUgc3RyaW5ncyB3aXRoIHJhdGhlciBhYnN1cmRcbiAqIGxldmVscyBvZiBwcmVjaXNpb24uXG4gKlxuICogQHBhcmFtIG1zIE51bWJlciBvZiBtaWxsaXNlY29uZHNcbiAqIEByZXR1cm5zIEEgaHVtYW4tcmVhZGFibGUgc3RyaW5nIHVzZWZ1bCBvbmx5IGZvciBlcnJvciBsb2dnaW5nLCB3aGVyZSB3ZSBjYW4gYXNzdW1lIEVuZ2xpc2hcbiAqL1xuZnVuY3Rpb24gaHVtYW5SZWFkYWJsZU1zKG1zOiBudW1iZXIpIHtcbiAgaWYgKG1zIDwgMV8wMDApIHtcbiAgICByZXR1cm4gYCR7bXN9IG1pbGxpc2Vjb25kc2A7XG4gIH0gZWxzZSBpZiAobXMgPCA2MF8wMDApIHtcbiAgICByZXR1cm4gYCR7TWF0aC5mbG9vcihtcyAvIDEwMDApfSBzZWNvbmRzYDtcbiAgfSBlbHNlIGlmIChtcyA8IDNfNjAwXzAwMCkge1xuICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gNjBfMDAwKX0gbWludXRlc2A7XG4gIH0gZWxzZSBpZiAobXMgPCA4Nl80MDBfMDAwKSB7XG4gICAgcmV0dXJuIGAke01hdGguZmxvb3IobXMgLyAzXzYwMF8wMDApfSBob3Vyc2A7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGAke01hdGguZmxvb3IobXMgLyA4Nl80MDBfMDAwKX0gZGF5c2A7XG4gIH1cbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBUaGlzIGludGVybmFsIG1ldGhvZCBpcyB1c2VkIHRvIGVuc3VyZSB0aGF0IHRoZSBzY3JpcHQgYmVsb25naW5nXG4gKiB0byB0aGUgZ2l2ZW4gcGFja2FnZSBpcyBsb2FkZWQgYW5kIGFkZGVkIHRvIHRoZSBoZWFkLlxuICpcbiAqIEBwYXJhbSBqc1BhY2thZ2UgVGhlIHBhY2thZ2UgdG8gbG9hZFxuICogQHBhcmFtIGltcG9ydE1hcCBUaGUgaW1wb3J0IG1hcCB0byB1c2UgZm9yIGxvYWRpbmcgdGhpcyBwYWNrYWdlLlxuICogIFRoZSBtYWluIHJlYXNvbiBmb3Igc3BlY2lmeWluZyB0aGlzIGlzIHRvIGF2b2lkIG5lZWRpbmcgdG8gY2FsbFxuICogIGBnZXRDdXJyZW50UGFnZU1hcCgpYCBmb3IgZXZlcnkgc2NyaXB0IHdoZW4gYnVsayBsb2FkaW5nLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlbG9hZEltcG9ydChqc1BhY2thZ2U6IHN0cmluZywgaW1wb3J0TWFwPzogSW1wb3J0TWFwKSB7XG4gIGlmICh0eXBlb2YganNQYWNrYWdlICE9PSAnc3RyaW5nJyB8fCBqc1BhY2thZ2UudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgIGNvbnN0IGVycm9yID0gJ0F0dGVtcHRlZCB0byBjYWxsIGltcG9ydER5bmFtaWMoKSB3aXRob3V0IHN1cHBseWluZyBhIHBhY2thZ2UgdG8gbG9hZCc7XG4gICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgfVxuXG4gIGNvbnN0IGpzUGFja2FnZVNsdWcgPSBzbHVnaWZ5KGpzUGFja2FnZSk7XG5cbiAgaWYgKCF3aW5kb3dbanNQYWNrYWdlU2x1Z10pIHtcbiAgICBjb25zdCBhY3RpdmVJbXBvcnRNYXAgPSBpbXBvcnRNYXAgPz8gKGF3YWl0IGdldEN1cnJlbnRJbXBvcnRNYXAoKSk7XG4gICAgaWYgKCFhY3RpdmVJbXBvcnRNYXAuaW1wb3J0cy5oYXNPd25Qcm9wZXJ0eShqc1BhY2thZ2UpKSB7XG4gICAgICBjb25zdCBlcnJvciA9IGBDb3VsZCBub3QgZmluZCB0aGUgcGFja2FnZSAke2pzUGFja2FnZX0gZGVmaW5lZCBpbiB0aGUgY3VycmVudCBpbXBvcnRtYXBgO1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIGxldCB1cmwgPSBhY3RpdmVJbXBvcnRNYXAuaW1wb3J0c1tqc1BhY2thZ2VdO1xuICAgIGlmICh1cmwuc3RhcnRzV2l0aCgnLi8nKSkge1xuICAgICAgdXJsID0gd2luZG93LnNwYUJhc2UgKyB1cmwuc3Vic3RyaW5nKDEpO1xuICAgIH1cblxuICAgIGNvbnN0IGlzT3ZlcnJpZGRlbiA9ICEhd2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKGBpbXBvcnQtbWFwLW92ZXJyaWRlOiR7anNQYWNrYWdlfWApO1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBsb2FkU2NyaXB0KHVybCwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycjogYW55KSB7XG4gICAgICBpZiAoaXNPdmVycmlkZGVuKSB7XG4gICAgICAgIGRpc3BhdGNoVG9hc3RTaG93bih7XG4gICAgICAgICAga2luZDogJ2Vycm9yJyxcbiAgICAgICAgICB0aXRsZTogJ0Vycm9yIGxvYWRpbmcgc2NyaXB0JyxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogYEZhaWxlZCB0byBsb2FkIG92ZXJyaWRkZW4gc2NyaXB0IGZyb20gJHt1cmx9LiBDbGljayBiZWxvdyB0byByZXNldCBhbGwgb3ZlcnJpZGVzLmAsXG4gICAgICAgICAgYWN0aW9uQnV0dG9uTGFiZWw6ICdSZWxvYWQnLFxuICAgICAgICAgIG9uQWN0aW9uQnV0dG9uQ2xpY2soKSB7XG4gICAgICAgICAgICB3aW5kb3cuaW1wb3J0TWFwT3ZlcnJpZGVzLnJlc2V0T3ZlcnJpZGVzKCk7XG4gICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnIpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBVc2VkIHRvIGxvYWQgdGhlIGN1cnJlbnQgaW1wb3J0IG1hcFxuICpcbiAqIEByZXR1cm5zIFRoZSBjdXJyZW50IHBhZ2UgbWFwXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDdXJyZW50SW1wb3J0TWFwKCkge1xuICByZXR1cm4gd2luZG93LmltcG9ydE1hcE92ZXJyaWRlcy5nZXRDdXJyZW50UGFnZU1hcCgpO1xufVxuXG5pbnRlcmZhY2UgRmVkZXJhdGVkTW9kdWxlIHtcbiAgaW5pdDogKHNjb3BlOiB0eXBlb2YgX193ZWJwYWNrX3NoYXJlX3Njb3Blc19fLmRlZmF1bHQpID0+IHZvaWQ7XG4gIGdldDogKF9leHBvcnQ6IHN0cmluZykgPT4gUHJvbWlzZTwoKSA9PiB1bmtub3duPjtcbn1cblxuZnVuY3Rpb24gaXNGZWRlcmF0ZWRNb2R1bGUoYTogdW5rbm93bik6IGEgaXMgRmVkZXJhdGVkTW9kdWxlIHtcbiAgcmV0dXJuIChcbiAgICB0eXBlb2YgYSA9PT0gJ29iamVjdCcgJiZcbiAgICBhICE9PSBudWxsICYmXG4gICAgJ2luaXQnIGluIGEgJiZcbiAgICB0eXBlb2YgYVsnaW5pdCddID09PSAnZnVuY3Rpb24nICYmXG4gICAgJ2dldCcgaW4gYSAmJlxuICAgIHR5cGVvZiBhWydnZXQnXSA9PT0gJ2Z1bmN0aW9uJ1xuICApO1xufVxuXG4vLyBpbnRlcm5hbHMgdG8gdHJhY2sgc2NyaXB0IGxvYWRpbmdcbi8vIGJhc2ljYWxseSwgaWYgd2UncmUgYWxyZWFkeSBsb2FkaW5nIGEgc2NyaXB0LCB3ZSBzaG91bGQgd2FpdCB1bnRpbCB0aGUgc2NyaXB0IGlzIGxvYWRlZFxuLy8gd2UgdXNlIGEgZ2xvYmFsIHRvIHRyYWNrIHRoaXNcbmNvbnN0IE9QRU5NUlNfU0NSSVBUX0xPQURJTkcgPSBTeW1ib2woJ19fb3Blbm1yc19zY3JpcHRfbG9hZGluZycpO1xuXG4vKipcbiAqIEFwcGVuZHMgYSBgPHNjcmlwdD5gIHRvIHRoZSBET00gd2l0aCB0aGUgZ2l2ZW4gVVJMLlxuICovXG5mdW5jdGlvbiBsb2FkU2NyaXB0KFxuICB1cmw6IHN0cmluZyxcbiAgcmVzb2x2ZTogKHZhbHVlOiB1bmtub3duIHwgUHJvbWlzZUxpa2U8dW5rbm93bj4pID0+IHZvaWQsXG4gIHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCxcbikge1xuICBjb25zdCBzY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKGBzY3JpcHRbc3JjPVwiJHt1cmx9XCJdYCk7XG4gIGxldCBzY3JpcHRMb2FkaW5nOiBTZXQ8U3RyaW5nPiA9IHdpbmRvd1tPUEVOTVJTX1NDUklQVF9MT0FESU5HXTtcbiAgaWYgKCFzY3JpcHRMb2FkaW5nKSB7XG4gICAgc2NyaXB0TG9hZGluZyA9IHdpbmRvd1tPUEVOTVJTX1NDUklQVF9MT0FESU5HXSA9IG5ldyBTZXQoW10pO1xuICB9XG5cbiAgaWYgKCFzY3JpcHRFbGVtZW50KSB7XG4gICAgc2NyaXB0TG9hZGluZy5hZGQodXJsKTtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgZWxlbWVudC5zcmMgPSB1cmw7XG4gICAgZWxlbWVudC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7XG4gICAgZWxlbWVudC5hc3luYyA9IHRydWU7XG5cbiAgICAvLyBsb2FkVGltZSgpIGRpc3BsYXlzIGFuIGVycm9yIGlmIGEgc2NyaXB0IHRha2VzIG1vcmUgdGhhbiA1IHNlY29uZHMgdG8gbG9hZFxuICAgIGNvbnN0IGxvYWRUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgVGhlIHNjcmlwdCBhdCAke3VybH0gZGlkIG5vdCBsb2FkIHdpdGhpbiA1IHNlY29uZHMuIFRoaXMgbWF5IGluZGljYXRlIGFuIGlzc3VlIHdpdGggdGhlIGltcG9ydHMgaW4gdGhlIHNjcmlwdCdzIGVudHJ5LXBvaW50IGZpbGUgb3Igd2l0aCB0aGUgc2NyaXB0J3MgYnVuZGxlciBjb25maWd1cmF0aW9uLmAsXG4gICAgICApO1xuICAgIH0sIDVfMDAwKTsgLy8gNSBzZWNvbmRzOyB0aGlzIGlzIGFyYml0cmFyeVxuXG4gICAgbGV0IGxvYWRGbjogKCkgPT4gdm9pZCwgZXJyRm46IChldjogRXJyb3JFdmVudCkgPT4gdm9pZCwgZmluaXNoU2NyaXB0TG9hZGluZzogKCkgPT4gdm9pZDtcblxuICAgIGZpbmlzaFNjcmlwdExvYWRpbmcgPSAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQobG9hZFRpbWVvdXQpO1xuICAgICAgc2NyaXB0TG9hZGluZy5kZWxldGUodXJsKTtcbiAgICAgIGxvYWRGbiAmJiBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBsb2FkRm4pO1xuICAgICAgZXJyRm4gJiYgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIGVyckZuKTtcbiAgICB9O1xuXG4gICAgbG9hZEZuID0gKCkgPT4ge1xuICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICB9O1xuXG4gICAgZXJyRm4gPSAoZXY6IEVycm9yRXZlbnQpID0+IHtcbiAgICAgIGZpbmlzaFNjcmlwdExvYWRpbmcoKTtcbiAgICAgIGNvbnN0IG1zZyA9IGBGYWlsZWQgdG8gbG9hZCBzY3JpcHQgZnJvbSAke3VybH1gO1xuICAgICAgY29uc29sZS5lcnJvcihtc2csIGV2KTtcbiAgICAgIHJlamVjdChldi5tZXNzYWdlID8/IG1zZyk7XG4gICAgfTtcblxuICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGxvYWRGbik7XG4gICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIGVyckZuKTtcblxuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7XG4gIH0gZWxzZSB7XG4gICAgaWYgKHNjcmlwdExvYWRpbmcuaGFzKHVybCkpIHtcbiAgICAgIGxldCBsb2FkRm46ICgpID0+IHZvaWQsIGVyckZuOiAoZXY6IEVycm9yRXZlbnQpID0+IHZvaWQsIGZpbmlzaFNjcmlwdExvYWRpbmc6ICgpID0+IHZvaWQ7XG5cbiAgICAgIGZpbmlzaFNjcmlwdExvYWRpbmcgPSAoKSA9PiB7XG4gICAgICAgIGxvYWRGbiAmJiBzY3JpcHRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBsb2FkRm4pO1xuICAgICAgICBlcnJGbiAmJiBzY3JpcHRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuICAgICAgfTtcblxuICAgICAgbG9hZEZuID0gKCkgPT4ge1xuICAgICAgICBmaW5pc2hTY3JpcHRMb2FkaW5nKCk7XG4gICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICB9O1xuXG4gICAgICAvLyB0aGlzIGVyckZuIGRvZXMgbm90IGxvZyBhbnl0aGluZ1xuICAgICAgZXJyRm4gPSAoZXY6IEVycm9yRXZlbnQpID0+IHtcbiAgICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgICByZWplY3QoZXYubWVzc2FnZSk7XG4gICAgICB9O1xuXG4gICAgICBzY3JpcHRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBsb2FkRm4pO1xuICAgICAgc2NyaXB0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIGVyckZuKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKGBTY3JpcHQgYXQgJHt1cmx9IGFscmVhZHkgbG9hZGVkLiBOb3QgbG9hZGluZyBpdCBhZ2Fpbi5gKTtcbiAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNsb3N1cmVTY29wZSgpIHt9XG4iXSwibmFtZXMiOlsiZGlzcGF0Y2hUb2FzdFNob3duIiwic2x1Z2lmeSIsIm5hbWUiLCJyZXBsYWNlIiwiaW1wb3J0RHluYW1pYyIsImpzUGFja2FnZSIsInNoYXJlIiwib3B0aW9ucyIsIm1heExvYWRpbmdUaW1lIiwidGltZW91dCIsImpzUGFja2FnZVNsdWciLCJjb250YWluZXIiLCJlcnJvciIsImZhY3RvcnkiLCJtb2R1bGUiLCJ1bmRlZmluZWQiLCJQcm9taXNlIiwicmFjZSIsInByZWxvYWRJbXBvcnQiLCJpbXBvcnRNYXAiLCJfIiwicmVqZWN0Iiwic2V0VGltZW91dCIsIkVycm9yIiwiaHVtYW5SZWFkYWJsZU1zIiwiY2xlYXJUaW1lb3V0Iiwid2luZG93IiwiaXNGZWRlcmF0ZWRNb2R1bGUiLCJjb25zb2xlIiwiaW5pdCIsIl9fd2VicGFja19zaGFyZV9zY29wZXNfXyIsImRlZmF1bHQiLCJnZXQiLCJtcyIsIk1hdGgiLCJmbG9vciIsImFjdGl2ZUltcG9ydE1hcCIsInVybCIsImlzT3ZlcnJpZGRlbiIsImVyciIsInRyaW0iLCJsZW5ndGgiLCJnZXRDdXJyZW50SW1wb3J0TWFwIiwiaW1wb3J0cyIsImhhc093blByb3BlcnR5Iiwic3RhcnRzV2l0aCIsInNwYUJhc2UiLCJzdWJzdHJpbmciLCJsb2NhbFN0b3JhZ2UiLCJnZXRJdGVtIiwicmVzb2x2ZSIsImxvYWRTY3JpcHQiLCJraW5kIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsImFjdGlvbkJ1dHRvbkxhYmVsIiwib25BY3Rpb25CdXR0b25DbGljayIsImltcG9ydE1hcE92ZXJyaWRlcyIsInJlc2V0T3ZlcnJpZGVzIiwibG9jYXRpb24iLCJyZWxvYWQiLCJnZXRDdXJyZW50UGFnZU1hcCIsImEiLCJPUEVOTVJTX1NDUklQVF9MT0FESU5HIiwiU3ltYm9sIiwic2NyaXB0RWxlbWVudCIsImRvY3VtZW50IiwiaGVhZCIsInF1ZXJ5U2VsZWN0b3IiLCJzY3JpcHRMb2FkaW5nIiwiU2V0IiwiYWRkIiwiZWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJzcmMiLCJ0eXBlIiwiYXN5bmMiLCJsb2FkVGltZW91dCIsImxvYWRGbiIsImVyckZuIiwiZmluaXNoU2NyaXB0TG9hZGluZyIsImRlbGV0ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJldiIsIm1zZyIsIm1lc3NhZ2UiLCJhZGRFdmVudExpc3RlbmVyIiwiYXBwZW5kQ2hpbGQiLCJoYXMiLCJ3YXJuIiwiY2xvc3VyZVNjb3BlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///../../framework/esm-dynamic-loading/src/dynamic-loading.ts\n");
6593
6593
 
6594
6594
  /***/ }),
6595
6595
 
@@ -8306,7 +8306,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
8306
8306
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8307
8307
 
8308
8308
  "use strict";
8309
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setupPaths: () => (/* binding */ setupPaths),\n/* harmony export */ setupUtils: () => (/* binding */ setupUtils)\n/* harmony export */ });\n/* harmony import */ var _openmrs_esm_styleguide_dist_openmrs_esm_styleguide_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openmrs/esm-styleguide/dist/openmrs-esm-styleguide.css */ \"../../framework/esm-styleguide/dist/openmrs-esm-styleguide.css\");\n/* harmony import */ var import_map_overrides__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! import-map-overrides */ \"../../../node_modules/import-map-overrides/dist/import-map-overrides.js\");\n/* harmony import */ var _openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @openmrs/esm-framework */ \"webpack/sharing/consume/default/@openmrs/esm-framework/@openmrs/esm-framework\");\n/* harmony import */ var _openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2__);\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\nfunction setupPaths(config) {\n var error = false;\n if (!config.apiUrl) {\n console.error(\"initializeSpa() was called without supplying an apiUrl. This means that the application cannot communicate with the backend.\");\n error = true;\n }\n if (!config.spaPath) {\n console.error(\"initializeSpa() was called without supplying a spaPath. This means that the application cannot properly generate urls.\");\n error = true;\n }\n if (error) {\n throw new Error(\"One or more required properties in the basic configuration of the application was missing and the application cannot be rendered. Please see the browser console for details.\");\n }\n window.openmrsBase = config.apiUrl;\n window.spaBase = config.spaPath;\n window.spaEnv = config.env || \"production\";\n window.spaVersion = \"5.4.1-pre.1608-20240306\";\n var spaBaseWithSlash = window.spaBase.endsWith(\"/\") ? window.spaBase : window.spaBase + \"/\";\n window.getOpenmrsSpaBase = function() {\n return spaBaseWithSlash;\n };\n}\nfunction setupUtils() {\n window.copyText = function(source) {\n var sel = window.getSelection();\n if (sel) {\n var r = document.createRange();\n r.selectNode(source);\n sel.removeAllRanges();\n sel.addRange(r);\n document.execCommand(\"copy\");\n sel.removeAllRanges();\n }\n };\n}\nfunction wireSpaPaths() {\n var baseElement = document.createElement(\"base\");\n var baseHref = window.getOpenmrsSpaBase();\n baseElement.href = baseHref;\n document.head.appendChild(baseElement);\n __webpack_require__.p = baseHref;\n}\n/**\n * Initializes the OpenMRS Frontend App Shell.\n * @param config The global configuration to apply.\n */ function initializeSpa(config) {\n setupUtils();\n setupPaths(config);\n wireSpaPaths();\n return Promise.resolve(__webpack_require__.I(\"default\")).then(/*#__PURE__*/ _async_to_generator(function() {\n var _config_configUrls, configUrls, _config_offline, offline, run;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _config_configUrls = config.configUrls, configUrls = _config_configUrls === void 0 ? [] : _config_configUrls, _config_offline = config.offline, offline = _config_offline === void 0 ? true : _config_offline;\n return [\n 4,\n Promise.all(/*! import() */[__webpack_require__.e(\"vendors-node_modules_i18next-browser-languagedetector_dist_esm_i18nextBrowserLanguageDetector-bec0ef\"), __webpack_require__.e(\"src_run_ts\")]).then(__webpack_require__.bind(__webpack_require__, /*! ./run */ \"./src/run.ts\"))\n ];\n case 1:\n run = _state.sent().run;\n return [\n 2,\n run(configUrls, offline)\n ];\n }\n });\n }));\n}\nwindow.initializeSpa = initializeSpa;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaW5kZXgudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFpRTtBQUNuQztBQUNFO0FBR3pCLFNBQVNBLFdBQVdDLE1BQWlCLEVBQUU7SUFDNUMsSUFBSUMsUUFBUSxLQUFLO0lBQ2pCLElBQUksQ0FBQ0QsT0FBT0UsTUFBTSxFQUFFO1FBQ2xCQyxRQUFRRixLQUFLLENBQ1g7UUFFRkEsUUFBUSxJQUFJO0lBQ2QsQ0FBQztJQUVELElBQUksQ0FBQ0QsT0FBT0ksT0FBTyxFQUFFO1FBQ25CRCxRQUFRRixLQUFLLENBQ1g7UUFFRkEsUUFBUSxJQUFJO0lBQ2QsQ0FBQztJQUVELElBQUlBLE9BQU87UUFDVCxNQUFNLElBQUlJLE1BQ1IsaUxBQ0E7SUFDSixDQUFDO0lBRURDLE9BQU9DLFdBQVcsR0FBR1AsT0FBT0UsTUFBTTtJQUNsQ0ksT0FBT0UsT0FBTyxHQUFHUixPQUFPSSxPQUFPO0lBQy9CRSxPQUFPRyxNQUFNLEdBQUdULE9BQU9VLEdBQUcsSUFBSTtJQUM5QkosT0FBT0ssVUFBVSxHQUFHQyx5QkFBeUI7SUFDN0MsSUFBTUUsbUJBQW1CUixPQUFPRSxPQUFPLENBQUNPLFFBQVEsQ0FBQyxPQUFPVCxPQUFPRSxPQUFPLEdBQUdGLE9BQU9FLE9BQU8sR0FBRyxHQUFHO0lBQzdGRixPQUFPVSxpQkFBaUIsR0FBRztlQUFNRjs7QUFDbkMsQ0FBQztBQUVNLFNBQVNHLGFBQWE7SUFDM0JYLE9BQU9ZLFFBQVEsR0FBRyxTQUFDQyxRQUF3QjtRQUN6QyxJQUFNQyxNQUFNZCxPQUFPZSxZQUFZO1FBRS9CLElBQUlELEtBQUs7WUFDUCxJQUFNRSxJQUFJQyxTQUFTQyxXQUFXO1lBQzlCRixFQUFFRyxVQUFVLENBQUNOO1lBQ2JDLElBQUlNLGVBQWU7WUFDbkJOLElBQUlPLFFBQVEsQ0FBQ0w7WUFDYkMsU0FBU0ssV0FBVyxDQUFDO1lBQ3JCUixJQUFJTSxlQUFlO1FBQ3JCLENBQUM7SUFDSDtBQUNGLENBQUM7QUFFRCxTQUFTRyxlQUFlO0lBQ3RCLElBQU1DLGNBQWNQLFNBQVNRLGFBQWEsQ0FBQztJQUMzQyxJQUFNQyxXQUFXMUIsT0FBT1UsaUJBQWlCO0lBQ3pDYyxZQUFZRyxJQUFJLEdBQUdEO0lBQ25CVCxTQUFTVyxJQUFJLENBQUNDLFdBQVcsQ0FBQ0w7SUFDMUJNLHFCQUF1QkEsR0FBR0o7QUFDNUI7QUFFQTs7O0NBR0MsR0FDRCxTQUFTSyxjQUFjckMsTUFBaUIsRUFBRTtJQUN4Q2lCO0lBQ0FsQixXQUFXQztJQUNYNkI7SUFDQSxPQUFPUyxRQUFRQyxPQUFPLENBQUNDLHFCQUF3QkEsQ0FBQyxZQUFZQyxJQUFJLGVBQUMsK0JBQVk7Z0NBQ25FQyw2QkFBaUJDLFNBQ2pCQzs7Ozt5Q0FEb0M1QyxPQUFwQzBDLFlBQUFBLHdGQUFvQzFDLE9BQW5CMkMsU0FBQUEsdUNBQVUsSUFBSTtvQkFDdkI7O3dCQUFNLGlSQUFPOzs7b0JBQXJCQyxNQUFRLGNBQVJBO29CQUNSOzt3QkFBT0EsSUFBSUYsWUFBWUM7Ozs7SUFDekI7QUFDRjtBQUVBckMsT0FBTytCLGFBQWEsR0FBR0EiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL2luZGV4LnRzP2FkYTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAb3Blbm1ycy9lc20tc3R5bGVndWlkZS9kaXN0L29wZW5tcnMtZXNtLXN0eWxlZ3VpZGUuY3NzJztcbmltcG9ydCAnaW1wb3J0LW1hcC1vdmVycmlkZXMnO1xuaW1wb3J0ICdAb3Blbm1ycy9lc20tZnJhbWV3b3JrJztcbmltcG9ydCB0eXBlIHsgU3BhQ29uZmlnIH0gZnJvbSAnQG9wZW5tcnMvZXNtLWZyYW1ld29yay9zcmMvaW50ZXJuYWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBQYXRocyhjb25maWc6IFNwYUNvbmZpZykge1xuICBsZXQgZXJyb3IgPSBmYWxzZTtcbiAgaWYgKCFjb25maWcuYXBpVXJsKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgICdpbml0aWFsaXplU3BhKCkgd2FzIGNhbGxlZCB3aXRob3V0IHN1cHBseWluZyBhbiBhcGlVcmwuIFRoaXMgbWVhbnMgdGhhdCB0aGUgYXBwbGljYXRpb24gY2Fubm90IGNvbW11bmljYXRlIHdpdGggdGhlIGJhY2tlbmQuJyxcbiAgICApO1xuICAgIGVycm9yID0gdHJ1ZTtcbiAgfVxuXG4gIGlmICghY29uZmlnLnNwYVBhdGgpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgJ2luaXRpYWxpemVTcGEoKSB3YXMgY2FsbGVkIHdpdGhvdXQgc3VwcGx5aW5nIGEgc3BhUGF0aC4gVGhpcyBtZWFucyB0aGF0IHRoZSBhcHBsaWNhdGlvbiBjYW5ub3QgcHJvcGVybHkgZ2VuZXJhdGUgdXJscy4nLFxuICAgICk7XG4gICAgZXJyb3IgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ09uZSBvciBtb3JlIHJlcXVpcmVkIHByb3BlcnRpZXMgaW4gdGhlIGJhc2ljIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGFwcGxpY2F0aW9uIHdhcyBtaXNzaW5nIGFuZCB0aGUgYXBwbGljYXRpb24gY2Fubm90IGJlIHJlbmRlcmVkLiBQbGVhc2Ugc2VlIHRoZSBicm93c2VyIGNvbnNvbGUgZm9yIGRldGFpbHMuJyxcbiAgICApO1xuICB9XG5cbiAgd2luZG93Lm9wZW5tcnNCYXNlID0gY29uZmlnLmFwaVVybDtcbiAgd2luZG93LnNwYUJhc2UgPSBjb25maWcuc3BhUGF0aDtcbiAgd2luZG93LnNwYUVudiA9IGNvbmZpZy5lbnYgfHwgJ3Byb2R1Y3Rpb24nO1xuICB3aW5kb3cuc3BhVmVyc2lvbiA9IHByb2Nlc3MuZW52LkJVSUxEX1ZFUlNJT047XG4gIGNvbnN0IHNwYUJhc2VXaXRoU2xhc2ggPSB3aW5kb3cuc3BhQmFzZS5lbmRzV2l0aCgnLycpID8gd2luZG93LnNwYUJhc2UgOiB3aW5kb3cuc3BhQmFzZSArICcvJztcbiAgd2luZG93LmdldE9wZW5tcnNTcGFCYXNlID0gKCkgPT4gc3BhQmFzZVdpdGhTbGFzaDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwVXRpbHMoKSB7XG4gIHdpbmRvdy5jb3B5VGV4dCA9IChzb3VyY2U6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgY29uc3Qgc2VsID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xuXG4gICAgaWYgKHNlbCkge1xuICAgICAgY29uc3QgciA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICByLnNlbGVjdE5vZGUoc291cmNlKTtcbiAgICAgIHNlbC5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgIHNlbC5hZGRSYW5nZShyKTtcbiAgICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdjb3B5Jyk7XG4gICAgICBzZWwucmVtb3ZlQWxsUmFuZ2VzKCk7XG4gICAgfVxuICB9O1xufVxuXG5mdW5jdGlvbiB3aXJlU3BhUGF0aHMoKSB7XG4gIGNvbnN0IGJhc2VFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYmFzZScpO1xuICBjb25zdCBiYXNlSHJlZiA9IHdpbmRvdy5nZXRPcGVubXJzU3BhQmFzZSgpO1xuICBiYXNlRWxlbWVudC5ocmVmID0gYmFzZUhyZWY7XG4gIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYmFzZUVsZW1lbnQpO1xuICBfX3dlYnBhY2tfcHVibGljX3BhdGhfXyA9IGJhc2VIcmVmO1xufVxuXG4vKipcbiAqIEluaXRpYWxpemVzIHRoZSBPcGVuTVJTIEZyb250ZW5kIEFwcCBTaGVsbC5cbiAqIEBwYXJhbSBjb25maWcgVGhlIGdsb2JhbCBjb25maWd1cmF0aW9uIHRvIGFwcGx5LlxuICovXG5mdW5jdGlvbiBpbml0aWFsaXplU3BhKGNvbmZpZzogU3BhQ29uZmlnKSB7XG4gIHNldHVwVXRpbHMoKTtcbiAgc2V0dXBQYXRocyhjb25maWcpO1xuICB3aXJlU3BhUGF0aHMoKTtcbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShfX3dlYnBhY2tfaW5pdF9zaGFyaW5nX18oJ2RlZmF1bHQnKSkudGhlbihhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgeyBjb25maWdVcmxzID0gW10sIG9mZmxpbmUgPSB0cnVlIH0gPSBjb25maWc7XG4gICAgY29uc3QgeyBydW4gfSA9IGF3YWl0IGltcG9ydCgnLi9ydW4nKTtcbiAgICByZXR1cm4gcnVuKGNvbmZpZ1VybHMsIG9mZmxpbmUpO1xuICB9KTtcbn1cblxud2luZG93LmluaXRpYWxpemVTcGEgPSBpbml0aWFsaXplU3BhO1xuIl0sIm5hbWVzIjpbInNldHVwUGF0aHMiLCJjb25maWciLCJlcnJvciIsImFwaVVybCIsImNvbnNvbGUiLCJzcGFQYXRoIiwiRXJyb3IiLCJ3aW5kb3ciLCJvcGVubXJzQmFzZSIsInNwYUJhc2UiLCJzcGFFbnYiLCJlbnYiLCJzcGFWZXJzaW9uIiwicHJvY2VzcyIsIkJVSUxEX1ZFUlNJT04iLCJzcGFCYXNlV2l0aFNsYXNoIiwiZW5kc1dpdGgiLCJnZXRPcGVubXJzU3BhQmFzZSIsInNldHVwVXRpbHMiLCJjb3B5VGV4dCIsInNvdXJjZSIsInNlbCIsImdldFNlbGVjdGlvbiIsInIiLCJkb2N1bWVudCIsImNyZWF0ZVJhbmdlIiwic2VsZWN0Tm9kZSIsInJlbW92ZUFsbFJhbmdlcyIsImFkZFJhbmdlIiwiZXhlY0NvbW1hbmQiLCJ3aXJlU3BhUGF0aHMiLCJiYXNlRWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJiYXNlSHJlZiIsImhyZWYiLCJoZWFkIiwiYXBwZW5kQ2hpbGQiLCJfX3dlYnBhY2tfcHVibGljX3BhdGhfXyIsImluaXRpYWxpemVTcGEiLCJQcm9taXNlIiwicmVzb2x2ZSIsIl9fd2VicGFja19pbml0X3NoYXJpbmdfXyIsInRoZW4iLCJjb25maWdVcmxzIiwib2ZmbGluZSIsInJ1biJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/index.ts\n");
8309
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ setupPaths: () => (/* binding */ setupPaths),\n/* harmony export */ setupUtils: () => (/* binding */ setupUtils)\n/* harmony export */ });\n/* harmony import */ var _openmrs_esm_styleguide_dist_openmrs_esm_styleguide_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openmrs/esm-styleguide/dist/openmrs-esm-styleguide.css */ \"../../framework/esm-styleguide/dist/openmrs-esm-styleguide.css\");\n/* harmony import */ var import_map_overrides__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! import-map-overrides */ \"../../../node_modules/import-map-overrides/dist/import-map-overrides.js\");\n/* harmony import */ var _openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @openmrs/esm-framework */ \"webpack/sharing/consume/default/@openmrs/esm-framework/@openmrs/esm-framework\");\n/* harmony import */ var _openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_openmrs_esm_framework__WEBPACK_IMPORTED_MODULE_2__);\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\nfunction setupPaths(config) {\n var error = false;\n if (!config.apiUrl) {\n console.error(\"initializeSpa() was called without supplying an apiUrl. This means that the application cannot communicate with the backend.\");\n error = true;\n }\n if (!config.spaPath) {\n console.error(\"initializeSpa() was called without supplying a spaPath. This means that the application cannot properly generate urls.\");\n error = true;\n }\n if (error) {\n throw new Error(\"One or more required properties in the basic configuration of the application was missing and the application cannot be rendered. Please see the browser console for details.\");\n }\n window.openmrsBase = config.apiUrl;\n window.spaBase = config.spaPath;\n window.spaEnv = config.env || \"production\";\n window.spaVersion = \"5.4.1-pre.1616-20240306\";\n var spaBaseWithSlash = window.spaBase.endsWith(\"/\") ? window.spaBase : window.spaBase + \"/\";\n window.getOpenmrsSpaBase = function() {\n return spaBaseWithSlash;\n };\n}\nfunction setupUtils() {\n window.copyText = function(source) {\n var sel = window.getSelection();\n if (sel) {\n var r = document.createRange();\n r.selectNode(source);\n sel.removeAllRanges();\n sel.addRange(r);\n document.execCommand(\"copy\");\n sel.removeAllRanges();\n }\n };\n}\nfunction wireSpaPaths() {\n var baseElement = document.createElement(\"base\");\n var baseHref = window.getOpenmrsSpaBase();\n baseElement.href = baseHref;\n document.head.appendChild(baseElement);\n __webpack_require__.p = baseHref;\n}\n/**\n * Initializes the OpenMRS Frontend App Shell.\n * @param config The global configuration to apply.\n */ function initializeSpa(config) {\n setupUtils();\n setupPaths(config);\n wireSpaPaths();\n return Promise.resolve(__webpack_require__.I(\"default\")).then(/*#__PURE__*/ _async_to_generator(function() {\n var _config_configUrls, configUrls, _config_offline, offline, run;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n _config_configUrls = config.configUrls, configUrls = _config_configUrls === void 0 ? [] : _config_configUrls, _config_offline = config.offline, offline = _config_offline === void 0 ? true : _config_offline;\n return [\n 4,\n Promise.all(/*! import() */[__webpack_require__.e(\"vendors-node_modules_i18next-browser-languagedetector_dist_esm_i18nextBrowserLanguageDetector-bec0ef\"), __webpack_require__.e(\"src_run_ts\")]).then(__webpack_require__.bind(__webpack_require__, /*! ./run */ \"./src/run.ts\"))\n ];\n case 1:\n run = _state.sent().run;\n return [\n 2,\n run(configUrls, offline)\n ];\n }\n });\n }));\n}\nwindow.initializeSpa = initializeSpa;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaW5kZXgudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFpRTtBQUNuQztBQUNFO0FBR3pCLFNBQVNBLFdBQVdDLE1BQWlCLEVBQUU7SUFDNUMsSUFBSUMsUUFBUSxLQUFLO0lBQ2pCLElBQUksQ0FBQ0QsT0FBT0UsTUFBTSxFQUFFO1FBQ2xCQyxRQUFRRixLQUFLLENBQ1g7UUFFRkEsUUFBUSxJQUFJO0lBQ2QsQ0FBQztJQUVELElBQUksQ0FBQ0QsT0FBT0ksT0FBTyxFQUFFO1FBQ25CRCxRQUFRRixLQUFLLENBQ1g7UUFFRkEsUUFBUSxJQUFJO0lBQ2QsQ0FBQztJQUVELElBQUlBLE9BQU87UUFDVCxNQUFNLElBQUlJLE1BQ1IsaUxBQ0E7SUFDSixDQUFDO0lBRURDLE9BQU9DLFdBQVcsR0FBR1AsT0FBT0UsTUFBTTtJQUNsQ0ksT0FBT0UsT0FBTyxHQUFHUixPQUFPSSxPQUFPO0lBQy9CRSxPQUFPRyxNQUFNLEdBQUdULE9BQU9VLEdBQUcsSUFBSTtJQUM5QkosT0FBT0ssVUFBVSxHQUFHQyx5QkFBeUI7SUFDN0MsSUFBTUUsbUJBQW1CUixPQUFPRSxPQUFPLENBQUNPLFFBQVEsQ0FBQyxPQUFPVCxPQUFPRSxPQUFPLEdBQUdGLE9BQU9FLE9BQU8sR0FBRyxHQUFHO0lBQzdGRixPQUFPVSxpQkFBaUIsR0FBRztlQUFNRjs7QUFDbkMsQ0FBQztBQUVNLFNBQVNHLGFBQWE7SUFDM0JYLE9BQU9ZLFFBQVEsR0FBRyxTQUFDQyxRQUF3QjtRQUN6QyxJQUFNQyxNQUFNZCxPQUFPZSxZQUFZO1FBRS9CLElBQUlELEtBQUs7WUFDUCxJQUFNRSxJQUFJQyxTQUFTQyxXQUFXO1lBQzlCRixFQUFFRyxVQUFVLENBQUNOO1lBQ2JDLElBQUlNLGVBQWU7WUFDbkJOLElBQUlPLFFBQVEsQ0FBQ0w7WUFDYkMsU0FBU0ssV0FBVyxDQUFDO1lBQ3JCUixJQUFJTSxlQUFlO1FBQ3JCLENBQUM7SUFDSDtBQUNGLENBQUM7QUFFRCxTQUFTRyxlQUFlO0lBQ3RCLElBQU1DLGNBQWNQLFNBQVNRLGFBQWEsQ0FBQztJQUMzQyxJQUFNQyxXQUFXMUIsT0FBT1UsaUJBQWlCO0lBQ3pDYyxZQUFZRyxJQUFJLEdBQUdEO0lBQ25CVCxTQUFTVyxJQUFJLENBQUNDLFdBQVcsQ0FBQ0w7SUFDMUJNLHFCQUF1QkEsR0FBR0o7QUFDNUI7QUFFQTs7O0NBR0MsR0FDRCxTQUFTSyxjQUFjckMsTUFBaUIsRUFBRTtJQUN4Q2lCO0lBQ0FsQixXQUFXQztJQUNYNkI7SUFDQSxPQUFPUyxRQUFRQyxPQUFPLENBQUNDLHFCQUF3QkEsQ0FBQyxZQUFZQyxJQUFJLGVBQUMsK0JBQVk7Z0NBQ25FQyw2QkFBaUJDLFNBQ2pCQzs7Ozt5Q0FEb0M1QyxPQUFwQzBDLFlBQUFBLHdGQUFvQzFDLE9BQW5CMkMsU0FBQUEsdUNBQVUsSUFBSTtvQkFDdkI7O3dCQUFNLGlSQUFPOzs7b0JBQXJCQyxNQUFRLGNBQVJBO29CQUNSOzt3QkFBT0EsSUFBSUYsWUFBWUM7Ozs7SUFDekI7QUFDRjtBQUVBckMsT0FBTytCLGFBQWEsR0FBR0EiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4vc3JjL2luZGV4LnRzP2FkYTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAb3Blbm1ycy9lc20tc3R5bGVndWlkZS9kaXN0L29wZW5tcnMtZXNtLXN0eWxlZ3VpZGUuY3NzJztcbmltcG9ydCAnaW1wb3J0LW1hcC1vdmVycmlkZXMnO1xuaW1wb3J0ICdAb3Blbm1ycy9lc20tZnJhbWV3b3JrJztcbmltcG9ydCB0eXBlIHsgU3BhQ29uZmlnIH0gZnJvbSAnQG9wZW5tcnMvZXNtLWZyYW1ld29yay9zcmMvaW50ZXJuYWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBQYXRocyhjb25maWc6IFNwYUNvbmZpZykge1xuICBsZXQgZXJyb3IgPSBmYWxzZTtcbiAgaWYgKCFjb25maWcuYXBpVXJsKSB7XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgICdpbml0aWFsaXplU3BhKCkgd2FzIGNhbGxlZCB3aXRob3V0IHN1cHBseWluZyBhbiBhcGlVcmwuIFRoaXMgbWVhbnMgdGhhdCB0aGUgYXBwbGljYXRpb24gY2Fubm90IGNvbW11bmljYXRlIHdpdGggdGhlIGJhY2tlbmQuJyxcbiAgICApO1xuICAgIGVycm9yID0gdHJ1ZTtcbiAgfVxuXG4gIGlmICghY29uZmlnLnNwYVBhdGgpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgJ2luaXRpYWxpemVTcGEoKSB3YXMgY2FsbGVkIHdpdGhvdXQgc3VwcGx5aW5nIGEgc3BhUGF0aC4gVGhpcyBtZWFucyB0aGF0IHRoZSBhcHBsaWNhdGlvbiBjYW5ub3QgcHJvcGVybHkgZ2VuZXJhdGUgdXJscy4nLFxuICAgICk7XG4gICAgZXJyb3IgPSB0cnVlO1xuICB9XG5cbiAgaWYgKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ09uZSBvciBtb3JlIHJlcXVpcmVkIHByb3BlcnRpZXMgaW4gdGhlIGJhc2ljIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGFwcGxpY2F0aW9uIHdhcyBtaXNzaW5nIGFuZCB0aGUgYXBwbGljYXRpb24gY2Fubm90IGJlIHJlbmRlcmVkLiBQbGVhc2Ugc2VlIHRoZSBicm93c2VyIGNvbnNvbGUgZm9yIGRldGFpbHMuJyxcbiAgICApO1xuICB9XG5cbiAgd2luZG93Lm9wZW5tcnNCYXNlID0gY29uZmlnLmFwaVVybDtcbiAgd2luZG93LnNwYUJhc2UgPSBjb25maWcuc3BhUGF0aDtcbiAgd2luZG93LnNwYUVudiA9IGNvbmZpZy5lbnYgfHwgJ3Byb2R1Y3Rpb24nO1xuICB3aW5kb3cuc3BhVmVyc2lvbiA9IHByb2Nlc3MuZW52LkJVSUxEX1ZFUlNJT047XG4gIGNvbnN0IHNwYUJhc2VXaXRoU2xhc2ggPSB3aW5kb3cuc3BhQmFzZS5lbmRzV2l0aCgnLycpID8gd2luZG93LnNwYUJhc2UgOiB3aW5kb3cuc3BhQmFzZSArICcvJztcbiAgd2luZG93LmdldE9wZW5tcnNTcGFCYXNlID0gKCkgPT4gc3BhQmFzZVdpdGhTbGFzaDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwVXRpbHMoKSB7XG4gIHdpbmRvdy5jb3B5VGV4dCA9IChzb3VyY2U6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgY29uc3Qgc2VsID0gd2luZG93LmdldFNlbGVjdGlvbigpO1xuXG4gICAgaWYgKHNlbCkge1xuICAgICAgY29uc3QgciA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICByLnNlbGVjdE5vZGUoc291cmNlKTtcbiAgICAgIHNlbC5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgIHNlbC5hZGRSYW5nZShyKTtcbiAgICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdjb3B5Jyk7XG4gICAgICBzZWwucmVtb3ZlQWxsUmFuZ2VzKCk7XG4gICAgfVxuICB9O1xufVxuXG5mdW5jdGlvbiB3aXJlU3BhUGF0aHMoKSB7XG4gIGNvbnN0IGJhc2VFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYmFzZScpO1xuICBjb25zdCBiYXNlSHJlZiA9IHdpbmRvdy5nZXRPcGVubXJzU3BhQmFzZSgpO1xuICBiYXNlRWxlbWVudC5ocmVmID0gYmFzZUhyZWY7XG4gIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYmFzZUVsZW1lbnQpO1xuICBfX3dlYnBhY2tfcHVibGljX3BhdGhfXyA9IGJhc2VIcmVmO1xufVxuXG4vKipcbiAqIEluaXRpYWxpemVzIHRoZSBPcGVuTVJTIEZyb250ZW5kIEFwcCBTaGVsbC5cbiAqIEBwYXJhbSBjb25maWcgVGhlIGdsb2JhbCBjb25maWd1cmF0aW9uIHRvIGFwcGx5LlxuICovXG5mdW5jdGlvbiBpbml0aWFsaXplU3BhKGNvbmZpZzogU3BhQ29uZmlnKSB7XG4gIHNldHVwVXRpbHMoKTtcbiAgc2V0dXBQYXRocyhjb25maWcpO1xuICB3aXJlU3BhUGF0aHMoKTtcbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShfX3dlYnBhY2tfaW5pdF9zaGFyaW5nX18oJ2RlZmF1bHQnKSkudGhlbihhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgeyBjb25maWdVcmxzID0gW10sIG9mZmxpbmUgPSB0cnVlIH0gPSBjb25maWc7XG4gICAgY29uc3QgeyBydW4gfSA9IGF3YWl0IGltcG9ydCgnLi9ydW4nKTtcbiAgICByZXR1cm4gcnVuKGNvbmZpZ1VybHMsIG9mZmxpbmUpO1xuICB9KTtcbn1cblxud2luZG93LmluaXRpYWxpemVTcGEgPSBpbml0aWFsaXplU3BhO1xuIl0sIm5hbWVzIjpbInNldHVwUGF0aHMiLCJjb25maWciLCJlcnJvciIsImFwaVVybCIsImNvbnNvbGUiLCJzcGFQYXRoIiwiRXJyb3IiLCJ3aW5kb3ciLCJvcGVubXJzQmFzZSIsInNwYUJhc2UiLCJzcGFFbnYiLCJlbnYiLCJzcGFWZXJzaW9uIiwicHJvY2VzcyIsIkJVSUxEX1ZFUlNJT04iLCJzcGFCYXNlV2l0aFNsYXNoIiwiZW5kc1dpdGgiLCJnZXRPcGVubXJzU3BhQmFzZSIsInNldHVwVXRpbHMiLCJjb3B5VGV4dCIsInNvdXJjZSIsInNlbCIsImdldFNlbGVjdGlvbiIsInIiLCJkb2N1bWVudCIsImNyZWF0ZVJhbmdlIiwic2VsZWN0Tm9kZSIsInJlbW92ZUFsbFJhbmdlcyIsImFkZFJhbmdlIiwiZXhlY0NvbW1hbmQiLCJ3aXJlU3BhUGF0aHMiLCJiYXNlRWxlbWVudCIsImNyZWF0ZUVsZW1lbnQiLCJiYXNlSHJlZiIsImhyZWYiLCJoZWFkIiwiYXBwZW5kQ2hpbGQiLCJfX3dlYnBhY2tfcHVibGljX3BhdGhfXyIsImluaXRpYWxpemVTcGEiLCJQcm9taXNlIiwicmVzb2x2ZSIsIl9fd2VicGFja19pbml0X3NoYXJpbmdfXyIsInRoZW4iLCJjb25maWdVcmxzIiwib2ZmbGluZSIsInJ1biJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/index.ts\n");
8310
8310
 
8311
8311
  /***/ }),
8312
8312
 
@@ -12817,8 +12817,8 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
12817
12817
  /******/ var promises = [];
12818
12818
  /******/ switch(name) {
12819
12819
  /******/ case "default": {
12820
- /******/ register("@openmrs/esm-framework/src/internal", "5.4.1-pre.1608", () => (() => (__webpack_require__(/*! ../../framework/esm-framework/src/internal.ts */ "../../framework/esm-framework/src/internal.ts"))), 1);
12821
- /******/ register("@openmrs/esm-framework", "5.4.1-pre.1608", () => (() => (__webpack_require__(/*! ../../framework/esm-framework/src/index.ts */ "../../framework/esm-framework/src/index.ts"))), 1);
12820
+ /******/ register("@openmrs/esm-framework/src/internal", "5.4.1-pre.1616", () => (() => (__webpack_require__(/*! ../../framework/esm-framework/src/internal.ts */ "../../framework/esm-framework/src/internal.ts"))), 1);
12821
+ /******/ register("@openmrs/esm-framework", "5.4.1-pre.1616", () => (() => (__webpack_require__(/*! ../../framework/esm-framework/src/index.ts */ "../../framework/esm-framework/src/index.ts"))), 1);
12822
12822
  /******/ register("dayjs", "1.11.5", () => (() => (__webpack_require__(/*! ../../../node_modules/dayjs/dayjs.min.js */ "../../../node_modules/dayjs/dayjs.min.js"))), 1);
12823
12823
  /******/ register("i18next", "21.10.0", () => (() => (__webpack_require__(/*! ../../../node_modules/i18next/dist/esm/i18next.js */ "../../../node_modules/i18next/dist/esm/i18next.js"))), 1);
12824
12824
  /******/ register("react-dom", "18.2.0", () => (() => (__webpack_require__(/*! ../../../node_modules/react-dom/index.js */ "../../../node_modules/react-dom/index.js"))), 1);