feat(messages): support forwarding to multiple chats
This commit is contained in:
@@ -5,6 +5,7 @@ from app.auth.service import get_current_user
|
||||
from app.database.session import get_db
|
||||
from app.messages.schemas import (
|
||||
MessageCreateRequest,
|
||||
MessageForwardBulkRequest,
|
||||
MessageForwardRequest,
|
||||
MessageReactionRead,
|
||||
MessageReactionToggleRequest,
|
||||
@@ -17,6 +18,7 @@ from app.messages.service import (
|
||||
delete_message,
|
||||
delete_message_for_all,
|
||||
forward_message,
|
||||
forward_message_bulk,
|
||||
get_messages,
|
||||
list_message_reactions,
|
||||
search_messages,
|
||||
@@ -116,6 +118,19 @@ async def forward_message_endpoint(
|
||||
return message
|
||||
|
||||
|
||||
@router.post("/{message_id}/forward-bulk", response_model=list[MessageRead], status_code=status.HTTP_201_CREATED)
|
||||
async def forward_message_bulk_endpoint(
|
||||
message_id: int,
|
||||
payload: MessageForwardBulkRequest,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
current_user: User = Depends(get_current_user),
|
||||
) -> list[MessageRead]:
|
||||
messages = await forward_message_bulk(db, source_message_id=message_id, sender_id=current_user.id, payload=payload)
|
||||
for message in messages:
|
||||
await realtime_gateway.publish_message_created(message=message, sender_id=current_user.id)
|
||||
return messages
|
||||
|
||||
|
||||
@router.get("/{message_id}/reactions", response_model=list[MessageReactionRead])
|
||||
async def list_reactions_endpoint(
|
||||
message_id: int,
|
||||
|
||||
Reference in New Issue
Block a user