661e417619
- Move src/data/{api,dto,schemas} directories to src/data/services/*
- Update all relative imports across the codebase to reference new paths
- Use CSS color tokens for splash button gradient in splash-button.module.css
- Add responsive sizes attribute to splash background image
- Add JSDoc documentation to splash-background component referencing original Dart implementation
33 lines
880 B
TypeScript
33 lines
880 B
TypeScript
/**
|
|
* 刷新 Token 响应 DTO
|
|
*/
|
|
import {
|
|
RefreshTokenResponseSchema,
|
|
type RefreshTokenResponseInput,
|
|
type RefreshTokenResponseData,
|
|
} from "@/data/services/schemas/auth/refresh_token_response";
|
|
|
|
export class RefreshTokenResponse {
|
|
declare readonly token: string;
|
|
declare readonly refreshToken: string;
|
|
declare readonly userId: string;
|
|
|
|
private constructor(input: RefreshTokenResponseInput) {
|
|
const data = RefreshTokenResponseSchema.parse(input);
|
|
Object.assign(this, data);
|
|
Object.freeze(this);
|
|
}
|
|
|
|
static from(input: RefreshTokenResponseInput): RefreshTokenResponse {
|
|
return new RefreshTokenResponse(input);
|
|
}
|
|
|
|
static fromJson(json: unknown): RefreshTokenResponse {
|
|
return RefreshTokenResponse.from(json as RefreshTokenResponseInput);
|
|
}
|
|
|
|
toJson(): RefreshTokenResponseData {
|
|
return RefreshTokenResponseSchema.parse(this);
|
|
}
|
|
}
|