import React, { Dispatch } from "react"; import { Page } from "@/pages/base"; import { Button, Container } from "@material-ui/core"; import { Action, useDispatch } from "@/state/actions"; import { Route, Switch, useHistory, useLocation, useRouteMatch } from "react-router-dom"; import { route } from "@/routing"; import { useVerticalSpacing } from "@/styles"; import { AppState } from "@/state/reducer"; import api from "@/api"; import { UserActions } from "@/state/actions/user"; import { sampleStudent } from "@/provider/dummy"; import { getAuthorizeUrl } from "@/api/user"; const authorizeUser = async (dispatch: Dispatch, getState: () => AppState): Promise => { const token = await api.user.login("test"); dispatch({ type: UserActions.Login, token, student: sampleStudent, }) } export const UserLoginPage = () => { const dispatch = useDispatch(); const history = useHistory(); const match = useRouteMatch(); const query = new URLSearchParams(useLocation().search); const handleSampleLogin = async () => { await dispatch(authorizeUser); history.push(route("home")); } const handlePgLogin = async () => { history.push(route("user_login") + "/pg"); } const classes = useVerticalSpacing(3); return Zaloguj się (window.location.href = getAuthorizeUrl())} /> Kod: { query.get("code") } ; }