import type { LayoutNode } from 'officerdev'; import { WorkspaceView } from 'officerdev'; import { useDashboardState } from 'state/useDashboardState'; import { defaultLayout } from './defaultLayout'; // /calendar uses the Workspace/Panel system (like /command-hq): the calendar list on the left, the // selected calendar's agenda on the right. Both panels read the officer-caldav sidecar through the // /api/caldav auth proxy, which holds no DAV credentials of its own. // // There is no :param route pair here and so no guard: a collection id is a DAV path with // slashes in it, so the selection lives in ?collection= on this same route. An absent or unknown value // resolves to the first collection inside the panels rather than by redirecting, because until the // collection list has loaded there is no canonical URL to redirect to. export const CalendarScreen = () => { const workspace = useDashboardState('screens/calendar', defaultLayout); return (
); };