aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdrien Hopkins <[email protected]>2022-08-16 14:58:11 -0500
committerAdrien Hopkins <[email protected]>2022-08-16 14:58:11 -0500
commit6af45235e86686b2ea1ca54fe061e0f230a644fc (patch)
tree0e7c7a3e5f4b93afd7aa4cce3523edcaa7128eae /src
parenteb19aedebd591cce1d7d52b350cd66c94ae5a05d (diff)
downloadcoinos-ui-6af45235e86686b2ea1ca54fe061e0f230a644fc.tar.gz
coinos-ui-6af45235e86686b2ea1ca54fe061e0f230a644fc.zip
persist locale using localStorage
Diffstat (limited to 'src')
-rw-r--r--src/routes/__layout.svelte10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/routes/__layout.svelte b/src/routes/__layout.svelte
index 0efe74bc..8ac6f20f 100644
--- a/src/routes/__layout.svelte
+++ b/src/routes/__layout.svelte
@@ -1,7 +1,7 @@
<script>
import { SvelteToast } from '@zerodevx/svelte-toast';
import '$lib/i18n';
- import { isLoading } from 'svelte-i18n';
+ import { isLoading, locale } from 'svelte-i18n';
import '../app.css';
import { onMount } from 'svelte';
import { connect } from '$lib/socket';
@@ -17,6 +17,14 @@
let ready = false;
onMount(() => {
+ // get locale from local storage
+ let localStorageLocale = localStorage.getItem('svelte-i18n-locale');
+ if (localStorageLocale) locale.set(localStorageLocale);
+
+ locale.subscribe((lng) => {
+ if (lng) localStorage.setItem('svelte-i18n-locale', lng);
+ });
+
if (protectedRoutes.find((p) => $page.url.pathname.match(p))) {
if (!$token) {
goto('/login');