@gen-epix/ui-client-casedb 4.0.0 → 4.0.1

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 (393) hide show
  1. package/dist/@types/mui.d.ts +1 -1
  2. package/dist/@types/{ui-casedb.d.ts → ui-client-casedb.d.ts} +1 -1
  3. package/dist/_chunks/AddCasesToEventDialog.js +74 -74
  4. package/dist/_chunks/AddCasesToEventDialog.js.map +1 -1
  5. package/dist/_chunks/CaseContentForm.js +2 -2
  6. package/dist/_chunks/CaseContentForm.js.map +1 -1
  7. package/dist/_chunks/CaseDbDownloadUtil.js +40 -35
  8. package/dist/_chunks/CaseDbDownloadUtil.js.map +1 -1
  9. package/dist/_chunks/CaseInfoDialog.js +195 -195
  10. package/dist/_chunks/CaseInfoDialog.js.map +1 -1
  11. package/dist/_chunks/CaseSetInfoDialog.js +131 -131
  12. package/dist/_chunks/CaseSetInfoDialog.js.map +1 -1
  13. package/dist/_chunks/CaseTypeInfoDialog.js +63 -61
  14. package/dist/_chunks/CaseTypeInfoDialog.js.map +1 -1
  15. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js +6 -6
  16. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js.map +1 -1
  17. package/dist/_chunks/CompletCaseTypeLoader.js +3 -3
  18. package/dist/_chunks/CompletCaseTypeLoader.js.map +1 -1
  19. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js +1 -1
  20. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js.map +1 -1
  21. package/dist/_chunks/CustomTabPanel.js.map +1 -1
  22. package/dist/_chunks/Dashboard.js +399 -386
  23. package/dist/_chunks/Dashboard.js.map +1 -1
  24. package/dist/_chunks/DashboardStoreLoader.js +5 -5
  25. package/dist/_chunks/DashboardStoreLoader.js.map +1 -1
  26. package/dist/_chunks/DataCollectionAccessInfo.js +21 -21
  27. package/dist/_chunks/DataCollectionAccessInfo.js.map +1 -1
  28. package/dist/_chunks/EpiCurveUtil.js +4 -4
  29. package/dist/_chunks/EpiCurveUtil.js.map +1 -1
  30. package/dist/_chunks/EpiCurveWidget.js +189 -183
  31. package/dist/_chunks/EpiCurveWidget.js.map +1 -1
  32. package/dist/_chunks/FilterUtil.js +103 -101
  33. package/dist/_chunks/FilterUtil.js.map +1 -1
  34. package/dist/_chunks/FindSimilarCasesDialog.js +16 -16
  35. package/dist/_chunks/FindSimilarCasesDialog.js.map +1 -1
  36. package/dist/_chunks/FindSimilarCasesUtil.js +9 -9
  37. package/dist/_chunks/FindSimilarCasesUtil.js.map +1 -1
  38. package/dist/_chunks/HomePageTrends.js +8 -8
  39. package/dist/_chunks/HomePageTrends.js.map +1 -1
  40. package/dist/_chunks/LegendaItem.js +3 -3
  41. package/dist/_chunks/LegendaItem.js.map +1 -1
  42. package/dist/_chunks/LineListWidget.js +23 -21
  43. package/dist/_chunks/LineListWidget.js.map +1 -1
  44. package/dist/_chunks/PanelSeparator.js +374 -384
  45. package/dist/_chunks/PanelSeparator.js.map +1 -1
  46. package/dist/_chunks/Upload.js +222 -207
  47. package/dist/_chunks/Upload.js.map +1 -1
  48. package/dist/_chunks/UploadUtil.js +1970 -841
  49. package/dist/_chunks/UploadUtil.js.map +1 -1
  50. package/dist/_chunks/UserRightsDialog.js +12 -12
  51. package/dist/_chunks/UserRightsDialog.js.map +1 -1
  52. package/dist/_chunks/_MapCache.js +2 -2
  53. package/dist/_chunks/_baseGet.js +1 -1
  54. package/dist/_chunks/_baseGet.js.map +1 -1
  55. package/dist/_chunks/_baseIteratee.js +1 -1
  56. package/dist/_chunks/_baseIteratee.js.map +1 -1
  57. package/dist/_chunks/_setToString.js.map +1 -1
  58. package/dist/_chunks/{chunk-KS7C4IRE.js → chunk-BV7QT456.js} +330 -495
  59. package/dist/_chunks/chunk-BV7QT456.js.map +1 -0
  60. package/dist/_chunks/cloneDeep.js +11 -9
  61. package/dist/_chunks/cloneDeep.js.map +1 -1
  62. package/dist/_chunks/dashboardStore.js +259 -261
  63. package/dist/_chunks/dashboardStore.js.map +1 -1
  64. package/dist/_chunks/esm.js +2900 -2868
  65. package/dist/_chunks/esm.js.map +1 -1
  66. package/dist/_chunks/format.js +8 -8
  67. package/dist/_chunks/format.js.map +1 -1
  68. package/dist/_chunks/index.esm.js +919 -796
  69. package/dist/_chunks/index.esm.js.map +1 -1
  70. package/dist/_chunks/index.module.js +1 -1
  71. package/dist/_chunks/index.module.js.map +1 -1
  72. package/dist/_chunks/protectedTokens.js +79 -81
  73. package/dist/_chunks/protectedTokens.js.map +1 -1
  74. package/dist/_chunks/react.js +1 -1
  75. package/dist/_chunks/react.js.map +1 -1
  76. package/dist/_chunks/round.js +1 -1
  77. package/dist/_chunks/round.js.map +1 -1
  78. package/dist/_chunks/shallow.js +2 -2
  79. package/dist/_chunks/shallow.js.map +1 -1
  80. package/dist/_chunks/sync.js +198 -161
  81. package/dist/_chunks/sync.js.map +1 -1
  82. package/dist/_chunks/toDate.js +1 -1
  83. package/dist/_chunks/toDate.js.map +1 -1
  84. package/dist/_chunks/toString.js +1 -1
  85. package/dist/_chunks/toString.js.map +1 -1
  86. package/dist/_chunks/useUnit.js.map +1 -1
  87. package/dist/_chunks/vanilla.js +1 -1
  88. package/dist/_chunks/vanilla.js.map +1 -1
  89. package/dist/_chunks/yup.js +5 -5
  90. package/dist/_chunks/yup.js.map +1 -1
  91. package/dist/classes/filters/SelectionFilter.d.ts +2 -2
  92. package/dist/classes/filters/TreeFilter.d.ts +2 -2
  93. package/dist/classes/services/DataService/index.js +3 -3
  94. package/dist/classes/services/DataService/index.js.map +1 -1
  95. package/dist/classes/services/EventBusService/EventBusService.d.ts +1 -1
  96. package/dist/classes/services/EventBusService/index.js.map +1 -1
  97. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js +1 -1
  98. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js.map +1 -1
  99. package/dist/components/app/CaseDbApp/index.js +8 -5
  100. package/dist/components/app/CaseDbApp/index.js.map +1 -1
  101. package/dist/components/form/fields/ArrangementEditor/index.js +83 -83
  102. package/dist/components/form/fields/ArrangementEditor/index.js.map +1 -1
  103. package/dist/components/ui/AddCasesToEventDialog/AddCasesToEventDialog.d.ts +2 -2
  104. package/dist/components/ui/CaseContentFormDialog/CaseContentFormDialog.d.ts +2 -2
  105. package/dist/components/ui/CaseContentFormDialog/index.js +1 -1
  106. package/dist/components/ui/CaseContentFormDialog/index.js.map +1 -1
  107. package/dist/components/ui/CaseInfoDialog/CaseInfoDialog.d.ts +2 -2
  108. package/dist/components/ui/CaseSetInfoDialog/CaseSetInfoDialog.d.ts +2 -2
  109. package/dist/components/ui/CaseSummary/index.js +1 -1
  110. package/dist/components/ui/CaseSummary/index.js.map +1 -1
  111. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialog.d.ts +2 -2
  112. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogContent.d.ts +1 -1
  113. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogWithLoader.d.ts +2 -2
  114. package/dist/components/ui/ContextMenu/index.js.map +1 -1
  115. package/dist/components/ui/CreateEventDialog/CreateEventDialog.d.ts +2 -2
  116. package/dist/components/ui/CreateEventDialog/index.js +9 -9
  117. package/dist/components/ui/CreateEventDialog/index.js.map +1 -1
  118. package/dist/components/ui/Dashboard/DashboardDownloadSidebarItem.d.ts +1 -1
  119. package/dist/components/ui/Dashboard/DashboardSettingsSidebarItem.d.ts +1 -1
  120. package/dist/components/ui/Dashboard/DashboardWidget.d.ts +1 -1
  121. package/dist/components/ui/DashboardEditCases/index.js +1 -1
  122. package/dist/components/ui/DashboardEditCases/index.js.map +1 -1
  123. package/dist/components/ui/FileSelector/index.js +46 -46
  124. package/dist/components/ui/FileSelector/index.js.map +1 -1
  125. package/dist/components/ui/FindSimilarCasesDialog/FindSimilarCasesDialog.d.ts +2 -2
  126. package/dist/components/ui/Grouping/index.js +50 -50
  127. package/dist/components/ui/Grouping/index.js.map +1 -1
  128. package/dist/components/ui/HistogramWidget/index.js +1 -1
  129. package/dist/components/ui/HistogramWidget/index.js.map +1 -1
  130. package/dist/components/ui/MapWidget/index.js +7 -3
  131. package/dist/components/ui/MapWidget/index.js.map +1 -1
  132. package/dist/components/ui/RemoveCasesFromEventDialog/RemoveCasesFromEventDialog.d.ts +2 -2
  133. package/dist/components/ui/RemoveCasesFromEventDialog/index.js +6 -6
  134. package/dist/components/ui/RemoveCasesFromEventDialog/index.js.map +1 -1
  135. package/dist/components/ui/RemoveFindSimilarCasesResultDialog/RemoveFindSimilarCasesResultDialog.d.ts +2 -2
  136. package/dist/components/ui/SequenceDownloadDialog/SequenceDownloadDialog.d.ts +2 -2
  137. package/dist/components/ui/SequenceDownloadDialog/index.js +22 -22
  138. package/dist/components/ui/SequenceDownloadDialog/index.js.map +1 -1
  139. package/dist/components/ui/TreeDescription/index.js.map +1 -1
  140. package/dist/components/ui/TreeWidget/index.js +11 -11
  141. package/dist/components/ui/TreeWidget/index.js.map +1 -1
  142. package/dist/components/ui/Upload/UploadCaseResultTable.d.ts +2 -2
  143. package/dist/components/ui/Upload/UploadEditColumnValuesDialog.d.ts +2 -2
  144. package/dist/components/ui/UserRightsDialog/UserRightsDialog.d.ts +2 -2
  145. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/UsersEffectiveRightsDetailsDialog.d.ts +2 -2
  146. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js +25 -11
  147. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js.map +1 -1
  148. package/dist/components/ui/Warning/index.js.map +1 -1
  149. package/dist/components/ui/WidgetHeaderIconButton/index.js.map +1 -1
  150. package/dist/components/ui/WidgetMenu/WidgetMenu.d.ts +1 -1
  151. package/dist/components/ui/WidgetMenu/index.js +2 -2
  152. package/dist/components/ui/WidgetMenu/index.js.map +1 -1
  153. package/dist/components/ui/WidgetUnavailable/index.js.map +1 -1
  154. package/dist/constants/query.d.ts +1 -1
  155. package/dist/constants/query.js +1 -1
  156. package/dist/constants/query.js.map +1 -1
  157. package/dist/context/caseAbac/CaseAbacContext.d.ts +1 -1
  158. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js +3 -3
  159. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js.map +1 -1
  160. package/dist/dataHooks/useAssemblyProtocolsQuery/useAssemblyProtocolsQuery.d.ts +1 -1
  161. package/dist/dataHooks/useCaseRightsQuery/index.js +2 -2
  162. package/dist/dataHooks/useCaseRightsQuery/index.js.map +1 -1
  163. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js +3 -3
  164. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js.map +1 -1
  165. package/dist/dataHooks/useCaseSetCategoriesQuery/useCaseSetCategoriesQuery.d.ts +1 -1
  166. package/dist/dataHooks/useCaseSetRightsQuery/index.js +2 -2
  167. package/dist/dataHooks/useCaseSetRightsQuery/index.js.map +1 -1
  168. package/dist/dataHooks/useCaseSetStatsQuery/index.js +3 -3
  169. package/dist/dataHooks/useCaseSetStatsQuery/index.js.map +1 -1
  170. package/dist/dataHooks/useCaseSetStatsQuery/useCaseSetStatsQuery.d.ts +1 -1
  171. package/dist/dataHooks/useCaseSetStatusesQuery/index.js +3 -3
  172. package/dist/dataHooks/useCaseSetStatusesQuery/index.js.map +1 -1
  173. package/dist/dataHooks/useCaseSetStatusesQuery/useCaseSetStatusesQuery.d.ts +1 -1
  174. package/dist/dataHooks/useCaseSetsQuery/index.js +3 -3
  175. package/dist/dataHooks/useCaseSetsQuery/index.js.map +1 -1
  176. package/dist/dataHooks/useCaseSetsQuery/useCaseSetsQuery.d.ts +1 -1
  177. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js +3 -3
  178. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js.map +1 -1
  179. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/useCaseTypeSetCategoriesQuery.d.ts +1 -1
  180. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.js.map +1 -1
  181. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/useCaseTypeSetCategoryPurposeQuery.d.ts +1 -1
  182. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js +2 -2
  183. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js.map +1 -1
  184. package/dist/dataHooks/useCaseTypeSetsQuery/index.js +3 -3
  185. package/dist/dataHooks/useCaseTypeSetsQuery/index.js.map +1 -1
  186. package/dist/dataHooks/useCaseTypeSetsQuery/useCaseTypeSetsQuery.d.ts +1 -1
  187. package/dist/dataHooks/useCaseTypeStatsQuery/index.js +2 -2
  188. package/dist/dataHooks/useCaseTypeStatsQuery/index.js.map +1 -1
  189. package/dist/dataHooks/useCaseTypesQuery/index.js +3 -3
  190. package/dist/dataHooks/useCaseTypesQuery/index.js.map +1 -1
  191. package/dist/dataHooks/useCaseTypesQuery/useCaseTypesQuery.d.ts +1 -1
  192. package/dist/dataHooks/useColSetMembersQuery/index.js +2 -2
  193. package/dist/dataHooks/useColSetMembersQuery/index.js.map +1 -1
  194. package/dist/dataHooks/useColSetsQuery/index.js +3 -3
  195. package/dist/dataHooks/useColSetsQuery/index.js.map +1 -1
  196. package/dist/dataHooks/useColSetsQuery/useColSetsQuery.d.ts +1 -1
  197. package/dist/dataHooks/useColTypesQuery/index.js.map +1 -1
  198. package/dist/dataHooks/useColTypesQuery/useColTypesQuery.d.ts +1 -1
  199. package/dist/dataHooks/useColsQuery/index.js +3 -3
  200. package/dist/dataHooks/useColsQuery/index.js.map +1 -1
  201. package/dist/dataHooks/useColsQuery/useColsQuery.d.ts +1 -1
  202. package/dist/dataHooks/useConceptQuery/index.js +3 -3
  203. package/dist/dataHooks/useConceptQuery/index.js.map +1 -1
  204. package/dist/dataHooks/useConceptQuery/useConceptQuery.d.ts +1 -1
  205. package/dist/dataHooks/useConceptRelationTypeQuery/index.js.map +1 -1
  206. package/dist/dataHooks/useConceptRelationTypeQuery/useConceptRelationTypeQuery.d.ts +1 -1
  207. package/dist/dataHooks/useConceptSetTypeQuery/index.js.map +1 -1
  208. package/dist/dataHooks/useConceptSetTypeQuery/useConceptSetTypeQuery.d.ts +1 -1
  209. package/dist/dataHooks/useConceptSetsQuery/index.js +3 -3
  210. package/dist/dataHooks/useConceptSetsQuery/index.js.map +1 -1
  211. package/dist/dataHooks/useConceptSetsQuery/useConceptSetsQuery.d.ts +1 -1
  212. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js +2 -2
  213. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js.map +1 -1
  214. package/dist/dataHooks/useDataCollectionsQuery/index.js +3 -3
  215. package/dist/dataHooks/useDataCollectionsQuery/index.js.map +1 -1
  216. package/dist/dataHooks/useDataCollectionsQuery/useDataCollectionsQuery.d.ts +1 -1
  217. package/dist/dataHooks/useDimTypesQuery/index.js.map +1 -1
  218. package/dist/dataHooks/useDimTypesQuery/useDimTypesQuery.d.ts +1 -1
  219. package/dist/dataHooks/useDimsQuery/index.js +3 -3
  220. package/dist/dataHooks/useDimsQuery/index.js.map +1 -1
  221. package/dist/dataHooks/useDimsQuery/useDimsQuery.d.ts +1 -1
  222. package/dist/dataHooks/useDiseasesQuery/index.js +3 -3
  223. package/dist/dataHooks/useDiseasesQuery/index.js.map +1 -1
  224. package/dist/dataHooks/useDiseasesQuery/useDiseasesQuery.d.ts +1 -1
  225. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js +3 -3
  226. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js.map +1 -1
  227. package/dist/dataHooks/useEtiologicalAgentsQuery/useEtiologicalAgentsQuery.d.ts +1 -1
  228. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js +3 -3
  229. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js.map +1 -1
  230. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/useGeneticDistanceProtocolsQuery.d.ts +1 -1
  231. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js +2 -2
  232. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js.map +1 -1
  233. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js +2 -2
  234. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js.map +1 -1
  235. package/dist/dataHooks/useRefColsQuery/index.js +3 -3
  236. package/dist/dataHooks/useRefColsQuery/index.js.map +1 -1
  237. package/dist/dataHooks/useRefColsQuery/useRefColsQuery.d.ts +1 -1
  238. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js +2 -2
  239. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js.map +1 -1
  240. package/dist/dataHooks/useRefDimsQuery/index.js +3 -3
  241. package/dist/dataHooks/useRefDimsQuery/index.js.map +1 -1
  242. package/dist/dataHooks/useRefDimsQuery/useRefDimsQuery.d.ts +1 -1
  243. package/dist/dataHooks/useRegionQuery/index.js +3 -3
  244. package/dist/dataHooks/useRegionQuery/index.js.map +1 -1
  245. package/dist/dataHooks/useRegionQuery/useRegionQuery.d.ts +1 -1
  246. package/dist/dataHooks/useRegionRelationTypeQuery/index.js.map +1 -1
  247. package/dist/dataHooks/useRegionRelationTypeQuery/useRegionRelationTypeQuery.d.ts +1 -1
  248. package/dist/dataHooks/useRegionSetsQuery/index.js +3 -3
  249. package/dist/dataHooks/useRegionSetsQuery/index.js.map +1 -1
  250. package/dist/dataHooks/useRegionSetsQuery/useRegionSetsQuery.d.ts +1 -1
  251. package/dist/dataHooks/useSequencingProtocolsQuery/index.js +3 -3
  252. package/dist/dataHooks/useSequencingProtocolsQuery/index.js.map +1 -1
  253. package/dist/dataHooks/useSequencingProtocolsQuery/useSequencingProtocolsQuery.d.ts +1 -1
  254. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.js.map +1 -1
  255. package/dist/dataHooks/useTreeAlgorithmCodesQuery/useTreeAlgorithmCodesQuery.d.ts +1 -1
  256. package/dist/dataHooks/useUnitQuery/useUnit.d.ts +1 -1
  257. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js +2 -2
  258. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js.map +1 -1
  259. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js +3 -3
  260. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js.map +1 -1
  261. package/dist/dataHooks/useUserEffectiveRightsQuery/useUserEffectiveRightsQuery.d.ts +1 -1
  262. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js +2 -2
  263. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js.map +1 -1
  264. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js +2 -2
  265. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js.map +1 -1
  266. package/dist/hooks/useOrganizationCasePolicyNameFactory/useOrganizationCasePolicyNameFactory.d.ts +1 -1
  267. package/dist/hooks/useUserCasePolicyNameFactory/index.js +3 -3
  268. package/dist/hooks/useUserCasePolicyNameFactory/index.js.map +1 -1
  269. package/dist/hooks/useUserCasePolicyNameFactory/useUserCasePolicyNameFactory.d.ts +1 -1
  270. package/dist/locale/nl.json +1 -1
  271. package/dist/models/config.d.ts +1 -1
  272. package/dist/models/dashboard.d.ts +1 -1
  273. package/dist/models/dashboard.js.map +1 -1
  274. package/dist/models/theme.d.ts +2 -2
  275. package/dist/pages/CaseDbUsersAdminPage/index.js +5 -5
  276. package/dist/pages/CaseDbUsersAdminPage/index.js.map +1 -1
  277. package/dist/pages/CaseSetCategoryAdminPage/index.js +4 -4
  278. package/dist/pages/CaseSetCategoryAdminPage/index.js.map +1 -1
  279. package/dist/pages/CaseSetStatusAdminPage/index.js +4 -4
  280. package/dist/pages/CaseSetStatusAdminPage/index.js.map +1 -1
  281. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js +4 -4
  282. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js.map +1 -1
  283. package/dist/pages/CaseTypeSetsAdminPage/index.js +6 -6
  284. package/dist/pages/CaseTypeSetsAdminPage/index.js.map +1 -1
  285. package/dist/pages/CaseTypesAdminPage/index.js +5 -5
  286. package/dist/pages/CaseTypesAdminPage/index.js.map +1 -1
  287. package/dist/pages/CasesDetailPage/index.js +5 -5
  288. package/dist/pages/CasesDetailPage/index.js.map +1 -1
  289. package/dist/pages/CasesPage/index.js +10 -10
  290. package/dist/pages/CasesPage/index.js.map +1 -1
  291. package/dist/pages/ColSetsAdminPage/index.js +6 -6
  292. package/dist/pages/ColSetsAdminPage/index.js.map +1 -1
  293. package/dist/pages/ColsAdminPage/index.js +5 -5
  294. package/dist/pages/ColsAdminPage/index.js.map +1 -1
  295. package/dist/pages/ConceptRelationsAdminPage/index.js +19 -19
  296. package/dist/pages/ConceptRelationsAdminPage/index.js.map +1 -1
  297. package/dist/pages/ConceptSetsAdminPage/index.js +5 -5
  298. package/dist/pages/ConceptSetsAdminPage/index.js.map +1 -1
  299. package/dist/pages/ConceptsAdminPage/index.js +5 -5
  300. package/dist/pages/ConceptsAdminPage/index.js.map +1 -1
  301. package/dist/pages/DataCollectionSetsAdminPage/index.js +12 -12
  302. package/dist/pages/DataCollectionSetsAdminPage/index.js.map +1 -1
  303. package/dist/pages/DataCollectionVisualizationPage/index.js +4 -4
  304. package/dist/pages/DataCollectionVisualizationPage/index.js.map +1 -1
  305. package/dist/pages/DataCollectionsAdminPage/index.js +4 -4
  306. package/dist/pages/DataCollectionsAdminPage/index.js.map +1 -1
  307. package/dist/pages/DimsAdminPage/index.js +6 -6
  308. package/dist/pages/DimsAdminPage/index.js.map +1 -1
  309. package/dist/pages/DiseasesAdminPage/index.js +4 -4
  310. package/dist/pages/DiseasesAdminPage/index.js.map +1 -1
  311. package/dist/pages/EtiologicalAgentsAdminPage/index.js +4 -4
  312. package/dist/pages/EtiologicalAgentsAdminPage/index.js.map +1 -1
  313. package/dist/pages/EtiologiesAdminPage/index.js +3 -3
  314. package/dist/pages/EtiologiesAdminPage/index.js.map +1 -1
  315. package/dist/pages/EventsDetailPage/index.js +5 -5
  316. package/dist/pages/EventsDetailPage/index.js.map +1 -1
  317. package/dist/pages/EventsPage/index.js +11 -11
  318. package/dist/pages/EventsPage/index.js.map +1 -1
  319. package/dist/pages/HomePage/index.js +2 -2
  320. package/dist/pages/HomePage/index.js.map +1 -1
  321. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js +4 -4
  322. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js.map +1 -1
  323. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js +4 -4
  324. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js.map +1 -1
  325. package/dist/pages/RefColsAdminPage/index.js +7 -7
  326. package/dist/pages/RefColsAdminPage/index.js.map +1 -1
  327. package/dist/pages/RefDimsAdminPage/index.js +5 -5
  328. package/dist/pages/RefDimsAdminPage/index.js.map +1 -1
  329. package/dist/pages/RegionRelationsAdminPage/index.js +3 -3
  330. package/dist/pages/RegionRelationsAdminPage/index.js.map +1 -1
  331. package/dist/pages/RegionSetShapesAdminPage/index.js +4 -4
  332. package/dist/pages/RegionSetShapesAdminPage/index.js.map +1 -1
  333. package/dist/pages/RegionSetsAdminPage/index.js +5 -5
  334. package/dist/pages/RegionSetsAdminPage/index.js.map +1 -1
  335. package/dist/pages/RegionsAdminPage/index.js +5 -5
  336. package/dist/pages/RegionsAdminPage/index.js.map +1 -1
  337. package/dist/pages/TrendsPage/index.js +1 -1
  338. package/dist/pages/TrendsPage/index.js.map +1 -1
  339. package/dist/pages/UploadPage/index.js +1 -1
  340. package/dist/pages/UploadPage/index.js.map +1 -1
  341. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js +4 -4
  342. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js.map +1 -1
  343. package/dist/pages/UserEffectiveRightsAdminPage/index.js +12 -12
  344. package/dist/pages/UserEffectiveRightsAdminPage/index.js.map +1 -1
  345. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js +8 -8
  346. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js.map +1 -1
  347. package/dist/pages/UserShareCasePoliciesAdminPage/index.js +4 -4
  348. package/dist/pages/UserShareCasePoliciesAdminPage/index.js.map +1 -1
  349. package/dist/routes/adminRoutes.d.ts +1 -1
  350. package/dist/routes/index.js +11 -8
  351. package/dist/routes/index.js.map +1 -1
  352. package/dist/routes/routes.d.ts +1 -1
  353. package/dist/setup/setup.js +5 -5
  354. package/dist/setup/setup.js.map +1 -1
  355. package/dist/stores/dashboardStore/dashboardStore.d.ts +1 -1
  356. package/dist/stores/uploadStore/index.js +2 -2
  357. package/dist/stores/uploadStore/index.js.map +1 -1
  358. package/dist/stores/uploadStore/uploadStore.d.ts +1 -1
  359. package/dist/stores/userProfileStore/index.js +2 -2
  360. package/dist/stores/userProfileStore/index.js.map +1 -1
  361. package/dist/theme/demoTheme/index.js +2 -2
  362. package/dist/theme/demoTheme/index.js.map +1 -1
  363. package/dist/utils/CaseDbDataUtil/CaseDbDataUtil.d.ts +1 -1
  364. package/dist/utils/CaseDbDataUtil/index.js +1 -1
  365. package/dist/utils/CaseDbDataUtil/index.js.map +1 -1
  366. package/dist/utils/CaseDbStandardConfigUtil/index.js +2488 -1408
  367. package/dist/utils/CaseDbStandardConfigUtil/index.js.map +1 -1
  368. package/dist/utils/CaseDbTableUtil/CaseDbTableUtil.d.ts +1 -1
  369. package/dist/utils/CaseDbTableUtil/index.js +1 -1
  370. package/dist/utils/CaseDbTableUtil/index.js.map +1 -1
  371. package/dist/utils/CaseSelectionUtil/index.js.map +1 -1
  372. package/dist/utils/CaseTypeFormUtil/CaseTypeFormUtil.d.ts +1 -1
  373. package/dist/utils/CaseTypeFormUtil/index.js +7 -10
  374. package/dist/utils/CaseTypeFormUtil/index.js.map +1 -1
  375. package/dist/utils/CaseTypeUtil/index.js +1 -1
  376. package/dist/utils/CaseTypeUtil/index.js.map +1 -1
  377. package/dist/utils/CaseUtil/index.js +3 -3
  378. package/dist/utils/CaseUtil/index.js.map +1 -1
  379. package/dist/utils/DashboardUtil/index.js +1 -1
  380. package/dist/utils/DashboardUtil/index.js.map +1 -1
  381. package/dist/utils/DataSetUtil/index.js.map +1 -1
  382. package/dist/utils/FileUtil/index.js +1 -1
  383. package/dist/utils/FileUtil/index.js.map +1 -1
  384. package/dist/utils/FilterUtil/FilterUtil.d.ts +2 -2
  385. package/dist/utils/HistogramUtil/index.js +1 -1
  386. package/dist/utils/HistogramUtil/index.js.map +1 -1
  387. package/dist/utils/MapUtil/index.js +1 -1
  388. package/dist/utils/MapUtil/index.js.map +1 -1
  389. package/dist/utils/StratificationUtil/index.js +3 -2
  390. package/dist/utils/StratificationUtil/index.js.map +1 -1
  391. package/dist/utils/UploadUtil/UploadUtil.d.ts +1 -1
  392. package/package.json +11 -11
  393. package/dist/_chunks/chunk-KS7C4IRE.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/pages/UserShareCasePoliciesAdminPage/UserShareCasePoliciesAdminPage.tsx"],"sourcesContent":["import {\n useCallback,\n useMemo,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n boolean,\n object,\n string,\n} from 'yup';\nimport type {\n CaseDbApiPermission,\n CaseDbUserShareCasePolicy,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbAbacApi,\n CaseDbCommandName,\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 { useUserOptionsQuery } from '@gen-epix/ui/dataHooks/useUsersQuery';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\nimport type { FormFieldDefinition } from '@gen-epix/ui-form/models/form';\nimport { FORM_FIELD_DEFINITION_TYPE } from '@gen-epix/ui-form/models/form';\n\nimport { useColSetsQuery } from '../../dataHooks/useColSetsQuery';\nimport { useCaseTypeSetOptionsQuery } from '../../dataHooks/useCaseTypeSetsQuery';\nimport { useDataCollectionOptionsQuery } from '../../dataHooks/useDataCollectionsQuery';\nimport { CASEDB_QUERY_KEY } from '../../constants/query';\nimport { useUserCasePolicyNameFactory } from '../../hooks/useUserCasePolicyNameFactory';\n\ntype FormFields = OmitWithMetaData<CaseDbUserShareCasePolicy, 'case_type_set' | 'data_collection' | 'from_data_collection' | 'user'>;\n\nexport const UserShareCasePoliciesAdminPage = () => {\n const { t } = useTranslation();\n const userOptionsQuery = useUserOptionsQuery();\n const dataCollectionOptionsQuery = useDataCollectionOptionsQuery();\n const colSetOptionsQuery = useColSetsQuery();\n const caseTypeSetOptionsQuery = useCaseTypeSetOptionsQuery();\n\n const nameFactory = useUserCasePolicyNameFactory();\n\n const loadables = useArray([userOptionsQuery, dataCollectionOptionsQuery, colSetOptionsQuery, caseTypeSetOptionsQuery]);\n\n const fetchAll = useCallback(async (signal: AbortSignal) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesGetAll(null, null, { signal }))?.data;\n }, []);\n\n const deleteOne = useCallback(async (item: CaseDbUserShareCasePolicy) => {\n return await CaseDbAbacApi.getInstance().userShareCasePoliciesDeleteOne(item.id);\n }, []);\n\n const updateOne = useCallback(async (variables: FormFields, item: CaseDbUserShareCasePolicy) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesPutOne(item.id, { id: item.id, ...variables })).data;\n }, []);\n\n const createOne = useCallback(async (variables: FormFields) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesPostOne(variables)).data;\n }, []);\n\n const getName = useCallback((item: CaseDbUserShareCasePolicy) => {\n return nameFactory.getName(item);\n }, [nameFactory]);\n\n const schema = useMemo(() => {\n return object<FormFields>().shape({\n add_case: boolean().required(),\n add_case_set: boolean().required(),\n case_type_set_id: string().uuid4().required().max(100),\n data_collection_id: string().uuid4().required().max(100),\n from_data_collection_id: string().uuid4().required().max(100),\n is_active: boolean().required(),\n remove_case: boolean().required(),\n remove_case_set: boolean().required(),\n user_id: string().uuid4().required().max(100),\n });\n }, []);\n\n const formFieldDefinitions = useMemo<FormFieldDefinition<FormFields>[]>(() => {\n return [\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`User`,\n loading: userOptionsQuery.isLoading,\n name: 'user_id',\n options: userOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`Data collection`,\n loading: dataCollectionOptionsQuery.isLoading,\n name: 'data_collection_id',\n options: dataCollectionOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`From data collection`,\n loading: dataCollectionOptionsQuery.isLoading,\n name: 'from_data_collection_id',\n options: dataCollectionOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`Case type set`,\n loading: caseTypeSetOptionsQuery.isLoading,\n name: 'case_type_set_id',\n options: caseTypeSetOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Add case`,\n name: 'add_case',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Remove case`,\n name: 'remove_case',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Add case set`,\n name: 'add_case_set',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Remove case set`,\n name: 'remove_case_set',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Is active`,\n name: 'is_active',\n } as const satisfies FormFieldDefinition<FormFields>,\n ] as const;\n }, [caseTypeSetOptionsQuery.isLoading, caseTypeSetOptionsQuery.options, dataCollectionOptionsQuery.isLoading, dataCollectionOptionsQuery.options, userOptionsQuery.isLoading, userOptionsQuery.options, t]);\n\n const tableColumns = useMemo((): TableColumn<CaseDbUserShareCasePolicy>[] => {\n return [\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'user_id', name: t`User`, options: userOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'data_collection_id', name: t`Data collection`, options: dataCollectionOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'from_data_collection_id', name: t`From collection`, options: dataCollectionOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'case_type_set_id', name: t`Case type set`, options: caseTypeSetOptionsQuery.options }),\n\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'add_case', name: t`Add case` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'remove_case', name: t`Remove case` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'add_case_set', name: t`Add case set` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'remove_case_set', name: t`Remove case set` }),\n\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'is_active', name: t`Active` }),\n ];\n }, [caseTypeSetOptionsQuery.options, dataCollectionOptionsQuery.options, userOptionsQuery.options, t]);\n\n return (\n <CrudPage<FormFields, CaseDbUserShareCasePolicy, CaseDbUserShareCasePolicy, CASEDB_QUERY_KEY, CaseDbApiPermission>\n createItemDialogTitle={t`Create new user share case policy`}\n createOne={createOne}\n crudCommandType={CaseDbCommandName.UserShareCasePolicyCrudCommand}\n defaultSortByField={'user_id'}\n defaultSortDirection={'asc'}\n deleteOne={deleteOne}\n fetchAll={fetchAll}\n formFieldDefinitions={formFieldDefinitions}\n getName={getName}\n itemName={t`User share case policy`}\n loadables={loadables}\n resourceQueryKeyBase={CASEDB_QUERY_KEY.USER_SHARE_CASE_POLICIES}\n schema={schema}\n tableColumns={tableColumns}\n testIdAttributes={TestIdUtil.createAttributes('UserShareCasePoliciesAdminPage')}\n title={t`User share case policies`}\n updateOne={updateOne}\n />\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/pages/UserShareCasePoliciesAdminPage/UserShareCasePoliciesAdminPage.tsx"],"sourcesContent":["import {\n useCallback,\n useMemo,\n} from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n boolean,\n object,\n string,\n} from 'yup';\nimport type {\n CaseDbApiPermission,\n CaseDbUserShareCasePolicy,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbAbacApi,\n CaseDbCommandName,\n} from '@gen-epix/api-casedb';\nimport type { OmitWithMetaData } from '@gen-epix/ui-client-common/models/data';\nimport type { TableColumn } from '@gen-epix/ui-client-common/models/table';\nimport { CrudPage } from '@gen-epix/ui-client-common/pages/CrudPage';\nimport { TableUtil } from '@gen-epix/ui-client-common/utils/TableUtil';\nimport { useUserOptionsQuery } from '@gen-epix/ui-client-common/dataHooks/useUsersQuery';\nimport { TestIdUtil } from '@gen-epix/ui-core/utils/TestIdUtil';\nimport { useArray } from '@gen-epix/ui-core/hooks/useArray';\nimport type { FormFieldDefinition } from '@gen-epix/ui-core-form/models/form';\nimport { FORM_FIELD_DEFINITION_TYPE } from '@gen-epix/ui-core-form/models/form';\n\nimport { useColSetsQuery } from '../../dataHooks/useColSetsQuery';\nimport { useCaseTypeSetOptionsQuery } from '../../dataHooks/useCaseTypeSetsQuery';\nimport { useDataCollectionOptionsQuery } from '../../dataHooks/useDataCollectionsQuery';\nimport { CASEDB_QUERY_KEY } from '../../constants/query';\nimport { useUserCasePolicyNameFactory } from '../../hooks/useUserCasePolicyNameFactory';\n\ntype FormFields = OmitWithMetaData<CaseDbUserShareCasePolicy, 'case_type_set' | 'data_collection' | 'from_data_collection' | 'user'>;\n\nexport const UserShareCasePoliciesAdminPage = () => {\n const { t } = useTranslation();\n const userOptionsQuery = useUserOptionsQuery();\n const dataCollectionOptionsQuery = useDataCollectionOptionsQuery();\n const colSetOptionsQuery = useColSetsQuery();\n const caseTypeSetOptionsQuery = useCaseTypeSetOptionsQuery();\n\n const nameFactory = useUserCasePolicyNameFactory();\n\n const loadables = useArray([userOptionsQuery, dataCollectionOptionsQuery, colSetOptionsQuery, caseTypeSetOptionsQuery]);\n\n const fetchAll = useCallback(async (signal: AbortSignal) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesGetAll(null, null, { signal }))?.data;\n }, []);\n\n const deleteOne = useCallback(async (item: CaseDbUserShareCasePolicy) => {\n return await CaseDbAbacApi.getInstance().userShareCasePoliciesDeleteOne(item.id);\n }, []);\n\n const updateOne = useCallback(async (variables: FormFields, item: CaseDbUserShareCasePolicy) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesPutOne(item.id, { id: item.id, ...variables })).data;\n }, []);\n\n const createOne = useCallback(async (variables: FormFields) => {\n return (await CaseDbAbacApi.getInstance().userShareCasePoliciesPostOne(variables)).data;\n }, []);\n\n const getName = useCallback((item: CaseDbUserShareCasePolicy) => {\n return nameFactory.getName(item);\n }, [nameFactory]);\n\n const schema = useMemo(() => {\n return object<FormFields>().shape({\n add_case: boolean().required(),\n add_case_set: boolean().required(),\n case_type_set_id: string().uuid4().required().max(100),\n data_collection_id: string().uuid4().required().max(100),\n from_data_collection_id: string().uuid4().required().max(100),\n is_active: boolean().required(),\n remove_case: boolean().required(),\n remove_case_set: boolean().required(),\n user_id: string().uuid4().required().max(100),\n });\n }, []);\n\n const formFieldDefinitions = useMemo<FormFieldDefinition<FormFields>[]>(() => {\n return [\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`User`,\n loading: userOptionsQuery.isLoading,\n name: 'user_id',\n options: userOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`Data collection`,\n loading: dataCollectionOptionsQuery.isLoading,\n name: 'data_collection_id',\n options: dataCollectionOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`From data collection`,\n loading: dataCollectionOptionsQuery.isLoading,\n name: 'from_data_collection_id',\n options: dataCollectionOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n label: t`Case type set`,\n loading: caseTypeSetOptionsQuery.isLoading,\n name: 'case_type_set_id',\n options: caseTypeSetOptionsQuery.options,\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Add case`,\n name: 'add_case',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Remove case`,\n name: 'remove_case',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Add case set`,\n name: 'add_case_set',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Remove case set`,\n name: 'remove_case_set',\n } as const satisfies FormFieldDefinition<FormFields>,\n {\n definition: FORM_FIELD_DEFINITION_TYPE.BOOLEAN,\n label: t`Is active`,\n name: 'is_active',\n } as const satisfies FormFieldDefinition<FormFields>,\n ] as const;\n }, [caseTypeSetOptionsQuery.isLoading, caseTypeSetOptionsQuery.options, dataCollectionOptionsQuery.isLoading, dataCollectionOptionsQuery.options, userOptionsQuery.isLoading, userOptionsQuery.options, t]);\n\n const tableColumns = useMemo((): TableColumn<CaseDbUserShareCasePolicy>[] => {\n return [\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'user_id', name: t`User`, options: userOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'data_collection_id', name: t`Data collection`, options: dataCollectionOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'from_data_collection_id', name: t`From collection`, options: dataCollectionOptionsQuery.options }),\n TableUtil.createOptionsColumn<CaseDbUserShareCasePolicy>({ id: 'case_type_set_id', name: t`Case type set`, options: caseTypeSetOptionsQuery.options }),\n\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'add_case', name: t`Add case` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'remove_case', name: t`Remove case` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'add_case_set', name: t`Add case set` }),\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'remove_case_set', name: t`Remove case set` }),\n\n TableUtil.createBooleanColumn<CaseDbUserShareCasePolicy>({ id: 'is_active', name: t`Active` }),\n ];\n }, [caseTypeSetOptionsQuery.options, dataCollectionOptionsQuery.options, userOptionsQuery.options, t]);\n\n return (\n <CrudPage<FormFields, CaseDbUserShareCasePolicy, CaseDbUserShareCasePolicy, CASEDB_QUERY_KEY, CaseDbApiPermission>\n createItemDialogTitle={t`Create new user share case policy`}\n createOne={createOne}\n crudCommandType={CaseDbCommandName.UserShareCasePolicyCrudCommand}\n defaultSortByField={'user_id'}\n defaultSortDirection={'asc'}\n deleteOne={deleteOne}\n fetchAll={fetchAll}\n formFieldDefinitions={formFieldDefinitions}\n getName={getName}\n itemName={t`User share case policy`}\n loadables={loadables}\n resourceQueryKeyBase={CASEDB_QUERY_KEY.USER_SHARE_CASE_POLICIES}\n schema={schema}\n tableColumns={tableColumns}\n testIdAttributes={TestIdUtil.createAttributes('UserShareCasePoliciesAdminPage')}\n title={t`User share case policies`}\n updateOne={updateOne}\n />\n );\n};\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { CaseDbApiPermission } from '@gen-epix/api-casedb';
2
- import { MyNonIndexRouteObject } from '@gen-epix/ui/models/reactRouter';
2
+ import { MyNonIndexRouteObject } from '@gen-epix/ui-client-common/models/reactRouter';
3
3
  import { CommonDbApiPermission } from '@gen-epix/api-commondb';
4
4
  type RoutePermission = CaseDbApiPermission | CommonDbApiPermission;
5
5
  export declare const createAdminRoutes: () => MyNonIndexRouteObject<RoutePermission>[];
@@ -37,9 +37,9 @@ import { UploadPage as F } from "../pages/UploadPage/index.js";
37
37
  import { t as I } from "i18next";
38
38
  import { CaseDbCommandName as L, CaseDbPermissionType as R } from "@gen-epix/api-casedb";
39
39
  import { jsx as z } from "react/jsx-runtime";
40
- import { ADMIN_PAGE_CATEGORY as B } from "@gen-epix/ui/models/admin";
41
- import { createAdminRoutes as V, createRoutes as H } from "@gen-epix/ui/routes";
42
- import { RouterErrorPage as U } from "@gen-epix/ui/pages/RouterErrorPage";
40
+ import { ADMIN_PAGE_CATEGORY as B } from "@gen-epix/ui-client-common/models/admin";
41
+ import { createAdminRoutes as V, createRoutes as H } from "@gen-epix/ui-client-common/routes";
42
+ import { RouterErrorPage as U } from "@gen-epix/ui-client-common/pages/RouterErrorPage";
43
43
  //#region src/routes/adminRoutes.tsx
44
44
  var W = () => [{
45
45
  Component: E,
@@ -933,9 +933,8 @@ var W = () => [{
933
933
  command_name: L.RetrievePhylogeneticTreeByCasesCommand,
934
934
  permission_type: R.EXECUTE
935
935
  }
936
- ], q = (e = G()) => H({
937
- adminRoutes: e,
938
- rootChildren: [
936
+ ], q = (e = G()) => {
937
+ let t = [
939
938
  {
940
939
  children: [{
941
940
  Component: j,
@@ -1102,8 +1101,12 @@ var W = () => [{
1102
1101
  },
1103
1102
  path: "/upload"
1104
1103
  }
1105
- ]
1106
- });
1104
+ ];
1105
+ return H({
1106
+ adminRoutes: e,
1107
+ rootChildren: t
1108
+ });
1109
+ };
1107
1110
  //#endregion
1108
1111
  export { G as createAdminRoutes, q as createRoutes };
1109
1112
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/routes/adminRoutes.tsx","../../src/routes/routes.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport type { CaseDbApiPermission } from '@gen-epix/api-casedb';\nimport {\n CaseDbCommandName,\n CaseDbPermissionType,\n} from '@gen-epix/api-casedb';\nimport { ADMIN_PAGE_CATEGORY } from '@gen-epix/ui/models/admin';\nimport { createAdminRoutes as createCommonAdminRoutes } from '@gen-epix/ui/routes';\nimport { RouterErrorPage } from '@gen-epix/ui/pages/RouterErrorPage';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui/models/reactRouter';\nimport { t } from 'i18next';\nimport type { CommonDbApiPermission } from '@gen-epix/api-commondb';\n\nimport { CaseSetCategoryAdminPage } from '../pages/CaseSetCategoryAdminPage';\nimport { CaseSetStatusAdminPage } from '../pages/CaseSetStatusAdminPage';\nimport { CaseTypesAdminPage } from '../pages/CaseTypesAdminPage';\nimport { CaseTypeSetCategoriesAdminPage } from '../pages/CaseTypeSetCategoriesAdminPage';\nimport { CaseTypeSetsAdminPage } from '../pages/CaseTypeSetsAdminPage';\nimport { ColsAdminPage } from '../pages/ColsAdminPage';\nimport { ColSetsAdminPage } from '../pages/ColSetsAdminPage';\nimport { ConceptRelationsAdminPage } from '../pages/ConceptRelationsAdminPage';\nimport { ConceptsAdminPage } from '../pages/ConceptsAdminPage';\nimport { ConceptSetsAdminPage } from '../pages/ConceptSetsAdminPage';\nimport { DataCollectionsAdminPage } from '../pages/DataCollectionsAdminPage';\nimport { DataCollectionSetsAdminPage } from '../pages/DataCollectionSetsAdminPage';\nimport { DataCollectionVisualizationPage } from '../pages/DataCollectionVisualizationPage';\nimport { DimsAdminPage } from '../pages/DimsAdminPage';\nimport { DiseasesAdminPage } from '../pages/DiseasesAdminPage';\nimport { EtiologicalAgentsAdminPage } from '../pages/EtiologicalAgentsAdminPage';\nimport { EtiologiesAdminPage } from '../pages/EtiologiesAdminPage';\nimport { OrganizationAccessCasePoliciesAdminPage } from '../pages/OrganizationAccessCasePoliciesAdminPage';\nimport { OrganizationShareCasePoliciesAdminPage } from '../pages/OrganizationShareCasePoliciesAdminPage';\nimport { RefColsAdminPage } from '../pages/RefColsAdminPage';\nimport { RefDimsAdminPage } from '../pages/RefDimsAdminPage';\nimport { RegionRelationsAdminPage } from '../pages/RegionRelationsAdminPage';\nimport { RegionsAdminPage } from '../pages/RegionsAdminPage';\nimport { RegionSetsAdminPage } from '../pages/RegionSetsAdminPage';\nimport { RegionSetShapesAdminPage } from '../pages/RegionSetShapesAdminPage';\nimport { UserAccessCasePoliciesAdminPage } from '../pages/UserAccessCasePoliciesAdminPage';\nimport { UserEffectiveRightsAdminPage } from '../pages/UserEffectiveRightsAdminPage';\nimport { UserEffectiveRightsTesterAdminPage } from '../pages/UserEffectiveRightsTesterAdminPage';\nimport { UserShareCasePoliciesAdminPage } from '../pages/UserShareCasePoliciesAdminPage';\nimport { CaseDbUsersAdminPage } from '../pages/CaseDbUsersAdminPage';\n\n\ntype RoutePermission = CaseDbApiPermission | CommonDbApiPermission;\n\nconst createUserEffectiveRightsRoutes = (): MyNonIndexRouteObject<RoutePermission>[] => [\n {\n Component: UserEffectiveRightsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n title: t`Effective rights`,\n },\n path: '/management/users/:userId/effective-rights',\n },\n {\n Component: UserEffectiveRightsTesterAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n title: t`Effective rights test`,\n },\n path: '/management/users/:userId/effective-rights-tester',\n },\n];\n\nexport const createAdminRoutes = (): MyNonIndexRouteObject<RoutePermission>[] => [\n ...createCommonAdminRoutes<CaseDbApiPermission>({\n usersComponent: CaseDbUsersAdminPage,\n usersRouteChildren: createUserEffectiveRightsRoutes(),\n }),\n\n // ACCESS_RIGHTS\n\n {\n Component: DataCollectionsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage data collections`,\n title: t`Data collections`,\n },\n path: '/management/data-collections',\n },\n {\n Component: DataCollectionSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DataCollectionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage data collection sets`,\n title: t`Data collection sets`,\n },\n path: '/management/data-collection-sets',\n },\n {\n Component: ColSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage column sets`,\n title: t`Column sets`,\n },\n path: '/management/col-sets',\n },\n {\n Component: OrganizationAccessCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage organization access case policies`,\n title: t`Organization access case policies`,\n },\n path: '/management/organization-access-case-policies',\n },\n {\n Component: OrganizationShareCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage organization share case policies`,\n title: t`Organization share case policies`,\n },\n path: '/management/organization-share-case-policies',\n },\n {\n Component: UserAccessCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage user access case policies`,\n title: t`User access case policies`,\n },\n path: '/management/user-access-case-policies',\n },\n {\n Component: UserShareCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage user share case policies`,\n title: t`User share case policies`,\n },\n path: '/management/user-share-case-policies',\n },\n\n\n // REFERENCE_DATA\n {\n children: [\n {\n Component: RefDimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage reference dimensions`,\n title: t`Reference dimensions`,\n },\n index: true,\n path: '/management/reference-dimensions',\n },\n {\n Component: RefColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.GeneticDistanceProtocolCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage reference columns`,\n title: t`Reference columns`,\n },\n path: '/management/reference-dimensions/:refDimId/reference-columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Reference dimensions`,\n },\n path: '/management/reference-dimensions',\n },\n {\n children: [\n {\n Component: ConceptSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concept sets`,\n title: t`Concept Sets`,\n },\n index: true,\n path: '/management/concept-sets',\n },\n {\n Component: ConceptsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concepts`,\n title: t`Concepts`,\n },\n path: '/management/concept-sets/:conceptSetId/concepts',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Concept Sets`,\n },\n path: '/management/concept-sets',\n },\n {\n Component: ConceptRelationsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptRelationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concept relations`,\n title: t`Concept Relations`,\n },\n path: '/management/concept-relations',\n },\n {\n Component: DiseasesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage diseases`,\n title: t`Diseases`,\n },\n path: '/management/diseases',\n },\n {\n Component: EtiologicalAgentsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage etiological agents`,\n title: t`Etiological agents`,\n },\n path: '/management/etiological-agents',\n },\n {\n Component: EtiologiesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.EtiologyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage etiologies`,\n title: t`Etiologies`,\n },\n path: '/management/etiologies',\n },\n {\n Component: CaseSetStatusAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetStatusCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case set statuses`,\n title: t`Case set statuses`,\n },\n path: '/management/case-set-statuses',\n },\n {\n Component: CaseSetCategoryAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case set categories`,\n title: t`Case set categories`,\n },\n path: '/management/case-set-categories',\n },\n {\n children: [\n {\n Component: CaseTypesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types`,\n title: t`Case types`,\n },\n index: true,\n path: '/management/case-types',\n },\n {\n children: [\n {\n Component: DimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage dimensions`,\n title: t`Dimensions`,\n },\n index: true,\n path: '/management/case-types/:caseTypeId/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage columns`,\n title: t`Columns`,\n },\n path: '/management/case-types/:caseTypeId/dimensions/:dimId/columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Dimensions`,\n },\n path: '/management/case-types/:caseTypeId/dimensions',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Case types`,\n },\n path: '/management/case-types',\n },\n {\n Component: CaseTypeSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types sets`,\n title: t`Case types sets`,\n },\n path: '/management/case-type-sets',\n },\n {\n Component: CaseTypeSetCategoriesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types set categories`,\n title: t`Case types set categories`,\n },\n path: '/management/case-type-set-categories',\n },\n\n {\n children: [\n {\n Component: RegionSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region sets`,\n title: t`Region sets`,\n },\n index: true,\n path: '/management/region-sets',\n },\n {\n Component: RegionsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage regions`,\n title: t`Regions`,\n },\n path: '/management/region-sets/:regionSetId/regions',\n },\n {\n Component: RegionSetShapesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionSetShapeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region set shapes`,\n title: t`Region set shapes`,\n },\n path: '/management/region-sets/:regionSetId/shapes',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Region sets`,\n },\n path: '/management/region-sets',\n },\n {\n Component: RegionRelationsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionRelationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region relations`,\n title: t`Region Relations`,\n },\n path: '/management/region-relations',\n },\n\n // HELPERS\n {\n Component: RefColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.GeneticDistanceProtocolCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all reference columns`,\n title: t`Reference columns (all)`,\n },\n path: '/management/reference-columns',\n },\n {\n children: [\n {\n Component: DimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all dimensions`,\n title: t`Dimensions (all)`,\n },\n index: true,\n path: '/management/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage columns`,\n title: t`Columns`,\n },\n path: '/management/dimensions/:dimId/columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Dimensions (all)`,\n },\n path: '/management/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all columns`,\n title: t`Columns (all)`,\n },\n path: '/management/columns',\n },\n {\n Component: DataCollectionVisualizationPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [],\n requiresUserProfile: true,\n subTitle: t`View data collection visualization`,\n title: t`Data collection visualization`,\n },\n path: '/management/data-collection-visualization-page',\n },\n];\n","/* eslint-disable @typescript-eslint/naming-convention */\nimport type { CaseDbApiPermission } from '@gen-epix/api-casedb';\nimport {\n CaseDbCommandName,\n CaseDbPermissionType,\n} from '@gen-epix/api-casedb';\nimport { t } from 'i18next';\nimport type { CommonDbApiPermission } from '@gen-epix/api-commondb';\nimport { createRoutes as createCommonRoutes } from '@gen-epix/ui/routes';\nimport { RouterErrorPage } from '@gen-epix/ui/pages/RouterErrorPage';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui/models/reactRouter';\n\nimport { CasesDetailPage } from '../pages/CasesDetailPage';\nimport { CasesPage } from '../pages/CasesPage';\nimport { EventsDetailPage } from '../pages/EventsDetailPage';\nimport { EventsPage } from '../pages/EventsPage';\nimport { TrendsPage } from '../pages/TrendsPage';\nimport { UploadPage } from '../pages/UploadPage';\n\nimport { createAdminRoutes } from './adminRoutes';\n\ntype RoutePermission = CaseDbApiPermission | CommonDbApiPermission;\n\nconst dashboardPermissions: RoutePermission[] = [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCasesByIdCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.RetrieveCasesByQueryCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.RetrievePhylogeneticTreeByCasesCommand, permission_type: CaseDbPermissionType.EXECUTE },\n];\n\n\nexport const createRoutes = (\n adminRoutes: MyNonIndexRouteObject<RoutePermission>[] = createAdminRoutes(),\n): MyNonIndexRouteObject<RoutePermission>[] => {\n const rootChildren: MyNonIndexRouteObject<RoutePermission>[] = [\n {\n children: [\n {\n Component: CasesPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCaseTypeStatsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Cases`,\n },\n index: true,\n path: '/cases',\n },\n {\n Component: CasesDetailPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n ...dashboardPermissions,\n ],\n requiresUserProfile: true,\n title: t`Case type`,\n },\n path: '/cases/:slug/:caseTypeId',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Cases`,\n },\n path: '/cases',\n },\n {\n children: [\n {\n Component: EventsPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetStatusCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCaseSetStatsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Events`,\n },\n index: true,\n },\n {\n Component: EventsDetailPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ...dashboardPermissions,\n ],\n requiresUserProfile: true,\n title: t`Event`,\n },\n path: '/events/:slug/:caseSetId',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Events`,\n },\n path: '/events',\n },\n {\n Component: TrendsPage,\n errorElement: <RouterErrorPage />,\n handle: {\n disabled: true,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Trends`,\n },\n path: '/trends',\n },\n {\n Component: UploadPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveProtocolsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.CreateFileForReadSetCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.CreateFileForSeqCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.UploadCasesCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Upload`,\n },\n path: '/upload',\n },\n ];\n\n return createCommonRoutes<CaseDbApiPermission>({\n adminRoutes,\n rootChildren,\n });\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/routes/adminRoutes.tsx","../../src/routes/routes.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport type { CaseDbApiPermission } from '@gen-epix/api-casedb';\nimport {\n CaseDbCommandName,\n CaseDbPermissionType,\n} from '@gen-epix/api-casedb';\nimport { ADMIN_PAGE_CATEGORY } from '@gen-epix/ui-client-common/models/admin';\nimport { createAdminRoutes as createCommonAdminRoutes } from '@gen-epix/ui-client-common/routes';\nimport { RouterErrorPage } from '@gen-epix/ui-client-common/pages/RouterErrorPage';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui-client-common/models/reactRouter';\nimport { t } from 'i18next';\nimport type { CommonDbApiPermission } from '@gen-epix/api-commondb';\n\nimport { CaseSetCategoryAdminPage } from '../pages/CaseSetCategoryAdminPage';\nimport { CaseSetStatusAdminPage } from '../pages/CaseSetStatusAdminPage';\nimport { CaseTypesAdminPage } from '../pages/CaseTypesAdminPage';\nimport { CaseTypeSetCategoriesAdminPage } from '../pages/CaseTypeSetCategoriesAdminPage';\nimport { CaseTypeSetsAdminPage } from '../pages/CaseTypeSetsAdminPage';\nimport { ColsAdminPage } from '../pages/ColsAdminPage';\nimport { ColSetsAdminPage } from '../pages/ColSetsAdminPage';\nimport { ConceptRelationsAdminPage } from '../pages/ConceptRelationsAdminPage';\nimport { ConceptsAdminPage } from '../pages/ConceptsAdminPage';\nimport { ConceptSetsAdminPage } from '../pages/ConceptSetsAdminPage';\nimport { DataCollectionsAdminPage } from '../pages/DataCollectionsAdminPage';\nimport { DataCollectionSetsAdminPage } from '../pages/DataCollectionSetsAdminPage';\nimport { DataCollectionVisualizationPage } from '../pages/DataCollectionVisualizationPage';\nimport { DimsAdminPage } from '../pages/DimsAdminPage';\nimport { DiseasesAdminPage } from '../pages/DiseasesAdminPage';\nimport { EtiologicalAgentsAdminPage } from '../pages/EtiologicalAgentsAdminPage';\nimport { EtiologiesAdminPage } from '../pages/EtiologiesAdminPage';\nimport { OrganizationAccessCasePoliciesAdminPage } from '../pages/OrganizationAccessCasePoliciesAdminPage';\nimport { OrganizationShareCasePoliciesAdminPage } from '../pages/OrganizationShareCasePoliciesAdminPage';\nimport { RefColsAdminPage } from '../pages/RefColsAdminPage';\nimport { RefDimsAdminPage } from '../pages/RefDimsAdminPage';\nimport { RegionRelationsAdminPage } from '../pages/RegionRelationsAdminPage';\nimport { RegionsAdminPage } from '../pages/RegionsAdminPage';\nimport { RegionSetsAdminPage } from '../pages/RegionSetsAdminPage';\nimport { RegionSetShapesAdminPage } from '../pages/RegionSetShapesAdminPage';\nimport { UserAccessCasePoliciesAdminPage } from '../pages/UserAccessCasePoliciesAdminPage';\nimport { UserEffectiveRightsAdminPage } from '../pages/UserEffectiveRightsAdminPage';\nimport { UserEffectiveRightsTesterAdminPage } from '../pages/UserEffectiveRightsTesterAdminPage';\nimport { UserShareCasePoliciesAdminPage } from '../pages/UserShareCasePoliciesAdminPage';\nimport { CaseDbUsersAdminPage } from '../pages/CaseDbUsersAdminPage';\n\n\ntype RoutePermission = CaseDbApiPermission | CommonDbApiPermission;\n\nconst createUserEffectiveRightsRoutes = (): MyNonIndexRouteObject<RoutePermission>[] => [\n {\n Component: UserEffectiveRightsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n title: t`Effective rights`,\n },\n path: '/management/users/:userId/effective-rights',\n },\n {\n Component: UserEffectiveRightsTesterAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n title: t`Effective rights test`,\n },\n path: '/management/users/:userId/effective-rights-tester',\n },\n];\n\nexport const createAdminRoutes = (): MyNonIndexRouteObject<RoutePermission>[] => [\n ...createCommonAdminRoutes<CaseDbApiPermission>({\n usersComponent: CaseDbUsersAdminPage,\n usersRouteChildren: createUserEffectiveRightsRoutes(),\n }),\n\n // ACCESS_RIGHTS\n\n {\n Component: DataCollectionsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage data collections`,\n title: t`Data collections`,\n },\n path: '/management/data-collections',\n },\n {\n Component: DataCollectionSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DataCollectionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage data collection sets`,\n title: t`Data collection sets`,\n },\n path: '/management/data-collection-sets',\n },\n {\n Component: ColSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage column sets`,\n title: t`Column sets`,\n },\n path: '/management/col-sets',\n },\n {\n Component: OrganizationAccessCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.OrganizationAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage organization access case policies`,\n title: t`Organization access case policies`,\n },\n path: '/management/organization-access-case-policies',\n },\n {\n Component: OrganizationShareCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.OrganizationShareCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage organization share case policies`,\n title: t`Organization share case policies`,\n },\n path: '/management/organization-share-case-policies',\n },\n {\n Component: UserAccessCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage user access case policies`,\n title: t`User access case policies`,\n },\n path: '/management/user-access-case-policies',\n },\n {\n Component: UserShareCasePoliciesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.ACCESS_RIGHTS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.UserAccessCasePolicyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.UserCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage user share case policies`,\n title: t`User share case policies`,\n },\n path: '/management/user-share-case-policies',\n },\n\n\n // REFERENCE_DATA\n {\n children: [\n {\n Component: RefDimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage reference dimensions`,\n title: t`Reference dimensions`,\n },\n index: true,\n path: '/management/reference-dimensions',\n },\n {\n Component: RefColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.GeneticDistanceProtocolCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage reference columns`,\n title: t`Reference columns`,\n },\n path: '/management/reference-dimensions/:refDimId/reference-columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Reference dimensions`,\n },\n path: '/management/reference-dimensions',\n },\n {\n children: [\n {\n Component: ConceptSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concept sets`,\n title: t`Concept Sets`,\n },\n index: true,\n path: '/management/concept-sets',\n },\n {\n Component: ConceptsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concepts`,\n title: t`Concepts`,\n },\n path: '/management/concept-sets/:conceptSetId/concepts',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Concept Sets`,\n },\n path: '/management/concept-sets',\n },\n {\n Component: ConceptRelationsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ConceptRelationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage concept relations`,\n title: t`Concept Relations`,\n },\n path: '/management/concept-relations',\n },\n {\n Component: DiseasesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage diseases`,\n title: t`Diseases`,\n },\n path: '/management/diseases',\n },\n {\n Component: EtiologicalAgentsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage etiological agents`,\n title: t`Etiological agents`,\n },\n path: '/management/etiological-agents',\n },\n {\n Component: EtiologiesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.EtiologyCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage etiologies`,\n title: t`Etiologies`,\n },\n path: '/management/etiologies',\n },\n {\n Component: CaseSetStatusAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetStatusCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case set statuses`,\n title: t`Case set statuses`,\n },\n path: '/management/case-set-statuses',\n },\n {\n Component: CaseSetCategoryAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case set categories`,\n title: t`Case set categories`,\n },\n path: '/management/case-set-categories',\n },\n {\n children: [\n {\n Component: CaseTypesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DiseaseCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.EtiologicalAgentCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types`,\n title: t`Case types`,\n },\n index: true,\n path: '/management/case-types',\n },\n {\n children: [\n {\n Component: DimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage dimensions`,\n title: t`Dimensions`,\n },\n index: true,\n path: '/management/case-types/:caseTypeId/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage columns`,\n title: t`Columns`,\n },\n path: '/management/case-types/:caseTypeId/dimensions/:dimId/columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Dimensions`,\n },\n path: '/management/case-types/:caseTypeId/dimensions',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Case types`,\n },\n path: '/management/case-types',\n },\n {\n Component: CaseTypeSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types sets`,\n title: t`Case types sets`,\n },\n path: '/management/case-type-sets',\n },\n {\n Component: CaseTypeSetCategoriesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage case types set categories`,\n title: t`Case types set categories`,\n },\n path: '/management/case-type-set-categories',\n },\n\n {\n children: [\n {\n Component: RegionSetsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region sets`,\n title: t`Region sets`,\n },\n index: true,\n path: '/management/region-sets',\n },\n {\n Component: RegionsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage regions`,\n title: t`Regions`,\n },\n path: '/management/region-sets/:regionSetId/regions',\n },\n {\n Component: RegionSetShapesAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionSetShapeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region set shapes`,\n title: t`Region set shapes`,\n },\n path: '/management/region-sets/:regionSetId/shapes',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Region sets`,\n },\n path: '/management/region-sets',\n },\n {\n Component: RegionRelationsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.REFERENCE_DATA,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RegionRelationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage region relations`,\n title: t`Region Relations`,\n },\n path: '/management/region-relations',\n },\n\n // HELPERS\n {\n Component: RefColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.GeneticDistanceProtocolCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all reference columns`,\n title: t`Reference columns (all)`,\n },\n path: '/management/reference-columns',\n },\n {\n children: [\n {\n Component: DimsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.DimCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefDimCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all dimensions`,\n title: t`Dimensions (all)`,\n },\n index: true,\n path: '/management/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`Manage columns`,\n title: t`Columns`,\n },\n path: '/management/dimensions/:dimId/columns',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [],\n requirePermissionForChildRoute: true,\n requiresUserProfile: true,\n title: t`Dimensions (all)`,\n },\n path: '/management/dimensions',\n },\n {\n Component: ColsAdminPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RefColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.TreeAlgorithmCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n ],\n requiresUserProfile: true,\n subTitle: t`View all columns`,\n title: t`Columns (all)`,\n },\n path: '/management/columns',\n },\n {\n Component: DataCollectionVisualizationPage,\n errorElement: <RouterErrorPage />,\n handle: {\n category: ADMIN_PAGE_CATEGORY.HELPERS,\n requiredPermissions: [],\n requiresUserProfile: true,\n subTitle: t`View data collection visualization`,\n title: t`Data collection visualization`,\n },\n path: '/management/data-collection-visualization-page',\n },\n];\n","/* eslint-disable @typescript-eslint/naming-convention */\nimport type { CaseDbApiPermission } from '@gen-epix/api-casedb';\nimport {\n CaseDbCommandName,\n CaseDbPermissionType,\n} from '@gen-epix/api-casedb';\nimport { t } from 'i18next';\nimport type { CommonDbApiPermission } from '@gen-epix/api-commondb';\nimport { createRoutes as createCommonRoutes } from '@gen-epix/ui-client-common/routes';\nimport { RouterErrorPage } from '@gen-epix/ui-client-common/pages/RouterErrorPage';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui-client-common/models/reactRouter';\n\nimport { CasesDetailPage } from '../pages/CasesDetailPage';\nimport { CasesPage } from '../pages/CasesPage';\nimport { EventsDetailPage } from '../pages/EventsDetailPage';\nimport { EventsPage } from '../pages/EventsPage';\nimport { TrendsPage } from '../pages/TrendsPage';\nimport { UploadPage } from '../pages/UploadPage';\n\nimport { createAdminRoutes } from './adminRoutes';\n\ntype RoutePermission = CaseDbApiPermission | CommonDbApiPermission;\n\nconst dashboardPermissions: RoutePermission[] = [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ConceptSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.OrganizationCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RegionSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCasesByIdCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.RetrieveCasesByQueryCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.RetrievePhylogeneticTreeByCasesCommand, permission_type: CaseDbPermissionType.EXECUTE },\n];\n\n\nexport const createRoutes = (\n adminRoutes: MyNonIndexRouteObject<RoutePermission>[] = createAdminRoutes(),\n): MyNonIndexRouteObject<RoutePermission>[] => {\n const rootChildren: MyNonIndexRouteObject<RoutePermission>[] = [\n {\n children: [\n {\n Component: CasesPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCaseTypeStatsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Cases`,\n },\n index: true,\n path: '/cases',\n },\n {\n Component: CasesDetailPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n ...dashboardPermissions,\n ],\n requiresUserProfile: true,\n title: t`Case type`,\n },\n path: '/cases/:slug/:caseTypeId',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Cases`,\n },\n path: '/cases',\n },\n {\n children: [\n {\n Component: EventsPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetStatusCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseSetCategoryCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.CaseTypeSetMemberCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveCaseSetStatsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Events`,\n },\n index: true,\n },\n {\n Component: EventsDetailPage,\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseSetCrudCommand, permission_type: CaseDbPermissionType.READ },\n ...dashboardPermissions,\n ],\n requiresUserProfile: true,\n title: t`Event`,\n },\n path: '/events/:slug/:caseSetId',\n },\n ],\n errorElement: <RouterErrorPage />,\n handle: {\n hidden: false,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Events`,\n },\n path: '/events',\n },\n {\n Component: TrendsPage,\n errorElement: <RouterErrorPage />,\n handle: {\n disabled: true,\n requiredPermissions: [],\n requiresUserProfile: true,\n title: t`Trends`,\n },\n path: '/trends',\n },\n {\n Component: UploadPage,\n errorElement: <RouterErrorPage />,\n handle: {\n requiredPermissions: [\n { command_name: CaseDbCommandName.CaseTypeCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.DataCollectionCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.ColCrudCommand, permission_type: CaseDbPermissionType.READ },\n { command_name: CaseDbCommandName.RetrieveProtocolsCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.CreateFileForReadSetCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.CreateFileForSeqCommand, permission_type: CaseDbPermissionType.EXECUTE },\n { command_name: CaseDbCommandName.UploadCasesCommand, permission_type: CaseDbPermissionType.EXECUTE },\n ],\n requiresUserProfile: true,\n title: t`Upload`,\n },\n path: '/upload',\n },\n ];\n\n return createCommonRoutes<CaseDbApiPermission>({\n adminRoutes,\n rootChildren,\n });\n};\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { CaseDbApiPermission } from '@gen-epix/api-casedb';
2
2
  import { CommonDbApiPermission } from '@gen-epix/api-commondb';
