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
@@ -8,86 +8,26 @@
8
8
  #pragma once
9
9
 
10
10
  // Forward declarations of C++ defined types
11
- // Forward declaration of `BleATTErrorCode` to properly resolve imports.
12
- namespace margelo::nitro::co::zyke::ble { enum class BleATTErrorCode; }
13
- // Forward declaration of `BleAndroidErrorCode` to properly resolve imports.
14
- namespace margelo::nitro::co::zyke::ble { enum class BleAndroidErrorCode; }
15
- // Forward declaration of `BleErrorCode` to properly resolve imports.
16
- namespace margelo::nitro::co::zyke::ble { enum class BleErrorCode; }
17
- // Forward declaration of `BleIOSErrorCode` to properly resolve imports.
18
- namespace margelo::nitro::co::zyke::ble { enum class BleIOSErrorCode; }
19
- // Forward declaration of `BleManagerNitroOptions` to properly resolve imports.
20
- namespace margelo::nitro::co::zyke::ble { struct BleManagerNitroOptions; }
21
- // Forward declaration of `BleRestoredState` to properly resolve imports.
22
- namespace margelo::nitro::co::zyke::ble { struct BleRestoredState; }
23
- // Forward declaration of `CharacteristicSubscriptionType` to properly resolve imports.
24
- namespace margelo::nitro::co::zyke::ble { enum class CharacteristicSubscriptionType; }
25
- // Forward declaration of `ConnectionOptions` to properly resolve imports.
26
- namespace margelo::nitro::co::zyke::ble { struct ConnectionOptions; }
27
- // Forward declaration of `ConnectionPriority` to properly resolve imports.
28
- namespace margelo::nitro::co::zyke::ble { enum class ConnectionPriority; }
29
- // Forward declaration of `HybridBleManagerSpec` to properly resolve imports.
30
- namespace margelo::nitro::co::zyke::ble { class HybridBleManagerSpec; }
31
- // Forward declaration of `HybridCharacteristicSpec` to properly resolve imports.
32
- namespace margelo::nitro::co::zyke::ble { class HybridCharacteristicSpec; }
33
- // Forward declaration of `HybridDescriptorSpec` to properly resolve imports.
34
- namespace margelo::nitro::co::zyke::ble { class HybridDescriptorSpec; }
35
- // Forward declaration of `HybridDeviceSpec` to properly resolve imports.
36
- namespace margelo::nitro::co::zyke::ble { class HybridDeviceSpec; }
37
- // Forward declaration of `HybridServiceSpec` to properly resolve imports.
38
- namespace margelo::nitro::co::zyke::ble { class HybridServiceSpec; }
39
- // Forward declaration of `LogLevel` to properly resolve imports.
40
- namespace margelo::nitro::co::zyke::ble { enum class LogLevel; }
41
- // Forward declaration of `NativeBleError` to properly resolve imports.
42
- namespace margelo::nitro::co::zyke::ble { struct NativeBleError; }
43
- // Forward declaration of `NativeCharacteristic` to properly resolve imports.
44
- namespace margelo::nitro::co::zyke::ble { struct NativeCharacteristic; }
45
- // Forward declaration of `NativeDescriptor` to properly resolve imports.
46
- namespace margelo::nitro::co::zyke::ble { struct NativeDescriptor; }
47
- // Forward declaration of `NativeDevice` to properly resolve imports.
48
- namespace margelo::nitro::co::zyke::ble { struct NativeDevice; }
49
- // Forward declaration of `NativeService` to properly resolve imports.
50
- namespace margelo::nitro::co::zyke::ble { struct NativeService; }
51
- // Forward declaration of `ScanCallbackType` to properly resolve imports.
52
- namespace margelo::nitro::co::zyke::ble { enum class ScanCallbackType; }
53
- // Forward declaration of `ScanMode` to properly resolve imports.
54
- namespace margelo::nitro::co::zyke::ble { enum class ScanMode; }
55
- // Forward declaration of `ScanOptions` to properly resolve imports.
56
- namespace margelo::nitro::co::zyke::ble { struct ScanOptions; }
57
- // Forward declaration of `ServiceDataEntry` to properly resolve imports.
58
- namespace margelo::nitro::co::zyke::ble { struct ServiceDataEntry; }
59
- // Forward declaration of `State` to properly resolve imports.
60
- namespace margelo::nitro::co::zyke::ble { enum class State; }
61
- // Forward declaration of `Subscription` to properly resolve imports.
62
- namespace margelo::nitro::co::zyke::ble { struct Subscription; }
11
+ // Forward declaration of `BLEDevice` to properly resolve imports.
12
+ namespace margelo::nitro::co::zyke::ble { struct BLEDevice; }
13
+ // Forward declaration of `BLEState` to properly resolve imports.
14
+ namespace margelo::nitro::co::zyke::ble { enum class BLEState; }
15
+ // Forward declaration of `HybridNativeBleNitroSpec` to properly resolve imports.
16
+ namespace margelo::nitro::co::zyke::ble { class HybridNativeBleNitroSpec; }
17
+ // Forward declaration of `ManufacturerDataEntry` to properly resolve imports.
18
+ namespace margelo::nitro::co::zyke::ble { struct ManufacturerDataEntry; }
19
+ // Forward declaration of `ManufacturerData` to properly resolve imports.
20
+ namespace margelo::nitro::co::zyke::ble { struct ManufacturerData; }
21
+ // Forward declaration of `ScanFilter` to properly resolve imports.
22
+ namespace margelo::nitro::co::zyke::ble { struct ScanFilter; }
63
23
 
