import { useStateValue } from "@guanghechen/react-viewmodel"; import type { Definition, LinkReference } from "@yozora/ast"; import { useNodeRendererContext, type INodeRenderer, astClasses } from "../context"; import { LinkRendererInner } from "./inner/LinkRendererInner"; /** * Render `link-reference`. * * @see https://www.npmjs.com/package/@yozora/ast#linkReference * @see https://www.npmjs.com/package/@yozora/tokenizer-link-reference */ export const LinkReferenceRenderer: INodeRenderer = properties => { const { viewmodel } = useNodeRendererContext(); const definitionMap: Readonly> = useStateValue(viewmodel.definitionMap$); const definition = definitionMap[properties.identifier]; const url: string = definition?.url ?? ""; const title: string | undefined = definition?.title; return ( ); };