Add public characters and visibility flag

This commit is contained in:
Clément Pons
2025-04-29 17:48:49 +02:00
parent 1ee895ab42
commit 871861e66e
15 changed files with 623 additions and 60 deletions

View File

@@ -68,6 +68,12 @@ const data = ref<Character>({
spells: [],
notes: "",
},
values: {
hp: 0,
armor: 0,
mana: 0,
},
visibility: "private"
});
const spellFilter = ref<{
ranks: Array<1 | 2 | 3>,
@@ -111,6 +117,8 @@ if(id !== 'new')
data.value = { name: character.name, progress: Object.assign(data.value.progress, character.progress) } as Character;
}
console.log(data.value.progress);
function selectRaceOption(level: Level, choice: number)
{
const character = data.value;
@@ -265,6 +273,13 @@ useShortcuts({
<NumberFieldInput class="tabular-nums w-20 bg-transparent px-3 py-1 outline-none caret-light-50 dark:caret-dark-50" />
</NumberFieldRoot>
</Label>
<Label class="flex items-start justify-between flex-col gap-2">
<span class="pb-1 mx-6 md:p-0">Visibilité</span>
<Select class="!my-0" v-model="data.visibility">
<SelectItem label="Privé" value="private" />
<SelectItem label="Public" value="public" />
</Select>
</Label>
</div>
<div class="self-center">
<Tooltip side="right" message="Ctrl+S"><Button @click="() => save(true)">Enregistrer</Button></Tooltip>
@@ -277,7 +292,7 @@ useShortcuts({
</template>
<template #default>
<div class="m-2 overflow-auto">
<Combobox label="Peuple de votre personnage" :v-model="data.progress.race.index!" :default-value="data.progress.race.index" :options="config.peoples.map((people, index) => [people.name, index])" @update:model-value="(index) => { data.progress.race.index = index as number | undefined; data.progress.race.progress = [[1, 0]]}" />
<Combobox label="Peuple de votre personnage" v-model="data.progress.race.index" :options="config.peoples.map((people, index) => [people.name, index])" @update:model-value="(index) => { data.progress.race.index = index as number | undefined; data.progress.race.progress = [[1, 0]]}" />
<template v-if="data.progress.race.index !== undefined">
<div class="w-full border-b border-light-30 dark:border-dark-30 pb-4">
<span class="text-sm text-light-70 dark:text-dark-70">{{ characterConfig.peoples[data.progress.race.index].description }}</span>