Jacky Zhao
2023-07-02 e0ebee5aa9b3646de722f139f1d8d15591df538e
quartz/components/Header.tsx
@@ -1,14 +1,24 @@
import { resolveToRoot } from "../path"
import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
export interface HeaderProps {
  title: string
  slug: string
function Header({ children }: QuartzComponentProps) {
  return (children.length > 0) ? <header>
    {children}
  </header> : null
}
export function Component({ title, slug }: HeaderProps) {
  const baseDir = resolveToRoot(slug)
  return <header>
    <h1><a href={baseDir}>{title}</a></h1>
  </header>
Header.css = `
header {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin: 2em 0;
  gap: 1.5rem;
}
header h1 {
  margin: 0;
  flex: auto;
}
`
export default (() => Header) satisfies QuartzComponentConstructor