Commit Graph

27 Commits

Author SHA1 Message Date
David
5c7834c7e4 fix licensing 2026-01-20 11:28:54 +01:00
David
905a56888a fix: implement password change functionality in profile page
Fix password change feature that was previously non-functional:
- Add changePassword function in frontend API (src/lib/api/users.ts)
- Update API endpoint to match backend: PATCH /api/v1/users/me/password
- Connect profile page to real API instead of mock implementation
- Export changePassword function from API index

The backend endpoint was already implemented but frontend was using
a placeholder Promise.resolve(). Now properly calls the backend API.

Refs: apps/frontend/app/dashboard/profile/page.tsx:87-105

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-12 17:56:10 +01:00
David
a1e255e816 fix v1.0.0
Some checks failed
CI/CD Pipeline / Discord Notification (Failure) (push) Blocked by required conditions
CI/CD Pipeline / Integration Tests (push) Blocked by required conditions
CI/CD Pipeline / Deployment Summary (push) Blocked by required conditions
CI/CD Pipeline / Deploy to Portainer (push) Blocked by required conditions
CI/CD Pipeline / Discord Notification (Success) (push) Blocked by required conditions
CI/CD Pipeline / Backend - Build, Test & Push (push) Failing after 1m20s
CI/CD Pipeline / Frontend - Build, Test & Push (push) Has been cancelled
2025-12-23 11:49:57 +01:00
David
21d7044a61 fix notifications 2025-12-22 12:32:32 +01:00
David
840ad49dcb fix bookings 2025-12-18 15:33:55 +01:00
David
bd81749c4a fix notifications 2025-12-16 14:15:06 +01:00
David
eab3d6f612 feature dashboard 2025-12-16 00:26:03 +01:00
David
71541c79e7 fix pagination 2025-12-15 17:14:56 +01:00
David
55e44ab21c fix carte 2025-12-03 22:24:48 +01:00
David
7fc43444a9 fix search 2025-12-03 21:39:50 +01:00
David
c76f908d5c fix error get organisation 2025-11-30 18:39:08 +01:00
David
cca6eda9d3 send invitations 2025-11-30 13:39:32 +01:00
David
a34c850e67 fix register 2025-11-29 12:50:02 +01:00
David
27caca0734 feat: add CSV rates CRUD management to frontend dashboard
Some checks failed
CI/CD Pipeline / Backend - Build, Test & Push (push) Failing after 1m38s
CI/CD Pipeline / Frontend - Build, Test & Push (push) Successful in 25m29s
CI/CD Pipeline / Integration Tests (push) Has been skipped
CI/CD Pipeline / Deployment Summary (push) Has been skipped
CI/CD Pipeline / Discord Notification (Success) (push) Has been skipped
CI/CD Pipeline / Discord Notification (Failure) (push) Has been skipped
Added comprehensive CSV rates management interface to the frontend dashboard with full CRUD operations.

## Backend Changes
- Added `GET /api/v1/admin/csv-rates/files` endpoint to list all uploaded CSV files with metadata
- Added `DELETE /api/v1/admin/csv-rates/files/:filename` endpoint to delete CSV files and their configurations
- Both endpoints provide frontend-compatible responses with file info (filename, size, rowCount, uploadedAt)
- File deletion includes both filesystem cleanup and database configuration removal

## Frontend Changes
- Added "CSV Rates" navigation item to dashboard sidebar (ADMIN only)
- Moved CSV rates page from `/app/admin/csv-rates` to `/app/dashboard/admin/csv-rates` for proper dashboard integration
- Updated CsvUpload component to include required `companyEmail` field
- Component now properly validates and sends all required fields (companyName, companyEmail, file)
- Enhanced form validation with email input type

