signal-desktop/ts/util/getSenderIdentifier.ts
automated-signal 151ca7162f
Fix attribution of chat updates on import
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
2025-01-22 07:44:00 -10:00

23 lines
690 B
TypeScript

// Copyright 2023 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import type { ReadonlyMessageAttributesType } from '../model-types.d';
export function getSenderIdentifier({
sent_at: sentAt,
source,
sourceServiceId,
sourceDevice,
}: Pick<
ReadonlyMessageAttributesType,
'sent_at' | 'source' | 'sourceServiceId' | 'sourceDevice'
>): string {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const conversation = window.ConversationController.lookupOrCreate({
e164: source,
serviceId: sourceServiceId,
reason: `MessageModel.getSenderIdentifier(${sentAt})`,
})!;
return `${conversation?.id}.${sourceDevice}-${sentAt}`;
}