react-native-ble-nitro 1.0.0-beta.8 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/BleNitro.podspec +39 -0
  2. package/LICENSE +1 -1
  3. package/README.md +273 -77
  4. package/ios/BleNitroBleManager.swift +425 -464
  5. package/ios/BlePeripheralDelegate.swift +174 -0
  6. package/lib/commonjs/index.d.ts +174 -10
  7. package/lib/commonjs/index.d.ts.map +1 -1
  8. package/lib/commonjs/index.js +461 -38
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/specs/NativeBleNitro.d.ts +5 -0
  11. package/lib/commonjs/specs/NativeBleNitro.d.ts.map +1 -0
  12. package/lib/commonjs/{utils/index.js → specs/NativeBleNitro.js} +6 -3
  13. package/lib/commonjs/specs/NativeBleNitro.js.map +1 -0
  14. package/lib/commonjs/specs/NativeBleNitro.nitro.d.ts +69 -0
  15. package/lib/commonjs/specs/NativeBleNitro.nitro.d.ts.map +1 -0
  16. package/lib/commonjs/specs/NativeBleNitro.nitro.js +14 -0
  17. package/lib/commonjs/specs/NativeBleNitro.nitro.js.map +1 -0
  18. package/lib/index.d.ts +174 -10
  19. package/lib/index.js +456 -16
  20. package/lib/specs/NativeBleNitro.d.ts +4 -0
  21. package/lib/specs/NativeBleNitro.js +5 -0
  22. package/lib/specs/NativeBleNitro.nitro.d.ts +68 -0
  23. package/lib/specs/NativeBleNitro.nitro.js +10 -0
  24. package/nitro.json +1 -1
  25. package/nitrogen/generated/android/BleNitro+autolinking.cmake +2 -10
  26. package/nitrogen/generated/android/BleNitroOnLoad.cpp +25 -22
  27. package/nitrogen/generated/android/c++/JBLEDevice.hpp +95 -0
  28. package/nitrogen/generated/android/c++/{JState.hpp → JBLEState.hpp} +22 -22
  29. package/nitrogen/generated/android/c++/JFunc_void_BLEDevice.hpp +82 -0
  30. package/nitrogen/generated/android/c++/JFunc_void_BLEState.hpp +76 -0
  31. package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +74 -0
  32. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string.hpp +75 -0
  33. package/nitrogen/generated/android/c++/JFunc_void_bool_std__string_std__string.hpp +75 -0
  34. package/nitrogen/generated/android/c++/JFunc_void_bool_std__vector_double__std__string.hpp +86 -0
  35. package/nitrogen/generated/android/c++/JFunc_void_std__string_bool_std__string.hpp +75 -0
  36. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__vector_double_.hpp +86 -0
  37. package/nitrogen/generated/android/c++/JFunc_void_std__vector_BLEDevice_.hpp +99 -0
  38. package/nitrogen/generated/android/c++/JFunc_void_std__vector_std__string_.hpp +93 -0
  39. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.cpp +171 -0
  40. package/nitrogen/generated/android/c++/JHybridNativeBleNitroSpec.hpp +83 -0
  41. package/nitrogen/generated/android/c++/JManufacturerData.hpp +73 -0
  42. package/nitrogen/generated/android/c++/JManufacturerDataEntry.hpp +68 -0
  43. package/nitrogen/generated/android/c++/JScanFilter.hpp +79 -0
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BLEDevice.kt +44 -0
  45. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{LogLevel.kt → BLEState.kt} +9 -13
  46. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{Func_void_std__optional_NativeBleError__std__optional_NativeDevice_.kt → Func_void_BLEDevice.kt} +15 -14
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{Func_void.kt → Func_void_BLEState.kt} +15 -14
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{Func_void_State.kt → Func_void_bool.kt} +15 -14
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{Func_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.kt → Func_void_bool_std__string.kt} +15 -14
  50. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__string_std__string.kt +81 -0
  51. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_bool_std__vector_double__std__string.kt +81 -0
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_bool_std__string.kt +81 -0
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__string_std__vector_double_.kt +81 -0
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__vector_BLEDevice_.kt +81 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Func_void_std__vector_std__string_.kt +81 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridNativeBleNitroSpec.kt +223 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{ServiceDataEntry.kt → ManufacturerData.kt} +7 -5
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{ConnectionOptions.kt → ManufacturerDataEntry.kt} +10 -6
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/{NativeService.kt → ScanFilter.kt} +13 -7
  60. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.cpp +67 -175
  61. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Bridge.hpp +205 -867
  62. package/nitrogen/generated/ios/BleNitro-Swift-Cxx-Umbrella.hpp +20 -88
  63. package/nitrogen/generated/ios/BleNitroAutolinking.mm +3 -3
  64. package/nitrogen/generated/ios/BleNitroAutolinking.swift +4 -4
  65. package/nitrogen/generated/ios/c++/{HybridCharacteristicSpecSwift.cpp → HybridNativeBleNitroSpecSwift.cpp} +2 -2
  66. package/nitrogen/generated/ios/c++/HybridNativeBleNitroSpecSwift.hpp +205 -0
  67. package/nitrogen/generated/ios/swift/BLEDevice.swift +102 -0
  68. package/nitrogen/generated/ios/swift/{State.swift → BLEState.swift} +6 -6
  69. package/nitrogen/generated/ios/swift/Func_void.swift +1 -0
  70. package/nitrogen/generated/ios/swift/{Func_void_State.swift → Func_void_BLEDevice.swift} +12 -11
  71. package/nitrogen/generated/ios/swift/{Func_void_LogLevel.swift → Func_void_BLEState.swift} +12 -11
  72. package/nitrogen/generated/ios/swift/Func_void_bool.swift +6 -5
  73. package/nitrogen/generated/ios/swift/{Func_void_NativeDescriptor.swift → Func_void_bool_std__string.swift} +12 -11
  74. package/nitrogen/generated/ios/swift/{Func_void_std__vector_NativeCharacteristic_.swift → Func_void_bool_std__string_std__string.swift} +12 -11
  75. package/nitrogen/generated/ios/swift/Func_void_bool_std__vector_double__std__string.swift +47 -0
  76. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -0
  77. package/nitrogen/generated/ios/swift/{Func_void_NativeDevice.swift → Func_void_std__string_bool_std__string.swift} +12 -11
  78. package/nitrogen/generated/ios/swift/{Func_void_std__optional_BleRestoredState_.swift → Func_void_std__string_std__vector_double_.swift} +12 -17
  79. package/nitrogen/generated/ios/swift/{Func_void_NativeCharacteristic.swift → Func_void_std__vector_BLEDevice_.swift} +12 -11
  80. package/nitrogen/generated/ios/swift/{Func_void_std__vector_NativeDevice_.swift → Func_void_std__vector_std__string_.swift} +12 -11
  81. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec.swift +68 -0
  82. package/nitrogen/generated/ios/swift/HybridNativeBleNitroSpec_cxx.swift +485 -0
  83. package/nitrogen/generated/ios/swift/ManufacturerData.swift +47 -0
  84. package/nitrogen/generated/ios/swift/ManufacturerDataEntry.swift +58 -0
  85. package/nitrogen/generated/ios/swift/ScanFilter.swift +69 -0
  86. package/nitrogen/generated/shared/c++/BLEDevice.hpp +90 -0
  87. package/nitrogen/generated/shared/c++/{State.hpp → BLEState.hpp} +13 -15
  88. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.cpp +40 -0
  89. package/nitrogen/generated/shared/c++/HybridNativeBleNitroSpec.hpp +93 -0
  90. package/nitrogen/generated/shared/c++/ManufacturerData.hpp +69 -0
  91. package/nitrogen/generated/shared/c++/{ServiceDataEntry.hpp → ManufacturerDataEntry.hpp} +19 -20
  92. package/nitrogen/generated/shared/c++/ScanFilter.hpp +76 -0
  93. package/package.json +9 -11
  94. package/react-native.config.js +2 -7
  95. package/src/__tests__/index.test.ts +188 -0
  96. package/src/index.ts +604 -45
  97. package/src/specs/NativeBleNitro.nitro.ts +84 -0
  98. package/src/specs/NativeBleNitro.ts +8 -0
  99. package/android/build.gradle +0 -58
  100. package/android/src/main/AndroidManifest.xml +0 -23
  101. package/android/src/main/kotlin/com/margelo/nitro/co/zyke/ble/BleNitroBleManager.kt +0 -760
  102. package/ios/BleNitro.podspec +0 -44
  103. package/ios/BleNitroModule.swift +0 -24
  104. package/lib/BleManagerCompatFactory.d.ts +0 -55
  105. package/lib/BleManagerCompatFactory.js +0 -194
  106. package/lib/BleManagerFactory.d.ts +0 -30
  107. package/lib/BleManagerFactory.js +0 -73
  108. package/lib/commonjs/BleManagerCompatFactory.d.ts +0 -56
  109. package/lib/commonjs/BleManagerCompatFactory.d.ts.map +0 -1
  110. package/lib/commonjs/BleManagerCompatFactory.js +0 -201
  111. package/lib/commonjs/BleManagerCompatFactory.js.map +0 -1
  112. package/lib/commonjs/BleManagerFactory.d.ts +0 -31
  113. package/lib/commonjs/BleManagerFactory.d.ts.map +0 -1
  114. package/lib/commonjs/BleManagerFactory.js +0 -81
  115. package/lib/commonjs/BleManagerFactory.js.map +0 -1
  116. package/lib/commonjs/compatibility/constants.d.ts +0 -50
  117. package/lib/commonjs/compatibility/constants.d.ts.map +0 -1
  118. package/lib/commonjs/compatibility/constants.js +0 -58
  119. package/lib/commonjs/compatibility/constants.js.map +0 -1
  120. package/lib/commonjs/compatibility/deviceWrapper.d.ts +0 -100
  121. package/lib/commonjs/compatibility/deviceWrapper.d.ts.map +0 -1
  122. package/lib/commonjs/compatibility/deviceWrapper.js +0 -268
  123. package/lib/commonjs/compatibility/deviceWrapper.js.map +0 -1
  124. package/lib/commonjs/compatibility/enums.d.ts +0 -39
  125. package/lib/commonjs/compatibility/enums.d.ts.map +0 -1
  126. package/lib/commonjs/compatibility/enums.js +0 -179
  127. package/lib/commonjs/compatibility/enums.js.map +0 -1
  128. package/lib/commonjs/compatibility/index.d.ts +0 -13
  129. package/lib/commonjs/compatibility/index.d.ts.map +0 -1
  130. package/lib/commonjs/compatibility/index.js +0 -41
  131. package/lib/commonjs/compatibility/index.js.map +0 -1
  132. package/lib/commonjs/compatibility/serviceData.d.ts +0 -52
  133. package/lib/commonjs/compatibility/serviceData.d.ts.map +0 -1
  134. package/lib/commonjs/compatibility/serviceData.js +0 -80
  135. package/lib/commonjs/compatibility/serviceData.js.map +0 -1
  136. package/lib/commonjs/errors/BleError.d.ts +0 -60
  137. package/lib/commonjs/errors/BleError.d.ts.map +0 -1
  138. package/lib/commonjs/errors/BleError.js +0 -125
  139. package/lib/commonjs/errors/BleError.js.map +0 -1
  140. package/lib/commonjs/specs/BleManager.nitro.d.ts +0 -45
  141. package/lib/commonjs/specs/BleManager.nitro.d.ts.map +0 -1
  142. package/lib/commonjs/specs/BleManager.nitro.js +0 -3
  143. package/lib/commonjs/specs/BleManager.nitro.js.map +0 -1
  144. package/lib/commonjs/specs/Characteristic.nitro.d.ts +0 -27
  145. package/lib/commonjs/specs/Characteristic.nitro.d.ts.map +0 -1
  146. package/lib/commonjs/specs/Characteristic.nitro.js +0 -3
  147. package/lib/commonjs/specs/Characteristic.nitro.js.map +0 -1
  148. package/lib/commonjs/specs/Descriptor.nitro.d.ts +0 -18
  149. package/lib/commonjs/specs/Descriptor.nitro.d.ts.map +0 -1
  150. package/lib/commonjs/specs/Descriptor.nitro.js +0 -3
  151. package/lib/commonjs/specs/Descriptor.nitro.js.map +0 -1
  152. package/lib/commonjs/specs/Device.nitro.d.ts +0 -38
  153. package/lib/commonjs/specs/Device.nitro.d.ts.map +0 -1
  154. package/lib/commonjs/specs/Device.nitro.js +0 -3
  155. package/lib/commonjs/specs/Device.nitro.js.map +0 -1
  156. package/lib/commonjs/specs/Service.nitro.d.ts +0 -20
  157. package/lib/commonjs/specs/Service.nitro.d.ts.map +0 -1
  158. package/lib/commonjs/specs/Service.nitro.js +0 -3
  159. package/lib/commonjs/specs/Service.nitro.js.map +0 -1
  160. package/lib/commonjs/specs/types.d.ts +0 -229
  161. package/lib/commonjs/specs/types.d.ts.map +0 -1
  162. package/lib/commonjs/specs/types.js +0 -150
  163. package/lib/commonjs/specs/types.js.map +0 -1
  164. package/lib/commonjs/utils/base64.d.ts +0 -26
  165. package/lib/commonjs/utils/base64.d.ts.map +0 -1
  166. package/lib/commonjs/utils/base64.js +0 -88
  167. package/lib/commonjs/utils/base64.js.map +0 -1
  168. package/lib/commonjs/utils/index.d.ts +0 -3
  169. package/lib/commonjs/utils/index.d.ts.map +0 -1
  170. package/lib/commonjs/utils/index.js.map +0 -1
  171. package/lib/commonjs/utils/uuid.d.ts +0 -10
  172. package/lib/commonjs/utils/uuid.d.ts.map +0 -1
  173. package/lib/commonjs/utils/uuid.js +0 -41
  174. package/lib/commonjs/utils/uuid.js.map +0 -1
  175. package/lib/compatibility/constants.d.ts +0 -49
  176. package/lib/compatibility/constants.js +0 -50
  177. package/lib/compatibility/deviceWrapper.d.ts +0 -99
  178. package/lib/compatibility/deviceWrapper.js +0 -259
  179. package/lib/compatibility/enums.d.ts +0 -38
  180. package/lib/compatibility/enums.js +0 -159
  181. package/lib/compatibility/index.d.ts +0 -12
  182. package/lib/compatibility/index.js +0 -12
  183. package/lib/compatibility/serviceData.d.ts +0 -51
  184. package/lib/compatibility/serviceData.js +0 -70
  185. package/lib/errors/BleError.d.ts +0 -59
  186. package/lib/errors/BleError.js +0 -120
  187. package/lib/specs/BleManager.nitro.d.ts +0 -44
  188. package/lib/specs/BleManager.nitro.js +0 -1
  189. package/lib/specs/Characteristic.nitro.d.ts +0 -26
  190. package/lib/specs/Characteristic.nitro.js +0 -1
  191. package/lib/specs/Descriptor.nitro.d.ts +0 -17
  192. package/lib/specs/Descriptor.nitro.js +0 -1
  193. package/lib/specs/Device.nitro.d.ts +0 -37
  194. package/lib/specs/Device.nitro.js +0 -1
  195. package/lib/specs/Service.nitro.d.ts +0 -19
  196. package/lib/specs/Service.nitro.js +0 -1
  197. package/lib/specs/types.d.ts +0 -228
  198. package/lib/specs/types.js +0 -146
  199. package/lib/utils/base64.d.ts +0 -25
  200. package/lib/utils/base64.js +0 -80
  201. package/lib/utils/index.d.ts +0 -2
  202. package/lib/utils/index.js +0 -2
  203. package/lib/utils/uuid.d.ts +0 -9
  204. package/lib/utils/uuid.js +0 -37
  205. package/nitrogen/generated/android/c++/JBleATTErrorCode.hpp +0 -107
  206. package/nitrogen/generated/android/c++/JBleAndroidErrorCode.hpp +0 -101
  207. package/nitrogen/generated/android/c++/JBleErrorCode.hpp +0 -170
  208. package/nitrogen/generated/android/c++/JBleIOSErrorCode.hpp +0 -92
  209. package/nitrogen/generated/android/c++/JBleManagerNitroOptions.hpp +0 -54
  210. package/nitrogen/generated/android/c++/JBleRestoredState.hpp +0 -76
  211. package/nitrogen/generated/android/c++/JCharacteristicSubscriptionType.hpp +0 -59
  212. package/nitrogen/generated/android/c++/JConnectionOptions.hpp +0 -61
  213. package/nitrogen/generated/android/c++/JConnectionPriority.hpp +0 -62
  214. package/nitrogen/generated/android/c++/JFunc_void.hpp +0 -74
  215. package/nitrogen/generated/android/c++/JFunc_void_State.hpp +0 -76
  216. package/nitrogen/generated/android/c++/JFunc_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.hpp +0 -88
  217. package/nitrogen/generated/android/c++/JFunc_void_std__optional_NativeBleError__std__optional_NativeDevice_.hpp +0 -91
  218. package/nitrogen/generated/android/c++/JHybridBleManagerSpec.cpp +0 -653
  219. package/nitrogen/generated/android/c++/JHybridBleManagerSpec.hpp +0 -92
  220. package/nitrogen/generated/android/c++/JHybridCharacteristicSpec.cpp +0 -253
  221. package/nitrogen/generated/android/c++/JHybridCharacteristicSpec.hpp +0 -79
  222. package/nitrogen/generated/android/c++/JHybridDescriptorSpec.cpp +0 -115
  223. package/nitrogen/generated/android/c++/JHybridDescriptorSpec.hpp +0 -70
  224. package/nitrogen/generated/android/c++/JHybridDeviceSpec.cpp +0 -476
  225. package/nitrogen/generated/android/c++/JHybridDeviceSpec.hpp +0 -90
  226. package/nitrogen/generated/android/c++/JHybridServiceSpec.cpp +0 -232
  227. package/nitrogen/generated/android/c++/JHybridServiceSpec.hpp +0 -72
  228. package/nitrogen/generated/android/c++/JLogLevel.hpp +0 -71
  229. package/nitrogen/generated/android/c++/JNativeBleError.hpp +0 -98
  230. package/nitrogen/generated/android/c++/JNativeCharacteristic.hpp +0 -98
  231. package/nitrogen/generated/android/c++/JNativeDescriptor.hpp +0 -82
  232. package/nitrogen/generated/android/c++/JNativeDevice.hpp +0 -173
  233. package/nitrogen/generated/android/c++/JNativeService.hpp +0 -65
  234. package/nitrogen/generated/android/c++/JScanCallbackType.hpp +0 -62
  235. package/nitrogen/generated/android/c++/JScanMode.hpp +0 -65
  236. package/nitrogen/generated/android/c++/JScanOptions.hpp +0 -69
  237. package/nitrogen/generated/android/c++/JServiceDataEntry.hpp +0 -57
  238. package/nitrogen/generated/android/c++/JSubscription.hpp +0 -64
  239. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleATTErrorCode.kt +0 -41
  240. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleAndroidErrorCode.kt +0 -39
  241. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleErrorCode.kt +0 -62
  242. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleIOSErrorCode.kt +0 -36
  243. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleManagerNitroOptions.kt +0 -26
  244. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/BleRestoredState.kt +0 -26
  245. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/CharacteristicSubscriptionType.kt +0 -25
  246. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ConnectionPriority.kt +0 -26
  247. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridBleManagerSpec.kt +0 -192
  248. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridCharacteristicSpec.kt +0 -127
  249. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridDescriptorSpec.kt +0 -86
  250. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridDeviceSpec.kt +0 -176
  251. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/HybridServiceSpec.kt +0 -99
  252. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeBleError.kt +0 -35
  253. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeCharacteristic.kt +0 -37
  254. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeDescriptor.kt +0 -33
  255. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/NativeDevice.kt +0 -38
  256. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanCallbackType.kt +0 -26
  257. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanMode.kt +0 -27
  258. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/ScanOptions.kt +0 -29
  259. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/State.kt +0 -29
  260. package/nitrogen/generated/android/kotlin/com/margelo/nitro/co/zyke/ble/Subscription.kt +0 -30
  261. package/nitrogen/generated/ios/c++/HybridBleManagerSpecSwift.cpp +0 -11
  262. package/nitrogen/generated/ios/c++/HybridBleManagerSpecSwift.hpp +0 -377
  263. package/nitrogen/generated/ios/c++/HybridCharacteristicSpecSwift.hpp +0 -192
  264. package/nitrogen/generated/ios/c++/HybridDescriptorSpecSwift.cpp +0 -11
  265. package/nitrogen/generated/ios/c++/HybridDescriptorSpecSwift.hpp +0 -112
  266. package/nitrogen/generated/ios/c++/HybridDeviceSpecSwift.cpp +0 -11
  267. package/nitrogen/generated/ios/c++/HybridDeviceSpecSwift.hpp +0 -294
  268. package/nitrogen/generated/ios/c++/HybridServiceSpecSwift.cpp +0 -11
  269. package/nitrogen/generated/ios/c++/HybridServiceSpecSwift.hpp +0 -170
  270. package/nitrogen/generated/ios/swift/BleATTErrorCode.swift +0 -104
  271. package/nitrogen/generated/ios/swift/BleAndroidErrorCode.swift +0 -96
  272. package/nitrogen/generated/ios/swift/BleErrorCode.swift +0 -188
  273. package/nitrogen/generated/ios/swift/BleIOSErrorCode.swift +0 -84
  274. package/nitrogen/generated/ios/swift/BleManagerNitroOptions.swift +0 -53
  275. package/nitrogen/generated/ios/swift/BleRestoredState.swift +0 -47
  276. package/nitrogen/generated/ios/swift/CharacteristicSubscriptionType.swift +0 -40
  277. package/nitrogen/generated/ios/swift/ConnectionOptions.swift +0 -57
  278. package/nitrogen/generated/ios/swift/ConnectionPriority.swift +0 -44
  279. package/nitrogen/generated/ios/swift/Func_void_std__optional_NativeBleError__std__optional_NativeCharacteristic_.swift +0 -58
  280. package/nitrogen/generated/ios/swift/Func_void_std__optional_NativeBleError__std__optional_NativeDevice_.swift +0 -58
  281. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_margelo__nitro__co__zyke__ble__HybridCharacteristicSpec_.swift +0 -50
  282. package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_margelo__nitro__co__zyke__ble__HybridDescriptorSpec_.swift +0 -50
  283. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeDescriptor_.swift +0 -46
  284. package/nitrogen/generated/ios/swift/Func_void_std__vector_NativeService_.swift +0 -46
  285. package/nitrogen/generated/ios/swift/HybridBleManagerSpec.swift +0 -78
  286. package/nitrogen/generated/ios/swift/HybridBleManagerSpec_cxx.swift +0 -852
  287. package/nitrogen/generated/ios/swift/HybridCharacteristicSpec.swift +0 -65
  288. package/nitrogen/generated/ios/swift/HybridCharacteristicSpec_cxx.swift +0 -384
  289. package/nitrogen/generated/ios/swift/HybridDescriptorSpec.swift +0 -56
  290. package/nitrogen/generated/ios/swift/HybridDescriptorSpec_cxx.swift +0 -218
  291. package/nitrogen/generated/ios/swift/HybridDeviceSpec.swift +0 -76
  292. package/nitrogen/generated/ios/swift/HybridDeviceSpec_cxx.swift +0 -702
  293. package/nitrogen/generated/ios/swift/HybridServiceSpec.swift +0 -58
  294. package/nitrogen/generated/ios/swift/HybridServiceSpec_cxx.swift +0 -338
  295. package/nitrogen/generated/ios/swift/LogLevel.swift +0 -56
  296. package/nitrogen/generated/ios/swift/NativeBleError.swift +0 -278
  297. package/nitrogen/generated/ios/swift/NativeCharacteristic.swift +0 -174
  298. package/nitrogen/generated/ios/swift/NativeDescriptor.swift +0 -130
  299. package/nitrogen/generated/ios/swift/NativeDevice.swift +0 -377
  300. package/nitrogen/generated/ios/swift/NativeService.swift +0 -68
  301. package/nitrogen/generated/ios/swift/ScanCallbackType.swift +0 -44
  302. package/nitrogen/generated/ios/swift/ScanMode.swift +0 -48
  303. package/nitrogen/generated/ios/swift/ScanOptions.swift +0 -116
  304. package/nitrogen/generated/ios/swift/ServiceDataEntry.swift +0 -46
  305. package/nitrogen/generated/ios/swift/Subscription.swift +0 -46
  306. package/nitrogen/generated/shared/c++/BleATTErrorCode.hpp +0 -80
  307. package/nitrogen/generated/shared/c++/BleAndroidErrorCode.hpp +0 -78
  308. package/nitrogen/generated/shared/c++/BleErrorCode.hpp +0 -101
  309. package/nitrogen/generated/shared/c++/BleIOSErrorCode.hpp +0 -75
  310. package/nitrogen/generated/shared/c++/BleManagerNitroOptions.hpp +0 -70
  311. package/nitrogen/generated/shared/c++/BleRestoredState.hpp +0 -71
  312. package/nitrogen/generated/shared/c++/CharacteristicSubscriptionType.hpp +0 -64
  313. package/nitrogen/generated/shared/c++/ConnectionOptions.hpp +0 -77
  314. package/nitrogen/generated/shared/c++/ConnectionPriority.hpp +0 -65
  315. package/nitrogen/generated/shared/c++/HybridBleManagerSpec.cpp +0 -51
  316. package/nitrogen/generated/shared/c++/HybridBleManagerSpec.hpp +0 -137
  317. package/nitrogen/generated/shared/c++/HybridCharacteristicSpec.cpp +0 -39
  318. package/nitrogen/generated/shared/c++/HybridCharacteristicSpec.hpp +0 -101
  319. package/nitrogen/generated/shared/c++/HybridDescriptorSpec.cpp +0 -30
  320. package/nitrogen/generated/shared/c++/HybridDescriptorSpec.hpp +0 -75
  321. package/nitrogen/generated/shared/c++/HybridDeviceSpec.cpp +0 -50
  322. package/nitrogen/generated/shared/c++/HybridDeviceSpec.hpp +0 -123
  323. package/nitrogen/generated/shared/c++/HybridServiceSpec.cpp +0 -32
  324. package/nitrogen/generated/shared/c++/HybridServiceSpec.hpp +0 -90
  325. package/nitrogen/generated/shared/c++/LogLevel.hpp +0 -68
  326. package/nitrogen/generated/shared/c++/NativeBleError.hpp +0 -117
  327. package/nitrogen/generated/shared/c++/NativeCharacteristic.hpp +0 -114
  328. package/nitrogen/generated/shared/c++/NativeDescriptor.hpp +0 -98
  329. package/nitrogen/generated/shared/c++/NativeDevice.hpp +0 -121
  330. package/nitrogen/generated/shared/c++/NativeService.hpp +0 -81
  331. package/nitrogen/generated/shared/c++/ScanCallbackType.hpp +0 -65
  332. package/nitrogen/generated/shared/c++/ScanMode.hpp +0 -66
  333. package/nitrogen/generated/shared/c++/ScanOptions.hpp +0 -86
  334. package/nitrogen/generated/shared/c++/Subscription.hpp +0 -69
  335. package/src/BleManagerCompatFactory.ts +0 -371
  336. package/src/BleManagerFactory.ts +0 -93
  337. package/src/__tests__/BleManager.test.ts +0 -327
  338. package/src/__tests__/compatibility/deviceWrapper.test.ts +0 -563
  339. package/src/__tests__/compatibility/enums.test.ts +0 -264
  340. package/src/compatibility/constants.ts +0 -71
  341. package/src/compatibility/deviceWrapper.ts +0 -427
  342. package/src/compatibility/enums.ts +0 -190
  343. package/src/compatibility/index.ts +0 -32
  344. package/src/compatibility/serviceData.ts +0 -85
  345. package/src/errors/BleError.ts +0 -193
  346. package/src/specs/BleManager.nitro.ts +0 -165
  347. package/src/specs/Characteristic.nitro.ts +0 -61
  348. package/src/specs/Descriptor.nitro.ts +0 -28
  349. package/src/specs/Device.nitro.ts +0 -104
  350. package/src/specs/Service.nitro.ts +0 -64
  351. package/src/specs/types.ts +0 -259
  352. package/src/utils/base64.ts +0 -80
  353. package/src/utils/index.ts +0 -2
  354. package/src/utils/uuid.ts +0 -45
