-export const userActionSet: ContextMenuActionSet = [[{
- name: "Attributes",
- icon: AttributesIcon,
- execute: (dispatch, { uuid }) => {
- dispatch<any>(openUserAttributes(uuid));
- }
-}, {
- name: "Project",
- icon: ProjectIcon,
- execute: (dispatch, { uuid }) => {
- dispatch<any>(openUserProjects(uuid));
- }
-}, {
- name: "Advanced",
- icon: AdvancedIcon,
- execute: (dispatch, { uuid }) => {
- dispatch<any>(openAdvancedTabDialog(uuid));
- }
-}, {
- name: "Manage",
- icon: UserPanelIcon,
- execute: (dispatch, { uuid }) => {
- dispatch<any>(openUserManage(uuid));
- }
-}]];
+export const userActionSet: ContextMenuActionSet = [
+ [
+ {
+ name: 'Attributes',
+ icon: AttributesIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openUserAttributes(resource.uuid)));
+ },
+ },
+ {
+ name: 'Project',
+ icon: ProjectIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openUserProjects(resource.uuid)));
+ },
+ },
+ {
+ name: 'API Details',
+ icon: AdvancedIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openAdvancedTabDialog(resource.uuid)));
+ },
+ },
+ {
+ name: 'Account Settings',
+ icon: UserPanelIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(navigateToUserProfile(resource.uuid)));
+ },
+ filters: [needsUserProfileLink],
+ },
+ ],
+ [
+ {
+ name: 'Activate User',
+ icon: ActiveIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openActivateDialog(resource.uuid)));
+ },
+ filters: [isAdmin, canActivateUser],
+ },
+ {
+ name: 'Setup User',
+ icon: AdminMenuIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openSetupDialog(resource.uuid)));
+ },
+ filters: [isAdmin, canSetupUser],
+ },
+ {
+ name: 'Deactivate User',
+ icon: DeactivateUserIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(openDeactivateDialog(resource.uuid)));
+ },
+ filters: [isAdmin, canDeactivateUser],
+ },
+ {
+ name: 'Login As User',
+ icon: LoginAsIcon,
+ execute: (dispatch, resources) => {
+ resources.forEach((resource) => dispatch<any>(loginAs(resource.uuid)));
+ },
+ filters: [isAdmin, isOtherUser],
+ },
+ ],
+];