64
24
  // Include C++ defined types
65
- #include "BleATTErrorCode.hpp"
66
- #include "BleAndroidErrorCode.hpp"
67
- #include "BleErrorCode.hpp"
68
- #include "BleIOSErrorCode.hpp"
69
- #include "BleManagerNitroOptions.hpp"
70
- #include "BleRestoredState.hpp"
71
- #include "CharacteristicSubscriptionType.hpp"
72
- #include "ConnectionOptions.hpp"
73
- #include "ConnectionPriority.hpp"
74
- #include "HybridBleManagerSpec.hpp"
75
- #include "HybridCharacteristicSpec.hpp"
76
- #include "HybridDescriptorSpec.hpp"
77
- #include "HybridDeviceSpec.hpp"
78
- #include "HybridServiceSpec.hpp"
79
- #include "LogLevel.hpp"
80
- #include "NativeBleError.hpp"
81
- #include "NativeCharacteristic.hpp"
82
- #include "NativeDescriptor.hpp"
83
- #include "NativeDevice.hpp"
84
- #include "NativeService.hpp"
85
- #include "ScanCallbackType.hpp"
86
- #include "ScanMode.hpp"
87
- #include "ScanOptions.hpp"
88
- #include "ServiceDataEntry.hpp"
89
- #include "State.hpp"
90
- #include "Subscription.hpp"
25
+ #include "BLEDevice.hpp"
26
+ #include "BLEState.hpp"
27
+ #include "HybridNativeBleNitroSpec.hpp"
28
+ #include "ManufacturerData.hpp"
29
+ #include "ManufacturerDataEntry.hpp"
30
+ #include "ScanFilter.hpp"
91
31
  #include <NitroModules/Promise.hpp>
92
32
  #include <NitroModules/Result.hpp>
93
33
  #include <exception>
@@ -107,16 +47,8 @@ namespace margelo::nitro::co::zyke::ble { struct Subscription; }
107
47
  #include <NitroModules/DateToChronoDate.hpp>
108
48
 
109
49
  // Forward declarations of Swift defined types
110
- // Forward declaration of `HybridBleManagerSpec_cxx` to properly resolve imports.
111
- namespace BleNitro { class HybridBleManagerSpec_cxx; }
112
- // Forward declaration of `HybridCharacteristicSpec_cxx` to properly resolve imports.
113
- namespace BleNitro { class HybridCharacteristicSpec_cxx; }
114
- // Forward declaration of `HybridDescriptorSpec_cxx` to properly resolve imports.
115
- namespace BleNitro { class HybridDescriptorSpec_cxx; }
116
- // Forward declaration of `HybridDeviceSpec_cxx` to properly resolve imports.
117
- namespace BleNitro { class HybridDeviceSpec_cxx; }
118
- // Forward declaration of `HybridServiceSpec_cxx` to properly resolve imports.
119
- namespace BleNitro { class HybridServiceSpec_cxx; }
50
+ // Forward declaration of `HybridNativeBleNitroSpec_cxx` to properly resolve imports.
51
+ namespace BleNitro { class HybridNativeBleNitroSpec_cxx; }
120
52
 
