Files
easywish/backend/internal/database/models.go
Nikolai Papin d8ea9f79c6 feat: add session expiration tracking and validation
feat: implement Redis caching for terminated sessions
feat: add new session GUID queries for validation
refactor: extend Session model with last_refresh_exp_time
refactor: update token generation to include role and session
refactor: modify auth middleware to validate session status
refactor: replace GetUserSessions with GetValidUserSessions
chore: add uuid/v5 dependency
fix: update router to pass dependencies to auth middleware
chore: update SQL schema and queries for new expiration field
2025-07-14 20:44:30 +03:00

85 lines
1.7 KiB
Go

// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.29.0
package database
import (
"github.com/jackc/pgx/v5/pgtype"
)
type BannedUser struct {
ID int64
UserID int64
Date pgtype.Timestamp
Reason *string
ExpiresAt pgtype.Timestamp
BannedBy *string
Pardoned *bool
PardonedBy *string
}
type ConfirmationCode struct {
ID int64
UserID int64
CodeType int32
CodeHash string
ExpiresAt pgtype.Timestamp
Used *bool
Deleted *bool
}
type LoginInformation struct {
ID int64
UserID int64
Email *string
PasswordHash string
TotpEncrypted *string
Email2faEnabled *bool
PasswordChangeDate pgtype.Timestamp
}
type Profile struct {
ID int64
UserID int64
Name string
Bio *string
AvatarUrl *string
Birthday pgtype.Timestamp
Color *string
ColorGrad *string
}
type ProfileSetting struct {
ID int64
ProfileID int64
HideFulfilled *bool
HideProfileDetails *bool
HideForUnauthenticated *bool
HideBirthday *bool
HideDates *bool
Captcha *bool
FollowersOnlyInteraction *bool
}
type Session struct {
ID int64
UserID int64
Guid pgtype.UUID
Name *string
Platform *string
LatestIp *string
LoginTime pgtype.Timestamp
LastRefreshExpTime pgtype.Timestamp
LastSeenDate pgtype.Timestamp
Terminated *bool
}
type User struct {
ID int64
Username string
Verified *bool
RegistrationDate pgtype.Timestamp
Deleted *bool
}