feat(Emoji): move createdAt and createdTimestamp getters from GuildEmoji (#2872)

This commit is contained in:
SpaceEEC
2018-10-10 10:01:23 +02:00
committed by GitHub
parent 1ee417cd65
commit 71c04a303a
3 changed files with 24 additions and 21 deletions

View File

@@ -1,5 +1,7 @@
const Snowflake = require('../util/Snowflake');
const Base = require('./Base');
/**
* Represents an emoji, see {@link GuildEmoji} and {@link ReactionEmoji}.
* @extends {Base}
@@ -52,6 +54,26 @@ class Emoji extends Base {
return this.client.rest.cdn.Emoji(this.id, this.animated ? 'gif' : 'png');
}
/**
* The timestamp the emoji was created at, or null if unicode
* @type {?number}
* @readonly
*/
get createdTimestamp() {
if (!this.id) return null;
return Snowflake.deconstruct(this.id).timestamp;
}
/**
* The time the emoji was created at, or null if unicode
* @type {?Date}
* @readonly
*/
get createdAt() {
if (!this.id) return null;
return new Date(this.createdTimestamp);
}
/**
* When concatenated with a string, this automatically returns the text required to form a graphical emoji on Discord
* instead of the Emoji object.

View File

@@ -1,7 +1,6 @@
const GuildEmojiRoleStore = require('../stores/GuildEmojiRoleStore');
const Permissions = require('../util/Permissions');
const { Error } = require('../errors');
const Snowflake = require('../util/Snowflake');
const Emoji = require('./Emoji');
/**
@@ -65,24 +64,6 @@ class GuildEmoji extends Emoji {
return new GuildEmojiRoleStore(this);
}
/**
* The timestamp the emoji was created at
* @type {number}
* @readonly
*/
get createdTimestamp() {
return Snowflake.deconstruct(this.id).timestamp;
}
/**
* The time the emoji was created at
* @type {Date}
* @readonly
*/
get createdAt() {
return new Date(this.createdTimestamp);
}
/**
* Fetches the author for this emoji
* @returns {Promise<User>}

4
typings/index.d.ts vendored
View File

@@ -370,6 +370,8 @@ declare module 'discord.js' {
export class Emoji extends Base {
constructor(client: Client, emoji: object);
public animated: boolean;
public readonly createdAt: Date;
public readonly createdTimestamp: number;
public readonly deletable: boolean;
public id: Snowflake;
public name: string;
@@ -544,8 +546,6 @@ declare module 'discord.js' {
constructor(client: Client, data: object, guild: Guild);
private _roles: string[];
public readonly createdAt: Date;
public readonly createdTimestamp: number;
public deleted: boolean;
public guild: Guild;
public managed: boolean;