The LocaleSelect component extends the SelectMenu component, so you can pass any property such as color, variant, size, etc.
Use the locales prop with an array of locales from pohon-ui/locale.
<script setup lang="ts">
import * as locales from 'pohon-ui/locale';
import { ref } from 'vue';
const locale = ref('en');
</script>
<template>
<PLocaleSelect
v-model="locale"
:locales="Object.values(locales)"
class="w-48"
/>
</template>
You can pass only the locales you need in your application:
<script setup lang="ts">
import { en, es, fr } from 'pohon-ui/locale';
const locale = ref('en');
</script>
<template>
<PLocaleSelect
v-model="locale"
:locales="[en, es, fr]"
/>
</template>
You can use it with Nuxt i18n:
<script setup lang="ts">
import * as locales from 'pohon-ui/locale';
const { locale, setLocale } = useI18n();
</script>
<template>
<PLocaleSelect
:model-value="locale"
:locales="Object.values(locales)"
@update:model-value="setLocale($event)"
/>
</template>
You can use it with Vue i18n:
<script setup lang="ts">
import * as locales from 'pohon-ui/locale';
import { useI18n } from 'vue-i18n';
const { locale, setLocale } = useI18n();
</script>
<template>
<PLocaleSelect
:model-value="locale"
:locales="Object.values(locales)"
@update:model-value="setLocale($event)"
/>
</template>
| Prop | Default | Type |
|---|