|
|
@@ -11,11 +11,14 @@ namespace Discord.Rest |
|
|
/// </summary> |
|
|
/// </summary> |
|
|
public class ChannelDeleteAuditLogData : IAuditLogData |
|
|
public class ChannelDeleteAuditLogData : IAuditLogData |
|
|
{ |
|
|
{ |
|
|
private ChannelDeleteAuditLogData(ulong id, string name, ChannelType type, IReadOnlyCollection<Overwrite> overwrites) |
|
|
|
|
|
|
|
|
private ChannelDeleteAuditLogData(ulong id, string name, ChannelType type, int? rateLimit, bool? nsfw, int? bitrate, IReadOnlyCollection<Overwrite> overwrites) |
|
|
{ |
|
|
{ |
|
|
ChannelId = id; |
|
|
ChannelId = id; |
|
|
ChannelName = name; |
|
|
ChannelName = name; |
|
|
ChannelType = type; |
|
|
ChannelType = type; |
|
|
|
|
|
SlowModeInterval = rateLimit; |
|
|
|
|
|
IsNsfw = nsfw; |
|
|
|
|
|
Bitrate = bitrate; |
|
|
Overwrites = overwrites; |
|
|
Overwrites = overwrites; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@@ -26,15 +29,21 @@ namespace Discord.Rest |
|
|
var overwritesModel = changes.FirstOrDefault(x => x.ChangedProperty == "permission_overwrites"); |
|
|
var overwritesModel = changes.FirstOrDefault(x => x.ChangedProperty == "permission_overwrites"); |
|
|
var typeModel = changes.FirstOrDefault(x => x.ChangedProperty == "type"); |
|
|
var typeModel = changes.FirstOrDefault(x => x.ChangedProperty == "type"); |
|
|
var nameModel = changes.FirstOrDefault(x => x.ChangedProperty == "name"); |
|
|
var nameModel = changes.FirstOrDefault(x => x.ChangedProperty == "name"); |
|
|
|
|
|
var rateLimitPerUserModel = changes.FirstOrDefault(x => x.ChangedProperty == "rate_limit_per_user"); |
|
|
|
|
|
var nsfwModel = changes.FirstOrDefault(x => x.ChangedProperty == "nsfw"); |
|
|
|
|
|
var bitrateModel = changes.FirstOrDefault(x => x.ChangedProperty == "bitrate"); |
|
|
|
|
|
|
|
|
var overwrites = overwritesModel.OldValue.ToObject<API.Overwrite[]>(discord.ApiClient.Serializer) |
|
|
var overwrites = overwritesModel.OldValue.ToObject<API.Overwrite[]>(discord.ApiClient.Serializer) |
|
|
.Select(x => new Overwrite(x.TargetId, x.TargetType, new OverwritePermissions(x.Allow, x.Deny))) |
|
|
.Select(x => new Overwrite(x.TargetId, x.TargetType, new OverwritePermissions(x.Allow, x.Deny))) |
|
|
.ToList(); |
|
|
.ToList(); |
|
|
var type = typeModel.OldValue.ToObject<ChannelType>(discord.ApiClient.Serializer); |
|
|
var type = typeModel.OldValue.ToObject<ChannelType>(discord.ApiClient.Serializer); |
|
|
var name = nameModel.OldValue.ToObject<string>(discord.ApiClient.Serializer); |
|
|
var name = nameModel.OldValue.ToObject<string>(discord.ApiClient.Serializer); |
|
|
|
|
|
int? rateLimitPerUser = rateLimitPerUserModel?.OldValue?.ToObject<int>(discord.ApiClient.Serializer); |
|
|
|
|
|
bool? nsfw = nsfwModel?.OldValue?.ToObject<bool>(discord.ApiClient.Serializer); |
|
|
|
|
|
int? bitrate = bitrateModel?.OldValue?.ToObject<int>(discord.ApiClient.Serializer); |
|
|
var id = entry.TargetId.Value; |
|
|
var id = entry.TargetId.Value; |
|
|
|
|
|
|
|
|
return new ChannelDeleteAuditLogData(id, name, type, overwrites.ToReadOnlyCollection()); |
|
|
|
|
|
|
|
|
return new ChannelDeleteAuditLogData(id, name, type, rateLimitPerUser, nsfw, bitrate, overwrites.ToReadOnlyCollection()); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/// <summary> |
|
|
/// <summary> |
|
|
@@ -59,6 +68,29 @@ namespace Discord.Rest |
|
|
/// </returns> |
|
|
/// </returns> |
|
|
public ChannelType ChannelType { get; } |
|
|
public ChannelType ChannelType { get; } |
|
|
/// <summary> |
|
|
/// <summary> |
|
|
|
|
|
/// Gets the slow-mode delay of the deleted channel. |
|
|
|
|
|
/// </summary> |
|
|
|
|
|
/// <returns> |
|
|
|
|
|
/// An <see cref="Int32"/> representing the time in seconds required before the user can send another |
|
|
|
|
|
/// message; <c>0</c> if disabled. |
|
|
|
|
|
/// </returns> |
|
|
|
|
|
public int? SlowModeInterval { get; } |
|
|
|
|
|
/// <summary> |
|
|
|
|
|
/// Gets the value that indicates whether the deleted channel was NSFW. |
|
|
|
|
|
/// </summary> |
|
|
|
|
|
/// <returns> |
|
|
|
|
|
/// <c>true</c> if this channel had the NSFW flag enabled; otherwise <c>false</c>. |
|
|
|
|
|
/// </returns> |
|
|
|
|
|
public bool? IsNsfw { get; } |
|
|
|
|
|
/// <summary> |
|
|
|
|
|
/// Gets the bit-rate of this channel if applicable. |
|
|
|
|
|
/// </summary> |
|
|
|
|
|
/// <returns> |
|
|
|
|
|
/// An <see cref="Int32"/> representing the bit-rate set of the voice channel; <c>null</c> if not |
|
|
|
|
|
/// applicable. |
|
|
|
|
|
/// </returns> |
|
|
|
|
|
public int? Bitrate { get; } |
|
|
|
|
|
/// <summary> |
|
|
/// Gets a collection of permission overwrites that was assigned to the deleted channel. |
|
|
/// Gets a collection of permission overwrites that was assigned to the deleted channel. |
|
|
/// </summary> |
|
|
/// </summary> |
|
|
/// <returns> |
|
|
/// <returns> |
|
|
|