Signal-Desktop/ts/util/formatBackupKeyForDisplay.std.ts
2026-06-09 22:43:36 -04:00

19 lines
477 B
TypeScript

// Copyright 2026 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
export function formatBackupKeyForDisplay(
backupKey: string,
{ convertAmbiguousChars }: { convertAmbiguousChars: boolean }
): string {
const spacedAndUppercase = backupKey
.toUpperCase()
.replace(/\s/g, '')
.replace(/.{4}(?=.)/g, '$& ');
if (convertAmbiguousChars) {
return spacedAndUppercase.replace(/O/g, '#').replace(/0/g, '=');
}
return spacedAndUppercase;
}