* Enable lint rules for Promise handling to discourage misuse of them. Squashed all of Hugh's commits into one. --------- Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
24 lines
656 B
TypeScript
24 lines
656 B
TypeScript
/*
|
|
Copyright 2022-2024 New Vector Ltd.
|
|
|
|
SPDX-License-Identifier: AGPL-3.0-only
|
|
Please see LICENSE in the repository root for full details.
|
|
*/
|
|
|
|
/**
|
|
* Finds a media device with label matching 'deviceName'
|
|
* @param deviceName The label of the device to look for
|
|
* @param devices The list of devices to search
|
|
* @returns A matching media device or undefined if no matching device was found
|
|
*/
|
|
export function findDeviceByName(
|
|
deviceName: string,
|
|
kind: MediaDeviceKind,
|
|
devices: MediaDeviceInfo[],
|
|
): string | undefined {
|
|
const deviceInfo = devices.find(
|
|
(d) => d.kind === kind && d.label === deviceName,
|
|
);
|
|
return deviceInfo?.deviceId;
|
|
}
|