send wiki_raw when creating entities from import
This commit is contained in:
parent
cfb62447a0
commit
ed6a9fd2f4
4 changed files with 36 additions and 13 deletions
|
|
@ -424,6 +424,7 @@ export interface CreateSummonPayload {
|
|||
transcendence_date?: string | null
|
||||
wiki_en?: string
|
||||
wiki_ja?: string
|
||||
wiki_raw?: string
|
||||
gamewith?: string
|
||||
kamigame?: string
|
||||
nicknames_en?: string[]
|
||||
|
|
@ -496,6 +497,7 @@ export interface CreateWeaponPayload {
|
|||
transcendence_date?: string | null
|
||||
wiki_en?: string
|
||||
wiki_ja?: string
|
||||
wiki_raw?: string
|
||||
gamewith?: string
|
||||
kamigame?: string
|
||||
recruits?: string | null // Character ID reference
|
||||
|
|
|
|||
|
|
@ -56,6 +56,9 @@
|
|||
let dismissedByPage = $state<Record<string, Set<string>>>({})
|
||||
let savedEntities = $state<Set<string>>(new Set())
|
||||
|
||||
// Store wiki raw data per entity for sending with create request
|
||||
let wikiRawByPage = $state<Record<string, string>>({})
|
||||
|
||||
// Saving state
|
||||
let isSaving = $state(false)
|
||||
let saveError = $state<string | null>(null)
|
||||
|
|
@ -182,6 +185,9 @@
|
|||
const wikiResults = await fetchWikiPages(pages)
|
||||
const wikiData = buildWikiDataMap(wikiResults)
|
||||
|
||||
// Store wiki raw data for sending with create request
|
||||
wikiRawByPage = { ...wikiData }
|
||||
|
||||
// Update pages array with any redirects
|
||||
const finalPages = wikiResults.map((r) => r.wikiPage)
|
||||
|
||||
|
|
@ -299,7 +305,7 @@
|
|||
kamigame: formData.kamigame,
|
||||
nicknames_en: formData.nicknamesEn,
|
||||
nicknames_jp: formData.nicknamesJp,
|
||||
wiki_raw: entity?.wikiRaw || null
|
||||
wiki_raw: wikiRawByPage[selectedWikiPage] || undefined
|
||||
}
|
||||
|
||||
const newCharacter = await entityAdapter.createCharacter(payload)
|
||||
|
|
|
|||
|
|
@ -55,6 +55,9 @@
|
|||
let dismissedByPage = $state<Record<string, Set<string>>>({})
|
||||
let savedEntities = $state<Set<string>>(new Set())
|
||||
|
||||
// Store wiki raw data per entity for sending with create request
|
||||
let wikiRawByPage = $state<Record<string, string>>({})
|
||||
|
||||
// Saving state
|
||||
let isSaving = $state(false)
|
||||
let saveError = $state<string | null>(null)
|
||||
|
|
@ -175,6 +178,9 @@
|
|||
const wikiResults = await fetchWikiPages(pages)
|
||||
const wikiData = buildWikiDataMap(wikiResults)
|
||||
|
||||
// Store wiki raw data for sending with create request
|
||||
wikiRawByPage = { ...wikiData }
|
||||
|
||||
// Update pages array with any redirects
|
||||
const finalPages = wikiResults.map((r) => r.wikiPage)
|
||||
|
||||
|
|
@ -278,7 +284,8 @@
|
|||
gamewith: formData.gamewith,
|
||||
kamigame: formData.kamigame,
|
||||
nicknames_en: formData.nicknamesEn,
|
||||
nicknames_jp: formData.nicknamesJp
|
||||
nicknames_jp: formData.nicknamesJp,
|
||||
wiki_raw: wikiRawByPage[selectedWikiPage] || undefined
|
||||
}
|
||||
|
||||
const newSummon = await entityAdapter.createSummon(payload)
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
import WeaponTaxonomySection from '$lib/features/database/weapons/sections/WeaponTaxonomySection.svelte'
|
||||
import WeaponStatsSection from '$lib/features/database/weapons/sections/WeaponStatsSection.svelte'
|
||||
import WeaponMetadataSection from '$lib/features/database/weapons/sections/WeaponMetadataSection.svelte'
|
||||
import WeaponGachaSection from '$lib/features/database/weapons/sections/WeaponGachaSection.svelte'
|
||||
import TabbedEntitySelector from '$lib/features/database/import/TabbedEntitySelector.svelte'
|
||||
import type { EntityTab } from '$lib/features/database/import/TabbedEntitySelector.svelte'
|
||||
import DetailsContainer from '$lib/components/ui/DetailsContainer.svelte'
|
||||
|
|
@ -27,7 +28,6 @@
|
|||
import Input from '$lib/components/ui/Input.svelte'
|
||||
import Icon from '$lib/components/Icon.svelte'
|
||||
import TagInput from '$lib/components/ui/TagInput.svelte'
|
||||
import CharacterTypeahead from '$lib/components/ui/CharacterTypeahead.svelte'
|
||||
|
||||
import type { PageData } from './$types'
|
||||
|
||||
|
|
@ -56,6 +56,9 @@
|
|||
let dismissedByPage = $state<Record<string, Set<string>>>({})
|
||||
let savedEntities = $state<Set<string>>(new Set())
|
||||
|
||||
// Store wiki raw data per entity for sending with create request
|
||||
let wikiRawByPage = $state<Record<string, string>>({})
|
||||
|
||||
// Saving state
|
||||
let isSaving = $state(false)
|
||||
let saveError = $state<string | null>(null)
|
||||
|
|
@ -177,6 +180,9 @@
|
|||
const wikiResults = await fetchWikiPages(pages)
|
||||
const wikiData = buildWikiDataMap(wikiResults)
|
||||
|
||||
// Store wiki raw data for sending with create request
|
||||
wikiRawByPage = { ...wikiData }
|
||||
|
||||
// Update pages array with any redirects
|
||||
const finalPages = wikiResults.map((r) => r.wikiPage)
|
||||
|
||||
|
|
@ -283,7 +289,8 @@
|
|||
kamigame: formData.kamigame,
|
||||
nicknames_en: formData.nicknamesEn,
|
||||
nicknames_jp: formData.nicknamesJp,
|
||||
recruits: formData.recruits
|
||||
recruits: formData.recruits,
|
||||
wiki_raw: wikiRawByPage[selectedWikiPage] || undefined
|
||||
}
|
||||
|
||||
const newWeapon = await entityAdapter.createWeapon(payload)
|
||||
|
|
@ -487,6 +494,16 @@
|
|||
onDismissSuggestion={handleDismissSuggestion}
|
||||
/>
|
||||
|
||||
<WeaponGachaSection
|
||||
weapon={emptyWeapon}
|
||||
editMode={true}
|
||||
bind:editData={formDataByPage[selectedWikiPage]}
|
||||
{suggestions}
|
||||
dismissedSuggestions={dismissed}
|
||||
onAcceptSuggestion={handleAcceptSuggestion}
|
||||
onDismissSuggestion={handleDismissSuggestion}
|
||||
/>
|
||||
|
||||
<DetailsContainer title="Nicknames">
|
||||
<DetailItem label="Nicknames (EN)">
|
||||
<TagInput bind:value={formDataByPage[selectedWikiPage].nicknamesEn} placeholder="Add nickname..." contained />
|
||||
|
|
@ -496,15 +513,6 @@
|
|||
</DetailItem>
|
||||
</DetailsContainer>
|
||||
|
||||
<DetailsContainer title="Recruits">
|
||||
<DetailItem label="Recruits Character" sublabel="Character recruited by this weapon">
|
||||
<CharacterTypeahead
|
||||
bind:value={formDataByPage[selectedWikiPage].recruits}
|
||||
placeholder="Search for character..."
|
||||
/>
|
||||
</DetailItem>
|
||||
</DetailsContainer>
|
||||
|
||||
<DetailsContainer title="Dates">
|
||||
<SuggestionDetailItem
|
||||
label="Release Date"
|
||||
|
|
|
|||
Loading…
Reference in a new issue