@kenyaemr/esm-admin-app 5.4.4-pre.45 → 5.4.4-pre.452

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 (539) hide show
  1. package/.turbo/turbo-build.log +5 -5
  2. package/dist/1102.js +1 -0
  3. package/dist/{7988.js.map → 1102.js.map} +1 -1
  4. package/dist/1278.js +1 -0
  5. package/dist/1278.js.map +1 -0
  6. package/dist/1442.js +1 -0
  7. package/dist/1442.js.map +1 -0
  8. package/dist/15.js +1 -0
  9. package/dist/15.js.map +1 -0
  10. package/dist/162.js +1 -0
  11. package/dist/162.js.map +1 -0
  12. package/dist/1620.js +1 -0
  13. package/dist/1620.js.map +1 -0
  14. package/dist/1789.js +1 -0
  15. package/dist/1789.js.map +1 -0
  16. package/dist/1831.js +1 -0
  17. package/dist/1831.js.map +1 -0
  18. package/dist/1844.js +1 -0
  19. package/dist/1844.js.map +1 -0
  20. package/dist/1854.js +1 -0
  21. package/dist/1854.js.map +1 -0
  22. package/dist/1919.js +1 -0
  23. package/dist/1919.js.map +1 -0
  24. package/dist/193.js +1 -0
  25. package/dist/193.js.map +1 -0
  26. package/dist/1946.js +1 -0
  27. package/dist/1946.js.map +1 -0
  28. package/dist/2007.js +1 -1
  29. package/dist/2007.js.map +1 -1
  30. package/dist/2043.js +1 -0
  31. package/dist/2043.js.map +1 -0
  32. package/dist/2127.js +1 -0
  33. package/dist/2127.js.map +1 -0
  34. package/dist/2146.js +1 -0
  35. package/dist/2146.js.map +1 -0
  36. package/dist/2152.js +1 -0
  37. package/dist/2152.js.map +1 -0
  38. package/dist/2202.js +1 -0
  39. package/dist/2202.js.map +1 -0
  40. package/dist/2258.js +1 -0
  41. package/dist/2258.js.map +1 -0
  42. package/dist/2394.js +1 -0
  43. package/dist/2394.js.map +1 -0
  44. package/dist/2468.js +1 -0
  45. package/dist/2468.js.map +1 -0
  46. package/dist/2534.js +1 -1
  47. package/dist/2534.js.map +1 -1
  48. package/dist/2556.js +1 -0
  49. package/dist/2556.js.map +1 -0
  50. package/dist/26.js +1 -0
  51. package/dist/26.js.map +1 -0
  52. package/dist/2638.js +1 -0
  53. package/dist/2638.js.map +1 -0
  54. package/dist/2648.js +1 -0
  55. package/dist/2648.js.map +1 -0
  56. package/dist/2709.js +1 -0
  57. package/dist/2709.js.map +1 -0
  58. package/dist/2823.js +1 -0
  59. package/dist/2823.js.map +1 -0
  60. package/dist/2840.js +1 -0
  61. package/dist/2840.js.map +1 -0
  62. package/dist/2842.js +1 -0
  63. package/dist/2842.js.map +1 -0
  64. package/dist/2916.js +1 -0
  65. package/dist/2916.js.map +1 -0
  66. package/dist/2924.js +1 -0
  67. package/dist/2924.js.map +1 -0
  68. package/dist/3137.js +1 -0
  69. package/dist/3137.js.map +1 -0
  70. package/dist/3248.js +1 -1
  71. package/dist/3248.js.map +1 -1
  72. package/dist/3282.js +1 -0
  73. package/dist/3282.js.map +1 -0
  74. package/dist/3285.js +1 -0
  75. package/dist/3285.js.map +1 -0
  76. package/dist/3302.js +1 -0
  77. package/dist/3302.js.map +1 -0
  78. package/dist/3335.js +1 -0
  79. package/dist/3335.js.map +1 -0
  80. package/dist/3378.js +1 -0
  81. package/dist/3378.js.map +1 -0
  82. package/dist/3504.js +1 -0
  83. package/dist/3504.js.map +1 -0
  84. package/dist/356.js +1 -0
  85. package/dist/356.js.map +1 -0
  86. package/dist/3569.js +1 -0
  87. package/dist/3569.js.map +1 -0
  88. package/dist/3580.js +1 -0
  89. package/dist/3580.js.map +1 -0
  90. package/dist/3690.js +1 -0
  91. package/dist/3690.js.map +1 -0
  92. package/dist/3723.js +1 -0
  93. package/dist/3723.js.map +1 -0
  94. package/dist/3745.js +1 -0
  95. package/dist/3745.js.map +1 -0
  96. package/dist/3796.js +1 -0
  97. package/dist/3796.js.map +1 -0
  98. package/dist/3813.js +1 -0
  99. package/dist/3813.js.map +1 -0
  100. package/dist/393.js +6 -0
  101. package/dist/393.js.map +1 -0
  102. package/dist/3953.js +1 -0
  103. package/dist/3953.js.map +1 -0
  104. package/dist/3989.js +1 -0
  105. package/dist/3989.js.map +1 -0
  106. package/dist/4124.js +1 -0
  107. package/dist/4124.js.map +1 -0
  108. package/dist/4163.js +1 -0
  109. package/dist/4163.js.map +1 -0
  110. package/dist/4178.js +1 -1
  111. package/dist/4178.js.map +1 -1
  112. package/dist/4308.js +1 -1
  113. package/dist/4308.js.map +1 -1
  114. package/dist/4487.js +11 -0
  115. package/dist/4487.js.map +1 -0
  116. package/dist/4588.js +1 -0
  117. package/dist/4588.js.map +1 -0
  118. package/dist/4637.js +1 -1
  119. package/dist/4637.js.map +1 -1
  120. package/dist/466.js +1 -1
  121. package/dist/466.js.map +1 -1
  122. package/dist/4711.js +1 -0
  123. package/dist/4711.js.map +1 -0
  124. package/dist/4759.js +1 -0
  125. package/dist/4759.js.map +1 -0
  126. package/dist/4817.js +1 -0
  127. package/dist/4817.js.map +1 -0
  128. package/dist/4818.js +1 -0
  129. package/dist/4818.js.map +1 -0
  130. package/dist/4902.js +1 -0
  131. package/dist/4902.js.map +1 -0
  132. package/dist/4973.js +1 -0
  133. package/dist/4973.js.map +1 -0
  134. package/dist/500.js +1 -0
  135. package/dist/500.js.map +1 -0
  136. package/dist/5086.js +1 -1
  137. package/dist/5086.js.map +1 -1
  138. package/dist/5117.js +1 -0
  139. package/dist/5117.js.map +1 -0
  140. package/dist/5203.js +1 -0
  141. package/dist/5203.js.map +1 -0
  142. package/dist/5361.js +1 -1
  143. package/dist/5361.js.map +1 -1
  144. package/dist/5362.js +1 -0
  145. package/dist/5362.js.map +1 -0
  146. package/dist/5366.js +1 -0
  147. package/dist/5366.js.map +1 -0
  148. package/dist/5536.js +1 -0
  149. package/dist/5536.js.map +1 -0
  150. package/dist/5567.js +1 -0
  151. package/dist/5567.js.map +1 -0
  152. package/dist/5598.js +1 -0
  153. package/dist/5598.js.map +1 -0
  154. package/dist/5676.js +1 -1
  155. package/dist/5676.js.map +1 -1
  156. package/dist/5693.js +1 -0
  157. package/dist/5693.js.map +1 -0
  158. package/dist/5731.js +5 -0
  159. package/dist/5731.js.map +1 -0
  160. package/dist/5767.js +1 -0
  161. package/dist/5767.js.map +1 -0
  162. package/dist/5809.js +1 -1
  163. package/dist/5809.js.map +1 -1
  164. package/dist/5825.js +1 -0
  165. package/dist/5825.js.map +1 -0
  166. package/dist/5932.js +1 -0
  167. package/dist/5932.js.map +1 -0
  168. package/dist/5941.js +1 -0
  169. package/dist/5941.js.map +1 -0
  170. package/dist/6104.js +1 -1
  171. package/dist/6104.js.map +1 -1
  172. package/dist/6273.js +1 -0
  173. package/dist/6273.js.map +1 -0
  174. package/dist/6337.js +1 -0
  175. package/dist/6337.js.map +1 -0
  176. package/dist/6355.js +1 -0
  177. package/dist/{2797.js.map → 6355.js.map} +1 -1
  178. package/dist/6357.js +1 -0
  179. package/dist/6357.js.map +1 -0
  180. package/dist/6427.js +1 -1
  181. package/dist/6427.js.map +1 -1
  182. package/dist/6478.js +7 -0
  183. package/dist/6478.js.map +1 -0
  184. package/dist/6508.js +1 -0
  185. package/dist/6508.js.map +1 -0
  186. package/dist/6567.js +1 -0
  187. package/dist/6567.js.map +1 -0
  188. package/dist/6634.js +1 -0
  189. package/dist/6634.js.map +1 -0
  190. package/dist/6698.js +1 -0
  191. package/dist/6698.js.map +1 -0
  192. package/dist/682.js +1 -1
  193. package/dist/682.js.map +1 -1
  194. package/dist/6848.js +1 -0
  195. package/dist/6848.js.map +1 -0
  196. package/dist/689.js +1 -1
  197. package/dist/689.js.map +1 -1
  198. package/dist/6978.js +1 -0
  199. package/dist/6978.js.map +1 -0
  200. package/dist/7085.js +1 -1
  201. package/dist/7085.js.map +1 -1
  202. package/dist/7187.js +1 -0
  203. package/dist/7187.js.map +1 -0
  204. package/dist/7209.js +1 -0
  205. package/dist/7209.js.map +1 -0
  206. package/dist/740.js +1 -0
  207. package/dist/740.js.map +1 -0
  208. package/dist/7419.js +1 -1
  209. package/dist/7419.js.map +1 -1
  210. package/dist/7478.js +1 -1
  211. package/dist/7478.js.map +1 -1
  212. package/dist/7686.js +1 -0
  213. package/dist/7686.js.map +1 -0
  214. package/dist/770.js +1 -0
  215. package/dist/770.js.map +1 -0
  216. package/dist/7782.js +1 -0
  217. package/dist/7782.js.map +1 -0
  218. package/dist/7783.js +1 -0
  219. package/dist/7783.js.map +1 -0
  220. package/dist/7808.js +1 -0
  221. package/dist/7808.js.map +1 -0
  222. package/dist/781.js +1 -1
  223. package/dist/781.js.map +1 -1
  224. package/dist/8183.js +1 -0
  225. package/dist/8183.js.map +1 -0
  226. package/dist/8196.js +1 -1
  227. package/dist/8196.js.map +1 -1
  228. package/dist/820.js +1 -0
  229. package/dist/820.js.map +1 -0
  230. package/dist/8240.js +1 -1
  231. package/dist/8240.js.map +1 -1
  232. package/dist/8267.js +1 -0
  233. package/dist/8267.js.map +1 -0
  234. package/dist/8472.js +1 -0
  235. package/dist/8472.js.map +1 -0
  236. package/dist/8521.js +1 -0
  237. package/dist/8521.js.map +1 -0
  238. package/dist/8602.js +1 -0
  239. package/dist/8602.js.map +1 -0
  240. package/dist/8607.js +1 -0
  241. package/dist/8607.js.map +1 -0
  242. package/dist/8743.js +1 -0
  243. package/dist/8743.js.map +1 -0
  244. package/dist/8762.js +1 -0
  245. package/dist/8762.js.map +1 -0
  246. package/dist/8781.js +1 -0
  247. package/dist/8781.js.map +1 -0
  248. package/dist/8812.js +1 -0
  249. package/dist/8812.js.map +1 -0
  250. package/dist/8952.js +1 -0
  251. package/dist/8952.js.map +1 -0
  252. package/dist/8985.js +1 -0
  253. package/dist/8985.js.map +1 -0
  254. package/dist/8996.js +1 -0
  255. package/dist/8996.js.map +1 -0
  256. package/dist/9011.js +1 -1
  257. package/dist/9011.js.map +1 -1
  258. package/dist/9049.js +1 -0
  259. package/dist/9049.js.map +1 -0
  260. package/dist/9050.js +1 -0
  261. package/dist/9050.js.map +1 -0
  262. package/dist/9061.js +1 -1
  263. package/dist/9061.js.map +1 -1
  264. package/dist/9087.js +1 -0
  265. package/dist/9087.js.map +1 -0
  266. package/dist/9148.js +1 -0
  267. package/dist/9148.js.map +1 -0
  268. package/dist/9168.js +1 -0
  269. package/dist/9168.js.map +1 -0
  270. package/dist/935.js +1 -0
  271. package/dist/935.js.map +1 -0
  272. package/dist/9425.js +1 -1
  273. package/dist/944.js +1 -0
  274. package/dist/944.js.map +1 -0
  275. package/dist/9443.js +1 -0
  276. package/dist/9443.js.map +1 -0
  277. package/dist/9520.js +1 -1
  278. package/dist/9520.js.map +1 -1
  279. package/dist/9547.js +1 -0
  280. package/dist/9547.js.map +1 -0
  281. package/dist/9549.js +1 -0
  282. package/dist/9549.js.map +1 -0
  283. package/dist/9603.js +1 -0
  284. package/dist/9603.js.map +1 -0
  285. package/dist/9612.js +1 -0
  286. package/dist/9612.js.map +1 -0
  287. package/dist/9621.js +1 -0
  288. package/dist/9621.js.map +1 -0
  289. package/dist/9662.js +1 -0
  290. package/dist/9662.js.map +1 -0
  291. package/dist/9771.js +1 -0
  292. package/dist/9771.js.map +1 -0
  293. package/dist/9774.js +1 -0
  294. package/dist/9774.js.map +1 -0
  295. package/dist/9800.js +1 -0
  296. package/dist/9800.js.map +1 -0
  297. package/dist/9806.js +1 -0
  298. package/dist/9806.js.map +1 -0
  299. package/dist/992.js +1 -0
  300. package/dist/992.js.map +1 -0
  301. package/dist/kenyaemr-esm-admin-app.js +6 -5
  302. package/dist/kenyaemr-esm-admin-app.js.buildmanifest.json +1694 -719
  303. package/dist/kenyaemr-esm-admin-app.js.map +1 -1
  304. package/dist/main.js +6 -5
  305. package/dist/main.js.map +1 -1
  306. package/dist/routes.json +1 -1
  307. package/package.json +4 -6
  308. package/src/components/confirm-modal/confirmation-operation.test.tsx +8 -19
  309. package/src/components/dashboard/dashboard.component.tsx +4 -1
  310. package/src/components/empty-state/empty-state-log.test.tsx +3 -4
  311. package/src/components/facility-setup/constant/index.ts +3 -0
  312. package/src/components/facility-setup/facility-info.component.tsx +247 -108
  313. package/src/components/facility-setup/facility-info.scss +136 -55
  314. package/src/components/facility-setup/facility-setup.component.tsx +2 -2
  315. package/src/components/facility-setup/header/header.component.tsx +4 -10
  316. package/src/components/facility-setup/header/header.scss +3 -9
  317. package/src/components/facility-setup/shared/custom-info.component.tsx +9 -0
  318. package/src/components/facility-setup/shared/custom-section-card.component.tsx +10 -0
  319. package/src/components/facility-setup/shared/custom-status-tag.component.tsx +22 -0
  320. package/src/components/facility-setup/type/index.ts +61 -0
  321. package/src/components/facility-setup/useFacilityRegistry.ts +29 -0
  322. package/src/components/global-property/dashboard/global-property-dashboard.component.tsx +23 -0
  323. package/src/components/global-property/dashboard/global-property-dashboard.scss +6 -0
  324. package/src/components/global-property/hooks/useGlobalProperty.ts +64 -0
  325. package/src/components/global-property/hooks/useLogoUpload.ts +28 -0
  326. package/src/components/global-property/index.ts +14 -0
  327. package/src/components/global-property/modal/delete-global-property-modal.component.tsx +71 -0
  328. package/src/components/global-property/modal/delete-global-property-modal.test.tsx +131 -0
  329. package/src/components/global-property/table/global-property-table.component.tsx +241 -0
  330. package/src/components/global-property/table/global-property-table.scss +44 -0
  331. package/src/components/global-property/table/global-property-table.test.tsx +202 -0
  332. package/src/components/global-property/workspace/global-property-form-schema.ts +32 -0
  333. package/src/components/global-property/workspace/global-property.workspace.scss +40 -0
  334. package/src/components/global-property/workspace/global-property.workspace.test.tsx +172 -0
  335. package/src/components/global-property/workspace/global-property.workspace.tsx +260 -0
  336. package/src/components/global-property/workspace/upload-logo.workspace.scss +61 -0
  337. package/src/components/global-property/workspace/upload-logo.workspace.test.tsx +180 -0
  338. package/src/components/global-property/workspace/upload-logo.workspace.tsx +191 -0
  339. package/src/components/hook/healthWorkerRegistry.ts +78 -0
  340. package/src/components/hook/useProfessionalRegistryEnums.ts +59 -0
  341. package/src/components/locations/forms/add-location/add-location.workspace.tsx +96 -95
  342. package/src/components/locations/forms/search-location/search-location.workspace.tsx +90 -85
  343. package/src/components/locations/tables/locations-table.component.tsx +117 -121
  344. package/src/components/logs-table/operation-log-table.component.tsx +87 -75
  345. package/src/components/logs-table/operation-log.test.tsx +134 -28
  346. package/src/components/modal/hwr-confirmation.modal.scss +80 -4
  347. package/src/components/modal/hwr-confirmation.modal.tsx +118 -128
  348. package/src/components/modal/hwr-sync.modal.tsx +194 -106
  349. package/src/components/users/manage-users/manage-user-role-scope/user-role-scope-workspace/user-role-scope.workspace.tsx +14 -14
  350. package/src/components/users/manage-users/user-details/user-detail.scss +167 -39
  351. package/src/components/users/manage-users/user-details/user-details.component.tsx +130 -122
  352. package/src/components/users/manage-users/user-list/user-list.component.tsx +22 -9
  353. package/src/components/users/manage-users/user-management.workspace.scss +233 -95
  354. package/src/components/users/manage-users/user-management.workspace.tsx +800 -687
  355. package/src/components/users/userManagementFormSchema.tsx +17 -8
  356. package/src/config-schema.ts +48 -68
  357. package/src/index.ts +21 -7
  358. package/src/left-pannel-link.component.tsx +5 -3
  359. package/src/root.component.tsx +13 -13
  360. package/src/routes.json +60 -36
  361. package/src/types/index.ts +40 -3
  362. package/translations/am.json +213 -13
  363. package/translations/en.json +225 -25
  364. package/translations/fr.json +260 -58
  365. package/translations/sw.json +329 -129
  366. package/tsconfig.json +1 -1
  367. package/dist/1072.js +0 -1
  368. package/dist/1072.js.map +0 -1
  369. package/dist/1091.js +0 -1
  370. package/dist/1091.js.map +0 -1
  371. package/dist/1172.js +0 -1
  372. package/dist/1172.js.map +0 -1
  373. package/dist/132.js +0 -1
  374. package/dist/132.js.map +0 -1
  375. package/dist/1332.js +0 -1
  376. package/dist/1332.js.map +0 -1
  377. package/dist/1577.js +0 -1
  378. package/dist/1577.js.map +0 -1
  379. package/dist/1660.js +0 -1
  380. package/dist/1660.js.map +0 -1
  381. package/dist/1729.js +0 -17
  382. package/dist/1729.js.map +0 -1
  383. package/dist/1761.js +0 -1
  384. package/dist/1761.js.map +0 -1
  385. package/dist/1809.js +0 -7
  386. package/dist/1809.js.map +0 -1
  387. package/dist/1866.js +0 -1
  388. package/dist/1866.js.map +0 -1
  389. package/dist/1962.js +0 -1
  390. package/dist/1962.js.map +0 -1
  391. package/dist/2045.js +0 -1
  392. package/dist/2045.js.map +0 -1
  393. package/dist/2163.js +0 -1
  394. package/dist/2163.js.map +0 -1
  395. package/dist/2267.js +0 -1
  396. package/dist/2267.js.map +0 -1
  397. package/dist/2357.js +0 -1
  398. package/dist/2357.js.map +0 -1
  399. package/dist/2419.js +0 -1
  400. package/dist/2419.js.map +0 -1
  401. package/dist/2561.js +0 -1
  402. package/dist/2561.js.map +0 -1
  403. package/dist/2564.js +0 -1
  404. package/dist/2564.js.map +0 -1
  405. package/dist/2738.js +0 -1
  406. package/dist/2738.js.map +0 -1
  407. package/dist/2797.js +0 -1
  408. package/dist/2810.js +0 -2
  409. package/dist/2810.js.map +0 -1
  410. package/dist/2867.js +0 -1
  411. package/dist/2867.js.map +0 -1
  412. package/dist/3040.js +0 -1
  413. package/dist/3134.js +0 -1
  414. package/dist/3134.js.map +0 -1
  415. package/dist/3189.js +0 -1
  416. package/dist/3189.js.map +0 -1
  417. package/dist/3228.js +0 -1
  418. package/dist/3228.js.map +0 -1
  419. package/dist/3381.js +0 -1
  420. package/dist/3381.js.map +0 -1
  421. package/dist/3472.js +0 -1
  422. package/dist/3472.js.map +0 -1
  423. package/dist/3491.js +0 -1
  424. package/dist/3491.js.map +0 -1
  425. package/dist/3509.js +0 -1
  426. package/dist/3509.js.map +0 -1
  427. package/dist/3576.js +0 -1
  428. package/dist/3576.js.map +0 -1
  429. package/dist/3968.js +0 -1
  430. package/dist/3968.js.map +0 -1
  431. package/dist/4146.js +0 -1
  432. package/dist/4146.js.map +0 -1
  433. package/dist/4220.js +0 -1
  434. package/dist/4220.js.map +0 -1
  435. package/dist/4224.js +0 -1
  436. package/dist/4224.js.map +0 -1
  437. package/dist/4402.js +0 -1
  438. package/dist/4402.js.map +0 -1
  439. package/dist/4724.js +0 -1
  440. package/dist/4724.js.map +0 -1
  441. package/dist/4972.js +0 -1
  442. package/dist/4972.js.map +0 -1
  443. package/dist/509.js +0 -1
  444. package/dist/509.js.map +0 -1
  445. package/dist/5096.js +0 -1
  446. package/dist/5096.js.map +0 -1
  447. package/dist/5119.js +0 -1
  448. package/dist/5119.js.map +0 -1
  449. package/dist/5136.js +0 -1
  450. package/dist/5136.js.map +0 -1
  451. package/dist/5159.js +0 -13
  452. package/dist/5159.js.map +0 -1
  453. package/dist/5533.js +0 -1
  454. package/dist/5533.js.map +0 -1
  455. package/dist/5870.js +0 -1
  456. package/dist/5870.js.map +0 -1
  457. package/dist/5882.js +0 -1
  458. package/dist/5939.js +0 -5
  459. package/dist/5939.js.map +0 -1
  460. package/dist/6004.js +0 -1
  461. package/dist/6004.js.map +0 -1
  462. package/dist/6121.js +0 -3
  463. package/dist/6121.js.map +0 -1
  464. package/dist/6137.js +0 -1
  465. package/dist/6137.js.map +0 -1
  466. package/dist/6192.js +0 -1
  467. package/dist/6192.js.map +0 -1
  468. package/dist/6232.js +0 -1
  469. package/dist/6232.js.map +0 -1
  470. package/dist/6356.js +0 -1
  471. package/dist/6356.js.map +0 -1
  472. package/dist/6363.js +0 -1
  473. package/dist/6363.js.map +0 -1
  474. package/dist/6548.js +0 -1
  475. package/dist/6548.js.map +0 -1
  476. package/dist/6571.js +0 -1
  477. package/dist/6571.js.map +0 -1
  478. package/dist/6615.js +0 -1
  479. package/dist/6615.js.map +0 -1
  480. package/dist/6721.js +0 -1
  481. package/dist/6721.js.map +0 -1
  482. package/dist/6868.js +0 -1
  483. package/dist/6868.js.map +0 -1
  484. package/dist/6892.js +0 -1
  485. package/dist/6892.js.map +0 -1
  486. package/dist/7127.js +0 -1
  487. package/dist/7329.js +0 -1
  488. package/dist/7329.js.map +0 -1
  489. package/dist/754.js +0 -1
  490. package/dist/754.js.map +0 -1
  491. package/dist/7544.js +0 -1
  492. package/dist/7544.js.map +0 -1
  493. package/dist/7560.js +0 -1
  494. package/dist/7560.js.map +0 -1
  495. package/dist/7988.js +0 -1
  496. package/dist/8179.js +0 -6
  497. package/dist/8179.js.map +0 -1
  498. package/dist/8189.js +0 -1
  499. package/dist/8189.js.map +0 -1
  500. package/dist/8249.js +0 -1
  501. package/dist/8249.js.map +0 -1
  502. package/dist/8502.js +0 -1
  503. package/dist/8502.js.map +0 -1
  504. package/dist/8522.js +0 -1
  505. package/dist/8522.js.map +0 -1
  506. package/dist/8622.js +0 -1
  507. package/dist/8622.js.map +0 -1
  508. package/dist/8775.js +0 -11
  509. package/dist/8775.js.map +0 -1
  510. package/dist/8820.js +0 -1
  511. package/dist/8820.js.map +0 -1
  512. package/dist/887.js +0 -1
  513. package/dist/887.js.map +0 -1
  514. package/dist/8927.js +0 -1
  515. package/dist/8927.js.map +0 -1
  516. package/dist/8977.js +0 -1
  517. package/dist/8977.js.map +0 -1
  518. package/dist/916.js +0 -1
  519. package/dist/9303.js +0 -1
  520. package/dist/9303.js.map +0 -1
  521. package/dist/9466.js +0 -1
  522. package/dist/9466.js.map +0 -1
  523. package/dist/9675.js +0 -1
  524. package/dist/9675.js.map +0 -1
  525. package/dist/9787.js +0 -1
  526. package/dist/9787.js.map +0 -1
  527. package/dist/981.js +0 -1
  528. package/dist/981.js.map +0 -1
  529. package/dist/984.js +0 -1
  530. package/dist/984.js.map +0 -1
  531. package/dist/9931.js +0 -1
  532. package/dist/9931.js.map +0 -1
  533. package/dist/9947.js +0 -1
  534. package/dist/9947.js.map +0 -1
  535. package/jest.config.js +0 -8
  536. package/src/components/facility-setup/card.component.tsx +0 -16
  537. package/src/components/facility-setup/facility-setup.resource.tsx +0 -7
  538. package/src/components/hook/healthWorkerAdapter.ts +0 -213
  539. package/src/components/hook/useFacilityInfo.tsx +0 -37
