From 7e02eb207faaec4b9864d07b362f6c2d07257ad5 Mon Sep 17 00:00:00 2001 From: Robert Wagner Date: Fri, 27 Mar 2026 10:09:02 -0400 Subject: [PATCH 1/2] Switch from @astrojs/db to drizzle --- CLAUDE.md | 61 +++- astro.config.mjs | 2 - db/config.ts | 49 --- db/data/people-per-episode.ts | 19 + db/data/people.ts | 11 + db/data/sponsors-per-episode.ts | 7 +- db/index.ts | 15 + db/schema.ts | 62 ++++ db/seed.ts | 26 +- drizzle.config.ts | 11 + package.json | 12 +- pnpm-lock.yaml | 592 +++++++++++++++++++++++--------- src/img/people/dthompsondev.jpg | Bin 0 -> 32746 bytes src/img/people/leonnoel.jpg | Bin 0 -> 30130 bytes src/img/people/wattenberger.jpg | Bin 0 -> 25649 bytes src/pages/[episode].astro | 12 +- 16 files changed, 641 insertions(+), 238 deletions(-) delete mode 100644 db/config.ts create mode 100644 db/index.ts create mode 100644 db/schema.ts create mode 100644 drizzle.config.ts create mode 100644 src/img/people/dthompsondev.jpg create mode 100644 src/img/people/leonnoel.jpg create mode 100644 src/img/people/wattenberger.jpg diff --git a/CLAUDE.md b/CLAUDE.md index dc31c2e..7bde5c1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,15 +1,19 @@ # CLAUDE.md -This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. +This file provides guidance to Claude Code (claude.ai/code) when working with +code in this repository. ## What is Starpod? -Starpod is an open-source Astro-based podcast website generator. It creates a full podcast site from an RSS feed and a `starpod.config.ts` configuration file. The reference deployment is [whiskey.fm](https://whiskey.fm) (Whiskey Web and Whatnot podcast). +Starpod is an open-source Astro-based podcast website generator. It creates a +full podcast site from an RSS feed and a `starpod.config.ts` configuration file. +The reference deployment is [whiskey.fm](https://whiskey.fm) (Whiskey Web and +Whatnot podcast). ## Commands - **Dev server:** `pnpm dev` (runs on localhost:4321) -- **Build:** `pnpm build` (runs `astro check` then `astro build --remote`) +- **Build:** `pnpm build` (runs `astro check` then `astro build`) - **Lint:** `pnpm lint` (ESLint with caching) - **Lint fix:** `pnpm lint:fix` - **All tests:** `pnpm test` (runs unit + e2e concurrently) @@ -17,6 +21,8 @@ Starpod is an open-source Astro-based podcast website generator. It creates a fu - **Single unit test:** `pnpm exec vitest run tests/unit/Player.test.tsx` - **E2E tests only:** `pnpm test:e2e` (Playwright, auto-starts dev server) - **Seed remote DB:** `pnpm db:seed` +- **Push schema to DB:** `pnpm db:push` +- **Drizzle Studio:** `pnpm db:studio` ## Architecture @@ -25,37 +31,60 @@ Starpod is an open-source Astro-based podcast website generator. It creates a fu - **Astro 5** with static output, deployed to Vercel - **Preact** for interactive components (player, search, contact form) - **Tailwind CSS v4** via Vite plugin -- **Astro DB** (Turso/libSQL) for episode guests and sponsors +- **Drizzle ORM** with Turso/libSQL for episode guests and sponsors - **Valibot** for config validation ### Key Configuration -- `starpod.config.ts` — podcast metadata (hosts, platforms, RSS feed URL, description). Uses `defineStarpodConfig()` from `src/utils/config.ts` for type safety and validation. -- `astro.config.mjs` — Astro config with Vercel adapter, Preact, sitemap, and DB integrations. +- `starpod.config.ts` — podcast metadata (hosts, platforms, RSS feed URL, + description). Uses `defineStarpodConfig()` from `src/utils/config.ts` for type + safety and validation. +- `astro.config.mjs` — Astro config with Vercel adapter, Preact, and sitemap + integrations. +- `drizzle.config.ts` — Drizzle Kit config for schema push, migrations, and + studio. ### Data Flow -Episodes are fetched from the RSS feed at build time via `src/lib/rss.ts`. Guest/sponsor data lives in `db/data/` as TypeScript files and is seeded to Turso via `db/seed.ts`. The DB schema is in `db/config.ts` with tables: Episode, Person, HostOrGuest, Sponsor, SponsorForEpisode. +Episodes are fetched from the RSS feed at build time via `src/lib/rss.ts`. +Guest/sponsor data lives in `db/data/` as TypeScript files and is seeded to +Turso via `db/seed.ts`. The DB schema is in `db/schema.ts` (Drizzle ORM) with +tables: Episode, Person, HostOrGuest, Sponsor, SponsorForEpisode. The DB +connection is configured in `db/index.ts`. ### Source Structure -- `src/pages/` — Astro pages and API routes. Dynamic episode pages use `[episode].astro`. LLM-friendly `.html.md.ts` endpoints generate markdown versions. -- `src/components/` — Mix of `.astro` (static) and `.tsx` (Preact interactive) components. The audio player (`src/components/player/`) and search dialog are Preact. +- `src/pages/` — Astro pages and API routes. Dynamic episode pages use + `[episode].astro`. LLM-friendly `.html.md.ts` endpoints generate markdown + versions. +- `src/components/` — Mix of `.astro` (static) and `.tsx` (Preact interactive) + components. The audio player (`src/components/player/`) and search dialog are + Preact. - `src/components/state.ts` — Preact signals for shared player state. -- `src/lib/` — Core utilities: RSS fetching, image optimization, LLM content generation. -- `src/content/transcripts/` — Markdown transcript files named by episode number. +- `src/lib/` — Core utilities: RSS fetching, image optimization, LLM content + generation. +- `src/content/transcripts/` — Markdown transcript files named by episode + number. - `src/layouts/Layout.astro` — Single shared layout. +- `db/` — Database schema (`schema.ts`), connection (`index.ts`), seed script + (`seed.ts`), and static data files (`data/`). ### Testing -- **Unit tests** (`tests/unit/`): Vitest + jsdom + @testing-library/preact. Setup file at `tests/unit/test-setup.ts`. -- **E2E tests** (`tests/e2e/`): Playwright testing against chromium, firefox, and webkit. +- **Unit tests** (`tests/unit/`): Vitest + jsdom + @testing-library/preact. + Setup file at `tests/unit/test-setup.ts`. +- **E2E tests** (`tests/e2e/`): Playwright testing against chromium, firefox, + and webkit. ### TypeScript -Strict mode with `baseUrl: "."` allowing bare `src/...` imports. JSX is configured for Preact (`jsxImportSource: "preact"`). +Strict mode with `baseUrl: "."` allowing bare `src/...` imports. JSX is +configured for Preact (`jsxImportSource: "preact"`). ## Environment Variables -- `DISCORD_WEBHOOK` — Used by the contact form API route (`src/pages/api/contact.ts`) to post to Discord. -- Astro DB connection requires `ASTRO_STUDIO_APP_TOKEN` for remote operations (build, seed). +- `DISCORD_WEBHOOK` — Used by the contact form API route + (`src/pages/api/contact.ts`) to post to Discord. +- `ASTRO_DB_REMOTE_URL` — Turso/libSQL database URL (e.g., + `libsql://your-db.turso.io`). +- `ASTRO_DB_APP_TOKEN` — Authentication token for Turso database. diff --git a/astro.config.mjs b/astro.config.mjs index 66f2ecd..2a1ce4c 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -1,5 +1,4 @@ import { defineConfig, fontProviders } from 'astro/config'; -import db from '@astrojs/db'; import preact from '@astrojs/preact'; import sitemap from '@astrojs/sitemap'; import tailwindcss from '@tailwindcss/vite'; @@ -62,7 +61,6 @@ export default defineConfig({ site: 'https://whiskey.fm', trailingSlash: 'never', integrations: [ - db(), preact(), sitemap({ filter: (page) => { diff --git a/db/config.ts b/db/config.ts deleted file mode 100644 index 660408e..0000000 --- a/db/config.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { defineDb, defineTable, column } from 'astro:db'; - -const Episode = defineTable({ - columns: { - episodeSlug: column.text({ primaryKey: true }) - } -}); - -const Person = defineTable({ - columns: { - id: column.text({ primaryKey: true }), - img: column.text({ optional: true }), - name: column.text() - } -}); - -const HostOrGuest = defineTable({ - columns: { - episodeSlug: column.text({ - references: () => Episode.columns.episodeSlug - }), - isHost: column.boolean(), - personId: column.text({ references: () => Person.columns.id }) - }, - indexes: [{ on: ['episodeSlug', 'personId'], unique: true }] -}); - -const Sponsor = defineTable({ - columns: { - id: column.text({ primaryKey: true }), - img: column.text({ optional: true }), - name: column.text(), - url: column.text() - } -}); - -const SponsorForEpisode = defineTable({ - columns: { - episodeSlug: column.text({ - references: () => Episode.columns.episodeSlug - }), - sponsorId: column.text({ references: () => Sponsor.columns.id }) - }, - indexes: [{ on: ['episodeSlug', 'sponsorId'], unique: true }] -}); - -export default defineDb({ - tables: { Episode, HostOrGuest, Person, Sponsor, SponsorForEpisode } -}); diff --git a/db/data/people-per-episode.ts b/db/data/people-per-episode.ts index 5cf7aeb..d19e043 100644 --- a/db/data/people-per-episode.ts +++ b/db/data/people-per-episode.ts @@ -3,6 +3,25 @@ import people from './people'; type PersonId = (typeof people)[number]['id']; export default { + // 237 + 'the-transactional-trap-how-97-of-developers-are-using-ai-wrong-w-leon-noel-danny-thompson': + [ + { id: 'robbiethewagner' }, + { id: 'argyleink' }, + { id: 'leonnoel' }, + { id: 'dthompsondev' } + ], + // 236 + 'the-manager-has-become-the-managed-presented-by-warp': [ + { id: 'robbiethewagner' }, + { id: 'argyleink' }, + { id: 'wattenberger' } + ], + // 235 + 'hot-pockets-pro-max-presented-by-warp': [ + { id: 'robbiethewagner' }, + { id: 'argyleink' } + ], // 234 'pay-no-attention-to-the-llm-behind-the-terminal-w-zach-lloyd': [ { id: 'robbiethewagner' }, diff --git a/db/data/people.ts b/db/data/people.ts index 4bccaf6..e118e61 100644 --- a/db/data/people.ts +++ b/db/data/people.ts @@ -71,6 +71,11 @@ export const people = [ name: 'Diego Gonzalez', img: 'diegogonzalez.jpg' }, + { + id: 'dthompsondev', + name: 'Danny Thompson', + img: 'dthompsondev.jpg' + }, { id: 'engineering_bae', name: 'Taylor Poindexter', @@ -151,6 +156,11 @@ export const people = [ name: 'Kelly Vaughn', img: 'kvlly.jpg' }, + { + id: 'leonnoel', + name: 'Leon Noel', + img: 'leonnoel.jpg' + }, { id: 'madisonkanna', name: 'Madison Kanna', @@ -296,6 +306,7 @@ export const people = [ img: 'typecraft_dev.jpg' }, { id: 'wagslane', name: 'Lane Wagner', img: 'wagslane.jpg' }, + { id: 'wattenberger', name: 'Amelia Wattenberger', img: 'wattenberger.jpg' }, { id: 'wesbos', name: 'Wes Bos', img: 'wesbos.jpg' }, { id: 'willjohnsonio', name: 'Will Johnson', img: 'willjohnsonio.jpg' }, { id: 'zachlloyd', name: 'Zach Lloyd', img: 'zachlloyd.jpg' }, diff --git a/db/data/sponsors-per-episode.ts b/db/data/sponsors-per-episode.ts index f47e5ad..d279fbb 100644 --- a/db/data/sponsors-per-episode.ts +++ b/db/data/sponsors-per-episode.ts @@ -1,6 +1,11 @@ export default { + // 237 + 'the-transactional-trap-how-97-of-developers-are-using-ai-wrong-w-leon-noel-danny-thompson': + [{ id: 'warp' }], + // 236 + 'the-manager-has-become-the-managed-presented-by-warp': [{ id: 'warp' }], // 235 - // '': [{ id: 'warp' }], + 'hot-pockets-pro-max-presented-by-warp': [{ id: 'warp' }], // 234 'pay-no-attention-to-the-llm-behind-the-terminal-w-zach-lloyd': [ { id: 'cascadiajs' } diff --git a/db/index.ts b/db/index.ts new file mode 100644 index 0000000..3cfdf34 --- /dev/null +++ b/db/index.ts @@ -0,0 +1,15 @@ +import { drizzle } from 'drizzle-orm/libsql'; + +import * as schema from './schema'; + +// Uses ASTRO_DB_REMOTE_URL and ASTRO_DB_APP_TOKEN from environment. +// In Astro files, these are available via import.meta.env. +// In standalone scripts (seed), they are loaded via process.env. +export function createDb(url: string, authToken: string) { + return drizzle({ + connection: { url, authToken }, + schema + }); +} + +export type Database = ReturnType; diff --git a/db/schema.ts b/db/schema.ts new file mode 100644 index 0000000..057bb6d --- /dev/null +++ b/db/schema.ts @@ -0,0 +1,62 @@ +import { + integer, + sqliteTable, + text, + uniqueIndex +} from 'drizzle-orm/sqlite-core'; + +export const Episode = sqliteTable('Episode', { + episodeSlug: text().primaryKey() +}); + +export const Person = sqliteTable('Person', { + id: text().primaryKey(), + img: text(), + name: text().notNull() +}); + +export const HostOrGuest = sqliteTable( + 'HostOrGuest', + { + _id: integer('_id').primaryKey(), + episodeSlug: text() + .notNull() + .references(() => Episode.episodeSlug), + isHost: integer({ mode: 'boolean' }).notNull(), + personId: text() + .notNull() + .references(() => Person.id) + }, + (table) => [ + uniqueIndex('HostOrGuest_episodeSlug_personId_idx').on( + table.episodeSlug, + table.personId + ) + ] +); + +export const Sponsor = sqliteTable('Sponsor', { + id: text().primaryKey(), + img: text(), + name: text().notNull(), + url: text().notNull() +}); + +export const SponsorForEpisode = sqliteTable( + 'SponsorForEpisode', + { + _id: integer('_id').primaryKey(), + episodeSlug: text() + .notNull() + .references(() => Episode.episodeSlug), + sponsorId: text() + .notNull() + .references(() => Sponsor.id) + }, + (table) => [ + uniqueIndex('SponsorForEpisode_episodeSlug_sponsorId_idx').on( + table.episodeSlug, + table.sponsorId + ) + ] +); diff --git a/db/seed.ts b/db/seed.ts index b91f085..68c4f53 100644 --- a/db/seed.ts +++ b/db/seed.ts @@ -1,12 +1,15 @@ +import 'dotenv/config'; + +import { sql } from 'drizzle-orm'; + +import { createDb } from './index'; import { - db, Episode, HostOrGuest, Person, Sponsor, - SponsorForEpisode, - sql -} from 'astro:db'; + SponsorForEpisode +} from './schema'; import { getAllEpisodes } from '../src/lib/rss'; import people from './data/people'; @@ -14,8 +17,12 @@ import peoplePerEpisode from './data/people-per-episode'; import sponsors from './data/sponsors'; import sponsorsPerEpisode from './data/sponsors-per-episode'; -// https://astro.build/db/seed -export default async function seed() { +const db = createDb( + process.env.ASTRO_DB_REMOTE_URL!, + process.env.ASTRO_DB_APP_TOKEN! +); + +async function seed() { await db .insert(Person) .values(people as any) @@ -82,4 +89,11 @@ export default async function seed() { .insert(SponsorForEpisode) .values(sponsorsForEpisodesToInsert) .onConflictDoNothing(); + + console.log('Seed complete!'); } + +seed().catch((err) => { + console.error('Seed failed:', err); + process.exit(1); +}); diff --git a/drizzle.config.ts b/drizzle.config.ts new file mode 100644 index 0000000..4361179 --- /dev/null +++ b/drizzle.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'drizzle-kit'; + +export default defineConfig({ + schema: './db/schema.ts', + out: './drizzle', + dialect: 'turso', + dbCredentials: { + url: process.env.ASTRO_DB_REMOTE_URL!, + authToken: process.env.ASTRO_DB_APP_TOKEN! + } +}); diff --git a/package.json b/package.json index a929c14..1113f06 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,10 @@ "license": "MIT", "scripts": { "astro": "astro", - "build": "astro check && astro build --remote", - "db:seed": "pnpm astro db execute db/seed.ts --remote", + "build": "astro check && astro build", + "db:push": "drizzle-kit push", + "db:seed": "tsx db/seed.ts", + "db:studio": "drizzle-kit studio", "dev": "astro dev", "lint": "eslint . --cache", "lint:fix": "eslint . --fix", @@ -23,12 +25,14 @@ "dependencies": { "@astrojs/preact": "^4.1.3", "@astrojs/vercel": "^9.0.4", + "@libsql/client": "^0.17.2", "@preact/signals": "^2.8.2", "@vercel/analytics": "^1.6.1", "@vercel/speed-insights": "^1.3.1", "astro": "5.17.2", "astro-seo-schema": "^5.2.0", "atropos": "^2.0.2", + "drizzle-orm": "^0.45.1", "preact": "^10.28.4", "rss-to-json": "^2.1.1", "schema-dts": "^1.1.5", @@ -36,7 +40,6 @@ }, "devDependencies": { "@astrojs/check": "^0.9.6", - "@astrojs/db": "^0.18.3", "@astrojs/sitemap": "^3.7.0", "@eslint/js": "^9.39.4", "@playwright/test": "^1.58.2", @@ -49,6 +52,8 @@ "@types/node": "^24.12.0", "@typescript-eslint/parser": "^8.56.1", "concurrently": "^9.2.1", + "dotenv": "^17.3.1", + "drizzle-kit": "^0.31.10", "eslint": "^9.39.4", "eslint-plugin-astro": "^1.6.0", "globals": "^16.5.0", @@ -59,6 +64,7 @@ "prettier-plugin-tailwindcss": "^0.7.2", "sharp": "^0.34.5", "tailwindcss": "^4.2.1", + "tsx": "^4.21.0", "typescript": "^5.9.3", "vite": "^7.3.1", "vitest": "^4.0.18" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8ef254a..307e50c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,10 +10,13 @@ importers: dependencies: '@astrojs/preact': specifier: ^4.1.3 - version: 4.1.3(@babel/core@7.29.0)(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(preact@10.28.4)(rollup@4.59.0)(yaml@2.8.2) + version: 4.1.3(@babel/core@7.29.0)(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(preact@10.28.4)(rollup@4.59.0)(tsx@4.21.0)(yaml@2.8.2) '@astrojs/vercel': specifier: ^9.0.4 - version: 9.0.4(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2))(react@19.0.0)(rollup@4.59.0) + version: 9.0.4(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(react@19.0.0)(rollup@4.59.0) + '@libsql/client': + specifier: ^0.17.2 + version: 0.17.2 '@preact/signals': specifier: ^2.8.2 version: 2.8.2(preact@10.28.4) @@ -25,13 +28,16 @@ importers: version: 1.3.1(react@19.0.0) astro: specifier: 5.17.2 - version: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2) + version: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) astro-seo-schema: specifier: ^5.2.0 - version: 5.2.0(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2))(schema-dts@1.1.5) + version: 5.2.0(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(schema-dts@1.1.5) atropos: specifier: ^2.0.2 version: 2.0.2 + drizzle-orm: + specifier: ^0.45.1 + version: 0.45.1(@libsql/client@0.17.2) preact: specifier: ^10.28.4 version: 10.28.4 @@ -48,9 +54,6 @@ importers: '@astrojs/check': specifier: ^0.9.6 version: 0.9.6(prettier-plugin-astro@0.14.1)(prettier@3.8.1)(typescript@5.9.3) - '@astrojs/db': - specifier: ^0.18.3 - version: 0.18.3 '@astrojs/sitemap': specifier: ^3.7.0 version: 3.7.0 @@ -68,7 +71,7 @@ importers: version: 0.5.19(tailwindcss@4.2.1) '@tailwindcss/vite': specifier: ^4.2.1 - version: 4.2.1(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + version: 4.2.1(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) '@testing-library/jest-dom': specifier: ^6.9.1 version: 6.9.1 @@ -87,6 +90,12 @@ importers: concurrently: specifier: ^9.2.1 version: 9.2.1 + dotenv: + specifier: ^17.3.1 + version: 17.3.1 + drizzle-kit: + specifier: ^0.31.10 + version: 0.31.10 eslint: specifier: ^9.39.4 version: 9.39.4(jiti@2.6.1) @@ -117,15 +126,18 @@ importers: tailwindcss: specifier: ^4.2.1 version: 4.2.1 + tsx: + specifier: ^4.21.0 + version: 4.21.0 typescript: specifier: ^5.9.3 version: 5.9.3 vite: specifier: ^7.3.1 - version: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + version: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) vitest: specifier: ^4.0.18 - version: 4.0.18(@types/node@24.12.0)(jiti@2.6.1)(jsdom@27.4.0)(lightningcss@1.31.1)(yaml@2.8.2) + version: 4.0.18(@types/node@24.12.0)(jiti@2.6.1)(jsdom@27.4.0)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) packages: @@ -153,9 +165,6 @@ packages: '@astrojs/compiler@2.13.1': resolution: {integrity: sha512-f3FN83d2G/v32ipNClRKgYv30onQlMZX1vCeZMjPsMMPl1mDpmbl0+N5BYo4S/ofzqJyS5hvwacEo0CCVDn/Qg==} - '@astrojs/db@0.18.3': - resolution: {integrity: sha512-iTK50jUgyj25oa/JiXSN1/IVp5kTmPuioLlve06LE8/HzWGv3JpVgCKIV9HHf3kOVi1HV/uauXnyWzkB+yHLSQ==} - '@astrojs/internal-helpers@0.7.5': resolution: {integrity: sha512-vreGnYSSKhAjFJCWAwe/CNhONvoc5lokxtRoZims+0wa3KbHBdPHSSthJsKxPd8d/aic6lWKpRTYGY/hsgK6EA==} @@ -331,6 +340,9 @@ packages: resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} engines: {node: '>=20.19.0'} + '@drizzle-team/brocli@0.10.2': + resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==} + '@emmetio/abbreviation@2.3.3': resolution: {integrity: sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==} @@ -355,6 +367,14 @@ packages: '@emnapi/runtime@1.8.1': resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==} + '@esbuild-kit/core-utils@3.3.2': + resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} + deprecated: 'Merged into tsx: https://tsx.is' + + '@esbuild-kit/esm-loader@2.6.5': + resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} + deprecated: 'Merged into tsx: https://tsx.is' + '@esbuild/aix-ppc64@0.25.12': resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} engines: {node: '>=18'} @@ -367,6 +387,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/android-arm64@0.18.20': + resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.25.12': resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} engines: {node: '>=18'} @@ -379,6 +405,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm@0.18.20': + resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.25.12': resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} engines: {node: '>=18'} @@ -391,6 +423,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-x64@0.18.20': + resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.25.12': resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} engines: {node: '>=18'} @@ -403,6 +441,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/darwin-arm64@0.18.20': + resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.25.12': resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} engines: {node: '>=18'} @@ -415,6 +459,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-x64@0.18.20': + resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.25.12': resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} engines: {node: '>=18'} @@ -427,6 +477,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/freebsd-arm64@0.18.20': + resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.25.12': resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} engines: {node: '>=18'} @@ -439,6 +495,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-x64@0.18.20': + resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.25.12': resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} engines: {node: '>=18'} @@ -451,6 +513,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/linux-arm64@0.18.20': + resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.25.12': resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} engines: {node: '>=18'} @@ -463,6 +531,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm@0.18.20': + resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.25.12': resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} engines: {node: '>=18'} @@ -475,6 +549,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-ia32@0.18.20': + resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.25.12': resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} engines: {node: '>=18'} @@ -487,6 +567,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.18.20': + resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.25.12': resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} engines: {node: '>=18'} @@ -499,6 +585,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-mips64el@0.18.20': + resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.25.12': resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} engines: {node: '>=18'} @@ -511,6 +603,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-ppc64@0.18.20': + resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.25.12': resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} engines: {node: '>=18'} @@ -523,6 +621,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-riscv64@0.18.20': + resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.25.12': resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} engines: {node: '>=18'} @@ -535,6 +639,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-s390x@0.18.20': + resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.25.12': resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} engines: {node: '>=18'} @@ -547,6 +657,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-x64@0.18.20': + resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.25.12': resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} engines: {node: '>=18'} @@ -571,6 +687,12 @@ packages: cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-x64@0.18.20': + resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.25.12': resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} engines: {node: '>=18'} @@ -595,6 +717,12 @@ packages: cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-x64@0.18.20': + resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.25.12': resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} engines: {node: '>=18'} @@ -619,6 +747,12 @@ packages: cpu: [arm64] os: [openharmony] + '@esbuild/sunos-x64@0.18.20': + resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.25.12': resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} engines: {node: '>=18'} @@ -631,6 +765,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/win32-arm64@0.18.20': + resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.25.12': resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} engines: {node: '>=18'} @@ -643,6 +783,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-ia32@0.18.20': + resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.25.12': resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} engines: {node: '>=18'} @@ -655,6 +801,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-x64@0.18.20': + resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.25.12': resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} engines: {node: '>=18'} @@ -891,64 +1043,60 @@ packages: '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} - '@libsql/client@0.15.15': - resolution: {integrity: sha512-twC0hQxPNHPKfeOv3sNT6u2pturQjLcI+CnpTM0SjRpocEGgfiZ7DWKXLNnsothjyJmDqEsBQJ5ztq9Wlu470w==} + '@libsql/client@0.17.2': + resolution: {integrity: sha512-0aw0S3iQMHvOxfRt5j1atoCCPMT3gjsB2PS8/uxSM1DcDn39xqz6RlgSMxtP8I3JsxIXAFuw7S41baLEw0Zi+Q==} - '@libsql/core@0.15.15': - resolution: {integrity: sha512-C88Z6UKl+OyuKKPwz224riz02ih/zHYI3Ho/LAcVOgjsunIRZoBw7fjRfaH9oPMmSNeQfhGklSG2il1URoOIsA==} + '@libsql/core@0.17.2': + resolution: {integrity: sha512-L8qv12HZ/jRBcETVR3rscP0uHNxh+K3EABSde6scCw7zfOdiLqO3MAkJaeE1WovPsjXzsN/JBoZED4+7EZVT3g==} - '@libsql/darwin-arm64@0.5.22': - resolution: {integrity: sha512-4B8ZlX3nIDPndfct7GNe0nI3Yw6ibocEicWdC4fvQbSs/jdq/RC2oCsoJxJ4NzXkvktX70C1J4FcmmoBy069UA==} + '@libsql/darwin-arm64@0.5.29': + resolution: {integrity: sha512-K+2RIB1OGFPYQbfay48GakLhqf3ArcbHqPFu7EZiaUcRgFcdw8RoltsMyvbj5ix2fY0HV3Q3Ioa/ByvQdaSM0A==} cpu: [arm64] os: [darwin] - '@libsql/darwin-x64@0.5.22': - resolution: {integrity: sha512-ny2HYWt6lFSIdNFzUFIJ04uiW6finXfMNJ7wypkAD8Pqdm6nAByO+Fdqu8t7sD0sqJGeUCiOg480icjyQ2/8VA==} + '@libsql/darwin-x64@0.5.29': + resolution: {integrity: sha512-OtT+KFHsKFy1R5FVadr8FJ2Bb1mghtXTyJkxv0trocq7NuHntSki1eUbxpO5ezJesDvBlqFjnWaYYY516QNLhQ==} cpu: [x64] os: [darwin] - '@libsql/hrana-client@0.7.0': - resolution: {integrity: sha512-OF8fFQSkbL7vJY9rfuegK1R7sPgQ6kFMkDamiEccNUvieQ+3urzfDFI616oPl8V7T9zRmnTkSjMOImYCAVRVuw==} - - '@libsql/isomorphic-fetch@0.3.1': - resolution: {integrity: sha512-6kK3SUK5Uu56zPq/Las620n5aS9xJq+jMBcNSOmjhNf/MUvdyji4vrMTqD7ptY7/4/CAVEAYDeotUz60LNQHtw==} - engines: {node: '>=18.0.0'} + '@libsql/hrana-client@0.9.0': + resolution: {integrity: sha512-pxQ1986AuWfPX4oXzBvLwBnfgKDE5OMhAdR/5cZmRaB4Ygz5MecQybvwZupnRz341r2CtFmbk/BhSu7k2Lm+Jw==} '@libsql/isomorphic-ws@0.1.5': resolution: {integrity: sha512-DtLWIH29onUYR00i0GlQ3UdcTRC6EP4u9w/h9LxpUZJWRMARk6dQwZ6Jkd+QdwVpuAOrdxt18v0K2uIYR3fwFg==} - '@libsql/linux-arm-gnueabihf@0.5.22': - resolution: {integrity: sha512-3Uo3SoDPJe/zBnyZKosziRGtszXaEtv57raWrZIahtQDsjxBVjuzYQinCm9LRCJCUT5t2r5Z5nLDPJi2CwZVoA==} + '@libsql/linux-arm-gnueabihf@0.5.29': + resolution: {integrity: sha512-CD4n4zj7SJTHso4nf5cuMoWoMSS7asn5hHygsDuhRl8jjjCTT3yE+xdUvI4J7zsyb53VO5ISh4cwwOtf6k2UhQ==} cpu: [arm] os: [linux] - '@libsql/linux-arm-musleabihf@0.5.22': - resolution: {integrity: sha512-LCsXh07jvSojTNJptT9CowOzwITznD+YFGGW+1XxUr7fS+7/ydUrpDfsMX7UqTqjm7xG17eq86VkWJgHJfvpNg==} + '@libsql/linux-arm-musleabihf@0.5.29': + resolution: {integrity: sha512-2Z9qBVpEJV7OeflzIR3+l5yAd4uTOLxklScYTwpZnkm2vDSGlC1PRlueLaufc4EFITkLKXK2MWBpexuNJfMVcg==} cpu: [arm] os: [linux] - '@libsql/linux-arm64-gnu@0.5.22': - resolution: {integrity: sha512-KSdnOMy88c9mpOFKUEzPskSaF3VLflfSUCBwas/pn1/sV3pEhtMF6H8VUCd2rsedwoukeeCSEONqX7LLnQwRMA==} + '@libsql/linux-arm64-gnu@0.5.29': + resolution: {integrity: sha512-gURBqaiXIGGwFNEaUj8Ldk7Hps4STtG+31aEidCk5evMMdtsdfL3HPCpvys+ZF/tkOs2MWlRWoSq7SOuCE9k3w==} cpu: [arm64] os: [linux] - '@libsql/linux-arm64-musl@0.5.22': - resolution: {integrity: sha512-mCHSMAsDTLK5YH//lcV3eFEgiR23Ym0U9oEvgZA0667gqRZg/2px+7LshDvErEKv2XZ8ixzw3p1IrBzLQHGSsw==} + '@libsql/linux-arm64-musl@0.5.29': + resolution: {integrity: sha512-fwgYZ0H8mUkyVqXZHF3mT/92iIh1N94Owi/f66cPVNsk9BdGKq5gVpoKO+7UxaNzuEH1roJp2QEwsCZMvBLpqg==} cpu: [arm64] os: [linux] - '@libsql/linux-x64-gnu@0.5.22': - resolution: {integrity: sha512-kNBHaIkSg78Y4BqAdgjcR2mBilZXs4HYkAmi58J+4GRwDQZh5fIUWbnQvB9f95DkWUIGVeenqLRFY2pcTmlsew==} + '@libsql/linux-x64-gnu@0.5.29': + resolution: {integrity: sha512-y14V0vY0nmMC6G0pHeJcEarcnGU2H6cm21ZceRkacWHvQAEhAG0latQkCtoS2njFOXiYIg+JYPfAoWKbi82rkg==} cpu: [x64] os: [linux] - '@libsql/linux-x64-musl@0.5.22': - resolution: {integrity: sha512-UZ4Xdxm4pu3pQXjvfJiyCzZop/9j/eA2JjmhMaAhe3EVLH2g11Fy4fwyUp9sT1QJYR1kpc2JLuybPM0kuXv/Tg==} + '@libsql/linux-x64-musl@0.5.29': + resolution: {integrity: sha512-gquqwA/39tH4pFl+J9n3SOMSymjX+6kZ3kWgY3b94nXFTwac9bnFNMffIomgvlFaC4ArVqMnOZD3nuJ3H3VO1w==} cpu: [x64] os: [linux] - '@libsql/win32-x64-msvc@0.5.22': - resolution: {integrity: sha512-Fj0j8RnBpo43tVZUVoNK6BV/9AtDUM5S7DF3LB4qTYg1LMSZqi3yeCneUTLJD6XomQJlZzbI4mst89yspVSAnA==} + '@libsql/win32-x64-msvc@0.5.29': + resolution: {integrity: sha512-4/0CvEdhi6+KjMxMaVbFM2n2Z44escBRoEYpR+gZg64DdetzGnYm8mcNLcoySaDJZNaBd6wz5DNdgRmcI4hXcg==} cpu: [x64] os: [win32] @@ -1696,6 +1844,9 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} @@ -1814,6 +1965,9 @@ packages: resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} engines: {node: '>=18'} + cross-fetch@4.1.0: + resolution: {integrity: sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw==} + cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -1875,10 +2029,6 @@ packages: decode-named-character-reference@1.3.0: resolution: {integrity: sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q==} - deep-diff@1.0.2: - resolution: {integrity: sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg==} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. - deep-equal@2.2.3: resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} engines: {node: '>= 0.4'} @@ -1956,8 +2106,16 @@ packages: domutils@3.2.2: resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} - drizzle-orm@0.42.0: - resolution: {integrity: sha512-pS8nNJm2kBNZwrOjTHJfdKkaU+KuUQmV/vk5D57NojDq4FG+0uAYGMulXtYT///HfgsMF0hnFFvu1ezI3OwOkg==} + dotenv@17.3.1: + resolution: {integrity: sha512-IO8C/dzEb6O3F9/twg6ZLXz164a2fhTnEWb95H23Dm4OuN+92NmEAlTrupP9VW6Jm3sO26tQlqyvyi4CsnY9GA==} + engines: {node: '>=12'} + + drizzle-kit@0.31.10: + resolution: {integrity: sha512-7OZcmQUrdGI+DUNNsKBn1aW8qSoKuTH7d0mYgSP8bAzdFzKoovxEFnoGQp2dVs82EOJeYycqRtciopszwUf8bw==} + hasBin: true + + drizzle-orm@0.45.1: + resolution: {integrity: sha512-Te0FOdKIistGNPMq2jscdqngBRfBpC8uMFVwqjf6gtTVJHIQ/dosgV/CLBU2N4ZJBsXL5savCba9b0YJskKdcA==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' '@cloudflare/workers-types': '>=4' @@ -1973,6 +2131,7 @@ packages: '@types/better-sqlite3': '*' '@types/pg': '*' '@types/sql.js': '*' + '@upstash/redis': '>=1.34.7' '@vercel/postgres': '>=0.8.0' '@xata.io/client': '*' better-sqlite3: '>=7' @@ -2016,6 +2175,8 @@ packages: optional: true '@types/sql.js': optional: true + '@upstash/redis': + optional: true '@vercel/postgres': optional: true '@xata.io/client': @@ -2105,6 +2266,11 @@ packages: resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} + esbuild@0.18.20: + resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.25.12: resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} engines: {node: '>=18'} @@ -2331,6 +2497,9 @@ packages: resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} engines: {node: '>= 0.4'} + get-tsconfig@4.13.7: + resolution: {integrity: sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==} + github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} @@ -2654,8 +2823,8 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - libsql@0.5.22: - resolution: {integrity: sha512-NscWthMQt7fpU8lqd7LXMvT9pi+KhhmTHAJWUB/Lj6MWa0MKFv0F2V4C6WKKpjCVZl0VwcDz4nOI3CyaT1DDiA==} + libsql@0.5.29: + resolution: {integrity: sha512-8lMP8iMgiBzzoNbAPQ59qdVcj6UaE/Vnm+fiwX4doX4Narook0a4GPKWBEv+CR8a1OwbfkgL18uBfBjWdF0Fzg==} cpu: [x64, arm64, wasm32, arm] os: [darwin, linux, win32] @@ -2956,11 +3125,6 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanoid@5.1.6: - resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==} - engines: {node: ^18 || >=20} - hasBin: true - natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -3350,6 +3514,9 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + retext-latin@4.0.0: resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} @@ -3482,6 +3649,13 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + source-map@0.7.6: resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==} engines: {node: '>= 12'} @@ -3643,6 +3817,11 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsx@4.21.0: + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} + engines: {node: '>=18.0.0'} + hasBin: true + type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -4221,47 +4400,6 @@ snapshots: '@astrojs/compiler@2.13.1': {} - '@astrojs/db@0.18.3': - dependencies: - '@libsql/client': 0.15.15 - deep-diff: 1.0.2 - drizzle-orm: 0.42.0(@libsql/client@0.15.15) - nanoid: 5.1.6 - piccolore: 0.1.3 - prompts: 2.4.2 - yargs-parser: 21.1.1 - zod: 3.25.76 - transitivePeerDependencies: - - '@aws-sdk/client-rds-data' - - '@cloudflare/workers-types' - - '@electric-sql/pglite' - - '@libsql/client-wasm' - - '@neondatabase/serverless' - - '@op-engineering/op-sqlite' - - '@opentelemetry/api' - - '@planetscale/database' - - '@prisma/client' - - '@tidbcloud/serverless' - - '@types/better-sqlite3' - - '@types/pg' - - '@types/sql.js' - - '@vercel/postgres' - - '@xata.io/client' - - better-sqlite3 - - bufferutil - - bun-types - - expo-sqlite - - gel - - knex - - kysely - - mysql2 - - pg - - postgres - - prisma - - sql.js - - sqlite3 - - utf-8-validate - '@astrojs/internal-helpers@0.7.5': {} '@astrojs/language-server@2.16.3(prettier-plugin-astro@0.14.1)(prettier@3.8.1)(typescript@5.9.3)': @@ -4316,13 +4454,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/preact@4.1.3(@babel/core@7.29.0)(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(preact@10.28.4)(rollup@4.59.0)(yaml@2.8.2)': + '@astrojs/preact@4.1.3(@babel/core@7.29.0)(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(preact@10.28.4)(rollup@4.59.0)(tsx@4.21.0)(yaml@2.8.2)': dependencies: - '@preact/preset-vite': 2.10.3(@babel/core@7.29.0)(preact@10.28.4)(rollup@4.59.0)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + '@preact/preset-vite': 2.10.3(@babel/core@7.29.0)(preact@10.28.4)(rollup@4.59.0)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) '@preact/signals': 2.8.2(preact@10.28.4) preact: 10.28.4 preact-render-to-string: 6.6.6(preact@10.28.4) - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - '@babel/core' - '@types/node' @@ -4361,14 +4499,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/vercel@9.0.4(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2))(react@19.0.0)(rollup@4.59.0)': + '@astrojs/vercel@9.0.4(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(react@19.0.0)(rollup@4.59.0)': dependencies: '@astrojs/internal-helpers': 0.7.5 '@vercel/analytics': 1.6.1(react@19.0.0) '@vercel/functions': 2.2.13 '@vercel/nft': 0.30.4(rollup@4.59.0) '@vercel/routing-utils': 5.3.3 - astro: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2) + astro: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) esbuild: 0.25.12 tinyglobby: 0.2.15 transitivePeerDependencies: @@ -4545,6 +4683,8 @@ snapshots: '@csstools/css-tokenizer@4.0.0': {} + '@drizzle-team/brocli@0.10.2': {} + '@emmetio/abbreviation@2.3.3': dependencies: '@emmetio/scanner': 1.0.4 @@ -4573,102 +4713,160 @@ snapshots: tslib: 2.8.1 optional: true + '@esbuild-kit/core-utils@3.3.2': + dependencies: + esbuild: 0.18.20 + source-map-support: 0.5.21 + + '@esbuild-kit/esm-loader@2.6.5': + dependencies: + '@esbuild-kit/core-utils': 3.3.2 + get-tsconfig: 4.13.7 + '@esbuild/aix-ppc64@0.25.12': optional: true '@esbuild/aix-ppc64@0.27.3': optional: true + '@esbuild/android-arm64@0.18.20': + optional: true + '@esbuild/android-arm64@0.25.12': optional: true '@esbuild/android-arm64@0.27.3': optional: true + '@esbuild/android-arm@0.18.20': + optional: true + '@esbuild/android-arm@0.25.12': optional: true '@esbuild/android-arm@0.27.3': optional: true + '@esbuild/android-x64@0.18.20': + optional: true + '@esbuild/android-x64@0.25.12': optional: true '@esbuild/android-x64@0.27.3': optional: true + '@esbuild/darwin-arm64@0.18.20': + optional: true + '@esbuild/darwin-arm64@0.25.12': optional: true '@esbuild/darwin-arm64@0.27.3': optional: true + '@esbuild/darwin-x64@0.18.20': + optional: true + '@esbuild/darwin-x64@0.25.12': optional: true '@esbuild/darwin-x64@0.27.3': optional: true + '@esbuild/freebsd-arm64@0.18.20': + optional: true + '@esbuild/freebsd-arm64@0.25.12': optional: true '@esbuild/freebsd-arm64@0.27.3': optional: true + '@esbuild/freebsd-x64@0.18.20': + optional: true + '@esbuild/freebsd-x64@0.25.12': optional: true '@esbuild/freebsd-x64@0.27.3': optional: true + '@esbuild/linux-arm64@0.18.20': + optional: true + '@esbuild/linux-arm64@0.25.12': optional: true '@esbuild/linux-arm64@0.27.3': optional: true + '@esbuild/linux-arm@0.18.20': + optional: true + '@esbuild/linux-arm@0.25.12': optional: true '@esbuild/linux-arm@0.27.3': optional: true + '@esbuild/linux-ia32@0.18.20': + optional: true + '@esbuild/linux-ia32@0.25.12': optional: true '@esbuild/linux-ia32@0.27.3': optional: true + '@esbuild/linux-loong64@0.18.20': + optional: true + '@esbuild/linux-loong64@0.25.12': optional: true '@esbuild/linux-loong64@0.27.3': optional: true + '@esbuild/linux-mips64el@0.18.20': + optional: true + '@esbuild/linux-mips64el@0.25.12': optional: true '@esbuild/linux-mips64el@0.27.3': optional: true + '@esbuild/linux-ppc64@0.18.20': + optional: true + '@esbuild/linux-ppc64@0.25.12': optional: true '@esbuild/linux-ppc64@0.27.3': optional: true + '@esbuild/linux-riscv64@0.18.20': + optional: true + '@esbuild/linux-riscv64@0.25.12': optional: true '@esbuild/linux-riscv64@0.27.3': optional: true + '@esbuild/linux-s390x@0.18.20': + optional: true + '@esbuild/linux-s390x@0.25.12': optional: true '@esbuild/linux-s390x@0.27.3': optional: true + '@esbuild/linux-x64@0.18.20': + optional: true + '@esbuild/linux-x64@0.25.12': optional: true @@ -4681,6 +4879,9 @@ snapshots: '@esbuild/netbsd-arm64@0.27.3': optional: true + '@esbuild/netbsd-x64@0.18.20': + optional: true + '@esbuild/netbsd-x64@0.25.12': optional: true @@ -4693,6 +4894,9 @@ snapshots: '@esbuild/openbsd-arm64@0.27.3': optional: true + '@esbuild/openbsd-x64@0.18.20': + optional: true + '@esbuild/openbsd-x64@0.25.12': optional: true @@ -4705,24 +4909,36 @@ snapshots: '@esbuild/openharmony-arm64@0.27.3': optional: true + '@esbuild/sunos-x64@0.18.20': + optional: true + '@esbuild/sunos-x64@0.25.12': optional: true '@esbuild/sunos-x64@0.27.3': optional: true + '@esbuild/win32-arm64@0.18.20': + optional: true + '@esbuild/win32-arm64@0.25.12': optional: true '@esbuild/win32-arm64@0.27.3': optional: true + '@esbuild/win32-ia32@0.18.20': + optional: true + '@esbuild/win32-ia32@0.25.12': optional: true '@esbuild/win32-ia32@0.27.3': optional: true + '@esbuild/win32-x64@0.18.20': + optional: true + '@esbuild/win32-x64@0.25.12': optional: true @@ -4916,39 +5132,39 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 - '@libsql/client@0.15.15': + '@libsql/client@0.17.2': dependencies: - '@libsql/core': 0.15.15 - '@libsql/hrana-client': 0.7.0 + '@libsql/core': 0.17.2 + '@libsql/hrana-client': 0.9.0 js-base64: 3.7.8 - libsql: 0.5.22 + libsql: 0.5.29 promise-limit: 2.7.0 transitivePeerDependencies: - bufferutil + - encoding - utf-8-validate - '@libsql/core@0.15.15': + '@libsql/core@0.17.2': dependencies: js-base64: 3.7.8 - '@libsql/darwin-arm64@0.5.22': + '@libsql/darwin-arm64@0.5.29': optional: true - '@libsql/darwin-x64@0.5.22': + '@libsql/darwin-x64@0.5.29': optional: true - '@libsql/hrana-client@0.7.0': + '@libsql/hrana-client@0.9.0': dependencies: - '@libsql/isomorphic-fetch': 0.3.1 '@libsql/isomorphic-ws': 0.1.5 + cross-fetch: 4.1.0 js-base64: 3.7.8 node-fetch: 3.3.2 transitivePeerDependencies: - bufferutil + - encoding - utf-8-validate - '@libsql/isomorphic-fetch@0.3.1': {} - '@libsql/isomorphic-ws@0.1.5': dependencies: '@types/ws': 8.18.1 @@ -4957,25 +5173,25 @@ snapshots: - bufferutil - utf-8-validate - '@libsql/linux-arm-gnueabihf@0.5.22': + '@libsql/linux-arm-gnueabihf@0.5.29': optional: true - '@libsql/linux-arm-musleabihf@0.5.22': + '@libsql/linux-arm-musleabihf@0.5.29': optional: true - '@libsql/linux-arm64-gnu@0.5.22': + '@libsql/linux-arm64-gnu@0.5.29': optional: true - '@libsql/linux-arm64-musl@0.5.22': + '@libsql/linux-arm64-musl@0.5.29': optional: true - '@libsql/linux-x64-gnu@0.5.22': + '@libsql/linux-x64-gnu@0.5.29': optional: true - '@libsql/linux-x64-musl@0.5.22': + '@libsql/linux-x64-musl@0.5.29': optional: true - '@libsql/win32-x64-msvc@0.5.22': + '@libsql/win32-x64-msvc@0.5.29': optional: true '@mapbox/node-pre-gyp@2.0.3': @@ -5016,18 +5232,18 @@ snapshots: dependencies: playwright: 1.58.2 - '@preact/preset-vite@2.10.3(@babel/core@7.29.0)(preact@10.28.4)(rollup@4.59.0)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2))': + '@preact/preset-vite@2.10.3(@babel/core@7.29.0)(preact@10.28.4)(rollup@4.59.0)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx': 7.28.6(@babel/core@7.29.0) '@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.29.0) - '@prefresh/vite': 2.4.12(preact@10.28.4)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + '@prefresh/vite': 2.4.12(preact@10.28.4)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) '@rollup/pluginutils': 5.3.0(rollup@4.59.0) babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.29.0) debug: 4.4.3 picocolors: 1.1.1 - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) - vite-prerender-plugin: 0.5.12(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) + vite-prerender-plugin: 0.5.12(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) transitivePeerDependencies: - preact - rollup @@ -5048,7 +5264,7 @@ snapshots: '@prefresh/utils@1.2.1': {} - '@prefresh/vite@2.4.12(preact@10.28.4)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2))': + '@prefresh/vite@2.4.12(preact@10.28.4)(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@babel/core': 7.29.0 '@prefresh/babel-plugin': 0.5.3 @@ -5056,7 +5272,7 @@ snapshots: '@prefresh/utils': 1.2.1 '@rollup/pluginutils': 4.2.1 preact: 10.28.4 - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: - supports-color @@ -5259,12 +5475,12 @@ snapshots: postcss-selector-parser: 6.0.10 tailwindcss: 4.2.1 - '@tailwindcss/vite@4.2.1(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2))': + '@tailwindcss/vite@4.2.1(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@tailwindcss/node': 4.2.1 '@tailwindcss/oxide': 4.2.1 tailwindcss: 4.2.1 - vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) '@testing-library/dom@8.20.1': dependencies: @@ -5446,13 +5662,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2))': + '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2))': dependencies: '@vitest/spy': 4.0.18 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) '@vitest/pretty-format@4.0.18': dependencies: @@ -5615,12 +5831,12 @@ snapshots: transitivePeerDependencies: - supports-color - astro-seo-schema@5.2.0(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2))(schema-dts@1.1.5): + astro-seo-schema@5.2.0(astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(schema-dts@1.1.5): dependencies: - astro: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2) + astro: 5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) schema-dts: 1.1.5 - astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(typescript@5.9.3)(yaml@2.8.2): + astro@5.17.2(@types/node@24.12.0)(@vercel/functions@2.2.13)(jiti@2.6.1)(lightningcss@1.31.1)(rollup@4.59.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2): dependencies: '@astrojs/compiler': 2.13.1 '@astrojs/internal-helpers': 0.7.5 @@ -5677,8 +5893,8 @@ snapshots: unist-util-visit: 5.1.0 unstorage: 1.17.4(@vercel/functions@2.2.13) vfile: 6.0.3 - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) - vitefu: 1.1.2(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) + vitefu: 1.1.2(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 yocto-spinner: 0.2.3 @@ -5807,6 +6023,8 @@ snapshots: node-releases: 2.0.36 update-browserslist-db: 1.2.3(browserslist@4.28.1) + buffer-from@1.1.2: {} + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 @@ -5904,6 +6122,12 @@ snapshots: cookie@1.1.1: {} + cross-fetch@4.1.0: + dependencies: + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -5966,8 +6190,6 @@ snapshots: dependencies: character-entities: 2.0.2 - deep-diff@1.0.2: {} - deep-equal@2.2.3: dependencies: array-buffer-byte-length: 1.0.2 @@ -6053,9 +6275,18 @@ snapshots: domelementtype: 2.3.0 domhandler: 5.0.3 - drizzle-orm@0.42.0(@libsql/client@0.15.15): + dotenv@17.3.1: {} + + drizzle-kit@0.31.10: + dependencies: + '@drizzle-team/brocli': 0.10.2 + '@esbuild-kit/esm-loader': 2.6.5 + esbuild: 0.25.12 + tsx: 4.21.0 + + drizzle-orm@0.45.1(@libsql/client@0.17.2): optionalDependencies: - '@libsql/client': 0.15.15 + '@libsql/client': 0.17.2 dset@3.1.4: {} @@ -6118,6 +6349,31 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + esbuild@0.18.20: + optionalDependencies: + '@esbuild/android-arm': 0.18.20 + '@esbuild/android-arm64': 0.18.20 + '@esbuild/android-x64': 0.18.20 + '@esbuild/darwin-arm64': 0.18.20 + '@esbuild/darwin-x64': 0.18.20 + '@esbuild/freebsd-arm64': 0.18.20 + '@esbuild/freebsd-x64': 0.18.20 + '@esbuild/linux-arm': 0.18.20 + '@esbuild/linux-arm64': 0.18.20 + '@esbuild/linux-ia32': 0.18.20 + '@esbuild/linux-loong64': 0.18.20 + '@esbuild/linux-mips64el': 0.18.20 + '@esbuild/linux-ppc64': 0.18.20 + '@esbuild/linux-riscv64': 0.18.20 + '@esbuild/linux-s390x': 0.18.20 + '@esbuild/linux-x64': 0.18.20 + '@esbuild/netbsd-x64': 0.18.20 + '@esbuild/openbsd-x64': 0.18.20 + '@esbuild/sunos-x64': 0.18.20 + '@esbuild/win32-arm64': 0.18.20 + '@esbuild/win32-ia32': 0.18.20 + '@esbuild/win32-x64': 0.18.20 + esbuild@0.25.12: optionalDependencies: '@esbuild/aix-ppc64': 0.25.12 @@ -6405,6 +6661,10 @@ snapshots: dunder-proto: 1.0.1 es-object-atoms: 1.1.1 + get-tsconfig@4.13.7: + dependencies: + resolve-pkg-maps: 1.0.0 + github-slugger@2.0.0: {} glob-parent@5.1.2: @@ -6783,20 +7043,20 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - libsql@0.5.22: + libsql@0.5.29: dependencies: '@neon-rs/load': 0.0.4 detect-libc: 2.0.2 optionalDependencies: - '@libsql/darwin-arm64': 0.5.22 - '@libsql/darwin-x64': 0.5.22 - '@libsql/linux-arm-gnueabihf': 0.5.22 - '@libsql/linux-arm-musleabihf': 0.5.22 - '@libsql/linux-arm64-gnu': 0.5.22 - '@libsql/linux-arm64-musl': 0.5.22 - '@libsql/linux-x64-gnu': 0.5.22 - '@libsql/linux-x64-musl': 0.5.22 - '@libsql/win32-x64-msvc': 0.5.22 + '@libsql/darwin-arm64': 0.5.29 + '@libsql/darwin-x64': 0.5.29 + '@libsql/linux-arm-gnueabihf': 0.5.29 + '@libsql/linux-arm-musleabihf': 0.5.29 + '@libsql/linux-arm64-gnu': 0.5.29 + '@libsql/linux-arm64-musl': 0.5.29 + '@libsql/linux-x64-gnu': 0.5.29 + '@libsql/linux-x64-musl': 0.5.29 + '@libsql/win32-x64-msvc': 0.5.29 lightningcss-android-arm64@1.31.1: optional: true @@ -7239,8 +7499,6 @@ snapshots: nanoid@3.3.11: {} - nanoid@5.1.6: {} - natural-compare@1.4.0: {} neotraverse@0.6.18: {} @@ -7589,6 +7847,8 @@ snapshots: resolve-from@5.0.0: {} + resolve-pkg-maps@1.0.0: {} + retext-latin@4.0.0: dependencies: '@types/nlcst': 2.0.3 @@ -7805,6 +8065,13 @@ snapshots: source-map-js@1.2.1: {} + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.6.1: {} + source-map@0.7.6: {} space-separated-tokens@2.0.2: {} @@ -7950,6 +8217,13 @@ snapshots: tslib@2.8.1: {} + tsx@4.21.0: + dependencies: + esbuild: 0.27.3 + get-tsconfig: 4.13.7 + optionalDependencies: + fsevents: 2.3.3 + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -8074,7 +8348,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-prerender-plugin@0.5.12(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)): + vite-prerender-plugin@0.5.12(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)): dependencies: kolorist: 1.8.0 magic-string: 0.30.21 @@ -8082,9 +8356,9 @@ snapshots: simple-code-frame: 1.3.0 source-map: 0.7.6 stack-trace: 1.0.0-pre2 - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) - vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2): + vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2): dependencies: esbuild: 0.25.12 fdir: 6.5.0(picomatch@4.0.3) @@ -8097,9 +8371,10 @@ snapshots: fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.31.1 + tsx: 4.21.0 yaml: 2.8.2 - vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2): + vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) @@ -8112,16 +8387,17 @@ snapshots: fsevents: 2.3.3 jiti: 2.6.1 lightningcss: 1.31.1 + tsx: 4.21.0 yaml: 2.8.2 - vitefu@1.1.2(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)): + vitefu@1.1.2(vite@6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)): optionalDependencies: - vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 6.4.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) - vitest@4.0.18(@types/node@24.12.0)(jiti@2.6.1)(jsdom@27.4.0)(lightningcss@1.31.1)(yaml@2.8.2): + vitest@4.0.18(@types/node@24.12.0)(jiti@2.6.1)(jsdom@27.4.0)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2): dependencies: '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2)) + '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2)) '@vitest/pretty-format': 4.0.18 '@vitest/runner': 4.0.18 '@vitest/snapshot': 4.0.18 @@ -8138,7 +8414,7 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(yaml@2.8.2) + vite: 7.3.1(@types/node@24.12.0)(jiti@2.6.1)(lightningcss@1.31.1)(tsx@4.21.0)(yaml@2.8.2) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 24.12.0 diff --git a/src/img/people/dthompsondev.jpg b/src/img/people/dthompsondev.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9e41bc902d18a2ad3c0153b4c4fdc2b4d0cd2c8f GIT binary patch literal 32746 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ℜ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 literal 0 HcmV?d00001 diff --git a/src/pages/[episode].astro b/src/pages/[episode].astro index 27553bf..23aa3ed 100644 --- a/src/pages/[episode].astro +++ b/src/pages/[episode].astro @@ -1,14 +1,15 @@ --- import { getEntry } from 'astro:content'; +import { eq } from 'drizzle-orm'; + +import { createDb } from '../../db'; import { - db, - eq, Episode as DbEpisode, HostOrGuest, Person, Sponsor, SponsorForEpisode -} from 'astro:db'; +} from '../../db/schema'; import { Schema } from 'astro-seo-schema'; @@ -55,6 +56,11 @@ if (episode.episodeNumber && episode.episodeNumber !== 'Bonus') { const canonicalURL = new URL(`/${episode.episodeSlug}`, Astro.url); +const db = createDb( + import.meta.env.ASTRO_DB_REMOTE_URL, + import.meta.env.ASTRO_DB_APP_TOKEN +); + const hostsAndGuests = await db .select({ id: Person.id, From a48fe7ea96892cbb4e5d3f09cf42b0cefb7b084f Mon Sep 17 00:00:00 2001 From: Robert Wagner Date: Fri, 27 Mar 2026 10:23:55 -0400 Subject: [PATCH 2/2] Update ci.yml --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c5fe800..dea1dd5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -80,6 +80,9 @@ jobs: run: pnpm exec playwright install --with-deps - name: Run Playwright tests run: pnpm exec playwright test + env: + ASTRO_DB_REMOTE_URL: ${{ secrets.ASTRO_DB_REMOTE_URL }} + ASTRO_DB_APP_TOKEN: ${{ secrets.ASTRO_DB_APP_TOKEN }} - uses: actions/upload-artifact@v4 if: always() with: