From 82be8b88599ed2d4c11cbea47e4158b2aa4eba30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Sat, 7 Feb 2026 12:11:53 +0100 Subject: [PATCH] fix: resolve device listing bug after buttplug v10 upgrade Unwrap DeviceList wrapper message before passing to parseDeviceList(), and rename FeatureDescriptor to FeatureDescription to match Rust v10 serde output. Co-Authored-By: Claude Opus 4.6 --- packages/buttplug/src/client/ButtplugClient.ts | 2 +- packages/buttplug/src/client/ButtplugClientDeviceFeature.ts | 2 +- packages/buttplug/src/core/Messages.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/buttplug/src/client/ButtplugClient.ts b/packages/buttplug/src/client/ButtplugClient.ts index 9e11ed4..187cc2a 100644 --- a/packages/buttplug/src/client/ButtplugClient.ts +++ b/packages/buttplug/src/client/ButtplugClient.ts @@ -96,7 +96,7 @@ export class ButtplugClient extends EventEmitter { const leftoverMsgs = this._sorter.ParseIncomingMessages(msgs); for (const x of leftoverMsgs) { if (x.DeviceList !== undefined) { - this.parseDeviceList(x as Messages.DeviceList); + this.parseDeviceList(x.DeviceList!); break; } else if (x.ScanningFinished !== undefined) { this._isScanning = false; diff --git a/packages/buttplug/src/client/ButtplugClientDeviceFeature.ts b/packages/buttplug/src/client/ButtplugClientDeviceFeature.ts index dae0783..911b46b 100644 --- a/packages/buttplug/src/client/ButtplugClientDeviceFeature.ts +++ b/packages/buttplug/src/client/ButtplugClientDeviceFeature.ts @@ -81,7 +81,7 @@ export class ButtplugClientDeviceFeature { } public get featureDescriptor(): string { - return this._feature.FeatureDescriptor; + return this._feature.FeatureDescription; } public get featureIndex(): number { diff --git a/packages/buttplug/src/core/Messages.ts b/packages/buttplug/src/core/Messages.ts index fdfc688..6562f47 100644 --- a/packages/buttplug/src/core/Messages.ts +++ b/packages/buttplug/src/core/Messages.ts @@ -112,7 +112,7 @@ export interface ServerInfo { } export interface DeviceFeature { - FeatureDescriptor: string; + FeatureDescription: string; Output: { [key: string]: DeviceFeatureOutput }; Input: { [key: string]: DeviceFeatureInput }; FeatureIndex: number;