X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f80a908d033729d3fb63e2611e3bd11d94fa2a65..e4143ec29fb0adb4f38d4066fccc88af036bbe01:/src/store/context-menu/context-menu-actions.ts diff --git a/src/store/context-menu/context-menu-actions.ts b/src/store/context-menu/context-menu-actions.ts index 32bc47b6b8..5631a5e85c 100644 --- a/src/store/context-menu/context-menu-actions.ts +++ b/src/store/context-menu/context-menu-actions.ts @@ -12,8 +12,9 @@ import { ProjectResource } from '~/models/project'; import { UserResource } from '~/models/user'; import { isSidePanelTreeCategory } from '~/store/side-panel-tree/side-panel-tree-actions'; import { extractUuidKind, ResourceKind } from '~/models/resource'; -import { matchProcessRoute } from '~/routes/routes'; import { Process } from '~/store/processes/process'; +import { RepositoryResource } from '~/models/repositories'; +import { SshKeyResource } from '~/models/ssh-key'; export const contextMenuActions = unionize({ OPEN_CONTEXT_MENU: ofType<{ position: ContextMenuPosition, resource: ContextMenuResource }>(), @@ -30,6 +31,7 @@ export type ContextMenuResource = { kind: ResourceKind, menuKind: ContextMenuKind; isTrashed?: boolean; + index?: number }; export const isKeyboardClick = (event: React.MouseEvent) => event.nativeEvent.detail === 0; @@ -60,6 +62,30 @@ export const openCollectionFilesContextMenu = (event: React.MouseEvent, index: number, repository: RepositoryResource) => + (dispatch: Dispatch, getState: () => RootState) => { + dispatch(openContextMenu(event, { + name: '', + uuid: repository.uuid, + ownerUuid: repository.ownerUuid, + kind: ResourceKind.REPOSITORY, + menuKind: ContextMenuKind.REPOSITORY, + index + })); + }; + +export const openSshKeyContextMenu = (event: React.MouseEvent, index: number, sshKey: SshKeyResource) => + (dispatch: Dispatch) => { + dispatch(openContextMenu(event, { + name: '', + uuid: sshKey.uuid, + ownerUuid: sshKey.ownerUuid, + kind: ResourceKind.SSH_KEY, + menuKind: ContextMenuKind.SSH_KEY, + index + })); + }; + export const openRootProjectContextMenu = (event: React.MouseEvent, projectUuid: string) => (dispatch: Dispatch, getState: () => RootState) => { const res = getResource(projectUuid)(getState().resources); @@ -106,10 +132,10 @@ export const openProcessContextMenu = (event: React.MouseEvent, pro (dispatch: Dispatch, getState: () => RootState) => { const resource = { uuid: process.containerRequest.uuid, - ownerUuid: '', + ownerUuid: process.containerRequest.ownerUuid, kind: ResourceKind.PROCESS, - name: '', - description: '', + name: process.containerRequest.name, + description: process.containerRequest.description, menuKind: ContextMenuKind.PROCESS }; dispatch(openContextMenu(event, resource));