wip: frontend

This commit is contained in:
Timothy Jaeryang Baek
2024-11-14 02:20:34 -08:00
parent aaba41339e
commit 0e8c0b452e
12 changed files with 869 additions and 494 deletions
+27 -3
View File
@@ -1,14 +1,38 @@
<script>
import { getContext, tick, onMount } from 'svelte';
import { toast } from 'svelte-sonner';
import { goto } from '$app/navigation';
import { user } from '$lib/stores';
import { getUsers } from '$lib/apis/users';
import UserList from './Users/UserList.svelte';
import Groups from './Users/Groups.svelte';
const i18n = getContext('i18n');
let users = [];
let selectedTab = 'overview';
let loaded = false;
$: if (selectedTab) {
getUsersHandler();
}
const getUsersHandler = async () => {
users = await getUsers(localStorage.token);
};
onMount(async () => {
if ($user?.role !== 'admin') {
await goto('/');
} else {
users = await getUsers(localStorage.token);
}
loaded = true;
onMount(() => {
const containerElement = document.getElementById('users-tabs-container');
if (containerElement) {
@@ -78,9 +102,9 @@
<div class="flex-1 mt-1 lg:mt-0 overflow-y-scroll">
{#if selectedTab === 'overview'}
<UserList />
<UserList {users} />
{:else if selectedTab === 'groups'}
<Groups />
<Groups {users} />
{/if}
</div>
</div>