<script lang="ts">
	import '../app.css';
	import '$lib/i18n';

	import { isLoading } from 'svelte-i18n';
	import { _ } from 'svelte-i18n';

	import { forums } from '$lib/stores/forums';

	import ErrorBlock from '$lib/components/error_block/error_block.svelte';
	import ForumList from '$lib/components/forum_list/forum_list.svelte';
	import Header from '$lib/components/header/header.svelte';
	import Loader from '$lib/components/loader/loader.svelte';
	import Footer from '$lib/components/footer/footer.svelte';
</script>

{#if $isLoading}
	<Loader />
{:else}
	<Header />
	<main class="col-start-2 col-span-11">
		<slot />
	</main>
	<nav
		class="col-start-1 row-start-2 border-r border-r-black border-solid"
		title={$_('forum_list.title')}
	>
		{#if $forums.loading}
			<Loader />
		{/if}
		{#if $forums.error}
			<ErrorBlock message={$_('forum_list.error.unavailable')} />
		{/if}
		{#if $forums.data}
			<ForumList forums={$forums.data} />
		{/if}
	</nav>
	<Footer />
{/if}
