UNPKG

@ginden/blinkstick-v2

Version:
23 lines 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findFirst = findFirst; const discovery_filter_1 = require("../discovery-filter"); const find_raw_devices_1 = require("./find-raw-devices"); const lib_usb_transport_1 = require("../../transport/lib-usb-transport"); const create_blinkstick_libusb_1 = require("./create-blinkstick-libusb"); /** * @summary Find first attached BlinkStick using libusb and create a BlinkStickLibUsb instance. * @category Discovery */ async function findFirst(filter = () => true) { const actualFilter = (0, discovery_filter_1.createDiscoverFilterFn)(filter); const rawDevices = (0, find_raw_devices_1.findRawDevices)(); for (const rawDevice of rawDevices) { const blinkStick = await lib_usb_transport_1.LibUsbTransport.calculateMinimalDeviceInfo(rawDevice); if (actualFilter(blinkStick)) { return (0, create_blinkstick_libusb_1.createBlinkstickLibUsb)(rawDevice); } } throw new Error('No BlinkStick found'); } //# sourceMappingURL=find-first.js.map