@midnames/sdk 1.0.3 → 1.0.5

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 (312) hide show
  1. package/dist/provider.js +1 -1
  2. package/node_modules/@midnames/ns/package.json +14 -14
  3. package/package.json +13 -11
  4. package/node_modules/@midnames/ns/.env +0 -10
  5. package/node_modules/@midnames/ns/.env.example +0 -11
  6. package/node_modules/@midnames/ns/.turbo/turbo-build.log +0 -2
  7. package/node_modules/@midnames/ns/.turbo/turbo-test.log +0 -13
  8. package/node_modules/@midnames/ns/midnight-level-db/000005.ldb +0 -0
  9. package/node_modules/@midnames/ns/midnight-level-db/000008.ldb +0 -0
  10. package/node_modules/@midnames/ns/midnight-level-db/000011.ldb +0 -0
  11. package/node_modules/@midnames/ns/midnight-level-db/000014.ldb +0 -0
  12. package/node_modules/@midnames/ns/midnight-level-db/000019.ldb +0 -0
  13. package/node_modules/@midnames/ns/midnight-level-db/000024.ldb +0 -0
  14. package/node_modules/@midnames/ns/midnight-level-db/000031.ldb +0 -0
  15. package/node_modules/@midnames/ns/midnight-level-db/000034.ldb +0 -0
  16. package/node_modules/@midnames/ns/midnight-level-db/000037.ldb +0 -0
  17. package/node_modules/@midnames/ns/midnight-level-db/000040.ldb +0 -0
  18. package/node_modules/@midnames/ns/midnight-level-db/000045.ldb +0 -0
  19. package/node_modules/@midnames/ns/midnight-level-db/000050.ldb +0 -0
  20. package/node_modules/@midnames/ns/midnight-level-db/000059.ldb +0 -0
  21. package/node_modules/@midnames/ns/midnight-level-db/000064.ldb +0 -0
  22. package/node_modules/@midnames/ns/midnight-level-db/000069.ldb +0 -0
  23. package/node_modules/@midnames/ns/midnight-level-db/000074.ldb +0 -0
  24. package/node_modules/@midnames/ns/midnight-level-db/000083.ldb +0 -0
  25. package/node_modules/@midnames/ns/midnight-level-db/000088.ldb +0 -0
  26. package/node_modules/@midnames/ns/midnight-level-db/000093.ldb +0 -0
  27. package/node_modules/@midnames/ns/midnight-level-db/000098.ldb +0 -0
  28. package/node_modules/@midnames/ns/midnight-level-db/000107.ldb +0 -0
  29. package/node_modules/@midnames/ns/midnight-level-db/000112.ldb +0 -0
  30. package/node_modules/@midnames/ns/midnight-level-db/000121.ldb +0 -0
  31. package/node_modules/@midnames/ns/midnight-level-db/000126.ldb +0 -0
  32. package/node_modules/@midnames/ns/midnight-level-db/000135.ldb +0 -0
  33. package/node_modules/@midnames/ns/midnight-level-db/000140.ldb +0 -0
  34. package/node_modules/@midnames/ns/midnight-level-db/000149.ldb +0 -0
  35. package/node_modules/@midnames/ns/midnight-level-db/000154.ldb +0 -0
  36. package/node_modules/@midnames/ns/midnight-level-db/000163.ldb +0 -0
  37. package/node_modules/@midnames/ns/midnight-level-db/000168.ldb +0 -0
  38. package/node_modules/@midnames/ns/midnight-level-db/000177.ldb +0 -0
  39. package/node_modules/@midnames/ns/midnight-level-db/000182.ldb +0 -0
  40. package/node_modules/@midnames/ns/midnight-level-db/000187.ldb +0 -0
  41. package/node_modules/@midnames/ns/midnight-level-db/000192.ldb +0 -0
  42. package/node_modules/@midnames/ns/midnight-level-db/000201.ldb +0 -0
  43. package/node_modules/@midnames/ns/midnight-level-db/000206.ldb +0 -0
  44. package/node_modules/@midnames/ns/midnight-level-db/000215.ldb +0 -0
  45. package/node_modules/@midnames/ns/midnight-level-db/000220.ldb +0 -0
  46. package/node_modules/@midnames/ns/midnight-level-db/000229.ldb +0 -0
  47. package/node_modules/@midnames/ns/midnight-level-db/000234.ldb +0 -0
  48. package/node_modules/@midnames/ns/midnight-level-db/000243.ldb +0 -0
  49. package/node_modules/@midnames/ns/midnight-level-db/000248.ldb +0 -0
  50. package/node_modules/@midnames/ns/midnight-level-db/000257.ldb +0 -0
  51. package/node_modules/@midnames/ns/midnight-level-db/000262.ldb +0 -0
  52. package/node_modules/@midnames/ns/midnight-level-db/000271.ldb +0 -0
  53. package/node_modules/@midnames/ns/midnight-level-db/000276.ldb +0 -0
  54. package/node_modules/@midnames/ns/midnight-level-db/000281.ldb +0 -0
  55. package/node_modules/@midnames/ns/midnight-level-db/000286.ldb +0 -0
  56. package/node_modules/@midnames/ns/midnight-level-db/000295.ldb +0 -0
  57. package/node_modules/@midnames/ns/midnight-level-db/000300.ldb +0 -0
  58. package/node_modules/@midnames/ns/midnight-level-db/000305.ldb +0 -0
  59. package/node_modules/@midnames/ns/midnight-level-db/000310.ldb +0 -0
  60. package/node_modules/@midnames/ns/midnight-level-db/000313.log +0 -0
  61. package/node_modules/@midnames/ns/midnight-level-db/000319.ldb +0 -0
  62. package/node_modules/@midnames/ns/midnight-level-db/000324.ldb +0 -0
  63. package/node_modules/@midnames/ns/midnight-level-db/000329.ldb +0 -0
  64. package/node_modules/@midnames/ns/midnight-level-db/000334.ldb +0 -0
  65. package/node_modules/@midnames/ns/midnight-level-db/000343.ldb +0 -0
  66. package/node_modules/@midnames/ns/midnight-level-db/000348.ldb +0 -0
  67. package/node_modules/@midnames/ns/midnight-level-db/000357.ldb +0 -0
  68. package/node_modules/@midnames/ns/midnight-level-db/000362.ldb +0 -0
  69. package/node_modules/@midnames/ns/midnight-level-db/000371.ldb +0 -0
  70. package/node_modules/@midnames/ns/midnight-level-db/000376.ldb +0 -0
  71. package/node_modules/@midnames/ns/midnight-level-db/000385.ldb +0 -0
  72. package/node_modules/@midnames/ns/midnight-level-db/000390.ldb +0 -0
  73. package/node_modules/@midnames/ns/midnight-level-db/000393.log +0 -0
  74. package/node_modules/@midnames/ns/midnight-level-db/CURRENT +0 -1
  75. package/node_modules/@midnames/ns/midnight-level-db/LOCK +0 -0
  76. package/node_modules/@midnames/ns/midnight-level-db/LOG +0 -3
  77. package/node_modules/@midnames/ns/midnight-level-db/LOG.old +0 -6
  78. package/node_modules/@midnames/ns/midnight-level-db/MANIFEST-000312 +0 -0
  79. package/node_modules/@midnames/ns/midnight-level-db/MANIFEST-000392 +0 -0
  80. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/README.md +0 -32
  81. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/built-ins.d.ts +0 -133
  82. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/built-ins.js +0 -216
  83. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/built-ins.js.map +0 -1
  84. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/casts.d.ts +0 -15
  85. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/casts.js +0 -65
  86. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/casts.js.map +0 -1
  87. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/circuit-context.d.ts +0 -66
  88. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/circuit-context.js +0 -150
  89. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/circuit-context.js.map +0 -1
  90. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/compact-types.d.ts +0 -209
  91. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/compact-types.js +0 -374
  92. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/compact-types.js.map +0 -1
  93. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constants.d.ts +0 -13
  94. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constants.js +0 -29
  95. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constants.js.map +0 -1
  96. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constructor-context.d.ts +0 -39
  97. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constructor-context.js +0 -26
  98. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/constructor-context.js.map +0 -1
  99. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/contract-dependencies.d.ts +0 -175
  100. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/contract-dependencies.js +0 -288
  101. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/contract-dependencies.js.map +0 -1
  102. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/error.d.ts +0 -16
  103. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/error.js +0 -43
  104. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/error.js.map +0 -1
  105. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/index.d.ts +0 -15
  106. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/index.js +0 -30
  107. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/index.js.map +0 -1
  108. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/proof-data.d.ts +0 -27
  109. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/proof-data.js +0 -16
  110. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/proof-data.js.map +0 -1
  111. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/utils.d.ts +0 -19
  112. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/utils.js +0 -41
  113. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/utils.js.map +0 -1
  114. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/version.d.ts +0 -2
  115. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/version.js +0 -18
  116. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/version.js.map +0 -1
  117. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/witness.d.ts +0 -24
  118. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/witness.js +0 -26
  119. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/witness.js.map +0 -1
  120. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/zswap.d.ts +0 -172
  121. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/zswap.js +0 -141
  122. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/dist/zswap.js.map +0 -1
  123. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/compact-runtime/package.json +0 -57
  124. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/ledger-v8.d.ts +0 -3079
  125. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/midnight_ledger_wasm.js +0 -5
  126. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/midnight_ledger_wasm_bg.js +0 -10056
  127. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/midnight_ledger_wasm_bg.wasm +0 -0
  128. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/midnight_ledger_wasm_fs.js +0 -69
  129. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/package-lock.json +0 -12
  130. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/package.json +0 -34
  131. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline0.js +0 -1
  132. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline1.js +0 -1
  133. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline10.js +0 -1
  134. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline11.js +0 -1
  135. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline12.js +0 -1
  136. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline13.js +0 -1
  137. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline14.js +0 -1
  138. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline15.js +0 -1
  139. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline16.js +0 -1
  140. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline17.js +0 -1
  141. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline18.js +0 -1
  142. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline19.js +0 -1
  143. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline2.js +0 -1
  144. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline20.js +0 -1
  145. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline21.js +0 -1
  146. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline22.js +0 -1
  147. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline23.js +0 -1
  148. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline3.js +0 -1
  149. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline4.js +0 -1
  150. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline5.js +0 -1
  151. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline6.js +0 -1
  152. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline7.js +0 -1
  153. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline8.js +0 -1
  154. package/node_modules/@midnames/ns/node_modules/@midnight-ntwrk/ledger-v8/snippets/midnight-ledger-wasm-a0cc58108d931982/inline9.js +0 -1
  155. package/node_modules/@midnames/ns/reports/report.xml +0 -33
  156. package/node_modules/@midnames/ns/src/index.ts +0 -13
  157. package/node_modules/@midnames/ns/src/leaf.compact +0 -290
  158. package/node_modules/@midnames/ns/src/managed/leaf/compiler/contract-info.json +0 -534
  159. package/node_modules/@midnames/ns/src/managed/leaf/contract/index.d.ts +0 -197
  160. package/node_modules/@midnames/ns/src/managed/leaf/contract/index.js +0 -3094
  161. package/node_modules/@midnames/ns/src/managed/leaf/contract/index.js.map +0 -8
  162. package/node_modules/@midnames/ns/src/managed/leaf/keys/add_multiple_fields.prover +0 -0
  163. package/node_modules/@midnames/ns/src/managed/leaf/keys/add_multiple_fields.verifier +0 -0
  164. package/node_modules/@midnames/ns/src/managed/leaf/keys/buy_domain_for.prover +0 -0
  165. package/node_modules/@midnames/ns/src/managed/leaf/keys/buy_domain_for.verifier +0 -0
  166. package/node_modules/@midnames/ns/src/managed/leaf/keys/change_owner.prover +0 -0
  167. package/node_modules/@midnames/ns/src/managed/leaf/keys/change_owner.verifier +0 -0
  168. package/node_modules/@midnames/ns/src/managed/leaf/keys/clear_all_fields.prover +0 -0
  169. package/node_modules/@midnames/ns/src/managed/leaf/keys/clear_all_fields.verifier +0 -0
  170. package/node_modules/@midnames/ns/src/managed/leaf/keys/clear_field.prover +0 -0
  171. package/node_modules/@midnames/ns/src/managed/leaf/keys/clear_field.verifier +0 -0
  172. package/node_modules/@midnames/ns/src/managed/leaf/keys/insert_field.prover +0 -0
  173. package/node_modules/@midnames/ns/src/managed/leaf/keys/insert_field.verifier +0 -0
  174. package/node_modules/@midnames/ns/src/managed/leaf/keys/register_domain_for.prover +0 -0
  175. package/node_modules/@midnames/ns/src/managed/leaf/keys/register_domain_for.verifier +0 -0
  176. package/node_modules/@midnames/ns/src/managed/leaf/keys/set_resolver.prover +0 -0
  177. package/node_modules/@midnames/ns/src/managed/leaf/keys/set_resolver.verifier +0 -0
  178. package/node_modules/@midnames/ns/src/managed/leaf/keys/transfer_domain.prover +0 -0
  179. package/node_modules/@midnames/ns/src/managed/leaf/keys/transfer_domain.verifier +0 -0
  180. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_color.prover +0 -0
  181. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_color.verifier +0 -0
  182. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_costs.prover +0 -0
  183. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_costs.verifier +0 -0
  184. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_domain_target.prover +0 -0
  185. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_domain_target.verifier +0 -0
  186. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_target_and_fields.prover +0 -0
  187. package/node_modules/@midnames/ns/src/managed/leaf/keys/update_target_and_fields.verifier +0 -0
  188. package/node_modules/@midnames/ns/src/managed/leaf/zkir/add_multiple_fields.bzkir +0 -0
  189. package/node_modules/@midnames/ns/src/managed/leaf/zkir/add_multiple_fields.zkir +0 -424
  190. package/node_modules/@midnames/ns/src/managed/leaf/zkir/buy_domain_for.bzkir +0 -0
  191. package/node_modules/@midnames/ns/src/managed/leaf/zkir/buy_domain_for.zkir +0 -1456
  192. package/node_modules/@midnames/ns/src/managed/leaf/zkir/change_owner.bzkir +0 -0
  193. package/node_modules/@midnames/ns/src/managed/leaf/zkir/change_owner.zkir +0 -57
  194. package/node_modules/@midnames/ns/src/managed/leaf/zkir/clear_all_fields.bzkir +0 -0
  195. package/node_modules/@midnames/ns/src/managed/leaf/zkir/clear_all_fields.zkir +0 -53
  196. package/node_modules/@midnames/ns/src/managed/leaf/zkir/clear_field.bzkir +0 -0
  197. package/node_modules/@midnames/ns/src/managed/leaf/zkir/clear_field.zkir +0 -58
  198. package/node_modules/@midnames/ns/src/managed/leaf/zkir/insert_field.bzkir +0 -0
  199. package/node_modules/@midnames/ns/src/managed/leaf/zkir/insert_field.zkir +0 -65
  200. package/node_modules/@midnames/ns/src/managed/leaf/zkir/register_domain_for.bzkir +0 -0
  201. package/node_modules/@midnames/ns/src/managed/leaf/zkir/register_domain_for.zkir +0 -401
  202. package/node_modules/@midnames/ns/src/managed/leaf/zkir/set_resolver.bzkir +0 -0
  203. package/node_modules/@midnames/ns/src/managed/leaf/zkir/set_resolver.zkir +0 -109
  204. package/node_modules/@midnames/ns/src/managed/leaf/zkir/transfer_domain.bzkir +0 -0
  205. package/node_modules/@midnames/ns/src/managed/leaf/zkir/transfer_domain.zkir +0 -212
  206. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_color.bzkir +0 -0
  207. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_color.zkir +0 -58
  208. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_costs.bzkir +0 -0
  209. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_costs.zkir +0 -88
  210. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_domain_target.bzkir +0 -0
  211. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_domain_target.zkir +0 -66
  212. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_target_and_fields.bzkir +0 -0
  213. package/node_modules/@midnames/ns/src/managed/leaf/zkir/update_target_and_fields.zkir +0 -450
  214. package/node_modules/@midnames/ns/src/test/batch-config.ts +0 -13
  215. package/node_modules/@midnames/ns/src/test/batch-deploy.ts +0 -914
  216. package/node_modules/@midnames/ns/src/test/contract.ts +0 -1228
  217. package/node_modules/@midnames/ns/src/test/derive_seed.ts +0 -102
  218. package/node_modules/@midnames/ns/src/test/example-deploy.config.ts +0 -76
  219. package/node_modules/@midnames/ns/src/test/midnight-level-db/000005.ldb +0 -0
  220. package/node_modules/@midnames/ns/src/test/midnight-level-db/000011.ldb +0 -0
  221. package/node_modules/@midnames/ns/src/test/midnight-level-db/000014.ldb +0 -0
  222. package/node_modules/@midnames/ns/src/test/midnight-level-db/000025.ldb +0 -0
  223. package/node_modules/@midnames/ns/src/test/midnight-level-db/000039.ldb +0 -0
  224. package/node_modules/@midnames/ns/src/test/midnight-level-db/000049.ldb +0 -0
  225. package/node_modules/@midnames/ns/src/test/midnight-level-db/000064.ldb +0 -0
  226. package/node_modules/@midnames/ns/src/test/midnight-level-db/000078.ldb +0 -0
  227. package/node_modules/@midnames/ns/src/test/midnight-level-db/000092.ldb +0 -0
  228. package/node_modules/@midnames/ns/src/test/midnight-level-db/000106.ldb +0 -0
  229. package/node_modules/@midnames/ns/src/test/midnight-level-db/000121.ldb +0 -0
  230. package/node_modules/@midnames/ns/src/test/midnight-level-db/000135.ldb +0 -0
  231. package/node_modules/@midnames/ns/src/test/midnight-level-db/000146.ldb +0 -0
  232. package/node_modules/@midnames/ns/src/test/midnight-level-db/000160.ldb +0 -0
  233. package/node_modules/@midnames/ns/src/test/midnight-level-db/000174.ldb +0 -0
  234. package/node_modules/@midnames/ns/src/test/midnight-level-db/000188.ldb +0 -0
  235. package/node_modules/@midnames/ns/src/test/midnight-level-db/000203.ldb +0 -0
  236. package/node_modules/@midnames/ns/src/test/midnight-level-db/000217.ldb +0 -0
  237. package/node_modules/@midnames/ns/src/test/midnight-level-db/000232.ldb +0 -0
  238. package/node_modules/@midnames/ns/src/test/midnight-level-db/000242.ldb +0 -0
  239. package/node_modules/@midnames/ns/src/test/midnight-level-db/000256.ldb +0 -0
  240. package/node_modules/@midnames/ns/src/test/midnight-level-db/000263.ldb +0 -0
  241. package/node_modules/@midnames/ns/src/test/midnight-level-db/000267.ldb +0 -0
  242. package/node_modules/@midnames/ns/src/test/midnight-level-db/000276.ldb +0 -0
  243. package/node_modules/@midnames/ns/src/test/midnight-level-db/000281.ldb +0 -0
  244. package/node_modules/@midnames/ns/src/test/midnight-level-db/000286.ldb +0 -0
  245. package/node_modules/@midnames/ns/src/test/midnight-level-db/000291.ldb +0 -0
  246. package/node_modules/@midnames/ns/src/test/midnight-level-db/000300.ldb +0 -0
  247. package/node_modules/@midnames/ns/src/test/midnight-level-db/000305.ldb +0 -0
  248. package/node_modules/@midnames/ns/src/test/midnight-level-db/000314.ldb +0 -0
  249. package/node_modules/@midnames/ns/src/test/midnight-level-db/000319.ldb +0 -0
  250. package/node_modules/@midnames/ns/src/test/midnight-level-db/000328.ldb +0 -0
  251. package/node_modules/@midnames/ns/src/test/midnight-level-db/000333.ldb +0 -0
  252. package/node_modules/@midnames/ns/src/test/midnight-level-db/000342.ldb +0 -0
  253. package/node_modules/@midnames/ns/src/test/midnight-level-db/000347.ldb +0 -0
  254. package/node_modules/@midnames/ns/src/test/midnight-level-db/000356.ldb +0 -0
  255. package/node_modules/@midnames/ns/src/test/midnight-level-db/000361.ldb +0 -0
  256. package/node_modules/@midnames/ns/src/test/midnight-level-db/000370.ldb +0 -0
  257. package/node_modules/@midnames/ns/src/test/midnight-level-db/000375.ldb +0 -0
  258. package/node_modules/@midnames/ns/src/test/midnight-level-db/000380.ldb +0 -0
  259. package/node_modules/@midnames/ns/src/test/midnight-level-db/000385.ldb +0 -0
  260. package/node_modules/@midnames/ns/src/test/midnight-level-db/000392.ldb +0 -0
  261. package/node_modules/@midnames/ns/src/test/midnight-level-db/000397.ldb +0 -0
  262. package/node_modules/@midnames/ns/src/test/midnight-level-db/000400.ldb +0 -0
  263. package/node_modules/@midnames/ns/src/test/midnight-level-db/000403.ldb +0 -0
  264. package/node_modules/@midnames/ns/src/test/midnight-level-db/000408.ldb +0 -0
  265. package/node_modules/@midnames/ns/src/test/midnight-level-db/000413.ldb +0 -0
  266. package/node_modules/@midnames/ns/src/test/midnight-level-db/000422.ldb +0 -0
  267. package/node_modules/@midnames/ns/src/test/midnight-level-db/000427.ldb +0 -0
  268. package/node_modules/@midnames/ns/src/test/midnight-level-db/000432.ldb +0 -0
  269. package/node_modules/@midnames/ns/src/test/midnight-level-db/000437.ldb +0 -0
  270. package/node_modules/@midnames/ns/src/test/midnight-level-db/000446.ldb +0 -0
  271. package/node_modules/@midnames/ns/src/test/midnight-level-db/000451.ldb +0 -0
  272. package/node_modules/@midnames/ns/src/test/midnight-level-db/000456.ldb +0 -0
  273. package/node_modules/@midnames/ns/src/test/midnight-level-db/000461.ldb +0 -0
  274. package/node_modules/@midnames/ns/src/test/midnight-level-db/000470.ldb +0 -0
  275. package/node_modules/@midnames/ns/src/test/midnight-level-db/000475.ldb +0 -0
  276. package/node_modules/@midnames/ns/src/test/midnight-level-db/000480.ldb +0 -0
  277. package/node_modules/@midnames/ns/src/test/midnight-level-db/000485.ldb +0 -0
  278. package/node_modules/@midnames/ns/src/test/midnight-level-db/000494.ldb +0 -0
  279. package/node_modules/@midnames/ns/src/test/midnight-level-db/000499.ldb +0 -0
  280. package/node_modules/@midnames/ns/src/test/midnight-level-db/000504.ldb +0 -0
  281. package/node_modules/@midnames/ns/src/test/midnight-level-db/000509.ldb +0 -0
  282. package/node_modules/@midnames/ns/src/test/midnight-level-db/000518.ldb +0 -0
  283. package/node_modules/@midnames/ns/src/test/midnight-level-db/000523.ldb +0 -0
  284. package/node_modules/@midnames/ns/src/test/midnight-level-db/000528.ldb +0 -0
  285. package/node_modules/@midnames/ns/src/test/midnight-level-db/000533.ldb +0 -0
  286. package/node_modules/@midnames/ns/src/test/midnight-level-db/000542.ldb +0 -0
  287. package/node_modules/@midnames/ns/src/test/midnight-level-db/000547.ldb +0 -0
  288. package/node_modules/@midnames/ns/src/test/midnight-level-db/000552.ldb +0 -0
  289. package/node_modules/@midnames/ns/src/test/midnight-level-db/000557.ldb +0 -0
  290. package/node_modules/@midnames/ns/src/test/midnight-level-db/000566.ldb +0 -0
  291. package/node_modules/@midnames/ns/src/test/midnight-level-db/000571.ldb +0 -0
  292. package/node_modules/@midnames/ns/src/test/midnight-level-db/000576.ldb +0 -0
  293. package/node_modules/@midnames/ns/src/test/midnight-level-db/000581.ldb +0 -0
  294. package/node_modules/@midnames/ns/src/test/midnight-level-db/000590.ldb +0 -0
  295. package/node_modules/@midnames/ns/src/test/midnight-level-db/000595.ldb +0 -0
  296. package/node_modules/@midnames/ns/src/test/midnight-level-db/000600.ldb +0 -0
  297. package/node_modules/@midnames/ns/src/test/midnight-level-db/000605.ldb +0 -0
  298. package/node_modules/@midnames/ns/src/test/midnight-level-db/000608.log +0 -0
  299. package/node_modules/@midnames/ns/src/test/midnight-level-db/CURRENT +0 -1
  300. package/node_modules/@midnames/ns/src/test/midnight-level-db/LOCK +0 -0
  301. package/node_modules/@midnames/ns/src/test/midnight-level-db/LOG +0 -3
  302. package/node_modules/@midnames/ns/src/test/midnight-level-db/LOG.old +0 -6
  303. package/node_modules/@midnames/ns/src/test/midnight-level-db/MANIFEST-000607 +0 -0
  304. package/node_modules/@midnames/ns/src/test/ns-simulator.ts +0 -115
  305. package/node_modules/@midnames/ns/src/test/ns.test.ts +0 -132
  306. package/node_modules/@midnames/ns/src/test/profile-fields.ts +0 -148
  307. package/node_modules/@midnames/ns/src/test/wallet.ts +0 -289
  308. package/node_modules/@midnames/ns/src/utils.ts +0 -16
  309. package/node_modules/@midnames/ns/src/witnesses.ts +0 -6
  310. package/node_modules/@midnames/ns/tsconfig.build.json +0 -5
  311. package/node_modules/@midnames/ns/tsconfig.json +0 -12
  312. package/node_modules/@midnames/ns/vitest.config.ts +0 -30
