Skip to content

Commit

Permalink
Register Page Routing fixed using GraphQL Mutation, But still need a …
Browse files Browse the repository at this point in the history
…finishing work for making code cleaner!
  • Loading branch information
ChetanSaini12 committed Feb 7, 2024
1 parent 22cf96b commit 77dd32f
Show file tree
Hide file tree
Showing 14 changed files with 297 additions and 119 deletions.
1 change: 1 addition & 0 deletions backend/src/controllers/createUser.controller.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import {prisma} from '../../prisma/index.js'
export const createUserInDB = async (_, payload) => {
console.log("Creating user" , payload)
const user = await prisma.user.create({
data: payload.User,
})
Expand Down
4 changes: 3 additions & 1 deletion backend/src/graphql/User/mutations.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
export const mutations = `#graphql
createUser(User: UserInput) : User
`
tempMut(tempVal : String) : String
`
14 changes: 9 additions & 5 deletions backend/src/graphql/User/resolvers.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
import { getAllUserData } from "../../controllers/allUser.controller.js";
import { createUserInDB } from "../../controllers/createUser.controller.js";
import { getAllUserData } from '../../controllers/allUser.controller.js'
import { createUserInDB } from '../../controllers/createUser.controller.js'

const queries = {
getAllUser : () => getAllUserData()
getAllUser: () => getAllUserData(),
}

const mutations = {
createUser : (_, payload) => createUserInDB(_, payload)
createUser: (_, payload) => createUserInDB(_, payload),
tempMut: (_, payload) => {
console.log('PAYLOAD', payload.tempVal)
return payload.tempVal
}
}

export const resolvers = {queries, mutations}
export const resolvers = { queries, mutations }
1 change: 0 additions & 1 deletion frontend/.env

This file was deleted.

20 changes: 16 additions & 4 deletions frontend/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"all": "^0.0.0",
"dotenv": "^16.4.1",
"flowbite-react": "^0.7.2",
"graphql": "^16.8.1",
"react": "^18.2.0",
Expand Down
44 changes: 22 additions & 22 deletions frontend/src/App.jsx
Original file line number Diff line number Diff line change
@@ -1,29 +1,29 @@
import React from 'react'
import { BrowserRouter, Route, Routes } from 'react-router-dom'
import Dashboard from './Pages/Dashboard';
import Home from './Pages/Home';
import Header from './Components/Header';
import Quizes from './Pages/Quizes';
import Discuss from './Pages/Discuss';
import SignUp from './Pages/SignUp';
import SignIn from './Pages/SignIn';
import FooterCom from './Components/Footer';


import React from "react";
import { BrowserRouter, Route, Routes } from "react-router-dom";
import Dashboard from "./Pages/Dashboard";
import Home from "./Pages/Home";
import Header from "./Components/Header";
import Quizes from "./Pages/Quizes";
import Discuss from "./Pages/Discuss";
import SignUp from "./Pages/SignUp";
import SignIn from "./Pages/SignIn";
import FooterCom from "./Components/Footer";
import AllUsers from "./Pages/AllUsers";

function App() {
return (
<BrowserRouter>
<Header/>
<Routes>
<Route path='/' element={<Home/>}></Route>
<Route path='/dashboard' element={<Dashboard></Dashboard>}></Route>
<Route path='/quizes' element={<Quizes></Quizes>}></Route>
<Route path='/discuss' element={<Discuss></Discuss>}></Route>
<Route path='/register' element={<SignUp></SignUp>}></Route>
<Route path='/login' element={<SignIn></SignIn>}></Route>
</Routes>
<FooterCom></FooterCom>
<Header />
<Routes>
<Route path="/" element={<Home />}></Route> */
<Route path="/faltu" element={<AllUsers />}></Route>
<Route path="/dashboard" element={<Dashboard></Dashboard>}></Route>
<Route path="/quizes" element={<Quizes></Quizes>}></Route>
<Route path="/discuss" element={<Discuss></Discuss>}></Route>
<Route path="/login" element={<SignIn></SignIn>}></Route>
<Route path="/register" element={<SignUp></SignUp>}></Route>
</Routes>
<FooterCom></FooterCom>
</BrowserRouter>
);
}
Expand Down
66 changes: 66 additions & 0 deletions frontend/src/Pages/AllUsers.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query
// Its a temparory file created for making a sample graphQl query


import { useMutation, useQuery } from "@apollo/client";
import React, { useState } from "react";
import { ALL_USER } from "../gqlOperatons/queries";
import { TEMP_MUT } from "../gqlOperatons/mutations";

function AllUsers() {
const { data, loading: queryLoading, error: queryError } = useQuery(ALL_USER);
const [tempData, setTempData] = useState("");
const [tempStr, { loading: mutationLoading, error: mutationError }] = useMutation(TEMP_MUT, {
variables: { tempVal: "JAI SHREE RAM!!" },
onCompleted: (data) => {
// Update state with the received string
setTempData(data.tempMut);
},
});

return (
<>
<div>AllUsers</div>
{data && (
<>
{data.getAllUser.map((user) => (
<div key={user.id}>
<div>USERNAME : {user.username}</div>
<div>FIRSTNAME : {user.firstName}</div>
<div>LASTNAME : {user.lastName}</div>
<div>EMAIL : {user.email}</div>
<div>MOBILENUM : {user.mobileNum}</div>
</div>
))}
</>
)}
{queryLoading && <div>Loading...</div>}
{queryError && <div>{queryError.message}</div>}
<button
onClick={tempStr}
>
CLICK
</button>
{mutationLoading && <div>Loading...</div>}
{mutationError && <div>{mutationError.message}</div>}
<div>{tempData}</div>
</>
);
}

export default AllUsers;
Loading

0 comments on commit 77dd32f

Please sign in to comment.