react-native-ble-nitro 1.0.0-beta.1 → 1.0.0-beta.10

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 (293) hide show
  1. package/android/build.gradle +3 -0
  2. package/android/src/main/kotlin/{co → com/margelo/nitro/co}/zyke/ble/BleNitroBleManager.kt +8 -2
  3. package/app.plugin.cjs +1 -0
  4. package/ios/BleNitroBleManager.swift +1 -8
  5. package/ios/BleNitroModule.swift +2 -9
  6. package/lib/BleManagerFactory.d.ts +2 -2
  7. package/lib/commonjs/BleManagerCompatFactory.d.ts +56 -0
  8. package/lib/commonjs/BleManagerCompatFactory.d.ts.map +1 -0
  9. package/lib/commonjs/BleManagerCompatFactory.js +201 -0
  10. package/lib/commonjs/BleManagerCompatFactory.js.map +1 -0
  11. package/lib/commonjs/BleManagerFactory.d.ts +31 -0
  12. package/lib/commonjs/BleManagerFactory.d.ts.map +1 -0
  13. package/lib/commonjs/BleManagerFactory.js +81 -0
  14. package/lib/commonjs/BleManagerFactory.js.map +1 -0
  15. package/lib/commonjs/compatibility/constants.d.ts +50 -0
  16. package/lib/commonjs/compatibility/constants.d.ts.map +1 -0
  17. package/lib/commonjs/compatibility/constants.js +58 -0
  18. package/lib/commonjs/compatibility/constants.js.map +1 -0
  19. package/lib/commonjs/compatibility/deviceWrapper.d.ts +100 -0
  20. package/lib/commonjs/compatibility/deviceWrapper.d.ts.map +1 -0
  21. package/lib/commonjs/compatibility/deviceWrapper.js +268 -0
  22. package/lib/commonjs/compatibility/deviceWrapper.js.map +1 -0
  23. package/lib/commonjs/compatibility/enums.d.ts +39 -0
  24. package/lib/commonjs/compatibility/enums.d.ts.map +1 -0
  25. package/lib/commonjs/compatibility/enums.js +179 -0
  26. package/lib/commonjs/compatibility/enums.js.map +1 -0
  27. package/lib/commonjs/compatibility/index.d.ts +13 -0
  28. package/lib/commonjs/compatibility/index.d.ts.map +1 -0
  29. package/lib/commonjs/compatibility/index.js +41 -0
  30. package/lib/commonjs/compatibility/index.js.map +1 -0
  31. package/lib/commonjs/compatibility/serviceData.d.ts +52 -0
  32. package/lib/commonjs/compatibility/serviceData.d.ts.map +1 -0
  33. package/lib/commonjs/compatibility/serviceData.js +80 -0
  34. package/lib/commonjs/compatibility/serviceData.js.map +1 -0
  35. package/lib/commonjs/errors/BleError.d.ts +60 -0
  36. package/lib/commonjs/errors/BleError.d.ts.map +1 -0
  37. package/lib/commonjs/errors/BleError.js +125 -0
  38. package/lib/commonjs/errors/BleError.js.map +1 -0
  39. package/lib/commonjs/index.d.ts +11 -0
  40. package/lib/commonjs/index.d.ts.map +1 -0
  41. package/lib/commonjs/index.js +42 -0
  42. package/lib/commonjs/index.js.map +1 -0
  43. package/lib/commonjs/specs/BleManager.nitro.d.ts +45 -0
  44. package/lib/commonjs/specs/BleManager.nitro.d.ts.map +1 -0
  45. package/lib/commonjs/specs/BleManager.nitro.js +3 -0
  46. package/lib/commonjs/specs/BleManager.nitro.js.map +1 -0
  47. package/lib/commonjs/specs/Characteristic.nitro.d.ts +27 -0
  48. package/lib/commonjs/specs/Characteristic.nitro.d.ts.map +1 -0
  49. package/lib/commonjs/specs/Characteristic.nitro.js +3 -0
  50. package/lib/commonjs/specs/Characteristic.nitro.js.map +1 -0
  51. package/lib/commonjs/specs/Descriptor.nitro.d.ts +18 -0
  52. package/lib/commonjs/specs/Descriptor.nitro.d.ts.map +1 -0
  53. package/lib/commonjs/specs/Descriptor.nitro.js +3 -0
  54. package/lib/commonjs/specs/Descriptor.nitro.js.map +1 -0
  55. package/lib/commonjs/specs/Device.nitro.d.ts +38 -0
  56. package/lib/commonjs/specs/Device.nitro.d.ts.map +1 -0
  57. package/lib/commonjs/specs/Device.nitro.js +3 -0
  58. package/lib/commonjs/specs/Device.nitro.js.map +1 -0
  59. package/lib/commonjs/specs/Service.nitro.d.ts +20 -0
  60. package/lib/commonjs/specs/Service.nitro.d.ts.map +1 -0
  61. package/lib/commonjs/specs/Service.nitro.js +3 -0
  62. package/lib/commonjs/specs/Service.nitro.js.map +1 -0
  63. package/lib/commonjs/specs/types.d.ts +229 -0
  64. package/lib/commonjs/specs/types.d.ts.map +1 -0
  65. package/lib/commonjs/specs/types.js +150 -0
  66. package/lib/commonjs/specs/types.js.map +1 -0
  67. package/lib/commonjs/utils/base64.d.ts +26 -0
  68. package/lib/commonjs/utils/base64.d.ts.map +1 -0
  69. package/lib/commonjs/utils/base64.js +88 -0
  70. package/lib/commonjs/utils/base64.js.map +1 -0
  71. package/lib/commonjs/utils/index.d.ts +3 -0
  72. package/lib/commonjs/utils/index.d.ts.map +1 -0
  73. package/lib/commonjs/utils/index.js +19 -0
  74. package/lib/commonjs/utils/index.js.map +1 -0
  75. package/lib/commonjs/utils/uuid.d.ts +10 -0
  76. package/lib/commonjs/utils/uuid.d.ts.map +1 -0
  77. package/lib/commonjs/utils/uuid.js +41 -0
  78. package/lib/commonjs/utils/uuid.js.map +1 -0
  79. package/lib/compatibility/constants.d.ts +1 -1
  80. package/lib/compatibility/constants.js +1 -1
  81. package/lib/compatibility/deviceWrapper.d.ts +2 -2
  82. package/lib/compatibility/deviceWrapper.js +2 -2
  83. package/lib/compatibility/enums.d.ts +1 -1
  84. package/lib/compatibility/enums.js +1 -1
  85. package/lib/compatibility/index.d.ts +5 -5
  86. package/lib/compatibility/index.js +4 -4
  87. package/lib/compatibility/serviceData.d.ts +1 -1
  88. package/lib/errors/BleError.d.ts +2 -2
  89. package/lib/errors/BleError.js +1 -1
  90. package/lib/index.d.ts +10 -10
  91. package/lib/index.js +8 -8
  92. package/lib/specs/BleManager.nitro.d.ts +1 -1
  93. package/lib/specs/Characteristic.nitro.d.ts +1 -1
  94. package/lib/specs/Descriptor.nitro.d.ts +1 -1
  95. package/lib/specs/Device.nitro.d.ts +1 -1
  96. package/lib/specs/Service.nitro.d.ts +1 -1
  97. package/lib/utils/base64.d.ts +1 -1
  98. package/lib/utils/index.d.ts +2 -2
  99. package/lib/utils/index.js +2 -2
  100. package/lib/utils/uuid.d.ts +1 -1
  101. package/nitro.json +6 -1
  102. package/nitrogen/generated/.gitattributes +1 -0
  103. package/nitrogen/generated/android/BleNitro+autolinking.cmake +86 -0
  104. package/nitrogen/generated/android/BleNitro+autolinking.gradle +27 -0
  105. package/nitrogen/generated/android/BleNitroOnLoad.cpp +62 -0
  106. package/nitrogen/generated/android/BleNitroOnLoad.hpp +25 -0
  107. package/nitrogen/generated/android/c++/JBleATTErrorCode.hpp +107 -0
  108. package/nitrogen/generated/android/c++/JBleAndroidErrorCode.hpp +101 -0
  109. package/nitrogen/generated/android/c++/JBleErrorCode.hpp +170 -0
  110. package/nitrogen/generated/android/c++/JBleIOSErrorCode.hpp +92 -0
  111. package/nitrogen/generated/android/c++/JBleManagerNitroOptions.hpp +54 -0
  112. package/nitrogen/generated/android/c++/JBleRestoredState.hpp +76 -0
  113. package/nitrogen/generated/android/c++/JCharacteristicSubscriptionType.hpp +59 -0
  114. package/nitrogen/generated/android/c++/JConnectionOptions.hpp +61 -0
  115. package/nitrogen/generated/android/c++/JConnectionPriority.hpp +62 -0
  116. package/nitrogen/generated/android/c++/JFunc_void.hpp +74 -0
  117. package/nitrogen/generated/android/c++/JFunc_void_State.hpp +76 -0
  118. package/nitrogen/generated/android/c++/JFunc_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.hpp +88 -0
  119. package/nitrogen/generated/android/c++/JFunc_void_std__optional_NativeBleError__std__optional_NativeDevice_.hpp +91 -0
  120. package/nitrogen/generated/android/c++/JHybridBleManagerSpec.cpp +653 -0
  121. package/nitrogen/generated/android/c++/JHybridBleManagerSpec.hpp +92 -0
  122. package/nitrogen/generated/android/c++/JHybridCharacteristicSpec.cpp +253 -0
  123. package/nitrogen/generated/android/c++/JHybridCharacteristicSpec.hpp +79 -0
  124. package/nitrogen/generated/android/c++/JHybridDescriptorSpec.cpp +115 -0
  125. package/nitrogen/generated/android/c++/JHybridDescriptorSpec.hpp +70 -0
  126. package/nitrogen/generated/android/c++/JHybridDeviceSpec.cpp +476 -0
  127. package/nitrogen/generated/android/c++/JHybridDeviceSpec.hpp +90 -0
  128. package/nitrogen/generated/android/c++/JHybridServiceSpec.cpp +232 -0
  129. package/nitrogen/generated/android/c++/JHybridServiceSpec.hpp +72 -0
  130. package/nitrogen/generated/android/c++/JLogLevel.hpp +71 -0
  131. package/nitrogen/generated/android/c++/JNativeBleError.hpp +98 -0
  132. package/nitrogen/generated/android/c++/JNativeCharacteristic.hpp +98 -0
  133. package/nitrogen/generated/android/c++/JNativeDescriptor.hpp +82 -0
  134. package/nitrogen/generated/android/c++/JNativeDevice.hpp +173 -0
  135. package/nitrogen/generated/android/c++/JNativeService.hpp +65 -0
  136. package/nitrogen/generated/android/c++/JScanCallbackType.hpp +62 -0
  137. package/nitrogen/generated/android/c++/JScanMode.hpp +65 -0
  138. package/nitrogen/generated/android/c++/JScanOptions.hpp +69 -0
  139. package/nitrogen/generated/android/c++/JServiceDataEntry.hpp +57 -0
  140. package/nitrogen/generated/android/c++/JState.hpp +71 -0
  141. package/nitrogen/generated/android/c++/JSubscription.hpp +64 -0
  142. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleATTErrorCode.kt +41 -0
  143. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleAndroidErrorCode.kt +39 -0
  144. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleErrorCode.kt +62 -0
  145. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleIOSErrorCode.kt +36 -0
  146. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleManagerNitroOptions.kt +26 -0
  147. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleNitroOnLoad.kt +35 -0
  148. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleRestoredState.kt +26 -0
  149. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/CharacteristicSubscriptionType.kt +25 -0
  150. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ConnectionOptions.kt +28 -0
  151. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ConnectionPriority.kt +26 -0
  152. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void.kt +80 -0
  153. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_State.kt +80 -0
  154. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.kt +80 -0
  155. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__optional_NativeBleError__std__optional_NativeDevice_.kt +80 -0
  156. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridBleManagerSpec.kt +192 -0
  157. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridCharacteristicSpec.kt +127 -0
  158. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridDescriptorSpec.kt +86 -0
  159. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridDeviceSpec.kt +176 -0
  160. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridServiceSpec.kt +99 -0
  161. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/LogLevel.kt +29 -0
  162. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeBleError.kt +35 -0
  163. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeCharacteristic.kt +37 -0
  164. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeDescriptor.kt +33 -0
  165. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeDevice.kt +38 -0
  166. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeService.kt +29 -0
  167. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanCallbackType.kt +26 -0
  168. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanMode.kt +27 -0
  169. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanOptions.kt +29 -0
  170. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ServiceDataEntry.kt +27 -0
  171. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/State.kt +29 -0
  172. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Subscription.kt +30 -0
  173. package/nitrogen/generated/ios/BleNitro+autolinking.rb +60 -0
  174. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.cpp +236 -0
  175. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.hpp +1069 -0
  176. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Umbrella.hpp +131 -0
  177. package/nitrogen/generated/ios/BleNitroAutolinking.mm +33 -0
  178. package/nitrogen/generated/ios/BleNitroAutolinking.swift +25 -0
  179. package/nitrogen/generated/ios/c++/HybridBleManagerSpecSwift.cpp +11 -0
  180. package/nitrogen/generated/ios/c++/HybridBleManagerSpecSwift.hpp +377 -0
  181. package/nitrogen/generated/ios/c++/HybridCharacteristicSpecSwift.cpp +11 -0
  182. package/nitrogen/generated/ios/c++/HybridCharacteristicSpecSwift.hpp +192 -0
  183. package/nitrogen/generated/ios/c++/HybridDescriptorSpecSwift.cpp +11 -0
  184. package/nitrogen/generated/ios/c++/HybridDescriptorSpecSwift.hpp +112 -0
  185. package/nitrogen/generated/ios/c++/HybridDeviceSpecSwift.cpp +11 -0
  186. package/nitrogen/generated/ios/c++/HybridDeviceSpecSwift.hpp +294 -0
  187. package/nitrogen/generated/ios/c++/HybridServiceSpecSwift.cpp +11 -0
  188. package/nitrogen/generated/ios/c++/HybridServiceSpecSwift.hpp +170 -0
  189. package/nitrogen/generated/ios/swift/BleATTErrorCode.swift +104 -0
  190. package/nitrogen/generated/ios/swift/BleAndroidErrorCode.swift +96 -0
  191. package/nitrogen/generated/ios/swift/BleErrorCode.swift +188 -0
  192. package/nitrogen/generated/ios/swift/BleIOSErrorCode.swift +84 -0
  193. package/nitrogen/generated/ios/swift/BleManagerNitroOptions.swift +53 -0
  194. package/nitrogen/generated/ios/swift/BleRestoredState.swift +47 -0
  195. package/nitrogen/generated/ios/swift/CharacteristicSubscriptionType.swift +40 -0
  196. package/nitrogen/generated/ios/swift/ConnectionOptions.swift +57 -0
  197. package/nitrogen/generated/ios/swift/ConnectionPriority.swift +44 -0
  198. package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
  199. package/nitrogen/generated/ios/swift/Func_void_LogLevel.swift +46 -0
  200. package/nitrogen/generated/ios/swift/Func_void_NativeCharacteristic.swift +46 -0
  201. package/nitrogen/generated/ios/swift/Func_void_NativeDescriptor.swift +46 -0
  202. package/nitrogen/generated/ios/swift/Func_void_NativeDevice.swift +46 -0
  203. package/nitrogen/generated/ios/swift/Func_void_State.swift +46 -0
  204. package/nitrogen/generated/ios/swift/Func_void_bool.swift +46 -0
  205. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
  206. package/nitrogen/generated/ios/swift/Func_void_std__optional_BleRestoredState_.swift +52 -0
  207. package/nitrogen/generated/ios/swift/Func_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.swift +58 -0
  208. package/nitrogen/generated/ios/swift/Func_void_std__optional_NativeBleError__std__optional_NativeDevice_.swift +58 -0
  209. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_margelo__nitro__co__zyke__ble__HybridCharacteristicSpec_.swift +50 -0
  210. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_margelo__nitro__co__zyke__ble__HybridDescriptorSpec_.swift +50 -0
  211. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeCharacteristic_.swift +46 -0
  212. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeDescriptor_.swift +46 -0
  213. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeDevice_.swift +46 -0
  214. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeService_.swift +46 -0
  215. package/nitrogen/generated/ios/swift/HybridBleManagerSpec.swift +78 -0
  216. package/nitrogen/generated/ios/swift/HybridBleManagerSpec_cxx.swift +852 -0
  217. package/nitrogen/generated/ios/swift/HybridCharacteristicSpec.swift +65 -0
  218. package/nitrogen/generated/ios/swift/HybridCharacteristicSpec_cxx.swift +384 -0
  219. package/nitrogen/generated/ios/swift/HybridDescriptorSpec.swift +56 -0
  220. package/nitrogen/generated/ios/swift/HybridDescriptorSpec_cxx.swift +218 -0
  221. package/nitrogen/generated/ios/swift/HybridDeviceSpec.swift +76 -0
  222. package/nitrogen/generated/ios/swift/HybridDeviceSpec_cxx.swift +702 -0
  223. package/nitrogen/generated/ios/swift/HybridServiceSpec.swift +58 -0
  224. package/nitrogen/generated/ios/swift/HybridServiceSpec_cxx.swift +338 -0
  225. package/nitrogen/generated/ios/swift/LogLevel.swift +56 -0
  226. package/nitrogen/generated/ios/swift/NativeBleError.swift +278 -0
  227. package/nitrogen/generated/ios/swift/NativeCharacteristic.swift +174 -0
  228. package/nitrogen/generated/ios/swift/NativeDescriptor.swift +130 -0
  229. package/nitrogen/generated/ios/swift/NativeDevice.swift +377 -0
  230. package/nitrogen/generated/ios/swift/NativeService.swift +68 -0
  231. package/nitrogen/generated/ios/swift/ScanCallbackType.swift +44 -0
  232. package/nitrogen/generated/ios/swift/ScanMode.swift +48 -0
  233. package/nitrogen/generated/ios/swift/ScanOptions.swift +116 -0
  234. package/nitrogen/generated/ios/swift/ServiceDataEntry.swift +46 -0
  235. package/nitrogen/generated/ios/swift/State.swift +56 -0
  236. package/nitrogen/generated/ios/swift/Subscription.swift +46 -0
  237. package/nitrogen/generated/shared/c++/BleATTErrorCode.hpp +80 -0
  238. package/nitrogen/generated/shared/c++/BleAndroidErrorCode.hpp +78 -0
  239. package/nitrogen/generated/shared/c++/BleErrorCode.hpp +101 -0
  240. package/nitrogen/generated/shared/c++/BleIOSErrorCode.hpp +75 -0
  241. package/nitrogen/generated/shared/c++/BleManagerNitroOptions.hpp +70 -0
  242. package/nitrogen/generated/shared/c++/BleRestoredState.hpp +71 -0
  243. package/nitrogen/generated/shared/c++/CharacteristicSubscriptionType.hpp +64 -0
  244. package/nitrogen/generated/shared/c++/ConnectionOptions.hpp +77 -0
  245. package/nitrogen/generated/shared/c++/ConnectionPriority.hpp +65 -0
  246. package/nitrogen/generated/shared/c++/HybridBleManagerSpec.cpp +51 -0
  247. package/nitrogen/generated/shared/c++/HybridBleManagerSpec.hpp +137 -0
  248. package/nitrogen/generated/shared/c++/HybridCharacteristicSpec.cpp +39 -0
  249. package/nitrogen/generated/shared/c++/HybridCharacteristicSpec.hpp +101 -0
  250. package/nitrogen/generated/shared/c++/HybridDescriptorSpec.cpp +30 -0
  251. package/nitrogen/generated/shared/c++/HybridDescriptorSpec.hpp +75 -0
  252. package/nitrogen/generated/shared/c++/HybridDeviceSpec.cpp +50 -0
  253. package/nitrogen/generated/shared/c++/HybridDeviceSpec.hpp +123 -0
  254. package/nitrogen/generated/shared/c++/HybridServiceSpec.cpp +32 -0
  255. package/nitrogen/generated/shared/c++/HybridServiceSpec.hpp +90 -0
  256. package/nitrogen/generated/shared/c++/LogLevel.hpp +68 -0
  257. package/nitrogen/generated/shared/c++/NativeBleError.hpp +117 -0
  258. package/nitrogen/generated/shared/c++/NativeCharacteristic.hpp +114 -0
  259. package/nitrogen/generated/shared/c++/NativeDescriptor.hpp +98 -0
  260. package/nitrogen/generated/shared/c++/NativeDevice.hpp +121 -0
  261. package/nitrogen/generated/shared/c++/NativeService.hpp +81 -0
  262. package/nitrogen/generated/shared/c++/ScanCallbackType.hpp +65 -0
  263. package/nitrogen/generated/shared/c++/ScanMode.hpp +66 -0
  264. package/nitrogen/generated/shared/c++/ScanOptions.hpp +86 -0
  265. package/nitrogen/generated/shared/c++/ServiceDataEntry.hpp +73 -0
  266. package/nitrogen/generated/shared/c++/State.hpp +68 -0
  267. package/nitrogen/generated/shared/c++/Subscription.hpp +69 -0
  268. package/package.json +14 -13
  269. package/plugin/build/index.d.ts +1 -1
  270. package/plugin/build/index.js +42 -4
  271. package/plugin/build/withBleNitro.d.ts +1 -1
  272. package/plugin/build/withBleNitro.js +16 -11
  273. package/react-native.config.js +2 -7
  274. package/src/BleManagerCompatFactory.ts +1 -1
  275. package/src/BleManagerFactory.ts +2 -2
  276. package/src/__tests__/BleManager.test.ts +2 -2
  277. package/src/compatibility/constants.ts +1 -1
  278. package/src/compatibility/deviceWrapper.ts +4 -4
  279. package/src/compatibility/enums.ts +1 -1
  280. package/src/compatibility/index.ts +5 -5
  281. package/src/compatibility/serviceData.ts +1 -1
  282. package/src/errors/BleError.ts +2 -2
  283. package/src/index.ts +10 -10
  284. package/src/specs/BleManager.nitro.ts +1 -1
  285. package/src/specs/Characteristic.nitro.ts +1 -1
  286. package/src/specs/Descriptor.nitro.ts +1 -1
  287. package/src/specs/Device.nitro.ts +1 -1
  288. package/src/specs/Service.nitro.ts +1 -1
  289. package/src/utils/base64.ts +1 -1
  290. package/src/utils/index.ts +2 -2
  291. package/src/utils/uuid.ts +1 -1
  292. package/android/src/main/kotlin/co/zyke/ble/BleNitroPackage.kt +0 -37
  293. package/ios/BleNitro.podspec +0 -37
