Forge
csharp3407750f
1namespace AgentForge.Models;
2
3public enum RepoVisibility
4{
5 Public,
6 Private,
7}
8
9public static class RepoVisibilityExtensions
10{
11 public static string ToSlug(this RepoVisibility visibility) => visibility switch
12 {
13 RepoVisibility.Public => "public",
14 RepoVisibility.Private => "private",
15 _ => "private",
16 };
17
18 public static RepoVisibility ParseSlugOrDefault(string? slug) =>
19 TryParseSlug(slug, out var parsed) ? parsed : RepoVisibility.Private;
20
21 public static bool TryParseSlug(string? slug, out RepoVisibility visibility)
22 {
23 switch (slug?.Trim().ToLowerInvariant())
24 {
25 case "public":
26 visibility = RepoVisibility.Public;
27 return true;
28 case "private":
29 visibility = RepoVisibility.Private;
30 return true;
31 default:
32 visibility = RepoVisibility.Private;
33 return false;
34 }
35 }
36}
37
View only · write via MCP/CIDE