diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/DTOs/index.ts b/src/DTOs/Minute.tsx
similarity index 100%
rename from src/pages/Main/components/MinuteViewer/components/Minute/DTOs/index.ts
rename to src/DTOs/Minute.tsx
diff --git a/src/DTOs/User.tsx b/src/DTOs/User.tsx
new file mode 100644
index 0000000..3036c55
--- /dev/null
+++ b/src/DTOs/User.tsx
@@ -0,0 +1,5 @@
+export interface IUser {
+ name: string;
+ username: string;
+ email: string;
+}
diff --git a/src/DTOs/index.tsx b/src/DTOs/index.tsx
new file mode 100644
index 0000000..61fc5df
--- /dev/null
+++ b/src/DTOs/index.tsx
@@ -0,0 +1,2 @@
+export * from './User';
+export * from './Minute';
diff --git a/src/assets/workInProgress.svg b/src/assets/workInProgress.svg
new file mode 100644
index 0000000..7884dd3
--- /dev/null
+++ b/src/assets/workInProgress.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/Header/Header.tsx b/src/components/Header/index.tsx
similarity index 71%
rename from src/components/Header/Header.tsx
rename to src/components/Header/index.tsx
index 2ae61f9..22b97d5 100644
--- a/src/components/Header/Header.tsx
+++ b/src/components/Header/index.tsx
@@ -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';
@@ -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 (
diff --git a/src/components/Header/styles.ts b/src/components/Header/styles.ts
index afeccb7..c3135a8 100644
--- a/src/components/Header/styles.ts
+++ b/src/components/Header/styles.ts
@@ -33,4 +33,9 @@ export const StyledHeader = styled.header`
width: 14.375rem;
}
}
+
+ button {
+ border: none;
+ background: none;
+ }
`;
diff --git a/src/components/Route/index.tsx b/src/components/Route/index.tsx
new file mode 100644
index 0000000..e9d4f5b
--- /dev/null
+++ b/src/components/Route/index.tsx
@@ -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 (
+ {
+ return (
+ <>
+ {isPrivate && }
+
+ >
+ );
+ }}
+ />
+ );
+};
+
+Route.defaultProps = {
+ exact: false,
+ isPrivate: false,
+};
+
+export default Route;
diff --git a/src/contexts/AuthContext.tsx b/src/contexts/AuthContext.tsx
new file mode 100644
index 0000000..c4622d2
--- /dev/null
+++ b/src/contexts/AuthContext.tsx
@@ -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 = ({
+ children,
+}: IAuthProvider) => {
+ const [user, setUser] = useState({
+ name: '',
+ username: '',
+ email: '',
+ });
+
+ return (
+
+ {children}
+
+ );
+};
diff --git a/src/contexts/MainContext.tsx b/src/contexts/MainContext.tsx
index 2a63190..2de0f9b 100644
--- a/src/contexts/MainContext.tsx
+++ b/src/contexts/MainContext.tsx
@@ -5,7 +5,7 @@ import {
IAddressAndHour,
IProjectInfo,
ISubject,
-} from 'pages/Main/components/MinuteViewer/components/Minute/DTOs';
+} from 'DTOs';
interface IMainProvider {
children: React.ReactNode;
diff --git a/src/pages/Home/index.tsx b/src/pages/Home/index.tsx
new file mode 100644
index 0000000..0bce22c
--- /dev/null
+++ b/src/pages/Home/index.tsx
@@ -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 (
+
+ Home asd123 12312
+
+
+ );
+};
+
+export default Home;
diff --git a/src/pages/Home/styles.ts b/src/pages/Home/styles.ts
new file mode 100644
index 0000000..c338983
--- /dev/null
+++ b/src/pages/Home/styles.ts
@@ -0,0 +1,3 @@
+import styled from 'styled-components';
+
+export const Container = styled.div``;
diff --git a/src/pages/LandingPage/index.tsx b/src/pages/LandingPage/index.tsx
new file mode 100644
index 0000000..54871ed
--- /dev/null
+++ b/src/pages/LandingPage/index.tsx
@@ -0,0 +1,17 @@
+import React from 'react';
+
+import { ReactComponent as WorkInProgress } from 'assets/workInProgress.svg';
+
+import { Container } from './styles';
+
+const LandingPage = () => {
+ return (
+
+ LandingPage
+ Working in progress
+
+
+ );
+};
+
+export default LandingPage;
diff --git a/src/pages/LandingPage/styles.ts b/src/pages/LandingPage/styles.ts
new file mode 100644
index 0000000..0175e3c
--- /dev/null
+++ b/src/pages/LandingPage/styles.ts
@@ -0,0 +1,8 @@
+import styled from 'styled-components';
+
+export const Container = styled.div`
+ svg {
+ max-width: 40rem;
+ width: 100%;
+ }
+`;
diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/components/GeneralInfo/index.tsx b/src/pages/Main/components/MinuteViewer/components/Minute/components/GeneralInfo/index.tsx
index 7fdae1c..bb4a191 100644
--- a/src/pages/Main/components/MinuteViewer/components/Minute/components/GeneralInfo/index.tsx
+++ b/src/pages/Main/components/MinuteViewer/components/Minute/components/GeneralInfo/index.tsx
@@ -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;
}
diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/components/Project/index.tsx b/src/pages/Main/components/MinuteViewer/components/Minute/components/Project/index.tsx
index 6370f51..b8c086b 100644
--- a/src/pages/Main/components/MinuteViewer/components/Minute/components/Project/index.tsx
+++ b/src/pages/Main/components/MinuteViewer/components/Minute/components/Project/index.tsx
@@ -1,9 +1,8 @@
import React from 'react';
+import { IProjectInfo } from 'DTOs';
import { Container } from './styles';
-import { IProjectInfo } from '../../DTOs';
-
interface IProjectProps {
projectInfo: IProjectInfo;
}
diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/components/Subjects/index.tsx b/src/pages/Main/components/MinuteViewer/components/Minute/components/Subjects/index.tsx
index f72a1ef..9379549 100644
--- a/src/pages/Main/components/MinuteViewer/components/Minute/components/Subjects/index.tsx
+++ b/src/pages/Main/components/MinuteViewer/components/Minute/components/Subjects/index.tsx
@@ -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;
distributions: Array;
diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/components/Topics/index.tsx b/src/pages/Main/components/MinuteViewer/components/Minute/components/Topics/index.tsx
index 8030cc5..89eb392 100644
--- a/src/pages/Main/components/MinuteViewer/components/Minute/components/Topics/index.tsx
+++ b/src/pages/Main/components/MinuteViewer/components/Minute/components/Topics/index.tsx
@@ -1,9 +1,8 @@
import React from 'react';
+import { ITopic } from 'DTOs';
import { Container } from './styles';
-import { ITopic } from '../../DTOs';
-
interface ITopicsProps {
topics: Array;
}
diff --git a/src/pages/Main/components/MinuteViewer/components/Minute/index.tsx b/src/pages/Main/components/MinuteViewer/components/Minute/index.tsx
index 67dbbd5..48e85b8 100644
--- a/src/pages/Main/components/MinuteViewer/components/Minute/index.tsx
+++ b/src/pages/Main/components/MinuteViewer/components/Minute/index.tsx
@@ -1,6 +1,7 @@
/* 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';
@@ -8,8 +9,6 @@ import Subjects from './components/Subjects';
import { Container } from './styles';
-import { IMinute } from './DTOs';
-
interface IPrintProps {
minute: IMinute;
}
diff --git a/src/pages/Main/components/Subjects/components/SubjectModal/index.tsx b/src/pages/Main/components/Subjects/components/SubjectModal/index.tsx
index de43f44..10a36cc 100644
--- a/src/pages/Main/components/Subjects/components/SubjectModal/index.tsx
+++ b/src/pages/Main/components/Subjects/components/SubjectModal/index.tsx
@@ -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;
diff --git a/src/pages/Main/components/Topics/Topics.tsx b/src/pages/Main/components/Topics/Topics.tsx
index 0e3988b..8bd90e5 100644
--- a/src/pages/Main/components/Topics/Topics.tsx
+++ b/src/pages/Main/components/Topics/Topics.tsx
@@ -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);
diff --git a/src/pages/Main/index.tsx b/src/pages/Main/index.tsx
index 50f9716..92448ab 100644
--- a/src/pages/Main/index.tsx
+++ b/src/pages/Main/index.tsx
@@ -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';
@@ -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,
@@ -46,7 +42,6 @@ const Main = () => {
return (
<>
-
{showMinute && (
diff --git a/src/pages/NewPassword/index.tsx b/src/pages/NewPassword/index.tsx
index dc867cf..a950d92 100644
--- a/src/pages/NewPassword/index.tsx
+++ b/src/pages/NewPassword/index.tsx
@@ -6,7 +6,7 @@ import Logo from 'assets/logo.svg';
import StyledNewPassword from './styles';
-const index = () => {
+const NewPassword = () => {
return (
@@ -38,4 +38,4 @@ const index = () => {
);
};
-export default index;
+export default NewPassword;
diff --git a/src/routes.tsx b/src/routes.tsx
index 6b4eb16..11d2e2e 100644
--- a/src/routes.tsx
+++ b/src/routes.tsx
@@ -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 (
-
-
-
-
-
-
+ {isNotProduction && }
+
+
+
+
+
+
+
);
diff --git a/src/services/auth.ts b/src/services/auth.ts
new file mode 100644
index 0000000..352acd5
--- /dev/null
+++ b/src/services/auth.ts
@@ -0,0 +1,7 @@
+export function getUser(): any {
+ const storegedUser = localStorage.getItem('tpxt_user');
+
+ const user = JSON.parse(storegedUser);
+
+ return user;
+}