From b90590b9f487cdd49f019375fa5a09aad2e8ec1f Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Sat, 08 Jul 2023 21:36:02 +0000
Subject: [PATCH] polish

---
 quartz/cfg.ts |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/quartz/cfg.ts b/quartz/cfg.ts
index 1406402..49698ab 100644
--- a/quartz/cfg.ts
+++ b/quartz/cfg.ts
@@ -1,12 +1,30 @@
+import { QuartzComponent } from "./components/types"
 import { PluginTypes } from "./plugins/types"
 import { Theme } from "./theme"
 
+export type Analytics = null
+  | {
+    provider: 'plausible'
+  }
+  | {
+    provider: 'google',
+    tagId: string
+  }
+
 export interface GlobalConfiguration {
-  siteTitle: string,
+  pageTitle: string,
   /** Whether to enable single-page-app style rendering. this prevents flashes of unstyled content and improves smoothness of Quartz */
   enableSPA: boolean,
+  /** Whether to display Wikipedia-style popovers when hovering over links */
+  enablePopovers: boolean,
+  /** Analytics mode */
+  analytics: Analytics 
   /** Glob patterns to not search */
   ignorePatterns: string[],
+  /** Base URL to use for CNAME files, sitemaps, and RSS feeds that require an absolute URL.
+  *   Quartz will avoid using this as much as possible and use relative URLs most of the time  
+  */
+  canonicalUrl?: string,
   theme: Theme
 }
 
@@ -14,3 +32,15 @@
   configuration: GlobalConfiguration,
   plugins: PluginTypes,
 }
+
+export interface FullPageLayout {
+  head: QuartzComponent
+  header: QuartzComponent[],
+  beforeBody: QuartzComponent[],
+  pageBody: QuartzComponent,
+  left: QuartzComponent[],
+  right: QuartzComponent[],
+  footer: QuartzComponent,
+}
+
+export type PageLayout = Pick<FullPageLayout, "beforeBody" | "left" | "right">

--
Gitblit v1.10.0