ultimatedarktower 2.5.0 → 4.0.0

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.
Files changed (52) hide show
  1. package/CHANGELOG.md +61 -1
  2. package/README.md +84 -71
  3. package/dist/esm/index.mjs +1270 -268
  4. package/dist/src/UltimateDarkTower.d.ts +48 -6
  5. package/dist/src/UltimateDarkTower.js +115 -53
  6. package/dist/src/UltimateDarkTower.js.map +1 -1
  7. package/dist/src/adapters/NodeBluetoothAdapter.js +9 -5
  8. package/dist/src/adapters/NodeBluetoothAdapter.js.map +1 -1
  9. package/dist/src/adapters/WebBluetoothAdapter.js +11 -8
  10. package/dist/src/adapters/WebBluetoothAdapter.js.map +1 -1
  11. package/dist/src/index.d.ts +8 -0
  12. package/dist/src/index.js +34 -1
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/sinks/IndexedDBSink.d.ts +26 -0
  15. package/dist/src/sinks/IndexedDBSink.js +165 -0
  16. package/dist/src/sinks/IndexedDBSink.js.map +1 -0
  17. package/dist/src/udtBleConnection.d.ts +28 -5
  18. package/dist/src/udtBleConnection.js +80 -13
  19. package/dist/src/udtBleConnection.js.map +1 -1
  20. package/dist/src/udtBluetoothAdapter.d.ts +6 -6
  21. package/dist/src/udtBluetoothAdapter.js.map +1 -1
  22. package/dist/src/udtCommandFactory.d.ts +6 -0
  23. package/dist/src/udtCommandFactory.js +26 -22
  24. package/dist/src/udtCommandFactory.js.map +1 -1
  25. package/dist/src/udtCommandQueue.d.ts +6 -3
  26. package/dist/src/udtCommandQueue.js +28 -5
  27. package/dist/src/udtCommandQueue.js.map +1 -1
  28. package/dist/src/udtConstants.d.ts +3 -8
  29. package/dist/src/udtConstants.js +2 -0
  30. package/dist/src/udtConstants.js.map +1 -1
  31. package/dist/src/udtDiagnostics.d.ts +122 -0
  32. package/dist/src/udtDiagnostics.js +228 -0
  33. package/dist/src/udtDiagnostics.js.map +1 -0
  34. package/dist/src/udtGameBoard.d.ts +38 -0
  35. package/dist/src/udtGameBoard.js +86 -0
  36. package/dist/src/udtGameBoard.js.map +1 -0
  37. package/dist/src/udtLogger.d.ts +16 -0
  38. package/dist/src/udtLogger.js +41 -2
  39. package/dist/src/udtLogger.js.map +1 -1
  40. package/dist/src/udtSeedParser.d.ts +124 -0
  41. package/dist/src/udtSeedParser.js +369 -0
  42. package/dist/src/udtSeedParser.js.map +1 -0
  43. package/dist/src/udtSystemRandom.d.ts +58 -0
  44. package/dist/src/udtSystemRandom.js +154 -0
  45. package/dist/src/udtSystemRandom.js.map +1 -0
  46. package/dist/src/udtTowerCommands.d.ts +4 -2
  47. package/dist/src/udtTowerCommands.js +24 -43
  48. package/dist/src/udtTowerCommands.js.map +1 -1
  49. package/dist/src/udtTowerResponse.d.ts +9 -5
  50. package/dist/src/udtTowerResponse.js +5 -6
  51. package/dist/src/udtTowerResponse.js.map +1 -1
  52. package/package.json +5 -1
@@ -5,6 +5,7 @@ import { type ConnectionStatus, type DeviceInformation } from './udtBleConnectio
5
5
  import { type TowerResponseConfig } from './udtTowerResponse';
6
6
  import { type IBluetoothAdapter } from './udtBluetoothAdapter';
7
7
  import { BluetoothPlatform } from './udtBluetoothAdapterFactory';
8
+ import { UdtDiagnosticsRecorder, type DiagnosticsConfig, type IncidentReport } from './udtDiagnostics';
8
9
  /**
9
10
  * Configuration options for the UltimateDarkTower class.
10
11
  * All options are optional - the library will auto-detect the platform by default.
@@ -16,6 +17,8 @@ export interface UltimateDarkTowerConfig {
16
17
  adapter?: IBluetoothAdapter;
17
18
  /** Initial broken seals to restore game state (software-only, no hardware effects) */
