feat(server): implement sealed share lifecycle

Signed-off-by: JustMe <mr.toing@outlook.com>
This commit is contained in:
justme committed 2026-10-02 00:59:56 +08:00
1 parent e02e024605
commit 42b93ae2d8
45 files changed
+6327

No files matched your search

+53
View File
@@ -0,0 +1,53 @@
using System.Text.Json.Serialization;
namespace WebDrop.Core;
[JsonConverter(typeof(JsonStringEnumConverter<ChannelMode>))]
public enum ChannelMode : byte
{
[JsonStringEnumMemberName("enc")] Enc = 1,
[JsonStringEnumMemberName("raw")] Raw = 2,
}
[JsonConverter(typeof(JsonStringEnumConverter<DeletePolicy>))]
public enum DeletePolicy : byte
{
[JsonStringEnumMemberName("owner_only")] OwnerOnly = 0,
[JsonStringEnumMemberName("own")] Own = 1,
[JsonStringEnumMemberName("anyone")] Anyone = 2,
}
/// <summary>请求声明并通过验证的角色,数值越大权限越高。</summary>
public enum Role : byte
{
None = 0,
Read = 1,
Write = 2,
Owner = 3,
}
[Flags]
public enum FrameFlags : byte
{
None = 0,
Final = 1,
Snapshot = 2,
Gated = 4,
Enc = 8,
}
public enum LogKind : byte
{
Frame = 1,
Tombstone = 2,
Announce = 3,
}
public enum TombstoneReason : byte
{
Deleted = 0,
Expired = 1,
Evicted = 2,
DownloadLimit = 3,
Superseded = 4,
}