feat(markdown): BIG ui improvements
Some checks failed
/ deploy-and-package (push) Has been cancelled
Some checks failed
/ deploy-and-package (push) Has been cancelled
This commit is contained in:
parent
0193880cb0
commit
61d27b0e96
10 changed files with 861 additions and 388 deletions
|
|
@ -15,7 +15,6 @@ export default function Emoji({
|
|||
className = "size-6",
|
||||
registry: registryOverride,
|
||||
shortcode,
|
||||
tooltip = true,
|
||||
}: EmojiProps) {
|
||||
const registry = useEmojiRegistry(registryOverride);
|
||||
const emoji = registry.resolve(shortcode);
|
||||
|
|
@ -23,26 +22,27 @@ export default function Emoji({
|
|||
|
||||
useEffect(() => setFailedSource(undefined), [emoji?.src]);
|
||||
|
||||
if (!emoji || failedSource === emoji.src) return <span>{shortcode}</span>;
|
||||
|
||||
const image = (
|
||||
<img
|
||||
alt={emoji.shortcode}
|
||||
className={className}
|
||||
decoding="async"
|
||||
draggable={false}
|
||||
loading="lazy"
|
||||
src={emoji.src}
|
||||
onError={() => setFailedSource(emoji.src)}
|
||||
/>
|
||||
);
|
||||
|
||||
if (!tooltip) return image;
|
||||
const content =
|
||||
emoji?.src && failedSource !== emoji.src ? (
|
||||
<img
|
||||
alt={emoji.shortcode}
|
||||
className={className}
|
||||
decoding="async"
|
||||
draggable={false}
|
||||
loading="lazy"
|
||||
src={emoji.src}
|
||||
onError={() => setFailedSource(emoji.src)}
|
||||
/>
|
||||
) : (
|
||||
<span>{shortcode}</span>
|
||||
);
|
||||
|
||||
return (
|
||||
<Tooltip>
|
||||
<TooltipTrigger render={image} />
|
||||
<TooltipContent sideOffset={8}>{emoji.shortcode}</TooltipContent>
|
||||
<TooltipTrigger render={content} />
|
||||
<TooltipContent sideOffset={8}>
|
||||
{emoji?.shortcode ?? shortcode}
|
||||
</TooltipContent>
|
||||
</Tooltip>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue