Wochenplan: Gerichtsuche statt langer Dropdown-Liste, Beispieldaten zurück

WeekEditor: "Mahlzeit hinzufügen" zeigt jetzt ein Suchfeld mit
gefilterter Trefferliste (wie die Live-Suche bei Gerichten) statt einer
langen Dropdown-Liste zum Durchscrollen. Ausgewähltes Gericht lässt sich
per ×-Button wieder ändern.

Neues Skript db/seed-demo.sql (+ db/seed-demo.mjs, "npm run
db:seed-demo"): spielt den ursprünglichen Beispieldatensatz ein
(4 Essenszeiten, 14 Allergene, 11 Zusatzstoffe, 18 Testgerichte, zwei
Beispielwochen) – nur für lokale Entwicklung/Demos, kein Teil der
automatischen Migrationen, da frische Deployments weiterhin leer
starten sollen.
This commit is contained in:
2026-07-18 11:35:13 +02:00
parent c60f481aec
commit 3d13ba88f4
5 changed files with 237 additions and 26 deletions
+30
View File
@@ -0,0 +1,30 @@
#!/usr/bin/env node
// Spielt db/seed-demo.sql ein: ersetzt Essenszeiten/Gerichte/Allergene/
// Zusatzstoffe/Wochenplan durch den Beispieldatensatz. Nur für lokale
// Entwicklung/Demos gedacht, läuft nicht automatisch beim Start.
import { readFileSync } from "node:fs";
import { dirname, join } from "node:path";
import { fileURLToPath } from "node:url";
import pg from "pg";
const sql = readFileSync(
join(dirname(fileURLToPath(import.meta.url)), "seed-demo.sql"),
"utf8"
);
async function main() {
const client = new pg.Client({ connectionString: process.env.DATABASE_URL });
await client.connect();
try {
await client.query(sql);
console.log("db:seed-demo – Beispieldaten eingespielt.");
} finally {
await client.end();
}
}
main().catch((err) => {
console.error(err);
process.exit(1);
});