diff options
| author | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2021-04-15 23:06:26 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <ruben@unlimited.pizza> | 2021-04-15 23:06:26 +0200 |
| commit | 58f7d52150456713d3132408668a92d0f6f3d084 (patch) | |
| tree | 4b346042a684e416e53c4f4ac779060b832ad227 /src/routes | |
| parent | 63c3da2af27fcfb1a9893ade03543e3a30949c8d (diff) | |
Port to sveltekit
Diffstat (limited to 'src/routes')
| -rw-r--r-- | src/routes/$error.svelte | 5 | ||||
| -rw-r--r-- | src/routes/$layout.svelte | 19 | ||||
| -rw-r--r-- | src/routes/a/[id].svelte | 13 | ||||
| -rw-r--r-- | src/routes/f/[id].svelte | 34 | ||||
| -rw-r--r-- | src/routes/g/[id].svelte | 33 | ||||
| -rw-r--r-- | src/routes/index.svelte | 12 | ||||
| -rw-r--r-- | src/routes/p/[id].svelte | 34 | ||||
| -rw-r--r-- | src/routes/t/[id].svelte | 48 |
8 files changed, 198 insertions, 0 deletions
diff --git a/src/routes/$error.svelte b/src/routes/$error.svelte new file mode 100644 index 0000000..0dd2cf6 --- /dev/null +++ b/src/routes/$error.svelte @@ -0,0 +1,5 @@ +<script> + import InvalidRoute from '$/components/invalid_route/invalid_route.svelte'; +</script> + +<InvalidRoute /> diff --git a/src/routes/$layout.svelte b/src/routes/$layout.svelte new file mode 100644 index 0000000..49ceb49 --- /dev/null +++ b/src/routes/$layout.svelte @@ -0,0 +1,19 @@ +<script> + import '$/config/i18n'; + import { isLoading } from 'svelte-i18n'; + import ForumList from '$/components/forum_list/forum_list.svelte'; + import Header from '$/components/header/header.svelte'; + import Loader from '$/components/loader/loader.svelte'; + import Footer from '$/components/footer/footer.svelte'; +</script> + +{#if $isLoading} + <Loader /> +{:else} + <Header /> + <main> + <slot /> + </main> + <ForumList /> + <Footer /> +{/if} diff --git a/src/routes/a/[id].svelte b/src/routes/a/[id].svelte new file mode 100644 index 0000000..5f8c951 --- /dev/null +++ b/src/routes/a/[id].svelte @@ -0,0 +1,13 @@ +<script context="module"> + export const load = ({ + page: { + params: { id } + } + }) => ({ props: { id } }); +</script> + +<script> + import Author from '$/components/author/author.svelte'; +</script> + +<Author /> diff --git a/src/routes/f/[id].svelte b/src/routes/f/[id].svelte new file mode 100644 index 0000000..83afc8a --- /dev/null +++ b/src/routes/f/[id].svelte @@ -0,0 +1,34 @@ +<script context="module"> + export const load = ({ + page: { + params: { id } + } + }) => ({ props: { id } }); +</script> + +<script> + import { _ } from 'svelte-i18n'; + import Forum from '$/components/forum/forum.svelte'; + import ErrorBlock from '$/components/error_block/error_block.svelte'; + import Loader from '$/components/loader/loader.svelte'; + + export let id; + + import { getForum } from '$/stores/forum'; + $: store = getForum(id); + $: forum = $store.data; +</script> + +<svelte:head> + <title>{$_(`forum.name.${id}`)}, {$_('forum.forum')}</title> +</svelte:head> + +{#if $store.loading} + <Loader /> +{/if} +{#if $store.error} + <ErrorBlock message={$_('forum.error.unavailable')} /> +{/if} +{#if forum} + <Forum {forum} /> +{/if} diff --git a/src/routes/g/[id].svelte b/src/routes/g/[id].svelte new file mode 100644 index 0000000..023fbd8 --- /dev/null +++ b/src/routes/g/[id].svelte @@ -0,0 +1,33 @@ +<script context="module"> + export const load = ({ + page: { + params: { id } + } + }) => ({ props: { id } }); +</script> + +<script> + import { _ } from 'svelte-i18n'; + import { getTag } from '$/stores/tag'; + import ErrorBlock from '$/components/error_block/error_block.svelte'; + import Loader from '$/components/loader/loader.svelte'; + import Tag from '$/components/tag/tag.svelte'; + export let id; + + $: store = getTag(id); + $: tag = $store.data; +</script> + +<svelte:head> + <title>{id}, {$_('tag.title')}</title> +</svelte:head> + +{#if $store.loading} + <Loader /> +{/if} +{#if $store.error} + <ErrorBlock message={$_('tag.error.unavailable')} /> +{/if} +{#if tag} + <Tag {tag} /> +{/if} diff --git a/src/routes/index.svelte b/src/routes/index.svelte new file mode 100644 index 0000000..687d8f3 --- /dev/null +++ b/src/routes/index.svelte @@ -0,0 +1,12 @@ +<script> + import { _ } from 'svelte-i18n'; + import Loader from '$/components/loader/loader.svelte'; +</script> + +<svelte:head> + <title>Forum.</title> +</svelte:head> + +<Loader /> +<h1>{$_('home.title')}</h1> +<p>{$_('home.content')}</p> diff --git a/src/routes/p/[id].svelte b/src/routes/p/[id].svelte new file mode 100644 index 0000000..915cfeb --- /dev/null +++ b/src/routes/p/[id].svelte @@ -0,0 +1,34 @@ +<script context="module"> + export const load = ({ + page: { + params: { id } + } + }) => ({ props: { id } }); +</script> + +<script> + import { _ } from 'svelte-i18n'; + import { getPost } from '$/stores/post'; + import Post from '$/components/post/post.svelte'; + import ErrorBlock from '$/components/error_block/error_block.svelte'; + import Loader from '$/components/loader/loader.svelte'; + + export let id; + + $: store = getPost(id); + $: post = $store.data; +</script> + +<svelte:head> + <title>{$_('post.post')}}</title> +</svelte:head> + +{#if $store.loading} + <Loader /> +{/if} +{#if $store.error} + <ErrorBlock message={$_('post.error.unavailable')} /> +{/if} +{#if post} + <Post {post} /> +{/if} diff --git a/src/routes/t/[id].svelte b/src/routes/t/[id].svelte new file mode 100644 index 0000000..9d3ab9e --- /dev/null +++ b/src/routes/t/[id].svelte @@ -0,0 +1,48 @@ +<script context="module"> + export const load = ({ + page: { + params: { id } + } + }) => ({ props: { id } }); +</script> + +<script> + import { onDestroy } from 'svelte'; + import { _ } from 'svelte-i18n'; + import { getTopic } from '$/stores/topic'; + import { disableTopicActions, enableTopicActions } from '$/stores/actions'; + + import Topic from '$/components/topic/topic.svelte'; + import ErrorBlock from '$/components/error_block/error_block.svelte'; + import Loader from '$/components/loader/loader.svelte'; + + export let id; + + $: store = getTopic(id); + $: topic = $store.data; + + enableTopicActions(id); + onDestroy(() => disableTopicActions()); +</script> + +<svelte:head> + {#if $store.loading} + <title>{$_('loader.message')}, {$_('topic.title')}</title> + {/if} + {#if $store.error} + <title>{$_('error.generic.title')}, {$_('topic.title')}</title> + {/if} + {#if topic} + <title>{topic.title}, {$_('topic.title')}</title> + {/if} +</svelte:head> + +{#if $store.loading} + <Loader /> +{/if} +{#if $store.error} + <ErrorBlock message={$_('topic.error.unavailable')} /> +{/if} +{#if topic} + <Topic {topic} /> +{/if} |