/**
 * Copyright (c) 2025 xwra
 * SPDX-License-Identifier: AGPL-3.0-or-later
 */

import { HTMLAttributes, JSX } from "preact";
import { LinkIcon } from "./Icon.tsx";

interface LinkProps extends HTMLAttributes<HTMLAnchorElement> {
	href: string;
	children: JSX.Element | JSX.Element[] | string;
	noIcon?: boolean;
}

export default function Link(
	{ children, noIcon = false, ...props }: LinkProps,
) {
	return (
		<a {...props}>
			{children}
			{!noIcon && <LinkIcon size={16} class="link-icon" />}
		</a>
	);
}
