Spaces:
Sleeping
Sleeping
| import { | |
| Entity, | |
| PrimaryGeneratedColumn, | |
| Column, | |
| CreateDateColumn, | |
| ManyToOne, | |
| JoinColumn, | |
| } from 'typeorm'; | |
| import type { Relation } from 'typeorm'; | |
| import type { User } from './user.entity'; | |
| ('sessions') | |
| export class Session { | |
| ({ name: 'session_id' }) | |
| sessionId: number; | |
| ({ name: 'user_id', type: 'bigint', unsigned: true }) | |
| userId: number; | |
| ({ name: 'session_token', type: 'text' }) | |
| sessionToken: string; | |
| ({ name: 'ip_address', length: 45, nullable: true }) | |
| ipAddress?: string; | |
| ({ name: 'user_agent', type: 'text', nullable: true }) | |
| userAgent?: string; | |
| ({ name: 'device_type', length: 50, nullable: true }) | |
| deviceType?: string; | |
| ({ name: 'expires_at', type: 'datetime' }) | |
| expiresAt: Date; | |
| ({ name: 'remember_me', default: false }) | |
| rememberMe: boolean; | |
| ({ name: 'created_at' }) | |
| createdAt: Date; | |
| // Relationships | |
| ('User', 'sessions', { onDelete: 'CASCADE' }) | |
| ({ name: 'user_id' }) | |
| user: Relation<User>; | |
| } | |