@@ -1,5 +1,5 @@
1
1
  import { useTranslation } from 'react-i18next';
2
- import { optional, z } from 'zod';
2
+ import { z } from 'zod';
3
3
 
4
4
  const UserManagementFormSchema = (existingUsernames: Array<string>, isEdit?: boolean) => {
5
5
  const { t } = useTranslation();
@@ -13,9 +13,10 @@ const UserManagementFormSchema = (existingUsernames: Array<string>, isEdit?: boo
13
13
  message: t('genderRequired', 'Gender is required'),
14
14
  }),
15
15
  }),
16
+
16
17
  phoneNumber: z.string().optional(),
17
18
  email: z.string().optional(),
18
- providerIdentifiers: z.boolean().optional(),
19
+
19
20
  username: z
20
21
  .string()
21
22
  .nonempty(t('usernameRequired', 'Username is required'))
@@ -25,25 +26,33 @@ const UserManagementFormSchema = (existingUsernames: Array<string>, isEdit?: boo
25
26
  password: z.string().optional(),
26
27
  confirmPassword: z.string().optional(),
27
28
  forcePasswordChange: z.boolean().optional(),
29
+
28
30
  roles: z
29
31
  .array(
30
32
  z.object({
31
- uuid: z.string().min(1, 'UUI is required'),
33
+ uuid: z.string().min(1, 'UUID is required'),
32
34
  display: z.string().min(1, 'Role name is required'),
33
35
  description: z.string().nullable().optional(),
34
36
  }),
35
37
  )
36
38
  .optional(),
37
39
  primaryRole: z.string().optional(),
40
+
41
+ providerIdentifiers: z.boolean().optional(),
42
+ isEditProvider: z.boolean().optional(),
38
43
  systemId: z.string().optional(),
39
- providerLicense: z.string().optional(),
40
- licenseExpiryDate: z.date().optional(),
41
- registrationNumber: z.string().optional(),
42
- qualification: z.string().optional(),
44
+
43
45
  nationalId: z.string().optional(),
44
46
  passportNumber: z.string().optional(),
45
- isEditProvider: z.boolean().optional(),
47
+
46
48
  providerUniqueIdentifier: z.string().optional(),
49
+ providerLicense: z.string().optional(),
50
+ licenseExpiryDate: z.date().optional(),
51
+ licenseBody: z.string().optional(),
52
+ qualification: z.string().optional(),
53
+ specialty: z.string().optional(),
54
+ providerCadre: z.string().optional(),
55
+ practiceType: z.string().optional(),
47
56
  });
