Skip to content

Commit e67a4d9

Browse files
committed
add toasts
1 parent 3430cd8 commit e67a4d9

3 files changed

Lines changed: 27 additions & 6 deletions

File tree

components/forms/RoleEditForm.tsx

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { useUserHighestRolePosition, useUserServerPerms } from '@/lib/store';
2-
import { createRole, decrementRolePosition, deleteRole, incrementRolePosition, updateRole } from '@/services/roles.service';
3-
import { Role, Server } from '@/types/dbtypes';
2+
import { decrementRolePosition, deleteRole, incrementRolePosition, updateRole } from '@/services/roles.service';
3+
import { Role } from '@/types/dbtypes';
44
import { ServerPermissions } from '@/types/permissions';
55
import { useSupabaseClient } from '@supabase/auth-helpers-react';
66
import { useForm } from 'react-hook-form';
7+
import { toast } from 'react-toastify';
78

89
const permissionEnumToInfoMap = new Map([
910
[ServerPermissions.OWNER, ['Owner', '']],
@@ -58,7 +59,11 @@ export function RoleEditForm({role, roles_length, max_role_position }: {role: Ro
5859

5960
if (error) {
6061
console.error(error);
62+
toast.error('Failed to update role');
63+
return;
6164
}
65+
66+
toast.success('Role saved');
6267
};
6368

6469
return (
@@ -143,7 +148,15 @@ export function RoleEditForm({role, roles_length, max_role_position }: {role: Ro
143148
disabled={isFormDisabled}
144149
onClick={async () => {
145150
console.log('delete role');
146-
deleteRole(supabase, role.id);
151+
const { error } = await deleteRole(supabase, role.id);
152+
153+
if (error) {
154+
console.error(error);
155+
toast.error('Failed to delete role');
156+
return;
157+
}
158+
159+
toast.success('Role deleted');
147160
}}
148161
>
149162
Delete

components/home/modals/ServerSettingsModal.tsx

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import { RoleEditForm } from '@/components/forms/RoleEditForm';
1919
import { useServerRoles, useUserServerPerms } from '@/lib/store';
2020
import PlusIcon from '@/components/icons/PlusIcon';
2121
import { createRole, getHighestRolePositionForUser } from '@/services/roles.service';
22+
import { toast } from 'react-toastify';
2223

2324

2425
const tabRootClass = 'flex flex-row';
@@ -101,22 +102,30 @@ export default function ServerSettingsModal({
101102
<button
102103
className=""
103104
onClick={async () => {
104-
await createRole(
105+
const { error } = await createRole(
105106
supabase,
106107
server?.server_id!,
107108
'New Role',
108109
roles.length - 1,
109110
0,
110111
'a9aaab'
111112
);
113+
114+
if (error) {
115+
console.error(error);
116+
toast.error('Failed to create role');
117+
return;
118+
}
119+
120+
toast.success('Created role');
112121
}}
113122
>
114123
<PlusIcon width={5} height={5} />
115124
</button>
116125
</span>
117126

118127
<Tabs.Root className={tabRootClass} orientation='vertical'>
119-
<Tabs.List className={tabListClass}>
128+
<Tabs.List className={tabListClass} defaultValue={roles[0].id.toString()}>
120129
{roles.sort((first, second) => first.position - second.position).map((role) => (
121130
<Tabs.Trigger
122131
key={role.id}

hooks/useRealtimeStore.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,6 @@ export function useRealtimeStore(supabase: SupabaseClient<Database>) {
200200
},
201201
async (payload) => {
202202
console.log('Server role delete event');
203-
console.table(payload.old);
204203
deleteRole(payload.old.id as number);
205204
}
206205
)

0 commit comments

Comments
 (0)