Commit graph

206 commits

Author SHA1 Message Date
386b710c53 removed legacy code 2026-01-29 10:06:10 +01:00
04590b78c9 fixed merge conflicts 2026-01-27 09:25:59 +01:00
ValueOn AG
4620cc2b99 fix/crosstable-trustee 2026-01-26 23:48:14 +01:00
ValueOn AG
891d1dc944 # PR-Bericht: frontend_nyla (feat/saas-multi-tenant-mandates)
**Ziel-Branch:** `int`
**Feature-Branch:** `feat/saas-multi-tenant-mandates`
**Stand:** Januar 2026

---

## Übersicht

| Metrik | Wert |
|--------|------|
| **Anzahl Commits** | 73 |
| **Geänderte Dateien** | 455 |
| **Zeilen hinzugefügt** | ~78'604 |
| **Zeilen gelöscht** | ~15'070 |

---

## Wichtigste inhaltliche Änderungen

### 1. SaaS Multi-Mandate & Mandatsverwaltung
- Mandaten-Navigation und Mandatenwechsel im UI
- Mandats-Einladungen und Benachrichtigungssystem
- Mandats-Rollen und -Berechtigungen (RBAC)
- Zugriff auf Seiten und Features mandatenbasiert
- UID-/ID-Mapping und Referenzen für Multi-Mandate angepasst

### 2. Admin-Bereich
- Admin-Seiten: Mandate, RBAC-Rollen, RBAC-Regeln, Team-Mitglieder
- Feature-Zugriff, Benutzer-Zugriff, Mandats-Rollen-Berechtigungen
- Einladungsverwaltung, Benutzer-Mandate, Benutzerübersicht
- RBAC-Export/Import

### 3. Trustee (Treuhand)-Feature
- Trustee-Views: Dashboard, Positionen, Dokumente, Verträge, Rollen, Organisationen, Access
- Expense-Import-View, Positions-Dokumente
- Trustee-API und Hooks (`useTrustee`, `useTrusteeOptions`)

### 4. Workflows & Automation
- Workflow-Playground mit zentralem State, Log-Polling, Lifecycle-Hooks
- Automations-Seite und Workflows-Seite
- Workflow-Statistiken, verbesserte Log-Darstellung
- Chatbot-Integration (Messages, Dateien, Lifecycle)

### 5. PEK (Projekte & Stammdaten)
- Isoliert in Folder

### 6. Authentifizierung & Nutzerverwaltung
- Magic-Link-Login
- Passwort-Reset (Request & Reset-Seiten)
- Registrierung und Login überarbeitet
- Erweiterter Auth-Hook und CSRF-Utilities

### 7. GDPR & Rechtliches
- GDPR-konforme Seite/Flows
- PowerOn Home, Datenschutz, AGB als statische HTML-Seiten

### 8. UI/UX & Architektur
- Neues Page-Management (`core/PageManager`) mit datengetriebenen Seiten
- FormGenerator: Aufteilung in Form, List, Table, Controls, Action-Buttons
- Server-seitige Filter/Sort für generische Tabellen, Scroll-Lock für Header
- Sidebar überarbeitet, Mandaten-Navigation, Tree-Navigation, UserSection
- Notification-Bell, Access-Rules-Editor
- Layouts: `MainLayout`, `FeatureLayout`; Seiten: `FeatureView`, `Dashboard`, `Settings`
- Diverse UI-Komponenten (Log, Messages, MapView, Tabs, Toast, ViewForm, WorkflowStatus, etc.)

### 9. Konfiguration & Deployment
- Konfiguration in `config/` (env, serverConfig, universalConfig)
- Scripts nach `scripts/` (server, deploy-server)
- GitHub-Workflows angepasst, Node-Version 20

### 10. Weitere Features & Fixes
- Speech-Integration (Prototyp), Speech-Seiten & -Transkripte
- Real-Estate/Privilege-Checker isoliert in Folder
- Althaus-Seite, PEK-Tabs umbenannt (Projects, Data Management)
- Einstellungen-Seite, Basedata-Seiten (Connections, Files, Prompts)
- Privilege-Caching und -Checker konsolidiert
- Diverse Build- und TypeScript-Fixes, Hotfixes

---

## Geänderte Dateien (nach Bereichen)

### Konfiguration & Projekt
- `.cursorignore`, `.gitignore`, `.github/workflows/*.yml`
- `README.md`, `index.html`, `package.json`, `package-lock.json`
- `vite.config.ts`
- `config/*` (neu), `.env.*` → `config/.env.*`
- `scripts/server.js`, `scripts/deploy-server.js`
- `public/`: Favicon, Logos, `poweron-home.html`, `poweron-privacy.html`, `poweron-terms.html`

