buttplug 3.0.0-alpha.2 → 3.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -55,7 +55,9 @@ export declare class ButtplugClientDevice extends EventEmitter {
55
55
  get linearAttributes(): Messages.GenericDeviceMessageAttributes[];
56
56
  linear(values: number | [number, number][], duration?: number): Promise<void>;
57
57
  sensorRead(sensorIndex: number, sensorType: Messages.SensorType): Promise<number[]>;
58
+ get hasBattery(): boolean;
58
59
  battery(): Promise<number>;
60
+ get hasRssi(): boolean;
59
61
  rssi(): Promise<number>;
60
62
  rawRead(endpoint: string, expectedLength: number, timeout: number): Promise<Uint8Array>;
61
63
  rawWrite(endpoint: string, data: Uint8Array, writeWithResponse: boolean): Promise<void>;
@@ -225,25 +225,35 @@ class ButtplugClientDevice extends events_1.EventEmitter {
225
225
  }
226
226
  });
227
227
  }
228
+ get hasBattery() {
229
+ var _a;
230
+ const batteryAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.Battery);
231
+ return batteryAttrs !== undefined && batteryAttrs.length > 0;
232
+ }
228
233
  battery() {
229
234
  var _a;
230
235
  return __awaiter(this, void 0, void 0, function* () {
231
- const batteryAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.Battery);
232
- if (!batteryAttrs || batteryAttrs.length === 0) {
236
+ if (!this.hasBattery) {
233
237
  throw new Exceptions_1.ButtplugDeviceException(`Device ${this.name} has no Battery capabilities`);
234
238
  }
239
+ const batteryAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.Battery);
235
240
  // Find the battery sensor, we'll need its index.
236
241
  const result = yield this.sensorRead(batteryAttrs[0].Index, Messages.SensorType.Battery);
237
242
  return result[0] / 100.0;
238
243
  });
239
244
  }
245
+ get hasRssi() {
246
+ var _a;
247
+ const rssiAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.RSSI);
248
+ return rssiAttrs !== undefined && rssiAttrs.length === 0;
249
+ }
240
250
  rssi() {
241
251
  var _a;
242
252
  return __awaiter(this, void 0, void 0, function* () {
243
- const rssiAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.RSSI);
244
- if (!rssiAttrs || rssiAttrs.length === 0) {
253
+ if (!this.hasRssi) {
245
254
  throw new Exceptions_1.ButtplugDeviceException(`Device ${this.name} has no RSSI capabilities`);
246
255
  }
256
+ const rssiAttrs = (_a = this.messageAttributes.SensorReadCmd) === null || _a === void 0 ? void 0 : _a.filter((x) => x.SensorType === Messages.SensorType.RSSI);
247
257
  // Find the battery sensor, we'll need its index.
248
258
  const result = yield this.sensorRead(rssiAttrs[0].Index, Messages.SensorType.RSSI);
249
259
  return result[0];
@@ -1 +1 @@
1
- {"version":3,"file":"ButtplugClientDevice.js","sourceRoot":"","sources":["../../../../src/client/ButtplugClientDevice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ButtplugClientDevice.js","sourceRoot":"","sources":["../../../../src/client/ButtplugClientDevice.ts"],"names":[],"mappings":"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"}