From 8fd75ffbfda30edd5a134a1fbf9b81ac3cebb2ff Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 24 Jul 2023 00:42:00 +0000
Subject: [PATCH] support attachments folder

---
 quartz/cfg.ts |   41 ++++++++++++++++++++++++++++++++++++-----
 1 files changed, 36 insertions(+), 5 deletions(-)

diff --git a/quartz/cfg.ts b/quartz/cfg.ts
index 1406402..d8a14a3 100644
--- a/quartz/cfg.ts
+++ b/quartz/cfg.ts
@@ -1,16 +1,47 @@
+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,
+  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[],
+  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
+   */
+  baseUrl?: string
   theme: Theme
 }
 
 export interface QuartzConfig {
-  configuration: GlobalConfiguration,
-  plugins: PluginTypes,
+  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