18
19
  brokenSeals?: SealIdentifier[];
20
+ /** BLE disconnect diagnostics ("flight recorder"). Off by default. See docs/BLE_DIAGNOSTICS.md. */
21
+ diagnostics?: DiagnosticsConfig;
19
22
  }
20
23
  /**
21
24
  * @title UltimateDarkTower
@@ -40,6 +43,8 @@ export interface UltimateDarkTowerConfig {
40
43
  */
41
44
  declare class UltimateDarkTower {
42
45
  private logger;
46
+ private diagnosticsRecorder;
47
+ private beforeUnloadHandler;
43
48
  private bleConnection;
44
49
  private towerEventCallbacks;
45
50
  private responseProcessor;
@@ -65,10 +70,22 @@ declare class UltimateDarkTower {
65
70
  * Initialize the logger with default console output
66
71
  */
67
72
  private initializeLogger;
73
+ /**
74
+ * Initialize the diagnostics recorder. Always constructed; `enabled` defaults
75
+ * to false, so when no config is supplied the recorder is a no-op aside from
76
+ * a single boolean check at each hook site.
77
+ */
78
+ private initializeDiagnostics;
68
79
  /**
69
80
  * Initialize all tower components and their dependencies
70
81
  */
71
82
  private initializeComponents;
83
+ /**
84
+ * Browser-only: synthesize a `page_unload` incident if the page closes while
85
+ * connected. Without this, refreshing the page during a hang loses the
86
+ * lead-up context. IndexedDB writes during unload are best-effort.
87
+ */
88
+ private installBeforeUnloadHandler;
72
89
  /**
73
90
  * Set up the tower response callback after all components are initialized
74
91
  */
@@ -100,12 +117,12 @@ declare class UltimateDarkTower {
100
117
  get previousBattery(): number;
101
118
  get currentBatteryPercent(): number;
102
119
  get previousBatteryPercent(): number;
103
- get batteryNotifyFrequency(): number;
104
- set batteryNotifyFrequency(value: number);
105
- get batteryNotifyOnValueChangeOnly(): boolean;
106
- set batteryNotifyOnValueChangeOnly(value: boolean);
107
- get batteryNotifyEnabled(): boolean;
108
- set batteryNotifyEnabled(value: boolean);
120
+ get batteryLogFrequency(): number;
121
+ set batteryLogFrequency(value: number);
122
+ get batteryLogOnChangeOnly(): boolean;
123
+ set batteryLogOnChangeOnly(value: boolean);
124
+ get batteryLogEnabled(): boolean;
125
+ set batteryLogEnabled(value: boolean);
109
126
  get logTowerResponses(): boolean;
110
127
  set logTowerResponses(value: boolean);
111
128
  get logTowerResponseConfig(): TowerResponseConfig;
@@ -410,5 +427,30 @@ declare class UltimateDarkTower {
410
427
  * @returns {Promise<void>} Promise that resolves when cleanup is complete
411
428
  */
412
429
  cleanup(): Promise<void>;
430
+ /**
431
+ * Get the diagnostics recorder for direct access (live ring buffer, sinks,
432
+ * runtime enable/disable). Always returns a recorder; check `.enabled` to
433
+ * see whether capture is active.
434
+ */
435
+ getDiagnosticsRecorder(): UdtDiagnosticsRecorder;
436
+ /**
437
+ * Toggle diagnostics capture at runtime without reconstructing the tower.
438
+ * When enabled mid-session, the next BLE event begins populating the buffer.
439
+ */
440
+ setDiagnosticsEnabled(enabled: boolean): void;
441
+ /**
442
+ * Whether diagnostics capture is currently active.
443
+ */
444
+ isDiagnosticsEnabled(): boolean;
445
+ /**
446
+ * Get the most recent disconnect incident report, or null if none captured
447
+ * since this instance was created.
448
+ */
449
+ getLastIncident(): IncidentReport | null;
450
+ /**
451
+ * Export current ring buffer + last incident as JSON for sharing/analysis.
452
+ * Useful as a one-liner in a "copy diagnostic info" button.
453
+ */
454
+ exportDiagnosticsJSON(): string;
413
455
  }
414
456
  export default UltimateDarkTower;
@@ -1,37 +1,4 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  Object.defineProperty(exports, "__esModule", { value: true });
36
3
  const udtConstants_1 = require("./udtConstants");
37
4
  const udtTowerState_1 = require("./udtTowerState");
@@ -42,6 +9,7 @@ const udtTowerResponse_1 = require("./udtTowerResponse");
42
9
  const udtCommandFactory_1 = require("./udtCommandFactory");
43
10
  const udtTowerCommands_1 = require("./udtTowerCommands");
44
11
  const udtBluetoothAdapterFactory_1 = require("./udtBluetoothAdapterFactory");
12
+ const udtDiagnostics_1 = require("./udtDiagnostics");
45
13
  /**
46
14
  * @title UltimateDarkTower
47
15
  * @description
@@ -65,6 +33,7 @@ const udtBluetoothAdapterFactory_1 = require("./udtBluetoothAdapterFactory");
65
33
  */
66
34
  class UltimateDarkTower {
67
35
  constructor(config) {
36
+ this.beforeUnloadHandler = null;
68
37
  // tower configuration
69
38
  this.retrySendCommandCountRef = { value: 0 };
70
39
  this.retrySendCommandMax = udtConstants_1.DEFAULT_RETRY_SEND_COMMAND_MAX;
@@ -99,8 +68,10 @@ class UltimateDarkTower {
99
68
  // utility
100
69
  this._logDetail = false;
101
70
  this.initializeLogger();
71
+ this.initializeDiagnostics(config === null || config === void 0 ? void 0 : config.diagnostics);
102
72
  this.initializeComponents(config);
103
73
  this.setupTowerResponseCallback();
74
+ this.installBeforeUnloadHandler();
104
75
  }
105
76
  /**
106
77
  * Initialize the logger with default console output
@@ -109,6 +80,21 @@ class UltimateDarkTower {
109
80
  this.logger = new udtLogger_1.Logger();
110
81
  this.logger.addOutput(new udtLogger_1.ConsoleOutput());
111
82
  }
83
+ /**
84
+ * Initialize the diagnostics recorder. Always constructed; `enabled` defaults
85
+ * to false, so when no config is supplied the recorder is a no-op aside from
86
+ * a single boolean check at each hook site.
87
+ */
88
+ initializeDiagnostics(config) {
89
+ var _a, _b;
90
+ const sinks = (_a = config === null || config === void 0 ? void 0 : config.sinks) !== null && _a !== void 0 ? _a : ((config === null || config === void 0 ? void 0 : config.enabled) ? [new udtDiagnostics_1.InMemorySink()] : []);
91
+ this.diagnosticsRecorder = new udtDiagnostics_1.UdtDiagnosticsRecorder({
92
+ enabled: (_b = config === null || config === void 0 ? void 0 : config.enabled) !== null && _b !== void 0 ? _b : false,
93
+ capturePayloads: config === null || config === void 0 ? void 0 : config.capturePayloads,
94
+ sinks,
95
+ });
96
+ this.logger.setDiagnosticsTarget(this.diagnosticsRecorder);
97
+ }
112
98
  /**
113
99
  * Initialize all tower components and their dependencies
114
100
  */
@@ -123,7 +109,7 @@ class UltimateDarkTower {
123
109
  }
124
110
  // Initialize BLE connection with tower event handlers
125
111
  this.towerEventCallbacks = this.createTowerEventCallbacks();
126
- this.bleConnection = new udtBleConnection_1.UdtBleConnection(this.logger, this.towerEventCallbacks, adapter);
112
+ this.bleConnection = new udtBleConnection_1.UdtBleConnection(this.logger, this.towerEventCallbacks, adapter, this.diagnosticsRecorder);
127
113
  // Initialize response processor
128
114
  this.responseProcessor = new udtTowerResponse_1.TowerResponseProcessor(this.logDetail);
129
115
  // Initialize command factory
@@ -131,6 +117,13 @@ class UltimateDarkTower {
131
117
  // Initialize tower commands with dependencies
132
118
  const commandDependencies = this.createCommandDependencies();
133
119
  this.towerCommands = new udtTowerCommands_1.UdtTowerCommands(commandDependencies);
120
+ // Wire diagnostics snapshot providers so the BLE layer can capture queue
121
+ // and tower state at the moment a disconnect cause fires.
122
+ this.bleConnection.setDiagnosticsSnapshotProviders({
123
+ commandQueue: () => this.towerCommands.getQueueStatus(),
124
+ towerState: () => this.currentTowerState,
125
+ brokenSeals: () => Array.from(this.brokenSeals),
126
+ });
134
127
  // Initialize broken seals from config (software-only, no hardware effects)
135
128
  if (config === null || config === void 0 ? void 0 : config.brokenSeals) {
136
129
  for (const seal of config.brokenSeals) {
@@ -139,6 +132,25 @@ class UltimateDarkTower {
139
132
  }
140
133
  }
141
134
  }
135
+ /**
136
+ * Browser-only: synthesize a `page_unload` incident if the page closes while
137
+ * connected. Without this, refreshing the page during a hang loses the
138
+ * lead-up context. IndexedDB writes during unload are best-effort.
139
+ */
140
+ installBeforeUnloadHandler() {
141
+ if (typeof window === 'undefined' || typeof window.addEventListener !== 'function')
142
+ return;
143
+ this.beforeUnloadHandler = () => {
144
+ var _a;
145
+ if (this.diagnosticsRecorder.enabled && ((_a = this.bleConnection) === null || _a === void 0 ? void 0 : _a.isConnected)) {
146
+ try {
147
+ this.bleConnection.recordIncidentPublic('page_unload');
148
+ }
149
+ catch ( /* best-effort */_b) { /* best-effort */ }
150
+ }
151
+ };
152
+ window.addEventListener('beforeunload', this.beforeUnloadHandler);
153
+ }
142
154
  /**
143
155
  * Set up the tower response callback after all components are initialized
144
156
  */
@@ -195,7 +207,8 @@ class UltimateDarkTower {
195
207
  retrySendCommandCount: this.retrySendCommandCountRef,
196
208
  retrySendCommandMax: this.retrySendCommandMax,
197
209
  getCurrentTowerState: () => this.currentTowerState,
198
- setTowerState: (newState, source) => this.setTowerState(newState, source)
210
+ setTowerState: (newState, source) => this.setTowerState(newState, source),
211
+ recorder: this.diagnosticsRecorder
199
212
  };
200
213
  }
201
214
  /**
@@ -237,12 +250,12 @@ class UltimateDarkTower {
237
250
  get currentBatteryPercent() { return this.currentBatteryPercentage; }
238
251
  get previousBatteryPercent() { return this.previousBatteryPercentage; }
239
252
  // Getter/setter methods for connection configuration
240
- get batteryNotifyFrequency() { return this.bleConnection.batteryNotifyFrequency; }
241
- set batteryNotifyFrequency(value) { this.bleConnection.batteryNotifyFrequency = value; }
242
- get batteryNotifyOnValueChangeOnly() { return this.bleConnection.batteryNotifyOnValueChangeOnly; }
243
- set batteryNotifyOnValueChangeOnly(value) { this.bleConnection.batteryNotifyOnValueChangeOnly = value; }
244
- get batteryNotifyEnabled() { return this.bleConnection.batteryNotifyEnabled; }
245
- set batteryNotifyEnabled(value) { this.bleConnection.batteryNotifyEnabled = value; }
253
+ get batteryLogFrequency() { return this.bleConnection.batteryLogFrequency; }
254
+ set batteryLogFrequency(value) { this.bleConnection.batteryLogFrequency = value; }
255
+ get batteryLogOnChangeOnly() { return this.bleConnection.batteryLogOnChangeOnly; }
256
+ set batteryLogOnChangeOnly(value) { this.bleConnection.batteryLogOnChangeOnly = value; }
257
+ get batteryLogEnabled() { return this.bleConnection.batteryLogEnabled; }
258
+ set batteryLogEnabled(value) { this.bleConnection.batteryLogEnabled = value; }
246
259
  get logTowerResponses() { return this.bleConnection.logTowerResponses; }
247
260
  set logTowerResponses(value) { this.bleConnection.logTowerResponses = value; }
248
261
  get logTowerResponseConfig() { return this.bleConnection.logTowerResponseConfig; }
@@ -418,14 +431,12 @@ class UltimateDarkTower {
418
431
  * @returns Promise that resolves when the command is sent
419
432
  */
420
433
  async sendTowerState(towerState) {
421
- // Import pack function here to avoid circular dependencies
422
- const { rtdt_pack_state } = await Promise.resolve().then(() => __importStar(require('./udtTowerState')));
423
434
  // Create a copy of the tower state and clear audio to prevent persistence
424
435
  const stateToSend = Object.assign({}, towerState);
425
436
  stateToSend.audio = { sample: 0, loop: false, volume: 0 };
426
437
  // Pack the tower state into 19 bytes
427
438
  const stateData = new Uint8Array(udtConstants_1.TOWER_STATE_DATA_SIZE);
428
- const success = rtdt_pack_state(stateData, udtConstants_1.TOWER_STATE_DATA_SIZE, stateToSend);
439
+ const success = (0, udtTowerState_1.rtdt_pack_state)(stateData, udtConstants_1.TOWER_STATE_DATA_SIZE, stateToSend);
429
440
  if (!success) {
430
441
  throw new Error('Failed to pack tower state data');
431
442
  }
@@ -458,14 +469,16 @@ class UltimateDarkTower {
458
469
  * @param stateData - The 19-byte state data from tower response
459
470
  */
460
471
  updateTowerStateFromResponse(stateData) {
461
- // Import unpack function here to avoid circular dependencies
462
- Promise.resolve().then(() => __importStar(require('./udtTowerState'))).then(({ rtdt_unpack_state }) => {
463
- const newState = rtdt_unpack_state(stateData);
464
- // Reset audio state to prevent sounds from persisting, but preserve user's volume setting
465
- // Tower always returns volume=0, so we keep the current volume from our local state
466
- newState.audio = { sample: 0, loop: false, volume: this.currentTowerState.audio.volume };
467
- this.setTowerState(newState, 'tower response');
468
- });
472
+ const newState = (0, udtTowerState_1.rtdt_unpack_state)(stateData);
473
+ // Reset audio state to prevent sounds from persisting, but preserve user's volume setting
474
+ // Tower always returns volume=0, so we keep the current volume from our local state
475
+ newState.audio = { sample: 0, loop: false, volume: this.currentTowerState.audio.volume };
476
+ // Reset led_sequence to prevent light effects from persisting across subsequent commands.
477
+ // The real tower firmware returns 0 for this field in its responses, just like audio.
478
+ // Without this reset the emulator (which echoes back the exact bytes sent) causes every
479
+ // subsequent stateful command to re-trigger the last lighting effect.
480
+ newState.led_sequence = 0;
481
+ this.setTowerState(newState, 'tower response');
469
482
  }
470
483
  //#endregion
471
484
  /**
@@ -709,7 +722,7 @@ class UltimateDarkTower {
709
722
  */
710
723
  setLoggerOutputs(outputs) {
711
724
  // Clear existing outputs and add new ones to maintain logger instance references
712
- this.logger.outputs = [];
725
+ this.logger.clearOutputs();
713
726
  outputs.forEach(output => this.logger.addOutput(output));
714
727
  }
715
728
  /**
@@ -799,8 +812,57 @@ class UltimateDarkTower {
799
812
  this.logger.info('Cleaning up UltimateDarkTower instance', '[UDT]');
800
813
  // Clear any pending commands in the queue
801
814
  this.towerCommands.clearQueue();
815
+ if (this.beforeUnloadHandler && typeof window !== 'undefined') {
816
+ window.removeEventListener('beforeunload', this.beforeUnloadHandler);
817
+ this.beforeUnloadHandler = null;
818
+ }
819
+ this.logger.setDiagnosticsTarget(null);
802
820
  await this.bleConnection.cleanup();
803
821
  }
822
+ //#endregion
823
+ //#region Diagnostics (BLE flight recorder)
824
+ /**
825
+ * Get the diagnostics recorder for direct access (live ring buffer, sinks,
826
+ * runtime enable/disable). Always returns a recorder; check `.enabled` to
827
+ * see whether capture is active.
828
+ */
829
+ getDiagnosticsRecorder() {
830
+ return this.diagnosticsRecorder;
831
+ }
832
+ /**
833
+ * Toggle diagnostics capture at runtime without reconstructing the tower.
834
+ * When enabled mid-session, the next BLE event begins populating the buffer.
835
+ */
836
+ setDiagnosticsEnabled(enabled) {
837
+ this.diagnosticsRecorder.enabled = enabled;
838
+ }
839
+ /**
840
+ * Whether diagnostics capture is currently active.
841
+ */
842
+ isDiagnosticsEnabled() {
843
+ return this.diagnosticsRecorder.enabled;
844
+ }
845
+ /**
846
+ * Get the most recent disconnect incident report, or null if none captured
847
+ * since this instance was created.
848
+ */
849
+ getLastIncident() {
850
+ return this.diagnosticsRecorder.getLastIncident();
851
+ }
852
+ /**
853
+ * Export current ring buffer + last incident as JSON for sharing/analysis.
854
+ * Useful as a one-liner in a "copy diagnostic info" button.
855
+ */
856
+ exportDiagnosticsJSON() {
857
+ return JSON.stringify({
858
+ schemaVersion: 1,
859
+ capturedAt: Date.now(),
860
+ sessionId: this.diagnosticsRecorder.getSessionId(),
861
+ ringBuffer: this.diagnosticsRecorder.getRingBuffer(),
862
+ batteryHistory: this.diagnosticsRecorder.getBatteryHistory(),
863
+ lastIncident: this.diagnosticsRecorder.getLastIncident(),
864
+ }, null, 2);
865
+ }
804
866
  }
805
867
  exports.default = UltimateDarkTower;
806
868
  //# sourceMappingURL=UltimateDarkTower.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UltimateDarkTower.js","sourceRoot":"","sources":["../../src/UltimateDarkTower.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UltimateDarkTower.js","sourceRoot":"","sources":["../../src/UltimateDarkTower.ts"],"names":[],"mappings":"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"}
@@ -45,10 +45,12 @@ class NodeBluetoothAdapter {
45
45
  await noble.waitForPoweredOnAsync();
46
46
  }
47
47
  catch (error) {
48
- throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Bluetooth adapter not ready: ${error.message}`, error);
48
+ const msg = error instanceof Error ? error.message : String(error);
49
+ throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Bluetooth adapter not ready: ${msg}`, error);
49
50
  }
50
51
  }
51
52
  async connect(deviceName, serviceUuids) {
53
+ var _a, _b;
52
54
  try {
53
55
  // Step 1: Ensure Noble's BLE adapter is powered on
54
56
  await this.ensureNobleReady();
@@ -90,8 +92,8 @@ class NodeBluetoothAdapter {
90
92
  const { characteristics } = await this.peripheral.discoverAllServicesAndCharacteristicsAsync();
91
93
  // Save all discovered characteristics for readDeviceInformation()
92
94
  this.allCharacteristics = characteristics;
93
- this.txCharacteristic = characteristics.find((c) => this.normalizeUuid(c.uuid) === txUuid);
94
- this.rxCharacteristic = characteristics.find((c) => this.normalizeUuid(c.uuid) === rxUuid);
95
+ this.txCharacteristic = (_a = characteristics.find((c) => this.normalizeUuid(c.uuid) === txUuid)) !== null && _a !== void 0 ? _a : null;
96
+ this.rxCharacteristic = (_b = characteristics.find((c) => this.normalizeUuid(c.uuid) === rxUuid)) !== null && _b !== void 0 ? _b : null;
95
97
  if (!this.txCharacteristic || !this.rxCharacteristic) {
96
98
  throw new udtBluetoothAdapter_1.BluetoothConnectionError('TX or RX characteristic not found on device');
97
99
  }
@@ -112,7 +114,8 @@ class NodeBluetoothAdapter {
112
114
  error instanceof udtBluetoothAdapter_1.BluetoothTimeoutError) {
113
115
  throw error;
114
116
  }
115
- throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Connection failed: ${error.message}`, error);
117
+ const msg = error instanceof Error ? error.message : String(error);
118
+ throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Connection failed: ${msg}`, error);
116
119
  }
117
120
  }
118
121
  async disconnect() {
@@ -158,7 +161,8 @@ class NodeBluetoothAdapter {
158
161
  await this.txCharacteristic.writeAsync(buffer, false);
159
162
  }
160
163
  catch (error) {
161
- throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Write failed: ${error.message}`, error);
164
+ const msg = error instanceof Error ? error.message : String(error);
165
+ throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Write failed: ${msg}`, error);
162
166
  }
163
167
  }
164
168
  onCharacteristicValueChanged(callback) {
@@ -1 +1 @@
1
- {"version":3,"file":"NodeBluetoothAdapter.js","sourceRoot":"","sources":["../../../src/adapters/NodeBluetoothAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeBluetoothAdapter.js","sourceRoot":"","sources":["../../../src/adapters/NodeBluetoothAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WebBluetoothAdapter = void 0;
4
+ /* global BluetoothDevice, BluetoothRemoteGATTCharacteristic, BufferSource */
4
5
  const udtConstants_1 = require("../udtConstants");
5
6
  const udtBluetoothAdapter_1 = require("../udtBluetoothAdapter");
6
7
  /**
@@ -18,7 +19,6 @@ class WebBluetoothAdapter {
18
19
  this.boundOnAvailabilityChanged = null;
19
20
  }
20
21
  async connect(deviceName, serviceUuids) {
21
- var _a;
22
22
  try {
23
23
  // @ts-ignore - Web Bluetooth types may not be available in all environments
24
24
  this.device = await navigator.bluetooth.requestDevice({
@@ -57,9 +57,10 @@ class WebBluetoothAdapter {
57
57
  await this.rxCharacteristic.startNotifications();
58
58
  this.boundOnCharacteristicValueChanged = (event) => {
59
59
  const target = event.target;
60
- const receivedData = new Uint8Array(target.value.byteLength);
61
- for (let i = 0; i < target.value.byteLength; i++) {
62
- receivedData[i] = target.value.getUint8(i);
60
+ const dataView = target.value;
61
+ const receivedData = new Uint8Array(dataView.byteLength);
62
+ for (let i = 0; i < dataView.byteLength; i++) {
63
+ receivedData[i] = dataView.getUint8(i);
63
64
  }
64
65
  if (this.characteristicCallback) {
65
66
  this.characteristicCallback(receivedData);
@@ -74,26 +75,28 @@ class WebBluetoothAdapter {
74
75
  error instanceof udtBluetoothAdapter_1.BluetoothConnectionError) {
75
76
  throw error;
76
77
  }
77
- const errorMsg = (_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : String(error);
78
+ const errorMsg = error instanceof Error ? error.message : String(error);
79
+ const errorName = error instanceof Error ? error.name : '';
78
80
  if (errorMsg.includes('User cancelled')) {
79
81
  throw new udtBluetoothAdapter_1.BluetoothUserCancelledError('User cancelled device selection', error);
80
82
  }
81
- if (errorMsg.includes('not found') || (error === null || error === void 0 ? void 0 : error.name) === 'NotFoundError') {
83
+ if (errorMsg.includes('not found') || errorName === 'NotFoundError') {
82
84
  throw new udtBluetoothAdapter_1.BluetoothDeviceNotFoundError('Device not found', error);
83
85
  }
84
86
  throw new udtBluetoothAdapter_1.BluetoothConnectionError(`Failed to connect: ${errorMsg}`, error);
85
87
  }
86
88
  }
87
89
  async disconnect() {
90
+ var _a, _b;
88
91
  if (!this.device) {
89
92
  return;
90
93
  }
91
- if (this.device.gatt.connected) {
94
+ if ((_a = this.device.gatt) === null || _a === void 0 ? void 0 : _a.connected) {
92
95
  // Remove event listeners before disconnecting
93
96
  if (this.boundOnDeviceDisconnected) {
94
97
  this.device.removeEventListener('gattserverdisconnected', this.boundOnDeviceDisconnected);
95
98
  }
96
- await this.device.gatt.disconnect();
99
+ await ((_b = this.device.gatt) === null || _b === void 0 ? void 0 : _b.disconnect());
97
100
  }
98
101
  this.device = null;
99
102
  this.txCharacteristic = null;