init api token, add model and service, create dialogs and panel
[arvados-workbench2.git] / src / store / context-menu / context-menu-actions.ts
index 65ddcff2c7f1b360baa0e4ea98587cdb9bbbc179..b7d6cb260c7b7be319648e48c787ee231aba7052 100644 (file)
@@ -18,6 +18,7 @@ import { SshKeyResource } from '~/models/ssh-key';
 import { VirtualMachinesResource } from '~/models/virtual-machines';
 import { KeepServiceResource } from '~/models/keep-services';
 import { NodeResource } from '~/models/node';
+import { ApiClientAuthorization } from '~/models/api-client-authorization';
 
 export const contextMenuActions = unionize({
     OPEN_CONTEXT_MENU: ofType<{ position: ContextMenuPosition, resource: ContextMenuResource }>(),
@@ -121,6 +122,18 @@ export const openComputeNodeContextMenu = (event: React.MouseEvent<HTMLElement>,
         }));
     };
 
+export const openApiClientAuthorizationContextMenu = 
+    (event: React.MouseEvent<HTMLElement>, apiClientAuthorization: ApiClientAuthorization) =>
+        (dispatch: Dispatch) => {
+            dispatch<any>(openContextMenu(event, {
+                name: '',
+                uuid: apiClientAuthorization.uuid,
+                ownerUuid: apiClientAuthorization.ownerUuid,
+                kind: ResourceKind.API_CLIENT_AUTHORIZATION,
+                menuKind: ContextMenuKind.API_CLIENT_AUTHORIZATION
+            }));
+        };
+
 export const openRootProjectContextMenu = (event: React.MouseEvent<HTMLElement>, projectUuid: string) =>
     (dispatch: Dispatch, getState: () => RootState) => {
         const res = getResource<UserResource>(projectUuid)(getState().resources);