@@ -36,6 +36,9 @@ android {
36
36
  }
37
37
  }
38
38
 
39
+ // Apply Nitro autolinking
40
+ apply from: '../nitrogen/generated/android/BleNitro+autolinking.gradle'
41
+
39
42
  dependencies {
40
43
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
41
44
  implementation 'androidx.core:core-ktx:1.9.0'
@@ -4,7 +4,7 @@
4
4
  * Copyright © 2025 Zyke (https://zyke.co)
5
5
  */
6
6
 
7
- package co.zyke.ble
7
+ package com.margelo.nitro.co.zyke.ble
8
8
 
9
9
  import android.bluetooth.*
10
10
  import android.bluetooth.le.*
@@ -15,6 +15,7 @@ import android.util.Base64
15
15
  import android.util.Log
16
16
  import androidx.core.content.ContextCompat
17
17
  import com.facebook.react.bridge.ReactApplicationContext
18
+ import com.margelo.nitro.co.zyke.ble.HybridBleManagerSpec
18
19
  import com.margelo.nitro.NitroModules
19
20
  import kotlinx.coroutines.*
20
21
  import kotlinx.coroutines.channels.Channel
@@ -33,7 +34,12 @@ import com.margelo.nitro.co.zyke.ble.*
33
34
  * Core BLE Manager implementation using Android BLE APIs
34
35
  * Implements the HybridBleManagerSpec interface generated by Nitro
35
36
  */
36
- class BleNitroBleManager(private val context: ReactApplicationContext) : HybridBleManagerSpec {
37
+ class BleNitroBleManager : HybridBleManagerSpec {
38
+
39
+ // Get context from Nitro's context system
40
+ private val context: ReactApplicationContext by lazy {
41
+ NitroModules.getReactApplicationContext()
42
+ }
37
43
 
38
44
  companion object {
39
45
  private const val TAG = "BleNitroBleManager"
package/app.plugin.cjs ADDED
@@ -0,0 +1 @@
1
+ module.exports = require('./plugin/build/index.js').default; // eslint-disable-line @typescript-eslint/no-var-requires
@@ -335,6 +335,7 @@ public class BleNitroBleManager: HybridBleManagerSpec, CBCentralManagerDelegate
335
335
  public func centralManagerDidUpdateState(_ central: CBCentralManager) {
336
336
  let state = mapCBManagerState(central.state)
337
337
  stateChangeListener?(state)
338
+ print("BleNitro: Central manager state changed to: \(central.state.rawValue)")
338
339
  }
339
340
 
340
341
  public func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String: Any], rssi RSSI: NSNumber) {
@@ -556,14 +557,6 @@ extension BleNitroBleManager: CBPeripheralDelegate {
556
557
  }
557
558
  }
558
559
 
559
- public func centralManagerDidUpdateState(_ central: CBCentralManager) {
560
- let newState = convertCBManagerStateToState(central.state)
561
-
562
- // Notify state change listener if available
563
- stateChangeListener?(newState)
564
-
565
- print("BleNitro: Central manager state changed to: \(central.state.rawValue)")
566
- }
567
560
  }
568
561
 
569
562
  /**
@@ -19,13 +19,6 @@ public class BleNitroModule: NSObject {
19
19
  public func constantsToExport() -> [String: Any] {
20
20
  return [:]
21
21
  }
22
- }
23
-
24
- /**
25
- * Nitro module factory for creating BLE manager instances
26
- */
27
- @_cdecl("create_ble_nitro_manager")
28
- public func createBleNitroManager() -> UnsafeMutableRawPointer {
29
- let manager = BleNitroBleManager()
30
- return Unmanaged.passRetained(manager).toOpaque()
22
+
23
+ // Autolinking handles the Nitro registration automatically
31
24
  }
@@ -1,5 +1,5 @@
1
- import type { BleManager as BleManagerInterface } from './specs/BleManager.nitro.js';
2
- import type { BleManagerOptions } from './specs/types.js';
1
+ import type { BleManager as BleManagerInterface } from './specs/BleManager.nitro';
2
+ import type { BleManagerOptions } from './specs/types';
3
3
  /**
4
4
  * Creates a BleManager instance using Nitro Modules
5
5
  * This function maintains compatibility with react-native-ble-plx's BleManager constructor
@@ -0,0 +1,56 @@
1
+ /**
2
+ * BleManager Compatibility Factory
3
+ *
4
+ * Creates BleManager instances with full react-native-ble-plx compatibility
5
+ * by wrapping the Nitro implementation with compatibility shims
6
+ */
7
+ import type { BleManagerOptions, UUID, DeviceId, TransactionId, ConnectionPriority, ConnectionOptions, ScanOptions, NativeService, NativeCharacteristic, NativeDescriptor, LogLevel, Subscription } from './specs/types';
8
+ import { DeviceWrapper } from './compatibility/deviceWrapper';
9
+ import { State as PlxState, LogLevel as PlxLogLevel } from './compatibility/enums';
10
+ /**
11
+ * BleManager wrapper that provides react-native-ble-plx compatibility
12
+ */
13
+ export declare class BleManagerCompat {
14
+ private bleManager;
15
+ constructor(options?: BleManagerOptions);
16
+ destroy(): Promise<void>;
17
+ setLogLevel(logLevel: LogLevel | string): Promise<PlxLogLevel>;
18
+ logLevel(): Promise<PlxLogLevel>;
19
+ cancelTransaction(transactionId: TransactionId): Promise<void>;
20
+ enable(transactionId?: TransactionId): Promise<BleManagerCompat>;
21
+ disable(transactionId?: TransactionId): Promise<BleManagerCompat>;
22
+ state(): Promise<PlxState>;
23
+ onStateChange(listener: (newState: PlxState) => void, emitCurrentState?: boolean): Subscription;
24
+ startDeviceScan(uuids: UUID[] | null, options: ScanOptions | null, listener: (error: any | null, scannedDevice: DeviceWrapper | null) => void): Promise<void>;
25
+ stopDeviceScan(): Promise<void>;
26
+ connectToDevice(deviceIdentifier: DeviceId, options?: Partial<ConnectionOptions>): Promise<DeviceWrapper>;
27
+ cancelDeviceConnection(deviceIdentifier: DeviceId): Promise<DeviceWrapper>;
28
+ isDeviceConnected(deviceIdentifier: DeviceId): Promise<boolean>;
29
+ onDeviceDisconnected(deviceIdentifier: DeviceId, listener: (error: any | null, device: DeviceWrapper | null) => void): Subscription;
30
+ devices(deviceIdentifiers: DeviceId[]): Promise<DeviceWrapper[]>;
31
+ connectedDevices(serviceUUIDs: UUID[]): Promise<DeviceWrapper[]>;
32
+ readRSSIForDevice(deviceIdentifier: DeviceId, transactionId?: TransactionId): Promise<DeviceWrapper>;
33
+ requestMTUForDevice(deviceIdentifier: DeviceId, mtu: number, transactionId?: TransactionId): Promise<DeviceWrapper>;
34
+ requestConnectionPriorityForDevice(deviceIdentifier: DeviceId, connectionPriority: ConnectionPriority, transactionId?: TransactionId): Promise<DeviceWrapper>;
35
+ discoverAllServicesAndCharacteristicsForDevice(deviceIdentifier: DeviceId, transactionId?: TransactionId): Promise<DeviceWrapper>;
36
+ servicesForDevice(deviceIdentifier: DeviceId): Promise<NativeService[]>;
37
+ characteristicsForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID): Promise<NativeCharacteristic[]>;
38
+ readCharacteristicForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, transactionId?: TransactionId): Promise<NativeCharacteristic>;
39
+ writeCharacteristicWithResponseForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, base64Value: string, transactionId?: TransactionId): Promise<NativeCharacteristic>;
40
+ writeCharacteristicWithoutResponseForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, base64Value: string, transactionId?: TransactionId): Promise<NativeCharacteristic>;
41
+ monitorCharacteristicForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, listener: (error: any | null, characteristic: NativeCharacteristic | null) => void, // TODO: COMPAT! use proper error type like in react-native-ble-plx
42
+ transactionId?: TransactionId, subscriptionType?: 'notification' | 'indication'): Subscription;
43
+ descriptorsForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID): Promise<NativeDescriptor[]>;
44
+ readDescriptorForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, descriptorUUID: UUID, transactionId?: TransactionId): Promise<NativeDescriptor>;
45
+ writeDescriptorForDevice(deviceIdentifier: DeviceId, serviceUUID: UUID, characteristicUUID: UUID, descriptorUUID: UUID, valueBase64: string, transactionId?: TransactionId): Promise<NativeDescriptor>;
46
+ /**
47
+ * Helper method to create a Device wrapper from NativeDevice data
48
+ * This is a temporary method until we have proper Device Nitro objects
49
+ */
50
+ private createDeviceFromNative;
51
+ }
52
+ /**
53
+ * Factory function to create a compatibility BleManager
54
+ */
55
+ export declare function createBleManagerCompat(options?: BleManagerOptions): BleManagerCompat;
56
+ //# sourceMappingURL=BleManagerCompatFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleManagerCompatFactory.d.ts","sourceRoot":"","sources":["../../src/BleManagerCompatFactory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ /**
3
+ * BleManager Compatibility Factory
4
+ *
5
+ * Creates BleManager instances with full react-native-ble-plx compatibility
6
+ * by wrapping the Nitro implementation with compatibility shims
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.BleManagerCompat = void 0;
10
+ exports.createBleManagerCompat = createBleManagerCompat;
11
+ const BleManagerFactory_1 = require("./BleManagerFactory");
12
+ const deviceWrapper_1 = require("./compatibility/deviceWrapper");
13
+ const enums_1 = require("./compatibility/enums");
14
+ /**
15
+ * BleManager wrapper that provides react-native-ble-plx compatibility
16
+ */
17
+ class BleManagerCompat {
18
+ constructor(options) {
19
+ this.bleManager = (0, BleManagerFactory_1.createBleManager)(options);
20
+ }
21
+ // Lifecycle
22
+ async destroy() {
23
+ return await this.bleManager.destroy();
24
+ }
25
+ // Common operations with compatibility
26
+ async setLogLevel(logLevel) {
27
+ const normalizedLogLevel = (0, enums_1.normalizeLogLevel)(logLevel);
28
+ const result = await this.bleManager.setLogLevel(normalizedLogLevel);
29
+ return (0, enums_1.logLevelToString)(result);
30
+ }
31
+ async logLevel() {
32
+ const result = await this.bleManager.logLevel();
33
+ return (0, enums_1.logLevelToString)(result);
34
+ }
35
+ async cancelTransaction(transactionId) {
36
+ return await this.bleManager.cancelTransaction(transactionId);
37
+ }
38
+ // State management with string conversion
39
+ async enable(transactionId) {
40
+ await this.bleManager.enable(transactionId);
41
+ return this;
42
+ }
43
+ async disable(transactionId) {
44
+ await this.bleManager.disable(transactionId);
45
+ return this;
46
+ }
47
+ async state() {
48
+ const result = await this.bleManager.state();
49
+ return (0, enums_1.stateToString)(result);
50
+ }
51
+ onStateChange(listener, emitCurrentState) {
52
+ return this.bleManager.onStateChange((state) => {
53
+ listener((0, enums_1.stateToString)(state));
54
+ }, emitCurrentState);
55
+ }
56
+ // Device scanning with compatibility wrappers
57
+ async startDeviceScan(uuids, options, listener // TODO: COMPAT! remove any and move to BleError as react-native-ble-plx uses this type as well!
58
+ ) {
59
+ return await this.bleManager.startDeviceScan(uuids, options, (error, device) => {
60
+ listener(error, device ? new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(device)) : null);
61
+ });
62
+ }
63
+ async stopDeviceScan() {
64
+ return await this.bleManager.stopDeviceScan();
65
+ }
66
+ // Connection management
67
+ async connectToDevice(deviceIdentifier, options) {
68
+ var _a, _b, _c;
69
+ // Provide defaults for Nitro's required fields
70
+ const connectionOptions = {
71
+ autoConnect: (_a = options === null || options === void 0 ? void 0 : options.autoConnect) !== null && _a !== void 0 ? _a : false,
72
+ requestMTU: (_b = options === null || options === void 0 ? void 0 : options.requestMTU) !== null && _b !== void 0 ? _b : 23,
73
+ timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 0,
74
+ };
75
+ const result = await this.bleManager.connectToDevice(deviceIdentifier, connectionOptions);
76
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
77
+ }
78
+ async cancelDeviceConnection(deviceIdentifier) {
79
+ const result = await this.bleManager.cancelDeviceConnection(deviceIdentifier);
80
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
81
+ }
82
+ async isDeviceConnected(deviceIdentifier) {
83
+ return await this.bleManager.isDeviceConnected(deviceIdentifier);
84
+ }
85
+ onDeviceDisconnected(deviceIdentifier, listener // TODO: COMPAT! use propper error type like in react-native-ble-plx!!!
86
+ ) {
87
+ return this.bleManager.onDeviceDisconnected(deviceIdentifier, (error, device) => {
88
+ listener(error, device ? new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(device)) : null);
89
+ });
90
+ }
91
+ // Device discovery
92
+ async devices(deviceIdentifiers) {
93
+ const result = await this.bleManager.devices(deviceIdentifiers);
94
+ return result.map(device => new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(device)));
95
+ }
96
+ async connectedDevices(serviceUUIDs) {
97
+ const result = await this.bleManager.connectedDevices(serviceUUIDs);
98
+ return result.map(device => new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(device)));
99
+ }
100
+ // RSSI and MTU operations
101
+ async readRSSIForDevice(deviceIdentifier, transactionId) {
102
+ const result = await this.bleManager.readRSSIForDevice(deviceIdentifier, transactionId);
103
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
104
+ }
105
+ async requestMTUForDevice(deviceIdentifier, mtu, transactionId) {
106
+ const result = await this.bleManager.requestMTUForDevice(deviceIdentifier, mtu, transactionId);
107
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
108
+ }
109
+ async requestConnectionPriorityForDevice(deviceIdentifier, connectionPriority, transactionId) {
110
+ const result = await this.bleManager.requestConnectionPriorityForDevice(deviceIdentifier, connectionPriority, transactionId);
111
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
112
+ }
113
+ // Service discovery
114
+ async discoverAllServicesAndCharacteristicsForDevice(deviceIdentifier, transactionId) {
115
+ const result = await this.bleManager.discoverAllServicesAndCharacteristicsForDevice(deviceIdentifier, transactionId);
116
+ return new deviceWrapper_1.DeviceWrapper(this.createDeviceFromNative(result));
117
+ }
118
+ // Service operations
119
+ async servicesForDevice(deviceIdentifier) {
120
+ return await this.bleManager.servicesForDevice(deviceIdentifier);
121
+ }
122
+ // Characteristic operations
123
+ async characteristicsForDevice(deviceIdentifier, serviceUUID) {
124
+ return await this.bleManager.characteristicsForDevice(deviceIdentifier, serviceUUID);
125
+ }
126
+ async readCharacteristicForDevice(deviceIdentifier, serviceUUID, characteristicUUID, transactionId) {
127
+ return await this.bleManager.readCharacteristicForDevice(deviceIdentifier, serviceUUID, characteristicUUID, transactionId);
128
+ }
129
+ async writeCharacteristicWithResponseForDevice(deviceIdentifier, serviceUUID, characteristicUUID, base64Value, transactionId) {
130
+ return await this.bleManager.writeCharacteristicWithResponseForDevice(deviceIdentifier, serviceUUID, characteristicUUID, base64Value, transactionId);
131
+ }
132
+ async writeCharacteristicWithoutResponseForDevice(deviceIdentifier, serviceUUID, characteristicUUID, base64Value, transactionId) {
133
+ return await this.bleManager.writeCharacteristicWithoutResponseForDevice(deviceIdentifier, serviceUUID, characteristicUUID, base64Value, transactionId);
134
+ }
135
+ monitorCharacteristicForDevice(deviceIdentifier, serviceUUID, characteristicUUID, listener, // TODO: COMPAT! use proper error type like in react-native-ble-plx
136
+ transactionId, subscriptionType) {
137
+ const nitroSubscriptionType = subscriptionType
138
+ ? (0, enums_1.normalizeCharacteristicSubscriptionType)(subscriptionType)
139
+ : undefined;
140
+ return this.bleManager.monitorCharacteristicForDevice(deviceIdentifier, serviceUUID, characteristicUUID, listener, transactionId, nitroSubscriptionType);
141
+ }
142
+ // Descriptor operations
143
+ async descriptorsForDevice(deviceIdentifier, serviceUUID, characteristicUUID) {
144
+ return await this.bleManager.descriptorsForDevice(deviceIdentifier, serviceUUID, characteristicUUID);
145
+ }
146
+ async readDescriptorForDevice(deviceIdentifier, serviceUUID, characteristicUUID, descriptorUUID, transactionId) {
147
+ return await this.bleManager.readDescriptorForDevice(deviceIdentifier, serviceUUID, characteristicUUID, descriptorUUID, transactionId);
148
+ }
149
+ async writeDescriptorForDevice(deviceIdentifier, serviceUUID, characteristicUUID, descriptorUUID, valueBase64, transactionId) {
150
+ return await this.bleManager.writeDescriptorForDevice(deviceIdentifier, serviceUUID, characteristicUUID, descriptorUUID, valueBase64, transactionId);
151
+ }
152
+ /**
153
+ * Helper method to create a Device wrapper from NativeDevice data
154
+ * This is a temporary method until we have proper Device Nitro objects
155
+ */
156
+ createDeviceFromNative(nativeDevice) {
157
+ // This is a placeholder - in the actual implementation, we'd need to create
158
+ // proper Nitro Device objects, but for now we'll work with the native data
159
+ return {
160
+ id: nativeDevice.id,
161
+ deviceName: nativeDevice.name,
162
+ rssi: nativeDevice.rssi,
163
+ mtu: nativeDevice.mtu,
164
+ manufacturerData: nativeDevice.manufacturerData,
165
+ rawScanRecord: nativeDevice.rawScanRecord,
166
+ serviceData: nativeDevice.serviceData,
167
+ serviceUUIDs: nativeDevice.serviceUUIDs,
168
+ localName: nativeDevice.localName,
169
+ txPowerLevel: nativeDevice.txPowerLevel,
170
+ solicitedServiceUUIDs: nativeDevice.solicitedServiceUUIDs,
171
+ isConnectable: nativeDevice.isConnectable,
172
+ overflowServiceUUIDs: nativeDevice.overflowServiceUUIDs,
173
+ // Add placeholder methods - these would be implemented in the actual Device class
174
+ requestConnectionPriority: async () => this.createDeviceFromNative(nativeDevice),
175
+ readRSSI: async () => this.createDeviceFromNative(nativeDevice),
176
+ requestMTU: async () => this.createDeviceFromNative(nativeDevice),
177
+ connect: async () => this.createDeviceFromNative(nativeDevice),
178
+ cancelConnection: async () => this.createDeviceFromNative(nativeDevice),
179
+ isConnected: async () => false,
180
+ onDisconnected: () => ({ remove: () => { } }),
181
+ discoverAllServicesAndCharacteristics: async () => this.createDeviceFromNative(nativeDevice),
182
+ services: async () => [],
183
+ characteristicsForService: async () => [],
184
+ readCharacteristicForService: async () => ({}),
185
+ writeCharacteristicWithResponseForService: async () => ({}),
186
+ writeCharacteristicWithoutResponseForService: async () => ({}),
187
+ monitorCharacteristicForService: () => ({ remove: () => { } }),
188
+ descriptorsForService: async () => [],
189
+ readDescriptorForService: async () => ({}),
190
+ writeDescriptorForService: async () => ({}),
191
+ };
192
+ }
193
+ }
194
+ exports.BleManagerCompat = BleManagerCompat;
195
+ /**
196
+ * Factory function to create a compatibility BleManager
197
+ */
198
+ function createBleManagerCompat(options) {
199
+ return new BleManagerCompat(options);
200
+ }
201
+ //# sourceMappingURL=BleManagerCompatFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleManagerCompatFactory.js","sourceRoot":"","sources":["../../src/BleManagerCompatFactory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { BleManager as BleManagerInterface } from './specs/BleManager.nitro';
2
+ import type { BleManagerOptions } from './specs/types';
3
+ /**
4
+ * Creates a BleManager instance using Nitro Modules
5
+ * This function maintains compatibility with react-native-ble-plx's BleManager constructor
6
+ */
7
+ export declare function createBleManager(options?: BleManagerOptions): BleManagerInterface;
8
+ /**
9
+ * Helper function to retrieve stored callbacks for a BleManager instance
10
+ * This is used internally when callbacks need to be invoked
11
+ */
12
+ export declare function getStoredCallbacks(manager: BleManagerInterface): {
13
+ restoreStateFunction?: (restoredState: any) => void;
14
+ errorCodesToMessagesMapping?: {
15
+ [key: number]: string;
16
+ };
17
+ } | undefined;
18
+ /**
19
+ * Helper function to get custom error message if available
20
+ * @param manager The BleManager instance
21
+ * @param errorCode The BLE error code
22
+ * @param defaultMessage Default error message
23
+ * @returns Custom message if available, otherwise default message
24
+ */
25
+ export declare function getCustomErrorMessage(manager: BleManagerInterface, errorCode: number, defaultMessage: string): string;
26
+ /**
27
+ * Legacy compatibility: Export a BleManager constructor function
28
+ * This maintains compatibility with code that imports { BleManager } from 'react-native-ble-plx'
29
+ */
30
+ export declare const BleManager: (options?: BleManagerOptions) => BleManagerInterface;
31
+ //# sourceMappingURL=BleManagerFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleManagerFactory.d.ts","sourceRoot":"","sources":["../../src/BleManagerFactory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,IAAI,mBAAmB,EAA0B,MAAM,0BAA0B,CAAC;AAC1G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAQvD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,mBAAmB,CA6CjF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB;2BA3DtC,CAAC,aAAa,EAAE,GAAG,KAAK,IAAI;kCACrB;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;cA4DxD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,mBAAmB,EAC5B,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,MAAM,CAIR;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAElB,CAAC,OAAO,CAAC,EAAE,iBAAiB,KAAK,mBAAmB,CAAC"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BleManager = void 0;
4
+ exports.createBleManager = createBleManager;
5
+ exports.getStoredCallbacks = getStoredCallbacks;
6
+ exports.getCustomErrorMessage = getCustomErrorMessage;
7
+ const react_native_nitro_modules_1 = require("react-native-nitro-modules");
8
+ // Store callbacks that can't be passed to Nitro
9
+ const storedCallbacks = new WeakMap();
10
+ /**
11
+ * Creates a BleManager instance using Nitro Modules
12
+ * This function maintains compatibility with react-native-ble-plx's BleManager constructor
13
+ */
14
+ function createBleManager(options) {
15
+ const BleManagerModule = react_native_nitro_modules_1.NitroModules.createHybridObject('BleManager');
16
+ if (!BleManagerModule) {
17
+ throw new Error('Failed to create BleManager: Nitro module not found. ' +
18
+ 'Make sure react-native-ble-nitro is properly installed and linked.');
19
+ }
20
+ // Initialize with options if provided
21
+ if (options) {
22
+ // Extract Nitro-compatible options
23
+ const nitroOptions = {
24
+ restoreStateIdentifier: options.restoreStateIdentifier,
25
+ };
26
+ // Store callbacks and mappings that can't be passed to Nitro
27
+ if (options.restoreStateFunction || options.errorCodesToMessagesMapping) {
28
+ storedCallbacks.set(BleManagerModule, {
29
+ restoreStateFunction: options.restoreStateFunction,
30
+ errorCodesToMessagesMapping: options.errorCodesToMessagesMapping,
31
+ });
32
+ }
33
+ // Note: initialize() is async but we need to maintain sync compatibility with react-native-ble-plx
34
+ // The initialization will happen asynchronously in the background
35
+ BleManagerModule.initialize(nitroOptions).then(async () => {
36
+ // Check for restored state and call the callback if available
37
+ if (options.restoreStateFunction) {
38
+ try {
39
+ const restoredState = await BleManagerModule.getRestoredState();
40
+ if (restoredState) {
41
+ options.restoreStateFunction(restoredState);
42
+ }
43
+ }
44
+ catch (error) {
45
+ console.warn('BleManager restore state callback failed:', error);
46
+ }
47
+ }
48
+ }).catch(error => {
49
+ console.warn('BleManager initialization failed:', error);
50
+ });
51
+ }
52
+ return BleManagerModule;
53
+ }
54
+ /**
55
+ * Helper function to retrieve stored callbacks for a BleManager instance
56
+ * This is used internally when callbacks need to be invoked
57
+ */
58
+ function getStoredCallbacks(manager) {
59
+ return storedCallbacks.get(manager);
60
+ }
61
+ /**
62
+ * Helper function to get custom error message if available
63
+ * @param manager The BleManager instance
64
+ * @param errorCode The BLE error code
65
+ * @param defaultMessage Default error message
66
+ * @returns Custom message if available, otherwise default message
67
+ */
68
+ function getCustomErrorMessage(manager, errorCode, defaultMessage) {
69
+ var _a;
70
+ const callbacks = storedCallbacks.get(manager);
71
+ const customMessage = (_a = callbacks === null || callbacks === void 0 ? void 0 : callbacks.errorCodesToMessagesMapping) === null || _a === void 0 ? void 0 : _a[errorCode];
72
+ return customMessage || defaultMessage;
73
+ }
74
+ /**
75
+ * Legacy compatibility: Export a BleManager constructor function
76
+ * This maintains compatibility with code that imports { BleManager } from 'react-native-ble-plx'
77
+ */
78
+ exports.BleManager = function (options) {
79
+ return createBleManager(options);
80
+ };
81
+ //# sourceMappingURL=BleManagerFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BleManagerFactory.js","sourceRoot":"","sources":["../../src/BleManagerFactory.ts"],"names":[],"mappings":";;;AAcA,4CA6CC;AAMD,gDAEC;AASD,sDAQC;AApFD,2EAA0D;AAI1D,gDAAgD;AAChD,MAAM,eAAe,GAAG,IAAI,OAAO,EAG/B,CAAC;AAEL;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,OAA2B;IAC1D,MAAM,gBAAgB,GAAG,yCAAY,CAAC,kBAAkB,CAAsB,YAAY,CAAC,CAAC;IAE5F,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,uDAAuD;YACvD,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,sCAAsC;IACtC,IAAI,OAAO,EAAE,CAAC;QACZ,mCAAmC;QACnC,MAAM,YAAY,GAA2B;YAC3C,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAC;QAEF,6DAA6D;QAC7D,IAAI,OAAO,CAAC,oBAAoB,IAAI,OAAO,CAAC,2BAA2B,EAAE,CAAC;YACxE,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE;gBACpC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;gBAClD,2BAA2B,EAAE,OAAO,CAAC,2BAA2B;aACjE,CAAC,CAAC;QACL,CAAC;QAED,mGAAmG;QACnG,kEAAkE;QAClE,gBAAgB,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACxD,8DAA8D;YAC9D,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;gBACjC,IAAI,CAAC;oBACH,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;oBAChE,IAAI,aAAa,EAAE,CAAC;wBAClB,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;oBAC9C,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACf,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,OAA4B;IAC7D,OAAO,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,OAA4B,EAC5B,SAAiB,EACjB,cAAsB;;IAEtB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,2BAA2B,0CAAG,SAAS,CAAC,CAAC;IAC1E,OAAO,aAAa,IAAI,cAAc,CAAC;AACzC,CAAC;AAED;;;GAGG;AACU,QAAA,UAAU,GAAG,UAAS,OAA2B;IAC5D,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACnC,CAAyD,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * React-native-ble-plx compatibility constants
3
+ *
4
+ * Re-exports all constants and types to maintain API compatibility
5
+ */
6
+ export declare const State: {
7
+ readonly Unknown: "Unknown";
8
+ readonly Resetting: "Resetting";
9
+ readonly Unsupported: "Unsupported";
10
+ readonly Unauthorized: "Unauthorized";
11
+ readonly PoweredOff: "PoweredOff";
12
+ readonly PoweredOn: "PoweredOn";
13
+ };
14
+ export declare const LogLevel: {
15
+ readonly None: "None";
16
+ readonly Verbose: "Verbose";
17
+ readonly Debug: "Debug";
18
+ readonly Info: "Info";
19
+ readonly Warning: "Warning";
20
+ readonly Error: "Error";
21
+ };
22
+ export type StateString = typeof State[keyof typeof State];
23
+ export type LogLevelString = typeof LogLevel[keyof typeof LogLevel];
24
+ export declare const CharacteristicSubscriptionType: {
25
+ readonly Notification: "notification";
26
+ readonly Indication: "indication";
27
+ };
28
+ export type CharacteristicSubscriptionTypeString = typeof CharacteristicSubscriptionType[keyof typeof CharacteristicSubscriptionType];
29
+ export declare const RefreshGattMoment: {
30
+ readonly OnConnected: "OnConnected";
31
+ };
32
+ export type RefreshGattMomentString = typeof RefreshGattMoment[keyof typeof RefreshGattMoment];
33
+ export declare const ScanMode: {
34
+ readonly Opportunistic: -1;
35
+ readonly LowPower: 0;
36
+ readonly Balanced: 1;
37
+ readonly LowLatency: 2;
38
+ };
39
+ export declare const ScanCallbackType: {
40
+ readonly AllMatches: 1;
41
+ readonly FirstMatch: 2;
42
+ readonly MatchLost: 4;
43
+ };
44
+ export declare const ConnectionPriority: {
45
+ readonly Balanced: 0;
46
+ readonly High: 1;
47
+ readonly LowPower: 2;
48
+ };
49
+ export { BleErrorCode, BleATTErrorCode, BleIOSErrorCode, BleAndroidErrorCode } from '../specs/types';
50
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/compatibility/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,eAAO,MAAM,KAAK;;;;;;;CAOR,CAAC;AAEX,eAAO,MAAM,QAAQ;;;;;;;CAOX,CAAC;AAGX,MAAM,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,OAAO,QAAQ,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC;AAGpE,eAAO,MAAM,8BAA8B;;;CAGjC,CAAC;AAEX,MAAM,MAAM,oCAAoC,GAAG,OAAO,8BAA8B,CAAC,MAAM,OAAO,8BAA8B,CAAC,CAAC;AAGtI,eAAO,MAAM,iBAAiB;;CAEpB,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAG/F,eAAO,MAAM,QAAQ;;;;;CAKX,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAGX,OAAO,EACL,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACpB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * React-native-ble-plx compatibility constants
4
+ *
5
+ * Re-exports all constants and types to maintain API compatibility
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.BleAndroidErrorCode = exports.BleIOSErrorCode = exports.BleATTErrorCode = exports.BleErrorCode = exports.ConnectionPriority = exports.ScanCallbackType = exports.ScanMode = exports.RefreshGattMoment = exports.CharacteristicSubscriptionType = exports.LogLevel = exports.State = void 0;
9
+ // Re-export original string-based constants for backward compatibility
10
+ exports.State = {
11
+ Unknown: 'Unknown',
12
+ Resetting: 'Resetting',
13
+ Unsupported: 'Unsupported',
14
+ Unauthorized: 'Unauthorized',
15
+ PoweredOff: 'PoweredOff',
16
+ PoweredOn: 'PoweredOn',
17
+ };
18
+ exports.LogLevel = {
19
+ None: 'None',
20
+ Verbose: 'Verbose',
21
+ Debug: 'Debug',
22
+ Info: 'Info',
23
+ Warning: 'Warning',
24
+ Error: 'Error',
25
+ };
26
+ // Subscription type constants
27
+ exports.CharacteristicSubscriptionType = {
28
+ Notification: 'notification',
29
+ Indication: 'indication',
30
+ };
31
+ // Connection options constants
32
+ exports.RefreshGattMoment = {
33
+ OnConnected: 'OnConnected',
34
+ };
35
+ // Scan mode constants (these remain numeric as in original)
36
+ exports.ScanMode = {
37
+ Opportunistic: -1,
38
+ LowPower: 0,
39
+ Balanced: 1,
40
+ LowLatency: 2,
41
+ };
42
+ exports.ScanCallbackType = {
43
+ AllMatches: 1,
44
+ FirstMatch: 2,
45
+ MatchLost: 4,
46
+ };
47
+ exports.ConnectionPriority = {
48
+ Balanced: 0,
49
+ High: 1,
50
+ LowPower: 2,
51
+ };
52
+ // Re-export all BLE error codes
53
+ var types_1 = require("../specs/types");
54
+ Object.defineProperty(exports, "BleErrorCode", { enumerable: true, get: function () { return types_1.BleErrorCode; } });
55
+ Object.defineProperty(exports, "BleATTErrorCode", { enumerable: true, get: function () { return types_1.BleATTErrorCode; } });
56
+ Object.defineProperty(exports, "BleIOSErrorCode", { enumerable: true, get: function () { return types_1.BleIOSErrorCode; } });
57
+ Object.defineProperty(exports, "BleAndroidErrorCode", { enumerable: true, get: function () { return types_1.BleAndroidErrorCode; } });
58
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/compatibility/constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,uEAAuE;AAC1D,QAAA,KAAK,GAAG;IACnB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;CACd,CAAC;AAEE,QAAA,QAAQ,GAAG;IACtB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACN,CAAC;AAMX,8BAA8B;AACjB,QAAA,8BAA8B,GAAG;IAC5C,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;CAChB,CAAC;AAIX,+BAA+B;AAClB,QAAA,iBAAiB,GAAG;IAC/B,WAAW,EAAE,aAAa;CAClB,CAAC;AAIX,4DAA4D;AAC/C,QAAA,QAAQ,GAAG;IACtB,aAAa,EAAE,CAAC,CAAC;IACjB,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,UAAU,EAAE,CAAC;CACL,CAAC;AAEE,QAAA,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,SAAS,EAAE,CAAC;CACJ,CAAC;AAEE,QAAA,kBAAkB,GAAG;IAChC,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,CAAC;CACH,CAAC;AAEX,gCAAgC;AAChC,wCAKwB;AAJtB,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,wGAAA,eAAe,OAAA;AACf,4GAAA,mBAAmB,OAAA"}