@gen-epix/ui-client-casedb 4.0.0

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 (832) hide show
  1. package/LICENSE +287 -0
  2. package/README.md +101 -0
  3. package/dist/@types/mui.d.ts +12 -0
  4. package/dist/@types/ui-casedb.d.ts +3 -0
  5. package/dist/@types/vite-env.d.ts +3 -0
  6. package/dist/_chunks/AddCasesToEventDialog.js +246 -0
  7. package/dist/_chunks/AddCasesToEventDialog.js.map +1 -0
  8. package/dist/_chunks/CaseContentForm.js +43 -0
  9. package/dist/_chunks/CaseContentForm.js.map +1 -0
  10. package/dist/_chunks/CaseDbDownloadUtil.js +2307 -0
  11. package/dist/_chunks/CaseDbDownloadUtil.js.map +1 -0
  12. package/dist/_chunks/CaseInfoDialog.js +509 -0
  13. package/dist/_chunks/CaseInfoDialog.js.map +1 -0
  14. package/dist/_chunks/CaseSetInfoDialog.js +479 -0
  15. package/dist/_chunks/CaseSetInfoDialog.js.map +1 -0
  16. package/dist/_chunks/CaseTypeInfoDialog.js +470 -0
  17. package/dist/_chunks/CaseTypeInfoDialog.js.map +1 -0
  18. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js +123 -0
  19. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js.map +1 -0
  20. package/dist/_chunks/CollectionIcon.js +18 -0
  21. package/dist/_chunks/CollectionIcon.js.map +1 -0
  22. package/dist/_chunks/CompletCaseTypeLoader.js +53 -0
  23. package/dist/_chunks/CompletCaseTypeLoader.js.map +1 -0
  24. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js +18 -0
  25. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js.map +1 -0
  26. package/dist/_chunks/CustomTabPanel.js +21 -0
  27. package/dist/_chunks/CustomTabPanel.js.map +1 -0
  28. package/dist/_chunks/Dashboard.js +2582 -0
  29. package/dist/_chunks/Dashboard.js.map +1 -0
  30. package/dist/_chunks/DashboardStoreLoader.js +67 -0
  31. package/dist/_chunks/DashboardStoreLoader.js.map +1 -0
  32. package/dist/_chunks/DataCollectionAccessInfo.js +66 -0
  33. package/dist/_chunks/DataCollectionAccessInfo.js.map +1 -0
  34. package/dist/_chunks/EpiCurveUtil.js +378 -0
  35. package/dist/_chunks/EpiCurveUtil.js.map +1 -0
  36. package/dist/_chunks/EpiCurveWidget.js +570 -0
  37. package/dist/_chunks/EpiCurveWidget.js.map +1 -0
  38. package/dist/_chunks/FilterUtil.js +1537 -0
  39. package/dist/_chunks/FilterUtil.js.map +1 -0
  40. package/dist/_chunks/FindSimilarCasesDialog.js +439 -0
  41. package/dist/_chunks/FindSimilarCasesDialog.js.map +1 -0
  42. package/dist/_chunks/FindSimilarCasesUtil.js +100 -0
  43. package/dist/_chunks/FindSimilarCasesUtil.js.map +1 -0
  44. package/dist/_chunks/HomePageTrends.js +276 -0
  45. package/dist/_chunks/HomePageTrends.js.map +1 -0
  46. package/dist/_chunks/LegendaItem.js +325 -0
  47. package/dist/_chunks/LegendaItem.js.map +1 -0
  48. package/dist/_chunks/LineListWidget.js +702 -0
  49. package/dist/_chunks/LineListWidget.js.map +1 -0
  50. package/dist/_chunks/PanelSeparator.js +1676 -0
  51. package/dist/_chunks/PanelSeparator.js.map +1 -0
  52. package/dist/_chunks/Upload.js +1506 -0
  53. package/dist/_chunks/Upload.js.map +1 -0
  54. package/dist/_chunks/UploadUtil.js +1976 -0
  55. package/dist/_chunks/UploadUtil.js.map +1 -0
  56. package/dist/_chunks/UserRightsDialog.js +152 -0
  57. package/dist/_chunks/UserRightsDialog.js.map +1 -0
  58. package/dist/_chunks/_MapCache.js +274 -0
  59. package/dist/_chunks/_MapCache.js.map +1 -0
  60. package/dist/_chunks/_Set.js +9 -0
  61. package/dist/_chunks/_Set.js.map +1 -0
  62. package/dist/_chunks/_arrayIncludesWith.js +42 -0
  63. package/dist/_chunks/_arrayIncludesWith.js.map +1 -0
  64. package/dist/_chunks/_baseClone.js +262 -0
  65. package/dist/_chunks/_baseClone.js.map +1 -0
  66. package/dist/_chunks/_baseFlatten.js +26 -0
  67. package/dist/_chunks/_baseFlatten.js.map +1 -0
  68. package/dist/_chunks/_baseGet.js +246 -0
  69. package/dist/_chunks/_baseGet.js.map +1 -0
  70. package/dist/_chunks/_baseIteratee.js +246 -0
  71. package/dist/_chunks/_baseIteratee.js.map +1 -0
  72. package/dist/_chunks/_cacheHas.js +29 -0
  73. package/dist/_chunks/_cacheHas.js.map +1 -0
  74. package/dist/_chunks/_defineProperty.js +15 -0
  75. package/dist/_chunks/_defineProperty.js.map +1 -0
  76. package/dist/_chunks/_setToArray.js +15 -0
  77. package/dist/_chunks/_setToArray.js.map +1 -0
  78. package/dist/_chunks/_setToString.js +64 -0
  79. package/dist/_chunks/_setToString.js.map +1 -0
  80. package/dist/_chunks/chunk-KS7C4IRE.js +1327 -0
  81. package/dist/_chunks/chunk-KS7C4IRE.js.map +1 -0
  82. package/dist/_chunks/cloneDeep.js +119 -0
  83. package/dist/_chunks/cloneDeep.js.map +1 -0
  84. package/dist/_chunks/dashboardStore.js +743 -0
  85. package/dist/_chunks/dashboardStore.js.map +1 -0
  86. package/dist/_chunks/eachYearOfInterval.js +104 -0
  87. package/dist/_chunks/eachYearOfInterval.js.map +1 -0
  88. package/dist/_chunks/esm.js +46335 -0
  89. package/dist/_chunks/esm.js.map +1 -0
  90. package/dist/_chunks/format.js +504 -0
  91. package/dist/_chunks/format.js.map +1 -0
  92. package/dist/_chunks/hasIn.js +34 -0
  93. package/dist/_chunks/hasIn.js.map +1 -0
  94. package/dist/_chunks/index.esm.js +1342 -0
  95. package/dist/_chunks/index.esm.js.map +1 -0
  96. package/dist/_chunks/index.module.js +72 -0
  97. package/dist/_chunks/index.module.js.map +1 -0
  98. package/dist/_chunks/intersection.js +58 -0
  99. package/dist/_chunks/intersection.js.map +1 -0
  100. package/dist/_chunks/isArguments.js +27 -0
  101. package/dist/_chunks/isArguments.js.map +1 -0
  102. package/dist/_chunks/isArray.js +9 -0
  103. package/dist/_chunks/isArray.js.map +1 -0
  104. package/dist/_chunks/isArrayLike.js +30 -0
  105. package/dist/_chunks/isArrayLike.js.map +1 -0
  106. package/dist/_chunks/isObjectLike.js +18 -0
  107. package/dist/_chunks/isObjectLike.js.map +1 -0
  108. package/dist/_chunks/isValid.js +14 -0
  109. package/dist/_chunks/isValid.js.map +1 -0
  110. package/dist/_chunks/last.js +13 -0
  111. package/dist/_chunks/last.js.map +1 -0
  112. package/dist/_chunks/noop.js +10 -0
  113. package/dist/_chunks/noop.js.map +1 -0
  114. package/dist/_chunks/omit.js +81 -0
  115. package/dist/_chunks/omit.js.map +1 -0
  116. package/dist/_chunks/parseISO.js +117 -0
  117. package/dist/_chunks/parseISO.js.map +1 -0
  118. package/dist/_chunks/protectedTokens.js +630 -0
  119. package/dist/_chunks/protectedTokens.js.map +1 -0
  120. package/dist/_chunks/react.js +11 -0
  121. package/dist/_chunks/react.js.map +1 -0
  122. package/dist/_chunks/round.js +64 -0
  123. package/dist/_chunks/round.js.map +1 -0
  124. package/dist/_chunks/shallow.js +31 -0
  125. package/dist/_chunks/shallow.js.map +1 -0
  126. package/dist/_chunks/sync.js +3796 -0
  127. package/dist/_chunks/sync.js.map +1 -0
  128. package/dist/_chunks/toDate.js +18 -0
  129. package/dist/_chunks/toDate.js.map +1 -0
  130. package/dist/_chunks/toString.js +31 -0
  131. package/dist/_chunks/toString.js.map +1 -0
  132. package/dist/_chunks/useUnit.js +30 -0
  133. package/dist/_chunks/useUnit.js.map +1 -0
  134. package/dist/_chunks/userProfileStoreContext.js +7 -0
  135. package/dist/_chunks/userProfileStoreContext.js.map +1 -0
  136. package/dist/_chunks/vanilla.js +20 -0
  137. package/dist/_chunks/vanilla.js.map +1 -0
  138. package/dist/_chunks/yup.js +73 -0
  139. package/dist/_chunks/yup.js.map +1 -0
  140. package/dist/classes/errors/UploadError.d.ts +5 -0
  141. package/dist/classes/errors/index.d.ts +1 -0
  142. package/dist/classes/errors/index.js +11 -0
  143. package/dist/classes/errors/index.js.map +1 -0
  144. package/dist/classes/filters/SelectionFilter.d.ts +11 -0
  145. package/dist/classes/filters/TreeFilter.d.ts +11 -0
  146. package/dist/classes/services/DataService/DataService.d.ts +13 -0
  147. package/dist/classes/services/DataService/index.d.ts +1 -0
  148. package/dist/classes/services/DataService/index.js +83 -0
  149. package/dist/classes/services/DataService/index.js.map +1 -0
  150. package/dist/classes/services/EventBusService/EventBusService.d.ts +49 -0
  151. package/dist/classes/services/EventBusService/index.d.ts +1 -0
  152. package/dist/classes/services/EventBusService/index.js +16 -0
  153. package/dist/classes/services/EventBusService/index.js.map +1 -0
  154. package/dist/classes/services/LineListService/LineListCaseSetMembersService/LineListCaseSetMembersService.d.ts +9 -0
  155. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.d.ts +1 -0
  156. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.js +27 -0
  157. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.js.map +1 -0
  158. package/dist/classes/services/LineListService/LineListIsOwnCaseService/LineListIsOwnCaseService.d.ts +9 -0
  159. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.d.ts +1 -0
  160. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.js +30 -0
  161. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.js.map +1 -0
  162. package/dist/classes/services/LineListService/LineListServiceAbstract/LineListServiceAbstract.d.ts +11 -0
  163. package/dist/classes/services/LineListService/LineListServiceAbstract/index.d.ts +1 -0
  164. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js +55 -0
  165. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js.map +1 -0
  166. package/dist/components/app/CaseDbApp/CaseDbApp.d.ts +1 -0
  167. package/dist/components/app/CaseDbApp/index.d.ts +1 -0
  168. package/dist/components/app/CaseDbApp/index.js +14 -0
  169. package/dist/components/app/CaseDbApp/index.js.map +1 -0
  170. package/dist/components/form/fields/ArrangementEditor/ArrangementEditor.d.ts +17 -0
  171. package/dist/components/form/fields/ArrangementEditor/index.d.ts +1 -0
  172. package/dist/components/form/fields/ArrangementEditor/index.js +130 -0
  173. package/dist/components/form/fields/ArrangementEditor/index.js.map +1 -0
  174. package/dist/components/ui/AddCasesToEventDialog/AddCasesToEventDialog.d.ts +10 -0
  175. package/dist/components/ui/AddCasesToEventDialog/AddCasesToEventDialogSuccessNotificationMessage.d.ts +6 -0
  176. package/dist/components/ui/AddCasesToEventDialog/index.d.ts +1 -0
  177. package/dist/components/ui/AddCasesToEventDialog/index.js +2 -0
  178. package/dist/components/ui/CaseContentForm/CaseContentForm.d.ts +10 -0
  179. package/dist/components/ui/CaseContentForm/index.d.ts +1 -0
  180. package/dist/components/ui/CaseContentForm/index.js +2 -0
  181. package/dist/components/ui/CaseContentFormDialog/CaseContentFormDialog.d.ts +9 -0
  182. package/dist/components/ui/CaseContentFormDialog/index.d.ts +1 -0
  183. package/dist/components/ui/CaseContentFormDialog/index.js +57 -0
  184. package/dist/components/ui/CaseContentFormDialog/index.js.map +1 -0
  185. package/dist/components/ui/CaseInfoDialog/CaseCaseSetInfo.d.ts +6 -0
  186. package/dist/components/ui/CaseInfoDialog/CaseContent.d.ts +6 -0
  187. package/dist/components/ui/CaseInfoDialog/CaseInfoDialog.d.ts +15 -0
  188. package/dist/components/ui/CaseInfoDialog/CaseInfoForm.d.ts +10 -0
  189. package/dist/components/ui/CaseInfoDialog/CaseSharingForm.d.ts +9 -0
  190. package/dist/components/ui/CaseInfoDialog/CaseSharingInfo.d.ts +3 -0
  191. package/dist/components/ui/CaseInfoDialog/ReadOnlyCaseContent.d.ts +6 -0
  192. package/dist/components/ui/CaseInfoDialog/index.d.ts +1 -0
  193. package/dist/components/ui/CaseInfoDialog/index.js +2 -0
  194. package/dist/components/ui/CaseSetInfoDialog/CaseSetContent.d.ts +6 -0
  195. package/dist/components/ui/CaseSetInfoDialog/CaseSetDescription.d.ts +6 -0
  196. package/dist/components/ui/CaseSetInfoDialog/CaseSetForm.d.ts +8 -0
  197. package/dist/components/ui/CaseSetInfoDialog/CaseSetInfoDialog.d.ts +10 -0
  198. package/dist/components/ui/CaseSetInfoDialog/CaseSetSharingForm.d.ts +10 -0
  199. package/dist/components/ui/CaseSetInfoDialog/CaseSetSharingInfo.d.ts +3 -0
  200. package/dist/components/ui/CaseSetInfoDialog/index.d.ts +1 -0
  201. package/dist/components/ui/CaseSetInfoDialog/index.js +2 -0
  202. package/dist/components/ui/CaseSummary/CaseSummary.d.ts +5 -0
  203. package/dist/components/ui/CaseSummary/index.d.ts +1 -0
  204. package/dist/components/ui/CaseSummary/index.js +92 -0
  205. package/dist/components/ui/CaseSummary/index.js.map +1 -0
  206. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoAccessRights.d.ts +5 -0
  207. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoColAccessRights.d.ts +4 -0
  208. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoData.d.ts +5 -0
  209. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialog.d.ts +7 -0
  210. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogContent.d.ts +3 -0
  211. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogWithLoader.d.ts +8 -0
  212. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoRegions.d.ts +5 -0
  213. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoTrees.d.ts +5 -0
  214. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoValues.d.ts +5 -0
  215. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoVariableDetails.d.ts +6 -0
  216. package/dist/components/ui/CaseTypeInfoDialog/index.d.ts +10 -0
  217. package/dist/components/ui/CaseTypeInfoDialog/index.js +2 -0
  218. package/dist/components/ui/CasesAlreadyInCaseSetWarning/CasesAlreadyInCaseSetWarning.d.ts +5 -0
  219. package/dist/components/ui/CasesAlreadyInCaseSetWarning/CasesAlreadyInCaseSetWarningCaseSetLink.d.ts +5 -0
  220. package/dist/components/ui/CasesAlreadyInCaseSetWarning/index.d.ts +1 -0
  221. package/dist/components/ui/CasesAlreadyInCaseSetWarning/index.js +2 -0
  222. package/dist/components/ui/CompletCaseTypeLoader/CompletCaseTypeLoader.d.ts +7 -0
  223. package/dist/components/ui/CompletCaseTypeLoader/index.d.ts +1 -0
  224. package/dist/components/ui/CompletCaseTypeLoader/index.js +2 -0
  225. package/dist/components/ui/CompletCaseTypeLoader/withEpiCompleteCaseTypeLoader.d.ts +4 -0
  226. package/dist/components/ui/ContextMenu/ContextMenu.d.ts +20 -0
  227. package/dist/components/ui/ContextMenu/index.d.ts +1 -0
  228. package/dist/components/ui/ContextMenu/index.js +96 -0
  229. package/dist/components/ui/ContextMenu/index.js.map +1 -0
  230. package/dist/components/ui/CreateEventDialog/CreateEventDialog.d.ts +10 -0
  231. package/dist/components/ui/CreateEventDialog/CreateEventDialogSuccessNotificationMessage.d.ts +6 -0
  232. package/dist/components/ui/CreateEventDialog/index.d.ts +1 -0
  233. package/dist/components/ui/CreateEventDialog/index.js +278 -0
  234. package/dist/components/ui/CreateEventDialog/index.js.map +1 -0
  235. package/dist/components/ui/CustomTabPanel/CustomTabPanel.d.ts +6 -0
  236. package/dist/components/ui/CustomTabPanel/index.d.ts +1 -0
  237. package/dist/components/ui/CustomTabPanel/index.js +2 -0
  238. package/dist/components/ui/Dashboard/Dashboard.d.ts +1 -0
  239. package/dist/components/ui/Dashboard/DashboardContent.d.ts +6 -0
  240. package/dist/components/ui/Dashboard/DashboardDownloadSidebarItem.d.ts +6 -0
  241. package/dist/components/ui/Dashboard/DashboardGeneralSettingsForm.d.ts +1 -0
  242. package/dist/components/ui/Dashboard/DashboardLayoutRenderer.d.ts +9 -0
  243. package/dist/components/ui/Dashboard/DashboardLayoutSettingsForm.d.ts +4 -0
  244. package/dist/components/ui/Dashboard/DashboardSearch.d.ts +1 -0
  245. package/dist/components/ui/Dashboard/DashboardSearchSettings.d.ts +10 -0
  246. package/dist/components/ui/Dashboard/DashboardSettingsSidebarItem.d.ts +8 -0
  247. package/dist/components/ui/Dashboard/DashboardWidget.d.ts +12 -0
  248. package/dist/components/ui/Dashboard/DashboardWidgetPlaceHolder.d.ts +1 -0
  249. package/dist/components/ui/Dashboard/DashboardWidgetSettingsForm.d.ts +4 -0
  250. package/dist/components/ui/Dashboard/DashboardZoneContext.d.ts +1 -0
  251. package/dist/components/ui/Dashboard/context/DashboardContext.d.ts +12 -0
  252. package/dist/components/ui/Dashboard/context/DashboardContextProvider.d.ts +6 -0
  253. package/dist/components/ui/Dashboard/index.d.ts +2 -0
  254. package/dist/components/ui/Dashboard/index.js +2 -0
  255. package/dist/components/ui/DashboardEditCases/DashboardEditCases.d.ts +6 -0
  256. package/dist/components/ui/DashboardEditCases/index.d.ts +1 -0
  257. package/dist/components/ui/DashboardEditCases/index.js +70 -0
  258. package/dist/components/ui/DashboardEditCases/index.js.map +1 -0
  259. package/dist/components/ui/DashboardStoreLoader/DashboardStoreLoader.d.ts +7 -0
  260. package/dist/components/ui/DashboardStoreLoader/DashboardStoreLoaderContent.d.ts +8 -0
  261. package/dist/components/ui/DashboardStoreLoader/index.d.ts +2 -0
  262. package/dist/components/ui/DashboardStoreLoader/index.js +2 -0
  263. package/dist/components/ui/DashboardStoreLoader/withEpiDashboardStore.d.ts +4 -0
  264. package/dist/components/ui/DataCollectionAccessInfo/DataCollectionAccessInfo.d.ts +1 -0
  265. package/dist/components/ui/DataCollectionAccessInfo/index.d.ts +1 -0
  266. package/dist/components/ui/DataCollectionAccessInfo/index.js +2 -0
  267. package/dist/components/ui/EpiCurveWidget/EpiCurveBarChart.d.ts +21 -0
  268. package/dist/components/ui/EpiCurveWidget/EpiCurveStackedAreaChart.d.ts +22 -0
  269. package/dist/components/ui/EpiCurveWidget/EpiCurveWidget.d.ts +2 -0
  270. package/dist/components/ui/EpiCurveWidget/index.d.ts +1 -0
  271. package/dist/components/ui/EpiCurveWidget/index.js +2 -0
  272. package/dist/components/ui/FileSelector/FileSelector.d.ts +7 -0
  273. package/dist/components/ui/FileSelector/index.d.ts +1 -0
  274. package/dist/components/ui/FileSelector/index.js +206 -0
  275. package/dist/components/ui/FileSelector/index.js.map +1 -0
  276. package/dist/components/ui/FindSimilarCasesDialog/FindSimilarCasesDialog.d.ts +11 -0
  277. package/dist/components/ui/FindSimilarCasesDialog/FindSimilarCasesDialogDateRangeChart.d.ts +11 -0
  278. package/dist/components/ui/FindSimilarCasesDialog/index.d.ts +1 -0
  279. package/dist/components/ui/FindSimilarCasesDialog/index.js +2 -0
  280. package/dist/components/ui/Grouping/Grouping.d.ts +1 -0
  281. package/dist/components/ui/Grouping/index.d.ts +1 -0
  282. package/dist/components/ui/Grouping/index.js +102 -0
  283. package/dist/components/ui/Grouping/index.js.map +1 -0
  284. package/dist/components/ui/HistogramWidget/HistogramWidget.d.ts +1 -0
  285. package/dist/components/ui/HistogramWidget/index.d.ts +1 -0
  286. package/dist/components/ui/HistogramWidget/index.js +333 -0
  287. package/dist/components/ui/HistogramWidget/index.js.map +1 -0
  288. package/dist/components/ui/HomePageTrends/HomePageTrendCard.d.ts +9 -0
  289. package/dist/components/ui/HomePageTrends/HomePageTrends.d.ts +4 -0
  290. package/dist/components/ui/HomePageTrends/index.d.ts +1 -0
  291. package/dist/components/ui/HomePageTrends/index.js +2 -0
  292. package/dist/components/ui/LegendaItem/LegendaItem.d.ts +10 -0
  293. package/dist/components/ui/LegendaItem/index.d.ts +1 -0
  294. package/dist/components/ui/LegendaItem/index.js +2 -0
  295. package/dist/components/ui/LineListWidget/LineListWidget.d.ts +1 -0
  296. package/dist/components/ui/LineListWidget/LineListWidgetIsInEventCell.d.ts +6 -0
  297. package/dist/components/ui/LineListWidget/LineListWidgetIsOwnCaseCell.d.ts +6 -0
  298. package/dist/components/ui/LineListWidget/LineListWidgetPrimaryMenu.d.ts +5 -0
  299. package/dist/components/ui/LineListWidget/LineListWidgetSecondaryMenu.d.ts +1 -0
  300. package/dist/components/ui/LineListWidget/LineListWidgetTitle.d.ts +1 -0
  301. package/dist/components/ui/LineListWidget/index.d.ts +1 -0
  302. package/dist/components/ui/LineListWidget/index.js +2 -0
  303. package/dist/components/ui/LineListWidget/useEpiLineListWidgetEmitDownloadOptions.d.ts +1 -0
  304. package/dist/components/ui/MapWidget/MapWidget.d.ts +1 -0
  305. package/dist/components/ui/MapWidget/index.d.ts +1 -0
  306. package/dist/components/ui/MapWidget/index.js +302 -0
  307. package/dist/components/ui/MapWidget/index.js.map +1 -0
  308. package/dist/components/ui/PanelSeparator/PanelSeparatorHorizontal.d.ts +2 -0
  309. package/dist/components/ui/PanelSeparator/PanelSeparatorVertical.d.ts +2 -0
  310. package/dist/components/ui/PanelSeparator/index.d.ts +2 -0
  311. package/dist/components/ui/PanelSeparator/index.js +2 -0
  312. package/dist/components/ui/RemoveCasesFromEventDialog/RemoveCasesFromEventDialog.d.ts +10 -0
  313. package/dist/components/ui/RemoveCasesFromEventDialog/index.d.ts +1 -0
  314. package/dist/components/ui/RemoveCasesFromEventDialog/index.js +111 -0
  315. package/dist/components/ui/RemoveCasesFromEventDialog/index.js.map +1 -0
  316. package/dist/components/ui/RemoveFindSimilarCasesResultDialog/RemoveFindSimilarCasesResultDialog.d.ts +9 -0
  317. package/dist/components/ui/SequenceDownloadDialog/SequenceDownloadDialog.d.ts +10 -0
  318. package/dist/components/ui/SequenceDownloadDialog/index.d.ts +1 -0
  319. package/dist/components/ui/SequenceDownloadDialog/index.js +89 -0
  320. package/dist/components/ui/SequenceDownloadDialog/index.js.map +1 -0
  321. package/dist/components/ui/TreeDescription/TreeDescription.d.ts +5 -0
  322. package/dist/components/ui/TreeDescription/index.d.ts +1 -0
  323. package/dist/components/ui/TreeDescription/index.js +40 -0
  324. package/dist/components/ui/TreeDescription/index.js.map +1 -0
  325. package/dist/components/ui/TreeWidget/TreeWidget.d.ts +1 -0
  326. package/dist/components/ui/TreeWidget/index.d.ts +1 -0
  327. package/dist/components/ui/TreeWidget/index.js +404 -0
  328. package/dist/components/ui/TreeWidget/index.js.map +1 -0
  329. package/dist/components/ui/Upload/Upload.d.ts +1 -0
  330. package/dist/components/ui/Upload/UploadCaseResultTable.d.ts +18 -0
  331. package/dist/components/ui/Upload/UploadCreateCases.d.ts +1 -0
  332. package/dist/components/ui/Upload/UploadEditColumnValuesDialog.d.ts +12 -0
  333. package/dist/components/ui/Upload/UploadMapColumns.d.ts +1 -0
  334. package/dist/components/ui/Upload/UploadMapSequences.d.ts +1 -0
  335. package/dist/components/ui/Upload/UploadNavigation.d.ts +10 -0
  336. package/dist/components/ui/Upload/UploadPreview.d.ts +4 -0
  337. package/dist/components/ui/Upload/UploadPreviewNavigation.d.ts +5 -0
  338. package/dist/components/ui/Upload/UploadSelectFile.d.ts +1 -0
  339. package/dist/components/ui/Upload/UploadSelectSequenceFiles.d.ts +1 -0
  340. package/dist/components/ui/Upload/index.d.ts +1 -0
  341. package/dist/components/ui/Upload/index.js +2 -0
  342. package/dist/components/ui/UserRightsDialog/UserRightsDialog.d.ts +9 -0
  343. package/dist/components/ui/UserRightsDialog/UserRightsDialogCaseAccessPolicy.d.ts +5 -0
  344. package/dist/components/ui/UserRightsDialog/index.d.ts +1 -0
  345. package/dist/components/ui/UserRightsDialog/index.js +2 -0
  346. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/UsersEffectiveRightsDetailsDialog.d.ts +13 -0
  347. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.d.ts +1 -0
  348. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js +373 -0
  349. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js.map +1 -0
  350. package/dist/components/ui/Warning/Warning.d.ts +4 -0
  351. package/dist/components/ui/Warning/index.d.ts +1 -0
  352. package/dist/components/ui/Warning/index.js +29 -0
  353. package/dist/components/ui/Warning/index.js.map +1 -0
  354. package/dist/components/ui/WidgetHeaderIconButton/WidgetHeaderIconButton.d.ts +5 -0
  355. package/dist/components/ui/WidgetHeaderIconButton/index.d.ts +1 -0
  356. package/dist/components/ui/WidgetHeaderIconButton/index.js +24 -0
  357. package/dist/components/ui/WidgetHeaderIconButton/index.js.map +1 -0
  358. package/dist/components/ui/WidgetMenu/WidgetMenu.d.ts +6 -0
  359. package/dist/components/ui/WidgetMenu/index.d.ts +1 -0
  360. package/dist/components/ui/WidgetMenu/index.js +26 -0
  361. package/dist/components/ui/WidgetMenu/index.js.map +1 -0
  362. package/dist/components/ui/WidgetUnavailable/WidgetUnavailable.d.ts +6 -0
  363. package/dist/components/ui/WidgetUnavailable/index.d.ts +1 -0
  364. package/dist/components/ui/WidgetUnavailable/index.js +18 -0
  365. package/dist/components/ui/WidgetUnavailable/index.js.map +1 -0
  366. package/dist/constants/dashboard.d.ts +9 -0
  367. package/dist/constants/dashboard.js +14 -0
  368. package/dist/constants/dashboard.js.map +1 -0
  369. package/dist/constants/query.d.ts +62 -0
  370. package/dist/constants/query.js +163 -0
  371. package/dist/constants/query.js.map +1 -0
  372. package/dist/context/caseAbac/CaseAbacContext.d.ts +14 -0
  373. package/dist/context/caseAbac/CaseAbacContextProvider.d.ts +6 -0
  374. package/dist/context/caseAbac/index.d.ts +3 -0
  375. package/dist/context/caseAbac/useCaseAbacContext.d.ts +2 -0
  376. package/dist/context/caseTypeAbac/CaseTypeAbacContext.d.ts +14 -0
  377. package/dist/context/caseTypeAbac/CaseTypeAbacContextProvider.d.ts +6 -0
  378. package/dist/context/caseTypeAbac/index.d.ts +3 -0
  379. package/dist/context/caseTypeAbac/useCaseTypeAbacContext.d.ts +2 -0
  380. package/dist/dataHooks/useAssemblyProtocolsQuery/index.d.ts +1 -0
  381. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js +21 -0
  382. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js.map +1 -0
  383. package/dist/dataHooks/useAssemblyProtocolsQuery/useAssemblyProtocolsQuery.d.ts +6 -0
  384. package/dist/dataHooks/useCaseRightsQuery/index.d.ts +1 -0
  385. package/dist/dataHooks/useCaseRightsQuery/index.js +17 -0
  386. package/dist/dataHooks/useCaseRightsQuery/index.js.map +1 -0
  387. package/dist/dataHooks/useCaseRightsQuery/useCaseRightsQuery.d.ts +3 -0
  388. package/dist/dataHooks/useCaseSetCategoriesQuery/index.d.ts +1 -0
  389. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js +22 -0
  390. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js.map +1 -0
  391. package/dist/dataHooks/useCaseSetCategoriesQuery/useCaseSetCategoriesQuery.d.ts +6 -0
  392. package/dist/dataHooks/useCaseSetRightsQuery/index.d.ts +1 -0
  393. package/dist/dataHooks/useCaseSetRightsQuery/index.js +13 -0
  394. package/dist/dataHooks/useCaseSetRightsQuery/index.js.map +1 -0
  395. package/dist/dataHooks/useCaseSetRightsQuery/useCaseSetRightsQuery.d.ts +3 -0
  396. package/dist/dataHooks/useCaseSetStatsQuery/index.d.ts +1 -0
  397. package/dist/dataHooks/useCaseSetStatsQuery/index.js +19 -0
  398. package/dist/dataHooks/useCaseSetStatsQuery/index.js.map +1 -0
  399. package/dist/dataHooks/useCaseSetStatsQuery/useCaseSetStatsQuery.d.ts +5 -0
  400. package/dist/dataHooks/useCaseSetStatusesQuery/index.d.ts +1 -0
  401. package/dist/dataHooks/useCaseSetStatusesQuery/index.js +22 -0
  402. package/dist/dataHooks/useCaseSetStatusesQuery/index.js.map +1 -0
  403. package/dist/dataHooks/useCaseSetStatusesQuery/useCaseSetStatusesQuery.d.ts +6 -0
  404. package/dist/dataHooks/useCaseSetsQuery/index.d.ts +1 -0
  405. package/dist/dataHooks/useCaseSetsQuery/index.js +22 -0
  406. package/dist/dataHooks/useCaseSetsQuery/index.js.map +1 -0
  407. package/dist/dataHooks/useCaseSetsQuery/useCaseSetsQuery.d.ts +6 -0
  408. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.d.ts +1 -0
  409. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js +22 -0
  410. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js.map +1 -0
  411. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/useCaseTypeSetCategoriesQuery.d.ts +6 -0
  412. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.d.ts +1 -0
  413. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.js +21 -0
  414. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.js.map +1 -0
  415. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/useCaseTypeSetCategoryPurposeQuery.d.ts +4 -0
  416. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.d.ts +1 -0
  417. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js +13 -0
  418. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js.map +1 -0
  419. package/dist/dataHooks/useCaseTypeSetMembersQuery/useCaseTypeSetMembersQuery.d.ts +3 -0
  420. package/dist/dataHooks/useCaseTypeSetsQuery/index.d.ts +1 -0
  421. package/dist/dataHooks/useCaseTypeSetsQuery/index.js +25 -0
  422. package/dist/dataHooks/useCaseTypeSetsQuery/index.js.map +1 -0
  423. package/dist/dataHooks/useCaseTypeSetsQuery/useCaseTypeSetsQuery.d.ts +7 -0
  424. package/dist/dataHooks/useCaseTypeStatsQuery/index.d.ts +1 -0
  425. package/dist/dataHooks/useCaseTypeStatsQuery/index.js +13 -0
  426. package/dist/dataHooks/useCaseTypeStatsQuery/index.js.map +1 -0
  427. package/dist/dataHooks/useCaseTypeStatsQuery/useCaseTypeStatsQuery.d.ts +3 -0
  428. package/dist/dataHooks/useCaseTypesQuery/index.d.ts +1 -0
  429. package/dist/dataHooks/useCaseTypesQuery/index.js +24 -0
  430. package/dist/dataHooks/useCaseTypesQuery/index.js.map +1 -0
  431. package/dist/dataHooks/useCaseTypesQuery/useCaseTypesQuery.d.ts +9 -0
  432. package/dist/dataHooks/useColSetMembersQuery/index.d.ts +1 -0
  433. package/dist/dataHooks/useColSetMembersQuery/index.js +13 -0
  434. package/dist/dataHooks/useColSetMembersQuery/index.js.map +1 -0
  435. package/dist/dataHooks/useColSetMembersQuery/useColSetMembersQuery.d.ts +3 -0
  436. package/dist/dataHooks/useColSetsQuery/index.d.ts +1 -0
  437. package/dist/dataHooks/useColSetsQuery/index.js +21 -0
  438. package/dist/dataHooks/useColSetsQuery/index.js.map +1 -0
  439. package/dist/dataHooks/useColSetsQuery/useColSetsQuery.d.ts +6 -0
  440. package/dist/dataHooks/useColTypesQuery/index.d.ts +1 -0
  441. package/dist/dataHooks/useColTypesQuery/index.js +51 -0
  442. package/dist/dataHooks/useColTypesQuery/index.js.map +1 -0
  443. package/dist/dataHooks/useColTypesQuery/useColTypesQuery.d.ts +4 -0
  444. package/dist/dataHooks/useColsQuery/index.d.ts +1 -0
  445. package/dist/dataHooks/useColsQuery/index.js +27 -0
  446. package/dist/dataHooks/useColsQuery/index.js.map +1 -0
  447. package/dist/dataHooks/useColsQuery/useColsQuery.d.ts +7 -0
  448. package/dist/dataHooks/useConceptQuery/index.d.ts +1 -0
  449. package/dist/dataHooks/useConceptQuery/index.js +26 -0
  450. package/dist/dataHooks/useConceptQuery/index.js.map +1 -0
  451. package/dist/dataHooks/useConceptQuery/useConceptQuery.d.ts +7 -0
  452. package/dist/dataHooks/useConceptRelationTypeQuery/index.d.ts +1 -0
  453. package/dist/dataHooks/useConceptRelationTypeQuery/index.js +15 -0
  454. package/dist/dataHooks/useConceptRelationTypeQuery/index.js.map +1 -0
  455. package/dist/dataHooks/useConceptRelationTypeQuery/useConceptRelationTypeQuery.d.ts +4 -0
  456. package/dist/dataHooks/useConceptSetTypeQuery/index.d.ts +1 -0
  457. package/dist/dataHooks/useConceptSetTypeQuery/index.js +22 -0
  458. package/dist/dataHooks/useConceptSetTypeQuery/index.js.map +1 -0
  459. package/dist/dataHooks/useConceptSetTypeQuery/useConceptSetTypeQuery.d.ts +4 -0
  460. package/dist/dataHooks/useConceptSetsQuery/index.d.ts +1 -0
  461. package/dist/dataHooks/useConceptSetsQuery/index.js +21 -0
  462. package/dist/dataHooks/useConceptSetsQuery/index.js.map +1 -0
  463. package/dist/dataHooks/useConceptSetsQuery/useConceptSetsQuery.d.ts +6 -0
  464. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.d.ts +1 -0
  465. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js +13 -0
  466. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js.map +1 -0
  467. package/dist/dataHooks/useDataCollectionSetMembersQuery/useDataCollectionSetMembersQuery.d.ts +3 -0
  468. package/dist/dataHooks/useDataCollectionsQuery/index.d.ts +1 -0
  469. package/dist/dataHooks/useDataCollectionsQuery/index.js +22 -0
  470. package/dist/dataHooks/useDataCollectionsQuery/index.js.map +1 -0
  471. package/dist/dataHooks/useDataCollectionsQuery/useDataCollectionsQuery.d.ts +6 -0
  472. package/dist/dataHooks/useDimTypesQuery/index.d.ts +1 -0
  473. package/dist/dataHooks/useDimTypesQuery/index.js +26 -0
  474. package/dist/dataHooks/useDimTypesQuery/index.js.map +1 -0
  475. package/dist/dataHooks/useDimTypesQuery/useDimTypesQuery.d.ts +4 -0
  476. package/dist/dataHooks/useDimsQuery/index.d.ts +1 -0
  477. package/dist/dataHooks/useDimsQuery/index.js +26 -0
  478. package/dist/dataHooks/useDimsQuery/index.js.map +1 -0
  479. package/dist/dataHooks/useDimsQuery/useDimsQuery.d.ts +7 -0
  480. package/dist/dataHooks/useDiseasesQuery/index.d.ts +1 -0
  481. package/dist/dataHooks/useDiseasesQuery/index.js +21 -0
  482. package/dist/dataHooks/useDiseasesQuery/index.js.map +1 -0
  483. package/dist/dataHooks/useDiseasesQuery/useDiseasesQuery.d.ts +6 -0
  484. package/dist/dataHooks/useEtiologicalAgentsQuery/index.d.ts +1 -0
  485. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js +21 -0
  486. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js.map +1 -0
  487. package/dist/dataHooks/useEtiologicalAgentsQuery/useEtiologicalAgentsQuery.d.ts +6 -0
  488. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.d.ts +1 -0
  489. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js +18 -0
  490. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js.map +1 -0
  491. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/useGeneticDistanceProtocolsQuery.d.ts +5 -0
  492. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.d.ts +1 -0
  493. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js +14 -0
  494. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js.map +1 -0
  495. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/useOrganizationAccessCasePoliciesQuery.d.ts +3 -0
  496. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.d.ts +1 -0
  497. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js +14 -0
  498. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js.map +1 -0
  499. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/useOrganizationShareCasePoliciesQuery.d.ts +3 -0
  500. package/dist/dataHooks/useRefColsQuery/index.d.ts +1 -0
  501. package/dist/dataHooks/useRefColsQuery/index.js +22 -0
  502. package/dist/dataHooks/useRefColsQuery/index.js.map +1 -0
  503. package/dist/dataHooks/useRefColsQuery/useRefColsQuery.d.ts +6 -0
  504. package/dist/dataHooks/useRefColsValidationRulesQuery/index.d.ts +1 -0
  505. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js +13 -0
  506. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js.map +1 -0
  507. package/dist/dataHooks/useRefColsValidationRulesQuery/useRefColsValidationRulesQuery.d.ts +3 -0
  508. package/dist/dataHooks/useRefDimsQuery/index.d.ts +1 -0
  509. package/dist/dataHooks/useRefDimsQuery/index.js +22 -0
  510. package/dist/dataHooks/useRefDimsQuery/index.js.map +1 -0
  511. package/dist/dataHooks/useRefDimsQuery/useRefDimsQuery.d.ts +6 -0
  512. package/dist/dataHooks/useRegionQuery/index.d.ts +1 -0
  513. package/dist/dataHooks/useRegionQuery/index.js +25 -0
  514. package/dist/dataHooks/useRegionQuery/index.js.map +1 -0
  515. package/dist/dataHooks/useRegionQuery/useRegionQuery.d.ts +7 -0
  516. package/dist/dataHooks/useRegionRelationTypeQuery/index.d.ts +1 -0
  517. package/dist/dataHooks/useRegionRelationTypeQuery/index.js +20 -0
  518. package/dist/dataHooks/useRegionRelationTypeQuery/index.js.map +1 -0
  519. package/dist/dataHooks/useRegionRelationTypeQuery/useRegionRelationTypeQuery.d.ts +4 -0
  520. package/dist/dataHooks/useRegionSetsQuery/index.d.ts +1 -0
  521. package/dist/dataHooks/useRegionSetsQuery/index.js +21 -0
  522. package/dist/dataHooks/useRegionSetsQuery/index.js.map +1 -0
  523. package/dist/dataHooks/useRegionSetsQuery/useRegionSetsQuery.d.ts +6 -0
  524. package/dist/dataHooks/useSequencingProtocolsQuery/index.d.ts +1 -0
  525. package/dist/dataHooks/useSequencingProtocolsQuery/index.js +21 -0
  526. package/dist/dataHooks/useSequencingProtocolsQuery/index.js.map +1 -0
  527. package/dist/dataHooks/useSequencingProtocolsQuery/useSequencingProtocolsQuery.d.ts +6 -0
  528. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.d.ts +1 -0
  529. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.js +42 -0
  530. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.js.map +1 -0
  531. package/dist/dataHooks/useTreeAlgorithmCodesQuery/useTreeAlgorithmCodesQuery.d.ts +4 -0
  532. package/dist/dataHooks/useUnitQuery/index.d.ts +1 -0
  533. package/dist/dataHooks/useUnitQuery/index.js +2 -0
  534. package/dist/dataHooks/useUnitQuery/useUnit.d.ts +4 -0
  535. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.d.ts +1 -0
  536. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js +14 -0
  537. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js.map +1 -0
  538. package/dist/dataHooks/useUserAccessCasePoliciesQuery/useUserAccessCasePoliciesQuery.d.ts +3 -0
  539. package/dist/dataHooks/useUserEffectiveRightsQuery/index.d.ts +1 -0
  540. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js +83 -0
  541. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js.map +1 -0
  542. package/dist/dataHooks/useUserEffectiveRightsQuery/useUserEffectiveRightsQuery.d.ts +16 -0
  543. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.d.ts +1 -0
  544. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js +14 -0
  545. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js.map +1 -0
  546. package/dist/dataHooks/useUserShareCasePoliciesQuery/useUserShareCasePoliciesQuery.d.ts +3 -0
  547. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.d.ts +1 -0
  548. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js +25 -0
  549. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js.map +1 -0
  550. package/dist/hooks/useOrganizationCasePolicyNameFactory/useOrganizationCasePolicyNameFactory.d.ts +3 -0
  551. package/dist/hooks/useUserCasePolicyNameFactory/index.d.ts +1 -0
  552. package/dist/hooks/useUserCasePolicyNameFactory/index.js +28 -0
  553. package/dist/hooks/useUserCasePolicyNameFactory/index.js.map +1 -0
  554. package/dist/hooks/useUserCasePolicyNameFactory/useUserCasePolicyNameFactory.d.ts +3 -0
  555. package/dist/locale/en.json +676 -0
  556. package/dist/locale/nl.json +676 -0
  557. package/dist/models/caseAccess.d.ts +15 -0
  558. package/dist/models/caseAccess.js +0 -0
  559. package/dist/models/caseDb.d.ts +96 -0
  560. package/dist/models/caseDb.js +8 -0
  561. package/dist/models/caseDb.js.map +1 -0
  562. package/dist/models/config.d.ts +70 -0
  563. package/dist/models/config.js +0 -0
  564. package/dist/models/dashboard.d.ts +91 -0
  565. package/dist/models/dashboard.js +10 -0
  566. package/dist/models/dashboard.js.map +1 -0
  567. package/dist/models/stratification.d.ts +40 -0
  568. package/dist/models/stratification.js +12 -0
  569. package/dist/models/stratification.js.map +1 -0
  570. package/dist/models/theme.d.ts +17 -0
  571. package/dist/models/theme.js +0 -0
  572. package/dist/models/upload.d.ts +51 -0
  573. package/dist/models/upload.js +8 -0
  574. package/dist/models/upload.js.map +1 -0
  575. package/dist/pages/CaseDbUsersAdminPage/CaseDbUsersAdminPage.d.ts +1 -0
  576. package/dist/pages/CaseDbUsersAdminPage/index.d.ts +1 -0
  577. package/dist/pages/CaseDbUsersAdminPage/index.js +67 -0
  578. package/dist/pages/CaseDbUsersAdminPage/index.js.map +1 -0
  579. package/dist/pages/CaseSetCategoryAdminPage/CaseSetCategoryAdminPage.d.ts +1 -0
  580. package/dist/pages/CaseSetCategoryAdminPage/index.d.ts +1 -0
  581. package/dist/pages/CaseSetCategoryAdminPage/index.js +69 -0
  582. package/dist/pages/CaseSetCategoryAdminPage/index.js.map +1 -0
  583. package/dist/pages/CaseSetStatusAdminPage/CaseSetStatusAdminPage.d.ts +1 -0
  584. package/dist/pages/CaseSetStatusAdminPage/index.d.ts +1 -0
  585. package/dist/pages/CaseSetStatusAdminPage/index.js +69 -0
  586. package/dist/pages/CaseSetStatusAdminPage/index.js.map +1 -0
  587. package/dist/pages/CaseTypeSetCategoriesAdminPage/CaseTypeSetCategoriesAdminPage.d.ts +1 -0
  588. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.d.ts +1 -0
  589. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js +92 -0
  590. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js.map +1 -0
  591. package/dist/pages/CaseTypeSetsAdminPage/CaseTypeSetsAdminPage.d.ts +1 -0
  592. package/dist/pages/CaseTypeSetsAdminPage/index.d.ts +1 -0
  593. package/dist/pages/CaseTypeSetsAdminPage/index.js +148 -0
  594. package/dist/pages/CaseTypeSetsAdminPage/index.js.map +1 -0
  595. package/dist/pages/CaseTypesAdminPage/CaseTypesAdminPage.d.ts +1 -0
  596. package/dist/pages/CaseTypesAdminPage/index.d.ts +1 -0
  597. package/dist/pages/CaseTypesAdminPage/index.js +288 -0
  598. package/dist/pages/CaseTypesAdminPage/index.js.map +1 -0
  599. package/dist/pages/CasesDetailPage/CasesDetailPage.d.ts +1 -0
  600. package/dist/pages/CasesDetailPage/index.d.ts +1 -0
  601. package/dist/pages/CasesDetailPage/index.js +41 -0
  602. package/dist/pages/CasesDetailPage/index.js.map +1 -0
  603. package/dist/pages/CasesPage/CasesPage.d.ts +1 -0
  604. package/dist/pages/CasesPage/index.d.ts +1 -0
  605. package/dist/pages/CasesPage/index.js +229 -0
  606. package/dist/pages/CasesPage/index.js.map +1 -0
  607. package/dist/pages/ColSetsAdminPage/ColSetsAdminPage.d.ts +1 -0
  608. package/dist/pages/ColSetsAdminPage/index.d.ts +1 -0
  609. package/dist/pages/ColSetsAdminPage/index.js +109 -0
  610. package/dist/pages/ColSetsAdminPage/index.js.map +1 -0
  611. package/dist/pages/ColsAdminPage/ColsAdminPage.d.ts +1 -0
  612. package/dist/pages/ColsAdminPage/index.d.ts +1 -0
  613. package/dist/pages/ColsAdminPage/index.js +315 -0
  614. package/dist/pages/ColsAdminPage/index.js.map +1 -0
  615. package/dist/pages/ConceptRelationsAdminPage/ConceptRelationsAdminPage.d.ts +1 -0
  616. package/dist/pages/ConceptRelationsAdminPage/index.d.ts +1 -0
  617. package/dist/pages/ConceptRelationsAdminPage/index.js +103 -0
  618. package/dist/pages/ConceptRelationsAdminPage/index.js.map +1 -0
  619. package/dist/pages/ConceptSetsAdminPage/ConceptSetsAdminPage.d.ts +1 -0
  620. package/dist/pages/ConceptSetsAdminPage/index.d.ts +1 -0
  621. package/dist/pages/ConceptSetsAdminPage/index.js +112 -0
  622. package/dist/pages/ConceptSetsAdminPage/index.js.map +1 -0
  623. package/dist/pages/ConceptsAdminPage/ConceptsAdminPage.d.ts +1 -0
  624. package/dist/pages/ConceptsAdminPage/index.d.ts +1 -0
  625. package/dist/pages/ConceptsAdminPage/index.js +94 -0
  626. package/dist/pages/ConceptsAdminPage/index.js.map +1 -0
  627. package/dist/pages/DataCollectionSetsAdminPage/DataCollectionSetsAdminPage.d.ts +1 -0
  628. package/dist/pages/DataCollectionSetsAdminPage/index.d.ts +1 -0
  629. package/dist/pages/DataCollectionSetsAdminPage/index.js +99 -0
  630. package/dist/pages/DataCollectionSetsAdminPage/index.js.map +1 -0
  631. package/dist/pages/DataCollectionVisualizationPage/DataCollectionVisualizationPage.d.ts +1 -0
  632. package/dist/pages/DataCollectionVisualizationPage/index.d.ts +1 -0
  633. package/dist/pages/DataCollectionVisualizationPage/index.js +494 -0
  634. package/dist/pages/DataCollectionVisualizationPage/index.js.map +1 -0
  635. package/dist/pages/DataCollectionsAdminPage/DataCollectionsAdminPage.d.ts +1 -0
  636. package/dist/pages/DataCollectionsAdminPage/index.d.ts +1 -0
  637. package/dist/pages/DataCollectionsAdminPage/index.js +54 -0
  638. package/dist/pages/DataCollectionsAdminPage/index.js.map +1 -0
  639. package/dist/pages/DimsAdminPage/DimsAdminPage.d.ts +1 -0
  640. package/dist/pages/DimsAdminPage/index.d.ts +1 -0
  641. package/dist/pages/DimsAdminPage/index.js +146 -0
  642. package/dist/pages/DimsAdminPage/index.js.map +1 -0
  643. package/dist/pages/DiseasesAdminPage/DiseasesAdminPage.d.ts +1 -0
  644. package/dist/pages/DiseasesAdminPage/index.d.ts +1 -0
  645. package/dist/pages/DiseasesAdminPage/index.js +57 -0
  646. package/dist/pages/DiseasesAdminPage/index.js.map +1 -0
  647. package/dist/pages/EtiologicalAgentsAdminPage/EtiologicalAgentsAdminPage.d.ts +1 -0
  648. package/dist/pages/EtiologicalAgentsAdminPage/index.d.ts +1 -0
  649. package/dist/pages/EtiologicalAgentsAdminPage/index.js +54 -0
  650. package/dist/pages/EtiologicalAgentsAdminPage/index.js.map +1 -0
  651. package/dist/pages/EtiologiesAdminPage/EtiologiesAdminPage.d.ts +1 -0
  652. package/dist/pages/EtiologiesAdminPage/index.d.ts +1 -0
  653. package/dist/pages/EtiologiesAdminPage/index.js +76 -0
  654. package/dist/pages/EtiologiesAdminPage/index.js.map +1 -0
  655. package/dist/pages/EventsDetailPage/EventsDetailPage.d.ts +1 -0
  656. package/dist/pages/EventsDetailPage/index.d.ts +1 -0
  657. package/dist/pages/EventsDetailPage/index.js +56 -0
  658. package/dist/pages/EventsDetailPage/index.js.map +1 -0
  659. package/dist/pages/EventsPage/EventsPage.d.ts +1 -0
  660. package/dist/pages/EventsPage/index.d.ts +1 -0
  661. package/dist/pages/EventsPage/index.js +221 -0
  662. package/dist/pages/EventsPage/index.js.map +1 -0
  663. package/dist/pages/HomePage/HomePage.d.ts +1 -0
  664. package/dist/pages/HomePage/index.d.ts +1 -0
  665. package/dist/pages/HomePage/index.js +35 -0
  666. package/dist/pages/HomePage/index.js.map +1 -0
  667. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/OrganizationAccessCasePoliciesAdminPage.d.ts +1 -0
  668. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.d.ts +1 -0
  669. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js +216 -0
  670. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js.map +1 -0
  671. package/dist/pages/OrganizationShareCasePoliciesAdminPage/OrganizationShareCasePoliciesAdminPage.d.ts +1 -0
  672. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.d.ts +1 -0
  673. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js +170 -0
  674. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js.map +1 -0
  675. package/dist/pages/RefColsAdminPage/RefColsAdminPage.d.ts +1 -0
  676. package/dist/pages/RefColsAdminPage/index.d.ts +1 -0
  677. package/dist/pages/RefColsAdminPage/index.js +302 -0
  678. package/dist/pages/RefColsAdminPage/index.js.map +1 -0
  679. package/dist/pages/RefDimsAdminPage/RefDimsAdminPage.d.ts +1 -0
  680. package/dist/pages/RefDimsAdminPage/index.d.ts +1 -0
  681. package/dist/pages/RefDimsAdminPage/index.js +110 -0
  682. package/dist/pages/RefDimsAdminPage/index.js.map +1 -0
  683. package/dist/pages/RegionRelationsAdminPage/RegionRelationsAdminPage.d.ts +1 -0
  684. package/dist/pages/RegionRelationsAdminPage/index.d.ts +1 -0
  685. package/dist/pages/RegionRelationsAdminPage/index.js +102 -0
  686. package/dist/pages/RegionRelationsAdminPage/index.js.map +1 -0
  687. package/dist/pages/RegionSetShapesAdminPage/RegionSetShapesAdminPage.d.ts +1 -0
  688. package/dist/pages/RegionSetShapesAdminPage/index.d.ts +1 -0
  689. package/dist/pages/RegionSetShapesAdminPage/index.js +73 -0
  690. package/dist/pages/RegionSetShapesAdminPage/index.js.map +1 -0
  691. package/dist/pages/RegionSetsAdminPage/RegionSetsAdminPage.d.ts +1 -0
  692. package/dist/pages/RegionSetsAdminPage/index.d.ts +1 -0
  693. package/dist/pages/RegionSetsAdminPage/index.js +101 -0
  694. package/dist/pages/RegionSetsAdminPage/index.js.map +1 -0
  695. package/dist/pages/RegionsAdminPage/RegionsAdminPage.d.ts +1 -0
  696. package/dist/pages/RegionsAdminPage/index.d.ts +1 -0
  697. package/dist/pages/RegionsAdminPage/index.js +99 -0
  698. package/dist/pages/RegionsAdminPage/index.js.map +1 -0
  699. package/dist/pages/TrendsPage/TrendsPage.d.ts +1 -0
  700. package/dist/pages/TrendsPage/index.d.ts +1 -0
  701. package/dist/pages/TrendsPage/index.js +17 -0
  702. package/dist/pages/TrendsPage/index.js.map +1 -0
  703. package/dist/pages/UploadPage/UploadPage.d.ts +1 -0
  704. package/dist/pages/UploadPage/index.d.ts +1 -0
  705. package/dist/pages/UploadPage/index.js +31 -0
  706. package/dist/pages/UploadPage/index.js.map +1 -0
  707. package/dist/pages/UserAccessCasePoliciesAdminPage/UserAccessCasePoliciesAdminPage.d.ts +1 -0
  708. package/dist/pages/UserAccessCasePoliciesAdminPage/index.d.ts +1 -0
  709. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js +206 -0
  710. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js.map +1 -0
  711. package/dist/pages/UserEffectiveRightsAdminPage/UserEffectiveRightsAdminPage.d.ts +1 -0
  712. package/dist/pages/UserEffectiveRightsAdminPage/index.d.ts +1 -0
  713. package/dist/pages/UserEffectiveRightsAdminPage/index.js +246 -0
  714. package/dist/pages/UserEffectiveRightsAdminPage/index.js.map +1 -0
  715. package/dist/pages/UserEffectiveRightsTesterAdminPage/UserEffectiveRightsTesterAdminPage.d.ts +1 -0
  716. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.d.ts +1 -0
  717. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js +195 -0
  718. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js.map +1 -0
  719. package/dist/pages/UserShareCasePoliciesAdminPage/UserShareCasePoliciesAdminPage.d.ts +1 -0
  720. package/dist/pages/UserShareCasePoliciesAdminPage/index.d.ts +1 -0
  721. package/dist/pages/UserShareCasePoliciesAdminPage/index.js +169 -0
  722. package/dist/pages/UserShareCasePoliciesAdminPage/index.js.map +1 -0
  723. package/dist/routes/adminRoutes.d.ts +6 -0
  724. package/dist/routes/index.d.ts +2 -0
  725. package/dist/routes/index.js +1110 -0
  726. package/dist/routes/index.js.map +1 -0
  727. package/dist/routes/routes.d.ts +6 -0
  728. package/dist/setup/setup.d.ts +1 -0
  729. package/dist/setup/setup.js +28 -0
  730. package/dist/setup/setup.js.map +1 -0
  731. package/dist/stores/dashboardStore/dashboardStore.d.ts +80 -0
  732. package/dist/stores/dashboardStore/dashboardStoreContext.d.ts +3 -0
  733. package/dist/stores/dashboardStore/index.d.ts +2 -0
  734. package/dist/stores/dashboardStore/index.js +2 -0
  735. package/dist/stores/uploadStore/index.d.ts +2 -0
  736. package/dist/stores/uploadStore/index.js +185 -0
  737. package/dist/stores/uploadStore/index.js.map +1 -0
  738. package/dist/stores/uploadStore/uploadStore.d.ts +80 -0
  739. package/dist/stores/uploadStore/uploadStoreContext.d.ts +3 -0
  740. package/dist/stores/userProfileStore/index.d.ts +1 -0
  741. package/dist/stores/userProfileStore/index.js +81 -0
  742. package/dist/stores/userProfileStore/index.js.map +1 -0
  743. package/dist/stores/userProfileStore/userProfileStore.d.ts +38 -0
  744. package/dist/stores/userProfileStore/userProfileStoreContext.d.ts +3 -0
  745. package/dist/theme/demoTheme/demoTheme.d.ts +3 -0
  746. package/dist/theme/demoTheme/index.d.ts +1 -0
  747. package/dist/theme/demoTheme/index.js +20 -0
  748. package/dist/theme/demoTheme/index.js.map +1 -0
  749. package/dist/utils/AbacUtil/AbacUtil.d.ts +7 -0
  750. package/dist/utils/AbacUtil/index.d.ts +1 -0
  751. package/dist/utils/AbacUtil/index.js +31 -0
  752. package/dist/utils/AbacUtil/index.js.map +1 -0
  753. package/dist/utils/CaseDbDataUtil/CaseDbDataUtil.d.ts +31 -0
  754. package/dist/utils/CaseDbDataUtil/index.d.ts +1 -0
  755. package/dist/utils/CaseDbDataUtil/index.js +43 -0
  756. package/dist/utils/CaseDbDataUtil/index.js.map +1 -0
  757. package/dist/utils/CaseDbDownloadUtil/CaseDbDownloadUtil.d.ts +17 -0
  758. package/dist/utils/CaseDbDownloadUtil/index.d.ts +1 -0
  759. package/dist/utils/CaseDbDownloadUtil/index.js +2 -0
  760. package/dist/utils/CaseDbStandardConfigUtil/CaseDbStandardConfigUtil.d.ts +7 -0
  761. package/dist/utils/CaseDbStandardConfigUtil/index.d.ts +1 -0
  762. package/dist/utils/CaseDbStandardConfigUtil/index.js +4778 -0
  763. package/dist/utils/CaseDbStandardConfigUtil/index.js.map +1 -0
  764. package/dist/utils/CaseDbTableUtil/CaseDbTableUtil.d.ts +6 -0
  765. package/dist/utils/CaseDbTableUtil/index.d.ts +1 -0
  766. package/dist/utils/CaseDbTableUtil/index.js +41 -0
  767. package/dist/utils/CaseDbTableUtil/index.js.map +1 -0
  768. package/dist/utils/CaseSelectionUtil/CaseSelectionUtil.d.ts +8 -0
  769. package/dist/utils/CaseSelectionUtil/index.d.ts +1 -0
  770. package/dist/utils/CaseSelectionUtil/index.js +29 -0
  771. package/dist/utils/CaseSelectionUtil/index.js.map +1 -0
  772. package/dist/utils/CaseSetUtil/CaseSetUtil.d.ts +4 -0
  773. package/dist/utils/CaseSetUtil/index.d.ts +1 -0
  774. package/dist/utils/CaseSetUtil/index.js +13 -0
  775. package/dist/utils/CaseSetUtil/index.js.map +1 -0
  776. package/dist/utils/CaseTypeFormUtil/CaseTypeFormUtil.d.ts +20 -0
  777. package/dist/utils/CaseTypeFormUtil/index.d.ts +1 -0
  778. package/dist/utils/CaseTypeFormUtil/index.js +199 -0
  779. package/dist/utils/CaseTypeFormUtil/index.js.map +1 -0
  780. package/dist/utils/CaseTypeUtil/CaseTypeUtil.d.ts +39 -0
  781. package/dist/utils/CaseTypeUtil/index.d.ts +1 -0
  782. package/dist/utils/CaseTypeUtil/index.js +135 -0
  783. package/dist/utils/CaseTypeUtil/index.js.map +1 -0
  784. package/dist/utils/CaseUtil/CaseUtil.d.ts +18 -0
  785. package/dist/utils/CaseUtil/index.d.ts +1 -0
  786. package/dist/utils/CaseUtil/index.js +138 -0
  787. package/dist/utils/CaseUtil/index.js.map +1 -0
  788. package/dist/utils/DashboardUtil/DashboardUtil.d.ts +29 -0
  789. package/dist/utils/DashboardUtil/index.d.ts +1 -0
  790. package/dist/utils/DashboardUtil/index.js +152 -0
  791. package/dist/utils/DashboardUtil/index.js.map +1 -0
  792. package/dist/utils/DataSetUtil/DataSetUtil.d.ts +17 -0
  793. package/dist/utils/DataSetUtil/index.d.ts +1 -0
  794. package/dist/utils/DataSetUtil/index.js +43 -0
  795. package/dist/utils/DataSetUtil/index.js.map +1 -0
  796. package/dist/utils/EffectiveRightsUtil/EffectiveRightsUtil.d.ts +29 -0
  797. package/dist/utils/EffectiveRightsUtil/index.d.ts +1 -0
  798. package/dist/utils/EffectiveRightsUtil/index.js +118 -0
  799. package/dist/utils/EffectiveRightsUtil/index.js.map +1 -0
  800. package/dist/utils/EpiCurveUtil/EpiCurveUtil.d.ts +96 -0
  801. package/dist/utils/EpiCurveUtil/index.d.ts +1 -0
  802. package/dist/utils/EpiCurveUtil/index.js +2 -0
  803. package/dist/utils/FileUtil/FileUtil.d.ts +5 -0
  804. package/dist/utils/FileUtil/index.d.ts +1 -0
  805. package/dist/utils/FileUtil/index.js +15 -0
  806. package/dist/utils/FileUtil/index.js.map +1 -0
  807. package/dist/utils/FilterUtil/FilterUtil.d.ts +11 -0
  808. package/dist/utils/FilterUtil/index.d.ts +1 -0
  809. package/dist/utils/FilterUtil/index.js +2 -0
  810. package/dist/utils/FindSimilarCasesUtil/FindSimilarCasesUtil.d.ts +7 -0
  811. package/dist/utils/FindSimilarCasesUtil/index.d.ts +1 -0
  812. package/dist/utils/FindSimilarCasesUtil/index.js +2 -0
  813. package/dist/utils/HistogramUtil/HistogramUtil.d.ts +78 -0
  814. package/dist/utils/HistogramUtil/index.d.ts +1 -0
  815. package/dist/utils/HistogramUtil/index.js +145 -0
  816. package/dist/utils/HistogramUtil/index.js.map +1 -0
  817. package/dist/utils/MapUtil/MapUtil.d.ts +38 -0
  818. package/dist/utils/MapUtil/index.d.ts +1 -0
  819. package/dist/utils/MapUtil/index.js +210 -0
  820. package/dist/utils/MapUtil/index.js.map +1 -0
  821. package/dist/utils/StratificationUtil/StratificationUtil.d.ts +25 -0
  822. package/dist/utils/StratificationUtil/index.d.ts +1 -0
  823. package/dist/utils/StratificationUtil/index.js +198 -0
  824. package/dist/utils/StratificationUtil/index.js.map +1 -0
  825. package/dist/utils/TreeWidgetUtil/TreeWidgetUtil.d.ts +7 -0
  826. package/dist/utils/TreeWidgetUtil/index.d.ts +1 -0
  827. package/dist/utils/TreeWidgetUtil/index.js +35 -0
  828. package/dist/utils/TreeWidgetUtil/index.js.map +1 -0
  829. package/dist/utils/UploadUtil/UploadUtil.d.ts +106 -0
  830. package/dist/utils/UploadUtil/index.d.ts +1 -0
  831. package/dist/utils/UploadUtil/index.js +2 -0
  832. package/package.json +784 -0
