reading: owner archive / restore / delete / merge for books (⋯ menu on cards, rows and detail pages), archived filter, tombstones so merged ids redirect and the ingest never recreates deleted works, books-quarantine.py for deleted files
Deploy production / deploy (push) Successful in 1m11s

This commit is contained in:
stan committed 2026-10-25 14:22:40 +00:00
1 parent 8a8ed1642e
commit 27987fb8e7
17 files changed
+27812 -28

No files matched your search

+2 -2
View File
@@ -4,7 +4,7 @@ import { blogArticles, bookWorks } from '#lib/server/db/schema/index.js';
import { SITE_ORIGIN } from '#lib/seo.js';
import { races } from '#lib/derby/races.js';
import { COURSES } from '#lib/language-learner/courses/index.js';
import { eq, ne } from 'drizzle-orm';
import { and, eq, isNull, ne } from 'drizzle-orm';
import type { RequestHandler } from './$types';
const staticPaths = [
@@ -64,7 +64,7 @@ export const GET: RequestHandler = async () => {
.select({ id: bookWorks.id, updatedAt: bookWorks.updatedAt })
.from(bookWorks)
// Articles are links to other sites; their pages here are thin.
.where(ne(bookWorks.kind, 'article'))
.where(and(ne(bookWorks.kind, 'article'), isNull(bookWorks.archivedAt)))
]);
const entries: { path: string; lastmod?: string }[] = [
...staticPaths.map((path) => ({ path })),