mirror of
https://github.com/Dvorinka/Trackeep.git
synced 2026-06-03 20:12:58 +00:00
29 lines
991 B
Go
29 lines
991 B
Go
package models
|
|
|
|
import (
|
|
"time"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
// GitHubUserAuth stores encrypted GitHub App user tokens for a Trackeep user.
|
|
type GitHubUserAuth struct {
|
|
ID uint `json:"id" gorm:"primaryKey"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`
|
|
|
|
UserID uint `json:"user_id" gorm:"column:user_id;not null;uniqueIndex"`
|
|
GitHubUserID int `json:"github_user_id" gorm:"column:github_user_id;not null;uniqueIndex"`
|
|
GitHubLogin string `json:"github_login" gorm:"column:github_login;not null;size:255"`
|
|
|
|
AccessToken string `json:"-" gorm:"type:text;not null"`
|
|
RefreshToken string `json:"-" gorm:"type:text"`
|
|
|
|
AccessTokenExpiresAt *time.Time `json:"access_token_expires_at"`
|
|
RefreshTokenExpiresAt *time.Time `json:"refresh_token_expires_at"`
|
|
LastRefreshedAt *time.Time `json:"last_refreshed_at"`
|
|
|
|
User User `json:"-" gorm:"foreignKey:UserID;-:migration"`
|
|
}
|