t3-code-android-nightly/.repos/alchemy-effect/examples/cloudflare-website-vinext/app/isr/page.tsx
Julius Marminge 6f9cea00ae
chore(refs): sync Effect and Alchemy references to 4.0.1 and beta.80 (#16170)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 13:22:30 -07:00

30 lines
894 B
TypeScript

import { Card } from "../components/Card.tsx";
import { LocalTime } from "../components/LocalTime.tsx";
import { refreshCachedPage } from "./actions.ts";
export const revalidate = 30;
const buttonClass =
"mt-4 rounded-md border border-slate-200 bg-white px-3 py-1.5 text-sm text-slate-900 hover:bg-slate-50";
export default function CachedPage() {
return (
<main>
<h1 className="text-3xl font-bold">Cached</h1>
<Card title="revalidate=30">
<p className="text-sm text-slate-900" data-testid="isr-time">
Rendered at: <LocalTime cached value={new Date().toISOString()} />
</p>
<form action={refreshCachedPage}>
<button
className={buttonClass}
data-testid="isr-refresh"
type="submit"
>
Refresh cache now
</button>
</form>
</Card>
</main>
);
}