Novu logoNovu
Back to all updates/

<Inbox /> Updates - v3.7.0

<Inbox /> Updates - v3.7.0

Contributors
  • Emil Pearce

    Emil Pearce

Details

Seen Status Tracking

Notifications now include seen status tracking with automatic visibility detection, timestamps, and API endpoints for filtering by seen/unseen state.

What's new:

- Automatic "seen" marking when notifications become visible in UI
- First-seen timestamp capture for each notification
- Bulk operations to mark individual or multiple notifications as seen
- New API endpoints for seen status management and filtering

Inbox Timezone Awareness

The Inbox component now delivers notifications based on each subscriber's timezone instead of the system timezone, improving the in-app experience for users across different locations.

Fixed: Dynamic Subscriber ID Handling

<Inbox/> and <Bell/> components now properly refresh when subscriberId changes from undefined to a valid value.

Fix details:

- Automatic session reinitialization on subscriberId changes
- Complete state refresh when subscriber context updates
- Applies to @novu/react, @novu/js, and @novu/react-native packages

Custom Data Filtering

Filter inbox notifications by message data attributes using the new data query parameter.

const queryParams = {
  data: JSON.stringify({ 
    'order_status': 'pending', 
    'priority': 'high' 
  })
}

Implementation:

- AND logic filtering - all specified key-value pairs must match
- Input validation and sanitization prevent injection attacks
- Graceful handling of malformed JSON input