]> git.r.bdr.sh - rbdr/forum/blobdiff - src/routes/p/[id].svelte
Lint, rm unused code
[rbdr/forum] / src / routes / p / [id].svelte
index b8a81655d4897b1fc60eca83af9caae42373db85..47755bee6b202f4aeb288a137f73527cc8ccf6cc 100644 (file)
@@ -1,11 +1,29 @@
-<script>
-  export const load = function load(ctx) {
+<script lang="ts" context="module">
+       export const load = ({ params: { id } }) => ({ props: { id } });
+</script>
+
+<script lang="ts">
+       import { _ } from 'svelte-i18n';
+       import { post } from '$lib/stores/posts';
+       import Post from '$lib/components/post/post.svelte';
+       import ErrorBlock from '$lib/components/error_block/error_block.svelte';
+       import Loader from '$lib/components/loader/loader.svelte';
 
-    const id = ctx.page.params.id;
-    return { props: { id } };
-  };
+       export let id: string;
 
-  import Post from '$components/post/post.svelte';
+       $: postResponse = post(id, true);
 </script>
 
-<Post/>
+<svelte:head>
+       <title>{$_('post.post')}}</title>
+</svelte:head>
+
+{#if $postResponse.loading}
+       <Loader />
+{/if}
+{#if $postResponse.error}
+       <ErrorBlock message={$_('post.error.unavailable')} />
+{/if}
+{#if $postResponse.data}
+       <Post post={$postResponse.data} />
+{/if}