add models dir and update zod user models

This commit is contained in:
Guillaume Dorce 2022-08-21 16:06:58 +02:00
parent 9eff4d2293
commit 13bba32a8d
5 changed files with 26 additions and 16 deletions

View File

@ -1,4 +1,5 @@
import { getUser, UserLoginModel } from '@/controller/UserController'; import { getUser } from '@/controller/UserController';
import UserLoginModel from '@/models/UserLoginModel';
import { comparePassword } from '@/controller/AuthController'; import { comparePassword } from '@/controller/AuthController';
import { Request, Response } from 'express'; import { Request, Response } from 'express';
import { User } from '@prisma/client'; import { User } from '@prisma/client';

View File

@ -1,4 +1,5 @@
import { newUser, UserModel } from '@/controller/UserController'; import { newUser } from '@/controller/UserController';
import UserModel from '@/models/UserModel';
import { hashPassword } from '@/controller/AuthController'; import { hashPassword } from '@/controller/AuthController';
import { User } from '@prisma/client'; import { User } from '@prisma/client';
import { Request, Response } from 'express'; import { Request, Response } from 'express';

View File

@ -1,17 +1,4 @@
import { PrismaClient, User } from '@prisma/client'; import { PrismaClient, User } from '@prisma/client';
import * as z from 'zod';
const UserModel = z.object({
email: z.string().email(),
password: z.string(),
firstname: z.string(),
lastname: z.string(),
});
const UserLoginModel = z.object({
email: z.string().email(),
password: z.string(),
});
const prisma = new PrismaClient(); const prisma = new PrismaClient();
@ -33,4 +20,4 @@ const newUser = (user: User) => {
return prismaUser; return prismaUser;
}; };
export { getUser, newUser, UserModel, UserLoginModel }; export { getUser, newUser };

View File

@ -0,0 +1,8 @@
import { z } from 'zod';
const UserLoginModel = z.object({
email: z.string().email(),
password: z.string(),
});
export default UserLoginModel;

13
src/models/UserModel.ts Normal file
View File

@ -0,0 +1,13 @@
import { z } from 'zod';
const UserModel = z.object({
id: z.string().optional(),
email: z.string().email(),
password: z.string(),
firstname: z.string(),
lastname: z.string(),
role: z.string().default('user'),
posts: z.array(z.string()).optional(),
});
export default UserModel;