### API-Schicht
- `src/api.ts` (erweitert)
- Neu: `src/api/attributesApi.ts`, `authApi.ts`, `automationApi.ts`, `chatbotApi.ts`, `connectionApi.ts`, `featuresApi.ts`, `fileApi.ts`, `mandateApi.ts`, `permissionApi.ts`, `promptApi.ts`, `rbacRulesApi.ts`, `roleApi.ts`, `trusteeApi.ts`, `userApi.ts`, `workflowApi.ts`

### Auth & Provider
- `src/providers/auth/AuthProvider.tsx`, `ProtectedRoute.tsx`, `authConfig.ts`
- `src/providers/language/LanguageContext.tsx`
- `src/auth/ProtectedRoute.tsx` (entfernt/ersetzt)

### Core: PageManager
- `src/core/PageManager/PageManager.tsx`, `PageRenderer.tsx`, `SidebarProvider.tsx`, `pageInterface.ts`
- `src/core/PageManager/data/pages/*`: admin (mandates, rbac-role, rbac-rules, team-members), automations, chatbot, connections, dashboard, files, pek, pek-tables, prompts, settings, speech, speech-transcripts, trustee (access, contracts, documents, organisations, positions, roles), workflows
- `src/config/pageRegistry.tsx`

### Komponenten (Auswahl)
- **AccessRules:** AccessLevelSelect, AccessRulesEditor, AccessRulesTable + Styles
- **FormGenerator:** FormGeneratorControls, FormGeneratorForm, FormGeneratorList, FormGeneratorTable, ActionButtons (Copy, Custom, Delete, Download, Edit, Remove, View)
- **Navigation:** MandateNavigation, TreeNavigation, UserSection + Styles
- **NotificationBell**, **ContentPreview** (inkl. Renderer)
- **Sidebar:** Sidebar, SidebarItem, SidebarSubmenu, SidebarUser, Styles, Logic, Types
- **Dashboard/DashboardChat:** teils entfernt/umgebaut (Playground-basiert)
- **Connections, Dateien, Mitglieder, PageManager, Popup, Prompts:** entfernt oder nach core/Pages migriert
- **Speech:** SpeechConfirmation, SpeechInfo, SpeechSettings, SpeechSignUp
- **TestSharepoint:** Tabelle, Logic, Interfaces
- **Workflows:** WorkflowsTable, workflowsLogic, workflowsTypes
- **UiComponents:** AutoScroll, Button, ConnectedFilesList, CopyableTruncatedValue, DragDropOverlay, DropdownSelect, InfoMessageOverlay, LocationInput, Log/LogMessage, MapView, Messages/ChatMessages, ParcelInfoPanel, Popup, Tabs, TextField, Toast, ViewForm, VoiceLanguageSelect, WorkflowStatus
- **settings:** settingsUser

### Hooks
- Neu/erweitert: `useAccessRules`, `useAdminMandates`, `useAdminRbacRoles`, `useAdminRbacRules`, `useAuthentication`, `useAutomations`, `useChatbot`, `useConnections`, `useCurrentInstance`, `useFeatureAccess`, `useFiles`, `useInstancePermissions`, `useInvitations`, `useMandateRoles`, `useMandates`, `useNavigation`, `useNotifications`, `usePek`, `usePekTables`, `usePermissions`, `usePlayground`, `usePrompts`, `useRbacExportImport`, `useResizablePanels`, `useRoles`, `useSettings`, `useTrustee`, `useTrusteeOptions`, `useUserMandates`, `useUsers`, `useWorkflows`
- Playground: `useDashboardInputForm`, `useDashboardLogTree`, `useWorkflowLifecycle`, `useWorkflowPolling`, `useWorkflows`, `playgroundUtils`
- Entfernt: `useSharePointTest`

