@gsknnft/bigint-buffer 1.4.5 → 1.4.6

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 (386) hide show
  1. package/README.md +10 -1
  2. package/build/Release/bigint_buffer.iobj +0 -0
  3. package/build/Release/bigint_buffer.ipdb +0 -0
  4. package/build/Release/bigint_buffer.node +0 -0
  5. package/build/Release/bigint_buffer.pdb +0 -0
  6. package/build/Release/obj/bigint_buffer/src/bigint-buffer.obj +0 -0
  7. package/build/Release/obj/bigint_buffer/win_delay_load_hook.obj +0 -0
  8. package/build/binding.sln +3 -3
  9. package/dist/index.cjs +1 -1
  10. package/dist/index.js +271 -186
  11. package/dist/index.umd.js +1 -1
  12. package/dist/tsconfig.tsbuildinfo +1 -1
  13. package/dist/types/conversion/index.d.ts +2 -1
  14. package/dist/types/conversion/src/ts/converter.d.ts +10 -0
  15. package/dist/types/conversion/src/ts/index.d.ts +1 -3
  16. package/dist/types/dist/dist/conversion/conversion/index.d.ts +2 -1
  17. package/package.json +11 -2
  18. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-PYrzNv/src/ts/index.js +178 -0
  19. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-PYrzNv/src/ts/index.js.map +1 -0
  20. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-h16OVM/src/ts/index.js +178 -0
  21. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-h16OVM/src/ts/index.js.map +1 -0
  22. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-uUCFYt/src/ts/index.js +178 -0
  23. package/src/conversion/.rollup.cache/C/Users/G/AppData/Local/Temp/rollup-plugin-typescript-allowjs-uUCFYt/src/ts/index.js.map +1 -0
  24. package/src/conversion/coverage/base.css +224 -0
  25. package/src/conversion/coverage/block-navigation.js +87 -0
  26. package/src/conversion/coverage/clover.xml +131 -0
  27. package/src/conversion/coverage/coverage-final.json +2 -0
  28. package/src/conversion/coverage/favicon.png +0 -0
  29. package/src/conversion/coverage/index.html +116 -0
  30. package/src/conversion/coverage/index.ts.html +1225 -0
  31. package/src/conversion/coverage/prettify.css +1 -0
  32. package/src/conversion/coverage/prettify.js +2 -0
  33. package/src/conversion/coverage/sort-arrow-sprite.png +0 -0
  34. package/src/conversion/coverage/sorter.js +210 -0
  35. package/src/conversion/index.ts +2 -1
  36. package/src/conversion/node_modules/.bin/_mocha +21 -0
  37. package/src/conversion/node_modules/.bin/_mocha.CMD +12 -0
  38. package/src/conversion/node_modules/.bin/_mocha.ps1 +41 -0
  39. package/src/conversion/node_modules/.bin/c8 +21 -0
  40. package/src/conversion/node_modules/.bin/c8.CMD +12 -0
  41. package/src/conversion/node_modules/.bin/c8.ps1 +41 -0
  42. package/src/conversion/node_modules/.bin/esbuild +21 -0
  43. package/src/conversion/node_modules/.bin/esbuild.CMD +12 -0
  44. package/src/conversion/node_modules/.bin/esbuild.ps1 +41 -0
  45. package/src/conversion/node_modules/.bin/eslint +21 -0
  46. package/src/conversion/node_modules/.bin/eslint.CMD +12 -0
  47. package/src/conversion/node_modules/.bin/eslint.ps1 +41 -0
  48. package/src/conversion/node_modules/.bin/jiti +21 -0
  49. package/src/conversion/node_modules/.bin/jiti.CMD +12 -0
  50. package/src/conversion/node_modules/.bin/jiti.ps1 +41 -0
  51. package/src/conversion/node_modules/.bin/json5 +21 -0
  52. package/src/conversion/node_modules/.bin/json5.CMD +12 -0
  53. package/src/conversion/node_modules/.bin/json5.ps1 +41 -0
  54. package/src/conversion/node_modules/.bin/mocha +21 -0
  55. package/src/conversion/node_modules/.bin/mocha.CMD +12 -0
  56. package/src/conversion/node_modules/.bin/mocha.ps1 +41 -0
  57. package/src/conversion/node_modules/.bin/npm-run-all +21 -0
  58. package/src/conversion/node_modules/.bin/npm-run-all.CMD +12 -0
  59. package/src/conversion/node_modules/.bin/npm-run-all.ps1 +41 -0
  60. package/src/conversion/node_modules/.bin/puppeteer +21 -0
  61. package/src/conversion/node_modules/.bin/puppeteer.CMD +12 -0
  62. package/src/conversion/node_modules/.bin/puppeteer.ps1 +41 -0
  63. package/src/conversion/node_modules/.bin/rimraf +16 -0
  64. package/src/conversion/node_modules/.bin/rimraf.cmd +17 -0
  65. package/src/conversion/node_modules/.bin/rimraf.ps1 +28 -0
  66. package/src/conversion/node_modules/.bin/rollup +21 -0
  67. package/src/conversion/node_modules/.bin/rollup.CMD +12 -0
  68. package/src/conversion/node_modules/.bin/rollup.ps1 +41 -0
  69. package/src/conversion/node_modules/.bin/run-p +21 -0
  70. package/src/conversion/node_modules/.bin/run-p.CMD +12 -0
  71. package/src/conversion/node_modules/.bin/run-p.ps1 +41 -0
  72. package/src/conversion/node_modules/.bin/run-s +21 -0
  73. package/src/conversion/node_modules/.bin/run-s.CMD +12 -0
  74. package/src/conversion/node_modules/.bin/run-s.ps1 +41 -0
  75. package/src/conversion/node_modules/.bin/terser +21 -0
  76. package/src/conversion/node_modules/.bin/terser.CMD +12 -0
  77. package/src/conversion/node_modules/.bin/terser.ps1 +41 -0
  78. package/src/conversion/node_modules/.bin/ts-standard +21 -0
  79. package/src/conversion/node_modules/.bin/ts-standard.CMD +12 -0
  80. package/src/conversion/node_modules/.bin/ts-standard.ps1 +41 -0
  81. package/src/conversion/node_modules/.bin/tsc +21 -0
  82. package/src/conversion/node_modules/.bin/tsc.CMD +12 -0
  83. package/src/conversion/node_modules/.bin/tsc.ps1 +41 -0
  84. package/src/conversion/node_modules/.bin/tsserver +21 -0
  85. package/src/conversion/node_modules/.bin/tsserver.CMD +12 -0
  86. package/src/conversion/node_modules/.bin/tsserver.ps1 +41 -0
  87. package/src/conversion/node_modules/.bin/typedoc +21 -0
  88. package/src/conversion/node_modules/.bin/typedoc.CMD +12 -0
  89. package/src/conversion/node_modules/.bin/typedoc.ps1 +41 -0
  90. package/src/conversion/node_modules/.bin/vite +21 -0
  91. package/src/conversion/node_modules/.bin/vite.CMD +12 -0
  92. package/src/conversion/node_modules/.bin/vite.ps1 +41 -0
  93. package/src/conversion/node_modules/.bin/vitest +21 -0
  94. package/src/conversion/node_modules/.bin/vitest.CMD +12 -0
  95. package/src/conversion/node_modules/.bin/vitest.ps1 +41 -0
  96. package/src/conversion/node_modules/.bin/yaml +21 -0
  97. package/src/conversion/node_modules/.bin/yaml.CMD +12 -0
  98. package/src/conversion/node_modules/.bin/yaml.ps1 +41 -0
  99. package/src/conversion/node_modules/glob/LICENSE.md +63 -0
  100. package/src/conversion/node_modules/glob/README.md +1177 -0
  101. package/src/conversion/node_modules/glob/dist/commonjs/glob.d.ts +388 -0
  102. package/src/conversion/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
  103. package/src/conversion/node_modules/glob/dist/commonjs/glob.js +247 -0
  104. package/src/conversion/node_modules/glob/dist/commonjs/glob.js.map +1 -0
  105. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
  106. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
  107. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  108. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
  109. package/src/conversion/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
  110. package/src/conversion/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
  111. package/src/conversion/node_modules/glob/dist/commonjs/ignore.js +119 -0
  112. package/src/conversion/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
  113. package/src/conversion/node_modules/glob/dist/commonjs/index.d.ts +97 -0
  114. package/src/conversion/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
  115. package/src/conversion/node_modules/glob/dist/commonjs/index.js +68 -0
  116. package/src/conversion/node_modules/glob/dist/commonjs/index.js.map +1 -0
  117. package/src/conversion/node_modules/glob/dist/commonjs/package.json +3 -0
  118. package/src/conversion/node_modules/glob/dist/commonjs/pattern.d.ts +76 -0
  119. package/src/conversion/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
  120. package/src/conversion/node_modules/glob/dist/commonjs/pattern.js +219 -0
  121. package/src/conversion/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
  122. package/src/conversion/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
  123. package/src/conversion/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
  124. package/src/conversion/node_modules/glob/dist/commonjs/processor.js +301 -0
  125. package/src/conversion/node_modules/glob/dist/commonjs/processor.js.map +1 -0
  126. package/src/conversion/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
  127. package/src/conversion/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
  128. package/src/conversion/node_modules/glob/dist/commonjs/walker.js +387 -0
  129. package/src/conversion/node_modules/glob/dist/commonjs/walker.js.map +1 -0
  130. package/src/conversion/node_modules/glob/dist/esm/glob.d.ts +388 -0
  131. package/src/conversion/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
  132. package/src/conversion/node_modules/glob/dist/esm/glob.js +243 -0
  133. package/src/conversion/node_modules/glob/dist/esm/glob.js.map +1 -0
  134. package/src/conversion/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
  135. package/src/conversion/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
  136. package/src/conversion/node_modules/glob/dist/esm/has-magic.js +23 -0
  137. package/src/conversion/node_modules/glob/dist/esm/has-magic.js.map +1 -0
  138. package/src/conversion/node_modules/glob/dist/esm/ignore.d.ts +24 -0
  139. package/src/conversion/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
  140. package/src/conversion/node_modules/glob/dist/esm/ignore.js +115 -0
  141. package/src/conversion/node_modules/glob/dist/esm/ignore.js.map +1 -0
  142. package/src/conversion/node_modules/glob/dist/esm/index.d.ts +97 -0
  143. package/src/conversion/node_modules/glob/dist/esm/index.d.ts.map +1 -0
  144. package/src/conversion/node_modules/glob/dist/esm/index.js +55 -0
  145. package/src/conversion/node_modules/glob/dist/esm/index.js.map +1 -0
  146. package/src/conversion/node_modules/glob/dist/esm/package.json +3 -0
  147. package/src/conversion/node_modules/glob/dist/esm/pattern.d.ts +76 -0
  148. package/src/conversion/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
  149. package/src/conversion/node_modules/glob/dist/esm/pattern.js +215 -0
  150. package/src/conversion/node_modules/glob/dist/esm/pattern.js.map +1 -0
  151. package/src/conversion/node_modules/glob/dist/esm/processor.d.ts +59 -0
  152. package/src/conversion/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
  153. package/src/conversion/node_modules/glob/dist/esm/processor.js +294 -0
  154. package/src/conversion/node_modules/glob/dist/esm/processor.js.map +1 -0
  155. package/src/conversion/node_modules/glob/dist/esm/walker.d.ts +97 -0
  156. package/src/conversion/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
  157. package/src/conversion/node_modules/glob/dist/esm/walker.js +381 -0
  158. package/src/conversion/node_modules/glob/dist/esm/walker.js.map +1 -0
  159. package/src/conversion/node_modules/glob/package.json +93 -0
  160. package/src/conversion/node_modules/minimatch/LICENSE.md +55 -0
  161. package/src/conversion/node_modules/minimatch/README.md +453 -0
  162. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  163. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  164. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  165. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  166. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.d.ts +20 -0
  167. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  168. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.js +591 -0
  169. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  170. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  171. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  172. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  173. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  174. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  175. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  176. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  177. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  178. package/src/conversion/node_modules/minimatch/dist/commonjs/index.d.ts +94 -0
  179. package/src/conversion/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  180. package/src/conversion/node_modules/minimatch/dist/commonjs/index.js +1029 -0
  181. package/src/conversion/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  182. package/src/conversion/node_modules/minimatch/dist/commonjs/package.json +3 -0
  183. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  184. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  185. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  186. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  187. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  188. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  189. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  190. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  191. package/src/conversion/node_modules/minimatch/dist/esm/ast.d.ts +20 -0
  192. package/src/conversion/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  193. package/src/conversion/node_modules/minimatch/dist/esm/ast.js +587 -0
  194. package/src/conversion/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  195. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  196. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  197. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.js +148 -0
  198. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  199. package/src/conversion/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  200. package/src/conversion/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  201. package/src/conversion/node_modules/minimatch/dist/esm/escape.js +26 -0
  202. package/src/conversion/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  203. package/src/conversion/node_modules/minimatch/dist/esm/index.d.ts +94 -0
  204. package/src/conversion/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  205. package/src/conversion/node_modules/minimatch/dist/esm/index.js +1016 -0
  206. package/src/conversion/node_modules/minimatch/dist/esm/index.js.map +1 -0
  207. package/src/conversion/node_modules/minimatch/dist/esm/package.json +3 -0
  208. package/src/conversion/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  209. package/src/conversion/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  210. package/src/conversion/node_modules/minimatch/dist/esm/unescape.js +34 -0
  211. package/src/conversion/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  212. package/src/conversion/node_modules/minimatch/package.json +78 -0
  213. package/src/conversion/node_modules/rimraf/LICENSE.md +55 -0
  214. package/src/conversion/node_modules/rimraf/README.md +226 -0
  215. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.d.ts +3 -0
  216. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.d.ts.map +1 -0
  217. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.js +58 -0
  218. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.js.map +1 -0
  219. package/src/conversion/node_modules/rimraf/dist/commonjs/error.d.ts +6 -0
  220. package/src/conversion/node_modules/rimraf/dist/commonjs/error.d.ts.map +1 -0
  221. package/src/conversion/node_modules/rimraf/dist/commonjs/error.js +10 -0
  222. package/src/conversion/node_modules/rimraf/dist/commonjs/error.js.map +1 -0
  223. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts +3 -0
  224. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts.map +1 -0
  225. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.js +38 -0
  226. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.js.map +1 -0
  227. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.d.ts +15 -0
  228. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.d.ts.map +1 -0
  229. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.js +33 -0
  230. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.js.map +1 -0
  231. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts +3 -0
  232. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts.map +1 -0
  233. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.js +24 -0
  234. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.js.map +1 -0
  235. package/src/conversion/node_modules/rimraf/dist/commonjs/index.d.ts +50 -0
  236. package/src/conversion/node_modules/rimraf/dist/commonjs/index.d.ts.map +1 -0
  237. package/src/conversion/node_modules/rimraf/dist/commonjs/index.js +78 -0
  238. package/src/conversion/node_modules/rimraf/dist/commonjs/index.js.map +1 -0
  239. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.d.ts +34 -0
  240. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.d.ts.map +1 -0
  241. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.js +53 -0
  242. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.js.map +1 -0
  243. package/src/conversion/node_modules/rimraf/dist/commonjs/package.json +3 -0
  244. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.d.ts +4 -0
  245. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.d.ts.map +1 -0
  246. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.js +48 -0
  247. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.js.map +1 -0
  248. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts +3 -0
  249. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts.map +1 -0
  250. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.js +19 -0
  251. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.js.map +1 -0
  252. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.d.ts +8 -0
  253. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.d.ts.map +1 -0
  254. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.js +65 -0
  255. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.js.map +1 -0
  256. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts +3 -0
  257. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts.map +1 -0
  258. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.js +8 -0
  259. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.js.map +1 -0
  260. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts +4 -0
  261. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts.map +1 -0
  262. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js +138 -0
  263. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js.map +1 -0
  264. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts +4 -0
  265. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts.map +1 -0
  266. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.js +24 -0
  267. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.js.map +1 -0
  268. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts +4 -0
  269. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts.map +1 -0
  270. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.js +103 -0
  271. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.js.map +1 -0
  272. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts +4 -0
  273. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts.map +1 -0
  274. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.js +159 -0
  275. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.js.map +1 -0
  276. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.d.ts +4 -0
  277. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.d.ts.map +1 -0
  278. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.js +18 -0
  279. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.js.map +1 -0
  280. package/src/conversion/node_modules/rimraf/dist/esm/bin.d.mts +3 -0
  281. package/src/conversion/node_modules/rimraf/dist/esm/bin.d.mts.map +1 -0
  282. package/src/conversion/node_modules/rimraf/dist/esm/bin.mjs +250 -0
  283. package/src/conversion/node_modules/rimraf/dist/esm/bin.mjs.map +1 -0
  284. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.d.ts +3 -0
  285. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.d.ts.map +1 -0
  286. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.js +55 -0
  287. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.js.map +1 -0
  288. package/src/conversion/node_modules/rimraf/dist/esm/error.d.ts +6 -0
  289. package/src/conversion/node_modules/rimraf/dist/esm/error.d.ts.map +1 -0
  290. package/src/conversion/node_modules/rimraf/dist/esm/error.js +5 -0
  291. package/src/conversion/node_modules/rimraf/dist/esm/error.js.map +1 -0
  292. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.d.ts +3 -0
  293. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.d.ts.map +1 -0
  294. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.js +33 -0
  295. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.js.map +1 -0
  296. package/src/conversion/node_modules/rimraf/dist/esm/fs.d.ts +15 -0
  297. package/src/conversion/node_modules/rimraf/dist/esm/fs.d.ts.map +1 -0
  298. package/src/conversion/node_modules/rimraf/dist/esm/fs.js +18 -0
  299. package/src/conversion/node_modules/rimraf/dist/esm/fs.js.map +1 -0
  300. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.d.ts +3 -0
  301. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.d.ts.map +1 -0
  302. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.js +19 -0
  303. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.js.map +1 -0
  304. package/src/conversion/node_modules/rimraf/dist/esm/index.d.ts +50 -0
  305. package/src/conversion/node_modules/rimraf/dist/esm/index.d.ts.map +1 -0
  306. package/src/conversion/node_modules/rimraf/dist/esm/index.js +70 -0
  307. package/src/conversion/node_modules/rimraf/dist/esm/index.js.map +1 -0
  308. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.d.ts +34 -0
  309. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.d.ts.map +1 -0
  310. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.js +46 -0
  311. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.js.map +1 -0
  312. package/src/conversion/node_modules/rimraf/dist/esm/package.json +3 -0
  313. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.d.ts +4 -0
  314. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.d.ts.map +1 -0
  315. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.js +46 -0
  316. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.js.map +1 -0
  317. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.d.ts +3 -0
  318. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.d.ts.map +1 -0
  319. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.js +14 -0
  320. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.js.map +1 -0
  321. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.d.ts +8 -0
  322. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.d.ts.map +1 -0
  323. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.js +60 -0
  324. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.js.map +1 -0
  325. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.d.ts +3 -0
  326. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.d.ts.map +1 -0
  327. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.js +5 -0
  328. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.js.map +1 -0
  329. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts +4 -0
  330. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts.map +1 -0
  331. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.js +133 -0
  332. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.js.map +1 -0
  333. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.d.ts +4 -0
  334. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.d.ts.map +1 -0
  335. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.js +19 -0
  336. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.js.map +1 -0
  337. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.d.ts +4 -0
  338. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.d.ts.map +1 -0
  339. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.js +98 -0
  340. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.js.map +1 -0
  341. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.d.ts +4 -0
  342. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.d.ts.map +1 -0
  343. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.js +154 -0
  344. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.js.map +1 -0
  345. package/src/conversion/node_modules/rimraf/dist/esm/use-native.d.ts +4 -0
  346. package/src/conversion/node_modules/rimraf/dist/esm/use-native.d.ts.map +1 -0
  347. package/src/conversion/node_modules/rimraf/dist/esm/use-native.js +15 -0
  348. package/src/conversion/node_modules/rimraf/dist/esm/use-native.js.map +1 -0
  349. package/src/conversion/node_modules/rimraf/package.json +92 -0
  350. package/src/conversion/package.json +4 -13
  351. package/src/conversion/src/ts/converter.ts +85 -0
  352. package/src/conversion/src/ts/fixedPoint/index.ts +87 -87
  353. package/src/conversion/src/ts/index.ts +5 -34
  354. package/src/conversion/tsconfig.json +1 -1
  355. package/src/conversion/vite.config.ts +38 -1
  356. package/src/index.ts +167 -39
  357. package/build/conversion/index.js +0 -18
  358. package/build/conversion/index.js.map +0 -1
  359. package/build/conversion/src/ts/fixedPoint/index.d.ts +0 -12
  360. package/build/conversion/src/ts/fixedPoint/index.js +0 -79
  361. package/build/conversion/src/ts/fixedPoint/index.js.map +0 -1
  362. package/build/conversion/src/ts/index.d.ts +0 -169
  363. package/build/conversion/src/ts/index.js +0 -453
  364. package/build/conversion/src/ts/index.js.map +0 -1
  365. package/build/conversion/test/bigintToBase64.test.js +0 -72
  366. package/build/conversion/test/bigintToBase64.test.js.map +0 -1
  367. package/build/conversion/test/bigintToBuf.test.js +0 -77
  368. package/build/conversion/test/bigintToBuf.test.js.map +0 -1
  369. package/build/conversion/test/bigintToHex.test.js +0 -86
  370. package/build/conversion/test/bigintToHex.test.js.map +0 -1
  371. package/build/conversion/test/bigintToText.test.js +0 -63
  372. package/build/conversion/test/bigintToText.test.js.map +0 -1
  373. package/build/conversion/test/bufToBigint.test.js +0 -55
  374. package/build/conversion/test/bufToBigint.test.js.map +0 -1
  375. package/build/conversion/test/hexToBigint.test.js +0 -56
  376. package/build/conversion/test/hexToBigint.test.js.map +0 -1
  377. package/build/conversion/test/hexToBuf.test.js +0 -73
  378. package/build/conversion/test/hexToBuf.test.js.map +0 -1
  379. package/build/conversion/test/parseHex.test.js +0 -69
  380. package/build/conversion/test/parseHex.test.js.map +0 -1
  381. package/build/conversion/test/textToBuf.test.js +0 -59
  382. package/build/conversion/test/textToBuf.test.js.map +0 -1
  383. package/build/index.js +0 -242
  384. package/build/index.js.map +0 -1
  385. package/src/conversion/tsconfig.rollup.json +0 -9
  386. package/src/conversion/types/bindings.d.t.s +0 -4
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Secure BigInt ⇆ Buffer conversion with native bindings, browser fallbacks, and the `bigint-conversion` helper APIs built in. This is the actively maintained fork of the original `bigint-buffer`.
7
7
 
8
- **Upgrade notice:** `1.4.5` adds FixedPoint utilities, native bindings in `build/Release/` out of the box, and improved JS fallback for environments without native support. CI-verified for Node 20–24. All users should upgrade for best compatibility and new features.
8
+ **Upgrade notice:** The current 1.4.x line ships chunked, allocation-free BE/LE converters (Buffer.read/writeBigUInt64* when available) that are fuzzed across empty, tiny, and huge buffers, alongside FixedPoint utilities and packaged native bindings. CI-verified for Node 20–24. Upgrade for the fastest conversions and consistent behaviour across environments.
9
9
 
10
10
  [![NPM Version](https://img.shields.io/npm/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://www.npmjs.com/package/@gsknnft/bigint-buffer)
11
11
  [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
@@ -52,6 +52,15 @@ const sum = addFixedPoint(fp, fp); // Add two FixedPoints
52
52
  const avg = averageFixedPoint([fp, fp]); // Average FixedPoints
53
53
  ```
54
54
 
55
+ ### Performance
56
+ - BE/LE conversions now stream bytes directly from buffers (64-bit chunks via Buffer.read/writeBigUInt64* when available) with no intermediate hex copies.
57
+ - JS fallback matches the native binding semantics and is exercised against empty, tiny, and very large inputs in CI.
58
+ - Native bindings still load automatically when present; the optimized fallback keeps browser and non-native runtimes fast.
59
+ - Browser bundlers must polyfill Node built-ins: add a node polyfill plugin (e.g. `rollup-plugin-polyfill-node`) or explicit aliases for `buffer`, `path`, and `fs` so the fallback loader can resolve.
60
+
61
+ ### Pushing Performance Further
62
+ - For very large buffers, consider enabling the native binding (included in npm tarball) or adding SIMD/native glue in your host app if you need throughput beyond JS.
63
+
55
64
  ### Conversion Utilities
56
65
  ```ts
57
66
  import { conversionUtils } from "@gsknnft/bigint-buffer";
Binary file
Binary file
Binary file
Binary file
package/build/binding.sln CHANGED
@@ -4,14 +4,14 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bigint_buffer", "bigint_buf
4
4
  EndProject
5
5
  Global
6
6
  GlobalSection(SolutionConfigurationPlatforms) = preSolution
7
- Debug|x64 = Debug|x64
8
7
  Release|x64 = Release|x64
8
+ Debug|x64 = Debug|x64
9
9
  EndGlobalSection
10
10
  GlobalSection(ProjectConfigurationPlatforms) = postSolution
11
- {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.ActiveCfg = Debug|x64
12
- {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.Build.0 = Debug|x64
13
11
  {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.ActiveCfg = Release|x64
14
12
  {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.Build.0 = Release|x64
13
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.ActiveCfg = Debug|x64
14
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.Build.0 = Debug|x64
15
15
  EndGlobalSection
16
16
  GlobalSection(SolutionProperties) = preSolution
17
17
  HideSolutionNode = FALSE
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("buffer"),B=require("path"),M=require("fs"),p=require("#pkg"),T=9,l="0x0",P=t=>t.startsWith("0x")||t.startsWith("0X")?t:`0x${t}`,d=t=>{if(t===0n)return l;const e=t<0n,n=e?-t:t,r=p.bigintToHex(n);return`${e?"-":""}0x${r}`},u=t=>{if(!t)return 0n;const e=t.trim();if(e.length===0)return 0n;const n=e.startsWith("-"),r=n?e.slice(1):e,i=P(r),g=p.hexToBigint(i);return n?-g:g};function H(t,e=T){if(!Number.isFinite(t))return l;const n=Math.pow(10,e),r=BigInt(Math.round(t*n));return d(r)}function V(t,e=T){const n=u(t);if(n===0n)return 0;const r=Math.pow(10,e);return Number(n)/r}function q(t,e){return d(u(t)+u(e))}function z(t,e){return d(u(t)-u(e))}function W(t){if(t.length===0)return l;const e=t.reduce((n,r)=>n+u(r),0n);return d(e/BigInt(t.length))}function j(t,e){const n=u(t)-u(e);return n===0n?0:n>0n?1:-1}function D(t){return u(t)}let b=!1,f,h;const a=typeof globalThis<"u"&&typeof globalThis.document<"u",v=[B.resolve(__dirname,".."),B.resolve(__dirname,"../../.."),B.resolve(__dirname,"../../../../")],X=()=>{for(const t of v){const e=B.join(t,"build","Release","bigint_buffer.node");if(M.existsSync(e))return t}return v[0]};function Z(){try{const t=require("bindings"),e=X();return t({bindings:"bigint_buffer",module_root:e})}catch(t){h=t;return}}a||(f=Z(),b=f!==void 0,!b&&h!==void 0&&process.env?.BIGINT_BUFFER_SILENT_NATIVE_FAIL!=="1"&&console.warn("bigint-buffer: Failed to load native bindings; using pure JS fallback. Run npm run rebuild to restore native.",h));f===void 0&&(f={toBigInt:(t,e=!0)=>{const n=o.Buffer.from(t);e||n.reverse();const r=n.toString("hex");return r.length===0?0n:BigInt(`0x${r}`)},fromBigInt:(t,e,n=!0)=>{const r=t.toString(16),i=e.length,g=r.padStart(i*2,"0").slice(0,i*2),m=o.Buffer.from(g,"hex");return n||m.reverse(),m.copy(e),e}});function w(t){if(a||f===void 0){const e=o.Buffer.from(t);e.reverse();const n=e.toString("hex");return n.length===0?BigInt(0):BigInt(`0x${n}`)}return f.toBigInt(t,!1)}function k(){try{return w(o.Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function J(t){if(a||f===void 0){const e=t.toString("hex");return e.length===0?BigInt(0):BigInt(`0x${e}`)}return f.toBigInt(t,!0)}function C(t,e){if(a||f===void 0){const n=t.toString(16),r=o.Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex");return r.reverse(),r}return f.fromBigInt(t,o.Buffer.allocUnsafe(e),!1)}function G(t,e){if(a||f===void 0){const n=t.toString(16);return o.Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex")}return f.fromBigInt(t,o.Buffer.allocUnsafe(e),!0)}function c(t,e=!1,n){const r=t.match(/^(0x)?([\da-fA-F]+)$/);if(r==null)throw new RangeError("input must be a hexadecimal string, e.g. '0x124fe3a' or '0214f1b2'");let i=r[2];if(n!==void 0){if(n<i.length/2)throw new RangeError(`expected byte length ${n} < input hex byte length ${Math.ceil(i.length/2)}`);i=i.padStart(n*2,"0")}return e?"0x"+i:i}function E(t,e=!1){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return I(S(t),e)}function y(t){let e=8n;ArrayBuffer.isView(t)?e=BigInt(t.BYTES_PER_ELEMENT*8):t=new Uint8Array(t);let n=0n;for(const r of t.values()){const i=BigInt(r);n=(n<<e)+i}return n}function S(t,e=!1,n){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return c(t.toString(16),e,n)}function $(t){return BigInt(c(t,!0))}function Y(t){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return _(I(t.toString(16)))}function K(t){return $(N(A(t)))}function x(t){if(o.Buffer.isBuffer(t))return t;if(ArrayBuffer.isView(t))return o.Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(t instanceof ArrayBuffer)return o.Buffer.from(new Uint8Array(t));throw new TypeError("Unsupported input type for Buffer.from")}function _(t){const e=x(t);return a?new TextDecoder().decode(new Uint8Array(e)):o.Buffer.from(e).toString()}function A(t,e=!1){return!a&&!e?o.Buffer.from(new TextEncoder().encode(t).buffer):new TextEncoder().encode(t).buffer}function N(t,e=!1,n){if(a){let r="";const i="0123456789abcdef";return ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)):t=new Uint8Array(t),t.forEach(g=>{r+=i[g>>4]+i[g&15]}),c(r,e,n)}else{const r=x(t);return ArrayBuffer.isView(r)&&(t=new Uint8Array(r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength))),c(o.Buffer.from(x(t)).toString("hex"),e,n)}}function I(t,e=!1){let n=c(t);if(n=c(t,!1,Math.ceil(n.length/2)),a)return Uint8Array.from(n.match(/[\da-fA-F]{2}/g).map(r=>+("0x"+r))).buffer;{const r=o.Buffer.from(n,"hex");return e?r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):r}}function Q(t,e=!1,n=!0){if(t<0n)throw new RangeError("negative bigint");const r=E(t);let i=o.Buffer.isBuffer(r)?r.toString("base64"):o.Buffer.from(r).toString("base64");return e&&(i=i.replace(/\+/g,"-").replace(/\//g,"_")),n||(i=i.replace(/=+$/,"")),i}function tt(t){if(!t||t.trim()==="")return 0n;const e=t.trim();if(!/^[A-Za-z0-9+/=_-]*$/.test(e))throw new RangeError("invalid base64");let n=e.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";const r=o.Buffer.from(n,"base64");return y(r)}const et=Object.freeze(Object.defineProperty({__proto__:null,FIXED_POINT_DECIMALS:T,ZERO_FIXED_POINT:l,addFixedPoint:q,averageFixedPoint:W,base64ToBigint:tt,bigintToBase64:Q,bigintToBuf:E,bigintToHex:S,bigintToText:Y,bufToBigint:y,bufToHex:N,bufToText:_,compareFixedPoint:j,fixedPointToBigInt:D,fromFixedPoint:V,hexToBigint:$,hexToBuf:I,get isNative(){return b},parseHex:c,subtractFixedPoint:z,textToBigint:K,textToBuf:A,toBigIntBE:J,toBigIntLE:w,toBigIntValue:u,toBufferBE:G,toBufferLE:C,toFixedPoint:H,validateBigIntBuffer:k},Symbol.toStringTag,{value:"Module"}));let s;exports.isNative=!1;if(typeof window>"u")try{s=require("bindings")("bigint_buffer"),exports.isNative=s!==void 0}catch(t){console.warn("bigint: Failed to load bindings, pure JS will be used (try npm run rebuild?)",t)}function R(t){if(typeof window<"u"||s===void 0){const e=Buffer.from(t);e.reverse();const n=e.toString("hex");return n.length===0?BigInt(0):BigInt(`0x${n}`)}return s.toBigInt(t,!1)}function nt(){try{return R(Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function F(t){if(typeof window<"u"||s===void 0){const e=t.toString("hex");return e.length===0?BigInt(0):BigInt(`0x${e}`)}return s.toBigInt(t,!0)}function rt(t,e){if(typeof window<"u"||s===void 0){const n=t.toString(16),r=Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex");return r.reverse(),r}return s.fromBigInt(t,Buffer.allocUnsafe(e),!1)}function O(t,e){if(typeof window<"u"||s===void 0){const n=t.toString(16);return Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex")}return s.fromBigInt(t,Buffer.allocUnsafe(e),!0)}function U(t){if(t<BigInt(0))throw new Error("bigintToBuf: negative bigint values are not supported");if(t===BigInt(0))return Buffer.from([0]);const e=t.toString(16),n=Math.ceil(e.length/2);return O(t,n)}function L(t){return F(t)}function it(t){if(t<BigInt(0))throw new Error("bigintToHex: negative bigint values are not supported");const e=t.toString(16);return e.length%2===0?e:"0"+e}function ot(t){const e=t.startsWith("0x")?t.slice(2):t;return e.length===0?BigInt(0):BigInt(`0x${e}`)}function ft(t){return t.toString(10)}function ut(t){if(!t?.trim())throw new Error("textToBigint: input string cannot be empty");try{return BigInt(t)}catch(e){throw new Error(`textToBigint: invalid decimal string "${t}" ${e instanceof Error?e.message:String(e)}`)}}function st(t){if(t<BigInt(0))throw new Error("bigintToBase64: negative bigint values are not supported");return U(t).toString("base64")}function at(t){if(!t?.trim())throw new Error("base64ToBigint: input string cannot be empty");const e=t.trim();if(!/^[A-Za-z0-9+/]+=*$/.test(e))throw new Error("base64ToBigint: invalid base64 string format");const n=Buffer.from(e,"base64");return L(n)}exports.base64ToBigint=at;exports.bigintToBase64=st;exports.bigintToBuf=U;exports.bigintToHex=it;exports.bigintToText=ft;exports.bufToBigint=L;exports.conversionUtils=et;exports.hexToBigint=ot;exports.textToBigint=ut;exports.toBigIntBE=F;exports.toBigIntLE=R;exports.toBufferBE=O;exports.toBufferLE=rt;exports.validateBigIntBuffer=nt;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("buffer"),l=require("path"),H=require("fs");let w=!1,B,h;const u=typeof globalThis<"u"&&typeof globalThis.document<"u",y=[l.resolve(__dirname,"../"),l.resolve(__dirname,"../.."),l.resolve(__dirname,"../../../")],_=()=>{for(const t of y){const e=l.join(t,"build","Release","bigint_buffer.node");if(H.existsSync(e))return t}return y[0]};function W(){try{const t=require("bindings"),e=_();return t({bindings:"bigint_buffer",module_root:e})}catch(t){h=t;return}}u||(B=W(),w=B!==void 0,!w&&h!==void 0&&process.env?.BIGINT_BUFFER_SILENT_NATIVE_FAIL!=="1"&&console.warn("bigint-buffer: Failed to load native bindings; using pure JS fallback. Run npm run rebuild to restore native.",h));B===void 0&&(B={toBigInt:(t,e=!0)=>{const n=v.Buffer.from(t);e||n.reverse();const r=n.toString("hex");return r.length===0?0n:BigInt(`0x${r}`)},fromBigInt:(t,e,n=!0)=>{const r=t.toString(16),i=e.length,o=r.padStart(i*2,"0").slice(0,i*2),c=v.Buffer.from(o,"hex");return n||c.reverse(),c.copy(e),e}});const x=9,d="0x0",q=t=>t.startsWith("0x")||t.startsWith("0X")?t:`0x${t}`,b=t=>{if(t===0n)return d;const e=t<0n,n=e?-t:t,r=E(n);return`${e?"-":""}0x${r}`},s=t=>{if(!t)return 0n;const e=t.trim();if(e.length===0)return 0n;const n=e.startsWith("-"),r=n?e.slice(1):e,i=q(r),o=T(i);return n?-o:o};function j(t,e=x){if(!Number.isFinite(t))return d;const n=Math.pow(10,e),r=BigInt(Math.round(t*n));return b(r)}function k(t,e=x){const n=s(t);if(n===0n)return 0;const r=Math.pow(10,e);return Number(n)/r}function z(t,e){return b(s(t)+s(e))}function D(t,e){return b(s(t)-s(e))}function C(t){if(t.length===0)return d;const e=t.reduce((n,r)=>n+s(r),0n);return b(e/BigInt(t.length))}function J(t,e){const n=s(t)-s(e);return n===0n?0:n>0n?1:-1}function X(t){return s(t)}let f,I;function Z(){try{const t=require("bindings"),e=_();return t({bindings:"bigint_buffer",module_root:e})}catch(t){I=t;return}}let S=!1;u||(f=Z(),S=f!==void 0,!S&&I!==void 0&&process.env?.BIGINT_BUFFER_SILENT_NATIVE_FAIL!=="1"&&console.warn("bigint-buffer: Failed to load native bindings; using pure JS fallback. Run npm run rebuild to restore native.",I));f===void 0&&(f={toBigInt:(t,e=!0)=>{const n=Buffer.from(t);e||n.reverse();const r=n.toString("hex");return r.length===0?0n:BigInt(`0x${r}`)},fromBigInt:(t,e,n=!0)=>{const r=t.toString(16),i=e.length,o=r.padStart(i*2,"0").slice(0,i*2),c=Buffer.from(o,"hex");return n||c.reverse(),c.copy(e),e}});function $(t){if(u||f===void 0){const e=Buffer.from(t);e.reverse();const n=e.toString("hex");return n.length===0?BigInt(0):BigInt(`0x${n}`)}return f.toBigInt(t,!1)}function G(){try{return $(Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function Y(t){if(u||f===void 0){const e=t.toString("hex");return e.length===0?BigInt(0):BigInt(`0x${e}`)}return f.toBigInt(t,!0)}function K(t,e){if(u||f===void 0){const n=t.toString(16),r=Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex");return r.reverse(),r}return f.fromBigInt(t,Buffer.allocUnsafe(e),!1)}function Q(t,e){if(u||f===void 0){const n=t.toString(16);return Buffer.from(n.padStart(e*2,"0").slice(0,e*2),"hex")}return f.fromBigInt(t,Buffer.allocUnsafe(e),!0)}function a(t,e=!1,n){const r=t.match(/^(0x)?([\da-fA-F]+)$/);if(r==null)throw new RangeError("input must be a hexadecimal string, e.g. '0x124fe3a' or '0214f1b2'");let i=r[2];if(n!==void 0){if(n<i.length/2)throw new RangeError(`expected byte length ${n} < input hex byte length ${Math.ceil(i.length/2)}`);i=i.padStart(n*2,"0")}return e?"0x"+i:i}function L(t,e=!1){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return p(E(t),e)}function N(t){let e=8n;ArrayBuffer.isView(t)?e=BigInt(t.BYTES_PER_ELEMENT*8):t=new Uint8Array(t);let n=0n;for(const r of t.values()){const i=BigInt(r);n=(n<<e)+i}return n}function E(t,e=!1,n){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return a(t.toString(16),e,n)}function T(t){return BigInt(a(t,!0))}function tt(t){if(t<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return R(p(t.toString(16)))}function et(t){return T(A(U(t)))}function m(t){if(Buffer.isBuffer(t))return t;if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(t instanceof ArrayBuffer)return Buffer.from(new Uint8Array(t));throw new TypeError("Unsupported input type for Buffer.from")}function R(t){const e=m(t);return u?new TextDecoder().decode(new Uint8Array(e)):Buffer.from(e).toString()}function U(t,e=!1){return!u&&!e?Buffer.from(new TextEncoder().encode(t).buffer):new TextEncoder().encode(t).buffer}function A(t,e=!1,n){if(u){let r="";const i="0123456789abcdef";return ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)):t=new Uint8Array(t),t.forEach(o=>{r+=i[o>>4]+i[o&15]}),a(r,e,n)}else{const r=m(t);return ArrayBuffer.isView(r)&&(t=new Uint8Array(r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength))),a(Buffer.from(m(t)).toString("hex"),e,n)}}function p(t,e=!1){let n=a(t);if(n=a(t,!1,Math.ceil(n.length/2)),u)return Uint8Array.from(n.match(/[\da-fA-F]{2}/g).map(r=>+("0x"+r))).buffer;{const r=Buffer.from(n,"hex");return e?r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):r}}function nt(t,e=!1,n=!0){if(t<0n)throw new RangeError("negative bigint");const r=L(t);let i=Buffer.isBuffer(r)?r.toString("base64"):Buffer.from(r).toString("base64");return e&&(i=i.replace(/\+/g,"-").replace(/\//g,"_")),n||(i=i.replace(/=+$/,"")),i}function rt(t){if(!t||t.trim()==="")return 0n;const e=t.trim();if(!/^[A-Za-z0-9+/=_-]*$/.test(e))throw new RangeError("invalid base64");let n=e.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";const r=Buffer.from(n,"base64");return N(r)}const it=Object.freeze(Object.defineProperty({__proto__:null,FIXED_POINT_DECIMALS:x,ZERO_FIXED_POINT:d,addFixedPoint:z,averageFixedPoint:C,base64ToBigint:rt,bigintToBase64:nt,bigintToBuf:L,bigintToHex:E,bigintToText:tt,bufToBigint:N,bufToHex:A,bufToText:R,compareFixedPoint:J,fixedPointToBigInt:X,fromFixedPoint:k,hexToBigint:T,hexToBuf:p,parseHex:a,subtractFixedPoint:D,textToBigint:et,textToBuf:U,toBigIntBE:Y,toBigIntLE:$,toBigIntValue:s,toBufferBE:Q,toBufferLE:K,toFixedPoint:j,validateBigIntBuffer:G},Symbol.toStringTag,{value:"Module"})),ot=typeof Buffer.prototype.readBigUInt64LE=="function",ft=typeof Buffer.prototype.readBigUInt64BE=="function",st=typeof Buffer.prototype.writeBigUInt64LE=="function",ut=typeof Buffer.prototype.writeBigUInt64BE=="function",ct=ot?(t,e)=>t.readBigUInt64LE(e):(t,e)=>{let n=0n;for(let r=7;r>=0;r--)n=(n<<8n)+BigInt(t[e+r]);return n},at=ft?(t,e)=>t.readBigUInt64BE(e):(t,e)=>{let n=0n;for(let r=0;r<8;r++)n=(n<<8n)+BigInt(t[e+r]);return n},gt=st?(t,e,n)=>{t.writeBigUInt64LE(n,e)}:(t,e,n)=>{let r=n;for(let i=0;i<8;i++)t[e+i]=Number(r&0xffn),r>>=8n},lt=ut?(t,e,n)=>{t.writeBigUInt64BE(n,e)}:(t,e,n)=>{let r=n;for(let i=7;i>=0;i--)t[e+i]=Number(r&0xffn),r>>=8n},Bt=t=>{let e=0n,n=1n;const r=t.length,i=r&7;for(let o=0;o<i;o++)e+=BigInt(t[o])*n,n<<=8n;for(let o=i;o<r;o+=8){const c=ct(t,o);e+=c*n,n<<=64n}return e},dt=t=>{const e=t.length;if(e===0)return 0n;let n=0n;const r=e&7;let i=0;if(r!==0)for(;i<r;i++)n=(n<<8n)+BigInt(t[i]);for(;i<e;i+=8){const o=at(t,i);n=(n<<64n)+o}return n},bt=(t,e)=>{const n=e.length;let r=t,i=0;const o=n-n%8;for(;i<o;i+=8)gt(e,i,r&0xffffffffffffffffn),r>>=64n;for(;i<n;i++)e[i]=Number(r&0xffn),r>>=8n;return e},ht=(t,e)=>{const n=e.length;let r=t,i=n;const o=n&-8;for(;i>o;)i--,e[i]=Number(r&0xffn),r>>=8n;for(;i>0;i-=8){const c=r&0xffffffffffffffffn;lt(e,i-8,c),r>>=64n}return e},It=t=>{if(t===0n)return 1;let e=t,n=0;for(;e>0n;)n++,e>>=8n;return n},mt={toBigInt:(t,e=!0)=>e?dt(t):Bt(t),fromBigInt:(t,e,n=!0)=>n?ht(t,e):bt(t,e)};let g=mt;exports.isNative=!1;if(typeof window>"u")try{const t=require("bindings")("bigint_buffer");t!==void 0&&(g=t,exports.isNative=!0)}catch(t){console.warn("bigint: Failed to load bindings, pure JS will be used (try npm run rebuild?)",t)}function F(t){return g.toBigInt(t,!1)}function xt(){try{return F(Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function O(t){return g.toBigInt(t,!0)}function Et(t,e){if(e<0)throw new RangeError("toBufferLE width must be non-negative");const n=e===0?Buffer.alloc(0):Buffer.allocUnsafe(e);return g.fromBigInt(t,n,!1)}function P(t,e){if(e<0)throw new RangeError("toBufferBE width must be non-negative");const n=e===0?Buffer.alloc(0):Buffer.allocUnsafe(e);return g.fromBigInt(t,n,!0)}function M(t){if(t<BigInt(0))throw new Error("bigintToBuf: negative bigint values are not supported");const e=It(t);return P(t,e)}function V(t){return O(t)}function Tt(t){if(t<BigInt(0))throw new Error("bigintToHex: negative bigint values are not supported");const e=t.toString(16);return e.length%2===0?e:"0"+e}function pt(t){const e=t.startsWith("0x")?t.slice(2):t;return e.length===0?BigInt(0):BigInt(`0x${e}`)}function vt(t){return t.toString(10)}function wt(t){if(!t?.trim())throw new Error("textToBigint: input string cannot be empty");try{return BigInt(t)}catch(e){throw new Error(`textToBigint: invalid decimal string "${t}" ${e instanceof Error?e.message:String(e)}`)}}function yt(t){if(t<BigInt(0))throw new Error("bigintToBase64: negative bigint values are not supported");return M(t).toString("base64")}function St(t){if(!t?.trim())throw new Error("base64ToBigint: input string cannot be empty");const e=t.trim();if(!/^[A-Za-z0-9+/]+=*$/.test(e))throw new Error("base64ToBigint: invalid base64 string format");const n=Buffer.from(e,"base64");return V(n)}exports.base64ToBigint=St;exports.bigintToBase64=yt;exports.bigintToBuf=M;exports.bigintToHex=Tt;exports.bigintToText=vt;exports.bufToBigint=V;exports.conversionUtils=it;exports.hexToBigint=pt;exports.textToBigint=wt;exports.toBigIntBE=O;exports.toBigIntLE=F;exports.toBufferBE=P;exports.toBufferLE=Et;exports.validateBigIntBuffer=xt;