signal-desktop/ts/util/keyboard.ts

22 lines
684 B
TypeScript
Raw Normal View History

2023-04-20 17:03:43 +00:00
// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import type { LocaleDirection } from '../../app/locale';
export type LogicalDirection = 'start' | 'end';
export type HorizontalArrowKey = 'ArrowLeft' | 'ArrowRight';
const logicalArrows: Record<
LogicalDirection,
Record<LocaleDirection, HorizontalArrowKey>
> = {
start: { ltr: 'ArrowLeft', rtl: 'ArrowRight' },
end: { ltr: 'ArrowRight', rtl: 'ArrowLeft' },
};
export function arrow(logicalDirection: LogicalDirection): HorizontalArrowKey {
const localeDirection =
window.SignalContext.getResolvedMessagesLocaleDirection();
2023-04-20 17:03:43 +00:00
return logicalArrows[logicalDirection][localeDirection];
}