Notification
The Notification module provides a comprehensive system for displaying user notifications, alerts, and system messages. It supports various notification types with customizable styling and behavior.
Key Features
- Toast-style notifications with auto-dismissal
- Multiple notification types (alert, info, warning, error, success)
- Customizable positioning (top-right, top-left, bottom-right, etc.)
- Action buttons within notifications
- Sound notifications
- Theme support (light/dark)
- Notification stacking and management
Architecture / Behavior
The Notification module is implemented through the NotificationManager class which manages a collection of notifications in memory and renders them as DOM elements. It uses an EventEmitter pattern for event handling and supports both programmatic and automatic notification display.
API Usage
Initialization
The Notification module is initialized automatically when the chart is created and requires no additional configuration.
Methods
// Add a new notification
chart.addNotification({
id: 'alert-123',
type: 'alert',
title: 'Price Alert',
message: 'AAPL price crossed above $150',
duration: 5000,
dismissible: true,
actions: [
{
label: 'View Chart',
action: () => chart.setSymbol('AAPL')
}
]
});
// Remove a notification
chart.removeNotification('alert-123');
// Remove all notifications
chart.removeAllNotifications();
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
notification_position | string | 'top-right' | Notification position (top-right, top-left, bottom-right, bottom-left, center) |
notification_theme | string | 'light' | Theme (light/dark) |
notification_duration | number | 5000 | Default auto-dismiss duration in milliseconds |
Events
The Notification module emits events through the NotificationManager:
notificationAdded- When a new notification is addednotificationRemoved- When a notification is removedallNotificationsRemoved- When all notifications are removed
Customization
- Notification styling can be customized via CSS classes
- Animation effects can be customized using CSS transitions
- Sound notifications can be customized via SoundUtils
- Notification container can be customized via the
init()method
Use Cases
- System status notifications
- Trading alerts and confirmations
- Error reporting and recovery
- User feedback for actions
- Real-time market updates
Limitations
- No built-in notification persistence across page reloads
- Limited to browser-based notifications (no native OS notifications)
- No built-in notification history or logging
✅ Supported
- Comprehensive notification types and styling
- Action buttons and custom actions
- Auto-dismissal with configurable duration
- Theme support
❌ Not Supported
- Native OS notifications
- Notification scheduling
- Cross-device notification sync
⚠️ Partial / Custom
- Notification persistence requires custom implementation
- Advanced notification routing requires custom implementation
Integration
This module should be linked from:
- Charting section → Right Sidebar Panels
- Advanced Features → Modules
- API Reference → Notification Interface