Files
Wabenhain/src/lib/json-array.ts
T
Nick Szaunig c7927f2883 feat: Wabenhain Honig-Shop Anwendung
Vollstaendige Next.js/Prisma-E-Commerce-Anwendung fuer eine Imkerei:
Shop, Warenkorb, Stripe-Checkout, Kundenkonto mit 2FA, Admin-Bereich
(Produkte, Ernten, Chargen, Bestellungen, Gutscheine, admin-editierbare
Website-Inhalte), i18n (DE/EN), Rate-Limiting/CSP/Audit-Log-Haertung,
PostgreSQL- und MySQL-Unterstuetzung ueber austauschbare Prisma-
Treiber-Adapter, Unit-/Komponenten-/E2E-Tests.
2026-08-17 14:30:28 +02:00

13 lines
634 B
TypeScript

/**
* Normalisiert den Rueckgabewert eines Json-Feldes (tasteTags/images auf
* Harvest/Product — siehe schema.prisma-Kommentare dort) zu einem
* String-Array. Diese Felder sind bewusst als Json statt String[] modelliert,
* da MySQL keine nativen Skalar-Arrays kennt; zur Laufzeit steht dort aber
* immer ein JSON-Array aus Strings, solange nur ueber die App geschrieben
* wird. Fremdartige/fehlerhafte Werte werden defensiv zu [] statt zu werfen.
*/
export function asStringArray(value: unknown): string[] {
if (!Array.isArray(value)) return [];
return value.filter((item): item is string => typeof item === "string");
}