INSIGHT-MVP/packages/frontend
Thomas Reitz 30c4b208d9 feat(crm): Phase 3 MS365 Frontend — Integrationen + Kontakt-Tabs
- Neuer "Integrationen"-Tab in ProfilePage mit "Microsoft 365 verbinden"-
  Button, OAuth-Callback-Handling (?integration=...&status=...), Trennen-Button
- EmailsTab, CalendarTab, TasksTab fuer ContactDetailPage (via MS Graph Proxy)
- useIntegrations, useDisconnectM365, useContactEmails/Calendar/Tasks Hooks
- integrationsApi + graphApi in crm/api.ts
- M365Email, M365CalendarEvent, M365Task, UserIntegration Types in crm/types.ts
- Tabs nur sichtbar wenn Kontakt eine E-Mail-Adresse hat; ohne Verbindung Connect-Button

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-12 22:48:43 +01:00
..
src feat(crm): Phase 3 MS365 Frontend — Integrationen + Kontakt-Tabs 2026-03-12 22:48:43 +01:00
.dockerignore feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
Dockerfile feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
index.html feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
nginx.conf feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
package-lock.json feat(crm): Kanban-Board mit Drag & Drop (Phase 3.0) 2026-03-12 22:29:01 +01:00
package.json feat(crm): Kanban-Board mit Drag & Drop (Phase 3.0) 2026-03-12 22:29:01 +01:00
tsconfig.json feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
vite-env.d.ts feat: implement Sprint 1 Alpha - full stack with Docker, NestJS, React 2026-03-08 15:33:36 +01:00
vite.config.ts feat(crm): Phase 2.1 Custom Fields — backend + frontend integration 2026-03-12 18:22:57 +01:00