@kenyaemr/esm-ward-app 8.0.1-pre.99 → 8.0.3-pre.131

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 (196) hide show
  1. package/.turbo/turbo-build.log +20 -24
  2. package/dist/109.js +1 -0
  3. package/dist/109.js.map +1 -0
  4. package/dist/124.js +1 -0
  5. package/dist/124.js.map +1 -0
  6. package/dist/125.js +1 -0
  7. package/dist/125.js.map +1 -0
  8. package/dist/130.js +1 -1
  9. package/dist/130.js.LICENSE.txt +2 -0
  10. package/dist/130.js.map +1 -1
  11. package/dist/146.js +1 -0
  12. package/dist/146.js.map +1 -0
  13. package/dist/15.js +1 -0
  14. package/dist/15.js.map +1 -0
  15. package/dist/153.js +1 -0
  16. package/dist/153.js.map +1 -0
  17. package/dist/303.js +2 -1
  18. package/dist/303.js.map +1 -1
  19. package/dist/325.js +1 -0
  20. package/dist/325.js.map +1 -0
  21. package/dist/372.js +2 -0
  22. package/dist/372.js.map +1 -0
  23. package/dist/471.js +1 -0
  24. package/dist/471.js.map +1 -0
  25. package/dist/481.js +1 -0
  26. package/dist/481.js.map +1 -0
  27. package/dist/53.js +1 -0
  28. package/dist/53.js.map +1 -0
  29. package/dist/{960.js → 559.js} +1 -1
  30. package/dist/559.js.map +1 -0
  31. package/dist/574.js +1 -1
  32. package/dist/576.js +1 -0
  33. package/dist/576.js.map +1 -0
  34. package/dist/577.js +1 -1
  35. package/dist/577.js.map +1 -1
  36. package/dist/{255.js → 649.js} +2 -2
  37. package/dist/649.js.LICENSE.txt +9 -0
  38. package/dist/649.js.map +1 -0
  39. package/dist/{659.js → 662.js} +1 -1
  40. package/dist/662.js.map +1 -0
  41. package/dist/920.js +1 -0
  42. package/dist/920.js.map +1 -0
  43. package/dist/921.js +1 -0
  44. package/dist/921.js.map +1 -0
  45. package/dist/922.js +1 -0
  46. package/dist/922.js.map +1 -0
  47. package/dist/969.js +1 -0
  48. package/dist/969.js.map +1 -0
  49. package/dist/kenyaemr-esm-ward-app.js +1 -1
  50. package/dist/kenyaemr-esm-ward-app.js.buildmanifest.json +304 -128
  51. package/dist/kenyaemr-esm-ward-app.js.map +1 -1
  52. package/dist/main.js +1 -1
  53. package/dist/main.js.LICENSE.txt +0 -10
  54. package/dist/main.js.map +1 -1
  55. package/dist/routes.json +1 -1
  56. package/mock.tsx +62 -0
  57. package/package-lock.json +5001 -0
  58. package/package.json +2 -2
  59. package/src/action-menu-buttons/clinical-forms-workspace-siderail.component.tsx +37 -0
  60. package/src/action-menu-buttons/discharge-workspace-siderail.component.tsx +20 -0
  61. package/src/beds/empty-bed-skeleton.tsx +4 -3
  62. package/src/beds/empty-bed.component.tsx +3 -3
  63. package/src/beds/ward-bed.component.tsx +41 -0
  64. package/src/beds/ward-bed.scss +45 -0
  65. package/src/beds/{occupied-bed.test.tsx → ward-bed.test.tsx} +42 -20
  66. package/src/config-schema.ts +203 -84
  67. package/src/constant.ts +1 -1
  68. package/src/hooks/useAdmissionLocation.ts +22 -4
  69. package/src/hooks/useAssignedBedByPatient.ts +9 -0
  70. package/src/hooks/useBeds.ts +3 -4
  71. package/src/hooks/useConcept.ts +3 -4
  72. package/src/hooks/useEmrConfiguration.ts +5 -0
  73. package/src/hooks/useInpatientAdmission.ts +9 -14
  74. package/src/hooks/useInpatientRequest.ts +4 -15
  75. package/src/hooks/useLocations.ts +8 -51
  76. package/src/hooks/useMotherAndChildren.ts +46 -0
  77. package/src/hooks/useObs.ts +3 -7
  78. package/src/hooks/usePatientPendingOrders.ts +16 -0
  79. package/src/hooks/useWardPatientGrouping.ts +32 -0
  80. package/src/index.ts +45 -17
  81. package/src/location-selector/location-selector.component.tsx +18 -21
  82. package/src/root.component.tsx +3 -0
  83. package/src/routes.json +41 -3
  84. package/src/types/index.ts +50 -1
  85. package/src/ward-patient-card/card-rows/admission-request-note-row.component.tsx +38 -0
  86. package/src/ward-patient-card/card-rows/coded-obs-tags-row.component.tsx +108 -0
  87. package/src/ward-patient-card/card-rows/mother-child-row.component.tsx +84 -0
  88. package/src/ward-patient-card/card-rows/mother-child-row.scss +22 -0
  89. package/src/ward-patient-card/card-rows/pending-items-row.component.tsx +54 -0
  90. package/src/ward-patient-card/row-elements/ward-patient-age.tsx +1 -1
  91. package/src/ward-patient-card/row-elements/ward-patient-coded-obs-tags.tsx +62 -39
  92. package/src/ward-patient-card/row-elements/ward-patient-header-address.tsx +5 -5
  93. package/src/ward-patient-card/row-elements/ward-patient-identifier.tsx +18 -41
  94. package/src/ward-patient-card/row-elements/ward-patient-location.tsx +19 -0
  95. package/src/ward-patient-card/row-elements/ward-patient-obs.resource.ts +38 -34
  96. package/src/ward-patient-card/row-elements/ward-patient-obs.tsx +26 -13
  97. package/src/ward-patient-card/row-elements/ward-patient-pending-order.component.tsx +45 -0
  98. package/src/ward-patient-card/row-elements/ward-patient-pending-transfer.tsx +38 -0
  99. package/src/ward-patient-card/row-elements/ward-patient-responsive-tooltip.tsx +32 -0
  100. package/src/ward-patient-card/row-elements/ward-patient-skeleton-text.tsx +9 -0
  101. package/src/ward-patient-card/ward-patient-card.component.tsx +14 -45
  102. package/src/ward-patient-card/ward-patient-card.scss +68 -9
  103. package/src/ward-view/default-ward/default-ward-beds.component.tsx +42 -0
  104. package/src/ward-view/default-ward/default-ward-patient-card-header.component.tsx +32 -0
  105. package/src/ward-view/default-ward/default-ward-patient-card.component.tsx +31 -0
  106. package/src/ward-view/default-ward/default-ward-pending-patients.component.tsx +52 -0
  107. package/src/ward-view/default-ward/default-ward-unassigned-patients.component.tsx +32 -0
  108. package/src/ward-view/default-ward/default-ward-view.component.tsx +31 -0
  109. package/src/ward-view/materal-ward/maternal-ward-beds.component.tsx +65 -0
  110. package/src/ward-view/materal-ward/maternal-ward-patient-card-header.component.tsx +30 -0
  111. package/src/ward-view/materal-ward/maternal-ward-patient-card.component.tsx +93 -0
  112. package/src/{beds/occupied-bed.scss → ward-view/materal-ward/maternal-ward-patient-card.scss} +4 -9
  113. package/src/ward-view/materal-ward/maternal-ward-patient-card.test.tsx +58 -0
  114. package/src/ward-view/materal-ward/maternal-ward-pending-patients.component.tsx +48 -0
  115. package/src/ward-view/materal-ward/maternal-ward-unassigned-patients.component.tsx +33 -0
  116. package/src/ward-view/materal-ward/maternal-ward-view.component.tsx +38 -0
  117. package/src/ward-view/materal-ward/maternal-ward-view.resource.ts +89 -0
  118. package/src/ward-view/ward-view.component.tsx +15 -163
  119. package/src/ward-view/ward-view.resource.ts +193 -1
  120. package/src/ward-view/ward-view.scss +17 -6
  121. package/src/ward-view/ward-view.test.tsx +43 -48
  122. package/src/ward-view/ward.component.tsx +106 -0
  123. package/src/ward-view-header/admission-requests-bar.component.tsx +14 -9
  124. package/src/ward-view-header/admission-requests-bar.test.tsx +11 -23
  125. package/src/ward-view-header/admission-requests.scss +1 -1
  126. package/src/ward-view-header/ward-metric.component.tsx +24 -0
  127. package/src/ward-view-header/ward-metric.scss +25 -0
  128. package/src/ward-view-header/ward-metrics.component.tsx +78 -0
  129. package/src/ward-view-header/ward-metrics.scss +7 -0
  130. package/src/ward-view-header/ward-metrics.test.tsx +37 -0
  131. package/src/ward-view-header/ward-view-header.component.tsx +9 -4
  132. package/src/ward-view-header/ward-view-header.scss +0 -1
  133. package/src/ward-workspace/admission-request-card/admission-request-card-actions.component.tsx +70 -6
  134. package/src/ward-workspace/admission-request-card/admission-request-card-header.component.tsx +10 -23
  135. package/src/ward-workspace/admission-request-card/admission-request-card.component.tsx +9 -3
  136. package/src/ward-workspace/admission-request-card/admission-request-card.scss +13 -4
  137. package/src/ward-workspace/admission-request-workspace/admission-requests-workspace.test.tsx +55 -33
  138. package/src/ward-workspace/admission-request-workspace/admission-requests.workspace.tsx +30 -37
  139. package/src/ward-workspace/admit-patient-form-workspace/admit-patient-form.test.tsx +98 -203
  140. package/src/ward-workspace/admit-patient-form-workspace/admit-patient-form.workspace.tsx +116 -180
  141. package/src/ward-workspace/bed-selector.component.tsx +119 -0
  142. package/src/ward-workspace/bed-selector.scss +15 -0
  143. package/src/ward-workspace/patient-banner/patient-banner.component.tsx +7 -14
  144. package/src/ward-workspace/patient-clinical-forms-workspace/patient-clinical-forms.workspace.tsx +23 -0
  145. package/src/{ward-patient-workspace → ward-workspace/patient-details}/ward-patient-action-button.extension.tsx +2 -1
  146. package/src/{ward-patient-workspace → ward-workspace/patient-details}/ward-patient.workspace.tsx +18 -9
  147. package/src/ward-workspace/patient-discharge/patient-discharge.scss +41 -0
  148. package/src/ward-workspace/patient-discharge/patient-discharge.workspace.tsx +113 -0
  149. package/src/ward-workspace/patient-transfer-bed-swap/patient-bed-swap-form.component.tsx +68 -79
  150. package/src/ward-workspace/patient-transfer-bed-swap/patient-transfer-request-form.component.tsx +24 -24
  151. package/src/ward-workspace/patient-transfer-bed-swap/patient-transfer-swap.scss +12 -2
  152. package/src/ward-workspace/patient-transfer-bed-swap/patient-transfer-swap.workspace.tsx +12 -8
  153. package/src/ward-workspace/patient-transfer-request-workspace/patient-transfer-request.workspace.tsx +11 -0
  154. package/src/ward-workspace/ward-patient-notes/form/notes-form.component.tsx +1 -1
  155. package/src/ward-workspace/ward-patient-notes/form/notes-form.test.tsx +1 -1
  156. package/src/ward-workspace/ward-patient-notes/history/notes-container.component.tsx +2 -2
  157. package/src/ward-workspace/ward-patient-notes/notes.resource.ts +5 -7
  158. package/src/ward-workspace/ward-patient-notes/notes.workspace.tsx +1 -1
  159. package/src/ward-workspace/ward-patient-notes/types.ts +0 -4
  160. package/src/ward.resource.ts +38 -2
  161. package/translations/en.json +31 -7
  162. package/dist/152.js +0 -1
  163. package/dist/152.js.map +0 -1
  164. package/dist/255.js.map +0 -1
  165. package/dist/269.js +0 -1
  166. package/dist/269.js.map +0 -1
  167. package/dist/346.js +0 -1
  168. package/dist/346.js.map +0 -1
  169. package/dist/466.js +0 -1
  170. package/dist/466.js.map +0 -1
  171. package/dist/659.js.map +0 -1
  172. package/dist/729.js +0 -1
  173. package/dist/729.js.map +0 -1
  174. package/dist/749.js +0 -1
  175. package/dist/749.js.map +0 -1
  176. package/dist/76.js +0 -1
  177. package/dist/76.js.map +0 -1
  178. package/dist/793.js +0 -2
  179. package/dist/793.js.map +0 -1
  180. package/dist/803.js +0 -1
  181. package/dist/803.js.map +0 -1
  182. package/dist/960.js.map +0 -1
  183. package/src/beds/empty-bed.scss +0 -28
  184. package/src/beds/occupied-bed.component.tsx +0 -35
  185. package/src/beds/unassigned-patient.component.tsx +0 -20
  186. package/src/beds/unassigned-patient.scss +0 -6
  187. package/src/config-schema-admission-request-note.ts +0 -9
  188. package/src/config-schema-extension-colored-obs-tags.ts +0 -91
  189. package/src/hooks/useCurrentWardCardConfig.ts +0 -32
  190. package/src/ward-patient-card/card-rows/admission-request-note.extension.tsx +0 -27
  191. package/src/ward-patient-card/card-rows/colored-obs-tags-card-row.extension.tsx +0 -13
  192. package/src/ward-patient-card/ward-patient-card-element.component.tsx +0 -65
  193. package/src/ward-view/ward-bed.component.tsx +0 -14
  194. /package/dist/{793.js.LICENSE.txt → 303.js.LICENSE.txt} +0 -0
  195. /package/dist/{255.js.LICENSE.txt → 372.js.LICENSE.txt} +0 -0
  196. /package/src/{ward-patient-workspace → ward-workspace/patient-details}/ward-patient.style.scss +0 -0
