Jacky Zhao
2023-07-04 38cff2d670ecf7fd325aaaf776a4c250a72cc661
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { QuartzComponentConstructor } from "./types"
import style from "./styles/footer.scss"
 
interface Options {
  authorName: string,
  links: Record<string, string>
}
 
export default ((opts?: Options) => {
  function Footer() {
    const year = new Date().getFullYear()
    const name = opts?.authorName ?? "someone"
    const links = opts?.links ?? []
    return <footer>
      <hr />
      <p>Made by {name} using <a href="https://quartz.jzhao.xyz/">Quartz</a>, © {year}</p>
      <ul>{Object.entries(links).map(([text, link]) => <li>
        <a href={link}>{text}</a>
      </li>)}</ul>
    </footer>
  }
 
  Footer.css = style
  return Footer
}) satisfies QuartzComponentConstructor