From 5c5e0812dc90675a062ae1984bde4ea719961448 Mon Sep 17 00:00:00 2001 From: KoloMl Date: Fri, 9 Jan 2026 05:56:33 +0400 Subject: [PATCH] Provide names for all popup routes using new store --- src/routes/+page.svelte | 3 +++ src/routes/about/+page.svelte | 3 +++ src/routes/features/groups/+page.svelte | 3 +++ src/routes/features/groups/[id]/+page.svelte | 3 +++ src/routes/features/groups/[id]/delete/+page.svelte | 3 +++ src/routes/features/groups/[id]/edit/+page.svelte | 4 ++++ src/routes/features/groups/[id]/export/+page.svelte | 3 +++ src/routes/features/groups/import/+page.svelte | 7 +++++++ src/routes/features/maintenance/+page.svelte | 3 +++ src/routes/features/maintenance/[id]/+page.svelte | 5 +++-- .../features/maintenance/[id]/delete/+page.svelte | 3 +++ .../features/maintenance/[id]/edit/+page.svelte | 4 ++++ .../features/maintenance/[id]/export/+page.svelte | 3 +++ src/routes/features/maintenance/import/+page.svelte | 6 ++++++ src/routes/preferences/+page.svelte | 3 +++ src/routes/preferences/debug/+page.svelte | 3 +++ src/routes/preferences/debug/storage/+page.svelte | 3 +++ .../preferences/debug/storage/[...path]/+page.svelte | 5 +++++ src/routes/preferences/misc/+page.svelte | 3 +++ src/routes/preferences/tags/+page.svelte | 3 +++ src/routes/transporting/+page.svelte | 3 +++ src/routes/transporting/export/+page.svelte | 7 +++++++ src/routes/transporting/import/+page.svelte | 11 +++++++++++ 23 files changed, 92 insertions(+), 2 deletions(-) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 3df1e07..537f71e 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -4,6 +4,9 @@ import { activeProfileStore, maintenanceProfiles } from "$stores/entities/maintenance-profiles"; import MenuCheckboxItem from "$components/ui/menu/MenuCheckboxItem.svelte"; import MaintenanceProfile from "$entities/MaintenanceProfile"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = null; let activeProfile = $derived( $maintenanceProfiles.find(profile => profile.id === $activeProfileStore) || null diff --git a/src/routes/about/+page.svelte b/src/routes/about/+page.svelte index 4af3a70..525d24f 100644 --- a/src/routes/about/+page.svelte +++ b/src/routes/about/+page.svelte @@ -2,6 +2,9 @@ import Menu from "$components/ui/menu/Menu.svelte"; import MenuItem from "$components/ui/menu/MenuItem.svelte"; import { PLUGIN_NAME } from "$lib/constants"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'About'; let currentSiteUrl = 'https://furbooru.org'; diff --git a/src/routes/features/groups/+page.svelte b/src/routes/features/groups/+page.svelte index d2283e3..634d348 100644 --- a/src/routes/features/groups/+page.svelte +++ b/src/routes/features/groups/+page.svelte @@ -3,6 +3,9 @@ import MenuItem from "$components/ui/menu/MenuItem.svelte"; import { tagGroups } from "$stores/entities/tag-groups"; import TagGroup from "$entities/TagGroup"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'Tag Groups'; let groups = $derived($tagGroups.sort((a, b) => a.settings.name.localeCompare(b.settings.name))); diff --git a/src/routes/features/groups/[id]/+page.svelte b/src/routes/features/groups/[id]/+page.svelte index 00c44fc..11e7101 100644 --- a/src/routes/features/groups/[id]/+page.svelte +++ b/src/routes/features/groups/[id]/+page.svelte @@ -6,6 +6,7 @@ import MenuItem from "$components/ui/menu/MenuItem.svelte"; import { tagGroups } from "$stores/entities/tag-groups"; import TagGroup from "$entities/TagGroup"; + import { popupTitle } from "$stores/popup"; let groupId = $derived(page.params.id); let group = $derived($tagGroups.find(group => group.id === groupId) || null); @@ -19,6 +20,8 @@ if (!group) { console.warn(`Group ${groupId} not found.`); goto('/features/groups'); + } else { + $popupTitle = `Tag Group: ${group.settings.name}`; } }) diff --git a/src/routes/features/groups/[id]/delete/+page.svelte b/src/routes/features/groups/[id]/delete/+page.svelte index febfe54..2d8fb5d 100644 --- a/src/routes/features/groups/[id]/delete/+page.svelte +++ b/src/routes/features/groups/[id]/delete/+page.svelte @@ -5,6 +5,7 @@ import MenuItem from "$components/ui/menu/MenuItem.svelte"; import { tagGroups } from "$stores/entities/tag-groups"; import type TagGroup from "$entities/TagGroup"; + import { popupTitle } from "$stores/popup"; const groupId = $derived(page.params.id); const targetGroup = $derived($tagGroups.find(group => group.id === groupId)); @@ -12,6 +13,8 @@ $effect(() => { if (!targetGroup) { goto('/features/groups'); + } else { + $popupTitle = `Deleting Tag Group: ${targetGroup.settings.name}`; } }) diff --git a/src/routes/features/groups/[id]/edit/+page.svelte b/src/routes/features/groups/[id]/edit/+page.svelte index 851de9f..6737c9a 100644 --- a/src/routes/features/groups/[id]/edit/+page.svelte +++ b/src/routes/features/groups/[id]/edit/+page.svelte @@ -12,6 +12,7 @@ import TagGroup from "$entities/TagGroup"; import { tagGroups } from "$stores/entities/tag-groups"; import CheckboxField from "$components/ui/forms/CheckboxField.svelte"; + import { popupTitle } from "$stores/popup"; let groupId = $derived(page.params.id); @@ -32,6 +33,7 @@ $effect(() => { if (groupId === 'new') { + $popupTitle = 'Create Tag Group'; return; } @@ -40,6 +42,8 @@ return; } + $popupTitle = `Edit Tag Group: ${targetGroup.settings.name}`; + groupName = targetGroup.settings.name; tagsList = [...targetGroup.settings.tags].sort((a, b) => a.localeCompare(b)); prefixesList = [...targetGroup.settings.prefixes].sort((a, b) => a.localeCompare(b)); diff --git a/src/routes/features/groups/[id]/export/+page.svelte b/src/routes/features/groups/[id]/export/+page.svelte index e4067a4..b4b92f6 100644 --- a/src/routes/features/groups/[id]/export/+page.svelte +++ b/src/routes/features/groups/[id]/export/+page.svelte @@ -8,6 +8,7 @@ import TagGroup from "$entities/TagGroup"; import EntitiesTransporter from "$lib/extension/EntitiesTransporter"; import { tagGroups } from "$stores/entities/tag-groups"; + import { popupTitle } from "$stores/popup"; let isEncodedGroupShown = $state(true); @@ -17,6 +18,8 @@ $effect(() => { if (!group) { goto('/features/groups'); + } else { + $popupTitle = `Export Tag Group: ${group.settings.name}`; } }); diff --git a/src/routes/features/groups/import/+page.svelte b/src/routes/features/groups/import/+page.svelte index 8caa9d2..b477756 100644 --- a/src/routes/features/groups/import/+page.svelte +++ b/src/routes/features/groups/import/+page.svelte @@ -8,6 +8,7 @@ import TagGroup from "$entities/TagGroup"; import EntitiesTransporter from "$lib/extension/EntitiesTransporter"; import { tagGroups } from "$stores/entities/tag-groups"; + import { popupTitle } from "$stores/popup"; const groupTransporter = new EntitiesTransporter(TagGroup); @@ -17,6 +18,12 @@ let candidateGroup = $state(null); let existingGroup = $state(null); + $effect(() => { + $popupTitle = candidateGroup + ? 'Confirm Imported Tag Group' + : 'Import Tag Group'; + }); + function tryImportingGroup() { candidateGroup = null; existingGroup = null; diff --git a/src/routes/features/maintenance/+page.svelte b/src/routes/features/maintenance/+page.svelte index 32fa0cc..3c66f72 100644 --- a/src/routes/features/maintenance/+page.svelte +++ b/src/routes/features/maintenance/+page.svelte @@ -4,6 +4,9 @@ import MenuRadioItem from "$components/ui/menu/MenuRadioItem.svelte"; import { activeProfileStore, maintenanceProfiles } from "$stores/entities/maintenance-profiles"; import MaintenanceProfile from "$entities/MaintenanceProfile"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'Tagging Profiles'; let profiles = $derived( $maintenanceProfiles.sort((a, b) => a.settings.name.localeCompare(b.settings.name)) diff --git a/src/routes/features/maintenance/[id]/+page.svelte b/src/routes/features/maintenance/[id]/+page.svelte index 941a7ad..f304bf4 100644 --- a/src/routes/features/maintenance/[id]/+page.svelte +++ b/src/routes/features/maintenance/[id]/+page.svelte @@ -1,5 +1,4 @@ diff --git a/src/routes/preferences/debug/+page.svelte b/src/routes/preferences/debug/+page.svelte index 7e661f6..8e3f66d 100644 --- a/src/routes/preferences/debug/+page.svelte +++ b/src/routes/preferences/debug/+page.svelte @@ -1,6 +1,9 @@ diff --git a/src/routes/preferences/debug/storage/+page.svelte b/src/routes/preferences/debug/storage/+page.svelte index 57e7693..71697fe 100644 --- a/src/routes/preferences/debug/storage/+page.svelte +++ b/src/routes/preferences/debug/storage/+page.svelte @@ -2,6 +2,9 @@ import MenuItem from "$components/ui/menu/MenuItem.svelte"; import Menu from "$components/ui/menu/Menu.svelte"; import { storagesCollection } from "$stores/debug"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'Storage Inspector'; diff --git a/src/routes/preferences/debug/storage/[...path]/+page.svelte b/src/routes/preferences/debug/storage/[...path]/+page.svelte index 3f8d6f5..af134bd 100644 --- a/src/routes/preferences/debug/storage/[...path]/+page.svelte +++ b/src/routes/preferences/debug/storage/[...path]/+page.svelte @@ -2,6 +2,7 @@ import StorageViewer from "$components/debugging/StorageViewer.svelte"; import { page } from "$app/state"; import { goto } from "$app/navigation"; + import { popupTitle } from "$stores/popup"; let pathArray = $derived.by(() => { const pathString = page.params.path; @@ -30,6 +31,10 @@ if (!storageName) { goto("/preferences/debug/storage"); } + + $popupTitle = storageName + ? 'Inspecting: ' + storageName + : 'Storage Inspector'; }); diff --git a/src/routes/preferences/misc/+page.svelte b/src/routes/preferences/misc/+page.svelte index bd16de8..df0c3ae 100644 --- a/src/routes/preferences/misc/+page.svelte +++ b/src/routes/preferences/misc/+page.svelte @@ -5,6 +5,9 @@ import FormControl from "$components/ui/forms/FormControl.svelte"; import CheckboxField from "$components/ui/forms/CheckboxField.svelte"; import { fullScreenViewerEnabled } from "$stores/preferences/misc"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'Misc Preferences'; diff --git a/src/routes/preferences/tags/+page.svelte b/src/routes/preferences/tags/+page.svelte index 2a0ed83..5e60bc9 100644 --- a/src/routes/preferences/tags/+page.svelte +++ b/src/routes/preferences/tags/+page.svelte @@ -6,6 +6,9 @@ import MenuItem from "$components/ui/menu/MenuItem.svelte"; import { stripBlacklistedTagsEnabled } from "$stores/preferences/maintenance"; import { shouldSeparateTagGroups } from "$stores/preferences/tag"; + import { popupTitle } from "$stores/popup"; + + $popupTitle = 'Tagging Preferences'; diff --git a/src/routes/transporting/+page.svelte b/src/routes/transporting/+page.svelte index 769ae5e..2d5cd80 100644 --- a/src/routes/transporting/+page.svelte +++ b/src/routes/transporting/+page.svelte @@ -1,6 +1,9 @@ diff --git a/src/routes/transporting/export/+page.svelte b/src/routes/transporting/export/+page.svelte index be11514..438f124 100644 --- a/src/routes/transporting/export/+page.svelte +++ b/src/routes/transporting/export/+page.svelte @@ -8,6 +8,7 @@ import type StorageEntity from "$lib/extension/base/StorageEntity"; import FormControl from "$components/ui/forms/FormControl.svelte"; import FormContainer from "$components/ui/forms/FormContainer.svelte"; + import { popupTitle } from "$stores/popup"; const bulkTransporter = new BulkEntitiesTransporter(); @@ -46,6 +47,12 @@ } }); + $effect(() => { + $popupTitle = displayExportedString + ? 'Exported String' + : 'Select Entities to Export'; + }); + function refreshAreAllEntitiesChecked() { requestAnimationFrame(() => { exportAllProfiles = $maintenanceProfiles.every(profile => exportedEntities.profiles[profile.id]); diff --git a/src/routes/transporting/import/+page.svelte b/src/routes/transporting/import/+page.svelte index ddc744d..be84fcc 100644 --- a/src/routes/transporting/import/+page.svelte +++ b/src/routes/transporting/import/+page.svelte @@ -14,6 +14,7 @@ import GroupView from "$components/features/GroupView.svelte"; import { goto } from "$app/navigation"; import type { SameSiteStatus } from "$lib/extension/EntitiesTransporter"; + import { popupTitle } from "$stores/popup"; let importedString = $state(''); let errorMessage = $state(''); @@ -49,6 +50,16 @@ Boolean(importedProfiles.length || importedGroups.length) ); + $effect(() => { + $popupTitle = hasImportedEntities + ? ( + previewedEntity + ? 'Preview of Imported Entity' + : 'Select & Preview Imported Entities' + ) + : 'Import'; + }); + const transporter = new BulkEntitiesTransporter(); let lastImportStatus = $state(null);