Backend: - Add MENTION_TAG_RE matching new `<mention type="..." id="...">label</mention>` format - Extend extract_mentions() and resolve_mentions() to parse new format (legacy backward-compatible) Frontend: - New src/lib/mention-ast.ts: AST types (TextNode, MentionNode, AiActionNode), parse() and serialize() functions for AST↔HTML conversion - MentionPopover: load @repository: from project repos, @ai: from room_ai configs (not room members); output new HTML format with ID instead of label - MessageMentions: use AST parse() for rendering (falls back to legacy parser) - ChatInputArea: insertMention now produces `<mention type="user" id="...">label</mention>` - RoomParticipantsPanel: onMention passes member UUID to insertMention - RoomContext: add projectRepos and roomAiConfigs for mention data sources |
||
|---|---|---|
| .. | ||
| ai.rs | ||
| category.rs | ||
| connection.rs | ||
| draft_and_history.rs | ||
| error.rs | ||
| helpers.rs | ||
| lib.rs | ||
| member.rs | ||
| message.rs | ||
| metrics.rs | ||
| notification.rs | ||
| pin.rs | ||
| reaction.rs | ||
| room_ai_queue.rs | ||
| room.rs | ||
| search.rs | ||
| service.rs | ||
| thread.rs | ||
| types.rs | ||
| ws_context.rs | ||