Add Import CSV and Export CSV Permissions (#13421)
Co-authored-by: Félix Malfait <felix.malfait@gmail.com> Co-authored-by: Félix Malfait <felix@twenty.com>
This commit is contained in:
@@ -6,6 +6,7 @@ import { getActionConfig } from '@/action-menu/actions/utils/getActionConfig';
|
||||
import { getActionViewType } from '@/action-menu/actions/utils/getActionViewType';
|
||||
import { contextStoreCurrentViewTypeComponentState } from '@/context-store/states/contextStoreCurrentViewTypeComponentState';
|
||||
import { contextStoreTargetedRecordsRuleComponentState } from '@/context-store/states/contextStoreTargetedRecordsRuleComponentState';
|
||||
import { usePermissionFlagMap } from '@/settings/roles/hooks/usePermissionFlagMap';
|
||||
import { useRecoilComponentValueV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentValueV2';
|
||||
import { isDefined } from 'twenty-shared/utils';
|
||||
import { useIcons } from 'twenty-ui/display';
|
||||
@@ -48,6 +49,8 @@ export const useRegisteredActions = (
|
||||
...recordAgnosticActionConfig,
|
||||
};
|
||||
|
||||
const permissionMap = usePermissionFlagMap();
|
||||
|
||||
const actionsToRegister = isDefined(viewType)
|
||||
? Object.values(actionsConfig).filter(
|
||||
(action) =>
|
||||
@@ -57,7 +60,15 @@ export const useRegisteredActions = (
|
||||
: [];
|
||||
|
||||
const actions = actionsToRegister
|
||||
.filter((action) => action.shouldBeRegistered(shouldBeRegisteredParams))
|
||||
.filter((action) => {
|
||||
if (
|
||||
isDefined(action.requiredPermissionFlag) &&
|
||||
!permissionMap[action.requiredPermissionFlag]
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
return action.shouldBeRegistered(shouldBeRegisteredParams);
|
||||
})
|
||||
.sort((a, b) => a.position - b.position);
|
||||
|
||||
return actions;
|
||||
|
||||
Reference in New Issue
Block a user