react-native-quick-crypto 0.7.3 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/QuickCrypto.podspec +34 -0
  2. package/README.md +13 -46
  3. package/android/CMakeLists.txt +32 -64
  4. package/android/build.gradle +52 -125
  5. package/android/gradle.properties +4 -4
  6. package/android/src/main/cpp/cpp-adapter.cpp +9 -54
  7. package/android/src/main/java/com/margelo/nitro/quickcrypto/QuickCryptoPackage.java +38 -0
  8. package/cpp/random/HybridRandom.cpp +34 -0
  9. package/cpp/random/HybridRandom.hpp +44 -0
  10. package/cpp/utils/Utils.hpp +9 -0
  11. package/ios/QuickCryptoOnLoad.mm +19 -0
  12. package/lib/commonjs/index.js +39 -39
  13. package/lib/commonjs/index.js.map +1 -1
  14. package/lib/commonjs/random.js +26 -12
  15. package/lib/commonjs/random.js.map +1 -1
  16. package/lib/commonjs/{NativeQuickCrypto/rsa.js → specs/random.nitro.js} +1 -1
  17. package/lib/commonjs/{NativeQuickCrypto/aes.js.map → specs/random.nitro.js.map} +1 -1
  18. package/lib/commonjs/utils/conversion.js +22 -0
  19. package/lib/commonjs/utils/conversion.js.map +1 -0
  20. package/lib/commonjs/utils/index.js +12 -0
  21. package/lib/commonjs/utils/index.js.map +1 -0
  22. package/lib/commonjs/utils/types.js +2 -0
  23. package/lib/{module/NativeQuickCrypto/aes.js.map → commonjs/utils/types.js.map} +1 -1
  24. package/lib/module/index.js +38 -38
  25. package/lib/module/index.js.map +1 -1
  26. package/lib/module/random.js +26 -12
  27. package/lib/module/random.js.map +1 -1
  28. package/lib/module/specs/random.nitro.js +4 -0
  29. package/lib/module/{NativeQuickCrypto/rsa.js.map → specs/random.nitro.js.map} +1 -1
  30. package/lib/module/utils/conversion.js +16 -0
  31. package/lib/module/utils/conversion.js.map +1 -0
  32. package/lib/module/utils/index.js +8 -0
  33. package/lib/module/utils/index.js.map +1 -0
  34. package/lib/module/utils/types.js +2 -0
  35. package/lib/{commonjs/NativeQuickCrypto/rsa.js.map → module/utils/types.js.map} +1 -1
  36. package/lib/tsconfig.tsbuildinfo +1 -0
  37. package/lib/typescript/index.d.ts +10 -141
  38. package/lib/typescript/index.d.ts.map +1 -1
  39. package/lib/typescript/random.d.ts +4 -5
  40. package/lib/typescript/random.d.ts.map +1 -1
  41. package/lib/typescript/specs/random.nitro.d.ts +9 -0
  42. package/lib/typescript/specs/random.nitro.d.ts.map +1 -0
  43. package/lib/typescript/utils/conversion.d.ts +4 -0
  44. package/lib/typescript/utils/conversion.d.ts.map +1 -0
  45. package/lib/typescript/utils/index.d.ts +6 -0
  46. package/lib/typescript/utils/index.d.ts.map +1 -0
  47. package/lib/typescript/utils/types.d.ts +5 -0
  48. package/lib/typescript/utils/types.d.ts.map +1 -0
  49. package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +45 -0
  50. package/nitrogen/generated/android/QuickCrypto+autolinking.gradle +26 -0
  51. package/nitrogen/generated/ios/QuickCrypto+autolinking.rb +57 -0
  52. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.cpp +9 -0
  53. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.hpp +25 -0
  54. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Umbrella.hpp +29 -0
  55. package/nitrogen/generated/shared/c++/HybridRandomSpec.cpp +23 -0
  56. package/nitrogen/generated/shared/c++/HybridRandomSpec.hpp +62 -0
  57. package/package.json +50 -106
  58. package/src/index.ts +38 -48
  59. package/src/random.ts +51 -48
  60. package/src/specs/random.nitro.ts +14 -0
  61. package/src/utils/conversion.ts +16 -0
  62. package/src/utils/index.ts +6 -0
  63. package/src/utils/types.ts +15 -0
  64. package/LICENSE +0 -27
  65. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoModule.java +0 -70
  66. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoPackage.java +0 -25
  67. package/cpp/Cipher/MGLCipherHostObject.cpp +0 -663
  68. package/cpp/Cipher/MGLCipherHostObject.h +0 -90
  69. package/cpp/Cipher/MGLCreateCipherInstaller.cpp +0 -75
  70. package/cpp/Cipher/MGLCreateCipherInstaller.h +0 -22
  71. package/cpp/Cipher/MGLCreateDecipherInstaller.cpp +0 -77
  72. package/cpp/Cipher/MGLCreateDecipherInstaller.h +0 -17
  73. package/cpp/Cipher/MGLGenerateKeyPairInstaller.cpp +0 -134
  74. package/cpp/Cipher/MGLGenerateKeyPairInstaller.h +0 -35
  75. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.cpp +0 -63
  76. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.h +0 -37
  77. package/cpp/Cipher/MGLPublicCipher.h +0 -124
  78. package/cpp/Cipher/MGLPublicCipherInstaller.h +0 -107
  79. package/cpp/Cipher/MGLRsa.cpp +0 -573
  80. package/cpp/Cipher/MGLRsa.h +0 -109
  81. package/cpp/HMAC/MGLHmacHostObject.cpp +0 -95
  82. package/cpp/HMAC/MGLHmacHostObject.h +0 -39
  83. package/cpp/HMAC/MGLHmacInstaller.cpp +0 -43
  84. package/cpp/HMAC/MGLHmacInstaller.h +0 -20
  85. package/cpp/Hash/MGLHashHostObject.cpp +0 -147
  86. package/cpp/Hash/MGLHashHostObject.h +0 -53
  87. package/cpp/Hash/MGLHashInstaller.cpp +0 -44
  88. package/cpp/Hash/MGLHashInstaller.h +0 -20
  89. package/cpp/JSIUtils/MGLJSIMacros.h +0 -110
  90. package/cpp/JSIUtils/MGLJSIUtils.h +0 -41
  91. package/cpp/JSIUtils/MGLSmartHostObject.cpp +0 -43
  92. package/cpp/JSIUtils/MGLSmartHostObject.h +0 -46
  93. package/cpp/JSIUtils/MGLThreadAwareHostObject.cpp +0 -24
  94. package/cpp/JSIUtils/MGLThreadAwareHostObject.h +0 -43
  95. package/cpp/JSIUtils/MGLTypedArray.cpp +0 -325
  96. package/cpp/JSIUtils/MGLTypedArray.h +0 -160
  97. package/cpp/MGLKeys.cpp +0 -1426
  98. package/cpp/MGLKeys.h +0 -203
  99. package/cpp/MGLQuickCryptoHostObject.cpp +0 -127
  100. package/cpp/MGLQuickCryptoHostObject.h +0 -30
  101. package/cpp/Random/MGLRandomHostObject.cpp +0 -96
  102. package/cpp/Random/MGLRandomHostObject.h +0 -27
  103. package/cpp/Sig/MGLSignHostObjects.cpp +0 -757
  104. package/cpp/Sig/MGLSignHostObjects.h +0 -128
  105. package/cpp/Sig/MGLSignInstaller.cpp +0 -24
  106. package/cpp/Sig/MGLSignInstaller.h +0 -29
  107. package/cpp/Sig/MGLVerifyInstaller.cpp +0 -24
  108. package/cpp/Sig/MGLVerifyInstaller.h +0 -22
  109. package/cpp/Utils/MGLDispatchQueue.cpp +0 -75
  110. package/cpp/Utils/MGLDispatchQueue.h +0 -55
  111. package/cpp/Utils/MGLUtils.cpp +0 -295
  112. package/cpp/Utils/MGLUtils.h +0 -358
  113. package/cpp/Utils/base64.h +0 -320
  114. package/cpp/Utils/logs.h +0 -38
  115. package/cpp/Utils/node.h +0 -13
  116. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.cpp +0 -164
  117. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.h +0 -29
  118. package/cpp/fastpbkdf2/fastpbkdf2.c +0 -352
  119. package/cpp/fastpbkdf2/fastpbkdf2.h +0 -68
  120. package/cpp/webcrypto/MGLWebCrypto.cpp +0 -125
  121. package/cpp/webcrypto/MGLWebCrypto.h +0 -32
  122. package/cpp/webcrypto/crypto_aes.cpp +0 -516
  123. package/cpp/webcrypto/crypto_aes.h +0 -79
  124. package/cpp/webcrypto/crypto_ec.cpp +0 -424
  125. package/cpp/webcrypto/crypto_ec.h +0 -78
  126. package/cpp/webcrypto/crypto_keygen.cpp +0 -86
  127. package/cpp/webcrypto/crypto_keygen.h +0 -38
  128. package/ios/QuickCrypto.xcodeproj/project.pbxproj +0 -274
  129. package/ios/QuickCryptoModule.h +0 -5
  130. package/ios/QuickCryptoModule.mm +0 -42
  131. package/lib/commonjs/Cipher.js +0 -502
  132. package/lib/commonjs/Cipher.js.map +0 -1
  133. package/lib/commonjs/Hash.js +0 -99
  134. package/lib/commonjs/Hash.js.map +0 -1
  135. package/lib/commonjs/Hashnames.js +0 -87
  136. package/lib/commonjs/Hashnames.js.map +0 -1
  137. package/lib/commonjs/Hmac.js +0 -79
  138. package/lib/commonjs/Hmac.js.map +0 -1
  139. package/lib/commonjs/NativeQuickCrypto/Cipher.js +0 -30
  140. package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +0 -1
  141. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js +0 -52
  142. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  143. package/lib/commonjs/NativeQuickCrypto/aes.js +0 -6
  144. package/lib/commonjs/NativeQuickCrypto/hash.js +0 -2
  145. package/lib/commonjs/NativeQuickCrypto/hash.js.map +0 -1
  146. package/lib/commonjs/NativeQuickCrypto/hmac.js +0 -2
  147. package/lib/commonjs/NativeQuickCrypto/hmac.js.map +0 -1
  148. package/lib/commonjs/NativeQuickCrypto/keygen.js +0 -6
  149. package/lib/commonjs/NativeQuickCrypto/keygen.js.map +0 -1
  150. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js +0 -2
  151. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js.map +0 -1
  152. package/lib/commonjs/NativeQuickCrypto/random.js +0 -2
  153. package/lib/commonjs/NativeQuickCrypto/random.js.map +0 -1
  154. package/lib/commonjs/NativeQuickCrypto/sig.js +0 -19
  155. package/lib/commonjs/NativeQuickCrypto/sig.js.map +0 -1
  156. package/lib/commonjs/NativeQuickCrypto/webcrypto.js +0 -6
  157. package/lib/commonjs/NativeQuickCrypto/webcrypto.js.map +0 -1
  158. package/lib/commonjs/Utils.js +0 -608
  159. package/lib/commonjs/Utils.js.map +0 -1
  160. package/lib/commonjs/aes.js +0 -281
  161. package/lib/commonjs/aes.js.map +0 -1
  162. package/lib/commonjs/constants.js +0 -85
  163. package/lib/commonjs/constants.js.map +0 -1
  164. package/lib/commonjs/ec.js +0 -276
  165. package/lib/commonjs/ec.js.map +0 -1
  166. package/lib/commonjs/keygen.js +0 -56
  167. package/lib/commonjs/keygen.js.map +0 -1
  168. package/lib/commonjs/keys.js +0 -492
  169. package/lib/commonjs/keys.js.map +0 -1
  170. package/lib/commonjs/pbkdf2.js +0 -90
  171. package/lib/commonjs/pbkdf2.js.map +0 -1
  172. package/lib/commonjs/rsa.js +0 -248
  173. package/lib/commonjs/rsa.js.map +0 -1
  174. package/lib/commonjs/sig.js +0 -129
  175. package/lib/commonjs/sig.js.map +0 -1
  176. package/lib/commonjs/subtle.js +0 -448
  177. package/lib/commonjs/subtle.js.map +0 -1
  178. package/lib/commonjs/webcrypto.js +0 -14
  179. package/lib/commonjs/webcrypto.js.map +0 -1
  180. package/lib/module/Cipher.js +0 -491
  181. package/lib/module/Cipher.js.map +0 -1
  182. package/lib/module/Hash.js +0 -93
  183. package/lib/module/Hash.js.map +0 -1
  184. package/lib/module/Hashnames.js +0 -85
  185. package/lib/module/Hashnames.js.map +0 -1
  186. package/lib/module/Hmac.js +0 -74
  187. package/lib/module/Hmac.js.map +0 -1
  188. package/lib/module/NativeQuickCrypto/Cipher.js +0 -26
  189. package/lib/module/NativeQuickCrypto/Cipher.js.map +0 -1
  190. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js +0 -49
  191. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  192. package/lib/module/NativeQuickCrypto/aes.js +0 -4
  193. package/lib/module/NativeQuickCrypto/hash.js +0 -2
  194. package/lib/module/NativeQuickCrypto/hash.js.map +0 -1
  195. package/lib/module/NativeQuickCrypto/hmac.js +0 -2
  196. package/lib/module/NativeQuickCrypto/hmac.js.map +0 -1
  197. package/lib/module/NativeQuickCrypto/keygen.js +0 -4
  198. package/lib/module/NativeQuickCrypto/keygen.js.map +0 -1
  199. package/lib/module/NativeQuickCrypto/pbkdf2.js +0 -2
  200. package/lib/module/NativeQuickCrypto/pbkdf2.js.map +0 -1
  201. package/lib/module/NativeQuickCrypto/random.js +0 -2
  202. package/lib/module/NativeQuickCrypto/random.js.map +0 -1
  203. package/lib/module/NativeQuickCrypto/rsa.js +0 -4
  204. package/lib/module/NativeQuickCrypto/sig.js +0 -17
  205. package/lib/module/NativeQuickCrypto/sig.js.map +0 -1
  206. package/lib/module/NativeQuickCrypto/webcrypto.js +0 -4
  207. package/lib/module/NativeQuickCrypto/webcrypto.js.map +0 -1
  208. package/lib/module/Utils.js +0 -539
  209. package/lib/module/Utils.js.map +0 -1
  210. package/lib/module/aes.js +0 -274
  211. package/lib/module/aes.js.map +0 -1
  212. package/lib/module/constants.js +0 -81
  213. package/lib/module/constants.js.map +0 -1
  214. package/lib/module/ec.js +0 -267
  215. package/lib/module/ec.js.map +0 -1
  216. package/lib/module/keygen.js +0 -49
  217. package/lib/module/keygen.js.map +0 -1
  218. package/lib/module/keys.js +0 -477
  219. package/lib/module/keys.js.map +0 -1
  220. package/lib/module/pbkdf2.js +0 -84
  221. package/lib/module/pbkdf2.js.map +0 -1
  222. package/lib/module/rsa.js +0 -242
  223. package/lib/module/rsa.js.map +0 -1
  224. package/lib/module/sig.js +0 -124
  225. package/lib/module/sig.js.map +0 -1
  226. package/lib/module/subtle.js +0 -443
  227. package/lib/module/subtle.js.map +0 -1
  228. package/lib/module/webcrypto.js +0 -10
  229. package/lib/module/webcrypto.js.map +0 -1
  230. package/lib/typescript/Cipher.d.ts +0 -81
  231. package/lib/typescript/Cipher.d.ts.map +0 -1
  232. package/lib/typescript/Hash.d.ts +0 -44
  233. package/lib/typescript/Hash.d.ts.map +0 -1
  234. package/lib/typescript/Hashnames.d.ts +0 -11
  235. package/lib/typescript/Hashnames.d.ts.map +0 -1
  236. package/lib/typescript/Hmac.d.ts +0 -37
  237. package/lib/typescript/Hmac.d.ts.map +0 -1
  238. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts +0 -44
  239. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +0 -1
  240. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts +0 -33
  241. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +0 -1
  242. package/lib/typescript/NativeQuickCrypto/aes.d.ts +0 -5
  243. package/lib/typescript/NativeQuickCrypto/aes.d.ts.map +0 -1
  244. package/lib/typescript/NativeQuickCrypto/hash.d.ts +0 -7
  245. package/lib/typescript/NativeQuickCrypto/hash.d.ts.map +0 -1
  246. package/lib/typescript/NativeQuickCrypto/hmac.d.ts +0 -6
  247. package/lib/typescript/NativeQuickCrypto/hmac.d.ts.map +0 -1
  248. package/lib/typescript/NativeQuickCrypto/keygen.d.ts +0 -4
  249. package/lib/typescript/NativeQuickCrypto/keygen.d.ts.map +0 -1
  250. package/lib/typescript/NativeQuickCrypto/pbkdf2.d.ts +0 -5
  251. package/lib/typescript/NativeQuickCrypto/pbkdf2.d.ts.map +0 -1
  252. package/lib/typescript/NativeQuickCrypto/random.d.ts +0 -5
  253. package/lib/typescript/NativeQuickCrypto/random.d.ts.map +0 -1
  254. package/lib/typescript/NativeQuickCrypto/rsa.d.ts +0 -5
  255. package/lib/typescript/NativeQuickCrypto/rsa.d.ts.map +0 -1
  256. package/lib/typescript/NativeQuickCrypto/sig.d.ts +0 -23
  257. package/lib/typescript/NativeQuickCrypto/sig.d.ts.map +0 -1
  258. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts +0 -39
  259. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +0 -1
  260. package/lib/typescript/Utils.d.ts +0 -48
  261. package/lib/typescript/Utils.d.ts.map +0 -1
  262. package/lib/typescript/aes.d.ts +0 -22
  263. package/lib/typescript/aes.d.ts.map +0 -1
  264. package/lib/typescript/constants.d.ts +0 -76
  265. package/lib/typescript/constants.d.ts.map +0 -1
  266. package/lib/typescript/ec.d.ts +0 -7
  267. package/lib/typescript/ec.d.ts.map +0 -1
  268. package/lib/typescript/keygen.d.ts +0 -6
  269. package/lib/typescript/keygen.d.ts.map +0 -1
  270. package/lib/typescript/keys.d.ts +0 -206
  271. package/lib/typescript/keys.d.ts.map +0 -1
  272. package/lib/typescript/pbkdf2.d.ts +0 -12
  273. package/lib/typescript/pbkdf2.d.ts.map +0 -1
  274. package/lib/typescript/rsa.d.ts +0 -12
  275. package/lib/typescript/rsa.d.ts.map +0 -1
  276. package/lib/typescript/sig.d.ts +0 -21
  277. package/lib/typescript/sig.d.ts.map +0 -1
  278. package/lib/typescript/subtle.d.ts +0 -15
  279. package/lib/typescript/subtle.d.ts.map +0 -1
  280. package/lib/typescript/webcrypto.d.ts +0 -9
  281. package/lib/typescript/webcrypto.d.ts.map +0 -1
  282. package/react-native-quick-crypto.podspec +0 -40
  283. package/src/Cipher.ts +0 -832
  284. package/src/Hash.ts +0 -132
  285. package/src/Hashnames.ts +0 -93
  286. package/src/Hmac.ts +0 -106
  287. package/src/NativeQuickCrypto/Cipher.ts +0 -102
  288. package/src/NativeQuickCrypto/NativeQuickCrypto.ts +0 -102
  289. package/src/NativeQuickCrypto/aes.ts +0 -14
  290. package/src/NativeQuickCrypto/hash.ts +0 -10
  291. package/src/NativeQuickCrypto/hmac.ts +0 -9
  292. package/src/NativeQuickCrypto/keygen.ts +0 -7
  293. package/src/NativeQuickCrypto/pbkdf2.ts +0 -16
  294. package/src/NativeQuickCrypto/random.ts +0 -12
  295. package/src/NativeQuickCrypto/rsa.ts +0 -12
  296. package/src/NativeQuickCrypto/sig.ts +0 -44
  297. package/src/NativeQuickCrypto/webcrypto.ts +0 -72
  298. package/src/Utils.ts +0 -777
  299. package/src/aes.ts +0 -402
  300. package/src/constants.ts +0 -79
  301. package/src/ec.ts +0 -375
  302. package/src/keygen.ts +0 -80
  303. package/src/keys.ts +0 -787
  304. package/src/pbkdf2.ts +0 -169
  305. package/src/rsa.ts +0 -370
  306. package/src/sig.ts +0 -164
  307. package/src/subtle.ts +0 -639
  308. package/src/webcrypto.ts +0 -8
  309. /package/android/src/main/{AndroidManifestNew.xml → AndroidManifest.xml} +0 -0
