aboutsummaryrefslogtreecommitdiff
path: root/src/components/language_selector/language_selector.svelte
blob: 67c08143f7021dedd8ccd915117ee649751fab28 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<script>
  import { locale, locales } from 'svelte-i18n';
  import { getLangNameFromCode } from 'language-name-map';

  $: namedLocales = $locales
    .map((locale) => ({
      code: locale,
      ...getLangNameFromCode(locale)
    }))
    .sort((a, b) => a.native - b.native);

  let selected = $locale;

  $: {
    console.log(`the current locale is ${selected}`);
    locale.set(selected);
  }
</script>

<select bind:value={selected}>
  {#each namedLocales as namedLocale}
    <option value="{ namedLocale.code }">{ namedLocale.native }</option>
  {/each}
</select>

<style>
</style>