diff --git a/src/lib/features/database/weapons/sections/WeaponGachaSection.svelte b/src/lib/features/database/weapons/sections/WeaponGachaSection.svelte new file mode 100644 index 00000000..0680f03b --- /dev/null +++ b/src/lib/features/database/weapons/sections/WeaponGachaSection.svelte @@ -0,0 +1,93 @@ + + + + +{#if hasGachaData} + + {#if editMode} + + + + + + + {:else} + + {#if weapon.recruits} + + {/if} + {/if} + +{/if} diff --git a/src/lib/features/database/weapons/sections/WeaponTaxonomySection.svelte b/src/lib/features/database/weapons/sections/WeaponTaxonomySection.svelte index 0c004397..6e3130bb 100644 --- a/src/lib/features/database/weapons/sections/WeaponTaxonomySection.svelte +++ b/src/lib/features/database/weapons/sections/WeaponTaxonomySection.svelte @@ -7,14 +7,12 @@ import DetailsContainer from '$lib/components/ui/DetailsContainer.svelte' import DetailItem from '$lib/components/ui/DetailItem.svelte' import SuggestionDetailItem from '$lib/components/ui/SuggestionDetailItem.svelte' - import MultiSelect from '$lib/components/ui/MultiSelect.svelte' import ElementLabel from '$lib/components/labels/ElementLabel.svelte' import ProficiencyLabel from '$lib/components/labels/ProficiencyLabel.svelte' import { getElementLabel, getElementOptions } from '$lib/utils/element' import { getProficiencyOptions } from '$lib/utils/proficiency' import { getSeriesDisplayName } from '$lib/utils/weaponSeries' - import { isWeaponSeriesRef, type WeaponSeriesRef } from '$lib/types/api/weaponSeries' - import { PROMOTION_NAMES, getPromotionNames } from '$lib/types/enums' + import type { WeaponSeriesRef } from '$lib/types/api/weaponSeries' type ElementName = 'wind' | 'fire' | 'water' | 'earth' | 'dark' | 'light' @@ -58,12 +56,6 @@ ] }) - // Promotion options for multiselect - const promotionOptions = Object.entries(PROMOTION_NAMES).map(([value, label]) => ({ - value: Number(value), - label - })) - // Get element name for checkbox theming const elementName = $derived.by((): ElementName | undefined => { const el = editMode ? editData.element : weapon?.element @@ -76,12 +68,6 @@ if (!series) return '—' return getSeriesDisplayName(series, 'en') || '—' } - - // Format promotions for display - function formatPromotionsDisplay(promotions: number[]): string { - if (!promotions || promotions.length === 0) return '—' - return getPromotionNames(promotions).join(', ') - } @@ -139,15 +125,6 @@ type="checkbox" element={elementName} /> - - - {:else} @@ -170,10 +147,5 @@ value={weapon.limit ? 'Yes' : 'No'} /> - {/if} diff --git a/src/routes/(app)/database/weapons/[id]/edit/+page.svelte b/src/routes/(app)/database/weapons/[id]/edit/+page.svelte index 847d9fa5..9dc8688c 100644 --- a/src/routes/(app)/database/weapons/[id]/edit/+page.svelte +++ b/src/routes/(app)/database/weapons/[id]/edit/+page.svelte @@ -16,6 +16,7 @@ import WeaponUncapSection from '$lib/features/database/weapons/sections/WeaponUncapSection.svelte' import WeaponTaxonomySection from '$lib/features/database/weapons/sections/WeaponTaxonomySection.svelte' import WeaponStatsSection from '$lib/features/database/weapons/sections/WeaponStatsSection.svelte' + import WeaponGachaSection from '$lib/features/database/weapons/sections/WeaponGachaSection.svelte' import DetailsContainer from '$lib/components/ui/DetailsContainer.svelte' import DetailItem from '$lib/components/ui/DetailItem.svelte' import TagInput from '$lib/components/ui/TagInput.svelte' @@ -218,6 +219,7 @@ + @@ -299,17 +301,6 @@ width="480px" /> - - - - {:else}