3
- import { MyNonIndexRouteObject } from '@gen-epix/ui/models/reactRouter';
3
+ import { MyNonIndexRouteObject } from '@gen-epix/ui-client-common/models/reactRouter';
4
4
  type RoutePermission = CaseDbApiPermission | CommonDbApiPermission;
5
5
  export declare const createRoutes: (adminRoutes?: MyNonIndexRouteObject<RoutePermission>[]) => MyNonIndexRouteObject<RoutePermission>[];
6
6
  export {};
@@ -2,11 +2,11 @@ import { CASEDB_QUERY_DEPENDENCIES as e } from "../constants/query.js";
2
2
  import { createAdminRoutes as t, createRoutes as n } from "../routes/index.js";
3
3
  import { HomePage as r } from "../pages/HomePage/index.js";
4
4
  import { CaseDbAbacApi as i, CaseDbAuthApi as a, CaseDbBaseAPI as o, CaseDbOrganizationApi as s, CaseDbSystemApi as c } from "@gen-epix/api-casedb";
5
- import { QueryClientService as l } from "@gen-epix/ui/classes/services/QueryClientService";
6
- import { COMMON_QUERY_DEPENDENCIES as u } from "@gen-epix/ui/constants/query";
7
- import { RouterService as d } from "@gen-epix/ui/classes/services/RouterService";
8
- import { ApiService as f } from "@gen-epix/ui/classes/services/ApiService";
9
- import { setupUi as p } from "@gen-epix/ui/setup/setup";
5
+ import { QueryClientService as l } from "@gen-epix/ui-client-common/classes/services/QueryClientService";
6
+ import { COMMON_QUERY_DEPENDENCIES as u } from "@gen-epix/ui-client-common/constants/query";
7
+ import { RouterService as d } from "@gen-epix/ui-client-common/classes/services/RouterService";
8
+ import { ApiService as f } from "@gen-epix/ui-client-common/classes/services/ApiService";
9
+ import { setupUi as p } from "@gen-epix/ui-client-common/setup/setup";
10
10
  //#region src/setup/setup.ts
