/
githubmirror
/
novu
Обзор
Документация
Войти
/
githubmirror
/
novu
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
next
libs/application-generic/src/utils/subscriber.ts
27 строк
1 KB
Paweł Tymczuk
fix(api-service,application-generic): align subscriber create and update logic across v1, v2, trigger, and inbox fixes NV-6835 (#9435)
03 ноя 2025, 12:31
Не верифицирован
03 ноя 2025, 12:31
f2d6bce
Код
Авторство
О чём код?
import { SubscriberEntity } from '@novu/dal'; import { isEqual } from 'lodash'; export function subscriberNeedUpdate( subscriber: SubscriberEntity, subscriberPayload: Partial<Omit<SubscriberEntity, 'channels'>> ): boolean { const emailChanged = 'email' in subscriberPayload && subscriber?.email !== subscriberPayload?.email; const firstNameChanged = 'firstName' in subscriberPayload && subscriber?.firstName !== subscriberPayload?.firstName; const lastNameChanged = 'lastName' in subscriberPayload && subscriber?.lastName !== subscriberPayload?.lastName; const phoneChanged = 'phone' in subscriberPayload && subscriber?.phone !== subscriberPayload?.phone; const avatarChanged = 'avatar' in subscriberPayload && subscriber?.avatar !== subscriberPayload?.avatar; const localeChanged = 'locale' in subscriberPayload && subscriber?.locale !== subscriberPayload?.locale; const timezoneChanged = 'timezone' in subscriberPayload && subscriber?.timezone !== subscriberPayload?.timezone; const dataChanged = 'data' in subscriberPayload && !isEqual(subscriber?.data, subscriberPayload?.data); return ( emailChanged || firstNameChanged || lastNameChanged || phoneChanged || avatarChanged || localeChanged || timezoneChanged || dataChanged ); }