@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,494 @@
1
+ import { EffectiveRightsUtil as e } from "../../utils/EffectiveRightsUtil/index.js";
2
+ import { f as t, h as n, l as r, m as i, n as a, p as o, r as s, t as c } from "../../_chunks/esm.js";
3
+ import { useDataCollectionsMapQuery as l } from "../../dataHooks/useDataCollectionsQuery/index.js";
4
+ import { useOrganizationAccessCasePoliciesQuery as u } from "../../dataHooks/useOrganizationAccessCasePoliciesQuery/index.js";
5
+ import { useOrganizationShareCasePoliciesQuery as d } from "../../dataHooks/useOrganizationShareCasePoliciesQuery/index.js";
6
+ import { StringUtil as f } from "@gen-epix/ui-core/utils/StringUtil";
7
+ import { Autocomplete as p, Box as m, TextField as h, ToggleButton as g, ToggleButtonGroup as _, Typography as v, useTheme as y } from "@mui/material";
8
+ import { useCallback as b, useMemo as x, useState as S } from "react";
9
+ import { useTranslation as C } from "react-i18next";
10
+ import { jsx as w, jsxs as T } from "react/jsx-runtime";
11
+ import { ResponseHandler as E } from "@gen-epix/ui/components/ui/ResponseHandler";
12
+ import { useArray as D } from "@gen-epix/ui-core/hooks/useArray";
13
+ import { TestIdUtil as O } from "@gen-epix/ui-core/utils/TestIdUtil";
14
+ import { LoadableUtil as k } from "@gen-epix/ui/utils/LoadableUtil";
15
+ import { PageContainer as A } from "@gen-epix/ui/components/ui/PageContainer";
16
+ import { useOrganizationMapQuery as j } from "@gen-epix/ui/dataHooks/useOrganizationsQuery";
17
+ //#region src/pages/DataCollectionVisualizationPage/DataCollectionVisualizationPage.tsx
18
+ var M = {
19
+ dispose: o,
20
+ getInstanceByDom: i,
21
+ init: n
22
+ };
23
+ t([
24
+ r,
25
+ a,
26
+ s
27
+ ]);
28
+ var N = {
29
+ categories: [],
30
+ links: [],
31
+ nodes: [],
32
+ totalAccessLinks: 0,
33
+ totalDataCollections: 0,
34
+ totalOrganizations: 0,
35
+ totalShareLinks: 0,
36
+ zoom: 1
37
+ }, P = {
38
+ bottomPadding: 72,
39
+ fitZoomSafetyFactor: .94,
40
+ labelPadding: 12,
41
+ nodeLabelWidth: 220,
42
+ organizationX: 120,
43
+ rowGap: 68,
44
+ singleRowVerticalOffset: 96,
45
+ sourceDataCollectionX: 1060,
46
+ targetAndSourceDataCollectionX: 820,
47
+ targetDataCollectionX: 620,
48
+ topPadding: 72,
49
+ viewportHorizontalPadding: 24,
50
+ viewportVerticalPadding: 24
51
+ }, F = () => {
52
+ let { t } = C(), n = y(), [r, i] = S("organization"), [a, o] = S(null), s = l(), F = j(), I = u((e) => e.filter((e) => e.is_active)), L = d((e) => e.filter((e) => e.is_active)), R = D([
53
+ s,
54
+ F,
55
+ I,
56
+ L
57
+ ]), z = x(() => Array.from(F.map.values()).map((e) => ({
58
+ label: e.name,
59
+ value: e.id
60
+ })).sort((e, t) => f.advancedSortComperator(e.label, t.label)), [F.map]), B = x(() => Array.from(s.map.values()).map((e) => ({
61
+ label: e.name,
62
+ value: e.id
63
+ })).sort((e, t) => f.advancedSortComperator(e.label, t.label)), [s.map]), V = x(() => r === "organization" ? z : B, [
64
+ B,
65
+ z,
66
+ r
67
+ ]), H = x(() => V.find((e) => e.value === a) ?? null, [a, V]), U = r === "organization" ? t`Organization` : t`Data collection`, W = !!a, G = b((e, t) => {
68
+ !t || t === r || (i(t), o(null));
69
+ }, [r]), K = b((e) => e.label, []), q = b((e, t) => e.value === t.value, []), J = b((e, t) => {
70
+ o(t?.value ?? null);
71
+ }, []), Y = b((e) => /* @__PURE__ */ w(h, {
72
+ ...e,
73
+ label: U,
74
+ required: !0,
75
+ size: "small"
76
+ }), [U]), X = x(() => {
77
+ if (k.isSomeLoading(R) || !a) return N;
78
+ let i = [{ name: t`Organization` }, { name: t`Data collection` }], o = n.palette.primary.main, c = n.palette.primary.dark, l = n.palette.secondary.main, u = n.palette.secondary.dark, d = n.palette.primary.light, f = n.palette.warning.main, p = e.getOrganizationPolicyGroups({
79
+ organizationAccessCasePolicies: I.data,
80
+ organizationShareCasePolicies: L.data
81
+ }).filter((e) => r === "organization" ? e.organization_id === a : e.data_collection_id === a || e.share_case_policies.some((e) => e.from_data_collection_id === a)), m = /* @__PURE__ */ new Map(), h = /* @__PURE__ */ new Map(), g = [], _ = /* @__PURE__ */ new Map(), v = (e) => ({
82
+ color: n.palette.text.primary,
83
+ distance: 8,
84
+ fontSize: 12,
85
+ formatter: "{b}",
86
+ overflow: "truncate",
87
+ position: e,
88
+ show: !0,
89
+ width: P.nodeLabelWidth
90
+ }), y = (e) => {
91
+ m.has(e.id) || m.set(e.id, {
92
+ category: e.category,
93
+ id: e.id,
94
+ itemStyle: {
95
+ borderColor: e.borderColor,
96
+ borderWidth: 1.5,
97
+ color: e.color
98
+ },
99
+ name: e.name,
100
+ nodeType: e.nodeType,
101
+ symbol: e.symbol
102
+ });
103
+ }, b = (e, t) => {
104
+ let n = h.get(e) ?? {
105
+ accessLinkCount: 0,
106
+ shareInCount: 0,
107
+ shareOutCount: 0
108
+ };
109
+ n[t] += 1, h.set(e, n);
110
+ };
111
+ p.forEach((e) => {
112
+ let t = `organization:${e.organization_id}`, n = `dataCollection:${e.data_collection_id}`, r = F.map.get(e.organization_id)?.name ?? e.organization_id, i = s.map.get(e.data_collection_id)?.name ?? e.data_collection_id, a = Array.from(new Set(e.share_case_policies.map((e) => s.map.get(e.from_data_collection_id)?.name ?? e.from_data_collection_id))).sort(), f = e.access_case_policies.reduce((e, t) => ({
113
+ add_case: e.add_case || t.add_case,
114
+ add_case_set: e.add_case_set || t.add_case_set,
115
+ is_private: e.is_private || t.is_private,
116
+ read_case_set: e.read_case_set || t.read_case_set,
117
+ remove_case: e.remove_case || t.remove_case,
118
+ remove_case_set: e.remove_case_set || t.remove_case_set,
119
+ write_case_set: e.write_case_set || t.write_case_set
120
+ }), {
121
+ add_case: !1,
122
+ add_case_set: !1,
123
+ is_private: !1,
124
+ read_case_set: !1,
125
+ remove_case: !1,
126
+ remove_case_set: !1,
127
+ write_case_set: !1
128
+ });
129
+ y({
130
+ borderColor: c,
131
+ category: 0,
132
+ color: o,
133
+ id: t,
134
+ name: r,
135
+ nodeType: "organization",
136
+ symbol: "roundRect"
137
+ }), y({
138
+ borderColor: u,
139
+ category: 1,
140
+ color: l,
141
+ id: n,
142
+ name: i,
143
+ nodeType: "dataCollection",
144
+ symbol: "circle"
145
+ }), g.push({
146
+ accessPolicyCount: e.access_case_policies.length,
147
+ accessRights: f,
148
+ dataCollectionName: i,
149
+ lineStyle: {
150
+ color: d,
151
+ curveness: .08,
152
+ opacity: .5,
153
+ width: 1.5 + Math.min(e.access_case_policies.length * .35, 1.5)
154
+ },
155
+ linkType: "access",
156
+ organizationName: r,
157
+ sharePolicyCount: e.share_case_policies.length,
158
+ source: t,
159
+ sourceDataCollectionNames: a,
160
+ target: n,
161
+ value: Math.max(e.access_case_policies.length, 1)
162
+ }), b(t, "accessLinkCount"), b(n, "accessLinkCount"), e.share_case_policies.forEach((e) => {
163
+ let t = `dataCollection:${e.from_data_collection_id}`, a = s.map.get(e.from_data_collection_id)?.name ?? e.from_data_collection_id, o = `${t}::${n}`, c = _.get(o);
164
+ if (y({
165
+ borderColor: u,
166
+ category: 1,
167
+ color: l,
168
+ id: t,
169
+ name: a,
170
+ nodeType: "dataCollection",
171
+ symbol: "circle"
172
+ }), c) {
173
+ c.organizationNames.add(r), c.sharePolicyCount += 1;
174
+ return;
175
+ }
176
+ _.set(o, {
177
+ organizationNames: /* @__PURE__ */ new Set([r]),
178
+ sharePolicyCount: 1,
179
+ source: t,
180
+ sourceDataCollectionName: a,
181
+ target: n,
182
+ targetDataCollectionName: i
183
+ });
184
+ });
185
+ });
186
+ let x = Array.from(_.values()).map((e) => (b(e.source, "shareOutCount"), b(e.target, "shareInCount"), {
187
+ lineStyle: {
188
+ color: f,
189
+ curveness: .28,
190
+ opacity: .45,
191
+ type: "dashed",
192
+ width: 1.25 + Math.min(e.sharePolicyCount * .3, 1.25)
193
+ },
194
+ linkType: "share",
195
+ organizationNames: Array.from(e.organizationNames).sort(),
196
+ sharePolicyCount: e.sharePolicyCount,
197
+ source: e.source,
198
+ sourceDataCollectionName: e.sourceDataCollectionName,
199
+ target: e.target,
200
+ targetDataCollectionName: e.targetDataCollectionName,
201
+ value: Math.max(e.sharePolicyCount, 1)
202
+ })), S = Array.from(m.values()).map((e) => {
203
+ let t = h.get(e.id) ?? {
204
+ accessLinkCount: 0,
205
+ shareInCount: 0,
206
+ shareOutCount: 0
207
+ }, n = t.accessLinkCount + t.shareInCount + t.shareOutCount;
208
+ return {
209
+ ...e,
210
+ accessLinkCount: t.accessLinkCount,
211
+ label: v("right"),
212
+ shareInCount: t.shareInCount,
213
+ shareOutCount: t.shareOutCount,
214
+ symbolSize: e.nodeType === "organization" ? Math.min(22 + t.accessLinkCount * 2, 34) : Math.min(18 + n * 1.5, 30),
215
+ value: n,
216
+ x: 0,
217
+ y: 0
218
+ };
219
+ }), C = (e) => e.accessLinkCount > 0 && e.shareOutCount > 0 ? 1 : e.accessLinkCount > 0 ? 0 : 2, w = (e) => e.accessLinkCount > 0 && e.shareOutCount > 0 ? P.targetAndSourceDataCollectionX : e.accessLinkCount > 0 ? P.targetDataCollectionX : P.sourceDataCollectionX, T = (e) => e.accessLinkCount > 0 && e.shareOutCount === 0 ? "left" : "right", E = S.filter((e) => e.nodeType === "organization").length === 1 && S.filter((e) => e.nodeType === "dataCollection").length === 1, D = S.filter((e) => e.nodeType === "organization").sort((e, t) => e.name.localeCompare(t.name)).map((e, t) => ({
220
+ ...e,
221
+ label: v("right"),
222
+ x: P.organizationX,
223
+ y: P.topPadding + t * P.rowGap
224
+ })), O = S.filter((e) => e.nodeType === "dataCollection").sort((e, t) => {
225
+ let n = C(e) - C(t);
226
+ return n === 0 ? e.name.localeCompare(t.name) : n;
227
+ }).map((e, t) => ({
228
+ ...e,
229
+ label: v(T(e)),
230
+ x: w(e),
231
+ y: P.topPadding + t * P.rowGap + (E ? P.singleRowVerticalOffset : 0)
232
+ })), A = [...D, ...O], j = A.reduce((e, t) => ({
233
+ maxX: Math.max(e.maxX, t.x),
234
+ maxY: Math.max(e.maxY, t.y),
235
+ minX: Math.min(e.minX, t.x),
236
+ minY: Math.min(e.minY, t.y)
237
+ }), {
238
+ maxX: -Infinity,
239
+ maxY: -Infinity,
240
+ minX: Infinity,
241
+ minY: Infinity
242
+ }), M = A.reduce((e, t) => {
243
+ let n = t.symbolSize / 2, r = P.nodeLabelWidth + P.labelPadding, i = t.label.position === "left" ? "left" : "right";
244
+ return {
245
+ maxX: Math.max(e.maxX, t.x + n + (i === "right" ? r : 0)),
246
+ maxY: Math.max(e.maxY, t.y + n + P.viewportVerticalPadding),
247
+ minX: Math.min(e.minX, t.x - n - (i === "left" ? r : 0)),
248
+ minY: Math.min(e.minY, t.y - n - P.viewportVerticalPadding)
249
+ };
250
+ }, {
251
+ maxX: -Infinity,
252
+ maxY: -Infinity,
253
+ minX: Infinity,
254
+ minY: Infinity
255
+ }), z = Math.max(j.maxX - j.minX, 1), B = Math.max(j.maxY - j.minY, 1), V = Math.max(M.maxX - M.minX, 1), H = Math.max(M.maxY - M.minY, 1), U = Math.max(Math.min(z / V, B / H, 1) * P.fitZoomSafetyFactor, .1);
256
+ return {
257
+ categories: i,
258
+ links: [...g, ...x],
259
+ nodes: A,
260
+ totalAccessLinks: g.length,
261
+ totalDataCollections: O.length,
262
+ totalOrganizations: D.length,
263
+ totalShareLinks: x.length,
264
+ zoom: U
265
+ };
266
+ }, [
267
+ s.map,
268
+ R,
269
+ I.data,
270
+ F.map,
271
+ L.data,
272
+ a,
273
+ r,
274
+ t,
275
+ n.palette.primary.dark,
276
+ n.palette.primary.light,
277
+ n.palette.primary.main,
278
+ n.palette.secondary.dark,
279
+ n.palette.secondary.main,
280
+ n.palette.text.primary,
281
+ n.palette.warning.main
282
+ ]), Z = b((e) => {
283
+ let n = [
284
+ e.add_case ? t`Add case` : null,
285
+ e.remove_case ? t`Remove case` : null,
286
+ e.add_case_set ? t`Add case set` : null,
287
+ e.remove_case_set ? t`Remove case set` : null,
288
+ e.read_case_set ? t`Read case set` : null,
289
+ e.write_case_set ? t`Write case set` : null,
290
+ e.is_private ? t`Private` : null
291
+ ].filter((e) => !!e);
292
+ return n.length > 0 ? n.join(", ") : t`None`;
293
+ }, [t]), Q = b((e) => e.length > 0 ? e.join(", ") : t`None`, [t]), $ = b(() => ({
294
+ animation: !1,
295
+ series: [{
296
+ bottom: P.viewportVerticalPadding,
297
+ categories: X.categories,
298
+ center: ["50%", "50%"],
299
+ data: X.nodes,
300
+ edgeSymbol: ["none", "arrow"],
301
+ edgeSymbolSize: 8,
302
+ emphasis: {
303
+ focus: "adjacency",
304
+ lineStyle: { width: 3 }
305
+ },
306
+ layout: "none",
307
+ left: P.viewportHorizontalPadding,
308
+ lineStyle: { opacity: .45 },
309
+ links: X.links,
310
+ right: P.viewportHorizontalPadding,
311
+ roam: !0,
312
+ roamTrigger: "global",
313
+ scaleLimit: {
314
+ max: 4,
315
+ min: .1
316
+ },
317
+ top: P.viewportVerticalPadding,
318
+ type: "graph",
319
+ zoom: X.zoom
320
+ }],
321
+ tooltip: { formatter: (e) => {
322
+ let n = e;
323
+ if (n.dataType === "node") {
324
+ let e = n.data;
325
+ return e.nodeType === "organization" ? [
326
+ `<strong>${e.name}</strong>`,
327
+ `${t("Accessible data collections")}: ${e.accessLinkCount}`,
328
+ `${t("Connected share routes")}: ${e.shareInCount + e.shareOutCount}`
329
+ ].join("<br/>") : [
330
+ `<strong>${e.name}</strong>`,
331
+ `${t("Organization access links")}: ${e.accessLinkCount}`,
332
+ `${t("Incoming share routes")}: ${e.shareInCount}`,
333
+ `${t("Outgoing share routes")}: ${e.shareOutCount}`
334
+ ].join("<br/>");
335
+ }
336
+ let r = n.data;
337
+ return r.linkType === "access" ? [
338
+ `<strong>${r.organizationName} -> ${r.dataCollectionName}</strong>`,
339
+ `${t("Type")}: ${t`Organization access`}`,
340
+ `${t("Active access policies")}: ${r.accessPolicyCount}`,
341
+ `${t("Enabled access rights")}: ${Z(r.accessRights)}`,
342
+ `${t("Share source collections")}: ${Q(r.sourceDataCollectionNames)}`
343
+ ].join("<br/>") : [
344
+ `<strong>${r.sourceDataCollectionName} -> ${r.targetDataCollectionName}</strong>`,
345
+ `${t("Type")}: ${t`Organization share`}`,
346
+ `${t("Active share policies")}: ${r.sharePolicyCount}`,
347
+ `${t("Organizations")}: ${Q(r.organizationNames)}`
348
+ ].join("<br/>");
349
+ } }
350
+ }), [
351
+ Z,
352
+ Q,
353
+ X.categories,
354
+ X.links,
355
+ X.nodes,
356
+ X.zoom,
357
+ t
358
+ ]);
359
+ return /* @__PURE__ */ w(A, {
360
+ fullHeight: !0,
361
+ fullWidth: !0,
362
+ showBreadcrumbs: !0,
363
+ testIdAttributes: O.createAttributes("DataCollectionVisualizationPage"),
364
+ title: t`Data collection visualization`,
365
+ children: /* @__PURE__ */ w(m, {
366
+ sx: {
367
+ display: "grid",
368
+ gap: 2,
369
+ gridTemplateRows: "auto minmax(0, 1fr)",
370
+ height: "100%",
371
+ minHeight: 0,
372
+ overflow: "hidden"
373
+ },
374
+ children: /* @__PURE__ */ T(E, {
375
+ loadables: R,
376
+ children: [/* @__PURE__ */ T(m, {
377
+ sx: {
378
+ borderRadius: 2,
379
+ display: "grid",
380
+ gap: 2,
381
+ px: 2,
382
+ py: 2
383
+ },
384
+ children: [/* @__PURE__ */ T(m, {
385
+ sx: {
386
+ alignItems: "end",
387
+ display: "grid",
388
+ gap: 2,
389
+ gridTemplateColumns: {
390
+ md: "max-content minmax(320px, 520px)",
391
+ xs: "1fr"
392
+ }
393
+ },
394
+ children: [/* @__PURE__ */ T(m, {
395
+ sx: {
396
+ display: "grid",
397
+ gap: .75
398
+ },
399
+ children: [/* @__PURE__ */ w(v, {
400
+ color: "text.secondary",
401
+ variant: "overline",
402
+ children: t`Type`
403
+ }), /* @__PURE__ */ T(_, {
404
+ exclusive: !0,
405
+ onChange: G,
406
+ size: "small",
407
+ value: r,
408
+ children: [/* @__PURE__ */ w(g, {
409
+ value: "organization",
410
+ children: t`Organization`
411
+ }), /* @__PURE__ */ w(g, {
412
+ value: "dataCollection",
413
+ children: t`Data collection`
414
+ })]
415
+ })]
416
+ }), /* @__PURE__ */ w(p, {
417
+ disablePortal: !0,
418
+ getOptionLabel: K,
419
+ isOptionEqualToValue: q,
420
+ noOptionsText: t`No results`,
421
+ onChange: J,
422
+ options: V,
423
+ renderInput: Y,
424
+ value: H
425
+ })]
426
+ }), W ? /* @__PURE__ */ T(m, {
427
+ sx: {
428
+ color: "text.secondary",
429
+ display: "flex",
430
+ flexWrap: "wrap",
431
+ gap: 2
432
+ },
433
+ children: [
434
+ /* @__PURE__ */ w(m, {
435
+ component: "span",
436
+ children: t("Organizations: {{count}}", { count: X.totalOrganizations })
437
+ }),
438
+ /* @__PURE__ */ w(m, {
439
+ component: "span",
440
+ children: t("Data collections: {{count}}", { count: X.totalDataCollections })
441
+ }),
442
+ /* @__PURE__ */ w(m, {
443
+ component: "span",
444
+ children: t("Access links: {{count}}", { count: X.totalAccessLinks })
445
+ }),
446
+ /* @__PURE__ */ w(m, {
447
+ component: "span",
448
+ children: t("Share routes: {{count}}", { count: X.totalShareLinks })
449
+ }),
450
+ /* @__PURE__ */ w(m, {
451
+ component: "span",
452
+ children: t`Solid links show organization access policies. Dashed links show sharing routes between data collections.`
453
+ })
454
+ ]
455
+ }) : /* @__PURE__ */ w(v, {
456
+ color: "text.secondary",
457
+ children: t`Select an organization or data collection to show the visualization.`
458
+ })]
459
+ }), /* @__PURE__ */ w(m, {
460
+ sx: {
461
+ borderRadius: 2,
462
+ height: "100%",
463
+ minHeight: 0,
464
+ minWidth: 0,
465
+ overflow: "hidden"
466
+ },
467
+ children: W && X.nodes.length > 0 ? /* @__PURE__ */ w(c, {
468
+ echarts: M,
469
+ notMerge: !0,
470
+ option: $(),
471
+ style: {
472
+ height: "100%",
473
+ width: "100%"
474
+ }
475
+ }) : /* @__PURE__ */ w(m, {
476
+ sx: {
477
+ color: "text.secondary",
478
+ display: "grid",
479
+ height: "100%",
480
+ placeItems: "center",
481
+ px: 3,
482
+ textAlign: "center"
483
+ },
484
+ children: W ? t`No active organization access or share policies are available to visualize.` : t`Select an organization or data collection to show the visualization.`
485
+ })
486
+ })]
487
+ })
488
+ })
489
+ });
490
+ };
491
+ //#endregion
492
+ export { F as DataCollectionVisualizationPage };
493
+
494
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/pages/DataCollectionVisualizationPage/DataCollectionVisualizationPage.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next';\nimport {\n Autocomplete,\n Box,\n TextField,\n ToggleButton,\n ToggleButtonGroup,\n Typography,\n useTheme,\n} from '@mui/material';\nimport EChartsReact from 'echarts-for-react';\nimport {\n dispose,\n getInstanceByDom,\n init,\n use as registerECharts,\n} from 'echarts/core';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport { TooltipComponent } from 'echarts/components';\nimport { GraphChart } from 'echarts/charts';\nimport {\n useCallback,\n useMemo,\n useState,\n} from 'react';\nimport type {\n MouseEvent as ReactMouseEvent,\n SyntheticEvent,\n} from 'react';\nimport type {\n EChartsOption,\n GraphSeriesOption,\n} from 'echarts';\nimport type { AutocompleteRenderInputParams } from '@mui/material/Autocomplete';\nimport type { CaseDbOrganizationAccessCasePolicy } from '@gen-epix/api-casedb';\nimport { LoadableUtil } from '@gen-epix/ui/utils/LoadableUtil';\nimport { PageContainer } from '@gen-epix/ui/components/ui/PageContainer';\nimport { ResponseHandler } from '@gen-epix/ui/components/ui/ResponseHandler';\nimport { useOrganizationMapQuery } from '@gen-epix/ui/dataHooks/useOrganizationsQuery';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\n\nimport { useDataCollectionsMapQuery } from '../../dataHooks/useDataCollectionsQuery';\nimport { useOrganizationAccessCasePoliciesQuery } from '../../dataHooks/useOrganizationAccessCasePoliciesQuery';\nimport { useOrganizationShareCasePoliciesQuery } from '../../dataHooks/useOrganizationShareCasePoliciesQuery';\nimport { EffectiveRightsUtil } from '../../utils/EffectiveRightsUtil';\n\nconst echartsCore = {\n dispose,\n getInstanceByDom,\n init,\n};\n\nregisterECharts([TooltipComponent, CanvasRenderer, GraphChart]);\n\ntype AccessLink = {\n accessPolicyCount: number;\n accessRights: AccessRightsSummary;\n dataCollectionName: string;\n lineStyle: NonNullable<GraphSeriesOption['lineStyle']>;\n linkType: 'access';\n organizationName: string;\n sharePolicyCount: number;\n source: string;\n sourceDataCollectionNames: string[];\n target: string;\n value: number;\n};\n\ntype AccessRightsSummary = Pick<CaseDbOrganizationAccessCasePolicy, 'add_case_set' | 'add_case' | 'is_private' | 'read_case_set' | 'remove_case_set' | 'remove_case' | 'write_case_set'>;\n\ntype Category = {\n name: string;\n};\n\ntype Graph = {\n categories: Category[];\n links: Link[];\n nodes: Node[];\n totalAccessLinks: number;\n totalDataCollections: number;\n totalOrganizations: number;\n totalShareLinks: number;\n zoom: number;\n};\n\ntype GraphTooltipParams = {\n data: Link | Node;\n dataType?: 'edge' | 'node';\n};\n\ntype Link = AccessLink | ShareLink;\n\ntype Node = {\n accessLinkCount: number;\n category: number;\n id: string;\n itemStyle: {\n borderColor: string;\n borderWidth: number;\n color: string;\n };\n label: NonNullable<GraphSeriesOption['label']>;\n name: string;\n nodeType: 'dataCollection' | 'organization';\n shareInCount: number;\n shareOutCount: number;\n symbol: 'circle' | 'roundRect';\n symbolSize: number;\n value: number;\n x: number;\n y: number;\n};\n\ntype SelectionOption = {\n label: string;\n value: string;\n};\n\ntype SelectionType = 'dataCollection' | 'organization';\n\ntype ShareLink = {\n lineStyle: NonNullable<GraphSeriesOption['lineStyle']>;\n linkType: 'share';\n organizationNames: string[];\n sharePolicyCount: number;\n source: string;\n sourceDataCollectionName: string;\n target: string;\n targetDataCollectionName: string;\n value: number;\n};\n\nconst EMPTY_GRAPH: Graph = {\n categories: [],\n links: [],\n nodes: [],\n totalAccessLinks: 0,\n totalDataCollections: 0,\n totalOrganizations: 0,\n totalShareLinks: 0,\n zoom: 1,\n};\n\nconst GRAPH_LAYOUT = {\n bottomPadding: 72,\n fitZoomSafetyFactor: 0.94,\n labelPadding: 12,\n nodeLabelWidth: 220,\n organizationX: 120,\n rowGap: 68,\n singleRowVerticalOffset: 96,\n sourceDataCollectionX: 1060,\n targetAndSourceDataCollectionX: 820,\n targetDataCollectionX: 620,\n topPadding: 72,\n viewportHorizontalPadding: 24,\n viewportVerticalPadding: 24,\n} as const;\n\nexport const DataCollectionVisualizationPage = () => {\n const { t } = useTranslation();\n const theme = useTheme();\n const [selectionType, setSelectionType] = useState<SelectionType>('organization');\n const [selectedEntityId, setSelectedEntityId] = useState<string>(null);\n const dataCollectionMapQuery = useDataCollectionsMapQuery();\n const organizationMapQuery = useOrganizationMapQuery();\n const organizationAccessCasePoliciesQuery = useOrganizationAccessCasePoliciesQuery(policies => policies.filter(policy => policy.is_active));\n const organizationShareCasePoliciesQuery = useOrganizationShareCasePoliciesQuery(policies => policies.filter(policy => policy.is_active));\n\n const loadables = useArray([\n dataCollectionMapQuery,\n organizationMapQuery,\n organizationAccessCasePoliciesQuery,\n organizationShareCasePoliciesQuery,\n ]);\n\n const organizationOptions = useMemo<SelectionOption[]>(() => {\n return Array.from(organizationMapQuery.map.values())\n .map(organization => ({\n label: organization.name,\n value: organization.id,\n }))\n .sort((a, b) => StringUtil.advancedSortComperator(a.label, b.label));\n }, [organizationMapQuery.map]);\n\n const dataCollectionOptions = useMemo<SelectionOption[]>(() => {\n return Array.from(dataCollectionMapQuery.map.values())\n .map(dataCollection => ({\n label: dataCollection.name,\n value: dataCollection.id,\n }))\n .sort((a, b) => StringUtil.advancedSortComperator(a.label, b.label));\n }, [dataCollectionMapQuery.map]);\n\n const selectionOptions = useMemo(() => {\n return selectionType === 'organization' ? organizationOptions : dataCollectionOptions;\n }, [dataCollectionOptions, organizationOptions, selectionType]);\n\n const selectedOption = useMemo(() => {\n return selectionOptions.find(option => option.value === selectedEntityId) ?? null;\n }, [selectedEntityId, selectionOptions]);\n\n const selectionLabel = selectionType === 'organization' ? t`Organization` : t`Data collection`;\n const hasSelection = !!selectedEntityId;\n\n const onSelectionTypeChange = useCallback((_event: ReactMouseEvent<HTMLElement>, nextSelectionType: null | SelectionType) => {\n if (!nextSelectionType || nextSelectionType === selectionType) {\n return;\n }\n\n setSelectionType(nextSelectionType);\n setSelectedEntityId(null);\n }, [selectionType]);\n\n const getSelectionOptionLabel = useCallback((option: SelectionOption) => {\n return option.label;\n }, []);\n\n const isSelectionOptionEqualToValue = useCallback((option: SelectionOption, value: SelectionOption) => {\n return option.value === value.value;\n }, []);\n\n const onSelectionChange = useCallback((_event: SyntheticEvent, nextOption: null | SelectionOption) => {\n setSelectedEntityId(nextOption?.value ?? null);\n }, []);\n\n const renderSelectionInput = useCallback((params: AutocompleteRenderInputParams) => {\n return (\n <TextField\n {...params}\n label={selectionLabel}\n required\n size={'small'}\n />\n );\n }, [selectionLabel]);\n\n const graph = useMemo<Graph>(() => {\n if (LoadableUtil.isSomeLoading(loadables)) {\n return EMPTY_GRAPH;\n }\n\n if (!selectedEntityId) {\n return EMPTY_GRAPH;\n }\n\n const categories: Category[] = [\n {\n name: t`Organization`,\n },\n {\n name: t`Data collection`,\n },\n ];\n\n const organizationNodeColor = theme.palette.primary.main;\n const organizationNodeBorderColor = theme.palette.primary.dark;\n const dataCollectionNodeColor = theme.palette.secondary.main;\n const dataCollectionNodeBorderColor = theme.palette.secondary.dark;\n const accessLinkColor = theme.palette.primary.light;\n const shareLinkColor = theme.palette.warning.main;\n\n const policyGroups = EffectiveRightsUtil.getOrganizationPolicyGroups({\n organizationAccessCasePolicies: organizationAccessCasePoliciesQuery.data,\n organizationShareCasePolicies: organizationShareCasePoliciesQuery.data,\n });\n\n const filteredPolicyGroups = policyGroups.filter(policyGroup => {\n if (selectionType === 'organization') {\n return policyGroup.organization_id === selectedEntityId;\n }\n\n return policyGroup.data_collection_id === selectedEntityId\n || policyGroup.share_case_policies.some(policy => policy.from_data_collection_id === selectedEntityId);\n });\n\n const nodesById = new Map<string, Omit<Node, 'accessLinkCount' | 'label' | 'shareInCount' | 'shareOutCount' | 'symbolSize' | 'value' | 'x' | 'y'>>();\n const nodeStats = new Map<string, Pick<Node, 'accessLinkCount' | 'shareInCount' | 'shareOutCount'>>();\n const accessLinks: AccessLink[] = [];\n const shareLinksByKey = new Map<string, {\n organizationNames: Set<string>;\n sharePolicyCount: number;\n source: string;\n sourceDataCollectionName: string;\n target: string;\n targetDataCollectionName: string;\n }>();\n\n const buildNodeLabel = (position: 'left' | 'right'): Node['label'] => {\n return {\n color: theme.palette.text.primary,\n distance: 8,\n fontSize: 12,\n formatter: '{b}',\n overflow: 'truncate',\n position,\n show: true,\n width: GRAPH_LAYOUT.nodeLabelWidth,\n };\n };\n\n const ensureNode = (params: {\n borderColor: string;\n category: number;\n color: string;\n id: string;\n name: string;\n nodeType: Node['nodeType'];\n symbol: Node['symbol'];\n }) => {\n if (nodesById.has(params.id)) {\n return;\n }\n\n nodesById.set(params.id, {\n category: params.category,\n id: params.id,\n itemStyle: {\n borderColor: params.borderColor,\n borderWidth: 1.5,\n color: params.color,\n },\n name: params.name,\n nodeType: params.nodeType,\n symbol: params.symbol,\n });\n };\n\n const incrementNodeStat = (nodeId: string, key: keyof Pick<Node, 'accessLinkCount' | 'shareInCount' | 'shareOutCount'>) => {\n const currentStats = nodeStats.get(nodeId) ?? {\n accessLinkCount: 0,\n shareInCount: 0,\n shareOutCount: 0,\n };\n\n currentStats[key] += 1;\n nodeStats.set(nodeId, currentStats);\n };\n\n filteredPolicyGroups.forEach(policyGroup => {\n const organizationNodeId = `organization:${policyGroup.organization_id}`;\n const targetDataCollectionNodeId = `dataCollection:${policyGroup.data_collection_id}`;\n const organizationName = organizationMapQuery.map.get(policyGroup.organization_id)?.name ?? policyGroup.organization_id;\n const targetDataCollectionName = dataCollectionMapQuery.map.get(policyGroup.data_collection_id)?.name ?? policyGroup.data_collection_id;\n const sourceDataCollectionNames = Array.from(new Set(policyGroup.share_case_policies.map(policy => dataCollectionMapQuery.map.get(policy.from_data_collection_id)?.name ?? policy.from_data_collection_id))).sort();\n\n const accessRights = policyGroup.access_case_policies.reduce<AccessRightsSummary>((summary, policy) => {\n return {\n add_case: summary.add_case || policy.add_case,\n add_case_set: summary.add_case_set || policy.add_case_set,\n is_private: summary.is_private || policy.is_private,\n read_case_set: summary.read_case_set || policy.read_case_set,\n remove_case: summary.remove_case || policy.remove_case,\n remove_case_set: summary.remove_case_set || policy.remove_case_set,\n write_case_set: summary.write_case_set || policy.write_case_set,\n };\n }, {\n add_case: false,\n add_case_set: false,\n is_private: false,\n read_case_set: false,\n remove_case: false,\n remove_case_set: false,\n write_case_set: false,\n });\n\n ensureNode({\n borderColor: organizationNodeBorderColor,\n category: 0,\n color: organizationNodeColor,\n id: organizationNodeId,\n name: organizationName,\n nodeType: 'organization',\n symbol: 'roundRect',\n });\n ensureNode({\n borderColor: dataCollectionNodeBorderColor,\n category: 1,\n color: dataCollectionNodeColor,\n id: targetDataCollectionNodeId,\n name: targetDataCollectionName,\n nodeType: 'dataCollection',\n symbol: 'circle',\n });\n\n accessLinks.push({\n accessPolicyCount: policyGroup.access_case_policies.length,\n accessRights,\n dataCollectionName: targetDataCollectionName,\n lineStyle: {\n color: accessLinkColor,\n curveness: 0.08,\n opacity: 0.5,\n width: 1.5 + Math.min(policyGroup.access_case_policies.length * 0.35, 1.5),\n },\n linkType: 'access',\n organizationName,\n sharePolicyCount: policyGroup.share_case_policies.length,\n source: organizationNodeId,\n sourceDataCollectionNames,\n target: targetDataCollectionNodeId,\n value: Math.max(policyGroup.access_case_policies.length, 1),\n });\n\n incrementNodeStat(organizationNodeId, 'accessLinkCount');\n incrementNodeStat(targetDataCollectionNodeId, 'accessLinkCount');\n\n policyGroup.share_case_policies.forEach(sharePolicy => {\n const sourceDataCollectionNodeId = `dataCollection:${sharePolicy.from_data_collection_id}`;\n const sourceDataCollectionName = dataCollectionMapQuery.map.get(sharePolicy.from_data_collection_id)?.name ?? sharePolicy.from_data_collection_id;\n const shareLinkKey = `${sourceDataCollectionNodeId}::${targetDataCollectionNodeId}`;\n const existingShareLink = shareLinksByKey.get(shareLinkKey);\n\n ensureNode({\n borderColor: dataCollectionNodeBorderColor,\n category: 1,\n color: dataCollectionNodeColor,\n id: sourceDataCollectionNodeId,\n name: sourceDataCollectionName,\n nodeType: 'dataCollection',\n symbol: 'circle',\n });\n\n if (existingShareLink) {\n existingShareLink.organizationNames.add(organizationName);\n existingShareLink.sharePolicyCount += 1;\n return;\n }\n\n shareLinksByKey.set(shareLinkKey, {\n organizationNames: new Set([organizationName]),\n sharePolicyCount: 1,\n source: sourceDataCollectionNodeId,\n sourceDataCollectionName,\n target: targetDataCollectionNodeId,\n targetDataCollectionName,\n });\n });\n });\n\n const shareLinks = Array.from(shareLinksByKey.values()).map(shareLink => {\n incrementNodeStat(shareLink.source, 'shareOutCount');\n incrementNodeStat(shareLink.target, 'shareInCount');\n\n return {\n lineStyle: {\n color: shareLinkColor,\n curveness: 0.28,\n opacity: 0.45,\n type: 'dashed',\n width: 1.25 + Math.min(shareLink.sharePolicyCount * 0.3, 1.25),\n },\n linkType: 'share',\n organizationNames: Array.from(shareLink.organizationNames).sort(),\n sharePolicyCount: shareLink.sharePolicyCount,\n source: shareLink.source,\n sourceDataCollectionName: shareLink.sourceDataCollectionName,\n target: shareLink.target,\n targetDataCollectionName: shareLink.targetDataCollectionName,\n value: Math.max(shareLink.sharePolicyCount, 1),\n } satisfies ShareLink;\n });\n\n const rawNodes = Array.from(nodesById.values())\n .map(node => {\n const stats = nodeStats.get(node.id) ?? {\n accessLinkCount: 0,\n shareInCount: 0,\n shareOutCount: 0,\n };\n const totalConnections = stats.accessLinkCount + stats.shareInCount + stats.shareOutCount;\n\n return {\n ...node,\n accessLinkCount: stats.accessLinkCount,\n label: buildNodeLabel('right'),\n shareInCount: stats.shareInCount,\n shareOutCount: stats.shareOutCount,\n symbolSize: node.nodeType === 'organization'\n ? Math.min(22 + (stats.accessLinkCount * 2), 34)\n : Math.min(18 + (totalConnections * 1.5), 30),\n value: totalConnections,\n x: 0,\n y: 0,\n } satisfies Node;\n });\n\n const getDataCollectionLayoutRank = (node: Node) => {\n if (node.accessLinkCount > 0 && node.shareOutCount > 0) {\n return 1;\n }\n if (node.accessLinkCount > 0) {\n return 0;\n }\n return 2;\n };\n\n const getDataCollectionX = (node: Node) => {\n if (node.accessLinkCount > 0 && node.shareOutCount > 0) {\n return GRAPH_LAYOUT.targetAndSourceDataCollectionX;\n }\n if (node.accessLinkCount > 0) {\n return GRAPH_LAYOUT.targetDataCollectionX;\n }\n return GRAPH_LAYOUT.sourceDataCollectionX;\n };\n\n const getDataCollectionLabelPosition = (node: Node): 'left' | 'right' => {\n return node.accessLinkCount > 0 && node.shareOutCount === 0 ? 'left' : 'right';\n };\n\n const isSingleNodePair = rawNodes.filter(node => node.nodeType === 'organization').length === 1\n && rawNodes.filter(node => node.nodeType === 'dataCollection').length === 1;\n\n const organizationNodes = rawNodes\n .filter(node => node.nodeType === 'organization')\n .sort((a, b) => a.name.localeCompare(b.name))\n .map((node, index) => {\n return {\n ...node,\n label: buildNodeLabel('right'),\n x: GRAPH_LAYOUT.organizationX,\n y: GRAPH_LAYOUT.topPadding + (index * GRAPH_LAYOUT.rowGap),\n } satisfies Node;\n });\n\n const dataCollectionNodes = rawNodes\n .filter(node => node.nodeType === 'dataCollection')\n .sort((a, b) => {\n const rankDifference = getDataCollectionLayoutRank(a) - getDataCollectionLayoutRank(b);\n if (rankDifference !== 0) {\n return rankDifference;\n }\n return a.name.localeCompare(b.name);\n })\n .map((node, index) => {\n return {\n ...node,\n label: buildNodeLabel(getDataCollectionLabelPosition(node)),\n x: getDataCollectionX(node),\n y: GRAPH_LAYOUT.topPadding + (index * GRAPH_LAYOUT.rowGap) + (isSingleNodePair ? GRAPH_LAYOUT.singleRowVerticalOffset : 0),\n } satisfies Node;\n });\n\n const nodes = [...organizationNodes, ...dataCollectionNodes];\n const nodeBounds = nodes.reduce((bounds, node) => {\n return {\n maxX: Math.max(bounds.maxX, node.x),\n maxY: Math.max(bounds.maxY, node.y),\n minX: Math.min(bounds.minX, node.x),\n minY: Math.min(bounds.minY, node.y),\n };\n }, {\n maxX: Number.NEGATIVE_INFINITY,\n maxY: Number.NEGATIVE_INFINITY,\n minX: Number.POSITIVE_INFINITY,\n minY: Number.POSITIVE_INFINITY,\n });\n\n const contentBounds = nodes.reduce((bounds, node) => {\n const halfSymbolSize = node.symbolSize / 2;\n const labelPadding = GRAPH_LAYOUT.nodeLabelWidth + GRAPH_LAYOUT.labelPadding;\n const labelPosition = node.label.position === 'left' ? 'left' : 'right';\n\n return {\n maxX: Math.max(bounds.maxX, node.x + halfSymbolSize + (labelPosition === 'right' ? labelPadding : 0)),\n maxY: Math.max(bounds.maxY, node.y + halfSymbolSize + GRAPH_LAYOUT.viewportVerticalPadding),\n minX: Math.min(bounds.minX, node.x - halfSymbolSize - (labelPosition === 'left' ? labelPadding : 0)),\n minY: Math.min(bounds.minY, node.y - halfSymbolSize - GRAPH_LAYOUT.viewportVerticalPadding),\n };\n }, {\n maxX: Number.NEGATIVE_INFINITY,\n maxY: Number.NEGATIVE_INFINITY,\n minX: Number.POSITIVE_INFINITY,\n minY: Number.POSITIVE_INFINITY,\n });\n\n const nodeWidth = Math.max(nodeBounds.maxX - nodeBounds.minX, 1);\n const nodeHeight = Math.max(nodeBounds.maxY - nodeBounds.minY, 1);\n const contentWidth = Math.max(contentBounds.maxX - contentBounds.minX, 1);\n const contentHeight = Math.max(contentBounds.maxY - contentBounds.minY, 1);\n const zoom = Math.max(\n Math.min(\n (nodeWidth / contentWidth),\n (nodeHeight / contentHeight),\n 1,\n ) * GRAPH_LAYOUT.fitZoomSafetyFactor,\n 0.1,\n );\n\n return {\n categories,\n links: [...accessLinks, ...shareLinks],\n nodes,\n totalAccessLinks: accessLinks.length,\n totalDataCollections: dataCollectionNodes.length,\n totalOrganizations: organizationNodes.length,\n totalShareLinks: shareLinks.length,\n zoom,\n } satisfies Graph;\n }, [dataCollectionMapQuery.map, loadables, organizationAccessCasePoliciesQuery.data, organizationMapQuery.map, organizationShareCasePoliciesQuery.data, selectedEntityId, selectionType, t, theme.palette.primary.dark, theme.palette.primary.light, theme.palette.primary.main, theme.palette.secondary.dark, theme.palette.secondary.main, theme.palette.text.primary, theme.palette.warning.main]);\n\n const formatAccessRights = useCallback((accessRights: AccessRightsSummary) => {\n const enabledRights = [\n accessRights.add_case ? t`Add case` : null,\n accessRights.remove_case ? t`Remove case` : null,\n accessRights.add_case_set ? t`Add case set` : null,\n accessRights.remove_case_set ? t`Remove case set` : null,\n accessRights.read_case_set ? t`Read case set` : null,\n accessRights.write_case_set ? t`Write case set` : null,\n accessRights.is_private ? t`Private` : null,\n ].filter((value): value is string => !!value);\n\n return enabledRights.length > 0 ? enabledRights.join(', ') : t`None`;\n }, [t]);\n\n const formatList = useCallback((items: string[]) => {\n return items.length > 0 ? items.join(', ') : t`None`;\n }, [t]);\n\n const getOptions = useCallback(() => {\n return {\n animation: false,\n series: [\n {\n bottom: GRAPH_LAYOUT.viewportVerticalPadding,\n categories: graph.categories,\n center: ['50%', '50%'],\n data: graph.nodes,\n edgeSymbol: ['none', 'arrow'],\n edgeSymbolSize: 8,\n emphasis: {\n focus: 'adjacency',\n lineStyle: {\n width: 3,\n },\n },\n layout: 'none',\n left: GRAPH_LAYOUT.viewportHorizontalPadding,\n lineStyle: {\n opacity: 0.45,\n },\n links: graph.links,\n right: GRAPH_LAYOUT.viewportHorizontalPadding,\n roam: true,\n roamTrigger: 'global',\n scaleLimit: {\n max: 4,\n min: 0.1,\n },\n top: GRAPH_LAYOUT.viewportVerticalPadding,\n type: 'graph',\n zoom: graph.zoom,\n } satisfies GraphSeriesOption,\n ],\n tooltip: {\n formatter: (params: unknown) => {\n const typedParams = params as GraphTooltipParams;\n\n if (typedParams.dataType === 'node') {\n const node = typedParams.data as Node;\n\n if (node.nodeType === 'organization') {\n return [\n `<strong>${node.name}</strong>`,\n `${t('Accessible data collections')}: ${node.accessLinkCount}`,\n `${t('Connected share routes')}: ${node.shareInCount + node.shareOutCount}`,\n ].join('<br/>');\n }\n\n return [\n `<strong>${node.name}</strong>`,\n `${t('Organization access links')}: ${node.accessLinkCount}`,\n `${t('Incoming share routes')}: ${node.shareInCount}`,\n `${t('Outgoing share routes')}: ${node.shareOutCount}`,\n ].join('<br/>');\n }\n\n const link = typedParams.data as Link;\n\n if (link.linkType === 'access') {\n return [\n `<strong>${link.organizationName} -> ${link.dataCollectionName}</strong>`,\n `${t('Type')}: ${t`Organization access`}`,\n `${t('Active access policies')}: ${link.accessPolicyCount}`,\n `${t('Enabled access rights')}: ${formatAccessRights(link.accessRights)}`,\n `${t('Share source collections')}: ${formatList(link.sourceDataCollectionNames)}`,\n ].join('<br/>');\n }\n\n return [\n `<strong>${link.sourceDataCollectionName} -> ${link.targetDataCollectionName}</strong>`,\n `${t('Type')}: ${t`Organization share`}`,\n `${t('Active share policies')}: ${link.sharePolicyCount}`,\n `${t('Organizations')}: ${formatList(link.organizationNames)}`,\n ].join('<br/>');\n },\n },\n } satisfies EChartsOption;\n }, [formatAccessRights, formatList, graph.categories, graph.links, graph.nodes, graph.zoom, t]);\n\n return (\n <PageContainer\n fullHeight\n fullWidth\n showBreadcrumbs\n testIdAttributes={TestIdUtil.createAttributes('DataCollectionVisualizationPage')}\n title={t`Data collection visualization`}\n >\n <Box\n sx={{\n display: 'grid',\n gap: 2,\n gridTemplateRows: 'auto minmax(0, 1fr)',\n height: '100%',\n minHeight: 0,\n overflow: 'hidden',\n }}\n >\n <ResponseHandler\n loadables={loadables}\n >\n <Box\n sx={{\n borderRadius: 2,\n display: 'grid',\n gap: 2,\n px: 2,\n py: 2,\n }}\n >\n <Box\n sx={{\n alignItems: 'end',\n display: 'grid',\n gap: 2,\n gridTemplateColumns: {\n md: 'max-content minmax(320px, 520px)',\n xs: '1fr',\n },\n }}\n >\n <Box\n sx={{\n display: 'grid',\n gap: 0.75,\n }}\n >\n <Typography\n color={'text.secondary'}\n variant={'overline'}\n >\n {t`Type`}\n </Typography>\n <ToggleButtonGroup\n exclusive\n onChange={onSelectionTypeChange}\n size={'small'}\n value={selectionType}\n >\n <ToggleButton value={'organization'}>\n {t`Organization`}\n </ToggleButton>\n <ToggleButton value={'dataCollection'}>\n {t`Data collection`}\n </ToggleButton>\n </ToggleButtonGroup>\n </Box>\n <Autocomplete\n disablePortal\n getOptionLabel={getSelectionOptionLabel}\n isOptionEqualToValue={isSelectionOptionEqualToValue}\n noOptionsText={t`No results`}\n onChange={onSelectionChange}\n options={selectionOptions}\n renderInput={renderSelectionInput}\n value={selectedOption}\n />\n </Box>\n {hasSelection ? (\n <Box\n sx={{\n color: 'text.secondary',\n display: 'flex',\n flexWrap: 'wrap',\n gap: 2,\n }}\n >\n <Box component={'span'}>\n {t('Organizations: {{count}}', { count: graph.totalOrganizations })}\n </Box>\n <Box component={'span'}>\n {t('Data collections: {{count}}', { count: graph.totalDataCollections })}\n </Box>\n <Box component={'span'}>\n {t('Access links: {{count}}', { count: graph.totalAccessLinks })}\n </Box>\n <Box component={'span'}>\n {t('Share routes: {{count}}', { count: graph.totalShareLinks })}\n </Box>\n <Box component={'span'}>\n {t`Solid links show organization access policies. Dashed links show sharing routes between data collections.`}\n </Box>\n </Box>\n ) : (\n <Typography color={'text.secondary'}>\n {t`Select an organization or data collection to show the visualization.`}\n </Typography>\n )}\n </Box>\n <Box\n sx={{\n borderRadius: 2,\n height: '100%',\n minHeight: 0,\n minWidth: 0,\n overflow: 'hidden',\n }}\n >\n {hasSelection && graph.nodes.length > 0 ? (\n <EChartsReact\n echarts={echartsCore}\n notMerge\n option={getOptions()}\n style={{\n height: '100%',\n width: '100%',\n }}\n />\n ) : (\n <Box\n sx={{\n color: 'text.secondary',\n display: 'grid',\n height: '100%',\n placeItems: 'center',\n px: 3,\n textAlign: 'center',\n }}\n >\n {hasSelection\n ? t`No active organization access or share policies are available to visualize.`\n : t`Select an organization or data collection to show the visualization.`}\n </Box>\n )}\n </Box>\n </ResponseHandler>\n </Box>\n </PageContainer>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const DataCollectionsAdminPage: () => import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './DataCollectionsAdminPage';
@@ -0,0 +1,54 @@
1
+ import { CASEDB_QUERY_KEY as e } from "../../constants/query.js";
2
+ import { object as t } from "yup";
3
+ import { CaseDbCommandName as n, CaseDbOrganizationApi as r } from "@gen-epix/api-casedb";
4
+ import { FORM_FIELD_DEFINITION_TYPE as i } from "@gen-epix/ui-form/models/form";
5
+ import { useCallback as a, useMemo as o } from "react";
6
+ import { useTranslation as s } from "react-i18next";
7
+ import { jsx as c } from "react/jsx-runtime";
8
+ import { TableUtil as l } from "@gen-epix/ui/utils/TableUtil";
9
+ import { TestIdUtil as u } from "@gen-epix/ui-core/utils/TestIdUtil";
10
+ import { SchemaUtil as d } from "@gen-epix/ui-form/utils/SchemaUtil";
11
+ import { CrudPage as f } from "@gen-epix/ui/pages/CrudPage";
12
+ //#region src/pages/DataCollectionsAdminPage/DataCollectionsAdminPage.tsx
13
+ var p = () => {
14
+ let { t: p } = s(), m = a(async (e) => (await r.getInstance().dataCollectionsGetAll(null, null, { signal: e }))?.data, []), h = a(async (e) => await r.getInstance().dataCollectionsDeleteOne(e.id), []), g = a(async (e, t) => (await r.getInstance().dataCollectionsPutOne(t.id, {
15
+ id: t.id,
16
+ ...e
17
+ })).data, []), _ = a(async (e) => (await r.getInstance().dataCollectionsPostOne(e)).data, []), v = a((e) => e.name, []), y = o(() => t().shape({
18
+ description: d.description,
19
+ name: d.name
20
+ }), []), b = o(() => [{
21
+ definition: i.TEXTFIELD,
22
+ label: p`Name`,
23
+ name: "name"
24
+ }, {
25
+ definition: i.RICH_TEXT,
26
+ label: p`Description`,
27
+ name: "description"
28
+ }], [p]), x = o(() => [l.createTextColumn({
29
+ id: "name",
30
+ name: p`Name`
31
+ })], [p]);
32
+ return /* @__PURE__ */ c(f, {
33
+ createItemDialogTitle: p`Create new data collection`,
34
+ createOne: _,
35
+ crudCommandType: n.DataCollectionCrudCommand,
36
+ defaultSortByField: "name",
37
+ defaultSortDirection: "asc",
38
+ deleteOne: h,
39
+ fetchAll: m,
40
+ formFieldDefinitions: b,
41
+ getName: v,
42
+ itemName: p`Data collection`,
43
+ resourceQueryKeyBase: e.DATA_COLLECTIONS,
44
+ schema: y,
45
+ tableColumns: x,
46
+ testIdAttributes: u.createAttributes("DataCollectionsAdminPage"),
47
+ title: p`Data collections`,
48
+ updateOne: g
49
+ });
50
+ };
51
+ //#endregion
52
+ export { p as DataCollectionsAdminPage };
53
+
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/pages/DataCollectionsAdminPage/DataCollectionsAdminPage.tsx"],"sourcesContent":["import {\n useCallback,\n useMemo,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { object } from 'yup';\nimport type {\n CaseDbApiPermission,\n CaseDbDataCollection,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbCommandName,\n CaseDbOrganizationApi,\n} from '@gen-epix/api-casedb';\nimport type { OmitWithMetaData } from '@gen-epix/ui/models/data';\nimport type { TableColumn } from '@gen-epix/ui/models/table';\nimport { CrudPage } from '@gen-epix/ui/pages/CrudPage';\nimport { TableUtil } from '@gen-epix/ui/utils/TableUtil';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport type { FormFieldDefinition } from '@gen-epix/ui-form/models/form';\nimport { FORM_FIELD_DEFINITION_TYPE } from '@gen-epix/ui-form/models/form';\nimport { SchemaUtil } from '@gen-epix/ui-form/utils/SchemaUtil';\n\nimport { CASEDB_QUERY_KEY } from '../../constants/query';\n\n\ntype FormFields = OmitWithMetaData<CaseDbDataCollection>;\n\nexport const DataCollectionsAdminPage = () => {\n const { t } = useTranslation();\n\n const fetchAll = useCallback(async (signal: AbortSignal) => {\n return (await CaseDbOrganizationApi.getInstance().dataCollectionsGetAll(null, null, { signal }))?.data;\n }, []);\n\n const deleteOne = useCallback(async (item: CaseDbDataCollection) => {\n return await CaseDbOrganizationApi.getInstance().dataCollectionsDeleteOne(item.id);\n }, []);\n\n const updateOne = useCallback(async (variables: FormFields, item: CaseDbDataCollection) => {\n return (await CaseDbOrganizationApi.getInstance().dataCollectionsPutOne(item.id, { id: item.id, ...variables })).data;\n }, []);\n\n const createOne = useCallback(async (variables: FormFields) => {\n return (await CaseDbOrganizationApi.getInstance().dataCollectionsPostOne(variables)).data;\n }, []);\n\n const getName = useCallback((item: FormFields) => {\n return item.name;\n }, []);\n\n const schema = useMemo(() => {\n return object<FormFields>().shape({\n description: SchemaUtil.description,\n name: SchemaUtil.name,\n });\n }, []);\n\n const formFieldDefinitions = useMemo<FormFieldDefinition<FormFields>[]>(() => {\n return [\n {\n definition: FORM_FIELD_DEFINITION_TYPE.TEXTFIELD,\n label: t`Name`,\n name: 'name',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.RICH_TEXT,\n label: t`Description`,\n name: 'description',\n } as const satisfies FormFieldDefinition<FormFields>,\n ] as const;\n }, [t]);\n\n const tableColumns = useMemo((): TableColumn<CaseDbDataCollection>[] => {\n return [\n TableUtil.createTextColumn<CaseDbDataCollection>({ id: 'name', name: t`Name` }),\n ];\n }, [t]);\n\n return (\n <CrudPage<FormFields, CaseDbDataCollection, CaseDbDataCollection, CASEDB_QUERY_KEY, CaseDbApiPermission>\n createItemDialogTitle={t`Create new data collection`}\n createOne={createOne}\n crudCommandType={CaseDbCommandName.DataCollectionCrudCommand}\n defaultSortByField={'name'}\n defaultSortDirection={'asc'}\n deleteOne={deleteOne}\n fetchAll={fetchAll}\n formFieldDefinitions={formFieldDefinitions}\n getName={getName}\n itemName={t`Data collection`}\n resourceQueryKeyBase={CASEDB_QUERY_KEY.DATA_COLLECTIONS}\n schema={schema}\n tableColumns={tableColumns}\n testIdAttributes={TestIdUtil.createAttributes('DataCollectionsAdminPage')}\n title={t`Data collections`}\n updateOne={updateOne}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;;AA4BA,IAAa,UAAiC;CAC5C,IAAM,EAAE,SAAM,EAAe,GAEvB,IAAW,EAAY,OAAO,OAC1B,MAAM,EAAsB,YAAY,CAAC,CAAC,sBAAsB,MAAM,MAAM,EAAE,UAAO,CAAC,EAAA,EAAI,MACjG,CAAC,CAAC,GAEC,IAAY,EAAY,OAAO,MAC5B,MAAM,EAAsB,YAAY,CAAC,CAAC,yBAAyB,EAAK,EAAE,GAChF,CAAC,CAAC,GAEC,IAAY,EAAY,OAAO,GAAuB,OAClD,MAAM,EAAsB,YAAY,CAAC,CAAC,sBAAsB,EAAK,IAAI;EAAE,IAAI,EAAK;EAAI,GAAG;CAAU,CAAC,EAAA,CAAG,MAChH,CAAC,CAAC,GAEC,IAAY,EAAY,OAAO,OAC3B,MAAM,EAAsB,YAAY,CAAC,CAAC,uBAAuB,CAAS,EAAA,CAAG,MACpF,CAAC,CAAC,GAEC,IAAU,GAAa,MACpB,EAAK,MACX,CAAC,CAAC,GAEC,IAAS,QACN,EAAmB,CAAC,CAAC,MAAM;EAChC,aAAa,EAAW;EACxB,MAAM,EAAW;CACnB,CAAC,GACA,CAAC,CAAC,GAEC,IAAuB,QACpB,CACL;EACE,YAAY,EAA2B;EACvC,OAAO,CAAC;EACR,MAAM;CACR,GACA;EACE,YAAY,EAA2B;EACvC,OAAO,CAAC;EACR,MAAM;CACR,CACF,GACC,CAAC,CAAC,CAAC,GAEA,IAAe,QACZ,CACL,EAAU,iBAAuC;EAAE,IAAI;EAAQ,MAAM,CAAC;CAAO,CAAC,CAChF,GACC,CAAC,CAAC,CAAC;CAEN,OACE,kBAAC,GAAD;EACE,uBAAuB,CAAC;EACb;EACX,iBAAiB,EAAkB;EACnC,oBAAoB;EACpB,sBAAsB;EACX;EACD;EACY;EACb;EACT,UAAU,CAAC;EACX,sBAAsB,EAAiB;EAC/B;EACM;EACd,kBAAkB,EAAW,iBAAiB,0BAA0B;EACxE,OAAO,CAAC;EACG;CACZ,CAAA;AAEL"}
@@ -0,0 +1 @@
1
+ export declare const DimsAdminPage: () => import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './DimsAdminPage';