@@ -0,0 +1,509 @@
1
+ import { h as e } from "./_MapCache.js";
2
+ import { CaseTypeUtil as t } from "../utils/CaseTypeUtil/index.js";
3
+ import { CASEDB_QUERY_KEY as n } from "../constants/query.js";
4
+ import { CaseUtil as r, t as i } from "../utils/CaseUtil/index.js";
5
+ import { CaseSetUtil as a } from "../utils/CaseSetUtil/index.js";
6
+ import { t as o } from "./react.js";
7
+ import { t as s } from "./dashboardStore.js";
8
+ import { t as c } from "./shallow.js";
9
+ import { o as l } from "./index.esm.js";
10
+ import { t as u } from "./yup.js";
11
+ import { useDataCollectionOptionsQuery as d, useDataCollectionsMapQuery as f, useDataCollectionsQuery as p } from "../dataHooks/useDataCollectionsQuery/index.js";
12
+ import { t as m } from "./CaseContentForm.js";
13
+ import { useCaseRightsQuery as h } from "../dataHooks/useCaseRightsQuery/index.js";
14
+ import { n as g, r as _, t as v } from "./DataCollectionAccessInfo.js";
15
+ import { useCaseSetCategoryMapQuery as y } from "../dataHooks/useCaseSetCategoriesQuery/index.js";
16
+ import { useCaseSetStatusMapQuery as b } from "../dataHooks/useCaseSetStatusesQuery/index.js";
17
+ import "../components/ui/CaseContentForm/index.js";
18
+ import { array as ee, object as x, string as te } from "yup";
19
+ import { t as S } from "i18next";
20
+ import { CaseDbCaseApi as C, CaseDbColType as w, CaseDbEtlStatus as T, CaseDbUploadAction as ne } from "@gen-epix/api-casedb";
21
+ import { QueryClientService as E } from "@gen-epix/ui/classes/services/QueryClientService";
22
+ import { FORM_FIELD_DEFINITION_TYPE as D } from "@gen-epix/ui-form/models/form";
23
+ import { NotificationService as O } from "@gen-epix/ui/classes/services/NotificationService";
24
+ import { Box as k, Link as re, Table as A, TableBody as j, TableCell as M, TableHead as N, TableRow as P, Typography as F } from "@mui/material";
25
+ import { use as I, useCallback as L, useEffect as ie, useId as ae, useMemo as R, useRef as oe, useState as z } from "react";
26
+ import { useTranslation as B } from "react-i18next";
27
+ import { Fragment as se, jsx as V, jsxs as H } from "react/jsx-runtime";
28
+ import { ResponseHandler as U } from "@gen-epix/ui/components/ui/ResponseHandler";
29
+ import { useItemQuery as ce } from "@gen-epix/ui/hooks/useItemQuery";
30
+ import { useArray as W } from "@gen-epix/ui-core/hooks/useArray";
31
+ import { GenericForm as G } from "@gen-epix/ui-form/components/helpers/GenericForm";
32
+ import { useQueryMemo as K } from "@gen-epix/ui/hooks/useQueryMemo";
33
+ import { Confirmation as le } from "@gen-epix/ui/components/ui/Confirmation";
34
+ import ue from "@mui/icons-material/Edit";
35
+ import { withDialog as de } from "@gen-epix/ui/hoc/withDialog";
36
+ import { TestIdUtil as q } from "@gen-epix/ui-core/utils/TestIdUtil";
37
+ import fe from "@mui/icons-material/Save";
38
+ import { FormUtil as pe } from "@gen-epix/ui-form/utils/FormUtil";
39
+ import { GenericErrorMessage as J } from "@gen-epix/ui/components/ui/GenericErrorMessage";
40
+ import me from "@mui/icons-material/Delete";
41
+ import { EpiContactDetailsDialog as Y } from "@gen-epix/ui/components/epi/EpiContactDetailsDialog";
42
+ import he from "@mui/icons-material/Share";
43
+ import ge from "@mui/icons-material/ArrowLeft";
44
+ import { Spinner as X } from "@gen-epix/ui/components/ui/Spinner";
45
+ import { useDeleteMutation as _e } from "@gen-epix/ui/hooks/useDeleteMutation";
46
+ import { NavLink as ve } from "@gen-epix/ui/components/ui/NavLink";
47
+ //#region src/components/ui/CaseInfoDialog/CaseCaseSetInfo.tsx
48
+ var ye = ({ caseDbCase: e, ...t }) => {
49
+ let r = y(), i = b(), { t: o } = B(), s = {
50
+ invert: !1,
51
+ key: "case_id",
52
+ members: [e.id],
53
+ type: "UUID_SET"
54
+ }, { data: c, error: l, isLoading: u } = K({
55
+ queryFn: async ({ signal: e }) => (await C.getInstance().caseSetMembersPostQuery(s, null, null, { signal: e })).data,
56
+ queryKey: E.getInstance().getGenericKey(n.CASE_SET_MEMBERS, s)
57
+ }), d = {
58
+ invert: !1,
59
+ key: "id",
60
+ members: c?.map((e) => e.case_set_id) ?? [],
61
+ type: "UUID_SET"
62
+ }, { data: f, error: p, isLoading: m } = K({
63
+ enabled: d.members.length > 0,
64
+ queryFn: async ({ signal: e }) => (await C.getInstance().caseSetsPostQuery(d, null, null, { signal: e })).data,
65
+ queryKey: E.getInstance().getGenericKey(n.CASE_SETS, d)
66
+ }), h = W([r, i]);
67
+ return /* @__PURE__ */ H(k, {
68
+ ...t,
69
+ children: [/* @__PURE__ */ V(F, {
70
+ variant: "h6",
71
+ children: o`Events`
72
+ }), /* @__PURE__ */ H(U, {
73
+ error: l || p,
74
+ inlineSpinner: !0,
75
+ isLoading: u || m,
76
+ loadables: h,
77
+ shouldHideActionButtons: !0,
78
+ children: [f?.length > 0 && /* @__PURE__ */ H(A, {
79
+ size: "small",
80
+ children: [/* @__PURE__ */ V(N, { children: /* @__PURE__ */ H(P, { children: [
81
+ /* @__PURE__ */ V(M, {
82
+ sx: { width: "calc(100% * 1/3)" },
83
+ children: o`Name`
84
+ }),
85
+ /* @__PURE__ */ V(M, {
86
+ sx: { width: "calc(100% * 1/3)" },
87
+ children: o`Category`
88
+ }),
89
+ /* @__PURE__ */ V(M, {
90
+ sx: { width: "calc(100% * 1/3)" },
91
+ children: o`Status`
92
+ })
93
+ ] }) }), /* @__PURE__ */ V(j, { children: f?.map((e) => /* @__PURE__ */ H(P, { children: [
94
+ /* @__PURE__ */ V(M, { children: /* @__PURE__ */ V(ve, {
95
+ activeAsText: !0,
96
+ to: a.createCaseSetLink(e),
97
+ children: e.name
98
+ }) }),
99
+ /* @__PURE__ */ V(M, { children: r.map.get(e.case_set_category_id)?.name ?? o`Unknown` }),
100
+ /* @__PURE__ */ V(M, { children: i.map.get(e.case_set_status_id)?.name ?? o`Unknown` })
101
+ ] }, e.id)) })]
102
+ }), (!f || f?.length === 0) && /* @__PURE__ */ V(k, {
103
+ sx: { fontStyle: "italic" },
104
+ children: o`None`
105
+ })]
106
+ })]
107
+ });
108
+ }, be = ({ caseDbCase: e, caseRights: t, formId: r, onFinish: i, onIsSavingChange: a, ...l }) => {
109
+ let u = I(s), d = o(u, (e) => e.completeCaseType), f = o(u, c((e) => e.mutateCachedCase)), [p, h] = z(!1), g = R(() => {
110
+ let e = [];
111
+ return t.read_col_ids.forEach((n) => {
112
+ t.write_col_ids.includes(n) && e.push(n);
113
+ }), e;
114
+ }, [t]), _ = L((t, r) => {
115
+ h(!0), a(!0), (async () => {
116
+ let o = E.getInstance().getQueryKeyDependencies([n.CASES], !0), s = O.getInstance().showNotification({
117
+ isLoading: !0,
118
+ message: S("Saving case data"),
119
+ severity: "info"
120
+ });
121
+ try {
122
+ await E.getInstance().cancelQueries(o);
123
+ let n = (await C.getInstance().uploadCases({
124
+ case_batch: { cases: [{ case: {
125
+ case_type_id: d.id,
126
+ content: r,
127
+ created_in_data_collection_id: e.created_in_data_collection_id,
128
+ id: t
129
+ } }] },
130
+ case_type_id: d.id,
131
+ on_exists: ne.UPDATE
132
+ })).data;
133
+ if (n.status !== T.SKIPPED && n.status !== T.SUCCESS && n.status !== T.UPDATED) throw Error("Case upload failed");
134
+ f(e.id, e), O.getInstance().fulfillNotification(s, S("Successfully saved case data."), "success");
135
+ } catch {
136
+ O.getInstance().fulfillNotification(s, S("Could not save case data."), "error");
137
+ } finally {
138
+ await E.getInstance().invalidateQueryKeys(o), h(!1), a(!1), i();
139
+ }
140
+ })();
141
+ }, [
142
+ d.id,
143
+ e,
144
+ f,
145
+ i,
146
+ a
147
+ ]);
148
+ return /* @__PURE__ */ H(k, {
149
+ ...l,
150
+ children: [/* @__PURE__ */ V(F, {
151
+ variant: "h6",
152
+ children: S`Content`
153
+ }), /* @__PURE__ */ H(k, { children: [p && /* @__PURE__ */ V(X, {
154
+ inline: !0,
155
+ label: S`Saving case data`
156
+ }), !p && /* @__PURE__ */ V(m, {
157
+ caseContent: e.content,
158
+ caseId: e.id,
159
+ completeCaseType: d,
160
+ enabledColIds: g,
161
+ formId: r,
162
+ onSubmit: _
163
+ })] })]
164
+ });
165
+ }, xe = ({ caseDbCase: e, ...t }) => {
166
+ let { t: n } = B(), r = W([f()]);
167
+ return /* @__PURE__ */ H(k, {
168
+ ...t,
169
+ children: [
170
+ /* @__PURE__ */ V(F, {
171
+ variant: "h6",
172
+ children: n`Read-only content`
173
+ }),
174
+ !e && /* @__PURE__ */ V(J, { error: /* @__PURE__ */ Error("Case could not be found") }),
175
+ /* @__PURE__ */ V(U, {
176
+ inlineSpinner: !0,
177
+ loadables: r,
178
+ shouldHideActionButtons: !0,
179
+ children: e && /* @__PURE__ */ H(A, {
180
+ size: "small",
181
+ children: [/* @__PURE__ */ V(N, { children: /* @__PURE__ */ H(P, { children: [/* @__PURE__ */ V(M, {
182
+ sx: { width: "calc(100% * 1/3)" },
183
+ children: n`Column`
184
+ }), /* @__PURE__ */ V(M, {
185
+ sx: { width: "calc(100% * 2/3)" },
186
+ children: n`Value`
187
+ })] }) }), /* @__PURE__ */ V(j, { children: /* @__PURE__ */ H(P, { children: [/* @__PURE__ */ V(M, { children: n`Case id` }), /* @__PURE__ */ V(M, { children: e.id })] }) })]
188
+ })
189
+ })
190
+ ]
191
+ });
192
+ }, Se = ({ caseDbCase: e, ...n }) => {
193
+ let { t: i } = B(), a = oe(null), c = o(I(s), (e) => e.completeCaseType), l = R(() => t.getCols(c), [c]), u = L((e, t) => {
194
+ a.current.open({
195
+ organizationId: e,
196
+ organizationName: t
197
+ });
198
+ }, []);
199
+ return /* @__PURE__ */ H(k, {
200
+ ...n,
201
+ children: [
202
+ /* @__PURE__ */ V(F, {
203
+ variant: "h6",
204
+ children: i`Content`
205
+ }),
206
+ !e && /* @__PURE__ */ V(J, { error: /* @__PURE__ */ Error("Case could not be found") }),
207
+ e && /* @__PURE__ */ H(A, {
208
+ size: "small",
209
+ children: [/* @__PURE__ */ V(N, { children: /* @__PURE__ */ H(P, { children: [/* @__PURE__ */ V(M, {
210
+ sx: { width: "calc(100% / 3)" },
211
+ children: i`Column`
212
+ }), /* @__PURE__ */ V(M, {
213
+ sx: { width: "calc(100% / 3 * 2)" },
214
+ children: i`Value`
215
+ })] }) }), /* @__PURE__ */ V(j, { children: l.map((t) => {
216
+ let n = c.ref_cols[t.ref_col_id], i = r.getRowValue(e.content, t, c);
217
+ return /* @__PURE__ */ H(P, { children: [/* @__PURE__ */ V(M, {
218
+ sx: { width: "calc(100% / 3)" },
219
+ children: t.label
220
+ }), /* @__PURE__ */ H(M, {
221
+ sx: { width: "calc(100% / 3 * 2)" },
222
+ children: [n.col_type === w.ORGANIZATION && !i.isMissing && /* @__PURE__ */ V(re, {
223
+ color: "primary",
224
+ onClick: () => {
225
+ u(e.content[t.id], i.long);
226
+ },
227
+ sx: { cursor: "pointer" },
228
+ children: i.long
229
+ }), n.col_type !== w.ORGANIZATION && /* @__PURE__ */ V(se, { children: i.long })]
230
+ })] }, t.id);
231
+ }) })]
232
+ }),
233
+ /* @__PURE__ */ V(Y, { ref: a })
234
+ ]
235
+ });
236
+ }, Ce = ({ ...e }) => {
237
+ let { t } = B();
238
+ return /* @__PURE__ */ H(k, {
239
+ ...e,
240
+ children: [/* @__PURE__ */ V(F, {
241
+ variant: "h6",
242
+ children: t`Shared in`
243
+ }), /* @__PURE__ */ V(v, {})]
244
+ });
245
+ }, we = /* @__PURE__ */ e(i(), 1), Te = ({ caseDbCase: e, formId: t, onFinish: r, onIsSavingChange: i, ...a }) => {
246
+ let { t: o } = B(), [s, c] = z(!1), d = g(), f = R(() => x().shape({ dataCollectionIds: ee().of(te().uuid4()).required() }), []), p = R(() => [{
247
+ definition: D.AUTOCOMPLETE,
248
+ label: o`Data collections`,
249
+ multiple: !0,
250
+ name: "dataCollectionIds",
251
+ options: d?.itemDataCollectionOptions?.[0] ?? []
252
+ }], [o, d]), m = R(() => ({ dataCollectionIds: d?.rights?.[0]?.shared_in_data_collection_ids ?? [] }), [d]), h = R(() => pe.createFormValues(p, m), [p, m]), _ = l({
253
+ resolver: u(f),
254
+ values: h
255
+ }), { handleSubmit: v } = _, y = L(({ dataCollectionIds: t }) => {
256
+ (async () => {
257
+ c(!0), i(!0);
258
+ let a = E.getInstance().getQueryKeyDependencies([n.CASE_DATA_COLLECTION_LINKS], !0), s = O.getInstance().showNotification({
259
+ isLoading: !0,
260
+ message: o("Saving case data collections"),
261
+ severity: "info"
262
+ });
263
+ try {
264
+ await E.getInstance().cancelQueries(a);
265
+ let n = d?.rights?.[0], r = (0, we.default)(t, n.shared_in_data_collection_ids), i = (0, we.default)(n.shared_in_data_collection_ids, t);
266
+ r.length > 0 && await C.getInstance().caseDataCollectionLinksPostSome(r.map((t) => ({
267
+ case_id: e.id,
268
+ data_collection_id: t
269
+ }))), i.length > 0 && await C.getInstance().caseDataCollectionLinksDeleteSome(d.itemDataCollectionLinks[0]?.filter((e) => i.includes(e.data_collection_id)).map((e) => e.id).join(",")), O.getInstance().fulfillNotification(s, o("Successfully saved case data collections."), "success");
270
+ } catch {
271
+ O.getInstance().fulfillNotification(s, o("Could not save case data collections."), "error");
272
+ } finally {
273
+ await E.getInstance().invalidateQueryKeys(a), c(!1), i(!1), r();
274
+ }
275
+ })();
276
+ }, [
277
+ d,
278
+ e.id,
279
+ r,
280
+ i,
281
+ o
282
+ ]);
283
+ return s ? /* @__PURE__ */ V(X, {
284
+ inline: !0,
285
+ label: o`Saving case data collections`
286
+ }) : /* @__PURE__ */ H(k, {
287
+ ...a,
288
+ children: [/* @__PURE__ */ V(F, {
289
+ variant: "h6",
290
+ children: o`Data collections`
291
+ }), /* @__PURE__ */ V(G, {
292
+ formFieldDefinitions: p,
293
+ formId: t,
294
+ formMethods: _,
295
+ onSubmit: v(y),
296
+ schema: f
297
+ })]
298
+ });
299
+ }, Z = /* @__PURE__ */ function(e) {
300
+ return e.EDIT = "EDIT", e.INFO = "INFO", e.SHARING = "SHARING", e;
301
+ }({}), Q = de(({ onActionsChange: e, onClose: t, onTitleChange: r, openProps: i }) => {
302
+ let { t: a } = B(), l = R(() => [i.caseId], [i.caseId]), u = p(), m = f(), g = d(), v = o(I(s), c((e) => e.fetchData)), [y, b] = z(i.initialTab ?? "INFO"), [ee, x] = z(!1), [te, S] = z(!1), [w, T] = z(!1), ne = oe(null), D = ae(), O = ae(), k = L(async () => {
303
+ x(!1), S(!1), T(!0), b("INFO"), await v(), T(!1);
304
+ }, [v]), re = L(async () => {
305
+ await k(), t();
306
+ }, [t, k]), A = L(() => {
307
+ t();
308
+ }, [t]), { isMutating: j, mutate: M } = _e({
309
+ associationQueryKeys: E.getInstance().getQueryKeyDependencies([n.CASES], !0),
310
+ getErrorNotificationMessage: (e) => a("Unable to remove case: {{id}}.", { id: e.id }),
311
+ getProgressNotificationMessage: (e) => a("Deleting case: {{id}}...", { id: e.id }),
312
+ getSuccessNotificationMessage: (e) => a("Case: {{id}}, has been removed.", { id: e.id }),
313
+ onError: A,
314
+ onSuccess: re,
315
+ queryFn: async (e) => await C.getInstance().casesDeleteOne(e.id),
316
+ resourceQueryKey: E.getInstance().getGenericKey(n.CASES)
317
+ }), N = h(l, i.caseTypeId, !j && !w), P = W([
318
+ N,
319
+ u,
320
+ m,
321
+ g
322
+ ]), { data: G, error: de, isLoading: pe } = ce({
323
+ baseQueryKey: n.CASES_LAZY,
324
+ itemId: i.caseId,
325
+ useQueryOptions: {
326
+ enabled: !j && !w,
327
+ queryFn: async ({ signal: e }) => (await C.getInstance().casesGetOne(i.caseId, { signal: e })).data
328
+ }
329
+ }), J = R(() => ({
330
+ invert: !1,
331
+ key: "case_id",
332
+ members: [G?.id],
333
+ type: "UUID_SET"
334
+ }), [G?.id]), { data: Y, error: ve, isLoading: we } = K({
335
+ enabled: !!G,
336
+ queryFn: async ({ signal: e }) => (await C.getInstance().caseDataCollectionLinksPostQuery(J, null, null, { signal: e })).data,
337
+ queryKey: E.getInstance().getGenericKey(n.CASE_DATA_COLLECTION_LINKS, J)
338
+ }), Z = R(() => !!N.data && N.data.some((e) => e.is_full_access || e.write_col_ids.length), [N.data]), Q = R(() => !!N.data && N.data.some((e) => e.is_full_access || e.remove_data_collection_ids.length || e.add_data_collection_ids.length), [N.data]), Ee = L(() => !!N.data && N.data.some((e) => e.is_full_access || e.can_delete), [N]), De = L(() => {
339
+ b("EDIT");
340
+ }, []), Oe = L(() => {
341
+ b("SHARING");
342
+ }, []), ke = L(() => {
343
+ b("INFO");
344
+ }, []), Ae = L((e) => {
345
+ x(e);
346
+ }, []), je = L((e) => {
347
+ S(e);
348
+ }, []), Me = L(() => {
349
+ ne.current.open();
350
+ }, []), Ne = L(() => {
351
+ M(G);
352
+ }, [G, M]), $ = ee || te;
353
+ ie(() => {
354
+ r(y === "EDIT" ? a`Case information - Edit` : y === "SHARING" ? a`Case information - Share` : a`Case information`);
355
+ }, [
356
+ y,
357
+ r,
358
+ a
359
+ ]), ie(() => {
360
+ let t = [];
361
+ (y === "EDIT" || y === "SHARING") && t.push({
362
+ ...q.createAttributes("CaseInfoDialog-goBackButton"),
363
+ color: "primary",
364
+ disabled: $,
365
+ label: a`Go back`,
366
+ onClick: ke,
367
+ startIcon: /* @__PURE__ */ V(ge, {}),
368
+ variant: "outlined"
369
+ }), y === "EDIT" && Z ? t.push({
370
+ ...q.createAttributes("CaseInfoDialog-saveButton"),
371
+ color: "secondary",
372
+ disabled: $,
373
+ form: D,
374
+ label: a`Save`,
375
+ startIcon: /* @__PURE__ */ V(fe, {}),
376
+ type: "submit",
377
+ variant: "contained"
378
+ }) : y === "SHARING" && Q ? t.push({
379
+ ...q.createAttributes("CaseInfoDialog-saveButton"),
380
+ color: "secondary",
381
+ disabled: $,
382
+ form: O,
383
+ label: a`Save`,
384
+ startIcon: /* @__PURE__ */ V(fe, {}),
385
+ type: "submit",
386
+ variant: "contained"
387
+ }) : y === "INFO" && (t.push({
388
+ ...q.createAttributes("CaseSetInfoDialog-deleteButton"),
389
+ color: "primary",
390
+ disabled: !Ee(),
391
+ label: a`Delete`,
392
+ onClick: Me,
393
+ startIcon: /* @__PURE__ */ V(me, {}),
394
+ variant: "outlined"
395
+ }), t.push({
396
+ ...q.createAttributes("CaseInfoDialog-editDataCollectionsButton"),
397
+ color: "primary",
398
+ disabled: !Q,
399
+ label: a`Share`,
400
+ onClick: Oe,
401
+ startIcon: /* @__PURE__ */ V(he, {}),
402
+ variant: "outlined"
403
+ }), t.push({
404
+ ...q.createAttributes("CaseInfoDialog-editCaseContentButton"),
405
+ color: "primary",
406
+ disabled: !Z,
407
+ label: a`Edit`,
408
+ onClick: De,
409
+ startIcon: /* @__PURE__ */ V(ue, {}),
410
+ variant: "outlined"
411
+ })), e(t);
412
+ }, [
413
+ e,
414
+ De,
415
+ a,
416
+ y,
417
+ ke,
418
+ Oe,
419
+ D,
420
+ O,
421
+ t,
422
+ $,
423
+ Q,
424
+ Me,
425
+ Ee,
426
+ Z
427
+ ]);
428
+ let Pe = R(() => ({
429
+ createdInDataCollection: G ? m.map.get(G.created_in_data_collection_id) : void 0,
430
+ itemDataCollectionLinks: [Y],
431
+ rights: N.data,
432
+ userDataCollectionOptions: g.options,
433
+ userDataCollections: u.data,
434
+ userDataCollectionsMap: m.map
435
+ }), [
436
+ u.data,
437
+ m.map,
438
+ g.options,
439
+ Y,
440
+ N.data,
441
+ G
442
+ ]);
443
+ return w ? /* @__PURE__ */ V(X, {
444
+ inline: !0,
445
+ label: a`Refreshing data`
446
+ }) : /* @__PURE__ */ H(se, { children: [/* @__PURE__ */ V(U, {
447
+ error: de || ve,
448
+ inlineSpinner: !0,
449
+ isLoading: pe || we,
450
+ loadables: P,
451
+ shouldHideActionButtons: !0,
452
+ children: /* @__PURE__ */ H(_, {
453
+ caseAbac: Pe,
454
+ children: [
455
+ /* @__PURE__ */ V(xe, {
456
+ caseDbCase: G,
457
+ sx: { marginBottom: 2 }
458
+ }),
459
+ y === "INFO" && /* @__PURE__ */ H(se, { children: [
460
+ /* @__PURE__ */ V(Ce, { sx: { marginBottom: 2 } }),
461
+ /* @__PURE__ */ V(ye, {
462
+ caseDbCase: G,
463
+ sx: { marginBottom: 2 }
464
+ }),
465
+ /* @__PURE__ */ V(Se, {
466
+ caseDbCase: G,
467
+ sx: { marginBottom: 2 }
468
+ })
469
+ ] }),
470
+ y === "EDIT" && Z && /* @__PURE__ */ V(be, {
471
+ caseDbCase: G,
472
+ caseRights: N.data?.[0],
473
+ formId: D,
474
+ onFinish: k,
475
+ onIsSavingChange: Ae
476
+ }),
477
+ y === "EDIT" && !Z && /* @__PURE__ */ V(F, {
478
+ variant: "body1",
479
+ children: a`You do not have permissions to edit this case.`
480
+ }),
481
+ y === "SHARING" && Q && /* @__PURE__ */ V(Te, {
482
+ caseDbCase: G,
483
+ formId: O,
484
+ onFinish: k,
485
+ onIsSavingChange: je
486
+ }),
487
+ y === "SHARING" && !Q && /* @__PURE__ */ V(F, {
488
+ variant: "body1",
489
+ children: a`You do not have permissions to share this case.`
490
+ })
491
+ ]
492
+ })
493
+ }), /* @__PURE__ */ V(le, {
494
+ body: a`Are you sure you want to delete the case?`,
495
+ cancelLabel: a`Cancel`,
496
+ confirmLabel: a`Delete`,
497
+ onConfirm: Ne,
498
+ ref: ne,
499
+ title: a`Delete case?`
500
+ })] });
501
+ }, {
502
+ fullWidth: !0,
503
+ maxWidth: "lg",
504
+ testId: "CaseInfoDialog"
505
+ });
506
+ //#endregion
507
+ export { Q as n, Z as t };
508
+
509
+ //# sourceMappingURL=CaseInfoDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CaseInfoDialog.js","names":[],"sources":["../../src/components/ui/CaseInfoDialog/CaseCaseSetInfo.tsx","../../src/components/ui/CaseInfoDialog/CaseInfoForm.tsx","../../src/components/ui/CaseInfoDialog/ReadOnlyCaseContent.tsx","../../src/components/ui/CaseInfoDialog/CaseContent.tsx","../../src/components/ui/CaseInfoDialog/CaseSharingInfo.tsx","../../src/components/ui/CaseInfoDialog/CaseSharingForm.tsx","../../src/components/ui/CaseInfoDialog/CaseInfoDialog.tsx"],"sourcesContent":["import type { BoxProps } from '@mui/material';\nimport {\n Box,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n Typography,\n} from '@mui/material';\nimport { useTranslation } from 'react-i18next';\nimport type {\n CaseDbCase,\n CaseDbTypedUuidSetFilter,\n} from '@gen-epix/api-casedb';\nimport { CaseDbCaseApi } from '@gen-epix/api-casedb';\nimport { NavLink } from '@gen-epix/ui/components/ui/NavLink';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { ResponseHandler } from '@gen-epix/ui/components/ui/ResponseHandler';\nimport { useQueryMemo } from '@gen-epix/ui/hooks/useQueryMemo';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\n\nimport { useCaseSetCategoryMapQuery } from '../../../dataHooks/useCaseSetCategoriesQuery';\nimport { useCaseSetStatusMapQuery } from '../../../dataHooks/useCaseSetStatusesQuery';\nimport { CaseSetUtil } from '../../../utils/CaseSetUtil';\nimport { CASEDB_QUERY_KEY } from '../../../constants/query';\n\nexport type CaseCaseSetInfoProps = {\n readonly caseDbCase: CaseDbCase;\n} & BoxProps;\n\nexport const CaseCaseSetInfo = ({ caseDbCase, ...boxProps }: CaseCaseSetInfoProps) => {\n const caseSetCategoryMapQuery = useCaseSetCategoryMapQuery();\n const caseSetStatusMapQuery = useCaseSetStatusMapQuery();\n\n const { t } = useTranslation();\n const caseSetMembersFilter: CaseDbTypedUuidSetFilter = {\n invert: false,\n key: 'case_id',\n members: [caseDbCase.id],\n type: 'UUID_SET',\n };\n const { data: caseSetMembers, error: caseSetMembersError, isLoading: isCaseSetMembersLoading } = useQueryMemo({\n queryFn: async ({ signal }) => {\n const response = await CaseDbCaseApi.getInstance().caseSetMembersPostQuery(caseSetMembersFilter, null, null, { signal });\n return response.data;\n },\n queryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.CASE_SET_MEMBERS, caseSetMembersFilter),\n });\n\n const caseSetsFilter: CaseDbTypedUuidSetFilter = {\n invert: false,\n key: 'id',\n members: caseSetMembers?.map((caseSetMember) => caseSetMember.case_set_id) ?? [],\n type: 'UUID_SET',\n };\n const { data: caseSets, error: caseSetsError, isLoading: isCaseSetsLoading } = useQueryMemo({\n enabled: caseSetsFilter.members.length > 0,\n queryFn: async ({ signal }) => {\n const response = await CaseDbCaseApi.getInstance().caseSetsPostQuery(caseSetsFilter, null, null, { signal });\n return response.data;\n },\n queryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.CASE_SETS, caseSetsFilter),\n });\n\n const loadables = useArray([caseSetCategoryMapQuery, caseSetStatusMapQuery]);\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Events`}\n </Typography>\n <ResponseHandler\n error={caseSetMembersError || caseSetsError}\n inlineSpinner\n isLoading={isCaseSetMembersLoading || isCaseSetsLoading}\n loadables={loadables}\n shouldHideActionButtons\n >\n {caseSets?.length > 0 && (\n <Table size={'small'}>\n <TableHead>\n <TableRow>\n <TableCell\n sx={{\n width: 'calc(100% * 1/3)',\n }}\n >\n {t`Name`}\n </TableCell>\n <TableCell\n sx={{\n width: 'calc(100% * 1/3)',\n }}\n >\n {t`Category`}\n </TableCell>\n <TableCell\n sx={{\n width: 'calc(100% * 1/3)',\n }}\n >\n {t`Status`}\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n {caseSets?.map((caseSet) => (\n <TableRow key={caseSet.id}>\n <TableCell>\n <NavLink\n activeAsText\n to={CaseSetUtil.createCaseSetLink(caseSet)}\n >\n {caseSet.name}\n </NavLink>\n </TableCell>\n <TableCell>\n {caseSetCategoryMapQuery.map.get(caseSet.case_set_category_id)?.name ?? t`Unknown`}\n </TableCell>\n <TableCell>\n {caseSetStatusMapQuery.map.get(caseSet.case_set_status_id)?.name ?? t`Unknown`}\n </TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n )}\n {(!caseSets || caseSets?.length === 0) && (\n <Box sx={{ fontStyle: 'italic' }}>\n {t`None`}\n </Box>\n )}\n </ResponseHandler>\n </Box>\n );\n};\n","import {\n use,\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport { useStore } from 'zustand';\nimport { t } from 'i18next';\nimport { useShallow } from 'zustand/shallow';\nimport {\n Box,\n Typography,\n} from '@mui/material';\nimport type { BoxProps } from '@mui/material';\nimport type {\n CaseDbCase,\n CaseDbCaseRights,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbCaseApi,\n CaseDbEtlStatus,\n CaseDbUploadAction,\n} from '@gen-epix/api-casedb';\nimport { NotificationService } from '@gen-epix/ui/classes/services/NotificationService';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { Spinner } from '@gen-epix/ui/components/ui/Spinner';\n\nimport { DashboardStoreContext } from '../../../stores/dashboardStore';\nimport { CASEDB_QUERY_KEY } from '../../../constants/query';\nimport { CaseContentForm } from '../CaseContentForm';\n\nexport type CaseInfoFormProps = {\n readonly caseDbCase: CaseDbCase;\n readonly caseRights: CaseDbCaseRights;\n readonly formId: string;\n readonly onFinish: () => void;\n readonly onIsSavingChange: (isSaving: boolean) => void;\n} & BoxProps;\n\nexport const CaseInfoForm = ({ caseDbCase, caseRights, formId, onFinish, onIsSavingChange, ...boxProps }: CaseInfoFormProps) => {\n const dashboardStore = use(DashboardStoreContext);\n const completeCaseType = useStore(dashboardStore, (state) => state.completeCaseType);\n\n const mutateCachedCase = useStore(dashboardStore, useShallow((state) => state.mutateCachedCase));\n const [isSaving, setIsSaving] = useState(false);\n\n const enabledColIds = useMemo(() => {\n const colIds: string[] = [];\n\n caseRights.read_col_ids.forEach(colId => {\n if (caseRights.write_col_ids.includes(colId)) {\n colIds.push(colId);\n }\n });\n return colIds;\n }, [caseRights]);\n\n const onFormSubmit = useCallback((caseId: string, content: CaseDbCase['content']) => {\n setIsSaving(true);\n onIsSavingChange(true);\n const perform = async () => {\n const queryKeys = QueryClientService.getInstance().getQueryKeyDependencies([CASEDB_QUERY_KEY.CASES], true);\n const notificationKey = NotificationService.getInstance().showNotification({\n isLoading: true,\n message: t('Saving case data'),\n severity: 'info',\n });\n try {\n await QueryClientService.getInstance().cancelQueries(queryKeys);\n const uploadResult = (await CaseDbCaseApi.getInstance().uploadCases({\n case_batch: {\n cases: [\n {\n case: {\n case_type_id: completeCaseType.id,\n content,\n created_in_data_collection_id: caseDbCase.created_in_data_collection_id,\n id: caseId,\n },\n },\n ],\n },\n case_type_id: completeCaseType.id,\n on_exists: CaseDbUploadAction.UPDATE,\n })).data;\n if (uploadResult.status !== CaseDbEtlStatus.SKIPPED && uploadResult.status !== CaseDbEtlStatus.SUCCESS && uploadResult.status !== CaseDbEtlStatus.UPDATED) {\n throw new Error('Case upload failed');\n }\n // await CaseDbCaseApi.getInstance().casesPutOne(item.id, item);\n mutateCachedCase(caseDbCase.id, caseDbCase);\n NotificationService.getInstance().fulfillNotification(notificationKey, t('Successfully saved case data.'), 'success');\n } catch (_error) {\n NotificationService.getInstance().fulfillNotification(notificationKey, t('Could not save case data.'), 'error');\n } finally {\n await QueryClientService.getInstance().invalidateQueryKeys(queryKeys);\n setIsSaving(false);\n onIsSavingChange(false);\n onFinish();\n }\n };\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n perform();\n }, [completeCaseType.id, caseDbCase, mutateCachedCase, onFinish, onIsSavingChange]);\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Content`}\n </Typography>\n <Box>\n {isSaving && (\n <Spinner\n inline\n label={t`Saving case data`}\n />\n )}\n {!isSaving && (\n <CaseContentForm\n caseContent={caseDbCase.content}\n caseId={caseDbCase.id}\n completeCaseType={completeCaseType}\n enabledColIds={enabledColIds}\n formId={formId}\n onSubmit={onFormSubmit}\n />\n )}\n </Box>\n </Box>\n );\n};\n","import type { BoxProps } from '@mui/material';\nimport {\n Box,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n Typography,\n} from '@mui/material';\nimport { useTranslation } from 'react-i18next';\nimport type { CaseDbCase } from '@gen-epix/api-casedb';\nimport { GenericErrorMessage } from '@gen-epix/ui/components/ui/GenericErrorMessage';\nimport { ResponseHandler } from '@gen-epix/ui/components/ui/ResponseHandler';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\n\nimport { useDataCollectionsMapQuery } from '../../../dataHooks/useDataCollectionsQuery';\n\nexport type ReadOnlyCaseContentProps = {\n readonly caseDbCase: CaseDbCase;\n} & BoxProps;\n\nexport const ReadOnlyCaseContent = ({ caseDbCase, ...boxProps }: ReadOnlyCaseContentProps) => {\n const { t } = useTranslation();\n const dataCollectionsMapQuery = useDataCollectionsMapQuery();\n\n const loadables = useArray([dataCollectionsMapQuery]);\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Read-only content`}\n </Typography>\n {!caseDbCase && (\n <GenericErrorMessage\n error={new Error('Case could not be found')}\n />\n )}\n <ResponseHandler\n inlineSpinner\n loadables={loadables}\n shouldHideActionButtons\n >\n {caseDbCase && (\n <Table size={'small'}>\n <TableHead>\n <TableRow>\n <TableCell\n sx={{\n width: 'calc(100% * 1/3)',\n }}\n >\n {t`Column`}\n </TableCell>\n <TableCell\n sx={{\n width: 'calc(100% * 2/3)',\n }}\n >\n {t`Value`}\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n <TableRow>\n <TableCell>\n {t`Case id`}\n </TableCell>\n <TableCell>\n {caseDbCase.id}\n </TableCell>\n </TableRow>\n </TableBody>\n </Table>\n )}\n </ResponseHandler>\n </Box>\n );\n};\n","import type { BoxProps } from '@mui/material';\nimport {\n Box,\n Link,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n Typography,\n} from '@mui/material';\nimport {\n use,\n useCallback,\n useMemo,\n useRef,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useStore } from 'zustand';\nimport type { CaseDbCase } from '@gen-epix/api-casedb';\nimport { CaseDbColType } from '@gen-epix/api-casedb';\nimport type { EpiContactDetailsDialogRefMethods } from '@gen-epix/ui/components/epi/EpiContactDetailsDialog';\nimport { EpiContactDetailsDialog } from '@gen-epix/ui/components/epi/EpiContactDetailsDialog';\nimport { GenericErrorMessage } from '@gen-epix/ui/components/ui/GenericErrorMessage';\n\nimport { DashboardStoreContext } from '../../../stores/dashboardStore';\nimport { CaseTypeUtil } from '../../../utils/CaseTypeUtil';\nimport { CaseUtil } from '../../../utils/CaseUtil';\n\n\nexport type CaseContentProps = {\n readonly caseDbCase: CaseDbCase;\n} & BoxProps;\n\nexport const CaseContent = ({ caseDbCase, ...boxProps }: CaseContentProps) => {\n const { t } = useTranslation();\n const contactDetailsDialogRef = useRef<EpiContactDetailsDialogRefMethods>(null);\n const dashboardStore = use(DashboardStoreContext);\n const completeCaseType = useStore(dashboardStore, (state) => state.completeCaseType);\n\n const cols = useMemo(() => CaseTypeUtil.getCols(completeCaseType), [completeCaseType]);\n\n const onOrganizationLinkClick = useCallback((organizationId: string, organizationName: string) => {\n contactDetailsDialogRef.current.open({\n organizationId,\n organizationName,\n });\n }, []);\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Content`}\n </Typography>\n {!caseDbCase && (\n <GenericErrorMessage\n error={new Error('Case could not be found')}\n />\n )}\n {caseDbCase && (\n <Table size={'small'}>\n <TableHead>\n <TableRow>\n <TableCell\n sx={{\n width: 'calc(100% / 3)',\n }}\n >\n {t`Column`}\n </TableCell>\n <TableCell\n sx={{\n width: 'calc(100% / 3 * 2)',\n }}\n >\n {t`Value`}\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n {cols.map(col => {\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n const columnValue = CaseUtil.getRowValue(caseDbCase.content, col, completeCaseType);\n return (\n <TableRow key={col.id}>\n <TableCell\n sx={{\n width: 'calc(100% / 3)',\n }}\n >\n {col.label}\n </TableCell>\n <TableCell\n sx={{\n width: 'calc(100% / 3 * 2)',\n }}\n >\n {refCol.col_type === CaseDbColType.ORGANIZATION && !columnValue.isMissing && (\n <Link\n color={'primary'}\n // eslint-disable-next-line @eslint-react/kit/jsx-no-bind\n onClick={() => {\n onOrganizationLinkClick(caseDbCase.content[col.id], columnValue.long);\n }}\n sx={{\n cursor: 'pointer',\n }}\n >\n {columnValue.long}\n </Link>\n )}\n {refCol.col_type !== CaseDbColType.ORGANIZATION && (\n <>\n {columnValue.long}\n </>\n )}\n </TableCell>\n </TableRow>\n );\n })}\n </TableBody>\n </Table>\n )}\n <EpiContactDetailsDialog ref={contactDetailsDialogRef} />\n </Box>\n );\n};\n","import { useTranslation } from 'react-i18next';\nimport {\n Box,\n Typography,\n} from '@mui/material';\nimport type { BoxProps } from '@mui/material';\n\nimport { DataCollectionAccessInfo } from '../DataCollectionAccessInfo';\n\nexport type CaseSharingInfoProps = BoxProps;\n\nexport const CaseSharingInfo = ({ ...boxProps }: CaseSharingInfoProps) => {\n const { t } = useTranslation();\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Shared in`}\n </Typography>\n <DataCollectionAccessInfo />\n </Box>\n );\n};\n","import {\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n array,\n object,\n string,\n} from 'yup';\nimport { yupResolver } from '@hookform/resolvers/yup';\nimport type { Resolver } from 'react-hook-form';\nimport { useForm } from 'react-hook-form';\nimport difference from 'lodash/difference';\nimport {\n Box,\n Typography,\n} from '@mui/material';\nimport type { BoxProps } from '@mui/material';\nimport type { CaseDbCase } from '@gen-epix/api-casedb';\nimport { CaseDbCaseApi } from '@gen-epix/api-casedb';\nimport { NotificationService } from '@gen-epix/ui/classes/services/NotificationService';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { Spinner } from '@gen-epix/ui/components/ui/Spinner';\nimport { GenericForm } from '@gen-epix/ui-form/components/helpers/GenericForm';\nimport type { FormFieldDefinition } from '@gen-epix/ui-form/models/form';\nimport { FORM_FIELD_DEFINITION_TYPE } from '@gen-epix/ui-form/models/form';\nimport { FormUtil } from '@gen-epix/ui-form/utils/FormUtil';\n\nimport { useCaseAbacContext } from '../../../context/caseAbac';\nimport { CASEDB_QUERY_KEY } from '../../../constants/query';\n\nexport type CaseSharingFormProps = {\n readonly caseDbCase: CaseDbCase;\n readonly formId: string;\n readonly onFinish: () => void;\n readonly onIsSavingChange: (isSaving: boolean) => void;\n} & BoxProps;\n\ntype FormFields = {\n dataCollectionIds?: string[];\n};\n\nexport const CaseSharingForm = ({ caseDbCase, formId, onFinish, onIsSavingChange, ...boxProps }: CaseSharingFormProps) => {\n const { t } = useTranslation();\n const [isSaving, setIsSaving] = useState(false);\n const caseAbacContext = useCaseAbacContext();\n\n const schema = useMemo(() => object<FormFields>().shape({\n dataCollectionIds: array().of(string().uuid4()).required(),\n }), []);\n\n const formFieldDefinitions = useMemo<FormFieldDefinition<FormFields>[]>(() => [\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`Data collections`,\n multiple: true,\n name: 'dataCollectionIds',\n options: caseAbacContext?.itemDataCollectionOptions?.[0] ?? [],\n } as const satisfies FormFieldDefinition<FormFields>,\n ] as const, [t, caseAbacContext]);\n\n const item = useMemo<FormFields>(() => {\n return {\n dataCollectionIds: caseAbacContext?.rights?.[0]?.shared_in_data_collection_ids ?? [],\n };\n }, [caseAbacContext]);\n\n const values = useMemo<FormFields>(() => FormUtil.createFormValues(formFieldDefinitions, item), [formFieldDefinitions, item]);\n\n const formMethods = useForm<FormFields>({\n resolver: yupResolver(schema) as Resolver<FormFields>,\n values,\n });\n const { handleSubmit } = formMethods;\n\n const onFormSubmit = useCallback(({ dataCollectionIds }: FormFields) => {\n const perform = async () => {\n setIsSaving(true);\n onIsSavingChange(true);\n const queryKeys = QueryClientService.getInstance().getQueryKeyDependencies([CASEDB_QUERY_KEY.CASE_DATA_COLLECTION_LINKS], true);\n const notificationKey = NotificationService.getInstance().showNotification({\n isLoading: true,\n message: t('Saving case data collections'),\n severity: 'info',\n });\n try {\n await QueryClientService.getInstance().cancelQueries(queryKeys);\n const rights = caseAbacContext?.rights?.[0];\n const dataCollectionIdsToAdd = difference(dataCollectionIds, rights.shared_in_data_collection_ids);\n const dataCollectionIdsToRemove = difference(rights.shared_in_data_collection_ids, dataCollectionIds);\n\n if (dataCollectionIdsToAdd.length > 0) {\n await CaseDbCaseApi.getInstance().caseDataCollectionLinksPostSome(dataCollectionIdsToAdd.map(data_collection_id => ({\n case_id: caseDbCase.id,\n data_collection_id,\n })));\n }\n if (dataCollectionIdsToRemove.length > 0) {\n await CaseDbCaseApi.getInstance().caseDataCollectionLinksDeleteSome(caseAbacContext.itemDataCollectionLinks[0]?.filter(x => dataCollectionIdsToRemove.includes(x.data_collection_id)).map(x => x.id).join(','));\n }\n NotificationService.getInstance().fulfillNotification(notificationKey, t('Successfully saved case data collections.'), 'success');\n } catch (_error) {\n NotificationService.getInstance().fulfillNotification(notificationKey, t('Could not save case data collections.'), 'error');\n } finally {\n await QueryClientService.getInstance().invalidateQueryKeys(queryKeys);\n setIsSaving(false);\n onIsSavingChange(false);\n onFinish();\n }\n };\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n perform();\n }, [caseAbacContext, caseDbCase.id, onFinish, onIsSavingChange, t]);\n\n if (isSaving) {\n return (\n <Spinner\n inline\n label={t`Saving case data collections`}\n />\n );\n }\n\n return (\n <Box {...boxProps}>\n <Typography variant={'h6'}>\n {t`Data collections`}\n </Typography>\n <GenericForm<FormFields>\n formFieldDefinitions={formFieldDefinitions}\n formId={formId}\n formMethods={formMethods}\n onSubmit={handleSubmit(onFormSubmit)}\n schema={schema}\n />\n </Box>\n );\n};\n","import SaveIcon from '@mui/icons-material/Save';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ShareIcon from '@mui/icons-material/Share';\nimport DeleteIcon from '@mui/icons-material/Delete';\nimport ArrowLeftIcon from '@mui/icons-material/ArrowLeft';\nimport {\n use,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport type { ReactElement } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useStore } from 'zustand';\nimport { useShallow } from 'zustand/shallow';\nimport type {\n CaseDbCase,\n CaseDbTypedUuidSetFilter,\n} from '@gen-epix/api-casedb';\nimport { CaseDbCaseApi } from '@gen-epix/api-casedb';\nimport type { ConfirmationRefMethods } from '@gen-epix/ui/components/ui/Confirmation';\nimport type { DialogAction } from '@gen-epix/ui/components/ui/Dialog';\nimport type {\n WithDialogRefMethods,\n WithDialogRenderProps,\n} from '@gen-epix/ui/hoc/withDialog';\nimport { Confirmation } from '@gen-epix/ui/components/ui/Confirmation';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { ResponseHandler } from '@gen-epix/ui/components/ui/ResponseHandler';\nimport { Spinner } from '@gen-epix/ui/components/ui/Spinner';\nimport { useDeleteMutation } from '@gen-epix/ui/hooks/useDeleteMutation';\nimport { useItemQuery } from '@gen-epix/ui/hooks/useItemQuery';\nimport { useQueryMemo } from '@gen-epix/ui/hooks/useQueryMemo';\nimport { withDialog } from '@gen-epix/ui/hoc/withDialog';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport { Typography } from '@mui/material';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\n\nimport type { CaseAbacContext } from '../../../context/caseAbac';\nimport { CaseAbacContextProvider } from '../../../context/caseAbac';\nimport { useCaseRightsQuery } from '../../../dataHooks/useCaseRightsQuery';\nimport {\n useDataCollectionOptionsQuery,\n useDataCollectionsMapQuery,\n useDataCollectionsQuery,\n} from '../../../dataHooks/useDataCollectionsQuery';\nimport { DashboardStoreContext } from '../../../stores/dashboardStore';\nimport { CASEDB_QUERY_KEY } from '../../../constants/query';\n\nimport { CaseCaseSetInfo } from './CaseCaseSetInfo';\nimport { CaseInfoForm } from './CaseInfoForm';\nimport { ReadOnlyCaseContent } from './ReadOnlyCaseContent';\nimport { CaseContent } from './CaseContent';\nimport { CaseSharingInfo } from './CaseSharingInfo';\nimport { CaseSharingForm } from './CaseSharingForm';\n\n\nexport enum CASE_INFO_DIALOG_TAB_NAME {\n EDIT = 'EDIT',\n INFO = 'INFO',\n SHARING = 'SHARING',\n}\n\nexport interface CaseInfoDialogOpenProps {\n caseId: string;\n caseTypeId: string;\n initialTab?: CASE_INFO_DIALOG_TAB_NAME;\n}\n\nexport interface CaseInfoDialogProps extends WithDialogRenderProps<CaseInfoDialogOpenProps> {\n //\n}\n\nexport type CaseInfoDialogRefMethods = WithDialogRefMethods<CaseInfoDialogProps, CaseInfoDialogOpenProps>;\n\nexport const CaseInfoDialog = withDialog<CaseInfoDialogProps, CaseInfoDialogOpenProps>((\n {\n onActionsChange,\n onClose,\n onTitleChange,\n openProps,\n }: CaseInfoDialogProps,\n): ReactElement => {\n const { t } = useTranslation();\n const caseIds = useMemo(() => [openProps.caseId], [openProps.caseId]);\n const dataCollectionsQuery = useDataCollectionsQuery();\n const dataCollectionsMapQuery = useDataCollectionsMapQuery();\n const dataCollectionOptionsQuery = useDataCollectionOptionsQuery();\n\n const dashboardStore = use(DashboardStoreContext);\n const fetchData = useStore(dashboardStore, useShallow((state) => state.fetchData));\n const [currentTab, setCurrentTab] = useState<CASE_INFO_DIALOG_TAB_NAME>(openProps.initialTab ?? CASE_INFO_DIALOG_TAB_NAME.INFO);\n const [isEpiCaseFormSaving, setIsEpiCaseFormSaving] = useState(false);\n const [isEpiCaseDataCollectionFormSaving, setIsEpiCaseDataCollectionFormSaving] = useState(false);\n const [isRefreshingData, setIsRefreshingData] = useState(false);\n const deleteConfirmationRef = useRef<ConfirmationRefMethods>(null);\n const valuesFormId = useId();\n const dataCollectionsFormId = useId();\n\n const onFinish = useCallback(async () => {\n setIsEpiCaseFormSaving(false);\n setIsEpiCaseDataCollectionFormSaving(false);\n setIsRefreshingData(true);\n setCurrentTab(CASE_INFO_DIALOG_TAB_NAME.INFO);\n await fetchData();\n setIsRefreshingData(false);\n }, [fetchData]);\n\n const onDeleteSuccess = useCallback(async () => {\n await onFinish();\n onClose();\n }, [onClose, onFinish]);\n\n const onDeleteError = useCallback(() => {\n onClose();\n }, [onClose]);\n\n const { isMutating: isDeleteMutating, mutate: deleteMutate } = useDeleteMutation<CaseDbCase>({\n associationQueryKeys: QueryClientService.getInstance().getQueryKeyDependencies([CASEDB_QUERY_KEY.CASES], true),\n getErrorNotificationMessage: (data) => t('Unable to remove case: {{id}}.', { id: data.id }),\n getProgressNotificationMessage: (data) => t('Deleting case: {{id}}...', { id: data.id }),\n getSuccessNotificationMessage: (data) => t('Case: {{id}}, has been removed.', { id: data.id }),\n onError: onDeleteError,\n onSuccess: onDeleteSuccess,\n queryFn: async (item: CaseDbCase) => {\n return await CaseDbCaseApi.getInstance().casesDeleteOne(item.id);\n },\n resourceQueryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.CASES),\n });\n\n const caseRightsQuery = useCaseRightsQuery(caseIds, openProps.caseTypeId, !isDeleteMutating && !isRefreshingData);\n const loadables = useArray([caseRightsQuery, dataCollectionsQuery, dataCollectionsMapQuery, dataCollectionOptionsQuery]);\n\n const { data: caseDbCase, error: caseError, isLoading: caseIsLoading } = useItemQuery<CaseDbCase>({\n baseQueryKey: CASEDB_QUERY_KEY.CASES_LAZY,\n itemId: openProps.caseId,\n useQueryOptions: {\n enabled: !isDeleteMutating && !isRefreshingData,\n queryFn: async ({ signal }) => {\n const response = await CaseDbCaseApi.getInstance().casesGetOne(openProps.caseId, { signal });\n return response.data;\n },\n },\n });\n\n const caseDataCollectionLinksFilter = useMemo<CaseDbTypedUuidSetFilter>(() => ({\n invert: false,\n key: 'case_id',\n members: [caseDbCase?.id],\n type: 'UUID_SET',\n }), [caseDbCase?.id]);\n const { data: caseDataCollectionLinks, error: caseDataCollectionLinksError, isLoading: isCaseDataCollectionLinksLoading } = useQueryMemo({\n enabled: !!caseDbCase,\n queryFn: async ({ signal }) => {\n const response = await CaseDbCaseApi.getInstance().caseDataCollectionLinksPostQuery(caseDataCollectionLinksFilter, null, null, { signal });\n return response.data;\n },\n queryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.CASE_DATA_COLLECTION_LINKS, caseDataCollectionLinksFilter),\n });\n\n\n const canEdit = useMemo(() => {\n return !!caseRightsQuery.data && caseRightsQuery.data.some((right) => right.is_full_access || right.write_col_ids.length);\n }, [caseRightsQuery.data]);\n\n const canShare = useMemo(() => {\n return !!caseRightsQuery.data && caseRightsQuery.data.some((right) => right.is_full_access || right.remove_data_collection_ids.length || right.add_data_collection_ids.length);\n }, [caseRightsQuery.data]);\n\n const canDelete = useCallback(() => {\n return !!caseRightsQuery.data && caseRightsQuery.data.some((right) => right.is_full_access || right.can_delete);\n }, [caseRightsQuery]);\n\n const onEditButtonClick = useCallback(() => {\n setCurrentTab(CASE_INFO_DIALOG_TAB_NAME.EDIT);\n }, []);\n\n const onShareButtonClick = useCallback(() => {\n setCurrentTab(CASE_INFO_DIALOG_TAB_NAME.SHARING);\n }, []);\n\n const onGoBackButtonClick = useCallback(() => {\n setCurrentTab(CASE_INFO_DIALOG_TAB_NAME.INFO);\n }, []);\n\n\n const onEpiCaseFormIsSavingChange = useCallback((isSaving: boolean) => {\n setIsEpiCaseFormSaving(isSaving);\n }, []);\n\n const onEpiCaseDataCollectionFormIsSavingChange = useCallback((isSaving: boolean) => {\n setIsEpiCaseDataCollectionFormSaving(isSaving);\n }, []);\n\n const onDeleteEventButtonClick = useCallback(() => {\n deleteConfirmationRef.current.open();\n }, []);\n\n const onDeleteConfirmationConfirm = useCallback(() => {\n deleteMutate(caseDbCase);\n }, [caseDbCase, deleteMutate]);\n\n const isSaving = isEpiCaseFormSaving || isEpiCaseDataCollectionFormSaving;\n\n useEffect(() => {\n if (currentTab === CASE_INFO_DIALOG_TAB_NAME.EDIT) {\n onTitleChange(t`Case information - Edit`);\n } else if (currentTab === CASE_INFO_DIALOG_TAB_NAME.SHARING) {\n onTitleChange(t`Case information - Share`);\n } else {\n onTitleChange(t`Case information`);\n }\n }, [currentTab, onTitleChange, t]);\n\n useEffect(() => {\n const actions: DialogAction[] = [];\n\n if (currentTab === CASE_INFO_DIALOG_TAB_NAME.EDIT || currentTab === CASE_INFO_DIALOG_TAB_NAME.SHARING) {\n actions.push({\n ...TestIdUtil.createAttributes('CaseInfoDialog-goBackButton'),\n color: 'primary',\n disabled: isSaving,\n label: t`Go back`,\n onClick: onGoBackButtonClick,\n startIcon: <ArrowLeftIcon />,\n variant: 'outlined',\n });\n }\n\n if (currentTab === CASE_INFO_DIALOG_TAB_NAME.EDIT && canEdit) {\n actions.push(\n {\n ...TestIdUtil.createAttributes('CaseInfoDialog-saveButton'),\n color: 'secondary',\n disabled: isSaving,\n form: valuesFormId,\n label: t`Save`,\n startIcon: <SaveIcon />,\n type: 'submit',\n variant: 'contained',\n },\n );\n } else if (currentTab === CASE_INFO_DIALOG_TAB_NAME.SHARING && canShare) {\n actions.push(\n {\n ...TestIdUtil.createAttributes('CaseInfoDialog-saveButton'),\n color: 'secondary',\n disabled: isSaving,\n form: dataCollectionsFormId,\n label: t`Save`,\n startIcon: <SaveIcon />,\n type: 'submit',\n variant: 'contained',\n },\n );\n } else if (currentTab === CASE_INFO_DIALOG_TAB_NAME.INFO) {\n actions.push(\n {\n ...TestIdUtil.createAttributes('CaseSetInfoDialog-deleteButton'),\n color: 'primary',\n disabled: !canDelete(),\n label: t`Delete`,\n onClick: onDeleteEventButtonClick,\n startIcon: <DeleteIcon />,\n variant: 'outlined',\n },\n );\n actions.push(\n {\n ...TestIdUtil.createAttributes('CaseInfoDialog-editDataCollectionsButton'),\n color: 'primary',\n disabled: !canShare,\n label: t`Share`,\n onClick: onShareButtonClick,\n startIcon: <ShareIcon />,\n variant: 'outlined',\n },\n );\n actions.push(\n {\n ...TestIdUtil.createAttributes('CaseInfoDialog-editCaseContentButton'),\n color: 'primary',\n disabled: !canEdit,\n label: t`Edit`,\n onClick: onEditButtonClick,\n startIcon: <EditIcon />,\n variant: 'outlined',\n },\n );\n }\n onActionsChange(actions);\n }, [onActionsChange, onEditButtonClick, t, currentTab, onGoBackButtonClick, onShareButtonClick, valuesFormId, dataCollectionsFormId, onClose, isSaving, canShare, onDeleteEventButtonClick, canDelete, canEdit]);\n\n const caseAbacContextValue = useMemo<CaseAbacContext>(() => {\n return {\n createdInDataCollection: caseDbCase ? dataCollectionsMapQuery.map.get(caseDbCase.created_in_data_collection_id) : undefined,\n itemDataCollectionLinks: [caseDataCollectionLinks],\n rights: caseRightsQuery.data,\n userDataCollectionOptions: dataCollectionOptionsQuery.options,\n userDataCollections: dataCollectionsQuery.data,\n userDataCollectionsMap: dataCollectionsMapQuery.map,\n };\n }, [dataCollectionsQuery.data, dataCollectionsMapQuery.map, dataCollectionOptionsQuery.options, caseDataCollectionLinks, caseRightsQuery.data, caseDbCase]);\n\n if (isRefreshingData) {\n return (\n <Spinner\n inline\n label={t`Refreshing data`}\n />\n );\n }\n\n return (\n <>\n <ResponseHandler\n error={caseError || caseDataCollectionLinksError}\n inlineSpinner\n isLoading={caseIsLoading || isCaseDataCollectionLinksLoading}\n loadables={loadables}\n shouldHideActionButtons\n >\n <CaseAbacContextProvider caseAbac={caseAbacContextValue}>\n <ReadOnlyCaseContent\n caseDbCase={caseDbCase}\n sx={{\n marginBottom: 2,\n }}\n />\n {currentTab === CASE_INFO_DIALOG_TAB_NAME.INFO && (\n <>\n <CaseSharingInfo\n sx={{\n marginBottom: 2,\n }}\n />\n <CaseCaseSetInfo\n caseDbCase={caseDbCase}\n sx={{\n marginBottom: 2,\n }}\n />\n <CaseContent\n caseDbCase={caseDbCase}\n sx={{\n marginBottom: 2,\n }}\n />\n </>\n )}\n {currentTab === CASE_INFO_DIALOG_TAB_NAME.EDIT && canEdit && (\n <CaseInfoForm\n caseDbCase={caseDbCase}\n caseRights={caseRightsQuery.data?.[0]}\n formId={valuesFormId}\n onFinish={onFinish}\n onIsSavingChange={onEpiCaseFormIsSavingChange}\n />\n )}\n {currentTab === CASE_INFO_DIALOG_TAB_NAME.EDIT && !canEdit && (\n <Typography variant={'body1'}>\n {t`You do not have permissions to edit this case.`}\n </Typography>\n )}\n {currentTab === CASE_INFO_DIALOG_TAB_NAME.SHARING && canShare && (\n <CaseSharingForm\n caseDbCase={caseDbCase}\n formId={dataCollectionsFormId}\n onFinish={onFinish}\n onIsSavingChange={onEpiCaseDataCollectionFormIsSavingChange}\n />\n )}\n {currentTab === CASE_INFO_DIALOG_TAB_NAME.SHARING && !canShare && (\n <Typography variant={'body1'}>\n {t`You do not have permissions to share this case.`}\n </Typography>\n )}\n </CaseAbacContextProvider>\n </ResponseHandler>\n <Confirmation\n body={t`Are you sure you want to delete the case?`}\n cancelLabel={t`Cancel`}\n confirmLabel={t`Delete`}\n onConfirm={onDeleteConfirmationConfirm}\n ref={deleteConfirmationRef}\n title={t`Delete case?`}\n />\n </>\n );\n}, {\n fullWidth: true,\n maxWidth: 'lg',\n testId: 'CaseInfoDialog',\n});\n"],"mappings":"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"}