@gen-epix/ui-client-casedb 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (832) hide show
  1. package/LICENSE +287 -0
  2. package/README.md +101 -0
  3. package/dist/@types/mui.d.ts +12 -0
  4. package/dist/@types/ui-casedb.d.ts +3 -0
  5. package/dist/@types/vite-env.d.ts +3 -0
  6. package/dist/_chunks/AddCasesToEventDialog.js +246 -0
  7. package/dist/_chunks/AddCasesToEventDialog.js.map +1 -0
  8. package/dist/_chunks/CaseContentForm.js +43 -0
  9. package/dist/_chunks/CaseContentForm.js.map +1 -0
  10. package/dist/_chunks/CaseDbDownloadUtil.js +2307 -0
  11. package/dist/_chunks/CaseDbDownloadUtil.js.map +1 -0
  12. package/dist/_chunks/CaseInfoDialog.js +509 -0
  13. package/dist/_chunks/CaseInfoDialog.js.map +1 -0
  14. package/dist/_chunks/CaseSetInfoDialog.js +479 -0
  15. package/dist/_chunks/CaseSetInfoDialog.js.map +1 -0
  16. package/dist/_chunks/CaseTypeInfoDialog.js +470 -0
  17. package/dist/_chunks/CaseTypeInfoDialog.js.map +1 -0
  18. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js +123 -0
  19. package/dist/_chunks/CasesAlreadyInCaseSetWarning.js.map +1 -0
  20. package/dist/_chunks/CollectionIcon.js +18 -0
  21. package/dist/_chunks/CollectionIcon.js.map +1 -0
  22. package/dist/_chunks/CompletCaseTypeLoader.js +53 -0
  23. package/dist/_chunks/CompletCaseTypeLoader.js.map +1 -0
  24. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js +18 -0
  25. package/dist/_chunks/CreateEventDialogSuccessNotificationMessage.js.map +1 -0
  26. package/dist/_chunks/CustomTabPanel.js +21 -0
  27. package/dist/_chunks/CustomTabPanel.js.map +1 -0
  28. package/dist/_chunks/Dashboard.js +2582 -0
  29. package/dist/_chunks/Dashboard.js.map +1 -0
  30. package/dist/_chunks/DashboardStoreLoader.js +67 -0
  31. package/dist/_chunks/DashboardStoreLoader.js.map +1 -0
  32. package/dist/_chunks/DataCollectionAccessInfo.js +66 -0
  33. package/dist/_chunks/DataCollectionAccessInfo.js.map +1 -0
  34. package/dist/_chunks/EpiCurveUtil.js +378 -0
  35. package/dist/_chunks/EpiCurveUtil.js.map +1 -0
  36. package/dist/_chunks/EpiCurveWidget.js +570 -0
  37. package/dist/_chunks/EpiCurveWidget.js.map +1 -0
  38. package/dist/_chunks/FilterUtil.js +1537 -0
  39. package/dist/_chunks/FilterUtil.js.map +1 -0
  40. package/dist/_chunks/FindSimilarCasesDialog.js +439 -0
  41. package/dist/_chunks/FindSimilarCasesDialog.js.map +1 -0
  42. package/dist/_chunks/FindSimilarCasesUtil.js +100 -0
  43. package/dist/_chunks/FindSimilarCasesUtil.js.map +1 -0
  44. package/dist/_chunks/HomePageTrends.js +276 -0
  45. package/dist/_chunks/HomePageTrends.js.map +1 -0
  46. package/dist/_chunks/LegendaItem.js +325 -0
  47. package/dist/_chunks/LegendaItem.js.map +1 -0
  48. package/dist/_chunks/LineListWidget.js +702 -0
  49. package/dist/_chunks/LineListWidget.js.map +1 -0
  50. package/dist/_chunks/PanelSeparator.js +1676 -0
  51. package/dist/_chunks/PanelSeparator.js.map +1 -0
  52. package/dist/_chunks/Upload.js +1506 -0
  53. package/dist/_chunks/Upload.js.map +1 -0
  54. package/dist/_chunks/UploadUtil.js +1976 -0
  55. package/dist/_chunks/UploadUtil.js.map +1 -0
  56. package/dist/_chunks/UserRightsDialog.js +152 -0
  57. package/dist/_chunks/UserRightsDialog.js.map +1 -0
  58. package/dist/_chunks/_MapCache.js +274 -0
  59. package/dist/_chunks/_MapCache.js.map +1 -0
  60. package/dist/_chunks/_Set.js +9 -0
  61. package/dist/_chunks/_Set.js.map +1 -0
  62. package/dist/_chunks/_arrayIncludesWith.js +42 -0
  63. package/dist/_chunks/_arrayIncludesWith.js.map +1 -0
  64. package/dist/_chunks/_baseClone.js +262 -0
  65. package/dist/_chunks/_baseClone.js.map +1 -0
  66. package/dist/_chunks/_baseFlatten.js +26 -0
  67. package/dist/_chunks/_baseFlatten.js.map +1 -0
  68. package/dist/_chunks/_baseGet.js +246 -0
  69. package/dist/_chunks/_baseGet.js.map +1 -0
  70. package/dist/_chunks/_baseIteratee.js +246 -0
  71. package/dist/_chunks/_baseIteratee.js.map +1 -0
  72. package/dist/_chunks/_cacheHas.js +29 -0
  73. package/dist/_chunks/_cacheHas.js.map +1 -0
  74. package/dist/_chunks/_defineProperty.js +15 -0
  75. package/dist/_chunks/_defineProperty.js.map +1 -0
  76. package/dist/_chunks/_setToArray.js +15 -0
  77. package/dist/_chunks/_setToArray.js.map +1 -0
  78. package/dist/_chunks/_setToString.js +64 -0
  79. package/dist/_chunks/_setToString.js.map +1 -0
  80. package/dist/_chunks/chunk-KS7C4IRE.js +1327 -0
  81. package/dist/_chunks/chunk-KS7C4IRE.js.map +1 -0
  82. package/dist/_chunks/cloneDeep.js +119 -0
  83. package/dist/_chunks/cloneDeep.js.map +1 -0
  84. package/dist/_chunks/dashboardStore.js +743 -0
  85. package/dist/_chunks/dashboardStore.js.map +1 -0
  86. package/dist/_chunks/eachYearOfInterval.js +104 -0
  87. package/dist/_chunks/eachYearOfInterval.js.map +1 -0
  88. package/dist/_chunks/esm.js +46335 -0
  89. package/dist/_chunks/esm.js.map +1 -0
  90. package/dist/_chunks/format.js +504 -0
  91. package/dist/_chunks/format.js.map +1 -0
  92. package/dist/_chunks/hasIn.js +34 -0
  93. package/dist/_chunks/hasIn.js.map +1 -0
  94. package/dist/_chunks/index.esm.js +1342 -0
  95. package/dist/_chunks/index.esm.js.map +1 -0
  96. package/dist/_chunks/index.module.js +72 -0
  97. package/dist/_chunks/index.module.js.map +1 -0
  98. package/dist/_chunks/intersection.js +58 -0
  99. package/dist/_chunks/intersection.js.map +1 -0
  100. package/dist/_chunks/isArguments.js +27 -0
  101. package/dist/_chunks/isArguments.js.map +1 -0
  102. package/dist/_chunks/isArray.js +9 -0
  103. package/dist/_chunks/isArray.js.map +1 -0
  104. package/dist/_chunks/isArrayLike.js +30 -0
  105. package/dist/_chunks/isArrayLike.js.map +1 -0
  106. package/dist/_chunks/isObjectLike.js +18 -0
  107. package/dist/_chunks/isObjectLike.js.map +1 -0
  108. package/dist/_chunks/isValid.js +14 -0
  109. package/dist/_chunks/isValid.js.map +1 -0
  110. package/dist/_chunks/last.js +13 -0
  111. package/dist/_chunks/last.js.map +1 -0
  112. package/dist/_chunks/noop.js +10 -0
  113. package/dist/_chunks/noop.js.map +1 -0
  114. package/dist/_chunks/omit.js +81 -0
  115. package/dist/_chunks/omit.js.map +1 -0
  116. package/dist/_chunks/parseISO.js +117 -0
  117. package/dist/_chunks/parseISO.js.map +1 -0
  118. package/dist/_chunks/protectedTokens.js +630 -0
  119. package/dist/_chunks/protectedTokens.js.map +1 -0
  120. package/dist/_chunks/react.js +11 -0
  121. package/dist/_chunks/react.js.map +1 -0
  122. package/dist/_chunks/round.js +64 -0
  123. package/dist/_chunks/round.js.map +1 -0
  124. package/dist/_chunks/shallow.js +31 -0
  125. package/dist/_chunks/shallow.js.map +1 -0
  126. package/dist/_chunks/sync.js +3796 -0
  127. package/dist/_chunks/sync.js.map +1 -0
  128. package/dist/_chunks/toDate.js +18 -0
  129. package/dist/_chunks/toDate.js.map +1 -0
  130. package/dist/_chunks/toString.js +31 -0
  131. package/dist/_chunks/toString.js.map +1 -0
  132. package/dist/_chunks/useUnit.js +30 -0
  133. package/dist/_chunks/useUnit.js.map +1 -0
  134. package/dist/_chunks/userProfileStoreContext.js +7 -0
  135. package/dist/_chunks/userProfileStoreContext.js.map +1 -0
  136. package/dist/_chunks/vanilla.js +20 -0
  137. package/dist/_chunks/vanilla.js.map +1 -0
  138. package/dist/_chunks/yup.js +73 -0
  139. package/dist/_chunks/yup.js.map +1 -0
  140. package/dist/classes/errors/UploadError.d.ts +5 -0
  141. package/dist/classes/errors/index.d.ts +1 -0
  142. package/dist/classes/errors/index.js +11 -0
  143. package/dist/classes/errors/index.js.map +1 -0
  144. package/dist/classes/filters/SelectionFilter.d.ts +11 -0
  145. package/dist/classes/filters/TreeFilter.d.ts +11 -0
  146. package/dist/classes/services/DataService/DataService.d.ts +13 -0
  147. package/dist/classes/services/DataService/index.d.ts +1 -0
  148. package/dist/classes/services/DataService/index.js +83 -0
  149. package/dist/classes/services/DataService/index.js.map +1 -0
  150. package/dist/classes/services/EventBusService/EventBusService.d.ts +49 -0
  151. package/dist/classes/services/EventBusService/index.d.ts +1 -0
  152. package/dist/classes/services/EventBusService/index.js +16 -0
  153. package/dist/classes/services/EventBusService/index.js.map +1 -0
  154. package/dist/classes/services/LineListService/LineListCaseSetMembersService/LineListCaseSetMembersService.d.ts +9 -0
  155. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.d.ts +1 -0
  156. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.js +27 -0
  157. package/dist/classes/services/LineListService/LineListCaseSetMembersService/index.js.map +1 -0
  158. package/dist/classes/services/LineListService/LineListIsOwnCaseService/LineListIsOwnCaseService.d.ts +9 -0
  159. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.d.ts +1 -0
  160. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.js +30 -0
  161. package/dist/classes/services/LineListService/LineListIsOwnCaseService/index.js.map +1 -0
  162. package/dist/classes/services/LineListService/LineListServiceAbstract/LineListServiceAbstract.d.ts +11 -0
  163. package/dist/classes/services/LineListService/LineListServiceAbstract/index.d.ts +1 -0
  164. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js +55 -0
  165. package/dist/classes/services/LineListService/LineListServiceAbstract/index.js.map +1 -0
  166. package/dist/components/app/CaseDbApp/CaseDbApp.d.ts +1 -0
  167. package/dist/components/app/CaseDbApp/index.d.ts +1 -0
  168. package/dist/components/app/CaseDbApp/index.js +14 -0
  169. package/dist/components/app/CaseDbApp/index.js.map +1 -0
  170. package/dist/components/form/fields/ArrangementEditor/ArrangementEditor.d.ts +17 -0
  171. package/dist/components/form/fields/ArrangementEditor/index.d.ts +1 -0
  172. package/dist/components/form/fields/ArrangementEditor/index.js +130 -0
  173. package/dist/components/form/fields/ArrangementEditor/index.js.map +1 -0
  174. package/dist/components/ui/AddCasesToEventDialog/AddCasesToEventDialog.d.ts +10 -0
  175. package/dist/components/ui/AddCasesToEventDialog/AddCasesToEventDialogSuccessNotificationMessage.d.ts +6 -0
  176. package/dist/components/ui/AddCasesToEventDialog/index.d.ts +1 -0
  177. package/dist/components/ui/AddCasesToEventDialog/index.js +2 -0
  178. package/dist/components/ui/CaseContentForm/CaseContentForm.d.ts +10 -0
  179. package/dist/components/ui/CaseContentForm/index.d.ts +1 -0
  180. package/dist/components/ui/CaseContentForm/index.js +2 -0
  181. package/dist/components/ui/CaseContentFormDialog/CaseContentFormDialog.d.ts +9 -0
  182. package/dist/components/ui/CaseContentFormDialog/index.d.ts +1 -0
  183. package/dist/components/ui/CaseContentFormDialog/index.js +57 -0
  184. package/dist/components/ui/CaseContentFormDialog/index.js.map +1 -0
  185. package/dist/components/ui/CaseInfoDialog/CaseCaseSetInfo.d.ts +6 -0
  186. package/dist/components/ui/CaseInfoDialog/CaseContent.d.ts +6 -0
  187. package/dist/components/ui/CaseInfoDialog/CaseInfoDialog.d.ts +15 -0
  188. package/dist/components/ui/CaseInfoDialog/CaseInfoForm.d.ts +10 -0
  189. package/dist/components/ui/CaseInfoDialog/CaseSharingForm.d.ts +9 -0
  190. package/dist/components/ui/CaseInfoDialog/CaseSharingInfo.d.ts +3 -0
  191. package/dist/components/ui/CaseInfoDialog/ReadOnlyCaseContent.d.ts +6 -0
  192. package/dist/components/ui/CaseInfoDialog/index.d.ts +1 -0
  193. package/dist/components/ui/CaseInfoDialog/index.js +2 -0
  194. package/dist/components/ui/CaseSetInfoDialog/CaseSetContent.d.ts +6 -0
  195. package/dist/components/ui/CaseSetInfoDialog/CaseSetDescription.d.ts +6 -0
  196. package/dist/components/ui/CaseSetInfoDialog/CaseSetForm.d.ts +8 -0
  197. package/dist/components/ui/CaseSetInfoDialog/CaseSetInfoDialog.d.ts +10 -0
  198. package/dist/components/ui/CaseSetInfoDialog/CaseSetSharingForm.d.ts +10 -0
  199. package/dist/components/ui/CaseSetInfoDialog/CaseSetSharingInfo.d.ts +3 -0
  200. package/dist/components/ui/CaseSetInfoDialog/index.d.ts +1 -0
  201. package/dist/components/ui/CaseSetInfoDialog/index.js +2 -0
  202. package/dist/components/ui/CaseSummary/CaseSummary.d.ts +5 -0
  203. package/dist/components/ui/CaseSummary/index.d.ts +1 -0
  204. package/dist/components/ui/CaseSummary/index.js +92 -0
  205. package/dist/components/ui/CaseSummary/index.js.map +1 -0
  206. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoAccessRights.d.ts +5 -0
  207. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoColAccessRights.d.ts +4 -0
  208. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoData.d.ts +5 -0
  209. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialog.d.ts +7 -0
  210. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogContent.d.ts +3 -0
  211. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoDialogWithLoader.d.ts +8 -0
  212. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoRegions.d.ts +5 -0
  213. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoTrees.d.ts +5 -0
  214. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoValues.d.ts +5 -0
  215. package/dist/components/ui/CaseTypeInfoDialog/CaseTypeInfoVariableDetails.d.ts +6 -0
  216. package/dist/components/ui/CaseTypeInfoDialog/index.d.ts +10 -0
  217. package/dist/components/ui/CaseTypeInfoDialog/index.js +2 -0
  218. package/dist/components/ui/CasesAlreadyInCaseSetWarning/CasesAlreadyInCaseSetWarning.d.ts +5 -0
  219. package/dist/components/ui/CasesAlreadyInCaseSetWarning/CasesAlreadyInCaseSetWarningCaseSetLink.d.ts +5 -0
  220. package/dist/components/ui/CasesAlreadyInCaseSetWarning/index.d.ts +1 -0
  221. package/dist/components/ui/CasesAlreadyInCaseSetWarning/index.js +2 -0
  222. package/dist/components/ui/CompletCaseTypeLoader/CompletCaseTypeLoader.d.ts +7 -0
  223. package/dist/components/ui/CompletCaseTypeLoader/index.d.ts +1 -0
  224. package/dist/components/ui/CompletCaseTypeLoader/index.js +2 -0
  225. package/dist/components/ui/CompletCaseTypeLoader/withEpiCompleteCaseTypeLoader.d.ts +4 -0
  226. package/dist/components/ui/ContextMenu/ContextMenu.d.ts +20 -0
  227. package/dist/components/ui/ContextMenu/index.d.ts +1 -0
  228. package/dist/components/ui/ContextMenu/index.js +96 -0
  229. package/dist/components/ui/ContextMenu/index.js.map +1 -0
  230. package/dist/components/ui/CreateEventDialog/CreateEventDialog.d.ts +10 -0
  231. package/dist/components/ui/CreateEventDialog/CreateEventDialogSuccessNotificationMessage.d.ts +6 -0
  232. package/dist/components/ui/CreateEventDialog/index.d.ts +1 -0
  233. package/dist/components/ui/CreateEventDialog/index.js +278 -0
  234. package/dist/components/ui/CreateEventDialog/index.js.map +1 -0
  235. package/dist/components/ui/CustomTabPanel/CustomTabPanel.d.ts +6 -0
  236. package/dist/components/ui/CustomTabPanel/index.d.ts +1 -0
  237. package/dist/components/ui/CustomTabPanel/index.js +2 -0
  238. package/dist/components/ui/Dashboard/Dashboard.d.ts +1 -0
  239. package/dist/components/ui/Dashboard/DashboardContent.d.ts +6 -0
  240. package/dist/components/ui/Dashboard/DashboardDownloadSidebarItem.d.ts +6 -0
  241. package/dist/components/ui/Dashboard/DashboardGeneralSettingsForm.d.ts +1 -0
  242. package/dist/components/ui/Dashboard/DashboardLayoutRenderer.d.ts +9 -0
  243. package/dist/components/ui/Dashboard/DashboardLayoutSettingsForm.d.ts +4 -0
  244. package/dist/components/ui/Dashboard/DashboardSearch.d.ts +1 -0
  245. package/dist/components/ui/Dashboard/DashboardSearchSettings.d.ts +10 -0
  246. package/dist/components/ui/Dashboard/DashboardSettingsSidebarItem.d.ts +8 -0
  247. package/dist/components/ui/Dashboard/DashboardWidget.d.ts +12 -0
  248. package/dist/components/ui/Dashboard/DashboardWidgetPlaceHolder.d.ts +1 -0
  249. package/dist/components/ui/Dashboard/DashboardWidgetSettingsForm.d.ts +4 -0
  250. package/dist/components/ui/Dashboard/DashboardZoneContext.d.ts +1 -0
  251. package/dist/components/ui/Dashboard/context/DashboardContext.d.ts +12 -0
  252. package/dist/components/ui/Dashboard/context/DashboardContextProvider.d.ts +6 -0
  253. package/dist/components/ui/Dashboard/index.d.ts +2 -0
  254. package/dist/components/ui/Dashboard/index.js +2 -0
  255. package/dist/components/ui/DashboardEditCases/DashboardEditCases.d.ts +6 -0
  256. package/dist/components/ui/DashboardEditCases/index.d.ts +1 -0
  257. package/dist/components/ui/DashboardEditCases/index.js +70 -0
  258. package/dist/components/ui/DashboardEditCases/index.js.map +1 -0
  259. package/dist/components/ui/DashboardStoreLoader/DashboardStoreLoader.d.ts +7 -0
  260. package/dist/components/ui/DashboardStoreLoader/DashboardStoreLoaderContent.d.ts +8 -0
  261. package/dist/components/ui/DashboardStoreLoader/index.d.ts +2 -0
  262. package/dist/components/ui/DashboardStoreLoader/index.js +2 -0
  263. package/dist/components/ui/DashboardStoreLoader/withEpiDashboardStore.d.ts +4 -0
  264. package/dist/components/ui/DataCollectionAccessInfo/DataCollectionAccessInfo.d.ts +1 -0
  265. package/dist/components/ui/DataCollectionAccessInfo/index.d.ts +1 -0
  266. package/dist/components/ui/DataCollectionAccessInfo/index.js +2 -0
  267. package/dist/components/ui/EpiCurveWidget/EpiCurveBarChart.d.ts +21 -0
  268. package/dist/components/ui/EpiCurveWidget/EpiCurveStackedAreaChart.d.ts +22 -0
  269. package/dist/components/ui/EpiCurveWidget/EpiCurveWidget.d.ts +2 -0
  270. package/dist/components/ui/EpiCurveWidget/index.d.ts +1 -0
  271. package/dist/components/ui/EpiCurveWidget/index.js +2 -0
  272. package/dist/components/ui/FileSelector/FileSelector.d.ts +7 -0
  273. package/dist/components/ui/FileSelector/index.d.ts +1 -0
  274. package/dist/components/ui/FileSelector/index.js +206 -0
  275. package/dist/components/ui/FileSelector/index.js.map +1 -0
  276. package/dist/components/ui/FindSimilarCasesDialog/FindSimilarCasesDialog.d.ts +11 -0
  277. package/dist/components/ui/FindSimilarCasesDialog/FindSimilarCasesDialogDateRangeChart.d.ts +11 -0
  278. package/dist/components/ui/FindSimilarCasesDialog/index.d.ts +1 -0
  279. package/dist/components/ui/FindSimilarCasesDialog/index.js +2 -0
  280. package/dist/components/ui/Grouping/Grouping.d.ts +1 -0
  281. package/dist/components/ui/Grouping/index.d.ts +1 -0
  282. package/dist/components/ui/Grouping/index.js +102 -0
  283. package/dist/components/ui/Grouping/index.js.map +1 -0
  284. package/dist/components/ui/HistogramWidget/HistogramWidget.d.ts +1 -0
  285. package/dist/components/ui/HistogramWidget/index.d.ts +1 -0
  286. package/dist/components/ui/HistogramWidget/index.js +333 -0
  287. package/dist/components/ui/HistogramWidget/index.js.map +1 -0
  288. package/dist/components/ui/HomePageTrends/HomePageTrendCard.d.ts +9 -0
  289. package/dist/components/ui/HomePageTrends/HomePageTrends.d.ts +4 -0
  290. package/dist/components/ui/HomePageTrends/index.d.ts +1 -0
  291. package/dist/components/ui/HomePageTrends/index.js +2 -0
  292. package/dist/components/ui/LegendaItem/LegendaItem.d.ts +10 -0
  293. package/dist/components/ui/LegendaItem/index.d.ts +1 -0
  294. package/dist/components/ui/LegendaItem/index.js +2 -0
  295. package/dist/components/ui/LineListWidget/LineListWidget.d.ts +1 -0
  296. package/dist/components/ui/LineListWidget/LineListWidgetIsInEventCell.d.ts +6 -0
  297. package/dist/components/ui/LineListWidget/LineListWidgetIsOwnCaseCell.d.ts +6 -0
  298. package/dist/components/ui/LineListWidget/LineListWidgetPrimaryMenu.d.ts +5 -0
  299. package/dist/components/ui/LineListWidget/LineListWidgetSecondaryMenu.d.ts +1 -0
  300. package/dist/components/ui/LineListWidget/LineListWidgetTitle.d.ts +1 -0
  301. package/dist/components/ui/LineListWidget/index.d.ts +1 -0
  302. package/dist/components/ui/LineListWidget/index.js +2 -0
  303. package/dist/components/ui/LineListWidget/useEpiLineListWidgetEmitDownloadOptions.d.ts +1 -0
  304. package/dist/components/ui/MapWidget/MapWidget.d.ts +1 -0
  305. package/dist/components/ui/MapWidget/index.d.ts +1 -0
  306. package/dist/components/ui/MapWidget/index.js +302 -0
  307. package/dist/components/ui/MapWidget/index.js.map +1 -0
  308. package/dist/components/ui/PanelSeparator/PanelSeparatorHorizontal.d.ts +2 -0
  309. package/dist/components/ui/PanelSeparator/PanelSeparatorVertical.d.ts +2 -0
  310. package/dist/components/ui/PanelSeparator/index.d.ts +2 -0
  311. package/dist/components/ui/PanelSeparator/index.js +2 -0
  312. package/dist/components/ui/RemoveCasesFromEventDialog/RemoveCasesFromEventDialog.d.ts +10 -0
  313. package/dist/components/ui/RemoveCasesFromEventDialog/index.d.ts +1 -0
  314. package/dist/components/ui/RemoveCasesFromEventDialog/index.js +111 -0
  315. package/dist/components/ui/RemoveCasesFromEventDialog/index.js.map +1 -0
  316. package/dist/components/ui/RemoveFindSimilarCasesResultDialog/RemoveFindSimilarCasesResultDialog.d.ts +9 -0
  317. package/dist/components/ui/SequenceDownloadDialog/SequenceDownloadDialog.d.ts +10 -0
  318. package/dist/components/ui/SequenceDownloadDialog/index.d.ts +1 -0
  319. package/dist/components/ui/SequenceDownloadDialog/index.js +89 -0
  320. package/dist/components/ui/SequenceDownloadDialog/index.js.map +1 -0
  321. package/dist/components/ui/TreeDescription/TreeDescription.d.ts +5 -0
  322. package/dist/components/ui/TreeDescription/index.d.ts +1 -0
  323. package/dist/components/ui/TreeDescription/index.js +40 -0
  324. package/dist/components/ui/TreeDescription/index.js.map +1 -0
  325. package/dist/components/ui/TreeWidget/TreeWidget.d.ts +1 -0
  326. package/dist/components/ui/TreeWidget/index.d.ts +1 -0
  327. package/dist/components/ui/TreeWidget/index.js +404 -0
  328. package/dist/components/ui/TreeWidget/index.js.map +1 -0
  329. package/dist/components/ui/Upload/Upload.d.ts +1 -0
  330. package/dist/components/ui/Upload/UploadCaseResultTable.d.ts +18 -0
  331. package/dist/components/ui/Upload/UploadCreateCases.d.ts +1 -0
  332. package/dist/components/ui/Upload/UploadEditColumnValuesDialog.d.ts +12 -0
  333. package/dist/components/ui/Upload/UploadMapColumns.d.ts +1 -0
  334. package/dist/components/ui/Upload/UploadMapSequences.d.ts +1 -0
  335. package/dist/components/ui/Upload/UploadNavigation.d.ts +10 -0
  336. package/dist/components/ui/Upload/UploadPreview.d.ts +4 -0
  337. package/dist/components/ui/Upload/UploadPreviewNavigation.d.ts +5 -0
  338. package/dist/components/ui/Upload/UploadSelectFile.d.ts +1 -0
  339. package/dist/components/ui/Upload/UploadSelectSequenceFiles.d.ts +1 -0
  340. package/dist/components/ui/Upload/index.d.ts +1 -0
  341. package/dist/components/ui/Upload/index.js +2 -0
  342. package/dist/components/ui/UserRightsDialog/UserRightsDialog.d.ts +9 -0
  343. package/dist/components/ui/UserRightsDialog/UserRightsDialogCaseAccessPolicy.d.ts +5 -0
  344. package/dist/components/ui/UserRightsDialog/index.d.ts +1 -0
  345. package/dist/components/ui/UserRightsDialog/index.js +2 -0
  346. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/UsersEffectiveRightsDetailsDialog.d.ts +13 -0
  347. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.d.ts +1 -0
  348. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js +373 -0
  349. package/dist/components/ui/UsersEffectiveRightsDetailsDialog/index.js.map +1 -0
  350. package/dist/components/ui/Warning/Warning.d.ts +4 -0
  351. package/dist/components/ui/Warning/index.d.ts +1 -0
  352. package/dist/components/ui/Warning/index.js +29 -0
  353. package/dist/components/ui/Warning/index.js.map +1 -0
  354. package/dist/components/ui/WidgetHeaderIconButton/WidgetHeaderIconButton.d.ts +5 -0
  355. package/dist/components/ui/WidgetHeaderIconButton/index.d.ts +1 -0
  356. package/dist/components/ui/WidgetHeaderIconButton/index.js +24 -0
  357. package/dist/components/ui/WidgetHeaderIconButton/index.js.map +1 -0
  358. package/dist/components/ui/WidgetMenu/WidgetMenu.d.ts +6 -0
  359. package/dist/components/ui/WidgetMenu/index.d.ts +1 -0
  360. package/dist/components/ui/WidgetMenu/index.js +26 -0
  361. package/dist/components/ui/WidgetMenu/index.js.map +1 -0
  362. package/dist/components/ui/WidgetUnavailable/WidgetUnavailable.d.ts +6 -0
  363. package/dist/components/ui/WidgetUnavailable/index.d.ts +1 -0
  364. package/dist/components/ui/WidgetUnavailable/index.js +18 -0
  365. package/dist/components/ui/WidgetUnavailable/index.js.map +1 -0
  366. package/dist/constants/dashboard.d.ts +9 -0
  367. package/dist/constants/dashboard.js +14 -0
  368. package/dist/constants/dashboard.js.map +1 -0
  369. package/dist/constants/query.d.ts +62 -0
  370. package/dist/constants/query.js +163 -0
  371. package/dist/constants/query.js.map +1 -0
  372. package/dist/context/caseAbac/CaseAbacContext.d.ts +14 -0
  373. package/dist/context/caseAbac/CaseAbacContextProvider.d.ts +6 -0
  374. package/dist/context/caseAbac/index.d.ts +3 -0
  375. package/dist/context/caseAbac/useCaseAbacContext.d.ts +2 -0
  376. package/dist/context/caseTypeAbac/CaseTypeAbacContext.d.ts +14 -0
  377. package/dist/context/caseTypeAbac/CaseTypeAbacContextProvider.d.ts +6 -0
  378. package/dist/context/caseTypeAbac/index.d.ts +3 -0
  379. package/dist/context/caseTypeAbac/useCaseTypeAbacContext.d.ts +2 -0
  380. package/dist/dataHooks/useAssemblyProtocolsQuery/index.d.ts +1 -0
  381. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js +21 -0
  382. package/dist/dataHooks/useAssemblyProtocolsQuery/index.js.map +1 -0
  383. package/dist/dataHooks/useAssemblyProtocolsQuery/useAssemblyProtocolsQuery.d.ts +6 -0
  384. package/dist/dataHooks/useCaseRightsQuery/index.d.ts +1 -0
  385. package/dist/dataHooks/useCaseRightsQuery/index.js +17 -0
  386. package/dist/dataHooks/useCaseRightsQuery/index.js.map +1 -0
  387. package/dist/dataHooks/useCaseRightsQuery/useCaseRightsQuery.d.ts +3 -0
  388. package/dist/dataHooks/useCaseSetCategoriesQuery/index.d.ts +1 -0
  389. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js +22 -0
  390. package/dist/dataHooks/useCaseSetCategoriesQuery/index.js.map +1 -0
  391. package/dist/dataHooks/useCaseSetCategoriesQuery/useCaseSetCategoriesQuery.d.ts +6 -0
  392. package/dist/dataHooks/useCaseSetRightsQuery/index.d.ts +1 -0
  393. package/dist/dataHooks/useCaseSetRightsQuery/index.js +13 -0
  394. package/dist/dataHooks/useCaseSetRightsQuery/index.js.map +1 -0
  395. package/dist/dataHooks/useCaseSetRightsQuery/useCaseSetRightsQuery.d.ts +3 -0
  396. package/dist/dataHooks/useCaseSetStatsQuery/index.d.ts +1 -0
  397. package/dist/dataHooks/useCaseSetStatsQuery/index.js +19 -0
  398. package/dist/dataHooks/useCaseSetStatsQuery/index.js.map +1 -0
  399. package/dist/dataHooks/useCaseSetStatsQuery/useCaseSetStatsQuery.d.ts +5 -0
  400. package/dist/dataHooks/useCaseSetStatusesQuery/index.d.ts +1 -0
  401. package/dist/dataHooks/useCaseSetStatusesQuery/index.js +22 -0
  402. package/dist/dataHooks/useCaseSetStatusesQuery/index.js.map +1 -0
  403. package/dist/dataHooks/useCaseSetStatusesQuery/useCaseSetStatusesQuery.d.ts +6 -0
  404. package/dist/dataHooks/useCaseSetsQuery/index.d.ts +1 -0
  405. package/dist/dataHooks/useCaseSetsQuery/index.js +22 -0
  406. package/dist/dataHooks/useCaseSetsQuery/index.js.map +1 -0
  407. package/dist/dataHooks/useCaseSetsQuery/useCaseSetsQuery.d.ts +6 -0
  408. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.d.ts +1 -0
  409. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js +22 -0
  410. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/index.js.map +1 -0
  411. package/dist/dataHooks/useCaseTypeSetCategoriesQuery/useCaseTypeSetCategoriesQuery.d.ts +6 -0
  412. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.d.ts +1 -0
  413. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.js +21 -0
  414. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/index.js.map +1 -0
  415. package/dist/dataHooks/useCaseTypeSetCategoryPurposeQuery/useCaseTypeSetCategoryPurposeQuery.d.ts +4 -0
  416. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.d.ts +1 -0
  417. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js +13 -0
  418. package/dist/dataHooks/useCaseTypeSetMembersQuery/index.js.map +1 -0
  419. package/dist/dataHooks/useCaseTypeSetMembersQuery/useCaseTypeSetMembersQuery.d.ts +3 -0
  420. package/dist/dataHooks/useCaseTypeSetsQuery/index.d.ts +1 -0
  421. package/dist/dataHooks/useCaseTypeSetsQuery/index.js +25 -0
  422. package/dist/dataHooks/useCaseTypeSetsQuery/index.js.map +1 -0
  423. package/dist/dataHooks/useCaseTypeSetsQuery/useCaseTypeSetsQuery.d.ts +7 -0
  424. package/dist/dataHooks/useCaseTypeStatsQuery/index.d.ts +1 -0
  425. package/dist/dataHooks/useCaseTypeStatsQuery/index.js +13 -0
  426. package/dist/dataHooks/useCaseTypeStatsQuery/index.js.map +1 -0
  427. package/dist/dataHooks/useCaseTypeStatsQuery/useCaseTypeStatsQuery.d.ts +3 -0
  428. package/dist/dataHooks/useCaseTypesQuery/index.d.ts +1 -0
  429. package/dist/dataHooks/useCaseTypesQuery/index.js +24 -0
  430. package/dist/dataHooks/useCaseTypesQuery/index.js.map +1 -0
  431. package/dist/dataHooks/useCaseTypesQuery/useCaseTypesQuery.d.ts +9 -0
  432. package/dist/dataHooks/useColSetMembersQuery/index.d.ts +1 -0
  433. package/dist/dataHooks/useColSetMembersQuery/index.js +13 -0
  434. package/dist/dataHooks/useColSetMembersQuery/index.js.map +1 -0
  435. package/dist/dataHooks/useColSetMembersQuery/useColSetMembersQuery.d.ts +3 -0
  436. package/dist/dataHooks/useColSetsQuery/index.d.ts +1 -0
  437. package/dist/dataHooks/useColSetsQuery/index.js +21 -0
  438. package/dist/dataHooks/useColSetsQuery/index.js.map +1 -0
  439. package/dist/dataHooks/useColSetsQuery/useColSetsQuery.d.ts +6 -0
  440. package/dist/dataHooks/useColTypesQuery/index.d.ts +1 -0
  441. package/dist/dataHooks/useColTypesQuery/index.js +51 -0
  442. package/dist/dataHooks/useColTypesQuery/index.js.map +1 -0
  443. package/dist/dataHooks/useColTypesQuery/useColTypesQuery.d.ts +4 -0
  444. package/dist/dataHooks/useColsQuery/index.d.ts +1 -0
  445. package/dist/dataHooks/useColsQuery/index.js +27 -0
  446. package/dist/dataHooks/useColsQuery/index.js.map +1 -0
  447. package/dist/dataHooks/useColsQuery/useColsQuery.d.ts +7 -0
  448. package/dist/dataHooks/useConceptQuery/index.d.ts +1 -0
  449. package/dist/dataHooks/useConceptQuery/index.js +26 -0
  450. package/dist/dataHooks/useConceptQuery/index.js.map +1 -0
  451. package/dist/dataHooks/useConceptQuery/useConceptQuery.d.ts +7 -0
  452. package/dist/dataHooks/useConceptRelationTypeQuery/index.d.ts +1 -0
  453. package/dist/dataHooks/useConceptRelationTypeQuery/index.js +15 -0
  454. package/dist/dataHooks/useConceptRelationTypeQuery/index.js.map +1 -0
  455. package/dist/dataHooks/useConceptRelationTypeQuery/useConceptRelationTypeQuery.d.ts +4 -0
  456. package/dist/dataHooks/useConceptSetTypeQuery/index.d.ts +1 -0
  457. package/dist/dataHooks/useConceptSetTypeQuery/index.js +22 -0
  458. package/dist/dataHooks/useConceptSetTypeQuery/index.js.map +1 -0
  459. package/dist/dataHooks/useConceptSetTypeQuery/useConceptSetTypeQuery.d.ts +4 -0
  460. package/dist/dataHooks/useConceptSetsQuery/index.d.ts +1 -0
  461. package/dist/dataHooks/useConceptSetsQuery/index.js +21 -0
  462. package/dist/dataHooks/useConceptSetsQuery/index.js.map +1 -0
  463. package/dist/dataHooks/useConceptSetsQuery/useConceptSetsQuery.d.ts +6 -0
  464. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.d.ts +1 -0
  465. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js +13 -0
  466. package/dist/dataHooks/useDataCollectionSetMembersQuery/index.js.map +1 -0
  467. package/dist/dataHooks/useDataCollectionSetMembersQuery/useDataCollectionSetMembersQuery.d.ts +3 -0
  468. package/dist/dataHooks/useDataCollectionsQuery/index.d.ts +1 -0
  469. package/dist/dataHooks/useDataCollectionsQuery/index.js +22 -0
  470. package/dist/dataHooks/useDataCollectionsQuery/index.js.map +1 -0
  471. package/dist/dataHooks/useDataCollectionsQuery/useDataCollectionsQuery.d.ts +6 -0
  472. package/dist/dataHooks/useDimTypesQuery/index.d.ts +1 -0
  473. package/dist/dataHooks/useDimTypesQuery/index.js +26 -0
  474. package/dist/dataHooks/useDimTypesQuery/index.js.map +1 -0
  475. package/dist/dataHooks/useDimTypesQuery/useDimTypesQuery.d.ts +4 -0
  476. package/dist/dataHooks/useDimsQuery/index.d.ts +1 -0
  477. package/dist/dataHooks/useDimsQuery/index.js +26 -0
  478. package/dist/dataHooks/useDimsQuery/index.js.map +1 -0
  479. package/dist/dataHooks/useDimsQuery/useDimsQuery.d.ts +7 -0
  480. package/dist/dataHooks/useDiseasesQuery/index.d.ts +1 -0
  481. package/dist/dataHooks/useDiseasesQuery/index.js +21 -0
  482. package/dist/dataHooks/useDiseasesQuery/index.js.map +1 -0
  483. package/dist/dataHooks/useDiseasesQuery/useDiseasesQuery.d.ts +6 -0
  484. package/dist/dataHooks/useEtiologicalAgentsQuery/index.d.ts +1 -0
  485. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js +21 -0
  486. package/dist/dataHooks/useEtiologicalAgentsQuery/index.js.map +1 -0
  487. package/dist/dataHooks/useEtiologicalAgentsQuery/useEtiologicalAgentsQuery.d.ts +6 -0
  488. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.d.ts +1 -0
  489. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js +18 -0
  490. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/index.js.map +1 -0
  491. package/dist/dataHooks/useGeneticDistanceProtocolsQuery/useGeneticDistanceProtocolsQuery.d.ts +5 -0
  492. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.d.ts +1 -0
  493. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js +14 -0
  494. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/index.js.map +1 -0
  495. package/dist/dataHooks/useOrganizationAccessCasePoliciesQuery/useOrganizationAccessCasePoliciesQuery.d.ts +3 -0
  496. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.d.ts +1 -0
  497. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js +14 -0
  498. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/index.js.map +1 -0
  499. package/dist/dataHooks/useOrganizationShareCasePoliciesQuery/useOrganizationShareCasePoliciesQuery.d.ts +3 -0
  500. package/dist/dataHooks/useRefColsQuery/index.d.ts +1 -0
  501. package/dist/dataHooks/useRefColsQuery/index.js +22 -0
  502. package/dist/dataHooks/useRefColsQuery/index.js.map +1 -0
  503. package/dist/dataHooks/useRefColsQuery/useRefColsQuery.d.ts +6 -0
  504. package/dist/dataHooks/useRefColsValidationRulesQuery/index.d.ts +1 -0
  505. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js +13 -0
  506. package/dist/dataHooks/useRefColsValidationRulesQuery/index.js.map +1 -0
  507. package/dist/dataHooks/useRefColsValidationRulesQuery/useRefColsValidationRulesQuery.d.ts +3 -0
  508. package/dist/dataHooks/useRefDimsQuery/index.d.ts +1 -0
  509. package/dist/dataHooks/useRefDimsQuery/index.js +22 -0
  510. package/dist/dataHooks/useRefDimsQuery/index.js.map +1 -0
  511. package/dist/dataHooks/useRefDimsQuery/useRefDimsQuery.d.ts +6 -0
  512. package/dist/dataHooks/useRegionQuery/index.d.ts +1 -0
  513. package/dist/dataHooks/useRegionQuery/index.js +25 -0
  514. package/dist/dataHooks/useRegionQuery/index.js.map +1 -0
  515. package/dist/dataHooks/useRegionQuery/useRegionQuery.d.ts +7 -0
  516. package/dist/dataHooks/useRegionRelationTypeQuery/index.d.ts +1 -0
  517. package/dist/dataHooks/useRegionRelationTypeQuery/index.js +20 -0
  518. package/dist/dataHooks/useRegionRelationTypeQuery/index.js.map +1 -0
  519. package/dist/dataHooks/useRegionRelationTypeQuery/useRegionRelationTypeQuery.d.ts +4 -0
  520. package/dist/dataHooks/useRegionSetsQuery/index.d.ts +1 -0
  521. package/dist/dataHooks/useRegionSetsQuery/index.js +21 -0
  522. package/dist/dataHooks/useRegionSetsQuery/index.js.map +1 -0
  523. package/dist/dataHooks/useRegionSetsQuery/useRegionSetsQuery.d.ts +6 -0
  524. package/dist/dataHooks/useSequencingProtocolsQuery/index.d.ts +1 -0
  525. package/dist/dataHooks/useSequencingProtocolsQuery/index.js +21 -0
  526. package/dist/dataHooks/useSequencingProtocolsQuery/index.js.map +1 -0
  527. package/dist/dataHooks/useSequencingProtocolsQuery/useSequencingProtocolsQuery.d.ts +6 -0
  528. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.d.ts +1 -0
  529. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.js +42 -0
  530. package/dist/dataHooks/useTreeAlgorithmCodesQuery/index.js.map +1 -0
  531. package/dist/dataHooks/useTreeAlgorithmCodesQuery/useTreeAlgorithmCodesQuery.d.ts +4 -0
  532. package/dist/dataHooks/useUnitQuery/index.d.ts +1 -0
  533. package/dist/dataHooks/useUnitQuery/index.js +2 -0
  534. package/dist/dataHooks/useUnitQuery/useUnit.d.ts +4 -0
  535. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.d.ts +1 -0
  536. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js +14 -0
  537. package/dist/dataHooks/useUserAccessCasePoliciesQuery/index.js.map +1 -0
  538. package/dist/dataHooks/useUserAccessCasePoliciesQuery/useUserAccessCasePoliciesQuery.d.ts +3 -0
  539. package/dist/dataHooks/useUserEffectiveRightsQuery/index.d.ts +1 -0
  540. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js +83 -0
  541. package/dist/dataHooks/useUserEffectiveRightsQuery/index.js.map +1 -0
  542. package/dist/dataHooks/useUserEffectiveRightsQuery/useUserEffectiveRightsQuery.d.ts +16 -0
  543. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.d.ts +1 -0
  544. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js +14 -0
  545. package/dist/dataHooks/useUserShareCasePoliciesQuery/index.js.map +1 -0
  546. package/dist/dataHooks/useUserShareCasePoliciesQuery/useUserShareCasePoliciesQuery.d.ts +3 -0
  547. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.d.ts +1 -0
  548. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js +25 -0
  549. package/dist/hooks/useOrganizationCasePolicyNameFactory/index.js.map +1 -0
  550. package/dist/hooks/useOrganizationCasePolicyNameFactory/useOrganizationCasePolicyNameFactory.d.ts +3 -0
  551. package/dist/hooks/useUserCasePolicyNameFactory/index.d.ts +1 -0
  552. package/dist/hooks/useUserCasePolicyNameFactory/index.js +28 -0
  553. package/dist/hooks/useUserCasePolicyNameFactory/index.js.map +1 -0
  554. package/dist/hooks/useUserCasePolicyNameFactory/useUserCasePolicyNameFactory.d.ts +3 -0
  555. package/dist/locale/en.json +676 -0
  556. package/dist/locale/nl.json +676 -0
  557. package/dist/models/caseAccess.d.ts +15 -0
  558. package/dist/models/caseAccess.js +0 -0
  559. package/dist/models/caseDb.d.ts +96 -0
  560. package/dist/models/caseDb.js +8 -0
  561. package/dist/models/caseDb.js.map +1 -0
  562. package/dist/models/config.d.ts +70 -0
  563. package/dist/models/config.js +0 -0
  564. package/dist/models/dashboard.d.ts +91 -0
  565. package/dist/models/dashboard.js +10 -0
  566. package/dist/models/dashboard.js.map +1 -0
  567. package/dist/models/stratification.d.ts +40 -0
  568. package/dist/models/stratification.js +12 -0
  569. package/dist/models/stratification.js.map +1 -0
  570. package/dist/models/theme.d.ts +17 -0
  571. package/dist/models/theme.js +0 -0
  572. package/dist/models/upload.d.ts +51 -0
  573. package/dist/models/upload.js +8 -0
  574. package/dist/models/upload.js.map +1 -0
  575. package/dist/pages/CaseDbUsersAdminPage/CaseDbUsersAdminPage.d.ts +1 -0
  576. package/dist/pages/CaseDbUsersAdminPage/index.d.ts +1 -0
  577. package/dist/pages/CaseDbUsersAdminPage/index.js +67 -0
  578. package/dist/pages/CaseDbUsersAdminPage/index.js.map +1 -0
  579. package/dist/pages/CaseSetCategoryAdminPage/CaseSetCategoryAdminPage.d.ts +1 -0
  580. package/dist/pages/CaseSetCategoryAdminPage/index.d.ts +1 -0
  581. package/dist/pages/CaseSetCategoryAdminPage/index.js +69 -0
  582. package/dist/pages/CaseSetCategoryAdminPage/index.js.map +1 -0
  583. package/dist/pages/CaseSetStatusAdminPage/CaseSetStatusAdminPage.d.ts +1 -0
  584. package/dist/pages/CaseSetStatusAdminPage/index.d.ts +1 -0
  585. package/dist/pages/CaseSetStatusAdminPage/index.js +69 -0
  586. package/dist/pages/CaseSetStatusAdminPage/index.js.map +1 -0
  587. package/dist/pages/CaseTypeSetCategoriesAdminPage/CaseTypeSetCategoriesAdminPage.d.ts +1 -0
  588. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.d.ts +1 -0
  589. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js +92 -0
  590. package/dist/pages/CaseTypeSetCategoriesAdminPage/index.js.map +1 -0
  591. package/dist/pages/CaseTypeSetsAdminPage/CaseTypeSetsAdminPage.d.ts +1 -0
  592. package/dist/pages/CaseTypeSetsAdminPage/index.d.ts +1 -0
  593. package/dist/pages/CaseTypeSetsAdminPage/index.js +148 -0
  594. package/dist/pages/CaseTypeSetsAdminPage/index.js.map +1 -0
  595. package/dist/pages/CaseTypesAdminPage/CaseTypesAdminPage.d.ts +1 -0
  596. package/dist/pages/CaseTypesAdminPage/index.d.ts +1 -0
  597. package/dist/pages/CaseTypesAdminPage/index.js +288 -0
  598. package/dist/pages/CaseTypesAdminPage/index.js.map +1 -0
  599. package/dist/pages/CasesDetailPage/CasesDetailPage.d.ts +1 -0
  600. package/dist/pages/CasesDetailPage/index.d.ts +1 -0
  601. package/dist/pages/CasesDetailPage/index.js +41 -0
  602. package/dist/pages/CasesDetailPage/index.js.map +1 -0
  603. package/dist/pages/CasesPage/CasesPage.d.ts +1 -0
  604. package/dist/pages/CasesPage/index.d.ts +1 -0
  605. package/dist/pages/CasesPage/index.js +229 -0
  606. package/dist/pages/CasesPage/index.js.map +1 -0
  607. package/dist/pages/ColSetsAdminPage/ColSetsAdminPage.d.ts +1 -0
  608. package/dist/pages/ColSetsAdminPage/index.d.ts +1 -0
  609. package/dist/pages/ColSetsAdminPage/index.js +109 -0
  610. package/dist/pages/ColSetsAdminPage/index.js.map +1 -0
  611. package/dist/pages/ColsAdminPage/ColsAdminPage.d.ts +1 -0
  612. package/dist/pages/ColsAdminPage/index.d.ts +1 -0
  613. package/dist/pages/ColsAdminPage/index.js +315 -0
  614. package/dist/pages/ColsAdminPage/index.js.map +1 -0
  615. package/dist/pages/ConceptRelationsAdminPage/ConceptRelationsAdminPage.d.ts +1 -0
  616. package/dist/pages/ConceptRelationsAdminPage/index.d.ts +1 -0
  617. package/dist/pages/ConceptRelationsAdminPage/index.js +103 -0
  618. package/dist/pages/ConceptRelationsAdminPage/index.js.map +1 -0
  619. package/dist/pages/ConceptSetsAdminPage/ConceptSetsAdminPage.d.ts +1 -0
  620. package/dist/pages/ConceptSetsAdminPage/index.d.ts +1 -0
  621. package/dist/pages/ConceptSetsAdminPage/index.js +112 -0
  622. package/dist/pages/ConceptSetsAdminPage/index.js.map +1 -0
  623. package/dist/pages/ConceptsAdminPage/ConceptsAdminPage.d.ts +1 -0
  624. package/dist/pages/ConceptsAdminPage/index.d.ts +1 -0
  625. package/dist/pages/ConceptsAdminPage/index.js +94 -0
  626. package/dist/pages/ConceptsAdminPage/index.js.map +1 -0
  627. package/dist/pages/DataCollectionSetsAdminPage/DataCollectionSetsAdminPage.d.ts +1 -0
  628. package/dist/pages/DataCollectionSetsAdminPage/index.d.ts +1 -0
  629. package/dist/pages/DataCollectionSetsAdminPage/index.js +99 -0
  630. package/dist/pages/DataCollectionSetsAdminPage/index.js.map +1 -0
  631. package/dist/pages/DataCollectionVisualizationPage/DataCollectionVisualizationPage.d.ts +1 -0
  632. package/dist/pages/DataCollectionVisualizationPage/index.d.ts +1 -0
  633. package/dist/pages/DataCollectionVisualizationPage/index.js +494 -0
  634. package/dist/pages/DataCollectionVisualizationPage/index.js.map +1 -0
  635. package/dist/pages/DataCollectionsAdminPage/DataCollectionsAdminPage.d.ts +1 -0
  636. package/dist/pages/DataCollectionsAdminPage/index.d.ts +1 -0
  637. package/dist/pages/DataCollectionsAdminPage/index.js +54 -0
  638. package/dist/pages/DataCollectionsAdminPage/index.js.map +1 -0
  639. package/dist/pages/DimsAdminPage/DimsAdminPage.d.ts +1 -0
  640. package/dist/pages/DimsAdminPage/index.d.ts +1 -0
  641. package/dist/pages/DimsAdminPage/index.js +146 -0
  642. package/dist/pages/DimsAdminPage/index.js.map +1 -0
  643. package/dist/pages/DiseasesAdminPage/DiseasesAdminPage.d.ts +1 -0
  644. package/dist/pages/DiseasesAdminPage/index.d.ts +1 -0
  645. package/dist/pages/DiseasesAdminPage/index.js +57 -0
  646. package/dist/pages/DiseasesAdminPage/index.js.map +1 -0
  647. package/dist/pages/EtiologicalAgentsAdminPage/EtiologicalAgentsAdminPage.d.ts +1 -0
  648. package/dist/pages/EtiologicalAgentsAdminPage/index.d.ts +1 -0
  649. package/dist/pages/EtiologicalAgentsAdminPage/index.js +54 -0
  650. package/dist/pages/EtiologicalAgentsAdminPage/index.js.map +1 -0
  651. package/dist/pages/EtiologiesAdminPage/EtiologiesAdminPage.d.ts +1 -0
  652. package/dist/pages/EtiologiesAdminPage/index.d.ts +1 -0
  653. package/dist/pages/EtiologiesAdminPage/index.js +76 -0
  654. package/dist/pages/EtiologiesAdminPage/index.js.map +1 -0
  655. package/dist/pages/EventsDetailPage/EventsDetailPage.d.ts +1 -0
  656. package/dist/pages/EventsDetailPage/index.d.ts +1 -0
  657. package/dist/pages/EventsDetailPage/index.js +56 -0
  658. package/dist/pages/EventsDetailPage/index.js.map +1 -0
  659. package/dist/pages/EventsPage/EventsPage.d.ts +1 -0
  660. package/dist/pages/EventsPage/index.d.ts +1 -0
  661. package/dist/pages/EventsPage/index.js +221 -0
  662. package/dist/pages/EventsPage/index.js.map +1 -0
  663. package/dist/pages/HomePage/HomePage.d.ts +1 -0
  664. package/dist/pages/HomePage/index.d.ts +1 -0
  665. package/dist/pages/HomePage/index.js +35 -0
  666. package/dist/pages/HomePage/index.js.map +1 -0
  667. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/OrganizationAccessCasePoliciesAdminPage.d.ts +1 -0
  668. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.d.ts +1 -0
  669. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js +216 -0
  670. package/dist/pages/OrganizationAccessCasePoliciesAdminPage/index.js.map +1 -0
  671. package/dist/pages/OrganizationShareCasePoliciesAdminPage/OrganizationShareCasePoliciesAdminPage.d.ts +1 -0
  672. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.d.ts +1 -0
  673. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js +170 -0
  674. package/dist/pages/OrganizationShareCasePoliciesAdminPage/index.js.map +1 -0
  675. package/dist/pages/RefColsAdminPage/RefColsAdminPage.d.ts +1 -0
  676. package/dist/pages/RefColsAdminPage/index.d.ts +1 -0
  677. package/dist/pages/RefColsAdminPage/index.js +302 -0
  678. package/dist/pages/RefColsAdminPage/index.js.map +1 -0
  679. package/dist/pages/RefDimsAdminPage/RefDimsAdminPage.d.ts +1 -0
  680. package/dist/pages/RefDimsAdminPage/index.d.ts +1 -0
  681. package/dist/pages/RefDimsAdminPage/index.js +110 -0
  682. package/dist/pages/RefDimsAdminPage/index.js.map +1 -0
  683. package/dist/pages/RegionRelationsAdminPage/RegionRelationsAdminPage.d.ts +1 -0
  684. package/dist/pages/RegionRelationsAdminPage/index.d.ts +1 -0
  685. package/dist/pages/RegionRelationsAdminPage/index.js +102 -0
  686. package/dist/pages/RegionRelationsAdminPage/index.js.map +1 -0
  687. package/dist/pages/RegionSetShapesAdminPage/RegionSetShapesAdminPage.d.ts +1 -0
  688. package/dist/pages/RegionSetShapesAdminPage/index.d.ts +1 -0
  689. package/dist/pages/RegionSetShapesAdminPage/index.js +73 -0
  690. package/dist/pages/RegionSetShapesAdminPage/index.js.map +1 -0
  691. package/dist/pages/RegionSetsAdminPage/RegionSetsAdminPage.d.ts +1 -0
  692. package/dist/pages/RegionSetsAdminPage/index.d.ts +1 -0
  693. package/dist/pages/RegionSetsAdminPage/index.js +101 -0
  694. package/dist/pages/RegionSetsAdminPage/index.js.map +1 -0
  695. package/dist/pages/RegionsAdminPage/RegionsAdminPage.d.ts +1 -0
  696. package/dist/pages/RegionsAdminPage/index.d.ts +1 -0
  697. package/dist/pages/RegionsAdminPage/index.js +99 -0
  698. package/dist/pages/RegionsAdminPage/index.js.map +1 -0
  699. package/dist/pages/TrendsPage/TrendsPage.d.ts +1 -0
  700. package/dist/pages/TrendsPage/index.d.ts +1 -0
  701. package/dist/pages/TrendsPage/index.js +17 -0
  702. package/dist/pages/TrendsPage/index.js.map +1 -0
  703. package/dist/pages/UploadPage/UploadPage.d.ts +1 -0
  704. package/dist/pages/UploadPage/index.d.ts +1 -0
  705. package/dist/pages/UploadPage/index.js +31 -0
  706. package/dist/pages/UploadPage/index.js.map +1 -0
  707. package/dist/pages/UserAccessCasePoliciesAdminPage/UserAccessCasePoliciesAdminPage.d.ts +1 -0
  708. package/dist/pages/UserAccessCasePoliciesAdminPage/index.d.ts +1 -0
  709. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js +206 -0
  710. package/dist/pages/UserAccessCasePoliciesAdminPage/index.js.map +1 -0
  711. package/dist/pages/UserEffectiveRightsAdminPage/UserEffectiveRightsAdminPage.d.ts +1 -0
  712. package/dist/pages/UserEffectiveRightsAdminPage/index.d.ts +1 -0
  713. package/dist/pages/UserEffectiveRightsAdminPage/index.js +246 -0
  714. package/dist/pages/UserEffectiveRightsAdminPage/index.js.map +1 -0
  715. package/dist/pages/UserEffectiveRightsTesterAdminPage/UserEffectiveRightsTesterAdminPage.d.ts +1 -0
  716. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.d.ts +1 -0
  717. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js +195 -0
  718. package/dist/pages/UserEffectiveRightsTesterAdminPage/index.js.map +1 -0
  719. package/dist/pages/UserShareCasePoliciesAdminPage/UserShareCasePoliciesAdminPage.d.ts +1 -0
  720. package/dist/pages/UserShareCasePoliciesAdminPage/index.d.ts +1 -0
  721. package/dist/pages/UserShareCasePoliciesAdminPage/index.js +169 -0
  722. package/dist/pages/UserShareCasePoliciesAdminPage/index.js.map +1 -0
  723. package/dist/routes/adminRoutes.d.ts +6 -0
  724. package/dist/routes/index.d.ts +2 -0
  725. package/dist/routes/index.js +1110 -0
  726. package/dist/routes/index.js.map +1 -0
  727. package/dist/routes/routes.d.ts +6 -0
  728. package/dist/setup/setup.d.ts +1 -0
  729. package/dist/setup/setup.js +28 -0
  730. package/dist/setup/setup.js.map +1 -0
  731. package/dist/stores/dashboardStore/dashboardStore.d.ts +80 -0
  732. package/dist/stores/dashboardStore/dashboardStoreContext.d.ts +3 -0
  733. package/dist/stores/dashboardStore/index.d.ts +2 -0
  734. package/dist/stores/dashboardStore/index.js +2 -0
  735. package/dist/stores/uploadStore/index.d.ts +2 -0
  736. package/dist/stores/uploadStore/index.js +185 -0
  737. package/dist/stores/uploadStore/index.js.map +1 -0
  738. package/dist/stores/uploadStore/uploadStore.d.ts +80 -0
  739. package/dist/stores/uploadStore/uploadStoreContext.d.ts +3 -0
  740. package/dist/stores/userProfileStore/index.d.ts +1 -0
  741. package/dist/stores/userProfileStore/index.js +81 -0
  742. package/dist/stores/userProfileStore/index.js.map +1 -0
  743. package/dist/stores/userProfileStore/userProfileStore.d.ts +38 -0
  744. package/dist/stores/userProfileStore/userProfileStoreContext.d.ts +3 -0
  745. package/dist/theme/demoTheme/demoTheme.d.ts +3 -0
  746. package/dist/theme/demoTheme/index.d.ts +1 -0
  747. package/dist/theme/demoTheme/index.js +20 -0
  748. package/dist/theme/demoTheme/index.js.map +1 -0
  749. package/dist/utils/AbacUtil/AbacUtil.d.ts +7 -0
  750. package/dist/utils/AbacUtil/index.d.ts +1 -0
  751. package/dist/utils/AbacUtil/index.js +31 -0
  752. package/dist/utils/AbacUtil/index.js.map +1 -0
  753. package/dist/utils/CaseDbDataUtil/CaseDbDataUtil.d.ts +31 -0
  754. package/dist/utils/CaseDbDataUtil/index.d.ts +1 -0
  755. package/dist/utils/CaseDbDataUtil/index.js +43 -0
  756. package/dist/utils/CaseDbDataUtil/index.js.map +1 -0
  757. package/dist/utils/CaseDbDownloadUtil/CaseDbDownloadUtil.d.ts +17 -0
  758. package/dist/utils/CaseDbDownloadUtil/index.d.ts +1 -0
  759. package/dist/utils/CaseDbDownloadUtil/index.js +2 -0
  760. package/dist/utils/CaseDbStandardConfigUtil/CaseDbStandardConfigUtil.d.ts +7 -0
  761. package/dist/utils/CaseDbStandardConfigUtil/index.d.ts +1 -0
  762. package/dist/utils/CaseDbStandardConfigUtil/index.js +4778 -0
  763. package/dist/utils/CaseDbStandardConfigUtil/index.js.map +1 -0
  764. package/dist/utils/CaseDbTableUtil/CaseDbTableUtil.d.ts +6 -0
  765. package/dist/utils/CaseDbTableUtil/index.d.ts +1 -0
  766. package/dist/utils/CaseDbTableUtil/index.js +41 -0
  767. package/dist/utils/CaseDbTableUtil/index.js.map +1 -0
  768. package/dist/utils/CaseSelectionUtil/CaseSelectionUtil.d.ts +8 -0
  769. package/dist/utils/CaseSelectionUtil/index.d.ts +1 -0
  770. package/dist/utils/CaseSelectionUtil/index.js +29 -0
  771. package/dist/utils/CaseSelectionUtil/index.js.map +1 -0
  772. package/dist/utils/CaseSetUtil/CaseSetUtil.d.ts +4 -0
  773. package/dist/utils/CaseSetUtil/index.d.ts +1 -0
  774. package/dist/utils/CaseSetUtil/index.js +13 -0
  775. package/dist/utils/CaseSetUtil/index.js.map +1 -0
  776. package/dist/utils/CaseTypeFormUtil/CaseTypeFormUtil.d.ts +20 -0
  777. package/dist/utils/CaseTypeFormUtil/index.d.ts +1 -0
  778. package/dist/utils/CaseTypeFormUtil/index.js +199 -0
  779. package/dist/utils/CaseTypeFormUtil/index.js.map +1 -0
  780. package/dist/utils/CaseTypeUtil/CaseTypeUtil.d.ts +39 -0
  781. package/dist/utils/CaseTypeUtil/index.d.ts +1 -0
  782. package/dist/utils/CaseTypeUtil/index.js +135 -0
  783. package/dist/utils/CaseTypeUtil/index.js.map +1 -0
  784. package/dist/utils/CaseUtil/CaseUtil.d.ts +18 -0
  785. package/dist/utils/CaseUtil/index.d.ts +1 -0
  786. package/dist/utils/CaseUtil/index.js +138 -0
  787. package/dist/utils/CaseUtil/index.js.map +1 -0
  788. package/dist/utils/DashboardUtil/DashboardUtil.d.ts +29 -0
  789. package/dist/utils/DashboardUtil/index.d.ts +1 -0
  790. package/dist/utils/DashboardUtil/index.js +152 -0
  791. package/dist/utils/DashboardUtil/index.js.map +1 -0
  792. package/dist/utils/DataSetUtil/DataSetUtil.d.ts +17 -0
  793. package/dist/utils/DataSetUtil/index.d.ts +1 -0
  794. package/dist/utils/DataSetUtil/index.js +43 -0
  795. package/dist/utils/DataSetUtil/index.js.map +1 -0
  796. package/dist/utils/EffectiveRightsUtil/EffectiveRightsUtil.d.ts +29 -0
  797. package/dist/utils/EffectiveRightsUtil/index.d.ts +1 -0
  798. package/dist/utils/EffectiveRightsUtil/index.js +118 -0
  799. package/dist/utils/EffectiveRightsUtil/index.js.map +1 -0
  800. package/dist/utils/EpiCurveUtil/EpiCurveUtil.d.ts +96 -0
  801. package/dist/utils/EpiCurveUtil/index.d.ts +1 -0
  802. package/dist/utils/EpiCurveUtil/index.js +2 -0
  803. package/dist/utils/FileUtil/FileUtil.d.ts +5 -0
  804. package/dist/utils/FileUtil/index.d.ts +1 -0
  805. package/dist/utils/FileUtil/index.js +15 -0
  806. package/dist/utils/FileUtil/index.js.map +1 -0
  807. package/dist/utils/FilterUtil/FilterUtil.d.ts +11 -0
  808. package/dist/utils/FilterUtil/index.d.ts +1 -0
  809. package/dist/utils/FilterUtil/index.js +2 -0
  810. package/dist/utils/FindSimilarCasesUtil/FindSimilarCasesUtil.d.ts +7 -0
  811. package/dist/utils/FindSimilarCasesUtil/index.d.ts +1 -0
  812. package/dist/utils/FindSimilarCasesUtil/index.js +2 -0
  813. package/dist/utils/HistogramUtil/HistogramUtil.d.ts +78 -0
  814. package/dist/utils/HistogramUtil/index.d.ts +1 -0
  815. package/dist/utils/HistogramUtil/index.js +145 -0
  816. package/dist/utils/HistogramUtil/index.js.map +1 -0
  817. package/dist/utils/MapUtil/MapUtil.d.ts +38 -0
  818. package/dist/utils/MapUtil/index.d.ts +1 -0
  819. package/dist/utils/MapUtil/index.js +210 -0
  820. package/dist/utils/MapUtil/index.js.map +1 -0
  821. package/dist/utils/StratificationUtil/StratificationUtil.d.ts +25 -0
  822. package/dist/utils/StratificationUtil/index.d.ts +1 -0
  823. package/dist/utils/StratificationUtil/index.js +198 -0
  824. package/dist/utils/StratificationUtil/index.js.map +1 -0
  825. package/dist/utils/TreeWidgetUtil/TreeWidgetUtil.d.ts +7 -0
  826. package/dist/utils/TreeWidgetUtil/index.d.ts +1 -0
  827. package/dist/utils/TreeWidgetUtil/index.js +35 -0
  828. package/dist/utils/TreeWidgetUtil/index.js.map +1 -0
  829. package/dist/utils/UploadUtil/UploadUtil.d.ts +106 -0
  830. package/dist/utils/UploadUtil/index.d.ts +1 -0
  831. package/dist/utils/UploadUtil/index.js +2 -0
  832. package/package.json +784 -0
