diff --git a/src/routes/(app)/database/characters/import/+page.svelte b/src/routes/(app)/database/characters/import/+page.svelte index 09519c80..37eab1ca 100644 --- a/src/routes/(app)/database/characters/import/+page.svelte +++ b/src/routes/(app)/database/characters/import/+page.svelte @@ -13,6 +13,7 @@ buildGamewithUrl, buildKamigameUrl } from '$lib/utils/external-links' + import { getRarityPrefix } from '$lib/utils/rarity' // Components import CharacterUncapSection from '$lib/features/database/characters/sections/CharacterUncapSection.svelte' @@ -85,6 +86,23 @@ // Get selected entity data const selectedEntity = $derived(selectedWikiPage ? entities.get(selectedWikiPage) : null) + // Auto-generate wiki URLs when Name (JP) or Rarity changes + $effect(() => { + if (!selectedWikiPage) return + const formData = formDataByPage[selectedWikiPage] + if (!formData) return + + const nameJp = formData.nameJp + const rarity = formData.rarity + + if (nameJp) { + // Auto-generate wikiJa: "Name (JP) (SSR)" + formData.wikiJa = `${nameJp} (${getRarityPrefix(rarity)})` + // Auto-generate kamigame: "Name (JP)" for characters (no rarity prefix) + formData.kamigame = nameJp + } + }) + // Entity tabs for TabbedEntitySelector const entityTabs = $derived( Array.from(entities.entries()).map(([wikiPage, entity]) => ({ @@ -451,43 +469,6 @@ {@const suggestions = selectedEntity.suggestions} {@const dismissed = dismissedByPage[selectedWikiPage] ?? new Set()}
- - - handleAcceptSuggestion('name', suggestions?.nameEn)} - onDismissSuggestion={() => handleDismissSuggestion('name')} - /> - handleAcceptSuggestion('nameJp', suggestions?.nameJp)} - onDismissSuggestion={() => handleDismissSuggestion('nameJp')} - /> - handleAcceptSuggestion('granblueId', suggestions?.granblueId)} - onDismissSuggestion={() => handleDismissSuggestion('granblueId')} - /> - - { + if (!selectedWikiPage) return + const formData = formDataByPage[selectedWikiPage] + if (!formData) return + + const nameJp = formData.nameJp + const rarity = formData.rarity + + if (nameJp) { + // Auto-generate wikiJa: "Name (JP) (SSR)" + formData.wikiJa = `${nameJp} (${getRarityPrefix(rarity)})` + // Auto-generate kamigame: "SSRName (JP)" for summons + formData.kamigame = `${getRarityPrefix(rarity)}${nameJp}` + } + }) + // Entity tabs for TabbedEntitySelector const entityTabs = $derived( Array.from(entities.entries()).map(([wikiPage, entity]) => ({ @@ -430,39 +448,6 @@ {@const suggestions = selectedEntity.suggestions} {@const dismissed = dismissedByPage[selectedWikiPage] ?? new Set()}
- - handleAcceptSuggestion('name', suggestions?.nameEn)} - onDismissSuggestion={() => handleDismissSuggestion('name')} - /> - handleAcceptSuggestion('nameJp', suggestions?.nameJp)} - onDismissSuggestion={() => handleDismissSuggestion('nameJp')} - /> - - - { + if (!selectedWikiPage) return + const formData = formDataByPage[selectedWikiPage] + if (!formData) return + + const nameJp = formData.nameJp + const rarity = formData.rarity + + if (nameJp) { + // Auto-generate wikiJa: "Name (JP) (SSR)" + formData.wikiJa = `${nameJp} (${getRarityPrefix(rarity)})` + // Auto-generate kamigame: "SSRName (JP)" for weapons + formData.kamigame = `${getRarityPrefix(rarity)}${nameJp}` + } + }) + // Entity tabs for TabbedEntitySelector const entityTabs = $derived( Array.from(entities.entries()).map(([wikiPage, entity]) => ({ @@ -444,31 +462,6 @@ {@const suggestions = selectedEntity.suggestions} {@const dismissed = dismissedByPage[selectedWikiPage] ?? new Set()}
- - handleAcceptSuggestion('name', suggestions?.nameEn)} - onDismissSuggestion={() => handleDismissSuggestion('name')} - /> - handleAcceptSuggestion('nameJp', suggestions?.nameJp)} - onDismissSuggestion={() => handleDismissSuggestion('nameJp')} - /> - -