27 lines
656 B
TypeScript
27 lines
656 B
TypeScript
import type { Relation } from "typeorm";
|
|
|
|
import { Entity, ManyToOne, OneToOne } from "typeorm";
|
|
|
|
import { BaseToken } from "./base.token";
|
|
import { RefreshTokenEntity } from "./refresh-token.entity";
|
|
import { UserEntity } from "./user.entity";
|
|
|
|
@Entity("user_access_tokens")
|
|
export class AccessTokenEntity extends BaseToken {
|
|
/**
|
|
* 关联的刷新令牌
|
|
*/
|
|
@OneToOne(
|
|
() => RefreshTokenEntity,
|
|
(refreshToken) => refreshToken.accessToken,
|
|
{
|
|
cascade: true,
|
|
},
|
|
)
|
|
refreshToken: RefreshTokenEntity;
|
|
@ManyToOne((_) => UserEntity, (user) => user.accessTokens, {
|
|
onDelete: "CASCADE",
|
|
})
|
|
user: Relation<UserEntity>;
|
|
}
|