Fixed Invite Accordion

This commit is contained in:
2025-10-10 05:12:54 -04:00
parent 900ce85e2c
commit 8236c1e0e7
7 changed files with 219 additions and 7 deletions

View File

@@ -269,6 +269,22 @@ const ServerSettings = () => {
setAdminLogs([]);
};
const onInviteCreated = (e) => {
const data = e.detail || {};
if (!data) return;
if (data.guildId && data.guildId !== guildId) return;
// Add the new invite to the list
setInvites(prev => [...prev, data]);
};
const onInviteDeleted = (e) => {
const data = e.detail || {};
if (!data) return;
if (data.guildId && data.guildId !== guildId) return;
// Remove the deleted invite from the list
setInvites(prev => prev.filter(invite => invite.code !== data.code));
};
eventTarget.addEventListener('twitchUsersUpdate', onTwitchUsers);
eventTarget.addEventListener('kickUsersUpdate', onKickUsers);
eventTarget.addEventListener('liveNotificationsUpdate', onLiveNotifications);
@@ -276,6 +292,8 @@ const ServerSettings = () => {
eventTarget.addEventListener('adminLogAdded', onAdminLogAdded);
eventTarget.addEventListener('adminLogDeleted', onAdminLogDeleted);
eventTarget.addEventListener('adminLogsCleared', onAdminLogsCleared);
eventTarget.addEventListener('inviteCreated', onInviteCreated);
eventTarget.addEventListener('inviteDeleted', onInviteDeleted);
return () => {
try {
@@ -286,6 +304,8 @@ const ServerSettings = () => {
eventTarget.removeEventListener('adminLogAdded', onAdminLogAdded);
eventTarget.removeEventListener('adminLogDeleted', onAdminLogDeleted);
eventTarget.removeEventListener('adminLogsCleared', onAdminLogsCleared);
eventTarget.removeEventListener('inviteCreated', onInviteCreated);
eventTarget.removeEventListener('inviteDeleted', onInviteDeleted);
} catch (err) {}
};
}, [eventTarget, guildId]);
@@ -669,7 +689,9 @@ const ServerSettings = () => {
<FormControl fullWidth>
<Select value={inviteForm.channelId} onChange={(e) => setInviteForm(f => ({ ...f, channelId: e.target.value }))} displayEmpty>
<MenuItem value="">(Any channel)</MenuItem>
{channels.map(ch => (<MenuItem key={ch.id} value={ch.id}>{ch.name}</MenuItem>))}
{channels.map((channel) => (
<MenuItem key={channel.id} value={channel.id}>{channel.name}</MenuItem>
))}
</Select>
</FormControl>
</Box>
@@ -778,7 +800,7 @@ const ServerSettings = () => {
displayEmpty
>
<MenuItem value="" disabled>Select a channel</MenuItem>
{channels.map(channel => (
{channels.map((channel) => (
<MenuItem key={channel.id} value={channel.id}>{channel.name}</MenuItem>
))}
</Select>
@@ -819,7 +841,7 @@ const ServerSettings = () => {
displayEmpty
>
<MenuItem value="" disabled>Select a channel</MenuItem>
{channels.map(channel => (
{channels.map((channel) => (
<MenuItem key={channel.id} value={channel.id}>{channel.name}</MenuItem>
))}
</Select>