mirror of
https://github.com/projectsend/projectsend.git
synced 2026-09-20 18:43:20 +00:00
6e47d76ba6
Client file sharing, rebuilt from the ground up: a private area per client, resumable uploads, folders, groups and categories, sharing with expiry dates and download limits, comments, file versions, an activity log, a REST API, and sixteen languages. This repository begins here. ProjectSend 2 was developed privately, and that development history is not published — the previous generation remains available, with its own history, at projectsend/legacy. Free software under the GNU General Public License v2, or (at your option) any later version.
32 lines
1.4 KiB
TypeScript
32 lines
1.4 KiB
TypeScript
import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from '@/components/ui/breadcrumb';
|
|
import { type BreadcrumbItem as BreadcrumbItemType } from '@/types';
|
|
import { Fragment } from 'react';
|
|
|
|
export function Breadcrumbs({ breadcrumbs }: { breadcrumbs: BreadcrumbItemType[] }) {
|
|
return (
|
|
<>
|
|
{breadcrumbs.length > 0 && (
|
|
<Breadcrumb>
|
|
<BreadcrumbList>
|
|
{breadcrumbs.map((item, index) => {
|
|
const isLast = index === breadcrumbs.length - 1;
|
|
return (
|
|
<Fragment key={index}>
|
|
<BreadcrumbItem>
|
|
{isLast ? (
|
|
<BreadcrumbPage>{item.title}</BreadcrumbPage>
|
|
) : (
|
|
<BreadcrumbLink href={item.href}>{item.title}</BreadcrumbLink>
|
|
)}
|
|
</BreadcrumbItem>
|
|
{!isLast && <BreadcrumbSeparator />}
|
|
</Fragment>
|
|
);
|
|
})}
|
|
</BreadcrumbList>
|
|
</Breadcrumb>
|
|
)}
|
|
</>
|
|
);
|
|
}
|