feat: dashboard quick new access control.

This commit is contained in:
a.bouhuolia
2021-11-26 19:37:36 +02:00
parent a21d70a59d
commit ccad55dd4a
3 changed files with 94 additions and 10 deletions

View File

@@ -1,4 +1,22 @@
import React from 'react';
import { useAbility } from '@casl/react';
import { AbilityContext } from '../../components';
export const useAbilityContext = () => useAbility(AbilityContext);
export const useAbilityContext = () => useAbility(AbilityContext);
/**
*
*/
export const useAbilitiesFilter = () => {
const ability = useAbilityContext();
return React.useCallback(
(items) => {
return items.filter((item) =>
ability.can(item.permission.ability, item.permission.subject),
);
},
[ability],
);
};