121
53
  // Include Swift defined types
122
54
  #if __has_include("BleNitro-Swift.h")
@@ -10,7 +10,7 @@
10
10
  #import "BleNitro-Swift-Cxx-Umbrella.hpp"
11
11
  #import <type_traits>
12
12
 
13
- #include "HybridBleManagerSpecSwift.hpp"
13
+ #include "HybridNativeBleNitroSpecSwift.hpp"
14
14
 
15
15
  @interface BleNitroAutolinking : NSObject
16
16
  @end
@@ -22,9 +22,9 @@
22
22
  using namespace margelo::nitro::co::zyke::ble;
23
23
 
24
24
  HybridObjectRegistry::registerHybridObjectConstructor(
25
- "BleManager",
25
+ "NativeBleNitro",
26
26
  []() -> std::shared_ptr<HybridObject> {
27
- std::shared_ptr<margelo::nitro::co::zyke::ble::HybridBleManagerSpec> hybridObject = BleNitro::BleNitroAutolinking::createBleManager();
27
+ std::shared_ptr<HybridNativeBleNitroSpec> hybridObject = BleNitro::BleNitroAutolinking::createNativeBleNitro();
28
28
  return hybridObject;
29
29
  }
30
30
  );
@@ -9,15 +9,15 @@ public final class BleNitroAutolinking {
9
9
  public typealias bridge = margelo.nitro.co.zyke.ble.bridge.swift
10
10
 
11
11
  /**
12
- * Creates an instance of a Swift class that implements `HybridBleManagerSpec`,
13
- * and wraps it in a Swift class that can directly interop with C++ (`HybridBleManagerSpec_cxx`)
12
+ * Creates an instance of a Swift class that implements `HybridNativeBleNitroSpec`,
13
+ * and wraps it in a Swift class that can directly interop with C++ (`HybridNativeBleNitroSpec_cxx`)
14
14
  *
15
15
  * This is generated by Nitrogen and will initialize the class specified
16
16
  * in the `"autolinking"` property of `nitro.json` (in this case, `BleNitroBleManager`).
17
17
  */
18
- public static func createBleManager() -> bridge.std__shared_ptr_margelo__nitro__co__zyke__ble__HybridBleManagerSpec_ {
18
+ public static func createNativeBleNitro() -> bridge.std__shared_ptr_HybridNativeBleNitroSpec_ {
19
19
  let hybridObject = BleNitroBleManager()
20
- return { () -> bridge.std__shared_ptr_margelo__nitro__co__zyke__ble__HybridBleManagerSpec_ in
20
+ return { () -> bridge.std__shared_ptr_HybridNativeBleNitroSpec_ in
21
21
  let __cxxWrapped = hybridObject.getCxxWrapper()
22
22
  return __cxxWrapped.getCxxPart()
23
23
  }()
@@ -1,11 +1,11 @@
1
1
  ///
2
- /// HybridCharacteristicSpecSwift.cpp
2
+ /// HybridNativeBleNitroSpecSwift.cpp
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
- #include "HybridCharacteristicSpecSwift.hpp"
8
+ #include "HybridNativeBleNitroSpecSwift.hpp"
9
9
 
10
10
  namespace margelo::nitro::co::zyke::ble {
11
11
  } // namespace margelo::nitro::co::zyke::ble
@@ -0,0 +1,205 @@
1
+ ///
2
+ /// HybridNativeBleNitroSpecSwift.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include "HybridNativeBleNitroSpec.hpp"
11
+
12
+ // Forward declaration of `HybridNativeBleNitroSpec_cxx` to properly resolve imports.
13
+ namespace BleNitro { class HybridNativeBleNitroSpec_cxx; }
14
+
15
+ // Forward declaration of `ScanFilter` to properly resolve imports.
16
+ namespace margelo::nitro::co::zyke::ble { struct ScanFilter; }
17
+ // Forward declaration of `BLEDevice` to properly resolve imports.
18
+ namespace margelo::nitro::co::zyke::ble { struct BLEDevice; }
19
+ // Forward declaration of `ManufacturerData` to properly resolve imports.
20
+ namespace margelo::nitro::co::zyke::ble { struct ManufacturerData; }
21
+ // Forward declaration of `ManufacturerDataEntry` to properly resolve imports.
22
+ namespace margelo::nitro::co::zyke::ble { struct ManufacturerDataEntry; }
23
+ // Forward declaration of `BLEState` to properly resolve imports.
24
+ namespace margelo::nitro::co::zyke::ble { enum class BLEState; }
25
+
26
+ #include "ScanFilter.hpp"
27
+ #include <string>
28
+ #include <vector>
29
+ #include "BLEDevice.hpp"
30
+ #include <functional>
31
+ #include "ManufacturerData.hpp"
32
+ #include "ManufacturerDataEntry.hpp"
33
+ #include <optional>
34
+ #include "BLEState.hpp"
35
+ #include <NitroModules/Promise.hpp>
36
+
37
+ #include "BleNitro-Swift-Cxx-Umbrella.hpp"
38
+
39
+ namespace margelo::nitro::co::zyke::ble {
40
+
41
+ /**
42
+ * The C++ part of HybridNativeBleNitroSpec_cxx.swift.
43
+ *
44
+ * HybridNativeBleNitroSpecSwift (C++) accesses HybridNativeBleNitroSpec_cxx (Swift), and might
45
+ * contain some additional bridging code for C++ <> Swift interop.
46
+ *
47
+ * Since this obviously introduces an overhead, I hope at some point in
48
+ * the future, HybridNativeBleNitroSpec_cxx can directly inherit from the C++ class HybridNativeBleNitroSpec
49
+ * to simplify the whole structure and memory management.
50
+ */
51
+ class HybridNativeBleNitroSpecSwift: public virtual HybridNativeBleNitroSpec {
52
+ public:
53
+ // Constructor from a Swift instance
54
+ explicit HybridNativeBleNitroSpecSwift(const BleNitro::HybridNativeBleNitroSpec_cxx& swiftPart):
55
+ HybridObject(HybridNativeBleNitroSpec::TAG),
56
+ _swiftPart(swiftPart) { }
57
+
58
+ public:
59
+ // Get the Swift part
60
+ inline BleNitro::HybridNativeBleNitroSpec_cxx& getSwiftPart() noexcept {
61
+ return _swiftPart;
62
+ }
63
+
64
+ public:
65
+ inline size_t getExternalMemorySize() noexcept override {
66
+ return _swiftPart.getMemorySize();
67
+ }
68
+ void dispose() noexcept override {
69
+ _swiftPart.dispose();
70
+ }
71
+
72
+ public:
73
+ // Properties
74
+
75
+
76
+ public:
77
+ // Methods
78
+ inline void startScan(const ScanFilter& filter, const std::function<void(const BLEDevice& /* device */)>& callback) override {
79
+ auto __result = _swiftPart.startScan(filter, callback);
80
+ if (__result.hasError()) [[unlikely]] {
81
+ std::rethrow_exception(__result.error());
82
+ }
83
+ }
84
+ inline void stopScan(const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
85
+ auto __result = _swiftPart.stopScan(callback);
86
+ if (__result.hasError()) [[unlikely]] {
87
+ std::rethrow_exception(__result.error());
88
+ }
89
+ }
90
+ inline void isScanning(const std::function<void(bool /* result */)>& callback) override {
91
+ auto __result = _swiftPart.isScanning(callback);
92
+ if (__result.hasError()) [[unlikely]] {
93
+ std::rethrow_exception(__result.error());
94
+ }
95
+ }
96
+ inline void getConnectedDevices(const std::function<void(const std::vector<BLEDevice>& /* devices */)>& callback) override {
97
+ auto __result = _swiftPart.getConnectedDevices(callback);
98
+ if (__result.hasError()) [[unlikely]] {
99
+ std::rethrow_exception(__result.error());
100
+ }
101
+ }
102
+ inline void connect(const std::string& deviceId, const std::function<void(bool /* success */, const std::string& /* deviceId */, const std::string& /* error */)>& callback, const std::optional<std::function<void(const std::string& /* deviceId */, bool /* interrupted */, const std::string& /* error */)>>& disconnectCallback) override {
103
+ auto __result = _swiftPart.connect(deviceId, callback, disconnectCallback);
104
+ if (__result.hasError()) [[unlikely]] {
105
+ std::rethrow_exception(__result.error());
106
+ }
107
+ }
108
+ inline void disconnect(const std::string& deviceId, const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
109
+ auto __result = _swiftPart.disconnect(deviceId, callback);
110
+ if (__result.hasError()) [[unlikely]] {
111
+ std::rethrow_exception(__result.error());
112
+ }
113
+ }
114
+ inline void isConnected(const std::string& deviceId, const std::function<void(bool /* result */)>& callback) override {
115
+ auto __result = _swiftPart.isConnected(deviceId, callback);
116
+ if (__result.hasError()) [[unlikely]] {
117
+ std::rethrow_exception(__result.error());
118
+ }
119
+ }
120
+ inline void discoverServices(const std::string& deviceId, const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
121
+ auto __result = _swiftPart.discoverServices(deviceId, callback);
122
+ if (__result.hasError()) [[unlikely]] {
123
+ std::rethrow_exception(__result.error());
124
+ }
125
+ }
126
+ inline void getServices(const std::string& deviceId, const std::function<void(const std::vector<std::string>& /* result */)>& callback) override {
127
+ auto __result = _swiftPart.getServices(deviceId, callback);
128
+ if (__result.hasError()) [[unlikely]] {
129
+ std::rethrow_exception(__result.error());
130
+ }
131
+ }
132
+ inline void getCharacteristics(const std::string& deviceId, const std::string& serviceId, const std::function<void(const std::vector<std::string>& /* result */)>& callback) override {
133
+ auto __result = _swiftPart.getCharacteristics(deviceId, serviceId, callback);
134
+ if (__result.hasError()) [[unlikely]] {
135
+ std::rethrow_exception(__result.error());
136
+ }
137
+ }
138
+ inline void readCharacteristic(const std::string& deviceId, const std::string& serviceId, const std::string& characteristicId, const std::function<void(bool /* success */, const std::vector<double>& /* data */, const std::string& /* error */)>& callback) override {
139
+ auto __result = _swiftPart.readCharacteristic(deviceId, serviceId, characteristicId, callback);
140
+ if (__result.hasError()) [[unlikely]] {
141
+ std::rethrow_exception(__result.error());
142
+ }
143
+ }
144
+ inline void writeCharacteristic(const std::string& deviceId, const std::string& serviceId, const std::string& characteristicId, const std::vector<double>& data, bool withResponse, const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
145
+ auto __result = _swiftPart.writeCharacteristic(deviceId, serviceId, characteristicId, data, std::forward<decltype(withResponse)>(withResponse), callback);
146
+ if (__result.hasError()) [[unlikely]] {
147
+ std::rethrow_exception(__result.error());
148
+ }
149
+ }
150
+ inline void subscribeToCharacteristic(const std::string& deviceId, const std::string& serviceId, const std::string& characteristicId, const std::function<void(const std::string& /* characteristicId */, const std::vector<double>& /* data */)>& updateCallback, const std::function<void(bool /* success */, const std::string& /* error */)>& resultCallback) override {
151
+ auto __result = _swiftPart.subscribeToCharacteristic(deviceId, serviceId, characteristicId, updateCallback, resultCallback);
152
+ if (__result.hasError()) [[unlikely]] {
153
+ std::rethrow_exception(__result.error());
154
+ }
155
+ }
156
+ inline void unsubscribeFromCharacteristic(const std::string& deviceId, const std::string& serviceId, const std::string& characteristicId, const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
157
+ auto __result = _swiftPart.unsubscribeFromCharacteristic(deviceId, serviceId, characteristicId, callback);
158
+ if (__result.hasError()) [[unlikely]] {
159
+ std::rethrow_exception(__result.error());
160
+ }
161
+ }
162
+ inline void isBluetoothEnabled(const std::function<void(bool /* result */)>& callback) override {
163
+ auto __result = _swiftPart.isBluetoothEnabled(callback);
164
+ if (__result.hasError()) [[unlikely]] {
165
+ std::rethrow_exception(__result.error());
166
+ }
167
+ }
168
+ inline void requestBluetoothEnable(const std::function<void(bool /* success */, const std::string& /* error */)>& callback) override {
169
+ auto __result = _swiftPart.requestBluetoothEnable(callback);
170
+ if (__result.hasError()) [[unlikely]] {
171
+ std::rethrow_exception(__result.error());
172
+ }
173
+ }
174
+ inline void state(const std::function<void(BLEState /* state */)>& callback) override {
175
+ auto __result = _swiftPart.state(callback);
176
+ if (__result.hasError()) [[unlikely]] {
177
+ std::rethrow_exception(__result.error());
178
+ }
179
+ }
180
+ inline void subscribeToStateChange(const std::function<void(BLEState /* state */)>& stateCallback, const std::function<void(bool /* success */, const std::string& /* error */)>& resultCallback) override {
181
+ auto __result = _swiftPart.subscribeToStateChange(stateCallback, resultCallback);
182
+ if (__result.hasError()) [[unlikely]] {
183
+ std::rethrow_exception(__result.error());
184
+ }
185
+ }
186
+ inline void unsubscribeFromStateChange(const std::function<void(bool /* success */, const std::string& /* error */)>& resultCallback) override {
187
+ auto __result = _swiftPart.unsubscribeFromStateChange(resultCallback);
188
+ if (__result.hasError()) [[unlikely]] {
189
+ std::rethrow_exception(__result.error());
190
+ }
191
+ }
192
+ inline std::shared_ptr<Promise<void>> openSettings() override {
193
+ auto __result = _swiftPart.openSettings();
194
+ if (__result.hasError()) [[unlikely]] {
195
+ std::rethrow_exception(__result.error());
196
+ }
197
+ auto __value = std::move(__result.value());
198
+ return __value;
199
+ }
200
+
201
+ private:
202
+ BleNitro::HybridNativeBleNitroSpec_cxx _swiftPart;
203
+ };
204
+
205
+ } // namespace margelo::nitro::co::zyke::ble
@@ -0,0 +1,102 @@
1
+ ///
2
+ /// BLEDevice.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `BLEDevice`, backed by a C++ struct.
12
+ */
13
+ public typealias BLEDevice = margelo.nitro.co.zyke.ble.BLEDevice
14
+
15
+ public extension BLEDevice {
16
+ private typealias bridge = margelo.nitro.co.zyke.ble.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `BLEDevice`.
20
+ */
21
+ init(id: String, name: String, rssi: Double, manufacturerData: ManufacturerData, serviceUUIDs: [String], isConnectable: Bool) {
22
+ self.init(std.string(id), std.string(name), rssi, manufacturerData, { () -> bridge.std__vector_std__string_ in
23
+ var __vector = bridge.create_std__vector_std__string_(serviceUUIDs.count)
24
+ for __item in serviceUUIDs {
25
+ __vector.push_back(std.string(__item))
26
+ }
27
+ return __vector
28
+ }(), isConnectable)
29
+ }
30
+
31
+ var id: String {
32
+ @inline(__always)
33
+ get {
34
+ return String(self.__id)
35
+ }
36
+ @inline(__always)
37
+ set {
38
+ self.__id = std.string(newValue)
39
+ }
40
+ }
41
+
42
+ var name: String {
43
+ @inline(__always)
44
+ get {
45
+ return String(self.__name)
46
+ }
47
+ @inline(__always)
48
+ set {
49
+ self.__name = std.string(newValue)
50
+ }
51
+ }
52
+
53
+ var rssi: Double {
54
+ @inline(__always)
55
+ get {
56
+ return self.__rssi
57
+ }
58
+ @inline(__always)
59
+ set {
60
+ self.__rssi = newValue
61
+ }
62
+ }
63
+
64
+ var manufacturerData: ManufacturerData {
65
+ @inline(__always)
66
+ get {
67
+ return self.__manufacturerData
68
+ }
69
+ @inline(__always)
70
+ set {
71
+ self.__manufacturerData = newValue
72
+ }
73
+ }
74
+
75
+ var serviceUUIDs: [String] {
76
+ @inline(__always)
77
+ get {
78
+ return self.__serviceUUIDs.map({ __item in String(__item) })
79
+ }
80
+ @inline(__always)
81
+ set {
82
+ self.__serviceUUIDs = { () -> bridge.std__vector_std__string_ in
83
+ var __vector = bridge.create_std__vector_std__string_(newValue.count)
84
+ for __item in newValue {
85
+ __vector.push_back(std.string(__item))
86
+ }
87
+ return __vector
88
+ }()
89
+ }
90
+ }
91
+
92
+ var isConnectable: Bool {
93
+ @inline(__always)
94
+ get {
95
+ return self.__isConnectable
96
+ }
97
+ @inline(__always)
98
+ set {
99
+ self.__isConnectable = newValue
100
+ }
101
+ }
102
+ }
@@ -1,18 +1,18 @@
1
1
  ///
2
- /// State.swift
2
+ /// BLEState.swift
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
6
6
  ///
7
7
 
8
8
  /**
9
- * Represents the JS enum `State`, backed by a C++ enum.
9
+ * Represents the JS enum `BLEState`, backed by a C++ enum.
10
10
  */
11
- public typealias State = margelo.nitro.co.zyke.ble.State
11
+ public typealias BLEState = margelo.nitro.co.zyke.ble.BLEState
12
12
 
13
- public extension State {
13
+ public extension BLEState {
14
14
  /**
15
- * Get a State for the given String value, or
15
+ * Get a BLEState for the given String value, or
16
16
  * return `nil` if the given value was invalid/unknown.
17
17
  */
18
18
  init?(fromString string: String) {
@@ -35,7 +35,7 @@ public extension State {
35
35
  }
36
36
 
37
37
  /**
38
- * Get the String value this State represents.
38
+ * Get the String value this BLEState represents.
39
39
  */
40
40
  var stringValue: String {
41
41
  switch self {
@@ -7,6 +7,7 @@
7
7
 
8
8
  import NitroModules
9
9
 
10
+
10
11
  /**
11
12
  * Wraps a Swift `() -> Void` as a class.
12
13
  * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// Func_void_State.swift
2
+ /// Func_void_BLEDevice.swift
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -7,22 +7,23 @@
7
7
 
8
8
  import NitroModules
9
9
 
10
+
10
11
  /**
11
- * Wraps a Swift `(_ newState: State) -> Void` as a class.
12
+ * Wraps a Swift `(_ device: BLEDevice) -> Void` as a class.
12
13
  * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
13
14
  */
14
- public final class Func_void_State {
15
+ public final class Func_void_BLEDevice {
15
16
  public typealias bridge = margelo.nitro.co.zyke.ble.bridge.swift
16
17
 
17
- private let closure: (_ newState: State) -> Void
18
+ private let closure: (_ device: BLEDevice) -> Void
18
19
 
19
- public init(_ closure: @escaping (_ newState: State) -> Void) {
20
+ public init(_ closure: @escaping (_ device: BLEDevice) -> Void) {
20
21
  self.closure = closure
21
22
  }
22
23
 
23
24
  @inline(__always)
24
- public func call(newState: Int32) -> Void {
25
- self.closure(margelo.nitro.co.zyke.ble.State(rawValue: newState)!)
25
+ public func call(device: BLEDevice) -> Void {
26
+ self.closure(device)
26
27
  }
27
28
 
28
29
  /**
@@ -35,12 +36,12 @@ public final class Func_void_State {
35
36
  }
36
37
 
37
38
  /**
38
- * Casts an unsafe pointer to a `Func_void_State`.
39
- * The pointer has to be a retained opaque `Unmanaged<Func_void_State>`.
39
+ * Casts an unsafe pointer to a `Func_void_BLEDevice`.
40
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_BLEDevice>`.
40
41
  * This removes one strong reference from the object!
41
42
  */
42
43
  @inline(__always)
43
- public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_State {
44
- return Unmanaged<Func_void_State>.fromOpaque(pointer).takeRetainedValue()
44
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_BLEDevice {
45
+ return Unmanaged<Func_void_BLEDevice>.fromOpaque(pointer).takeRetainedValue()
45
46
  }
46
47
  }
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// Func_void_LogLevel.swift
2
+ /// Func_void_BLEState.swift
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © 2025 Marc Rousavy @ Margelo
@@ -7,22 +7,23 @@
7
7
 
8
8
  import NitroModules
9
9
 
10
+
10
11
  /**
11
- * Wraps a Swift `(_ value: LogLevel) -> Void` as a class.
12
+ * Wraps a Swift `(_ state: BLEState) -> Void` as a class.
12
13
  * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
13
14
  */
14
- public final class Func_void_LogLevel {
15
+ public final class Func_void_BLEState {
15
16
  public typealias bridge = margelo.nitro.co.zyke.ble.bridge.swift
16
17
 
17
- private let closure: (_ value: LogLevel) -> Void
18
+ private let closure: (_ state: BLEState) -> Void
18
19
 
19
- public init(_ closure: @escaping (_ value: LogLevel) -> Void) {
20
+ public init(_ closure: @escaping (_ state: BLEState) -> Void) {
20
21
  self.closure = closure
21
22
  }
22
23
 
23
24
  @inline(__always)
24
- public func call(value: Int32) -> Void {
25
- self.closure(margelo.nitro.co.zyke.ble.LogLevel(rawValue: value)!)
25
+ public func call(state: Int32) -> Void {
26
+ self.closure(margelo.nitro.co.zyke.ble.BLEState(rawValue: state)!)
26
27
  }
27
28
 
28
29
  /**
@@ -35,12 +36,12 @@ public final class Func_void_LogLevel {
35
36
  }
36
37
 
37
38
  /**
38
- * Casts an unsafe pointer to a `Func_void_LogLevel`.
39
- * The pointer has to be a retained opaque `Unmanaged<Func_void_LogLevel>`.
39
+ * Casts an unsafe pointer to a `Func_void_BLEState`.
40
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_BLEState>`.
40
41
  * This removes one strong reference from the object!
41
42
  */
42
43
  @inline(__always)
43
- public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_LogLevel {
44
- return Unmanaged<Func_void_LogLevel>.fromOpaque(pointer).takeRetainedValue()
44
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_BLEState {
45
+ return Unmanaged<Func_void_BLEState>.fromOpaque(pointer).takeRetainedValue()
45
46
  }
46
47
  }
@@ -7,22 +7,23 @@
7
7
 
8
8
  import NitroModules
9
9
 
10
+
10
11
  /**
11
- * Wraps a Swift `(_ value: Bool) -> Void` as a class.
12
+ * Wraps a Swift `(_ result: Bool) -> Void` as a class.
12
13
  * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
13
14
  */
14
15
  public final class Func_void_bool {
15
16
  public typealias bridge = margelo.nitro.co.zyke.ble.bridge.swift
16
17
 
17
- private let closure: (_ value: Bool) -> Void
18
+ private let closure: (_ result: Bool) -> Void
18
19
 
19
- public init(_ closure: @escaping (_ value: Bool) -> Void) {
20
+ public init(_ closure: @escaping (_ result: Bool) -> Void) {
20
21
  self.closure = closure
21
22
  }
22
23
 
23
24
  @inline(__always)
24
- public func call(value: Bool) -> Void {
25
- self.closure(value)
25
+ public func call(result: Bool) -> Void {
26
+ self.closure(result)
26
27
  }
27
28
 
28
29
  /**