characters: add nicknames to creation page
Backfill nicknames support to character creation page: - Add nicknamesEn and nicknamesJp fields to editData - Import and use TagInput component for nickname entry - Add nicknames section to form UI - Update CreateCharacterPayload interface with nickname fields 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
fdc50906dc
commit
0d0163edec
2 changed files with 22 additions and 2 deletions
|
|
@ -240,6 +240,8 @@ export interface CreateCharacterPayload {
|
||||||
wiki_ja?: string
|
wiki_ja?: string
|
||||||
gamewith?: string
|
gamewith?: string
|
||||||
kamigame?: string
|
kamigame?: string
|
||||||
|
nicknames_en?: string[]
|
||||||
|
nicknames_jp?: string[]
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@
|
||||||
import SidebarHeader from '$lib/components/ui/SidebarHeader.svelte'
|
import SidebarHeader from '$lib/components/ui/SidebarHeader.svelte'
|
||||||
import Button from '$lib/components/ui/Button.svelte'
|
import Button from '$lib/components/ui/Button.svelte'
|
||||||
import ValidatedInput from '$lib/components/ui/ValidatedInput.svelte'
|
import ValidatedInput from '$lib/components/ui/ValidatedInput.svelte'
|
||||||
|
import TagInput from '$lib/components/ui/TagInput.svelte'
|
||||||
import { entityAdapter } from '$lib/api/adapters/entity.adapter'
|
import { entityAdapter } from '$lib/api/adapters/entity.adapter'
|
||||||
import { getRarityOptions } from '$lib/utils/rarity'
|
import { getRarityOptions } from '$lib/utils/rarity'
|
||||||
|
|
||||||
|
|
@ -93,7 +94,11 @@
|
||||||
wikiEn: '',
|
wikiEn: '',
|
||||||
wikiJa: '',
|
wikiJa: '',
|
||||||
gamewith: '',
|
gamewith: '',
|
||||||
kamigame: ''
|
kamigame: '',
|
||||||
|
|
||||||
|
// Nicknames
|
||||||
|
nicknamesEn: [] as string[],
|
||||||
|
nicknamesJp: [] as string[]
|
||||||
})
|
})
|
||||||
|
|
||||||
const rarityOptions = getRarityOptions()
|
const rarityOptions = getRarityOptions()
|
||||||
|
|
@ -201,7 +206,11 @@
|
||||||
wiki_en: editData.wikiEn,
|
wiki_en: editData.wikiEn,
|
||||||
wiki_ja: editData.wikiJa,
|
wiki_ja: editData.wikiJa,
|
||||||
gamewith: editData.gamewith,
|
gamewith: editData.gamewith,
|
||||||
kamigame: editData.kamigame
|
kamigame: editData.kamigame,
|
||||||
|
|
||||||
|
// Nicknames
|
||||||
|
nicknames_en: editData.nicknamesEn,
|
||||||
|
nicknames_jp: editData.nicknamesJp
|
||||||
}
|
}
|
||||||
|
|
||||||
const newCharacter = await entityAdapter.createCharacter(payload)
|
const newCharacter = await entityAdapter.createCharacter(payload)
|
||||||
|
|
@ -287,6 +296,15 @@
|
||||||
<CharacterTaxonomySection character={emptyCharacter} {editMode} bind:editData />
|
<CharacterTaxonomySection character={emptyCharacter} {editMode} bind:editData />
|
||||||
<CharacterStatsSection character={emptyCharacter} {editMode} bind:editData />
|
<CharacterStatsSection character={emptyCharacter} {editMode} bind:editData />
|
||||||
|
|
||||||
|
<DetailsContainer title="Nicknames">
|
||||||
|
<DetailItem label="Nicknames (EN)">
|
||||||
|
<TagInput bind:value={editData.nicknamesEn} placeholder="Add nickname..." />
|
||||||
|
</DetailItem>
|
||||||
|
<DetailItem label="Nicknames (JP)">
|
||||||
|
<TagInput bind:value={editData.nicknamesJp} placeholder="ニックネーム..." />
|
||||||
|
</DetailItem>
|
||||||
|
</DetailsContainer>
|
||||||
|
|
||||||
<DetailsContainer title="Dates">
|
<DetailsContainer title="Dates">
|
||||||
<DetailItem
|
<DetailItem
|
||||||
label="Release Date"
|
label="Release Date"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue