From c4483e2c0b18b239ae292d9f9d0a06dbaeb4a4b9 Mon Sep 17 00:00:00 2001
From: Till-JS <101404291+Till-JS@users.noreply.github.com>
Date: Thu, 29 Jan 2026 17:15:55 +0100
Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A5=20remove:=20delete=20Picture=20But?=
=?UTF-8?q?ton/Card=20duplicates,=20use=20@manacore/shared-ui?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Delete unused Card.svelte (21 LOC)
- Migrate Button imports to @manacore/shared-ui (53 LOC)
- Update CONSOLIDATION_OPPORTUNITIES.md
Savings: ~74 LOC
---
.../lib/components/board/CanvasToolbar.svelte | 2 +-
.../components/board/ImagePickerModal.svelte | 4 +-
.../board/ImagePropertiesPanel.svelte | 3 +-
.../web/src/lib/components/ui/Button.svelte | 52 -------------------
.../web/src/lib/components/ui/Card.svelte | 20 -------
.../web/src/routes/app/board/+page.svelte | 5 +-
docs/CONSOLIDATION_OPPORTUNITIES.md | 21 ++++----
7 files changed, 15 insertions(+), 92 deletions(-)
delete mode 100644 apps/picture/apps/web/src/lib/components/ui/Button.svelte
delete mode 100644 apps/picture/apps/web/src/lib/components/ui/Card.svelte
diff --git a/apps/picture/apps/web/src/lib/components/board/CanvasToolbar.svelte b/apps/picture/apps/web/src/lib/components/board/CanvasToolbar.svelte
index c099f086d..52c6c0032 100644
--- a/apps/picture/apps/web/src/lib/components/board/CanvasToolbar.svelte
+++ b/apps/picture/apps/web/src/lib/components/board/CanvasToolbar.svelte
@@ -17,7 +17,7 @@
deselectAll,
} from '$lib/stores/canvas';
import { boardSettings } from '$lib/stores/boards';
- import Button from '$lib/components/ui/Button.svelte';
+ import { Button } from '@manacore/shared-ui';
import Konva from 'konva';
import {
CaretLeft,
diff --git a/apps/picture/apps/web/src/lib/components/board/ImagePickerModal.svelte b/apps/picture/apps/web/src/lib/components/board/ImagePickerModal.svelte
index 187c29141..645e12e3e 100644
--- a/apps/picture/apps/web/src/lib/components/board/ImagePickerModal.svelte
+++ b/apps/picture/apps/web/src/lib/components/board/ImagePickerModal.svelte
@@ -5,9 +5,7 @@
import { canvasItems, addCanvasItem } from '$lib/stores/canvas';
import { getImages } from '$lib/api/images';
import { addBoardItem } from '$lib/api/boardItems';
- import { toastStore } from '@manacore/shared-ui';
- import Modal from '$lib/components/ui/Modal.svelte';
- import Button from '$lib/components/ui/Button.svelte';
+ import { toastStore, Modal, Button } from '@manacore/shared-ui';
import { MagnifyingGlass, Image as ImageIcon, Check } from '@manacore/shared-icons';
interface Props {
diff --git a/apps/picture/apps/web/src/lib/components/board/ImagePropertiesPanel.svelte b/apps/picture/apps/web/src/lib/components/board/ImagePropertiesPanel.svelte
index f2e914ef5..c73055c5a 100644
--- a/apps/picture/apps/web/src/lib/components/board/ImagePropertiesPanel.svelte
+++ b/apps/picture/apps/web/src/lib/components/board/ImagePropertiesPanel.svelte
@@ -1,8 +1,7 @@
-
-
diff --git a/apps/picture/apps/web/src/lib/components/ui/Card.svelte b/apps/picture/apps/web/src/lib/components/ui/Card.svelte
deleted file mode 100644
index 0d1ad28ad..000000000
--- a/apps/picture/apps/web/src/lib/components/ui/Card.svelte
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- {@render children()}
-
diff --git a/apps/picture/apps/web/src/routes/app/board/+page.svelte b/apps/picture/apps/web/src/routes/app/board/+page.svelte
index 3907416bf..174da2b48 100644
--- a/apps/picture/apps/web/src/routes/app/board/+page.svelte
+++ b/apps/picture/apps/web/src/routes/app/board/+page.svelte
@@ -14,10 +14,7 @@
removeBoardFromList,
} from '$lib/stores/boards';
import { getBoards, deleteBoard, duplicateBoard } from '$lib/api/boards';
- import { PageHeader } from '@manacore/shared-ui';
- import Button from '$lib/components/ui/Button.svelte';
- import Modal from '$lib/components/ui/Modal.svelte';
- import { toastStore } from '@manacore/shared-ui';
+ import { PageHeader, Button, Modal, toastStore } from '@manacore/shared-ui';
import { Plus, SquaresFour, Image, Trash } from '@manacore/shared-icons';
let loadingMore = $state(false);
diff --git a/docs/CONSOLIDATION_OPPORTUNITIES.md b/docs/CONSOLIDATION_OPPORTUNITIES.md
index ceb88a646..ba5c18920 100644
--- a/docs/CONSOLIDATION_OPPORTUNITIES.md
+++ b/docs/CONSOLIDATION_OPPORTUNITIES.md
@@ -12,7 +12,7 @@
| ~~**HOCH**~~ | ~~App Settings Stores~~ | ~~600-700 LOC~~ ✅ **323 LOC entfernt** | ~~Mittel~~ |
| **HOCH** | Main.ts/CORS Patterns | 1.800 LOC | Mittel |
| ~~**MITTEL**~~ | ~~TypeScript Configs~~ | ~~400 LOC~~ ✅ **~280 LOC entfernt** | ~~Niedrig~~ |
-| **MITTEL** | UI Component Cleanup | 400 LOC | Niedrig |
+| ~~**MITTEL**~~ | ~~UI Component Cleanup~~ | ~~400 LOC~~ ✅ **~74 LOC entfernt** | ~~Niedrig~~ |
| ~~**MITTEL**~~ | ~~Vite Configs~~ | ~~300 LOC~~ ✅ **~350 LOC entfernt** | ~~Niedrig~~ |
| ~~**MITTEL**~~ | ~~Navigation Stores~~ | ~~50 LOC~~ ✅ **~50 LOC entfernt** | ~~Niedrig~~ |
| ~~**NIEDRIG**~~ | ~~Drizzle Configs~~ | ~~200 LOC~~ ✅ **~160 LOC entfernt** | ~~Niedrig~~ |
@@ -238,17 +238,18 @@ export const { isSidebarMode, isNavCollapsed } = createSimpleNavigationStores({
---
-### 3.2 MITTEL: Sofort löschbare Duplikate (144 LOC)
+### ~~3.2 MITTEL: Sofort löschbare Duplikate~~ ✅ TEILWEISE ERLEDIGT
-**Picture App hat lokale Kopien von shared-ui Komponenten:**
+**Picture App - Status (29.01.2026):**
-| Datei | LOC | shared-ui Alternative |
-|-------|-----|----------------------|
-| `apps/picture/apps/web/src/lib/components/ui/Button.svelte` | 53 | `@manacore/shared-ui/Button` |
-| `apps/picture/apps/web/src/lib/components/ui/Input.svelte` | 70 | `@manacore/shared-ui/Input` |
-| `apps/picture/apps/web/src/lib/components/ui/Card.svelte` | 21 | `@manacore/shared-ui/Card` |
+| Datei | LOC | Status |
+|-------|-----|--------|
+| ~~`Button.svelte`~~ | ~~53~~ | ✅ Migriert zu `@manacore/shared-ui` |
+| ~~`Card.svelte`~~ | ~~21~~ | ✅ Gelöscht (unbenutzt) |
+| ~~`Input.svelte`~~ | ~~70~~ | ✅ Bereits vorher gelöscht |
-**Aktion:** Lösche lokale Dateien, importiere aus shared-ui.
+**Verbleibendes:**
+- `Modal.svelte` könnte migriert werden, aber hat unterschiedliche API (`open` vs `visible`)
---
@@ -430,7 +431,7 @@ export default createDrizzleConfig({ dbName: 'chat' });
| ~~Metrics zu shared-nestjs-metrics migrieren (6 Backends)~~ | ~~350~~ → **709** | ~~Niedrig~~ | ✅ Erledigt |
| ~~Picture Input.svelte löschen (unbenutzt)~~ | ~~70~~ | ~~Niedrig~~ | ✅ Erledigt |
| ~~Sleep-Duplikat entfernen~~ | ~~8~~ | ~~Minimal~~ | ✅ Erledigt |
-| Picture UI-Komponenten (Button/Card) | 74 | Niedrig | Offen |
+| ~~Picture UI-Komponenten (Button/Card)~~ | ~~74~~ → **74** | ~~Niedrig~~ | ✅ Erledigt |
| AppSlider Wrapper evaluieren (8 Apps) | - | Niedrig | Nicht nötig (sind Lokalisierungs-Wrapper) |
### Phase 2: Stores & Configs (3-5 Tage, ~1.500 LOC)