diff --git a/frontend/src/routes/admin/+page.svelte b/frontend/src/routes/admin/+page.svelte new file mode 100644 index 0000000..4a1dc9c --- /dev/null +++ b/frontend/src/routes/admin/+page.svelte @@ -0,0 +1,535 @@ + + + + Admin + + +
+

User Management

+ + {#if loading} +

Loading...

+ {:else if error} +

{error}

+ {:else} + +
+

Create User

+
{ e.preventDefault(); createUser(); }}> + + + + +
+ {#if createError} +

{createError}

+ {/if} +
+ + +
+

Users

+ + + + + + + + + + {#each users as user} + + + + + + + + {#if editingUserDetails === user.id} + + + + {/if} + + + {#if editingUserId === user.id} + + + + {/if} + {/each} + +
UsernameRoleActions
{user.username} + + {user.is_admin ? 'Admin' : 'User'} + + + + + +
+
+
+ + +
+
+ +
+ {#if editError} +

{editError}

+ {/if} +
+ + +
+
+
+
+

App Permissions for {user.username}

+ {#if Object.keys(allApps).length === 0} +

No servers paired. Pair a server first to manage app permissions.

+ {:else} + {#each Object.entries(allApps) as [serverName, apps]} +
+

{serverName}

+ {#each apps as app} + + {/each} +
+ {/each} + {/if} +
+ + +
+
+
+
+ {/if} +
+ +