import { Link } from "react-router-dom";
import { ChevronRight } from "lucide-react";
export default function BreadcrumbBar({ pathname }: { pathname: string }) {
const parts = pathname.split("/").filter(Boolean);
const labels = parts.length ? parts : ["campaigns"];
return (
);
}
const campaignRouteLabels: Record = {
data: "General",
campaign: "General",
settings: "Global settings",
"global-settings": "Global settings",
fields: "Fields",
recipients: "Recipients",
template: "Template",
files: "Attachments",
attachments: "Attachments",
mail: "Server settings",
"mail-settings": "Server settings",
"server-settings": "Server settings",
review: "Review",
send: "Send",
report: "Report",
reports: "Report",
audit: "Audit log",
json: "JSON",
wizard: "Wizard",
create: "Create",
};
const topLevelRouteLabels: Record = {
campaigns: "Campaigns",
dashboard: "Dashboard",
templates: "Templates",
files: "Files",
reports: "Reports",
settings: "Settings",
admin: "Admin",
};
function labelFor(value: string, parts: string[], index: number): string {
if (parts[0] === "campaigns" && index === 1) return "Campaign";
if (parts[0] === "campaigns" && index >= 2) {
const mapped = campaignRouteLabels[value];
if (mapped) return mapped;
}
const mapped = topLevelRouteLabels[value];
if (mapped) return mapped;
if (value.length > 18) return "Campaign";
return value.replace(/-/g, " ").replace(/\b\w/g, (c) => c.toUpperCase());
}