initial commit
This commit is contained in:
3
resources/js/plugins/casl/AppAbility.js
Normal file
3
resources/js/plugins/casl/AppAbility.js
Normal file
@@ -0,0 +1,3 @@
|
||||
import { Ability } from '@casl/ability'
|
||||
|
||||
export const AppAbility = Ability
|
16
resources/js/plugins/casl/ability.js
Normal file
16
resources/js/plugins/casl/ability.js
Normal file
@@ -0,0 +1,16 @@
|
||||
import { Ability } from '@casl/ability'
|
||||
|
||||
export const initialAbility = [
|
||||
{
|
||||
action: 'read',
|
||||
subject: 'Auth',
|
||||
},
|
||||
]
|
||||
|
||||
// Read ability from localStorage
|
||||
// 👉 Handles auto fetching previous abilities if already logged in user
|
||||
// ℹ️ You can update this if you store user abilities to more secure place
|
||||
// ❗ Anyone can update localStorage so be careful and please update this
|
||||
const stringifiedUserAbilities = localStorage.getItem('userAbilities')
|
||||
const existingAbility = stringifiedUserAbilities ? JSON.parse(stringifiedUserAbilities) : null
|
||||
export default new Ability(existingAbility || initialAbility)
|
3
resources/js/plugins/casl/useAppAbility.js
Normal file
3
resources/js/plugins/casl/useAppAbility.js
Normal file
@@ -0,0 +1,3 @@
|
||||
import { useAbility } from '@casl/vue'
|
||||
|
||||
export const useAppAbility = () => useAbility()
|
Reference in New Issue
Block a user