48
57
 
49
58
  return { userManagementFormSchema };
@@ -4,7 +4,7 @@ import dayjs from 'dayjs';
4
4
  export const configSchema = {
5
5
  providerNationalIdUuid: {
6
6
  _type: Type.String,
7
- _description: 'UUID for provider national id',
7
+ _description: 'UUID for provider national ID',
8
8
  _default: '3d152c97-2293-4a2b-802e-e0f1009b7b15',
9
9
  },
10
10
  passportNumberUuid: {
@@ -12,21 +12,17 @@ export const configSchema = {
12
12
  _description: 'UUID for passport number identification for provider',
13
13
  _default: '5b4b88e8-9db3-41e6-a175-5e39f2c8a9a5',
14
14
  },
15
- providerHieFhirReference: {
16
- _type: Type.String,
17
- _description: 'UUID for provider hie fhir reference',
18
- _default: '67b94e8e-4d61-4810-b0f1-d86497f6e553',
19
- },
20
- qualificationUuid: {
15
+ providerUniqueIdentifierAttributeTypeUuid: {
21
16
  _type: Type.String,
22
- _description: 'UUID for provider hie qualification',
23
- _default: '43f99413-6e7f-4812-bc60-066bb1d43f94',
17
+ _description: 'UUID for cross-regulator provider unique identifier (PUID)',
18
+ _default: 'dace9d99-9f29-4653-9eae-c05929f34a32',
24
19
  },
25
- licenseBodyUuid: {
20
+ externalProviderIdentifierUuid: {
26
21
  _type: Type.String,
27
- _description: 'UUID for license body',
28
- _default: 'ba18bb97-d17c-4640-80d2-58e7df90ca4c',
22
+ _description: 'UUID for external provider identifier (regulator-public reference)',
23
+ _default: 'bbdf67e8-c020-40ff-8ad6-74ba34893882',
29
24
  },
25
+
30
26
  licenseNumberUuid: {
31
27
  _type: Type.String,
32
28
  _description: 'UUID for license number',
@@ -37,6 +33,31 @@ export const configSchema = {
37
33
  _description: 'UUID for license expiry date',
38
34
  _default: '00539959-a1c7-4848-a5ed-8941e9d5e835',
39
35
  },
36
+ licenseBodyUuid: {
37
+ _type: Type.String,
38
+ _description: 'UUID for licensing body (e.g. KMPDC, NCK, PPB, COC)',
39
+ _default: 'ba18bb97-d17c-4640-80d2-58e7df90ca4c',
40
+ },
41
+ qualificationUuid: {
42
+ _type: Type.String,
43
+ _description: 'UUID for provider educational qualification',
44
+ _default: '43f99413-6e7f-4812-bc60-066bb1d43f94',
45
+ },
46
+ specialtyUuid: {
47
+ _type: Type.String,
48
+ _description: 'UUID for provider clinical specialty',
49
+ _default: '7f5d8e2c-3a1b-4d6e-9c0f-2b4a1d5e8c91',
50
+ },
51
+ providerCadreUuid: {
52
+ _type: Type.String,
53
+ _description: 'UUID for provider professional cadre',
54
+ _default: '8a6e9f3d-4b2c-5e7f-ad10-3c5b2e6f9da2',
55
+ },
56
+ practiceTypeUuid: {
57
+ _type: Type.String,
58
+ _description: 'UUID for provider practice type (clinical, non-clinical, etc.)',
59
+ _default: '9b7faa4e-5c3d-6f80-be21-4d6c3f70aeb3',
60
+ },
40
61
  phoneNumberUuid: {
41
62
  _type: Type.String,
42
63
  _description: 'UUID for provider phone number',
@@ -44,9 +65,14 @@ export const configSchema = {
44
65
  },
45
66
  providerAddressUuid: {
46
67
  _type: Type.String,
47
- _description: 'UUID for provider address',
68
+ _description: 'UUID for provider postal address',
48
69
  _default: '033ff604-ecf7-464f-b623-5b77c733667f',
49
70
  },
71
+ providerHieFhirReference: {
72
+ _type: Type.String,
73
+ _description: 'UUID for provider HIE FHIR reference',
74
+ _default: '67b94e8e-4d61-4810-b0f1-d86497f6e553',
75
+ },
50
76
  personEmailAttributeUuid: {
51
77
  _type: Type.String,
52
78
  _description: 'UUID for person email attribute',
@@ -57,48 +83,6 @@ export const configSchema = {
57
83
  _description: 'UUID for person phone number attribute',
58
84
  _default: 'b2c38640-2603-4629-aebd-3b54f33f1e3a',
59
85
  },
60
- providerUniqueIdentifierAttributeTypeUuid: {
61
- _type: Type.String,
62
- _description: 'UUID for provider unique identifier attribute type',
63
- _default: 'dace9d99-9f29-4653-9eae-c05929f34a32',
64
- },
65
- identifierTypes: {
66
- _type: Type.Array,
67
- _elements: {
68
- _type: Type.Object,
69
- properties: {
70
- key: { _type: Type.String },
71
- name: { _type: Type.String },
72
- },
73
- },
74
- _default: [
75
- { key: 'National ID', name: 'National ID' },
76
- { key: 'registration_number', name: 'Registration Number' },
77
- { key: 'Passport', name: 'Passport Number' },
78
- ],
79
- _description: 'List of identifier types with unique keys for each.',
80
- },
81
- regulatorOptions: {
82
- _type: Type.Array,
83
- _elements: {
84
- _type: Type.Object,
85
- properties: {
86
- key: { _type: Type.String },
87
- name: { _type: Type.String },
88
- },
89
- },
90
- _default: [
91
- { key: 'Clinical Officers Council', name: 'Clinical Officers Council' },
92
- { key: 'Pharmacy and Poisons Board', name: 'Pharmacy and Poisons Board' },
93
- { key: 'Nursing Council', name: 'Nursing Council' },
94
- { key: 'KMPDC', name: 'Kenya Medical Practitioners and Dentists Council (KMPDC)' },
95
- {
96
- key: 'Kenya Medical Laboratory Technicians & Technologists Board',
97
- name: 'Kenya Medical Laboratory Technicians & Technologists Board',
98
- },
99
- ],
100
- _description: 'List of regulator options with unique keys for each.',
101
- },
102
86
  };
103
87
 
104
88
  export interface UserProperties {
@@ -109,22 +93,18 @@ export interface UserProperties {
109
93
  export interface ConfigObject {
110
94
  providerNationalIdUuid: string;
111
95
  passportNumberUuid: string;
112
- providerHieFhirReference: string;
113
96
  providerUniqueIdentifierAttributeTypeUuid: string;
97
+ externalProviderIdentifierUuid: string;
98
+ licenseNumberUuid: string;
99
+ licenseExpiryDateUuid: string;
100
+ licenseBodyUuid: string;
101
+ qualificationUuid: string;
102
+ specialtyUuid: string;
103
+ providerCadreUuid: string;
104
+ practiceTypeUuid: string;
114
105
  phoneNumberUuid: string;
115
106
  providerAddressUuid: string;
116
- qualificationUuid: string;
117
- licenseBodyUuid: string;
118
- licenseNumberUuid: string;
107
+ providerHieFhirReference: string;
119
108
  personEmailAttributeUuid: string;
120
109
  personPhonenumberAttributeUuid: string;
121
- licenseExpiryDateUuid: string;
122
- identifierTypes: Array<{
123
- key: string;
124
- name: string;
125
- }>;
126
- regulatorOptions: Array<{
127
- key: string;
128
- name: string;
129
- }>;
130
110
  }
package/src/index.ts CHANGED
@@ -9,7 +9,7 @@ const options = {
9
9
  };
10
10
 
11
11
  export const importTranslation = require.context('../translations', false, /.json$/, 'lazy');
12
-
12
+ export * from './components/global-property/index';
13
13
  export const root = getAsyncLifecycle(() => import('./root.component'), options);
14
14
 
15
15
  export function startupApp() {
@@ -28,33 +28,35 @@ export const userRoleScopeWorkspace = getAsyncLifecycle(
28
28
  ),
29
29
  options,
30
30
  );
31
-
31
+ // t("manageUsers", "Manage Users")
32
32
  export const userManagementLeftPannelLink = getAsyncLifecycle(
33
33
  () =>
34
34
  import('./left-pannel-link.component').then((m) => ({
35
- default: m.createLeftPanelLink({ title: 'Manage Users', name: 'user-management' }),
35
+ default: m.createLeftPanelLink({ title: 'manageUsers', name: 'user-management' }),
36
36
  })),
37
37
  options,
38
38
  );
39
-
39
+ // t("etlAdministration", "ETL Administration")
40
40
  export const etlAdministrationLeftPannelLink = getAsyncLifecycle(
41
41
  () =>
42
42
  import('./left-pannel-link.component').then((m) => ({
43
- default: m.createLeftPanelLink({ title: 'ETL Administration', name: 'etl-administration' }),
43
+ default: m.createLeftPanelLink({ title: 'etlAdministration', name: 'etl-administration' }),
44
44
  })),
45
45
  options,
46
46
  );
47
+ // t("locations", "Locations")
47
48
  export const locationsLeftPanelLink = getAsyncLifecycle(
48
49
  () =>
49
50
  import('./left-pannel-link.component').then((m) => ({
50
- default: m.createLeftPanelLink({ title: 'Locations', name: 'locations' }),
51
+ default: m.createLeftPanelLink({ title: 'locations', name: 'locations' }),
51
52
  })),
52
53
  options,
53
54
  );
55
+ // t("facilityDetails", "Facility Details")
54
56
  export const facilitySetupLeftPanelLink = getAsyncLifecycle(
55
57
  () =>
56
58
  import('./left-pannel-link.component').then((m) => ({
57
- default: m.createLeftPanelLink({ title: 'Facility Details', name: 'facility-setup' }),
59
+ default: m.createLeftPanelLink({ title: 'facilityDetails', name: 'facility-setup' }),
58
60
  })),
59
61
  options,
60
62
  );
@@ -74,6 +76,18 @@ export const searchLocationWorkspace = getAsyncLifecycle(
74
76
  () => import('./components/locations/forms/search-location/search-location.workspace'),
75
77
  options,
76
78
  );
79
+ export const globalPropertyWorkspace = getAsyncLifecycle(
80
+ () => import('./components/global-property/workspace/global-property.workspace'),
81
+ options,
82
+ );
83
+ export const uploadLogoWorkspace = getAsyncLifecycle(
84
+ () => import('./components/global-property/workspace/upload-logo.workspace'),
85
+ options,
86
+ );
87
+ export const deleteGlobalPropertyModal = getAsyncLifecycle(
88
+ () => import('./components/global-property/modal/delete-global-property-modal.component'),
89
+ options,
90
+ );
77
91
 
78
92
  // t('providerBanner', 'Provider banner')
79
93
  export const providerBanner = getAsyncLifecycle(
@@ -1,7 +1,8 @@
1
- import React, { useMemo } from 'react';
1
+ import { ConfigurableLink } from '@openmrs/esm-framework';
2
2
  import last from 'lodash-es/last';
3
+ import React, { useMemo } from 'react';
4
+ import { useTranslation } from 'react-i18next';
3
5
  import { BrowserRouter, useLocation } from 'react-router-dom';
4
- import { ConfigurableLink } from '@openmrs/esm-framework';
5
6
 
6
7
  export interface LinkConfig {
7
8
  name: string;
@@ -9,6 +10,7 @@ export interface LinkConfig {
9
10
  }
10
11
 
11
12
  function LinkExtension({ config }: { config: LinkConfig }) {
13
+ const { t } = useTranslation();
12
14
  const { name, title } = config;
13
15
  const location = useLocation();
14
16
 
@@ -27,7 +29,7 @@ function LinkExtension({ config }: { config: LinkConfig }) {
27
29
  <ConfigurableLink
28
30
  to={`${window.getOpenmrsSpaBase()}admin${name && name !== 'admin' ? `/${name}` : ''}`}
29
31
  className={`cds--side-nav__link ${name === urlSegment && 'active-left-nav-link'}`}>
30
- {title}
32
+ {t(title)}
31
33
  </ConfigurableLink>
32
34
  );
33
35
  }
@@ -1,24 +1,23 @@
1
- import React, { useEffect } from 'react';
1
+ import React from 'react';
2
+ import { useLeftNav } from '@openmrs/esm-framework';
2
3
  import { BrowserRouter, Route, Routes } from 'react-router-dom';
3
- import { setLeftNav, unsetLeftNav, WorkspaceContainer } from '@openmrs/esm-framework';
4
- import styles from './root.scss';
4
+
5
5
  import LeftPanel from './components/side-menu/left-pannel.component';
6
6
  import UserManagentLandingPage from './components/users/manage-users/manage-user.component';
7
7
  import EtlAdminDashboard from './components/dashboard/etl-dashboard.component';
8
8
  import FacilitySetup from './components/facility-setup/facility-setup.component';
9
9
  import HomeComponent from './components/locations/home/home-locations.component';
10
10
 
11
- const Root: React.FC = () => {
12
- const spaBasePath = window.spaBase;
13
- const adminBasename = window.getOpenmrsSpaBase() + 'admin';
11
+ import styles from './root.scss';
12
+ import GlobalPropertyDashboard from './components/global-property/dashboard/global-property-dashboard.component';
14
13
 
15
- useEffect(() => {
16
- setLeftNav({
17
- name: 'admin-left-panel-slot',
18
- basePath: spaBasePath,
19
- });
20
- return () => unsetLeftNav('admin-left-panel-slot');
21
- }, [spaBasePath]);
14
+ const Root: React.FC = () => {
15
+ const spaBasePath = globalThis.spaBase;
16
+ const adminBasename = globalThis.getOpenmrsSpaBase() + 'admin';
17
+ useLeftNav({
18
+ name: 'admin-left-panel-slot',
19
+ basePath: spaBasePath,
20
+ });
22
21
 
23
22
  return (
24
23
  <BrowserRouter basename={adminBasename}>
@@ -30,6 +29,7 @@ const Root: React.FC = () => {
30
29
  <Route path="/etl-administration" element={<EtlAdminDashboard />} />
31
30
  <Route path="/facility-setup" element={<FacilitySetup />} />
32
31
  <Route path="/locations" element={<HomeComponent />} />
32
+ <Route path="/global-property" element={<GlobalPropertyDashboard />} />
33
33
  </Routes>
34
34
  </main>
35
35
  </BrowserRouter>
package/src/routes.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "component": "userManagementLeftPannelLink",
14
14
  "name": "user-management-left-panel-link",
15
15
  "slot": "admin-left-panel-slot"
16
- },
16
+ },
17
17
  {
18
18
  "component": "etlAdministrationLeftPannelLink",
19
19
  "name": "etl-administration-left-panel-link",
@@ -29,71 +29,95 @@
29
29
  "name": "facility-setup-left-panel-link",
30
30
  "slot": "admin-left-panel-slot"
31
31
  },
32
+ {
33
+ "name":"global-property-link",
34
+ "component":"globalPropertyLink",
35
+ "slot": "admin-left-panel-slot"
36
+ },
32
37
  {
33
38
  "component": "providerBanner",
34
39
  "name": "provider-banner",
35
40
  "slot": "provider-banner-info-slot",
36
- "order":1
41
+ "order": 1
42
+ },
43
+ {
44
+ "component": "globalPropertyDashboard",
45
+ "name": "global-property-dashboard"
46
+ }
47
+ ],
48
+ "modals": [
49
+ {
50
+ "component": "operationConfirmationModal",
51
+ "name": "operation-confirmation-modal"
52
+ },
53
+ {
54
+ "component": "hwrConfirmationModal",
55
+ "name": "hwr-confirmation-modal"
56
+ },
57
+ {
58
+ "component": "hwrEmptyModal",
59
+ "name": "hwr-empty-modal"
60
+ },
61
+ {
62
+ "component": "hwrSyncModal",
63
+ "name": "hwr-syncing-modal"
64
+ },
65
+ {
66
+ "component": "deleteGlobalPropertyModal",
67
+ "name": "delete-global-property-modal"
37
68
  }
38
69
  ],
39
- "workspaces": [
70
+ "workspaces2": [
40
71
  {
41
72
  "name": "manage-user-workspace",
42
73
  "component": "manageUserWorkspace",
43
- "title": "Manage User Workspace",
44
- "type": "other-form",
45
- "canMaximize": true,
46
- "width": "extra-wide"
74
+ "window": "esm-admin-extra-wide-workspace-window"
47
75
  },
48
76
  {
49
77
  "name": "user-role-scope-workspace",
50
78
  "component": "userRoleScopeWorkspace",
51
- "title": "User Rple Scope Workspace",
52
- "type": "other-form",
53
- "canMaximize": true,
54
- "width": "extra-wide"
79
+ "window": "esm-admin-workspace-window"
55
80
  },
56
81
  {
57
82
  "name": "add-location-workspace",
58
- "title": "Add Location",
59
83
  "component": "addLocation",
60
- "type": "workspace"
84
+ "window": "esm-admin-workspace-window"
61
85
  },
62
86
  {
63
87
  "name": "search-location-workspace",
64
- "title": "Search Location",
65
88
  "component": "searchLocationWorkspace",
66
- "type": "workspace"
89
+ "window": "esm-admin-workspace-window"
67
90
  },
68
91
  {
69
- "name": "hwr-sync-workspace",
70
- "title": "HWR Sync Workspace",
71
- "component": "hwrSyncWorkspace",
72
- "type": "other-form"
92
+ "name": "global-property-workspace",
93
+ "component": "globalPropertyWorkspace",
94
+ "window": "esm-admin-workspace-window"
73
95
  },
74
96
  {
75
- "name": "hwr-sync-modal",
76
- "title": "HWR Sync Modal",
77
- "component": "hwrSyncModal",
78
- "type": "modal"
97
+ "name": "upload-logo-workspace",
98
+ "component": "uploadLogoWorkspace",
99
+ "window": "esm-admin-workspace-window"
79
100
  }
80
101
  ],
81
- "modals": [
102
+ "workspaceWindows2": [
82
103
  {
83
- "component": "operationConfirmationModal",
84
- "name": "operation-confirmation-modal"
104
+ "name": "esm-admin-workspace-window",
105
+ "canMaximize": true,
106
+ "group": "esm-admin-workspace-group",
107
+ "width":"wider"
85
108
  },
86
109
  {
87
- "component": "hwrConfirmationModal",
88
- "name": "hwr-confirmation-modal"
89
- },
110
+ "name": "esm-admin-extra-wide-workspace-window",
111
+ "canMaximize": true,
112
+ "group": "esm-admin-workspace-group",
113
+ "width": "extra-wide"
114
+ }
115
+ ],
116
+ "workspaceGroups2": [
90
117
  {
91
- "component": "hwrEmptyModal",
92
- "name": "hwr-empty-modal"
93
- },
94
- {
95
- "component": "hwrSyncModal",
96
- "name": "hwr-syncing-modal"
118
+ "name": "esm-admin-workspace-group",
119
+ "scopePattern": "/admin",
120
+ "closeable": true
97
121
  }
98
122
  ],
99
123
  "pages": [
@@ -102,4 +126,4 @@
102
126
  "route": "admin"
103
127
  }
104
128
  ]
105
- }
129
+ }
@@ -1,5 +1,3 @@
1
- import { fhirBaseUrl, Type } from '@openmrs/esm-framework';
2
-
3
1
  export interface ETLResponse {
4
2
  script_name: string;
5
3
  start_time: string;
@@ -27,8 +25,36 @@ export interface SHAFacility {
27
25
  shaFacilityLicenseNumber: string;
28
26
  facilityRegistryCode: string;
29
27
  source: string;
28
+ officialName: string;
29
+ facilityType: string;
30
+ facilityOwnership: string;
31
+ fidCode: string;
32
+ isHub: string;
33
+ facilityLicenseStatus: string;
34
+ facilityLicenseStartDate: string;
35
+ regulatoryBody: string;
36
+ shaContractStatus: string;
37
+ shaContractStartDate: string;
38
+ shaContractEndDate: string;
39
+ facilityPhoneNumber: string;
40
+ facilityEmail: string;
41
+ facilityAdministratorName: string;
42
+ facilityAdministratorPhone: string;
43
+ facilityAdministratorEmail: string;
44
+ county: string;
45
+ subCounty: string;
46
+ town: string;
47
+ physicalLocation: string;
48
+ postalAddress: string;
49
+ latitude: string;
50
+ longitude: string;
51
+ totalBeds: string;
52
+ normalBeds: string;
53
+ icuBeds: string;
54
+ hduBeds: string;
55
+ dialysisBeds: string;
56
+ shaContractedServices: string;
30
57
  }
31
-
32
58
  export interface DefaultFacility {
33
59
  locationId: number;
34
60
  uuid: string;
@@ -383,3 +409,14 @@ export interface CustomHIEPractitionerResponse {
383
409
  };
384
410
  fhirFormat: boolean;
385
411
  }
412
+
413
+ export type SystemSettings = {
414
+ property: string;
415
+ description?: string;
416
+ datatypeClassname?: string;
417
+ datatypeConfig?: string;
418
+ preferredHandlerClassname?: string;
419
+ handlerConfig?: string | null;
420
+ value: string;
421
+ uuid?: string;
422
+ };