@@ -0,0 +1,19 @@
1
+
2
+ #include "HybridRandom.hpp"
3
+ #include <NitroModules/HybridObjectRegistry.hpp>
4
+
5
+ @interface QuickCryptoOnLoad : NSObject
6
+ @end
7
+
8
+ @implementation QuickCryptoOnLoad
9
+
10
+ using namespace margelo::nitro;
11
+ using namespace margelo::crypto;
12
+
13
+ + (void)load {
14
+ HybridObjectRegistry::registerHybridObjectConstructor(
15
+ "Random", []() -> std::shared_ptr<HybridObject> { return std::make_shared<HybridRandom>();
16
+ });
17
+ }
18
+
19
+ @end
@@ -5,52 +5,49 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.install = exports.default = void 0;
7
7
  var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
8
- var pbkdf2 = _interopRequireWildcard(require("./pbkdf2"));
9
8
  var random = _interopRequireWildcard(require("./random"));
10
- var _Cipher = require("./Cipher");
11
- var _keygen = require("./keygen");
12
- var _sig = require("./sig");
13
- var _Hmac = require("./Hmac");
14
- var _Hash = require("./Hash");
15
- var _constants = require("./constants");
16
- var _subtle = require("./subtle");
17
- var _Utils = require("./Utils");
18
- var _webcrypto = _interopRequireDefault(require("./webcrypto"));
19
- var _keys = require("./keys");
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ var _utils = require("./utils");
21
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
22
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
+ // polyfill imports
13
+
14
+ // API imports
15
+
16
+ // utils import
17
+
23
18
  /**
24
- * Loosely matches Node.js {crypto} with some unimplemented functionality
19
+ * Loosely matches Node.js {crypto} with some unimplemented functionality.
20
+ * See `docs/implementation-coverage.md` for status.
25
21
  */
