// import { getConnection } from "@/db"; import { Post, postPlaceholder } from "@/model/Models"; import { getPosts, IPost } from "@/controller/Post"; import { NextApiRequest, NextApiResponse } from "next"; // import { MPost, MUser, MAuth } from "@/model/Models" // import { MPost } from "@/model/sequelize/Post"; // import { MAuth } from "@/model/sequelize/Auth"; import { MUser } from "@/model/sequelize/User"; import { DataType, Model, Sequelize, UUID } from "sequelize"; import { validatePassword, hashPassword } from "@/util/Auth"; async function POST(req: NextApiRequest, res: NextApiResponse){ MUser.sync(); const username = req.body.username; const password = req.body.password; await MUser.sync() var user = await MUser.findOne({ where: { username: username } }); if (user != undefined){ res.status(500).json("User with that username already exists"); return; } const hash = await hashPassword(password) user = await MUser.create({ username: username, password: hash }) res.status(200).json(user); return; } async function GET(req: NextApiRequest, res: NextApiResponse){ MUser.sync(); const username = req.body.username; const password = req.body.password; await MUser.sync() var users = await MUser.findAll(); res.status(200).json(users); return; } export default async function handler(req: NextApiRequest, res: NextApiResponse) { if (req.method === 'POST') { POST(req,res); } else if(req.method === 'GET'){ GET(req,res); } }