11
11
  var m = () => {
12
12
  let m = t(), h = n(m);
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","names":[],"sources":["../../src/setup/setup.ts"],"sourcesContent":["import type { COMMON_QUERY_KEY } from '@gen-epix/ui/constants/query';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui/models/reactRouter';\nimport { ApiService } from '@gen-epix/ui/classes/services/ApiService';\nimport { COMMON_QUERY_DEPENDENCIES } from '@gen-epix/ui/constants/query';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { RouterService } from '@gen-epix/ui/classes/services/RouterService';\nimport { setupUi } from '@gen-epix/ui/setup/setup';\nimport {\n CaseDbAbacApi,\n CaseDbAuthApi,\n CaseDbBaseAPI,\n CaseDbOrganizationApi,\n CaseDbSystemApi,\n} from '@gen-epix/api-casedb';\nimport type { CommonDbOrganizationApi } from '@gen-epix/api-commondb';\n\nimport type { CASEDB_QUERY_KEY } from '../constants/query';\nimport { CASEDB_QUERY_DEPENDENCIES } from '../constants/query';\nimport { HomePage } from '../pages/HomePage';\nimport {\n createAdminRoutes,\n createRoutes,\n} from '../routes';\n\nexport const setupCaseDb = () => {\n const adminRoutes = createAdminRoutes();\n const routes = createRoutes(adminRoutes);\n\n RouterService.getInstance().initialize({\n adminRoutes: adminRoutes as MyNonIndexRouteObject[],\n homePageComponent: HomePage,\n routes: routes as MyNonIndexRouteObject[],\n });\n QueryClientService.getInstance<CASEDB_QUERY_KEY & COMMON_QUERY_KEY>().initialize({\n queryKeyDependencies: [COMMON_QUERY_DEPENDENCIES, CASEDB_QUERY_DEPENDENCIES],\n });\n ApiService.getInstance().initialize({\n abacApi: CaseDbAbacApi.getInstance(),\n authApi: CaseDbAuthApi.getInstance(),\n baseApi: CaseDbBaseAPI,\n organizationApi: CaseDbOrganizationApi.getInstance() as CommonDbOrganizationApi,\n systemApi: CaseDbSystemApi.getInstance(),\n });\n setupUi();\n};\n"],"mappings":";;;;;;;;;;AAwBA,IAAa,UAAoB;CAC/B,IAAM,IAAc,EAAkB,GAChC,IAAS,EAAa,CAAW;CAiBvC,AAfA,EAAc,YAAY,CAAC,CAAC,WAAW;EACxB;EACb,mBAAmB;EACX;CACV,CAAC,GACD,EAAmB,YAAiD,CAAC,CAAC,WAAW,EAC/E,sBAAsB,CAAC,GAA2B,CAAyB,EAC7E,CAAC,GACD,EAAW,YAAY,CAAC,CAAC,WAAW;EAClC,SAAS,EAAc,YAAY;EACnC,SAAS,EAAc,YAAY;EACnC,SAAS;EACT,iBAAiB,EAAsB,YAAY;EACnD,WAAW,EAAgB,YAAY;CACzC,CAAC,GACD,EAAQ;AACV"}
1
+ {"version":3,"file":"setup.js","names":[],"sources":["../../src/setup/setup.ts"],"sourcesContent":["import type { COMMON_QUERY_KEY } from '@gen-epix/ui-client-common/constants/query';\nimport type { MyNonIndexRouteObject } from '@gen-epix/ui-client-common/models/reactRouter';\nimport { ApiService } from '@gen-epix/ui-client-common/classes/services/ApiService';\nimport { COMMON_QUERY_DEPENDENCIES } from '@gen-epix/ui-client-common/constants/query';\nimport { QueryClientService } from '@gen-epix/ui-client-common/classes/services/QueryClientService';\nimport { RouterService } from '@gen-epix/ui-client-common/classes/services/RouterService';\nimport { setupUi } from '@gen-epix/ui-client-common/setup/setup';\nimport {\n CaseDbAbacApi,\n CaseDbAuthApi,\n CaseDbBaseAPI,\n CaseDbOrganizationApi,\n CaseDbSystemApi,\n} from '@gen-epix/api-casedb';\nimport type { CommonDbOrganizationApi } from '@gen-epix/api-commondb';\n\nimport type { CASEDB_QUERY_KEY } from '../constants/query';\nimport { CASEDB_QUERY_DEPENDENCIES } from '../constants/query';\nimport { HomePage } from '../pages/HomePage';\nimport {\n createAdminRoutes,\n createRoutes,\n} from '../routes';\n\nexport const setupCaseDb = () => {\n const adminRoutes = createAdminRoutes();\n const routes = createRoutes(adminRoutes);\n\n RouterService.getInstance().initialize({\n adminRoutes: adminRoutes as MyNonIndexRouteObject[],\n homePageComponent: HomePage,\n routes: routes as MyNonIndexRouteObject[],\n });\n QueryClientService.getInstance<CASEDB_QUERY_KEY & COMMON_QUERY_KEY>().initialize({\n queryKeyDependencies: [COMMON_QUERY_DEPENDENCIES, CASEDB_QUERY_DEPENDENCIES],\n });\n ApiService.getInstance().initialize({\n abacApi: CaseDbAbacApi.getInstance(),\n authApi: CaseDbAuthApi.getInstance(),\n baseApi: CaseDbBaseAPI,\n organizationApi: CaseDbOrganizationApi.getInstance() as CommonDbOrganizationApi,\n systemApi: CaseDbSystemApi.getInstance(),\n });\n setupUi();\n};\n"],"mappings":";;;;;;;;;;AAwBA,IAAa,UAAoB;CAC/B,IAAM,IAAc,EAAkB,GAChC,IAAS,EAAa,CAAW;CAiBvC,AAfA,EAAc,YAAY,CAAC,CAAC,WAAW;EACxB;EACb,mBAAmB;EACX;CACV,CAAC,GACD,EAAmB,YAAiD,CAAC,CAAC,WAAW,EAC/E,sBAAsB,CAAC,GAA2B,CAAyB,EAC7E,CAAC,GACD,EAAW,YAAY,CAAC,CAAC,WAAW;EAClC,SAAS,EAAc,YAAY;EACnC,SAAS,EAAc,YAAY;EACnC,SAAS;EACT,iBAAiB,EAAsB,YAAY;EACnD,WAAW,EAAgB,YAAY;CACzC,CAAC,GACD,EAAQ;AACV"}
@@ -1,5 +1,5 @@
1
1
  import { CaseDbCase, CaseDbCol, CaseDbCompleteCaseType, CaseDbPhylogeneticTree } from '@gen-epix/api-casedb';
2
- import { CreateTableStoreInitialStateKwArgs, CreateTableStoreKwArgs, TableStoreActions, TableStoreState } from '@gen-epix/ui/stores/tableStore';
2
+ import { CreateTableStoreInitialStateKwArgs, CreateTableStoreKwArgs, TableStoreActions, TableStoreState } from '@gen-epix/ui-client-common/stores/tableStore';
3
3
  import { TreeNode } from '@gen-epix/ui-phylogenetic-tree/models/tree';
4
4
  import { FindSimilarCasesResult } from '../../models/caseDb';
5
5
  import { StratifiableColumn, Stratification, STRATIFICATION_MODE } from '../../models/stratification';
@@ -3,9 +3,9 @@ import { CASEDB_QUERY_KEY as t } from "../../constants/query.js";
3
3
  import { t as n } from "../../_chunks/vanilla.js";
4
4
  import { UPLOAD_STEP as r } from "../../models/upload.js";
5
5
  import { t as i } from "i18next";
6
- import { QueryClientService as a } from "@gen-epix/ui/classes/services/QueryClientService";
6
+ import { QueryClientService as a } from "@gen-epix/ui-client-common/classes/services/QueryClientService";
7
7
  import { StringUtil as o } from "@gen-epix/ui-core/utils/StringUtil";
8
- import { NotificationService as s } from "@gen-epix/ui/classes/services/NotificationService";
8
+ import { NotificationService as s } from "@gen-epix/ui-client-common/classes/services/NotificationService";
9
9
  import { createContext as c } from "react";
10
10
  //#region src/stores/uploadStore/uploadStore.ts
11
11
  var l = [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/stores/uploadStore/uploadStore.ts","../../../src/stores/uploadStore/uploadStoreContext.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport { t } from 'i18next';\nimport type {\n CaseDbCaseBatchUploadResult,\n CaseDbCaseForUpload,\n CaseDbCaseUploadResult,\n CaseDbCol,\n CaseDbCompleteCaseType,\n} from '@gen-epix/api-casedb';\nimport { NotificationService } from '@gen-epix/ui/classes/services/NotificationService';\nimport { QueryClientService } from '@gen-epix/ui/classes/services/QueryClientService';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\nimport type {\n AutoCompleteOption,\n OptionBase,\n} from '@gen-epix/ui-form/models/form';\n\nimport type {\n UploadMappedColumn,\n UploadSequenceMapping,\n} from '../../models/upload';\nimport { UPLOAD_STEP } from '../../models/upload';\nimport { UploadUtil } from '../../utils/UploadUtil';\nimport { CASEDB_QUERY_KEY } from '../../constants/query';\n\nexport const STEP_ORDER_UPLOAD = [\n UPLOAD_STEP.SELECT_FILE,\n UPLOAD_STEP.MAP_COLUMNS,\n UPLOAD_STEP.PREVIEW,\n UPLOAD_STEP.SELECT_SEQUENCE_FILES,\n UPLOAD_STEP.MAP_SEQUENCES,\n UPLOAD_STEP.CREATE_CASES,\n];\n\nexport const STEP_ORDER_BULK_EDIT = [\n UPLOAD_STEP.PREVIEW,\n UPLOAD_STEP.CREATE_CASES,\n];\n\nexport interface CreateUploadStoreInitialStateKwArg {\n caseRightsColMap?: { [colId: string]: string[] };\n casesForVerificationFromSourceData?: CaseDbCaseForUpload[];\n completeCaseType?: CaseDbCompleteCaseType;\n goBackFromFirstStepCallback?: () => void;\n goBackFromFirstStepLabel?: string;\n onUploadComplete?: (result: CaseDbCaseBatchUploadResult) => Promise<void> | void;\n stepOrder: UPLOAD_STEP[];\n uploadCompleteButtonCallback?: () => void;\n uploadCompleteButtonLabel?: string;\n}\n\nexport type CreateUploadStoreKwArgs = CreateUploadStoreInitialStateKwArg;\n\nexport type UploadStore = UploadStoreActions & UploadStoreState;\nexport interface UploadStoreActions {\n destroy: () => Promise<void>;\n findNextStep: (currentStep: UPLOAD_STEP) => UPLOAD_STEP;\n findPreviousStep: (currentStep: UPLOAD_STEP) => UPLOAD_STEP;\n goToNextStep: () => Promise<void>;\n goToPreviousStep: () => void;\n invalidateCaseValidationQuery: () => Promise<void>;\n reset: () => Promise<void>;\n setCaseTypeId: (caseTypeId: string) => void;\n setCols: (cols: CaseDbCol[]) => void;\n setCompleteCaseType: (completeCaseType: CaseDbCompleteCaseType) => void;\n setCreatedInDataCollectionId: (createdInDataCollectionId: string) => void;\n setDataCollectionOptions: (options: OptionBase<string>[]) => void;\n setFileList: (fileList: FileList) => Promise<void>;\n\n setMappedColumns: (mappedColumns: UploadMappedColumn[]) => Promise<void>;\n setRawData: (rawData: string[][]) => Promise<void>;\n setSequenceFilesDataTransfer: (dataTransfer: DataTransfer) => void;\n setSequenceMapping: (sequenceMapping: UploadSequenceMapping) => void;\n setSheet: (sheet: string) => Promise<void>;\n setSheetOptions: (sheetOptions: AutoCompleteOption<string>[]) => Promise<void>;\n}\n\nexport interface UploadStoreState {\n activeStep: UPLOAD_STEP;\n assemblyProtocolId: string;\n caseRightsColMap: { [colId: string]: string[] };\n casesForVerificationFromSourceData: CaseDbCaseForUpload[];\n caseTypeId: string;\n cols: CaseDbCol[];\n completeCaseType: CaseDbCompleteCaseType;\n createdInDataCollectionId: string;\n createdInDataCollectionOptions: AutoCompleteOption<string>[];\n dataCollectionOptions: OptionBase<string>[];\n fileList: FileList;\n fileName: string;\n fileParsingError: string;\n goBackFromFirstStepCallback: () => void;\n goBackFromFirstStepLabel: string;\n initError: unknown;\n isInitLoading: boolean;\n mappedColumns: UploadMappedColumn[];\n onUploadComplete: (result: CaseDbCaseBatchUploadResult) => Promise<void> | void;\n rawData: string[][];\n sampleIdColId: string;\n selectedIdsForUpload: string[];\n sequenceFilesDataTransfer: DataTransfer;\n sequenceMapping: UploadSequenceMapping;\n sequencingProtocolId: string;\n sheet: string;\n sheetOptions: AutoCompleteOption<string>[];\n shouldResetColumnMapping: boolean;\n shouldResetSequenceMapping: boolean;\n stepOrder: UPLOAD_STEP[];\n uploadCompleteButtonCallback: () => void;\n uploadCompleteButtonLabel: string;\n validateCasesQueryKey: string[];\n validatedCases: CaseDbCaseUploadResult[];\n}\n\n\nconst createEpiUploadStoreInitialState: (kwArgs: CreateUploadStoreKwArgs) => UploadStoreState = (kwArgs) => ({\n activeStep: kwArgs.stepOrder[0],\n assemblyProtocolId: null,\n caseRightsColMap: kwArgs.caseRightsColMap ?? {},\n casesForVerificationFromSourceData: kwArgs.casesForVerificationFromSourceData ?? [],\n caseTypeId: null,\n cols: [],\n completeCaseType: kwArgs.completeCaseType ?? null,\n createdInDataCollectionId: null,\n createdInDataCollectionOptions: [],\n dataCollectionOptions: [],\n fileList: null,\n fileName: null,\n fileParsingError: null,\n goBackFromFirstStepCallback: kwArgs.goBackFromFirstStepCallback ?? null,\n goBackFromFirstStepLabel: kwArgs.goBackFromFirstStepLabel ?? null,\n initError: null,\n isInitLoading: true,\n mappedColumns: [],\n onUploadComplete: kwArgs.onUploadComplete ?? null,\n rawData: null,\n sampleIdColId: null,\n selectedIdsForUpload: [],\n sequenceFilesDataTransfer: new DataTransfer(),\n sequenceMapping: {},\n sequencingProtocolId: null,\n sheet: null,\n sheetOptions: [],\n shouldResetColumnMapping: false,\n shouldResetSequenceMapping: false,\n stepOrder: kwArgs.stepOrder,\n uploadCompleteButtonCallback: kwArgs.uploadCompleteButtonCallback ?? null,\n uploadCompleteButtonLabel: kwArgs.uploadCompleteButtonLabel ?? null,\n validateCasesQueryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.VALIDATE_CASES, StringUtil.createUuid()),\n validatedCases: [],\n});\n\nexport const createUploadStore = (kwArgs: CreateUploadStoreKwArgs) => {\n const initialStateParams = { ...kwArgs };\n const initialState = createEpiUploadStoreInitialState(initialStateParams);\n const STEP_ORDER = kwArgs.stepOrder;\n\n return createStore<UploadStore>()((set, get) => {\n return {\n ...initialState,\n destroy: async () => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n },\n\n findNextStep: (currentStep: UPLOAD_STEP): UPLOAD_STEP => {\n const currentIndex = STEP_ORDER.indexOf(currentStep);\n if (currentIndex === -1 || currentIndex === STEP_ORDER.length - 1) {\n return null;\n }\n return STEP_ORDER[currentIndex + 1];\n },\n\n findPreviousStep: (currentStep: UPLOAD_STEP): UPLOAD_STEP => {\n const currentIndex = STEP_ORDER.indexOf(currentStep);\n if (currentIndex <= 0) {\n return null;\n }\n return STEP_ORDER[currentIndex - 1];\n },\n\n goToNextStep: async () => {\n const { activeStep, completeCaseType, createdInDataCollectionId, mappedColumns, rawData, sequenceFilesDataTransfer, sequenceMapping, setMappedColumns, shouldResetColumnMapping, shouldResetSequenceMapping, validatedCases } = get();\n\n let nextStep = get().findNextStep(activeStep);\n\n if (nextStep === UPLOAD_STEP.MAP_COLUMNS) {\n if (shouldResetColumnMapping && mappedColumns.length > 0) {\n NotificationService.getInstance().showNotification({\n isLoading: false,\n message: t`Column mappings have been reset due to changes in the selected case type or file.`,\n severity: 'info',\n });\n }\n if ((shouldResetColumnMapping && mappedColumns.length > 0) || mappedColumns.length === 0) {\n await setMappedColumns(UploadUtil.getInitialMappedColumns(completeCaseType, rawData));\n }\n }\n\n if (nextStep === UPLOAD_STEP.PREVIEW) {\n set({\n casesForVerificationFromSourceData: UploadUtil.getCasesForUpload({\n caseTypeId: completeCaseType.id,\n createdInDataCollectionId,\n mappedColumns,\n rawData,\n }),\n });\n }\n\n if (nextStep === UPLOAD_STEP.MAP_SEQUENCES) {\n if (shouldResetSequenceMapping && Object.keys(sequenceMapping).length > 0) {\n NotificationService.getInstance().showNotification({\n isLoading: false,\n message: t`Sequence mappings have been reset due to changes in the selected uploaded files.`,\n severity: 'info',\n });\n }\n if ((shouldResetSequenceMapping && sequenceMapping) || !sequenceMapping) {\n set({ sequenceMapping: UploadUtil.getEpiUploadSequenceMapping(completeCaseType, validatedCases, sequenceFilesDataTransfer) });\n }\n if (UploadUtil.getSequenceMappingStats(get().sequenceMapping, sequenceFilesDataTransfer).numberOfFilesToMap === 0) {\n nextStep = get().findNextStep(nextStep);\n }\n }\n\n if (nextStep !== null) {\n set({ activeStep: nextStep, shouldResetColumnMapping: false, shouldResetSequenceMapping: false });\n }\n },\n\n goToPreviousStep: () => {\n const { activeStep, sequenceFilesDataTransfer, sequenceMapping } = get();\n let previousStep = get().findPreviousStep(activeStep);\n if (previousStep === UPLOAD_STEP.MAP_SEQUENCES && UploadUtil.getSequenceMappingStats(sequenceMapping, sequenceFilesDataTransfer).numberOfFilesToMap === 0) {\n previousStep = get().findPreviousStep(previousStep);\n }\n\n if (previousStep !== null) {\n set({ activeStep: previousStep });\n }\n },\n\n invalidateCaseValidationQuery: async () => {\n const { validateCasesQueryKey } = get();\n\n await QueryClientService.getInstance().invalidateQueryKeys([validateCasesQueryKey]);\n QueryClientService.getInstance().removeQueries([validateCasesQueryKey]);\n },\n\n reset: async () => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n set(createEpiUploadStoreInitialState(initialStateParams));\n },\n\n setCaseTypeId: (caseTypeId: string) => {\n set({ caseTypeId });\n },\n\n setCols: (cols: CaseDbCol[]) => {\n set({ cols });\n },\n\n setCompleteCaseType: async (completeCaseType: CaseDbCompleteCaseType) => {\n const { completeCaseType: oldCompleteCaseType, createdInDataCollectionId, dataCollectionOptions, invalidateCaseValidationQuery } = get();\n set({ completeCaseType });\n if (completeCaseType && completeCaseType.id !== oldCompleteCaseType?.id) {\n await invalidateCaseValidationQuery();\n set({ shouldResetColumnMapping: true });\n const createdInDataCollectionOptions = dataCollectionOptions.filter(option => {\n const dataCollectionId = option.value;\n return completeCaseType.case_type_access_abacs[dataCollectionId]?.is_private && completeCaseType.case_type_access_abacs[dataCollectionId]?.add_case_set;\n });\n set({ createdInDataCollectionOptions });\n if (createdInDataCollectionOptions.length === 1) {\n set({ createdInDataCollectionId: createdInDataCollectionOptions[0].value });\n }\n\n // If the current createdInDataCollectionId is not valid for the new completeCaseType, reset it\n if (createdInDataCollectionId) {\n const isValid = createdInDataCollectionOptions.some(option => option.value === createdInDataCollectionId);\n if (!isValid) {\n set({ createdInDataCollectionId: null });\n }\n }\n }\n },\n\n setCreatedInDataCollectionId: (createdInDataCollectionId: string) => {\n set({ createdInDataCollectionId });\n },\n\n setDataCollectionOptions: (options: OptionBase<string>[]) => {\n set({ dataCollectionOptions: options });\n },\n\n setFileList: async (fileList: FileList) => {\n const { setRawData, setSheet, setSheetOptions } = get();\n\n const file = fileList?.length > 0 ? fileList[0] : null;\n set({ fileName: file?.name ?? null, fileParsingError: null, rawData: null, sheet: null });\n\n if (!file) {\n await setSheet(null);\n await setRawData(null);\n set({ fileList: null });\n return;\n }\n\n set({ fileList });\n try {\n if (!UploadUtil.isXlsxFile(file.name)) {\n const data = await UploadUtil.readRawData(fileList);\n await setRawData(data);\n }\n const sheetOptions = await UploadUtil.getSheetNameOptions(fileList);\n await setSheetOptions(sheetOptions);\n } catch (error) {\n console.log(error);\n await setSheet(null);\n await setSheetOptions([]);\n set({ fileList: null, fileParsingError: t('Error reading file') });\n }\n },\n\n setMappedColumns: async (mappedColumns: UploadMappedColumn[]) => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n set({ mappedColumns });\n },\n\n setRawData: async (rawData: string[][]) => {\n const { cols, invalidateCaseValidationQuery, rawData: oldRawData, setCaseTypeId } = get();\n if (JSON.stringify(oldRawData) !== JSON.stringify(rawData)) {\n set({ shouldResetColumnMapping: true });\n await invalidateCaseValidationQuery();\n }\n set({ rawData });\n if (!rawData || rawData.length === 0) {\n return;\n }\n const bestMatchingCaseType = UploadUtil.getCaseTypeFromColumnLabels(cols, rawData[0]);\n if (bestMatchingCaseType) {\n setCaseTypeId(bestMatchingCaseType.id);\n }\n },\n\n setSequenceFilesDataTransfer: (dataTransfer: DataTransfer) => {\n const { sequenceFilesDataTransfer, sequenceMapping } = get();\n if (dataTransfer === sequenceFilesDataTransfer) {\n return;\n }\n set({ sequenceFilesDataTransfer: dataTransfer });\n if (sequenceMapping) {\n set({ shouldResetSequenceMapping: true });\n }\n },\n\n setSequenceMapping: (sequenceMapping: UploadSequenceMapping) => {\n set({ sequenceMapping });\n },\n\n setSheet: async (sheet: string) => {\n const { fileList, setRawData } = get();\n set({ fileParsingError: null, rawData: null, sheet });\n\n if (!sheet) {\n return;\n }\n try {\n // Call the callback with parsed data\n await setRawData(await UploadUtil.readRawData(fileList, sheet));\n } catch (error) {\n console.error('Error reading sheet', error);\n set({ sheet: null });\n set({ fileParsingError: t('Error reading sheet') });\n await setRawData(null);\n return;\n }\n },\n\n setSheetOptions: async (sheetOptions: AutoCompleteOption<string>[]) => {\n const { setSheet } = get();\n set({ sheetOptions });\n if (sheetOptions.length === 1) {\n await setSheet(sheetOptions[0].value);\n }\n },\n };\n });\n};\n","import { createContext } from 'react';\nimport type { StoreApi } from 'zustand';\n\nimport type { UploadStore } from './uploadStore';\n\nexport const UploadStoreContext = createContext<StoreApi<UploadStore>>(null);\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/stores/uploadStore/uploadStore.ts","../../../src/stores/uploadStore/uploadStoreContext.tsx"],"sourcesContent":["import { createStore } from 'zustand';\nimport { t } from 'i18next';\nimport type {\n CaseDbCaseBatchUploadResult,\n CaseDbCaseForUpload,\n CaseDbCaseUploadResult,\n CaseDbCol,\n CaseDbCompleteCaseType,\n} from '@gen-epix/api-casedb';\nimport { NotificationService } from '@gen-epix/ui-client-common/classes/services/NotificationService';\nimport { QueryClientService } from '@gen-epix/ui-client-common/classes/services/QueryClientService';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\nimport type {\n AutoCompleteOption,\n OptionBase,\n} from '@gen-epix/ui-core-form/models/form';\n\nimport type {\n UploadMappedColumn,\n UploadSequenceMapping,\n} from '../../models/upload';\nimport { UPLOAD_STEP } from '../../models/upload';\nimport { UploadUtil } from '../../utils/UploadUtil';\nimport { CASEDB_QUERY_KEY } from '../../constants/query';\n\nexport const STEP_ORDER_UPLOAD = [\n UPLOAD_STEP.SELECT_FILE,\n UPLOAD_STEP.MAP_COLUMNS,\n UPLOAD_STEP.PREVIEW,\n UPLOAD_STEP.SELECT_SEQUENCE_FILES,\n UPLOAD_STEP.MAP_SEQUENCES,\n UPLOAD_STEP.CREATE_CASES,\n];\n\nexport const STEP_ORDER_BULK_EDIT = [\n UPLOAD_STEP.PREVIEW,\n UPLOAD_STEP.CREATE_CASES,\n];\n\nexport interface CreateUploadStoreInitialStateKwArg {\n caseRightsColMap?: { [colId: string]: string[] };\n casesForVerificationFromSourceData?: CaseDbCaseForUpload[];\n completeCaseType?: CaseDbCompleteCaseType;\n goBackFromFirstStepCallback?: () => void;\n goBackFromFirstStepLabel?: string;\n onUploadComplete?: (result: CaseDbCaseBatchUploadResult) => Promise<void> | void;\n stepOrder: UPLOAD_STEP[];\n uploadCompleteButtonCallback?: () => void;\n uploadCompleteButtonLabel?: string;\n}\n\nexport type CreateUploadStoreKwArgs = CreateUploadStoreInitialStateKwArg;\n\nexport type UploadStore = UploadStoreActions & UploadStoreState;\nexport interface UploadStoreActions {\n destroy: () => Promise<void>;\n findNextStep: (currentStep: UPLOAD_STEP) => UPLOAD_STEP;\n findPreviousStep: (currentStep: UPLOAD_STEP) => UPLOAD_STEP;\n goToNextStep: () => Promise<void>;\n goToPreviousStep: () => void;\n invalidateCaseValidationQuery: () => Promise<void>;\n reset: () => Promise<void>;\n setCaseTypeId: (caseTypeId: string) => void;\n setCols: (cols: CaseDbCol[]) => void;\n setCompleteCaseType: (completeCaseType: CaseDbCompleteCaseType) => void;\n setCreatedInDataCollectionId: (createdInDataCollectionId: string) => void;\n setDataCollectionOptions: (options: OptionBase<string>[]) => void;\n setFileList: (fileList: FileList) => Promise<void>;\n\n setMappedColumns: (mappedColumns: UploadMappedColumn[]) => Promise<void>;\n setRawData: (rawData: string[][]) => Promise<void>;\n setSequenceFilesDataTransfer: (dataTransfer: DataTransfer) => void;\n setSequenceMapping: (sequenceMapping: UploadSequenceMapping) => void;\n setSheet: (sheet: string) => Promise<void>;\n setSheetOptions: (sheetOptions: AutoCompleteOption<string>[]) => Promise<void>;\n}\n\nexport interface UploadStoreState {\n activeStep: UPLOAD_STEP;\n assemblyProtocolId: string;\n caseRightsColMap: { [colId: string]: string[] };\n casesForVerificationFromSourceData: CaseDbCaseForUpload[];\n caseTypeId: string;\n cols: CaseDbCol[];\n completeCaseType: CaseDbCompleteCaseType;\n createdInDataCollectionId: string;\n createdInDataCollectionOptions: AutoCompleteOption<string>[];\n dataCollectionOptions: OptionBase<string>[];\n fileList: FileList;\n fileName: string;\n fileParsingError: string;\n goBackFromFirstStepCallback: () => void;\n goBackFromFirstStepLabel: string;\n initError: unknown;\n isInitLoading: boolean;\n mappedColumns: UploadMappedColumn[];\n onUploadComplete: (result: CaseDbCaseBatchUploadResult) => Promise<void> | void;\n rawData: string[][];\n sampleIdColId: string;\n selectedIdsForUpload: string[];\n sequenceFilesDataTransfer: DataTransfer;\n sequenceMapping: UploadSequenceMapping;\n sequencingProtocolId: string;\n sheet: string;\n sheetOptions: AutoCompleteOption<string>[];\n shouldResetColumnMapping: boolean;\n shouldResetSequenceMapping: boolean;\n stepOrder: UPLOAD_STEP[];\n uploadCompleteButtonCallback: () => void;\n uploadCompleteButtonLabel: string;\n validateCasesQueryKey: string[];\n validatedCases: CaseDbCaseUploadResult[];\n}\n\n\nconst createEpiUploadStoreInitialState: (kwArgs: CreateUploadStoreKwArgs) => UploadStoreState = (kwArgs) => ({\n activeStep: kwArgs.stepOrder[0],\n assemblyProtocolId: null,\n caseRightsColMap: kwArgs.caseRightsColMap ?? {},\n casesForVerificationFromSourceData: kwArgs.casesForVerificationFromSourceData ?? [],\n caseTypeId: null,\n cols: [],\n completeCaseType: kwArgs.completeCaseType ?? null,\n createdInDataCollectionId: null,\n createdInDataCollectionOptions: [],\n dataCollectionOptions: [],\n fileList: null,\n fileName: null,\n fileParsingError: null,\n goBackFromFirstStepCallback: kwArgs.goBackFromFirstStepCallback ?? null,\n goBackFromFirstStepLabel: kwArgs.goBackFromFirstStepLabel ?? null,\n initError: null,\n isInitLoading: true,\n mappedColumns: [],\n onUploadComplete: kwArgs.onUploadComplete ?? null,\n rawData: null,\n sampleIdColId: null,\n selectedIdsForUpload: [],\n sequenceFilesDataTransfer: new DataTransfer(),\n sequenceMapping: {},\n sequencingProtocolId: null,\n sheet: null,\n sheetOptions: [],\n shouldResetColumnMapping: false,\n shouldResetSequenceMapping: false,\n stepOrder: kwArgs.stepOrder,\n uploadCompleteButtonCallback: kwArgs.uploadCompleteButtonCallback ?? null,\n uploadCompleteButtonLabel: kwArgs.uploadCompleteButtonLabel ?? null,\n validateCasesQueryKey: QueryClientService.getInstance().getGenericKey(CASEDB_QUERY_KEY.VALIDATE_CASES, StringUtil.createUuid()),\n validatedCases: [],\n});\n\nexport const createUploadStore = (kwArgs: CreateUploadStoreKwArgs) => {\n const initialStateParams = { ...kwArgs };\n const initialState = createEpiUploadStoreInitialState(initialStateParams);\n const STEP_ORDER = kwArgs.stepOrder;\n\n return createStore<UploadStore>()((set, get) => {\n return {\n ...initialState,\n destroy: async () => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n },\n\n findNextStep: (currentStep: UPLOAD_STEP): UPLOAD_STEP => {\n const currentIndex = STEP_ORDER.indexOf(currentStep);\n if (currentIndex === -1 || currentIndex === STEP_ORDER.length - 1) {\n return null;\n }\n return STEP_ORDER[currentIndex + 1];\n },\n\n findPreviousStep: (currentStep: UPLOAD_STEP): UPLOAD_STEP => {\n const currentIndex = STEP_ORDER.indexOf(currentStep);\n if (currentIndex <= 0) {\n return null;\n }\n return STEP_ORDER[currentIndex - 1];\n },\n\n goToNextStep: async () => {\n const { activeStep, completeCaseType, createdInDataCollectionId, mappedColumns, rawData, sequenceFilesDataTransfer, sequenceMapping, setMappedColumns, shouldResetColumnMapping, shouldResetSequenceMapping, validatedCases } = get();\n\n let nextStep = get().findNextStep(activeStep);\n\n if (nextStep === UPLOAD_STEP.MAP_COLUMNS) {\n if (shouldResetColumnMapping && mappedColumns.length > 0) {\n NotificationService.getInstance().showNotification({\n isLoading: false,\n message: t`Column mappings have been reset due to changes in the selected case type or file.`,\n severity: 'info',\n });\n }\n if ((shouldResetColumnMapping && mappedColumns.length > 0) || mappedColumns.length === 0) {\n await setMappedColumns(UploadUtil.getInitialMappedColumns(completeCaseType, rawData));\n }\n }\n\n if (nextStep === UPLOAD_STEP.PREVIEW) {\n set({\n casesForVerificationFromSourceData: UploadUtil.getCasesForUpload({\n caseTypeId: completeCaseType.id,\n createdInDataCollectionId,\n mappedColumns,\n rawData,\n }),\n });\n }\n\n if (nextStep === UPLOAD_STEP.MAP_SEQUENCES) {\n if (shouldResetSequenceMapping && Object.keys(sequenceMapping).length > 0) {\n NotificationService.getInstance().showNotification({\n isLoading: false,\n message: t`Sequence mappings have been reset due to changes in the selected uploaded files.`,\n severity: 'info',\n });\n }\n if ((shouldResetSequenceMapping && sequenceMapping) || !sequenceMapping) {\n set({ sequenceMapping: UploadUtil.getEpiUploadSequenceMapping(completeCaseType, validatedCases, sequenceFilesDataTransfer) });\n }\n if (UploadUtil.getSequenceMappingStats(get().sequenceMapping, sequenceFilesDataTransfer).numberOfFilesToMap === 0) {\n nextStep = get().findNextStep(nextStep);\n }\n }\n\n if (nextStep !== null) {\n set({ activeStep: nextStep, shouldResetColumnMapping: false, shouldResetSequenceMapping: false });\n }\n },\n\n goToPreviousStep: () => {\n const { activeStep, sequenceFilesDataTransfer, sequenceMapping } = get();\n let previousStep = get().findPreviousStep(activeStep);\n if (previousStep === UPLOAD_STEP.MAP_SEQUENCES && UploadUtil.getSequenceMappingStats(sequenceMapping, sequenceFilesDataTransfer).numberOfFilesToMap === 0) {\n previousStep = get().findPreviousStep(previousStep);\n }\n\n if (previousStep !== null) {\n set({ activeStep: previousStep });\n }\n },\n\n invalidateCaseValidationQuery: async () => {\n const { validateCasesQueryKey } = get();\n\n await QueryClientService.getInstance().invalidateQueryKeys([validateCasesQueryKey]);\n QueryClientService.getInstance().removeQueries([validateCasesQueryKey]);\n },\n\n reset: async () => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n set(createEpiUploadStoreInitialState(initialStateParams));\n },\n\n setCaseTypeId: (caseTypeId: string) => {\n set({ caseTypeId });\n },\n\n setCols: (cols: CaseDbCol[]) => {\n set({ cols });\n },\n\n setCompleteCaseType: async (completeCaseType: CaseDbCompleteCaseType) => {\n const { completeCaseType: oldCompleteCaseType, createdInDataCollectionId, dataCollectionOptions, invalidateCaseValidationQuery } = get();\n set({ completeCaseType });\n if (completeCaseType && completeCaseType.id !== oldCompleteCaseType?.id) {\n await invalidateCaseValidationQuery();\n set({ shouldResetColumnMapping: true });\n const createdInDataCollectionOptions = dataCollectionOptions.filter(option => {\n const dataCollectionId = option.value;\n return completeCaseType.case_type_access_abacs[dataCollectionId]?.is_private && completeCaseType.case_type_access_abacs[dataCollectionId]?.add_case_set;\n });\n set({ createdInDataCollectionOptions });\n if (createdInDataCollectionOptions.length === 1) {\n set({ createdInDataCollectionId: createdInDataCollectionOptions[0].value });\n }\n\n // If the current createdInDataCollectionId is not valid for the new completeCaseType, reset it\n if (createdInDataCollectionId) {\n const isValid = createdInDataCollectionOptions.some(option => option.value === createdInDataCollectionId);\n if (!isValid) {\n set({ createdInDataCollectionId: null });\n }\n }\n }\n },\n\n setCreatedInDataCollectionId: (createdInDataCollectionId: string) => {\n set({ createdInDataCollectionId });\n },\n\n setDataCollectionOptions: (options: OptionBase<string>[]) => {\n set({ dataCollectionOptions: options });\n },\n\n setFileList: async (fileList: FileList) => {\n const { setRawData, setSheet, setSheetOptions } = get();\n\n const file = fileList?.length > 0 ? fileList[0] : null;\n set({ fileName: file?.name ?? null, fileParsingError: null, rawData: null, sheet: null });\n\n if (!file) {\n await setSheet(null);\n await setRawData(null);\n set({ fileList: null });\n return;\n }\n\n set({ fileList });\n try {\n if (!UploadUtil.isXlsxFile(file.name)) {\n const data = await UploadUtil.readRawData(fileList);\n await setRawData(data);\n }\n const sheetOptions = await UploadUtil.getSheetNameOptions(fileList);\n await setSheetOptions(sheetOptions);\n } catch (error) {\n console.log(error);\n await setSheet(null);\n await setSheetOptions([]);\n set({ fileList: null, fileParsingError: t('Error reading file') });\n }\n },\n\n setMappedColumns: async (mappedColumns: UploadMappedColumn[]) => {\n const { invalidateCaseValidationQuery } = get();\n await invalidateCaseValidationQuery();\n set({ mappedColumns });\n },\n\n setRawData: async (rawData: string[][]) => {\n const { cols, invalidateCaseValidationQuery, rawData: oldRawData, setCaseTypeId } = get();\n if (JSON.stringify(oldRawData) !== JSON.stringify(rawData)) {\n set({ shouldResetColumnMapping: true });\n await invalidateCaseValidationQuery();\n }\n set({ rawData });\n if (!rawData || rawData.length === 0) {\n return;\n }\n const bestMatchingCaseType = UploadUtil.getCaseTypeFromColumnLabels(cols, rawData[0]);\n if (bestMatchingCaseType) {\n setCaseTypeId(bestMatchingCaseType.id);\n }\n },\n\n setSequenceFilesDataTransfer: (dataTransfer: DataTransfer) => {\n const { sequenceFilesDataTransfer, sequenceMapping } = get();\n if (dataTransfer === sequenceFilesDataTransfer) {\n return;\n }\n set({ sequenceFilesDataTransfer: dataTransfer });\n if (sequenceMapping) {\n set({ shouldResetSequenceMapping: true });\n }\n },\n\n setSequenceMapping: (sequenceMapping: UploadSequenceMapping) => {\n set({ sequenceMapping });\n },\n\n setSheet: async (sheet: string) => {\n const { fileList, setRawData } = get();\n set({ fileParsingError: null, rawData: null, sheet });\n\n if (!sheet) {\n return;\n }\n try {\n // Call the callback with parsed data\n await setRawData(await UploadUtil.readRawData(fileList, sheet));\n } catch (error) {\n console.error('Error reading sheet', error);\n set({ sheet: null });\n set({ fileParsingError: t('Error reading sheet') });\n await setRawData(null);\n return;\n }\n },\n\n setSheetOptions: async (sheetOptions: AutoCompleteOption<string>[]) => {\n const { setSheet } = get();\n set({ sheetOptions });\n if (sheetOptions.length === 1) {\n await setSheet(sheetOptions[0].value);\n }\n },\n };\n });\n};\n","import { createContext } from 'react';\nimport type { StoreApi } from 'zustand';\n\nimport type { UploadStore } from './uploadStore';\n\nexport const UploadStoreContext = createContext<StoreApi<UploadStore>>(null);\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { CaseDbCaseBatchUploadResult, CaseDbCaseForUpload, CaseDbCaseUploadResult, CaseDbCol, CaseDbCompleteCaseType } from '@gen-epix/api-casedb';
2
- import { AutoCompleteOption, OptionBase } from '@gen-epix/ui-form/models/form';
2
+ import { AutoCompleteOption, OptionBase } from '@gen-epix/ui-core-form/models/form';
3
3
  import { UploadMappedColumn, UploadSequenceMapping, UPLOAD_STEP } from '../../models/upload';
4
4
  export declare const STEP_ORDER_UPLOAD: UPLOAD_STEP[];
5
5
  export declare const STEP_ORDER_BULK_EDIT: UPLOAD_STEP[];
@@ -2,8 +2,8 @@ import { h as e } from "../../_chunks/_MapCache.js";
2
2
  import { DashboardUtil as t } from "../../utils/DashboardUtil/index.js";
3
3
  import { t as n } from "../../_chunks/vanilla.js";
4
4
  import { n as r, r as i, t as a } from "../../_chunks/cloneDeep.js";
5
- import { ConfigService as o } from "@gen-epix/ui/classes/services/ConfigService";
6
- import { FormUtil as s } from "@gen-epix/ui-form/utils/FormUtil";
5
+ import { ConfigService as o } from "@gen-epix/ui-client-common/classes/services/ConfigService";
6
+ import { FormUtil as s } from "@gen-epix/ui-core-form/utils/FormUtil";
7
7
  //#region src/stores/userProfileStore/userProfileStore.ts
8
8
  var c = /* @__PURE__ */ e(a(), 1), l = () => {
9
9
  let e = o.getInstance().config.dashboard.WIDGETS, n = {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/stores/userProfileStore/userProfileStore.ts"],"sourcesContent":["import { createStore } from 'zustand';\nimport {\n createJSONStorage,\n persist,\n} from 'zustand/middleware';\nimport { ConfigService } from '@gen-epix/ui/classes/services/ConfigService';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { FormUtil } from '@gen-epix/ui-form/utils/FormUtil';\n\nimport type { DashboardArrangementConfig } from '../../models/dashboard';\nimport { DashboardUtil } from '../../utils/DashboardUtil';\nimport type { CaseDbConfig } from '../../models/config';\n\n\nexport type DashboardGeneralSettings = {\n isHighlightingEnabled: boolean;\n};\n\n\nexport type UserProfileStore = UserProfileStoreActions & UserProfileStoreState;\n\nexport interface UserProfileStoreActions {\n resetDashboardGeneralSettings: () => void;\n resetDashboardLayout: () => void;\n resetWidgetSettings: (widgetName: string) => void;\n setDashboardArrangementConfig: (config: DashboardArrangementConfig) => void;\n setDashboardGeneralSettings: (settings: DashboardGeneralSettings) => void;\n setDashboardPanelConfiguration: (id: string, configuration: string) => void;\n setWidgetSettings: (widgetName: string, settings: unknown) => void;\n}\n\nexport interface UserProfileStoreState {\n dashboardArrangementConfig: DashboardArrangementConfig;\n dashboardGeneralSettings: DashboardGeneralSettings;\n dashboardPanels: {\n [key: string]: string;\n };\n dashboardWidgetSettings: {\n [key: string]: unknown;\n };\n}\n\nexport const createUserProfileStoreInitialState: () => UserProfileStoreState = () => {\n const widgets = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n const dashboardWidgetSettings: UserProfileStoreState['dashboardWidgetSettings'] = {};\n for (const widgetName of Object.keys(widgets)) {\n dashboardWidgetSettings[widgetName] = cloneDeep(widgets[widgetName].configDefaultValues) ?? {};\n }\n\n return {\n dashboardArrangementConfig: DashboardUtil.createDashboardArrangementConfigInitialState(),\n dashboardGeneralSettings: {\n isHighlightingEnabled: true,\n },\n dashboardPanels: {},\n dashboardWidgetSettings,\n tableSettings: {},\n };\n};\n\nexport const createUserProfileStore = () => createStore<UserProfileStore>()(\n persist(\n (set, get) => {\n return {\n ...createUserProfileStoreInitialState(),\n resetDashboardGeneralSettings: () => {\n set({\n dashboardGeneralSettings: {\n isHighlightingEnabled: true,\n },\n });\n },\n resetDashboardLayout: () => {\n set({\n dashboardArrangementConfig: DashboardUtil.createDashboardArrangementConfigInitialState(),\n dashboardPanels: {},\n });\n },\n resetWidgetSettings: (widgetName: string) => {\n const dashboardWidgetSettings = get().dashboardWidgetSettings;\n set({\n dashboardWidgetSettings: {\n ...dashboardWidgetSettings,\n [widgetName]: ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS[widgetName].configDefaultValues ?? {},\n },\n });\n },\n setDashboardArrangementConfig: (config: DashboardArrangementConfig) => {\n const widgetsConfig = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n set({ dashboardArrangementConfig: DashboardUtil.removeInvalidWidgetAssignments(config, widgetsConfig) });\n },\n setDashboardGeneralSettings: (settings: DashboardGeneralSettings) => {\n set({ dashboardGeneralSettings: settings });\n },\n setDashboardPanelConfiguration: (id: string, configuration: string) => {\n const dashboardPanels = get().dashboardPanels;\n set({\n dashboardPanels: {\n ...dashboardPanels,\n [id]: configuration,\n },\n });\n },\n setWidgetSettings: (widgetName: string, settings: unknown) => {\n const dashboardWidgetSettings = get().dashboardWidgetSettings;\n set({\n dashboardWidgetSettings: {\n ...dashboardWidgetSettings,\n [widgetName]: settings,\n },\n });\n },\n };\n },\n {\n name: 'GENEPIX-User-Profile',\n onRehydrateStorage: () => (state) => {\n if (!state) {\n return;\n }\n const validatedConfig = DashboardUtil.validateAndMigrateArrangementConfig(state.dashboardArrangementConfig);\n if (validatedConfig !== state.dashboardArrangementConfig) {\n state.setDashboardArrangementConfig(validatedConfig);\n }\n\n const widgets = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n const initialWidgetSettings = createUserProfileStoreInitialState().dashboardWidgetSettings;\n for (const widgetName of Object.keys(state.dashboardWidgetSettings)) {\n const fieldDefs = widgets[widgetName]?.configFormFieldsDefinitions;\n if (!fieldDefs) {\n continue;\n }\n if (!FormUtil.areFormValuesValid(fieldDefs, state.dashboardWidgetSettings[widgetName])) {\n state.setWidgetSettings(widgetName, initialWidgetSettings[widgetName] ?? {});\n }\n }\n\n },\n partialize: (state) => ({\n dashboardArrangementConfig: state.dashboardArrangementConfig,\n dashboardGeneralSettings: state.dashboardGeneralSettings,\n dashboardPanels: state.dashboardPanels,\n dashboardWidgetSettings: state.dashboardWidgetSettings,\n }),\n storage: createJSONStorage(() => localStorage),\n version: 4,\n },\n ),\n);\n"],"mappings":";;;;;;;mCA0Ca,UAAwE;CACnF,IAAM,IAAU,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,SACrE,IAA4E,CAAC;CACnF,KAAK,IAAM,KAAc,OAAO,KAAK,CAAO,GAC1C,EAAwB,MAAA,GAAA,EAAA,QAAA,CAAwB,EAAQ,EAAW,CAAC,mBAAmB,KAAK,CAAC;CAG/F,OAAO;EACL,4BAA4B,EAAc,6CAA6C;EACvF,0BAA0B,EACxB,uBAAuB,GACzB;EACA,iBAAiB,CAAC;EAClB;EACA,eAAe,CAAC;CAClB;AACF,GAEa,UAA+B,EAA8B,CAAC,CACzE,GACG,GAAK,OACG;CACL,GAAG,EAAmC;CACtC,qCAAqC;EACnC,EAAI,EACF,0BAA0B,EACxB,uBAAuB,GACzB,EACF,CAAC;CACH;CACA,4BAA4B;EAC1B,EAAI;GACF,4BAA4B,EAAc,6CAA6C;GACvF,iBAAiB,CAAC;EACpB,CAAC;CACH;CACA,sBAAsB,MAAuB;EAC3C,IAAM,IAA0B,EAAI,CAAC,CAAC;EACtC,EAAI,EACF,yBAAyB;GACvB,GAAG;IACF,IAAa,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,QAAQ,EAAW,CAAC,uBAAuB,CAAC;EACvH,EACF,CAAC;CACH;CACA,gCAAgC,MAAuC;EACrE,IAAM,IAAgB,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU;EACjF,EAAI,EAAE,4BAA4B,EAAc,+BAA+B,GAAQ,CAAa,EAAE,CAAC;CACzG;CACA,8BAA8B,MAAuC;EACnE,EAAI,EAAE,0BAA0B,EAAS,CAAC;CAC5C;CACA,iCAAiC,GAAY,MAA0B;EACrE,IAAM,IAAkB,EAAI,CAAC,CAAC;EAC9B,EAAI,EACF,iBAAiB;GACf,GAAG;IACF,IAAK;EACR,EACF,CAAC;CACH;CACA,oBAAoB,GAAoB,MAAsB;EAC5D,IAAM,IAA0B,EAAI,CAAC,CAAC;EACtC,EAAI,EACF,yBAAyB;GACvB,GAAG;IACF,IAAa;EAChB,EACF,CAAC;CACH;AACF,IAEF;CACE,MAAM;CACN,2BAA2B,MAAU;EACnC,IAAI,CAAC,GACH;EAEF,IAAM,IAAkB,EAAc,oCAAoC,EAAM,0BAA0B;EAC1G,AAAI,MAAoB,EAAM,8BAC5B,EAAM,8BAA8B,CAAe;EAGrD,IAAM,IAAU,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,SACrE,IAAwB,EAAmC,CAAC,CAAC;EACnE,KAAK,IAAM,KAAc,OAAO,KAAK,EAAM,uBAAuB,GAAG;GACnE,IAAM,IAAY,EAAQ,EAAW,EAAE;GAClC,MAGA,EAAS,mBAAmB,GAAW,EAAM,wBAAwB,EAAW,KACnF,EAAM,kBAAkB,GAAY,EAAsB,MAAe,CAAC,CAAC;EAE/E;CAEF;CACA,aAAa,OAAW;EACtB,4BAA4B,EAAM;EAClC,0BAA0B,EAAM;EAChC,iBAAiB,EAAM;EACvB,yBAAyB,EAAM;CACjC;CACA,SAAS,QAAwB,YAAY;CAC7C,SAAS;AACX,CACF,CACF"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/stores/userProfileStore/userProfileStore.ts"],"sourcesContent":["import { createStore } from 'zustand';\nimport {\n createJSONStorage,\n persist,\n} from 'zustand/middleware';\nimport { ConfigService } from '@gen-epix/ui-client-common/classes/services/ConfigService';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { FormUtil } from '@gen-epix/ui-core-form/utils/FormUtil';\n\nimport type { DashboardArrangementConfig } from '../../models/dashboard';\nimport { DashboardUtil } from '../../utils/DashboardUtil';\nimport type { CaseDbConfig } from '../../models/config';\n\n\nexport type DashboardGeneralSettings = {\n isHighlightingEnabled: boolean;\n};\n\n\nexport type UserProfileStore = UserProfileStoreActions & UserProfileStoreState;\n\nexport interface UserProfileStoreActions {\n resetDashboardGeneralSettings: () => void;\n resetDashboardLayout: () => void;\n resetWidgetSettings: (widgetName: string) => void;\n setDashboardArrangementConfig: (config: DashboardArrangementConfig) => void;\n setDashboardGeneralSettings: (settings: DashboardGeneralSettings) => void;\n setDashboardPanelConfiguration: (id: string, configuration: string) => void;\n setWidgetSettings: (widgetName: string, settings: unknown) => void;\n}\n\nexport interface UserProfileStoreState {\n dashboardArrangementConfig: DashboardArrangementConfig;\n dashboardGeneralSettings: DashboardGeneralSettings;\n dashboardPanels: {\n [key: string]: string;\n };\n dashboardWidgetSettings: {\n [key: string]: unknown;\n };\n}\n\nexport const createUserProfileStoreInitialState: () => UserProfileStoreState = () => {\n const widgets = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n const dashboardWidgetSettings: UserProfileStoreState['dashboardWidgetSettings'] = {};\n for (const widgetName of Object.keys(widgets)) {\n dashboardWidgetSettings[widgetName] = cloneDeep(widgets[widgetName].configDefaultValues) ?? {};\n }\n\n return {\n dashboardArrangementConfig: DashboardUtil.createDashboardArrangementConfigInitialState(),\n dashboardGeneralSettings: {\n isHighlightingEnabled: true,\n },\n dashboardPanels: {},\n dashboardWidgetSettings,\n tableSettings: {},\n };\n};\n\nexport const createUserProfileStore = () => createStore<UserProfileStore>()(\n persist(\n (set, get) => {\n return {\n ...createUserProfileStoreInitialState(),\n resetDashboardGeneralSettings: () => {\n set({\n dashboardGeneralSettings: {\n isHighlightingEnabled: true,\n },\n });\n },\n resetDashboardLayout: () => {\n set({\n dashboardArrangementConfig: DashboardUtil.createDashboardArrangementConfigInitialState(),\n dashboardPanels: {},\n });\n },\n resetWidgetSettings: (widgetName: string) => {\n const dashboardWidgetSettings = get().dashboardWidgetSettings;\n set({\n dashboardWidgetSettings: {\n ...dashboardWidgetSettings,\n [widgetName]: ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS[widgetName].configDefaultValues ?? {},\n },\n });\n },\n setDashboardArrangementConfig: (config: DashboardArrangementConfig) => {\n const widgetsConfig = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n set({ dashboardArrangementConfig: DashboardUtil.removeInvalidWidgetAssignments(config, widgetsConfig) });\n },\n setDashboardGeneralSettings: (settings: DashboardGeneralSettings) => {\n set({ dashboardGeneralSettings: settings });\n },\n setDashboardPanelConfiguration: (id: string, configuration: string) => {\n const dashboardPanels = get().dashboardPanels;\n set({\n dashboardPanels: {\n ...dashboardPanels,\n [id]: configuration,\n },\n });\n },\n setWidgetSettings: (widgetName: string, settings: unknown) => {\n const dashboardWidgetSettings = get().dashboardWidgetSettings;\n set({\n dashboardWidgetSettings: {\n ...dashboardWidgetSettings,\n [widgetName]: settings,\n },\n });\n },\n };\n },\n {\n name: 'GENEPIX-User-Profile',\n onRehydrateStorage: () => (state) => {\n if (!state) {\n return;\n }\n const validatedConfig = DashboardUtil.validateAndMigrateArrangementConfig(state.dashboardArrangementConfig);\n if (validatedConfig !== state.dashboardArrangementConfig) {\n state.setDashboardArrangementConfig(validatedConfig);\n }\n\n const widgets = ConfigService.getInstance<CaseDbConfig>().config.dashboard.WIDGETS;\n const initialWidgetSettings = createUserProfileStoreInitialState().dashboardWidgetSettings;\n for (const widgetName of Object.keys(state.dashboardWidgetSettings)) {\n const fieldDefs = widgets[widgetName]?.configFormFieldsDefinitions;\n if (!fieldDefs) {\n continue;\n }\n if (!FormUtil.areFormValuesValid(fieldDefs, state.dashboardWidgetSettings[widgetName])) {\n state.setWidgetSettings(widgetName, initialWidgetSettings[widgetName] ?? {});\n }\n }\n\n },\n partialize: (state) => ({\n dashboardArrangementConfig: state.dashboardArrangementConfig,\n dashboardGeneralSettings: state.dashboardGeneralSettings,\n dashboardPanels: state.dashboardPanels,\n dashboardWidgetSettings: state.dashboardWidgetSettings,\n }),\n storage: createJSONStorage(() => localStorage),\n version: 4,\n },\n ),\n);\n"],"mappings":";;;;;;;mCA0Ca,UAAwE;CACnF,IAAM,IAAU,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,SACrE,IAA4E,CAAC;CACnF,KAAK,IAAM,KAAc,OAAO,KAAK,CAAO,GAC1C,EAAwB,MAAA,GAAc,EAAA,QAAA,CAAU,EAAQ,EAAW,CAAC,mBAAmB,KAAK,CAAC;CAG/F,OAAO;EACL,4BAA4B,EAAc,6CAA6C;EACvF,0BAA0B,EACxB,uBAAuB,GACzB;EACA,iBAAiB,CAAC;EAClB;EACA,eAAe,CAAC;CAClB;AACF,GAEa,UAA+B,EAA8B,CAAC,CACzE,GACG,GAAK,OACG;CACL,GAAG,EAAmC;CACtC,qCAAqC;EACnC,EAAI,EACF,0BAA0B,EACxB,uBAAuB,GACzB,EACF,CAAC;CACH;CACA,4BAA4B;EAC1B,EAAI;GACF,4BAA4B,EAAc,6CAA6C;GACvF,iBAAiB,CAAC;EACpB,CAAC;CACH;CACA,sBAAsB,MAAuB;EAC3C,IAAM,IAA0B,EAAI,CAAC,CAAC;EACtC,EAAI,EACF,yBAAyB;GACvB,GAAG;IACF,IAAa,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,QAAQ,EAAW,CAAC,uBAAuB,CAAC;EACvH,EACF,CAAC;CACH;CACA,gCAAgC,MAAuC;EACrE,IAAM,IAAgB,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU;EACjF,EAAI,EAAE,4BAA4B,EAAc,+BAA+B,GAAQ,CAAa,EAAE,CAAC;CACzG;CACA,8BAA8B,MAAuC;EACnE,EAAI,EAAE,0BAA0B,EAAS,CAAC;CAC5C;CACA,iCAAiC,GAAY,MAA0B;EACrE,IAAM,IAAkB,EAAI,CAAC,CAAC;EAC9B,EAAI,EACF,iBAAiB;GACf,GAAG;IACF,IAAK;EACR,EACF,CAAC;CACH;CACA,oBAAoB,GAAoB,MAAsB;EAC5D,IAAM,IAA0B,EAAI,CAAC,CAAC;EACtC,EAAI,EACF,yBAAyB;GACvB,GAAG;IACF,IAAa;EAChB,EACF,CAAC;CACH;AACF,IAEF;CACE,MAAM;CACN,2BAA2B,MAAU;EACnC,IAAI,CAAC,GACH;EAEF,IAAM,IAAkB,EAAc,oCAAoC,EAAM,0BAA0B;EAC1G,AAAI,MAAoB,EAAM,8BAC5B,EAAM,8BAA8B,CAAe;EAGrD,IAAM,IAAU,EAAc,YAA0B,CAAC,CAAC,OAAO,UAAU,SACrE,IAAwB,EAAmC,CAAC,CAAC;EACnE,KAAK,IAAM,KAAc,OAAO,KAAK,EAAM,uBAAuB,GAAG;GACnE,IAAM,IAAY,EAAQ,EAAW,EAAE;GAClC,MAGA,EAAS,mBAAmB,GAAW,EAAM,wBAAwB,EAAW,KACnF,EAAM,kBAAkB,GAAY,EAAsB,MAAe,CAAC,CAAC;EAE/E;CAEF;CACA,aAAa,OAAW;EACtB,4BAA4B,EAAM;EAClC,0BAA0B,EAAM;EAChC,iBAAiB,EAAM;EACvB,yBAAyB,EAAM;CACjC;CACA,SAAS,QAAwB,YAAY;CAC7C,SAAS;AACX,CACF,CACF"}
@@ -1,9 +1,9 @@
1
1
  import { createTheme as e, lighten as t } from "@mui/material";
2
- import { createDemoThemeOptions as n } from "@gen-epix/ui/theme/demoTheme";
2
+ import { createDemoThemeOptions as n } from "@gen-epix/ui-client-common/theme/demoTheme";
3
3
  //#region src/theme/demoTheme/demoTheme.ts
4
4
  var r = (e) => ({
5
5
  ...n(e),
6
- "gen-epix-ui-casedb": {
6
+ "gen-epix-ui-client-casedb": {
7
7
  lineList: { font: "0.8rem \"Noto Sans Mono\"" },
8
8
  tree: {
9
9
  color: "#000",