26
22
  const QuickCrypto = {
27
- createHmac: _Hmac.createHmac,
28
- Hmac: _Hmac.createHmac,
29
- Hash: _Hash.createHash,
30
- createHash: _Hash.createHash,
31
- createCipher: _Cipher.createCipher,
32
- createCipheriv: _Cipher.createCipheriv,
33
- createDecipher: _Cipher.createDecipher,
34
- createDecipheriv: _Cipher.createDecipheriv,
35
- createPublicKey: _keys.createPublicKey,
36
- createPrivateKey: _keys.createPrivateKey,
37
- createSecretKey: _keys.createSecretKey,
38
- publicEncrypt: _Cipher.publicEncrypt,
39
- publicDecrypt: _Cipher.publicDecrypt,
40
- privateDecrypt: _Cipher.privateDecrypt,
41
- generateKey: _keygen.generateKey,
42
- generateKeyPair: _Cipher.generateKeyPair,
43
- generateKeyPairSync: _Cipher.generateKeyPairSync,
44
- generateKeySync: _keygen.generateKeySync,
45
- createSign: _sig.createSign,
46
- createVerify: _sig.createVerify,
47
- subtle: _subtle.subtle,
48
- constants: _constants.constants,
49
- ...pbkdf2,
23
+ // createHmac,
24
+ // Hmac: createHmac,
25
+ // Hash: createHash,
26
+ // createHash,
27
+ // createCipher,
28
+ // createCipheriv,
29
+ // createDecipher,
30
+ // createDecipheriv,
31
+ // createPublicKey,
32
+ // createPrivateKey,
33
+ // createSecretKey,
34
+ // publicEncrypt,
35
+ // publicDecrypt,
36
+ // privateDecrypt,
37
+ // generateKey,
38
+ // generateKeyPair,
39
+ // generateKeyPairSync,
40
+ // generateKeySync,
41
+ // createSign,
42
+ // createVerify,
43
+ // subtle,
44
+ // constants,
45
+ // ...pbkdf2,
50
46
  ...random,
51
- getCiphers: _Utils.getCiphers,
52
- getHashes: _Utils.getHashes,
53
- webcrypto: _webcrypto.default
47
+ // getCiphers,
48
+ // getHashes,
49
+ // webcrypto,
50
+ utils: _utils.utils
54
51
  };
