Update dependencies + temp. remove art, comms

This commit is contained in:
2026-08-02 17:41:56 -04:00
parent 563145728c
commit 58f590a30e
10 changed files with 1757 additions and 9848 deletions
+1727 -9693
View File
File diff suppressed because it is too large Load Diff
+5 -9
View File
@@ -15,16 +15,12 @@
"astro": "astro" "astro": "astro"
}, },
"dependencies": { "dependencies": {
"@astrojs/mdx": "^5.0.3", "@astrojs/mdx": "^7.0.5",
"@astrojs/rss": "^4.0.18", "@astrojs/rss": "^4.0.19",
"@astrojs/sitemap": "^3.7.2", "@astrojs/sitemap": "^3.7.3",
"astro": "^6.1.3", "astro": "^7.1.6"
"better-auth": "^1.5.5",
"decap-cms-app": "^3.10.1",
"sharp": "^0.34.3"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^25.2.1", "@types/node": "^26.1.2"
"astro-compress": "2.3.9"
} }
} }
-108
View File
@@ -1,108 +0,0 @@
# Use DecapBridge PKCE auth (required)
backend:
name: gitlab
repo: merrin2/my-website
branch: main
auth_type: pkce
base_url: https://auth.decapbridge.com
auth_endpoint: /sites/398abb39-6842-4b10-b57f-e69c47709e27/pkce
auth_token_endpoint: /sites/398abb39-6842-4b10-b57f-e69c47709e27/token
gateway_url: https://gateway.decapbridge.com
# See who did what (optional)
commit_messages:
create: Create {{collection}} “{{slug}}” - {{author-name}} <{{author-login}}> via DecapBridge
update: Update {{collection}} “{{slug}}” - {{author-name}} <{{author-login}}> via DecapBridge
delete: Delete {{collection}} “{{slug}}” - {{author-name}} <{{author-login}}> via DecapBridge
uploadMedia: Upload “{{path}}” - {{author-name}} <{{author-login}}> via DecapBridge
deleteMedia: Delete “{{path}}” - {{author-name}} <{{author-login}}> via DecapBridge
openAuthoring: Message {{message}} - {{author-name}} <{{author-login}}> via DecapBridge
# Enable PKCE fields (optional, recommended)
auth:
email_claim: email
first_name_claim: first_name
last_name_claim: last_name
avatar_url_claim: avatar_url
# Better Decap + Bridge logo (optional)
logo_url: https://decapbridge.com/decapcms-with-bridge.svg
# Add site links in Decap CMS (optional)
site_url: https://jackrabbits.gay
media_folder: static/media
public_folder: /media
collections:
- name: "apps"
label: "Apps"
folder: "src/content/apps"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "commissions"
label: "Commissions"
folder: "src/content/commissions"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Artist Name", name: "artistName", widget: "list", required: false, field: { label: "Name", name: "name", widget: "string" } }
- { label: "Artist URL", name: "artistUrl", widget: "list", required: false, field: { label: "URL", name: "url", widget: "string" } }
- { label: "Custom Source", name: "customSrc", widget: "string", required: false }
- { label: "Source Image", name: "src", widget: "image", required: false }
- name: "poems"
label: "Poems"
folder: "src/content/poems"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "songs"
label: "Songs"
folder: "src/content/songs"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Audio Source", name: "src", widget: "file", required: true }
- name: "stories"
label: "Stories"
folder: "src/content/stories"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Body", name: "body", widget: "markdown", required: false }
- name: "visuals"
label: "Visuals"
folder: "src/content/visuals"
create: true
fields:
- { label: "Title", name: "title", widget: "string" }
- { label: "Publish Date", name: "pubDate", widget: "datetime" }
- { label: "Adult", name: "adult", widget: "boolean", required: false }
- { label: "Description", name: "description", widget: "text", required: false }
- { label: "Artist Name", name: "artistName", widget: "list", required: false, field: { label: "Name", name: "name", widget: "string" } }
- { label: "Artist URL", name: "artistUrl", widget: "list", required: false, field: { label: "URL", name: "url", widget: "string" } }
- { label: "Custom Source", name: "customSrc", widget: "string", required: false }
- { label: "Source Image", name: "src", widget: "image", required: false }
+8 -8
View File
@@ -1,38 +1,38 @@
import type { CollectionKey } from "astro:content"; import type { CollectionKey } from "astro:content";
import { import {
APPS_URL, APPS_URL,
COMMISSIONS_URL, // COMMISSIONS_URL,
POEMS_URL, POEMS_URL,
SONGS_URL, SONGS_URL,
STORIES_URL, STORIES_URL,
VISUAL_ART_URL, // VISUAL_ART_URL,
} from "./urls"; } from "./urls";
export const keyUrlMap: { [key in CollectionKey]: string } = { export const keyUrlMap: { [key in CollectionKey]: string } = {
apps: APPS_URL, apps: APPS_URL,
commissions: COMMISSIONS_URL, // commissions: COMMISSIONS_URL,
poems: POEMS_URL, poems: POEMS_URL,
songs: SONGS_URL, songs: SONGS_URL,
stories: STORIES_URL, stories: STORIES_URL,
visuals: VISUAL_ART_URL, // visuals: VISUAL_ART_URL,
}; };
export const keyPageNameMap: { [key in CollectionKey]: string } = { export const keyPageNameMap: { [key in CollectionKey]: string } = {
apps: "Apps", apps: "Apps",
commissions: "Commissioned Art", // commissions: "Commissioned Art",
poems: "Poems", poems: "Poems",
songs: "Songs", songs: "Songs",
stories: "Stories", stories: "Stories",
visuals: "Visual Art", // visuals: "Visual Art",
}; };
export const keyTypeNameMap: { [key in CollectionKey]: string } = { export const keyTypeNameMap: { [key in CollectionKey]: string } = {
apps: "App", apps: "App",
commissions: "Commissioned Art", // commissions: "Commissioned Art",
poems: "Poem", poems: "Poem",
songs: "Song", songs: "Song",
stories: "Story", stories: "Story",
visuals: "Visual Art", // visuals: "Visual Art",
}; };
export const allCollectionKeys: CollectionKey[] = Object.keys( export const allCollectionKeys: CollectionKey[] = Object.keys(
+1 -1
View File
@@ -7,5 +7,5 @@ export * from "./urls";
export const noSubrouteCollections: CollectionKey[] = [ export const noSubrouteCollections: CollectionKey[] = [
"commissions", "commissions",
"songs", "songs",
"visuals", // "visuals",
]; ];
+2 -2
View File
@@ -1,8 +1,8 @@
export const APPS_URL = "/apps"; export const APPS_URL = "/apps";
export const COMMISSIONS_URL = "/commissions"; // export const COMMISSIONS_URL = "/commissions";
export const POEMS_URL = "/poems"; export const POEMS_URL = "/poems";
export const SONGS_URL = "/songs"; export const SONGS_URL = "/songs";
export const STORIES_URL = "/stories"; export const STORIES_URL = "/stories";
export const VISUAL_ART_URL = "/visuals"; // export const VISUAL_ART_URL = "/visuals";
export const LIVE_APP_PATH = "/live"; export const LIVE_APP_PATH = "/live";
+9 -9
View File
@@ -25,28 +25,28 @@ export type PostProps = z.infer<typeof zodSchema>;
export const collectionNames = [ export const collectionNames = [
"apps", "apps",
"commissions", // "commissions",
"poems", "poems",
"songs", "songs",
"stories", "stories",
"visuals", // "visuals",
]; ];
const commonSchema = z.object({ const commonSchema = z.object({
...commonProps, ...commonProps,
}); });
const imageSchema = z.object({ ...imageProps }); // const imageSchema = z.object({ ...imageProps });
const appSchema = commonSchema; const appSchema = commonSchema;
const commissionSchema = imageSchema; // const commissionSchema = imageSchema;
const poemSchema = commonSchema; const poemSchema = commonSchema;
const songSchema = z.object({ const songSchema = z.object({
...commonProps, ...commonProps,
src: z.string(), src: z.string(),
}); });
const storySchema = commonSchema; const storySchema = commonSchema;
const visualSchema = imageSchema; // const visualSchema = imageSchema;
const getGlob = (name: string) => const getGlob = (name: string) =>
glob({ pattern: "**/*.md", base: `./src/content/${name}` }); glob({ pattern: "**/*.md", base: `./src/content/${name}` });
@@ -56,10 +56,10 @@ export const collections = {
loader: getGlob("apps"), loader: getGlob("apps"),
schema: appSchema, schema: appSchema,
}), }),
commissions: defineCollection({ /* commissions: defineCollection({
loader: getGlob("commissions"), loader: getGlob("commissions"),
schema: commissionSchema, schema: commissionSchema,
}), }), */
poems: defineCollection({ poems: defineCollection({
loader: getGlob("poems"), loader: getGlob("poems"),
schema: poemSchema, schema: poemSchema,
@@ -72,8 +72,8 @@ export const collections = {
loader: getGlob("stories"), loader: getGlob("stories"),
schema: storySchema, schema: storySchema,
}), }),
visuals: defineCollection({ /* visuals: defineCollection({
loader: getGlob("visuals"), loader: getGlob("visuals"),
schema: visualSchema, schema: visualSchema,
}), }), */
}; };
+2 -2
View File
@@ -23,11 +23,11 @@ const itemsByYear = chunkItemsByYear(items as any);
const typeComponentMap: { [key in CollectionKey]?: any } = { const typeComponentMap: { [key in CollectionKey]?: any } = {
apps: GalleryWritingItem, apps: GalleryWritingItem,
commissions: GalleryImageItem, // commissions: GalleryImageItem,
poems: GalleryWritingItem, poems: GalleryWritingItem,
songs: GalleryAudioItem, songs: GalleryAudioItem,
stories: GalleryWritingItem, stories: GalleryWritingItem,
visuals: GalleryImageItem, // visuals: GalleryImageItem,
}; };
const ItemComponent = typeComponentMap[collection]; const ItemComponent = typeComponentMap[collection];
+3 -3
View File
@@ -12,8 +12,8 @@ export async function getStaticPaths() {
} }
const { collection } = Astro.params as { collection: CollectionKey }; const { collection } = Astro.params as { collection: CollectionKey };
const inlineGalleries: CollectionKey[] = ["commissions", "visuals"]; // const inlineGalleries: CollectionKey[] = ["commissions", "visuals"];
const showInline = inlineGalleries.includes(collection); // const showInline = inlineGalleries.includes(collection);
--- ---
<GalleryLayout collection={collection} showInline={showInline} /> <GalleryLayout collection={collection} showInline={true} />
-13
View File
@@ -1,13 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="noindex" />
<link href="/admin/config.yml" type="text/yaml" rel="cms-config-url" />
<title>Content Manager</title>
</head>
<body>
<script src="https://unpkg.com/decap-cms@^3.1.2/dist/decap-cms.js"></script>
</body>
</html>