'use client'; import { useState } from 'react'; import DoctorModal from './DoctorModal'; import * as Icons from './Icons'; import { en } from '@/lib/i18n/locales/en'; import { LIGHTBOX_SHORTCUTS, shortcutDisplayKeys } from '@/lib/lightboxShortcuts'; /** * The admin help section. * * It exists because parts of the portfolio have no control of their own. The * lightbox is the clearest case: its keys are deliberately unadvertised to * visitors, which also left the site owner with no way to learn they exist * (#473). This is where the owner finds out what their portfolio can do. * * Labels come from the English dictionary rather than being retyped, so what * this page promises is what a visitor is actually shown. The admin panel is * English-only, hence `en` directly. */ export default function HelpView() { const [showDoctor, setShowDoctor] = useState(false); return (

Help

What your portfolio can do that has no button of its own.

Image viewer Keys a visitor can press in the lightbox. There is deliberately no toolbar for these — a permanent control over a photograph costs every visitor something — but visitors can call up the same list with ? or{' '} H.
{LIGHTBOX_SHORTCUTS.map((shortcut) => (
{shortcutDisplayKeys(shortcut).map((key) => ( {key} ))}
{en.lightbox[shortcut.labelKey]} {shortcut.note && {shortcut.note}}
))}
Diagnostics Checks the things that fail silently — a wrong proxy hop count, a deleted album ID, a plaintext password, an album Immich does not consider shared. It also sits behind the status badge in the top bar, which is where it belongs when the question is whether anything needs attention right now.
setShowDoctor(false)} />
); }