From c4cd84dcc884469a0d84e2bec239b2fc3596c44f Mon Sep 17 00:00:00 2001
From: Andrew <80933354+ndrooo@users.noreply.github.com>
Date: Sat, 24 Aug 2024 17:13:55 +0000
Subject: [PATCH] fix: Add a wrapper element to dates in PageList. (#1345)
---
quartz/components/PageList.tsx | 24 ++++++++++++++----------
1 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/quartz/components/PageList.tsx b/quartz/components/PageList.tsx
index 1e5d232..cc0124a 100644
--- a/quartz/components/PageList.tsx
+++ b/quartz/components/PageList.tsx
@@ -4,9 +4,9 @@
import { QuartzComponent, QuartzComponentProps } from "./types"
import { GlobalConfiguration } from "../cfg"
-export function byDateAndAlphabetical(
- cfg: GlobalConfiguration,
-): (f1: QuartzPluginData, f2: QuartzPluginData) => number {
+export type SortFn = (f1: QuartzPluginData, f2: QuartzPluginData) => number
+
+export function byDateAndAlphabetical(cfg: GlobalConfiguration): SortFn {
return (f1, f2) => {
if (f1.dates && f2.dates) {
// sort descending
@@ -27,10 +27,12 @@
type Props = {
limit?: number
+ sort?: SortFn
} & QuartzComponentProps
-export const PageList: QuartzComponent = ({ cfg, fileData, allFiles, limit }: Props) => {
- let list = allFiles.sort(byDateAndAlphabetical(cfg))
+export const PageList: QuartzComponent = ({ cfg, fileData, allFiles, limit, sort }: Props) => {
+ const sorter = sort ?? byDateAndAlphabetical(cfg)
+ let list = allFiles.sort(sorter)
if (limit) {
list = list.slice(0, limit)
}
@@ -44,11 +46,13 @@
return (
<li class="section-li">
<div class="section">
- {page.dates && (
- <p class="meta">
- <Date date={getDate(cfg, page)!} locale={cfg.locale} />
- </p>
- )}
+ <div>
+ {page.dates && (
+ <p class="meta">
+ <Date date={getDate(cfg, page)!} locale={cfg.locale} />
+ </p>
+ )}
+ </div>
<div class="desc">
<h3>
<a href={resolveRelative(fileData.slug!, page.slug!)} class="internal">
--
Gitblit v1.10.0