@@ -0,0 +1,6 @@
1
+ import { CaseDbCase, CaseDbCol, CaseDbCompleteCaseType } from '@gen-epix/api-casedb';
2
+ import { GetTableCellRowComparatorProps, GetTableCellValueProps, TableColumnText } from '@gen-epix/ui/models/table';
3
+ export declare class CaseDbTableUtil {
4
+ static createCaseTypeCellRowComperator({ column, dataContext, direction }: GetTableCellRowComparatorProps<TableColumnText<CaseDbCase, CaseDbCompleteCaseType, CaseDbCol>, CaseDbCompleteCaseType>): (a: CaseDbCase, b: CaseDbCase) => number;
5
+ static getTableCaseTypeCellValue<TRowData>({ column, dataContext, row, rowIndex }: GetTableCellValueProps<TRowData, TableColumnText<TRowData, CaseDbCompleteCaseType, CaseDbCol>, CaseDbCompleteCaseType>): string;
6
+ }
@@ -0,0 +1 @@
1
+ export * from './CaseDbTableUtil';
@@ -0,0 +1,41 @@
1
+ import { DataService as e } from "../../classes/services/DataService/index.js";
2
+ import { CaseUtil as t } from "../CaseUtil/index.js";
3
+ import { CaseDbColType as n } from "@gen-epix/api-casedb";
4
+ //#region src/utils/CaseDbTableUtil/CaseDbTableUtil.ts
5
+ var r = class {
6
+ static createCaseTypeCellRowComperator({ column: r, dataContext: i, direction: a }) {
7
+ return (o, s) => {
8
+ let c = t.getRowValue(o.content, r.columnContext, i), l = t.getRowValue(s.content, r.columnContext, i), u = r.columnContext, d = i.ref_cols[u.ref_col_id], f = a === "asc" ? 1 : -1;
9
+ if (c.raw === l.raw) return 0;
10
+ if (c.isMissing) return 1;
11
+ if (l.isMissing) return -1;
12
+ if (d.col_type === n.ORDINAL) {
13
+ let t = e.getInstance().data.conceptsIdsBySetId[d.concept_set_id];
14
+ return (t.indexOf(c.raw) - t.indexOf(l.raw)) * f;
15
+ }
16
+ return [
17
+ n.DECIMAL_0,
18
+ n.DECIMAL_1,
19
+ n.DECIMAL_2,
20
+ n.DECIMAL_3,
21
+ n.DECIMAL_4,
22
+ n.DECIMAL_4,
23
+ n.DECIMAL_5,
24
+ n.DECIMAL_6
25
+ ].includes(d.col_type) ? (c.raw - +l.raw) * f : c.short.localeCompare(l.short) * f;
26
+ };
27
+ }
28
+ static getTableCaseTypeCellValue({ column: e, dataContext: n, row: r, rowIndex: i }) {
29
+ return e.valueGetter ? e.valueGetter({
30
+ column: e,
31
+ dataContext: n,
32
+ id: e.id,
33
+ row: r,
34
+ rowIndex: i
35
+ }) : t.getRowValue(r.content, e.columnContext, n).raw;
36
+ }
37
+ };
38
+ //#endregion
39
+ export { r as CaseDbTableUtil };
40
+
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/CaseDbTableUtil/CaseDbTableUtil.ts"],"sourcesContent":["import type {\n CaseDbCase,\n CaseDbCol,\n CaseDbCompleteCaseType,\n} from '@gen-epix/api-casedb';\nimport { CaseDbColType } from '@gen-epix/api-casedb';\nimport type {\n GetTableCellRowComparatorProps,\n GetTableCellValueProps,\n TableColumn,\n TableColumnText,\n} from '@gen-epix/ui/models/table';\n\nimport { DataService } from '../../classes/services/DataService';\nimport { CaseUtil } from '../CaseUtil';\n\nexport class CaseDbTableUtil {\n // Cell value getters\n public static createCaseTypeCellRowComperator({ column, dataContext, direction }: GetTableCellRowComparatorProps<TableColumnText<CaseDbCase, CaseDbCompleteCaseType, CaseDbCol>, CaseDbCompleteCaseType>): (a: CaseDbCase, b: CaseDbCase) => number {\n return (a: CaseDbCase, b: CaseDbCase) => {\n const aValue = CaseUtil.getRowValue(a.content, column.columnContext, dataContext);\n const bValue = CaseUtil.getRowValue(b.content, column.columnContext, dataContext);\n const col = column.columnContext;\n const refCol = dataContext.ref_cols[col.ref_col_id];\n\n const directionMultiplier = direction === 'asc' ? 1 : -1;\n\n if (aValue.raw === bValue.raw) {\n return 0;\n }\n if (aValue.isMissing) {\n return 1;\n }\n if (bValue.isMissing) {\n return -1;\n }\n\n if (refCol.col_type === CaseDbColType.ORDINAL) {\n const conceptSetConceptIds = DataService.getInstance().data.conceptsIdsBySetId[refCol.concept_set_id];\n return (conceptSetConceptIds.indexOf(aValue.raw) - conceptSetConceptIds.indexOf(bValue.raw)) * directionMultiplier;\n }\n\n if (([CaseDbColType.DECIMAL_0, CaseDbColType.DECIMAL_1, CaseDbColType.DECIMAL_2, CaseDbColType.DECIMAL_3, CaseDbColType.DECIMAL_4, CaseDbColType.DECIMAL_4, CaseDbColType.DECIMAL_5, CaseDbColType.DECIMAL_6] as CaseDbColType[]).includes(refCol.col_type)) {\n return (+aValue.raw - +bValue.raw) * directionMultiplier;\n }\n\n return aValue.short.localeCompare(bValue.short) * directionMultiplier;\n };\n }\n\n public static getTableCaseTypeCellValue<TRowData>({ column, dataContext, row, rowIndex }: GetTableCellValueProps<TRowData, TableColumnText<TRowData, CaseDbCompleteCaseType, CaseDbCol>, CaseDbCompleteCaseType>): string {\n if (column.valueGetter) {\n return column.valueGetter({ column: column as TableColumn<TRowData, CaseDbCompleteCaseType>, dataContext, id: column.id, row, rowIndex });\n }\n return CaseUtil.getRowValue((row as CaseDbCase).content, column.columnContext, dataContext).raw;\n }\n}\n"],"mappings":";;;;AAgBA,IAAa,IAAb,MAA6B;CAE3B,OAAc,gCAAgC,EAAE,WAAQ,gBAAa,gBAA+K;EAClP,QAAQ,GAAe,MAAkB;GACvC,IAAM,IAAS,EAAS,YAAY,EAAE,SAAS,EAAO,eAAe,CAAW,GAC1E,IAAS,EAAS,YAAY,EAAE,SAAS,EAAO,eAAe,CAAW,GAC1E,IAAM,EAAO,eACb,IAAS,EAAY,SAAS,EAAI,aAElC,IAAsB,MAAc,QAAQ,IAAI;GAEtD,IAAI,EAAO,QAAQ,EAAO,KACxB,OAAO;GAET,IAAI,EAAO,WACT,OAAO;GAET,IAAI,EAAO,WACT,OAAO;GAGT,IAAI,EAAO,aAAa,EAAc,SAAS;IAC7C,IAAM,IAAuB,EAAY,YAAY,CAAC,CAAC,KAAK,mBAAmB,EAAO;IACtF,QAAQ,EAAqB,QAAQ,EAAO,GAAG,IAAI,EAAqB,QAAQ,EAAO,GAAG,KAAK;GACjG;GAMA,OAJK;IAAC,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;GAAS,CAAC,CAAqB,SAAS,EAAO,QAAQ,KAC/O,EAAO,MAAM,CAAC,EAAO,OAAO,IAGhC,EAAO,MAAM,cAAc,EAAO,KAAK,IAAI;EACpD;CACF;CAEA,OAAc,0BAAoC,EAAE,WAAQ,gBAAa,QAAK,eAA4I;EAIxN,OAHI,EAAO,cACF,EAAO,YAAY;GAAU;GAAyD;GAAa,IAAI,EAAO;GAAI;GAAK;EAAS,CAAC,IAEnI,EAAS,YAAa,EAAmB,SAAS,EAAO,eAAe,CAAW,CAAC,CAAC;CAC9F;AACF"}
@@ -0,0 +1,8 @@
1
+ export declare class CaseSelectionUtil {
2
+ static addComponentCaseIdsToSelection(componentCaseIds: string[], selectedIds: string[]): string[];
3
+ static canAddToSelection(componentCaseIds: string[], selectedIds: string[]): boolean;
4
+ static canRefineSelection(componentCaseIds: string[], selectedIds: string[]): boolean;
5
+ static canRemoveFromSelection(componentCaseIds: string[], selectedIds: string[]): boolean;
6
+ static refineSelectionWithComponentCaseIds(componentCaseIds: string[], selectedIds: string[]): string[];
7
+ static removeComponentCaseIdsFromSelection(componentCaseIds: string[], selectedIds: string[]): string[];
8
+ }
@@ -0,0 +1 @@
1
+ export * from './CaseSelectionUtil';
@@ -0,0 +1,29 @@
1
+ import { h as e } from "../../_chunks/_MapCache.js";
2
+ import { t } from "../../_chunks/intersection.js";
3
+ //#region src/utils/CaseSelectionUtil/CaseSelectionUtil.ts
4
+ var n = /* @__PURE__ */ e(t(), 1), r = class {
5
+ static addComponentCaseIdsToSelection(e, t) {
6
+ let n = [...t, ...e];
7
+ return Array.from(new Set(n));
8
+ }
9
+ static canAddToSelection(e, t) {
10
+ return (0, n.default)(e, t).length !== e.length;
11
+ }
12
+ static canRefineSelection(e, t) {
13
+ let r = (0, n.default)(e, t);
14
+ return !(r.length === 0 || r.length === e.length && r.length === t.length);
15
+ }
16
+ static canRemoveFromSelection(e, t) {
17
+ return (0, n.default)(e, t).length > 0;
18
+ }
19
+ static refineSelectionWithComponentCaseIds(e, t) {
20
+ return e.filter((e) => t.includes(e));
21
+ }
22
+ static removeComponentCaseIdsFromSelection(e, t) {
23
+ return t.filter((t) => !e.includes(t));
24
+ }
25
+ };
26
+ //#endregion
27
+ export { r as CaseSelectionUtil };
28
+
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/CaseSelectionUtil/CaseSelectionUtil.ts"],"sourcesContent":["import intersection from 'lodash/intersection';\n\nexport class CaseSelectionUtil {\n public static addComponentCaseIdsToSelection(componentCaseIds: string[], selectedIds: string[]): string[] {\n const caseIds = [...selectedIds, ...componentCaseIds];\n return Array.from(new Set(caseIds));\n }\n\n public static canAddToSelection(componentCaseIds: string[], selectedIds: string[]): boolean {\n const intersectedCaseIds = intersection(componentCaseIds, selectedIds);\n return intersectedCaseIds.length !== componentCaseIds.length;\n }\n\n public static canRefineSelection(componentCaseIds: string[], selectedIds: string[]): boolean {\n const intersectedCaseIds = intersection(componentCaseIds, selectedIds);\n const negationResult = intersectedCaseIds.length === 0 || (intersectedCaseIds.length === componentCaseIds.length && intersectedCaseIds.length === selectedIds.length);\n return !negationResult;\n }\n\n public static canRemoveFromSelection(componentCaseIds: string[], selectedIds: string[]): boolean {\n const intersectedCaseIds = intersection(componentCaseIds, selectedIds);\n return intersectedCaseIds.length > 0;\n }\n\n public static refineSelectionWithComponentCaseIds(componentCaseIds: string[], selectedIds: string[]): string[] {\n return componentCaseIds.filter(caseId => selectedIds.includes(caseId));\n }\n\n public static removeComponentCaseIdsFromSelection(componentCaseIds: string[], selectedIds: string[]): string[] {\n return selectedIds.filter(caseId => !componentCaseIds.includes(caseId));\n }\n}\n"],"mappings":";;;mCAEa,IAAb,MAA+B;CAC7B,OAAc,+BAA+B,GAA4B,GAAiC;EACxG,IAAM,IAAU,CAAC,GAAG,GAAa,GAAG,CAAgB;EACpD,OAAO,MAAM,KAAK,IAAI,IAAI,CAAO,CAAC;CACpC;CAEA,OAAc,kBAAkB,GAA4B,GAAgC;EAE1F,QAAA,GAAA,EAAA,QAAA,CADwC,GAAkB,CACnD,CAAA,CAAmB,WAAW,EAAiB;CACxD;CAEA,OAAc,mBAAmB,GAA4B,GAAgC;EAC3F,IAAM,KAAA,GAAA,EAAA,QAAA,CAAkC,GAAkB,CAAW;EAErE,OAAO,EADgB,EAAmB,WAAW,KAAM,EAAmB,WAAW,EAAiB,UAAU,EAAmB,WAAW,EAAY;CAEhK;CAEA,OAAc,uBAAuB,GAA4B,GAAgC;EAE/F,QAAA,GAAA,EAAA,QAAA,CADwC,GAAkB,CACnD,CAAA,CAAmB,SAAS;CACrC;CAEA,OAAc,oCAAoC,GAA4B,GAAiC;EAC7G,OAAO,EAAiB,QAAO,MAAU,EAAY,SAAS,CAAM,CAAC;CACvE;CAEA,OAAc,oCAAoC,GAA4B,GAAiC;EAC7G,OAAO,EAAY,QAAO,MAAU,CAAC,EAAiB,SAAS,CAAM,CAAC;CACxE;AACF"}
@@ -0,0 +1,4 @@
1
+ import { CaseDbCaseSet } from '@gen-epix/api-casedb';
2
+ export declare class CaseSetUtil {
3
+ static createCaseSetLink(caseSet: CaseDbCaseSet, full?: boolean): string;
4
+ }
@@ -0,0 +1 @@
1
+ export * from './CaseSetUtil';
@@ -0,0 +1,13 @@
1
+ import { StringUtil as e } from "@gen-epix/ui-core/utils/StringUtil";
2
+ import { WindowService as t } from "@gen-epix/ui-core/classes/services/WindowService";
3
+ //#region src/utils/CaseSetUtil/CaseSetUtil.ts
4
+ var n = class {
5
+ static createCaseSetLink(n, r) {
6
+ let i = `/events/${e.createSlug(n.name)}/${n.id}`;
7
+ return r ? `${t.getInstance().window.location.origin}${i}` : i;
8
+ }
9
+ };
10
+ //#endregion
11
+ export { n as CaseSetUtil };
12
+
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/CaseSetUtil/CaseSetUtil.ts"],"sourcesContent":["import type { CaseDbCaseSet } from '@gen-epix/api-casedb';\nimport { WindowService } from '@gen-epix/ui-core/classes/services/WindowService';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\n\n\nexport class CaseSetUtil {\n public static createCaseSetLink(caseSet: CaseDbCaseSet, full?: boolean): string {\n const path = `/events/${StringUtil.createSlug(caseSet.name)}/${caseSet.id}`;\n if (full) {\n return `${WindowService.getInstance().window.location.origin}${path}`;\n }\n return path;\n }\n}\n"],"mappings":";;;AAKA,IAAa,IAAb,MAAyB;CACvB,OAAc,kBAAkB,GAAwB,GAAwB;EAC9E,IAAM,IAAO,WAAW,EAAW,WAAW,EAAQ,IAAI,EAAE,GAAG,EAAQ;EAIvE,OAHI,IACK,GAAG,EAAc,YAAY,CAAC,CAAC,OAAO,SAAS,SAAS,MAE1D;CACT;AACF"}
@@ -0,0 +1,20 @@
1
+ import { CaseDbCase, CaseDbCompleteCaseType } from '@gen-epix/api-casedb';
2
+ import { ObjectSchema } from 'yup';
3
+ import { FormFieldDefinition, FormGroupDefinition } from '@gen-epix/ui-form/models/form';
4
+ export declare class CaseTypeFormUtil {
5
+ static createFormDefinitions(kwArgs: {
6
+ completeCaseType: CaseDbCompleteCaseType;
7
+ enabledColIds?: string[];
8
+ includedColIds?: string[];
9
+ onClearGroupFields?: (fieldNames: string[]) => void;
10
+ }): {
11
+ fieldDefinitions: FormFieldDefinition<CaseDbCase['content']>[];
12
+ groupDefinitions: FormGroupDefinition[];
13
+ };
14
+ static createYupSchema(kwArgs: {
15
+ completeCaseType: CaseDbCompleteCaseType;
16
+ includedColIds?: string[];
17
+ }): ObjectSchema<{
18
+ [key: string]: string;
19
+ }>;
20
+ }
@@ -0,0 +1 @@
1
+ export * from './CaseTypeFormUtil';
@@ -0,0 +1,199 @@
1
+ import { t as e } from "../../_chunks/isValid.js";
2
+ import { CaseTypeUtil as t } from "../CaseTypeUtil/index.js";
3
+ import { DataService as n } from "../../classes/services/DataService/index.js";
4
+ import { AbacUtil as r } from "../AbacUtil/index.js";
5
+ import { object as i, string as a } from "yup";
6
+ import { t as o } from "i18next";
7
+ import { CaseDbColType as s, CaseDbDimType as c } from "@gen-epix/api-casedb";
8
+ import { StringUtil as l } from "@gen-epix/ui-core/utils/StringUtil";
9
+ import { FORM_FIELD_DEFINITION_TYPE as u } from "@gen-epix/ui-form/models/form";
10
+ //#region src/utils/CaseTypeFormUtil/CaseTypeFormUtil.ts
11
+ var d = class {
12
+ static createFormDefinitions(e) {
13
+ let { completeCaseType: i, enabledColIds: a, includedColIds: d, onClearGroupFields: f } = e, p = t.getCols(i), m = t.getDims(i), h = r.createEffectieveColumnAccessRights(Object.values(i.case_type_access_abacs)), g = p.reduce((e, t) => {
14
+ if (!h.get(t.id)?.write || d && !d.includes(t.id)) return e;
15
+ let r = a ? !a.includes(t.id) : !1, c = i.ref_cols[t.ref_col_id];
16
+ switch (c.col_type) {
17
+ case s.DECIMAL_0:
18
+ case s.DECIMAL_1:
19
+ case s.DECIMAL_2:
20
+ case s.DECIMAL_3:
21
+ case s.DECIMAL_4:
22
+ case s.DECIMAL_5:
23
+ case s.DECIMAL_6:
24
+ case s.ID_CASE:
25
+ case s.ID_EVENT:
26
+ case s.ID_GENETIC_SEQUENCE:
27
+ case s.ID_PERSON:
28
+ case s.ID_SAMPLE:
29
+ case s.TEXT:
30
+ case s.TIME_MONTH:
31
+ case s.TIME_QUARTER:
32
+ case s.TIME_WEEK:
33
+ case s.TIME_YEAR:
34
+ e.push({
35
+ definition: u.TEXTFIELD,
36
+ disabled: r,
37
+ label: t.label,
38
+ name: t.id
39
+ });
40
+ break;
41
+ case s.GEO_REGION:
42
+ n.getInstance().data.regionsByRegionSetId[c.region_set_id] && e.push({
43
+ definition: u.AUTOCOMPLETE,
44
+ disabled: r,
45
+ label: t.label,
46
+ name: t.id,
47
+ options: n.getInstance().data.regionsByRegionSetId[c.region_set_id].map((e) => ({
48
+ label: n.getInstance().data.regionSets[c.region_set_id].region_code_as_label ? e.code : e.name,
49
+ value: e.id
50
+ }))
51
+ });
52
+ break;
53
+ case s.INTERVAL:
54
+ case s.NOMINAL:
55
+ case s.ORDINAL:
56
+ n.getInstance().data.conceptsBySetId[c.concept_set_id] && e.push({
57
+ definition: u.AUTOCOMPLETE,
58
+ disabled: r,
59
+ label: t.label,
60
+ name: t.id,
61
+ options: n.getInstance().data.conceptsBySetId[c.concept_set_id].map((e) => ({
62
+ label: e.name,
63
+ value: e.id
64
+ }))
65
+ });
66
+ break;
67
+ case s.ORGANIZATION:
68
+ e.push({
69
+ definition: u.AUTOCOMPLETE,
70
+ disabled: r,
71
+ label: t.label,
72
+ name: t.id,
73
+ options: (n.getInstance().data.organizations ?? []).map((e) => ({
74
+ label: e.name,
75
+ value: e.id
76
+ })).sort((e, t) => l.advancedSortComperator(e.label, t.label))
77
+ });
78
+ break;
79
+ case s.REGULAR_LANGUAGE:
80
+ try {
81
+ new RegExp(t.pattern), e.push({
82
+ definition: u.TEXTFIELD,
83
+ disabled: r,
84
+ label: t.label,
85
+ name: t.id
86
+ });
87
+ } catch {
88
+ e.push({
89
+ definition: u.TEXTFIELD,
90
+ disabled: r,
91
+ label: t.label,
92
+ name: t.id,
93
+ warningMessage: o`Unable to parse regular expression. You may enter text, but it's not guaranteed to be valid.`
94
+ });
95
+ }
96
+ break;
97
+ case s.TIME_DAY:
98
+ e.push({
99
+ definition: u.DATE,
100
+ disabled: r,
101
+ label: t.label,
102
+ name: t.id
103
+ });
104
+ break;
105
+ default: break;
106
+ }
107
+ return e;
108
+ }, []);
109
+ m.forEach((e) => {
110
+ let n = t.getCols(i, e.id).map((e) => e.id);
111
+ g.forEach((t) => {
112
+ n.includes(t.name) && (t.groupKey = e.id);
113
+ });
114
+ });
115
+ let _ = [];
116
+ return m.forEach((e) => {
117
+ let n = t.getCols(i, e.id), r = i.ref_dims[e.ref_dim_id], a = [];
118
+ r.dim_type === c.GEO && a.push({
119
+ message: o`This dimension contains geographical regions. When making updates, first clear all values and only fill in the highest known resolution(s) of the geographical regions.`,
120
+ severity: "info"
121
+ }), r.dim_type === c.TIME && a.push({
122
+ message: o`This dimension contains time-related data. When making updates, first clear all values and only fill in the highest known resolution(s) of the time-related data.`,
123
+ severity: "info"
124
+ });
125
+ let l = [
126
+ s.DECIMAL_0,
127
+ s.DECIMAL_1,
128
+ s.DECIMAL_2,
129
+ s.DECIMAL_3,
130
+ s.DECIMAL_4,
131
+ s.DECIMAL_5,
132
+ s.DECIMAL_6
133
+ ];
134
+ (n.some((e) => i.ref_cols[e.ref_col_id].col_type === s.ORDINAL) || n.some((e) => i.ref_cols[e.ref_col_id].col_type === s.INTERVAL)) && n.some((e) => l.includes(i.ref_cols[e.ref_col_id].col_type)) && a.push({
135
+ message: o`This dimension contains a mix of ordinal/interval and decimal columns. When making updates, first clear all values and only fill in the highest known resolution(s) of the data (typically the decimal data).`,
136
+ severity: "info"
137
+ });
138
+ let u = g.filter((t) => t.groupKey === e.id).map((e) => e.name);
139
+ _.push({
140
+ groupKey: e.id,
141
+ label: e.label,
142
+ messages: f ? a.map((t) => ({
143
+ ...t,
144
+ buttonLabel: o("Clear all {{dimension}} fields", { dimension: e.label }),
145
+ onButtonClick: () => f(u)
146
+ })) : a
147
+ });
148
+ }), {
149
+ fieldDefinitions: g,
150
+ groupDefinitions: _
151
+ };
152
+ }
153
+ static createYupSchema(n) {
154
+ let { completeCaseType: c, includedColIds: l } = n, u = r.createEffectieveColumnAccessRights(Object.values(c.case_type_access_abacs));
155
+ return t.getCols(c).reduce((t, n) => {
156
+ if (!u.get(n.id)?.write || l && !l.includes(n.id)) return t;
157
+ let r = c.ref_cols[n.ref_col_id];
158
+ switch (r.col_type) {
159
+ case s.DECIMAL_0: return t.concat(i().shape({ [n.id]: a().nullable().decimal0().transform((e, t) => t || null) }));
160
+ case s.DECIMAL_1: return t.concat(i().shape({ [n.id]: a().nullable().decimal1().transform((e, t) => t ?? null) }));
161
+ case s.DECIMAL_2: return t.concat(i().shape({ [n.id]: a().nullable().decimal2().transform((e, t) => t ?? null) }));
162
+ case s.DECIMAL_3: return t.concat(i().shape({ [n.id]: a().nullable().decimal3().transform((e, t) => t ?? null) }));
163
+ case s.DECIMAL_4: return t.concat(i().shape({ [n.id]: a().nullable().decimal4().transform((e, t) => t ?? null) }));
164
+ case s.DECIMAL_5: return t.concat(i().shape({ [n.id]: a().nullable().decimal5().transform((e, t) => t ?? null) }));
165
+ case s.DECIMAL_6: return t.concat(i().shape({ [n.id]: a().nullable().decimal6().transform((e, t) => t ?? null) }));
166
+ case s.GENETIC_DISTANCE:
167
+ case s.GENETIC_READS:
168
+ case s.GENETIC_SEQUENCE: return t;
169
+ case s.GEO_LATLON: return t.concat(i().shape({ [n.id]: a().nullable().latLong().transform((e, t) => t || null) }));
170
+ case s.GEO_REGION:
171
+ case s.INTERVAL:
172
+ case s.NOMINAL:
173
+ case s.ORDINAL:
174
+ case s.ORGANIZATION: return t.concat(i().shape({ [n.id]: a().nullable().uuid4().transform((e, t) => t || null) }));
175
+ case s.ID_CASE:
176
+ case s.ID_EVENT:
177
+ case s.ID_GENETIC_SEQUENCE:
178
+ case s.ID_PERSON:
179
+ case s.ID_SAMPLE: return t.concat(i().shape({ [n.id]: a().nullable().extendedAlphaNumeric().max(255).transform((e, t) => t || null) }));
180
+ case s.REGULAR_LANGUAGE: try {
181
+ return t.concat(i().shape({ [n.id]: a().nullable().matches(new RegExp(n.pattern), o("Invalid value for pattern \"{{pattern}}\"", { pattern: n.pattern })) })).transform((e, t) => t || null);
182
+ } catch {
183
+ return t.concat(i().shape({ [n.id]: a().nullable().max(n.max_length ?? 65535) })).transform((e, t) => t || null);
184
+ }
185
+ case s.TEXT: return t.concat(i().shape({ [n.id]: a().nullable().extendedAlphaNumeric().max(65535).transform((e, t) => t || null) }));
186
+ case s.TIME_DAY: return t.concat(i().shape({ [n.id]: a().nullable().transform((t, n) => e(n) ? n.toISOString() : null) }));
187
+ case s.TIME_MONTH: return t.concat(i().shape({ [n.id]: a().nullable().timeMonth().transform((e, t) => t || null) }));
188
+ case s.TIME_QUARTER: return t.concat(i().shape({ [n.id]: a().nullable().timeQuarter().transform((e, t) => t || null) }));
189
+ case s.TIME_WEEK: return t.concat(i().shape({ [n.id]: a().nullable().timeWeek().transform((e, t) => t || null) }));
190
+ case s.TIME_YEAR: return t.concat(i().shape({ [n.id]: a().nullable().timeYear().transform((e, t) => t || null) }));
191
+ default: return console.warn(`Unknown column type: ${r.col_type}`), t;
192
+ }
193
+ }, i({}));
194
+ }
195
+ };
196
+ //#endregion
197
+ export { d as CaseTypeFormUtil };
198
+
199
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/CaseTypeFormUtil/CaseTypeFormUtil.ts"],"sourcesContent":["import type {\n CaseDbCase,\n CaseDbCompleteCaseType,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbColType,\n CaseDbDimType,\n} from '@gen-epix/api-casedb';\nimport { isValid } from 'date-fns';\nimport { t } from 'i18next';\nimport type { ObjectSchema } from 'yup';\nimport {\n object,\n string,\n} from 'yup';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\nimport type {\n FormFieldDefinition,\n FormGroupDefinition,\n FormGroupMessage,\n} from '@gen-epix/ui-form/models/form';\nimport { FORM_FIELD_DEFINITION_TYPE } from '@gen-epix/ui-form/models/form';\n\nimport { DataService } from '../../classes/services/DataService';\nimport { AbacUtil } from '../AbacUtil';\nimport { CaseTypeUtil } from '../CaseTypeUtil';\n\nexport class CaseTypeFormUtil {\n\n public static createFormDefinitions(kwArgs: { completeCaseType: CaseDbCompleteCaseType; enabledColIds?: string[]; includedColIds?: string[]; onClearGroupFields?: (fieldNames: string[]) => void }): { fieldDefinitions: FormFieldDefinition<CaseDbCase['content']>[]; groupDefinitions: FormGroupDefinition[] } {\n const { completeCaseType, enabledColIds, includedColIds, onClearGroupFields } = kwArgs;\n const cols = CaseTypeUtil.getCols(completeCaseType);\n const dimensions = CaseTypeUtil.getDims(completeCaseType);\n const effectiveColumnAccessRights = AbacUtil.createEffectieveColumnAccessRights(Object.values(completeCaseType.case_type_access_abacs));\n const fieldDefinitions: FormFieldDefinition<CaseDbCase['content']>[] = cols.reduce((acc, col) => {\n const hasAccess = effectiveColumnAccessRights.get(col.id)?.write;\n if (!hasAccess) {\n return acc;\n }\n if (includedColIds && !includedColIds.includes(col.id)) {\n return acc;\n }\n const disabled = enabledColIds ? !enabledColIds.includes(col.id) : false;\n\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n switch (refCol.col_type) {\n case CaseDbColType.DECIMAL_0:\n case CaseDbColType.DECIMAL_1:\n case CaseDbColType.DECIMAL_2:\n case CaseDbColType.DECIMAL_3:\n case CaseDbColType.DECIMAL_4:\n case CaseDbColType.DECIMAL_5:\n case CaseDbColType.DECIMAL_6:\n case CaseDbColType.ID_CASE:\n case CaseDbColType.ID_EVENT:\n case CaseDbColType.ID_GENETIC_SEQUENCE:\n case CaseDbColType.ID_PERSON:\n case CaseDbColType.ID_SAMPLE:\n case CaseDbColType.TEXT:\n case CaseDbColType.TIME_MONTH:\n case CaseDbColType.TIME_QUARTER:\n case CaseDbColType.TIME_WEEK:\n case CaseDbColType.TIME_YEAR:\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.TEXTFIELD,\n disabled,\n label: col.label,\n name: col.id,\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n break;\n case CaseDbColType.GEO_REGION:\n if (DataService.getInstance().data.regionsByRegionSetId[refCol.region_set_id]) {\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n disabled,\n label: col.label,\n name: col.id,\n options: DataService.getInstance().data.regionsByRegionSetId[refCol.region_set_id].map(region => ({\n label: DataService.getInstance().data.regionSets[refCol.region_set_id].region_code_as_label ? region.code : region.name,\n value: region.id,\n })),\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n }\n break;\n case CaseDbColType.INTERVAL:\n case CaseDbColType.NOMINAL:\n case CaseDbColType.ORDINAL:\n if (DataService.getInstance().data.conceptsBySetId[refCol.concept_set_id]) {\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n disabled,\n label: col.label,\n name: col.id,\n options: DataService.getInstance().data.conceptsBySetId[refCol.concept_set_id].map(concept => ({\n label: concept.name,\n value: concept.id,\n })),\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n }\n break;\n case CaseDbColType.ORGANIZATION:\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.AUTOCOMPLETE,\n disabled,\n label: col.label,\n name: col.id,\n options: (DataService.getInstance().data.organizations ?? []).map(organization => ({\n label: organization.name,\n value: organization.id,\n })).sort((a, b) => StringUtil.advancedSortComperator(a.label, b.label)),\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n break;\n case CaseDbColType.REGULAR_LANGUAGE:\n try {\n new RegExp(col.pattern);\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.TEXTFIELD,\n disabled,\n label: col.label,\n name: col.id,\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n } catch (_error) {\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.TEXTFIELD,\n disabled,\n label: col.label,\n name: col.id,\n warningMessage: t`Unable to parse regular expression. You may enter text, but it's not guaranteed to be valid.`,\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n }\n break;\n case CaseDbColType.TIME_DAY:\n acc.push({\n definition: FORM_FIELD_DEFINITION_TYPE.DATE,\n disabled,\n label: col.label,\n name: col.id,\n } as const satisfies FormFieldDefinition<CaseDbCase['content']>);\n break;\n default:\n break;\n }\n\n return acc;\n }, [] as FormFieldDefinition<CaseDbCase['content']>[]);\n\n dimensions.forEach(dim => {\n const colIds = CaseTypeUtil.getCols(completeCaseType, dim.id).map(col => col.id);\n fieldDefinitions.forEach(definition => {\n if (colIds.includes(definition.name)) {\n definition.groupKey = dim.id;\n }\n });\n });\n\n const groupDefinitions: FormGroupDefinition[] = [];\n\n dimensions.forEach(dim => {\n const colsInDim = CaseTypeUtil.getCols(completeCaseType, dim.id);\n const refDim = completeCaseType.ref_dims[dim.ref_dim_id];\n const messages: FormGroupMessage[] = [];\n\n if (refDim.dim_type === CaseDbDimType.GEO) {\n messages.push({ message: t`This dimension contains geographical regions. When making updates, first clear all values and only fill in the highest known resolution(s) of the geographical regions.`, severity: 'info' });\n }\n if (refDim.dim_type === CaseDbDimType.TIME) {\n messages.push({ message: t`This dimension contains time-related data. When making updates, first clear all values and only fill in the highest known resolution(s) of the time-related data.`, severity: 'info' });\n }\n const DECIMAL_COL_TYPES = [CaseDbColType.DECIMAL_0, CaseDbColType.DECIMAL_1, CaseDbColType.DECIMAL_2, CaseDbColType.DECIMAL_3, CaseDbColType.DECIMAL_4, CaseDbColType.DECIMAL_5, CaseDbColType.DECIMAL_6] as const;\n if (\n (colsInDim.some(col => completeCaseType.ref_cols[col.ref_col_id].col_type === CaseDbColType.ORDINAL) || colsInDim.some(col => completeCaseType.ref_cols[col.ref_col_id].col_type === CaseDbColType.INTERVAL)) &&\n colsInDim.some(col => (DECIMAL_COL_TYPES as readonly string[]).includes(completeCaseType.ref_cols[col.ref_col_id].col_type))\n ) {\n messages.push({ message: t`This dimension contains a mix of ordinal/interval and decimal columns. When making updates, first clear all values and only fill in the highest known resolution(s) of the data (typically the decimal data).`, severity: 'info' });\n }\n\n const groupFieldNames = fieldDefinitions.filter(f => f.groupKey === dim.id).map(f => f.name);\n groupDefinitions.push({\n groupKey: dim.id,\n label: dim.label,\n messages: onClearGroupFields\n ? messages.map(msg => ({\n ...msg,\n buttonLabel: t('Clear all {{dimension}} fields', { dimension: dim.label }),\n onButtonClick: () => onClearGroupFields(groupFieldNames),\n }))\n : messages,\n });\n });\n\n return { fieldDefinitions, groupDefinitions };\n }\n\n public static createYupSchema(kwArgs: { completeCaseType: CaseDbCompleteCaseType; includedColIds?: string[] }): ObjectSchema<{ [key: string]: string }> {\n const { completeCaseType, includedColIds } = kwArgs;\n const effectiveColumnAccessRights = AbacUtil.createEffectieveColumnAccessRights(Object.values(completeCaseType.case_type_access_abacs));\n\n return CaseTypeUtil.getCols(completeCaseType).reduce((s, col) => {\n const hasAccess = effectiveColumnAccessRights.get(col.id)?.write;\n if (!hasAccess) {\n return s;\n }\n if (includedColIds && !includedColIds.includes(col.id)) {\n return s;\n }\n\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n switch (refCol.col_type) {\n case CaseDbColType.DECIMAL_0:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal0().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.DECIMAL_1:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal1().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.DECIMAL_2:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal2().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.DECIMAL_3:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal3().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.DECIMAL_4:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal4().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.DECIMAL_5:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal5().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.DECIMAL_6:\n return s.concat(object().shape({\n [col.id]: string().nullable().decimal6().transform((_val: unknown, orig: string) => orig ?? null),\n }));\n case CaseDbColType.GENETIC_DISTANCE:\n case CaseDbColType.GENETIC_READS:\n case CaseDbColType.GENETIC_SEQUENCE:\n return s;\n case CaseDbColType.GEO_LATLON:\n return s.concat(object().shape({\n [col.id]: string().nullable().latLong().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.GEO_REGION:\n case CaseDbColType.INTERVAL:\n case CaseDbColType.NOMINAL:\n case CaseDbColType.ORDINAL:\n case CaseDbColType.ORGANIZATION:\n return s.concat(object().shape({\n [col.id]: string().nullable().uuid4().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.ID_CASE:\n case CaseDbColType.ID_EVENT:\n case CaseDbColType.ID_GENETIC_SEQUENCE:\n case CaseDbColType.ID_PERSON:\n case CaseDbColType.ID_SAMPLE:\n return s.concat(object().shape({\n [col.id]: string().nullable().extendedAlphaNumeric().max(255).transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.REGULAR_LANGUAGE:\n try {\n return s.concat(object().shape({\n [col.id]: string().nullable().matches(new RegExp(col.pattern), t('Invalid value for pattern \"{{pattern}}\"', { pattern: col.pattern })),\n })).transform((_val: unknown, orig: string) => orig || null);\n } catch (_error) {\n return s.concat(object().shape({\n [col.id]: string().nullable().max(col.max_length ?? 65535),\n })).transform((_val: unknown, orig: string) => orig || null);\n }\n case CaseDbColType.TEXT:\n return s.concat(object().shape({\n [col.id]: string().nullable().extendedAlphaNumeric().max(65535).transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.TIME_DAY:\n return s.concat(object().shape({\n [col.id]: string().nullable().transform((_val: unknown, orig: Date) => isValid(orig) ? orig.toISOString() : null),\n }));\n case CaseDbColType.TIME_MONTH:\n return s.concat(object().shape({\n [col.id]: string().nullable().timeMonth().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.TIME_QUARTER:\n return s.concat(object().shape({\n [col.id]: string().nullable().timeQuarter().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.TIME_WEEK:\n return s.concat(object().shape({\n [col.id]: string().nullable().timeWeek().transform((_val: unknown, orig: string) => orig || null),\n }));\n case CaseDbColType.TIME_YEAR:\n return s.concat(object().shape({\n [col.id]: string().nullable().timeYear().transform((_val: unknown, orig: string) => orig || null),\n }));\n default:\n console.warn(`Unknown column type: ${refCol.col_type}`);\n return s;\n }\n }, object({}));\n }\n}\n"],"mappings":";;;;;;;;;;AA2BA,IAAa,IAAb,MAA8B;CAE5B,OAAc,sBAAsB,GAA6Q;EAC/S,IAAM,EAAE,qBAAkB,kBAAe,mBAAgB,0BAAuB,GAC1E,IAAO,EAAa,QAAQ,CAAgB,GAC5C,IAAa,EAAa,QAAQ,CAAgB,GAClD,IAA8B,EAAS,mCAAmC,OAAO,OAAO,EAAiB,sBAAsB,CAAC,GAChI,IAAiE,EAAK,QAAQ,GAAK,MAAQ;GAK/F,IAHI,CADc,EAA4B,IAAI,EAAI,EAAE,CAAC,EAAE,SAIvD,KAAkB,CAAC,EAAe,SAAS,EAAI,EAAE,GACnD,OAAO;GAET,IAAM,IAAW,IAAgB,CAAC,EAAc,SAAS,EAAI,EAAE,IAAI,IAE7D,IAAS,EAAiB,SAAS,EAAI;GAC7C,QAAQ,EAAO,UAAf;IACE,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;KACjB,EAAI,KAAK;MACP,YAAY,EAA2B;MACvC;MACA,OAAO,EAAI;MACX,MAAM,EAAI;KACZ,CAA+D;KAC/D;IACF,KAAK,EAAc;KACjB,AAAI,EAAY,YAAY,CAAC,CAAC,KAAK,qBAAqB,EAAO,kBAC7D,EAAI,KAAK;MACP,YAAY,EAA2B;MACvC;MACA,OAAO,EAAI;MACX,MAAM,EAAI;MACV,SAAS,EAAY,YAAY,CAAC,CAAC,KAAK,qBAAqB,EAAO,cAAc,CAAC,KAAI,OAAW;OAChG,OAAO,EAAY,YAAY,CAAC,CAAC,KAAK,WAAW,EAAO,cAAc,CAAC,uBAAuB,EAAO,OAAO,EAAO;OACnH,OAAO,EAAO;MAChB,EAAE;KACJ,CAA+D;KAEjE;IACF,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;KACjB,AAAI,EAAY,YAAY,CAAC,CAAC,KAAK,gBAAgB,EAAO,mBACxD,EAAI,KAAK;MACP,YAAY,EAA2B;MACvC;MACA,OAAO,EAAI;MACX,MAAM,EAAI;MACV,SAAS,EAAY,YAAY,CAAC,CAAC,KAAK,gBAAgB,EAAO,eAAe,CAAC,KAAI,OAAY;OAC7F,OAAO,EAAQ;OACf,OAAO,EAAQ;MACjB,EAAE;KACJ,CAA+D;KAEjE;IACF,KAAK,EAAc;KACjB,EAAI,KAAK;MACP,YAAY,EAA2B;MACvC;MACA,OAAO,EAAI;MACX,MAAM,EAAI;MACV,UAAU,EAAY,YAAY,CAAC,CAAC,KAAK,iBAAiB,CAAC,EAAA,CAAG,KAAI,OAAiB;OACjF,OAAO,EAAa;OACpB,OAAO,EAAa;MACtB,EAAE,CAAC,CAAC,MAAM,GAAG,MAAM,EAAW,uBAAuB,EAAE,OAAO,EAAE,KAAK,CAAC;KACxE,CAA+D;KAC/D;IACF,KAAK,EAAc;KACjB,IAAI;MAEF,AADA,IAAI,OAAO,EAAI,OAAO,GACtB,EAAI,KAAK;OACP,YAAY,EAA2B;OACvC;OACA,OAAO,EAAI;OACX,MAAM,EAAI;MACZ,CAA+D;KACjE,QAAiB;MACf,EAAI,KAAK;OACP,YAAY,EAA2B;OACvC;OACA,OAAO,EAAI;OACX,MAAM,EAAI;OACV,gBAAgB,CAAC;MACnB,CAA+D;KACjE;KACA;IACF,KAAK,EAAc;KACjB,EAAI,KAAK;MACP,YAAY,EAA2B;MACvC;MACA,OAAO,EAAI;MACX,MAAM,EAAI;KACZ,CAA+D;KAC/D;IACF,SACE;GACJ;GAEA,OAAO;EACT,GAAG,CAAC,CAAiD;EAErD,EAAW,SAAQ,MAAO;GACxB,IAAM,IAAS,EAAa,QAAQ,GAAkB,EAAI,EAAE,CAAC,CAAC,KAAI,MAAO,EAAI,EAAE;GAC/E,EAAiB,SAAQ,MAAc;IACrC,AAAI,EAAO,SAAS,EAAW,IAAI,MACjC,EAAW,WAAW,EAAI;GAE9B,CAAC;EACH,CAAC;EAED,IAAM,IAA0C,CAAC;EAmCjD,OAjCA,EAAW,SAAQ,MAAO;GACxB,IAAM,IAAY,EAAa,QAAQ,GAAkB,EAAI,EAAE,GACzD,IAAS,EAAiB,SAAS,EAAI,aACvC,IAA+B,CAAC;GAKtC,AAHI,EAAO,aAAa,EAAc,OACpC,EAAS,KAAK;IAAE,SAAS,CAAC;IAA2K,UAAU;GAAO,CAAC,GAErN,EAAO,aAAa,EAAc,QACpC,EAAS,KAAK;IAAE,SAAS,CAAC;IAAqK,UAAU;GAAO,CAAC;GAEnN,IAAM,IAAoB;IAAC,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;IAAW,EAAc;GAAS;GACxM,CACG,EAAU,MAAK,MAAO,EAAiB,SAAS,EAAI,WAAW,CAAC,aAAa,EAAc,OAAO,KAAK,EAAU,MAAK,MAAO,EAAiB,SAAS,EAAI,WAAW,CAAC,aAAa,EAAc,QAAQ,MAC3M,EAAU,MAAK,MAAQ,EAAwC,SAAS,EAAiB,SAAS,EAAI,WAAW,CAAC,QAAQ,CAAC,KAE3H,EAAS,KAAK;IAAE,SAAS,CAAC;IAAiN,UAAU;GAAO,CAAC;GAG/P,IAAM,IAAkB,EAAiB,QAAO,MAAK,EAAE,aAAa,EAAI,EAAE,CAAC,CAAC,KAAI,MAAK,EAAE,IAAI;GAC3F,EAAiB,KAAK;IACpB,UAAU,EAAI;IACd,OAAO,EAAI;IACX,UAAU,IACN,EAAS,KAAI,OAAQ;KACrB,GAAG;KACH,aAAa,EAAE,kCAAkC,EAAE,WAAW,EAAI,MAAM,CAAC;KACzE,qBAAqB,EAAmB,CAAe;IACzD,EAAE,IACA;GACN,CAAC;EACH,CAAC,GAEM;GAAE;GAAkB;EAAiB;CAC9C;CAEA,OAAc,gBAAgB,GAA0H;EACtJ,IAAM,EAAE,qBAAkB,sBAAmB,GACvC,IAA8B,EAAS,mCAAmC,OAAO,OAAO,EAAiB,sBAAsB,CAAC;EAEtI,OAAO,EAAa,QAAQ,CAAgB,CAAC,CAAC,QAAQ,GAAG,MAAQ;GAK/D,IAHI,CADc,EAA4B,IAAI,EAAI,EAAE,CAAC,EAAE,SAIvD,KAAkB,CAAC,EAAe,SAAS,EAAI,EAAE,GACnD,OAAO;GAGT,IAAM,IAAS,EAAiB,SAAS,EAAI;GAC7C,QAAQ,EAAO,UAAf;IACE,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc,kBACjB,OAAO;IACT,KAAK,EAAc,YACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EACjG,CAAC,CAAC;IACJ,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc,cACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAC/F,CAAC,CAAC;IACJ,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc;IACnB,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EACvH,CAAC,CAAC;IACJ,KAAK,EAAc,kBACjB,IAAI;KACF,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,IAAI,OAAO,EAAI,OAAO,GAAG,EAAE,6CAA2C,EAAE,SAAS,EAAI,QAAQ,CAAC,CAAC,EACvI,CAAC,CAAC,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI;IAC7D,QAAiB;KACf,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAI,cAAc,KAAK,EAC3D,CAAC,CAAC,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI;IAC7D;IACF,KAAK,EAAc,MACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EACzH,CAAC,CAAC;IACJ,KAAK,EAAc,UACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAe,EAAQ,CAAI,IAAI,EAAK,YAAY,IAAI,IAAI,EAClH,CAAC,CAAC;IACJ,KAAK,EAAc,YACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EACnG,CAAC,CAAC;IACJ,KAAK,EAAc,cACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EACrG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,KAAK,EAAc,WACjB,OAAO,EAAE,OAAO,EAAO,CAAC,CAAC,MAAM,GAC5B,EAAI,KAAK,EAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,GAAe,MAAiB,KAAQ,IAAI,EAClG,CAAC,CAAC;IACJ,SAEE,OADA,QAAQ,KAAK,wBAAwB,EAAO,UAAU,GAC/C;GACX;EACF,GAAG,EAAO,CAAC,CAAC,CAAC;CACf;AACF"}
@@ -0,0 +1,39 @@
1
+ import { CaseDbCaseType, CaseDbCol, CaseDbCompleteCaseType, CaseDbDim, CaseDbRefCol, CaseDbRefDim, CaseDbColType, CaseDbDimType } from '@gen-epix/api-casedb';
2
+ export declare const SELECTION_FILTER_GROUP = "selection";
3
+ export declare const TREE_FILTER_GROUP = "tree";
4
+ export declare class CaseTypeUtil {
5
+ static createCaseTypeLink(caseType: CaseDbCaseType | CaseDbCompleteCaseType, full?: boolean): string;
6
+ /**
7
+ * Find paired FWD/REV columns in the same dimension.
8
+ * @param completeCaseType The complete case type object.
9
+ * @returns An array of paired FWD/REV columns.
10
+ */
11
+ static findPairedReadsCols(completeCaseType: CaseDbCompleteCaseType): {
12
+ fwd: CaseDbCol;
13
+ rev: CaseDbCol;
14
+ }[];
15
+ /**
16
+ * Find a unique column by its column ID or column ID.
17
+ * @param completeCaseType The complete case type object.
18
+ * @param id The ID of the column or column.
19
+ * @returns The unique column if found, otherwise null.
20
+ */
21
+ static findUniqueColByColIdRefOrColId(completeCaseType: CaseDbCompleteCaseType, id: string): CaseDbCol;
22
+ static getCols(completeCaseType: CaseDbCompleteCaseType, dimId?: string): CaseDbCol[];
23
+ /**
24
+ * Get columns by their column type.
25
+ * @param completeCaseType The complete case type object.
26
+ * @param colType The column type to filter by.
27
+ * @returns An array of columns matching the specified column type.
28
+ */
29
+ static getColsByType(completeCaseType: CaseDbCompleteCaseType, colType: CaseDbColType[]): CaseDbCol[];
30
+ static getDimLabel(completeCaseType: CaseDbCompleteCaseType, dimId: string): string;
31
+ static getDims(completeCaseType: CaseDbCompleteCaseType, dimTypes?: CaseDbDimType[]): CaseDbDim[];
32
+ static getInitialVisibleColIds(completeCaseType: CaseDbCompleteCaseType): string[];
33
+ static getPreferredColInDimHavingHighestRank(cols: CaseDbCol[], completeCaseType: CaseDbCompleteCaseType): CaseDbCol;
34
+ static getPreferredGEOCol(cols: CaseDbCol[]): CaseDbCol;
35
+ static getRegionSetIds(completeCaseType: CaseDbCompleteCaseType): string[];
36
+ static getWritableColIds(completeCaseType: CaseDbCompleteCaseType): string[];
37
+ static getWritableImportExportColIds(completeCaseType: CaseDbCompleteCaseType): string[];
38
+ static isGeneticDistanceDim(refDim: CaseDbRefDim, refCols: CaseDbRefCol[]): boolean;
39
+ }
@@ -0,0 +1 @@
1
+ export * from './CaseTypeUtil';
@@ -0,0 +1,135 @@
1
+ import { h as e, p as t } from "../../_chunks/_MapCache.js";
2
+ import { n, t as r } from "../../_chunks/_cacheHas.js";
3
+ import { n as i, t as a } from "../../_chunks/_arrayIncludesWith.js";
4
+ import { t as o } from "../../_chunks/_Set.js";
5
+ import { t as s } from "../../_chunks/noop.js";
6
+ import { t as c } from "../../_chunks/_setToArray.js";
7
+ import { CaseDbColType as l, CaseDbDimType as u } from "@gen-epix/api-casedb";
8
+ import { StringUtil as d } from "@gen-epix/ui-core/utils/StringUtil";
9
+ import { WindowService as f } from "@gen-epix/ui-core/classes/services/WindowService";
10
+ //#region ../../node_modules/.pnpm/lodash@4.18.1/node_modules/lodash/_createSet.js
11
+ var p = /* @__PURE__ */ t(((e, t) => {
12
+ var n = o(), r = s(), i = c();
13
+ t.exports = n && 1 / i(new n([, -0]))[1] == Infinity ? function(e) {
14
+ return new n(e);
15
+ } : r;
16
+ })), m = /* @__PURE__ */ t(((e, t) => {
17
+ var o = n(), s = i(), l = a(), u = r(), d = p(), f = c(), m = 200;
18
+ function h(e, t, n) {
19
+ var r = -1, i = s, a = e.length, c = !0, p = [], h = p;
20
+ if (n) c = !1, i = l;
21
+ else if (a >= m) {
22
+ var g = t ? null : d(e);
23
+ if (g) return f(g);
24
+ c = !1, i = u, h = new o();
25
+ } else h = t ? [] : p;
26
+ outer: for (; ++r < a;) {
27
+ var _ = e[r], v = t ? t(_) : _;
28
+ if (_ = n || _ !== 0 ? _ : 0, c && v === v) {
29
+ for (var y = h.length; y--;) if (h[y] === v) continue outer;
30
+ t && h.push(v), p.push(_);
31
+ } else i(h, v, n) || (h !== p && h.push(v), p.push(_));
32
+ }
33
+ return p;
34
+ }
35
+ t.exports = h;
36
+ })), h = /* @__PURE__ */ t(((e, t) => {
37
+ var n = m();
38
+ function r(e) {
39
+ return e && e.length ? n(e) : [];
40
+ }
41
+ t.exports = r;
42
+ })), g = /* @__PURE__ */ e(h(), 1), _ = "selection", v = "tree", y = class e {
43
+ static createCaseTypeLink(e, t) {
44
+ let n = `/cases/${d.createSlug(e.name)}/${e.id}`;
45
+ return t ? `${f.getInstance().window.location.origin}${n}` : n;
46
+ }
47
+ static findPairedReadsCols(e) {
48
+ let t = [];
49
+ return e.ordered_dim_ids.forEach((n) => {
50
+ let r = e.ordered_col_ids_by_dim[n].map((t) => e.cols[t]);
51
+ if (!r) return;
52
+ let i = r.filter((t) => e.ref_cols[t.ref_col_id]?.col_type === l.GENETIC_READS);
53
+ i.length === 2 && t.push({
54
+ fwd: i[0],
55
+ rev: i[1]
56
+ });
57
+ }), t;
58
+ }
59
+ static findUniqueColByColIdRefOrColId(e, t) {
60
+ let n = Object.values(e.cols).find((e) => e.ref_col_id === t);
61
+ if (n) return n;
62
+ let r = Object.values(e.ref_cols).filter((e) => e.id === t);
63
+ if (r.length !== 1) return null;
64
+ let i = Object.values(e.cols).filter((e) => e.ref_col_id === r[0].id);
65
+ return i.length === 1 ? i[0] : null;
66
+ }
67
+ static getCols(e, t) {
68
+ return t ? e.ordered_col_ids_by_dim[t].map((t) => e.cols[t]) : Object.values(e.ordered_col_ids).map((t) => e.cols[t]);
69
+ }
70
+ static getColsByType(e, t) {
71
+ return Object.values(e.cols).filter((n) => {
72
+ let r = e.ref_cols[n.ref_col_id];
73
+ return t.includes(r?.col_type);
74
+ });
75
+ }
76
+ static getDimLabel(e, t) {
77
+ return e.dims[t].code;
78
+ }
79
+ static getDims(e, t) {
80
+ let n = Object.values(e.ordered_dim_ids).map((t) => e.dims[t]);
81
+ return t?.length ? n.filter((n) => {
82
+ let r = e.ref_dims[n.ref_dim_id];
83
+ return t.includes(r.dim_type);
84
+ }) : n;
85
+ }
86
+ static getInitialVisibleColIds(t) {
87
+ let n = [];
88
+ return t.ordered_dim_ids.map((e) => t.dims[e]).forEach((r) => {
89
+ let i = t.ref_dims[r.ref_dim_id], a = t.ordered_col_ids_by_dim[r.id].map((e) => t.cols[e]), o = a.map((e) => t.ref_cols[e.ref_col_id]);
90
+ i.dim_type === u.GEO ? n.push(e.getPreferredGEOCol(a).id) : i.dim_type === u.TIME || i.dim_type === u.NUMBER || e.isGeneticDistanceDim(i, o) ? n.push(e.getPreferredColInDimHavingHighestRank(a, t).id) : n.push(...a.filter((e) => {
91
+ let n = t.ref_cols[e.ref_col_id];
92
+ return ![l.GENETIC_READS, l.GENETIC_SEQUENCE].includes(n.col_type);
93
+ }).map((e) => e.id));
94
+ }), n;
95
+ }
96
+ static getPreferredColInDimHavingHighestRank(e, t) {
97
+ return e.find((e) => t.ref_cols[e.ref_col_id].rank === 1) ?? e?.[0];
98
+ }
99
+ static getPreferredGEOCol(e) {
100
+ return e[Math.min(e.length - 1, Math.floor((e.length - 1) / 2))];
101
+ }
102
+ static getRegionSetIds(t) {
103
+ let n = [];
104
+ return e.getCols(t).forEach((e) => {
105
+ let r = t.ref_cols[e.ref_col_id];
106
+ r.region_set_id && !n.includes(r.region_set_id) && n.push(r.region_set_id);
107
+ }), n;
108
+ }
109
+ static getWritableColIds(e) {
110
+ let t = [];
111
+ return Object.values(e.case_type_access_abacs).forEach((e) => {
112
+ t.push(...e.write_col_ids);
113
+ }), (0, g.default)(t);
114
+ }
115
+ static getWritableImportExportColIds(t) {
116
+ let n = e.getWritableColIds(t);
117
+ return Object.keys(t.cols).filter((e) => {
118
+ if (!n.includes(e)) return !1;
119
+ let r = t.cols[e], i = t.ref_cols[r.ref_col_id];
120
+ return ![
121
+ l.GENETIC_DISTANCE,
122
+ l.GENETIC_PROFILE,
123
+ l.GENETIC_READS,
124
+ l.GENETIC_SEQUENCE
125
+ ].includes(i.col_type);
126
+ });
127
+ }
128
+ static isGeneticDistanceDim(e, t) {
129
+ return e.dim_type === u.OTHER && t.find((e) => e.col_type === l.GENETIC_DISTANCE) !== void 0;
130
+ }
131
+ };
132
+ //#endregion
133
+ export { y as CaseTypeUtil, _ as SELECTION_FILTER_GROUP, v as TREE_FILTER_GROUP, m as n, h as t };
134
+
135
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../node_modules/.pnpm/lodash@4.18.1/node_modules/lodash/_createSet.js","../../../../../node_modules/.pnpm/lodash@4.18.1/node_modules/lodash/_baseUniq.js","../../../../../node_modules/.pnpm/lodash@4.18.1/node_modules/lodash/uniq.js","../../../src/utils/CaseTypeUtil/CaseTypeUtil.ts"],"sourcesContent":["var Set = require('./_Set'),\n noop = require('./noop'),\n setToArray = require('./_setToArray');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\nvar createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n};\n\nmodule.exports = createSet;\n","var SetCache = require('./_SetCache'),\n arrayIncludes = require('./_arrayIncludes'),\n arrayIncludesWith = require('./_arrayIncludesWith'),\n cacheHas = require('./_cacheHas'),\n createSet = require('./_createSet'),\n setToArray = require('./_setToArray');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\nfunction baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n}\n\nmodule.exports = baseUniq;\n","var baseUniq = require('./_baseUniq');\n\n/**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\nfunction uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n}\n\nmodule.exports = uniq;\n","import uniq from 'lodash/uniq';\nimport type {\n CaseDbCaseType,\n CaseDbCol,\n CaseDbCompleteCaseType,\n CaseDbDim,\n CaseDbRefCol,\n CaseDbRefDim,\n} from '@gen-epix/api-casedb';\nimport {\n CaseDbColType,\n CaseDbDimType,\n} from '@gen-epix/api-casedb';\nimport { WindowService } from '@gen-epix/ui-core/classes/services/WindowService';\nimport { StringUtil } from '@gen-epix/ui-core/utils/StringUtil';\n\n\nexport const SELECTION_FILTER_GROUP = 'selection';\nexport const TREE_FILTER_GROUP = 'tree';\n\nexport class CaseTypeUtil {\n public static createCaseTypeLink(caseType: CaseDbCaseType | CaseDbCompleteCaseType, full?: boolean): string {\n const path = `/cases/${StringUtil.createSlug(caseType.name)}/${caseType.id}`;\n if (full) {\n return `${WindowService.getInstance().window.location.origin}${path}`;\n }\n return path;\n }\n\n /**\n * Find paired FWD/REV columns in the same dimension.\n * @param completeCaseType The complete case type object.\n * @returns An array of paired FWD/REV columns.\n */\n public static findPairedReadsCols(completeCaseType: CaseDbCompleteCaseType): { fwd: CaseDbCol; rev: CaseDbCol }[] {\n const pairs: { fwd: CaseDbCol; rev: CaseDbCol }[] = [];\n\n completeCaseType.ordered_dim_ids.forEach(dimId => {\n const cols = completeCaseType.ordered_col_ids_by_dim[dimId].map(x => completeCaseType.cols[x]);\n if (!cols) {\n return;\n }\n const readsColumns = cols.filter(col => {\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n return refCol?.col_type === CaseDbColType.GENETIC_READS;\n });\n\n if (readsColumns.length === 2) {\n pairs.push({ fwd: readsColumns[0], rev: readsColumns[1] });\n }\n\n });\n\n return pairs;\n }\n\n /**\n * Find a unique column by its column ID or column ID.\n * @param completeCaseType The complete case type object.\n * @param id The ID of the column or column.\n * @returns The unique column if found, otherwise null.\n */\n public static findUniqueColByColIdRefOrColId(completeCaseType: CaseDbCompleteCaseType, id: string): CaseDbCol {\n const colId = Object.values(completeCaseType.cols).find(col => col.ref_col_id === id);\n if (colId) {\n return colId;\n }\n const colIds = Object.values(completeCaseType.ref_cols).filter(ref_col => ref_col.id === id);\n if (colIds.length !== 1) {\n return null;\n }\n const cols = Object.values(completeCaseType.cols).filter(col => col.ref_col_id === colIds[0].id);\n if (cols.length !== 1) {\n return null;\n }\n return cols[0];\n }\n\n public static getCols(completeCaseType: CaseDbCompleteCaseType, dimId?: string): CaseDbCol[] {\n if (!dimId) {\n return Object.values(completeCaseType.ordered_col_ids).map(id => completeCaseType.cols[id]);\n }\n return completeCaseType.ordered_col_ids_by_dim[dimId].map(id => completeCaseType.cols[id]);\n }\n\n /**\n * Get columns by their column type.\n * @param completeCaseType The complete case type object.\n * @param colType The column type to filter by.\n * @returns An array of columns matching the specified column type.\n */\n public static getColsByType(completeCaseType: CaseDbCompleteCaseType, colType: CaseDbColType[]): CaseDbCol[] {\n return Object.values(completeCaseType.cols).filter(col => {\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n return colType.includes(refCol?.col_type);\n });\n }\n\n public static getDimLabel(completeCaseType: CaseDbCompleteCaseType, dimId: string): string {\n const dim = completeCaseType.dims[dimId];\n return dim.code;\n }\n\n public static getDims(completeCaseType: CaseDbCompleteCaseType, dimTypes?: CaseDbDimType[]): CaseDbDim[] {\n const dims = Object.values(completeCaseType.ordered_dim_ids).map(x => completeCaseType.dims[x]);\n if (!dimTypes?.length) {\n return dims;\n }\n return dims.filter(dim => {\n const refDim = completeCaseType.ref_dims[dim.ref_dim_id];\n return dimTypes.includes(refDim.dim_type);\n });\n }\n\n public static getInitialVisibleColIds(completeCaseType: CaseDbCompleteCaseType): string[] {\n const visibleColumnIds: string[] = [];\n\n completeCaseType.ordered_dim_ids.map(x => completeCaseType.dims[x]).forEach((dim) => {\n const refDims = completeCaseType.ref_dims[dim.ref_dim_id];\n\n const cols = completeCaseType.ordered_col_ids_by_dim[dim.id].map(id => completeCaseType.cols[id]);\n const refCols = cols.map(col => completeCaseType.ref_cols[col.ref_col_id]);\n\n if (refDims.dim_type === CaseDbDimType.GEO) {\n visibleColumnIds.push(CaseTypeUtil.getPreferredGEOCol(cols).id);\n } else if (refDims.dim_type === CaseDbDimType.TIME || refDims.dim_type === CaseDbDimType.NUMBER || CaseTypeUtil.isGeneticDistanceDim(refDims, refCols)) {\n visibleColumnIds.push(CaseTypeUtil.getPreferredColInDimHavingHighestRank(cols, completeCaseType).id);\n } else {\n visibleColumnIds.push(...cols.filter(cc => {\n const refCol = completeCaseType.ref_cols[cc.ref_col_id];\n const hiddenColTypes: CaseDbColType[] = [CaseDbColType.GENETIC_READS, CaseDbColType.GENETIC_SEQUENCE];\n return !hiddenColTypes.includes(refCol.col_type);\n }).map(c => c.id));\n }\n });\n\n return visibleColumnIds;\n }\n\n public static getPreferredColInDimHavingHighestRank(cols: CaseDbCol[], completeCaseType: CaseDbCompleteCaseType): CaseDbCol {\n return cols.find(col => completeCaseType.ref_cols[col.ref_col_id].rank === 1) ?? cols?.[0];\n }\n\n public static getPreferredGEOCol(cols: CaseDbCol[]): CaseDbCol {\n return cols[Math.min(cols.length - 1, Math.floor((cols.length - 1) / 2))];\n }\n\n\n public static getRegionSetIds(completeCaseType: CaseDbCompleteCaseType): string[] {\n const regionSetIds: string[] = [];\n const cols = CaseTypeUtil.getCols(completeCaseType);\n cols.forEach(col => {\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n if (refCol.region_set_id && !regionSetIds.includes(refCol.region_set_id)) {\n regionSetIds.push(refCol.region_set_id);\n }\n });\n return regionSetIds;\n }\n\n\n public static getWritableColIds(completeCaseType: CaseDbCompleteCaseType): string[] {\n const writableColIds: string[] = [];\n Object.values(completeCaseType.case_type_access_abacs).forEach((abac) => {\n writableColIds.push(...abac.write_col_ids);\n });\n return uniq(writableColIds);\n }\n\n\n public static getWritableImportExportColIds(completeCaseType: CaseDbCompleteCaseType): string[] {\n const writableColIds = CaseTypeUtil.getWritableColIds(completeCaseType);\n return Object.keys(completeCaseType.cols).filter(colId => {\n if (!writableColIds.includes(colId)) {\n return false;\n }\n const col = completeCaseType.cols[colId];\n const refCol = completeCaseType.ref_cols[col.ref_col_id];\n if (([CaseDbColType.GENETIC_DISTANCE, CaseDbColType.GENETIC_PROFILE, CaseDbColType.GENETIC_READS, CaseDbColType.GENETIC_SEQUENCE] as CaseDbColType[]).includes(refCol.col_type)) {\n return false;\n }\n return true;\n });\n }\n\n public static isGeneticDistanceDim(refDim: CaseDbRefDim, refCols: CaseDbRefCol[]): boolean {\n return refDim.dim_type === CaseDbDimType.OTHER && refCols.find(refCol => refCol.col_type === CaseDbColType.GENETIC_DISTANCE) !== undefined;\n }\n}\n"],"x_google_ignoreList":[0,1,2],"mappings":"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"}