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/ui/logger.ts DELETED
@@ -1,310 +0,0 @@
1
- import { colors } from './colors.js';
2
- import { coloredSymbol, symbols } from './symbols.js';
3
-
4
- /**
5
- * Available log levels
6
- */
7
- export type LogLevel = 'info' | 'success' | 'error' | 'warning' | 'debug';
8
-
9
- /**
10
- * Verbosity level for subprocess output and gray-prefixed chatter.
11
- * - `quiet` — reserved; currently behaves like `normal`
12
- * - `normal` — default; system logs only, subprocess chatter hidden
13
- * - `verbose` — surface subprocess stdout with a muted gray `›` prefix
14
- */
15
- export type Verbosity = 'quiet' | 'normal' | 'verbose';
16
-
17
- /**
18
- * Logger configuration options
19
- */
20
- export interface LoggerConfig {
21
- /** Suppress all output when true */
22
- silent?: boolean;
23
- /** Minimum log level to display */
24
- level?: LogLevel;
25
- /** Include timestamps in log messages */
26
- timestamp?: boolean;
27
- /** Verbosity level for subprocess output */
28
- verbosity?: Verbosity;
29
- }
30
-
31
- /**
32
- * Internal logger state
33
- */
34
- let config: LoggerConfig = {
35
- silent: false,
36
- level: 'info',
37
- timestamp: false,
38
- verbosity: process.env.MOVEHAT_VERBOSE === '1' ? 'verbose' : 'normal',
39
- };
40
-
41
- /**
42
- * Whether subprocess chatter should reach the user's terminal.
43
- * Honors both the in-process config (set by the `-v` CLI flag's
44
- * preAction hook) and the `MOVEHAT_VERBOSE=1` env var (which lets
45
- * callers opt in before the CLI parses args, e.g. in shell scripts).
46
- */
47
- export const isVerbose = (): boolean =>
48
- config.verbosity === 'verbose' || process.env.MOVEHAT_VERBOSE === '1';
49
-
50
- /**
51
- * Configure logger globally
52
- *
53
- * @param newConfig - Partial configuration to merge with current config
54
- *
55
- * @example
56
- * // Silence all logs for testing
57
- * configureLogger({ silent: true });
58
- *
59
- * // Enable timestamps
60
- * configureLogger({ timestamp: true });
61
- */
62
- export const configureLogger = (newConfig: Partial<LoggerConfig>): void => {
63
- config = { ...config, ...newConfig };
64
- };
65
-
66
- /**
67
- * Format message with optional indentation
68
- */
69
- const formatMessage = (message: string, indent: number = 0): string => {
70
- const prefix = ' '.repeat(indent);
71
- return message.split('\n').map(line => prefix + line).join('\n');
72
- };
73
-
74
- /**
75
- * Info message (cyan)
76
- * Use for general information and status updates
77
- *
78
- * @param message - Message to log
79
- * @param indent - Number of spaces to indent (default: 0)
80
- *
81
- * @example
82
- * logger.info('Starting compilation...');
83
- * logger.info('Network: testnet', 2);
84
- */
85
- export const info = (message: string, indent: number = 0): void => {
86
- if (config.silent) return;
87
- const formatted = formatMessage(message, indent);
88
- console.log(`${coloredSymbol('info')} ${formatted}`);
89
- };
90
-
91
- /**
92
- * Success message (green)
93
- * Use for completed operations and positive outcomes
94
- *
95
- * @param message - Message to log
96
- * @param indent - Number of spaces to indent (default: 0)
97
- *
98
- * @example
99
- * logger.success('Compilation finished!');
100
- * logger.success('All tests passed', 2);
101
- */
102
- export const success = (message: string, indent: number = 0): void => {
103
- if (config.silent) return;
104
- const formatted = formatMessage(message, indent);
105
- console.log(`${coloredSymbol('success')} ${formatted}`);
106
- };
107
-
108
- /**
109
- * Error message (red)
110
- * Use for errors and failures
111
- *
112
- * @param message - Message to log
113
- * @param indent - Number of spaces to indent (default: 0)
114
- *
115
- * @example
116
- * logger.error('Compilation failed');
117
- * logger.error('File not found: config.ts', 2);
118
- */
119
- export const error = (message: string, indent: number = 0): void => {
120
- if (config.silent) return;
121
- const formatted = formatMessage(message, indent);
122
- console.error(`${coloredSymbol('error')} ${formatted}`);
123
- };
124
-
125
- /**
126
- * Warning message (yellow)
127
- * Use for warnings and deprecated features
128
- *
129
- * @param message - Message to log
130
- * @param indent - Number of spaces to indent (default: 0)
131
- *
132
- * @example
133
- * logger.warning('Deprecated API used');
134
- * logger.warning('This feature will be removed in v2.0', 2);
135
- */
136
- export const warning = (message: string, indent: number = 0): void => {
137
- if (config.silent) return;
138
- const formatted = formatMessage(message, indent);
139
- console.warn(`${coloredSymbol('warning')} ${formatted}`);
140
- };
141
-
142
- /**
143
- * Action / progress message (dim chevron prefix)
144
- * Use for in-progress action lines like "Building package", "Publishing
145
- * to blockchain" — anything that's a status update during a multi-step
146
- * operation. Distinct from `info` (general updates) and `success`
147
- * (completion).
148
- *
149
- * @param message - Message to log
150
- * @param indent - Number of spaces to indent (default: 0)
151
- *
152
- * @example
153
- * logger.step('Building package...');
154
- * logger.step('Publishing to blockchain...');
155
- * logger.success('Module published successfully!');
156
- */
157
- export const step = (message: string, indent: number = 0): void => {
158
- if (config.silent) return;
159
- const formatted = formatMessage(message, indent);
160
- console.log(`${colors.dim(symbols.step)} ${formatted}`);
161
- };
162
-
163
- /**
164
- * Plain message without symbol
165
- * Use for continuation lines or when symbol is not appropriate
166
- *
167
- * @param message - Message to log
168
- *
169
- * @example
170
- * logger.info('Fork Details:');
171
- * logger.plain(' Chain ID: 126');
172
- * logger.plain(' Network: testnet');
173
- */
174
- export const plain = (message: string): void => {
175
- if (config.silent) return;
176
- console.log(message);
177
- };
178
-
179
- /**
180
- * Empty line
181
- * Use for visual spacing between sections
182
- *
183
- * @example
184
- * logger.success('Build complete');
185
- * logger.newline();
186
- * logger.info('Next steps:');
187
- */
188
- export const newline = (): void => {
189
- if (config.silent) return;
190
- console.log();
191
- };
192
-
193
- /**
194
- * Section header (bold, brand color)
195
- * Use for major section dividers
196
- *
197
- * @param title - Section title
198
- *
199
- * @example
200
- * logger.section('Fork Details');
201
- * logger.kv('Chain ID', '126', 2);
202
- * logger.kv('Network', 'testnet', 2);
203
- */
204
- export const section = (title: string): void => {
205
- if (config.silent) return;
206
- console.log(`\n${colors.brandBright(title)}`);
207
- };
208
-
209
- /**
210
- * Width of the `━` rule used by `phase` and `divider`. Matched to a
211
- * comfortable terminal width that fits in a side-by-side dev layout.
212
- */
213
- const PHASE_RULE_WIDTH = 52;
214
-
215
- /**
216
- * Single muted horizontal rule. Use to close out a phase or to
217
- * visually separate output sections.
218
- */
219
- export const divider = (): void => {
220
- if (config.silent) return;
221
- console.log(colors.muted('━'.repeat(PHASE_RULE_WIDTH)));
222
- };
223
-
224
- /**
225
- * Phase header — renders a muted top rule, a bold brand-colored title
226
- * indented two spaces, and a muted bottom rule. Use at top-level phase
227
- * boundaries (local node start, deploy flow, test orchestrator
228
- * sections) so the user can visually anchor where one phase ends and
229
- * the next begins.
230
- *
231
- * @param title - Phase title (e.g. "Local Movement node")
232
- *
233
- * @example
234
- * logger.phase('Local Movement node');
235
- * // Renders:
236
- * // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
237
- * // Local Movement node
238
- * // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
239
- */
240
- export const phase = (title: string): void => {
241
- if (config.silent) return;
242
- const rule = colors.muted('━'.repeat(PHASE_RULE_WIDTH));
243
- console.log(rule);
244
- console.log(` ${colors.brandBright(title)}`);
245
- console.log(rule);
246
- };
247
-
248
- /**
249
- * Key-value pair
250
- * Use for displaying structured data
251
- *
252
- * @param key - The key/label
253
- * @param value - The value
254
- * @param indent - Number of spaces to indent (default: 0)
255
- *
256
- * @example
257
- * logger.kv('Network', 'testnet', 2);
258
- * logger.kv('Chain ID', '126', 2);
259
- */
260
- export const kv = (key: string, value: string, indent: number = 0): void => {
261
- if (config.silent) return;
262
- const prefix = ' '.repeat(indent);
263
- console.log(`${prefix}${colors.dim(key)}: ${value}`);
264
- };
265
-
266
- /**
267
- * List item with bullet
268
- * Use for lists and enumerated items
269
- *
270
- * @param text - Item text
271
- * @param indent - Number of spaces to indent (default: 0)
272
- *
273
- * @example
274
- * logger.info('Next steps:');
275
- * logger.item('cd my-project', 2);
276
- * logger.item('npm install', 2);
277
- * logger.item('npm test', 2);
278
- */
279
- export const item = (text: string, indent: number = 0): void => {
280
- if (config.silent) return;
281
- const prefix = ' '.repeat(indent);
282
- console.log(`${prefix}${symbols.bullet} ${text}`);
283
- };
284
-
285
- /**
286
- * Logger namespace export
287
- * Provides all logging functions in a single namespace
288
- *
289
- * @example
290
- * import { logger } from './ui/index.js';
291
- *
292
- * logger.info('Starting...');
293
- * logger.success('Done!');
294
- */
295
- export const logger = {
296
- configure: configureLogger,
297
- isVerbose,
298
- info,
299
- success,
300
- error,
301
- warning,
302
- step,
303
- plain,
304
- newline,
305
- section,
306
- phase,
307
- divider,
308
- kv,
309
- item,
310
- };
package/src/ui/spinner.ts DELETED
@@ -1,218 +0,0 @@
1
- import ora, { type Ora, type Options as OraOptions } from 'ora';
2
- import { shouldUseColor } from './colors.js';
3
-
4
- /**
5
- * Spinner color options
6
- */
7
- export type SpinnerColor = 'yellow' | 'green' | 'cyan' | 'red' | 'blue' | 'magenta' | 'white' | 'gray';
8
-
9
- /**
10
- * Spinner configuration options
11
- */
12
- export interface SpinnerOptions {
13
- /** Text to display next to the spinner */
14
- text: string;
15
- /** Spinner color (default: 'yellow' for Movehat brand) */
16
- color?: SpinnerColor;
17
- /** Spinner animation type (default: 'dots') */
18
- spinner?: OraOptions['spinner'];
19
- /** Number of spaces to indent (default: 0) */
20
- indent?: number;
21
- }
22
-
23
- /**
24
- * Create and start a spinner
25
- * Automatically disabled in non-TTY environments (CI, pipes)
26
- *
27
- * @param options - Spinner configuration
28
- * @returns Ora spinner instance
29
- *
30
- * @example
31
- * const spin = spinner({ text: 'Compiling contracts...' });
32
- * await longRunningTask();
33
- * spin.succeed('Compilation complete!');
34
- *
35
- * @example
36
- * const spin = spinner({ text: 'Fetching data...', color: 'cyan' });
37
- * try {
38
- * await fetchData();
39
- * spin.succeed('Data fetched!');
40
- * } catch (error) {
41
- * spin.fail('Failed to fetch data');
42
- * }
43
- */
44
- export const spinner = (options: SpinnerOptions): Ora => {
45
- const { text, color = 'yellow', spinner = 'dots', indent = 0 } = options;
46
-
47
- const prefixSpaces = ' '.repeat(indent);
48
-
49
- const oraOptions: OraOptions = {
50
- text: prefixSpaces + text,
51
- color,
52
- spinner,
53
- // Disable spinner if not TTY (CI environments, piped output)
54
- isEnabled: shouldUseColor() && Boolean(process.stdout.isTTY),
55
- };
56
-
57
- return ora(oraOptions).start();
58
- };
59
-
60
- /**
61
- * Execute async task with spinner
62
- * Handles success/error automatically and always cleans up
63
- *
64
- * @param startText - Initial spinner text
65
- * @param task - Async function to execute
66
- * @param successText - Text to show on success (optional, defaults to startText without '...')
67
- * @param errorText - Text to show on error (optional, defaults to error message)
68
- * @param indent - Number of spaces to indent (default: 0)
69
- * @returns Promise resolving to task result
70
- *
71
- * @example
72
- * const data = await withSpinner(
73
- * 'Fetching network data...',
74
- * async () => await fetchData(),
75
- * 'Data fetched successfully'
76
- * );
77
- *
78
- * @example
79
- * await withSpinner(
80
- * 'Creating fork...',
81
- * async () => await createFork(),
82
- * 'Fork created!',
83
- * 'Failed to create fork'
84
- * );
85
- */
86
- export const withSpinner = async <T>(
87
- startText: string,
88
- task: () => Promise<T>,
89
- successText?: string,
90
- errorText?: string,
91
- indent: number = 0
92
- ): Promise<T> => {
93
- const spin = spinner({ text: startText, indent });
94
-
95
- try {
96
- const result = await task();
97
- spin.succeed(successText || startText.replace(/\.\.\.?$/, ''));
98
- return result;
99
- } catch (error) {
100
- const errMsg = error instanceof Error ? error.message : String(error);
101
- spin.fail(errorText || `Failed: ${errMsg}`);
102
- throw error;
103
- }
104
- };
105
-
106
- /**
107
- * Execute async task with a spinner that updates its label with
108
- * elapsed seconds while the task runs. Use for long-running phases
109
- * (local node startup, publish + tx wait) where the user wants
110
- * visible progress feedback in lieu of subprocess chatter.
111
- *
112
- * Pairs with the `§9` console-UX convention: any phase that
113
- * empirically takes ≥3s in normal use should wrap its body in
114
- * `withTimedSpinner` so the terminal never goes silent while work
115
- * happens.
116
- *
117
- * @param label - Stable label shown next to the spinner (e.g. "Starting node")
118
- * @param task - Async function to execute
119
- * @param indent - Number of spaces to indent (default: 0)
120
- * @returns Promise resolving to task result
121
- *
122
- * @example
123
- * await withTimedSpinner('Starting local node', async () => {
124
- * await this.waitForReady(60_000);
125
- * });
126
- * // Renders: ⠋ Starting local node — 0.0s ... ⠼ Starting local node — 14.2s
127
- * // On success: ✔ Starting local node (14.2s)
128
- * // On error: ✖ <error.message>
129
- */
130
- export const withTimedSpinner = async <T>(
131
- label: string,
132
- task: () => Promise<T>,
133
- indent: number = 0
134
- ): Promise<T> => {
135
- const start = Date.now();
136
- const spin = spinner({ text: `${label} — 0.0s`, indent });
137
- const timer = setInterval(() => {
138
- spin.text = `${label} — ${((Date.now() - start) / 1000).toFixed(1)}s`;
139
- }, 500);
140
- try {
141
- const result = await task();
142
- spin.succeed(`${label} (${((Date.now() - start) / 1000).toFixed(1)}s)`);
143
- return result;
144
- } catch (error) {
145
- const errMsg = error instanceof Error ? error.message : String(error);
146
- spin.fail(errMsg);
147
- throw error;
148
- } finally {
149
- clearInterval(timer);
150
- }
151
- };
152
-
153
- /**
154
- * Spinner chain for sequential operations
155
- * Manages multiple spinners in sequence
156
- */
157
- export interface SpinnerChain {
158
- /**
159
- * Add and execute a step in the chain
160
- */
161
- add<T>(text: string, task: () => Promise<T>, indent?: number): Promise<T>;
162
-
163
- /**
164
- * Complete the chain (cleanup)
165
- */
166
- complete(): void;
167
- }
168
-
169
- /**
170
- * Create a sequential spinner chain
171
- * Useful for multi-step processes like initialization
172
- *
173
- * @returns SpinnerChain interface
174
- *
175
- * @example
176
- * const steps = createSpinnerChain();
177
- *
178
- * await steps.add('Creating directories...', async () => {
179
- * await mkdir(projectPath);
180
- * });
181
- *
182
- * await steps.add('Copying templates...', async () => {
183
- * await copyFiles();
184
- * });
185
- *
186
- * await steps.add('Installing dependencies...', async () => {
187
- * await npmInstall();
188
- * });
189
- *
190
- * steps.complete();
191
- */
192
- export const createSpinnerChain = (): SpinnerChain => {
193
- let currentSpinner: Ora | null = null;
194
-
195
- return {
196
- async add<T>(
197
- text: string,
198
- task: () => Promise<T>,
199
- indent: number = 0
200
- ): Promise<T> {
201
- currentSpinner = spinner({ text, indent });
202
- try {
203
- const result = await task();
204
- currentSpinner.succeed();
205
- return result;
206
- } catch (error) {
207
- currentSpinner.fail();
208
- throw error;
209
- }
210
- },
211
-
212
- complete() {
213
- if (currentSpinner) {
214
- currentSpinner.stop();
215
- }
216
- },
217
- };
218
- };
package/src/ui/symbols.ts DELETED
@@ -1,80 +0,0 @@
1
- import figures from 'figures';
2
- import { colors } from './colors.js';
3
-
4
- /**
5
- * Platform-aware symbols using the figures library
6
- * Automatically falls back to ASCII on unsupported terminals
7
- *
8
- * @example
9
- * console.log(`${symbols.success} Task completed`);
10
- * console.log(`${symbols.error} Task failed`);
11
- */
12
- export const symbols = {
13
- // Status symbols
14
- success: figures.tick, // ✔ or √
15
- error: figures.cross, // ✖ or ×
16
- warning: figures.warning, // ⚠ or ‼
17
- info: figures.info, // ℹ or i
18
-
19
- // Action / progress symbols
20
- step: '▸', // ▸ — used to prefix in-progress action lines
21
- // (e.g. "▸ Building package"). Plain Unicode
22
- // BLACK RIGHT-POINTING SMALL TRIANGLE, supported
23
- // in every UTF-8 terminal. If a non-UTF-8
24
- // environment ever surfaces, switch to
25
- // figures.pointerSmall ('›' with ASCII fallback).
26
- pointer: figures.pointer, // ❯ or >
27
- checkboxOn: figures.checkboxOn, // ☑ or [×]
28
- checkboxOff: figures.checkboxOff, // ☐ or [ ]
29
-
30
- // UI symbols
31
- bullet: figures.bullet, // ● or *
32
- ellipsis: figures.ellipsis, // … or ...
33
- line: figures.line, // ─ or -
34
- arrow: figures.arrowRight, // → or ->
35
-
36
- // Box drawing characters
37
- boxTop: '─',
38
- boxBottom: '─',
39
- boxLeft: '│',
40
- boxRight: '│',
41
- boxTopLeft: '┌',
42
- boxTopRight: '┐',
43
- boxBottomLeft: '└',
44
- boxBottomRight: '┘',
45
-
46
- // Semantic aliases for better code readability
47
- check: figures.tick,
48
- cross: figures.cross,
49
- radioOn: figures.radioOn,
50
- radioOff: figures.radioOff,
51
- };
52
-
53
- /**
54
- * Symbol types for colored symbol function
55
- */
56
- export type SymbolType = 'success' | 'error' | 'warning' | 'info';
57
-
58
- /**
59
- * Get a symbol with appropriate semantic color
60
- * Automatically applies the correct color based on symbol type
61
- *
62
- * @param type - The type of symbol ('success', 'error', 'warning', 'info')
63
- * @returns Colored symbol ready for console output
64
- *
65
- * @example
66
- * console.log(`${coloredSymbol('success')} Build successful`);
67
- * console.log(`${coloredSymbol('error')} Build failed`);
68
- */
69
- export const coloredSymbol = (type: SymbolType): string => {
70
- switch (type) {
71
- case 'success':
72
- return colors.success(symbols.success);
73
- case 'error':
74
- return colors.error(symbols.error);
75
- case 'warning':
76
- return colors.warning(symbols.warning);
77
- case 'info':
78
- return colors.info(symbols.info);
79
- }
80
- };