movehat 0.2.4 → 0.2.6

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 +17 -1
  19. package/dist/commands/run.js +46 -33
  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 +109 -28
  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 +6 -4
  121. package/dist/utils/parseCliOutput.js +10 -6
  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
@@ -1,156 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
- import {
3
- shouldUseColor,
4
- colors,
5
- rgbToAnsi,
6
- applyGradient,
7
- gradients,
8
- } from '../colors.js';
9
-
10
- describe('shouldUseColor', () => {
11
- const originalEnv = process.env;
12
- const originalIsTTY = process.stdout.isTTY;
13
-
14
- beforeEach(() => {
15
- process.env = { ...originalEnv };
16
- delete process.env.NO_COLOR;
17
- });
18
-
19
- afterEach(() => {
20
- process.env = originalEnv;
21
- Object.defineProperty(process.stdout, 'isTTY', { value: originalIsTTY });
22
- });
23
-
24
- it('should return true when TTY and NO_COLOR not set', () => {
25
- Object.defineProperty(process.stdout, 'isTTY', { value: true, configurable: true });
26
- delete process.env.NO_COLOR;
27
- expect(shouldUseColor()).toBe(true);
28
- });
29
-
30
- it('should return false when NO_COLOR is set', () => {
31
- Object.defineProperty(process.stdout, 'isTTY', { value: true, configurable: true });
32
- process.env.NO_COLOR = '1';
33
- expect(shouldUseColor()).toBe(false);
34
- });
35
-
36
- it('should return false when not TTY', () => {
37
- Object.defineProperty(process.stdout, 'isTTY', { value: false, configurable: true });
38
- delete process.env.NO_COLOR;
39
- expect(shouldUseColor()).toBe(false);
40
- });
41
- });
42
-
43
- describe('rgbToAnsi', () => {
44
- it('should generate correct ANSI escape code', () => {
45
- expect(rgbToAnsi(255, 0, 0)).toBe('\x1b[38;2;255;0;0m');
46
- expect(rgbToAnsi(0, 255, 0)).toBe('\x1b[38;2;0;255;0m');
47
- expect(rgbToAnsi(0, 0, 255)).toBe('\x1b[38;2;0;0;255m');
48
- expect(rgbToAnsi(128, 128, 128)).toBe('\x1b[38;2;128;128;128m');
49
- });
50
-
51
- it('should handle edge values', () => {
52
- expect(rgbToAnsi(0, 0, 0)).toBe('\x1b[38;2;0;0;0m');
53
- expect(rgbToAnsi(255, 255, 255)).toBe('\x1b[38;2;255;255;255m');
54
- });
55
- });
56
-
57
- describe('applyGradient', () => {
58
- const originalEnv = process.env;
59
- const originalIsTTY = process.stdout.isTTY;
60
-
61
- beforeEach(() => {
62
- process.env = { ...originalEnv };
63
- delete process.env.NO_COLOR;
64
- Object.defineProperty(process.stdout, 'isTTY', { value: true, configurable: true });
65
- });
66
-
67
- afterEach(() => {
68
- process.env = originalEnv;
69
- Object.defineProperty(process.stdout, 'isTTY', { value: originalIsTTY });
70
- });
71
-
72
- it('should apply gradient to text', () => {
73
- const palette = [[255, 0, 0], [0, 255, 0]] as [number, number, number][];
74
- const result = applyGradient('AB', palette);
75
-
76
- expect(result).toContain('\x1b[38;2;255;0;0m'); // Red for 'A'
77
- expect(result).toContain('\x1b[38;2;0;255;0m'); // Green for 'B'
78
- expect(result).toContain('A');
79
- expect(result).toContain('B');
80
- expect(result).toContain('\x1b[0m'); // Reset at end
81
- });
82
-
83
- it('should return plain text when colors disabled', () => {
84
- process.env.NO_COLOR = '1';
85
- const palette = [[255, 0, 0]] as [number, number, number][];
86
- const result = applyGradient('Hello', palette);
87
-
88
- expect(result).toBe('Hello');
89
- expect(result).not.toContain('\x1b');
90
- });
91
-
92
- it('should cycle through palette for long text', () => {
93
- const palette = [[255, 0, 0], [0, 255, 0]] as [number, number, number][];
94
- const result = applyGradient('ABCD', palette);
95
-
96
- // Should alternate: A=red, B=green, C=red, D=green
97
- expect(result).toContain('A');
98
- expect(result).toContain('B');
99
- expect(result).toContain('C');
100
- expect(result).toContain('D');
101
- });
102
-
103
- it('should handle offset parameter', () => {
104
- const palette = [[255, 0, 0], [0, 255, 0]] as [number, number, number][];
105
- const result = applyGradient('AB', palette, 1);
106
-
107
- // With offset 1: A=green, B=red
108
- expect(result.indexOf('\x1b[38;2;0;255;0m')).toBeLessThan(result.indexOf('\x1b[38;2;255;0;0m'));
109
- });
110
- });
111
-
112
- describe('gradients', () => {
113
- it('should have movehat gradient with 5 colors', () => {
114
- expect(gradients.movehat).toHaveLength(5);
115
- gradients.movehat.forEach(([r, g, b]) => {
116
- expect(r).toBeGreaterThanOrEqual(0);
117
- expect(r).toBeLessThanOrEqual(255);
118
- expect(g).toBeGreaterThanOrEqual(0);
119
- expect(g).toBeLessThanOrEqual(255);
120
- expect(b).toBeGreaterThanOrEqual(0);
121
- expect(b).toBeLessThanOrEqual(255);
122
- });
123
- });
124
-
125
- it('should have success gradient', () => {
126
- expect(gradients.success).toBeDefined();
127
- expect(gradients.success.length).toBeGreaterThan(0);
128
- });
129
-
130
- it('should have error gradient', () => {
131
- expect(gradients.error).toBeDefined();
132
- expect(gradients.error.length).toBeGreaterThan(0);
133
- });
134
- });
135
-
136
- describe('colors object', () => {
137
- it('should have all semantic color functions', () => {
138
- expect(typeof colors.success).toBe('function');
139
- expect(typeof colors.error).toBe('function');
140
- expect(typeof colors.warning).toBe('function');
141
- expect(typeof colors.info).toBe('function');
142
- expect(typeof colors.primary).toBe('function');
143
- expect(typeof colors.secondary).toBe('function');
144
- expect(typeof colors.muted).toBe('function');
145
- expect(typeof colors.dim).toBe('function');
146
- expect(typeof colors.bold).toBe('function');
147
- expect(typeof colors.brand).toBe('function');
148
- expect(typeof colors.brandBright).toBe('function');
149
- });
150
-
151
- it('should return strings when called', () => {
152
- expect(typeof colors.success('test')).toBe('string');
153
- expect(typeof colors.error('test')).toBe('string');
154
- expect(typeof colors.brand('test')).toBe('string');
155
- });
156
- });
@@ -1,89 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
-
3
- import { configureLogger, isVerbose, divider, phase } from "../logger.js";
4
-
5
- describe("logger — verbosity", () => {
6
- let originalEnv: string | undefined;
7
-
8
- beforeEach(() => {
9
- originalEnv = process.env.MOVEHAT_VERBOSE;
10
- // Start each test from a clean slate so prior runs cannot leak.
11
- delete process.env.MOVEHAT_VERBOSE;
12
- configureLogger({ verbosity: "normal" });
13
- });
14
-
15
- afterEach(() => {
16
- if (originalEnv === undefined) {
17
- delete process.env.MOVEHAT_VERBOSE;
18
- } else {
19
- process.env.MOVEHAT_VERBOSE = originalEnv;
20
- }
21
- configureLogger({ verbosity: "normal" });
22
- });
23
-
24
- it("defaults to non-verbose when MOVEHAT_VERBOSE is unset and config is normal", () => {
25
- expect(isVerbose()).toBe(false);
26
- });
27
-
28
- it("returns true when MOVEHAT_VERBOSE=1 (env-driven path)", () => {
29
- process.env.MOVEHAT_VERBOSE = "1";
30
- expect(isVerbose()).toBe(true);
31
- });
32
-
33
- it("returns true when configureLogger({ verbosity: 'verbose' }) is set in-process", () => {
34
- configureLogger({ verbosity: "verbose" });
35
- expect(isVerbose()).toBe(true);
36
- });
37
-
38
- it("env var wins even when in-process config is normal (allows shell-script callers)", () => {
39
- configureLogger({ verbosity: "normal" });
40
- process.env.MOVEHAT_VERBOSE = "1";
41
- expect(isVerbose()).toBe(true);
42
- });
43
-
44
- it("non-'1' MOVEHAT_VERBOSE values do not enable verbose mode", () => {
45
- process.env.MOVEHAT_VERBOSE = "true";
46
- expect(isVerbose()).toBe(false);
47
- process.env.MOVEHAT_VERBOSE = "0";
48
- expect(isVerbose()).toBe(false);
49
- });
50
- });
51
-
52
- describe("logger.phase / logger.divider", () => {
53
- let logSpy: ReturnType<typeof vi.spyOn>;
54
-
55
- beforeEach(() => {
56
- logSpy = vi.spyOn(console, "log").mockImplementation(() => undefined);
57
- configureLogger({ silent: false });
58
- });
59
-
60
- afterEach(() => {
61
- vi.restoreAllMocks();
62
- });
63
-
64
- it("phase prints three lines: top rule, indented title, bottom rule", () => {
65
- phase("Local Movement node");
66
- expect(logSpy).toHaveBeenCalledTimes(3);
67
-
68
- const calls = logSpy.mock.calls.map((c: unknown[]) => String(c[0]));
69
- // The title line carries the supplied text after the two-space indent.
70
- expect(calls[1]).toContain("Local Movement node");
71
- // Top and bottom rules should be identical (same width, same color).
72
- expect(calls[0]).toBe(calls[2]);
73
- });
74
-
75
- it("divider prints a single muted rule line", () => {
76
- divider();
77
- expect(logSpy).toHaveBeenCalledTimes(1);
78
- const line = String(logSpy.mock.calls[0]?.[0] ?? "");
79
- // The rule character is `━` (BOX DRAWINGS HEAVY HORIZONTAL).
80
- expect(line).toMatch(/━+/);
81
- });
82
-
83
- it("phase and divider are silenced when configureLogger({ silent: true })", () => {
84
- configureLogger({ silent: true });
85
- phase("hidden phase");
86
- divider();
87
- expect(logSpy).not.toHaveBeenCalled();
88
- });
89
- });
package/src/ui/colors.ts DELETED
@@ -1,144 +0,0 @@
1
- import pc from 'picocolors';
2
-
3
- /**
4
- * RGB type for gradient functions
5
- */
6
- export type Rgb = [number, number, number];
7
-
8
- /**
9
- * Detect if colors should be used
10
- * Respects NO_COLOR env var and TTY detection
11
- */
12
- export const shouldUseColor = (): boolean => {
13
- return process.env.NO_COLOR === undefined && Boolean(process.stdout.isTTY);
14
- };
15
-
16
- /**
17
- * Conditional color wrapper
18
- * Returns identity function if colors disabled
19
- */
20
- const color = (fn: (str: string) => string) => {
21
- return shouldUseColor() ? fn : (str: string) => str;
22
- };
23
-
24
- /**
25
- * Semantic color palette
26
- * Maps intent to colors consistently across the CLI
27
- */
28
- export const colors = {
29
- // Status colors
30
- success: color(pc.green),
31
- error: color(pc.red),
32
- warning: color(pc.yellow),
33
- info: color(pc.cyan),
34
-
35
- // UI element colors
36
- primary: color(pc.magenta),
37
- secondary: color(pc.blue),
38
- muted: color(pc.gray),
39
- dim: color(pc.dim),
40
- bold: color(pc.bold),
41
-
42
- // Movehat brand colors (amber/yellow gradient)
43
- brand: color(pc.yellow),
44
- brandBright: color((str: string) => pc.yellow(pc.bold(str))),
45
-
46
- // Direct access for advanced use
47
- raw: shouldUseColor() ? pc : createNoopColors(),
48
- };
49
-
50
- /**
51
- * Convert RGB to ANSI 24-bit color code
52
- *
53
- * @param r - Red value (0-255)
54
- * @param g - Green value (0-255)
55
- * @param b - Blue value (0-255)
56
- * @returns ANSI escape code for RGB color
57
- *
58
- * @example
59
- * const red = rgbToAnsi(255, 0, 0);
60
- * console.log(`${red}This is red text\x1b[0m`);
61
- */
62
- export const rgbToAnsi = (r: number, g: number, b: number): string => {
63
- return `\x1b[38;2;${r};${g};${b}m`;
64
- };
65
-
66
- /**
67
- * Apply gradient to text using RGB palette
68
- * Migrated from banner.ts for reuse across the application
69
- *
70
- * @param text - Text to colorize with gradient
71
- * @param palette - Array of RGB color values
72
- * @param offset - Starting offset in palette (useful for animation)
73
- * @returns Colored text with gradient applied
74
- *
75
- * @example
76
- * const gradient = applyGradient('MOVEHAT', gradients.movehat);
77
- * console.log(gradient);
78
- */
79
- export const applyGradient = (
80
- text: string,
81
- palette: Rgb[],
82
- offset: number = 0
83
- ): string => {
84
- if (!shouldUseColor()) return text;
85
-
86
- let result = '';
87
- for (let i = 0; i < text.length; i++) {
88
- const colorIndex = (i + offset) % palette.length;
89
- const color = palette[colorIndex];
90
- const ch = text[i];
91
- if (!color || ch === undefined) continue;
92
- const [r, g, b] = color;
93
- result += `${rgbToAnsi(r, g, b)}${ch}`;
94
- }
95
- return result + '\x1b[0m';
96
- };
97
-
98
- /**
99
- * Preset gradient palettes for consistent branding
100
- */
101
- export const gradients = {
102
- /**
103
- * Movehat brand gradient (warm yellow/amber)
104
- * Used for the banner and brand-related UI elements
105
- */
106
- movehat: [
107
- [255, 239, 150],
108
- [255, 223, 88],
109
- [255, 207, 64],
110
- [255, 181, 45],
111
- [255, 160, 30],
112
- ] as Rgb[],
113
-
114
- /**
115
- * Success gradient (green tones)
116
- * For positive feedback and success states
117
- */
118
- success: [
119
- [144, 238, 144],
120
- [60, 179, 113],
121
- [46, 139, 87],
122
- ] as Rgb[],
123
-
124
- /**
125
- * Error gradient (red tones)
126
- * For errors and warnings
127
- */
128
- error: [
129
- [255, 182, 193],
130
- [220, 20, 60],
131
- [178, 34, 34],
132
- ] as Rgb[],
133
- };
134
-
135
- /**
136
- * No-op color functions for when colors are disabled
137
- * Uses a Proxy to return identity function for any property access
138
- */
139
- function createNoopColors() {
140
- const noop = (str: string) => str;
141
- return new Proxy({} as typeof pc, {
142
- get: () => noop,
143
- });
144
- }
@@ -1,246 +0,0 @@
1
- import { colors } from './colors.js';
2
- import { symbols } from './symbols.js';
3
-
4
- /**
5
- * Border color options for boxes
6
- */
7
- export type BorderColor = 'dim' | 'primary' | 'success' | 'error' | 'warning';
8
-
9
- /**
10
- * Box formatting options
11
- */
12
- export interface BoxOptions {
13
- /** Padding inside the box (default: 1) */
14
- padding?: number;
15
- /** Margin outside the box (default: 0) */
16
- margin?: number;
17
- /** Border color (default: 'dim') */
18
- borderColor?: BorderColor;
19
- }
20
-
21
- /**
22
- * Create a box around text with Unicode borders
23
- *
24
- * @param content - Text content to box (supports multiline)
25
- * @param options - Box formatting options
26
- * @returns Formatted box string
27
- *
28
- * @example
29
- * const message = box('Update available: 1.0.0 → 1.1.0');
30
- * console.log(message);
31
- * // ┌────────────────────────────────┐
32
- * // │ Update available: 1.0.0 → 1.1.0│
33
- * // └────────────────────────────────┘
34
- *
35
- * @example
36
- * const warning = box(
37
- * 'This feature is deprecated\nUse the new API instead',
38
- * { borderColor: 'warning', padding: 2 }
39
- * );
40
- */
41
- export const box = (
42
- content: string,
43
- options: BoxOptions = {}
44
- ): string => {
45
- const { padding = 1, margin = 0, borderColor = 'dim' } = options;
46
-
47
- const lines = content.split('\n');
48
- const maxWidth = Math.max(...lines.map(l => l.length));
49
- const innerWidth = maxWidth + padding * 2;
50
-
51
- const marginStr = ' '.repeat(margin);
52
- const paddingStr = ' '.repeat(padding);
53
-
54
- const colorFn = colors[borderColor] || colors.dim;
55
-
56
- const top = marginStr + colorFn(symbols.boxTopLeft + symbols.boxTop.repeat(innerWidth) + symbols.boxTopRight);
57
- const bottom = marginStr + colorFn(symbols.boxBottomLeft + symbols.boxBottom.repeat(innerWidth) + symbols.boxBottomRight);
58
-
59
- const middle = lines.map(line => {
60
- const padded = line.padEnd(maxWidth);
61
- return marginStr + colorFn(symbols.boxLeft) + paddingStr + padded + paddingStr + colorFn(symbols.boxRight);
62
- });
63
-
64
- return [top, ...middle, bottom].join('\n');
65
- };
66
-
67
- /**
68
- * List formatting options
69
- */
70
- export interface ListOptions {
71
- /** Number of spaces to indent (default: 0) */
72
- indent?: number;
73
- /** Starting number for numbered lists (default: 1) */
74
- startFrom?: number;
75
- /** Custom symbol for bullet lists */
76
- symbol?: string;
77
- }
78
-
79
- /**
80
- * Create a numbered list
81
- *
82
- * @param items - Array of items to list
83
- * @param options - List formatting options
84
- * @returns Formatted numbered list string
85
- *
86
- * @example
87
- * const steps = numberedList([
88
- * 'cd my-project',
89
- * 'npm install',
90
- * 'npm test'
91
- * ]);
92
- * console.log(steps);
93
- * // 1. cd my-project
94
- * // 2. npm install
95
- * // 3. npm test
96
- */
97
- export const numberedList = (
98
- items: string[],
99
- options: ListOptions = {}
100
- ): string => {
101
- const { indent = 0, startFrom = 1 } = options;
102
- const prefix = ' '.repeat(indent);
103
-
104
- return items
105
- .map((item, idx) => `${prefix}${startFrom + idx}. ${item}`)
106
- .join('\n');
107
- };
108
-
109
- /**
110
- * Create a bulleted list
111
- *
112
- * @param items - Array of items to list
113
- * @param options - List formatting options
114
- * @returns Formatted bulleted list string
115
- *
116
- * @example
117
- * const features = bulletList([
118
- * 'Feature A',
119
- * 'Feature B',
120
- * 'Feature C'
121
- * ]);
122
- * console.log(features);
123
- * // • Feature A
124
- * // • Feature B
125
- * // • Feature C
126
- *
127
- * @example
128
- * const tasks = bulletList(
129
- * ['Task 1', 'Task 2'],
130
- * { indent: 2, symbol: '→' }
131
- * );
132
- */
133
- export const bulletList = (
134
- items: string[],
135
- options: ListOptions = {}
136
- ): string => {
137
- const { indent = 0, symbol = symbols.bullet } = options;
138
- const prefix = ' '.repeat(indent);
139
-
140
- return items
141
- .map(item => `${prefix}${symbol} ${item}`)
142
- .join('\n');
143
- };
144
-
145
- /**
146
- * Indent text block by a specified number of spaces
147
- *
148
- * @param text - Text to indent (supports multiline)
149
- * @param spaces - Number of spaces to indent
150
- * @returns Indented text
151
- *
152
- * @example
153
- * const code = 'function test() {\n return true;\n}';
154
- * console.log(indent(code, 4));
155
- * // function test() {
156
- * // return true;
157
- * // }
158
- */
159
- export const indent = (text: string, spaces: number): string => {
160
- const prefix = ' '.repeat(spaces);
161
- return text.split('\n').map(line => prefix + line).join('\n');
162
- };
163
-
164
- /**
165
- * Create a horizontal divider line
166
- *
167
- * @param width - Width of the divider (default: 60)
168
- * @param char - Character to use (default: symbols.line)
169
- * @returns Formatted divider string
170
- *
171
- * @example
172
- * console.log(divider());
173
- * // ────────────────────────────────────────────────────────────
174
- *
175
- * @example
176
- * console.log(divider(40, '='));
177
- * // ========================================
178
- */
179
- const divider = (
180
- width: number = 60,
181
- char: string = symbols.line
182
- ): string => {
183
- return colors.dim(char.repeat(width));
184
- };
185
-
186
- /**
187
- * Format file path with dimmed parent directories
188
- * Highlights the filename while dimming the directory path
189
- *
190
- * @param filePath - Full file path
191
- * @returns Formatted path string
192
- *
193
- * @example
194
- * console.log(formatPath('/Users/name/project/src/file.ts'));
195
- * // /Users/name/project/src/file.ts
196
- * // (where the directory is dimmed and filename is bright)
197
- */
198
- export const formatPath = (filePath: string): string => {
199
- const parts = filePath.split('/');
200
- const fileName = parts.pop() || '';
201
- const dirPath = parts.join('/');
202
-
203
- return colors.dim(dirPath + '/') + fileName;
204
- };
205
-
206
- /**
207
- * Create a section header with divider
208
- * Combines a bold title with a horizontal line
209
- *
210
- * @param title - Section title
211
- * @param options - Formatting options
212
- * @returns Formatted section header
213
- *
214
- * @example
215
- * console.log(sectionHeader('Fork Details'));
216
- * //
217
- * // Fork Details
218
- * // ────────────────────────────────────────────────────────────
219
- */
220
- export const sectionHeader = (
221
- title: string,
222
- options: { width?: number; char?: string } = {}
223
- ): string => {
224
- const { width = 60, char = symbols.line } = options;
225
- return `\n${colors.brandBright(title)}\n${divider(width, char)}`;
226
- };
227
-
228
- /**
229
- * Format a command for display with dimmed prompt
230
- * Useful for showing example commands to users
231
- *
232
- * @param command - Command string
233
- * @returns Formatted command with $ prompt
234
- *
235
- * @example
236
- * console.log(formatCommand('movehat compile'));
237
- * // $ movehat compile
238
- * // (where $ is dimmed)
239
- *
240
- * @example
241
- * console.log(formatCommand('npm install'));
242
- * // $ npm install
243
- */
244
- export const formatCommand = (command: string): string => {
245
- return `${colors.dim('$')} ${command}`;
246
- };
package/src/ui/index.ts DELETED
@@ -1,62 +0,0 @@
1
- /**
2
- * Movehat UI Module
3
- *
4
- * Provides a comprehensive set of UI utilities for the CLI including:
5
- * - Colors and gradients (picocolors wrapper)
6
- * - Cross-platform symbols (figures wrapper)
7
- * - Structured logging system
8
- * - Spinners for async operations (ora wrapper)
9
- * - Table formatting (cli-table3 wrapper)
10
- * - Text formatting utilities
11
- *
12
- * @example
13
- * // Named imports (recommended)
14
- * import { logger, spinner, createTable } from './ui/index.js';
15
- *
16
- * logger.info('Starting compilation...');
17
- * const spin = spinner({ text: 'Compiling...' });
18
- * // ... async work ...
19
- * spin.succeed('Compilation complete!');
20
- *
21
- * @example
22
- * // Namespace import
23
- * import { ui } from './ui/index.js';
24
- *
25
- * ui.logger.info('Starting...');
26
- * ui.logger.success('Done!');
27
- */
28
-
29
- // Re-export everything from submodules for named imports
30
- export * from './colors.js';
31
- export * from './symbols.js';
32
- export * from './logger.js';
33
- export * from './spinner.js';
34
- export * from './table.js';
35
- export * from './formatters.js';
36
-
37
- // Also export as namespace for convenience
38
- import * as _colors from './colors.js';
39
- import * as _symbols from './symbols.js';
40
- import * as _logger from './logger.js';
41
- import * as _spinner from './spinner.js';
42
- import * as _table from './table.js';
43
- import * as _formatters from './formatters.js';
44
-
45
- /**
46
- * Unified UI namespace
47
- * Provides all UI utilities in a single namespace object
48
- *
49
- * @example
50
- * import { ui } from './ui/index.js';
51
- *
52
- * ui.logger.info('Processing...');
53
- * ui.logger.success('Done!');
54
- */
55
- export const ui = {
56
- colors: _colors,
57
- symbols: _symbols,
58
- logger: _logger,
59
- spinner: _spinner,
60
- table: _table,
61
- formatters: _formatters,
62
- };