chad/client/app/pages/preferences.vue
Никита Круглицкий 6ada2c3fbd
All checks were successful
Deploy / deploy (push) Successful in 43s
update
2025-10-09 06:23:13 +06:00

40 lines
1.0 KiB
Vue

<template>
<div>
<AppHeader title="Preferences" secondary />
<form class="flex flex-col gap-3 p-3" @submit.prevent="save">
<PrimeFloatLabel variant="on">
<PrimeInputText id="username" v-model="localUsername" size="large" class="w-full" />
<label for="username">Username</label>
</PrimeFloatLabel>
<PrimeButton label="Save" type="submit" :disabled="!localUsername || localUsername === username" />
</form>
</div>
</template>
<script setup lang="ts">
definePageMeta({
name: 'Preferences',
})
const signaling = useSignaling()
const { username } = usePreferences()
const toast = useToast()
const localUsername = ref(username.value)
async function save() {
if (!localUsername.value || localUsername.value === username.value)
return
username.value = localUsername.value
await signaling.socket.value?.emitWithAck('updateClient', {
username: username.value,
})
toast.add({ severity: 'success', summary: 'Saved', life: 1000, closable: false })
}
</script>