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