## Features
-  Upload CSV rate files with company name and email
-  List all uploaded CSV files with metadata (filename, size, row count, upload date)
-  Delete CSV files with confirmation dialog
-  Real-time file validation (format, size limit 10MB)
-  Auto-refresh after successful operations
-  ADMIN role-based access control
-  Integrated into dashboard navigation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 19:11:37 +01:00
David
e6b9b42f6c fix
Some checks failed
CI/CD Pipeline - Xpeditis PreProd / Backend - Build & Test (push) Failing after 5m51s
CI/CD Pipeline - Xpeditis PreProd / Backend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Frontend - Build & Test (push) Successful in 10m57s
CI/CD Pipeline - Xpeditis PreProd / Frontend - Docker Build & Push (push) Failing after 12m28s
CI/CD Pipeline - Xpeditis PreProd / Deploy to PreProd Server (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Run Smoke Tests (push) Has been skipped
2025-11-13 00:15:45 +01:00
David
f4df7948a1 fix
Some checks failed
CI/CD Pipeline - Xpeditis PreProd / Backend - Build & Test (push) Failing after 5m57s
CI/CD Pipeline - Xpeditis PreProd / Backend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Frontend - Build & Test (push) Failing after 6m0s
CI/CD Pipeline - Xpeditis PreProd / Frontend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Deploy to PreProd Server (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Run Smoke Tests (push) Has been skipped
2025-11-12 19:35:13 +01:00
David
890bc189ee fix v0.2
Some checks failed
CI/CD Pipeline - Xpeditis PreProd / Frontend - Build & Test (push) Failing after 5m31s
CI/CD Pipeline - Xpeditis PreProd / Frontend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Backend - Build & Test (push) Failing after 5m42s
CI/CD Pipeline - Xpeditis PreProd / Backend - Docker Build & Push (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Deploy to PreProd Server (push) Has been skipped
CI/CD Pipeline - Xpeditis PreProd / Run Smoke Tests (push) Has been skipped
2025-11-12 18:00:33 +01:00
David
a9bbbede4a fix auth reload 2025-11-05 22:49:25 +01:00
David
15766af3b5 feature search 2025-11-04 22:52:42 +01:00
David
2069cfb69d feature 2025-11-04 07:30:15 +01:00
David
c2df25a169 fix landing page , login , register 2025-10-31 12:38:05 +01:00
David
36b1d58df6 fix assets 2025-10-30 11:41:07 +01:00
David
63be7bc6eb add front api connection 2025-10-30 00:47:18 +01:00
David
436a406af4 feature csv done 2025-10-24 16:01:09 +02:00
David-Henri ARNAUD
07b51987f2 feat: GDPR Compliance - Data privacy, consent & user rights (Phase 4)
🛡️ GDPR Compliance Implementation
Comprehensive data protection features compliant with GDPR Articles 7, 15-21

📋 Legal & Consent Pages (Frontend)
- Terms & Conditions: 15 comprehensive sections covering service usage, liabilities, IP rights, dispute resolution
- Privacy Policy: 14 sections with explicit GDPR rights (Articles 15-21), data retention, international transfers
- Cookie Consent Banner: Granular consent management (Essential, Functional, Analytics, Marketing)
  - localStorage persistence
  - Google Analytics integration with consent API
  - User-friendly toggle controls

🔒 GDPR Backend API
6 REST endpoints for data protection compliance:
- GET /gdpr/export: Export user data as JSON (Article 20 - Right to Data Portability)
- GET /gdpr/export/csv: Export data in CSV format
- DELETE /gdpr/delete-account: Account deletion with email confirmation (Article 17 - Right to Erasure)
- POST /gdpr/consent: Record consent with audit trail (Article 7)
- POST /gdpr/consent/withdraw: Withdraw consent (Article 7.3)
- GET /gdpr/consent: Get current consent status

🏗️ Architecture
Backend (4 files):
  - gdpr.service.ts: Data export, deletion logic, consent management
  - gdpr.controller.ts: 6 authenticated REST endpoints with Swagger docs
  - gdpr.module.ts: NestJS module configuration
  - app.module.ts: Integration with main application

Frontend (3 files):
  - pages/terms.tsx: Complete Terms & Conditions (liability, IP, indemnification, governing law)
  - pages/privacy.tsx: GDPR-compliant Privacy Policy (data controller, legal basis, user rights)
  - components/CookieConsent.tsx: Interactive consent banner with preference management

⚠️ Implementation Notes
- Current version: Simplified data export (user data only)
- Full anonymization: Pending proper ORM entity schema definition
- Production TODO: Implement complete anonymization for bookings, audit logs, notifications
- Security: Email confirmation required for account deletion
- All endpoints protected by JWT authentication

📊 Compliance Coverage
 Article 7: Consent conditions & withdrawal
 Article 15: Right of access
 Article 16: Right to rectification (via user profile)
 Article 17: Right to erasure ("right to be forgotten")
 Article 20: Right to data portability
 Cookie consent with granular controls
 Privacy policy with data retention periods
 Terms & Conditions with liability disclaimers

🎯 Phase 4 High Priority Status
-  Compliance & Privacy (GDPR): COMPLETE
-  Security Audit: Pending OWASP ZAP scan
-  Execute Tests: Pending K6, Playwright, Postman runs
-  Production Deployment: Pending infrastructure setup

Total: 7 new files, ~1,200 LoC
Build Status:  Backend compiles successfully (0 errors)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-14 19:13:19 +02:00
David-Henri ARNAUD
c03370e802 fix: resolve all test failures and TypeScript errors (100% test success)
 Fixed WebhookService Tests (2 tests failing → 100% passing)
- Increased timeout to 20s for retry test (handles 3 retries × 5s delays)
- Fixed signature verification test with correct 64-char hex signature
- All 7 webhook tests now passing

 Fixed Frontend TypeScript Errors
- Updated tsconfig.json with complete path aliases (@/types/*, @/hooks/*, @/utils/*, @/pages/*)
- Added explicit type annotations in useBookings.ts (prev: Set<string>)
- Fixed BookingFilters.tsx with proper type casts (s: BookingStatus)
- Fixed CarrierMonitoring.tsx with error callback types
- Zero TypeScript compilation errors

📊 Test Results
- Test Suites: 8 passed, 8 total (100%)
- Tests: 92 passed, 92 total (100%)
- Coverage: ~82% for Phase 3 services, 100% for domain entities

📝 Documentation Updated
- TEST_COVERAGE_REPORT.md: Updated to reflect 100% success rate
- IMPLEMENTATION_SUMMARY.md: Marked all issues as resolved

🎯 Phase 3 Status: COMPLETE
- All 13/13 features implemented
- All tests passing
- Production ready

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-14 14:48:50 +02:00
David-Henri ARNAUD
c5c15eb1f9 feature phase 3 2025-10-13 17:54:32 +02:00