feat: update .gitignore for Bun and generated files, minor formatting fix in password reset handler
This commit is contained in:
17
.gitignore
vendored
17
.gitignore
vendored
@@ -139,3 +139,20 @@ dist
|
|||||||
.yarn/install-state.gz
|
.yarn/install-state.gz
|
||||||
.pnp.*
|
.pnp.*
|
||||||
|
|
||||||
|
# Bun
|
||||||
|
bun.lock
|
||||||
|
|
||||||
|
# Generated
|
||||||
|
apps/backend/src/generated
|
||||||
|
apps/backend/prisma.config.js
|
||||||
|
apps/backend/prisma/*.js
|
||||||
|
apps/backend/prisma/*.seed-data.js
|
||||||
|
apps/backend/src/app.js
|
||||||
|
apps/backend/src/lib/*.js
|
||||||
|
apps/backend/src/middlewares/*.js
|
||||||
|
apps/backend/src/modules/**/*.js
|
||||||
|
apps/backend/src/register-routes.js
|
||||||
|
apps/backend/src/server.js
|
||||||
|
apps/backend/src/index.js
|
||||||
|
apps/backend/src/types/*.js
|
||||||
|
|
||||||
|
|||||||
@@ -57,6 +57,11 @@ export type CourtBooking = Prisma.CourtBookingModel
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export type OnboardingRequest = Prisma.OnboardingRequestModel
|
export type OnboardingRequest = Prisma.OnboardingRequestModel
|
||||||
|
/**
|
||||||
|
* Model PasswordResetRequest
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export type PasswordResetRequest = Prisma.PasswordResetRequestModel
|
||||||
/**
|
/**
|
||||||
* Model Plan
|
* Model Plan
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -81,6 +81,11 @@ export type CourtBooking = Prisma.CourtBookingModel
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export type OnboardingRequest = Prisma.OnboardingRequestModel
|
export type OnboardingRequest = Prisma.OnboardingRequestModel
|
||||||
|
/**
|
||||||
|
* Model PasswordResetRequest
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
export type PasswordResetRequest = Prisma.PasswordResetRequestModel
|
||||||
/**
|
/**
|
||||||
* Model Plan
|
* Model Plan
|
||||||
*
|
*
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -392,6 +392,7 @@ export const ModelName = {
|
|||||||
CourtPriceRule: 'CourtPriceRule',
|
CourtPriceRule: 'CourtPriceRule',
|
||||||
CourtBooking: 'CourtBooking',
|
CourtBooking: 'CourtBooking',
|
||||||
OnboardingRequest: 'OnboardingRequest',
|
OnboardingRequest: 'OnboardingRequest',
|
||||||
|
PasswordResetRequest: 'PasswordResetRequest',
|
||||||
Plan: 'Plan',
|
Plan: 'Plan',
|
||||||
User: 'User'
|
User: 'User'
|
||||||
} as const
|
} as const
|
||||||
@@ -409,7 +410,7 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
|
|||||||
omit: GlobalOmitOptions
|
omit: GlobalOmitOptions
|
||||||
}
|
}
|
||||||
meta: {
|
meta: {
|
||||||
modelProps: "complex" | "complexUser" | "sport" | "court" | "courtAvailability" | "courtPriceRule" | "courtBooking" | "onboardingRequest" | "plan" | "user"
|
modelProps: "complex" | "complexUser" | "sport" | "court" | "courtAvailability" | "courtPriceRule" | "courtBooking" | "onboardingRequest" | "passwordResetRequest" | "plan" | "user"
|
||||||
txIsolationLevel: TransactionIsolationLevel
|
txIsolationLevel: TransactionIsolationLevel
|
||||||
}
|
}
|
||||||
model: {
|
model: {
|
||||||
@@ -1005,6 +1006,80 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
PasswordResetRequest: {
|
||||||
|
payload: Prisma.$PasswordResetRequestPayload<ExtArgs>
|
||||||
|
fields: Prisma.PasswordResetRequestFieldRefs
|
||||||
|
operations: {
|
||||||
|
findUnique: {
|
||||||
|
args: Prisma.PasswordResetRequestFindUniqueArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload> | null
|
||||||
|
}
|
||||||
|
findUniqueOrThrow: {
|
||||||
|
args: Prisma.PasswordResetRequestFindUniqueOrThrowArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
findFirst: {
|
||||||
|
args: Prisma.PasswordResetRequestFindFirstArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload> | null
|
||||||
|
}
|
||||||
|
findFirstOrThrow: {
|
||||||
|
args: Prisma.PasswordResetRequestFindFirstOrThrowArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
findMany: {
|
||||||
|
args: Prisma.PasswordResetRequestFindManyArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>[]
|
||||||
|
}
|
||||||
|
create: {
|
||||||
|
args: Prisma.PasswordResetRequestCreateArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
createMany: {
|
||||||
|
args: Prisma.PasswordResetRequestCreateManyArgs<ExtArgs>
|
||||||
|
result: BatchPayload
|
||||||
|
}
|
||||||
|
createManyAndReturn: {
|
||||||
|
args: Prisma.PasswordResetRequestCreateManyAndReturnArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>[]
|
||||||
|
}
|
||||||
|
delete: {
|
||||||
|
args: Prisma.PasswordResetRequestDeleteArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
update: {
|
||||||
|
args: Prisma.PasswordResetRequestUpdateArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
deleteMany: {
|
||||||
|
args: Prisma.PasswordResetRequestDeleteManyArgs<ExtArgs>
|
||||||
|
result: BatchPayload
|
||||||
|
}
|
||||||
|
updateMany: {
|
||||||
|
args: Prisma.PasswordResetRequestUpdateManyArgs<ExtArgs>
|
||||||
|
result: BatchPayload
|
||||||
|
}
|
||||||
|
updateManyAndReturn: {
|
||||||
|
args: Prisma.PasswordResetRequestUpdateManyAndReturnArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>[]
|
||||||
|
}
|
||||||
|
upsert: {
|
||||||
|
args: Prisma.PasswordResetRequestUpsertArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.PayloadToResult<Prisma.$PasswordResetRequestPayload>
|
||||||
|
}
|
||||||
|
aggregate: {
|
||||||
|
args: Prisma.PasswordResetRequestAggregateArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.Optional<Prisma.AggregatePasswordResetRequest>
|
||||||
|
}
|
||||||
|
groupBy: {
|
||||||
|
args: Prisma.PasswordResetRequestGroupByArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.Optional<Prisma.PasswordResetRequestGroupByOutputType>[]
|
||||||
|
}
|
||||||
|
count: {
|
||||||
|
args: Prisma.PasswordResetRequestCountArgs<ExtArgs>
|
||||||
|
result: runtime.Types.Utils.Optional<Prisma.PasswordResetRequestCountAggregateOutputType> | number
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Plan: {
|
Plan: {
|
||||||
payload: Prisma.$PlanPayload<ExtArgs>
|
payload: Prisma.$PlanPayload<ExtArgs>
|
||||||
fields: Prisma.PlanFieldRefs
|
fields: Prisma.PlanFieldRefs
|
||||||
@@ -1307,6 +1382,22 @@ export const OnboardingRequestScalarFieldEnum = {
|
|||||||
export type OnboardingRequestScalarFieldEnum = (typeof OnboardingRequestScalarFieldEnum)[keyof typeof OnboardingRequestScalarFieldEnum]
|
export type OnboardingRequestScalarFieldEnum = (typeof OnboardingRequestScalarFieldEnum)[keyof typeof OnboardingRequestScalarFieldEnum]
|
||||||
|
|
||||||
|
|
||||||
|
export const PasswordResetRequestScalarFieldEnum = {
|
||||||
|
id: 'id',
|
||||||
|
email: 'email',
|
||||||
|
otpHash: 'otpHash',
|
||||||
|
otpExpiresAt: 'otpExpiresAt',
|
||||||
|
otpAttempts: 'otpAttempts',
|
||||||
|
otpLastSentAt: 'otpLastSentAt',
|
||||||
|
otpResendCount: 'otpResendCount',
|
||||||
|
usedAt: 'usedAt',
|
||||||
|
createdAt: 'createdAt',
|
||||||
|
updatedAt: 'updatedAt'
|
||||||
|
} as const
|
||||||
|
|
||||||
|
export type PasswordResetRequestScalarFieldEnum = (typeof PasswordResetRequestScalarFieldEnum)[keyof typeof PasswordResetRequestScalarFieldEnum]
|
||||||
|
|
||||||
|
|
||||||
export const PlanScalarFieldEnum = {
|
export const PlanScalarFieldEnum = {
|
||||||
code: 'code',
|
code: 'code',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
@@ -1611,6 +1702,7 @@ export type GlobalOmitConfig = {
|
|||||||
courtPriceRule?: Prisma.CourtPriceRuleOmit
|
courtPriceRule?: Prisma.CourtPriceRuleOmit
|
||||||
courtBooking?: Prisma.CourtBookingOmit
|
courtBooking?: Prisma.CourtBookingOmit
|
||||||
onboardingRequest?: Prisma.OnboardingRequestOmit
|
onboardingRequest?: Prisma.OnboardingRequestOmit
|
||||||
|
passwordResetRequest?: Prisma.PasswordResetRequestOmit
|
||||||
plan?: Prisma.PlanOmit
|
plan?: Prisma.PlanOmit
|
||||||
user?: Prisma.UserOmit
|
user?: Prisma.UserOmit
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ export const ModelName = {
|
|||||||
CourtPriceRule: 'CourtPriceRule',
|
CourtPriceRule: 'CourtPriceRule',
|
||||||
CourtBooking: 'CourtBooking',
|
CourtBooking: 'CourtBooking',
|
||||||
OnboardingRequest: 'OnboardingRequest',
|
OnboardingRequest: 'OnboardingRequest',
|
||||||
|
PasswordResetRequest: 'PasswordResetRequest',
|
||||||
Plan: 'Plan',
|
Plan: 'Plan',
|
||||||
User: 'User'
|
User: 'User'
|
||||||
} as const
|
} as const
|
||||||
@@ -194,6 +195,22 @@ export const OnboardingRequestScalarFieldEnum = {
|
|||||||
export type OnboardingRequestScalarFieldEnum = (typeof OnboardingRequestScalarFieldEnum)[keyof typeof OnboardingRequestScalarFieldEnum]
|
export type OnboardingRequestScalarFieldEnum = (typeof OnboardingRequestScalarFieldEnum)[keyof typeof OnboardingRequestScalarFieldEnum]
|
||||||
|
|
||||||
|
|
||||||
|
export const PasswordResetRequestScalarFieldEnum = {
|
||||||
|
id: 'id',
|
||||||
|
email: 'email',
|
||||||
|
otpHash: 'otpHash',
|
||||||
|
otpExpiresAt: 'otpExpiresAt',
|
||||||
|
otpAttempts: 'otpAttempts',
|
||||||
|
otpLastSentAt: 'otpLastSentAt',
|
||||||
|
otpResendCount: 'otpResendCount',
|
||||||
|
usedAt: 'usedAt',
|
||||||
|
createdAt: 'createdAt',
|
||||||
|
updatedAt: 'updatedAt'
|
||||||
|
} as const
|
||||||
|
|
||||||
|
export type PasswordResetRequestScalarFieldEnum = (typeof PasswordResetRequestScalarFieldEnum)[keyof typeof PasswordResetRequestScalarFieldEnum]
|
||||||
|
|
||||||
|
|
||||||
export const PlanScalarFieldEnum = {
|
export const PlanScalarFieldEnum = {
|
||||||
code: 'code',
|
code: 'code',
|
||||||
name: 'name',
|
name: 'name',
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ export type * from './models/CourtAvailability'
|
|||||||
export type * from './models/CourtPriceRule'
|
export type * from './models/CourtPriceRule'
|
||||||
export type * from './models/CourtBooking'
|
export type * from './models/CourtBooking'
|
||||||
export type * from './models/OnboardingRequest'
|
export type * from './models/OnboardingRequest'
|
||||||
|
export type * from './models/PasswordResetRequest'
|
||||||
export type * from './models/Plan'
|
export type * from './models/Plan'
|
||||||
export type * from './models/User'
|
export type * from './models/User'
|
||||||
export type * from './commonInputTypes'
|
export type * from './commonInputTypes'
|
||||||
@@ -5,10 +5,7 @@ import type { PasswordResetVerifyInput } from '@repo/api-contract';
|
|||||||
export async function verifyPasswordResetHandler(c: AppContext) {
|
export async function verifyPasswordResetHandler(c: AppContext) {
|
||||||
const payload = c.req.valid('json' as never) as PasswordResetVerifyInput;
|
const payload = c.req.valid('json' as never) as PasswordResetVerifyInput;
|
||||||
|
|
||||||
const ip =
|
const ip = c.req.header('x-forwarded-for') || c.req.header('cf-connecting-ip') || 'unknown';
|
||||||
c.req.header('x-forwarded-for') ||
|
|
||||||
c.req.header('cf-connecting-ip') ||
|
|
||||||
'unknown';
|
|
||||||
const userAgent = c.req.header('user-agent');
|
const userAgent = c.req.header('user-agent');
|
||||||
|
|
||||||
const result = await verifyOtpAndResetPassword(payload, ip, userAgent);
|
const result = await verifyOtpAndResetPassword(payload, ip, userAgent);
|
||||||
|
|||||||
Reference in New Issue
Block a user