movehat 0.2.4 → 0.2.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 (557) hide show
  1. package/README.md +1 -1
  2. package/dist/cli.d.ts +0 -1
  3. package/dist/cli.js +0 -1
  4. package/dist/commands/compile.d.ts +0 -1
  5. package/dist/commands/compile.js +0 -1
  6. package/dist/commands/fork/create.d.ts +1 -1
  7. package/dist/commands/fork/create.js +18 -3
  8. package/dist/commands/fork/fund.d.ts +0 -1
  9. package/dist/commands/fork/fund.js +0 -1
  10. package/dist/commands/fork/list.d.ts +0 -1
  11. package/dist/commands/fork/list.js +0 -1
  12. package/dist/commands/fork/serve.d.ts +0 -1
  13. package/dist/commands/fork/serve.js +0 -1
  14. package/dist/commands/fork/view-resource.d.ts +0 -1
  15. package/dist/commands/fork/view-resource.js +0 -1
  16. package/dist/commands/init.d.ts +0 -1
  17. package/dist/commands/init.js +0 -1
  18. package/dist/commands/run.d.ts +0 -1
  19. package/dist/commands/run.js +0 -1
  20. package/dist/commands/test-move.d.ts +0 -1
  21. package/dist/commands/test-move.js +0 -1
  22. package/dist/commands/test.d.ts +0 -1
  23. package/dist/commands/test.js +8 -1
  24. package/dist/commands/update.d.ts +0 -1
  25. package/dist/commands/update.js +0 -1
  26. package/dist/core/AccountManager.d.ts +15 -2
  27. package/dist/core/AccountManager.js +32 -20
  28. package/dist/core/Publisher.d.ts +0 -1
  29. package/dist/core/Publisher.js +0 -1
  30. package/dist/core/config.d.ts +0 -1
  31. package/dist/core/config.js +0 -1
  32. package/dist/core/contract.d.ts +0 -1
  33. package/dist/core/contract.js +0 -1
  34. package/dist/core/deployments.d.ts +0 -1
  35. package/dist/core/deployments.js +0 -1
  36. package/dist/core/movementProfile.d.ts +0 -1
  37. package/dist/core/movementProfile.js +0 -1
  38. package/dist/core/shell.d.ts +0 -1
  39. package/dist/core/shell.js +0 -1
  40. package/dist/errors.d.ts +0 -1
  41. package/dist/errors.js +0 -1
  42. package/dist/fork/api.d.ts +24 -1
  43. package/dist/fork/api.js +95 -1
  44. package/dist/fork/manager.d.ts +14 -1
  45. package/dist/fork/manager.js +19 -1
  46. package/dist/fork/server.d.ts +19 -1
  47. package/dist/fork/server.js +188 -8
  48. package/dist/fork/storage.d.ts +0 -1
  49. package/dist/fork/storage.js +50 -32
  50. package/dist/fork/test.d.ts +0 -1
  51. package/dist/fork/test.js +0 -1
  52. package/dist/harness/Harness.d.ts +0 -1
  53. package/dist/harness/Harness.js +6 -2
  54. package/dist/harness/codeObject.d.ts +0 -1
  55. package/dist/harness/codeObject.js +0 -1
  56. package/dist/harness/errors.d.ts +0 -1
  57. package/dist/harness/errors.js +0 -1
  58. package/dist/harness/index.d.ts +0 -1
  59. package/dist/harness/index.js +0 -1
  60. package/dist/harness/proxy.d.ts +12 -1
  61. package/dist/harness/proxy.js +23 -1
  62. package/dist/harness/script.d.ts +0 -1
  63. package/dist/harness/script.js +0 -1
  64. package/dist/harness/view.d.ts +0 -1
  65. package/dist/harness/view.js +0 -1
  66. package/dist/helpers/assertions.d.ts +0 -1
  67. package/dist/helpers/assertions.js +0 -1
  68. package/dist/helpers/banner.d.ts +0 -1
  69. package/dist/helpers/banner.js +0 -1
  70. package/dist/helpers/index.d.ts +0 -1
  71. package/dist/helpers/index.js +0 -1
  72. package/dist/helpers/move-tests.d.ts +0 -1
  73. package/dist/helpers/move-tests.js +0 -1
  74. package/dist/helpers/npm-registry.d.ts +0 -1
  75. package/dist/helpers/npm-registry.js +0 -1
  76. package/dist/helpers/semver-utils.d.ts +0 -1
  77. package/dist/helpers/semver-utils.js +0 -1
  78. package/dist/helpers/setup.d.ts +0 -1
  79. package/dist/helpers/setup.js +0 -1
  80. package/dist/helpers/setupLocalTesting.d.ts +2 -5
  81. package/dist/helpers/setupLocalTesting.js +0 -1
  82. package/dist/helpers/testFixtures.d.ts +0 -1
  83. package/dist/helpers/testFixtures.js +0 -1
  84. package/dist/helpers/version-check.d.ts +0 -1
  85. package/dist/helpers/version-check.js +0 -1
  86. package/dist/index.d.ts +0 -1
  87. package/dist/index.js +0 -1
  88. package/dist/node/LocalNodeManager.d.ts +0 -1
  89. package/dist/node/LocalNodeManager.js +4 -2
  90. package/dist/runtime.d.ts +0 -1
  91. package/dist/runtime.js +0 -1
  92. package/dist/types/config.d.ts +0 -1
  93. package/dist/types/config.js +0 -1
  94. package/dist/types/fork.d.ts +0 -1
  95. package/dist/types/fork.js +0 -1
  96. package/dist/types/harness.d.ts +0 -1
  97. package/dist/types/harness.js +0 -1
  98. package/dist/types/runtime.d.ts +0 -1
  99. package/dist/types/runtime.js +0 -1
  100. package/dist/ui/colors.d.ts +0 -1
  101. package/dist/ui/colors.js +0 -1
  102. package/dist/ui/formatters.d.ts +0 -1
  103. package/dist/ui/formatters.js +0 -1
  104. package/dist/ui/index.d.ts +0 -1
  105. package/dist/ui/index.js +0 -1
  106. package/dist/ui/logger.d.ts +0 -1
  107. package/dist/ui/logger.js +0 -1
  108. package/dist/ui/spinner.d.ts +0 -1
  109. package/dist/ui/spinner.js +0 -1
  110. package/dist/ui/symbols.d.ts +0 -1
  111. package/dist/ui/symbols.js +0 -1
  112. package/dist/ui/table.d.ts +0 -1
  113. package/dist/ui/table.js +0 -1
  114. package/dist/utils/address.d.ts +0 -1
  115. package/dist/utils/address.js +0 -1
  116. package/dist/utils/childProcessAdapter.d.ts +0 -1
  117. package/dist/utils/childProcessAdapter.js +46 -20
  118. package/dist/utils/movementCli.d.ts +5 -0
  119. package/dist/utils/movementCli.js +91 -0
  120. package/dist/utils/parseCliOutput.d.ts +0 -1
  121. package/dist/utils/parseCliOutput.js +0 -1
  122. package/dist/utils/redact.d.ts +3 -3
  123. package/dist/utils/redact.js +6 -5
  124. package/dist/utils/runCli.d.ts +0 -1
  125. package/dist/utils/runCli.js +10 -2
  126. package/package.json +4 -4
  127. package/dist/__tests__/deployContract.test.d.ts +0 -2
  128. package/dist/__tests__/deployContract.test.d.ts.map +0 -1
  129. package/dist/__tests__/deployContract.test.js +0 -377
  130. package/dist/__tests__/deployContract.test.js.map +0 -1
  131. package/dist/__tests__/errors.test.d.ts +0 -2
  132. package/dist/__tests__/errors.test.d.ts.map +0 -1
  133. package/dist/__tests__/errors.test.js +0 -46
  134. package/dist/__tests__/errors.test.js.map +0 -1
  135. package/dist/__tests__/exports.test.d.ts +0 -2
  136. package/dist/__tests__/exports.test.d.ts.map +0 -1
  137. package/dist/__tests__/exports.test.js +0 -30
  138. package/dist/__tests__/exports.test.js.map +0 -1
  139. package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts +0 -25
  140. package/dist/__tests__/fixtures/sigint-deploy-harness.d.ts.map +0 -1
  141. package/dist/__tests__/fixtures/sigint-deploy-harness.js +0 -83
  142. package/dist/__tests__/fixtures/sigint-deploy-harness.js.map +0 -1
  143. package/dist/__tests__/fork/api.test.d.ts +0 -2
  144. package/dist/__tests__/fork/api.test.d.ts.map +0 -1
  145. package/dist/__tests__/fork/api.test.js +0 -115
  146. package/dist/__tests__/fork/api.test.js.map +0 -1
  147. package/dist/__tests__/fork/api.timeout.test.d.ts +0 -2
  148. package/dist/__tests__/fork/api.timeout.test.d.ts.map +0 -1
  149. package/dist/__tests__/fork/api.timeout.test.js +0 -98
  150. package/dist/__tests__/fork/api.timeout.test.js.map +0 -1
  151. package/dist/__tests__/harness/Harness.createLive.test.d.ts +0 -2
  152. package/dist/__tests__/harness/Harness.createLive.test.d.ts.map +0 -1
  153. package/dist/__tests__/harness/Harness.createLive.test.js +0 -53
  154. package/dist/__tests__/harness/Harness.createLive.test.js.map +0 -1
  155. package/dist/__tests__/harness/Harness.proxy.test.d.ts +0 -2
  156. package/dist/__tests__/harness/Harness.proxy.test.d.ts.map +0 -1
  157. package/dist/__tests__/harness/Harness.proxy.test.js +0 -89
  158. package/dist/__tests__/harness/Harness.proxy.test.js.map +0 -1
  159. package/dist/__tests__/harness/_fixture.d.ts +0 -54
  160. package/dist/__tests__/harness/_fixture.d.ts.map +0 -1
  161. package/dist/__tests__/harness/_fixture.js +0 -69
  162. package/dist/__tests__/harness/_fixture.js.map +0 -1
  163. package/dist/__tests__/harness/codeObject.deploy.test.d.ts +0 -2
  164. package/dist/__tests__/harness/codeObject.deploy.test.d.ts.map +0 -1
  165. package/dist/__tests__/harness/codeObject.deploy.test.js +0 -288
  166. package/dist/__tests__/harness/codeObject.deploy.test.js.map +0 -1
  167. package/dist/__tests__/harness/codeObject.upgrade.test.d.ts +0 -2
  168. package/dist/__tests__/harness/codeObject.upgrade.test.d.ts.map +0 -1
  169. package/dist/__tests__/harness/codeObject.upgrade.test.js +0 -138
  170. package/dist/__tests__/harness/codeObject.upgrade.test.js.map +0 -1
  171. package/dist/__tests__/harness/script.test.d.ts +0 -2
  172. package/dist/__tests__/harness/script.test.d.ts.map +0 -1
  173. package/dist/__tests__/harness/script.test.js +0 -219
  174. package/dist/__tests__/harness/script.test.js.map +0 -1
  175. package/dist/__tests__/harness/view.test.d.ts +0 -2
  176. package/dist/__tests__/harness/view.test.d.ts.map +0 -1
  177. package/dist/__tests__/harness/view.test.js +0 -92
  178. package/dist/__tests__/harness/view.test.js.map +0 -1
  179. package/dist/__tests__/runtime.test.d.ts +0 -2
  180. package/dist/__tests__/runtime.test.d.ts.map +0 -1
  181. package/dist/__tests__/runtime.test.js +0 -141
  182. package/dist/__tests__/runtime.test.js.map +0 -1
  183. package/dist/cli.d.ts.map +0 -1
  184. package/dist/cli.js.map +0 -1
  185. package/dist/commands/__tests__/compile.test.d.ts +0 -2
  186. package/dist/commands/__tests__/compile.test.d.ts.map +0 -1
  187. package/dist/commands/__tests__/compile.test.js +0 -351
  188. package/dist/commands/__tests__/compile.test.js.map +0 -1
  189. package/dist/commands/__tests__/compile.toml-mutation.test.d.ts +0 -2
  190. package/dist/commands/__tests__/compile.toml-mutation.test.d.ts.map +0 -1
  191. package/dist/commands/__tests__/compile.toml-mutation.test.js +0 -69
  192. package/dist/commands/__tests__/compile.toml-mutation.test.js.map +0 -1
  193. package/dist/commands/__tests__/init.test.d.ts +0 -2
  194. package/dist/commands/__tests__/init.test.d.ts.map +0 -1
  195. package/dist/commands/__tests__/init.test.js +0 -163
  196. package/dist/commands/__tests__/init.test.js.map +0 -1
  197. package/dist/commands/__tests__/run.test.d.ts +0 -2
  198. package/dist/commands/__tests__/run.test.d.ts.map +0 -1
  199. package/dist/commands/__tests__/run.test.js +0 -166
  200. package/dist/commands/__tests__/run.test.js.map +0 -1
  201. package/dist/commands/__tests__/test-move.test.d.ts +0 -2
  202. package/dist/commands/__tests__/test-move.test.d.ts.map +0 -1
  203. package/dist/commands/__tests__/test-move.test.js +0 -59
  204. package/dist/commands/__tests__/test-move.test.js.map +0 -1
  205. package/dist/commands/__tests__/test.test.d.ts +0 -2
  206. package/dist/commands/__tests__/test.test.d.ts.map +0 -1
  207. package/dist/commands/__tests__/test.test.js +0 -168
  208. package/dist/commands/__tests__/test.test.js.map +0 -1
  209. package/dist/commands/__tests__/update.test.d.ts +0 -2
  210. package/dist/commands/__tests__/update.test.d.ts.map +0 -1
  211. package/dist/commands/__tests__/update.test.js +0 -176
  212. package/dist/commands/__tests__/update.test.js.map +0 -1
  213. package/dist/commands/compile.d.ts.map +0 -1
  214. package/dist/commands/compile.js.map +0 -1
  215. package/dist/commands/fork/__tests__/create.test.d.ts +0 -2
  216. package/dist/commands/fork/__tests__/create.test.d.ts.map +0 -1
  217. package/dist/commands/fork/__tests__/create.test.js +0 -108
  218. package/dist/commands/fork/__tests__/create.test.js.map +0 -1
  219. package/dist/commands/fork/__tests__/fund.test.d.ts +0 -2
  220. package/dist/commands/fork/__tests__/fund.test.d.ts.map +0 -1
  221. package/dist/commands/fork/__tests__/fund.test.js +0 -72
  222. package/dist/commands/fork/__tests__/fund.test.js.map +0 -1
  223. package/dist/commands/fork/__tests__/list.test.d.ts +0 -2
  224. package/dist/commands/fork/__tests__/list.test.d.ts.map +0 -1
  225. package/dist/commands/fork/__tests__/list.test.js +0 -119
  226. package/dist/commands/fork/__tests__/list.test.js.map +0 -1
  227. package/dist/commands/fork/__tests__/serve.test.d.ts +0 -2
  228. package/dist/commands/fork/__tests__/serve.test.d.ts.map +0 -1
  229. package/dist/commands/fork/__tests__/serve.test.js +0 -97
  230. package/dist/commands/fork/__tests__/serve.test.js.map +0 -1
  231. package/dist/commands/fork/__tests__/view-resource.test.d.ts +0 -2
  232. package/dist/commands/fork/__tests__/view-resource.test.d.ts.map +0 -1
  233. package/dist/commands/fork/__tests__/view-resource.test.js +0 -77
  234. package/dist/commands/fork/__tests__/view-resource.test.js.map +0 -1
  235. package/dist/commands/fork/create.d.ts.map +0 -1
  236. package/dist/commands/fork/create.js.map +0 -1
  237. package/dist/commands/fork/fund.d.ts.map +0 -1
  238. package/dist/commands/fork/fund.js.map +0 -1
  239. package/dist/commands/fork/list.d.ts.map +0 -1
  240. package/dist/commands/fork/list.js.map +0 -1
  241. package/dist/commands/fork/serve.d.ts.map +0 -1
  242. package/dist/commands/fork/serve.js.map +0 -1
  243. package/dist/commands/fork/view-resource.d.ts.map +0 -1
  244. package/dist/commands/fork/view-resource.js.map +0 -1
  245. package/dist/commands/init.d.ts.map +0 -1
  246. package/dist/commands/init.js.map +0 -1
  247. package/dist/commands/run.d.ts.map +0 -1
  248. package/dist/commands/run.js.map +0 -1
  249. package/dist/commands/test-move.d.ts.map +0 -1
  250. package/dist/commands/test-move.js.map +0 -1
  251. package/dist/commands/test.d.ts.map +0 -1
  252. package/dist/commands/test.js.map +0 -1
  253. package/dist/commands/update.d.ts.map +0 -1
  254. package/dist/commands/update.js.map +0 -1
  255. package/dist/core/AccountManager.d.ts.map +0 -1
  256. package/dist/core/AccountManager.js.map +0 -1
  257. package/dist/core/Publisher.d.ts.map +0 -1
  258. package/dist/core/Publisher.js.map +0 -1
  259. package/dist/core/__tests__/AccountManager.global-state.test.d.ts +0 -2
  260. package/dist/core/__tests__/AccountManager.global-state.test.d.ts.map +0 -1
  261. package/dist/core/__tests__/AccountManager.global-state.test.js +0 -69
  262. package/dist/core/__tests__/AccountManager.global-state.test.js.map +0 -1
  263. package/dist/core/__tests__/AccountManager.test.d.ts +0 -2
  264. package/dist/core/__tests__/AccountManager.test.d.ts.map +0 -1
  265. package/dist/core/__tests__/AccountManager.test.js +0 -239
  266. package/dist/core/__tests__/AccountManager.test.js.map +0 -1
  267. package/dist/core/__tests__/config.test.d.ts +0 -2
  268. package/dist/core/__tests__/config.test.d.ts.map +0 -1
  269. package/dist/core/__tests__/config.test.js +0 -311
  270. package/dist/core/__tests__/config.test.js.map +0 -1
  271. package/dist/core/__tests__/deployments.test.d.ts +0 -2
  272. package/dist/core/__tests__/deployments.test.d.ts.map +0 -1
  273. package/dist/core/__tests__/deployments.test.js +0 -201
  274. package/dist/core/__tests__/deployments.test.js.map +0 -1
  275. package/dist/core/__tests__/movementProfile.test.d.ts +0 -2
  276. package/dist/core/__tests__/movementProfile.test.d.ts.map +0 -1
  277. package/dist/core/__tests__/movementProfile.test.js +0 -112
  278. package/dist/core/__tests__/movementProfile.test.js.map +0 -1
  279. package/dist/core/__tests__/shell.test.d.ts +0 -2
  280. package/dist/core/__tests__/shell.test.d.ts.map +0 -1
  281. package/dist/core/__tests__/shell.test.js +0 -107
  282. package/dist/core/__tests__/shell.test.js.map +0 -1
  283. package/dist/core/config.d.ts.map +0 -1
  284. package/dist/core/config.js.map +0 -1
  285. package/dist/core/contract.d.ts.map +0 -1
  286. package/dist/core/contract.js.map +0 -1
  287. package/dist/core/deployments.d.ts.map +0 -1
  288. package/dist/core/deployments.js.map +0 -1
  289. package/dist/core/movementProfile.d.ts.map +0 -1
  290. package/dist/core/movementProfile.js.map +0 -1
  291. package/dist/core/shell.d.ts.map +0 -1
  292. package/dist/core/shell.js.map +0 -1
  293. package/dist/errors.d.ts.map +0 -1
  294. package/dist/errors.js.map +0 -1
  295. package/dist/fork/__tests__/manager.test.d.ts +0 -2
  296. package/dist/fork/__tests__/manager.test.d.ts.map +0 -1
  297. package/dist/fork/__tests__/manager.test.js +0 -309
  298. package/dist/fork/__tests__/manager.test.js.map +0 -1
  299. package/dist/fork/__tests__/server.cors.test.d.ts +0 -2
  300. package/dist/fork/__tests__/server.cors.test.d.ts.map +0 -1
  301. package/dist/fork/__tests__/server.cors.test.js +0 -79
  302. package/dist/fork/__tests__/server.cors.test.js.map +0 -1
  303. package/dist/fork/__tests__/server.test.d.ts +0 -2
  304. package/dist/fork/__tests__/server.test.d.ts.map +0 -1
  305. package/dist/fork/__tests__/server.test.js +0 -54
  306. package/dist/fork/__tests__/server.test.js.map +0 -1
  307. package/dist/fork/__tests__/storage.test.d.ts +0 -2
  308. package/dist/fork/__tests__/storage.test.d.ts.map +0 -1
  309. package/dist/fork/__tests__/storage.test.js +0 -222
  310. package/dist/fork/__tests__/storage.test.js.map +0 -1
  311. package/dist/fork/__tests__/test.test.d.ts +0 -2
  312. package/dist/fork/__tests__/test.test.d.ts.map +0 -1
  313. package/dist/fork/__tests__/test.test.js +0 -81
  314. package/dist/fork/__tests__/test.test.js.map +0 -1
  315. package/dist/fork/api.d.ts.map +0 -1
  316. package/dist/fork/api.js.map +0 -1
  317. package/dist/fork/manager.d.ts.map +0 -1
  318. package/dist/fork/manager.js.map +0 -1
  319. package/dist/fork/server.d.ts.map +0 -1
  320. package/dist/fork/server.js.map +0 -1
  321. package/dist/fork/storage.d.ts.map +0 -1
  322. package/dist/fork/storage.js.map +0 -1
  323. package/dist/fork/test.d.ts.map +0 -1
  324. package/dist/fork/test.js.map +0 -1
  325. package/dist/harness/Harness.d.ts.map +0 -1
  326. package/dist/harness/Harness.js.map +0 -1
  327. package/dist/harness/codeObject.d.ts.map +0 -1
  328. package/dist/harness/codeObject.js.map +0 -1
  329. package/dist/harness/errors.d.ts.map +0 -1
  330. package/dist/harness/errors.js.map +0 -1
  331. package/dist/harness/index.d.ts.map +0 -1
  332. package/dist/harness/index.js.map +0 -1
  333. package/dist/harness/proxy.d.ts.map +0 -1
  334. package/dist/harness/proxy.js.map +0 -1
  335. package/dist/harness/script.d.ts.map +0 -1
  336. package/dist/harness/script.js.map +0 -1
  337. package/dist/harness/view.d.ts.map +0 -1
  338. package/dist/harness/view.js.map +0 -1
  339. package/dist/helpers/__tests__/semver-utils.test.d.ts +0 -2
  340. package/dist/helpers/__tests__/semver-utils.test.d.ts.map +0 -1
  341. package/dist/helpers/__tests__/semver-utils.test.js +0 -103
  342. package/dist/helpers/__tests__/semver-utils.test.js.map +0 -1
  343. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts +0 -2
  344. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.d.ts.map +0 -1
  345. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js +0 -172
  346. package/dist/helpers/__tests__/setupLocalTesting.fork-network.test.js.map +0 -1
  347. package/dist/helpers/assertions.d.ts.map +0 -1
  348. package/dist/helpers/assertions.js.map +0 -1
  349. package/dist/helpers/banner.d.ts.map +0 -1
  350. package/dist/helpers/banner.js.map +0 -1
  351. package/dist/helpers/index.d.ts.map +0 -1
  352. package/dist/helpers/index.js.map +0 -1
  353. package/dist/helpers/move-tests.d.ts.map +0 -1
  354. package/dist/helpers/move-tests.js.map +0 -1
  355. package/dist/helpers/npm-registry.d.ts.map +0 -1
  356. package/dist/helpers/npm-registry.js.map +0 -1
  357. package/dist/helpers/semver-utils.d.ts.map +0 -1
  358. package/dist/helpers/semver-utils.js.map +0 -1
  359. package/dist/helpers/setup.d.ts.map +0 -1
  360. package/dist/helpers/setup.js.map +0 -1
  361. package/dist/helpers/setupLocalTesting.d.ts.map +0 -1
  362. package/dist/helpers/setupLocalTesting.js.map +0 -1
  363. package/dist/helpers/testFixtures.d.ts.map +0 -1
  364. package/dist/helpers/testFixtures.js.map +0 -1
  365. package/dist/helpers/version-check.d.ts.map +0 -1
  366. package/dist/helpers/version-check.js.map +0 -1
  367. package/dist/index.d.ts.map +0 -1
  368. package/dist/index.js.map +0 -1
  369. package/dist/node/LocalNodeManager.d.ts.map +0 -1
  370. package/dist/node/LocalNodeManager.js.map +0 -1
  371. package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts +0 -2
  372. package/dist/node/__tests__/LocalNodeManager.api-port.test.d.ts.map +0 -1
  373. package/dist/node/__tests__/LocalNodeManager.api-port.test.js +0 -55
  374. package/dist/node/__tests__/LocalNodeManager.api-port.test.js.map +0 -1
  375. package/dist/node/__tests__/LocalNodeManager.test.d.ts +0 -2
  376. package/dist/node/__tests__/LocalNodeManager.test.d.ts.map +0 -1
  377. package/dist/node/__tests__/LocalNodeManager.test.js +0 -449
  378. package/dist/node/__tests__/LocalNodeManager.test.js.map +0 -1
  379. package/dist/runtime.d.ts.map +0 -1
  380. package/dist/runtime.js.map +0 -1
  381. package/dist/types/config.d.ts.map +0 -1
  382. package/dist/types/config.js.map +0 -1
  383. package/dist/types/fork.d.ts.map +0 -1
  384. package/dist/types/fork.js.map +0 -1
  385. package/dist/types/harness.d.ts.map +0 -1
  386. package/dist/types/harness.js.map +0 -1
  387. package/dist/types/runtime.d.ts.map +0 -1
  388. package/dist/types/runtime.js.map +0 -1
  389. package/dist/ui/__tests__/colors.test.d.ts +0 -2
  390. package/dist/ui/__tests__/colors.test.d.ts.map +0 -1
  391. package/dist/ui/__tests__/colors.test.js +0 -127
  392. package/dist/ui/__tests__/colors.test.js.map +0 -1
  393. package/dist/ui/__tests__/logger.test.d.ts +0 -2
  394. package/dist/ui/__tests__/logger.test.d.ts.map +0 -1
  395. package/dist/ui/__tests__/logger.test.js +0 -75
  396. package/dist/ui/__tests__/logger.test.js.map +0 -1
  397. package/dist/ui/colors.d.ts.map +0 -1
  398. package/dist/ui/colors.js.map +0 -1
  399. package/dist/ui/formatters.d.ts.map +0 -1
  400. package/dist/ui/formatters.js.map +0 -1
  401. package/dist/ui/index.d.ts.map +0 -1
  402. package/dist/ui/index.js.map +0 -1
  403. package/dist/ui/logger.d.ts.map +0 -1
  404. package/dist/ui/logger.js.map +0 -1
  405. package/dist/ui/spinner.d.ts.map +0 -1
  406. package/dist/ui/spinner.js.map +0 -1
  407. package/dist/ui/symbols.d.ts.map +0 -1
  408. package/dist/ui/symbols.js.map +0 -1
  409. package/dist/ui/table.d.ts.map +0 -1
  410. package/dist/ui/table.js.map +0 -1
  411. package/dist/utils/__tests__/address.test.d.ts +0 -2
  412. package/dist/utils/__tests__/address.test.d.ts.map +0 -1
  413. package/dist/utils/__tests__/address.test.js +0 -70
  414. package/dist/utils/__tests__/address.test.js.map +0 -1
  415. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts +0 -2
  416. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.d.ts.map +0 -1
  417. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js +0 -43
  418. package/dist/utils/__tests__/childProcessAdapter.maxBuffer.test.js.map +0 -1
  419. package/dist/utils/__tests__/childProcessAdapter.test.d.ts +0 -2
  420. package/dist/utils/__tests__/childProcessAdapter.test.d.ts.map +0 -1
  421. package/dist/utils/__tests__/childProcessAdapter.test.js +0 -217
  422. package/dist/utils/__tests__/childProcessAdapter.test.js.map +0 -1
  423. package/dist/utils/__tests__/runCli.test.d.ts +0 -2
  424. package/dist/utils/__tests__/runCli.test.d.ts.map +0 -1
  425. package/dist/utils/__tests__/runCli.test.js +0 -187
  426. package/dist/utils/__tests__/runCli.test.js.map +0 -1
  427. package/dist/utils/address.d.ts.map +0 -1
  428. package/dist/utils/address.js.map +0 -1
  429. package/dist/utils/childProcessAdapter.d.ts.map +0 -1
  430. package/dist/utils/childProcessAdapter.js.map +0 -1
  431. package/dist/utils/parseCliOutput.d.ts.map +0 -1
  432. package/dist/utils/parseCliOutput.js.map +0 -1
  433. package/dist/utils/redact.d.ts.map +0 -1
  434. package/dist/utils/redact.js.map +0 -1
  435. package/dist/utils/runCli.d.ts.map +0 -1
  436. package/dist/utils/runCli.js.map +0 -1
  437. package/src/__tests__/deployContract.test.ts +0 -438
  438. package/src/__tests__/errors.test.ts +0 -84
  439. package/src/__tests__/exports.test.ts +0 -32
  440. package/src/__tests__/fixtures/sigint-deploy-harness.ts +0 -96
  441. package/src/__tests__/fork/api.test.ts +0 -148
  442. package/src/__tests__/fork/api.timeout.test.ts +0 -150
  443. package/src/__tests__/harness/Harness.createLive.test.ts +0 -57
  444. package/src/__tests__/harness/Harness.proxy.test.ts +0 -111
  445. package/src/__tests__/harness/_fixture.ts +0 -131
  446. package/src/__tests__/harness/codeObject.deploy.test.ts +0 -319
  447. package/src/__tests__/harness/codeObject.upgrade.test.ts +0 -156
  448. package/src/__tests__/harness/script.test.ts +0 -245
  449. package/src/__tests__/harness/view.test.ts +0 -104
  450. package/src/__tests__/runtime.test.ts +0 -182
  451. package/src/cli.ts +0 -164
  452. package/src/commands/__tests__/compile.test.ts +0 -407
  453. package/src/commands/__tests__/compile.toml-mutation.test.ts +0 -77
  454. package/src/commands/__tests__/init.test.ts +0 -210
  455. package/src/commands/__tests__/run.test.ts +0 -192
  456. package/src/commands/__tests__/test-move.test.ts +0 -81
  457. package/src/commands/__tests__/test.test.ts +0 -204
  458. package/src/commands/__tests__/update.test.ts +0 -223
  459. package/src/commands/compile.ts +0 -339
  460. package/src/commands/fork/__tests__/create.test.ts +0 -132
  461. package/src/commands/fork/__tests__/fund.test.ts +0 -104
  462. package/src/commands/fork/__tests__/list.test.ts +0 -139
  463. package/src/commands/fork/__tests__/serve.test.ts +0 -121
  464. package/src/commands/fork/__tests__/view-resource.test.ts +0 -101
  465. package/src/commands/fork/create.ts +0 -110
  466. package/src/commands/fork/fund.ts +0 -64
  467. package/src/commands/fork/list.ts +0 -98
  468. package/src/commands/fork/serve.ts +0 -80
  469. package/src/commands/fork/view-resource.ts +0 -51
  470. package/src/commands/init.ts +0 -264
  471. package/src/commands/run.ts +0 -125
  472. package/src/commands/test-move.ts +0 -27
  473. package/src/commands/test.ts +0 -255
  474. package/src/commands/update.ts +0 -201
  475. package/src/core/AccountManager.ts +0 -457
  476. package/src/core/Publisher.ts +0 -310
  477. package/src/core/__tests__/AccountManager.global-state.test.ts +0 -83
  478. package/src/core/__tests__/AccountManager.test.ts +0 -290
  479. package/src/core/__tests__/config.test.ts +0 -377
  480. package/src/core/__tests__/deployments.test.ts +0 -247
  481. package/src/core/__tests__/movementProfile.test.ts +0 -131
  482. package/src/core/__tests__/shell.test.ts +0 -138
  483. package/src/core/config.ts +0 -286
  484. package/src/core/contract.ts +0 -103
  485. package/src/core/deployments.ts +0 -155
  486. package/src/core/movementProfile.ts +0 -127
  487. package/src/core/shell.ts +0 -86
  488. package/src/errors.ts +0 -81
  489. package/src/fork/__tests__/manager.test.ts +0 -385
  490. package/src/fork/__tests__/server.cors.test.ts +0 -101
  491. package/src/fork/__tests__/server.test.ts +0 -65
  492. package/src/fork/__tests__/storage.test.ts +0 -281
  493. package/src/fork/__tests__/test.test.ts +0 -97
  494. package/src/fork/api.ts +0 -190
  495. package/src/fork/manager.ts +0 -343
  496. package/src/fork/server.ts +0 -380
  497. package/src/fork/storage.ts +0 -253
  498. package/src/fork/test.ts +0 -221
  499. package/src/harness/Harness.ts +0 -231
  500. package/src/harness/codeObject.ts +0 -381
  501. package/src/harness/errors.ts +0 -22
  502. package/src/harness/index.ts +0 -3
  503. package/src/harness/proxy.ts +0 -40
  504. package/src/harness/script.ts +0 -200
  505. package/src/harness/view.ts +0 -34
  506. package/src/helpers/__tests__/semver-utils.test.ts +0 -121
  507. package/src/helpers/__tests__/setupLocalTesting.fork-network.test.ts +0 -212
  508. package/src/helpers/assertions.ts +0 -29
  509. package/src/helpers/banner.ts +0 -63
  510. package/src/helpers/index.ts +0 -37
  511. package/src/helpers/move-tests.ts +0 -72
  512. package/src/helpers/npm-registry.ts +0 -72
  513. package/src/helpers/semver-utils.ts +0 -54
  514. package/src/helpers/setup.ts +0 -54
  515. package/src/helpers/setupLocalTesting.ts +0 -387
  516. package/src/helpers/testFixtures.ts +0 -210
  517. package/src/helpers/version-check.ts +0 -114
  518. package/src/index.ts +0 -30
  519. package/src/node/LocalNodeManager.ts +0 -383
  520. package/src/node/__tests__/LocalNodeManager.api-port.test.ts +0 -62
  521. package/src/node/__tests__/LocalNodeManager.test.ts +0 -579
  522. package/src/runtime.ts +0 -157
  523. package/src/templates/.env.example +0 -9
  524. package/src/templates/.mocharc.json +0 -8
  525. package/src/templates/.vscode/settings.json +0 -11
  526. package/src/templates/README.md +0 -146
  527. package/src/templates/gitignore +0 -22
  528. package/src/templates/move/Move.toml +0 -19
  529. package/src/templates/move/sources/Counter.move +0 -96
  530. package/src/templates/movehat.config.ts +0 -57
  531. package/src/templates/package.json +0 -27
  532. package/src/templates/scripts/deploy-counter.ts +0 -66
  533. package/src/templates/tests/Counter.test.ts +0 -113
  534. package/src/templates/tsconfig.json +0 -15
  535. package/src/templates/types/movehat.d.ts +0 -101
  536. package/src/types/config.ts +0 -83
  537. package/src/types/fork.ts +0 -47
  538. package/src/types/harness.ts +0 -182
  539. package/src/types/runtime.ts +0 -57
  540. package/src/ui/__tests__/colors.test.ts +0 -156
  541. package/src/ui/__tests__/logger.test.ts +0 -89
  542. package/src/ui/colors.ts +0 -144
  543. package/src/ui/formatters.ts +0 -246
  544. package/src/ui/index.ts +0 -62
  545. package/src/ui/logger.ts +0 -310
  546. package/src/ui/spinner.ts +0 -218
  547. package/src/ui/symbols.ts +0 -80
  548. package/src/ui/table.ts +0 -191
  549. package/src/utils/__tests__/address.test.ts +0 -93
  550. package/src/utils/__tests__/childProcessAdapter.maxBuffer.test.ts +0 -51
  551. package/src/utils/__tests__/childProcessAdapter.test.ts +0 -266
  552. package/src/utils/__tests__/runCli.test.ts +0 -240
  553. package/src/utils/address.ts +0 -52
  554. package/src/utils/childProcessAdapter.ts +0 -244
  555. package/src/utils/parseCliOutput.ts +0 -27
  556. package/src/utils/redact.ts +0 -24
  557. package/src/utils/runCli.ts +0 -64
