/** * Kleine Hilfen, die mehrere Terminplaner-Module teilen (Zeitpunkte lesen, Pflichtparameter pruefen). * Reine Funktionen ohne Appwrite und ohne config. */ /** Zeitpunkt als ms: Date, ISO-String (auch mit +00:00 wie von Appwrite) oder Zahl; sonst NaN. */ export function zeitMs(wert) { if (wert instanceof Date) return wert.getTime() if (typeof wert === 'string' && wert !== '') return new Date(wert).getTime() if (typeof wert === 'number') return wert return Number.NaN } /** `now` ist immer ein gueltiges Date (feste Uhr per Parameter, nie die Wanduhr), sonst TypeError. => Millisekunden. */ export function pruefeNow(now, name) { if (!(now instanceof Date) || Number.isNaN(now.getTime())) throw new TypeError(`${name}: now fehlt`) return now.getTime() } /** Pflichttext: nichtleerer String, sonst TypeError. */ export function pruefeText(wert, name) { if (typeof wert !== 'string' || wert === '') throw new TypeError(`${name} fehlt`) }