@@ -1,42 +1,465 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
4
  };
16
5
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.fullUUID = exports.LogLevel = exports.State = exports.Device = exports.getStoredCallbacks = exports.getCustomErrorMessage = exports.createBleManager = exports.BleManager = void 0;
18
- // Export compatibility layer types and constants
19
- __exportStar(require("./compatibility/constants"), exports);
20
- // Export utility functions
21
- __exportStar(require("./utils/index"), exports);
22
- // Export the main BleManager instance with compatibility wrapper
23
- var BleManagerCompatFactory_1 = require("./BleManagerCompatFactory");
24
- Object.defineProperty(exports, "BleManager", { enumerable: true, get: function () { return BleManagerCompatFactory_1.BleManagerCompat; } });
25
- Object.defineProperty(exports, "createBleManager", { enumerable: true, get: function () { return BleManagerCompatFactory_1.createBleManagerCompat; } });
26
- // Export BleManager factory utilities (for internal use by error handling)
27
- var BleManagerFactory_1 = require("./BleManagerFactory");
28
- Object.defineProperty(exports, "getCustomErrorMessage", { enumerable: true, get: function () { return BleManagerFactory_1.getCustomErrorMessage; } });
29
- Object.defineProperty(exports, "getStoredCallbacks", { enumerable: true, get: function () { return BleManagerFactory_1.getStoredCallbacks; } });
30
- // Export error handling utilities
31
- __exportStar(require("./errors/BleError"), exports);
32
- // Export device wrapper for compatibility
33
- var deviceWrapper_1 = require("./compatibility/deviceWrapper");
34
- Object.defineProperty(exports, "Device", { enumerable: true, get: function () { return deviceWrapper_1.DeviceWrapper; } });
35
- // Export react-native-ble-plx compatible enum types (drop-in replacement)
36
- var enums_1 = require("./compatibility/enums");
37
- Object.defineProperty(exports, "State", { enumerable: true, get: function () { return enums_1.State; } });
38
- Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return enums_1.LogLevel; } });
39
- // Re-export react-native-ble-plx compatible API
40
- var uuid_1 = require("./utils/uuid");
41
- Object.defineProperty(exports, "fullUUID", { enumerable: true, get: function () { return uuid_1.fullUUID; } });
6
+ exports.ble = exports.BleNitro = exports.BLEState = void 0;
7
+ const NativeBleNitro_1 = __importDefault(require("./specs/NativeBleNitro"));
8
+ var BLEState;
9
+ (function (BLEState) {
10
+ BLEState["Unknown"] = "Unknown";
11
+ BLEState["Resetting"] = "Resetting";
12
+ BLEState["Unsupported"] = "Unsupported";
13
+ BLEState["Unauthorized"] = "Unauthorized";
14
+ BLEState["PoweredOff"] = "PoweredOff";
15
+ BLEState["PoweredOn"] = "PoweredOn";
16
+ })(BLEState || (exports.BLEState = BLEState = {}));
17
+ ;
18
+ function mapNativeBLEStateToBLEState(nativeState) {
19
+ const map = {
20
+ 0: BLEState.Unknown,
21
+ 1: BLEState.Resetting,
22
+ 2: BLEState.Unsupported,
23
+ 3: BLEState.Unauthorized,
24
+ 4: BLEState.PoweredOff,
25
+ 5: BLEState.PoweredOn,
26
+ };
27
+ return map[nativeState];
28
+ }
29
+ let _instance;
30
+ class BleNitro {
31
+ constructor() {
32
+ this._isScanning = false;
33
+ this._connectedDevices = {};
34
+ }
35
+ static instance() {
36
+ if (!_instance) {
37
+ _instance = new BleNitro();
38
+ }
39
+ return _instance;
40
+ }
41
+ /**
42
+ * Converts a 16- oder 32-Bit UUID to a 128-Bit UUID
43
+ *
44
+ * @param uuid 16-, 32- or 128-Bit UUID as string
45
+ * @returns Full 128-Bit UUID
46
+ */
47
+ static normalizeGattUUID(uuid) {
48
+ const cleanUuid = uuid.toLowerCase();
49
+ // 128-Bit UUID → normalisieren
50
+ if (cleanUuid.length === 36 && cleanUuid.includes("-")) {
51
+ return cleanUuid;
52
+ }
53
+ // GATT-Service UUIDs
54
+ // 16- oder 32-Bit UUID → 128-Bit UUID
55
+ const padded = cleanUuid.padStart(8, "0");
56
+ return `${padded}-0000-1000-8000-00805f9b34fb`;
57
+ }
58
+ static normalizeGattUUIDs(uuids) {
59
+ return uuids.map((uuid) => BleNitro.normalizeGattUUID(uuid));
60
+ }
61
+ /**
62
+ * Start scanning for Bluetooth devices
63
+ * @param filter Optional scan filter
64
+ * @param callback Callback function called when a device is found
65
+ * @returns Promise resolving to success state
66
+ */
67
+ startScan(filter = {}, callback) {
68
+ return new Promise((resolve) => {
69
+ var _a, _b;
70
+ // Don't start scanning if already scanning
71
+ if (this._isScanning) {
72
+ resolve(true);
73
+ return;
74
+ }
75
+ // Create native scan filter with defaults
76
+ const nativeFilter = {
77
+ serviceUUIDs: filter.serviceUUIDs || [],
78
+ rssiThreshold: (_a = filter.rssiThreshold) !== null && _a !== void 0 ? _a : -100,
79
+ allowDuplicates: (_b = filter.allowDuplicates) !== null && _b !== void 0 ? _b : false,
80
+ };
81
+ // Create callback wrapper
82
+ const scanCallback = (device) => {
83
+ device.serviceUUIDs = BleNitro.normalizeGattUUIDs(device.serviceUUIDs);
84
+ callback(device);
85
+ };
86
+ // Start scan
87
+ NativeBleNitro_1.default.startScan(nativeFilter, scanCallback);
88
+ this._isScanning = true;
89
+ resolve(true);
90
+ });
91
+ }
92
+ /**
93
+ * Stop scanning for Bluetooth devices
94
+ * @returns Promise resolving to success state
95
+ */
96
+ stopScan() {
97
+ return new Promise((resolve, reject) => {
98
+ // Don't stop scanning if not scanning
99
+ if (!this._isScanning) {
100
+ resolve(true);
101
+ return;
102
+ }
103
+ NativeBleNitro_1.default.stopScan((success, error) => {
104
+ if (success) {
105
+ this._isScanning = false;
106
+ resolve(true);
107
+ }
108
+ else {
109
+ reject(new Error(error));
110
+ }
111
+ });
112
+ });
113
+ }
114
+ /**
115
+ * Check if currently scanning for devices
116
+ * @returns Promise resolving to scanning state
117
+ */
118
+ isScanning() {
119
+ return new Promise((resolve) => {
120
+ NativeBleNitro_1.default.isScanning((scanning) => {
121
+ this._isScanning = scanning;
122
+ resolve(scanning);
123
+ });
124
+ });
125
+ }
126
+ /**
127
+ * Get all currently connected devices
128
+ * @returns Promise resolving to array of connected devices
129
+ */
130
+ getConnectedDevices() {
131
+ return new Promise((resolve) => {
132
+ NativeBleNitro_1.default.getConnectedDevices((devices) => {
133
+ // Normalize service UUIDs for connected devices
134
+ const normalizedDevices = devices.map(device => ({
135
+ ...device,
136
+ serviceUUIDs: BleNitro.normalizeGattUUIDs(device.serviceUUIDs)
137
+ }));
138
+ resolve(normalizedDevices);
139
+ });
140
+ });
141
+ }
142
+ /**
143
+ * Connect to a Bluetooth device
144
+ * @param deviceId ID of the device to connect to
145
+ * @param onDisconnect Optional callback for disconnect events
146
+ * @returns Promise resolving when connected
147
+ */
148
+ connect(deviceId, onDisconnect) {
149
+ return new Promise((resolve, reject) => {
150
+ // Check if already connected
151
+ if (this._connectedDevices[deviceId]) {
152
+ resolve(deviceId);
153
+ return;
154
+ }
155
+ NativeBleNitro_1.default.connect(deviceId, (success, connectedDeviceId, error) => {
156
+ if (success) {
157
+ this._connectedDevices[deviceId] = true;
158
+ resolve(connectedDeviceId);
159
+ }
160
+ else {
161
+ reject(new Error(error));
162
+ }
163
+ }, onDisconnect ? (deviceId, interrupted, error) => {
164
+ // Remove from connected devices when disconnected
165
+ delete this._connectedDevices[deviceId];
166
+ onDisconnect(deviceId, interrupted, error);
167
+ } : undefined);
168
+ });
169
+ }
170
+ /**
171
+ * Disconnect from a Bluetooth device
172
+ * @param deviceId ID of the device to disconnect from
173
+ * @returns Promise resolving when disconnected
174
+ */
175
+ disconnect(deviceId) {
176
+ return new Promise((resolve, reject) => {
177
+ // Check if already disconnected
178
+ if (!this._connectedDevices[deviceId]) {
179
+ resolve(true);
180
+ return;
181
+ }
182
+ NativeBleNitro_1.default.disconnect(deviceId, (success, error) => {
183
+ if (success) {
184
+ delete this._connectedDevices[deviceId];
185
+ resolve(true);
186
+ }
187
+ else {
188
+ reject(new Error(error));
189
+ }
190
+ });
191
+ });
192
+ }
193
+ /**
194
+ * Check if connected to a device
195
+ * @param deviceId ID of the device to check
196
+ * @returns Promise resolving to connection state
197
+ */
198
+ isConnected(deviceId) {
199
+ return new Promise((resolve) => {
200
+ NativeBleNitro_1.default.isConnected(deviceId, (connected) => {
201
+ this._connectedDevices[deviceId] = connected;
202
+ resolve(connected);
203
+ });
204
+ });
205
+ }
206
+ /**
207
+ * Discover services for a connected device
208
+ * @param deviceId ID of the device
209
+ * @returns Promise resolving when services are discovered
210
+ */
211
+ discoverServices(deviceId) {
212
+ return new Promise((resolve, reject) => {
213
+ // Check if connected first
214
+ if (!this._connectedDevices[deviceId]) {
215
+ reject(new Error('Device not connected'));
216
+ return;
217
+ }
218
+ NativeBleNitro_1.default.discoverServices(deviceId, (success, error) => {
219
+ if (success) {
220
+ resolve(true);
221
+ }
222
+ else {
223
+ reject(new Error(error));
224
+ }
225
+ });
226
+ });
227
+ }
228
+ /**
229
+ * Get services for a connected device
230
+ * @param deviceId ID of the device
231
+ * @returns Promise resolving to array of service UUIDs
232
+ */
233
+ getServices(deviceId) {
234
+ return new Promise(async (resolve, reject) => {
235
+ // Check if connected first
236
+ if (!this._connectedDevices[deviceId]) {
237
+ reject(new Error('Device not connected'));
238
+ return;
239
+ }
240
+ const success = await this.discoverServices(deviceId);
241
+ if (!success) {
242
+ reject(new Error('Failed to discover services'));
243
+ return;
244
+ }
245
+ NativeBleNitro_1.default.getServices(deviceId, (services) => {
246
+ resolve(BleNitro.normalizeGattUUIDs(services));
247
+ });
248
+ });
249
+ }
250
+ /**
251
+ * Get characteristics for a service
252
+ * @param deviceId ID of the device
253
+ * @param serviceId ID of the service
254
+ * @returns Promise resolving to array of characteristic UUIDs
255
+ */
256
+ getCharacteristics(deviceId, serviceId) {
257
+ return new Promise((resolve, reject) => {
258
+ // Check if connected first
259
+ if (!this._connectedDevices[deviceId]) {
260
+ reject(new Error('Device not connected'));
261
+ return;
262
+ }
263
+ NativeBleNitro_1.default.getCharacteristics(deviceId, BleNitro.normalizeGattUUID(serviceId), (characteristics) => {
264
+ resolve(BleNitro.normalizeGattUUIDs(characteristics));
265
+ });
266
+ });
267
+ }
268
+ /**
269
+ * Read a characteristic value
270
+ * @param deviceId ID of the device
271
+ * @param serviceId ID of the service
272
+ * @param characteristicId ID of the characteristic
273
+ * @returns Promise resolving to the characteristic data as byte array
274
+ */
275
+ readCharacteristic(deviceId, serviceId, characteristicId) {
276
+ return new Promise((resolve, reject) => {
277
+ // Check if connected first
278
+ if (!this._connectedDevices[deviceId]) {
279
+ reject(new Error('Device not connected'));
280
+ return;
281
+ }
282
+ NativeBleNitro_1.default.readCharacteristic(deviceId, BleNitro.normalizeGattUUID(serviceId), BleNitro.normalizeGattUUID(characteristicId), (success, data, error) => {
283
+ if (success) {
284
+ resolve(data);
285
+ }
286
+ else {
287
+ reject(new Error(error));
288
+ }
289
+ });
290
+ });
291
+ }
292
+ /**
293
+ * Write a value to a characteristic
294
+ * @param deviceId ID of the device
295
+ * @param serviceId ID of the service
296
+ * @param characteristicId ID of the characteristic
297
+ * @param data Data to write as an array of bytes
298
+ * @param withResponse Whether to wait for response
299
+ * @returns Promise resolving when write is complete
300
+ */
301
+ writeCharacteristic(deviceId, serviceId, characteristicId, data, withResponse = true) {
302
+ return new Promise((resolve, reject) => {
303
+ // Check if connected first
304
+ if (!this._connectedDevices[deviceId]) {
305
+ reject(new Error('Device not connected'));
306
+ return;
307
+ }
308
+ NativeBleNitro_1.default.writeCharacteristic(deviceId, BleNitro.normalizeGattUUID(serviceId), BleNitro.normalizeGattUUID(characteristicId), data, withResponse, (success, error) => {
309
+ if (success) {
310
+ resolve(true);
311
+ }
312
+ else {
313
+ reject(new Error(error));
314
+ }
315
+ });
316
+ });
317
+ }
318
+ /**
319
+ * Subscribe to characteristic notifications
320
+ * @param deviceId ID of the device
321
+ * @param serviceId ID of the service
322
+ * @param characteristicId ID of the characteristic
323
+ * @param callback Callback function called when notification is received
324
+ * @returns Promise resolving when subscription is complete
325
+ */
326
+ subscribeToCharacteristic(deviceId, serviceId, characteristicId, callback) {
327
+ return new Promise((resolve, reject) => {
328
+ // Check if connected first
329
+ if (!this._connectedDevices[deviceId]) {
330
+ reject(new Error('Device not connected'));
331
+ return;
332
+ }
333
+ NativeBleNitro_1.default.subscribeToCharacteristic(deviceId, BleNitro.normalizeGattUUID(serviceId), BleNitro.normalizeGattUUID(characteristicId), (charId, data) => {
334
+ callback(charId, data);
335
+ }, (success, error) => {
336
+ if (success) {
337
+ resolve({
338
+ remove: () => {
339
+ return new Promise((resolve, reject) => {
340
+ this.unsubscribeFromCharacteristic(deviceId, serviceId, characteristicId).then(resolve).catch(reject);
341
+ });
342
+ },
343
+ });
344
+ }
345
+ else {
346
+ reject(new Error(error));
347
+ }
348
+ });
349
+ });
350
+ }
351
+ /**
352
+ * Unsubscribe from characteristic notifications
353
+ * @param deviceId ID of the device
354
+ * @param serviceId ID of the service
355
+ * @param characteristicId ID of the characteristic
356
+ * @returns Promise resolving when unsubscription is complete
357
+ */
358
+ unsubscribeFromCharacteristic(deviceId, serviceId, characteristicId) {
359
+ return new Promise((resolve, reject) => {
360
+ // Check if connected first
361
+ if (!this._connectedDevices[deviceId]) {
362
+ reject(new Error('Device not connected'));
363
+ return;
364
+ }
365
+ NativeBleNitro_1.default.unsubscribeFromCharacteristic(deviceId, BleNitro.normalizeGattUUID(serviceId), BleNitro.normalizeGattUUID(characteristicId), (success, error) => {
366
+ if (success) {
367
+ resolve();
368
+ }
369
+ else {
370
+ reject(new Error(error));
371
+ }
372
+ });
373
+ });
374
+ }
375
+ /**
376
+ * Check if Bluetooth is enabled
377
+ * @returns Promise resolving to Bluetooth state
378
+ */
379
+ isBluetoothEnabled() {
380
+ return new Promise((resolve) => {
381
+ NativeBleNitro_1.default.isBluetoothEnabled((enabled) => {
382
+ resolve(enabled);
383
+ });
384
+ });
385
+ }
386
+ /**
387
+ * Request to enable Bluetooth
388
+ * @returns Promise resolving when Bluetooth is enabled
389
+ */
390
+ requestBluetoothEnable() {
391
+ return new Promise((resolve, reject) => {
392
+ NativeBleNitro_1.default.requestBluetoothEnable((success, error) => {
393
+ if (success) {
394
+ resolve(true);
395
+ }
396
+ else {
397
+ reject(new Error(error));
398
+ }
399
+ });
400
+ });
401
+ }
402
+ /**
403
+ * Get the current Bluetooth state
404
+ * @returns Promise resolving to Bluetooth state
405
+ * @see BLEState
406
+ */
407
+ state() {
408
+ return new Promise((resolve) => {
409
+ NativeBleNitro_1.default.state((state) => {
410
+ resolve(mapNativeBLEStateToBLEState(state));
411
+ });
412
+ });
413
+ }
414
+ /**
415
+ * Subscribe to Bluetooth state changes
416
+ * @param callback Callback function called when state changes
417
+ * @param emitInitial Whether to emit initial state callback
418
+ * @returns Promise resolving when subscription is complete
419
+ * @see BLEState
420
+ */
421
+ subscribeToStateChange(callback, emitInitial = false) {
422
+ return new Promise(async (resolve, reject) => {
423
+ if (emitInitial) {
424
+ const state = await this.state().catch(() => {
425
+ return BLEState.Unknown;
426
+ });
427
+ callback(state);
428
+ }
429
+ NativeBleNitro_1.default.subscribeToStateChange((nativeState) => {
430
+ callback(mapNativeBLEStateToBLEState(nativeState));
431
+ }, (success, error) => {
432
+ if (success) {
433
+ resolve({
434
+ remove: () => {
435
+ return new Promise((resolve, reject) => {
436
+ NativeBleNitro_1.default.unsubscribeFromStateChange((success, error) => {
437
+ if (success) {
438
+ resolve();
439
+ }
440
+ else {
441
+ reject(new Error(error));
442
+ }
443
+ });
444
+ });
445
+ },
446
+ });
447
+ }
448
+ else {
449
+ reject(new Error(error));
450
+ }
451
+ });
452
+ });
453
+ }
454
+ /**
455
+ * Open Bluetooth settings
456
+ * @returns Promise resolving when settings are opened
457
+ */
458
+ openSettings() {
459
+ return NativeBleNitro_1.default.openSettings();
460
+ }
461
+ }
462
+ exports.BleNitro = BleNitro;
463
+ // Singleton instance
464
+ exports.ble = BleNitro.instance();
42
465
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,4DAA0C;AAE1C,2BAA2B;AAC3B,gDAA8B;AAE9B,iEAAiE;AACjE,qEAAuH;AAA9G,qHAAA,gBAAgB,OAAc;AAAE,2HAAA,sBAAsB,OAAoB;AAEnF,2EAA2E;AAC3E,yDAAgF;AAAvE,0HAAA,qBAAqB,OAAA;AAAE,uHAAA,kBAAkB,OAAA;AAElD,kCAAkC;AAClC,oDAAkC;AAElC,0CAA0C;AAC1C,+DAAwE;AAA/D,uGAAA,aAAa,OAAU;AAehC,0EAA0E;AAC1E,+CAG+B;AAF7B,8FAAA,KAAK,OAAA;AACL,iGAAA,QAAQ,OAAA;AASV,gDAAgD;AAChD,qCAAwC;AAA/B,gGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { NativeBleNitro } from './NativeBleNitro.nitro';
2
+ declare const NativeBleNitroImpl: NativeBleNitro;
3
+ export default NativeBleNitroImpl;
4
+ export * from './NativeBleNitro.nitro';
5
+ //# sourceMappingURL=NativeBleNitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBleNitro.d.ts","sourceRoot":"","sources":["../../../src/specs/NativeBleNitro.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,QAAA,MAAM,kBAAkB,gBAAoE,CAAC;AAE7F,eAAe,kBAAkB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
@@ -14,6 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./uuid"), exports);
18
- __exportStar(require("./base64"), exports);
19
- //# sourceMappingURL=index.js.map
17
+ const react_native_nitro_modules_1 = require("react-native-nitro-modules");
18
+ // Export the native implementation
19
+ const NativeBleNitroImpl = react_native_nitro_modules_1.NitroModules.createHybridObject('NativeBleNitro');
20
+ exports.default = NativeBleNitroImpl;
21
+ __exportStar(require("./NativeBleNitro.nitro"), exports);
22
+ //# sourceMappingURL=NativeBleNitro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBleNitro.js","sourceRoot":"","sources":["../../../src/specs/NativeBleNitro.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2EAA0D;AAG1D,mCAAmC;AACnC,MAAM,kBAAkB,GAAG,yCAAY,CAAC,kBAAkB,CAAiB,gBAAgB,CAAC,CAAC;AAE7F,kBAAe,kBAAkB,CAAC;AAClC,yDAAuC"}
@@ -0,0 +1,69 @@
1
+ import { HybridObject } from 'react-native-nitro-modules';
2
+ export declare enum BLEState {
3
+ Unknown = 0,
4
+ Resetting = 1,
5
+ Unsupported = 2,
6
+ Unauthorized = 3,
7
+ PoweredOff = 4,
8
+ PoweredOn = 5
9
+ }
10
+ export interface ManufacturerDataEntry {
11
+ id: string;
12
+ data: number[];
13
+ }
14
+ export interface ManufacturerData {
15
+ companyIdentifiers: ManufacturerDataEntry[];
16
+ }
17
+ export interface BLEDevice {
18
+ id: string;
19
+ name: string;
20
+ rssi: number;
21
+ manufacturerData: ManufacturerData;
22
+ serviceUUIDs: string[];
23
+ isConnectable: boolean;
24
+ }
25
+ export interface ScanFilter {
26
+ serviceUUIDs: string[];
27
+ rssiThreshold: number;
28
+ allowDuplicates: boolean;
29
+ }
30
+ export type ScanCallback = (device: BLEDevice) => void;
31
+ export type DevicesCallback = (devices: BLEDevice[]) => void;
32
+ export type ConnectionCallback = (success: boolean, deviceId: string, error: string) => void;
33
+ export type DisconnectionEventCallback = (deviceId: string, interrupted: boolean, error: string) => void;
34
+ export type OperationCallback = (success: boolean, error: string) => void;
35
+ export type CharacteristicCallback = (characteristicId: string, data: number[]) => void;
36
+ export type StateCallback = (state: BLEState) => void;
37
+ export type BooleanCallback = (result: boolean) => void;
38
+ export type StringArrayCallback = (result: string[]) => void;
39
+ export type ReadCharacteristicCallback = (success: boolean, data: number[], error: string) => void;
40
+ /**
41
+ * Native BLE Nitro Module Specification
42
+ * Defines the interface between TypeScript and native implementations
43
+ */
44
+ export interface NativeBleNitro extends HybridObject<{
45
+ ios: 'swift';
46
+ android: 'kotlin';
47
+ }> {
48
+ startScan(filter: ScanFilter, callback: ScanCallback): void;
49
+ stopScan(callback: OperationCallback): void;
50
+ isScanning(callback: BooleanCallback): void;
51
+ getConnectedDevices(callback: DevicesCallback): void;
52
+ connect(deviceId: string, callback: ConnectionCallback, disconnectCallback?: DisconnectionEventCallback): void;
53
+ disconnect(deviceId: string, callback: OperationCallback): void;
54
+ isConnected(deviceId: string, callback: BooleanCallback): void;
55
+ discoverServices(deviceId: string, callback: OperationCallback): void;
56
+ getServices(deviceId: string, callback: StringArrayCallback): void;
57
+ getCharacteristics(deviceId: string, serviceId: string, callback: StringArrayCallback): void;
58
+ readCharacteristic(deviceId: string, serviceId: string, characteristicId: string, callback: ReadCharacteristicCallback): void;
59
+ writeCharacteristic(deviceId: string, serviceId: string, characteristicId: string, data: number[], withResponse: boolean, callback: OperationCallback): void;
60
+ subscribeToCharacteristic(deviceId: string, serviceId: string, characteristicId: string, updateCallback: CharacteristicCallback, resultCallback: OperationCallback): void;
61
+ unsubscribeFromCharacteristic(deviceId: string, serviceId: string, characteristicId: string, callback: OperationCallback): void;
62
+ isBluetoothEnabled(callback: BooleanCallback): void;
63
+ requestBluetoothEnable(callback: OperationCallback): void;
64
+ state(callback: StateCallback): void;
65
+ subscribeToStateChange(stateCallback: StateCallback, resultCallback: OperationCallback): void;
66
+ unsubscribeFromStateChange(resultCallback: OperationCallback): void;
67
+ openSettings(): Promise<void>;
68
+ }
69
+ //# sourceMappingURL=NativeBleNitro.nitro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBleNitro.nitro.d.ts","sourceRoot":"","sources":["../../../src/specs/NativeBleNitro.nitro.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BLEState = void 0;
4
+ // Nitro constraint: Use numeric enums instead of string unions
5
+ var BLEState;
6
+ (function (BLEState) {
7
+ BLEState[BLEState["Unknown"] = 0] = "Unknown";
8
+ BLEState[BLEState["Resetting"] = 1] = "Resetting";
9
+ BLEState[BLEState["Unsupported"] = 2] = "Unsupported";
10
+ BLEState[BLEState["Unauthorized"] = 3] = "Unauthorized";
11
+ BLEState[BLEState["PoweredOff"] = 4] = "PoweredOff";
12
+ BLEState[BLEState["PoweredOn"] = 5] = "PoweredOn";
13
+ })(BLEState || (exports.BLEState = BLEState = {}));
14
+ //# sourceMappingURL=NativeBleNitro.nitro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeBleNitro.nitro.js","sourceRoot":"","sources":["../../../src/specs/NativeBleNitro.nitro.ts"],"names":[],"mappings":";;;AAEA,+DAA+D;AAC/D,IAAY,QAOX;AAPD,WAAY,QAAQ;IAClB,6CAAW,CAAA;IACX,iDAAa,CAAA;IACb,qDAAe,CAAA;IACf,uDAAgB,CAAA;IAChB,mDAAc,CAAA;IACd,iDAAa,CAAA;AACf,CAAC,EAPW,QAAQ,wBAAR,QAAQ,QAOnB"}