diff --git a/components/Backdrop.jsx b/components/Backdrop.jsx new file mode 100644 index 0000000..29370b8 --- /dev/null +++ b/components/Backdrop.jsx @@ -0,0 +1,17 @@ +import classNames from 'classnames'; +import { useCallback, useEffect, useState } from 'react'; + +const Backdrop = ({ open, onClose }) => { + return ( +
+ ); +}; + +export default Backdrop; diff --git a/components/Menu.jsx b/components/Menu.jsx new file mode 100644 index 0000000..184ab92 --- /dev/null +++ b/components/Menu.jsx @@ -0,0 +1,29 @@ +import classNames from 'classnames'; + +const Menu = ({ open, onClose }) => ( +
+
+

Menu

+
+ +
+); + +export default Menu; diff --git a/components/Nav.jsx b/components/Nav.jsx index cc89164..3aaa7ea 100644 --- a/components/Nav.jsx +++ b/components/Nav.jsx @@ -1,30 +1,28 @@ -import { useEffect, useState } from "react"; +import { useEffect, useState } from 'react'; import { Plugins } from '@capacitor/core'; -const Nav = ({ page }) => { +const Nav = ({ page, onShowMenu }) => { const [showMenu, setShowMenu] = useState(false); - const [showMobileMenu, setShowMobileMenu] = useState(false); - useEffect(() => { Plugins.StatusBar.setStyle({ - style: 'DARK' + style: 'DARK', }); }, []); return ( ); -} +}; -export default Nav; \ No newline at end of file +export default Nav; diff --git a/package-lock.json b/package-lock.json index 3118d75..3530f74 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4132,7 +4132,8 @@ "prettier": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==" + "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", + "dev": true }, "pretty-hrtime": { "version": "1.0.3", diff --git a/package.json b/package.json index 94261fb..803175a 100644 --- a/package.json +++ b/package.json @@ -16,9 +16,11 @@ "classnames": "^2.2.6", "next": "10.0.3", "postcss": "^8.2.1", - "prettier": "^2.2.1", "react": "17.0.1", "react-dom": "17.0.1", "tailwindcss": "^2.0.2" + }, + "devDependencies": { + "prettier": "^2.2.1" } } diff --git a/pages/index.js b/pages/index.js index dc9bb94..2968c17 100644 --- a/pages/index.js +++ b/pages/index.js @@ -1,6 +1,8 @@ -import { useState } from 'react'; +import { useCallback, useState } from 'react'; import App from '../components/App'; +import Backdrop from '../components/Backdrop'; +import Menu from '../components/Menu'; import Nav from '../components/Nav'; import Home from '../components/pages/Home'; import Profile from '../components/pages/Profile'; @@ -9,34 +11,54 @@ import Tab from '../components/Tab'; import TabBar from '../components/TabBar'; const pages = [ - { id: 'home', title: 'Home', icon: "home-outline", selectedIcon: "home", component: Home }, - { id: 'profile', title: 'Profile', icon: "person-outline", selectedIcon: "person", component: Profile }, - { id: 'settings', title: 'Settings', icon: "cog-outline", selectedIcon: "cog", component: Settings }, -] + { id: 'home', title: 'Home', icon: 'home-outline', selectedIcon: 'home', component: Home }, + { + id: 'profile', + title: 'Profile', + icon: 'person-outline', + selectedIcon: 'person', + component: Profile, + }, + { + id: 'settings', + title: 'Settings', + icon: 'cog-outline', + selectedIcon: 'cog', + component: Settings, + }, +]; const CurrentPage = ({ page }) => { return (
{pages.map(p => { const Page = p.component; - return + return ; })}
- ) -} + ); +}; export default function Index() { const [page, setPage] = useState(pages[0]); + const [showMenu, setShowMenu] = useState(false); + + const openMenu = useCallback(() => { + setShowMenu(true); + }, []); + return ( -