UNPKG

@tryforge/forgescript

Version:

ForgeScript is a comprehensive package that empowers you to effortlessly interact with Discord's API. It ensures scripting remains easy to learn and consistently effective.

80 lines 4.64 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MemberProperties = exports.MemberProperty = void 0; const discord_js_1 = require("discord.js"); const defineProperties_1 = __importDefault(require("../functions/defineProperties")); var MemberProperty; (function (MemberProperty) { MemberProperty["nickname"] = "nickname"; MemberProperty["displayName"] = "displayName"; MemberProperty["displayColor"] = "displayColor"; MemberProperty["roles"] = "roles"; MemberProperty["flags"] = "flags"; MemberProperty["mention"] = "mention"; MemberProperty["avatar"] = "avatar"; MemberProperty["banner"] = "banner"; MemberProperty["bannable"] = "bannable"; MemberProperty["kickable"] = "kickable"; MemberProperty["guildID"] = "guildID"; MemberProperty["id"] = "id"; MemberProperty["manageable"] = "manageable"; MemberProperty["timeout"] = "timeout"; MemberProperty["timedOutUntil"] = "timedOutUntil"; MemberProperty["status"] = "status"; MemberProperty["addedRoles"] = "addedRoles"; MemberProperty["roleCount"] = "roleCount"; MemberProperty["removedRoles"] = "removedRoles"; MemberProperty["platform"] = "platform"; MemberProperty["timestamp"] = "timestamp"; MemberProperty["boosting"] = "boosting"; MemberProperty["boostingSince"] = "boostingSince"; MemberProperty["permissions"] = "permissions"; })(MemberProperty || (exports.MemberProperty = MemberProperty = {})); exports.MemberProperties = (0, defineProperties_1.default)({ timestamp: (i) => i instanceof discord_js_1.GuildMember ? i?.joinedTimestamp : (i?.joined_at ? new Date(i.joined_at).getTime() : null), displayColor: (i) => i?.displayHexColor, mention: (i) => i?.user ? (0, discord_js_1.userMention)(i.user.id) : null, displayName: (i) => i instanceof discord_js_1.GuildMember ? i?.displayName : i?.nick, // Assuming m is old state addedRoles: (m, sep) => { if (!(m && "guild" in m)) return null; return m?.guild.members.cache .get(m.id) ?.roles.cache.filter((r) => !m.roles.cache.has(r.id)) .map((x) => x.id) .join(sep ?? ", "); }, // Assuming m is old state removedRoles: (m, sep) => { if (!(m && "guild" in m)) return null; const updated = m?.guild.members.cache.get(m.id); return m?.roles.cache .filter((r) => !updated?.roles.cache.has(r.id)) .map((x) => x.id) .join(sep ?? ", "); }, roleCount: (i) => (i instanceof discord_js_1.GuildMember ? i?.roles.cache.size : i?.roles.length) ?? 0, avatar: (i) => i instanceof discord_js_1.GuildMember ? i.displayAvatarURL() : (i?.user && (i?.avatar ?? i.user.avatar) ? new discord_js_1.CDN().avatar(i.user.id, i.avatar ?? i.user.avatar) : null), banner: (i) => i instanceof discord_js_1.GuildMember ? i.displayBannerURL() : (i?.user && (i?.banner ?? i.user.banner) ? new discord_js_1.CDN().banner(i.user.id, i.banner ?? i.user.banner) : null), nickname: (i) => i instanceof discord_js_1.GuildMember ? i?.nickname : i?.nick, roles: (i, sep) => (i instanceof discord_js_1.GuildMember ? i?.roles.cache.map((x) => x.id) : i?.roles)?.join(sep || ", "), flags: (i, sep) => new discord_js_1.GuildMemberFlagsBitField(i?.flags).toArray().join(sep || ", "), permissions: (i, sep) => new discord_js_1.PermissionsBitField(i?.permissions).toArray().join(sep || ", "), bannable: (i) => i?.bannable ?? false, kickable: (i) => i?.kickable ?? false, manageable: (i) => i?.manageable ?? false, id: (i) => i?.user?.id, guildID: (i) => i?.guild?.id, timedOutUntil: (i) => i instanceof discord_js_1.GuildMember ? (i?.isCommunicationDisabled() ? i.communicationDisabledUntil.getTime() : 0) : (i?.communication_disabled_until ? new Date(i.communication_disabled_until).getTime() : 0), timeout: (i) => i instanceof discord_js_1.GuildMember ? (i?.isCommunicationDisabled() ?? false) : !!i?.communication_disabled_until, status: (i) => i?.presence?.status, platform: (i, sep) => Object.keys(i?.presence?.clientStatus ?? {}).join(sep || ", "), boosting: (i) => (i instanceof discord_js_1.GuildMember ? i?.premiumSinceTimestamp : i?.premium_since) != null, boostingSince: (i) => i instanceof discord_js_1.GuildMember ? i?.premiumSinceTimestamp ?? 0 : (i?.premium_since ? new Date(i.premium_since).getTime() : 0), }); //# sourceMappingURL=member.js.map