aboutsummaryrefslogtreecommitdiff
path: root/src/utils/update-permissions-for-guild.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/update-permissions-for-guild.ts')
-rw-r--r--src/utils/update-permissions-for-guild.ts53
1 files changed, 0 insertions, 53 deletions
diff --git a/src/utils/update-permissions-for-guild.ts b/src/utils/update-permissions-for-guild.ts
deleted file mode 100644
index 64110a7..0000000
--- a/src/utils/update-permissions-for-guild.ts
+++ /dev/null
@@ -1,53 +0,0 @@
-import {ApplicationCommandPermissionData, Guild} from 'discord.js';
-import {prisma} from './db.js';
-
-const COMMANDS_TO_LIMIT_TO_GUILD_OWNER = ['config'];
-
-const updatePermissionsForGuild = async (guild: Guild) => {
- const settings = await prisma.setting.findUnique({
- where: {
- guildId: guild.id,
- },
- });
-
- if (!settings) {
- throw new Error('could not find settings for guild');
- }
-
- const permissions: ApplicationCommandPermissionData[] = [
- {
- id: guild.ownerId,
- type: 'USER',
- permission: true,
- },
- {
- id: guild.roles.everyone.id,
- type: 'ROLE',
- permission: false,
- },
- ];
-
- if (settings.invitedByUserId) {
- permissions.push({
- id: settings.invitedByUserId,
- type: 'USER',
- permission: true,
- });
- }
-
- const commands = await guild.commands.fetch();
-
- await guild.commands.permissions.set({fullPermissions: commands.map(command => ({
- id: command.id,
- permissions: COMMANDS_TO_LIMIT_TO_GUILD_OWNER.includes(command.name) ? permissions : [
- ...permissions,
- ...(settings.roleId ? [{
- id: settings.roleId,
- type: 'ROLE' as const,
- permission: true,
- }] : []),
- ],
- }))});
-};
-
-export default updatePermissionsForGuild;