@magicred-1/ble-mesh 1.3.0 → 1.3.2

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.
@@ -1244,7 +1244,7 @@ class BleMeshModule(reactContext: ReactApplicationContext) : ReactContextBaseJav
1244
1244
  Log.d(TAG, "Sending handshake response to $senderId")
1245
1245
  initiateHandshakeInternal(senderId)
1246
1246
  } else {
1247
- Log.d(TAG, "Handshake not for us, recipient: ${byteArrayToHexString(packet.recipientId ?: byteArrayOf())}")
1247
+ Log.d(TAG, "Handshake not for us")
1248
1248
  }
1249
1249
  } catch (e: Exception) {
1250
1250
  Log.e(TAG, "Handshake failed: ${e.message}")
@@ -168,23 +168,13 @@ class BleMeshService {
168
168
  * @param options.secondSignerPublicKey - Preferred second signer (optional, any peer can sign if not specified)
169
169
  * @param options.description - Description of the transaction
170
170
  * @param options.recipientPeerId - Specific peer to send to (optional, broadcasts to all if not specified)
171
- * @param options.ensureSession - Auto-initiate handshake if no encrypted session exists (default: true)
172
- * @param options.waitForHandshake - Wait for handshake to complete before sending (default: false for better UX)
173
171
  */
174
172
  async sendTransaction(serializedTransaction, options) {
175
173
  this.ensureInitialized();
176
174
 
177
- // Auto-initiate handshakes if needed (default: true)
178
- const ensureSession = options?.ensureSession !== false;
179
- const waitForHandshake = options?.waitForHandshake === true; // Default: false for non-blocking
180
-
181
- if (ensureSession && waitForHandshake) {
182
- // Blocking mode: wait for handshakes to complete
183
- await this.ensureEncryptedSessions(options?.recipientPeerId);
184
- } else if (ensureSession) {
185
- // Non-blocking mode: initiate handshakes but don't wait (fire and forget)
186
- this.initiateHandshakesAsync(options?.recipientPeerId);
187
- }
175
+ // Auto-initiate handshakes asynchronously (non-blocking, fire-and-forget)
176
+ // The native layer handles queuing and delivery when sessions are ready
177
+ this.initiateHandshakesAsync(options?.recipientPeerId);
188
178
  const txId = Math.random().toString(36).substring(2, 15);
189
179
  return BleMeshModule.sendTransaction(txId, serializedTransaction, options?.recipientPeerId || null, options?.firstSignerPublicKey, options?.secondSignerPublicKey || null, options?.description || null);
190
180
  }
@@ -219,80 +209,6 @@ class BleMeshService {
219
209
  })();
220
210
  }
221
211
 
222
- /**
223
- * Ensure encrypted sessions exist with target peer(s) before sending transactions.
224
- * Auto-initiates handshakes for peers without active sessions.
225
- *
226
- * @param recipientPeerId - Specific peer ID, or null/undefined to check all connected peers
227
- */
228
- async ensureEncryptedSessions(recipientPeerId) {
229
- if (recipientPeerId) {
230
- // Check specific peer
231
- const hasSession = await this.hasEncryptedSession(recipientPeerId);
232
- if (!hasSession) {
233
- console.log(`[BleMesh] No encrypted session with ${recipientPeerId}, initiating handshake...`);
234
- await this.initiateHandshake(recipientPeerId);
235
-
236
- // Wait and verify handshake completion (max 5 seconds)
237
- const maxAttempts = 10;
238
- for (let i = 0; i < maxAttempts; i++) {
239
- await new Promise(resolve => setTimeout(resolve, 500));
240
- const sessionEstablished = await this.hasEncryptedSession(recipientPeerId);
241
- if (sessionEstablished) {
242
- console.log(`[BleMesh] ✅ Encrypted session established with ${recipientPeerId}`);
243
- return;
244
- }
245
- console.log(`[BleMesh] Waiting for handshake... (${i + 1}/${maxAttempts})`);
246
- }
247
- console.warn(`[BleMesh] ⚠️ Handshake timeout with ${recipientPeerId} - proceeding anyway`);
248
- } else {
249
- console.log(`[BleMesh] ✅ Encrypted session already exists with ${recipientPeerId}`);
250
- }
251
- } else {
252
- // Check all connected peers
253
- const peers = await this.getPeers();
254
- const connectedPeers = peers.filter(p => p.isConnected);
255
- console.log(`[BleMesh] Checking sessions for ${connectedPeers.length} connected peers...`);
256
- const peersNeedingHandshake = [];
257
- for (const peer of connectedPeers) {
258
- const hasSession = await this.hasEncryptedSession(peer.peerId);
259
- if (!hasSession) {
260
- console.log(`[BleMesh] No encrypted session with ${peer.nickname} (${peer.peerId}), initiating handshake...`);
261
- await this.initiateHandshake(peer.peerId);
262
- peersNeedingHandshake.push(peer.peerId);
263
- } else {
264
- console.log(`[BleMesh] ✅ Session exists with ${peer.nickname}`);
265
- }
266
- }
267
-
268
- // Wait and verify all handshakes complete
269
- if (peersNeedingHandshake.length > 0) {
270
- console.log(`[BleMesh] Waiting for ${peersNeedingHandshake.length} handshake(s) to complete...`);
271
- const maxAttempts = 10;
272
- for (let i = 0; i < maxAttempts; i++) {
273
- await new Promise(resolve => setTimeout(resolve, 500));
274
-
275
- // Check which peers now have sessions
276
- const remainingPeers = [];
277
- for (const peerId of peersNeedingHandshake) {
278
- const hasSession = await this.hasEncryptedSession(peerId);
279
- if (!hasSession) {
280
- remainingPeers.push(peerId);
281
- }
282
- }
283
- if (remainingPeers.length === 0) {
284
- console.log(`[BleMesh] ✅ All handshakes completed successfully`);
285
- return;
286
- }
287
- console.log(`[BleMesh] Waiting... ${remainingPeers.length} handshake(s) pending (${i + 1}/${maxAttempts})`);
288
- peersNeedingHandshake.length = 0;
289
- peersNeedingHandshake.push(...remainingPeers);
290
- }
291
- console.warn(`[BleMesh] ⚠️ ${peersNeedingHandshake.length} handshake(s) incomplete - proceeding anyway`);
292
- }
293
- }
294
- }
295
-
296
212
  // Respond to a received transaction (sign or reject)
297
213
  async respondToTransaction(transactionId, recipientPeerId, response) {
298
214
  this.ensureInitialized();
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","BleMeshModule","NativeModules","BleMesh","Proxy","get","Error","eventEmitter","NativeEventEmitter","BleMeshService","isInitialized","requestPermissions","OS","requestAndroidPermissions","requestIOSPermissions","apiLevel","Version","permissions","PermissionsAndroid","PERMISSIONS","BLUETOOTH_ADVERTISE","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","ACCESS_FINE_LOCATION","ACCESS_COARSE_LOCATION","results","requestMultiple","status","bluetooth","location","bluetoothAdvertise","bluetoothConnect","bluetoothScan","result","checkPermissions","checkAndroidPermissions","fineLocation","check","advertise","connect","scan","start","config","nickname","autoRequestPermissions","hasAllPermissions","stop","setNickname","ensureInitialized","getMyPeerId","getMyNickname","getPeers","sendMessage","content","channel","sendPrivateMessage","recipientPeerId","sendFile","filePath","options","sendTransaction","serializedTransaction","ensureSession","waitForHandshake","ensureEncryptedSessions","initiateHandshakesAsync","txId","Math","random","toString","substring","firstSignerPublicKey","secondSignerPublicKey","description","hasSession","hasEncryptedSession","console","log","initiateHandshake","peers","connectedPeers","filter","p","isConnected","peer","peerId","error","warn","maxAttempts","i","Promise","resolve","setTimeout","sessionEstablished","length","peersNeedingHandshake","push","remainingPeers","respondToTransaction","transactionId","response","signedTransaction","sendReadReceipt","messageId","sendSolanaNonceTransaction","transaction","getIdentityFingerprint","getPeerFingerprint","broadcastAnnounce","onPeerListUpdated","callback","subscription","addListener","remove","onMessageReceived","onFileReceived","onTransactionReceived","onTransactionResponse","onConnectionStateChanged","onReadReceipt","onDeliveryAck","onError","exports","_default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","BleMeshModule","NativeModules","BleMesh","Proxy","get","Error","eventEmitter","NativeEventEmitter","BleMeshService","isInitialized","requestPermissions","OS","requestAndroidPermissions","requestIOSPermissions","apiLevel","Version","permissions","PermissionsAndroid","PERMISSIONS","BLUETOOTH_ADVERTISE","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","ACCESS_FINE_LOCATION","ACCESS_COARSE_LOCATION","results","requestMultiple","status","bluetooth","location","bluetoothAdvertise","bluetoothConnect","bluetoothScan","result","checkPermissions","checkAndroidPermissions","fineLocation","check","advertise","connect","scan","start","config","nickname","autoRequestPermissions","hasAllPermissions","stop","setNickname","ensureInitialized","getMyPeerId","getMyNickname","getPeers","sendMessage","content","channel","sendPrivateMessage","recipientPeerId","sendFile","filePath","options","sendTransaction","serializedTransaction","initiateHandshakesAsync","txId","Math","random","toString","substring","firstSignerPublicKey","secondSignerPublicKey","description","hasSession","hasEncryptedSession","console","log","initiateHandshake","peers","connectedPeers","filter","p","isConnected","peer","peerId","error","warn","respondToTransaction","transactionId","response","signedTransaction","sendReadReceipt","messageId","sendSolanaNonceTransaction","transaction","getIdentityFingerprint","getPeerFingerprint","broadcastAnnounce","onPeerListUpdated","callback","subscription","addListener","remove","onMessageReceived","onFileReceived","onTransactionReceived","onTransactionResponse","onConnectionStateChanged","onReadReceipt","onDeliveryAck","onError","exports","_default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,aAAa,GACjB,mEAAmE,GACnEC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,2EAA2E;AAE7E,MAAMC,aAAa,GAAGC,0BAAa,CAACC,OAAO,GACvCD,0BAAa,CAACC,OAAO,GACrB,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACV,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,MAAMW,YAAY,GAAG,IAAIC,+BAAkB,CAACP,aAAa,CAAC;;AAE1D;;AA0FA;;AAUA;;AAGA,MAAMQ,cAAc,CAAC;EACXC,aAAa,GAAG,KAAK;;EAE7B;EACA,MAAMC,kBAAkBA,CAAA,EAA8B;IACpD,IAAId,qBAAQ,CAACe,EAAE,KAAK,SAAS,EAAE;MAC7B,OAAO,IAAI,CAACC,yBAAyB,CAAC,CAAC;IACzC,CAAC,MAAM,IAAIhB,qBAAQ,CAACe,EAAE,KAAK,KAAK,EAAE;MAChC,OAAO,IAAI,CAACE,qBAAqB,CAAC,CAAC;IACrC;IACA,MAAM,IAAIR,KAAK,CAAC,sBAAsB,CAAC;EACzC;EAEA,MAAcO,yBAAyBA,CAAA,EAA8B;IACnE,MAAME,QAAQ,GAAGlB,qBAAQ,CAACmB,OAAiB;IAE3C,IAAIC,WAAyB,GAAG,EAAE;IAElC,IAAIF,QAAQ,IAAI,EAAE,EAAE;MAClB;MACAE,WAAW,GAAG,CACZC,+BAAkB,CAACC,WAAW,CAACC,mBAAmB,EAClDF,+BAAkB,CAACC,WAAW,CAACE,iBAAiB,EAChDH,+BAAkB,CAACC,WAAW,CAACG,cAAc,EAC7CJ,+BAAkB,CAACC,WAAW,CAACI,oBAAoB,CACpD;IACH,CAAC,MAAM;MACL;MACAN,WAAW,GAAG,CACZC,+BAAkB,CAACC,WAAW,CAACI,oBAAoB,EACnDL,+BAAkB,CAACC,WAAW,CAACK,sBAAsB,CACtD;IACH;IAEA,MAAMC,OAAO,GAAG,MAAMP,+BAAkB,CAACQ,eAAe,CAACT,WAAW,CAAC;IAErE,MAAMU,MAAwB,GAAG;MAC/BC,SAAS,EAAE,IAAI;MACfC,QAAQ,EAAEJ,OAAO,CAACP,+BAAkB,CAACC,WAAW,CAACI,oBAAoB,CAAC,KAAK;IAC7E,CAAC;IAED,IAAIR,QAAQ,IAAI,EAAE,EAAE;MAClBY,MAAM,CAACG,kBAAkB,GAAGL,OAAO,CAACP,+BAAkB,CAACC,WAAW,CAACC,mBAAmB,CAAC,KAAK,SAAS;MACrGO,MAAM,CAACI,gBAAgB,GAAGN,OAAO,CAACP,+BAAkB,CAACC,WAAW,CAACE,iBAAiB,CAAC,KAAK,SAAS;MACjGM,MAAM,CAACK,aAAa,GAAGP,OAAO,CAACP,+BAAkB,CAACC,WAAW,CAACG,cAAc,CAAC,KAAK,SAAS;MAC3FK,MAAM,CAACC,SAAS,GAAGD,MAAM,CAACG,kBAAkB,IAAIH,MAAM,CAACI,gBAAgB,IAAIJ,MAAM,CAACK,aAAa;IACjG;IAEA,OAAOL,MAAM;EACf;EAEA,MAAcb,qBAAqBA,CAAA,EAA8B;IAC/D;IACA;IACA,MAAMmB,MAAM,GAAG,MAAMhC,aAAa,CAACU,kBAAkB,CAAC,CAAC;IACvD,OAAO;MACLiB,SAAS,EAAEK,MAAM,CAACL,SAAS;MAC3BC,QAAQ,EAAEI,MAAM,CAACJ;IACnB,CAAC;EACH;;EAEA;EACA,MAAMK,gBAAgBA,CAAA,EAA8B;IAClD,IAAIrC,qBAAQ,CAACe,EAAE,KAAK,SAAS,EAAE;MAC7B,OAAO,IAAI,CAACuB,uBAAuB,CAAC,CAAC;IACvC;IACA,OAAOlC,aAAa,CAACiC,gBAAgB,CAAC,CAAC;EACzC;EAEA,MAAcC,uBAAuBA,CAAA,EAA8B;IACjE,MAAMpB,QAAQ,GAAGlB,qBAAQ,CAACmB,OAAiB;IAE3C,MAAMoB,YAAY,GAAG,MAAMlB,+BAAkB,CAACmB,KAAK,CACjDnB,+BAAkB,CAACC,WAAW,CAACI,oBACjC,CAAC;IAED,MAAMI,MAAwB,GAAG;MAC/BC,SAAS,EAAE,IAAI;MACfC,QAAQ,EAAEO;IACZ,CAAC;IAED,IAAIrB,QAAQ,IAAI,EAAE,EAAE;MAClB,MAAMuB,SAAS,GAAG,MAAMpB,+BAAkB,CAACmB,KAAK,CAC9CnB,+BAAkB,CAACC,WAAW,CAACC,mBACjC,CAAC;MACD,MAAMmB,OAAO,GAAG,MAAMrB,+BAAkB,CAACmB,KAAK,CAC5CnB,+BAAkB,CAACC,WAAW,CAACE,iBACjC,CAAC;MACD,MAAMmB,IAAI,GAAG,MAAMtB,+BAAkB,CAACmB,KAAK,CACzCnB,+BAAkB,CAACC,WAAW,CAACG,cACjC,CAAC;MAEDK,MAAM,CAACG,kBAAkB,GAAGQ,SAAS;MACrCX,MAAM,CAACI,gBAAgB,GAAGQ,OAAO;MACjCZ,MAAM,CAACK,aAAa,GAAGQ,IAAI;MAC3Bb,MAAM,CAACC,SAAS,GAAGU,SAAS,IAAIC,OAAO,IAAIC,IAAI;IACjD;IAEA,OAAOb,MAAM;EACf;;EAEA;EACA,MAAMc,KAAKA,CAACC,MAAyB,GAAG,CAAC,CAAC,EAAiB;IACzD,MAAM;MAAEC,QAAQ,GAAG,MAAM;MAAEC,sBAAsB,GAAG;IAAK,CAAC,GAAGF,MAAM;IAEnE,IAAIE,sBAAsB,EAAE;MAC1B,MAAM3B,WAAW,GAAG,MAAM,IAAI,CAACN,kBAAkB,CAAC,CAAC;MACnD,MAAMkC,iBAAiB,GAAG5B,WAAW,CAACW,SAAS,IAAIX,WAAW,CAACY,QAAQ;MAEvE,IAAI,CAACgB,iBAAiB,EAAE;QACtB,MAAM,IAAIvC,KAAK,CAAC,oFAAoF,CAAC;MACvG;IACF;IAEA,MAAML,aAAa,CAACwC,KAAK,CAACE,QAAQ,CAAC;IACnC,IAAI,CAACjC,aAAa,GAAG,IAAI;EAC3B;;EAEA;EACA,MAAMoC,IAAIA,CAAA,EAAkB;IAC1B,IAAI,CAAC,IAAI,CAACpC,aAAa,EAAE;IACzB,MAAMT,aAAa,CAAC6C,IAAI,CAAC,CAAC;IAC1B,IAAI,CAACpC,aAAa,GAAG,KAAK;EAC5B;;EAEA;EACA,MAAMqC,WAAWA,CAACJ,QAAgB,EAAiB;IACjD,IAAI,CAACK,iBAAiB,CAAC,CAAC;IACxB,MAAM/C,aAAa,CAAC8C,WAAW,CAACJ,QAAQ,CAAC;EAC3C;;EAEA;EACA,MAAMM,WAAWA,CAAA,EAAoB;IACnC,IAAI,CAACD,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACgD,WAAW,CAAC,CAAC;EACpC;;EAEA;EACA,MAAMC,aAAaA,CAAA,EAAoB;IACrC,IAAI,CAACF,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACiD,aAAa,CAAC,CAAC;EACtC;;EAEA;EACA,MAAMC,QAAQA,CAAA,EAAoB;IAChC,IAAI,CAACH,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACkD,QAAQ,CAAC,CAAC;EACjC;;EAEA;EACA,MAAMC,WAAWA,CAACC,OAAe,EAAEC,OAAgB,EAAmB;IACpE,IAAI,CAACN,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACmD,WAAW,CAACC,OAAO,EAAEC,OAAO,IAAI,IAAI,CAAC;EAC5D;;EAEA;EACA,MAAMC,kBAAkBA,CAACF,OAAe,EAAEG,eAAuB,EAAmB;IAClF,IAAI,CAACR,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACsD,kBAAkB,CAACF,OAAO,EAAEG,eAAe,CAAC;EACnE;;EAEA;EACA,MAAMC,QAAQA,CACZC,QAAgB,EAChBC,OAAwD,EACvC;IACjB,IAAI,CAACX,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACwD,QAAQ,CAACC,QAAQ,EAAEC,OAAO,EAAEH,eAAe,IAAI,IAAI,EAAEG,OAAO,EAAEL,OAAO,IAAI,IAAI,CAAC;EACrG;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMM,eAAeA,CACnBC,qBAA6B,EAC7BF,OAKC,EACgB;IACjB,IAAI,CAACX,iBAAiB,CAAC,CAAC;;IAExB;IACA;IACA,IAAI,CAACc,uBAAuB,CAACH,OAAO,EAAEH,eAAe,CAAC;IAEtD,MAAMO,IAAI,GAAGC,IAAI,CAACC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;IACxD,OAAOlE,aAAa,CAAC2D,eAAe,CAClCG,IAAI,EACJF,qBAAqB,EACrBF,OAAO,EAAEH,eAAe,IAAI,IAAI,EAChCG,OAAO,EAAES,oBAAoB,EAC7BT,OAAO,EAAEU,qBAAqB,IAAI,IAAI,EACtCV,OAAO,EAAEW,WAAW,IAAI,IAC1B,CAAC;EACH;;EAEA;AACF;AACA;AACA;EACUR,uBAAuBA,CAACN,eAA+B,EAAQ;IACrE,CAAC,YAAY;MACX,IAAI;QACF,IAAIA,eAAe,EAAE;UACnB,MAAMe,UAAU,GAAG,MAAM,IAAI,CAACC,mBAAmB,CAAChB,eAAe,CAAC;UAClE,IAAI,CAACe,UAAU,EAAE;YACfE,OAAO,CAACC,GAAG,CAAC,uCAAuClB,eAAe,UAAU,CAAC;YAC7E,MAAM,IAAI,CAACmB,iBAAiB,CAACnB,eAAe,CAAC;UAC/C;QACF,CAAC,MAAM;UACL,MAAMoB,KAAK,GAAG,MAAM,IAAI,CAACzB,QAAQ,CAAC,CAAC;UACnC,MAAM0B,cAAc,GAAGD,KAAK,CAACE,MAAM,CAACC,CAAC,IAAIA,CAAC,CAACC,WAAW,CAAC;UAEvD,KAAK,MAAMC,IAAI,IAAIJ,cAAc,EAAE;YACjC,MAAMN,UAAU,GAAG,MAAM,IAAI,CAACC,mBAAmB,CAACS,IAAI,CAACC,MAAM,CAAC;YAC9D,IAAI,CAACX,UAAU,EAAE;cACfE,OAAO,CAACC,GAAG,CAAC,uCAAuCO,IAAI,CAACtC,QAAQ,UAAU,CAAC;cAC3E,MAAM,IAAI,CAACgC,iBAAiB,CAACM,IAAI,CAACC,MAAM,CAAC;YAC3C;UACF;QACF;MACF,CAAC,CAAC,OAAOC,KAAK,EAAE;QACdV,OAAO,CAACW,IAAI,CAAC,8CAA8C,EAAED,KAAK,CAAC;MACrE;IACF,CAAC,EAAE,CAAC;EACN;;EAEA;EACA,MAAME,oBAAoBA,CACxBC,aAAqB,EACrB9B,eAAuB,EACvB+B,QAGC,EACc;IACf,IAAI,CAACvC,iBAAiB,CAAC,CAAC;IACxB,MAAM/C,aAAa,CAACoF,oBAAoB,CACtCC,aAAa,EACb9B,eAAe,EACf+B,QAAQ,CAACC,iBAAiB,IAAI,IAAI,EAClCD,QAAQ,CAACJ,KAAK,IAAI,IACpB,CAAC;EACH;;EAEA;EACA,MAAMM,eAAeA,CAACC,SAAiB,EAAElC,eAAuB,EAAiB;IAC/E,IAAI,CAACR,iBAAiB,CAAC,CAAC;IACxB,MAAM/C,aAAa,CAACwF,eAAe,CAACC,SAAS,EAAElC,eAAe,CAAC;EACjE;;EAEA;EACA,MAAMgB,mBAAmBA,CAACU,MAAc,EAAoB;IAC1D,IAAI,CAAClC,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAACuE,mBAAmB,CAACU,MAAM,CAAC;EAClD;;EAEA;EACA,MAAMP,iBAAiBA,CAACO,MAAc,EAAiB;IACrD,IAAI,CAAClC,iBAAiB,CAAC,CAAC;IACxB,MAAM/C,aAAa,CAAC0E,iBAAiB,CAACO,MAAM,CAAC;EAC/C;EAEA,MAAMS,0BAA0BA,CAC9BC,WAAmC,EACnCpC,eAAuB,EACN;IACjB,IAAI,CAACR,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAAC0F,0BAA0B,CAACC,WAAW,EAAEpC,eAAe,CAAC;EAC/E;;EAEA;EACA,MAAMqC,sBAAsBA,CAAA,EAAoB;IAC9C,IAAI,CAAC7C,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAAC4F,sBAAsB,CAAC,CAAC;EAC/C;;EAEA;EACA,MAAMC,kBAAkBA,CAACZ,MAAc,EAA0B;IAC/D,IAAI,CAAClC,iBAAiB,CAAC,CAAC;IACxB,OAAO/C,aAAa,CAAC6F,kBAAkB,CAACZ,MAAM,CAAC;EACjD;;EAEA;EACA,MAAMa,iBAAiBA,CAAA,EAAkB;IACvC,IAAI,CAAC/C,iBAAiB,CAAC,CAAC;IACxB,MAAM/C,aAAa,CAAC8F,iBAAiB,CAAC,CAAC;EACzC;;EAEA;EACAC,iBAAiBA,CAACC,QAA6C,EAAc;IAC3E,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,mBAAmB,EAAEF,QAAQ,CAAC;IAC5E,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAC,iBAAiBA,CAACJ,QAA6C,EAAc;IAC3E,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,mBAAmB,EAAEF,QAAQ,CAAC;IAC5E,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAE,cAAcA,CAACL,QAA0C,EAAc;IACrE,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,gBAAgB,EAAEF,QAAQ,CAAC;IACzE,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAG,qBAAqBA,CAACN,QAAiD,EAAc;IACnF,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,uBAAuB,EAAEF,QAAQ,CAAC;IAChF,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAI,qBAAqBA,CAACP,QAAiD,EAAc;IACnF,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,uBAAuB,EAAEF,QAAQ,CAAC;IAChF,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAK,wBAAwBA,CAACR,QAAoD,EAAc;IACzF,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,0BAA0B,EAAEF,QAAQ,CAAC;IACnF,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAM,aAAaA,CAACT,QAAkE,EAAc;IAC5F,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,eAAe,EAAEF,QAAQ,CAAC;IACxE,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAO,aAAaA,CAACV,QAAkE,EAAc;IAC5F,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,eAAe,EAAEF,QAAQ,CAAC;IACxE,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEAQ,OAAOA,CAACX,QAAmC,EAAc;IACvD,MAAMC,YAAY,GAAG3F,YAAY,CAAC4F,WAAW,CAAC,SAAS,EAAEF,QAAQ,CAAC;IAClE,OAAO,MAAMC,YAAY,CAACE,MAAM,CAAC,CAAC;EACpC;EAEQpD,iBAAiBA,CAAA,EAAS;IAChC,IAAI,CAAC,IAAI,CAACtC,aAAa,EAAE;MACvB,MAAM,IAAIJ,KAAK,CAAC,sDAAsD,CAAC;IACzE;EACF;AACF;;AAEA;AAAAuG,OAAA,CAAApG,cAAA,GAAAA,cAAA;AACO,MAAMN,OAAO,GAAA0G,OAAA,CAAA1G,OAAA,GAAG,IAAIM,cAAc,CAAC,CAAC;;AAE3C;AAGA;AAAA,IAAAqG,QAAA,GAAAD,OAAA,CAAA7G,OAAA,GACeG,OAAO","ignoreList":[]}
@@ -162,23 +162,13 @@ class BleMeshService {
162
162
  * @param options.secondSignerPublicKey - Preferred second signer (optional, any peer can sign if not specified)
163
163
  * @param options.description - Description of the transaction
164
164
  * @param options.recipientPeerId - Specific peer to send to (optional, broadcasts to all if not specified)
165
- * @param options.ensureSession - Auto-initiate handshake if no encrypted session exists (default: true)
166
- * @param options.waitForHandshake - Wait for handshake to complete before sending (default: false for better UX)
167
165
  */
168
166
  async sendTransaction(serializedTransaction, options) {
169
167
  this.ensureInitialized();
170
168
 
171
- // Auto-initiate handshakes if needed (default: true)
172
- const ensureSession = options?.ensureSession !== false;
173
- const waitForHandshake = options?.waitForHandshake === true; // Default: false for non-blocking
174
-
175
- if (ensureSession && waitForHandshake) {
176
- // Blocking mode: wait for handshakes to complete
177
- await this.ensureEncryptedSessions(options?.recipientPeerId);
178
- } else if (ensureSession) {
179
- // Non-blocking mode: initiate handshakes but don't wait (fire and forget)
180
- this.initiateHandshakesAsync(options?.recipientPeerId);
181
- }
169
+ // Auto-initiate handshakes asynchronously (non-blocking, fire-and-forget)
170
+ // The native layer handles queuing and delivery when sessions are ready
171
+ this.initiateHandshakesAsync(options?.recipientPeerId);
182
172
  const txId = Math.random().toString(36).substring(2, 15);
183
173
  return BleMeshModule.sendTransaction(txId, serializedTransaction, options?.recipientPeerId || null, options?.firstSignerPublicKey, options?.secondSignerPublicKey || null, options?.description || null);
184
174
  }
@@ -213,80 +203,6 @@ class BleMeshService {
213
203
  })();
214
204
  }
