Skip to content

Instantly share code, notes, and snippets.

View full-stack-concepts's full-sized avatar

full-stack-concepts

View GitHub Profile
import React, { useEffect, useContext } from 'react';
import { useForm } from 'react-hook-form';
import { yupResolver } from '@hookform/resolvers/yup';
import * as yup from "yup";
import { Box, Typography } from '@mui/material';
import { Password } from '../../../inputs';
const formSchema = yup.object({
password: yup.string().required('Password is required').min(8).max(16),
}).required();
import React, { useEffect, useContext } from 'react';
import { useForm } from 'react-hook-form';
import { yupResolver } from '@hookform/resolvers/yup';
import * as yup from "yup";
import { Box, Typography } from '@mui/material';
import { Email } from '../../../inputs';
const formSchema = yup.object({
email: yup.string().email('Must be a valid email').required('Email is required'),
}).required();
import React, {Fragment, useEffect, useState, useContext} from 'react';
import { useNavigate } from 'react-router-dom';
import { FormContext } from './FormContext';
import { useSelector, useDispatch } from 'react-redux';
import { loginUser, clearFetchStatus } from '../../Store/UserSlice';
import StepperBody from '../StepperBody';
import toast from 'react-hot-toast';
const steps = ['Your email', 'Your Password'];
import express from 'express';
import { nanoid } from 'nanoid';
const idLength = 8;
const router = express.Router();
/***
* List all pusers
*/
router.get("/", (req, res) => {
import {createContext, useState} from 'react';
export const FormContext = createContext();
export const FormContextProvider = ({children}) => {
const [email, setEmail] = useState();
const [password, setPassword] = useState();
const [step1, setStep1Finished ] = useState(false);
const [finished, setFinished] = useState(false);
const formContextValues = {
email, setEmail,
password, setPassword,
import React from 'react';
import { Controller } from 'react-hook-form';
import TextField from '@mui/material/TextField';
function defaultTextField({
fieldName,
fieldType,
control,
register,
label,
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider} from 'react-redux';
import { store } from './Store/';
import App from './App';
import reportWebVitals from './reportWebVitals';
ReactDOM.render(
<React.StrictMode>
<Provider store={store}>
import { combineReducers } from "redux";
import { configureStore } from "@reduxjs/toolkit";
import UserSlice from './UserSlice';
const rootReducer = combineReducers({
user: UserSlice
});
export const store = configureStore({
reducer: rootReducer,
/* eslint-disabled */
import { createSlice, createAsyncThunk } from "@reduxjs/toolkit";
export const getSettings = store => {
return store.getState();
};
export const signupUser = createAsyncThunk(
'user/signup',
async ({ email, password }, thunkAPI) => {
try {
import express from 'express';
import { nanoid } from 'nanoid';
const idLength = 8;
const router = express.Router();
/***
* List all pusers
*/
router.get("/", (req, res) => {