mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-15 04:10:32 +00:00
ability.
This commit is contained in:
10
src/components/Abilities.js
Normal file
10
src/components/Abilities.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import { AbilityBuilder, defineAbility } from '@casl/ability';
|
||||
import { createContextualCan } from '@casl/react';
|
||||
import { createContext } from 'react';
|
||||
|
||||
export const AbilityContext = createContext();
|
||||
export const Can = createContextualCan(AbilityContext.Consumer);
|
||||
|
||||
export const ability = defineAbility((can, cannot) => {
|
||||
cannot('Item', 'create');
|
||||
});
|
||||
4
src/components/Can.js
Normal file
4
src/components/Can.js
Normal file
@@ -0,0 +1,4 @@
|
||||
import { createCanBoundTo } from '@casl/react';
|
||||
import ability from '../components/Config/ability';
|
||||
|
||||
export default createCanBoundTo(ability);
|
||||
10
src/components/Config/ability.js
Normal file
10
src/components/Config/ability.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import { AbilityBuilder } from '@casl/ability';
|
||||
// import { AbilitySubject, ItemAbility } from '../../common/abilityOption';
|
||||
|
||||
export function defineAbilitiesFor(role) {
|
||||
const { rules, can } = new AbilityBuilder();
|
||||
|
||||
can('create', 'Item');
|
||||
|
||||
return new Ability(rules);
|
||||
}
|
||||
Reference in New Issue
Block a user