X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/a672dd5efb4c8ef394f61a7e7a5e513f80bf1427..dcc13bac8192a1a1075f5596d0b014441ae5b33a:/src/index.tsx diff --git a/src/index.tsx b/src/index.tsx index 066b520c93..244d138730 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -60,12 +60,13 @@ import { groupActionSet } from 'views-components/context-menu/action-sets/group- import { groupMemberActionSet } from 'views-components/context-menu/action-sets/group-member-action-set'; import { linkActionSet } from 'views-components/context-menu/action-sets/link-action-set'; import { loadFileViewersConfig } from 'store/file-viewers/file-viewers-actions'; -import { filterGroupAdminActionSet, projectAdminActionSet } from 'views-components/context-menu/action-sets/project-admin-action-set'; +import { filterGroupAdminActionSet, frozenAdminActionSet, projectAdminActionSet } from 'views-components/context-menu/action-sets/project-admin-action-set'; import { permissionEditActionSet } from 'views-components/context-menu/action-sets/permission-edit-action-set'; import { workflowActionSet } from 'views-components/context-menu/action-sets/workflow-action-set'; import { snackbarActions, SnackbarKind } from "store/snackbar/snackbar-actions"; import { openNotFoundDialog } from './store/not-found-panel/not-found-panel-action'; import { storeRedirects } from './common/redirect-to'; +import { searchResultsActionSet } from 'views-components/context-menu/action-sets/search-results-action-set'; console.log(`Starting arvados [${getBuildInfo()}]`); @@ -101,15 +102,12 @@ addMenuActionSet(ContextMenuKind.GROUP_MEMBER, groupMemberActionSet); addMenuActionSet(ContextMenuKind.COLLECTION_ADMIN, collectionAdminActionSet); addMenuActionSet(ContextMenuKind.PROCESS_ADMIN, processResourceAdminActionSet); addMenuActionSet(ContextMenuKind.PROJECT_ADMIN, projectAdminActionSet); -addMenuActionSet(ContextMenuKind.FROZEN_PROJECT, [ - [ - ...frozenActionSet.reduce((prev, next) => prev.concat(next), []), - ...readOnlyProjectActionSet.reduce((prev, next) => prev.concat(next), []), - ] -]); +addMenuActionSet(ContextMenuKind.FROZEN_PROJECT, frozenActionSet); +addMenuActionSet(ContextMenuKind.FROZEN_PROJECT_ADMIN, frozenAdminActionSet); addMenuActionSet(ContextMenuKind.FILTER_GROUP_ADMIN, filterGroupAdminActionSet); addMenuActionSet(ContextMenuKind.PERMISSION_EDIT, permissionEditActionSet); addMenuActionSet(ContextMenuKind.WORKFLOW, workflowActionSet); +addMenuActionSet(ContextMenuKind.SEARCH_RESULTS, searchResultsActionSet); storeRedirects(); @@ -134,7 +132,8 @@ fetchConfig() if (error.status === 404) { store.dispatch(openNotFoundDialog()); } else if (error.status === 401 && error.errors[0].indexOf("Not logged in") > -1) { - store.dispatch(logout()); + // Catch auth errors when navigating and redirect to login preserving url location + store.dispatch(logout(false, true)); } else { store.dispatch(snackbarActions.OPEN_SNACKBAR({ message: `${error.errors @@ -154,6 +153,8 @@ fetchConfig() const store = configureStore(history, services, config); + servicesProvider.setStore(store); + store.subscribe(initListener(history, store, services, config)); store.dispatch(initAuth(config)); store.dispatch(setBuildInfo());