feat: Reorganize settings sidebar and add plan-based feature locking
- Add locked state to Plugins sidebar item with plan feature check - Create Branding section in settings with Appearance, Email Templates, Custom Domains - Split Domains page into Booking (URLs, redirects) and Custom Domains (BYOD, purchase) - Add booking_return_url field to Tenant model for customer redirects - Update SidebarItem component to support locked prop with lock icon - Move Email Templates from main sidebar to Settings > Branding - Add communication credits hooks and payment form updates - Add timezone fields migration and various UI improvements 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -56,6 +56,8 @@ export interface Business {
|
||||
logoUrl?: string;
|
||||
emailLogoUrl?: string;
|
||||
logoDisplayMode?: 'logo-only' | 'text-only' | 'logo-and-text'; // How to display branding
|
||||
timezone?: string; // IANA timezone (e.g., 'America/New_York')
|
||||
timezoneDisplayMode?: 'business' | 'viewer'; // How times are displayed to users
|
||||
whitelabelEnabled: boolean;
|
||||
plan?: 'Free' | 'Professional' | 'Business' | 'Enterprise';
|
||||
status?: 'Active' | 'Suspended' | 'Trial';
|
||||
@@ -68,6 +70,7 @@ export interface Business {
|
||||
initialSetupComplete?: boolean;
|
||||
customDomain?: string;
|
||||
customDomainVerified?: boolean;
|
||||
bookingReturnUrl?: string; // URL to redirect customers after booking completion
|
||||
stripeConnectAccountId?: string;
|
||||
websitePages?: Record<string, { name: string; content: PageComponent[] }>;
|
||||
customerDashboardContent?: PageComponent[];
|
||||
|
||||
Reference in New Issue
Block a user