Files
Zumri-Backend/app/services/notification/notification-policy.service.js
Sathira Sri Sathara b6b345f245 feat: Implement Phase 2 cross-cutting services with email and notification enhancements
- Refactor email verification and password reset utilities to use new email service.
- Introduce email delivery queue and notification delivery model for better tracking.
- Enhance file validation and storage services for improved security and ownership management.
- Add cron job for cleaning inactive notifications with retention policy.
- Update document worker to handle document generation and storage more efficiently.
- Implement logging improvements in activity and log workers.
- Create comprehensive documentation for new API endpoints and services.
- Add unit tests for file validation and notification policies to ensure robustness.
2026-09-03 14:22:34 +05:30

8 lines
399 B
JavaScript

const MANDATORY_SECURITY_EVENTS = new Set(["LOGIN_OTP", "PASSWORD_RESET", "PASSWORD_CHANGED", "EMAIL_VERIFICATION"]);
const channelAllowed = ({ eventType, channel, profile }) => {
if (MANDATORY_SECURITY_EVENTS.has(eventType)) return true;
if (channel === "IN_APP") return true;
return profile?.notificationsEnabled !== false;
};
module.exports = { MANDATORY_SECURITY_EVENTS, channelAllowed };