@gsknnft/bigint-buffer 1.4.4 → 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 (361) hide show
  1. package/README.md +107 -90
  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/dist/index.cjs +1 -1
  9. package/dist/index.js +352 -210
  10. package/dist/index.umd.js +1 -1
  11. package/dist/tsconfig.tsbuildinfo +1 -1
  12. package/dist/types/conversion/index.d.ts +2 -1
  13. package/dist/types/conversion/src/ts/converter.d.ts +10 -0
  14. package/dist/types/conversion/src/ts/fixedPoint/index.d.ts +12 -0
  15. package/dist/types/conversion/src/ts/index.d.ts +1 -2
  16. package/dist/types/dist/dist/conversion/conversion/index.d.ts +2 -1
  17. package/package.json +141 -132
  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/docs/README.md +9 -1
  36. package/src/conversion/index.ts +2 -1
  37. package/src/conversion/node_modules/.bin/_mocha +21 -0
  38. package/src/conversion/node_modules/.bin/_mocha.CMD +12 -0
  39. package/src/conversion/node_modules/.bin/_mocha.ps1 +41 -0
  40. package/src/conversion/node_modules/.bin/c8 +21 -0
  41. package/src/conversion/node_modules/.bin/c8.CMD +12 -0
  42. package/src/conversion/node_modules/.bin/c8.ps1 +41 -0
  43. package/src/conversion/node_modules/.bin/esbuild +21 -0
  44. package/src/conversion/node_modules/.bin/esbuild.CMD +12 -0
  45. package/src/conversion/node_modules/.bin/esbuild.ps1 +41 -0
  46. package/src/conversion/node_modules/.bin/eslint +21 -0
  47. package/src/conversion/node_modules/.bin/eslint.CMD +12 -0
  48. package/src/conversion/node_modules/.bin/eslint.ps1 +41 -0
  49. package/src/conversion/node_modules/.bin/jiti +21 -0
  50. package/src/conversion/node_modules/.bin/jiti.CMD +12 -0
  51. package/src/conversion/node_modules/.bin/jiti.ps1 +41 -0
  52. package/src/conversion/node_modules/.bin/json5 +21 -0
  53. package/src/conversion/node_modules/.bin/json5.CMD +12 -0
  54. package/src/conversion/node_modules/.bin/json5.ps1 +41 -0
  55. package/src/conversion/node_modules/.bin/mocha +21 -0
  56. package/src/conversion/node_modules/.bin/mocha.CMD +12 -0
  57. package/src/conversion/node_modules/.bin/mocha.ps1 +41 -0
  58. package/src/conversion/node_modules/.bin/npm-run-all +21 -0
  59. package/src/conversion/node_modules/.bin/npm-run-all.CMD +12 -0
  60. package/src/conversion/node_modules/.bin/npm-run-all.ps1 +41 -0
  61. package/src/conversion/node_modules/.bin/puppeteer +21 -0
  62. package/src/conversion/node_modules/.bin/puppeteer.CMD +12 -0
  63. package/src/conversion/node_modules/.bin/puppeteer.ps1 +41 -0
  64. package/src/conversion/node_modules/.bin/rimraf +16 -0
  65. package/src/conversion/node_modules/.bin/rimraf.cmd +17 -0
  66. package/src/conversion/node_modules/.bin/rimraf.ps1 +28 -0
  67. package/src/conversion/node_modules/.bin/rollup +21 -0
  68. package/src/conversion/node_modules/.bin/rollup.CMD +12 -0
  69. package/src/conversion/node_modules/.bin/rollup.ps1 +41 -0
  70. package/src/conversion/node_modules/.bin/run-p +21 -0
  71. package/src/conversion/node_modules/.bin/run-p.CMD +12 -0
  72. package/src/conversion/node_modules/.bin/run-p.ps1 +41 -0
  73. package/src/conversion/node_modules/.bin/run-s +21 -0
  74. package/src/conversion/node_modules/.bin/run-s.CMD +12 -0
  75. package/src/conversion/node_modules/.bin/run-s.ps1 +41 -0
  76. package/src/conversion/node_modules/.bin/terser +21 -0
  77. package/src/conversion/node_modules/.bin/terser.CMD +12 -0
  78. package/src/conversion/node_modules/.bin/terser.ps1 +41 -0
  79. package/src/conversion/node_modules/.bin/ts-standard +21 -0
  80. package/src/conversion/node_modules/.bin/ts-standard.CMD +12 -0
  81. package/src/conversion/node_modules/.bin/ts-standard.ps1 +41 -0
  82. package/src/conversion/node_modules/.bin/tsc +21 -0
  83. package/src/conversion/node_modules/.bin/tsc.CMD +12 -0
  84. package/src/conversion/node_modules/.bin/tsc.ps1 +41 -0
  85. package/src/conversion/node_modules/.bin/tsserver +21 -0
  86. package/src/conversion/node_modules/.bin/tsserver.CMD +12 -0
  87. package/src/conversion/node_modules/.bin/tsserver.ps1 +41 -0
  88. package/src/conversion/node_modules/.bin/typedoc +21 -0
  89. package/src/conversion/node_modules/.bin/typedoc.CMD +12 -0
  90. package/src/conversion/node_modules/.bin/typedoc.ps1 +41 -0
  91. package/src/conversion/node_modules/.bin/vite +21 -0
  92. package/src/conversion/node_modules/.bin/vite.CMD +12 -0
  93. package/src/conversion/node_modules/.bin/vite.ps1 +41 -0
  94. package/src/conversion/node_modules/.bin/vitest +21 -0
  95. package/src/conversion/node_modules/.bin/vitest.CMD +12 -0
  96. package/src/conversion/node_modules/.bin/vitest.ps1 +41 -0
  97. package/src/conversion/node_modules/.bin/yaml +21 -0
  98. package/src/conversion/node_modules/.bin/yaml.CMD +12 -0
  99. package/src/conversion/node_modules/.bin/yaml.ps1 +41 -0
  100. package/src/conversion/node_modules/glob/LICENSE.md +63 -0
  101. package/src/conversion/node_modules/glob/README.md +1177 -0
  102. package/src/conversion/node_modules/glob/dist/commonjs/glob.d.ts +388 -0
  103. package/src/conversion/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
  104. package/src/conversion/node_modules/glob/dist/commonjs/glob.js +247 -0
  105. package/src/conversion/node_modules/glob/dist/commonjs/glob.js.map +1 -0
  106. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
  107. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
  108. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  109. package/src/conversion/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
  110. package/src/conversion/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
  111. package/src/conversion/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
  112. package/src/conversion/node_modules/glob/dist/commonjs/ignore.js +119 -0
  113. package/src/conversion/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
  114. package/src/conversion/node_modules/glob/dist/commonjs/index.d.ts +97 -0
  115. package/src/conversion/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
  116. package/src/conversion/node_modules/glob/dist/commonjs/index.js +68 -0
  117. package/src/conversion/node_modules/glob/dist/commonjs/index.js.map +1 -0
  118. package/src/conversion/node_modules/glob/dist/commonjs/package.json +3 -0
  119. package/src/conversion/node_modules/glob/dist/commonjs/pattern.d.ts +76 -0
  120. package/src/conversion/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
  121. package/src/conversion/node_modules/glob/dist/commonjs/pattern.js +219 -0
  122. package/src/conversion/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
  123. package/src/conversion/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
  124. package/src/conversion/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
  125. package/src/conversion/node_modules/glob/dist/commonjs/processor.js +301 -0
  126. package/src/conversion/node_modules/glob/dist/commonjs/processor.js.map +1 -0
  127. package/src/conversion/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
  128. package/src/conversion/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
  129. package/src/conversion/node_modules/glob/dist/commonjs/walker.js +387 -0
  130. package/src/conversion/node_modules/glob/dist/commonjs/walker.js.map +1 -0
  131. package/src/conversion/node_modules/glob/dist/esm/glob.d.ts +388 -0
  132. package/src/conversion/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
  133. package/src/conversion/node_modules/glob/dist/esm/glob.js +243 -0
  134. package/src/conversion/node_modules/glob/dist/esm/glob.js.map +1 -0
  135. package/src/conversion/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
  136. package/src/conversion/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
  137. package/src/conversion/node_modules/glob/dist/esm/has-magic.js +23 -0
  138. package/src/conversion/node_modules/glob/dist/esm/has-magic.js.map +1 -0
  139. package/src/conversion/node_modules/glob/dist/esm/ignore.d.ts +24 -0
  140. package/src/conversion/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
  141. package/src/conversion/node_modules/glob/dist/esm/ignore.js +115 -0
  142. package/src/conversion/node_modules/glob/dist/esm/ignore.js.map +1 -0
  143. package/src/conversion/node_modules/glob/dist/esm/index.d.ts +97 -0
  144. package/src/conversion/node_modules/glob/dist/esm/index.d.ts.map +1 -0
  145. package/src/conversion/node_modules/glob/dist/esm/index.js +55 -0
  146. package/src/conversion/node_modules/glob/dist/esm/index.js.map +1 -0
  147. package/src/conversion/node_modules/glob/dist/esm/package.json +3 -0
  148. package/src/conversion/node_modules/glob/dist/esm/pattern.d.ts +76 -0
  149. package/src/conversion/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
  150. package/src/conversion/node_modules/glob/dist/esm/pattern.js +215 -0
  151. package/src/conversion/node_modules/glob/dist/esm/pattern.js.map +1 -0
  152. package/src/conversion/node_modules/glob/dist/esm/processor.d.ts +59 -0
  153. package/src/conversion/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
  154. package/src/conversion/node_modules/glob/dist/esm/processor.js +294 -0
  155. package/src/conversion/node_modules/glob/dist/esm/processor.js.map +1 -0
  156. package/src/conversion/node_modules/glob/dist/esm/walker.d.ts +97 -0
  157. package/src/conversion/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
  158. package/src/conversion/node_modules/glob/dist/esm/walker.js +381 -0
  159. package/src/conversion/node_modules/glob/dist/esm/walker.js.map +1 -0
  160. package/src/conversion/node_modules/glob/package.json +93 -0
  161. package/src/conversion/node_modules/minimatch/LICENSE.md +55 -0
  162. package/src/conversion/node_modules/minimatch/README.md +453 -0
  163. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  164. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  165. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  166. package/src/conversion/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  167. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.d.ts +20 -0
  168. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  169. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.js +591 -0
  170. package/src/conversion/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  171. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  172. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  173. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  174. package/src/conversion/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  175. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  176. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  177. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  178. package/src/conversion/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  179. package/src/conversion/node_modules/minimatch/dist/commonjs/index.d.ts +94 -0
  180. package/src/conversion/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  181. package/src/conversion/node_modules/minimatch/dist/commonjs/index.js +1029 -0
  182. package/src/conversion/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  183. package/src/conversion/node_modules/minimatch/dist/commonjs/package.json +3 -0
  184. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  185. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  186. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  187. package/src/conversion/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  188. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  189. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  190. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  191. package/src/conversion/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  192. package/src/conversion/node_modules/minimatch/dist/esm/ast.d.ts +20 -0
  193. package/src/conversion/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  194. package/src/conversion/node_modules/minimatch/dist/esm/ast.js +587 -0
  195. package/src/conversion/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  196. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  197. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  198. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.js +148 -0
  199. package/src/conversion/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  200. package/src/conversion/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  201. package/src/conversion/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  202. package/src/conversion/node_modules/minimatch/dist/esm/escape.js +26 -0
  203. package/src/conversion/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  204. package/src/conversion/node_modules/minimatch/dist/esm/index.d.ts +94 -0
  205. package/src/conversion/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  206. package/src/conversion/node_modules/minimatch/dist/esm/index.js +1016 -0
  207. package/src/conversion/node_modules/minimatch/dist/esm/index.js.map +1 -0
  208. package/src/conversion/node_modules/minimatch/dist/esm/package.json +3 -0
  209. package/src/conversion/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  210. package/src/conversion/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  211. package/src/conversion/node_modules/minimatch/dist/esm/unescape.js +34 -0
  212. package/src/conversion/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  213. package/src/conversion/node_modules/minimatch/package.json +78 -0
  214. package/src/conversion/node_modules/rimraf/LICENSE.md +55 -0
  215. package/src/conversion/node_modules/rimraf/README.md +226 -0
  216. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.d.ts +3 -0
  217. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.d.ts.map +1 -0
  218. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.js +58 -0
  219. package/src/conversion/node_modules/rimraf/dist/commonjs/default-tmp.js.map +1 -0
  220. package/src/conversion/node_modules/rimraf/dist/commonjs/error.d.ts +6 -0
  221. package/src/conversion/node_modules/rimraf/dist/commonjs/error.d.ts.map +1 -0
  222. package/src/conversion/node_modules/rimraf/dist/commonjs/error.js +10 -0
  223. package/src/conversion/node_modules/rimraf/dist/commonjs/error.js.map +1 -0
  224. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts +3 -0
  225. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.d.ts.map +1 -0
  226. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.js +38 -0
  227. package/src/conversion/node_modules/rimraf/dist/commonjs/fix-eperm.js.map +1 -0
  228. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.d.ts +15 -0
  229. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.d.ts.map +1 -0
  230. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.js +33 -0
  231. package/src/conversion/node_modules/rimraf/dist/commonjs/fs.js.map +1 -0
  232. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts +3 -0
  233. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.d.ts.map +1 -0
  234. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.js +24 -0
  235. package/src/conversion/node_modules/rimraf/dist/commonjs/ignore-enoent.js.map +1 -0
  236. package/src/conversion/node_modules/rimraf/dist/commonjs/index.d.ts +50 -0
  237. package/src/conversion/node_modules/rimraf/dist/commonjs/index.d.ts.map +1 -0
  238. package/src/conversion/node_modules/rimraf/dist/commonjs/index.js +78 -0
  239. package/src/conversion/node_modules/rimraf/dist/commonjs/index.js.map +1 -0
  240. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.d.ts +34 -0
  241. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.d.ts.map +1 -0
  242. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.js +53 -0
  243. package/src/conversion/node_modules/rimraf/dist/commonjs/opt-arg.js.map +1 -0
  244. package/src/conversion/node_modules/rimraf/dist/commonjs/package.json +3 -0
  245. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.d.ts +4 -0
  246. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.d.ts.map +1 -0
  247. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.js +48 -0
  248. package/src/conversion/node_modules/rimraf/dist/commonjs/path-arg.js.map +1 -0
  249. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts +3 -0
  250. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.d.ts.map +1 -0
  251. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.js +19 -0
  252. package/src/conversion/node_modules/rimraf/dist/commonjs/readdir-or-error.js.map +1 -0
  253. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.d.ts +8 -0
  254. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.d.ts.map +1 -0
  255. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.js +65 -0
  256. package/src/conversion/node_modules/rimraf/dist/commonjs/retry-busy.js.map +1 -0
  257. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts +3 -0
  258. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.d.ts.map +1 -0
  259. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.js +8 -0
  260. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-manual.js.map +1 -0
  261. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts +4 -0
  262. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.d.ts.map +1 -0
  263. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js +138 -0
  264. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-move-remove.js.map +1 -0
  265. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts +4 -0
  266. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.d.ts.map +1 -0
  267. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.js +24 -0
  268. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-native.js.map +1 -0
  269. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts +4 -0
  270. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.d.ts.map +1 -0
  271. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.js +103 -0
  272. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-posix.js.map +1 -0
  273. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts +4 -0
  274. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.d.ts.map +1 -0
  275. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.js +159 -0
  276. package/src/conversion/node_modules/rimraf/dist/commonjs/rimraf-windows.js.map +1 -0
  277. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.d.ts +4 -0
  278. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.d.ts.map +1 -0
  279. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.js +18 -0
  280. package/src/conversion/node_modules/rimraf/dist/commonjs/use-native.js.map +1 -0
  281. package/src/conversion/node_modules/rimraf/dist/esm/bin.d.mts +3 -0
  282. package/src/conversion/node_modules/rimraf/dist/esm/bin.d.mts.map +1 -0
  283. package/src/conversion/node_modules/rimraf/dist/esm/bin.mjs +250 -0
  284. package/src/conversion/node_modules/rimraf/dist/esm/bin.mjs.map +1 -0
  285. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.d.ts +3 -0
  286. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.d.ts.map +1 -0
  287. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.js +55 -0
  288. package/src/conversion/node_modules/rimraf/dist/esm/default-tmp.js.map +1 -0
  289. package/src/conversion/node_modules/rimraf/dist/esm/error.d.ts +6 -0
  290. package/src/conversion/node_modules/rimraf/dist/esm/error.d.ts.map +1 -0
  291. package/src/conversion/node_modules/rimraf/dist/esm/error.js +5 -0
  292. package/src/conversion/node_modules/rimraf/dist/esm/error.js.map +1 -0
  293. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.d.ts +3 -0
  294. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.d.ts.map +1 -0
  295. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.js +33 -0
  296. package/src/conversion/node_modules/rimraf/dist/esm/fix-eperm.js.map +1 -0
  297. package/src/conversion/node_modules/rimraf/dist/esm/fs.d.ts +15 -0
  298. package/src/conversion/node_modules/rimraf/dist/esm/fs.d.ts.map +1 -0
  299. package/src/conversion/node_modules/rimraf/dist/esm/fs.js +18 -0
  300. package/src/conversion/node_modules/rimraf/dist/esm/fs.js.map +1 -0
  301. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.d.ts +3 -0
  302. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.d.ts.map +1 -0
  303. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.js +19 -0
  304. package/src/conversion/node_modules/rimraf/dist/esm/ignore-enoent.js.map +1 -0
  305. package/src/conversion/node_modules/rimraf/dist/esm/index.d.ts +50 -0
  306. package/src/conversion/node_modules/rimraf/dist/esm/index.d.ts.map +1 -0
  307. package/src/conversion/node_modules/rimraf/dist/esm/index.js +70 -0
  308. package/src/conversion/node_modules/rimraf/dist/esm/index.js.map +1 -0
  309. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.d.ts +34 -0
  310. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.d.ts.map +1 -0
  311. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.js +46 -0
  312. package/src/conversion/node_modules/rimraf/dist/esm/opt-arg.js.map +1 -0
  313. package/src/conversion/node_modules/rimraf/dist/esm/package.json +3 -0
  314. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.d.ts +4 -0
  315. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.d.ts.map +1 -0
  316. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.js +46 -0
  317. package/src/conversion/node_modules/rimraf/dist/esm/path-arg.js.map +1 -0
  318. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.d.ts +3 -0
  319. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.d.ts.map +1 -0
  320. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.js +14 -0
  321. package/src/conversion/node_modules/rimraf/dist/esm/readdir-or-error.js.map +1 -0
  322. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.d.ts +8 -0
  323. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.d.ts.map +1 -0
  324. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.js +60 -0
  325. package/src/conversion/node_modules/rimraf/dist/esm/retry-busy.js.map +1 -0
  326. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.d.ts +3 -0
  327. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.d.ts.map +1 -0
  328. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.js +5 -0
  329. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-manual.js.map +1 -0
  330. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts +4 -0
  331. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.d.ts.map +1 -0
  332. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.js +133 -0
  333. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-move-remove.js.map +1 -0
  334. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.d.ts +4 -0
  335. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.d.ts.map +1 -0
  336. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.js +19 -0
  337. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-native.js.map +1 -0
  338. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.d.ts +4 -0
  339. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.d.ts.map +1 -0
  340. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.js +98 -0
  341. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-posix.js.map +1 -0
  342. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.d.ts +4 -0
  343. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.d.ts.map +1 -0
  344. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.js +154 -0
  345. package/src/conversion/node_modules/rimraf/dist/esm/rimraf-windows.js.map +1 -0
  346. package/src/conversion/node_modules/rimraf/dist/esm/use-native.d.ts +4 -0
  347. package/src/conversion/node_modules/rimraf/dist/esm/use-native.d.ts.map +1 -0
  348. package/src/conversion/node_modules/rimraf/dist/esm/use-native.js +15 -0
  349. package/src/conversion/node_modules/rimraf/dist/esm/use-native.js.map +1 -0
  350. package/src/conversion/node_modules/rimraf/package.json +92 -0
  351. package/src/conversion/package.json +4 -13
  352. package/src/conversion/src/docs/index.md +6 -1
  353. package/src/conversion/src/ts/converter.ts +85 -0
  354. package/src/conversion/src/ts/fixedPoint/index.ts +87 -0
  355. package/src/conversion/src/ts/index.ts +18 -32
  356. package/src/conversion/tsconfig.json +1 -1
  357. package/src/conversion/vite.config.ts +38 -1
  358. package/src/index.ts +167 -39
  359. package/src/conversion/tsconfig.rollup.json +0 -9
  360. package/src/conversion/types/bindings.d.t.s +0 -4
  361. /package/dist/types/dist/dist/{types/index.d.ts → index.d.ts} +0 -0
