feat: premiumUsageFlags
This commit is contained in:
@@ -109,8 +109,6 @@ module.exports = async (client, { d: data }, shard) => {
|
||||
client.users.cache.set(client.user.id, client.user);
|
||||
}
|
||||
|
||||
client.user.setAFK(false);
|
||||
|
||||
client.settings._patch(data.user_settings);
|
||||
|
||||
client.user.connectedAccounts = data.connected_accounts ?? [];
|
||||
|
@@ -8,6 +8,7 @@ const { Util } = require('..');
|
||||
const { Error: Error_ } = require('../errors');
|
||||
const { Opcodes, NitroType, HypeSquadType } = require('../util/Constants');
|
||||
const DataResolver = require('../util/DataResolver');
|
||||
const PremiumUsageFlags = require('../util/PremiumUsageFlags');
|
||||
const PurchasedFlags = require('../util/PurchasedFlags');
|
||||
/**
|
||||
* Represents the logged in client's Discord user.
|
||||
@@ -53,6 +54,13 @@ class ClientUser extends User {
|
||||
*/
|
||||
this.purchasedFlags = new PurchasedFlags(data.purchased_flags || 0);
|
||||
}
|
||||
if ('premium_usage_flags' in data) {
|
||||
/**
|
||||
* Premium usage state of the client user.
|
||||
* @type {?PremiumUsageFlags}
|
||||
*/
|
||||
this.premiumUsageFlags = new PremiumUsageFlags(data.premium_usage_flags || 0);
|
||||
}
|
||||
// Key: premium = boolean;
|
||||
if ('phone' in data) {
|
||||
/**
|
||||
|
30
src/util/PremiumUsageFlags.js
Normal file
30
src/util/PremiumUsageFlags.js
Normal file
@@ -0,0 +1,30 @@
|
||||
'use strict';
|
||||
|
||||
const BitField = require('./BitField');
|
||||
|
||||
/**
|
||||
* Data structure that makes it easy to interact with an {@link PremiumUsageFlags#flags} bitfield.
|
||||
* @extends {BitField}
|
||||
*/
|
||||
class PremiumUsageFlags extends BitField {}
|
||||
|
||||
/**
|
||||
* @name PremiumUsageFlags
|
||||
* @kind constructor
|
||||
* @memberof PremiumUsageFlags
|
||||
* @param {BitFieldResolvable} [bits=0] Bit(s) to read from
|
||||
*/
|
||||
|
||||
/**
|
||||
* Numeric the Discord premium usage flags. All available properties:
|
||||
* * `ANIMATED_AVATAR`
|
||||
* * `BANNER`
|
||||
* * `CUSTOM_DISCRIMINATOR`
|
||||
* @type {Object}
|
||||
*/
|
||||
PremiumUsageFlags.FLAGS = {
|
||||
ANIMATED_AVATAR: 1 << 1,
|
||||
BANNER: 1 << 2,
|
||||
};
|
||||
|
||||
module.exports = PremiumUsageFlags;
|
Reference in New Issue
Block a user