55
52
 
56
53
  /**
@@ -63,7 +60,10 @@ const install = () => {
63
60
  // @ts-expect-error subtle isn't fully implemented and Cryptokey is missing
64
61
  global.crypto = QuickCrypto;
65
62
  };
63
+
64
+ // random, cipher, hash use nextTick
66
65
  exports.install = install;
66
+ global.process.nextTick = setImmediate;
67
67
  var _default = exports.default = QuickCrypto; // Additional exports for CommonJS compatibility
68
68
  module.exports = QuickCrypto;
69
69
  module.exports.default = QuickCrypto;
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeBuffer","require","pbkdf2","_interopRequireWildcard","random","_Cipher","_keygen","_sig","_Hmac","_Hash","_constants","_subtle","_Utils","_webcrypto","_interopRequireDefault","_keys","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","QuickCrypto","createHmac","Hmac","Hash","createHash","createCipher","createCipheriv","createDecipher","createDecipheriv","createPublicKey","createPrivateKey","createSecretKey","publicEncrypt","publicDecrypt","privateDecrypt","generateKey","generateKeyPair","generateKeyPairSync","generateKeySync","createSign","createVerify","subtle","constants","getCiphers","getHashes","webcrypto","install","global","Buffer","crypto","exports","_default","module"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeBuffer","require","random","_interopRequireWildcard","_utils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","QuickCrypto","utils","install","global","Buffer","crypto","exports","process","nextTick","setImmediate","_default","module"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;AACA,IAAAA,kBAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAH,OAAA;AAAgC,SAAAI,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAPhC;;AAGA;;AAGA;;AAGA;AACA;AACA;AACA;AACA,MAAMW,WAAW,GAAG;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAGvB,MAAM;EACT;EACA;EACA;EACAwB,KAAK,EAALA;AACF,CAAC;;AAED;AACA;AACA;AACO,MAAMC,OAAO,GAAGA,CAAA,KAAM;EAC3B;EACAC,MAAM,CAACC,MAAM,GAAGA,yBAAM;;EAEtB;EACAD,MAAM,CAACE,MAAM,GAAGL,WAAW;AAC7B,CAAC;;AAED;AAAAM,OAAA,CAAAJ,OAAA,GAAAA,OAAA;AACAC,MAAM,CAACI,OAAO,CAACC,QAAQ,GAAGC,YAAY;AAAC,IAAAC,QAAA,GAAAJ,OAAA,CAAApB,OAAA,GAExBc,WAAW,EAE1B;AACAW,MAAM,CAACL,OAAO,GAAGN,WAAW;AAC5BW,MAAM,CAACL,OAAO,CAACpB,OAAO,GAAGc,WAAW;AACpCW,MAAM,CAACL,OAAO,CAACJ,OAAO,GAAGA,OAAO","ignoreList":[]}
@@ -11,9 +11,18 @@ exports.randomFillSync = randomFillSync;
11
11
  exports.randomInt = randomInt;
12
12
  exports.randomUUID = randomUUID;
13
13
  exports.rng = void 0;
14
- var _NativeQuickCrypto = require("./NativeQuickCrypto/NativeQuickCrypto");
15
14
  var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
16
- const random = _NativeQuickCrypto.NativeQuickCrypto.random;
15
+ var _conversion = require("./utils/conversion");
16
+ var _reactNativeNitroModules = require("react-native-nitro-modules");
17
+ // to use native bits in sub-functions, use getNative(). don't call it at top-level!
18
+ let random;
19
+ function getNative() {
20
+ if (random == null) {
21
+ // lazy-load the Nitro HybridObject
22
+ random = _reactNativeNitroModules.NitroModules.createHybridObject('Random');
23
+ }
24
+ return random;
25
+ }
17
26
  function randomFill(buffer, ...rest) {
18
27
  if (typeof rest[rest.length - 1] !== 'function') {
19
28
  throw new Error('No callback provided to randomFill');
@@ -28,14 +37,18 @@ function randomFill(buffer, ...rest) {
28
37
  if (typeof rest[1] === 'function') {
29
38
  offset = rest[0];
30
39
  }
31
- random.randomFill(_reactNativeBuffer.Buffer.isBuffer(buffer) ? buffer.buffer : ArrayBuffer.isView(buffer) ? buffer.buffer : buffer, offset, size).then(() => {
32
- callback(null, buffer);
40
+ getNative();
41
+ random.randomFill((0, _conversion.abvToArrayBuffer)(buffer), offset, size).then(res => {
42
+ callback(null, res);
33
43
  }, e => {
34
44
  callback(e);
35
45
  });
36
46
  }
37
47
  function randomFillSync(buffer, offset = 0, size) {
38
- random.randomFillSync(buffer.buffer ? buffer.buffer : buffer, offset, size ?? buffer.byteLength);
48
+ getNative();
49
+ buffer = (0, _conversion.abvToArrayBuffer)(buffer);
50
+ const res = random.randomFillSync(buffer, offset, size ?? buffer.byteLength);
51
+ buffer = res;
39
52
  return buffer;
40
53
  }
41
54
  function randomBytes(size, callback) {
@@ -44,11 +57,11 @@ function randomBytes(size, callback) {
44
57
  randomFillSync(buf.buffer, 0, size);
45
58
  return buf;
46
59
  }
47
- randomFill(buf.buffer, 0, size, error => {
60
+ randomFill(buf.buffer, 0, size, (error, res) => {
48
61
  if (error) {
49
62
  callback(error);
50
63
  }
51
- callback(null, buf);
64
+ callback(null, _reactNativeBuffer.Buffer.from(res));
52
65
  });
53
66
  }
54
67
  const rng = exports.rng = randomBytes;
@@ -62,7 +75,7 @@ const RAND_MAX = 0xffffffffffff;
62
75
 
63
76
  // Cache random data to use in randomInt. The cache size must be evenly
64
77
  // divisible by 6 because each attempt to obtain a random int uses 6 bytes.
65
- const randomCache = new _reactNativeBuffer.Buffer(6 * 1024);
78
+ let randomCache = new _reactNativeBuffer.Buffer(6 * 1024);
66
79
  let randomCacheOffset = randomCache.length;
67
80
  let asyncCacheFillInProgress = false;
68
81
  const asyncCachePendingTasks = [];
@@ -157,11 +170,14 @@ function randomInt(arg1, arg2, callback) {
157
170
  function asyncRefillRandomIntCache() {
158
171
  if (asyncCacheFillInProgress) return;
159
172
  asyncCacheFillInProgress = true;
160
- randomFill(randomCache, err => {
173
+ randomFill(randomCache, (err, res) => {
161
174
  asyncCacheFillInProgress = false;
162
175
  const tasks = asyncCachePendingTasks;
163
176
  const errorReceiver = err && tasks.shift();
164
- if (!err) randomCacheOffset = 0;
177
+ if (!err) {
178
+ randomCache = _reactNativeBuffer.Buffer.from(res);
179
+ randomCacheOffset = 0;
180
+ }
165
181
 
166
182
  // Restart all pending tasks. If an error occurred, we only notify a single
167
183
  // callback (errorReceiver) about it. This way, every async call to
@@ -200,9 +216,7 @@ function randomUUID() {
200
216
  randomFillSync(buffer, 0, size);
201
217
 
202
218
  // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
203
- // eslint-disable-next-line no-bitwise
204
219
  buffer[6] = buffer[6] & 0x0f | 0x40;
205
- // eslint-disable-next-line no-bitwise
206
220
  buffer[8] = buffer[8] & 0x3f | 0x80;
207
221
  return (byteToHex[buffer[0]] + byteToHex[buffer[1]] + byteToHex[buffer[2]] + byteToHex[buffer[3]] + '-' + byteToHex[buffer[4]] + byteToHex[buffer[5]] + '-' + byteToHex[buffer[6]] + byteToHex[buffer[7]] + '-' + byteToHex[buffer[8]] + byteToHex[buffer[9]] + '-' + byteToHex[buffer[10]] + byteToHex[buffer[11]] + byteToHex[buffer[12]] + byteToHex[buffer[13]] + byteToHex[buffer[14]] + byteToHex[buffer[15]]).toLowerCase();
208
222
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_reactNativeBuffer","random","NativeQuickCrypto","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","Buffer","isBuffer","ArrayBuffer","isView","then","e","randomFillSync","randomBytes","buf","undefined","error","rng","exports","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeBuffer","require","_conversion","_reactNativeNitroModules","random","getNative","NitroModules","createHybridObject","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","abvToArrayBuffer","then","res","e","randomFillSync","randomBytes","buf","Buffer","undefined","error","from","rng","exports","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
@@ -3,4 +3,4 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- //# sourceMappingURL=rsa.js.map
6
+ //# sourceMappingURL=random.nitro.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/aes.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/random.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ab2str = ab2str;
7
+ exports.abvToArrayBuffer = void 0;
8
+ var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
9
+ const abvToArrayBuffer = buffer => {
10
+ if (_reactNativeBuffer.Buffer.isBuffer(buffer)) {
11
+ return buffer.buffer;
12
+ }
13
+ if (ArrayBuffer.isView(buffer)) {
14
+ return buffer.buffer;
15
+ }
16
+ return buffer;
17
+ };
18
+ exports.abvToArrayBuffer = abvToArrayBuffer;
19
+ function ab2str(buf, encoding = 'hex') {
20
+ return _reactNativeBuffer.Buffer.from(buf).toString(encoding);
21
+ }
22
+ //# sourceMappingURL=conversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeBuffer","require","abvToArrayBuffer","buffer","Buffer","isBuffer","ArrayBuffer","isView","exports","ab2str","buf","encoding","from","toString"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":";;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAGO,MAAMC,gBAAgB,GAAIC,MAAuB,IAAK;EAC3D,IAAIC,yBAAM,CAACC,QAAQ,CAACF,MAAM,CAAC,EAAE;IAC3B,OAAOA,MAAM,CAACA,MAAM;EACtB;EACA,IAAIG,WAAW,CAACC,MAAM,CAACJ,MAAM,CAAC,EAAE;IAC9B,OAAOA,MAAM,CAACA,MAAM;EACtB;EACA,OAAOA,MAAM;AACf,CAAC;AAACK,OAAA,CAAAN,gBAAA,GAAAA,gBAAA;AAEK,SAASO,MAAMA,CAACC,GAAgB,EAAEC,QAAgB,GAAG,KAAK,EAAE;EACjE,OAAOP,yBAAM,CAACQ,IAAI,CAACF,GAAG,CAAC,CAACG,QAAQ,CAACF,QAAQ,CAAC;AAC5C","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.utils = void 0;
7
+ var _conversion = require("./conversion");
8
+ const utils = exports.utils = {
9
+ ab2str: _conversion.ab2str,
10
+ abvToArrayBuffer: _conversion.abvToArrayBuffer
11
+ };
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_conversion","require","utils","exports","ab2str","abvToArrayBuffer"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEO,MAAMC,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnBE,MAAM,EAANA,kBAAM;EACNC,gBAAgB,EAAhBA;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/aes.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/types.ts"],"mappings":"","ignoreList":[]}
@@ -1,50 +1,47 @@
1
1
  "use strict";
2
2
 
3
+ // polyfill imports
3
4
  import { Buffer } from '@craftzdog/react-native-buffer';
4
- import * as pbkdf2 from './pbkdf2';
5
+
6
+ // API imports
5
7
  import * as random from './random';
6
- import { createCipher, createCipheriv, createDecipher, createDecipheriv, publicEncrypt, publicDecrypt, privateDecrypt, generateKeyPair, generateKeyPairSync } from './Cipher';
7
- import { generateKey, generateKeySync } from './keygen';
8
- import { createSign, createVerify } from './sig';
9
- import { createHmac } from './Hmac';
10
- import { createHash } from './Hash';
11
- import { constants } from './constants';
12
- import { subtle } from './subtle';
13
- import { getCiphers, getHashes } from './Utils';
14
- import webcrypto from './webcrypto';
15
- import { createPrivateKey, createPublicKey, createSecretKey } from './keys';
8
+
9
+ // utils import
10
+ import { utils } from './utils';
16
11
 
17
12
  /**
18
- * Loosely matches Node.js {crypto} with some unimplemented functionality
13
+ * Loosely matches Node.js {crypto} with some unimplemented functionality.
14
+ * See `docs/implementation-coverage.md` for status.
19
15
  */
