feat(documents): hub page with tabs, filters, and live counts

Replaces /documents with the Phase A hub: tabs (All/Awaiting them/
Awaiting me/Completed/Expired) backed by per-tab counts via a new
hub-counts endpoint, signature-only chip, type filter, expandable
signer rows, and real-time invalidation across the eight document
socket events. listDocuments grew tab/watcher/signatureOnly/sent-window
filters; the legacy file browser moved to /documents/files where the
sidebar already linked.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Matt Ciaccio
2026-04-28 02:35:36 +02:00
parent 398d6322f1
commit da7262f18f
9 changed files with 718 additions and 146 deletions

View File

@@ -0,0 +1,24 @@
import Link from 'next/link';
import { Button } from '@/components/ui/button';
import { PageHeader } from '@/components/shared/page-header';
interface PageProps {
params: Promise<{ portSlug: string }>;
}
export default async function NewDocumentPage({ params }: PageProps) {
const { portSlug } = await params;
return (
<div className="flex flex-col gap-4">
<PageHeader
title="New document"
description="The create-document wizard ships in PR6 of the Phase A rollout."
actions={
<Button asChild variant="outline">
<Link href={`/${portSlug}/documents`}>Back to documents</Link>
</Button>
}
/>
</div>
);
}