Skip to main content

PrismaAuthRepository

@adamondo/backend


@adamondo/backend / infrastructure/prisma/repositories/PrismaAuthRepository

infrastructure/prisma/repositories/PrismaAuthRepository

Classes

PrismaAuthRepository

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:13

Implements

Constructors

Constructor

new PrismaAuthRepository(prisma): PrismaAuthRepository

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:14

Parameters
prisma

PrismaClient

Returns

PrismaAuthRepository

Methods

countEmailToken()

countEmailToken(email, token): Promise<number>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:16

Parameters
email

string

token

string

Returns

Promise<number>

Implementation of

AuthRepository.countEmailToken

findUserIdByEmail()

findUserIdByEmail(email): Promise<string | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:22

Parameters
email

string

Returns

Promise<string | null>

Implementation of

AuthRepository.findUserIdByEmail

findUserWithProfile()

findUserWithProfile(params): Promise<any>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:30

Parameters
params
userId

string

attributes?

string[]

profileAttributes?

string[]

Returns

Promise<any>

Implementation of

AuthRepository.findUserWithProfile

findActiveUserLoginByEmail()

findActiveUserLoginByEmail(email): Promise<{ id: string; email: string; password: string; userBanStatus: boolean | null; userDeletedAt: Date | null; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:61

Parameters
email

string

Returns

Promise<{ id: string; email: string; password: string; userBanStatus: boolean | null; userDeletedAt: Date | null; } | null>

Implementation of

AuthRepository.findActiveUserLoginByEmail

findAnyActiveUserByEmail()

findAnyActiveUserByEmail(email): Promise<{ id: string; email: string; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:95

Parameters
email

string

Returns

Promise<{ id: string; email: string; } | null>

Implementation of

AuthRepository.findAnyActiveUserByEmail

createUserWithProfile()

createUserWithProfile(input): Promise<{ userId: string; emailToken: string; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:104

Parameters
input
email

string

password

string

type

string

firstName

string

lastName

string

displayName

string

isEmailConfirmed

boolean

emailToken

string

picture?

string | null

Returns

Promise<{ userId: string; emailToken: string; } | null>

Implementation of

AuthRepository.createUserWithProfile

findEmailTokenByUserId()

findEmailTokenByUserId(userId): Promise<string | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:147

Parameters
userId

string

Returns

Promise<string | null>

Implementation of

AuthRepository.findEmailTokenByUserId

markUserEmailConfirmed()

markUserEmailConfirmed(userId): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:157

Parameters
userId

string

Returns

Promise<void>

Implementation of

AuthRepository.markUserEmailConfirmed

deleteEmailToken()

deleteEmailToken(email, token): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:164

Parameters
email

string

token

string

Returns

Promise<void>

Implementation of

AuthRepository.deleteEmailToken

findEmailTokenByUserAndEmail()

findEmailTokenByUserAndEmail(userId, email): Promise<string | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:170

Parameters
userId

string

email

string

Returns

Promise<string | null>

Implementation of

AuthRepository.findEmailTokenByUserAndEmail

createEmailToken()

createEmailToken(userId, email, token): Promise<boolean>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:178

Parameters
userId

string

email

string

token

string

Returns

Promise<boolean>

Implementation of

AuthRepository.createEmailToken

findUserFirstName()

findUserFirstName(userId): Promise<string | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:187

Parameters
userId

string

Returns

Promise<string | null>

Implementation of

AuthRepository.findUserFirstName

existsForgotPasswordToken()

existsForgotPasswordToken(email, token): Promise<boolean>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:196

Parameters
email

string

token

string

Returns

Promise<boolean>

Implementation of

AuthRepository.existsForgotPasswordToken

deleteForgotPasswordByEmailAndUserId()

deleteForgotPasswordByEmailAndUserId(email, userId): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:204

Parameters
email

string

userId

string

Returns

Promise<void>

Implementation of

AuthRepository.deleteForgotPasswordByEmailAndUserId

createForgotPasswordToken()

createForgotPasswordToken(email, userId, token): Promise<string | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:210

Parameters
email

string

userId

string

token

string

Returns

Promise<string | null>

Implementation of

AuthRepository.createForgotPasswordToken

updateUserPasswordByEmail()

updateUserPasswordByEmail(email, hashedPassword): Promise<boolean>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:226

Parameters
email

string

hashedPassword

string

Returns

Promise<boolean>

Implementation of

AuthRepository.updateUserPasswordByEmail

deleteForgotPasswordByEmail()

deleteForgotPasswordByEmail(email): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:237

Parameters
email

string

Returns

Promise<void>

Implementation of

AuthRepository.deleteForgotPasswordByEmail

findUserPermissions()

findUserPermissions(userId): Promise<{ permissions: string[]; roleId: number | null; isSuperAdmin: boolean; }>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:243

Parameters
userId

string

Returns

Promise<{ permissions: string[]; roleId: number | null; isSuperAdmin: boolean; }>

Implementation of

AuthRepository.findUserPermissions

findUserByEmail()

findUserByEmail(email): Promise<{ id: string; email: string; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:292

Parameters
email

string

Returns

Promise<{ id: string; email: string; } | null>

Implementation of

AuthRepository.findUserByEmail

findUserProfileByUserId()

findUserProfileByUserId(userId): Promise<{ firstName: string | null; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:301

Parameters
userId

string

Returns

Promise<{ firstName: string | null; } | null>

Implementation of

AuthRepository.findUserProfileByUserId

findUserByEmailForUpdate()

findUserByEmailForUpdate(email): Promise<{ id: string; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:310

Parameters
email

string

Returns

Promise<{ id: string; } | null>

Implementation of

AuthRepository.findUserByEmailForUpdate

updateUserById()

updateUserById(userId, data): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:319

Parameters
userId

string

data
email?

string

type?

string

userBanStatus?

boolean

roleId?

number

Returns

Promise<void>

Implementation of

AuthRepository.updateUserById

updateUserProfileByUserId()

updateUserProfileByUserId(userId, data): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:329

Parameters
userId

string

data
firstName?

string

lastName?

string

displayName?

string

preferredLanguage?

string

preferredCurrency?

string

location?

string

info?

string

picture?

string | null

gender?

string

Returns

Promise<void>

Implementation of

AuthRepository.updateUserProfileByUserId

updateUserVerifiedInfo()

updateUserVerifiedInfo(userId, data): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:349

Parameters
userId

string

data
isGoogleConnected?

boolean

isAppleConnected?

boolean

isEmailConfirmed?

boolean

Returns

Promise<void>

Implementation of

AuthRepository.updateUserVerifiedInfo

findUserAccountById()

findUserAccountById(userId): Promise<Omit<UserAccountEntity, "status" | "permissions"> | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:363

Parameters
userId

string

Returns

Promise<Omit<UserAccountEntity, "status" | "permissions"> | null>

Implementation of

AuthRepository.findUserAccountById

isUserBanned()

isUserBanned(userId): Promise<boolean>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:394

Parameters
userId

string

Returns

Promise<boolean>

Implementation of

AuthRepository.isUserBanned

findActiveEmailById()

findActiveEmailById(id): Promise<{ email: string; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:402

Parameters
id

string

Returns

Promise<{ email: string; } | null>

Implementation of

AuthRepository.findActiveEmailById

findUserById()

findUserById(id): Promise<{ id: string; email: string; type: string | null; userBanStatus?: boolean | null; } | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:415

Parameters
id

string

Returns

Promise<{ id: string; email: string; type: string | null; userBanStatus?: boolean | null; } | null>

Implementation of

AuthRepository.findUserById

findRoleIdByUserId()

findRoleIdByUserId(userId): Promise<number | null>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:423

Parameters
userId

string

Returns

Promise<number | null>

Implementation of

AuthRepository.findRoleIdByUserId

updateEmailTokenByUserId()

updateEmailTokenByUserId(userId, email): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:431

Parameters
userId

string

email

string

Returns

Promise<void>

Implementation of

AuthRepository.updateEmailTokenByUserId

searchUsers()

searchUsers(params): Promise<{ users: any[]; count: number; }>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:438

Parameters
params
limit

number

offset

number

searchQuery?

string

Returns

Promise<{ users: any[]; count: number; }>

Implementation of

AuthRepository.searchUsers

getUserDashboardStats()

getUserDashboardStats(): Promise<{ totalCount: number; todayCount: number; monthCount: number; }>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:526

Returns

Promise<{ totalCount: number; todayCount: number; monthCount: number; }>

Implementation of

AuthRepository.getUserDashboardStats

permanentlyDeleteUser()

permanentlyDeleteUser(userId): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:562

Parameters
userId

string

Returns

Promise<void>

Implementation of

AuthRepository.permanentlyDeleteUser

findEmailRecipients()

findEmailRecipients(params): Promise<any[] | object[]>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:583

Parameters
params
allUsers

boolean

userIds?

string[]

Returns

Promise<any[] | object[]>

Implementation of

AuthRepository.findEmailRecipients

findPushRecipients()

findPushRecipients(params): Promise<object[]>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:593

Parameters
params
allUsers

boolean

userIds?

string[]

Returns

Promise<object[]>

Implementation of

AuthRepository.findPushRecipients

findUserLoginsByUserId()

findUserLoginsByUserId(userId): Promise<object[]>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:603

Parameters
userId

string

Returns

Promise<object[]>

Implementation of

AuthRepository.findUserLoginsByUserId

deleteUserLoginByDeviceId()

deleteUserLoginByDeviceId(deviceId): Promise<void>

Defined in: src/infrastructure/prisma/repositories/PrismaAuthRepository.ts:610

Parameters
deviceId

string

Returns

Promise<void>

Implementation of

AuthRepository.deleteUserLoginByDeviceId