quantumcoin 7.0.15 → 8.0.1

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 (416) hide show
  1. package/README-SDK.md +79 -0
  2. package/README.md +48 -1
  3. package/generate-sdk.js +8 -6
  4. package/package.json +26 -6
  5. package/src/abi/interface.d.ts +133 -128
  6. package/src/abi/js-abi-coder.d.ts +8 -8
  7. package/src/constants.d.ts +61 -61
  8. package/src/contract/contract-factory.d.ts +28 -28
  9. package/src/contract/contract.d.ts +121 -113
  10. package/src/contract/index.d.ts +1 -0
  11. package/src/errors/index.d.ts +10 -2
  12. package/src/errors/index.js +1 -1
  13. package/src/generator/index.d.ts +109 -81
  14. package/src/index.d.ts +128 -123
  15. package/src/internal/event-emitter.d.ts +76 -0
  16. package/src/internal/event-emitter.js +144 -0
  17. package/src/internal/hex.d.ts +27 -4
  18. package/src/internal/hex.js +7 -3
  19. package/src/providers/extra-providers.d.ts +141 -139
  20. package/src/providers/extra-providers.js +15 -1
  21. package/src/providers/index.d.ts +18 -18
  22. package/src/providers/json-rpc-provider.d.ts +1 -0
  23. package/src/providers/provider.d.ts +233 -222
  24. package/src/providers/provider.js +1 -1
  25. package/src/utils/encoding.js +16 -4
  26. package/src/utils/fixednumber.d.ts +57 -57
  27. package/src/utils/hashing.d.ts +97 -76
  28. package/src/utils/hashing.js +95 -177
  29. package/src/utils/index.d.ts +2 -1
  30. package/src/utils/rlp.js +1 -1
  31. package/src/wallet/index.d.ts +1 -0
  32. package/src/wallet/wallet.d.ts +85 -29
  33. package/src/wallet/wallet.js +114 -4
  34. package/.github/workflows/publish-npmjs.yaml +0 -22
  35. package/.gitignore +0 -15
  36. package/examples/AllSolidityTypes.sol +0 -184
  37. package/examples/SimpleIERC20.sol +0 -74
  38. package/examples/events.js +0 -41
  39. package/examples/events.ts +0 -35
  40. package/examples/example-generated-sdk-js/README.md +0 -65
  41. package/examples/example-generated-sdk-js/examples/_test-wallet.js +0 -17
  42. package/examples/example-generated-sdk-js/examples/deploy.js +0 -41
  43. package/examples/example-generated-sdk-js/examples/events.js +0 -36
  44. package/examples/example-generated-sdk-js/examples/read-operations.js +0 -46
  45. package/examples/example-generated-sdk-js/examples/write-operations.js +0 -44
  46. package/examples/example-generated-sdk-js/index.d.ts +0 -1
  47. package/examples/example-generated-sdk-js/index.js +0 -15
  48. package/examples/example-generated-sdk-js/package-lock.json +0 -59
  49. package/examples/example-generated-sdk-js/package.json +0 -22
  50. package/examples/example-generated-sdk-js/src/SimpleERC20.d.ts +0 -19
  51. package/examples/example-generated-sdk-js/src/SimpleERC20.js +0 -353
  52. package/examples/example-generated-sdk-js/src/SimpleERC20__factory.d.ts +0 -10
  53. package/examples/example-generated-sdk-js/src/SimpleERC20__factory.js +0 -29
  54. package/examples/example-generated-sdk-js/src/index.d.ts +0 -4
  55. package/examples/example-generated-sdk-js/src/index.js +0 -5
  56. package/examples/example-generated-sdk-js/src/quantumcoin-shims.d.ts +0 -23
  57. package/examples/example-generated-sdk-js/src/types.d.ts +0 -3
  58. package/examples/example-generated-sdk-js/src/types.js +0 -3
  59. package/examples/example-generated-sdk-js/test/e2e/SimpleERC20.e2e.test.js +0 -78
  60. package/examples/example-generated-sdk-ts/README.md +0 -65
  61. package/examples/example-generated-sdk-ts/examples/_test-wallet.js +0 -17
  62. package/examples/example-generated-sdk-ts/examples/deploy.js +0 -41
  63. package/examples/example-generated-sdk-ts/examples/events.js +0 -36
  64. package/examples/example-generated-sdk-ts/examples/read-operations.js +0 -46
  65. package/examples/example-generated-sdk-ts/examples/write-operations.js +0 -44
  66. package/examples/example-generated-sdk-ts/index.d.ts +0 -1
  67. package/examples/example-generated-sdk-ts/index.js +0 -15
  68. package/examples/example-generated-sdk-ts/package-lock.json +0 -59
  69. package/examples/example-generated-sdk-ts/package.json +0 -23
  70. package/examples/example-generated-sdk-ts/src/SimpleERC20.ts +0 -334
  71. package/examples/example-generated-sdk-ts/src/SimpleERC20__factory.ts +0 -28
  72. package/examples/example-generated-sdk-ts/src/index.ts +0 -4
  73. package/examples/example-generated-sdk-ts/src/quantumcoin-shims.d.ts +0 -23
  74. package/examples/example-generated-sdk-ts/src/types.ts +0 -4
  75. package/examples/example-generated-sdk-ts/test/e2e/SimpleERC20.e2e.test.js +0 -78
  76. package/examples/example-generated-sdk-ts/tsconfig.json +0 -14
  77. package/examples/example-generator-sdk-js.js +0 -100
  78. package/examples/example-generator-sdk-js.ts +0 -77
  79. package/examples/example-generator-sdk-ts.js +0 -100
  80. package/examples/example-generator-sdk-ts.ts +0 -77
  81. package/examples/example.js +0 -67
  82. package/examples/example.ts +0 -56
  83. package/examples/node_modules/.bin/esbuild +0 -16
  84. package/examples/node_modules/.bin/esbuild.cmd +0 -17
  85. package/examples/node_modules/.bin/esbuild.ps1 +0 -28
  86. package/examples/node_modules/.bin/sdkgen +0 -16
  87. package/examples/node_modules/.bin/sdkgen.cmd +0 -17
  88. package/examples/node_modules/.bin/sdkgen.ps1 +0 -28
  89. package/examples/node_modules/.bin/tsx +0 -16
  90. package/examples/node_modules/.bin/tsx.cmd +0 -17
  91. package/examples/node_modules/.bin/tsx.ps1 +0 -28
  92. package/examples/node_modules/.package-lock.json +0 -144
  93. package/examples/node_modules/@esbuild/win32-x64/README.md +0 -3
  94. package/examples/node_modules/@esbuild/win32-x64/esbuild.exe +0 -0
  95. package/examples/node_modules/@esbuild/win32-x64/package.json +0 -20
  96. package/examples/node_modules/esbuild/LICENSE.md +0 -21
  97. package/examples/node_modules/esbuild/README.md +0 -3
  98. package/examples/node_modules/esbuild/bin/esbuild +0 -223
  99. package/examples/node_modules/esbuild/install.js +0 -289
  100. package/examples/node_modules/esbuild/lib/main.d.ts +0 -716
  101. package/examples/node_modules/esbuild/lib/main.js +0 -2532
  102. package/examples/node_modules/esbuild/package.json +0 -49
  103. package/examples/node_modules/get-tsconfig/LICENSE +0 -21
  104. package/examples/node_modules/get-tsconfig/README.md +0 -235
  105. package/examples/node_modules/get-tsconfig/dist/index.cjs +0 -7
  106. package/examples/node_modules/get-tsconfig/dist/index.d.cts +0 -2088
  107. package/examples/node_modules/get-tsconfig/dist/index.d.mts +0 -2088
  108. package/examples/node_modules/get-tsconfig/dist/index.mjs +0 -7
  109. package/examples/node_modules/get-tsconfig/package.json +0 -46
  110. package/examples/node_modules/quantum-coin-js-sdk/LICENSE +0 -21
  111. package/examples/node_modules/quantum-coin-js-sdk/LICENSE-wasm_exec.js.txt +0 -30
  112. package/examples/node_modules/quantum-coin-js-sdk/README.md +0 -1689
  113. package/examples/node_modules/quantum-coin-js-sdk/example/README.md +0 -14
  114. package/examples/node_modules/quantum-coin-js-sdk/example/conversion-example.js +0 -19
  115. package/examples/node_modules/quantum-coin-js-sdk/example/example-create-contract.js +0 -396
  116. package/examples/node_modules/quantum-coin-js-sdk/example/example-encode-decode-rlp.js +0 -225
  117. package/examples/node_modules/quantum-coin-js-sdk/example/example-event-pack-unpack.js +0 -391
  118. package/examples/node_modules/quantum-coin-js-sdk/example/example-misc.js +0 -100
  119. package/examples/node_modules/quantum-coin-js-sdk/example/example-rpc-send-signRawTransaction.js +0 -318
  120. package/examples/node_modules/quantum-coin-js-sdk/example/example-rpc-send.js +0 -115
  121. package/examples/node_modules/quantum-coin-js-sdk/example/example-send.js +0 -69
  122. package/examples/node_modules/quantum-coin-js-sdk/example/example-token-pack-unpack.js +0 -960
  123. package/examples/node_modules/quantum-coin-js-sdk/example/example-wallet-version4.js +0 -34
  124. package/examples/node_modules/quantum-coin-js-sdk/example/example-wallet.js +0 -43
  125. package/examples/node_modules/quantum-coin-js-sdk/example/example.js +0 -405
  126. package/examples/node_modules/quantum-coin-js-sdk/example/package-lock.json +0 -56
  127. package/examples/node_modules/quantum-coin-js-sdk/example/package.json +0 -15
  128. package/examples/node_modules/quantum-coin-js-sdk/index.d.ts +0 -1047
  129. package/examples/node_modules/quantum-coin-js-sdk/index.js +0 -3182
  130. package/examples/node_modules/quantum-coin-js-sdk/package.json +0 -34
  131. package/examples/node_modules/quantum-coin-js-sdk/tests/encrypted-32.json +0 -1
  132. package/examples/node_modules/quantum-coin-js-sdk/tests/encrypted-36.json +0 -1
  133. package/examples/node_modules/quantum-coin-js-sdk/tests/encrypted-48.json +0 -1
  134. package/examples/node_modules/quantum-coin-js-sdk/tests/generate-verify-vectors.js +0 -91
  135. package/examples/node_modules/quantum-coin-js-sdk/tests/get-gas-price.test.js +0 -59
  136. package/examples/node_modules/quantum-coin-js-sdk/tests/non-transactional.preinit.test.js +0 -41
  137. package/examples/node_modules/quantum-coin-js-sdk/tests/non-transactional.test.js +0 -1389
  138. package/examples/node_modules/quantum-coin-js-sdk/tests/sign-raw-keytype5-context-null.test.js +0 -107
  139. package/examples/node_modules/quantum-coin-js-sdk/tests/sign-raw-transaction.test.js +0 -196
  140. package/examples/node_modules/quantum-coin-js-sdk/tests/sign-verify.test.js +0 -311
  141. package/examples/node_modules/quantum-coin-js-sdk/tests/transactional.relay.test.js +0 -131
  142. package/examples/node_modules/quantum-coin-js-sdk/tests/transactional.rpc.test.js +0 -103
  143. package/examples/node_modules/quantum-coin-js-sdk/tests/verify-vectors.json +0 -95035
  144. package/examples/node_modules/quantum-coin-js-sdk/wasmBase64.d.ts +0 -9
  145. package/examples/node_modules/quantum-coin-js-sdk/wasmBase64.js +0 -16
  146. package/examples/node_modules/quantum-coin-js-sdk/wasm_exec.d.ts +0 -0
  147. package/examples/node_modules/quantum-coin-js-sdk/wasm_exec.js +0 -587
  148. package/examples/node_modules/resolve-pkg-maps/LICENSE +0 -21
  149. package/examples/node_modules/resolve-pkg-maps/README.md +0 -216
  150. package/examples/node_modules/resolve-pkg-maps/dist/index.cjs +0 -1
  151. package/examples/node_modules/resolve-pkg-maps/dist/index.d.cts +0 -11
  152. package/examples/node_modules/resolve-pkg-maps/dist/index.d.mts +0 -11
  153. package/examples/node_modules/resolve-pkg-maps/dist/index.mjs +0 -1
  154. package/examples/node_modules/resolve-pkg-maps/package.json +0 -42
  155. package/examples/node_modules/seed-words/.github/workflows/publish-npmjs.yaml +0 -22
  156. package/examples/node_modules/seed-words/BUILD.md +0 -7
  157. package/examples/node_modules/seed-words/LICENSE +0 -121
  158. package/examples/node_modules/seed-words/README.md +0 -67
  159. package/examples/node_modules/seed-words/dist/seedwords.d.ts +0 -39
  160. package/examples/node_modules/seed-words/package.json +0 -27
  161. package/examples/node_modules/seed-words/seedwords.js +0 -315
  162. package/examples/node_modules/seed-words/seedwords.txt +0 -65536
  163. package/examples/node_modules/seed-words/tsconfig.json +0 -21
  164. package/examples/node_modules/tsx/LICENSE +0 -21
  165. package/examples/node_modules/tsx/README.md +0 -32
  166. package/examples/node_modules/tsx/dist/cjs/api/index.cjs +0 -1
  167. package/examples/node_modules/tsx/dist/cjs/api/index.d.cts +0 -35
  168. package/examples/node_modules/tsx/dist/cjs/api/index.d.mts +0 -35
  169. package/examples/node_modules/tsx/dist/cjs/api/index.mjs +0 -1
  170. package/examples/node_modules/tsx/dist/cjs/index.cjs +0 -1
  171. package/examples/node_modules/tsx/dist/cjs/index.mjs +0 -1
  172. package/examples/node_modules/tsx/dist/cli.cjs +0 -54
  173. package/examples/node_modules/tsx/dist/cli.mjs +0 -55
  174. package/examples/node_modules/tsx/dist/client-BQVF1NaW.mjs +0 -1
  175. package/examples/node_modules/tsx/dist/client-D6NvIMSC.cjs +0 -1
  176. package/examples/node_modules/tsx/dist/esm/api/index.cjs +0 -1
  177. package/examples/node_modules/tsx/dist/esm/api/index.d.cts +0 -35
  178. package/examples/node_modules/tsx/dist/esm/api/index.d.mts +0 -35
  179. package/examples/node_modules/tsx/dist/esm/api/index.mjs +0 -1
  180. package/examples/node_modules/tsx/dist/esm/index.cjs +0 -2
  181. package/examples/node_modules/tsx/dist/esm/index.mjs +0 -2
  182. package/examples/node_modules/tsx/dist/get-pipe-path-BHW2eJdv.mjs +0 -1
  183. package/examples/node_modules/tsx/dist/get-pipe-path-BoR10qr8.cjs +0 -1
  184. package/examples/node_modules/tsx/dist/index-7AaEi15b.mjs +0 -14
  185. package/examples/node_modules/tsx/dist/index-BWFBUo6r.cjs +0 -1
  186. package/examples/node_modules/tsx/dist/index-gbaejti9.mjs +0 -1
  187. package/examples/node_modules/tsx/dist/index-gckBtVBf.cjs +0 -14
  188. package/examples/node_modules/tsx/dist/lexer-DQCqS3nf.mjs +0 -3
  189. package/examples/node_modules/tsx/dist/lexer-DgIbo0BU.cjs +0 -3
  190. package/examples/node_modules/tsx/dist/loader.cjs +0 -1
  191. package/examples/node_modules/tsx/dist/loader.mjs +0 -1
  192. package/examples/node_modules/tsx/dist/node-features-_8ZFwP_x.mjs +0 -1
  193. package/examples/node_modules/tsx/dist/node-features-roYmp9jK.cjs +0 -1
  194. package/examples/node_modules/tsx/dist/package-CeBgXWuR.mjs +0 -1
  195. package/examples/node_modules/tsx/dist/package-Dxt5kIHw.cjs +0 -1
  196. package/examples/node_modules/tsx/dist/patch-repl.cjs +0 -1
  197. package/examples/node_modules/tsx/dist/patch-repl.mjs +0 -1
  198. package/examples/node_modules/tsx/dist/preflight.cjs +0 -1
  199. package/examples/node_modules/tsx/dist/preflight.mjs +0 -1
  200. package/examples/node_modules/tsx/dist/register-2sWVXuRQ.cjs +0 -1
  201. package/examples/node_modules/tsx/dist/register-B7jrtLTO.mjs +0 -1
  202. package/examples/node_modules/tsx/dist/register-CFH5oNdT.mjs +0 -4
  203. package/examples/node_modules/tsx/dist/register-D46fvsV_.cjs +0 -4
  204. package/examples/node_modules/tsx/dist/repl.cjs +0 -3
  205. package/examples/node_modules/tsx/dist/repl.mjs +0 -3
  206. package/examples/node_modules/tsx/dist/require-D4F1Lv60.cjs +0 -1
  207. package/examples/node_modules/tsx/dist/require-DQxpCAr4.mjs +0 -1
  208. package/examples/node_modules/tsx/dist/suppress-warnings.cjs +0 -1
  209. package/examples/node_modules/tsx/dist/suppress-warnings.mjs +0 -1
  210. package/examples/node_modules/tsx/dist/temporary-directory-B83uKxJF.cjs +0 -1
  211. package/examples/node_modules/tsx/dist/temporary-directory-CwHp0_NW.mjs +0 -1
  212. package/examples/node_modules/tsx/dist/types-Cxp8y2TL.d.ts +0 -5
  213. package/examples/node_modules/tsx/package.json +0 -68
  214. package/examples/offline-signing.js +0 -77
  215. package/examples/offline-signing.ts +0 -65
  216. package/examples/package-lock.json +0 -596
  217. package/examples/package.json +0 -32
  218. package/examples/read-operations.js +0 -32
  219. package/examples/read-operations.ts +0 -31
  220. package/examples/sdk-generator-erc20.inline.json +0 -251
  221. package/examples/solidity-types.ts +0 -43
  222. package/examples/wallet-offline.js +0 -36
  223. package/examples/wallet-offline.ts +0 -26
  224. package/scripts/copy-declarations.js +0 -31
  225. package/scripts/run-all-one-by-one.js +0 -151
  226. package/test/e2e/all-solidity-types.dynamic.test.js +0 -207
  227. package/test/e2e/all-solidity-types.dynamic.test.ts +0 -191
  228. package/test/e2e/all-solidity-types.fixtures.js +0 -231
  229. package/test/e2e/all-solidity-types.generated-sdks.e2e.test.js +0 -387
  230. package/test/e2e/all-solidity-types.generated-sdks.e2e.test.ts +0 -350
  231. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/README.md +0 -83
  232. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/artifacts/AllSolidityTypes.abi.json +0 -12544
  233. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/artifacts/AllSolidityTypes.bin +0 -1
  234. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/_test-wallet.js +0 -17
  235. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/_test-wallet.ts +0 -10
  236. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/deploy.js +0 -41
  237. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/deploy.ts +0 -41
  238. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/events.js +0 -36
  239. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/events.ts +0 -36
  240. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/offline-signing.js +0 -82
  241. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/offline-signing.ts +0 -80
  242. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/read-operations.js +0 -46
  243. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/read-operations.ts +0 -44
  244. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/write-operations.js +0 -44
  245. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/examples/write-operations.ts +0 -44
  246. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/index.d.ts +0 -1
  247. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/index.js +0 -21
  248. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/package-lock.json +0 -597
  249. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/package.json +0 -25
  250. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes.d.ts +0 -1280
  251. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes.js +0 -14021
  252. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes__factory.d.ts +0 -11
  253. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/AllSolidityTypes__factory.js +0 -31
  254. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/index.d.ts +0 -4
  255. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/index.js +0 -5
  256. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/quantumcoin-shims.d.ts +0 -25
  257. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/types.d.ts +0 -3
  258. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/src/types.js +0 -3
  259. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/test/e2e/AllSolidityTypes.e2e.test.js +0 -77
  260. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-js/test/e2e/AllSolidityTypes.extra.test.js +0 -195
  261. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/README.md +0 -83
  262. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/artifacts/AllSolidityTypes.abi.json +0 -12544
  263. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/artifacts/AllSolidityTypes.bin +0 -1
  264. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/_test-wallet.js +0 -17
  265. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/_test-wallet.ts +0 -10
  266. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/deploy.js +0 -41
  267. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/deploy.ts +0 -41
  268. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/events.js +0 -36
  269. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/events.ts +0 -36
  270. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/offline-signing.js +0 -82
  271. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/offline-signing.ts +0 -80
  272. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/read-operations.js +0 -46
  273. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/read-operations.ts +0 -44
  274. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/write-operations.js +0 -44
  275. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/examples/write-operations.ts +0 -44
  276. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/index.d.ts +0 -1
  277. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/index.js +0 -21
  278. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/package-lock.json +0 -597
  279. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/package.json +0 -26
  280. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/AllSolidityTypes.ts +0 -13940
  281. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/AllSolidityTypes__factory.ts +0 -31
  282. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/index.ts +0 -4
  283. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/quantumcoin-shims.d.ts +0 -25
  284. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/src/types.ts +0 -4
  285. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/test/e2e/AllSolidityTypes.e2e.test.js +0 -77
  286. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/test/e2e/AllSolidityTypes.extra.test.js +0 -195
  287. package/test/e2e/generated-sdks/all-solidity-types/all-solidity-types-ts/tsconfig.json +0 -18
  288. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/README.md +0 -74
  289. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/artifacts/SimpleERC20.abi.json +0 -245
  290. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/artifacts/SimpleERC20.bin +0 -1
  291. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/_test-wallet.js +0 -17
  292. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/_test-wallet.ts +0 -10
  293. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/deploy.js +0 -41
  294. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/deploy.ts +0 -41
  295. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/events.js +0 -36
  296. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/events.ts +0 -36
  297. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/offline-signing.js +0 -82
  298. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/offline-signing.ts +0 -80
  299. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/read-operations.js +0 -46
  300. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/read-operations.ts +0 -44
  301. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/write-operations.js +0 -44
  302. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/examples/write-operations.ts +0 -44
  303. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/index.d.ts +0 -1
  304. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/index.js +0 -16
  305. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/package-lock.json +0 -597
  306. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/package.json +0 -25
  307. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20.d.ts +0 -24
  308. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20.js +0 -378
  309. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20__factory.d.ts +0 -10
  310. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/SimpleERC20__factory.js +0 -31
  311. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/index.d.ts +0 -4
  312. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/index.js +0 -5
  313. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/quantumcoin-shims.d.ts +0 -25
  314. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/types.d.ts +0 -3
  315. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/src/types.js +0 -3
  316. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-js/test/e2e/SimpleERC20.e2e.test.js +0 -90
  317. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/README.md +0 -74
  318. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/artifacts/SimpleERC20.abi.json +0 -245
  319. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/artifacts/SimpleERC20.bin +0 -1
  320. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/_test-wallet.js +0 -17
  321. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/_test-wallet.ts +0 -10
  322. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/deploy.js +0 -41
  323. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/deploy.ts +0 -41
  324. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/events.js +0 -36
  325. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/events.ts +0 -36
  326. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/offline-signing.js +0 -82
  327. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/offline-signing.ts +0 -80
  328. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/read-operations.js +0 -46
  329. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/read-operations.ts +0 -44
  330. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/write-operations.js +0 -44
  331. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/examples/write-operations.ts +0 -44
  332. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/index.d.ts +0 -1
  333. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/index.js +0 -16
  334. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/package-lock.json +0 -597
  335. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/package.json +0 -26
  336. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/SimpleERC20.ts +0 -361
  337. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/SimpleERC20__factory.ts +0 -30
  338. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/index.ts +0 -4
  339. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/quantumcoin-shims.d.ts +0 -25
  340. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/src/types.ts +0 -4
  341. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/test/e2e/SimpleERC20.e2e.test.js +0 -90
  342. package/test/e2e/generated-sdks/simple-erc20/simple-erc20-ts/tsconfig.json +0 -18
  343. package/test/e2e/generator-interface.e2e.test.js +0 -165
  344. package/test/e2e/generator-interface.e2e.test.ts +0 -160
  345. package/test/e2e/helpers.js +0 -59
  346. package/test/e2e/signing-context-and-fee.e2e.test.js +0 -141
  347. package/test/e2e/signing-context-and-fee.e2e.test.ts +0 -128
  348. package/test/e2e/simple-erc20.generated-sdks.e2e.test.js +0 -168
  349. package/test/e2e/simple-erc20.generated-sdks.e2e.test.ts +0 -141
  350. package/test/e2e/transactional.test.js +0 -245
  351. package/test/e2e/transactional.test.ts +0 -208
  352. package/test/e2e/typed-generator.e2e.test.js +0 -407
  353. package/test/e2e/typed-generator.e2e.test.ts +0 -337
  354. package/test/fixtures/ConstructorParam.sol +0 -23
  355. package/test/fixtures/MultiContracts.sol +0 -37
  356. package/test/fixtures/SimpleStorage.sol +0 -18
  357. package/test/fixtures/StakingContract.abi.json +0 -1
  358. package/test/integration/ipc-provider.test.js +0 -49
  359. package/test/integration/ipc-provider.test.ts +0 -44
  360. package/test/integration/provider.test.js +0 -88
  361. package/test/integration/provider.test.ts +0 -85
  362. package/test/integration/ws-provider.test.js +0 -41
  363. package/test/integration/ws-provider.test.ts +0 -38
  364. package/test/security/abi-decoder-bounds.test.js +0 -122
  365. package/test/security/contract-overrides.test.js +0 -112
  366. package/test/security/generator-injection.test.js +0 -195
  367. package/test/security/malformed-input.test.js +0 -330
  368. package/test/security/malformed-input.test.ts +0 -35
  369. package/test/security/rpc-numeric-bounds.test.js +0 -81
  370. package/test/security/rpc-trust.test.js +0 -202
  371. package/test/unit/_encrypted-output.txt +0 -6
  372. package/test/unit/_log-encrypted-jsons.js +0 -45
  373. package/test/unit/_write-keystore-fixture.js +0 -16
  374. package/test/unit/abi-interface.test.js +0 -110
  375. package/test/unit/abi-interface.test.ts +0 -109
  376. package/test/unit/address-wallet.test.js +0 -945
  377. package/test/unit/address-wallet.test.ts +0 -899
  378. package/test/unit/browser-provider.test.js +0 -85
  379. package/test/unit/browser-provider.test.ts +0 -79
  380. package/test/unit/contract.test.js +0 -85
  381. package/test/unit/contract.test.ts +0 -83
  382. package/test/unit/encoding-units-rlp.test.js +0 -127
  383. package/test/unit/encoding-units-rlp.test.ts +0 -91
  384. package/test/unit/errors.test.js +0 -77
  385. package/test/unit/errors.test.ts +0 -76
  386. package/test/unit/filter-by-blockhash.test.js +0 -55
  387. package/test/unit/filter-by-blockhash.test.ts +0 -54
  388. package/test/unit/fixednumber.test.js +0 -656
  389. package/test/unit/fixednumber.test.ts +0 -660
  390. package/test/unit/fixtures/encrypted-keystores-48-32-36.js +0 -9
  391. package/test/unit/generate-contract-cli.test.js +0 -42
  392. package/test/unit/generate-contract-cli.test.ts +0 -41
  393. package/test/unit/generate-sdk-artifacts-json.test.js +0 -113
  394. package/test/unit/generate-sdk-artifacts-json.test.ts +0 -110
  395. package/test/unit/generator.test.js +0 -149
  396. package/test/unit/generator.test.ts +0 -148
  397. package/test/unit/hashing.test.js +0 -64
  398. package/test/unit/hashing.test.ts +0 -63
  399. package/test/unit/init.test.js +0 -39
  400. package/test/unit/init.test.ts +0 -38
  401. package/test/unit/interface.test.js +0 -56
  402. package/test/unit/interface.test.ts +0 -54
  403. package/test/unit/internal-hex.test.js +0 -81
  404. package/test/unit/internal-hex.test.ts +0 -80
  405. package/test/unit/populate-transaction.test.js +0 -98
  406. package/test/unit/populate-transaction.test.ts +0 -64
  407. package/test/unit/providers.test.js +0 -305
  408. package/test/unit/providers.test.ts +0 -304
  409. package/test/unit/result.test.js +0 -80
  410. package/test/unit/result.test.ts +0 -79
  411. package/test/unit/solidity-types.test.js +0 -49
  412. package/test/unit/solidity-types.test.ts +0 -39
  413. package/test/unit/utils.test.js +0 -57
  414. package/test/unit/utils.test.ts +0 -56
  415. package/test/verbose-logger.js +0 -74
  416. package/tsconfig.build.json +0 -14
