namespace MeWeb.Shared; public static class Endpoints { public const string Host = "meweb.arasaka.software"; public const string HostV4 = "v4.meweb.arasaka.software"; public const string HostV6 = "v6.meweb.arasaka.software"; public static string Base => $"https://{Host}"; public static string BaseV4 => $"https://{HostV4}"; public static string BaseV6 => $"https://{HostV6}"; public const string Api = "/api"; public const string StunHost = "stun.meweb.arasaka.software"; public const int StunPort = 3478; public const string SecondStunHost = "stun.nextcloud.com"; public const int SecondStunPort = 443; public static class Server { public const string GET_Info = $"{Api}/info"; public const string GET_Ip = $"{Api}/ip"; } public static class Probe { public const string POST_Ticket = $"{Api}/probe/ticket"; public const string POST_Run = $"{Api}/probe/{{id}}"; public static string POST_M_Run(string id) => $"{Api}/probe/{id}"; } public static class Knowledge { public const string GET_Manifest = $"{Api}/knowledge"; public const string GET_File = $"{Api}/knowledge/{{name}}"; public static string GET_M_File(string name) => $"{Api}/knowledge/{name}"; } public static class Speed { public const string GET_Down = $"{Api}/speed/down"; public const string POST_Up = $"{Api}/speed/up"; public const int MaxDownBytes = 25 * 1024 * 1024; public const int MaxUpBytes = 10 * 1024 * 1024; public static string GET_M_Down(int bytes) => $"{Api}/speed/down?bytes={bytes}"; } public static class Share { public const string POST_Create = $"{Api}/share"; public const string DELETE_One = $"{Api}/share/{{id}}"; public static string DELETE_M_One(string id) => $"{Api}/share/{id}"; } public static class Downloads { public const string GET_Page = "/"; public const string GET_Privacy = "/privacy"; public const string GET_Platform = "/download/{platform}"; public static string GET_M_Platform(string platform) => $"/download/{platform}"; } public static class Gitea { public const string Origin = "https://git.thepra.dev"; public const string Repository = "Arasaka/MeWeb"; public const string GET_Releases = $"{Origin}/api/v1/repos/{Repository}/releases?limit=10"; public const string Releases = $"{Origin}/{Repository}/releases"; public const string Source = $"{Origin}/{Repository}"; } public static class FDroid { public const string Repository = "https://packages.arasaka.software/fdroid/repo"; public const string Fingerprint = "5F52CFF4F52F4E0B6DA6CD044BFCEAF78D1D42DB24F2470602DB7F19CBFDF846"; public const string Add = $"{Repository}?fingerprint={Fingerprint}"; public const string Obtainium = "obtainium://app/"; } }