refactor(apps): automated SVG-to-Phosphor migration across all apps

Script-based migration of inline SVG icons to Phosphor components.
Covers todo, manacore, mukke, chat, zitare, times, citycorners,
inventar, uload, playground, presi, picture, moodlit, storage, news,
wisekeep, clock, matrix, manadeck, skilltree, and photos.

~190 SVGs replaced across 115 files. Remaining SVGs are spinners,
brand logos, or decorative/chart SVGs that don't map to Phosphor.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-03-31 12:35:17 +02:00
parent f58d58ff99
commit 504e7756a7
115 changed files with 781 additions and 3084 deletions

View file

@ -2,6 +2,7 @@
import { useLiveQuery } from '@manacore/local-store/svelte';
import { playlistCollection } from '$lib/data/local-store';
import { toast } from 'svelte-sonner';
import { Trash } from '@manacore/shared-icons';
const playlists = useLiveQuery(() => playlistCollection.getAll({}, { sortBy: 'order' }));
@ -81,14 +82,7 @@
onclick={() => deletePlaylist(pl.id, pl.name)}
class="rounded p-1 text-gray-500 opacity-0 hover:bg-gray-800 hover:text-red-400 group-hover:opacity-100"
>
<svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"
><path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"
/></svg
>
<Trash size={16} />
</button>
</div>
{/each}

View file

@ -3,6 +3,7 @@
import { transcriptCollection } from '$lib/data/local-store';
import type { LocalTranscript } from '$lib/data/local-store';
import { toast } from 'svelte-sonner';
import { CaretDown } from '@manacore/shared-icons';
const transcripts = useLiveQuery(() => transcriptCollection.getAll({ isArchived: false }));
@ -82,21 +83,12 @@
<span>{t.language.toUpperCase()}</span>
</div>
</div>
<svg
class="h-5 w-5 shrink-0 text-gray-500 transition-transform {expandedId === t.id
<CaretDown
size={20}
class="shrink-0 text-gray-500 transition-transform {expandedId === t.id
? 'rotate-180'
: ''}"
fill="none"
stroke="currentColor"
viewBox="0 0 24 24"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M19 9l-7 7-7-7"
/>
</svg>
/>
</button>
{#if expandedId === t.id}
<div class="border-t border-gray-800 p-4">