solara-testing-beta
Version:
A modern, customizable, and lightweight Discord framework.
27 lines • 1.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const resolveUser_1 = require("../../utils/resolveUser");
exports.default = {
name: 'memberJoinPosition',
execute: async (ctx) => {
const targetMember = await (0, resolveUser_1.getTargetMember)(ctx, 0);
const guild = ctx.message?.guild ?? ctx.interaction?.guild;
if (!targetMember || !guild) {
throw new Error('Target member or guild not found.');
}
if (!targetMember.joinedTimestamp) {
return '0';
}
try {
const members = await guild.members.fetch();
const sortedMembers = members.filter(m => m.joinedTimestamp).sort((a, b) => a.joinedTimestamp - b.joinedTimestamp);
const position = sortedMembers.map(member => member.id).indexOf(targetMember.id) + 1;
return position.toString();
}
catch (e) {
console.error("Failed to fetch members for join position:", e);
throw new Error('Could not calculate join position (requires fetching all members).');
}
},
};
//# sourceMappingURL=memberJoinedPosition.js.map