20
16
  const QuickCrypto = {
21
- createHmac,
22
- Hmac: createHmac,
23
- Hash: createHash,
24
- createHash,
25
- createCipher,
26
- createCipheriv,
27
- createDecipher,
28
- createDecipheriv,
29
- createPublicKey,
30
- createPrivateKey,
31
- createSecretKey,
32
- publicEncrypt,
33
- publicDecrypt,
34
- privateDecrypt,
35
- generateKey,
36
- generateKeyPair,
37
- generateKeyPairSync,
38
- generateKeySync,
39
- createSign,
40
- createVerify,
41
- subtle,
42
- constants,
43
- ...pbkdf2,
17
+ // createHmac,
18
+ // Hmac: createHmac,
19
+ // Hash: createHash,
20
+ // createHash,
21
+ // createCipher,
22
+ // createCipheriv,
23
+ // createDecipher,
24
+ // createDecipheriv,
25
+ // createPublicKey,
26
+ // createPrivateKey,
27
+ // createSecretKey,
28
+ // publicEncrypt,
29
+ // publicDecrypt,
30
+ // privateDecrypt,
31
+ // generateKey,
32
+ // generateKeyPair,
33
+ // generateKeyPairSync,
34
+ // generateKeySync,
35
+ // createSign,
36
+ // createVerify,
37
+ // subtle,
38
+ // constants,
39
+ // ...pbkdf2,
44
40
  ...random,
45
- getCiphers,
46
- getHashes,
47
- webcrypto
41
+ // getCiphers,
42
+ // getHashes,
43
+ // webcrypto,
44
+ utils
48
45
  };