215
205
 
216
- /**
217
- * Ensure encrypted sessions exist with target peer(s) before sending transactions.
218
- * Auto-initiates handshakes for peers without active sessions.
219
- *
220
- * @param recipientPeerId - Specific peer ID, or null/undefined to check all connected peers
221
- */
222
- async ensureEncryptedSessions(recipientPeerId) {
223
- if (recipientPeerId) {
224
- // Check specific peer
225
- const hasSession = await this.hasEncryptedSession(recipientPeerId);
226
- if (!hasSession) {
227
- console.log(`[BleMesh] No encrypted session with ${recipientPeerId}, initiating handshake...`);
228
- await this.initiateHandshake(recipientPeerId);
229
-
230
- // Wait and verify handshake completion (max 5 seconds)
231
- const maxAttempts = 10;
232
- for (let i = 0; i < maxAttempts; i++) {
233
- await new Promise(resolve => setTimeout(resolve, 500));
234
- const sessionEstablished = await this.hasEncryptedSession(recipientPeerId);
235
- if (sessionEstablished) {
236
- console.log(`[BleMesh] ✅ Encrypted session established with ${recipientPeerId}`);
237
- return;
238
- }
239
- console.log(`[BleMesh] Waiting for handshake... (${i + 1}/${maxAttempts})`);
240
- }
241
- console.warn(`[BleMesh] ⚠️ Handshake timeout with ${recipientPeerId} - proceeding anyway`);
242
- } else {
243
- console.log(`[BleMesh] ✅ Encrypted session already exists with ${recipientPeerId}`);
244
- }
245
- } else {
246
- // Check all connected peers
247
- const peers = await this.getPeers();
248
- const connectedPeers = peers.filter(p => p.isConnected);
249
- console.log(`[BleMesh] Checking sessions for ${connectedPeers.length} connected peers...`);
250
- const peersNeedingHandshake = [];
251
- for (const peer of connectedPeers) {
252
- const hasSession = await this.hasEncryptedSession(peer.peerId);
253
- if (!hasSession) {
254
- console.log(`[BleMesh] No encrypted session with ${peer.nickname} (${peer.peerId}), initiating handshake...`);
255
- await this.initiateHandshake(peer.peerId);
256
- peersNeedingHandshake.push(peer.peerId);
257
- } else {
258
- console.log(`[BleMesh] ✅ Session exists with ${peer.nickname}`);
259
- }
260
- }
261
-
262
- // Wait and verify all handshakes complete
263
- if (peersNeedingHandshake.length > 0) {
264
- console.log(`[BleMesh] Waiting for ${peersNeedingHandshake.length} handshake(s) to complete...`);
265
- const maxAttempts = 10;
266
- for (let i = 0; i < maxAttempts; i++) {
267
- await new Promise(resolve => setTimeout(resolve, 500));
268
-
269
- // Check which peers now have sessions
270
- const remainingPeers = [];
271
- for (const peerId of peersNeedingHandshake) {
272
- const hasSession = await this.hasEncryptedSession(peerId);
273
- if (!hasSession) {
274
- remainingPeers.push(peerId);
275
- }
276
- }
277
- if (remainingPeers.length === 0) {
278
- console.log(`[BleMesh] ✅ All handshakes completed successfully`);
279
- return;
280
- }
281
- console.log(`[BleMesh] Waiting... ${remainingPeers.length} handshake(s) pending (${i + 1}/${maxAttempts})`);
282
- peersNeedingHandshake.length = 0;
283
- peersNeedingHandshake.push(...remainingPeers);
284
- }
285
- console.warn(`[BleMesh] ⚠️ ${peersNeedingHandshake.length} handshake(s) incomplete - proceeding anyway`);
286
- }
287
- }
288
- }
289
-
290
206
  // Respond to a received transaction (sign or reject)
