2024-07-10 16:17:23 +08:00
|
|
|
import type { Link } from "@yozora/ast";
|
|
|
|
import { astClasses, type INodeRenderer } from "../context";
|
|
|
|
import { LinkRendererInner } from "./inner/LinkRendererInner";
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Render `link`.
|
|
|
|
*
|
|
|
|
* @see https://www.npmjs.com/package/@yozora/ast#link
|
|
|
|
* @see https://www.npmjs.com/package/@yozora/tokenizer-link
|
|
|
|
* @see https://www.npmjs.com/package/@yozora/tokenizer-autolink
|
|
|
|
* @see https://www.npmjs.com/package/@yozora/tokenizer-autolink-extension
|
|
|
|
*/
|
2024-07-10 16:34:28 +08:00
|
|
|
export const LinkRenderer: INodeRenderer<Link> = properties => {
|
|
|
|
const { url, title, children: childNodes } = properties;
|
2024-07-10 16:32:24 +08:00
|
|
|
return <LinkRendererInner url={url} title={title} childNodes={childNodes} className={astClasses.link} />;
|
2024-07-10 16:17:23 +08:00
|
|
|
};
|