diff --git a/apps/web/features/editor/readonly-content.tsx b/apps/web/features/editor/readonly-content.tsx index 8d6937d2..2dd5f8a1 100644 --- a/apps/web/features/editor/readonly-content.tsx +++ b/apps/web/features/editor/readonly-content.tsx @@ -63,7 +63,19 @@ const components: Partial = { : Array.isArray(children) ? children.join("") : undefined; - return ; + // Wrap in inline span for vertical alignment (mimics Tiptap's NodeViewWrapper) + return ( + { + e.preventDefault(); + e.stopPropagation(); + window.open(`/issues/${match[2]}`, "_blank", "noopener,noreferrer"); + }} + > + + + ); } // Member / agent / all mentions return {children}; @@ -83,6 +95,16 @@ const components: Partial = { ); }, + // Images — constrain width (matches Tiptap Image extension inline style) + img: ({ src, alt, ...props }) => ( + {alt + ), + // Tables — wrap in tableWrapper div for border/radius/scroll (matches Tiptap) table: ({ children }) => (
diff --git a/apps/web/features/issues/components/issue-mention-card.tsx b/apps/web/features/issues/components/issue-mention-card.tsx index f115c8d4..92cfe967 100644 --- a/apps/web/features/issues/components/issue-mention-card.tsx +++ b/apps/web/features/issues/components/issue-mention-card.tsx @@ -21,9 +21,11 @@ export function IssueMentionCard({ issueId, fallbackLabel }: IssueMentionCardPro return ( - {fallbackLabel ?? issueId.slice(0, 8)} + + {fallbackLabel ?? issueId.slice(0, 8)} + ); } @@ -31,11 +33,11 @@ export function IssueMentionCard({ issueId, fallbackLabel }: IssueMentionCardPro return ( - - {issue.identifier} - {issue.title} + + {issue.identifier} + {issue.title} ); }