diff --git a/examples/auth/src/collections/Users.ts b/examples/auth/src/collections/Users.ts index c02b1a5ec2..67f00ebdd4 100644 --- a/examples/auth/src/collections/Users.ts +++ b/examples/auth/src/collections/Users.ts @@ -1,7 +1,7 @@ import type { CollectionConfig } from 'payload/types' import { admins } from './access/admins' -import adminsAndUser from './access/adminsAndUser' +import { adminsAndUser } from './access/adminsAndUser' import { anyone } from './access/anyone' import { checkRole } from './access/checkRole' import { loginAfterCreate } from './hooks/loginAfterCreate' @@ -25,6 +25,7 @@ export const Users: CollectionConfig = { create: anyone, update: adminsAndUser, delete: admins, + unlock: admins, admin: ({ req: { user } }) => checkRole(['admin'], user), }, hooks: { diff --git a/examples/auth/src/collections/access/admins.ts b/examples/auth/src/collections/access/admins.ts index a2b45d7db1..3dfada4830 100644 --- a/examples/auth/src/collections/access/admins.ts +++ b/examples/auth/src/collections/access/admins.ts @@ -1,4 +1,4 @@ -import type { Access } from 'payload/config' +import type { Access } from 'payload' import { checkRole } from './checkRole' diff --git a/examples/auth/src/collections/access/adminsAndUser.ts b/examples/auth/src/collections/access/adminsAndUser.ts index 75f4aec30f..25a6d200e3 100644 --- a/examples/auth/src/collections/access/adminsAndUser.ts +++ b/examples/auth/src/collections/access/adminsAndUser.ts @@ -1,19 +1,17 @@ -import type { Access } from 'payload/config' +import type { Access } from 'payload' import { checkRole } from './checkRole' -const adminsAndUser: Access = ({ req: { user } }) => { +export const adminsAndUser: Access = ({ req: { user } }) => { if (user) { if (checkRole(['admin'], user)) { return true } return { - id: user.id, + id: { equals: user.id }, } } return false } - -export default adminsAndUser diff --git a/examples/auth/src/collections/access/anyone.ts b/examples/auth/src/collections/access/anyone.ts index c098600337..bf37c3a115 100644 --- a/examples/auth/src/collections/access/anyone.ts +++ b/examples/auth/src/collections/access/anyone.ts @@ -1,3 +1,3 @@ -import type { Access } from 'payload/config' +import type { Access } from 'payload' export const anyone: Access = () => true diff --git a/examples/auth/src/collections/access/checkRole.ts b/examples/auth/src/collections/access/checkRole.ts index 88d91ccc40..b904e405e8 100644 --- a/examples/auth/src/collections/access/checkRole.ts +++ b/examples/auth/src/collections/access/checkRole.ts @@ -1,6 +1,6 @@ import type { User } from '../../payload-types' -export const checkRole = (allRoles: User['roles'] = [], user: User = undefined): boolean => { +export const checkRole = (allRoles: User['roles'] = [], user: User | null = null): boolean => { if (user) { if ( allRoles.some((role) => { @@ -8,8 +8,9 @@ export const checkRole = (allRoles: User['roles'] = [], user: User = undefined): return individualRole === role }) }) - ) - {return true} + ) { + return true + } } return false diff --git a/examples/auth/src/collections/hooks/protectRoles.ts b/examples/auth/src/collections/hooks/protectRoles.ts index a1a9fe2038..d2e2b7406d 100644 --- a/examples/auth/src/collections/hooks/protectRoles.ts +++ b/examples/auth/src/collections/hooks/protectRoles.ts @@ -1,4 +1,4 @@ -import type { FieldHook } from 'payload/types' +import type { FieldHook } from 'payload' import type { User } from '../../payload-types'