/** * Public key utilities for consistent handling of 64-char full keys * and 12-char prefixes throughout the application. * * MeshCore uses 64-character hex strings for public keys, but messages * and some radio operations only provide 12-character prefixes. This * module provides utilities for working with both formats consistently. */ /** Length of a public key prefix in hex characters */ const PUBKEY_PREFIX_LENGTH = 12; /** * Extract the 12-character prefix from a public key. * Works with both full keys and existing prefixes. */ function getPubkeyPrefix(key: string): string { return key.slice(0, PUBKEY_PREFIX_LENGTH); } /** * Get a display name for a contact, falling back to pubkey prefix. */ export function getContactDisplayName(name: string | null | undefined, pubkey: string): string { return name || getPubkeyPrefix(pubkey); }