25 lines
		
	
	
		
			668 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			668 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import { QuartzComponentConstructor } from "./types"
 | 
						|
import style from "./styles/footer.scss"
 | 
						|
import {version} from "../../package.json"
 | 
						|
 | 
						|
interface Options {
 | 
						|
  links: Record<string, string>
 | 
						|
}
 | 
						|
 | 
						|
export default ((opts?: Options) => {
 | 
						|
  function Footer() {
 | 
						|
    const year = new Date().getFullYear()
 | 
						|
    const links = opts?.links ?? []
 | 
						|
    return <footer>
 | 
						|
      <hr />
 | 
						|
      <p>Created with <a href="https://quartz.jzhao.xyz/">Quartz v{version}</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
 |