Converted shard and logclean service
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using Myriad.Gateway;
|
||||
using System;
|
||||
|
||||
using Myriad.Gateway;
|
||||
using Myriad.Types;
|
||||
|
||||
namespace Myriad.Extensions
|
||||
|
20
Myriad/Extensions/SnowflakeExtensions.cs
Normal file
20
Myriad/Extensions/SnowflakeExtensions.cs
Normal file
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
|
||||
using Myriad.Types;
|
||||
|
||||
namespace Myriad.Extensions
|
||||
{
|
||||
public static class SnowflakeExtensions
|
||||
{
|
||||
public static readonly DateTimeOffset DiscordEpoch = new(2015, 1, 1, 0, 0, 0, TimeSpan.Zero);
|
||||
|
||||
public static DateTimeOffset SnowflakeToTimestamp(ulong snowflake) =>
|
||||
DiscordEpoch + TimeSpan.FromMilliseconds(snowflake >> 22);
|
||||
|
||||
public static DateTimeOffset Timestamp(this Message msg) => SnowflakeToTimestamp(msg.Id);
|
||||
public static DateTimeOffset Timestamp(this Channel channel) => SnowflakeToTimestamp(channel.Id);
|
||||
public static DateTimeOffset Timestamp(this Guild guild) => SnowflakeToTimestamp(guild.Id);
|
||||
public static DateTimeOffset Timestamp(this Webhook webhook) => SnowflakeToTimestamp(webhook.Id);
|
||||
public static DateTimeOffset Timestamp(this User user) => SnowflakeToTimestamp(user.Id);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user