49
46
 
50
47
  /**
@@ -57,6 +54,9 @@ export const install = () => {
57
54
  // @ts-expect-error subtle isn't fully implemented and Cryptokey is missing
58
55
  global.crypto = QuickCrypto;
59
56
  };
57
+
58
+ // random, cipher, hash use nextTick
59
+ global.process.nextTick = setImmediate;
60
60
  export default QuickCrypto;
61
61
 
62
62
  // Additional exports for CommonJS compatibility
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","pbkdf2","random","createCipher","createCipheriv","createDecipher","createDecipheriv","publicEncrypt","publicDecrypt","privateDecrypt","generateKeyPair","generateKeyPairSync","generateKey","generateKeySync","createSign","createVerify","createHmac","createHash","constants","subtle","getCiphers","getHashes","webcrypto","createPrivateKey","createPublicKey","createSecretKey","QuickCrypto","Hmac","Hash","install","global","crypto","module","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,gCAAgC;AACvD,OAAO,KAAKC,MAAM,MAAM,UAAU;AAClC,OAAO,KAAKC,MAAM,MAAM,UAAU;AAClC,SACEC,YAAY,EACZC,cAAc,EACdC,cAAc,EACdC,gBAAgB,EAChBC,aAAa,EACbC,aAAa,EACbC,cAAc,EACdC,eAAe,EACfC,mBAAmB,QACd,UAAU;AACjB,SAASC,WAAW,EAAEC,eAAe,QAAQ,UAAU;AACvD,SAASC,UAAU,EAAEC,YAAY,QAAQ,OAAO;AAChD,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,UAAU,QAAQ,QAAQ;AACnC,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAASC,UAAU,EAAEC,SAAS,QAAQ,SAAS;AAC/C,OAAOC,SAAS,MAAM,aAAa;AACnC,SAASC,gBAAgB,EAAEC,eAAe,EAAEC,eAAe,QAAQ,QAAQ;;AAE3E;AACA;AACA;AACA,MAAMC,WAAW,GAAG;EAClBV,UAAU;EACVW,IAAI,EAAEX,UAAU;EAChBY,IAAI,EAAEX,UAAU;EAChBA,UAAU;EACVd,YAAY;EACZC,cAAc;EACdC,cAAc;EACdC,gBAAgB;EAChBkB,eAAe;EACfD,gBAAgB;EAChBE,eAAe;EACflB,aAAa;EACbC,aAAa;EACbC,cAAc;EACdG,WAAW;EACXF,eAAe;EACfC,mBAAmB;EACnBE,eAAe;EACfC,UAAU;EACVC,YAAY;EACZI,MAAM;EACND,SAAS;EACT,GAAGjB,MAAM;EACT,GAAGC,MAAM;EACTkB,UAAU;EACVC,SAAS;EACTC;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMO,OAAO,GAAGA,CAAA,KAAM;EAC3B;EACAC,MAAM,CAAC9B,MAAM,GAAGA,MAAM;;EAEtB;EACA8B,MAAM,CAACC,MAAM,GAAGL,WAAW;AAC7B,CAAC;AAED,eAAeA,WAAW;;AAE1B;AACAM,MAAM,CAACC,OAAO,GAAGP,WAAW;AAC5BM,MAAM,CAACC,OAAO,CAACC,OAAO,GAAGR,WAAW;AACpCM,MAAM,CAACC,OAAO,CAACJ,OAAO,GAAGA,OAAO","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","random","utils","QuickCrypto","install","global","crypto","process","nextTick","setImmediate","module","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA,SAASA,MAAM,QAAQ,gCAAgC;;AAEvD;AACA,OAAO,KAAKC,MAAM,MAAM,UAAU;;AAElC;AACA,SAASC,KAAK,QAAQ,SAAS;;AAE/B;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAGF,MAAM;EACT;EACA;EACA;EACAC;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAME,OAAO,GAAGA,CAAA,KAAM;EAC3B;EACAC,MAAM,CAACL,MAAM,GAAGA,MAAM;;EAEtB;EACAK,MAAM,CAACC,MAAM,GAAGH,WAAW;AAC7B,CAAC;;AAED;AACAE,MAAM,CAACE,OAAO,CAACC,QAAQ,GAAGC,YAAY;AAEtC,eAAeN,WAAW;;AAE1B;AACAO,MAAM,CAACC,OAAO,GAAGR,WAAW;AAC5BO,MAAM,CAACC,OAAO,CAACC,OAAO,GAAGT,WAAW;AACpCO,MAAM,CAACC,OAAO,CAACP,OAAO,GAAGA,OAAO","ignoreList":[]}
@@ -1,8 +1,17 @@
1
1
  "use strict";
2
2
 
3
- import { NativeQuickCrypto } from './NativeQuickCrypto/NativeQuickCrypto';
4
3
  import { Buffer } from '@craftzdog/react-native-buffer';
5
- const random = NativeQuickCrypto.random;
4
+ import { abvToArrayBuffer } from './utils/conversion';
5
+ import { NitroModules } from 'react-native-nitro-modules';
6
+ // to use native bits in sub-functions, use getNative(). don't call it at top-level!
7
+ let random;
8
+ function getNative() {
9
+ if (random == null) {
10
+ // lazy-load the Nitro HybridObject
11
+ random = NitroModules.createHybridObject('Random');
12
+ }
13
+ return random;
14
+ }
6
15
  export function randomFill(buffer, ...rest) {
7
16
  if (typeof rest[rest.length - 1] !== 'function') {
8
17
  throw new Error('No callback provided to randomFill');
@@ -17,14 +26,18 @@ export function randomFill(buffer, ...rest) {
17
26
  if (typeof rest[1] === 'function') {
18
27
  offset = rest[0];
19
28
  }
20
- random.randomFill(Buffer.isBuffer(buffer) ? buffer.buffer : ArrayBuffer.isView(buffer) ? buffer.buffer : buffer, offset, size).then(() => {
21
- callback(null, buffer);
29
+ getNative();
30
+ random.randomFill(abvToArrayBuffer(buffer), offset, size).then(res => {
31
+ callback(null, res);
22
32
  }, e => {
23
33
  callback(e);
24
34
  });
25
35
  }
26
36
  export function randomFillSync(buffer, offset = 0, size) {
27
- random.randomFillSync(buffer.buffer ? buffer.buffer : buffer, offset, size ?? buffer.byteLength);
37
+ getNative();
38
+ buffer = abvToArrayBuffer(buffer);
39
+ const res = random.randomFillSync(buffer, offset, size ?? buffer.byteLength);
40
+ buffer = res;
28
41
  return buffer;
29
42
  }
30
43
  export function randomBytes(size, callback) {
@@ -33,11 +46,11 @@ export function randomBytes(size, callback) {
33
46
  randomFillSync(buf.buffer, 0, size);
34
47
  return buf;
35
48
  }
36
- randomFill(buf.buffer, 0, size, error => {
49
+ randomFill(buf.buffer, 0, size, (error, res) => {
37
50
  if (error) {
38
51
  callback(error);
39
52
  }
40
- callback(null, buf);
53
+ callback(null, Buffer.from(res));
41
54
  });
42
55
  }
43
56
  export const rng = randomBytes;
@@ -51,7 +64,7 @@ const RAND_MAX = 0xffffffffffff;
51
64
 
52
65
  // Cache random data to use in randomInt. The cache size must be evenly
53
66
  // divisible by 6 because each attempt to obtain a random int uses 6 bytes.
54
- const randomCache = new Buffer(6 * 1024);
67
+ let randomCache = new Buffer(6 * 1024);
55
68
  let randomCacheOffset = randomCache.length;
56
69
  let asyncCacheFillInProgress = false;
57
70
  const asyncCachePendingTasks = [];
@@ -146,11 +159,14 @@ export function randomInt(arg1, arg2, callback) {
146
159
  function asyncRefillRandomIntCache() {
147
160
  if (asyncCacheFillInProgress) return;
148
161
  asyncCacheFillInProgress = true;
149
- randomFill(randomCache, err => {
162
+ randomFill(randomCache, (err, res) => {
150
163
  asyncCacheFillInProgress = false;
151
164
  const tasks = asyncCachePendingTasks;
152
165
  const errorReceiver = err && tasks.shift();
153
- if (!err) randomCacheOffset = 0;
166
+ if (!err) {
167
+ randomCache = Buffer.from(res);
168
+ randomCacheOffset = 0;
169
+ }
154
170
 
155
171
  // Restart all pending tasks. If an error occurred, we only notify a single
156
172
  // callback (errorReceiver) about it. This way, every async call to
@@ -189,9 +205,7 @@ export function randomUUID() {
189
205
  randomFillSync(buffer, 0, size);
190
206
 
191
207
  // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
192
- // eslint-disable-next-line no-bitwise
193
208
  buffer[6] = buffer[6] & 0x0f | 0x40;
194
- // eslint-disable-next-line no-bitwise
195
209
  buffer[8] = buffer[8] & 0x3f | 0x80;
196
210
  return (byteToHex[buffer[0]] + byteToHex[buffer[1]] + byteToHex[buffer[2]] + byteToHex[buffer[3]] + '-' + byteToHex[buffer[4]] + byteToHex[buffer[5]] + '-' + byteToHex[buffer[6]] + byteToHex[buffer[7]] + '-' + byteToHex[buffer[8]] + byteToHex[buffer[9]] + '-' + byteToHex[buffer[10]] + byteToHex[buffer[11]] + byteToHex[buffer[12]] + byteToHex[buffer[13]] + byteToHex[buffer[14]] + byteToHex[buffer[15]]).toLowerCase();
197
211
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NativeQuickCrypto","Buffer","random","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","isBuffer","ArrayBuffer","isView","then","e","randomFillSync","randomBytes","buf","undefined","error","rng","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","abvToArrayBuffer","NitroModules","random","getNative","createHybridObject","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","then","res","e","randomFillSync","randomBytes","buf","undefined","error","from","rng","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=random.nitro.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/rsa.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/random.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ import { Buffer } from '@craftzdog/react-native-buffer';
4
+ export const abvToArrayBuffer = buffer => {
5
+ if (Buffer.isBuffer(buffer)) {
6
+ return buffer.buffer;
7
+ }
8
+ if (ArrayBuffer.isView(buffer)) {
9
+ return buffer.buffer;
10
+ }
11
+ return buffer;
12
+ };
13
+ export function ab2str(buf, encoding = 'hex') {
14
+ return Buffer.from(buf).toString(encoding);
15
+ }
16
+ //# sourceMappingURL=conversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Buffer","abvToArrayBuffer","buffer","isBuffer","ArrayBuffer","isView","ab2str","buf","encoding","from","toString"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,gCAAgC;AAGvD,OAAO,MAAMC,gBAAgB,GAAIC,MAAuB,IAAK;EAC3D,IAAIF,MAAM,CAACG,QAAQ,CAACD,MAAM,CAAC,EAAE;IAC3B,OAAOA,MAAM,CAACA,MAAM;EACtB;EACA,IAAIE,WAAW,CAACC,MAAM,CAACH,MAAM,CAAC,EAAE;IAC9B,OAAOA,MAAM,CAACA,MAAM;EACtB;EACA,OAAOA,MAAM;AACf,CAAC;AAED,OAAO,SAASI,MAAMA,CAACC,GAAgB,EAAEC,QAAgB,GAAG,KAAK,EAAE;EACjE,OAAOR,MAAM,CAACS,IAAI,CAACF,GAAG,CAAC,CAACG,QAAQ,CAACF,QAAQ,CAAC;AAC5C","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import { ab2str, abvToArrayBuffer } from "./conversion";
4
+ export const utils = {
5
+ ab2str,
6
+ abvToArrayBuffer
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ab2str","abvToArrayBuffer","utils"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,SAASA,MAAM,EAAEC,gBAAgB,QAAQ,cAAc;AAEvD,OAAO,MAAMC,KAAK,GAAG;EACnBF,MAAM;EACNC;AACF,CAAC","ignoreList":[]}