Refactoring

* Refactor workspace membership system
* Create setup endpoint
* Use Passport.js
* Several updates and fixes
This commit is contained in:
Philipinho
2024-03-16 22:58:12 +00:00
parent b42fe48e9b
commit a821e37028
87 changed files with 2703 additions and 2307 deletions

View File

@ -0,0 +1,15 @@
import { IsNotEmpty, IsString, MaxLength, MinLength } from 'class-validator';
import { CreateUserDto } from './create-user.dto';
export class CreateAdminUserDto extends CreateUserDto {
@IsNotEmpty()
@MinLength(3)
@MaxLength(35)
name: string;
@IsNotEmpty()
@MinLength(4)
@MaxLength(35)
@IsString()
workspaceName: string;
}

View File

@ -0,0 +1,24 @@
import {
IsEmail,
IsNotEmpty,
IsOptional,
IsString, MaxLength,
MinLength,
} from 'class-validator';
export class CreateUserDto {
@IsOptional()
@MinLength(3)
@MaxLength(35)
@IsString()
name: string;
@IsNotEmpty()
@IsEmail()
email: string;
@IsNotEmpty()
@MinLength(8)
@IsString()
password: string;
}

View File

@ -0,0 +1,16 @@
export enum JwtType {
ACCESS = 'access',
REFRESH = 'refresh',
}
export type JwtPayload = {
sub: string;
email: string;
workspaceId: string;
type: 'access';
};
export type JwtRefreshPayload = {
sub: string;
workspaceId: string;
type: 'refresh';
};