diff --git a/lib/src/Components/TipTap/utils/preprocessMarkdown.ts b/lib/src/Components/TipTap/utils/preprocessMarkdown.ts index f447d9ce..b434387d 100644 --- a/lib/src/Components/TipTap/utils/preprocessMarkdown.ts +++ b/lib/src/Components/TipTap/utils/preprocessMarkdown.ts @@ -130,15 +130,16 @@ export function preprocessItemMentions(text: string): string { // Format with layer: [@Label](/item/layer/id) or [@Label](item/layer/id) // Use non-greedy matching for label to handle consecutive mentions + // Use case-insensitive flag for UUID hex characters result = result.replace( - /\[@([^\]]+?)\]\(\/?item\/[^/]+\/([a-f0-9-]+)\)/g, + /\[@([^\]]+?)\]\(\/?item\/[^/]+\/([a-fA-F0-9-]+)\)/g, '@$1', ) // Format without layer: [@Label](/item/id) or [@Label](item/id) - // UUID pattern: hex characters with dashes + // UUID pattern: hex characters (case-insensitive) with dashes result = result.replace( - /\[@([^\]]+?)\]\(\/?item\/([a-f0-9-]+)\)/g, + /\[@([^\]]+?)\]\(\/?item\/([a-fA-F0-9-]+)\)/g, '@$1', )