initial commit
This commit is contained in:
commit
e2466b202a
50 changed files with 4356 additions and 0 deletions
41
components/Reports.tsx
Normal file
41
components/Reports.tsx
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
/**
|
||||
* Copyright (c) 2025 favewa
|
||||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
|
||||
import { Report } from "../utils/atproto.ts";
|
||||
|
||||
export interface ReportsProps {
|
||||
reports: Report[];
|
||||
}
|
||||
|
||||
export default function Reports({ reports }: ReportsProps) {
|
||||
return (
|
||||
<>
|
||||
<header>
|
||||
<h1>$reports</h1>
|
||||
<h2>thoughts, ramblings, and occasional coherence</h2>
|
||||
</header>
|
||||
|
||||
<ul class="reports">
|
||||
{reports.map((report) => (
|
||||
<li key={report.rkey}>
|
||||
<a href={`/reports/${report.rkey}`} class="report">
|
||||
<span class="date">{report.createdAt}</span>
|
||||
<h3>{report.title}</h3>
|
||||
<p class="excerpt">{report.excerpt}</p>
|
||||
{report.tags && (
|
||||
<div class="tags">
|
||||
{report.tags.map((tag) => (
|
||||
<span key={tag} class="tag">{tag}</span>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
<span class="arrow">→</span>
|
||||
</a>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</>
|
||||
);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue