[backend/api] Add polls to CreateNote

This commit is contained in:
pancakes 2024-12-30 13:19:40 +10:00 committed by Lilian
parent 189938af13
commit 735bdfe09a
No known key found for this signature in database
2 changed files with 19 additions and 1 deletions

View file

@ -555,6 +555,15 @@ public class NoteController(
? await db.DriveFiles.Where(p => request.MediaIds.Contains(p.Id)).ToListAsync()
: null;
var poll = request.Poll != null
? new Poll
{
ExpiresAt = request.Poll.ExpiresAt,
Multiple = request.Poll.Multiple,
Choices = request.Poll.Choices,
}
: null;
var note = await noteSvc.CreateNoteAsync(new NoteService.NoteCreationData
{
User = user,
@ -563,7 +572,8 @@ public class NoteController(
Cw = request.Cw,
Reply = reply,
Renote = renote,
Attachments = attachments
Attachments = attachments,
Poll = poll
});
if (request.IdempotencyKey != null)

View file

@ -9,4 +9,12 @@ public class NoteCreateRequest
public List<string>? MediaIds { get; set; }
public required NoteVisibility Visibility { get; set; }
public string? IdempotencyKey { get; set; }
public PollRequest? Poll { get; set; }
}
public class PollRequest
{
public required DateTime? ExpiresAt { get; set; }
public required bool Multiple { get; set; }
public required List<string> Choices { get; set; }
}