feat: Add tickets module and PayPal integration
Introduces a new 'Tickets' module for users to submit and manage issues within their condominium. This includes defining ticket types, statuses, priorities, and categories. Additionally, this commit integrates PayPal as a payment option for family fee payments, enabling users to pay directly via PayPal using their client ID. Key changes: - Added `Ticket` related types and enums. - Implemented `TicketService` functions for CRUD operations. - Integrated `@paypal/react-paypal-js` library. - Added `paypalClientId` to `AppSettings` and `Condo` types. - Updated `FamilyDetail` page to include PayPal payment option. - Added 'Segnalazioni' navigation link to `Layout`.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
|
||||
import React, { useEffect, useState } from 'react';
|
||||
import { NavLink, Outlet } from 'react-router-dom';
|
||||
import { Users, Settings, Building, LogOut, Menu, X, ChevronDown, Check, LayoutDashboard, Megaphone, Info, AlertTriangle, Hammer, Calendar } from 'lucide-react';
|
||||
import { Users, Settings, Building, LogOut, Menu, X, ChevronDown, Check, LayoutDashboard, Megaphone, Info, AlertTriangle, Hammer, Calendar, MessageSquareWarning } from 'lucide-react';
|
||||
import { CondoService } from '../services/mockDb';
|
||||
import { Condo, Notice } from '../types';
|
||||
|
||||
@@ -217,6 +217,11 @@ export const Layout: React.FC = () => {
|
||||
<Users className="w-5 h-5" />
|
||||
<span className="font-medium">Famiglie</span>
|
||||
</NavLink>
|
||||
|
||||
<NavLink to="/tickets" className={navClass} onClick={closeMenu}>
|
||||
<MessageSquareWarning className="w-5 h-5" />
|
||||
<span className="font-medium">Segnalazioni</span>
|
||||
</NavLink>
|
||||
|
||||
<NavLink to="/settings" className={navClass} onClick={closeMenu}>
|
||||
<Settings className="w-5 h-5" />
|
||||
@@ -250,4 +255,4 @@ export const Layout: React.FC = () => {
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user