30 lines
864 B
TypeScript
30 lines
864 B
TypeScript
import { defaultStatements, adminAc } from 'better-auth/plugins/admin/access'
|
|
import { createAccessControl } from 'better-auth/plugins/access'
|
|
|
|
const statement = {
|
|
...defaultStatements,
|
|
audit: ['list'],
|
|
setting: ['list', 'create', 'update', 'delete'],
|
|
house: ['list', 'create', 'update', 'delete'],
|
|
box: ['list', 'create', 'update', 'delete'],
|
|
item: ['list', 'create', 'update', 'delete'],
|
|
} as const
|
|
|
|
const ac = createAccessControl(statement)
|
|
|
|
const admin = ac.newRole({
|
|
...adminAc.statements,
|
|
audit: ['list'],
|
|
setting: ['list', 'create', 'update', 'delete'],
|
|
house: ['list', 'create', 'update', 'delete'],
|
|
box: ['list', 'create', 'update', 'delete'],
|
|
item: ['list', 'create', 'update', 'delete'],
|
|
})
|
|
|
|
const user = ac.newRole({
|
|
setting: ['list', 'update'],
|
|
house: ['list', 'create', 'update', 'delete'],
|
|
})
|
|
|
|
export { ac, admin, user }
|