From a00a02a822411c56094b9abf176c1bf22b4e4c98 Mon Sep 17 00:00:00 2001 From: Till-JS <101404291+Till-JS@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:50:19 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20style(contacts):=20fix=20CSS=20v?= =?UTF-8?q?ariables=20and=20add=20modern=20contact=20pages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix CSS variable names to match shared-tailwind themes - --primary → --color-primary - --background → --color-background - --card → --color-surface - etc. - Add new contact page with modern design - Live avatar preview with initials - Section-based form with icons - Input fields with inline icons - Add contact detail page with view/edit modes - Quick actions (call, email, message) - Detail cards for contact info, work, address, notes - Favorite toggle button - Update central test user credentials (t@t.de) - Add port 5184 to CORS origins for contacts web app 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .env.development | 2 +- .../routes/(app)/contacts/[id]/+page.svelte | 1197 +++++++++++++++++ .../routes/(app)/contacts/new/+page.svelte | 668 +++++++++ .../shared-auth-ui/src/pages/LoginPage.svelte | 4 +- 4 files changed, 1868 insertions(+), 3 deletions(-) create mode 100644 apps/contacts/apps/web/src/routes/(app)/contacts/[id]/+page.svelte create mode 100644 apps/contacts/apps/web/src/routes/(app)/contacts/new/+page.svelte diff --git a/.env.development b/.env.development index 9e22ee861..307a3e47e 100644 --- a/.env.development +++ b/.env.development @@ -46,7 +46,7 @@ JWT_ACCESS_TOKEN_EXPIRY=15m JWT_REFRESH_TOKEN_EXPIRY=7d JWT_ISSUER=manacore JWT_AUDIENCE=manacore -CORS_ORIGINS=http://localhost:3000,http://localhost:3002,http://localhost:5173,http://localhost:5174,http://localhost:5175,http://localhost:5176,http://localhost:5177,http://localhost:5178,http://localhost:5179,http://localhost:5180,http://localhost:8081 +CORS_ORIGINS=http://localhost:3000,http://localhost:3002,http://localhost:5173,http://localhost:5174,http://localhost:5175,http://localhost:5176,http://localhost:5177,http://localhost:5178,http://localhost:5179,http://localhost:5180,http://localhost:5181,http://localhost:5182,http://localhost:5183,http://localhost:5184,http://localhost:5185,http://localhost:8081 CREDITS_SIGNUP_BONUS=150 CREDITS_DAILY_FREE=5 RATE_LIMIT_TTL=60 diff --git a/apps/contacts/apps/web/src/routes/(app)/contacts/[id]/+page.svelte b/apps/contacts/apps/web/src/routes/(app)/contacts/[id]/+page.svelte new file mode 100644 index 000000000..4e45e4f62 --- /dev/null +++ b/apps/contacts/apps/web/src/routes/(app)/contacts/[id]/+page.svelte @@ -0,0 +1,1197 @@ + + + + {contact ? getDisplayName() : 'Kontakt'} - Contacts + + +
+ +
+ + + + + +

{editing ? 'Bearbeiten' : 'Kontakt'}

