Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
5 changes: 5 additions & 0 deletions src/DTOs/User.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export interface IUser {
name: string;
username: string;
email: string;
}
2 changes: 2 additions & 0 deletions src/DTOs/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export * from './User';
export * from './Minute';
1 change: 1 addition & 0 deletions src/assets/workInProgress.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import React from 'react';
import { useHistory } from 'react-router-dom';

import addIcon from '../../assets/add_icon.svg';
import homeIcon from '../../assets/home_icon.svg';
Expand All @@ -8,10 +9,19 @@ import logoutIcon from '../../assets/logout_icon.svg';
import { StyledHeader } from './styles';

const Header = () => {
const history = useHistory();

const handleNavigateToHome = () => {
history.push('/');
};

return (
<StyledHeader>
<section className="shortOptions">
<img src={homeIcon} alt="" />
<button type="button" onClick={handleNavigateToHome}>
<img src={homeIcon} alt="" />
</button>

<img src={addIcon} alt="" />
</section>

Expand Down
5 changes: 5 additions & 0 deletions src/components/Header/styles.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,9 @@ export const StyledHeader = styled.header`
width: 14.375rem;
}
}

button {
border: none;
background: none;
}
`;
35 changes: 35 additions & 0 deletions src/components/Route/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import React from 'react';

import Header from 'components/Header';

import { Route as ReactRoute } from 'react-router-dom';

interface RouteProps {
component: Function;
path: string;
exact?: boolean;
isPrivate?: boolean;
}

const Route = ({ component: Component, isPrivate, ...rest }: RouteProps) => {
return (
<ReactRoute
{...rest}
render={() => {
return (
<>
{isPrivate && <Header />}
<Component />
</>
);
}}
/>
);
};

Route.defaultProps = {
exact: false,
isPrivate: false,
};

export default Route;
35 changes: 35 additions & 0 deletions src/contexts/AuthContext.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import React, { createContext, useState } from 'react';

import { IUser } from 'DTOs';

interface IAuthProvider {
children: React.ReactNode;
}

interface IAuthContextData {
user: any;
setUser: Function;
}

export const AuthContext = createContext({} as IAuthContextData);

export const AuthProvider: React.FC<IAuthProvider> = ({
children,
}: IAuthProvider) => {
const [user, setUser] = useState<IUser>({
name: '',
username: '',
email: '',
});

return (
<AuthContext.Provider
value={{
user,
setUser,
}}
>
{children}
</AuthContext.Provider>
);
};
2 changes: 1 addition & 1 deletion src/contexts/MainContext.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
IAddressAndHour,
IProjectInfo,
ISubject,
} from 'pages/Main/components/MinuteViewer/components/Minute/DTOs';
} from 'DTOs';