@@ -1,132 +0,0 @@
1
- import { NSSimulator } from "./ns-simulator.js";
2
- import { setNetworkId } from "@midnight-ntwrk/midnight-js-network-id";
3
- import { describe, it, expect } from "vitest";
4
-
5
- setNetworkId("undeployed");
6
-
7
- function paddedKey(dataBytes: number[]): Uint8Array {
8
- const key = new Uint8Array(32).fill(255);
9
- for (let i = 0; i < dataBytes.length; i++) key[i] = dataBytes[i];
10
- return key;
11
- }
12
-
13
- function stringToKey(s: string): Uint8Array {
14
- const bytes = Array.from(new TextEncoder().encode(s));
15
- return paddedKey(bytes);
16
- }
17
-
18
- const dummyOwner = { bytes: new Uint8Array(32) };
19
- const dummyResolver = { bytes: new Uint8Array(32) };
20
-
21
- describe("Leaf contract", () => {
22
- it("generates initial ledger state deterministically", () => {
23
- const simulator0 = new NSSimulator();
24
- const simulator1 = new NSSimulator();
25
- const l0 = simulator0.getLedger();
26
- const l1 = simulator1.getLedger();
27
- expect(l0.COST_SHORT).toEqual(l1.COST_SHORT);
28
- expect(l0.COIN_COLOR).toEqual(l1.COIN_COLOR);
29
- expect(l0.DOMAIN_OWNER).toEqual(l1.DOMAIN_OWNER);
30
- expect(l0.PARENT_DOMAIN).toEqual(l1.PARENT_DOMAIN);
31
- expect(l0.DOMAIN).toEqual(l1.DOMAIN);
32
- expect(l0.domains.isEmpty()).toEqual(l1.domains.isEmpty());
33
- });
34
-
35
- it("properly initializes ledger state", () => {
36
- const simulator = new NSSimulator();
37
- const ledger = simulator.getLedger();
38
- expect(ledger.COST_SHORT).toEqual(100n);
39
- expect(ledger.domains.isEmpty()).toBe(true);
40
- });
41
- });
42
-
43
- describe("buy_domain_for — validation", () => {
44
- it("accepts a valid domain purchase with proper padding", () => {
45
- const simulator = new NSSimulator();
46
- // "alice" = [0x61, 0x6c, 0x69, 0x63, 0x65]
47
- const key = stringToKey("alice");
48
- expect(() => simulator.buyDomainFor(dummyOwner, key, 5n, dummyResolver)).not.toThrow();
49
- });
50
-
51
- it("accepts len=1 (short premium name)", () => {
52
- const simulator = new NSSimulator();
53
- const key = paddedKey([0x41]);
54
- expect(() => simulator.buyDomainFor(dummyOwner, key, 1n, dummyResolver)).not.toThrow();
55
- });
56
-
57
- it("accepts len=32 (max length domain)", () => {
58
- const simulator = new NSSimulator();
59
- const key = new Uint8Array(32).fill(0x41);
60
- expect(() => simulator.buyDomainFor(dummyOwner, key, 32n, dummyResolver)).not.toThrow();
61
- });
62
-
63
- it("rejects non-255 byte in padding region", () => {
64
- const simulator = new NSSimulator();
65
- const key = paddedKey([0x41, 0x42]);
66
- key[2] = 0x43; // should be 255
67
- expect(() => simulator.buyDomainFor(dummyOwner, key, 2n, dummyResolver)).toThrow();
68
- });
69
-
70
- it("rejects len > 32", () => {
71
- const simulator = new NSSimulator();
72
- const key = new Uint8Array(32).fill(0x41);
73
- expect(() => simulator.buyDomainFor(dummyOwner, key, 33n, dummyResolver)).toThrow();
74
- });
75
-
76
- it("rejects len = 0 (empty name)", () => {
77
- const simulator = new NSSimulator();
78
- const key = new Uint8Array(32).fill(255);
79
- expect(() => simulator.buyDomainFor(dummyOwner, key, 0n, dummyResolver)).toThrow();
80
- });
81
-
82
- it("rejects duplicate domain purchase", () => {
83
- const simulator = new NSSimulator();
84
- const key = stringToKey("alice");
85
- simulator.buyDomainFor(dummyOwner, key, 5n, dummyResolver);
86
- expect(() => simulator.buyDomainFor(dummyOwner, key, 5n, dummyResolver)).toThrow();
87
- });
88
-
89
- it("stores domain data correctly after purchase", () => {
90
- const simulator = new NSSimulator();
91
- const key = stringToKey("bob");
92
- const ledger = simulator.buyDomainFor(dummyOwner, key, 3n, dummyResolver);
93
- expect(ledger.domains.member(key)).toBe(true);
94
- const data = ledger.domains.lookup(key);
95
- expect(data.owner).toEqual(dummyOwner);
96
- expect(data.resolver).toEqual(dummyResolver);
97
- });
98
-
99
- it("converts string to properly padded Bytes<32>", () => {
100
- const key = stringToKey("alice");
101
- // "alice" = [0x61, 0x6c, 0x69, 0x63, 0x65]
102
- expect(key[0]).toBe(0x61);
103
- expect(key[1]).toBe(0x6c);
104
- expect(key[2]).toBe(0x69);
105
- expect(key[3]).toBe(0x63);
106
- expect(key[4]).toBe(0x65);
107
- for (let i = 5; i < 32; i++) {
108
- expect(key[i]).toBe(255);
109
- }
110
- });
111
- });
112
-
113
- describe("register_domain_for — validation", () => {
114
- it("accepts a valid domain registration with proper padding", () => {
115
- const simulator = new NSSimulator();
116
- const key = stringToKey("test");
117
- expect(() => simulator.registerDomainFor(dummyOwner, key, 4n, dummyResolver)).not.toThrow();
118
- });
119
-
120
- it("rejects invalid padding", () => {
121
- const simulator = new NSSimulator();
122
- const key = paddedKey([0x41, 0x42]);
123
- key[2] = 0x00; // should be 255
124
- expect(() => simulator.registerDomainFor(dummyOwner, key, 2n, dummyResolver)).toThrow();
125
- });
126
-
127
- it("rejects empty name (len=0)", () => {
128
- const simulator = new NSSimulator();
129
- const key = new Uint8Array(32).fill(255);
130
- expect(() => simulator.registerDomainFor(dummyOwner, key, 0n, dummyResolver)).toThrow();
131
- });
132
- });
@@ -1,148 +0,0 @@
1
- /**
2
- * Profile field key constants matching the frontend domain profile system.
3
- *
4
- * These mirror the keys used in:
5
- * - frontend-vite-react/src/types/domain.ts (DomainProfile interface)
6
- * - frontend-vite-react/src/constants/profile-presets.ts (PROFILE_PRESET_FIELDS)
7
- * - frontend-vite-react/src/utils/social-links.ts (SOCIAL_PLATFORMS)
8
- * - frontend-vite-react/src/components/domain/AddMultipleFieldsForm.tsx (COMMON_FIELDS)
9
- * - frontend-vite-react/src/hooks/useDomainOperations.ts (buildInitialFields)
10
- */
11
-
12
- // ─── Base Profile Fields ────────────────────────────────────────────────────
13
- // Always available on the registration form
14
- export const FIELD_NAME = "name";
15
- export const FIELD_BIO = "bio";
16
- export const FIELD_AVATAR = "avatar";
17
- export const FIELD_WEBSITE = "website";
18
- export const FIELD_TWITTER = "twitter";
19
- export const FIELD_GITHUB = "github";
20
-
21
- // ─── System / Auto-populated Fields ─────────────────────────────────────────
22
- export const FIELD_PROFILE_TYPE = "profile_type";
23
- export const FIELD_EPK = "epk"; // encryption public key (from wallet)
24
-
25
- // ─── Social Platforms ───────────────────────────────────────────────────────
26
- export const FIELD_DISCORD = "discord";
27
- export const FIELD_DISCORD_ID = "discord_id";
28
- export const FIELD_DISCORD_VERIFY = "discord_verify";
29
- export const FIELD_TELEGRAM = "telegram";
30
- export const FIELD_TWITCH = "twitch";
31
- export const FIELD_YOUTUBE = "youtube";
32
- export const FIELD_INSTAGRAM = "instagram";
33
- export const FIELD_TIKTOK = "tiktok";
34
- export const FIELD_EMAIL = "email";
35
-
36
- // ─── Extended Profile Fields ────────────────────────────────────────────────
37
- export const FIELD_TICKER = "ticker";
38
- export const FIELD_LOCATION = "location";
39
- export const FIELD_PLATFORM = "platform";
40
- export const FIELD_BANNER = "banner";
41
- export const FIELD_DESCRIPTION = "description"; // alias for bio
42
-
43
- // ─── Profile Types ──────────────────────────────────────────────────────────
44
- export type ProfileType = "personal" | "dao" | "company" | "game" | "creator";
45
-
46
- export const PROFILE_TYPES: readonly ProfileType[] = [
47
- "personal",
48
- "dao",
49
- "company",
50
- "game",
51
- "creator",
52
- ] as const;
53
-
54
- // ─── Helpers for building field arrays ──────────────────────────────────────
55
-
56
- /** Build a personal profile field set */
57
- export function personalFields(opts: {
58
- name: string;
59
- bio?: string;
60
- avatar?: string;
61
- website?: string;
62
- twitter?: string;
63
- github?: string;
64
- email?: string;
65
- telegram?: string;
66
- }, extra?: [string, string][]): [string, string][] {
67
- return buildFields({ ...opts, [FIELD_PROFILE_TYPE]: "personal" }, extra);
68
- }
69
-
70
- /** Build a DAO profile field set */
71
- export function daoFields(opts: {
72
- name: string;
73
- bio?: string;
74
- avatar?: string;
75
- website?: string;
76
- twitter?: string;
77
- github?: string;
78
- ticker?: string;
79
- discord?: string;
80
- }, extra?: [string, string][]): [string, string][] {
81
- return buildFields({ ...opts, [FIELD_PROFILE_TYPE]: "dao" }, extra);
82
- }
83
-
84
- /** Build a company profile field set */
85
- export function companyFields(opts: {
86
- name: string;
87
- bio?: string;
88
- avatar?: string;
89
- website?: string;
90
- twitter?: string;
91
- github?: string;
92
- email?: string;
93
- location?: string;
94
- }, extra?: [string, string][]): [string, string][] {
95
- return buildFields({ ...opts, [FIELD_PROFILE_TYPE]: "company" }, extra);
96
- }
97
-
98
- /** Build a game profile field set */
99
- export function gameFields(opts: {
100
- name: string;
101
- bio?: string;
102
- avatar?: string;
103
- website?: string;
104
- twitter?: string;
105
- github?: string;
106
- platform?: string;
107
- discord?: string;
108
- twitch?: string;
109
- }, extra?: [string, string][]): [string, string][] {
110
- return buildFields({ ...opts, [FIELD_PROFILE_TYPE]: "game" }, extra);
111
- }
112
-
113
- /** Build a creator profile field set */
114
- export function creatorFields(opts: {
115
- name: string;
116
- bio?: string;
117
- avatar?: string;
118
- website?: string;
119
- twitter?: string;
120
- github?: string;
121
- youtube?: string;
122
- instagram?: string;
123
- tiktok?: string;
124
- }, extra?: [string, string][]): [string, string][] {
125
- return buildFields({ ...opts, [FIELD_PROFILE_TYPE]: "creator" }, extra);
126
- }
127
-
128
- /** Generic builder — filters out undefined/empty values, appends extras, enforces max 10 */
129
- function buildFields(
130
- record: Record<string, string | undefined>,
131
- extra?: [string, string][],
132
- ): [string, string][] {
133
- const fields: [string, string][] = [];
134
- for (const [key, value] of Object.entries(record)) {
135
- if (value !== undefined && value !== "") {
136
- fields.push([key, value]);
137
- }
138
- }
139
- if (extra) {
140
- for (const pair of extra) {
141
- fields.push(pair);
142
- }
143
- }
144
- if (fields.length > 10) {
145
- throw new Error(`Too many fields (${fields.length}) — contract supports max 10`);
146
- }
147
- return fields;
148
- }
@@ -1,289 +0,0 @@
1
- import { type Wallet } from "@midnight-ntwrk/wallet-api";
2
- import { nativeToken } from "@midnight-ntwrk/ledger";
3
- import {
4
- getLedgerNetworkId,
5
- getZswapNetworkId,
6
- NetworkId,
7
- setNetworkId,
8
- } from "@midnight-ntwrk/midnight-js-network-id";
9
- import { type Resource, WalletBuilder } from "@midnight-ntwrk/wallet";
10
- import * as Rx from "rxjs";
11
- import { type Logger } from "pino";
12
- import pinoPretty from "pino-pretty";
13
- import pino from "pino";
14
-
15
- // Configuration interfaces
16
- export interface Config {
17
- readonly logDir: string;
18
- readonly indexer: string;
19
- readonly indexerWS: string;
20
- readonly node: string;
21
- readonly proofServer: string;
22
- }
23
-
24
- class TestnetConfig implements Config {
25
- logDir = "";
26
- indexer = "https://indexer.testnet-02.midnight.network/api/v1/graphql";
27
- indexerWS = "wss://indexer.testnet-02.midnight.network/api/v1/graphql/ws";
28
- node = "https://rpc.testnet-02.midnight.network";
29
- proofServer = "http://127.0.0.1:6300";
30
- constructor() {
31
- setNetworkId(NetworkId.TestNet);
32
- }
33
- }
34
-
35
- class StandaloneConfig implements Config {
36
- logDir = "";
37
- indexer = "http://127.0.0.1:8088/api/v1/graphql";
38
- indexerWS = "ws://127.0.0.1:8088/api/v1/graphql/ws";
39
- node = "http://127.0.0.1:9944";
40
- proofServer = "http://127.0.0.1:6300";
41
- constructor() {
42
- setNetworkId(NetworkId.Undeployed);
43
- }
44
-
45
- // Detect running Docker container ports
46
- async detectRunningContainerPorts() {
47
- try {
48
- const { execSync } = await import("node:child_process");
49
-
50
- // Get indexer port from running container
51
- const indexerOutput = execSync("docker port counter-indexer 8088/tcp", {
52
- encoding: "utf8",
53
- });
54
- const indexerPort = indexerOutput.split("\n")[0].split(":")[1];
55
- if (indexerPort) {
56
- this.indexer = `http://127.0.0.1:${indexerPort}/api/v1/graphql`;
57
- this.indexerWS = `ws://127.0.0.1:${indexerPort}/api/v1/graphql/ws`;
58
- }
59
-
60
- // Get node port from running container
61
- const nodeOutput = execSync("docker port counter-node 9944/tcp", {
62
- encoding: "utf8",
63
- });
64
- const nodePort = nodeOutput.split("\n")[0].split(":")[1];
65
- if (nodePort) {
66
- this.node = `http://127.0.0.1:${nodePort}`;
67
- }
68
-
69
- // Get proof server port from running container
70
- const proofOutput = execSync(
71
- "docker port counter-proof-server 6300/tcp",
72
- { encoding: "utf8" }
73
- );
74
- const proofPort = proofOutput.split("\n")[0].split(":")[1];
75
- if (proofPort) {
76
- this.proofServer = `http://127.0.0.1:${proofPort}`;
77
- }
78
- } catch (error) {
79
- console.log(
80
- "Could not detect running Docker container ports, using default ports"
81
- );
82
- console.log("Make sure Docker containers are running: docker ps");
83
- }
84
- }
85
- }
86
-
87
- // Logger setup
88
- const logger: Logger = pino(
89
- {
90
- level:
91
- process.env.DEBUG_LEVEL !== undefined &&
92
- process.env.DEBUG_LEVEL !== null &&
93
- process.env.DEBUG_LEVEL !== ""
94
- ? process.env.DEBUG_LEVEL
95
- : "info",
96
- depthLimit: 20,
97
- },
98
- pinoPretty({
99
- colorize: true,
100
- sync: true,
101
- customColors: {
102
- debug: "green",
103
- },
104
- })
105
- );
106
-
107
- // Default seeds for different networks
108
- const GENESIS_MINT_WALLET_SEED =
109
- "0000000000000000000000000000000000000000000000000000000000000001";
110
- const TESTNET_DEFAULT_SEED =
111
- "557beb4d4bd5c88948712fd375b20f44ed9f38ade5e6ee8c27ece84d26de1639";
112
-
113
- export const buildWallet = async (
114
- { indexer, indexerWS, node, proofServer }: Config,
115
- seed: string
116
- ): Promise<Wallet & Resource> => {
117
- logger.info("Building wallet from seed...");
118
- const wallet = await WalletBuilder.buildFromSeed(
119
- indexer,
120
- indexerWS,
121
- proofServer,
122
- node,
123
- seed,
124
- getZswapNetworkId(),
125
- "info"
126
- );
127
- wallet.start();
128
- return wallet;
129
- };
130
-
131
- function formatBalance(balance: bigint): string {
132
- // Assuming tDUST has 9 decimal places
133
- const divisor = 1_000_000_000n;
134
- const whole = balance / divisor;
135
- const fraction = balance % divisor;
136
-
137
- // Format with decimal point
138
- const fractionStr = fraction.toString().padStart(9, '0');
139
- const trimmedFraction = fractionStr.replace(/0+$/, ''); // Remove trailing zeros
140
-
141
- if (trimmedFraction === '') {
142
- return `${whole}`;
143
- } else {
144
- return `${whole}.${trimmedFraction}`;
145
- }
146
- }
147
-
148
- function showUsage() {
149
- console.log(`
150
- 🚀 Midnight Wallet Balance Monitor
151
-
152
- Usage:
153
- bun run wallet.ts <network> [seed]
154
-
155
- Networks:
156
- standalone Connect to local standalone network
157
- testnet Connect to remote testnet
158
-
159
- Seed:
160
- Optional wallet seed (hex string)
161
- If not provided, uses default seed for the network
162
-
163
- Examples:
164
- bun run wallet.ts testnet
165
- bun run wallet.ts standalone
166
- bun run wallet.ts testnet 557beb4d4bd5c88948712fd375b20f44ed9f38ade5e6ee8c27ece84d26de1639
167
-
168
- Environment Variables:
169
- WALLET_SEED Set wallet seed via environment variable
170
- DEBUG_LEVEL Set log level (debug, info, warn, error)
171
- `);
172
- }
173
-
174
- async function main() {
175
- const args = process.argv.slice(2);
176
- const networkType = args[0];
177
-
178
- if (!networkType || !["testnet", "standalone"].includes(networkType)) {
179
- showUsage();
180
- process.exit(1);
181
- }
182
-
183
- // Get seed from args, env, or use default
184
- let seed = args[1] || process.env.WALLET_SEED;
185
- if (!seed) {
186
- seed = networkType === "standalone" ? GENESIS_MINT_WALLET_SEED : TESTNET_DEFAULT_SEED;
187
- logger.info(`Using default seed for ${networkType}`);
188
- }
189
-
190
- logger.info(`Starting wallet monitor for ${networkType} network`);
191
-
192
- // Configure network
193
- let config: Config;
194
- if (networkType === "testnet") {
195
- config = new TestnetConfig();
196
- } else {
197
- config = new StandaloneConfig();
198
- // Detect running Docker container ports
199
- await (config as StandaloneConfig).detectRunningContainerPorts();
200
- logger.info(
201
- `Using ports - Indexer: ${config.indexer}, Node: ${config.node}, Proof: ${config.proofServer}`
202
- );
203
- }
204
-
205
- let wallet: (Wallet & Resource) | null = null;
206
-
207
- try {
208
- // Build wallet
209
- wallet = await buildWallet(config, seed);
210
-
211
- // Get initial state
212
- const initialState = await Rx.firstValueFrom(wallet.state());
213
- logger.info(`Wallet address: ${initialState.address}`);
214
- logger.info(`Encryption public key: ${initialState.encryptionPublicKey}`);
215
- logger.info(`Coin public key: ${initialState.coinPublicKey}`);
216
-
217
- // Monitor wallet state
218
- logger.info("Starting balance monitor (Ctrl+C to exit)...\n");
219
-
220
- let lastBalance: bigint | undefined = undefined;
221
- let lastTxCount = 0;
222
- let lastBlockHeight: bigint | undefined = undefined;
223
-
224
- const subscription = wallet.state().pipe(
225
- Rx.throttleTime(2000), // Update every 2 seconds
226
- ).subscribe((state) => {
227
- const balance = state.balances[nativeToken()] ?? 0n;
228
- const applyGap = state.syncProgress?.lag.applyGap ?? 0n;
229
- const sourceGap = state.syncProgress?.lag.sourceGap ?? 0n;
230
- const synced = state.syncProgress?.synced ? "✓" : "⟳";
231
- const txCount = state.transactionHistory.length;
232
-
233
- // Check if significant changes occurred
234
- const balanceChanged = lastBalance !== undefined && lastBalance !== balance;
235
- const txCountChanged = lastTxCount !== txCount;
236
-
237
- // Build status line
238
- const statusLine =
239
- `[${new Date().toLocaleTimeString()}] ` +
240
- `Balance: ${formatBalance(balance)} tDUST | ` +
241
- `Sync: ${synced} | ` +
242
- `Backend lag: ${sourceGap} | ` +
243
- `Wallet lag: ${applyGap} | ` +
244
- `Txs: ${txCount}`;
245
-
246
- // Add change indicators
247
- const changes = [];
248
- if (balanceChanged) changes.push(`Balance: ${formatBalance(lastBalance!)} → ${formatBalance(balance)}`);
249
- if (txCountChanged) changes.push(`New txs: ${txCount - lastTxCount}`);
250
-
251
- if (changes.length > 0) {
252
- console.log(statusLine + ` | ⚡ ${changes.join(', ')}`);
253
- } else {
254
- console.log(statusLine);
255
- }
256
-
257
- // Update last values
258
- lastBalance = balance;
259
- lastTxCount = txCount;
260
- });
261
-
262
- // Handle graceful shutdown
263
- process.on('SIGINT', async () => {
264
- logger.info('\n\nShutting down wallet monitor...');
265
- subscription.unsubscribe();
266
- if (wallet) {
267
- await wallet.close();
268
- logger.info('Wallet closed');
269
- }
270
- process.exit(0);
271
- });
272
-
273
- // Keep the process running
274
- await new Promise(() => {});
275
-
276
- } catch (error) {
277
- logger.error("Wallet monitor failed:", error);
278
- throw error;
279
- } finally {
280
- if (wallet) {
281
- await wallet.close();
282
- logger.info("Wallet closed");
283
- }
284
- }
285
- }
286
-
287
- if (import.meta.main) {
288
- main().catch(console.error);
289
- }
@@ -1,16 +0,0 @@
1
- export function domainToKey(name: string): { key: Uint8Array; len: bigint } {
2
- const bytes = new TextEncoder().encode(name);
3
- if (bytes.length === 0 || bytes.length > 32)
4
- throw new Error(`Domain name must be 1-32 bytes, got ${bytes.length}`);
5
- const key = new Uint8Array(32).fill(255);
6
- key.set(bytes);
7
- return { key, len: BigInt(bytes.length) };
8
- }
9
-
10
- export function keyToDomain(key: Uint8Array): string {
11
- let len = 32;
12
- for (let i = 0; i < 32; i++) {
13
- if (key[i] === 255) { len = i; break; }
14
- }
15
- return new TextDecoder().decode(key.subarray(0, len));
16
- }
@@ -1,6 +0,0 @@
1
- export type DNSPrivateState = {
2
- phantom: boolean;
3
- };
4
-
5
- // NS contract doesn't use private state
6
- export const witnesses = {};
@@ -1,5 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "exclude": ["src/test/**/*.ts"],
4
- "compilerOptions": {}
5
- }
@@ -1,12 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.base.json",
3
- "include": ["src/**/*.ts"],
4
- "compilerOptions": {
5
- "rootDir": "src",
6
- "outDir": "dist",
7
- "lib": ["ESNext"],
8
- "allowJs": true,
9
- "noImplicitAny": true,
10
- "types": ["node"]
11
- }
12
- }
@@ -1,30 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
-
3
- export default defineConfig({
4
- mode: "node",
5
- test: {
6
- deps: {
7
- interopDefault: true
8
- },
9
- globals: true,
10
- environment: "node",
11
- include: ["**/*.test.ts"],
12
- exclude: ["node_modules"],
13
- root: ".",
14
- coverage: {
15
- provider: "v8",
16
- reporter: ["text", "json", "html"],
17
- thresholds: {
18
- branches: 50,
19
- functions: 73,
20
- lines: 72,
21
- statements: -269
22
- }
23
- },
24
- reporters: ["default", ["junit", { outputFile: "reports/report.xml" }]]
25
- },
26
- resolve: {
27
- extensions: [".ts", ".js"],
28
- conditions: ["import", "node", "default"]
29
- }
30
- });