291
207
  async respondToTransaction(transactionId, recipientPeerId, response) {
292
208
  this.ensureInitialized();
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","NativeEventEmitter","Platform","PermissionsAndroid","LINKING_ERROR","select","ios","default","BleMeshModule","BleMesh","Proxy","get","Error","eventEmitter","BleMeshService","isInitialized","requestPermissions","OS","requestAndroidPermissions","requestIOSPermissions","apiLevel","Version","permissions","PERMISSIONS","BLUETOOTH_ADVERTISE","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","ACCESS_FINE_LOCATION","ACCESS_COARSE_LOCATION","results","requestMultiple","status","bluetooth","location","bluetoothAdvertise","bluetoothConnect","bluetoothScan","result","checkPermissions","checkAndroidPermissions","fineLocation","check","advertise","connect","scan","start","config","nickname","autoRequestPermissions","hasAllPermissions","stop","setNickname","ensureInitialized","getMyPeerId","getMyNickname","getPeers","sendMessage","content","channel","sendPrivateMessage","recipientPeerId","sendFile","filePath","options","sendTransaction","serializedTransaction","ensureSession","waitForHandshake","ensureEncryptedSessions","initiateHandshakesAsync","txId","Math","random","toString","substring","firstSignerPublicKey","secondSignerPublicKey","description","hasSession","hasEncryptedSession","console","log","initiateHandshake","peers","connectedPeers","filter","p","isConnected","peer","peerId","error","warn","maxAttempts","i","Promise","resolve","setTimeout","sessionEstablished","length","peersNeedingHandshake","push","remainingPeers","respondToTransaction","transactionId","response","signedTransaction","sendReadReceipt","messageId","sendSolanaNonceTransaction","transaction","getIdentityFingerprint","getPeerFingerprint","broadcastAnnounce","onPeerListUpdated","callback","subscription","addListener","remove","onMessageReceived","onFileReceived","onTransactionReceived","onTransactionResponse","onConnectionStateChanged","onReadReceipt","onDeliveryAck","onError"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","NativeEventEmitter","Platform","PermissionsAndroid","LINKING_ERROR","select","ios","default","BleMeshModule","BleMesh","Proxy","get","Error","eventEmitter","BleMeshService","isInitialized","requestPermissions","OS","requestAndroidPermissions","requestIOSPermissions","apiLevel","Version","permissions","PERMISSIONS","BLUETOOTH_ADVERTISE","BLUETOOTH_CONNECT","BLUETOOTH_SCAN","ACCESS_FINE_LOCATION","ACCESS_COARSE_LOCATION","results","requestMultiple","status","bluetooth","location","bluetoothAdvertise","bluetoothConnect","bluetoothScan","result","checkPermissions","checkAndroidPermissions","fineLocation","check","advertise","connect","scan","start","config","nickname","autoRequestPermissions","hasAllPermissions","stop","setNickname","ensureInitialized","getMyPeerId","getMyNickname","getPeers","sendMessage","content","channel","sendPrivateMessage","recipientPeerId","sendFile","filePath","options","sendTransaction","serializedTransaction","initiateHandshakesAsync","txId","Math","random","toString","substring","firstSignerPublicKey","secondSignerPublicKey","description","hasSession","hasEncryptedSession","console","log","initiateHandshake","peers","connectedPeers","filter","p","isConnected","peer","peerId","error","warn","respondToTransaction","transactionId","response","signedTransaction","sendReadReceipt","messageId","sendSolanaNonceTransaction","transaction","getIdentityFingerprint","getPeerFingerprint","broadcastAnnounce","onPeerListUpdated","callback","subscription","addListener","remove","onMessageReceived","onFileReceived","onTransactionReceived","onTransactionResponse","onConnectionStateChanged","onReadReceipt","onDeliveryAck","onError"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -137,29 +137,18 @@ declare class BleMeshService {
137
137
  * @param options.secondSignerPublicKey - Preferred second signer (optional, any peer can sign if not specified)
138
138
  * @param options.description - Description of the transaction
139
139
  * @param options.recipientPeerId - Specific peer to send to (optional, broadcasts to all if not specified)
140
- * @param options.ensureSession - Auto-initiate handshake if no encrypted session exists (default: true)
141
- * @param options.waitForHandshake - Wait for handshake to complete before sending (default: false for better UX)
142
140
  */
143
141
  sendTransaction(serializedTransaction: string, options?: {
144
142
  firstSignerPublicKey: string;
145
143
  secondSignerPublicKey?: string;
146
144
  description?: string;
147
145
  recipientPeerId?: string;
148
- ensureSession?: boolean;
149
- waitForHandshake?: boolean;
150
146
  }): Promise<string>;
151
147
  /**
152
148
  * Initiate handshakes asynchronously without blocking (fire and forget).
153
149
  * The native layer will queue the transaction and send it once sessions are established.
154
150
  */
155
151
  private initiateHandshakesAsync;
156
- /**
157
- * Ensure encrypted sessions exist with target peer(s) before sending transactions.
158
- * Auto-initiates handshakes for peers without active sessions.
159
- *
160
- * @param recipientPeerId - Specific peer ID, or null/undefined to check all connected peers
161
- */
162
- private ensureEncryptedSessions;
163
152
  respondToTransaction(transactionId: string, recipientPeerId: string, response: {
164
153
  signedTransaction?: string;
165
154
  error?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,IAAI;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,KAAK,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAC;YAAC,UAAU,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;QACxE,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,CAAC;AAEvF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAGD,MAAM,MAAM,oBAAoB,GAAG;IAAE,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAC;AACrD,MAAM,MAAM,oBAAoB,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AACvD,MAAM,MAAM,wBAAwB,GAAG;IAAE,WAAW,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAC1E,MAAM,MAAM,wBAAwB,GAAG;IAAE,QAAQ,EAAE,mBAAmB,CAAA;CAAE,CAAC;AACzE,MAAM,MAAM,2BAA2B,GAAG;IAAE,KAAK,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACxF,MAAM,MAAM,uBAAuB,GAAG;IAAE,WAAW,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACxE,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAG3D,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAE1C,cAAM,cAAc;IAClB,OAAO,CAAC,aAAa,CAAS;IAGxB,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC;YASvC,yBAAyB;YAsCzB,qBAAqB;IAW7B,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC;YAOrC,uBAAuB;IAiC/B,KAAK,CAAC,MAAM,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBpD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAM9B,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAMhC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAM3B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM/D,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM7E,QAAQ,CACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GACvD,OAAO,CAAC,MAAM,CAAC;IAKlB;;;;;;;;;;;OAWG;IACG,eAAe,CACnB,qBAAqB,EAAE,MAAM,EAC7B,OAAO,CAAC,EAAE;QACR,oBAAoB,EAAE,MAAM,CAAC;QAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,GACA,OAAO,CAAC,MAAM,CAAC;IA0BlB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;;;;OAKG;YACW,uBAAuB;IA2E/B,oBAAoB,CACxB,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE;QACR,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,OAAO,CAAC,IAAI,CAAC;IAWV,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1E,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMrD,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,0BAA0B,CAC9B,WAAW,EAAE,sBAAsB,EACnC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC;IAMZ,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC;IAMzC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAM1D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxC,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,MAAM,IAAI;IAK5E,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,MAAM,IAAI;IAK5E,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,MAAM,IAAI;IAKtE,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,wBAAwB,CAAC,GAAG,MAAM,IAAI;IAKpF,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,wBAAwB,CAAC,GAAG,MAAM,IAAI;IAKpF,wBAAwB,CAAC,QAAQ,EAAE,aAAa,CAAC,2BAA2B,CAAC,GAAG,MAAM,IAAI;IAK1F,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,MAAM,IAAI;IAK7F,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,MAAM,IAAI;IAK7F,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI;IAKxD,OAAO,CAAC,iBAAiB;CAK1B;AAGD,eAAO,MAAM,OAAO,gBAAuB,CAAC;AAG5C,OAAO,EAAE,cAAc,EAAE,CAAC;AAG1B,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magicred-1/ble-mesh",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "description": "BLE Mesh networking library for React Native with seamless permissions",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
package/src/index.ts CHANGED
@@ -301,8 +301,6 @@ class BleMeshService {
301
301
  * @param options.secondSignerPublicKey - Preferred second signer (optional, any peer can sign if not specified)
302
302
  * @param options.description - Description of the transaction
303
303
  * @param options.recipientPeerId - Specific peer to send to (optional, broadcasts to all if not specified)
304
- * @param options.ensureSession - Auto-initiate handshake if no encrypted session exists (default: true)
305
- * @param options.waitForHandshake - Wait for handshake to complete before sending (default: false for better UX)
306
304
  */
307
305
  async sendTransaction(
308
306
  serializedTransaction: string,
@@ -311,23 +309,13 @@ class BleMeshService {
311
309
  secondSignerPublicKey?: string;
312
310
  description?: string;
313
311
  recipientPeerId?: string;
314
- ensureSession?: boolean;
315
- waitForHandshake?: boolean;
316
312
  }
317
313
  ): Promise<string> {
318
314
  this.ensureInitialized();
319
315
 
320
- // Auto-initiate handshakes if needed (default: true)
321
- const ensureSession = options?.ensureSession !== false;
322
- const waitForHandshake = options?.waitForHandshake === true; // Default: false for non-blocking
323
-
324
- if (ensureSession && waitForHandshake) {
325
- // Blocking mode: wait for handshakes to complete
326
- await this.ensureEncryptedSessions(options?.recipientPeerId);
327
- } else if (ensureSession) {
328
- // Non-blocking mode: initiate handshakes but don't wait (fire and forget)
329
- this.initiateHandshakesAsync(options?.recipientPeerId);
330
- }
316
+ // Auto-initiate handshakes asynchronously (non-blocking, fire-and-forget)
317
+ // The native layer handles queuing and delivery when sessions are ready
318
+ this.initiateHandshakesAsync(options?.recipientPeerId);
331
319
 
332
320
  const txId = Math.random().toString(36).substring(2, 15);
333
321
  return BleMeshModule.sendTransaction(
@@ -371,86 +359,6 @@ class BleMeshService {
371
359
  })();
372
360
  }
373
361
 
374
- /**
375
- * Ensure encrypted sessions exist with target peer(s) before sending transactions.
376
- * Auto-initiates handshakes for peers without active sessions.
377
- *
378
- * @param recipientPeerId - Specific peer ID, or null/undefined to check all connected peers
379
- */
380
- private async ensureEncryptedSessions(recipientPeerId?: string | null): Promise<void> {
381
- if (recipientPeerId) {
382
- // Check specific peer
383
- const hasSession = await this.hasEncryptedSession(recipientPeerId);
384
- if (!hasSession) {
385
- console.log(`[BleMesh] No encrypted session with ${recipientPeerId}, initiating handshake...`);
386
- await this.initiateHandshake(recipientPeerId);
387
-
388
- // Wait and verify handshake completion (max 5 seconds)
389
- const maxAttempts = 10;
390
- for (let i = 0; i < maxAttempts; i++) {
391
- await new Promise(resolve => setTimeout(resolve, 500));
392
- const sessionEstablished = await this.hasEncryptedSession(recipientPeerId);
393
- if (sessionEstablished) {
394
- console.log(`[BleMesh] ✅ Encrypted session established with ${recipientPeerId}`);
395
- return;
396
- }
397
- console.log(`[BleMesh] Waiting for handshake... (${i + 1}/${maxAttempts})`);
398
- }
399
- console.warn(`[BleMesh] ⚠️ Handshake timeout with ${recipientPeerId} - proceeding anyway`);
400
- } else {
401
- console.log(`[BleMesh] ✅ Encrypted session already exists with ${recipientPeerId}`);
402
- }
403
- } else {
404
- // Check all connected peers
405
- const peers = await this.getPeers();
406
- const connectedPeers = peers.filter(p => p.isConnected);
407
-
408
- console.log(`[BleMesh] Checking sessions for ${connectedPeers.length} connected peers...`);
409
-
410
- const peersNeedingHandshake: string[] = [];
411
- for (const peer of connectedPeers) {
412
- const hasSession = await this.hasEncryptedSession(peer.peerId);
413
- if (!hasSession) {
414
- console.log(`[BleMesh] No encrypted session with ${peer.nickname} (${peer.peerId}), initiating handshake...`);
415
- await this.initiateHandshake(peer.peerId);
416
- peersNeedingHandshake.push(peer.peerId);
417
- } else {
418
- console.log(`[BleMesh] ✅ Session exists with ${peer.nickname}`);
419
- }
420
- }
421
-
422
- // Wait and verify all handshakes complete
423
- if (peersNeedingHandshake.length > 0) {
424
- console.log(`[BleMesh] Waiting for ${peersNeedingHandshake.length} handshake(s) to complete...`);
425
- const maxAttempts = 10;
426
-
427
- for (let i = 0; i < maxAttempts; i++) {
428
- await new Promise(resolve => setTimeout(resolve, 500));
429
-
430
- // Check which peers now have sessions
431
- const remainingPeers = [];
432
- for (const peerId of peersNeedingHandshake) {
433
- const hasSession = await this.hasEncryptedSession(peerId);
434
- if (!hasSession) {
435
- remainingPeers.push(peerId);
436
- }
437
- }
438
-
439
- if (remainingPeers.length === 0) {
440
- console.log(`[BleMesh] ✅ All handshakes completed successfully`);
441
- return;
442
- }
443
-
444
- console.log(`[BleMesh] Waiting... ${remainingPeers.length} handshake(s) pending (${i + 1}/${maxAttempts})`);
445
- peersNeedingHandshake.length = 0;
446
- peersNeedingHandshake.push(...remainingPeers);
447
- }
448
-
449
- console.warn(`[BleMesh] ⚠️ ${peersNeedingHandshake.length} handshake(s) incomplete - proceeding anyway`);
450
- }
451
- }
452
- }
453
-
454
362
  // Respond to a received transaction (sign or reject)
455
363
  async respondToTransaction(
456
364
  transactionId: string,