fix: Compare→Pipeline flow, pipeline card navigation, remove floating AI button

- Remove CompareTray fixed bottom bar; replace with compare count badge on Vergleich nav item
- Pipeline cards redesigned to match search result card visual style (MatchScoreDisplay, type chip, stage chip, MapPin layout)
- CompareColumnHeader: redesigned with proper Details/Merken action buttons, clickable title
- AddToPipelineDialog now mounted on Compare page (was missing — bookmark had no effect)
- Pipeline card ExternalLink icon navigates to property detail page; detailPath prefers stable propertyId over volatile session matchId
- Add matchId field to PipelineItem domain; pipelineStore stores it on save
- All 8 mock pipeline items now have propertyId for reliable cross-session navigation
- Remove GlobalAIAssistantButton floating overlay (was blocking form submissions and clicks)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Sutter
2026-05-22 22:11:29 +02:00
parent 6a6ff7f2e2
commit 72e4f08900
7 changed files with 201 additions and 78 deletions
+10
View File
@@ -36,6 +36,8 @@ export const mockPipelineItems: PipelineItem[] = [
},
{
id: 'pl-003',
matchId: 'match-005',
propertyId: 'prop-003',
propertyAddress: 'Binzstrasse 23, Zürich-Binz',
title: 'Büro Binzstrasse 23',
location: 'Zürich, Binz',
@@ -65,6 +67,8 @@ export const mockPipelineItems: PipelineItem[] = [
},
{
id: 'pl-005',
matchId: 'match-060',
propertyId: 'prop-042',
propertyAddress: 'Technopark, Zürich-West',
title: 'DataCloud Systems AG',
location: 'Zürich-West / Technopark',
@@ -78,6 +82,8 @@ export const mockPipelineItems: PipelineItem[] = [
},
{
id: 'pl-006',
matchId: 'match-061',
propertyId: 'prop-013',
propertyAddress: 'Wankdorf Business Park, Bern',
title: 'Neubau Wankdorf Business',
location: 'Bern, Wankdorf',
@@ -91,6 +97,8 @@ export const mockPipelineItems: PipelineItem[] = [
},
{
id: 'pl-007',
matchId: 'match-015',
propertyId: 'prop-015',
propertyAddress: 'Stadthaus-Gasse 1, Bern Innenstadt',
title: 'Bürofläche Stadthaus Bern',
location: 'Bern Innenstadt',
@@ -107,6 +115,8 @@ export const mockPipelineItems: PipelineItem[] = [
},
{
id: 'pl-008',
matchId: 'match-002',
propertyId: 'prop-016',
propertyAddress: 'Güterstrasse 22, Basel',
title: 'Gewerbe Güterstrasse Basel',
location: 'Basel',