add page titles to database pages
This commit is contained in:
parent
0336fabaa8
commit
8a44d588c8
15 changed files with 87 additions and 2 deletions
|
|
@ -1,6 +1,9 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// Svelte components
|
// Svelte components
|
||||||
import CharacterImageCell from '$lib/components/database/cells/CharacterImageCell.svelte'
|
import CharacterImageCell from '$lib/components/database/cells/CharacterImageCell.svelte'
|
||||||
import CharacterUncapCell from '$lib/components/database/cells/CharacterUncapCell.svelte'
|
import CharacterUncapCell from '$lib/components/database/cells/CharacterUncapCell.svelte'
|
||||||
|
|
@ -62,6 +65,8 @@
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_characters()} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<DatabaseGridWithProvider resource="characters" {columns} pageSize={20}>
|
<DatabaseGridWithProvider resource="characters" {columns} pageSize={20}>
|
||||||
{#snippet headerActions()}
|
{#snippet headerActions()}
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,10 @@
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { page } from '$app/stores'
|
import { page } from '$app/stores'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// TanStack Query
|
// TanStack Query
|
||||||
import { createQuery } from '@tanstack/svelte-query'
|
import { createQuery } from '@tanstack/svelte-query'
|
||||||
import { entityQueries } from '$lib/api/queries/entity.queries'
|
import { entityQueries } from '$lib/api/queries/entity.queries'
|
||||||
|
|
@ -151,8 +155,13 @@
|
||||||
await entityAdapter.downloadCharacterImage(character.id, size, pose, false)
|
await entityAdapter.downloadCharacterImage(character.id, size, pose, false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Page title
|
||||||
|
const pageTitle = $derived(m.page_title_db_entity({ name: character?.name?.en ?? 'Character' }))
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={pageTitle} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
{#if character}
|
{#if character}
|
||||||
<DetailScaffold
|
<DetailScaffold
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,10 @@
|
||||||
// SvelteKit imports
|
// SvelteKit imports
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// TanStack Query
|
// TanStack Query
|
||||||
import { createQuery, useQueryClient } from '@tanstack/svelte-query'
|
import { createQuery, useQueryClient } from '@tanstack/svelte-query'
|
||||||
import { entityQueries } from '$lib/api/queries/entity.queries'
|
import { entityQueries } from '$lib/api/queries/entity.queries'
|
||||||
|
|
@ -157,8 +161,13 @@
|
||||||
function getCharacterGridImage(character: any): string {
|
function getCharacterGridImage(character: any): string {
|
||||||
return getCharacterImage(character?.granblueId, 'grid', '01')
|
return getCharacterImage(character?.granblueId, 'grid', '01')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Page title
|
||||||
|
const pageTitle = $derived(m.page_title_db_edit({ name: character?.name?.en ?? 'Character' }))
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={pageTitle} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
{#if character}
|
{#if character}
|
||||||
<DetailScaffold
|
<DetailScaffold
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { entityAdapter, type CharacterSuggestions } from '$lib/api/adapters/entity.adapter'
|
import { entityAdapter, type CharacterSuggestions } from '$lib/api/adapters/entity.adapter'
|
||||||
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
||||||
|
|
@ -352,6 +354,8 @@
|
||||||
)
|
)
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_import({ type: 'Characters' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="Batch Import Characters">
|
<SidebarHeader title="Batch Import Characters">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,10 @@
|
||||||
// SvelteKit imports
|
// SvelteKit imports
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// Components
|
// Components
|
||||||
import CharacterUncapSection from '$lib/features/database/characters/sections/CharacterUncapSection.svelte'
|
import CharacterUncapSection from '$lib/features/database/characters/sections/CharacterUncapSection.svelte'
|
||||||
import CharacterTaxonomySection from '$lib/features/database/characters/sections/CharacterTaxonomySection.svelte'
|
import CharacterTaxonomySection from '$lib/features/database/characters/sections/CharacterTaxonomySection.svelte'
|
||||||
|
|
@ -233,6 +237,8 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_new({ type: 'Character' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="New Character">
|
<SidebarHeader title="New Character">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { createQuery } from '@tanstack/svelte-query'
|
import { createQuery } from '@tanstack/svelte-query'
|
||||||
import { gwAdapter } from '$lib/api/adapters/gw.adapter'
|
import { gwAdapter } from '$lib/api/adapters/gw.adapter'
|
||||||
|
|
@ -74,6 +76,8 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_gw()} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<div class="grid">
|
<div class="grid">
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import { createQuery } from '@tanstack/svelte-query'
|
import { createQuery } from '@tanstack/svelte-query'
|
||||||
import { entityQueries } from '$lib/api/queries/entity.queries'
|
import { entityQueries } from '$lib/api/queries/entity.queries'
|
||||||
import SegmentedControl from '$lib/components/ui/segmented-control/SegmentedControl.svelte'
|
import SegmentedControl from '$lib/components/ui/segmented-control/SegmentedControl.svelte'
|
||||||
|
|
@ -37,6 +39,8 @@
|
||||||
const hasFlags = $derived(activeType === 'weapons')
|
const hasFlags = $derived(activeType === 'weapons')
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_series()} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="database-page">
|
<div class="database-page">
|
||||||
<div class="grid-container">
|
<div class="grid-container">
|
||||||
<nav class="series-nav" aria-label="Series type">
|
<nav class="series-nav" aria-label="Series type">
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import DatabaseGridWithProvider from '$lib/components/database/DatabaseGridWithProvider.svelte'
|
import DatabaseGridWithProvider from '$lib/components/database/DatabaseGridWithProvider.svelte'
|
||||||
import type { IColumn } from 'wx-svelte-grid'
|
import type { IColumn } from 'wx-svelte-grid'
|
||||||
import SummonImageCell from '$lib/components/database/cells/SummonImageCell.svelte'
|
import SummonImageCell from '$lib/components/database/cells/SummonImageCell.svelte'
|
||||||
|
|
@ -62,6 +64,8 @@
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_summons()} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="database-page">
|
<div class="database-page">
|
||||||
<DatabaseGridWithProvider resource="summons" {columns} pageSize={20}>
|
<DatabaseGridWithProvider resource="summons" {columns} pageSize={20}>
|
||||||
{#snippet headerActions()}
|
{#snippet headerActions()}
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,10 @@
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { page } from '$app/stores'
|
import { page } from '$app/stores'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// TanStack Query
|
// TanStack Query
|
||||||
import { createQuery } from '@tanstack/svelte-query'
|
import { createQuery } from '@tanstack/svelte-query'
|
||||||
import { entityQueries } from '$lib/api/queries/entity.queries'
|
import { entityQueries } from '$lib/api/queries/entity.queries'
|
||||||
|
|
@ -151,8 +155,13 @@
|
||||||
await entityAdapter.downloadSummonImage(summon.id, size, trans, false)
|
await entityAdapter.downloadSummonImage(summon.id, size, trans, false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Page title
|
||||||
|
const pageTitle = $derived(m.page_title_db_entity({ name: summon?.name?.en ?? 'Summon' }))
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={pageTitle} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
{#if summon}
|
{#if summon}
|
||||||
<DetailScaffold
|
<DetailScaffold
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { entityAdapter, type SummonSuggestions } from '$lib/api/adapters/entity.adapter'
|
import { entityAdapter, type SummonSuggestions } from '$lib/api/adapters/entity.adapter'
|
||||||
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
||||||
|
|
@ -330,9 +332,10 @@
|
||||||
entityTabs.length > 0 &&
|
entityTabs.length > 0 &&
|
||||||
entityTabs.filter((e) => e.status === 'success').every((e) => savedEntities.has(e.wikiPage))
|
entityTabs.filter((e) => e.status === 'success').every((e) => savedEntities.has(e.wikiPage))
|
||||||
)
|
)
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_import({ type: 'Summons' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="Batch Import Summons">
|
<SidebarHeader title="Batch Import Summons">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,10 @@
|
||||||
// SvelteKit imports
|
// SvelteKit imports
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// Components
|
// Components
|
||||||
import SummonUncapSection from '$lib/features/database/summons/sections/SummonUncapSection.svelte'
|
import SummonUncapSection from '$lib/features/database/summons/sections/SummonUncapSection.svelte'
|
||||||
import SummonTaxonomySection from '$lib/features/database/summons/sections/SummonTaxonomySection.svelte'
|
import SummonTaxonomySection from '$lib/features/database/summons/sections/SummonTaxonomySection.svelte'
|
||||||
|
|
@ -213,6 +217,8 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_new({ type: 'Summon' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="New Summon">
|
<SidebarHeader title="New Summon">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import DatabaseGridWithProvider from '$lib/components/database/DatabaseGridWithProvider.svelte'
|
import DatabaseGridWithProvider from '$lib/components/database/DatabaseGridWithProvider.svelte'
|
||||||
import type { IColumn } from 'wx-svelte-grid'
|
import type { IColumn } from 'wx-svelte-grid'
|
||||||
import WeaponImageCell from '$lib/components/database/cells/WeaponImageCell.svelte'
|
import WeaponImageCell from '$lib/components/database/cells/WeaponImageCell.svelte'
|
||||||
|
|
@ -70,6 +72,8 @@
|
||||||
]
|
]
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_weapons()} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="database-page">
|
<div class="database-page">
|
||||||
<DatabaseGridWithProvider resource="weapons" {columns} pageSize={20}>
|
<DatabaseGridWithProvider resource="weapons" {columns} pageSize={20}>
|
||||||
{#snippet headerActions()}
|
{#snippet headerActions()}
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,10 @@
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { page } from '$app/stores'
|
import { page } from '$app/stores'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// TanStack Query
|
// TanStack Query
|
||||||
import { createQuery } from '@tanstack/svelte-query'
|
import { createQuery } from '@tanstack/svelte-query'
|
||||||
import { entityQueries } from '$lib/api/queries/entity.queries'
|
import { entityQueries } from '$lib/api/queries/entity.queries'
|
||||||
|
|
@ -145,8 +149,13 @@
|
||||||
await entityAdapter.downloadWeaponImage(weapon.id, size, trans, false)
|
await entityAdapter.downloadWeaponImage(weapon.id, size, trans, false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Page title
|
||||||
|
const pageTitle = $derived(m.page_title_db_entity({ name: weapon?.name?.en ?? 'Weapon' }))
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={pageTitle} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
{#if weapon}
|
{#if weapon}
|
||||||
<DetailScaffold
|
<DetailScaffold
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
<svelte:options runes={true} />
|
<svelte:options runes={true} />
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
import { entityAdapter, type WeaponSuggestions } from '$lib/api/adapters/entity.adapter'
|
import { entityAdapter, type WeaponSuggestions } from '$lib/api/adapters/entity.adapter'
|
||||||
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
import { fetchWikiPages, buildWikiDataMap } from '$lib/api/wiki'
|
||||||
|
|
@ -335,9 +337,10 @@
|
||||||
entityTabs.length > 0 &&
|
entityTabs.length > 0 &&
|
||||||
entityTabs.filter((e) => e.status === 'success').every((e) => savedEntities.has(e.wikiPage))
|
entityTabs.filter((e) => e.status === 'success').every((e) => savedEntities.has(e.wikiPage))
|
||||||
)
|
)
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_import({ type: 'Weapons' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="Batch Import Weapons">
|
<SidebarHeader title="Batch Import Weapons">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,10 @@
|
||||||
// SvelteKit imports
|
// SvelteKit imports
|
||||||
import { goto } from '$app/navigation'
|
import { goto } from '$app/navigation'
|
||||||
|
|
||||||
|
// Page metadata
|
||||||
|
import PageMeta from '$lib/components/PageMeta.svelte'
|
||||||
|
import * as m from '$lib/paraglide/messages'
|
||||||
|
|
||||||
// Components
|
// Components
|
||||||
import WeaponUncapSection from '$lib/features/database/weapons/sections/WeaponUncapSection.svelte'
|
import WeaponUncapSection from '$lib/features/database/weapons/sections/WeaponUncapSection.svelte'
|
||||||
import WeaponTaxonomySection from '$lib/features/database/weapons/sections/WeaponTaxonomySection.svelte'
|
import WeaponTaxonomySection from '$lib/features/database/weapons/sections/WeaponTaxonomySection.svelte'
|
||||||
|
|
@ -220,6 +224,8 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<PageMeta title={m.page_title_db_new({ type: 'Weapon' })} description={m.page_desc_home()} />
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<SidebarHeader title="New Weapon">
|
<SidebarHeader title="New Weapon">
|
||||||
{#snippet leftAccessory()}
|
{#snippet leftAccessory()}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue