react-native-quick-crypto 1.1.0 → 1.1.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 (815) hide show
  1. package/QuickCrypto.podspec +1 -0
  2. package/android/CMakeLists.txt +4 -0
  3. package/android/build.gradle +5 -1
  4. package/cpp/argon2/HybridArgon2.cpp +10 -3
  5. package/cpp/blake3/HybridBlake3.cpp +5 -3
  6. package/cpp/cipher/CCMCipher.cpp +35 -26
  7. package/cpp/cipher/CCMCipher.hpp +2 -4
  8. package/cpp/cipher/ChaCha20Cipher.cpp +19 -27
  9. package/cpp/cipher/ChaCha20Cipher.hpp +2 -4
  10. package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +41 -36
  11. package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +2 -4
  12. package/cpp/cipher/GCMCipher.cpp +17 -20
  13. package/cpp/cipher/HybridCipher.cpp +44 -47
  14. package/cpp/cipher/HybridCipher.hpp +17 -1
  15. package/cpp/cipher/HybridRsaCipher.cpp +93 -56
  16. package/cpp/cipher/OCBCipher.cpp +5 -5
  17. package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +27 -32
  18. package/cpp/cipher/XSalsa20Cipher.cpp +78 -16
  19. package/cpp/cipher/XSalsa20Cipher.hpp +25 -3
  20. package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +32 -41
  21. package/cpp/dh/HybridDiffieHellman.cpp +29 -0
  22. package/cpp/ec/HybridEcKeyPair.cpp +35 -33
  23. package/cpp/ec/HybridEcKeyPair.hpp +3 -7
  24. package/cpp/ecdh/HybridECDH.cpp +23 -0
  25. package/cpp/ed25519/HybridEdKeyPair.cpp +73 -117
  26. package/cpp/ed25519/HybridEdKeyPair.hpp +5 -9
  27. package/cpp/hash/HybridHash.cpp +5 -7
  28. package/cpp/hkdf/HybridHkdf.cpp +6 -4
  29. package/cpp/hmac/HybridHmac.cpp +4 -6
  30. package/cpp/keys/HybridKeyObjectHandle.cpp +630 -2
  31. package/cpp/keys/HybridKeyObjectHandle.hpp +21 -1
  32. package/cpp/kmac/HybridKmac.cpp +4 -4
  33. package/cpp/mldsa/HybridMlDsaKeyPair.cpp +37 -49
  34. package/cpp/mlkem/HybridMlKemKeyPair.cpp +39 -43
  35. package/cpp/pbkdf2/HybridPbkdf2.cpp +7 -8
  36. package/cpp/rsa/HybridRsaKeyPair.cpp +5 -8
  37. package/cpp/rsa/HybridRsaKeyPair.hpp +4 -7
  38. package/cpp/scrypt/HybridScrypt.cpp +6 -4
  39. package/cpp/sign/HybridSignHandle.cpp +47 -72
  40. package/cpp/sign/HybridVerifyHandle.cpp +47 -67
  41. package/cpp/slhdsa/HybridSlhDsaKeyPair.cpp +245 -0
  42. package/cpp/slhdsa/HybridSlhDsaKeyPair.hpp +48 -0
  43. package/cpp/turboshake/HybridTurboShake.cpp +379 -0
  44. package/cpp/turboshake/HybridTurboShake.hpp +28 -0
  45. package/cpp/utils/HybridUtils.cpp +195 -43
  46. package/cpp/utils/HybridUtils.hpp +9 -2
  47. package/cpp/utils/QuickCryptoUtils.hpp +72 -0
  48. package/deps/blake3/README.md +6 -7
  49. package/deps/blake3/c/blake3.c +3 -2
  50. package/deps/blake3/c/blake3.h +2 -2
  51. package/deps/blake3/c/blake3_dispatch.c +2 -2
  52. package/deps/blake3/c/blake3_impl.h +1 -1
  53. package/deps/blake3/c/blake3_neon.c +5 -4
  54. package/deps/ncrypto/include/ncrypto/version.h +2 -2
  55. package/deps/ncrypto/include/ncrypto.h +9 -2
  56. package/deps/ncrypto/src/ncrypto.cpp +130 -35
  57. package/lib/commonjs/argon2.js +51 -2
  58. package/lib/commonjs/argon2.js.map +1 -1
  59. package/lib/commonjs/cipher.js +109 -11
  60. package/lib/commonjs/cipher.js.map +1 -1
  61. package/lib/commonjs/dhKeyPair.js +3 -0
  62. package/lib/commonjs/dhKeyPair.js.map +1 -1
  63. package/lib/commonjs/dsa.js +11 -2
  64. package/lib/commonjs/dsa.js.map +1 -1
  65. package/lib/commonjs/ec.js +37 -30
  66. package/lib/commonjs/ec.js.map +1 -1
  67. package/lib/commonjs/ed.js +60 -6
  68. package/lib/commonjs/ed.js.map +1 -1
  69. package/lib/commonjs/hash.js +67 -10
  70. package/lib/commonjs/hash.js.map +1 -1
  71. package/lib/commonjs/hkdf.js +33 -6
  72. package/lib/commonjs/hkdf.js.map +1 -1
  73. package/lib/commonjs/hmac.js +15 -5
  74. package/lib/commonjs/hmac.js.map +1 -1
  75. package/lib/commonjs/keys/classes.js +33 -7
  76. package/lib/commonjs/keys/classes.js.map +1 -1
  77. package/lib/commonjs/keys/generateKeyPair.js +85 -4
  78. package/lib/commonjs/keys/generateKeyPair.js.map +1 -1
  79. package/lib/commonjs/keys/index.js +50 -2
  80. package/lib/commonjs/keys/index.js.map +1 -1
  81. package/lib/commonjs/keys/publicCipher.js +10 -4
  82. package/lib/commonjs/keys/publicCipher.js.map +1 -1
  83. package/lib/commonjs/keys/signVerify.js +9 -2
  84. package/lib/commonjs/keys/signVerify.js.map +1 -1
  85. package/lib/commonjs/keys/utils.js +59 -1
  86. package/lib/commonjs/keys/utils.js.map +1 -1
  87. package/lib/commonjs/random.js +74 -11
  88. package/lib/commonjs/random.js.map +1 -1
  89. package/lib/commonjs/rsa.js +15 -5
  90. package/lib/commonjs/rsa.js.map +1 -1
  91. package/lib/commonjs/scrypt.js +47 -6
  92. package/lib/commonjs/scrypt.js.map +1 -1
  93. package/lib/commonjs/slhdsa.js +70 -0
  94. package/lib/commonjs/slhdsa.js.map +1 -0
  95. package/lib/commonjs/specs/slhDsaKeyPair.nitro.js +6 -0
  96. package/lib/commonjs/specs/slhDsaKeyPair.nitro.js.map +1 -0
  97. package/lib/commonjs/specs/turboshake.nitro.js +6 -0
  98. package/lib/commonjs/specs/turboshake.nitro.js.map +1 -0
  99. package/lib/commonjs/subtle.js +975 -253
  100. package/lib/commonjs/subtle.js.map +1 -1
  101. package/lib/commonjs/utils/cipher.js +18 -7
  102. package/lib/commonjs/utils/cipher.js.map +1 -1
  103. package/lib/commonjs/utils/conversion.js +86 -28
  104. package/lib/commonjs/utils/conversion.js.map +1 -1
  105. package/lib/commonjs/utils/errors.js +63 -4
  106. package/lib/commonjs/utils/errors.js.map +1 -1
  107. package/lib/commonjs/utils/timingSafeEqual.js +7 -2
  108. package/lib/commonjs/utils/timingSafeEqual.js.map +1 -1
  109. package/lib/commonjs/utils/types.js.map +1 -1
  110. package/lib/commonjs/utils/validation.js +46 -0
  111. package/lib/commonjs/utils/validation.js.map +1 -1
  112. package/lib/commonjs/x509certificate.js +6 -6
  113. package/lib/commonjs/x509certificate.js.map +1 -1
  114. package/lib/module/argon2.js +51 -2
  115. package/lib/module/argon2.js.map +1 -1
  116. package/lib/module/cipher.js +109 -11
  117. package/lib/module/cipher.js.map +1 -1
  118. package/lib/module/dhKeyPair.js +3 -0
  119. package/lib/module/dhKeyPair.js.map +1 -1
  120. package/lib/module/dsa.js +11 -2
  121. package/lib/module/dsa.js.map +1 -1
  122. package/lib/module/ec.js +38 -31
  123. package/lib/module/ec.js.map +1 -1
  124. package/lib/module/ed.js +61 -7
  125. package/lib/module/ed.js.map +1 -1
  126. package/lib/module/hash.js +67 -10
  127. package/lib/module/hash.js.map +1 -1
  128. package/lib/module/hkdf.js +33 -6
  129. package/lib/module/hkdf.js.map +1 -1
  130. package/lib/module/hmac.js +15 -5
  131. package/lib/module/hmac.js.map +1 -1
  132. package/lib/module/keys/classes.js +31 -5
  133. package/lib/module/keys/classes.js.map +1 -1
  134. package/lib/module/keys/generateKeyPair.js +86 -5
  135. package/lib/module/keys/generateKeyPair.js.map +1 -1
  136. package/lib/module/keys/index.js +50 -2
  137. package/lib/module/keys/index.js.map +1 -1
  138. package/lib/module/keys/publicCipher.js +10 -4
  139. package/lib/module/keys/publicCipher.js.map +1 -1
  140. package/lib/module/keys/signVerify.js +9 -2
  141. package/lib/module/keys/signVerify.js.map +1 -1
  142. package/lib/module/keys/utils.js +57 -1
  143. package/lib/module/keys/utils.js.map +1 -1
  144. package/lib/module/random.js +74 -12
  145. package/lib/module/random.js.map +1 -1
  146. package/lib/module/rsa.js +14 -4
  147. package/lib/module/rsa.js.map +1 -1
  148. package/lib/module/scrypt.js +47 -6
  149. package/lib/module/scrypt.js.map +1 -1
  150. package/lib/module/slhdsa.js +64 -0
  151. package/lib/module/slhdsa.js.map +1 -0
  152. package/lib/module/specs/slhDsaKeyPair.nitro.js +4 -0
  153. package/lib/module/specs/slhDsaKeyPair.nitro.js.map +1 -0
  154. package/lib/module/specs/turboshake.nitro.js +4 -0
  155. package/lib/module/specs/turboshake.nitro.js.map +1 -0
  156. package/lib/module/subtle.js +976 -254
  157. package/lib/module/subtle.js.map +1 -1
  158. package/lib/module/utils/cipher.js +18 -7
  159. package/lib/module/utils/cipher.js.map +1 -1
  160. package/lib/module/utils/conversion.js +84 -28
  161. package/lib/module/utils/conversion.js.map +1 -1
  162. package/lib/module/utils/errors.js +61 -4
  163. package/lib/module/utils/errors.js.map +1 -1
  164. package/lib/module/utils/timingSafeEqual.js +8 -3
  165. package/lib/module/utils/timingSafeEqual.js.map +1 -1
  166. package/lib/module/utils/types.js.map +1 -1
  167. package/lib/module/utils/validation.js +44 -0
  168. package/lib/module/utils/validation.js.map +1 -1
  169. package/lib/module/x509certificate.js +6 -6
  170. package/lib/module/x509certificate.js.map +1 -1
  171. package/lib/typescript/argon2.d.ts.map +1 -1
  172. package/lib/typescript/cipher.d.ts +2 -2
  173. package/lib/typescript/cipher.d.ts.map +1 -1
  174. package/lib/typescript/dhKeyPair.d.ts.map +1 -1
  175. package/lib/typescript/dsa.d.ts.map +1 -1
  176. package/lib/typescript/ec.d.ts.map +1 -1
  177. package/lib/typescript/ed.d.ts.map +1 -1
  178. package/lib/typescript/hash.d.ts +2 -2
  179. package/lib/typescript/hash.d.ts.map +1 -1
  180. package/lib/typescript/hkdf.d.ts.map +1 -1
  181. package/lib/typescript/hmac.d.ts +2 -2
  182. package/lib/typescript/hmac.d.ts.map +1 -1
  183. package/lib/typescript/index.d.ts +13 -8
  184. package/lib/typescript/index.d.ts.map +1 -1
  185. package/lib/typescript/keys/classes.d.ts +10 -1
  186. package/lib/typescript/keys/classes.d.ts.map +1 -1
  187. package/lib/typescript/keys/generateKeyPair.d.ts +12 -1
  188. package/lib/typescript/keys/generateKeyPair.d.ts.map +1 -1
  189. package/lib/typescript/keys/index.d.ts +3 -1
  190. package/lib/typescript/keys/index.d.ts.map +1 -1
  191. package/lib/typescript/keys/publicCipher.d.ts.map +1 -1
  192. package/lib/typescript/keys/signVerify.d.ts.map +1 -1
  193. package/lib/typescript/keys/utils.d.ts +21 -4
  194. package/lib/typescript/keys/utils.d.ts.map +1 -1
  195. package/lib/typescript/random.d.ts +5 -1
  196. package/lib/typescript/random.d.ts.map +1 -1
  197. package/lib/typescript/rsa.d.ts.map +1 -1
  198. package/lib/typescript/scrypt.d.ts.map +1 -1
  199. package/lib/typescript/slhdsa.d.ts +19 -0
  200. package/lib/typescript/slhdsa.d.ts.map +1 -0
  201. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts +9 -0
  202. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -1
  203. package/lib/typescript/specs/slhDsaKeyPair.nitro.d.ts +16 -0
  204. package/lib/typescript/specs/slhDsaKeyPair.nitro.d.ts.map +1 -0
  205. package/lib/typescript/specs/turboshake.nitro.d.ts +11 -0
  206. package/lib/typescript/specs/turboshake.nitro.d.ts.map +1 -0
  207. package/lib/typescript/specs/utils.nitro.d.ts +0 -2
  208. package/lib/typescript/specs/utils.nitro.d.ts.map +1 -1
  209. package/lib/typescript/subtle.d.ts +3 -2
  210. package/lib/typescript/subtle.d.ts.map +1 -1
  211. package/lib/typescript/utils/cipher.d.ts +13 -1
  212. package/lib/typescript/utils/cipher.d.ts.map +1 -1
  213. package/lib/typescript/utils/conversion.d.ts +13 -9
  214. package/lib/typescript/utils/conversion.d.ts.map +1 -1
  215. package/lib/typescript/utils/errors.d.ts +12 -0
  216. package/lib/typescript/utils/errors.d.ts.map +1 -1
  217. package/lib/typescript/utils/timingSafeEqual.d.ts.map +1 -1
  218. package/lib/typescript/utils/types.d.ts +32 -15
  219. package/lib/typescript/utils/types.d.ts.map +1 -1
  220. package/lib/typescript/utils/validation.d.ts +3 -1
  221. package/lib/typescript/utils/validation.d.ts.map +1 -1
  222. package/lib/typescript/x509certificate.d.ts.map +1 -1
  223. package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +2 -0
  224. package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +20 -0
  225. package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +20 -0
  226. package/nitrogen/generated/shared/c++/AsymmetricKeyType.hpp +48 -0
  227. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +9 -0
  228. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +9 -0
  229. package/nitrogen/generated/shared/c++/HybridSlhDsaKeyPairSpec.cpp +29 -0
  230. package/nitrogen/generated/shared/c++/HybridSlhDsaKeyPairSpec.hpp +72 -0
  231. package/nitrogen/generated/shared/c++/HybridTurboShakeSpec.cpp +22 -0
  232. package/nitrogen/generated/shared/c++/HybridTurboShakeSpec.hpp +70 -0
  233. package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +0 -2
  234. package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +0 -3
  235. package/nitrogen/generated/shared/c++/JWK.hpp +9 -1
  236. package/nitrogen/generated/shared/c++/JWKkty.hpp +4 -0
  237. package/nitrogen/generated/shared/c++/KangarooTwelveVariant.hpp +76 -0
  238. package/nitrogen/generated/shared/c++/TurboShakeVariant.hpp +76 -0
  239. package/package.json +38 -7
  240. package/src/argon2.ts +80 -2
  241. package/src/cipher.ts +139 -15
  242. package/src/dhKeyPair.ts +8 -0
  243. package/src/dsa.ts +19 -2
  244. package/src/ec.ts +52 -29
  245. package/src/ed.ts +95 -16
  246. package/src/hash.ts +125 -12
  247. package/src/hkdf.ts +44 -6
  248. package/src/hmac.ts +17 -7
  249. package/src/keys/classes.ts +46 -5
  250. package/src/keys/generateKeyPair.ts +151 -5
  251. package/src/keys/index.ts +73 -3
  252. package/src/keys/publicCipher.ts +10 -4
  253. package/src/keys/signVerify.ts +13 -2
  254. package/src/keys/utils.ts +78 -5
  255. package/src/random.ts +104 -11
  256. package/src/rsa.ts +26 -4
  257. package/src/scrypt.ts +73 -6
  258. package/src/slhdsa.ts +146 -0
  259. package/src/specs/keyObjectHandle.nitro.ts +17 -0
  260. package/src/specs/slhDsaKeyPair.nitro.ts +29 -0
  261. package/src/specs/turboshake.nitro.ts +21 -0
  262. package/src/specs/utils.nitro.ts +0 -2
  263. package/src/subtle.ts +1246 -333
  264. package/src/utils/cipher.ts +30 -8
  265. package/src/utils/conversion.ts +129 -40
  266. package/src/utils/errors.ts +72 -4
  267. package/src/utils/timingSafeEqual.ts +8 -3
  268. package/src/utils/types.ts +80 -15
  269. package/src/utils/validation.ts +70 -1
  270. package/src/x509certificate.ts +5 -6
  271. package/deps/blake3/.cargo/config.toml +0 -2
  272. package/deps/blake3/.git-blame-ignore-revs +0 -2
  273. package/deps/blake3/.github/workflows/build_b3sum.py +0 -38
  274. package/deps/blake3/.github/workflows/ci.yml +0 -491
  275. package/deps/blake3/.github/workflows/tag.yml +0 -43
  276. package/deps/blake3/.github/workflows/upload_github_release_asset.py +0 -73
  277. package/deps/blake3/CONTRIBUTING.md +0 -31
  278. package/deps/blake3/Cargo.toml +0 -135
  279. package/deps/blake3/b3sum/Cargo.lock +0 -513
  280. package/deps/blake3/b3sum/Cargo.toml +0 -26
  281. package/deps/blake3/b3sum/README.md +0 -72
  282. package/deps/blake3/b3sum/src/main.rs +0 -564
  283. package/deps/blake3/b3sum/src/unit_tests.rs +0 -235
  284. package/deps/blake3/b3sum/tests/cli_tests.rs +0 -680
  285. package/deps/blake3/b3sum/what_does_check_do.md +0 -176
  286. package/deps/blake3/benches/bench.rs +0 -623
  287. package/deps/blake3/build.rs +0 -389
  288. package/deps/blake3/c/CMakeLists.txt +0 -383
  289. package/deps/blake3/c/CMakePresets.json +0 -73
  290. package/deps/blake3/c/Makefile.testing +0 -82
  291. package/deps/blake3/c/blake3-config.cmake.in +0 -14
  292. package/deps/blake3/c/blake3_avx2.c +0 -326
  293. package/deps/blake3/c/blake3_avx2_x86-64_unix.S +0 -1815
  294. package/deps/blake3/c/blake3_avx2_x86-64_windows_gnu.S +0 -1817
  295. package/deps/blake3/c/blake3_avx2_x86-64_windows_msvc.asm +0 -1828
  296. package/deps/blake3/c/blake3_avx512.c +0 -1388
  297. package/deps/blake3/c/blake3_avx512_x86-64_unix.S +0 -4824
  298. package/deps/blake3/c/blake3_avx512_x86-64_windows_gnu.S +0 -2615
  299. package/deps/blake3/c/blake3_avx512_x86-64_windows_msvc.asm +0 -2634
  300. package/deps/blake3/c/blake3_c_rust_bindings/Cargo.toml +0 -32
  301. package/deps/blake3/c/blake3_c_rust_bindings/README.md +0 -4
  302. package/deps/blake3/c/blake3_c_rust_bindings/benches/bench.rs +0 -477
  303. package/deps/blake3/c/blake3_c_rust_bindings/build.rs +0 -253
  304. package/deps/blake3/c/blake3_c_rust_bindings/cross_test.sh +0 -31
  305. package/deps/blake3/c/blake3_c_rust_bindings/src/lib.rs +0 -333
  306. package/deps/blake3/c/blake3_c_rust_bindings/src/test.rs +0 -696
  307. package/deps/blake3/c/blake3_sse2.c +0 -566
  308. package/deps/blake3/c/blake3_sse2_x86-64_unix.S +0 -2291
  309. package/deps/blake3/c/blake3_sse2_x86-64_windows_gnu.S +0 -2332
  310. package/deps/blake3/c/blake3_sse2_x86-64_windows_msvc.asm +0 -2350
  311. package/deps/blake3/c/blake3_sse41.c +0 -560
  312. package/deps/blake3/c/blake3_sse41_x86-64_unix.S +0 -2028
  313. package/deps/blake3/c/blake3_sse41_x86-64_windows_gnu.S +0 -2069
  314. package/deps/blake3/c/blake3_sse41_x86-64_windows_msvc.asm +0 -2089
  315. package/deps/blake3/c/blake3_tbb.cpp +0 -37
  316. package/deps/blake3/c/dependencies/CMakeLists.txt +0 -3
  317. package/deps/blake3/c/dependencies/tbb/CMakeLists.txt +0 -28
  318. package/deps/blake3/c/example.c +0 -36
  319. package/deps/blake3/c/example_tbb.c +0 -57
  320. package/deps/blake3/c/libblake3.pc.in +0 -12
  321. package/deps/blake3/c/main.c +0 -166
  322. package/deps/blake3/c/test.py +0 -97
  323. package/deps/blake3/media/B3.svg +0 -70
  324. package/deps/blake3/media/BLAKE3.svg +0 -85
  325. package/deps/blake3/media/speed.svg +0 -1474
  326. package/deps/blake3/reference_impl/Cargo.toml +0 -8
  327. package/deps/blake3/reference_impl/README.md +0 -14
  328. package/deps/blake3/reference_impl/reference_impl.rs +0 -374
  329. package/deps/blake3/src/ffi_avx2.rs +0 -65
  330. package/deps/blake3/src/ffi_avx512.rs +0 -169
  331. package/deps/blake3/src/ffi_neon.rs +0 -82
  332. package/deps/blake3/src/ffi_sse2.rs +0 -126
  333. package/deps/blake3/src/ffi_sse41.rs +0 -126
  334. package/deps/blake3/src/guts.rs +0 -60
  335. package/deps/blake3/src/hazmat.rs +0 -704
  336. package/deps/blake3/src/io.rs +0 -64
  337. package/deps/blake3/src/join.rs +0 -92
  338. package/deps/blake3/src/lib.rs +0 -1835
  339. package/deps/blake3/src/platform.rs +0 -587
  340. package/deps/blake3/src/portable.rs +0 -198
  341. package/deps/blake3/src/rust_avx2.rs +0 -474
  342. package/deps/blake3/src/rust_sse2.rs +0 -775
  343. package/deps/blake3/src/rust_sse41.rs +0 -766
  344. package/deps/blake3/src/test.rs +0 -1049
  345. package/deps/blake3/src/traits.rs +0 -227
  346. package/deps/blake3/src/wasm32_simd.rs +0 -794
  347. package/deps/blake3/test_vectors/Cargo.toml +0 -19
  348. package/deps/blake3/test_vectors/cross_test.sh +0 -25
  349. package/deps/blake3/test_vectors/src/bin/generate.rs +0 -4
  350. package/deps/blake3/test_vectors/src/lib.rs +0 -350
  351. package/deps/blake3/test_vectors/test_vectors.json +0 -217
  352. package/deps/blake3/tools/compiler_version/Cargo.toml +0 -7
  353. package/deps/blake3/tools/compiler_version/build.rs +0 -6
  354. package/deps/blake3/tools/compiler_version/src/main.rs +0 -27
  355. package/deps/blake3/tools/instruction_set_support/Cargo.toml +0 -6
  356. package/deps/blake3/tools/instruction_set_support/src/main.rs +0 -10
  357. package/deps/blake3/tools/release.md +0 -16
  358. package/deps/ncrypto/.bazelignore +0 -4
  359. package/deps/ncrypto/.bazelrc +0 -1
  360. package/deps/ncrypto/.bazelversion +0 -1
  361. package/deps/ncrypto/.clang-format +0 -111
  362. package/deps/ncrypto/.github/workflows/bazel.yml +0 -58
  363. package/deps/ncrypto/.github/workflows/commitlint.yml +0 -16
  364. package/deps/ncrypto/.github/workflows/linter.yml +0 -38
  365. package/deps/ncrypto/.github/workflows/macos.yml +0 -43
  366. package/deps/ncrypto/.github/workflows/release-please.yml +0 -16
  367. package/deps/ncrypto/.github/workflows/ubuntu.yml +0 -128
  368. package/deps/ncrypto/.github/workflows/visual-studio.yml +0 -49
  369. package/deps/ncrypto/.python-version +0 -1
  370. package/deps/ncrypto/.release-please-manifest.json +0 -3
  371. package/deps/ncrypto/BUILD.bazel +0 -44
  372. package/deps/ncrypto/CHANGELOG.md +0 -37
  373. package/deps/ncrypto/CMakeLists.txt +0 -79
  374. package/deps/ncrypto/MODULE.bazel +0 -16
  375. package/deps/ncrypto/MODULE.bazel.lock +0 -461
  376. package/deps/ncrypto/cmake/CPM.cmake +0 -1225
  377. package/deps/ncrypto/cmake/ncrypto-flags.cmake +0 -17
  378. package/deps/ncrypto/ncrypto.pc.in +0 -10
  379. package/deps/ncrypto/patches/0001-Expose-libdecrepit-so-NodeJS-can-use-it-for-ncrypto.patch +0 -28
  380. package/deps/ncrypto/pyproject.toml +0 -38
  381. package/deps/ncrypto/release-please-config.json +0 -11
  382. package/deps/ncrypto/src/CMakeLists.txt +0 -40
  383. package/deps/ncrypto/tests/BUILD.bazel +0 -11
  384. package/deps/ncrypto/tests/CMakeLists.txt +0 -7
  385. package/deps/ncrypto/tests/basic.cpp +0 -856
  386. package/deps/ncrypto/tools/run-clang-format.sh +0 -42
  387. package/deps/simdutf/.clang-format +0 -4
  388. package/deps/simdutf/.github/ISSUE_TEMPLATE/bug_report.md +0 -62
  389. package/deps/simdutf/.github/ISSUE_TEMPLATE/config.yml +0 -1
  390. package/deps/simdutf/.github/ISSUE_TEMPLATE/feature_request.md +0 -35
  391. package/deps/simdutf/.github/ISSUE_TEMPLATE/standard-issue-template.md +0 -29
  392. package/deps/simdutf/.github/pull_request_template.md +0 -51
  393. package/deps/simdutf/.github/workflows/aarch64.yml +0 -39
  394. package/deps/simdutf/.github/workflows/alpine.yml +0 -27
  395. package/deps/simdutf/.github/workflows/amalgamation_demos.yml +0 -34
  396. package/deps/simdutf/.github/workflows/armv7.yml +0 -32
  397. package/deps/simdutf/.github/workflows/atomic_fuzz.yml +0 -25
  398. package/deps/simdutf/.github/workflows/cifuzz.yml +0 -37
  399. package/deps/simdutf/.github/workflows/clangformat.yml +0 -36
  400. package/deps/simdutf/.github/workflows/debian-latestcxxstandards.yml +0 -40
  401. package/deps/simdutf/.github/workflows/debian.yml +0 -33
  402. package/deps/simdutf/.github/workflows/documentation.yml +0 -36
  403. package/deps/simdutf/.github/workflows/emscripten.yml +0 -19
  404. package/deps/simdutf/.github/workflows/loongarch64-gcc-14.2.yml +0 -39
  405. package/deps/simdutf/.github/workflows/macos-latest.yml +0 -29
  406. package/deps/simdutf/.github/workflows/msys2-clang.yml +0 -48
  407. package/deps/simdutf/.github/workflows/msys2.yml +0 -50
  408. package/deps/simdutf/.github/workflows/ppc64le.yml +0 -29
  409. package/deps/simdutf/.github/workflows/rvv-1024-clang-18.yml +0 -35
  410. package/deps/simdutf/.github/workflows/rvv-128-clang-17.yml +0 -35
  411. package/deps/simdutf/.github/workflows/rvv-256-gcc-14.yml +0 -31
  412. package/deps/simdutf/.github/workflows/s390x.yml +0 -29
  413. package/deps/simdutf/.github/workflows/selective-amalgamation.yml +0 -29
  414. package/deps/simdutf/.github/workflows/typos.yml +0 -19
  415. package/deps/simdutf/.github/workflows/ubuntu22-cxx20.yml +0 -30
  416. package/deps/simdutf/.github/workflows/ubuntu22.yml +0 -32
  417. package/deps/simdutf/.github/workflows/ubuntu22_gcc12.yml +0 -27
  418. package/deps/simdutf/.github/workflows/ubuntu22sani.yml +0 -29
  419. package/deps/simdutf/.github/workflows/ubuntu24-cxxstandards.yml +0 -34
  420. package/deps/simdutf/.github/workflows/ubuntu24-unsignedchar.yml +0 -34
  421. package/deps/simdutf/.github/workflows/ubuntu24.yml +0 -32
  422. package/deps/simdutf/.github/workflows/ubuntu24sani.yml +0 -36
  423. package/deps/simdutf/.github/workflows/ubuntu24sani_clang.yml +0 -29
  424. package/deps/simdutf/.github/workflows/vs17-arm-ci.yml +0 -21
  425. package/deps/simdutf/.github/workflows/vs17-ci-cxx20.yml +0 -41
  426. package/deps/simdutf/.github/workflows/vs17-ci.yml +0 -41
  427. package/deps/simdutf/.github/workflows/vs17-clang-ci.yml +0 -41
  428. package/deps/simdutf/.github/workflows/vs17-cxxstandards.yml +0 -36
  429. package/deps/simdutf/AI_USAGE_POLICY.md +0 -56
  430. package/deps/simdutf/AUTHORS +0 -6
  431. package/deps/simdutf/CMakeLists.txt +0 -231
  432. package/deps/simdutf/CONTRIBUTING.md +0 -214
  433. package/deps/simdutf/CONTRIBUTORS +0 -1
  434. package/deps/simdutf/Doxyfile +0 -2584
  435. package/deps/simdutf/Makefile.crosscompile +0 -54
  436. package/deps/simdutf/README-RVV.md +0 -16
  437. package/deps/simdutf/SECURITY.md +0 -8
  438. package/deps/simdutf/benchmarks/CMakeLists.txt +0 -101
  439. package/deps/simdutf/benchmarks/alignment.cpp +0 -150
  440. package/deps/simdutf/benchmarks/base64/CMakeLists.txt +0 -30
  441. package/deps/simdutf/benchmarks/base64/benchmark_base64.cpp +0 -875
  442. package/deps/simdutf/benchmarks/base64/libbase64_spaces.h +0 -49
  443. package/deps/simdutf/benchmarks/base64/node_base64.h +0 -227
  444. package/deps/simdutf/benchmarks/base64/openssl3_base64.h +0 -334
  445. package/deps/simdutf/benchmarks/benchmark.cpp +0 -65
  446. package/deps/simdutf/benchmarks/benchmark_to_well_formed_utf16.cpp +0 -347
  447. package/deps/simdutf/benchmarks/competition/.clang-format-ignore +0 -5
  448. package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.cpp +0 -1276
  449. package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.h +0 -595
  450. package/deps/simdutf/benchmarks/competition/README.md +0 -7
  451. package/deps/simdutf/benchmarks/competition/hoehrmann/hoehrmann.h +0 -91
  452. package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16.h +0 -444
  453. package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16_tables.h +0 -13183
  454. package/deps/simdutf/benchmarks/competition/inoue2008/script.py +0 -73
  455. package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.cpp +0 -738
  456. package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.h +0 -293
  457. package/deps/simdutf/benchmarks/competition/u8u16/COPYRIGHT +0 -8
  458. package/deps/simdutf/benchmarks/competition/u8u16/Makefile +0 -44
  459. package/deps/simdutf/benchmarks/competition/u8u16/OSL3.0.txt +0 -169
  460. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/BOM_Profiler.h +0 -148
  461. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/i386_timer.h +0 -45
  462. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/ppc_timer.c +0 -34
  463. package/deps/simdutf/benchmarks/competition/u8u16/README +0 -56
  464. package/deps/simdutf/benchmarks/competition/u8u16/config/config_defs.h +0 -43
  465. package/deps/simdutf/benchmarks/competition/u8u16/config/g4_config.h +0 -27
  466. package/deps/simdutf/benchmarks/competition/u8u16/config/mmx_config.h +0 -16
  467. package/deps/simdutf/benchmarks/competition/u8u16/config/p4_config.h +0 -18
  468. package/deps/simdutf/benchmarks/competition/u8u16/config/p4_ideal_config.h +0 -16
  469. package/deps/simdutf/benchmarks/competition/u8u16/config/spu_config.h +0 -28
  470. package/deps/simdutf/benchmarks/competition/u8u16/config/ssse3_config.h +0 -20
  471. package/deps/simdutf/benchmarks/competition/u8u16/iconv_u8u16.c +0 -2
  472. package/deps/simdutf/benchmarks/competition/u8u16/lib/altivec_simd.h +0 -440
  473. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_basic_ops.py +0 -121
  474. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_half_operand_versions.py +0 -158
  475. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_test.py +0 -270
  476. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd.h +0 -141
  477. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_basic.h +0 -216
  478. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_built_in.h +0 -119
  479. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_modified.h +0 -2430
  480. package/deps/simdutf/benchmarks/competition/u8u16/lib/outline.txt +0 -39
  481. package/deps/simdutf/benchmarks/competition/u8u16/lib/spu_simd.h +0 -421
  482. package/deps/simdutf/benchmarks/competition/u8u16/lib/sse_simd.h +0 -836
  483. package/deps/simdutf/benchmarks/competition/u8u16/lib/stdint.h +0 -222
  484. package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_BE.c +0 -4
  485. package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_LE.c +0 -5
  486. package/deps/simdutf/benchmarks/competition/u8u16/proto/u8u16.py +0 -390
  487. package/deps/simdutf/benchmarks/competition/u8u16/src/Makefile +0 -18
  488. package/deps/simdutf/benchmarks/competition/u8u16/src/bytelex.h +0 -448
  489. package/deps/simdutf/benchmarks/competition/u8u16/src/charsets/ASCII_EBCDIC.h +0 -284
  490. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.c +0 -1975
  491. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.pdf +0 -0
  492. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.w +0 -2263
  493. package/deps/simdutf/benchmarks/competition/u8u16/src/multiliteral.h +0 -239
  494. package/deps/simdutf/benchmarks/competition/u8u16/src/u8u16.c +0 -232
  495. package/deps/simdutf/benchmarks/competition/u8u16/src/x8x16.c +0 -194
  496. package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.c +0 -193
  497. package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.h +0 -167
  498. package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.c +0 -288
  499. package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.h +0 -117
  500. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_g4.c +0 -2
  501. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_mmx.c +0 -2
  502. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4.c +0 -3
  503. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4_ideal.c +0 -2
  504. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_spu.c +0 -2
  505. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_ssse3.c +0 -3
  506. package/deps/simdutf/benchmarks/competition/u8u16/x8x16_p4.c +0 -2
  507. package/deps/simdutf/benchmarks/competition/utf8lut/LICENSE +0 -23
  508. package/deps/simdutf/benchmarks/competition/utf8lut/data/test_minimal.txt +0 -44
  509. package/deps/simdutf/benchmarks/competition/utf8lut/readme.md +0 -106
  510. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.cmd +0 -11
  511. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.sh +0 -13
  512. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_corr_tests.sh +0 -13
  513. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_example.sh +0 -13
  514. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_file_conv.sh +0 -14
  515. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_lib.sh +0 -11
  516. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_sample.sh +0 -8
  517. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_corr_tests.cmd +0 -12
  518. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_example.cmd +0 -13
  519. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_file_conv.cmd +0 -14
  520. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_lib.cmd +0 -11
  521. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_sample.cmd +0 -8
  522. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_corr_tests.cmd +0 -11
  523. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_example.cmd +0 -12
  524. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_file_conv.cmd +0 -13
  525. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_lib.cmd +0 -10
  526. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_sample.cmd +0 -9
  527. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/html_table.py +0 -25
  528. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/measure.py +0 -94
  529. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/resize.py +0 -20
  530. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_all.cmd +0 -2
  531. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_interm.cmd +0 -1
  532. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/CustomMemcpy.h +0 -75
  533. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/PerfDefs.h +0 -47
  534. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.cpp +0 -17
  535. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.h +0 -76
  536. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/AllProcessors.cpp +0 -35
  537. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.cpp +0 -117
  538. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.h +0 -210
  539. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferDecoder.h +0 -158
  540. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferEncoder.h +0 -104
  541. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorPlugins.h +0 -334
  542. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorSelector.h +0 -186
  543. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.cpp +0 -140
  544. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.h +0 -42
  545. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderProcess.h +0 -100
  546. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/Dfa.h +0 -57
  547. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.cpp +0 -85
  548. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.h +0 -27
  549. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderProcess.h +0 -126
  550. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/ProcessTrivial.h +0 -108
  551. package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.cpp +0 -139
  552. package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.h +0 -74
  553. package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.cpp +0 -65
  554. package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.h +0 -91
  555. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/CorrectnessTests.cpp +0 -772
  556. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/Example.cpp +0 -12
  557. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/FileConverter.cpp +0 -486
  558. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/iconv_sample.c +0 -162
  559. package/deps/simdutf/benchmarks/competition/utf8lut/src/utf8lut.h +0 -15
  560. package/deps/simdutf/benchmarks/competition/utf8sse4/fromutf8-sse.cpp +0 -292
  561. package/deps/simdutf/benchmarks/competition/utfcpp/LICENSE +0 -23
  562. package/deps/simdutf/benchmarks/competition/utfcpp/README.md +0 -1503
  563. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/checked.h +0 -335
  564. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/core.h +0 -338
  565. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp11.h +0 -103
  566. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp17.h +0 -103
  567. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/unchecked.h +0 -274
  568. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8.h +0 -34
  569. package/deps/simdutf/benchmarks/dataset/README.md +0 -155
  570. package/deps/simdutf/benchmarks/dataset/emoji.txt +0 -204
  571. package/deps/simdutf/benchmarks/dataset/scripts/utf8type.py +0 -40
  572. package/deps/simdutf/benchmarks/dataset/wikipedia_mars/Makefile +0 -80
  573. package/deps/simdutf/benchmarks/dataset/wikipedia_mars/convert_to_utf6.py +0 -20
  574. package/deps/simdutf/benchmarks/find/CMakeLists.txt +0 -6
  575. package/deps/simdutf/benchmarks/find/findbenchmark.cpp +0 -63
  576. package/deps/simdutf/benchmarks/find/findbenchmarker.h +0 -46
  577. package/deps/simdutf/benchmarks/shortbench.cpp +0 -555
  578. package/deps/simdutf/benchmarks/src/CMakeLists.txt +0 -52
  579. package/deps/simdutf/benchmarks/src/apple_arm_events.h +0 -1104
  580. package/deps/simdutf/benchmarks/src/benchmark.cpp +0 -3899
  581. package/deps/simdutf/benchmarks/src/benchmark.h +0 -317
  582. package/deps/simdutf/benchmarks/src/benchmark_base.cpp +0 -144
  583. package/deps/simdutf/benchmarks/src/benchmark_base.h +0 -98
  584. package/deps/simdutf/benchmarks/src/cmdline.cpp +0 -176
  585. package/deps/simdutf/benchmarks/src/cmdline.h +0 -35
  586. package/deps/simdutf/benchmarks/src/event_counter.h +0 -162
  587. package/deps/simdutf/benchmarks/src/linux-perf-events.h +0 -104
  588. package/deps/simdutf/benchmarks/stream.cpp +0 -209
  589. package/deps/simdutf/benchmarks/threaded.cpp +0 -123
  590. package/deps/simdutf/cmake/CPM.cmake +0 -1363
  591. package/deps/simdutf/cmake/JoinPaths.cmake +0 -23
  592. package/deps/simdutf/cmake/add_cpp_test.cmake +0 -68
  593. package/deps/simdutf/cmake/simdutf-config.cmake.in +0 -2
  594. package/deps/simdutf/cmake/simdutf-flags.cmake +0 -26
  595. package/deps/simdutf/cmake/toolchains-ci/riscv64-linux-gnu.cmake +0 -4
  596. package/deps/simdutf/cmake/toolchains-dev/README.md +0 -32
  597. package/deps/simdutf/cmake/toolchains-dev/aarch64.cmake +0 -14
  598. package/deps/simdutf/cmake/toolchains-dev/loongarch64.cmake +0 -22
  599. package/deps/simdutf/cmake/toolchains-dev/powerpc64.cmake +0 -16
  600. package/deps/simdutf/cmake/toolchains-dev/powerpc64le.cmake +0 -16
  601. package/deps/simdutf/cmake/toolchains-dev/riscv64.cmake +0 -16
  602. package/deps/simdutf/cmake/toolchains-dev/rvv-spike.cmake +0 -38
  603. package/deps/simdutf/doc/avx512.png +0 -0
  604. package/deps/simdutf/doc/logo.png +0 -0
  605. package/deps/simdutf/doc/logo.svg +0 -165
  606. package/deps/simdutf/doc/node2023.png +0 -0
  607. package/deps/simdutf/doc/shortinput.md +0 -78
  608. package/deps/simdutf/doc/utf16utf8.png +0 -0
  609. package/deps/simdutf/doc/utf8utf16.png +0 -0
  610. package/deps/simdutf/doc/widelogo.png +0 -0
  611. package/deps/simdutf/doxygen.py +0 -50
  612. package/deps/simdutf/fuzz/.clang-format +0 -9
  613. package/deps/simdutf/fuzz/CMakeLists.txt +0 -45
  614. package/deps/simdutf/fuzz/README.md +0 -168
  615. package/deps/simdutf/fuzz/atomic_base64.cpp +0 -448
  616. package/deps/simdutf/fuzz/base64.cpp +0 -278
  617. package/deps/simdutf/fuzz/build.sh +0 -83
  618. package/deps/simdutf/fuzz/conversion.cpp +0 -669
  619. package/deps/simdutf/fuzz/helpers/.clang-format-ignore +0 -1
  620. package/deps/simdutf/fuzz/helpers/common.h +0 -135
  621. package/deps/simdutf/fuzz/helpers/nameof.hpp +0 -1258
  622. package/deps/simdutf/fuzz/main.cpp +0 -72
  623. package/deps/simdutf/fuzz/minimize_and_cleanse.sh +0 -87
  624. package/deps/simdutf/fuzz/misc.cpp +0 -216
  625. package/deps/simdutf/fuzz/random_fuzz.sh +0 -154
  626. package/deps/simdutf/fuzz/roundtrip.cpp +0 -588
  627. package/deps/simdutf/fuzz/safe_conversion.cpp +0 -104
  628. package/deps/simdutf/riscv/Dockerfile +0 -16
  629. package/deps/simdutf/riscv/README.md +0 -24
  630. package/deps/simdutf/riscv/remove-docker-station +0 -8
  631. package/deps/simdutf/riscv/run-docker-station +0 -31
  632. package/deps/simdutf/scripts/.flake8 +0 -2
  633. package/deps/simdutf/scripts/Makefile +0 -2
  634. package/deps/simdutf/scripts/README_ADD_FUNCTION.md +0 -49
  635. package/deps/simdutf/scripts/add_function.py +0 -330
  636. package/deps/simdutf/scripts/amalgamation_tests.py +0 -156
  637. package/deps/simdutf/scripts/base64/Makefile +0 -2
  638. package/deps/simdutf/scripts/base64/README.md +0 -2
  639. package/deps/simdutf/scripts/base64/avx512.py +0 -76
  640. package/deps/simdutf/scripts/base64/neon_decode.py +0 -143
  641. package/deps/simdutf/scripts/base64/neon_generate_lut.py +0 -101
  642. package/deps/simdutf/scripts/base64/sse.py +0 -252
  643. package/deps/simdutf/scripts/base64/sseregular.py +0 -160
  644. package/deps/simdutf/scripts/base64/sseurl.py +0 -283
  645. package/deps/simdutf/scripts/base64/table.py +0 -59
  646. package/deps/simdutf/scripts/base64bench_print.py +0 -145
  647. package/deps/simdutf/scripts/benchmark-all.py +0 -119
  648. package/deps/simdutf/scripts/benchmark_print.py +0 -324
  649. package/deps/simdutf/scripts/check_feature_macros.py +0 -156
  650. package/deps/simdutf/scripts/check_typos.sh +0 -13
  651. package/deps/simdutf/scripts/clang_format.sh +0 -35
  652. package/deps/simdutf/scripts/clang_format_docker.sh +0 -38
  653. package/deps/simdutf/scripts/common.py +0 -24
  654. package/deps/simdutf/scripts/compilation_benchmark.py +0 -55
  655. package/deps/simdutf/scripts/compile_many_variations.sh +0 -64
  656. package/deps/simdutf/scripts/create_latex_table.py +0 -62
  657. package/deps/simdutf/scripts/docker/Dockerfile +0 -14
  658. package/deps/simdutf/scripts/docker/Makefile +0 -9
  659. package/deps/simdutf/scripts/docker/README.md +0 -30
  660. package/deps/simdutf/scripts/docker/llvm.gpg +0 -0
  661. package/deps/simdutf/scripts/ppc64_convert_utf16_to_utf8.py +0 -155
  662. package/deps/simdutf/scripts/prepare_doxygen.sh +0 -21
  663. package/deps/simdutf/scripts/release.py +0 -197
  664. package/deps/simdutf/scripts/shortinputplots.py +0 -97
  665. package/deps/simdutf/scripts/sse_convert_utf16_to_utf8.py +0 -422
  666. package/deps/simdutf/scripts/sse_convert_utf32_to_utf16.py +0 -105
  667. package/deps/simdutf/scripts/sse_utf8_utf16_decode.py +0 -186
  668. package/deps/simdutf/scripts/sse_validate_utf16le_proof.py +0 -137
  669. package/deps/simdutf/scripts/sse_validate_utf16le_testcases.py +0 -129
  670. package/deps/simdutf/scripts/table.py +0 -207
  671. package/deps/simdutf/scripts/tests/new.txt +0 -33
  672. package/deps/simdutf/scripts/tests/old.txt +0 -33
  673. package/deps/simdutf/scripts/tests/results.txt +0 -272
  674. package/deps/simdutf/simdutf.pc.in +0 -11
  675. package/deps/simdutf/singleheader/.flake8 +0 -2
  676. package/deps/simdutf/singleheader/CMakeLists.txt +0 -64
  677. package/deps/simdutf/singleheader/README-dev.md +0 -81
  678. package/deps/simdutf/singleheader/README.md +0 -19
  679. package/deps/simdutf/singleheader/amalgamate.py +0 -513
  680. package/deps/simdutf/singleheader/amalgamation_demo.c +0 -59
  681. package/deps/simdutf/singleheader/amalgamation_demo.cpp +0 -54
  682. package/deps/simdutf/singleheader/test-features.py +0 -262
  683. package/deps/simdutf/src/CMakeLists.txt +0 -78
  684. package/deps/simdutf/tests/CMakeLists.txt +0 -483
  685. package/deps/simdutf/tests/atomic_base64_tests.cpp +0 -2845
  686. package/deps/simdutf/tests/base64_tests.cpp +0 -3617
  687. package/deps/simdutf/tests/basic_fuzzer.cpp +0 -805
  688. package/deps/simdutf/tests/bele_tests.cpp +0 -182
  689. package/deps/simdutf/tests/constexpr_base64_tests.cpp +0 -387
  690. package/deps/simdutf/tests/convert_latin1_to_utf16be_tests.cpp +0 -52
  691. package/deps/simdutf/tests/convert_latin1_to_utf16le_tests.cpp +0 -80
  692. package/deps/simdutf/tests/convert_latin1_to_utf32_tests.cpp +0 -66
  693. package/deps/simdutf/tests/convert_latin1_to_utf8_tests.cpp +0 -120
  694. package/deps/simdutf/tests/convert_utf16_to_utf8_safe_tests.cpp +0 -203
  695. package/deps/simdutf/tests/convert_utf16_to_utf8_with_replacement_tests.cpp +0 -276
  696. package/deps/simdutf/tests/convert_utf16be_to_latin1_tests.cpp +0 -109
  697. package/deps/simdutf/tests/convert_utf16be_to_latin1_tests_with_errors.cpp +0 -136
  698. package/deps/simdutf/tests/convert_utf16be_to_utf32_tests.cpp +0 -193
  699. package/deps/simdutf/tests/convert_utf16be_to_utf32_with_errors_tests.cpp +0 -381
  700. package/deps/simdutf/tests/convert_utf16be_to_utf8_tests.cpp +0 -259
  701. package/deps/simdutf/tests/convert_utf16be_to_utf8_with_errors_tests.cpp +0 -266
  702. package/deps/simdutf/tests/convert_utf16le_to_latin1_tests.cpp +0 -148
  703. package/deps/simdutf/tests/convert_utf16le_to_latin1_tests_with_errors.cpp +0 -176
  704. package/deps/simdutf/tests/convert_utf16le_to_utf32_tests.cpp +0 -213
  705. package/deps/simdutf/tests/convert_utf16le_to_utf32_with_errors_tests.cpp +0 -318
  706. package/deps/simdutf/tests/convert_utf16le_to_utf8_tests.cpp +0 -343
  707. package/deps/simdutf/tests/convert_utf16le_to_utf8_with_errors_tests.cpp +0 -271
  708. package/deps/simdutf/tests/convert_utf32_to_latin1_tests.cpp +0 -111
  709. package/deps/simdutf/tests/convert_utf32_to_latin1_with_errors_tests.cpp +0 -96
  710. package/deps/simdutf/tests/convert_utf32_to_utf16be_tests.cpp +0 -148
  711. package/deps/simdutf/tests/convert_utf32_to_utf16be_with_errors_tests.cpp +0 -192
  712. package/deps/simdutf/tests/convert_utf32_to_utf16le_tests.cpp +0 -166
  713. package/deps/simdutf/tests/convert_utf32_to_utf16le_with_errors_tests.cpp +0 -215
  714. package/deps/simdutf/tests/convert_utf32_to_utf8_tests.cpp +0 -181
  715. package/deps/simdutf/tests/convert_utf32_to_utf8_with_errors_tests.cpp +0 -261
  716. package/deps/simdutf/tests/convert_utf8_to_latin1_tests.cpp +0 -516
  717. package/deps/simdutf/tests/convert_utf8_to_latin1_with_errors_tests.cpp +0 -579
  718. package/deps/simdutf/tests/convert_utf8_to_utf16be_tests.cpp +0 -412
  719. package/deps/simdutf/tests/convert_utf8_to_utf16be_with_errors_tests.cpp +0 -480
  720. package/deps/simdutf/tests/convert_utf8_to_utf16le_tests.cpp +0 -671
  721. package/deps/simdutf/tests/convert_utf8_to_utf16le_with_errors_tests.cpp +0 -455
  722. package/deps/simdutf/tests/convert_utf8_to_utf32_tests.cpp +0 -1204
  723. package/deps/simdutf/tests/convert_utf8_to_utf32_with_errors_tests.cpp +0 -337
  724. package/deps/simdutf/tests/convert_valid_utf16be_to_latin1_tests.cpp +0 -37
  725. package/deps/simdutf/tests/convert_valid_utf16be_to_utf32_tests.cpp +0 -97
  726. package/deps/simdutf/tests/convert_valid_utf16be_to_utf8_tests.cpp +0 -126
  727. package/deps/simdutf/tests/convert_valid_utf16le_to_latin1_tests.cpp +0 -71
  728. package/deps/simdutf/tests/convert_valid_utf16le_to_utf32_tests.cpp +0 -122
  729. package/deps/simdutf/tests/convert_valid_utf16le_to_utf8_tests.cpp +0 -244
  730. package/deps/simdutf/tests/convert_valid_utf32_to_latin1_tests.cpp +0 -49
  731. package/deps/simdutf/tests/convert_valid_utf32_to_utf16be_tests.cpp +0 -92
  732. package/deps/simdutf/tests/convert_valid_utf32_to_utf16le_tests.cpp +0 -114
  733. package/deps/simdutf/tests/convert_valid_utf32_to_utf8_tests.cpp +0 -109
  734. package/deps/simdutf/tests/convert_valid_utf8_to_latin1_tests.cpp +0 -84
  735. package/deps/simdutf/tests/convert_valid_utf8_to_utf16be_tests.cpp +0 -124
  736. package/deps/simdutf/tests/convert_valid_utf8_to_utf16le_tests.cpp +0 -221
  737. package/deps/simdutf/tests/convert_valid_utf8_to_utf32_tests.cpp +0 -155
  738. package/deps/simdutf/tests/count_utf16be.cpp +0 -64
  739. package/deps/simdutf/tests/count_utf16le.cpp +0 -61
  740. package/deps/simdutf/tests/count_utf8.cpp +0 -87
  741. package/deps/simdutf/tests/detect_encodings_tests.cpp +0 -312
  742. package/deps/simdutf/tests/embed/valid_utf8.txt +0 -1
  743. package/deps/simdutf/tests/embed_tests.cpp +0 -22
  744. package/deps/simdutf/tests/find_tests.cpp +0 -77
  745. package/deps/simdutf/tests/fixed_string_tests.cpp +0 -153
  746. package/deps/simdutf/tests/helpers/CMakeLists.txt +0 -25
  747. package/deps/simdutf/tests/helpers/compiletime_conversions.h +0 -222
  748. package/deps/simdutf/tests/helpers/fixed_string.h +0 -267
  749. package/deps/simdutf/tests/helpers/random_int.cpp +0 -30
  750. package/deps/simdutf/tests/helpers/random_int.h +0 -39
  751. package/deps/simdutf/tests/helpers/random_utf16.cpp +0 -123
  752. package/deps/simdutf/tests/helpers/random_utf16.h +0 -52
  753. package/deps/simdutf/tests/helpers/random_utf32.cpp +0 -41
  754. package/deps/simdutf/tests/helpers/random_utf32.h +0 -40
  755. package/deps/simdutf/tests/helpers/random_utf8.cpp +0 -93
  756. package/deps/simdutf/tests/helpers/random_utf8.h +0 -36
  757. package/deps/simdutf/tests/helpers/test.cpp +0 -231
  758. package/deps/simdutf/tests/helpers/test.h +0 -193
  759. package/deps/simdutf/tests/helpers/transcode_test_base.cpp +0 -1257
  760. package/deps/simdutf/tests/helpers/transcode_test_base.h +0 -683
  761. package/deps/simdutf/tests/helpers/utf16.h +0 -27
  762. package/deps/simdutf/tests/installation_tests/find/CMakeLists.txt +0 -43
  763. package/deps/simdutf/tests/installation_tests/from_fetch/CMakeLists.txt +0 -47
  764. package/deps/simdutf/tests/internal_tests.cpp +0 -27
  765. package/deps/simdutf/tests/null_safety_tests.cpp +0 -94
  766. package/deps/simdutf/tests/random_fuzzer.cpp +0 -779
  767. package/deps/simdutf/tests/readme_tests.cpp +0 -274
  768. package/deps/simdutf/tests/reference/CMakeLists.txt +0 -23
  769. package/deps/simdutf/tests/reference/decode_utf16.h +0 -81
  770. package/deps/simdutf/tests/reference/decode_utf32.h +0 -47
  771. package/deps/simdutf/tests/reference/encode_latin1.cpp +0 -1
  772. package/deps/simdutf/tests/reference/encode_latin1.h +0 -32
  773. package/deps/simdutf/tests/reference/encode_utf16.cpp +0 -49
  774. package/deps/simdutf/tests/reference/encode_utf16.h +0 -20
  775. package/deps/simdutf/tests/reference/encode_utf32.cpp +0 -1
  776. package/deps/simdutf/tests/reference/encode_utf32.h +0 -36
  777. package/deps/simdutf/tests/reference/encode_utf8.cpp +0 -1
  778. package/deps/simdutf/tests/reference/encode_utf8.h +0 -40
  779. package/deps/simdutf/tests/reference/validate_utf16.cpp +0 -60
  780. package/deps/simdutf/tests/reference/validate_utf16.h +0 -14
  781. package/deps/simdutf/tests/reference/validate_utf16_to_latin1.cpp +0 -35
  782. package/deps/simdutf/tests/reference/validate_utf16_to_latin1.h +0 -13
  783. package/deps/simdutf/tests/reference/validate_utf32.cpp +0 -27
  784. package/deps/simdutf/tests/reference/validate_utf32.h +0 -12
  785. package/deps/simdutf/tests/reference/validate_utf32_to_latin1.cpp +0 -27
  786. package/deps/simdutf/tests/reference/validate_utf32_to_latin1.h +0 -12
  787. package/deps/simdutf/tests/reference/validate_utf8.cpp +0 -82
  788. package/deps/simdutf/tests/reference/validate_utf8.h +0 -11
  789. package/deps/simdutf/tests/reference/validate_utf8_to_latin1.cpp +0 -43
  790. package/deps/simdutf/tests/reference/validate_utf8_to_latin1.h +0 -12
  791. package/deps/simdutf/tests/select_implementation.cpp +0 -43
  792. package/deps/simdutf/tests/simdutf_c_tests.cpp +0 -244
  793. package/deps/simdutf/tests/span_tests.cpp +0 -401
  794. package/deps/simdutf/tests/special_tests.cpp +0 -559
  795. package/deps/simdutf/tests/straight_c_test.c +0 -187
  796. package/deps/simdutf/tests/text_encoding_tests.cpp +0 -77
  797. package/deps/simdutf/tests/to_well_formed_utf16_tests.cpp +0 -377
  798. package/deps/simdutf/tests/utf8_length_from_utf16_tests.cpp +0 -202
  799. package/deps/simdutf/tests/validate_ascii_basic_tests.cpp +0 -165
  800. package/deps/simdutf/tests/validate_ascii_with_errors_tests.cpp +0 -77
  801. package/deps/simdutf/tests/validate_utf16be_basic_tests.cpp +0 -175
  802. package/deps/simdutf/tests/validate_utf16be_with_errors_tests.cpp +0 -188
  803. package/deps/simdutf/tests/validate_utf16le_basic_tests.cpp +0 -268
  804. package/deps/simdutf/tests/validate_utf16le_with_errors_tests.cpp +0 -274
  805. package/deps/simdutf/tests/validate_utf32_basic_tests.cpp +0 -92
  806. package/deps/simdutf/tests/validate_utf32_with_errors_tests.cpp +0 -114
  807. package/deps/simdutf/tests/validate_utf8_basic_tests.cpp +0 -178
  808. package/deps/simdutf/tests/validate_utf8_brute_force_tests.cpp +0 -88
  809. package/deps/simdutf/tests/validate_utf8_puzzler_tests.cpp +0 -33
  810. package/deps/simdutf/tests/validate_utf8_with_errors_tests.cpp +0 -228
  811. package/deps/simdutf/tools/CMakeLists.txt +0 -85
  812. package/deps/simdutf/tools/fastbase64.cpp +0 -250
  813. package/deps/simdutf/tools/sutf.cpp +0 -556
  814. package/deps/simdutf/tools/sutf.h +0 -40
  815. package/lib/tsconfig.tsbuildinfo +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","SBuffer","KFormatType","KeyEncoding","KeyType","CryptoKey","KeyObject","PublicKeyObject","PrivateKeyObject","SecretKeyObject","bufferLikeToArrayBuffer","argon2Sync","lazyDOMException","normalizeHashName","HashContext","validateMaxBufferLength","asyncDigest","createSecretKey","createPublicKey","NitroModules","pbkdf2DeriveBits","ecImportKey","ecdsaSignVerify","ec_generateKeyPair","ecDeriveBits","rsa_generateKeyPair","getRandomValues","createHmac","timingSafeEqual","createSign","createVerify","ed_generateKeyPairWebCrypto","x_generateKeyPairWebCrypto","xDeriveBits","Ed","mldsa_generateKeyPairWebCrypto","mlkem_generateKeyPairWebCrypto","MlKem","hkdfDeriveBits","KWebCryptoKeyFormat","CipherOrWrapMode","hasAnyNotIn","usages","allowed","some","usage","includes","normalizeAlgorithm","algorithm","_operation","name","getAlgorithmName","length","ecExportKey","key","format","keyObject","kWebCryptoKeyFormatRaw","handle","exportKey","kWebCryptoKeyFormatSPKI","exported","export","type","kWebCryptoKeyFormatPKCS8","Error","rsaExportKey","rsaCipher","mode","data","rsaParams","expectedType","kWebCryptoCipherEncrypt","hashAlgorithm","hash","label","undefined","rsaCipherModule","createHybridObject","RSA_PKCS1_OAEP_PADDING","encrypt","decrypt","aesCipher","aesCtrCipher","aesCbcCipher","aesGcmCipher","aesOcbCipher","counter","byteLength","keyLength","cipherType","factory","cipher","createCipher","isCipher","cipherKey","iv","updated","update","final","result","Uint8Array","set","buffer","aesAeadCipher","config","additionalData","tagLength","validTagLengths","algorithmName","tagByteLength","cipherSuffix","authTagLen","processData","kWebCryptoCipherDecrypt","dataView","ciphertextLength","slice","authTag","setAuthTag","setAAD","tag","getAuthTag","ivBuffer","aesKwCipher","isWrap","exportedKey","defaultWrapIV","chaCha20Poly1305Cipher","aesGenerateKey","extractable","keyUsages","validUsages","keyBytes","keyAlgorithm","hmacGenerateKey","hashName","Math","ceil","webCryptoHashName","WebCrypto","kmacGenerateKey","defaultLength","kmacSignVerify","signature","outputLengthBits","outputLengthBytes","keyData","kmac","customizationBuffer","customization","createKmac","computed","digest","sigBuffer","kmacImportKey","jwk","kty","expectedAlg","alg","keyType","initJwk","rsaImportKey","checkSet","createKeyObject","DER","SPKI","PKCS8","keyDetails","asymmetricKeyDetails","publicExponentBytes","publicExponent","exp","bytes","value","unshift","floor","normalizedHash","algorithmWithDetails","modulusLength","hmacImportKey","k","decoded","from","keyBitLength","normalizedAlgorithm","aesImportKey","actualLength","edImportKey","isX","allowedUsages","init","jwkData","PRIVATE","pqcImportKeyObject","initPqcRaw","mldsaImportKey","isPublicFormat","mlkemImportKey","exportKeySpki","exportKeyPkcs8","exportKeyRaw","byteOffset","exportKeyJWK","exportJwk","key_ops","ext","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","crv","namedCurve","importGenericSecretKey","checkLength","isBuffer","hkdfImportKey","checkCryptoKeyPairUsages","pair","privateKey","argon2DeriveBits","baseKey","nonce","parallelism","memory","passes","secretValue","associatedData","message","algName","toLowerCase","secret","version","isCryptoKeyPair","hmacSignVerify","hmac","computedBuffer","rsaSignVerify","padding","saltLength","RSA_PKCS1_PADDING","RSA_PKCS1_PSS_PADDING","paddingValue","signer","sig","sign","verifier","verify","edSignVerify","isSign","expectedKeyType","curveType","ed","rawKey","dataBuffer","signSync","signatureBuffer","verifySync","mldsaSignVerify","signVerify","cipherOrWrap","op","SUPPORTED_ALGORITHMS","Set","generateKey","importKey","deriveBits","wrapKey","unwrapKey","encapsulateBits","decapsulateBits","encapsulateKey","decapsulateKey","ASYMMETRIC_ALGORITHMS","Subtle","supports","operation","_lengthOrAdditionalAlgorithm","has","additionalAlg","supported","deriveKey","derivedKeyAlgorithm","getKeyLength","derivedBits","pqcAlgos","wrappingKey","wrapAlgorithm","jwkString","JSON","stringify","paddedLength","paddedBuffer","alloc","copy","writeUInt8","wrappedKey","unwrappingKey","unwrapAlgorithm","unwrappedKeyAlgorithm","decrypted","nullIndex","indexOf","toString","trim","parse","getPublicKey","publicKeyObject","toCryptoKey","_encapsulateCore","variant","mlkem","setPublicKey","encapsulateSync","_decapsulateCore","ciphertext","setPrivateKey","decapsulateSync","sharedKeyAlgorithm","sharedKey","importedKey","subtle","hmacAlg"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","SBuffer","KFormatType","KeyEncoding","KeyType","kNamedCurveAliases","CryptoKey","KeyObject","PublicKeyObject","PrivateKeyObject","SecretKeyObject","bufferLikeToArrayBuffer","argon2Sync","lazyDOMException","normalizeHashName","HashContext","validateJwkStructure","validateMaxBufferLength","asyncDigest","createSecretKey","createPublicKey","NitroModules","pbkdf2DeriveBits","ecImportKey","ecdsaSignVerify","ec_generateKeyPair","ecDeriveBits","rsa_generateKeyPair","getRandomValues","createHmac","timingSafeEqual","createSign","createVerify","ed_generateKeyPairWebCrypto","x_generateKeyPairWebCrypto","xDeriveBits","Ed","mldsa_generateKeyPairWebCrypto","slhdsa_generateKeyPairWebCrypto","SLH_DSA_VARIANTS","mlkem_generateKeyPairWebCrypto","MlKem","hkdfDeriveBits","KWebCryptoKeyFormat","CipherOrWrapMode","hasAnyNotIn","usages","allowed","some","usage","includes","requireArgs","actual","required","method","TypeError","_canonicalAlgorithmNames","getCanonicalAlgorithmNames","map","Map","set","Object","values","SUPPORTED_ALGORITHMS","name","toLowerCase","normalizeAlgorithm","algorithm","_operation","get","canonical","getAlgorithmName","length","aliasKeyFormat","format","kUncompressedSpkiLength","ecExportKey","key","keyObject","kWebCryptoKeyFormatRaw","handle","exportKey","kWebCryptoKeyFormatSPKI","exported","export","type","namedCurve","expected","undefined","byteLength","jwk","exportJwk","x","y","from","raw","Uint8Array","tmp","createHybridObject","curveAlias","initECRaw","buffer","DER","SPKI","kWebCryptoKeyFormatPKCS8","Error","rsaExportKey","rsaCipher","mode","data","rsaParams","expectedType","kWebCryptoCipherEncrypt","hashAlgorithm","hash","label","rsaCipherModule","RSA_PKCS1_OAEP_PADDING","encrypt","decrypt","aesCipher","aesCtrCipher","aesCbcCipher","aesGcmCipher","aesOcbCipher","counter","keyLength","cipherType","factory","cipher","createCipher","isCipher","cipherKey","iv","updated","update","final","result","aesAeadCipher","config","additionalData","tagLength","validTagLengths","algorithmName","tagByteLength","cipherSuffix","authTagLen","processData","kWebCryptoCipherDecrypt","dataView","ciphertextLength","slice","authTag","setAuthTag","setAAD","tag","getAuthTag","ivBuffer","aesKwCipher","isWrap","exportedKey","defaultWrapIV","chaCha20Poly1305Cipher","aesGenerateKey","extractable","keyUsages","validUsages","keyBytes","keyAlgorithm","hmacGenerateKey","hashName","Math","ceil","webCryptoHashName","WebCrypto","kmacGenerateKey","defaultLength","kmacSignVerify","signature","outputLength","outputLengthBits","outputLengthBytes","keyData","kmac","customizationBuffer","customization","createKmac","computed","digest","sigBuffer","kmacImportKey","kty","expectedAlg","alg","keyType","initJwk","err","cause","rsaImportKey","checkSet","checkUsages","expectedUse","jwkContext","JwkRsa","JwkRsaPss","JwkRsaOaep","PUBLIC","PRIVATE","createKeyObject","PKCS8","keyDetails","asymmetricKeyDetails","publicExponentBytes","publicExponent","exp","bytes","value","unshift","floor","normalizedHash","algorithmWithDetails","modulusLength","hmacImportKey","k","decoded","keyBitLength","normalizedAlgorithm","aesImportKey","requiresRawSecret","acceptsRaw","actualLength","edImportKey","isX","allowedUsages","init","jwkData","crv","PQC_SEEDLESS_PKCS8_LENGTHS","PQC_FAMILY","pqcImportKeyObject","isPublic","ab","family","initPqcRaw","priv","pqcIsPublicImport","validatePqcJwk","validatePqcFormat","mldsaImportKey","slhdsaImportKey","mlkemImportKey","exportKeySpki","exportKeyPkcs8","startsWith","exportKeyRaw","isSecret","exportSecret","byteOffset","exportRawPublic","fail","exportKeyJWK","key_ops","ext","JwkHmac","pbkdf2ImportKey","checkLength","isBuffer","argon2ImportKey","hkdfImportKey","checkCryptoKeyPairUsages","pair","privateKey","argon2DeriveBits","baseKey","nonce","parallelism","memory","passes","secretValue","associatedData","message","algName","secret","version","isCryptoKeyPair","hmacSignVerify","hmac","computedBuffer","rsaSignVerify","padding","saltLength","RSA_PKCS1_PADDING","RSA_PKCS1_PSS_PADDING","paddingValue","signer","sig","sign","verifier","verify","edSignVerify","isSign","expectedKeyType","curveType","ed","rawKey","dataBuffer","signSync","signatureBuffer","verifySync","mldsaSignVerify","signVerify","cipherOrWrap","Set","generateKey","importKey","deriveBits","wrapKey","unwrapKey","encapsulateBits","decapsulateBits","encapsulateKey","decapsulateKey","ASYMMETRIC_ALGORITHMS","validateKdfDeriveBitsLength","supportsCheck","op","supported","has","supportsImpl","operation","lengthOrAdditionalAlgorithm","additional","getKeyLength","normalized","normalizedAdd","addLen","Subtle","supports","arguments","deriveKey","derivedKeyAlgorithm","normalizedDerivedKeyAlgorithm","derivedBits","pqcAlgos","wrappingKey","wrapAlgorithm","normalizedWrapAlgorithm","jwkString","JSON","stringify","paddedLength","paddedBuffer","alloc","copy","writeUInt8","wrappedKey","unwrappingKey","unwrapAlgorithm","unwrappedKeyAlgorithm","normalizedUnwrapAlgorithm","decrypted","nullIndex","indexOf","toString","trim","parse","getPublicKey","publicKeyObject","toCryptoKey","_encapsulateCore","variant","mlkem","setPublicKey","encapsulateSync","_decapsulateCore","ciphertext","setPrivateKey","decapsulateSync","sharedKeyAlgorithm","sharedKey","importedKey","subtle","getHmacBlockSize"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
@@ -43,14 +43,25 @@ export function validateEncoding(data, encoding) {
43
43
  }
44
44
  }
45
45
 
46
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ /**
47
+ * Reads an unsigned-integer option from an options-like object.
48
+ *
49
+ * Returns `undefined` if the option is missing, `null`, or `undefined`.
50
+ * Throws `RangeError` if the value is present but not a non-negative
51
+ * 32-bit integer (NaN, Infinity, fractional, negative, or > 2^32 - 1).
52
+ *
53
+ * Replaces the previous `Record<string, any>` + sentinel-`-1` signature,
54
+ * which defeated the type checker (audit Phase 1.4). Callers that used
55
+ * `getUIntOption(opts ?? {}, key) !== -1 ? getUIntOption(...) : default`
56
+ * collapse to `getUIntOption(opts, key) ?? default`.
57
+ */
47
58
  export function getUIntOption(options, key) {
48
- let value;
49
- if (options && (value = options[key]) != null) {
50
- // >>> Turns any type into a positive integer (also sets the sign bit to 0)
51
- if (value >>> 0 !== value) throw new Error(`options.${key}: ${value}`);
52
- return value;
59
+ if (options == null) return undefined;
60
+ const value = options[key];
61
+ if (value == null) return undefined;
62
+ if (typeof value !== 'number' || !Number.isFinite(value) || !Number.isInteger(value) || value < 0 || value > 0xffff_ffff) {
63
+ throw new RangeError(`options.${key} must be a non-negative 32-bit integer, got ${String(value)}`);
53
64
  }
54
- return -1;
65
+ return value;
55
66
  }
56
67
  //# sourceMappingURL=cipher.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","normalizedEncoding","length","Error","getUIntOption","options","key","value"],"sourceRoot":"../../../src","sources":["utils/cipher.ts"],"mappings":";;AAEA;AACA,IAAIA,eAAyB,GAAG,QAAQ;AAExC,OAAO,SAASC,kBAAkBA,CAACC,QAAkB,EAAE;EACrDF,eAAe,GAAGE,QAAQ;AAC5B;AAEA,OAAO,SAASC,kBAAkBA,CAAA,EAAa;EAC7C,OAAOH,eAAe;AACxB;AAEA,OAAO,SAASI,iBAAiBA,CAACC,GAAW,EAAE;EAC7C,IAAI,CAACA,GAAG,EAAE,OAAO,MAAM;EACvB,IAAIC,OAAO;EACX,OAAO,IAAI,EAAE;IACX,QAAQD,GAAG;MACT,KAAK,MAAM;MACX,KAAK,OAAO;QACV,OAAO,MAAM;MACf,KAAK,MAAM;MACX,KAAK,OAAO;MACZ,KAAK,SAAS;MACd,KAAK,UAAU;QACb,OAAO,SAAS;MAClB,KAAK,QAAQ;MACb,KAAK,QAAQ;QACX,OAAO,QAAQ;MACjB,KAAK,QAAQ;MACb,KAAK,OAAO;MACZ,KAAK,KAAK;QACR,OAAOA,GAAG;MACZ;QACE,IAAIC,OAAO,EAAE,OAAO,CAAC;QACrBD,GAAG,GAAG,CAAC,EAAE,GAAGA,GAAG,EAAEE,WAAW,CAAC,CAAC;QAC9BD,OAAO,GAAG,IAAI;IAClB;EACF;AACF;AAEA,OAAO,SAASE,gBAAgBA,CAACC,IAAY,EAAEP,QAAgB,EAAE;EAC/D,MAAMQ,kBAAkB,GAAGN,iBAAiB,CAACF,QAAQ,CAAC;EACtD,MAAMS,MAAM,GAAGF,IAAI,CAACE,MAAM;EAE1B,IAAID,kBAAkB,KAAK,KAAK,IAAIC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;IACpD,MAAM,IAAIC,KAAK,CAAC,YAAYV,QAAQ,8BAA8BS,MAAM,EAAE,CAAC;EAC7E;AACF;;AAEA;AACA,OAAO,SAASE,aAAaA,CAACC,OAA4B,EAAEC,GAAW,EAAE;EACvE,IAAIC,KAAK;EACT,IAAIF,OAAO,IAAI,CAACE,KAAK,GAAGF,OAAO,CAACC,GAAG,CAAC,KAAK,IAAI,EAAE;IAC7C;IACA,IAAIC,KAAK,KAAK,CAAC,KAAKA,KAAK,EAAE,MAAM,IAAIJ,KAAK,CAAC,WAAWG,GAAG,KAAKC,KAAK,EAAE,CAAC;IACtE,OAAOA,KAAK;EACd;EACA,OAAO,CAAC,CAAC;AACX","ignoreList":[]}
1
+ {"version":3,"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","normalizedEncoding","length","Error","getUIntOption","options","key","undefined","value","Number","isFinite","isInteger","RangeError","String"],"sourceRoot":"../../../src","sources":["utils/cipher.ts"],"mappings":";;AAEA;AACA,IAAIA,eAAyB,GAAG,QAAQ;AAExC,OAAO,SAASC,kBAAkBA,CAACC,QAAkB,EAAE;EACrDF,eAAe,GAAGE,QAAQ;AAC5B;AAEA,OAAO,SAASC,kBAAkBA,CAAA,EAAa;EAC7C,OAAOH,eAAe;AACxB;AAEA,OAAO,SAASI,iBAAiBA,CAACC,GAAW,EAAE;EAC7C,IAAI,CAACA,GAAG,EAAE,OAAO,MAAM;EACvB,IAAIC,OAAO;EACX,OAAO,IAAI,EAAE;IACX,QAAQD,GAAG;MACT,KAAK,MAAM;MACX,KAAK,OAAO;QACV,OAAO,MAAM;MACf,KAAK,MAAM;MACX,KAAK,OAAO;MACZ,KAAK,SAAS;MACd,KAAK,UAAU;QACb,OAAO,SAAS;MAClB,KAAK,QAAQ;MACb,KAAK,QAAQ;QACX,OAAO,QAAQ;MACjB,KAAK,QAAQ;MACb,KAAK,OAAO;MACZ,KAAK,KAAK;QACR,OAAOA,GAAG;MACZ;QACE,IAAIC,OAAO,EAAE,OAAO,CAAC;QACrBD,GAAG,GAAG,CAAC,EAAE,GAAGA,GAAG,EAAEE,WAAW,CAAC,CAAC;QAC9BD,OAAO,GAAG,IAAI;IAClB;EACF;AACF;AAEA,OAAO,SAASE,gBAAgBA,CAACC,IAAY,EAAEP,QAAgB,EAAE;EAC/D,MAAMQ,kBAAkB,GAAGN,iBAAiB,CAACF,QAAQ,CAAC;EACtD,MAAMS,MAAM,GAAGF,IAAI,CAACE,MAAM;EAE1B,IAAID,kBAAkB,KAAK,KAAK,IAAIC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;IACpD,MAAM,IAAIC,KAAK,CAAC,YAAYV,QAAQ,8BAA8BS,MAAM,EAAE,CAAC;EAC7E;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,aAAaA,CAC3BC,OAAsD,EACtDC,GAAW,EACS;EACpB,IAAID,OAAO,IAAI,IAAI,EAAE,OAAOE,SAAS;EACrC,MAAMC,KAAK,GAAGH,OAAO,CAACC,GAAG,CAAC;EAC1B,IAAIE,KAAK,IAAI,IAAI,EAAE,OAAOD,SAAS;EACnC,IACE,OAAOC,KAAK,KAAK,QAAQ,IACzB,CAACC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IACvB,CAACC,MAAM,CAACE,SAAS,CAACH,KAAK,CAAC,IACxBA,KAAK,GAAG,CAAC,IACTA,KAAK,GAAG,WAAW,EACnB;IACA,MAAM,IAAII,UAAU,CAClB,WAAWN,GAAG,+CAA+CO,MAAM,CAACL,KAAK,CAAC,EAC5E,CAAC;EACH;EACA,OAAOA,KAAK;AACd","ignoreList":[]}
@@ -3,17 +3,66 @@
3
3
  import { Buffer as CraftzdogBuffer } from '@craftzdog/react-native-buffer';
4
4
  import { Buffer as SafeBuffer } from 'safe-buffer';
5
5
  import { NitroModules } from 'react-native-nitro-modules';
6
+ import { Platform } from 'react-native';
6
7
  const utils = NitroModules.createHybridObject('Utils');
8
+ const isHermes = global.HermesInternal != null;
9
+
10
+ // v0.78.0, https://github.com/facebook/react-native/commit/c6f12254d16d87978383c08065a626d437e60450
11
+ // Use jsi::String::getStringData() rather than jsi::String::utf16()
12
+ const canGetU16StringFromJsiString = !(Platform.constants.reactNativeVersion.major == 0 && Platform.constants.reactNativeVersion.minor < 78);
13
+
14
+ // v0.79.0, https://github.com/facebook/react-native/commit/d9d824055e9f24614abd5657f9fc89a6ab3f2da2
15
+ const canCreateJsiStringFromUtf16 = !(Platform.constants.reactNativeVersion.major == 0 && Platform.constants.reactNativeVersion.minor < 79);
16
+ const baseNativeEncodings = ['hex', 'base64', 'base64url', 'utf8', 'utf-8', 'latin1', 'binary', 'ascii'];
17
+ const nativeStringToBufferEncodings = new Set(baseNativeEncodings);
18
+ const nativeBufferToStringEncodings = new Set(baseNativeEncodings);
19
+
20
+ // The fast and lossless paths for utf16le are only available on Hermes
21
+ if (isHermes) {
22
+ if (canGetU16StringFromJsiString) {
23
+ nativeStringToBufferEncodings.add('utf16le');
24
+ }
25
+ if (canCreateJsiStringFromUtf16) {
26
+ nativeBufferToStringEncodings.add('utf16le');
27
+ }
28
+ }
29
+
30
+ // WebCrypto / Web IDL §BufferSource: SharedArrayBuffer-backed inputs must
31
+ // be rejected. Concurrent writes from another worker during async crypto
32
+ // can corrupt computations or leak intermediate state, so even copying
33
+ // the source isn't safe (the copy itself races). Reject at conversion.
34
+ // See Node's `lib/internal/webidl.js` BufferSource converter (commit
35
+ // bee10872588) — it throws TypeError, matching the WebIDL spec.
36
+ //
37
+ // We apply this guard to *every* conversion helper, not just the ones
38
+ // reached from `subtle.*`. That's deliberately stricter than Node, whose
39
+ // classic APIs (`createHash().update`, `createHmac().update`,
40
+ // `createCipheriv().update`, etc.) accept SAB-backed views. The TOCTOU
41
+ // concern is the same on either side of the WebCrypto / classic line, so
42
+ // we prefer the safer default everywhere.
43
+ export function rejectSharedArrayBuffer(buf) {
44
+ if (typeof SharedArrayBuffer === 'undefined') return;
45
+ if (buf instanceof SharedArrayBuffer) {
46
+ throw new TypeError('SharedArrayBuffer is not a supported BufferSource');
47
+ }
48
+ if (ArrayBuffer.isView(buf) && buf.buffer instanceof SharedArrayBuffer) {
49
+ throw new TypeError('View on a SharedArrayBuffer is not a supported BufferSource');
50
+ }
51
+ }
7
52
 
8
53
  /**
9
- * Converts supplied argument to an ArrayBuffer. Note this does not copy the
10
- * data so it is faster than toArrayBuffer. Not copying is important for
11
- * functions like randomFill which need to be able to write to the underlying
12
- * buffer.
13
- * @param buf
14
- * @returns ArrayBuffer
54
+ * Returns the underlying ArrayBuffer of a Buffer / TypedArray view **without
55
+ * copying**, ignoring `byteOffset`/`byteLength`. The full backing storage is
56
+ * exposed.
57
+ *
58
+ * Only use this when the caller separately tracks `byteOffset`/`byteLength`
59
+ * and the native receiver needs to write back into the original memory
60
+ * (e.g. `randomFill`). For data that will be read by native crypto, use
61
+ * `binaryLikeToArrayBuffer`/`toArrayBuffer` instead — those slice to the
62
+ * view's region and won't leak unrelated bytes from the backing buffer.
15
63
  */
16
64
  export const abvToArrayBuffer = buf => {
65
+ rejectSharedArrayBuffer(buf);
17
66
  if (CraftzdogBuffer.isBuffer(buf)) {
18
67
  return buf.buffer;
19
68
  }
@@ -45,6 +94,8 @@ export function toArrayBuffer(buf) {
45
94
  return ab;
46
95
  }
47
96
  export function bufferLikeToArrayBuffer(buf) {
97
+ rejectSharedArrayBuffer(buf);
98
+
48
99
  // Buffer
49
100
  if (CraftzdogBuffer.isBuffer(buf) || SafeBuffer.isBuffer(buf)) {
50
101
  return toArrayBuffer(buf);
@@ -58,29 +109,19 @@ export function bufferLikeToArrayBuffer(buf) {
58
109
  if (buf instanceof ArrayBuffer) {
59
110
  return buf;
60
111
  }
61
-
62
- // If buf is a SharedArrayBuffer, convert it to ArrayBuffer.
63
- // This typically involves a copy of the data.
64
- if (typeof SharedArrayBuffer !== 'undefined' && buf instanceof SharedArrayBuffer) {
65
- const arrayBuffer = new ArrayBuffer(buf.byteLength);
66
- new Uint8Array(arrayBuffer).set(new Uint8Array(buf));
67
- return arrayBuffer;
68
- }
69
-
70
- // If we reach here, 'buf' is of a type within BufferLike that has not been handled by the above checks.
71
- // This indicates either an incomplete BufferLike definition or an unexpected input type.
72
- // Throw an error to signal this, ensuring the function's contract (return ArrayBuffer or throw) is met.
73
- throw new TypeError('Input must be a Buffer, ArrayBufferView, ArrayBuffer, or SharedArrayBuffer.');
112
+ throw new TypeError('Input must be a Buffer, ArrayBufferView, or ArrayBuffer.');
74
113
  }
75
114
  export function binaryLikeToArrayBuffer(input,
76
115
  // CipherKey adds compat with node types
77
116
  encoding = 'utf-8') {
117
+ rejectSharedArrayBuffer(input);
118
+
78
119
  // string
79
120
  if (typeof input === 'string') {
80
121
  if (encoding === 'buffer') {
81
122
  throw new Error('Cannot create a buffer from a string with a buffer encoding');
82
123
  }
83
- if (nativeEncodings.has(encoding)) {
124
+ if (nativeStringToBufferEncodings.has(encoding)) {
84
125
  return utils.stringToBuffer(input, encoding);
85
126
  }
86
127
  const buffer = CraftzdogBuffer.from(input, encoding);
@@ -125,17 +166,32 @@ encoding = 'utf-8') {
125
166
  }
126
167
  throw new Error('Invalid argument type for "key". Need ArrayBuffer, TypedArray, KeyObject, CryptoKey, string');
127
168
  }
128
- const nativeEncodings = new Set(['hex', 'base64', 'base64url', 'utf8', 'utf-8', 'latin1', 'binary', 'ascii']);
129
- export function ab2str(buf, encoding = 'hex') {
130
- if (nativeEncodings.has(encoding)) {
131
- return utils.bufferToString(buf, encoding);
169
+ export function ab2str(buf, encoding = 'hex', start, end) {
170
+ if (nativeBufferToStringEncodings.has(encoding)) {
171
+ return bufferToString(buf, encoding, start, end);
132
172
  }
133
- return CraftzdogBuffer.from(buf).toString(encoding);
173
+ return CraftzdogBuffer.from(buf).toString(encoding, start, end);
134
174
  }
135
175
 
136
- /** Native C++ buffer-to-string exposed for benchmarking */
137
- export function bufferToString(buf, encoding = 'hex') {
138
- return utils.bufferToString(buf, encoding);
176
+ /** Native C++ buffer-to-string with arguments normalization*/
177
+ export function bufferToString(buf, encoding = 'hex', start, end) {
178
+ // https://github.com/nodejs/node/blob/v24.15.0/lib/buffer.js#L915-L928
179
+ if (start === undefined || start < 0) {
180
+ start = 0;
181
+ } else if (start >= buf.byteLength) {
182
+ return '';
183
+ } else {
184
+ start = Math.trunc(start) || 0;
185
+ }
186
+ if (end === undefined || end > buf.byteLength) {
187
+ end = buf.byteLength;
188
+ } else {
189
+ end = Math.trunc(end) || 0;
190
+ }
191
+ if (end <= start) {
192
+ return '';
193
+ }
194
+ return utils.bufferToString(buf, encoding, start, end);
139
195
  }
140
196
 
141
197
  /** Native C++ string-to-buffer — exposed for benchmarking */
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","CraftzdogBuffer","SafeBuffer","NitroModules","utils","createHybridObject","abvToArrayBuffer","buf","isBuffer","buffer","ArrayBuffer","isView","toArrayBuffer","slice","byteOffset","byteLength","ab","length","view","Uint8Array","i","readUInt8","bufferLikeToArrayBuffer","SharedArrayBuffer","arrayBuffer","set","TypeError","binaryLikeToArrayBuffer","input","encoding","Error","nativeEncodings","has","stringToBuffer","from","Object","prototype","toString","call","handle","exportKey","Set","ab2str","bufferToString","str","kEmptyObject","freeze","create"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","CraftzdogBuffer","SafeBuffer","NitroModules","Platform","utils","createHybridObject","isHermes","global","HermesInternal","canGetU16StringFromJsiString","constants","reactNativeVersion","major","minor","canCreateJsiStringFromUtf16","baseNativeEncodings","nativeStringToBufferEncodings","Set","nativeBufferToStringEncodings","add","rejectSharedArrayBuffer","buf","SharedArrayBuffer","TypeError","ArrayBuffer","isView","buffer","abvToArrayBuffer","isBuffer","toArrayBuffer","slice","byteOffset","byteLength","ab","length","view","Uint8Array","i","readUInt8","bufferLikeToArrayBuffer","binaryLikeToArrayBuffer","input","encoding","Error","has","stringToBuffer","from","Object","prototype","toString","call","handle","exportKey","ab2str","start","end","bufferToString","undefined","Math","trunc","str","kEmptyObject","freeze","create"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":"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","ignoreList":[]}