review fixes: light-mode contrast, tz robustness, deploy copy

- admin: maroon buttons use .danger class (white text); replace hardcoded
  #333/#ff8a8a/drop-target colors with theme vars so light mode is legible
- time.ts: force hourCycle h23 (no 24:00 artifact), drop dead 24-guard
- Makefile/README: rsync with excludes instead of `cp -a .` so .git and the
  dev DB don't ship to /opt; add rsync to deps
This commit is contained in:
müde 2026-06-14 22:55:29 +02:00
commit cca3077b7a
4 changed files with 16 additions and 11 deletions

View file

@ -39,7 +39,7 @@ function localParts(d: Date, tz: string = TZ): LocalParts {
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
hour12: false,
hourCycle: 'h23', // force midnight as 00, never the 24 artifact
});
const parts: Record<string, string> = {};
for (const p of fmt.formatToParts(d)) {
@ -49,7 +49,7 @@ function localParts(d: Date, tz: string = TZ): LocalParts {
year: Number(parts.year),
month: Number(parts.month),
day: Number(parts.day),
hour: Number(parts.hour === '24' ? '0' : parts.hour),
hour: Number(parts.hour),
minute: Number(parts.minute),
second: Number(parts.second),
};