package/README.md CHANGED
@@ -1,90 +1,107 @@
1
- ![CI](https://github.com/gsknknft/bigint-buffer/actions/workflows/ci.yaml/badge.svg)
2
- ![Release](https://github.com/gsknknft/bigint-buffer/actions/workflows/release.yaml/badge.svg)
3
-
4
- # @gsknnft/bigint-buffer
5
-
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
-
8
- > **Upgrade notice:** `1.4.4` is the CI-verified release (Node 20–24) and matches the 1.4.3 code. `1.4.3` was pre-green; move to 1.4.4 for a fully verified pipeline.
9
-
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
- [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
12
-
13
- ---
14
-
15
- ## Why This Package
16
-
17
- - Native N-API binding with pure-JS fallback for browsers and constrained environments.
18
- - Conversion helpers from `bigint-conversion` in-core (no extra deps).
19
- - ESM and CJS exports plus a UMD/browser bundle.
20
- - Actively maintained; legacy `bigint-buffer` is deprecated and flagged by audits.
21
-
22
- ---
23
-
24
- ## Install
25
- ```bash
26
- npm install @gsknnft/bigint-buffer
27
- # or pnpm/yarn if preferred
28
- ```
29
-
30
- ---
31
-
32
- ## Quick Start
33
- ```ts
34
- import {
35
- toBigIntBE, toBigIntLE, toBufferBE, toBufferLE,
36
- bigintToBuf, bufToBigint, bigintToHex, hexToBigint,
37
- bigintToText, textToBigint, bigintToBase64, base64ToBigint,
38
- } from "@gsknnft/bigint-buffer";
39
-
40
- toBigIntBE(Buffer.from("deadbeef", "hex")); // 3735928559n
41
- toBufferLE(0xdeadbeefn, 6); // <Buffer ef be ad de 00 00>
42
- bigintToHex(123456789n); // "075bcd15"
43
- textToBigint("Hello"); // 0x48656c6c6f
44
- bigintToBase64(123456789n); // "B1vNFQ=="
45
- ```
46
-
47
- ### Conversion Utilities
48
- ```ts
49
- import { conversionUtils } from "@gsknnft/bigint-buffer";
50
-
51
- const arrBuf = conversionUtils.bigintToBuf(123456789n, true); // ArrayBuffer
52
- const hex = conversionUtils.bigintToHex(123456789n, true); // '0x...' format
53
- const text = conversionUtils.bigintToText(123456789n);
54
- ```
55
-
56
- ---
57
-
58
- ## Runtime
59
- - Native binary: `build/Release/bigint_buffer.node` (loads automatically when available).
60
- - Fallback: pure JS bundle for browser and non-native installs.
61
- - Check which path loaded:
62
- ```ts
63
- import { isNative } from "@gsknnft/bigint-buffer";
64
- console.log(isNative); // true when native binding is active
65
- ```
66
-
67
- ---
68
-
69
- ## Commands
70
- ```bash
71
- npm run build # bundle + declarations + type check
72
- npm test # vitest with coverage
73
- npm run test:node # mocha against built JS (after build/compile)
74
- npm run rebuild:native # rebuild the N-API binding
75
- ```
76
-
77
- ---
78
-
79
- ## API Surface (high level)
80
- - Core: `toBigIntBE/LE`, `toBufferBE/LE`, `validateBigIntBuffer`, `isNative`
81
- - Conversion: `bigintToBuf`, `bufToBigint`, `bigintToHex`, `hexToBigint`, `bigintToText`, `textToBigint`, `bigintToBase64`, `base64ToBigint`, `bufToHex`, `hexToBuf`, `textToBuf`, `bufToText`, `parseHex`
82
-
83
- All helpers are endian-safe and validated across Node and browser builds.
84
-
85
- ---
86
-
87
- ## Support
88
- - Version: 1.4.4 (CI-verified; 1.4.3 was pre-green)
89
- - Node: 20+ (tested through 24 LTS under CI)
90
- - Issues: https://github.com/gsknnft/bigint-buffer/issues
1
+ ![CI](https://github.com/gsknknft/bigint-buffer/actions/workflows/ci.yaml/badge.svg)
2
+ ![Release](https://github.com/gsknknft/bigint-buffer/actions/workflows/release.yaml/badge.svg)
3
+
4
+ # @gsknnft/bigint-buffer
5
+
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
+
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
+
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
+ [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
12
+
13
+ ---
14
+
15
+ ## Why This Package
16
+
17
+ - Native N-API binding with pure-JS fallback for browsers and constrained environments.
18
+ - Conversion helpers from `bigint-conversion` in-core (no extra deps).
19
+ - ESM and CJS exports plus a UMD/browser bundle.
20
+ - Actively maintained; legacy `bigint-buffer` is deprecated and flagged by audits.
21
+
22
+ ---
23
+
24
+ ## Install
25
+ ```bash
26
+ npm install @gsknnft/bigint-buffer
27
+ # or pnpm/yarn if preferred
28
+ ```
29
+
30
+ ---
31
+
32
+ ## Quick Start
33
+ ```ts
34
+ import {
35
+ toBigIntBE, toBigIntLE, toBufferBE, toBufferLE,
36
+ bigintToBuf, bufToBigint, bigintToHex, hexToBigint,
37
+ bigintToText, textToBigint, bigintToBase64, base64ToBigint,
38
+ // New in 1.4.5
39
+ toFixedPoint, fromFixedPoint, addFixedPoint, subtractFixedPoint,
40
+ averageFixedPoint, compareFixedPoint, type FixedPoint,
41
+ } from "@gsknnft/bigint-buffer";
42
+
43
+ toBigIntBE(Buffer.from("deadbeef", "hex")); // 3735928559n
44
+ toBufferLE(0xdeadbeefn, 6); // <Buffer ef be ad de 00 00>
45
+ bigintToHex(123456789n); // "075bcd15"
46
+ textToBigint("Hello"); // 0x48656c6c6f
47
+ bigintToBase64(123456789n); // "B1vNFQ=="
48
+
49
+ // FixedPoint usage
50
+ const fp = toFixedPoint(123456789n, 18); // Convert bigint to FixedPoint
51
+ const sum = addFixedPoint(fp, fp); // Add two FixedPoints
52
+ const avg = averageFixedPoint([fp, fp]); // Average FixedPoints
53
+ ```
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
+
64
+ ### Conversion Utilities
65
+ ```ts
66
+ import { conversionUtils } from "@gsknnft/bigint-buffer";
67
+
68
+ const arrBuf = conversionUtils.bigintToBuf(123456789n, true); // ArrayBuffer
69
+ const hex = conversionUtils.bigintToHex(123456789n, true); // '0x...' format
70
+ const text = conversionUtils.bigintToText(123456789n);
71
+ ```
72
+
73
+ ---
74
+
75
+ ## Runtime
76
+ - Native binary: `build/Release/bigint_buffer.node` (included in npm package; loads automatically when available).
77
+ - Fallback: pure JS bundle for browser and non-native installs (now improved in 1.4.5).
78
+ - Check which path loaded:
79
+ ```ts
80
+ import { isNative } from "@gsknnft/bigint-buffer";
81
+ console.log(isNative); // true when native binding is active
82
+ ```
83
+
84
+ ---
85
+
86
+ ## Commands
87
+ ```bash
88
+ npm run build # bundle + declarations + type check
89
+ npm test # vitest with coverage
90
+ npm run test:node # mocha against built JS (after build/compile)
91
+ npm run rebuild:native # rebuild the N-API binding
92
+ ```
93
+
94
+ ---
95
+
96
+ ## API Surface (high level)
97
+ - Core: `toBigIntBE/LE`, `toBufferBE/LE`, `validateBigIntBuffer`, `isNative`
98
+ - Conversion: `bigintToBuf`, `bufToBigint`, `bigintToHex`, `hexToBigint`, `bigintToText`, `textToBigint`, `bigintToBase64`, `base64ToBigint`, `bufToHex`, `hexToBuf`, `textToBuf`, `bufToText`, `parseHex`
99
+
100
+ All helpers are endian-safe and validated across Node and browser builds.
101
+
102
+ ---
103
+
104
+ ## Support
105
+ - Version: 1.4.5 (FixedPoint, native bindings out-of-the-box, improved JS fallback)
106
+ - Node: 20+ (tested through 24 LTS under CI)
107
+ - Issues: https://github.com/gsknnft/bigint-buffer/issues
Binary file
Binary file
Binary file
Binary file
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("buffer"),c=require("path"),U=require("fs");let B=!1,f,l;const s=typeof globalThis<"u"&&typeof globalThis.document<"u",x=[c.resolve(__dirname,".."),c.resolve(__dirname,"../../.."),c.resolve(__dirname,"../../../../")],N=()=>{for(const e of x){const t=c.join(e,"build","Release","bigint_buffer.node");if(U.existsSync(t))return e}return x[0]};function L(){try{const e=require("bindings"),t=N();return e({bindings:"bigint_buffer",module_root:t})}catch(e){l=e;return}}s||(f=L(),B=f!==void 0,!B&&l!==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.",l));f===void 0&&(f={toBigInt:(e,t=!0)=>{const n=o.Buffer.from(e);t||n.reverse();const r=n.toString("hex");return r.length===0?0n:BigInt(`0x${r}`)},fromBigInt:(e,t,n=!0)=>{const r=e.toString(16),i=t.length,g=r.padStart(i*2,"0").slice(0,i*2),h=o.Buffer.from(g,"hex");return n||h.reverse(),h.copy(t),t}});function v(e){if(s||f===void 0){const t=o.Buffer.from(e);t.reverse();const n=t.toString("hex");return n.length===0?BigInt(0):BigInt(`0x${n}`)}return f.toBigInt(e,!1)}function O(){try{return v(o.Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function H(e){if(s||f===void 0){const t=e.toString("hex");return t.length===0?BigInt(0):BigInt(`0x${t}`)}return f.toBigInt(e,!0)}function M(e,t){if(s||f===void 0){const n=e.toString(16),r=o.Buffer.from(n.padStart(t*2,"0").slice(0,t*2),"hex");return r.reverse(),r}return f.fromBigInt(e,o.Buffer.allocUnsafe(t),!1)}function F(e,t){if(s||f===void 0){const n=e.toString(16);return o.Buffer.from(n.padStart(t*2,"0").slice(0,t*2),"hex")}return f.fromBigInt(e,o.Buffer.allocUnsafe(t),!0)}function a(e,t=!1,n){const r=e.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 t?"0x"+i:i}function T(e,t=!1){if(e<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return b(I(e),t)}function p(e){let t=8n;ArrayBuffer.isView(e)?t=BigInt(e.BYTES_PER_ELEMENT*8):e=new Uint8Array(e);let n=0n;for(const r of e.values()){const i=BigInt(r);n=(n<<t)+i}return n}function I(e,t=!1,n){if(e<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return a(e.toString(16),t,n)}function w(e){return BigInt(a(e,!0))}function q(e){if(e<0)throw RangeError("a should be a non-negative integer. Negative values are not supported");return m(b(e.toString(16)))}function V(e){return w(E(y(e)))}function d(e){if(o.Buffer.isBuffer(e))return e;if(ArrayBuffer.isView(e))return o.Buffer.from(e.buffer,e.byteOffset,e.byteLength);if(e instanceof ArrayBuffer)return o.Buffer.from(new Uint8Array(e));throw new TypeError("Unsupported input type for Buffer.from")}function m(e){const t=d(e);return s?new TextDecoder().decode(new Uint8Array(t)):o.Buffer.from(t).toString()}function y(e,t=!1){return!s&&!t?o.Buffer.from(new TextEncoder().encode(e).buffer):new TextEncoder().encode(e).buffer}function E(e,t=!1,n){if(s){let r="";const i="0123456789abcdef";return ArrayBuffer.isView(e)?e=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)):e=new Uint8Array(e),e.forEach(g=>{r+=i[g>>4]+i[g&15]}),a(r,t,n)}else{const r=d(e);return ArrayBuffer.isView(r)&&(e=new Uint8Array(r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength))),a(o.Buffer.from(d(e)).toString("hex"),t,n)}}function b(e,t=!1){let n=a(e);if(n=a(e,!1,Math.ceil(n.length/2)),s)return Uint8Array.from(n.match(/[\da-fA-F]{2}/g).map(r=>+("0x"+r))).buffer;{const r=o.Buffer.from(n,"hex");return t?r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength):r}}function j(e,t=!1,n=!0){if(e<0n)throw new RangeError("negative bigint");const r=T(e);let i=o.Buffer.isBuffer(r)?r.toString("base64"):o.Buffer.from(r).toString("base64");return t&&(i=i.replace(/\+/g,"-").replace(/\//g,"_")),n||(i=i.replace(/=+$/,"")),i}function z(e){if(!e||e.trim()==="")return 0n;const t=e.trim();if(!/^[A-Za-z0-9+/=_-]*$/.test(t))throw new RangeError("invalid base64");let n=t.replace(/-/g,"+").replace(/_/g,"/");for(;n.length%4!==0;)n+="=";const r=o.Buffer.from(n,"base64");return p(r)}const P=Object.freeze(Object.defineProperty({__proto__:null,base64ToBigint:z,bigintToBase64:j,bigintToBuf:T,bigintToHex:I,bigintToText:q,bufToBigint:p,bufToHex:E,bufToText:m,hexToBigint:w,hexToBuf:b,get isNative(){return B},parseHex:a,textToBigint:V,textToBuf:y,toBigIntBE:H,toBigIntLE:v,toBufferBE:F,toBufferLE:M,validateBigIntBuffer:O},Symbol.toStringTag,{value:"Module"}));let u;exports.isNative=!1;if(typeof window>"u")try{u=require("bindings")("bigint_buffer"),exports.isNative=u!==void 0}catch(e){console.warn("bigint: Failed to load bindings, pure JS will be used (try npm run rebuild?)",e)}function S(e){if(typeof window<"u"||u===void 0){const t=Buffer.from(e);t.reverse();const n=t.toString("hex");return n.length===0?BigInt(0):BigInt(`0x${n}`)}return u.toBigInt(e,!1)}function J(){try{return S(Buffer.from([1,0]))===BigInt(1)}catch{return!1}}function $(e){if(typeof window<"u"||u===void 0){const t=e.toString("hex");return t.length===0?BigInt(0):BigInt(`0x${t}`)}return u.toBigInt(e,!0)}function W(e,t){if(typeof window<"u"||u===void 0){const n=e.toString(16),r=Buffer.from(n.padStart(t*2,"0").slice(0,t*2),"hex");return r.reverse(),r}return u.fromBigInt(e,Buffer.allocUnsafe(t),!1)}function _(e,t){if(typeof window<"u"||u===void 0){const n=e.toString(16);return Buffer.from(n.padStart(t*2,"0").slice(0,t*2),"hex")}return u.fromBigInt(e,Buffer.allocUnsafe(t),!0)}function A(e){if(e<BigInt(0))throw new Error("bigintToBuf: negative bigint values are not supported");if(e===BigInt(0))return Buffer.from([0]);const t=e.toString(16),n=Math.ceil(t.length/2);return _(e,n)}function R(e){return $(e)}function Z(e){if(e<BigInt(0))throw new Error("bigintToHex: negative bigint values are not supported");const t=e.toString(16);return t.length%2===0?t:"0"+t}function k(e){const t=e.startsWith("0x")?e.slice(2):e;return t.length===0?BigInt(0):BigInt(`0x${t}`)}function D(e){return e.toString(10)}function G(e){if(!e?.trim())throw new Error("textToBigint: input string cannot be empty");try{return BigInt(e)}catch(t){throw new Error(`textToBigint: invalid decimal string "${e}" ${t instanceof Error?t.message:String(t)}`)}}function Y(e){if(e<BigInt(0))throw new Error("bigintToBase64: negative bigint values are not supported");return A(e).toString("base64")}function C(e){if(!e?.trim())throw new Error("base64ToBigint: input string cannot be empty");const t=e.trim();if(!/^[A-Za-z0-9+/]+=*$/.test(t))throw new Error("base64ToBigint: invalid base64 string format");const n=Buffer.from(t,"base64");return R(n)}exports.base64ToBigint=C;exports.bigintToBase64=Y;exports.bigintToBuf=A;exports.bigintToHex=Z;exports.bigintToText=D;exports.bufToBigint=R;exports.conversionUtils=P;exports.hexToBigint=k;exports.textToBigint=G;exports.toBigIntBE=$;exports.toBigIntLE=S;exports.toBufferBE=_;exports.toBufferLE=W;exports.validateBigIntBuffer=J;
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;