UNPKG

@ideal-photography/shared

Version:

Shared MongoDB and utility logic for Ideal Photography PWAs: users, products, services, bookings, orders/cart, galleries, reviews, notifications, campaigns, settings, audit logs, minimart items/orders, and push notification subscriptions.

19 lines (16 loc) 726 B
import AlertBus from './AlertBus.js'; /** * Developer-facing helper for emitting alerts. * Usage: emitAlert('order.created', { orderId, userId }, { channels: { email: false } }) * * @param {string} trigger Canonical trigger e.g. booking.reminder.24h * @param {any} payload Arbitrary payload for handler processing * @param {object} [opts] Optional overrides (channels, priority, etc.) */ export function emitAlert(trigger, payload = {}, opts = {}) { if (!trigger || typeof trigger !== 'string') { throw new Error('emitAlert: trigger must be non-empty string'); } AlertBus.enqueue(trigger, payload, opts); } export { AlertBus as default };