[arvados] updated: 2.7.0-5840-gd4c73aa986
git repository hosting
git at public.arvados.org
Wed Jan 24 19:39:38 UTC 2024
Summary of changes:
.../ms-kind-action-differentiator.ts | 4 +-
.../ms-toolbar-action-filters.ts | 4 ++
.../multiselect-toolbar/ms-menu-actions.ts | 1 +
.../multiselect-toolbar/ms-user-action-set.ts | 55 ++++++++++++++++++++++
4 files changed, 63 insertions(+), 1 deletion(-)
create mode 100644 services/workbench2/src/views-components/multiselect-toolbar/ms-user-action-set.ts
via d4c73aa98677d4fb0c70e444a56c16235cdad597 (commit)
from 20b3576fb84a0e51c7f7789aba453ade163af009 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
commit d4c73aa98677d4fb0c70e444a56c16235cdad597
Author: Lisa Knox <lisaknox83 at gmail.com>
Date: Wed Jan 24 14:39:31 2024 -0500
21224: user card has non-admin menu Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa.knox at curii.com>
diff --git a/services/workbench2/src/components/multiselect-toolbar/ms-kind-action-differentiator.ts b/services/workbench2/src/components/multiselect-toolbar/ms-kind-action-differentiator.ts
index 5a84d4c573..7819c902cc 100644
--- a/services/workbench2/src/components/multiselect-toolbar/ms-kind-action-differentiator.ts
+++ b/services/workbench2/src/components/multiselect-toolbar/ms-kind-action-differentiator.ts
@@ -8,16 +8,18 @@ import { msCollectionActionSet } from "views-components/multiselect-toolbar/ms-c
import { msProjectActionSet } from "views-components/multiselect-toolbar/ms-project-action-set";
import { msProcessActionSet } from "views-components/multiselect-toolbar/ms-process-action-set";
import { msWorkflowActionSet } from "views-components/multiselect-toolbar/ms-workflow-action-set";
+import { msUserActionSet } from "views-components/multiselect-toolbar/ms-user-action-set";
export function findActionByName(name: string, actionSet: MultiSelectMenuActionSet) {
return actionSet[0].find(action => action.name === name);
}
-const { COLLECTION, PROCESS, PROJECT, WORKFLOW } = ResourceKind;
+const { COLLECTION, PROCESS, PROJECT, WORKFLOW , USER} = ResourceKind;
export const kindToActionSet: Record<string, MultiSelectMenuActionSet> = {
[COLLECTION]: msCollectionActionSet,
[PROCESS]: msProcessActionSet,
[PROJECT]: msProjectActionSet,
[WORKFLOW]: msWorkflowActionSet,
+ [USER]: msUserActionSet
};
diff --git a/services/workbench2/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts b/services/workbench2/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
index b34cc22cb9..b231135d3b 100644
--- a/services/workbench2/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
+++ b/services/workbench2/src/components/multiselect-toolbar/ms-toolbar-action-filters.ts
@@ -16,6 +16,7 @@ import {
import { msProcessActionSet, msCommonProcessActionFilter, msAdminProcessActionFilter, msRunningProcessActionFilter } from 'views-components/multiselect-toolbar/ms-process-action-set';
import { msWorkflowActionSet, msWorkflowActionFilter, msReadOnlyWorkflowActionFilter } from 'views-components/multiselect-toolbar/ms-workflow-action-set';
import { ResourceKind } from 'models/resource';
+import { msUserActionSet } from "views-components/multiselect-toolbar/ms-user-action-set";
export enum msMenuResourceKind {
API_CLIENT_AUTHORIZATION = 'ApiClientAuthorization',
@@ -82,6 +83,7 @@ const {
FILTER_GROUP_ADMIN,
WORKFLOW,
READONLY_WORKFLOW,
+ ROOT_PROJECT
} = msMenuResourceKind;
export type TMultiselectActionsFilters = Record<string, [MultiSelectMenuActionSet, Set<string>]>;
@@ -112,4 +114,6 @@ export const multiselectActionsFilters: TMultiselectActionsFilters = {
[WORKFLOW]: [msWorkflowActionSet, msWorkflowActionFilter],
[READONLY_WORKFLOW]: [msWorkflowActionSet, msReadOnlyWorkflowActionFilter],
+
+ [ROOT_PROJECT]: [msUserActionSet, allActionNames(msUserActionSet)],
};
diff --git a/services/workbench2/src/views-components/multiselect-toolbar/ms-menu-actions.ts b/services/workbench2/src/views-components/multiselect-toolbar/ms-menu-actions.ts
index 91ad96ce4b..c9cb473616 100644
--- a/services/workbench2/src/views-components/multiselect-toolbar/ms-menu-actions.ts
+++ b/services/workbench2/src/views-components/multiselect-toolbar/ms-menu-actions.ts
@@ -24,6 +24,7 @@ export enum MultiSelectMenuActionNames {
MOVE_TO_TRASH = 'Move to trash',
ADD_TO_PUBLIC_FAVORITES = 'Add to public favorites',
API_DETAILS = 'API Details',
+ ATTRIBUTES = 'Attributes',
CANCEL = 'CANCEL',
COPY_AND_RERUN_PROCESS = 'Copy and re-run process',
COPY_TO_CLIPBOARD = 'Copy to clipboard',
diff --git a/services/workbench2/src/views-components/multiselect-toolbar/ms-user-action-set.ts b/services/workbench2/src/views-components/multiselect-toolbar/ms-user-action-set.ts
new file mode 100644
index 0000000000..0836ce02f0
--- /dev/null
+++ b/services/workbench2/src/views-components/multiselect-toolbar/ms-user-action-set.ts
@@ -0,0 +1,55 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+import { AdvancedIcon, AttributesIcon } from "components/icon/icon";
+import { MultiSelectMenuAction, MultiSelectMenuActionSet, MultiSelectMenuActionNames } from "./ms-menu-actions";
+import { openAdvancedTabDialog } from 'store/advanced-tab/advanced-tab';
+import { Dispatch } from "redux";
+import { RootState } from "store/store";
+import { ServiceRepository } from "services/services";
+import { dialogActions } from "store/dialog/dialog-actions";
+import { UserResource } from "models/user";
+import { getResource } from "store/resources/resources";
+
+const { ATTRIBUTES, API_DETAILS } = MultiSelectMenuActionNames
+
+export const USER_ATTRIBUTES_DIALOG = 'userAttributesDialog';
+
+const openUserAttributes = (uuid: string) =>
+ (dispatch: Dispatch, getState: () => RootState, services: ServiceRepository) => {
+ const { resources } = getState();
+ const data = getResource<UserResource>(uuid)(resources);
+ dispatch(dialogActions.OPEN_DIALOG({ id: USER_ATTRIBUTES_DIALOG, data }));
+ };
+
+const msUserAttributes: MultiSelectMenuAction = {
+ name: ATTRIBUTES,
+ icon: AttributesIcon,
+ hasAlts: false,
+ isForMulti: false,
+ execute: (dispatch, resources) => {
+ dispatch<any>(openUserAttributes(resources[0].uuid));
+ },
+};
+
+const msAdvancedAction: MultiSelectMenuAction = {
+ name: API_DETAILS,
+ icon: AdvancedIcon,
+ hasAlts: false,
+ isForMulti: false,
+ execute: (dispatch, resources) => {
+ dispatch<any>(openAdvancedTabDialog(resources[0].uuid));
+ },
+};
+
+export const msUserActionSet: MultiSelectMenuActionSet = [
+ [
+ msAdvancedAction,
+ msUserAttributes
+ ]
+];
+
+
+export const msUserCommonActionFilter = new Set([ATTRIBUTES, API_DETAILS]);
+
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list