Skip to content

Commit

Permalink
fix: settings page title updating on language switch
Browse files Browse the repository at this point in the history
  • Loading branch information
deansallinen committed Jan 27, 2025
1 parent 8f512ed commit b28ef12
Show file tree
Hide file tree
Showing 4 changed files with 66 additions and 76 deletions.
1 change: 1 addition & 0 deletions src/lib/components/select/language.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@
data-[highlighted]:text-solar-950
data-[disabled]:opacity-50"
use:melt={$option({ value: lang, label: lang })}
data-sveltekit-replacestate
>
{lang}
</a>
Expand Down
13 changes: 0 additions & 13 deletions src/routes/[network]/settings/+layout.svelte

This file was deleted.

119 changes: 65 additions & 54 deletions src/routes/[network]/settings/+page.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import { getContext } from 'svelte';
import Code from '$lib/components/code.svelte';
import * as m from '$lib/paraglide/messages';
import Pageheader from '$lib/components/pageheader.svelte';
const context = getContext<UnicoveContext>('state');
Expand All @@ -16,6 +17,8 @@
let advancedMode = $state(!!context.settings.data.advancedMode);
let debugMode = $state(!!context.settings.data.debugMode);
let { data } = $props();
$effect(() => {
context.settings.data = {
advancedMode,
Expand All @@ -28,70 +31,78 @@
});
</script>

<div class="grid max-w-screen-sm auto-rows-fr gap-6">
<div class="flex items-center justify-between">
<h2 class="text-muted text-xl font-semibold">{m.settings_general()}</h2>
</div>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="language-select">{m.settings_language_selector()}</Label>
<!-- <p class="caption text-sm">Choose a language</p> -->
</Stack>
<LanguageSelect />
</div>
<Stack tag="article" class="gap-6">
<Pageheader
network={data.network}
title={m.common_settings()}
subtitle={m.settings_page_subtitle()}
/>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="search-show-pages">{m.settings_search_show_pages()}</Label>
<p class="caption text-sm">{m.settings_search_show_pages_desc()}</p>
</Stack>
<Switch id="search-show-pages" bind:checked={searchShowPages} />
</div>
<div class="grid max-w-screen-sm auto-rows-fr gap-6">
<div class="flex items-center justify-between">
<h2 class="text-muted text-xl font-semibold">{m.settings_general()}</h2>
</div>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="search-account-switch">{m.settings_search_account_switch()}</Label>
<p class="caption text-sm">{m.settings_search_account_switch_desc()}</p>
</Stack>
<Switch id="search-account-switch" bind:checked={searchAccountSwitch} />
</div>
<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="language-select">{m.settings_language_selector()}</Label>
<!-- <p class="caption text-sm">Choose a language</p> -->
</Stack>
<LanguageSelect />
</div>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="prevent-account-page-switching"
>{m.settings_prevent_account_page_switching()}</Label
>
<p class="caption text-sm">{m.settings_prevent_account_page_switching_desc()}</p>
</Stack>
<Switch id="prevent-account-page-switching" bind:checked={preventAccountPageSwitching} />
</div>
<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="search-show-pages">{m.settings_search_show_pages()}</Label>
<p class="caption text-sm">{m.settings_search_show_pages_desc()}</p>
</Stack>
<Switch id="search-show-pages" bind:checked={searchShowPages} />
</div>

<div class="flex items-center justify-between">
<h2 class="text-muted text-xl font-semibold">{m.settings_advanced()}</h2>
</div>
<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="search-account-switch">{m.settings_search_account_switch()}</Label>
<p class="caption text-sm">{m.settings_search_account_switch_desc()}</p>
</Stack>
<Switch id="search-account-switch" bind:checked={searchAccountSwitch} />
</div>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="advanced-mode">{m.settings_enable_advanced()}</Label>
<p class="caption text-sm">{m.settings_enable_advanced_desc()}</p>
</Stack>
<Switch id="advanced-mode" bind:checked={advancedMode} />
</div>
<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="prevent-account-page-switching"
>{m.settings_prevent_account_page_switching()}</Label
>
<p class="caption text-sm">{m.settings_prevent_account_page_switching_desc()}</p>
</Stack>
<Switch id="prevent-account-page-switching" bind:checked={preventAccountPageSwitching} />
</div>

{#if advancedMode}
<div class="flex items-center justify-between">
<h2 class="text-muted text-xl font-semibold">{m.settings_developer()}</h2>
<h2 class="text-muted text-xl font-semibold">{m.settings_advanced()}</h2>
</div>

<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="debug-mode">{m.settings_enable_developer()}</Label>
<p class="caption text-sm">{m.settings_enable_developer_desc()}</p>
<Label for="advanced-mode">{m.settings_enable_advanced()}</Label>
<p class="caption text-sm">{m.settings_enable_advanced_desc()}</p>
</Stack>
<Switch id="debug-mode" bind:checked={debugMode} />
<Switch id="advanced-mode" bind:checked={advancedMode} />
</div>

{#if advancedMode}
<div class="flex items-center justify-between">
<h2 class="text-muted text-xl font-semibold">{m.settings_developer()}</h2>
</div>
<div class="flex items-center justify-between">
<Stack class="gap-1">
<Label for="debug-mode">{m.settings_enable_developer()}</Label>
<p class="caption text-sm">{m.settings_enable_developer_desc()}</p>
</Stack>
<Switch id="debug-mode" bind:checked={debugMode} />
</div>
{/if}
</div>
{#if debugMode}
<Code>{JSON.stringify(context.settings.data, null, 2)}</Code>
{/if}
</div>
{#if debugMode}
<Code>{JSON.stringify(context.settings.data, null, 2)}</Code>
{/if}
</Stack>
9 changes: 0 additions & 9 deletions src/routes/[network]/settings/+page.ts

This file was deleted.

0 comments on commit b28ef12

Please sign in to comment.