interface IMainProvider {
children: React.ReactNode;
Expand Down
23 changes: 23 additions & 0 deletions src/pages/Home/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import React from 'react';
import { useHistory } from 'react-router-dom';

import { Container } from './styles';

const Home = () => {
const history = useHistory();

const handleNavigate = () => {
history.push('/minute');
};

return (
<Container>
Home asd123 12312
<button type="button" onClick={handleNavigate}>
Teste
</button>
</Container>
);
};

export default Home;
3 changes: 3 additions & 0 deletions src/pages/Home/styles.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import styled from 'styled-components';

export const Container = styled.div``;
17 changes: 17 additions & 0 deletions src/pages/LandingPage/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import React from 'react';

import { ReactComponent as WorkInProgress } from 'assets/workInProgress.svg';

import { Container } from './styles';

const LandingPage = () => {
return (
<Container>
<h1>LandingPage</h1>
<p>Working in progress</p>
<WorkInProgress />
</Container>
);
};

export default LandingPage;
8 changes: 8 additions & 0 deletions src/pages/LandingPage/styles.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import styled from 'styled-components';

export const Container = styled.div`
svg {
max-width: 40rem;
width: 100%;
}
`;
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@ import moment from 'moment';

import iacitLogo from 'assets/iacit_logo.jpg';

import { IAddressAndHour } from 'DTOs';
import { Container } from './styles';

import { IAddressAndHour } from '../../DTOs';

interface IGeneralInfoProps {
addressAndHour: IAddressAndHour;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import React from 'react';

import { IProjectInfo } from 'DTOs';
import { Container } from './styles';

import { IProjectInfo } from '../../DTOs';

interface IProjectProps {
projectInfo: IProjectInfo;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import React from 'react';
import { Table } from 'antd';

import { ISubject } from 'DTOs';
import { Container } from './styles';

import { ISubject } from '../../DTOs';

interface ISubjectsProp {
subjects: Array<ISubject>;
distributions: Array<String>;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import React from 'react';

import { ITopic } from 'DTOs';
import { Container } from './styles';

import { ITopic } from '../../DTOs';

interface ITopicsProps {
topics: Array<ITopic>;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
/* eslint-disable react/prop-types */
import React, { PureComponent } from 'react';

import { IMinute } from 'DTOs';
import GeneralInfo from './components/GeneralInfo';
import Project from './components/Project';
import Topics from './components/Topics';
import Subjects from './components/Subjects';

import { Container } from './styles';

import { IMinute } from './DTOs';

interface IPrintProps {
minute: IMinute;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,9 @@ import Button from 'components/Button/Button';
import Input from 'components/Input/Input';
import TextArea from 'components/TextArea/TextArea';

import { ISubject } from 'DTOs';
import { Container } from './styles';

import { ISubject } from '../../../MinuteViewer/components/Minute/DTOs';

interface ISubjectModalProps {
setOpenSubjectModal: Function;
setSubjects: Function;
Expand Down
5 changes: 3 additions & 2 deletions src/pages/Main/components/Topics/Topics.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@ import Input from 'components/Input/Input';
import Button from 'components/Button/Button';
import BoxInformation from 'components/BoxInformation/BoxInformation';
import ScrollBox from 'components/ScrollBox/ScrollBox';

import { ITopic } from 'DTOs';

import addIcon from '../../../../assets/add_icon.svg';

import StyledTopics from './styles';

import { ITopic } from '../MinuteViewer/components/Minute/DTOs';

const Topics = () => {
const { topics, setTopics } = useContext(MainContext);

Expand Down
7 changes: 1 addition & 6 deletions src/pages/Main/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import React, { useContext, useState } from 'react';

import { MainContext, MainProvider } from 'contexts/MainContext';

import Header from 'components/Header/Header';
import { IMinute } from 'DTOs';
import Initial from './components/Initial/Initial';
import ProjectInformation from './components/ProjectInformation/ProjectInformation';
import OptionButtons from './components/OptionButtons';
Expand All @@ -16,10 +16,6 @@ import ScheduleModal from './components/ScheduleModal';

import Container from './styles';

import {
IMinute,
} from './components/MinuteViewer/components/Minute/DTOs';

const Main = () => {
const {
topics,
Expand All @@ -46,7 +42,6 @@ const Main = () => {

return (
<>
<Header />
<MainProvider>
{showMinute && (
<MinuteViewer setShowMinute={setShowMinute} minute={minute} />
Expand Down
4 changes: 2 additions & 2 deletions src/pages/NewPassword/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import Logo from 'assets/logo.svg';

import StyledNewPassword from './styles';

const index = () => {
const NewPassword = () => {
return (
<StyledNewPassword>
<img src={Logo} alt="Logo Typext" />
Expand Down Expand Up @@ -38,4 +38,4 @@ const index = () => {
);
};

export default index;
export default NewPassword;
24 changes: 17 additions & 7 deletions src/routes.tsx
Original file line number Diff line number Diff line change
@@ -1,23 +1,33 @@
import React from 'react';
import RecoveryPassword from 'pages/RecoveryPassword';
import { Switch, Route, BrowserRouter } from 'react-router-dom';
import { Switch, BrowserRouter } from 'react-router-dom';

import { getMode } from 'services/api';

import Route from 'components/Route';

import LandingPage from 'pages/LandingPage';
import NewPassword from 'pages/NewPassword';
import RegisterNewUser from 'pages/RegisterNewUser';
import Home from 'pages/Home';
import Main from './pages/Main';
import Login from './pages/Login';
import InviteUsers from './pages/InviteUsers';

export default function Routes() {
const isNotProduction = getMode();

return (
<BrowserRouter>
<Switch>
<Route path="/" exact component={Main} />
<Route path="/new-password" exact component={NewPassword} />
<Route path="/recovery-password" exact component={RecoveryPassword} />
<Route path="/login" exact component={Login} />
<Route path="/register-new-user" exact component={RegisterNewUser} />
<Route path="/invite-users" exact component={InviteUsers} />
{isNotProduction && <Route path="/" exact component={LandingPage} />}
<Route path="/home" exact isPrivate component={Home} />
<Route path="/minute" isPrivate component={Main} />
<Route path="/reset" component={NewPassword} />
<Route path="/recovery" component={RecoveryPassword} />
<Route path="/login" component={Login} />
<Route path="/register" component={RegisterNewUser} />
<Route path="/invite" component={InviteUsers} />
</Switch>
</BrowserRouter>
);
Expand Down
7 changes: 7 additions & 0 deletions src/services/auth.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
export function getUser(): any {
const storegedUser = <string>localStorage.getItem('tpxt_user');

const user = JSON.parse(storegedUser);

return user;
}