diff options
author | lonkaars <l.leblansch@gmail.com> | 2021-03-30 16:25:30 +0200 |
---|---|---|
committer | lonkaars <l.leblansch@gmail.com> | 2021-03-30 16:25:30 +0200 |
commit | cccd9fccfb6eb2b16878d7488aa3fab578b621cc (patch) | |
tree | 983b36cb43e92bc9c10e9e92011a0737cf31a878 /pages | |
parent | b056a66af63d184e827c0f8ca6e81de2a1b19494 (diff) |
search page :tada:
Diffstat (limited to 'pages')
-rw-r--r-- | pages/_app.tsx | 1 | ||||
-rw-r--r-- | pages/search.tsx | 46 |
2 files changed, 47 insertions, 0 deletions
diff --git a/pages/_app.tsx b/pages/_app.tsx index bc96369..62c1c9b 100644 --- a/pages/_app.tsx +++ b/pages/_app.tsx @@ -7,6 +7,7 @@ import '../styles/navbar.css'; import '../styles/button.css'; import '../styles/image.css'; import '../styles/tags.css'; +import '../styles/search.css'; export default function Blog({ Component, pageProps }) { return <div> diff --git a/pages/search.tsx b/pages/search.tsx new file mode 100644 index 0000000..11cfe2c --- /dev/null +++ b/pages/search.tsx @@ -0,0 +1,46 @@ +import Navbar from '../components/navbar'; +import { FormEvent } from 'react'; +import { ArticleMeta } from './post/[id]'; + +import SearchOutlinedIcon from '@material-ui/icons/SearchOutlined'; + +function SearchBar(props: { + searchFunction: (event?: FormEvent<HTMLFormElement>) => void; +}) { + return <div className="searchBar"> + <form onSubmit={props.searchFunction}> + <input className="input" placeholder="Search for posts..." autoComplete="off"/> + <button className="button" onClick={() => props.searchFunction()}><SearchOutlinedIcon/></button> + <input type="submit" style={{ display: "none" }}/> + </form> + </div> +} + +export default function SearchPage(props: { + posts: Array<{ + props: { + meta: ArticleMeta + } + }> +}) { + return <div> + <div className="centeredPage"> + <div className="titleWrapper"> + <h1>Search for posts</h1> + </div> + <div className="navAreaWrapper"> + <div className="sticky"> + <Navbar page="search"/> + </div> + </div> + <div className="contentWrapper"> + <SearchBar searchFunction={(event?: FormEvent<HTMLFormElement>) => { + event?.preventDefault(); + }}/> + </div> + </div> + </div> +} + +// grep -Por "^\[meta\]:\s+<tags>\s+\(\K(.+)(?=\)$)" posts + |