@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,216 +0,0 @@
1
- // This file is part of Compact.
2
- // Copyright (C) 2025 Midnight Foundation
3
- // SPDX-License-Identifier: Apache-2.0
4
- // Licensed under the Apache License, Version 2.0 (the "License");
5
- // you may not use this file except in compliance with the License.
6
- // You may obtain a copy of the License at
7
- //
8
- // http://www.apache.org/licenses/LICENSE-2.0
9
- //
10
- // Unless required by applicable law or agreed to in writing, software
11
- // distributed under the License is distributed on an "AS IS" BASIS,
12
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- // See the License for the specific language governing permissions and
14
- // limitations under the License.
15
- import * as ocrt from '@midnight-ntwrk/onchain-runtime-v3';
16
- import { MAX_FIELD } from './constants.js';
17
- import { CompactTypeJubjubPoint } from './compact-types.js';
18
- import { CompactError } from './error.js';
19
- const FIELD_MODULUS = MAX_FIELD + 1n;
20
- /**
21
- * Field addition
22
- * returns the result of adding x and y, wrapping if necessary
23
- * x and y are assumed to be values in the range [0, FIELD_MODULUS)
24
- */
25
- export function addField(x, y) {
26
- const t = x + y;
27
- // effectively mod(x + y, FIELD_MODULUS) for x and y in the assumed range
28
- // (x + y) % FIELD_MODULUS would also work but would likely be more expensive
29
- return t < FIELD_MODULUS ? t : t - FIELD_MODULUS;
30
- }
31
- /**
32
- * Field subtraction
33
- * returns the result of subtracting y from x, wrapping if necessary
34
- * x and y are assumed to be values in the range [0, FIELD_MODULUS)
35
- */
36
- export function subField(x, y) {
37
- // effectively mod(x - y, FIELD_MODULUS) for x and y in the assumed range
38
- // NB: JavaScript % implements remainder rather than modulus, so
39
- // (x - y) % FIELD_MODULUS would return an incorrect value for negative values of x - y.
40
- // also, any implementation involving % would likely be more expensive
41
- const t = x - y;
42
- return t >= 0 ? t : t + FIELD_MODULUS;
43
- }
44
- /**
45
- * Field multiplication
46
- * returns the result of multipying x and y, wrapping if necessary
47
- * x and y are assumed to be values in the range [0, FIELD_MODULUS)
48
- */
49
- export function mulField(x, y) {
50
- // effectively mod(x * y, FIELD_MODULUS) for x and y in the assumed range
51
- // (although JavaScript % implements remainder rather than modulo, remainder
52
- // and modulo coincide for nonnegative inputs)
53
- return (x * y) % FIELD_MODULUS;
54
- }
55
- /**
56
- * The Compact builtin `transient_hash` function
57
- *
58
- * This function is a circuit-efficient compression function from arbitrary
59
- * data to field elements, which is not guaranteed to persist between upgrades.
60
- * It should not be used to derive state data, but can be used for consistency
61
- * checks.
62
- */
63
- export function transientHash(rtType, value) {
64
- return ocrt.valueToBigInt(ocrt.transientHash(rtType.alignment(), rtType.toValue(value)));
65
- }
66
- /**
67
- * The Compact builtin `transient_commit` function
68
- *
69
- * This function is a circuit-efficient commitment function from arbitrary
70
- * values representable in Compact, and a field element commitment opening, to
71
- * field elements, which is not guaranteed to persist between
72
- * upgrades. It should not be used to derive state data, but can be used for
73
- * consistency checks.
74
- *
75
- * @throws If `opening` is out of range for field elements
76
- */
77
- export function transientCommit(rtType, value, opening) {
78
- return ocrt.valueToBigInt(ocrt.transientCommit(rtType.alignment(), rtType.toValue(value), ocrt.bigIntToValue(opening)));
79
- }
80
- /**
81
- * The Compact builtin `persistent_hash` function
82
- *
83
- * This function is a non-circuit-optimised hash function for mostly arbitrary
84
- * data. It is guaranteed to persist between upgrades, with the exception of
85
- * devnet. It *should* be used to derive state data, and not for consistency
86
- * checks where avoidable.
87
- *
88
- * Note that data containing `Opaque` elements *may* throw runtime errors, and
89
- * cannot be relied upon as a consistent representation.
90
- *
91
- * @throws If `rtType` encodes a type containing Compact 'Opaque' types
92
- */
93
- export function persistentHash(rtType, value) {
94
- const wrapped = ocrt.persistentHash(rtType.alignment(), rtType.toValue(value))[0];
95
- const res = new Uint8Array(32);
96
- res.set(wrapped, 0);
97
- return res;
98
- }
99
- /**
100
- * The Compact builtin `persistent_commit` function
101
- *
102
- * This function is a non-circuit-optimised commitment function from arbitrary
103
- * values representable in Compact, and a 256-bit bytestring opening, to a
104
- * 256-bit bytestring. It is guaranteed to persist between upgrades. It
105
- * *should* be used to derive state data, and not for consistency checks where
106
- * avoidable.
107
- *
108
- * Note that data containing `Opaque` elements *may* throw runtime errors, and
109
- * cannot be relied upon as a consistent representation.
110
- *
111
- * @throws If `rtType` encodes a type containing Compact 'Opaque' types, or
112
- * `opening` is not 32 bytes long
113
- */
114
- export function persistentCommit(rtType, value, opening) {
115
- if (opening.length != 32) {
116
- throw new CompactError('Expected 32-byte string');
117
- }
118
- const wrapped = ocrt.persistentCommit(rtType.alignment(), rtType.toValue(value), [opening])[0];
119
- const res = new Uint8Array(32);
120
- res.set(wrapped, 0);
121
- return res;
122
- }
123
- /**
124
- * The Compact builtin `degrade_to_transient` function
125
- *
126
- * This function "degrades" the output of a {@link persistentHash} or
127
- * {@link persistentCommit} to a field element, which can then be used in
128
- * {@link transientHash} or {@link transientCommit}.
129
- *
130
- * @throws If `x` is not 32 bytes long
131
- */
132
- export function degradeToTransient(x) {
133
- if (x.length != 32) {
134
- throw new CompactError('Expected 32-byte string');
135
- }
136
- return ocrt.valueToBigInt(ocrt.degradeToTransient([x]));
137
- }
138
- /**
139
- * The Compact builtin `upgrade_from_transient` function
140
- *
141
- * This function "upgrades" the output of a {@link transientHash} or
142
- * {@link transientCommit} to 256-bit byte string, which can then be used in
143
- * {@link persistentHash} or {@link persistentCommit}.
144
- *
145
- * @throws If `x` is not a valid field element
146
- */
147
- export function upgradeFromTransient(x) {
148
- const wrapped = ocrt.upgradeFromTransient(ocrt.bigIntToValue(x))[0];
149
- const res = new Uint8Array(32);
150
- res.set(wrapped, 0);
151
- return res;
152
- }
153
- export function jubjubPointX(pt) {
154
- return pt.x;
155
- }
156
- export function jubjubPointY(pt) {
157
- return pt.y;
158
- }
159
- export function constructJubjubPoint(x, y) {
160
- return { x: x, y: y };
161
- }
162
- /**
163
- * The Compact builtin `hash_to_curve` function
164
- *
165
- * This function maps arbitrary values representable in Compact to elliptic
166
- * curve points in the proof system's embedded curve.
167
- *
168
- * Outputs are guaranteed to have unknown discrete logarithm with respect to
169
- * the group base, and any other output, but are not guaranteed to be unique (a
170
- * given input can be proven correct for multiple outputs).
171
- *
172
- * Inputs of different types may have the same output, if they have the same
173
- * field-aligned binary representation.
174
- */
175
- export function hashToCurve(rtType, x) {
176
- return CompactTypeJubjubPoint.fromValue(ocrt.hashToCurve(rtType.alignment(), rtType.toValue(x)));
177
- }
178
- /**
179
- * The Compact builtin `ec_add` function
180
- *
181
- * This function add two elliptic curve points (in multiplicative notation)
182
- */
183
- export function ecAdd(a, b) {
184
- return CompactTypeJubjubPoint.fromValue(ocrt.ecAdd(CompactTypeJubjubPoint.toValue(a), CompactTypeJubjubPoint.toValue(b)));
185
- }
186
- /**
187
- * The Compact builtin `ec_mul` function
188
- *
189
- * This function multiplies an elliptic curve point by a scalar (in
190
- * multiplicative notation)
191
- */
192
- export function ecMul(a, b) {
193
- return CompactTypeJubjubPoint.fromValue(ocrt.ecMul(CompactTypeJubjubPoint.toValue(a), ocrt.bigIntToValue(b)));
194
- }
195
- /**
196
- * The Compact builtin `ec_mul_generator` function
197
- *
198
- * This function multiplies the primary group generator of the embedded curve
199
- * by a scalar (in multiplicative notation)
200
- */
201
- export function ecMulGenerator(b) {
202
- return CompactTypeJubjubPoint.fromValue(ocrt.ecMulGenerator(ocrt.bigIntToValue(b)));
203
- }
204
- /**
205
- * Concatenates multiple {@link AlignedValue}s
206
- * @internal
207
- */
208
- export function alignedConcat(...values) {
209
- const res = { value: [], alignment: [] };
210
- for (const value of values) {
211
- res.value = res.value.concat(value.value);
212
- res.alignment = res.alignment.concat(value.alignment);
213
- }
214
- return res;
215
- }
216
- //# sourceMappingURL=built-ins.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"built-ins.js","sourceRoot":"","sources":["../src/built-ins.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Compiler internal for typecasts
3
- * @internal
4
- */
5
- export declare function convertFieldToBytes(n: number, x: bigint, src: string): Uint8Array;
6
- /**
7
- * Compiler internal for typecasts
8
- * @internal
9
- */
10
- export declare function convertBytesToField(n: number, a: Uint8Array, src: string): bigint;
11
- /**
12
- * Compiler internal for typecasts
13
- * @internal
14
- */
15
- export declare function convertBytesToUint(maxval: number, n: number, a: Uint8Array, src: string): bigint;
@@ -1,65 +0,0 @@
1
- // This file is part of Compact.
2
- // Copyright (C) 2025 Midnight Foundation
3
- // SPDX-License-Identifier: Apache-2.0
4
- // Licensed under the Apache License, Version 2.0 (the "License");
5
- // you may not use this file except in compliance with the License.
6
- // You may obtain a copy of the License at
7
- //
8
- // http://www.apache.org/licenses/LICENSE-2.0
9
- //
10
- // Unless required by applicable law or agreed to in writing, software
11
- // distributed under the License is distributed on an "AS IS" BASIS,
12
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- // See the License for the specific language governing permissions and
14
- // limitations under the License.
15
- import { MAX_FIELD } from './constants.js';
16
- import { CompactError } from './error.js';
17
- /**
18
- * Compiler internal for typecasts
19
- * @internal
20
- */
21
- export function convertFieldToBytes(n, x, src) {
22
- const x_0 = x;
23
- const a = new Uint8Array(n);
24
- // counting on new Uint8Array setting all elements to zero; those not set are
25
- // intentionally left with a value of zero
26
- for (let i = 0; i < n; i++) {
27
- a[i] = Number(x & 0xffn);
28
- x = x / 0x100n;
29
- if (x == 0n)
30
- return a;
31
- }
32
- const msg = `range error at ${src}: Field or Uint value ${x_0} does not fit into ${n} bytes`;
33
- throw new CompactError(msg);
34
- }
35
- /**
36
- * Compiler internal for typecasts
37
- * @internal
38
- */
39
- export function convertBytesToField(n, a, src) {
40
- let x = 0n;
41
- for (let i = n - 1; i >= 0; i -= 1) {
42
- x = x * 0x100n + BigInt(a[i]);
43
- if (x > MAX_FIELD) {
44
- const msg = `range error at ${src}: the integer value of ${a} is greater than the maximum value of a Field`;
45
- throw new CompactError(msg);
46
- }
47
- }
48
- return x;
49
- }
50
- /**
51
- * Compiler internal for typecasts
52
- * @internal
53
- */
54
- export function convertBytesToUint(maxval, n, a, src) {
55
- let x = 0n;
56
- for (let i = n - 1; i >= 0; i -= 1) {
57
- x = x * 0x100n + BigInt(a[i]);
58
- if (x > maxval) {
59
- const msg = `range error at ${src}: the integer value of ${a} is greater than the maximum value of Uint<0..${maxval + 1}>`;
60
- throw new CompactError(msg);
61
- }
62
- }
63
- return x;
64
- }
65
- //# sourceMappingURL=casts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"casts.js","sourceRoot":"","sources":["../src/casts.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,yCAAyC;AACzC,sCAAsC;AACtC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,8CAA8C;AAC9C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAE,GAAW;IACnE,MAAM,GAAG,GAAG,CAAC,CAAC;IACd,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAC5B,6EAA6E;IAC7E,0CAA0C;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;QACzB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACf,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,GAAG,GAAG,kBAAkB,GAAG,yBAAyB,GAAG,sBAAsB,CAAC,QAAQ,CAAC;IAC7F,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAS,EAAE,CAAa,EAAE,GAAW;IACvE,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,kBAAkB,GAAG,0BAA0B,CAAC,+CAA+C,CAAC;YAC5G,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,CAAS,EAAE,CAAa,EAAE,GAAW;IACtF,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,kBAAkB,GAAG,0BAA0B,CAAC,iDAAiD,MAAM,GAAC,CAAC,GAAG,CAAC;YACzH,MAAM,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -1,66 +0,0 @@
1
- import * as ocrt from '@midnight-ntwrk/onchain-runtime-v3';
2
- import { EncodedCoinPublicKey, EncodedZswapLocalState, ZswapLocalState } from './zswap.js';
3
- import { PartialProofData, ProofData } from './proof-data.js';
4
- /**
5
- * The external information accessible from within a Compact circuit call
6
- */
7
- export interface CircuitContext<PS = any> {
8
- /**
9
- * The current private state for the contract.
10
- */
11
- currentPrivateState: PS;
12
- /**
13
- * The current Zswap local state. Tracks inputs and outputs produced during circuit execution.
14
- */
15
- currentZswapLocalState: EncodedZswapLocalState;
16
- /**
17
- * The current on-chain context the transaction is evolving.
18
- */
19
- currentQueryContext: ocrt.QueryContext;
20
- /**
21
- * The cost model to use for the execution.
22
- */
23
- costModel: ocrt.CostModel;
24
- /**
25
- * The gas limit for this circuit.
26
- */
27
- gasLimit?: ocrt.RunningCost;
28
- }
29
- export declare const createCircuitContext: <PS>(contractAddress: ocrt.ContractAddress, coinPublicKeyOrZswapState: ocrt.CoinPublicKey | EncodedCoinPublicKey | ZswapLocalState | EncodedZswapLocalState, contractState: ocrt.ContractState | ocrt.StateValue | ocrt.ChargedState, privateState: PS, gasLimit?: ocrt.RunningCost, costModel?: ocrt.CostModel, time?: number) => CircuitContext<PS>;
30
- /**
31
- * Function for creating an initial running cost of zero.
32
- *
33
- * @internal
34
- */
35
- export declare const emptyRunningCost: () => ocrt.RunningCost;
36
- /**
37
- * The results of the call to a Compact circuit
38
- */
39
- export interface CircuitResults<PS = any, R = any> {
40
- /**
41
- * The primary result, as returned from Compact
42
- */
43
- result: R;
44
- /**
45
- * The data required to prove this circuit run
46
- */
47
- proofData: ProofData;
48
- /**
49
- * The updated context after the circuit execution, that can be used to
50
- * inform further runs
51
- */
52
- context: CircuitContext<PS>;
53
- /**
54
- * The gas consumption of the circuit execution
55
- */
56
- gasCost: ocrt.RunningCost;
57
- }
58
- /**
59
- * Runs a program (query) against the current ledger state in the given circuit context. Records the transcript in the
60
- * given partial proof data.
61
- *
62
- * @param circuitContext The context for the currently executing circuit.
63
- * @param partialProofData The partial proof data to insert the query results into.
64
- * @param program The query to run.
65
- */
66
- export declare const queryLedgerState: (circuitContext: CircuitContext, partialProofData: PartialProofData, program: ocrt.Op<null>[]) => ocrt.AlignedValue | ocrt.GatherResult[];
@@ -1,150 +0,0 @@
1
- // This file is part of Compact.
2
- // Copyright (C) 2025 Midnight Foundation
3
- // SPDX-License-Identifier: Apache-2.0
4
- // Licensed under the Apache License, Version 2.0 (the "License");
5
- // you may not use this file except in compliance with the License.
6
- // You may obtain a copy of the License at
7
- //
8
- // http://www.apache.org/licenses/LICENSE-2.0
9
- //
10
- // Unless required by applicable law or agreed to in writing, software
11
- // distributed under the License is distributed on an "AS IS" BASIS,
12
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- // See the License for the specific language governing permissions and
14
- // limitations under the License.
15
- import * as ocrt from '@midnight-ntwrk/onchain-runtime-v3';
16
- import { emptyZswapLocalState, encodeZswapLocalState, } from './zswap.js';
17
- import { CompactError } from './error.js';
18
- /**
19
- * @internal
20
- */
21
- const coerceToChargedState = (contractState) => {
22
- let state;
23
- if (contractState instanceof ocrt.ChargedState) {
24
- state = contractState;
25
- }
26
- else if (contractState instanceof ocrt.ContractState) {
27
- state = contractState.data;
28
- }
29
- else if (contractState instanceof ocrt.StateValue) {
30
- state = new ocrt.ChargedState(contractState);
31
- }
32
- else {
33
- throw new CompactError(`'contractState' parameter ${contractState} has unexpected type`);
34
- }
35
- return state;
36
- };
37
- /**
38
- * @internal
39
- */
40
- const createInitialQueryContext = (contractState, contractAddress, time) => {
41
- const initialQueryContext = new ocrt.QueryContext(coerceToChargedState(contractState), contractAddress);
42
- const balance = contractState instanceof ocrt.ContractState ? contractState.balance : new Map();
43
- initialQueryContext.block = {
44
- ...initialQueryContext.block,
45
- balance,
46
- ownAddress: contractAddress,
47
- secondsSinceEpoch: BigInt(time ?? Math.floor(Date.now() / 1_000)),
48
- };
49
- return initialQueryContext;
50
- };
51
- /**
52
- * @internal
53
- */
54
- const isZswapLocalState = (value) => {
55
- return (typeof value === 'object' &&
56
- value !== null &&
57
- 'coinPublicKey' in value &&
58
- typeof value.coinPublicKey === 'string' &&
59
- 'currentIndex' in value &&
60
- 'inputs' in value &&
61
- 'outputs' in value);
62
- };
63
- /**
64
- * @internal
65
- */
66
- const isEncodedZswapLocalState = (value) => {
67
- return (typeof value === 'object' &&
68
- value !== null &&
69
- 'coinPublicKey' in value &&
70
- typeof value.coinPublicKey === 'object' &&
71
- value.coinPublicKey !== null &&
72
- 'bytes' in value.coinPublicKey &&
73
- 'currentIndex' in value &&
74
- 'inputs' in value &&
75
- 'outputs' in value);
76
- };
77
- export const createCircuitContext = (contractAddress, coinPublicKeyOrZswapState, contractState, privateState, gasLimit, costModel, time) => {
78
- const initialQueryContext = createInitialQueryContext(contractState, contractAddress, time);
79
- let zswapLocalState;
80
- if (isZswapLocalState(coinPublicKeyOrZswapState)) {
81
- // Convert ZswapLocalState to EncodedZswapLocalState
82
- zswapLocalState = encodeZswapLocalState(coinPublicKeyOrZswapState);
83
- }
84
- else if (isEncodedZswapLocalState(coinPublicKeyOrZswapState)) {
85
- // Use EncodedZswapLocalState directly
86
- zswapLocalState = coinPublicKeyOrZswapState;
87
- }
88
- else {
89
- // It's a CoinPublicKey or EncodedCoinPublicKey, create empty state
90
- zswapLocalState = emptyZswapLocalState(coinPublicKeyOrZswapState);
91
- }
92
- return {
93
- currentPrivateState: privateState,
94
- currentZswapLocalState: zswapLocalState,
95
- currentQueryContext: initialQueryContext,
96
- costModel: costModel ?? ocrt.CostModel.initialCostModel(),
97
- gasLimit,
98
- };
99
- };
100
- /**
101
- * Function for creating an initial running cost of zero.
102
- *
103
- * @internal
104
- */
105
- export const emptyRunningCost = () => ({
106
- readTime: 0n,
107
- computeTime: 0n,
108
- bytesWritten: 0n,
109
- bytesDeleted: 0n,
110
- });
111
- /**
112
- * Runs a program (query) against the current ledger state in the given circuit context. Records the transcript in the
113
- * given partial proof data.
114
- *
115
- * @param circuitContext The context for the currently executing circuit.
116
- * @param partialProofData The partial proof data to insert the query results into.
117
- * @param program The query to run.
118
- */
119
- export const queryLedgerState = (circuitContext, partialProofData, program) => {
120
- try {
121
- const res = circuitContext.currentQueryContext.query(program, circuitContext.costModel, circuitContext.gasLimit);
122
- circuitContext.currentQueryContext = res.context;
123
- // @ts-expect-error: We use a hidden variable to track running cost so we can move it to `CircuitResults` at the end
124
- circuitContext['gasCost'] = res.gasCost;
125
- const reads = res.events.filter((e) => e.tag === 'read');
126
- let i = 0;
127
- partialProofData.publicTranscript = partialProofData.publicTranscript.concat(program.map((op) => typeof op === 'object' && 'popeq' in op
128
- ? {
129
- popeq: {
130
- ...op.popeq,
131
- result: reads[i++].content,
132
- },
133
- }
134
- : op));
135
- if (res.events.length === 1) {
136
- const event = res.events[0];
137
- if (event.tag === 'read') {
138
- return event.content;
139
- }
140
- }
141
- return res.events;
142
- }
143
- catch (err) {
144
- if (err instanceof Error) {
145
- throw new CompactError(err.toString());
146
- }
147
- throw err;
148
- }
149
- };
150
- //# sourceMappingURL=circuit-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"circuit-context.js","sourceRoot":"","sources":["../src/circuit-context.ts"],"names":[],"mappings":"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"}