### Seiten
- **Neu:** `Dashboard.tsx`, `FeatureView.tsx`, `GDPR.tsx`, `InvitePage.tsx`, `PasswordResetRequest.tsx`, `Reset.tsx`, `Settings.tsx`
- **Login, Register:** überarbeitet
- **Home:** Connections, Dashboard, Dateien, Einstellungen, Prompts, TeamBereich, TestSharepoint, Workflows entfernt/ausgelagert; `Home.tsx` angepasst
- **admin/:** AdminFeatureAccessPage, AdminFeatureInstanceUsersPage, AdminFeatureRolesPage, AdminInvitationsPage, AdminMandateRolePermissionsPage, AdminMandateRolesPage, AdminMandatesPage, AdminUserAccessOverviewPage, AdminUserMandatesPage, AdminUsersPage
- **basedata/:** ConnectionsPage, FilesPage, PromptsPage
- **migrate/:** ChatbotPage, PekPage, SpeechPage
- **views/trustee/:** TrusteeDashboardView, TrusteeDocumentsView, TrusteeExpenseImportView, TrusteeInstanceRolesView, TrusteePositionDocumentsView, TrusteePositionsView
- **workflows/:** AutomationsPage, PlaygroundPage, WorkflowsPage

### Contexts, Stores, Utils, Locales
- **Contexts:** FileContext, PekContext, PekTablesContext, ToastContext, WorkflowSelectionContext
- **Stores:** featureStore
- **Utils:** attributeTypeMapper, csrfUtils, privilegeCheckers, time, userCache
- **Types:** mandate.ts
- **Locales:** de.ts, en.ts, fr.ts (erweitert)

### Styles & Assets
- `src/styles/`: buttons.css, pages.module.css, themes (dark, light), assets/bg.jpg
- `src/assets/styles/light.css` entfernt
- `src/index.css`, `src/main.tsx`

### Dokumentation
- `docs/DASHBOARD_LOG_POLLING_DOCUMENTATION.md` (neu)
- `documentation/sidebar.md` (entfernt)
- `.cursor/plans/implement_rbac_roles_page_*.plan.md` (Cursor-Plan)

---

## Commit-Historie (chronologisch)

| Datum | Commit | Nachricht |
|-------|--------|-----------|
| 2025-09-10 | 0bd6091 | updated cofig logic |
| 2025-09-15 | 9fc33c7 | feat: added speech integration prototype |
| 2025-09-16 | 9e7c3b2 | implemented feedback |
| 2025-09-18 | 41aa0fd | minor bugfixing |
| 2025-10-01 | 05f51c4 | working on action button |
| 2025-10-08 | b238ab8 | fixed action buttons |
| 2025-10-12 | 6988984 | finished files page |
| 2025-10-12 | 9519fed | pushing to int |
| 2025-10-12 | 8a0e5f8 | fix: ready for build |
| 2025-12-01 | 101b306 | added PEK pages |
| 2025-12-01 | aa34508 | updated the table view |
| 2025-12-15 | aaf64b8 | resumed backend integration, RBAC focus |
| 2025-12-15 | f8d5c0a | fix: geolinien outline |
| 2025-12-15 | 78889bf | fix: collapsed sidebar |
| 2025-12-22 | bfbe3f8 | PEK updates |
| 2025-12-30 | cf76e89 | pek update |
| 2025-12-30 | 94e8681 | fix: centralized workflow state management on dashboard page |
| 2025-12-30 | 14273c2 | Merge PR #2 feat/real-estate |
| 2025-12-30 | d3c950d | fix: consolidated privilegechecker and usepermissions hook |
| 2026-01-02 | 641930b | updated log rendering |
| 2026-01-02 | 401c088 | fix: fixed styling of log messages |
| 2026-01-02 | ae6a634 | feature: show workflow stats |
| 2026-01-05 | c76e7ef | feat: completely build up althaus page |
| 2026-01-05 | 079d398 | fix: build errors removed |
| 2026-01-05 | 6315c9a | fix: constant reload |
| 2026-01-05 | 6c90a00 | fix: another build error |
| 2026-01-05 | 05508cc | fix: privilege caching led to no pages showing |
| 2026-01-05 | 826eead | fix: added more rolelabel logging |
| 2026-01-05 | 48754d6 | fix: typescript build errors |
| 2026-01-05 | fc55a25 | fix: added more rolelabel logging |
| 2026-01-05 | 5f22c7b | fix: added more rolelabel logging |
| 2026-01-05 | eb280db | feat: completely build up althaus page |
| 2026-01-05 | c80ad96 | Rename PEK tabs: Projects and Data Management |
| 2026-01-05 | dd79895 | Merge int |
| 2026-01-05 | b0826a3 | feat: weiter chatbot implementiert |
| 2026-01-05 | 23508ea | fix: merge conflicts |
| 2026-01-05 | 350cc7b | fix: geolinien outline |
| 2026-01-05 | 407a3c4 | PEK updates |
| 2026-01-05 | c5a82dd | feat: multiselect parcels and create projects |
| 2026-01-09 | 836b803 | fix: fixed and finished chatbot integration |
| 2026-01-09 | 3df83f0 | fix: button fix |
| 2026-01-12 | 7d794ef | Merge feat/chatbot into int |
| 2026-01-12 | 5808bd4 | fixed merge conflicts |
| 2026-01-12 | 239fd32 | fix: readded deleted code, fixed build |
| 2026-01-12 | be3844f | feat: privilege checker into real estate pages |
| 2026-01-12 | eaf69f4 | feat/fix: added admin pages, fixed sidebar width |
| 2026-01-12 | 64d14af | feat: finished admin pages |
| 2026-01-12 | acdcf2c | fix: moved team-members file to correct place |
| 2026-01-12 | 06ffce8 | fix: fixed build |
| 2026-01-13 | 9fc0c9b | user magic link implemented |
| 2026-01-13 | 7d2808d | hotfix |
| 2026-01-13 | b2c38e7 | Fixed UI issues |
| 2026-01-13 | 71666d2 | hotfixes |
| 2026-01-13 | de98b86 | hotfixes |
| 2026-01-13 | c5d60c4 | node-version 20 |
| 2026-01-13 | 2b96ab7 | fixed trustee access |
| 2026-01-14 | 54ba020 | fix: fixed formgenerator layout and design |
| 2026-01-17 | 8033ca9 | prepared multimandate |
| 2026-01-20 | 70c84dd | revised ui components |
| 2026-01-21 | 7f07a55 | saas mandates core done |
| 2026-01-21 | 537b624 | fixed uid mapping to id |
| 2026-01-21 | d387322 | serverside filter and sort for form generic |
| 2026-01-21 | 34d4646 | generic form table scroll lock for headers |
| 2026-01-21 | f99b6b7 | saas multi mandate tested |
| 2026-01-22 | b207c0c | dyn options in api |
| 2026-01-23 | dc4b475 | refactored pages ui access with saas mandates |
| 2026-01-24 | cc8770d | reference fixes |
| 2026-01-24 | 41e02b5 | fixed automation and trustee |
| 2026-01-24 | 5952074 | access rules editor enhanced |
| 2026-01-24 | 6a406d8 | fixes |
| 2026-01-25 | bf4ddc6 | rbac rules tested and fixed |
| 2026-01-25 | 2b220fe | gpdr compliancy implemented |
| 2026-01-26 | 28af4cb | mandate invitation and notification system |
| 2026-01-26 | f41e6d0 | fixed ai call end to end with saas multimandate |

