mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2025-05-17 00:24:43 -04:00
62 lines
1.2 KiB
TypeScript
62 lines
1.2 KiB
TypeScript
/*
|
|
* SPDX-FileCopyrightText: 2022 The HedgeDoc developers (see AUTHORS file)
|
|
*
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
*/
|
|
import { ApiProperty } from '@nestjs/swagger';
|
|
import { IsString } from 'class-validator';
|
|
|
|
import { BaseDto } from '../utils/base.dto.';
|
|
|
|
export class UserInfoDto extends BaseDto {
|
|
/**
|
|
* The username
|
|
* @example "john.smith"
|
|
*/
|
|
@IsString()
|
|
@ApiProperty()
|
|
username: string;
|
|
|
|
/**
|
|
* The display name
|
|
* @example "John Smith"
|
|
*/
|
|
@IsString()
|
|
@ApiProperty()
|
|
displayName: string;
|
|
|
|
/**
|
|
* URL of the profile picture
|
|
* @example "https://hedgedoc.example.com/uploads/johnsmith.png"
|
|
*/
|
|
@ApiProperty({
|
|
format: 'uri',
|
|
})
|
|
@IsString()
|
|
photo: string;
|
|
}
|
|
|
|
/**
|
|
* This DTO contains all attributes of the standard UserInfoDto
|
|
* in addition to the email address.
|
|
*/
|
|
export class FullUserInfoDto extends UserInfoDto {
|
|
/**
|
|
* Email address of the user
|
|
* @example "john.smith@example.com"
|
|
*/
|
|
@ApiProperty({
|
|
format: 'email',
|
|
})
|
|
@IsString()
|
|
email: string;
|
|
}
|
|
|
|
export class UserLoginInfoDto extends UserInfoDto {
|
|
/**
|
|
* Identifier of the auth provider that was used to log in
|
|
*/
|
|
@ApiProperty()
|
|
@IsString()
|
|
authProvider: string;
|
|
}
|