Files
Hy2026/backend/Application/Mappings/IdeaStatusWire.cs
T
Rafał Tyński 127ca92f63 feat(ideas): add idea creator, grant calls and applications
Implement the idea creator and application generator: idea status workflow, social canvas card, grant call windows with 409 when closed, and an LLM-backed idea assistant with offline fallback.
2026-10-04 03:13:45 +02:00

27 lines
807 B
C#

using TarninaHub.Domain.Enums;
namespace TarninaHub.Application.Mappings;
public static class IdeaStatusWire
{
public static string ToWire(this IdeaStatus status) => status switch
{
IdeaStatus.Draft => "draft",
IdeaStatus.Submitted => "submitted",
IdeaStatus.InReview => "in_review",
IdeaStatus.Accepted => "accepted",
IdeaStatus.Rejected => "rejected",
_ => throw new ArgumentOutOfRangeException(nameof(status), status, null),
};
public static IdeaStatus? Parse(string? value) => value switch
{
"draft" => IdeaStatus.Draft,
"submitted" => IdeaStatus.Submitted,
"in_review" => IdeaStatus.InReview,
"accepted" => IdeaStatus.Accepted,
"rejected" => IdeaStatus.Rejected,
_ => null,
};
}