---

## Hinweise für das PR-Review

1. **Breite Änderung:** Viele Dateien und neue Strukturen; Fokus auf PageManager, Admin, Trustee und Workflow/Playground empfohlen.
2. **Auth & Mandate:** Magic Link, Reset-Flow und Mandatenwechsel sollten manuell geprüft werden.
3. **RBAC:** Admin RBAC-Seiten und Access Rules Editor sind kritisch für Berechtigungen.
4. **Build & Lint:** `npm run build` und Linter im CI prüfen.
5. **Doku:** `docs/DASHBOARD_LOG_POLLING_DOCUMENTATION.md` für Playground/Logging konsultieren.

---

*Bericht erstellt aus der Git-Historie `main..HEAD` im Repository `frontend_nyla` (Branch `feat/saas-multi-tenant-mandates`).*
2026-01-26 23:39:53 +01:00
ValueOn AG
f41e6d0088 fixed ai call end to end with saas multimandate 2026-01-26 23:26:34 +01:00
1cb9503c93 fix: build 2026-01-26 10:55:16 +01:00
b142b93666 fix: smaller UI fixes 2026-01-26 10:46:38 +01:00
ValueOn AG
28af4cb068 mandate invitation and notification system 2026-01-26 01:29:24 +01:00
ValueOn AG
2b220fe816 gpdr compliancy implemented 2026-01-25 23:57:47 +01:00
ValueOn AG
bf4ddc6fd5 rbac rules tested and fixed 2026-01-25 03:01:07 +01:00
ValueOn AG
6a406d885d fixes 2026-01-24 18:01:35 +01:00
ValueOn AG
5952074626 access rules editor enhanced 2026-01-24 09:58:04 +01:00
ValueOn AG
41e02b5a2c fixed automation and trustee 2026-01-24 02:06:54 +01:00
ValueOn AG
cc8770dec3 reference fixes 2026-01-24 00:42:13 +01:00
ValueOn AG
dc4b475728 refactored pages ui access with saas mandates 2026-01-23 21:05:36 +01:00
ValueOn AG
b207c0cc5b dyn options in api 2026-01-22 18:52:07 +01:00
ValueOn AG
f99b6b7604 saas multi mandate tested 2026-01-21 21:19:55 +01:00
ValueOn AG
34d4646667 generic form table scroll lock for headers 2026-01-21 16:30:22 +01:00
ValueOn AG
d3873223f5 serverside filter and sort for form generic 2026-01-21 15:57:20 +01:00
3827d8cc07 fix: sidebar is tree instead of two levels only 2026-01-21 11:26:22 +01:00
ValueOn AG
537b624c59 fixed uid mapping to id 2026-01-21 10:59:34 +01:00
322ab7b890 fix:deleted legacy code 2026-01-21 09:30:18 +01:00
a06fe0c793 fix: form generator table border adjusted to table height 2026-01-21 09:04:43 +01:00
ValueOn AG
7f07a55c91 saas mandates core done 2026-01-21 00:32:52 +01:00
ValueOn AG
70c84dd897 revised ui components 2026-01-20 00:56:00 +01:00
ValueOn AG
8033ca9207 prepared multimandate 2026-01-17 02:18:24 +01:00
54ba020c45 fix: fixed formgenerator layout and design 2026-01-14 07:54:06 +01:00
ValueOn AG
2b96ab7b66 fixed trustee access 2026-01-13 23:16:37 +01:00
ValueOn AG
c5d60c4c82 node-version 20 2026-01-13 21:27:34 +01:00
ValueOn AG
de98b863a0 hotfixes 2026-01-13 21:21:59 +01:00
ValueOn AG
71666d2891 hotfixes 2026-01-13 21:17:27 +01:00
ValueOn AG
b2c38e75bf Fixed UI issues:
Data: roles & rules: fixed id and pydantic handling ui+gateway
Table generic: Fixed column width changing with persistent user width not overwritten by default in the session
Table generic: fixed active item in navbar working with subpaths
Table generic: fixed sort and pagination with modified routes
Table generic: enhanced logic to select page directly and bar on top of the table
Table generic: Always load data with pagination, fixed page counter (not updated), enhanced pagination to access pages directly
Table generic: Filter function enhanced directly as dropdown in column headers, sorting enhanced to have cascading sorting
Table generic: Added multilingual to AttributeType and handle it in the form renderer, removed explicit field definitions from team-members.ts and prompts.ts to use dynamic generation from backend attributes strictly
Table generic: Inline editting of checkboxes and boolean values
Table generig: Only generic logic, no explicit logic (e.g. id's)
Table generic: Removed all specific parts like action icons. To e a parameter by calling instance.
2026-01-13 20:01:27 +01:00
ValueOn AG
7d2808d22e hotfix 2026-01-13 07:25:32 +01:00
ValueOn AG
9fc0c9bc4c user magic link inmplemented 2026-01-13 00:27:09 +01:00
06ffce8984 fix: fixed build 2026-01-12 13:33:51 +01:00
acdcf2c476 fix:moved team-members file to correct place 2026-01-12 13:30:24 +01:00
64d14af8d5 feat:finished admin pages 2026-01-12 13:23:11 +01:00
eaf69f41e9 feat/fix:added admin pages, fixed sidebar width 2026-01-12 12:21:22 +01:00
be3844f33e feat: implemented priviledge checker into real estate pages 2026-01-12 11:44:10 +01:00
239fd328bc fix:readded deleted code, fixed build 2026-01-12 09:15:07 +01:00
5808bd4bee fixed merge conflicts 2026-01-12 07:42:31 +01:00
7d794ef4cd Merge branch 'feat/chatbot' into int 2026-01-12 07:38:16 +01:00
3df83f04a4 fix:button fix 2026-01-09 14:55:26 +01:00
836b8032ae fix:fixed and finished chatbot integration 2026-01-09 09:22:28 +01:00
c5a82dd518 feat:multiselect parcels and create projects 2026-01-05 18:04:36 +01:00
407a3c4b82 PEK updates 2026-01-05 15:20:23 +01:00
350cc7bddf fix:geolinien outline 2026-01-05 15:19:04 +01:00
23508eaa74 fix:merge conflicts 2026-01-05 15:17:48 +01:00
b0826a3f9a feat:weiter chatbot implementiert 2026-01-05 15:12:47 +01:00
Stephan Schellworth
dd79895c97 Merge branch 'int' of https://github.com/valueonag/frontend_nyla into int 2026-01-05 08:13:03 +01:00