feat: Restructure Channel Configuration as separate section
✅ New Structure: Notifications ├── Staff Notifications (toggle only) ├── Customer Notifications (toggle only) ├── Channel Configuration (new section) │ ├── Email Configuration │ │ ├── Template Settings (colors, logo, branding) │ │ └── Connection Settings (wp_mail/SMTP) │ ├── Push Configuration │ │ ├── Template Settings (icon, badge, sound) │ │ └── Connection Settings (browser-native/FCM) │ └── Future: WhatsApp, Telegram, SMS (addons) └── Activity Log (coming soon) ✅ Separation of Concerns: - Staff/Customer pages: "What to send" (enable/disable) - Channel Config: "How to send" (global settings) ✅ Changes: - Created ChannelConfiguration.tsx (main page listing all channels) - Created EmailConfiguration.tsx (template + connection tabs) - Created PushConfiguration.tsx (template + connection tabs) - Updated Staff/Customer Channels tabs to toggle-only - Removed Configure buttons from Staff/Customer pages - Added links to Channel Configuration - Updated main Notifications page with new card - Added routing for all new pages ✅ Benefits: - Clear separation: enable vs configure - Global settings apply to both staff & customer - Scalable for addon channels - No confusion about where to configure - Consistent with app patterns 🎯 Ready for: WhatsApp, Telegram, SMS addons
This commit is contained in:
@@ -203,6 +203,9 @@ import SettingsLocalPickup from '@/routes/Settings/LocalPickup';
|
||||
import SettingsNotifications from '@/routes/Settings/Notifications';
|
||||
import StaffNotifications from '@/routes/Settings/Notifications/Staff';
|
||||
import CustomerNotifications from '@/routes/Settings/Notifications/Customer';
|
||||
import ChannelConfiguration from '@/routes/Settings/Notifications/ChannelConfiguration';
|
||||
import EmailConfiguration from '@/routes/Settings/Notifications/EmailConfiguration';
|
||||
import PushConfiguration from '@/routes/Settings/Notifications/PushConfiguration';
|
||||
import EmailCustomization from '@/routes/Settings/Notifications/EmailCustomization';
|
||||
import EditTemplate from '@/routes/Settings/Notifications/EditTemplate';
|
||||
import SettingsDeveloper from '@/routes/Settings/Developer';
|
||||
@@ -494,6 +497,9 @@ function AppRoutes() {
|
||||
<Route path="/settings/notifications" element={<SettingsNotifications />} />
|
||||
<Route path="/settings/notifications/staff" element={<StaffNotifications />} />
|
||||
<Route path="/settings/notifications/customer" element={<CustomerNotifications />} />
|
||||
<Route path="/settings/notifications/channels" element={<ChannelConfiguration />} />
|
||||
<Route path="/settings/notifications/channels/email" element={<EmailConfiguration />} />
|
||||
<Route path="/settings/notifications/channels/push" element={<PushConfiguration />} />
|
||||
<Route path="/settings/notifications/email-customization" element={<EmailCustomization />} />
|
||||
<Route path="/settings/notifications/edit-template" element={<EditTemplate />} />
|
||||
<Route path="/settings/brand" element={<SettingsIndex />} />
|
||||
|
||||
Reference in New Issue
Block a user