+ {#if contact && !editing && !loading} +
+ + +
+ {:else} +
+ {/if} +
+ + {#if loading} +
+ + + + +

Lade Kontakt...

+
+ {:else if error && !contact} +
+
+ + + +
+

{error}

+ Zurück zur Liste +
+ {:else if contact} + {#if error} + + {/if} + + {#if editing} + + +
+
+
+ {editInitials()} +
+ +
+

{editDisplayName()}

+ {#if company || jobTitle} +

{[jobTitle, company].filter(Boolean).join(' bei ')}

+ {/if} +
+ +
{ e.preventDefault(); handleSave(); }} class="form"> + +
+
+
+ + + +
+

Name

+
+
+
+ + +
+
+ + +
+
+
+ + +
+
+
+ + + +
+

Kontakt

+
+
+ +
+ + + + +
+
+
+
+ +
+ + + + +
+
+
+ +
+ + + + +
+
+
+
+ + +
+
+
+ + + +
+

Arbeit

+
+
+ + +
+
+ + +
+
+ + +
+
+
+ + + + +
+

Adresse

+
+
+ + +
+
+
+ + +
+
+ + +
+
+
+ + +
+
+ + +
+
+
+ + + +
+

Notizen

+
+ +
+ + +
+ + +
+
+ {:else} + + +
+
+
+ {initials()} +
+ +
+

{getDisplayName()}

+ {#if contact.company || contact.jobTitle} +

+ {[contact.jobTitle, contact.company].filter(Boolean).join(' @ ')} +

+ {/if} +
+ + +
+ {#if contact.phone} + +
+ + + +
+ Anrufen +
+ {/if} + {#if contact.email} + +
+ + + +
+ E-Mail +
+ {/if} + {#if contact.mobile} + +
+ + + +
+ Nachricht +
+ {/if} +
+ + +
+ + {#if contact.email || contact.phone || contact.mobile} +
+
+
+ + + +
+

Kontakt

+
+
+ {#if contact.email} + + + + +
+ E-Mail + {contact.email} +
+
+ {/if} + {#if contact.phone} + + + + +
+ Telefon + {contact.phone} +
+
+ {/if} + {#if contact.mobile} + + + + +
+ Mobil + {contact.mobile} +
+
+ {/if} +
+
+ {/if} + + + {#if contact.company || contact.jobTitle} +
+
+
+ + + +
+

Arbeit

+
+
+ {#if contact.company} +
+ + + +
+ Firma + {contact.company} +
+
+ {/if} + {#if contact.jobTitle} +
+ + + +
+ Position + {contact.jobTitle} +
+
+ {/if} +
+
+ {/if} + + + {#if contact.street || contact.city || contact.postalCode || contact.country} +
+
+
+ + + + +
+

Adresse

+
+
+ {#if contact.street}
{contact.street}
{/if} + {#if contact.postalCode || contact.city} +
{[contact.postalCode, contact.city].filter(Boolean).join(' ')}
+ {/if} + {#if contact.country}
{contact.country}
{/if} +
+
+ {/if} + + + {#if contact.notes} +
+
+
+ + + +
+

Notizen

+
+
+ {contact.notes} +
+
+ {/if} +
+ {/if} + {/if} +
+ + diff --git a/apps/contacts/apps/web/src/routes/(app)/contacts/new/+page.svelte b/apps/contacts/apps/web/src/routes/(app)/contacts/new/+page.svelte new file mode 100644 index 000000000..a0af7798c --- /dev/null +++ b/apps/contacts/apps/web/src/routes/(app)/contacts/new/+page.svelte @@ -0,0 +1,668 @@ + + + + Neuer Kontakt - Contacts + + +
+ +
+ + + + + +

Neuer Kontakt

+
+
+ + +
+
+
+ {initials()} +
+ +
+

{displayName()}

+ {#if company || jobTitle} +

{[jobTitle, company].filter(Boolean).join(' bei ')}

+ {/if} +
+ + {#if error} + + {/if} + +
{ e.preventDefault(); handleSubmit(); }} class="form"> + +
+
+
+ + + +
+

Name

+
+
+
+ + +
+
+ + +
+
+
+ + +
+
+
+ + + +
+

Kontakt

+
+
+ +
+ + + + +
+
+
+
+ +
+ + + + +
+
+
+ +
+ + + + +
+
+
+
+ + +
+
+
+ + + +
+

Arbeit

+
+
+ + +
+
+ + +
+
+ + +
+
+
+ + + + +
+

Adresse

+
+
+ + +
+
+
+ + +
+
+ + +
+
+
+ + +
+
+ + +
+
+
+ + + +
+

Notizen

+
+ +
+ + +
+ + Abbrechen + + +
+
+
+ + diff --git a/packages/shared-auth-ui/src/pages/LoginPage.svelte b/packages/shared-auth-ui/src/pages/LoginPage.svelte index dc6e8fcfb..82d1523e4 100644 --- a/packages/shared-auth-ui/src/pages/LoginPage.svelte +++ b/packages/shared-auth-ui/src/pages/LoginPage.svelte @@ -226,8 +226,8 @@ } function fillDevCredentials() { - email = 'till.schneider@memoro.ai'; - password = 'Aa-12345678'; + email = 't@t.de'; + password = 'testtesttest'; }