import { Link } from "@tanstack/react-router";
import * as React from "react";
import { cn } from "../../lib/utils.js";
import { CaretNext } from "../ArrowIcons.js";
import { EditorHeader } from "../EditorHeader.js";
import { BackToSettingsLink } from "./BackToSettingsLink.js";
interface SettingsFrameProps {
title: React.ReactNode;
description: React.ReactNode;
actions?: React.ReactNode;
children: React.ReactNode;
}
export function SettingsFrame({ title, description, actions, children }: SettingsFrameProps) {
return (
}
actions={actions}
>
{children}
);
}
interface SettingsSectionProps {
title: React.ReactNode;
description?: React.ReactNode;
actions?: React.ReactNode;
contentClassName?: string;
children: React.ReactNode;
}
export function SettingsSection({
title,
description,
actions,
contentClassName,
children,
}: SettingsSectionProps) {
const headingId = React.useId();
return (
{title}
{description && (
{description}
)}
{actions &&
{actions}
}
{children}
);
}
interface SettingRowProps {
children: React.ReactNode;
className?: string;
}
export function SettingRow({ children, className }: SettingRowProps) {
return {children}
;
}
interface SettingsNavRowProps {
to: string;
icon: React.ReactNode;
title: React.ReactNode;
description: React.ReactNode;
}
export function SettingsNavRow({ to, icon, title, description }: SettingsNavRowProps) {
return (
{icon}
{title}
{description}
);
}