Add Callout as a separate Prose

This commit is contained in:
2024-12-04 18:01:09 +01:00
parent 51a5d501be
commit 161f0d856a
11 changed files with 145 additions and 210 deletions

View File

@@ -1,13 +1,12 @@
import type { SitemapUrlInput } from '#sitemap/types'
import { and, eq } from 'drizzle-orm';
import { explorerContentTable } from '~/db/schema';
import useDatabase from '~/composables/useDatabase';
export default defineSitemapEventHandler(() => {
const db = useDatabase();
const pages = db.select({ path: explorerContentTable.path, lastMod: explorerContentTable.timestamp }).from(explorerContentTable).where(and(eq(explorerContentTable.private, false), eq(explorerContentTable.navigable, true))).all();
const pages = db.select({ path: explorerContentTable.path, lastMod: explorerContentTable.timestamp, navigable: explorerContentTable.navigable, private: explorerContentTable.private }).from(explorerContentTable).all();
return pages.map(e => ({
return pages.filter(e => e.navigable && !e.private && e.path.split('/').map((_, i, a) => a.slice(0, i).join('/')).every(p => !pages.find(_p => _p.path === p)?.private)).map(e => ({
loc: `/explore/${e.path}`,
lastmod: e.lastMod,
})) satisfies SitemapUrlInput[];

View File

@@ -20,7 +20,7 @@ export default defineEventHandler(async (e) => {
throw body.error;
}
const items = buildOrder(body.data.items) as Array<ProjectItem & { content?: string, match?: number }>;
const items = buildOrder(body.data.items) as Array<ProjectItem & { match?: number }>;
const db = useDatabase();
const { ...cols } = getTableColumns(explorerContentTable);