package/dist/803.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"803.js","mappings":"6LAGIA,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,+zCAAg0C,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,2DAA2D,8EAA8E,MAAQ,GAAG,SAAW,oUAAoU,eAAiB,CAAC,o7DAAo7D,u6BAAu6B,25DAA25D,WAAa,MAEpsNH,EAAwBI,OAAS,CAChC,iBAAoB,yDACpB,iBAAoB,yDACpB,WAAc,mDACd,OAAU,+CACV,WAAc,mDACd,eAAkB,wDAEnB,S,mECZIJ,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,61BAAg2B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,2DAA2D,wEAAwE,8EAA8E,MAAQ,GAAG,SAAW,uMAAuM,eAAiB,CAAC,ocAAoc,o7DAAo7D,25DAA25D,WAAa,MAEpoLH,EAAwBI,OAAS,CAChC,cAAiB,0CACjB,qBAAwB,kDAEzB,S,mECRIJ,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAOC,GAAI,w8DAAy8D,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,sFAAsF,6EAA6E,iEAAiE,MAAQ,GAAG,SAAW,2fAA2f,eAAiB,CAAC,o7DAAo7D,62CAA62C,05DAA05D,w8uBAAw8uB,WAAa,MAE5++BH,EAAwBI,OAAS,CAChC,iBAAoB,6DACpB,uBAA0B,mEAC1B,MAAS,kDACT,gBAAmB,4DACnB,cAAiB,0DACjB,oBAAuB,gEACvB,cAAiB,0DACjB,UAAa,sDACb,iBAAoB,6DACpB,cAAiB,2DAElB,S,6EC0EMC,EAAY,UAAiE,OAnD5D,CACrB,CAAC,qBAAsB,OACvB,CAAC,gCAAiC,OAClC,CAAC,8BAA+B,6BAChC,CAAC,kBAAmB,OACpB,CAAC,uBAAwB,OACzB,CAAC,gBAAiB,OAClB,CAAC,iCAAkC,OACnC,CAAC,8BAA+B,OAChC,CAAC,iCAAkC,OACnC,CAAC,uBAAwB,OACzB,CAAC,iCAAkC,OACnC,CAAC,2BAA4B,OAC7B,CAAC,+BAAgC,6BACjC,CAAC,uBAAwB,OACzB,CAAC,sCAAuC,OACxC,CAAC,8BAA+B,OAChC,CAAC,wBAAyB,OAC1B,CAAC,0BAA2B,OAC5B,CAAC,qBAAsB,OACvB,CAAC,kBAAmB,OACpB,CAAC,gBAAiB,OAClB,CAAC,uBAAwB,OACzB,CAAC,yBAA0B,OAC3B,CAAC,uBAAwB,OACzB,CAAC,oBAAqB,OACtB,CAAC,6BAA8B,OAC/B,CAAC,yBAA0B,OAC3B,CAAC,mCAAoC,OACrC,CAAC,qBAAsB,OACvB,CAAC,sBAAuB,OACxB,CAAC,6BAA8B,OAC/B,CAAC,0BAA2B,OAC5B,CAAC,yBAA0B,OAC3B,CAAC,4BAA6B,OAC9B,CAAC,gBAAiB,OAClB,CAAC,6BAA8B,OAC/B,CAAC,4DAA6D,OAC9D,CAAC,sBAAuB,OACxB,CAAC,mBAAoB,OACrB,CAAC,yBAA0B,OAC3B,CAAC,8BAA+B,OAChC,CAAC,eAAgB,OACjB,CAAC,wBAAyB,OAC1B,CAAC,qBAAsB,OACvB,CAAC,2BAA4B,6BAC7B,CAAC,oCAAqC,OACtC,CAAC,4BAA6B,6BAC9B,CAAC,eAAgB,QAGwBC,KAAI,SAACC,G,OAASA,EAAKC,KAAK,I,IAAMA,KAAK,MAE/D,SAASC,IACtB,IAAMC,EAAUC,IACd,GAAyCN,OAAtCO,EAAAA,YAAY,4BAAoC,OAAVP,GACzCQ,EAAAA,cAYF,OATgBC,EAAAA,EAAAA,UACd,W,IACoBJ,E,MADb,CACLK,iBAA8B,QAAZL,EAAAA,EAAQM,YAARN,IAAAA,OAAAA,EAAAA,EAAcM,KAChCC,0BAA2BP,EAAQQ,UACnCC,uBAAwBT,EAAQU,OAChCC,8BAA+BX,EAAQY,M,GAEzC,CAACZ,GAGL,C,wMCpGIa,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,IAAQnB,OAAS,IAAQA,YAASyB,E,gJCEnE,QApBmC,SAACC,GAClC,IAAM,GAAwBC,EAAAA,EAAAA,KAAtBC,kBACAC,EAAwBH,EAAxBG,QAASC,EAAeJ,EAAfI,IAAKC,EAAUL,EAAVK,MAEtB,OAAMF,GAAWE,EAMf,kBAACC,MAAAA,CAAIC,UAAWC,EAAOC,eACpBL,EAAM,kBAACM,EAAAA,EAAoBA,CAACN,IAAKA,IAAU,KAC5C,kBAACO,EAAAA,EAAeA,CAACR,QAASA,IACzBD,EAAkB1B,KAAI,SAACoC,EAAWC,G,OACjC,kBAACC,EAAAA,E,sUAAsBA,CAAAA,CAACC,IAAK,aAAoCF,OAAvBV,EAAQa,KAAK,YAAY,OAAFH,GAAKD,UAAWA,GAAeZ,G,MATpGiB,QAAQC,KAAK,wEACN,KAYX,C,iOCfIzB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,IAAQnB,OAAS,IAAQA,YAASyB,E,kpCCGpD,SAASoB,I,IAAaC,EAAAA,UAAAA,OAAAA,QAAAA,IAAAA,UAAAA,GAAAA,UAAAA,GAAuC,GAAIC,EAAAA,UAAAA,OAAAA,QAAAA,IAAAA,UAAAA,IAAAA,UAAAA,GAClCC,EAAAA,GAAAA,EAAAA,EAAAA,UAAS,MAA9CC,EAAqCD,EAAAA,GAArBE,EAAqBF,EAAAA,GACtBA,EAAAA,GAAAA,EAAAA,EAAAA,UAAS,GAAe,OAAZG,EAAAA,YAAY,iBAAvCC,EAAeJ,EAAAA,GAChBK,GADgBL,EAAAA,GACD,IAAIM,gBAAgBR,IACnCS,EAAsB,GAAUF,OAAPD,EAAI,KAA2B,OAAxBC,EAAaG,YACzBjD,EAAAA,IACvBwC,EAA6B,KAAtBQ,EACR9C,EAAAA,cAFI,EAAoBF,EAAlBK,KAAS6C,E,kXAAAA,CAASlD,EAAAA,CAAlBK,UAKR8C,EAAAA,EAAAA,YAAU,W,IACJ9C,GAAAA,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAMA,OACRsC,EAAkBtC,EAAKA,KAAK+C,MAEhC,GAAG,CAAC/C,IAEJ,IAAMgD,GAAUlD,EAAAA,EAAAA,UAAQ,W,IAETE,EAAAA,EAAAA,EADb,O,sUAAO,EACLiD,UAAWjD,QAAAA,EAAAA,SAAAA,IAAAA,GAAU,QAAVA,EAAAA,EAAMA,YAANA,IAAAA,GAAiB,QAAjBA,EAAAA,EAAYkD,aAAZlD,IAAAA,OAAAA,EAAAA,EAAmBV,KAAI,SAAC4D,G,OAAUA,EAAMC,Q,IACnDd,eAAAA,GACGQ,EAEP,GAAG,CAAC7C,EAAM6C,EAAMR,IAChB,OAAOW,CACT,C,cC1CI,EAAU,CAAC,EAEf,EAAQxC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKnB,QAAe,KAAW,IAAQxB,OAAS,IAAQA,YAASyB,E,ujCCPpD,SAASuC,EAAiBC,G,IAyD5BJ,EACCA,E,IAxDN,GAAQK,EAAAA,EAAAA,kBAANC,EACgD9D,GAAAA,EAAAA,EAAAA,KAAhDM,EAAgDN,EAAhDM,iBAAkBE,EAA8BR,EAA9BQ,0BACpBuD,IAAYC,EAAAA,EAAAA,YAAUC,EAAAA,EAAAA,kBACQtB,EAAAA,GAAAA,EAAAA,EAAAA,UAAS,OAAtCuB,EAA6BvB,EAAAA,GAAjBwB,EAAiBxB,EAAAA,GAC9ByB,GAAsBC,EAAAA,EAAAA,aAAYH,GAChBvB,EAAAA,GAAAA,EAAAA,EAAAA,UAAS,MAA1B2B,EAAiB3B,EAAAA,GAAX4B,EAAW5B,EAAAA,GAeyBH,EAAAA,GAdJnC,EAAAA,EAAAA,UAAQ,WACnD,IAAMmE,EAAW,GAWjB,OAVIJ,GACFI,EAAShF,KAAK,CAAC,gBAAiB4E,IAElCI,EAAShF,KAAK,CAAC,SAZJ,GAYmB2D,aAC1B7C,GACFkE,EAAShF,KAAK,CAAC,OAAQc,EAAiBmE,4BAA4BC,OAElEJ,EAAO,GACTE,EAAShF,KAAK,CAAC,mBAjBN,GAiB2B8E,EAAO,IAAWnB,aAEjDqB,CACT,GAAG,CAACJ,EAAqBE,EAAMhE,KACgDA,GAAvEkD,EAAyChB,EAAzCgB,UAAW/C,EAA8B+B,EAA9B/B,UAAWmC,EAAmBJ,EAAnBI,eAExB+B,GAAmBC,EAAAA,EAAAA,cACvB,Y,IAAGN,EAAAA,EAAAA,KACDC,EAAQM,EACV,GACA,CAACN,EAASD,IAENQ,GAAeF,EAAAA,EAAAA,cACnB,SAACG,GACCZ,EAAcY,EAAMC,OAAOC,MAC7B,GACA,CAACd,IAEH,OACE,kBAACxC,MAAAA,CAAIC,UAAWC,EAAOqD,kBACrB,kBAACC,EAAAA,kBAAiBA,KAChB,kBAACC,EAAAA,IAAMA,CACLC,SAAUP,EACVG,MAAOf,EACPoB,YAAaxB,EAAE,kBAAmB,oBAClCyB,KAAMxB,EAAW,KAAO,QAG3BtD,GAAaD,EACZ,kBAACmB,MAAAA,CAAIC,UAAWC,EAAO2D,kBACrB,kBAACC,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,OAGtB,kBAACN,EAAAA,kBAAiBA,KAChB,kBAACO,EAAAA,K,wUAAgBA,CAAAA,CAAAA,EAAK9B,G,WAAAA,CAAOhC,UAAWC,EAAO2D,iBAAkBG,YAAY,a,kVAC1EnC,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAWoC,QAAS,EAIrB,QAHEpC,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAW3D,KAAI,SAACgG,G,OACd,kBAACC,EAAAA,IAAWA,CAAC1D,IAAKyD,EAASnG,GAAIqG,UAAWF,EAASnB,KAAMO,MAAOY,EAASnG,I,IAG3E,kBAACsG,OAAAA,CAAKpE,UAAWC,EAAOoE,aAAcnC,EAAE,mBAAoB,yBAKnElB,EAAiB,GAChB,kBAACjB,MAAAA,CAAIC,UAAWC,EAAOqE,YACrB,kBAACF,OAAAA,CAAKpE,UAAWC,EAAOoE,aACrBnC,EAAE,mBAAoB,2CAA4C,CACjEqC,MAtEC,GAsEO7B,EAAO,GAAY,EAC3B8B,IAAKC,KAAKC,IAvET,EAuEahC,EAAa1B,GAC3B2D,MAAO3D,KAGX,kBAACjB,MAAAA,KACC,kBAAC6E,EAAAA,GAAUA,CACT5E,UAAW6E,IAAW5E,EAAO6E,OAAQ7E,EAAO8E,YAC5CC,SAAmB,IAATtC,EACVuC,KAAK,QACLC,MAAOhD,EAAE,eAAgB,iBACzBiD,QAAS,W,OAAMpC,EAAiB,CAAEL,KAAMA,EAAO,G,GAC/C,kBAAC0C,EAAAA,gBAAeA,OAElB,kBAACR,EAAAA,GAAUA,CACT5E,UAAWC,EAAO6E,OAClBE,SAtFC,EAsFStC,GAAe1B,EACzBiE,KAAK,QACLC,MAAOhD,EAAE,WAAY,aACrBiD,QAAS,W,OAAMpC,EAAiB,CAAEL,KAAMA,EAAO,G,GAC/C,kBAAC2C,EAAAA,iBAAgBA,SAO/B,C,ixDCrGe,SAASC,EAAoB,G,IAsKnCC,EArKPC,EAD0C,EAC1CA,+BACA/F,EAF0C,EAE1CA,YACAgG,EAH0C,EAG1CA,oBAEM,GAAchG,QAAAA,EAAe,CAAC,GAA5BG,QACF,GAAQqC,EAAAA,EAAAA,kBAANC,EACoDnB,EAAAA,GAAAA,EAAAA,EAAAA,WAAS,MAA9D2E,EAAqD3E,EAAAA,GAA7B4E,EAA6B5E,EAAAA,GACpBA,EAAAA,GAAAA,EAAAA,EAAAA,WAAS,MAA1C6E,EAAiC7E,EAAAA,GAAnB8E,EAAmB9E,EAAAA,GAC+C3C,GAAAA,EAAAA,EAAAA,KAA/EM,EAA+EN,EAA/EM,iBAAkBE,EAA6DR,EAA7DQ,0BAA2BI,EAAkCZ,EAAlCY,8BAC/C,GAAsB8G,EAAAA,EAAAA,cAApBC,gBACF,GAAeC,EAAAA,EAAAA,KAAb/B,SACFsB,GAA+B9G,EAAAA,EAAAA,UACnC,W,IAAMC,E,OAAAA,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAkBuH,aAAaC,QAAO,Y,MAAuB,aAApBC,EAAAA,I,MAC/C,CAACzH,IAEKK,GAAoCqH,EAAAA,EAAAA,KAApCrH,OACAA,GAAmCsH,EAAAA,EAAAA,KAAnCtH,OAEFuH,GAAY7H,EAAAA,EAAAA,UAChB,W,IAOM8G,E,OANJgB,EAAAA,EAAEC,OAAO,CACPvC,SAAUsC,EAAAA,EAAEE,OAAO,CACjBC,eAAgBxE,EAAE,+BAAgC,qCAEpDyE,KAAMJ,EAAAA,EAAEE,SAASG,WACjBC,cACEtB,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAA8BvB,QAAS,EACnCuC,EAAAA,EAAEE,OAAO,CACPC,eAAgBxE,EAAE,2BAA4B,iCAEhDqE,EAAAA,EAAEE,SAASG,Y,GAErB,CAAC1E,EAAGqD,IAKAuB,GAAyCrI,EAAAA,EAAAA,UAAQ,W,IAEjD8G,EADEwB,EAA4B,CAAC,EAInC,OAH6C,KAAzCxB,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAA8BvB,UAChC+C,EAAcF,aAAetB,EAA6B,GAAG9E,MAExDsG,CACT,GAAG,CAACxB,IAQAyB,GAAAA,EAAAA,EAAAA,IAAoB,CAAEC,UAAUC,EAAAA,EAAAA,GAAYZ,GAAYS,cAAeD,IAAkB,EAAzFE,EALFG,UAAaC,EAAAA,EAAAA,OAAQC,EAAAA,EAAAA,QACrBC,EAIEN,EAJFM,QACAC,EAGEP,EAHFO,aAEAC,GACER,EAFFS,UAEET,EADFQ,WAGF/F,EAAAA,EAAAA,YAAU,W,IACJ8D,EAAyC,KAAzCA,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAA8BvB,SAChCwD,EAAS,eAAgBjC,EAA6B,GAAG9E,KAE7D,GAAG,CAAC8E,KAEJ9D,EAAAA,EAAAA,YAAU,WAER,OADAgE,GAAoB,W,OAAM4B,C,IACnB,W,OAAM5B,EAAoB,K,CACnC,GAAG,CAAC4B,IAEJ,IAAMK,GAAW1E,EAAAA,EAAAA,cACf,SAAC2E,G,IAUYpC,EAkBKQ,EA3BhBF,GAAgB,GAChBF,GAA0B,GAC1B,IAAMiC,EAAyB,CAC7B,CACEC,QAASnJ,EAAiBoJ,sBAAsBC,gCAAgCtH,KAChF4C,MAAOsE,EAAO1D,UAEhB,CACE4D,QAASnJ,EAAiBoJ,sBAAsBE,mBAAmBvH,KACnE4C,M,QAAOkC,EAAAA,EAA6B0C,MAAK,Y,OAAGxH,EAAAA,OAAoBkH,EAAOd,Y,WAAhEtB,IAAAA,OAAAA,EAAAA,EAA+E2C,cAItFP,EAAOhB,MACTiB,EAAIhK,KAAK,CACPiK,QAASnJ,EAAiByJ,+BAA+B1H,KACzD4C,MAAOsE,EAAOhB,QAIlByB,EAAAA,EAAAA,GAAgB,CACdxI,QAASA,EAAQa,KACjB4H,cAAe3J,EAAiB4J,uBAAuB7H,KACvDwD,SAAUA,EAASxD,KACnB8H,mBAAoB,CAClB,CACEC,cAAe9J,EAAiB+J,uBAAuBhI,KACvDiI,SAAU3C,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAiBtF,OAG/BmH,IAAK,CACH,CACEC,QAASnJ,EAAiBoJ,sBAAsBa,sBAAsBlI,KACtEmI,aAAchB,MAIjBiB,MAAK,YACJC,EAAAA,EAAAA,cAAa,CACXC,MAAO7G,EAAE,gCAAiC,oCAC1C+C,KAAM,YAERO,IACAwD,IACAC,GACF,IACCC,OAAM,SAACC,IACNL,EAAAA,EAAAA,cAAa,CACXC,MAAO7G,EAAE,+BAAgC,mCACzCkH,SAAUD,EAAIE,QACdpE,KAAM,SAEV,IACCqE,SAAQ,W,OAAMzD,GAAgB,E,GACnC,GACA,CACEF,EACAI,EACA9B,EACAvF,EACAkB,EAAQa,KACR8E,EACAyD,EACAC,IAIEM,GAAUvG,EAAAA,EAAAA,cAAY,WAC1B6C,GAAgB,GAChBF,GAA0B,EAC5B,GAAG,IAEH,OACE,kBAAC6D,EAAAA,IAAIA,CAAC9B,SAAUH,EAAaG,EAAU6B,GAAUvJ,UAAWC,EAAOwJ,eACjE,kBAAC1J,MAAAA,KACEf,GACC,kBAACe,MAAAA,CAAIC,UAAWC,EAAOyJ,WACrB,kBAACC,EAAAA,IAAkBA,CACjB1E,KAAK,QACL8D,MAAO7G,EAAE,8BAA+B,sCACxCkH,SAAUlH,EACR,iCACA,oGAEF0H,aAAAA,EACAC,iBAAAA,KAIN,kBAAC9J,MAAAA,CAAIC,UAAWC,EAAO6J,OACrB,kBAACC,KAAAA,CAAG/J,UAAWC,EAAO+J,qBAAsB9H,EAAE,kBAAmB,sBACjE,kBAAC+H,EAAAA,GAAUA,CACTnH,KAAK,WACLwE,QAASA,EACT4C,OAAQ,Y,IACkCjL,EAA6BA,EAD5D6K,EAAAA,EAAAA,MAAOK,EAAAA,EAAAA,WAAclL,M,OAC9B,kBAAC8C,EAAgBA,EAAAA,EAAAA,CAAAA,EAAK+H,GAAAA,CAAOM,WAAWnL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,SAASgB,YAAapL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,U,MAIjF9D,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAA8BvB,QAAS,GACtC,kBAACjE,MAAAA,CAAIC,UAAWC,EAAO6J,OACrB,kBAACC,KAAAA,CAAG/J,UAAWC,EAAO+J,qBAAsB9H,EAAE,eAAgB,kBAC9D,kBAAC+H,EAAAA,GAAUA,CACTnH,KAAK,eACLwE,QAASA,EACT4C,OAAQ,Y,IAKSjL,EACEA,EANR6K,EAAAA,EAAAA,MAAOK,EAAAA,EAAAA,WAAclL,M,OAC9B,kBAACsE,EAAAA,kBAAiBA,KAChB,kBAACO,EAAAA,IAAgBA,EAAAA,EAAAA,CACfC,YAAY,YACR+F,GAAAA,CACJM,WAAWnL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,SAClBgB,YAAapL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,UACnB9D,EAA6BtH,KAAI,SAACqM,G,OACjC,kBAACpG,EAAAA,IAAWA,CAACpG,GAAIwM,EAAY7J,KAAM0D,UAAWmG,EAAYxH,KAAMO,MAAOiH,EAAY7J,M,UAQjG,kBAACV,MAAAA,CAAIC,UAAWC,EAAO6J,OACrB,kBAACC,KAAAA,CAAG/J,UAAWC,EAAO+J,qBAAsB9H,EAAE,QAAS,UACvD,kBAAC+H,EAAAA,GAAUA,CACTnH,KAAK,OACLwE,QAASA,EACT4C,OAAQ,Y,IAE4BjL,EAA6BA,EAFtD6K,EAAAA,EAAAA,MAAOK,EAAAA,EAAAA,WAAclL,M,OAC9B,kBAACsE,EAAAA,kBAAiBA,KAChB,kBAACgH,EAAAA,IAAQA,EAAAA,EAAAA,CAAAA,EAAKT,GAAAA,CAAOM,WAAWnL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,SAASgB,YAAapL,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,W,KAK3E3D,GACC,kBAAC3F,MAAAA,CAAIC,UAAWC,EAAOuK,eACpBC,OAAO9C,OAAOP,GAAQnJ,KAAI,SAACgB,G,IACgBA,E,OAA1C,kBAAC0K,EAAAA,IAAkBA,CAACC,aAAAA,EAAYR,SAAUnK,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,QAASQ,iBAAAA,G,MAKlE,kBAACa,EAAAA,IAASA,CAAC1K,UAAWC,EAAO0K,WAC3B,kBAACC,EAAAA,IAAMA,CAACjH,KAAK,KAAKsB,KAAK,YAAYE,QAASK,GACzCtD,EAAE,SAAU,WAEf,kBAAC0I,EAAAA,IAAMA,CACLzE,KAAK,SACLxC,KAAK,KACLqB,SAAUpG,GAA6BgH,GAAgB5G,GACtDkD,EAAE,OAAQ,UAKrB,C,6kCCrNe,SAAS2I,GAAmB,G,IACzCpF,EADyC,EACzCA,oBACAD,EAFyC,EAEzCA,+BAGM,EALmC,EAGzC/F,YAEQG,QACF,GAAQqC,EAAAA,EAAAA,kBAANC,EACoDnB,EAAAA,IAAAA,EAAAA,EAAAA,WAAS,MAA9D2E,EAAqD3E,EAAAA,GAA7B4E,EAA6B5E,EAAAA,GACnBqF,GAAAA,EAAAA,EAAAA,KAAjCvH,EAAiCuH,EAAjCvH,UAAWiM,EAAsB1E,EAAtB0E,kBACoE1M,GAAAA,EAAAA,EAAAA,KAA/EM,EAA+EN,EAA/EM,iBAAkBE,EAA6DR,EAA7DQ,0BAA2BI,EAAkCZ,EAAlCY,8BACb+B,EAAAA,IAAAA,EAAAA,EAAAA,WAAS,MAA1C6E,EAAiC7E,EAAAA,GAAnB8E,EAAmB9E,EAAAA,GAClC,GAAsB+E,EAAAA,EAAAA,cAApBC,gBACF,GAAeC,EAAAA,EAAAA,KAAb/B,SACAlF,GAAoCqH,EAAAA,EAAAA,KAApCrH,OACAA,GAAmCsH,EAAAA,EAAAA,KAAnCtH,OAEFuH,GAAY7H,EAAAA,EAAAA,UAChB,W,OACE8H,EAAAA,EAAEC,OAAO,CACPuE,MAAOxE,EAAAA,EAAEyE,OAAO,CACdtE,eAAgBxE,EAAE,kBAAmB,0B,GAG3C,CAACA,IAUC8E,GAAAA,EAAAA,EAAAA,IAAoB,CAAEC,UAAUC,EAAAA,EAAAA,GAAYZ,KAAW,EAAvDU,EAJFG,UAAaC,EAAAA,EAAAA,OAAQC,EAAAA,EAAAA,QACrBC,EAGEN,EAHFM,QACAC,EAEEP,EAFFO,aAEEP,EADFS,WAGFhG,EAAAA,EAAAA,YAAU,WAER,OADAgE,GAAoB,W,OAAM4B,C,IACnB,W,OAAM5B,EAAoB,K,CACnC,GAAG,CAAC4B,IAEJ,IAAM4D,GAAoBjI,EAAAA,EAAAA,cACxB,SAACnD,GACC,I,EAAMqL,EAAWrL,EAAIqL,SAASjN,KAAI,SAACkN,G,IAAeA,EAAAA,EAAAA,E,OAAAA,QAAAA,EAAAA,SAAAA,IAAAA,GAAkB,QAAlBA,EAAAA,EAAYC,cAAZD,IAAAA,GAAiC,QAAjCA,EAAAA,EAAoBE,qBAApBF,IAAAA,OAAAA,EAAAA,EAAmCG,O,IAErF,MAAO,CADWzL,EAAI0L,WACf,Q,EAAgBL,EAASlH,OAASkH,EAAW,CAAChJ,EAAE,QAAS,U,0VAAY/D,KAAK,MACnF,GACA,CAAC+D,IAGGsJ,GAAO/M,EAAAA,EAAAA,UAAQ,W,OAAOqM,GAAoBW,EAAAA,EAAAA,GAAWX,GAAqB,E,GAAK,CAACA,IAChFY,GAAajN,EAAAA,EAAAA,UACjB,W,OACE+M,EAAKvN,KAAI,SAAC4B,GACR,IAAM8L,EAAyB9L,EAAIqL,SAASjD,MAAK,SAACkD,G,OAAeA,EAAW1K,OAASb,EAAQa,I,IAC7F,MAAO,CAAE3C,GAAI+B,EAAIkL,MAAO7F,MAAO+F,EAAkBpL,GAAM8L,uBAAAA,EACzD,G,GACF,CAACH,EAAMP,IAGHvD,GAAW1E,EAAAA,EAAAA,cACf,SAAC2E,G,IAMa1D,EAGI8B,E,IARV6F,EAAcJ,EAAKvD,MAAK,SAACpI,G,OAAQA,EAAIkL,QAAUpD,EAAOoD,K,IAC5DpF,GAA0B,IAC1ByC,EAAAA,EAAAA,GAAgB,CACdxI,QAASA,EAAQa,KACjB4H,cAAe3J,EAAiBmN,oCAAoCpL,KACpEwD,SAAUA,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAUxD,KACpB8H,mBAAoB,CAClB,CACEG,SAAU3C,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAiBtF,KAC3B+H,cAAe9J,EAAiB+J,uBAAuBhI,OAG3DmH,IAAK,KAEJiB,M,EAAK,SAAOiD,G,8jCACX,OAAIA,EAASC,GACJ,C,GAAAC,EAAAA,EAAAA,GAAmBrE,EAAOoD,MAAOnL,EAAQa,KAAMqL,EAASnN,KAAK8B,O,MAExE,E,2LAJaqL,G,kCAKZjD,MAAK,SAACiD,G,IACWA,EAAZA,IAAYA,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAUC,OACxBjD,EAAAA,EAAAA,cAAa,CACX7D,KAAM,UACN8D,MAAO7G,EAAE,wBAAyB,+BAClCkH,SAAUlH,EAAE,uBAAwB,gDAAiD,CACnF+J,YAAarM,EAAQwL,OAAOC,cAAcC,QAC1CC,UAAWK,EAAYL,cAG3BvC,IACAC,IACAzD,IAEJ,IACC0D,OAAM,SAACjK,G,IAIMA,GAHZ6J,EAAAA,EAAAA,cAAa,CACX7D,KAAM,QACN8D,MAAO7G,EAAE,6BAA8B,kCACvCkH,SAAUnK,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOoK,UAEnBL,IACAC,IACAzD,GACF,IACC8D,SAAQ,WACPzD,GAAgB,EAClB,GACJ,GACA,CAACF,EAA2B/F,EAASlB,EAAkBqH,EAAiB9B,EAAUuH,IAG9EjC,GAAUvG,EAAAA,EAAAA,cAAY,WAC1B2C,GAA0B,EAC5B,GAAG,IAEH,OACE,kBAAC6D,EAAAA,IAAIA,CAAC9B,SAAUH,EAAaG,EAAU6B,GAAUvJ,UAAWC,EAAOwJ,eACjE,kBAAC1J,MAAAA,KACEf,GACC,kBAACe,MAAAA,CAAIC,UAAWC,EAAOyJ,WACrB,kBAACC,EAAAA,IAAkBA,CACjB1E,KAAK,QACL8D,MAAO7G,EAAE,8BAA+B,sCACxCkH,SAAUlH,EACR,iCACA,oGAEF0H,aAAAA,EACAC,iBAAAA,KAIN,kBAACE,KAAAA,CAAG/J,UAAWC,EAAO+J,qBAAsB9H,EAAE,aAAc,iBAC3DrD,EACC,kBAACiF,EAAAA,IAAgBA,CAAC9D,UAAWC,EAAO2D,iBAAkBd,KAAK,SACzD,kBAACe,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,MACpB,kBAACA,EAAAA,IAAmBA,OAGtB,kBAACoG,EAAAA,GAAUA,CACTnH,KAAK,QACLwE,QAASA,EACT4C,OAAQ,Y,IAIO9C,EAAAA,EACEA,EAAAA,E,IALN0C,MAASrG,EAAAA,EAAAA,SAAUJ,EAAAA,EAAAA,M,OAC5B,kBAACS,EAAAA,IAAgBA,CACf9D,UAAWC,EAAO2D,iBAClBH,SAAUA,EACV2G,WAAWhD,QAAAA,EAAAA,SAAAA,IAAAA,GAAa,QAAbA,EAAAA,EAAQ2D,aAAR3D,IAAAA,OAAAA,EAAAA,EAAeiC,SAC1BgB,YAAajD,QAAAA,EAAAA,SAAAA,IAAAA,GAAa,QAAbA,EAAAA,EAAQ2D,aAAR3D,IAAAA,OAAAA,EAAAA,EAAeiC,SAC3BqC,EAAWzN,KAAI,Y,IAAGH,EAAAA,EAAAA,GAAIoH,EAAAA,EAAAA,MAAOyG,EAAAA,EAAAA,uB,OAC5B,kBAACzH,EAAAA,IAAWA,CACV1D,IAAK1C,EACLqG,UAAWe,EACXoC,QAASA,EACTjE,MAAOvF,EACPoO,QAASpO,IAAOuF,EAChB2B,SAAU2G,G,QAOrBjG,GACC,kBAAC3F,MAAAA,CAAIC,UAAWC,EAAOuK,eACpBC,OAAO9C,OAAOP,GAAQnJ,KAAI,SAACgB,G,OAC1B,kBAAC0K,EAAAA,IAAkBA,CAACC,aAAAA,EAAYR,SAAUnK,EAAMoK,S,MAKxD,kBAACqB,EAAAA,IAASA,CAAC1K,UAAWC,EAAO0K,WAC3B,kBAACC,EAAAA,IAAMA,CAACjH,KAAK,KAAKsB,KAAK,YAAYE,QAASK,GACzCtD,EAAE,SAAU,WAEf,kBAAC0I,EAAAA,IAAMA,CACLzE,KAAK,SACLxC,KAAK,KACLqB,SAAUpG,GAA6BgH,GAAgB5G,GACtDkD,EAAE,OAAQ,UAKrB,C,0HCvMA,IAAMiK,GAAkB,CACtBC,SAAU,WACVC,SAAU,YAKG,SAASC,GAAgCtK,G,IAQhBA,E,IAPhC,GAAQC,EAAAA,EAAAA,kBAANC,EACsCnB,G,GAAAA,EAAAA,EAAAA,UAAgCoL,GAAgBC,U,EAAQ,E,i0BAA/FG,EAAuCxL,EAAAA,GAAtByL,EAAsBzL,EAAAA,GACxC0L,GAAiCC,EAAAA,EAAAA,gBAAe,wBAEtD,OACE,kBAAC3M,MAAAA,CAAIC,UAAWC,EAAO0M,kBACrB,kBAAC5M,MAAAA,CAAIC,UAAWC,EAAO2M,wBACrB,kBAACC,GAAAA,EAA+B7K,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAOvC,cAExCgN,GACC,kBAAC1M,MAAAA,KACC,kBAACgK,KAAAA,CAAG/J,UAAWC,EAAO+J,qBAAsB9H,EAAE,iBAAkB,qBAChE,kBAACnC,MAAAA,CAAIC,UAAWC,EAAO6M,iBACrB,kBAACC,EAAAA,IAAeA,CAACtJ,SAAU,Y,IAAGX,EAAAA,EAAAA,K,OAAW0J,EAAmB1J,E,GAC1D,kBAACkK,EAAAA,IAAMA,CAAClK,KAAMqJ,GAAgBC,SAAUa,KAAM/K,EAAE,WAAY,cAC5D,kBAAC8K,EAAAA,IAAMA,CAAClK,KAAMqJ,GAAgBE,SAAUY,KAAM/K,EAAE,UAAW,iBAKnE,kBAACnC,MAAAA,CAAIC,UAAWC,EAAOiN,eACA,aAApBX,EAAiC,kBAACjH,EAAwBtD,GAAY,kBAAC6I,GAAuB7I,IAIvG,C,wDCxCO,SAASoG,EAAgB+E,GAC9B,OAAO3O,EAAAA,EAAAA,cAAwB,GAAe,OAAZD,EAAAA,YAAY,cAAa,CACzD6O,OAAQ,OACRC,QAAS,CACP,eAAgB,oBAElBC,KAAMH,GAEV,CAEO,SAASnB,EAAmBuB,EAAiBC,EAAqBC,GACvE,OAAOjP,EAAAA,EAAAA,cAAa,GAAuB+O,OAApBhP,EAAAA,YAAY,UAAgB,OAARgP,GAAW,CACpDH,OAAQ,OACRC,QAAS,CACP,eAAgB,oBAElBC,KAAM,CACJE,YAAAA,EACAC,cAAAA,IAGN,C","sources":["webpack://@kenyaemr/esm-ward-app/./src/location-selector/location-selector.scss","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-banner/style.scss","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-transfer-bed-swap/patient-transfer-swap.scss","webpack://@kenyaemr/esm-ward-app/./src/hooks/useEmrConfiguration.ts","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-banner/style.scss?2cee","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-banner/patient-banner.component.tsx","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-transfer-bed-swap/patient-transfer-swap.scss?2cd5","webpack://@kenyaemr/esm-ward-app/./src/hooks/useLocations.ts","webpack://@kenyaemr/esm-ward-app/./src/location-selector/location-selector.scss?8fdf","webpack://@kenyaemr/esm-ward-app/./src/location-selector/location-selector.component.tsx","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-transfer-bed-swap/patient-transfer-request-form.component.tsx","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-transfer-bed-swap/patient-bed-swap-form.component.tsx","webpack://@kenyaemr/esm-ward-app/./src/ward-workspace/patient-transfer-bed-swap/patient-transfer-swap.workspace.tsx","webpack://@kenyaemr/esm-ward-app/./src/ward.resource.ts"],"names":["___CSS_LOADER_EXPORT___","push","module","id","locals","customRep","map","prop","join","useEmrConfiguration","swrData","useSWRImmutable","restBaseUrl","openmrsFetch","useMemo","emrConfiguration","data","isLoadingEmrConfiguration","isLoading","mutateEmrConfiguration","mutate","errorFetchingEmrConfiguration","error","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","wardPatient","useCurrentWardCardConfig","headerRowElements","patient","bed","visit","div","className","styles","patientBanner","WardPatientBedNumber","WardPatientName","elementId","i","WardPatientCardElement","key","uuid","console","warn","useLocations","filterCriteria","skip","useState","totalLocations","setTotalLocations","fhirBaseUrl","url","searchParams","URLSearchParams","urlWithSearchParams","toString","rest","useEffect","total","results","locations","entry","resource","LocationSelector","props","useTranslation","t","isTablet","isDesktop","useLayoutType","searchTerm","setSearchTerm","debouncedSearchTerm","useDebounce","page","setPage","criteria","supportsTransferLocationTag","name","handlePageChange","useCallback","newPage","handleSearch","event","target","value","locationSelector","ResponsiveWrapper","Search","onChange","placeholder","size","radioButtonGroup","RadioButtonSkeleton","RadioButtonGroup","orientation","length","location","RadioButton","labelText","span","bodyShort01","pagination","start","end","Math","min","count","IconButton","classNames","button","buttonLeft","disabled","kind","label","onClick","ChevronLeftIcon","ChevronRightIcon","PatientTransferForm","dispositionsWithTypeTransfer","closeWorkspaceWithSavedChanges","promptBeforeClosing","showErrorNotifications","setShowErrorNotifications","isSubmitting","setIsSubmitting","useSession","currentProvider","useWardLocation","dispositions","filter","type","useAdmissionLocation","useInpatientRequest","zodSchema","z","object","string","required_error","note","optional","transferType","formDefaultValues","defaultValues","useForm","resolver","zodResolver","formState","errors","isDirty","control","handleSubmit","setValue","getValues","onSubmit","values","obs","concept","dispositionDescriptor","internalTransferLocationConcept","dispositionConcept","find","conceptCode","consultFreeTextCommentsConcept","createEncounter","encounterType","visitNoteEncounterType","encounterProviders","encounterRole","clinicianEncounterRole","provider","dispositionSetConcept","groupMembers","then","showSnackbar","title","mutateAdmissionLocation","mutateInpatientRequest","catch","err","subtitle","message","finally","onError","Form","formContainer","formError","InlineNotification","lowContrast","hideCloseButton","field","h2","productiveHeading02","Controller","render","fieldState","invalid","invalidText","disposition","TextArea","notifications","Object","ButtonSet","buttonSet","Button","PatientBedSwapForm","admissionLocation","bedId","number","getBedInformation","patients","bedPatient","person","preferredName","display","bedNumber","beds","filterBeds","bedDetails","isPatientAssignedToBed","bedSelected","transferWithinHospitalEncounterType","response","ok","assignPatientToBed","patientName","checked","TransferSection","TRANSFER","BED_SWAP","PatientTransferAndSwapWorkspace","selectedSection","setSelectedSection","isBedManagementModuleInstalled","useFeatureFlag","workspaceContent","patientWorkspaceBanner","WardPatientWorkspaceBanner","contentSwitcher","ContentSwitcher","Switch","text","workspaceForm","encounterPayload","method","headers","body","bedUuid","patientUuid","encounterUuid"],"sourceRoot":""}
package/dist/960.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"960.js","mappings":"oNAKe,SAASA,IACtB,IAAM,GAAQC,EAAAA,EAAAA,kBAANC,EAER,OACE,kBAACC,EAAAA,iBAAgBA,CACfC,QAAS,SAACC,G,OAAU,kBAACC,EAAAA,eAAmBD,E,EACxCE,MAAOL,EAAE,UAAW,WACpBM,gBAAiBN,EAAE,UAAW,WAC9BO,QAAS,W,OAAMC,EAAAA,EAAAA,iBAAgB,yB,EAC/BC,KAAM,QAGZ,C","sources":["webpack://@kenyaemr/esm-ward-app/./src/ward-patient-workspace/ward-patient-action-button.extension.tsx"],"names":["WardPatientActionButton","useTranslation","t","ActionMenuButton","getIcon","props","UserAvatarIcon","label","iconDescription","handler","launchWorkspace","type"],"sourceRoot":""}
@@ -1,28 +0,0 @@
1
- @use '@carbon/layout';
2
- @use '@carbon/type';
3
- @use '@openmrs/esm-styleguide/src/vars' as *;
4
-
5
- .container {
6
- display: flex;
7
- gap: layout.$spacing-04;
8
- justify-content: center;
9
- align-items: center;
10
- border: 1px dashed $ui-04;
11
- padding: layout.$spacing-03 layout.$spacing-04;
12
- height: fit-content;
13
- }
14
-
15
- .container:hover:not(.skeleton) {
16
- border: 1px solid transparent;
17
- box-shadow: inset 0px 0px 0px 2px $color-blue-60-2;
18
- cursor: pointer;
19
- }
20
-
21
- .emptyBed {
22
- @include type.type-style('heading-compact-01');
23
- color: $text-02;
24
- }
25
-
26
- .skeletonText {
27
- width: 6.25rem;
28
- }
@@ -1,35 +0,0 @@
1
- import React from 'react';
2
- import { useTranslation } from 'react-i18next';
3
- import { Tag } from '@carbon/react';
4
- import { type WardBedProps } from '../ward-view/ward-bed.component';
5
- import WardPatientCard from '../ward-patient-card/ward-patient-card.component';
6
- import styles from './occupied-bed.scss';
7
-
8
- const OccupiedBed: React.FC<WardBedProps> = ({ wardPatients, bed }) => {
9
- return (
10
- <div className={styles.occupiedBed}>
11
- {wardPatients.map((wardPatient, index: number) => {
12
- const last = index === wardPatients.length - 1;
13
- return (
14
- <div key={'occupied-bed-pt-' + wardPatient.patient.uuid}>
15
- <WardPatientCard {...wardPatient} bed={bed} />
16
- {!last && <BedShareDivider />}
17
- </div>
18
- );
19
- })}
20
- </div>
21
- );
22
- };
23
-
24
- const BedShareDivider = () => {
25
- const { t } = useTranslation();
26
- return (
27
- <div className={styles.bedDivider}>
28
- <div className={styles.bedDividerLine}></div>
29
- <Tag>{t('bedShare', 'Bed share')}</Tag>
30
- <div className={styles.bedDividerLine}></div>
31
- </div>
32
- );
33
- };
34
-
35
- export default OccupiedBed;
@@ -1,20 +0,0 @@
1
- import React from 'react';
2
- import WardPatientCard from '../ward-patient-card/ward-patient-card.component';
3
- import styles from './unassigned-patient.scss';
4
- import { type WardPatient } from '../types';
5
-
6
- export interface UnassignedPatientProps {
7
- wardPatient: WardPatient;
8
- }
9
-
10
- const UnassignedPatient: React.FC<UnassignedPatientProps> = ({ wardPatient }) => {
11
- return (
12
- <div className={styles.unassignedPatient}>
13
- <div key={'unassigned-bed-pt-' + wardPatient.patient.uuid}>
14
- <WardPatientCard {...wardPatient} />
15
- </div>
16
- </div>
17
- );
18
- };
19
-
20
- export default UnassignedPatient;
@@ -1,6 +0,0 @@
1
- @use '@openmrs/esm-styleguide/src/vars';
2
-
3
- .unassignedPatient {
4
- display: flex;
5
- flex-direction: column;
6
- }
@@ -1,9 +0,0 @@
1
- import { Type } from '@openmrs/esm-framework';
2
-
3
- export const admissionRequestNoteRowConfigSchema = {
4
- conceptUuid: {
5
- _type: Type.UUID,
6
- _description: 'Required. Identifies the concept for the admission request note.',
7
- _default: '161011AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
8
- },
9
- };
@@ -1,91 +0,0 @@
1
- import { Type } from '@openmrs/esm-framework';
2
-
3
- export const coloredObsTagsCardRowConfigSchema = {
4
- conceptUuid: {
5
- _type: Type.UUID,
6
- _description: 'Required. Identifies the concept to use to identify the desired observations.',
7
- // Problem list
8
- _default: '1284AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA',
9
- },
10
- summaryLabel: {
11
- _type: Type.String,
12
- _description: `Optional. The custom label or i18n key to the translated label to display for the summary tag. The summary tag shows the count of the number of answers that are present but not configured to show as their own tags. If not provided, defaults to the name of the concept.`,
13
- _default: null,
14
- },
15
- summaryLabelI18nModule: {
16
- _type: Type.String,
17
- _description: 'Optional. The custom module to use for translation of the summary label',
18
- _default: null,
19
- },
20
- summaryLabelColor: {
21
- _type: Type.String,
22
- _description:
23
- 'The color of the summary tag. See https://react.carbondesignsystem.com/?path=/docs/components-tag--overview for a list of supported colors',
24
- _default: null,
25
- },
26
- tags: {
27
- _type: Type.Array,
28
- _description: `An array specifying concept sets and color. Observations with coded values that are members of the specified concept sets will be displayed as their own tags with the specified color. Any observation with coded values not belonging to any concept sets specified will be summarized as a count in the summary tag. If a concept set is listed multiple times, the first matching applied-to rule takes precedence.`,
29
- _default: [],
30
- _elements: {
31
- color: {
32
- _type: Type.String,
33
- _description:
34
- 'Color of the tag. See https://react.carbondesignsystem.com/?path=/docs/components-tag--overview for a list of supported colors.',
35
- },
36
- appliedToConceptSets: {
37
- _type: Type.Array,
38
- _description: `The concept sets which the color applies to. Observations with coded values that are members of the specified concept sets will be displayed as their own tag with the specified color. If an observation's coded value belongs to multiple concept sets, the first matching applied-to rule takes precedence.`,
39
- _elements: {
40
- _type: Type.UUID,
41
- },
42
- },
43
- },
44
- },
45
- };
46
-
47
- export interface ColoredObsTagsCardRowConfigObject {
48
- /**
49
- * Required. Identifies the concept to use to identify the desired observations.
50
- */
51
- conceptUuid: string;
52
-
53
- /**
54
- * Optional. The custom label or i18n key to the translated label to display for the summary tag. The summary tag
55
- * shows the count of the number of answers that are present but not configured to show as their own tags. If not
56
- * provided, defaults to the name of the concept.
57
- */
58
- summaryLabel?: string;
59
- /**
60
- * Optional. The custom module to use for translation of the summary label
61
- */
62
- summaryLabelI18nModule?: string;
63
-
64
- /**
65
- * The color of the summary tag.
66
- * See https://react.carbondesignsystem.com/?path=/docs/components-tag--overview for a list of supported colors
67
- */
68
- summaryLabelColor?: string;
69
-
70
- /**
71
- * An array specifying concept sets and color. Observations with coded values that are members of the specified concept sets
72
- * will be displayed as their own tags with the specified color. Any observation with coded values not belonging to
73
- * any concept sets specified will be summarized as a count in the summary tag. If a concept set is listed multiple times,
74
- * the first matching applied-to rule takes precedence.
75
- */
76
- tags: Array<TagConfigObject>;
77
- }
78
-
79
- export interface TagConfigObject {
80
- /**
81
- * Color of the tag. See https://react.carbondesignsystem.com/?path=/docs/components-tag--overview for a list of supported colors.
82
- */
83
- color: string;
84
-
85
- /**
86
- * The concept sets which the color applies to. Observations with coded values that are members of the specified concept sets
87
- * will be displayed as their own tag with the specified color.
88
- * If an observation's coded value belongs to multiple concept sets, the first matching applied-to rule takes precedence.
89
- */
90
- appliedToConceptSets: Array<string>;
91
- }
@@ -1,32 +0,0 @@
1
- import { useConfig } from '@openmrs/esm-framework';
2
- import { useMemo } from 'react';
3
- import { type WardConfigObject, defaultWardPatientCard } from '../config-schema';
4
- import useWardLocation from './useWardLocation';
5
-
6
- export function useCurrentWardCardConfig() {
7
- const { wardPatientCards } = useConfig<WardConfigObject>();
8
- const {
9
- location: { uuid: locationUuid },
10
- } = useWardLocation();
11
-
12
- const currentWardCardConfig = useMemo(() => {
13
- const cardDefinition = wardPatientCards.cardDefinitions.find((cardDef) => {
14
- return (
15
- cardDef.appliedTo == null ||
16
- cardDef.appliedTo?.length == 0 ||
17
- cardDef.appliedTo.some((criteria) => criteria.location == locationUuid)
18
- );
19
- });
20
-
21
- return cardDefinition;
22
- }, [wardPatientCards, locationUuid]);
23
-
24
- if (!currentWardCardConfig) {
25
- console.warn(
26
- 'No ward card configuration has `appliedTo` criteria that matches the current location. Using the default configuration.',
27
- );
28
- return defaultWardPatientCard;
29
- }
30
-
31
- return currentWardCardConfig;
32
- }
@@ -1,27 +0,0 @@
1
- import React from 'react';
2
- import { type ObsElementDefinition } from '../../config-schema';
3
- import { type WardPatientCard } from '../../types';
4
- import WardPatientObs from '../row-elements/ward-patient-obs';
5
- import { useConfig } from '@openmrs/esm-framework';
6
-
7
- const AdmissionRequestNoteRowExtension: WardPatientCard = ({ patient, visit, inpatientAdmission }) => {
8
- const { conceptUuid } = useConfig<ObsElementDefinition>();
9
- const config: ObsElementDefinition = {
10
- conceptUuid,
11
- limit: 0,
12
- id: 'admission-note',
13
- onlyWithinCurrentVisit: true,
14
- orderBy: 'ascending',
15
- label: 'Admission Note',
16
- };
17
-
18
- // only show if the patient has not been admitted yet
19
- const admitted = inpatientAdmission != null;
20
- if (admitted) {
21
- return <></>;
22
- } else {
23
- return <WardPatientObs config={config} patient={patient} visit={visit} />;
24
- }
25
- };
26
-
27
- export default AdmissionRequestNoteRowExtension;
@@ -1,13 +0,0 @@
1
- import { useConfig } from '@openmrs/esm-framework';
2
- import React from 'react';
3
- import { type ColoredObsTagsCardRowConfigObject } from '../../config-schema-extension-colored-obs-tags';
4
- import { type WardPatientCard } from '../../types';
5
- import WardPatientCodedObsTags from '../row-elements/ward-patient-coded-obs-tags';
6
-
7
- const ColoredObsTagsCardRowExtension: WardPatientCard = ({ patient, visit }) => {
8
- const config = useConfig<ColoredObsTagsCardRowConfigObject>();
9
-
10
- return <WardPatientCodedObsTags config={config} patient={patient} visit={visit} />;
11
- };
12
-
13
- export default ColoredObsTagsCardRowExtension;
@@ -1,65 +0,0 @@
1
- import { InlineNotification } from '@carbon/react';
2
- import { useConfig } from '@openmrs/esm-framework';
3
- import React from 'react';
4
- import { useTranslation } from 'react-i18next';
5
- import { type WardConfigObject } from '../config-schema';
6
- import { type WardPatient } from '../types';
7
- import WardPatientAge from './row-elements/ward-patient-age';
8
- import WardPatientAddress from './row-elements/ward-patient-header-address';
9
- import WardPatientIdentifier from './row-elements/ward-patient-identifier';
10
- import WardPatientObs from './row-elements/ward-patient-obs';
11
- import WardPatientTimeOnWard from './row-elements/ward-patient-time-on-ward';
12
- import WardPatientTimeSinceAdmission from './row-elements/ward-patient-time-since-admission';
13
-
14
- export interface WardPatientCardElementProps extends WardPatient {
15
- elementId: string;
16
- }
17
-
18
- export const WardPatientCardElement: React.FC<WardPatientCardElementProps> = ({
19
- elementId,
20
- patient,
21
- visit,
22
- inpatientAdmission,
23
- }) => {
24
- const { obsElementDefinitions, identifierElementDefinitions, addressElementDefinitions } =
25
- useConfig<WardConfigObject>().wardPatientCards;
26
- const { t } = useTranslation();
27
- const { encounterAssigningToCurrentInpatientLocation, firstAdmissionOrTransferEncounter } = inpatientAdmission ?? {};
28
-
29
- switch (elementId) {
30
- case 'patient-age':
31
- return <WardPatientAge patient={patient} />;
32
- case 'time-on-ward': {
33
- return (
34
- <WardPatientTimeOnWard
35
- encounterAssigningToCurrentInpatientLocation={encounterAssigningToCurrentInpatientLocation}
36
- />
37
- );
38
- }
39
- case 'time-since-admission': {
40
- return <WardPatientTimeSinceAdmission firstAdmissionOrTransferEncounter={firstAdmissionOrTransferEncounter} />;
41
- }
42
- default: {
43
- const obsConfig = obsElementDefinitions.find((elementDef) => elementDef.id === elementId);
44
- const idConfig = identifierElementDefinitions.find((elementDef) => elementDef.id === elementId);
45
- const addressConfig = addressElementDefinitions.find((elementDef) => elementDef.id === elementId);
46
- if (obsConfig) {
47
- return <WardPatientObs patient={patient} visit={visit} config={obsConfig} />;
48
- } else if (idConfig) {
49
- return <WardPatientIdentifier patient={patient} config={idConfig} />;
50
- } else if (addressConfig) {
51
- return <WardPatientAddress patient={patient} config={addressConfig} />;
52
- } else {
53
- return (
54
- <InlineNotification kind="error">
55
- {t(
56
- 'invalidElementIdCopy',
57
- 'The configuration provided is invalid. It contains the following unknown element ID:',
58
- )}{' '}
59
- {elementId}
60
- </InlineNotification>
61
- );
62
- }
63
- }
64
- }
65
- };
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- import EmptyBed from '../beds/empty-bed.component';
3
- import { type WardPatient, type Bed } from '../types';
4
- import OccupiedBed from '../beds/occupied-bed.component';
5
- export interface WardBedProps {
6
- wardPatients: Array<WardPatient>;
7
- bed: Bed;
8
- }
9
-
10
- const WardBed: React.FC<WardBedProps> = ({ bed, wardPatients }) => {
11
- return wardPatients?.length > 0 ? <OccupiedBed bed={bed} wardPatients={wardPatients} /> : <EmptyBed bed={bed} />;
12
- };
13
-
14
- export default WardBed;
File without changes
File without changes