diff --git a/src/poweredup-browser.ts b/src/poweredup-browser.ts index 0b8f9b7..d6c4c6a 100644 --- a/src/poweredup-browser.ts +++ b/src/poweredup-browser.ts @@ -96,6 +96,17 @@ export class PoweredUP extends EventEmitter { } + /** + * Retrieve a Powered UP Hub by primary MAC address. + * @method PoweredUP#getConnectedHubByPrimaryMACAddress + * @param {string} address + * @returns {Hub} + */ + public getConnectedHubByPrimaryMACAddress (address: string) { + return Object.keys(this._connectedHubs).map((uuid) => this._connectedHubs[uuid]).filter((hub) => hub.primaryMACAddress === address)[0]; + } + + /** * Retrieve a list of Powered UP Hub by name. * @method PoweredUP#getConnectedHubsByName diff --git a/src/poweredup-node.ts b/src/poweredup-node.ts index 9f3d469..fb9ea1d 100644 --- a/src/poweredup-node.ts +++ b/src/poweredup-node.ts @@ -114,6 +114,17 @@ export class PoweredUP extends EventEmitter { } + /** + * Retrieve a Powered UP Hub by primary MAC address. + * @method PoweredUP#getConnectedHubByPrimaryMACAddress + * @param {string} address + * @returns {Hub} + */ + public getConnectedHubByPrimaryMACAddress (address: string) { + return Object.keys(this._connectedHubs).map((uuid) => this._connectedHubs[uuid]).filter((hub) => hub.primaryMACAddress === address)[0]; + } + + /** * Retrieve a list of Powered UP Hub by name. * @method PoweredUP#getConnectedHubsByName