package/src/runtime.ts DELETED
@@ -1,157 +0,0 @@
1
- import {
2
- Account,
3
- Aptos,
4
- AptosConfig,
5
- Ed25519PrivateKey,
6
- Network,
7
- } from "@aptos-labs/ts-sdk";
8
- import { MovehatRuntime, NetworkInfo } from "./types/runtime.js";
9
- import { MovehatUserConfig } from "./types/config.js";
10
- import { loadUserConfig, resolveNetworkConfig } from "./core/config.js";
11
- import { getContract, MoveContract } from "./core/contract.js";
12
- import {
13
- loadDeployment,
14
- getAllDeployments,
15
- getDeployedAddress,
16
- DeploymentInfo,
17
- } from "./core/deployments.js";
18
- import { AccountManager } from "./core/AccountManager.js";
19
- import { Publisher } from "./core/Publisher.js";
20
- import type { ChildProcessAdapter } from "./utils/childProcessAdapter.js";
21
-
22
- export interface InitRuntimeOptions {
23
- network?: string;
24
- accountIndex?: number;
25
- configOverride?: Partial<MovehatUserConfig>;
26
- }
27
-
28
- /**
29
- * Initialize the Movehat Runtime Environment.
30
- *
31
- * Lower-level construction utility — loads `movehat.config.ts`, resolves
32
- * the active network, and builds a `MovehatRuntime` bound to it. Used
33
- * internally by {@link Harness.createLive} (see `harness/Harness.ts`).
34
- *
35
- * **External callers should prefer the `Harness.create*` factories**
36
- * (`Harness.createLocal` / `createFork` / `createLive`) for the Hardhat-
37
- * style lifecycle + use-after-cleanup safety. `initRuntime` remains
38
- * exported as a public utility for advanced use cases that need to
39
- * skip the Harness abstraction (e.g. embedding movehat inside another
40
- * framework).
41
- */
42
- export async function initRuntime(
43
- options: InitRuntimeOptions = {}
44
- ): Promise<MovehatRuntime> {
45
- // Load user config from movehat.config.ts
46
- const userConfig = await loadUserConfig();
47
-
48
- // Apply config override if provided
49
- const mergedUserConfig: MovehatUserConfig = options.configOverride
50
- ? { ...userConfig, ...options.configOverride }
51
- : userConfig;
52
-
53
- // Resolve configuration for selected network
54
- const config = await resolveNetworkConfig(mergedUserConfig, options.network);
55
-
56
- // Setup Movement TypeScript SDK client
57
- // Movement Network uses custom chain IDs, so we need to use Network.CUSTOM
58
- // and let the SDK fetch the actual chainId from the node
59
- const aptosConfig = new AptosConfig({
60
- network: Network.CUSTOM,
61
- fullnode: config.rpc,
62
- });
63
- const aptos = new Aptos(aptosConfig);
64
-
65
- // Setup accounts using AccountManager
66
- const accountIndex = options.accountIndex || 0;
67
- const accounts: Account[] = AccountManager.loadAccountsFromConfig(config);
68
-
69
- // Primary account (accounts[0] or selected index)
70
- const account = accounts[accountIndex];
71
- if (!account) {
72
- throw new Error(`Account index ${accountIndex} not found. Only ${accounts.length} accounts configured.`);
73
- }
74
-
75
- // Update config.account with derived address
76
- config.account = account.accountAddress.toString();
77
-
78
- // Network info
79
- const network: NetworkInfo = {
80
- name: config.network,
81
- rpc: config.rpc,
82
- };
83
-
84
- // Helper functions
85
- const getContractHelper = (address: string, moduleName: string): MoveContract => {
86
- return getContract(aptos, address, moduleName);
87
- };
88
-
89
- const deployContract = async (
90
- moduleName: string,
91
- options?: {
92
- packageDir?: string;
93
- adapter?: ChildProcessAdapter;
94
- }
95
- ): Promise<DeploymentInfo> => {
96
- // Thin orchestrator; the actual logic lives in core/Publisher.ts.
97
- return new Publisher({ adapter: options?.adapter }).deploy({
98
- moduleName,
99
- config,
100
- account,
101
- packageDir: options?.packageDir,
102
- });
103
- };
104
-
105
- const getDeployment = (moduleName: string): DeploymentInfo | null => {
106
- return loadDeployment(config.network, moduleName);
107
- };
108
-
109
- const getDeployments = (): Record<string, DeploymentInfo> => {
110
- return getAllDeployments(config.network);
111
- };
112
-
113
- const getDeploymentAddress = (moduleName: string): string | null => {
114
- return getDeployedAddress(config.network, moduleName);
115
- };
116
-
117
- const createAccount = (): Account => {
118
- return AccountManager.createAccount();
119
- };
120
-
121
- const getAccountHelper = (privateKeyHex: string): Account => {
122
- return AccountManager.loadAccountFromPrivateKey(privateKeyHex);
123
- };
124
-
125
- const getAccountByIndex = (index: number): Account => {
126
- const acc = accounts[index];
127
- if (!acc) {
128
- throw new Error(`Account index ${index} out of range. Available accounts: 0-${accounts.length - 1}`);
129
- }
130
- return acc;
131
- };
132
-
133
- const switchNetwork = async (networkName: string): Promise<MovehatRuntime> => {
134
- return initRuntime({ ...options, network: networkName });
135
- };
136
-
137
- // Build runtime object
138
- const runtime: MovehatRuntime = {
139
- config,
140
- network,
141
- aptos,
142
- account,
143
- accounts,
144
- getContract: getContractHelper,
145
- deployContract,
146
- getDeployment,
147
- getDeployments,
148
- getDeploymentAddress,
149
- createAccount,
150
- getAccount: getAccountHelper,
151
- getAccountByIndex,
152
- switchNetwork,
153
- };
154
-
155
- return runtime;
156
- }
157
-
@@ -1,9 +0,0 @@
1
- # Private Key (used for all networks - Hardhat-style)
2
- # This is your wallet's private key that will be used to deploy and interact with contracts
3
- PRIVATE_KEY=your_private_key_here
4
-
5
- # Optional: Override RPC URL (useful for custom endpoints)
6
- # MOVEMENT_RPC_URL=https://custom-testnet.movementnetwork.xyz/v1
7
-
8
- # Optional: Override default network from config
9
- # MH_DEFAULT_NETWORK=testnet
@@ -1,8 +0,0 @@
1
- {
2
- "node-option": ["import=tsx"],
3
- "extensions": ["ts"],
4
- "spec": ["tests/**/*.test.ts"],
5
- "timeout": 30000,
6
- "color": true,
7
- "reporter": "spec"
8
- }
@@ -1,11 +0,0 @@
1
- {
2
- "typescript.tsdk": "node_modules/typescript/lib",
3
- "typescript.enablePromptUseWorkspaceTsdk": true,
4
- "files.exclude": {
5
- "**/.git": true,
6
- "**/.DS_Store": true
7
- },
8
- "search.exclude": {
9
- "**/node_modules": true
10
- }
11
- }
@@ -1,146 +0,0 @@
1
- # {{projectName}}
2
-
3
- A Move smart contract project built with Movehat.
4
-
5
- ## Prerequisites
6
-
7
- **Required:**
8
- - **Node.js v18+** - [Download](https://nodejs.org/)
9
- - **Movement CLI** - **REQUIRED** for compiling contracts
10
-
11
- Install: [Movement CLI Installation Guide](https://docs.movementnetwork.xyz/devs/movementCLI)
12
-
13
- Verify: `movement --version`
14
-
15
- **IMPORTANT:** Without Movement CLI, compilation will fail!
16
-
17
- ## Getting Started
18
-
19
- ### 1. Install dependencies
20
-
21
- ```bash
22
- npm install
23
- ```
24
-
25
- ### 2. Configure environment
26
-
27
- Copy `.env.example` to `.env` and fill in your credentials:
28
-
29
- ```bash
30
- cp .env.example .env
31
- ```
32
-
33
- Edit `.env`:
34
- ```
35
- PRIVATE_KEY=your_private_key_here
36
- ```
37
-
38
- ### 3. Compile contracts
39
-
40
- ```bash
41
- npm run compile
42
- ```
43
-
44
- **How it works:**
45
- - Movehat automatically detects named addresses from your Move files
46
- - No need to manually configure addresses in `Move.toml`
47
- - Just add any new `.move` file and it will compile automatically (like Hardhat!)
48
-
49
- ### 4. Run tests
50
-
51
- ```bash
52
- npm test
53
- ```
54
-
55
- When you run `npm test`, you'll see an **interactive menu**:
56
-
57
- ```
58
- ? What tests do you want to run?
59
- āÆ Move unit tests (fast, no node required)
60
- TypeScript integration tests (starts local node)
61
- All tests (Move + TypeScript)
62
- ```
63
-
64
- **Two types of tests available:**
65
-
66
- 1. **Move Unit Tests** (`move/sources/Counter.move` in `#[test]` blocks)
67
- - Written in Move with `#[test]` annotations
68
- - Test internal logic and business rules
69
- - Ultra-fast execution (milliseconds)
70
- - Run with: `npm run test:move` or `movehat test --move`
71
-
72
- 2. **TypeScript Integration Tests** (`tests/Counter.test.ts`)
73
- - Written in TypeScript on a **local Movement blockchain**
74
- - Automatically starts a local node, funds accounts, and deploys contracts
75
- - Runs real transactions (not simulation!)
76
- - Just like Hardhat - zero manual setup
77
- - Run with: `npm run test:ts` or `movehat test --ts`
78
-
79
- **Commands:**
80
- - `npm test` - Interactive menu to choose test type
81
- - `npm run test:move` or `movehat test --move` - Only Move unit tests (fast)
82
- - `npm run test:ts` or `movehat test --ts` - Only TypeScript integration tests
83
- - `movehat test --all` - Both Move + TypeScript tests
84
- - `npm run test:watch` or `movehat test --watch` - TypeScript tests in watch mode
85
-
86
- ### 5. Deploy (optional)
87
-
88
- ```bash
89
- npx movehat run scripts/deploy-counter.ts
90
- ```
91
-
92
- ## Project Structure
93
-
94
- ```
95
- {{PROJECT_NAME}}/
96
- ā”œā”€ā”€ move/ # Move smart contracts
97
- │ ā”œā”€ā”€ sources/
98
- │ │ └── Counter.move
99
- │ └── Move.toml
100
- ā”œā”€ā”€ scripts/ # Deployment scripts
101
- │ └── deploy-counter.ts
102
- ā”œā”€ā”€ tests/ # Integration tests
103
- │ └── Counter.test.ts
104
- ā”œā”€ā”€ movehat.config.ts # Movehat configuration
105
- └── .env # Environment variables (git-ignored)
106
- ```
107
-
108
- ## Available Commands
109
-
110
- - `npm run compile` - Compile Move contracts (auto-detects addresses)
111
- - `npm test` - Run integration tests
112
- - `npm run test:watch` - Run tests in watch mode
113
- - `npx movehat run scripts/deploy-counter.ts` - Deploy and initialize counter
114
-
115
- ## How Named Addresses Work
116
-
117
- Movehat automatically detects named addresses from your Move code:
118
-
119
- ```move
120
- module counter::counter { // ← "counter" is auto-detected
121
- // ...
122
- }
123
- ```
124
-
125
- - **For development:** Movehat uses temp addresses (`0xcafe`) automatically
126
- - **For production:** Specify real addresses in `movehat.config.ts`
127
-
128
- **Adding new contracts:**
129
- 1. Create `move/sources/MyContract.move`
130
- 2. Write: `module mycontract::mycontract { ... }`
131
- 3. Run `npm run compile`
132
- 4. It just works! (like Hardhat)
133
-
134
- ## Troubleshooting
135
-
136
- | Error | Solution |
137
- |-------|----------|
138
- | `movement: command not found` | Install Movement CLI (see Prerequisites) |
139
- | `Cannot find package 'dotenv'` | Run `npm install` |
140
- | Compilation failed | Ensure Movement CLI is installed: `movement --version` |
141
-
142
- ## Learn More
143
-
144
- - [Movement Documentation](https://docs.movementnetwork.xyz)
145
- - [Move Language Book](https://move-language.github.io/move/)
146
- - [Movehat GitHub](https://github.com/gilbertsahumada/movehat)
@@ -1,22 +0,0 @@
1
- # Dependencies
2
- node_modules/
3
-
4
- # Build outputs
5
- move/build/
6
- dist/
7
-
8
- # Environment
9
- .env
10
- .env.local
11
-
12
- # IDE
13
- .vscode/
14
- .idea/
15
-
16
- # OS
17
- .DS_Store
18
- Thumbs.db
19
-
20
- # Movehat
21
- .movehat/
22
- deployments/
@@ -1,19 +0,0 @@
1
- [package]
2
- name = "{{movePackageName}}"
3
- version = "1.0.0"
4
- authors = []
5
-
6
- [addresses]
7
- counter = "_"
8
-
9
- [dev-addresses]
10
- # Dev addresses for testing (used with movement move test --dev)
11
- # These addresses are temporary and used for local development/testing only
12
- counter = "0xcafe"
13
-
14
- [dependencies.AptosFramework]
15
- git = "https://github.com/movementlabsxyz/aptos-core.git"
16
- rev = "movement"
17
- subdir = "aptos-move/framework/aptos-framework"
18
-
19
- [dev-dependencies]
@@ -1,96 +0,0 @@
1
- module counter::counter {
2
- use std::signer;
3
- use aptos_framework::event;
4
- use aptos_framework::account;
5
-
6
- /// Error code for counter overflow
7
- const E_OVERFLOW: u64 = 1;
8
- /// Error code for counter not initialized
9
- const E_NOT_INITIALIZED: u64 = 2;
10
- /// Maximum value for u64
11
- const U64_MAX: u64 = 18446744073709551615;
12
-
13
- struct Counter has key {
14
- value: u64,
15
- increment_events: event::EventHandle<IncrementEvent>,
16
- }
17
-
18
- struct IncrementEvent has drop, store {
19
- old_value: u64,
20
- new_value: u64,
21
- }
22
-
23
- public entry fun init(account: &signer) {
24
- let account_addr = signer::address_of(account);
25
-
26
- if (!exists<Counter>(account_addr)) {
27
- move_to(account, Counter {
28
- value: 0,
29
- increment_events: account::new_event_handle<IncrementEvent>(account),
30
- });
31
- }
32
- }
33
-
34
- public entry fun increment(account: &signer) acquires Counter {
35
- let account_addr = signer::address_of(account);
36
-
37
- // Auto-init: create Counter if it doesn't exist yet. Defense in
38
- // depth so the module stays usable even if a caller skips the
39
- // dedicated `init` entry function.
40
- if (!exists<Counter>(account_addr)) {
41
- move_to(account, Counter {
42
- value: 0,
43
- increment_events: account::new_event_handle<IncrementEvent>(account),
44
- });
45
- };
46
-
47
- let counter = borrow_global_mut<Counter>(account_addr);
48
- let old_value = counter.value;
49
- assert!(old_value < U64_MAX, E_OVERFLOW);
50
- counter.value = old_value + 1;
51
-
52
- event::emit_event(&mut counter.increment_events, IncrementEvent {
53
- old_value,
54
- new_value: counter.value,
55
- });
56
- }
57
-
58
- #[view]
59
- public fun get(addr: address): u64 acquires Counter {
60
- assert!(exists<Counter>(addr), E_NOT_INITIALIZED);
61
- borrow_global<Counter>(addr).value
62
- }
63
-
64
- #[test(account = @0x1)]
65
- public fun test_increment(account: &signer) acquires Counter {
66
- let addr = signer::address_of(account);
67
- aptos_framework::account::create_account_for_test(addr);
68
-
69
- init(account);
70
- assert!(get(addr) == 0, 0);
71
-
72
- increment(account);
73
- assert!(get(addr) == 1, 1);
74
-
75
- increment(account);
76
- assert!(get(addr) == 2, 2);
77
- }
78
-
79
- // Regression guard: increment must auto-create the Counter resource
80
- // when called against a never-initialized account. Locks the
81
- // defense-in-depth behavior so a future refactor can't accidentally
82
- // remove it.
83
- #[test(account = @0x2)]
84
- public fun test_increment_auto_inits(account: &signer) acquires Counter {
85
- let addr = signer::address_of(account);
86
- aptos_framework::account::create_account_for_test(addr);
87
-
88
- // Skip init entirely — increment must create the resource.
89
- increment(account);
90
- assert!(get(addr) == 1, 0);
91
-
92
- // Idempotent: a second increment uses the now-existing resource.
93
- increment(account);
94
- assert!(get(addr) == 2, 1);
95
- }
96
- }
@@ -1,57 +0,0 @@
1
- // Movehat configuration.
2
- //
3
- // Movehat's primary public API is the Hardhat-style `Harness` class
4
- // (see scripts/deploy-counter.ts and tests/Counter.test.ts in this
5
- // template). The `Harness.create*` factories read this file via
6
- // `loadUserConfig` to resolve the active network + accounts.
7
- //
8
- // The `setupTestFixture()` helper also reads the same shape and
9
- // remains supported as a lighter-weight alternative to Harness.
10
-
11
- import dotenv from "dotenv";
12
- dotenv.config();
13
-
14
- export default {
15
- // Default network to use when no --network flag is provided
16
- // "testnet" = Movement testnet (public, auto-generates test accounts)
17
- // "mainnet" = Movement mainnet (requires PRIVATE_KEY in .env)
18
- // "local" = Fork server running on localhost:8080
19
- defaultNetwork: "testnet",
20
-
21
- // Network configurations
22
- networks: {
23
- // Movement Testnet - Public test network (recommended for development)
24
- // Auto-generates test accounts - no local setup required
25
- // Perfect for running tests with transaction simulation
26
- testnet: {
27
- url: process.env.MOVEMENT_RPC_URL || "https://testnet.movementnetwork.xyz/v1",
28
- chainId: "testnet",
29
- },
30
- // Movement Mainnet - Production network
31
- // REQUIRES PRIVATE_KEY in .env - uses real MOVE tokens
32
- mainnet: {
33
- url: "https://mainnet.movementnetwork.xyz/v1",
34
- chainId: "mainnet",
35
- },
36
- // Local fork server (requires: movehat fork serve)
37
- // Useful for testing against a snapshot of real network state
38
- local: {
39
- url: "http://localhost:8080/v1",
40
- chainId: "local",
41
- },
42
- },
43
-
44
- // Global accounts configuration (Hardhat-style)
45
- // Uses PRIVATE_KEY from .env by default
46
- // You can also specify accounts here directly:
47
- // accounts: ["0x1234..."],
48
- accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
49
-
50
- // Global settings
51
- moveDir: "./move",
52
-
53
- // Named addresses (can be overridden per-network in network config)
54
- namedAddresses: {
55
- // Example: counter: "0x1234...",
56
- },
57
- };
@@ -1,27 +0,0 @@
1
- {
2
- "name": "{{projectName}}",
3
- "version": "1.0.0",
4
- "type": "module",
5
- "scripts": {
6
- "test": "movehat test",
7
- "test:move": "movehat test:move",
8
- "test:ts": "movehat test:ts",
9
- "test:watch": "movehat test:ts --watch",
10
- "deploy": "movehat run scripts/deploy-counter.ts"
11
- },
12
- "dependencies": {
13
- "movehat": "latest",
14
- "@aptos-labs/ts-sdk": "^5.1.5",
15
- "dotenv": "^17.2.3",
16
- "got": "^11.8.6"
17
- },
18
- "devDependencies": {
19
- "@types/chai": "^5.2.3",
20
- "@types/mocha": "^10.0.10",
21
- "@types/node": "^24.10.1",
22
- "chai": "^6.2.1",
23
- "mocha": "^11.7.5",
24
- "tsx": "^4.7.0",
25
- "typescript": "^5.9.3"
26
- }
27
- }
@@ -1,66 +0,0 @@
1
- import { Harness } from "movehat";
2
-
3
- async function main() {
4
- console.log("šŸš€ Deploying Counter contract...\n");
5
-
6
- // Hardhat-style Harness — the primary public API.
7
- // createLive binds to a real running network (testnet / mainnet / a
8
- // custom one defined in movehat.config.ts). No local process spawned.
9
- const network = process.env.MOVEHAT_NETWORK ?? "testnet";
10
- const harness = await Harness.createLive(network);
11
- try {
12
- console.log(`āœ… Runtime initialized on ${harness.runtime.network.name}`);
13
- console.log(` Account: ${harness.runtime.account.accountAddress.toString()}`);
14
- console.log(` RPC: ${harness.runtime.network.rpc}\n`);
15
-
16
- // Deploy as a code object via `movement move deploy-object`. If the
17
- // Move.toml's named address differs from the module identifier
18
- // (e.g. `module my_pkg::counter` with `[addresses] my_pkg = "_"`),
19
- // pass `addressName: "my_pkg"` in addition to `moduleName: "counter"`.
20
- //
21
- // To redeploy an existing record, set MH_CLI_REDEPLOY=true.
22
- const deployment = await harness.deployCodeObject({
23
- moduleName: "counter",
24
- });
25
-
26
- console.log(`\nāœ… Module deployed at: ${deployment.address}::counter`);
27
- if (deployment.txHash) {
28
- console.log(` Transaction: ${deployment.txHash}`);
29
- }
30
-
31
- // Interact with the freshly deployed module via the runtime helper.
32
- const counter = harness.runtime.getContract(deployment.address, "counter");
33
-
34
- // Counter is a Move resource — it must be created explicitly per
35
- // account before any method that reads or mutates it. The dedicated
36
- // `init` entry function does this once per signer. (The module also
37
- // auto-inits inside `increment` as defense in depth, so this call is
38
- // technically optional today, but kept for pedagogy: real-world Move
39
- // modules usually require an explicit init step.)
40
- console.log("\nšŸ”§ Initializing counter resource for this account...");
41
- const initTx = await counter.call(harness.runtime.account, "init", []);
42
- console.log(` Init tx: ${initTx.hash}`);
43
-
44
- console.log("\nšŸ“ Incrementing counter...");
45
- const txResult = await counter.call(harness.runtime.account, "increment", []);
46
- console.log(`āœ… Transaction hash: ${txResult.hash}`);
47
-
48
- // Use harness.runViewFunction directly when you have a fully
49
- // qualified function id; counter.view<T>(...) is the shorter form.
50
- const [value] = await harness.runViewFunction({
51
- function: `${deployment.address}::counter::get`,
52
- functionArguments: [harness.runtime.account.accountAddress.toString()],
53
- });
54
- console.log(`\nšŸ“Š Counter value: ${value}`);
55
- } finally {
56
- // Always release the Harness — cleanup() is idempotent and safe to
57
- // call on a `createLive` instance even though no local process was
58
- // spawned (it just flips the use-after-cleanup poison flag).
59
- await harness.cleanup();
60
- }
61
- }
62
-
63
- main().catch((error) => {
64
- console.error("āŒ Deployment failed:", error?.message || error);
65
- process.exit(1);
66
- });