@@ -1,68 +0,0 @@
1
- {
2
- "name": "tsx",
3
- "version": "4.21.0",
4
- "description": "TypeScript Execute (tsx): Node.js enhanced with esbuild to run TypeScript & ESM files",
5
- "keywords": [
6
- "cli",
7
- "runtime",
8
- "node",
9
- "cjs",
10
- "commonjs",
11
- "esm",
12
- "typescript",
13
- "typescript runner"
14
- ],
15
- "license": "MIT",
16
- "repository": "privatenumber/tsx",
17
- "author": {
18
- "name": "Hiroki Osame",
19
- "email": "hiroki.osame@gmail.com"
20
- },
21
- "files": [
22
- "dist"
23
- ],
24
- "type": "module",
25
- "bin": "./dist/cli.mjs",
26
- "exports": {
27
- "./package.json": "./package.json",
28
- ".": "./dist/loader.mjs",
29
- "./patch-repl": "./dist/patch-repl.cjs",
30
- "./cjs": "./dist/cjs/index.cjs",
31
- "./cjs/api": {
32
- "import": {
33
- "types": "./dist/cjs/api/index.d.mts",
34
- "default": "./dist/cjs/api/index.mjs"
35
- },
36
- "require": {
37
- "types": "./dist/cjs/api/index.d.cts",
38
- "default": "./dist/cjs/api/index.cjs"
39
- }
40
- },
41
- "./esm": "./dist/esm/index.mjs",
42
- "./esm/api": {
43
- "import": {
44
- "types": "./dist/esm/api/index.d.mts",
45
- "default": "./dist/esm/api/index.mjs"
46
- },
47
- "require": {
48
- "types": "./dist/esm/api/index.d.cts",
49
- "default": "./dist/esm/api/index.cjs"
50
- }
51
- },
52
- "./cli": "./dist/cli.mjs",
53
- "./suppress-warnings": "./dist/suppress-warnings.cjs",
54
- "./preflight": "./dist/preflight.cjs",
55
- "./repl": "./dist/repl.mjs"
56
- },
57
- "homepage": "https://tsx.is",
58
- "engines": {
59
- "node": ">=18.0.0"
60
- },
61
- "dependencies": {
62
- "esbuild": "~0.27.0",
63
- "get-tsconfig": "^4.7.5"
64
- },
65
- "optionalDependencies": {
66
- "fsevents": "~2.3.3"
67
- }
68
- }
@@ -1,77 +0,0 @@
1
- /**
2
- * Example: Offline signing with populateTransaction + sendRawTransaction.
3
- * Run with VERBOSE=1 for wallet address, tx hash, receipt block/status.
4
- *
5
- * This demonstrates how to:
6
- * - build unsigned tx data via `contract.populateTransaction.<method>()`
7
- * - sign it via `wallet.signTransaction(txReq)`
8
- * - broadcast via `provider.sendRawTransaction(rawTx)`
9
- *
10
- * NOTE:
11
- * - This example WILL broadcast a real transaction and change chain state.
12
- * - It uses a HARDCODED test wallet (funded) for convenience. Never use for real funds.
13
- * - Requires `QC_RPC_URL` env var.
14
- */
15
-
16
- const { Initialize } = require("../config");
17
- const qc = require("..");
18
- const { logExample, logAddress, logTxn } = require("../test/verbose-logger");
19
-
20
- // Hardcoded test wallet (test-only; never use for real funds)
21
- const TEST_WALLET_ENCRYPTED_JSON =
22
- "{\"address\":\"1a846abe71c8b989e8337c55d608be81c28ab3b2e40c83eaa2a68d516049aec6\",\"crypto\":{\"cipher\":\"aes-256-ctr\",\"ciphertext\":\"ab7e620dd66cb55ac201b9c6796de92bbb06f3681b5932eabe099871f1f7d79acabe30921a39ad13bfe74f42c515734882b6723760142aa3e26e011df514a534ae47bd15d86badd9c6f17c48d4c892711d54d441ee3a0ee0e5b060f816e79c7badd13ff4c235934b1986774223ecf6e8761388969bb239c759b54c8c70e6a2e27c93a4b70129c8159f461d271ae8f3573414c78b88e4d0abfa6365ed45456636d4ed971c7a0c6b84e6f0c2621e819268b135e2bcc169a54d1847b39e6ba2ae8ec969b69f330b7db9e785ed02204d5a1185915ae5338b0f40ef2a7f4d5aaf7563d502135e57f4eb89d5ec1efa5c77e374969d6cd85be625a2ed1225d68ecdd84067bfc69adb83ecd5c6050472eca28a5a646fcdd28077165c629975bec8a79fe1457cb53389b788b25e1f8eff8b2ca326d7dfcaba3f8839225a08057c018a458891fd2caa0d2b27632cffd80f592147ccec9a10dc8a08a48fb55047bff5cf85cda39eb089096bef63842fc3686412f298a54a9e4b0bf4ad36907ba373cbd6d32e7ac494af371da5aa9d38a3463220865114c4adc5e4ac258ba9c6af9fa2ddfd1aec2e16887e4b3977c69561df8599ac9d411c9dd2a4d57f92ea4e5c02aae3f49fb3bc83e16673e6c2dbe96bb181c8dfd0f9757ade2e4ff27215a836058c5ffeab042f6f97c7c02339f76a6284680e01b4bb733690eb3347fbfcc26614b8bf755f9dfce3fea9d4e4d15b164983201732c2e87593a86bca6da6972e128490338f76ae68135888070f4e59e90db54d23834769bdbda9769213faf5357f9167a224523975a946367b68f0cec98658575609f58bfd329e420a921c06713326e4cb20a0df1d77f37e78a320a637a96c604ca3fa89e24beb42313751b8f09b14f9c14c77e4fd13fc6382505d27c771bca0d821ec7c3765acffa99d83c50140a56b0b28101c762bd682fe55cb6f23cbeb3f421d7b36021010e45ac27160dd7ead99c864a1b550c7edb1246950fe32dcc049799f9085287f0a747a6ef7a023df46a23a22f3e833bbf8d404f84344870492658256ee1dfc40fda33bb8d48fc72d4520ba9fc820c9123104a045206809037709f2a5f6723fa77d6bac5a573823d4ec3a7f1cb786a52ee2697e622e5d75962fa554d1024a6c355e21f33a63b2b72e6c4742a8b1c373aa532b40518c38c90b5373c2eb8c9d7be2a9e16047a3ee09dc9a6849deac5183ace6cfe91a9bef2ffc0a7df6ccebfd4c858c84b0e0355650d7466971e66f1e3883013e5ad1be33199b1d110b79070ac1b745ccb14cf63a08f8cca3a21c9525e626ff5f0c34746e10750fb742ad51f11f2acae3676c2111853d7250d01b77821a6ba9e04400ba2c543ca9f2d701ae6f47bfad14ffe3039ee9e71f7b2401359ade9938750ddb9c5a8b018a7929ed8d0e717ff1861446ce17535e9b17c187711190aae3388bd9490837a636c25ed4d42d7079ad1a51e13292c683d5d012abcf46965c534b83ab53f2c1f0cf5830ef7582e06863a33c19a70511df632885d63245965047ea96b56f1af5b3b94a54999f784fb9574fdfcd7c1230e07a2aaa04acd3097b2b9f8ddba05ae9734491deb5c1a513c76ed276cb78bbf4839dae3156d76af444a5805129d5df791167a9c8576a1d7f760b2d2797c4658669608706fbd0ace1be2346f74862dfc9ef518e55632e43c043186e5d070deb34d12fb9e5aba84e5cb50213dc88efd39cc35bf42455aa82d5e3b707b3140be3b8623b34fdd81d08615c188ae8438a13881fdf6bf32f2cb9ff5fa625561040c6b71d4b8eccc90bc3b99650d28dd1ee63773e49664e3d48c484996b290943635a6f2eb1ce9796d3fa144a3f00ef82faaa32d6a413668f7b521517cb68b2b017fcf56c79326fa5e4060e643631ca3f0a0dc0ed718798b6f46b130d437c33f64039e887324b6f5e604b1669d613923794edbf04b1b3caea54793b52b44b170173a4f25c7ecef3b71e2aad76e556b1cb9f1d637ec52ececfa950dd31dbb6a60828a3ad34c1beffe09eb4785786d63bad10a0b0f66ea88c57380f38ea85f018dbd7f538cf1ee7624095b9a01ec5edd528f281168af020609e651ff316aa1320a710134ddfca600cc72174dcdb846d2aa29916488aa1b537b66da92e61af526debef4eb38c984569eaf549ff2129449269b492d030cd74d885f6f5785881cc4804b4a8a09ba4ff7aefe9074ac7d0c4f05d51fe4cc0ff7388a772092b9d02d70e5433a5cf3e02f46a6bd6b818d59a07ce3b9fbbf8b5faba74563bcc5240930c2d406c9aaee3e3ce0429bf68ac2b0a57adb09414cff50817d2a48fb9fa624ab863cb0c31a8b8dc5eaf6fa68cc1d7c6c685c5a33edd5c8933b9e8ab628ee428d0743699b2ff17f25586c7ce959280bb0b8c5342251f0a30b53dbc7bf1ee426ac9619c3560f811f2268ee37f189794e2e4b3db3a2fb2e34b649e504fb467438abfd1082619cc4a0b30d66beb831077812e418d2e2148db10cf4d4a29101ca52ec445b8d83519dd7de85a98e0beae9ee537096d3f1a55a7a80cdfa93d25f07c9f98e8af18cde19ec1f99c5dd4588b717a5039ddb7f177717caf0d0fd45420a70dbd6d3146890d9e450d5224146db4c33b779e3c3a04b976c052bad042ac57dd38be45407808c0fb0d7e2a8819e6cd53c6739e6612996ddaa6f066552590aa0343bc1e62b298ff2514a0cef8be21956c2e942816f7a3a3a0935eaf9b37251409ce444c986c3817e82835555fe18239f3ae33469d7965c2bde9991fde556bd07af01df52bbde0c35bb4ef48e3b5d0db53f8ca4ed35b83f760f0a1bc4ed9f86e85d6039a17df373c85402ef956f01db00eb39c4b74bd0660d29ee746714d9780d738e05c6cca414ce3d7b40dda8036a9eea9ab1388805f913eb19bdd3f09d9e161eaa50231bd9caba61971f194332dd28c696a60458c1c6c2cc5da8b1192611c7c553e9e12fe48ce46bbb891be8bb118721c86222e671ddd1da8f0ccb2b68e02f2014b4925e904e88369aaf7466bd7033a60c265d45955944916ecbdb84bf1b522b01b0149c632e04c568a7eb627c5bb90ece052ebcf79166c28b30d23fe52da0a5ab5dea83ca479a3e3b7a9cfbbfea04dbe6137c19d067317c2ec427a8c75a6b06bec6dcd5d5c0edc9aa80b9003b8e17c088b2f3db327d3e42630d82d20120240c3ba56232280787da4aabbf5bc95a864029f00710e195f2a76460a0317d10b552fe1bea097e41d49756c680a41d6ac186e62169b6b6cd7776ea84618b5b752328a5bacaa10aa122ff9b2698b43efe73d852a899db644863c8c9bc8068ea86ea843fd6fe36272b91cdc5d5317083ef3fd1e5462a0b0d0604dc57b3bbfceb0fca4cd349625dd7b25166af30efe5ee6a0af953a74d65f4736c59918ee55a3b0d9d9d42e04c7f8a77e479109f740e20c464d5d7e3d16805f47b61f403ff7f408c9e850d9baacd8067e544536a4953480b0f9ee9cd45f41ebd67b51f78788a6470cb1e5ca72ca346ce8a50d0ca0c921d5576a4455a1afb6d0bc688004712ee122cacdb29c51e84893324c27fa4a3f1917edf5352272b4c97579a6152e4b77663d0ab532915f2eeb6a862de8b696452321b660c3f2449673d086e95a7af28845a5259b763e0fcd09f72acf7b6c811066263060e5aa5b24658e880a01fd56bda4dad5ab604e129290f7d5489728f2a40968c6168b21cebbbcd11727cc9e9160c4e92e04387d3b0d62aab06a61f26daedd9fed11816ef2180172a47f47184ac4032b88758c98a2e0fb200f70e93ba695f5ebb7a1029610ad360d3b7fa1b4640b9dc674d3625eef786da93dff19bc7991b5d6193a3896664763fde479b5dfc04812111a80782854f2cf68ca7d82765cc9eb40fba4b44640710ed6e653abf9f07b466333f4fd22784d53cf40e17120f42caa841eaa24056b237827b0f47f7257c103c35027e9f503e5acfd023e7357b600d3084d361d5ee65ba319b45c153212a54e6fed85af7e43e0a926ebcbc2edf8de7e2ec9528f00bec262ad04d5c9dafccaea06a24748d28bf1799bae0e895543084539c50b5aaa4fb50d7431d6f0c8cee2a54aaf7ee7919b55bf40adb688632e5dbe273cea09e97b19c3d8e1f4de000deb66fa1942ad03a62d3252f51992244366c156000b49c297167a6cbdedea7ebae139d295f0ad298e0864249b905b7eb812886ec70ecdb286702274b5b8574149bf3866f9e46b997ff5ed622b169a0eb071347f18d530db1663906a28f4544ee4e004ab87b65476af30ede118052ff052b8dc986ca2c93dd5d4943266a579c7698ea014f688b3e8063a107feb162d392e2177b01bff77fb5abe5feebd0607158049a5a093325b7c9ee6b4dfa7a9f65c7c2fb628920d3603a1c2dad979eaa047cd661a268af1078c9788d720e64e4ce9d12e68de1e417ef2f293323681e1071f9220e1ee43d2e29d111b870ce3439f5100ecd4551ab65ee74aa1667e564957e9bc0ae1ea193980da2a0ec2698073388c85bec25ef447f0d5e93a5203fa44dff268e5cb799ed3b66e63d5e07b487e7534f24934c73a62a243e0151843a0fd3807711a101eaa7fc71f0ba68aebb9534d57cba41b094eebfb4c31cca8eddfa426f676aa347be8a7023a4e91ddb154b35cd4d5f7dbc2e5db491de99f33fc2cff2d57029ac950e1ccd681980af6a4e8969dfe39b3c7bfcbcf8fac92f1e6ec9fe572bfa6a7d65860eab2ed10ac01a71290b52e3148e84b7376a8605cd2bb0e8681ffc54691ce087685e33921bd44d36c78291713dce17569570f62137e6904f0d68cf53aa2ec395c389a75141f08114fb293ea63950e4ffee55ec6fc83cf44876b8e7f25cdd393ff87b9eda6eb746085b61a6900de191f0ce2cb388d61ece52e78bc47368194e8e00277e0d1631e6b9d4626ef76f8522582ccd5a40be3febc699bb510acc6271d55ff0f4cf3bb7669855a72efd9ca3e1056a2fe592a5bc877cce2b1f63b58383971da87873d2d1349cf5881242cdce4e7e2c5c514755746a0e0a7c2a6d9701cde005ae3420beb17c379a3516662253554f51f0423bb1844b0b90c54ed8177ceb0e1036a6609d836e748ca06c40ca64befadc6443ec286a0ce464678e8d11eb455f7bb305acebf6cb1f50e394a9bfeb752df1687831bac9cdd811f4f112ef6658d0f8799a866374ff96c5e2b79f30e7a74f8a2bc9ed1f88f01f30e30cb78ffb2bff10108f35e910ee3be4463e9e6f0ed910e8d598326e71dfa2277ffe5579d7fe9b6018bfe295b25219eae07b3b0270665c3fa00c3e0d180812b5cd62925585de84a7c48a9a86dba96544a251654d1966e082432dc85b6149cf21e91a46020ec32b66d28ba3b6a90c0617bc6fdd55aea819af2bcf84864ad60c28fe3c9f8339d0aee68b39d97f63b6e082835d86119cf9b9fdc8b827c847ce40aa10e1577a710132316845e825345e95bdf94d0c66ec65a6c4319fce4792313663b5f7a651a6710783e6ab71608ac6cbbf3af6911adf596ccf7c172b9bd5bceb6db379967b32b143bdd11d2ee12ddf64ecef6391e0f8570e6cddd3db95204919362b89b739fa94e7c1bfde799fd5e22aa25ca6ca42e30c08e23aae2385d99ebab441072a880dcefdab74a4c9bd39d363f6d1933d59400fca161d432aa00f23b1b1c19a154be8989699d549b66d44e39896f5523443bc6ddf4a65e91f1f3fb7b52318869a05856a4fc92f3694c81ed833c972fb918f7e5\",\"cipherparams\":{\"iv\":\"8c46d6162cd4c765759aedcbce2a5874\"},\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"n\":262144,\"p\":1,\"r\":8,\"salt\":\"82fb6cdc6917609135277badacf15baa31899d08b71a5a0fa33167167c161537\"},\"mac\":\"9187b17f7eca48e6b8c586b0cd790dbe0feb876ac8385f93faa7d5e22a3c8fc7\"},\"id\":\"92caf6ee-2d43-48c0-859e-ffa1e0e23312\",\"version\":3}";
23
- const TEST_WALLET_PASSPHRASE = "QuantumCoinExample123!";
24
-
25
- async function main() {
26
- const rpcUrl = process.env.QC_RPC_URL;
27
- if (!rpcUrl) throw new Error("QC_RPC_URL is required");
28
- const chainId = process.env.QC_CHAIN_ID ? Number(process.env.QC_CHAIN_ID) : 123123;
29
- logExample("offline-signing.js", "starting", { chainId });
30
-
31
- await Initialize(null);
32
-
33
- const provider = qc.getProvider(rpcUrl, chainId);
34
- const offlineWallet = qc.Wallet.fromEncryptedJsonSync(TEST_WALLET_ENCRYPTED_JSON, TEST_WALLET_PASSPHRASE);
35
- logAddress("wallet", offlineWallet.address);
36
-
37
- // Minimal ABI for demonstration
38
- const abi = [
39
- {
40
- type: "function",
41
- name: "setValue",
42
- stateMutability: "nonpayable",
43
- inputs: [{ name: "value", type: "uint256" }],
44
- outputs: [],
45
- },
46
- ];
47
-
48
- const dummyContractAddress = "0x" + "11".repeat(32);
49
- const contract = new qc.Contract(dummyContractAddress, abi);
50
-
51
- const txReq = await contract.populateTransaction.setValue(123, { gasLimit: 200000 });
52
-
53
- const nonce = await provider.getTransactionCount(offlineWallet.address, "pending");
54
- const rawTx = await offlineWallet.signTransaction({
55
- ...txReq,
56
- nonce,
57
- chainId,
58
- });
59
-
60
- console.log("Unsigned txReq:", txReq);
61
- console.log("Signed rawTx:", rawTx);
62
- console.log("Submitting via sendRawTransaction...");
63
-
64
- const sent = await provider.sendRawTransaction(rawTx);
65
- console.log("tx hash:", sent.hash);
66
- logTxn(sent.hash, { from: offlineWallet.address });
67
- const receipt = await sent.wait(1, 600_000);
68
- console.log("receipt block:", receipt.blockNumber);
69
- console.log("receipt status:", receipt.status);
70
- logTxn(sent.hash, { blockNumber: receipt.blockNumber, status: receipt.status });
71
- }
72
-
73
- main().catch((e) => {
74
- console.error(e);
75
- process.exitCode = 1;
76
- });
77
-
@@ -1,65 +0,0 @@
1
- /**
2
- * Example: Offline signing with populateTransaction + sendRawTransaction - TypeScript.
3
- * Run: npx tsx examples/offline-signing.ts
4
- * Requires QC_RPC_URL. Uses hardcoded test wallet (never use for real funds).
5
- */
6
-
7
- import { Initialize } from "../config";
8
- import qc from "..";
9
- import { logExample, logAddress, logTxn } from "../test/verbose-logger";
10
-
11
- const TEST_WALLET_ENCRYPTED_JSON =
12
- "{\"address\":\"1a846abe71c8b989e8337c55d608be81c28ab3b2e40c83eaa2a68d516049aec6\",\"crypto\":{\"cipher\":\"aes-256-ctr\",\"ciphertext\":\"ab7e620dd66cb55ac201b9c6796de92bbb06f3681b5932eabe099871f1f7d79acabe30921a39ad13bfe74f42c515734882b6723760142aa3e26e011df514a534ae47bd15d86badd9c6f17c48d4c892711d54d441ee3a0ee0e5b060f816e79c7badd13ff4c235934b1986774223ecf6e8761388969bb239c759b54c8c70e6a2e27c93a4b70129c8159f461d271ae8f3573414c78b88e4d0abfa6365ed45456636d4ed971c7a0c6b84e6f0c2621e819268b135e2bcc169a54d1847b39e6ba2ae8ec969b69f330b7db9e785ed02204d5a1185915ae5338b0f40ef2a7f4d5aaf7563d502135e57f4eb89d5ec1efa5c77e374969d6cd85be625a2ed1225d68ecdd84067bfc69adb83ecd5c6050472eca28a5a646fcdd28077165c629975bec8a79fe1457cb53389b788b25e1f8eff8b2ca326d7dfcaba3f8839225a08057c018a458891fd2caa0d2b27632cffd80f592147ccec9a10dc8a08a48fb55047bff5cf85cda39eb089096bef63842fc3686412f298a54a9e4b0bf4ad36907ba373cbd6d32e7ac494af371da5aa9d38a3463220865114c4adc5e4ac258ba9c6af9fa2ddfd1aec2e16887e4b3977c69561df8599ac9d411c9dd2a4d57f92ea4e5c02aae3f49fb3bc83e16673e6c2dbe96bb181c8dfd0f9757ade2e4ff27215a836058c5ffeab042f6f97c7c02339f76a6284680e01b4bb733690eb3347fbfcc26614b8bf755f9dfce3fea9d4e4d15b164983201732c2e87593a86bca6da6972e128490338f76ae68135888070f4e59e90db54d23834769bdbda9769213faf5357f9167a224523975a946367b68f0cec98658575609f58bfd329e420a921c06713326e4cb20a0df1d77f37e78a320a637a96c604ca3fa89e24beb42313751b8f09b14f9c14c77e4fd13fc6382505d27c771bca0d821ec7c3765acffa99d83c50140a56b0b28101c762bd682fe55cb6f23cbeb3f421d7b36021010e45ac27160dd7ead99c864a1b550c7edb1246950fe32dcc049799f9085287f0a747a6ef7a023df46a23a22f3e833bbf8d404f84344870492658256ee1dfc40fda33bb8d48fc72d4520ba9fc820c9123104a045206809037709f2a5f6723fa77d6bac5a573823d4ec3a7f1cb786a52ee2697e622e5d75962fa554d1024a6c355e21f33a63b2b72e6c4742a8b1c373aa532b40518c38c90b5373c2eb8c9d7be2a9e16047a3ee09dc9a6849deac5183ace6cfe91a9bef2ffc0a7df6ccebfd4c858c84b0e0355650d7466971e66f1e3883013e5ad1be33199b1d110b79070ac1b745ccb14cf63a08f8cca3a21c9525e626ff5f0c34746e10750fb742ad51f11f2acae3676c2111853d7250d01b77821a6ba9e04400ba2c543ca9f2d701ae6f47bfad14ffe3039ee9e71f7b2401359ade9938750ddb9c5a8b018a7929ed8d0e717ff1861446ce17535e9b17c187711190aae3388bd9490837a636c25ed4d42d7079ad1a51e13292c683d5d012abcf46965c534b83ab53f2c1f0cf5830ef7582e06863a33c19a70511df632885d63245965047ea96b56f1af5b3b94a54999f784fb9574fdfcd7c1230e07a2aaa04acd3097b2b9f8ddba05ae9734491deb5c1a513c76ed276cb78bbf4839dae3156d76af444a5805129d5df791167a9c8576a1d7f760b2d2797c4658669608706fbd0ace1be2346f74862dfc9ef518e55632e43c043186e5d070deb34d12fb9e5aba84e5cb50213dc88efd39cc35bf42455aa82d5e3b707b3140be3b8623b34fdd81d08615c188ae8438a13881fdf6bf32f2cb9ff5fa625561040c6b71d4b8eccc90bc3b99650d28dd1ee63773e49664e3d48c484996b290943635a6f2eb1ce9796d3fa144a3f00ef82faaa32d6a413668f7b521517cb68b2b017fcf56c79326fa5e4060e643631ca3f0a0dc0ed718798b6f46b130d437c33f64039e887324b6f5e604b1669d613923794edbf04b1b3caea54793b52b44b170173a4f25c7ecef3b71e2aad76e556b1cb9f1d637ec52ececfa950dd31dbb6a60828a3ad34c1beffe09eb4785786d63bad10a0b0f66ea88c57380f38ea85f018dbd7f538cf1ee7624095b9a01ec5edd528f281168af020609e651ff316aa1320a710134ddfca600cc72174dcdb846d2aa29916488aa1b537b66da92e61af526debef4eb38c984569eaf549ff2129449269b492d030cd74d885f6f5785881cc4804b4a8a09ba4ff7aefe9074ac7d0c4f05d51fe4cc0ff7388a772092b9d02d70e5433a5cf3e02f46a6bd6b818d59a07ce3b9fbbf8b5faba74563bcc5240930c2d406c9aaee3e3ce0429bf68ac2b0a57adb09414cff50817d2a48fb9fa624ab863cb0c31a8b8dc5eaf6fa68cc1d7c6c685c5a33edd5c8933b9e8ab628ee428d0743699b2ff17f25586c7ce959280bb0b8c5342251f0a30b53dbc7bf1ee426ac9619c3560f811f2268ee37f189794e2e4b3db3a2fb2e34b649e504fb467438abfd1082619cc4a0b30d66beb831077812e418d2e2148db10cf4d4a29101ca52ec445b8d83519dd7de85a98e0beae9ee537096d3f1a55a7a80cdfa93d25f07c9f98e8af18cde19ec1f99c5dd4588b717a5039ddb7f177717caf0d0fd45420a70dbd6d3146890d9e450d5224146db4c33b779e3c3a04b976c052bad042ac57dd38be45407808c0fb0d7e2a8819e6cd53c6739e6612996ddaa6f066552590aa0343bc1e62b298ff2514a0cef8be21956c2e942816f7a3a3a0935eaf9b37251409ce444c986c3817e82835555fe18239f3ae33469d7965c2bde9991fde556bd07af01df52bbde0c35bb4ef48e3b5d0db53f8ca4ed35b83f760f0a1bc4ed9f86e85d6039a17df373c85402ef956f01db00eb39c4b74bd0660d29ee746714d9780d738e05c6cca414ce3d7b40dda8036a9eea9ab1388805f913eb19bdd3f09d9e161eaa50231bd9caba61971f194332dd28c696a60458c1c6c2cc5da8b1192611c7c553e9e12fe48ce46bbb891be8bb118721c86222e671ddd1da8f0ccb2b68e02f2014b4925e904e88369aaf7466bd7033a60c265d45955944916ecbdb84bf1b522b01b0149c632e04c568a7eb627c5bb90ece052ebcf79166c28b30d23fe52da0a5ab5dea83ca479a3e3b7a9cfbbfea04dbe6137c19d067317c2ec427a8c75a6b06bec6dcd5d5c0edc9aa80b9003b8e17c088b2f3db327d3e42630d82d20120240c3ba56232280787da4aabbf5bc95a864029f00710e195f2a76460a0317d10b552fe1bea097e41d49756c680a41d6ac186e62169b6b6cd7776ea84618b5b752328a5bacaa10aa122ff9b2698b43efe73d852a899db644863c8c9bc8068ea86ea843fd6fe36272b91cdc5d5317083ef3fd1e5462a0b0d0604dc57b3bbfceb0fca4cd349625dd7b25166af30efe5ee6a0af953a74d65f4736c59918ee55a3b0d9d9d42e04c7f8a77e479109f740e20c464d5d7e3d16805f47b61f403ff7f408c9e850d9baacd8067e544536a4953480b0f9ee9cd45f41ebd67b51f78788a6470cb1e5ca72ca346ce8a50d0ca0c921d5576a4455a1afb6d0bc688004712ee122cacdb29c51e84893324c27fa4a3f1917edf5352272b4c97579a6152e4b77663d0ab532915f2eeb6a862de8b696452321b660c3f2449673d086e95a7af28845a5259b763e0fcd09f72acf7b6c811066263060e5aa5b24658e880a01fd56bda4dad5ab604e129290f7d5489728f2a40968c6168b21cebbbcd11727cc9e9160c4e92e04387d3b0d62aab06a61f26daedd9fed11816ef2180172a47f47184ac4032b88758c98a2e0fb200f70e93ba695f5ebb7a1029610ad360d3b7fa1b4640b9dc674d3625eef786da93dff19bc7991b5d6193a3896664763fde479b5dfc04812111a80782854f2cf68ca7d82765cc9eb40fba4b44640710ed6e653abf9f07b466333f4fd22784d53cf40e17120f42caa841eaa24056b237827b0f47f7257c103c35027e9f503e5acfd023e7357b600d3084d361d5ee65ba319b45c153212a54e6fed85af7e43e0a926ebcbc2edf8de7e2ec9528f00bec262ad04d5c9dafccaea06a24748d28bf1799bae0e895543084539c50b5aaa4fb50d7431d6f0c8cee2a54aaf7ee7919b55bf40adb688632e5dbe273cea09e97b19c3d8e1f4de000deb66fa1942ad03a62d3252f51992244366c156000b49c297167a6cbdedea7ebae139d295f0ad298e0864249b905b7eb812886ec70ecdb286702274b5b8574149bf3866f9e46b997ff5ed622b169a0eb071347f18d530db1663906a28f4544ee4e004ab87b65476af30ede118052ff052b8dc986ca2c93dd5d4943266a579c7698ea014f688b3e8063a107feb162d392e2177b01bff77fb5abe5feebd0607158049a5a093325b7c9ee6b4dfa7a9f65c7c2fb628920d3603a1c2dad979eaa047cd661a268af1078c9788d720e64e4ce9d12e68de1e417ef2f293323681e1071f9220e1ee43d2e29d111b870ce3439f5100ecd4551ab65ee74aa1667e564957e9bc0ae1ea193980da2a0ec2698073388c85bec25ef447f0d5e93a5203fa44dff268e5cb799ed3b66e63d5e07b487e7534f24934c73a62a243e0151843a0fd3807711a101eaa7fc71f0ba68aebb9534d57cba41b094eebfb4c31cca8eddfa426f676aa347be8a7023a4e91ddb154b35cd4d5f7dbc2e5db491de99f33fc2cff2d57029ac950e1ccd681980af6a4e8969dfe39b3c7bfcbcf8fac92f1e6ec9fe572bfa6a7d65860eab2ed10ac01a71290b52e3148e84b7376a8605cd2bb0e8681ffc54691ce087685e33921bd44d36c78291713dce17569570f62137e6904f0d68cf53aa2ec395c389a75141f08114fb293ea63950e4ffee55ec6fc83cf44876b8e7f25cdd393ff87b9eda6eb746085b61a6900de191f0ce2cb388d61ece52e78bc47368194e8e00277e0d1631e6b9d4626ef76f8522582ccd5a40be3febc699bb510acc6271d55ff0f4cf3bb7669855a72efd9ca3e1056a2fe592a5bc877cce2b1f63b58383971da87873d2d1349cf5881242cdce4e7e2c5c514755746a0e0a7c2a6d9701cde005ae3420beb17c379a3516662253554f51f0423bb1844b0b90c54ed8177ceb0e1036a6609d836e748ca06c40ca64befadc6443ec286a0ce464678e8d11eb455f7bb305acebf6cb1f50e394a9bfeb752df1687831bac9cdd811f4f112ef6658d0f8799a866374ff96c5e2b79f30e7a74f8a2bc9ed1f88f01f30e30cb78ffb2bff10108f35e910ee3be4463e9e6f0ed910e8d598326e71dfa2277ffe5579d7fe9b6018bfe295b25219eae07b3b0270665c3fa00c3e0d180812b5cd62925585de84a7c48a9a86dba96544a251654d1966e082432dc85b6149cf21e91a46020ec32b66d28ba3b6a90c0617bc6fdd55aea819af2bcf84864ad60c28fe3c9f8339d0aee68b39d97f63b6e082835d86119cf9b9fdc8b827c847ce40aa10e1577a710132316845e825345e95bdf94d0c66ec65a6c4319fce4792313663b5f7a651a6710783e6ab71608ac6cbbf3af6911adf596ccf7c172b9bd5bceb6db379967b32b143bdd11d2ee12ddf64ecef6391e0f8570e6cddd3db95204919362b89b739fa94e7c1bfde799fd5e22aa25ca6ca42e30c08e23aae2385d99ebab441072a880dcefdab74a4c9bd39d363f6d1933d59400fca161d432aa00f23b1b1c19a154be8989699d549b66d44e39896f5523443bc6ddf4a65e91f1f3fb7b52318869a05856a4fc92f3694c81ed833c972fb918f7e5\",\"cipherparams\":{\"iv\":\"8c46d6162cd4c765759aedcbce2a5874\"},\"kdf\":\"scrypt\",\"kdfparams\":{\"dklen\":32,\"n\":262144,\"p\":1,\"r\":8,\"salt\":\"82fb6cdc6917609135277badacf15baa31899d08b71a5a0fa33167167c161537\"},\"mac\":\"9187b17f7eca48e6b8c586b0cd790dbe0feb876ac8385f93faa7d5e22a3c8fc7\"},\"id\":\"92caf6ee-2d43-48c0-859e-ffa1e0e23312\",\"version\":3}";
13
- const TEST_WALLET_PASSPHRASE = "QuantumCoinExample123!";
14
-
15
- async function main(): Promise<void> {
16
- const rpcUrl = process.env.QC_RPC_URL;
17
- if (!rpcUrl) throw new Error("QC_RPC_URL is required");
18
- const chainId = process.env.QC_CHAIN_ID ? Number(process.env.QC_CHAIN_ID) : 123123;
19
- logExample("offline-signing.ts", "starting", { chainId });
20
-
21
- await Initialize(null);
22
-
23
- const provider = qc.getProvider(rpcUrl, chainId);
24
- const offlineWallet = qc.Wallet.fromEncryptedJsonSync(TEST_WALLET_ENCRYPTED_JSON, TEST_WALLET_PASSPHRASE);
25
- logAddress("wallet", offlineWallet.address);
26
-
27
- const abi = [
28
- {
29
- type: "function",
30
- name: "setValue",
31
- stateMutability: "nonpayable",
32
- inputs: [{ name: "value", type: "uint256" }],
33
- outputs: [],
34
- },
35
- ];
36
-
37
- const dummyContractAddress = "0x" + "11".repeat(32);
38
- const contract = new qc.Contract(dummyContractAddress, abi);
39
-
40
- const txReq = await contract.populateTransaction.setValue(123, { gasLimit: 200000 });
41
-
42
- const nonce = await provider.getTransactionCount(offlineWallet.address, "pending");
43
- const rawTx = await offlineWallet.signTransaction({
44
- ...txReq,
45
- nonce,
46
- chainId,
47
- });
48
-
49
- console.log("Unsigned txReq:", txReq);
50
- console.log("Signed rawTx:", rawTx);
51
- console.log("Submitting via sendRawTransaction...");
52
-
53
- const sent = await provider.sendRawTransaction(rawTx);
54
- console.log("tx hash:", sent.hash);
55
- logTxn(sent.hash, { from: offlineWallet.address });
56
- const receipt = await sent.wait(1, 600_000);
57
- console.log("receipt block:", receipt.blockNumber);
58
- console.log("receipt status:", receipt.status);
59
- logTxn(sent.hash, { blockNumber: receipt.blockNumber, status: receipt.status });
60
- }
61
-
62
- main().catch((e) => {
63
- console.error(e);
64
- process.exitCode = 1;
65
- });