@xylabs/aries 0.1.1

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 (421) hide show
  1. package/README.md +693 -0
  2. package/dist/actions/audit/auditPaths.mjs +22 -0
  3. package/dist/actions/audit/auditPaths.mjs.map +1 -0
  4. package/dist/actions/audit/index.mjs +739 -0
  5. package/dist/actions/audit/index.mjs.map +1 -0
  6. package/dist/actions/audit/installPlugin.mjs +298 -0
  7. package/dist/actions/audit/installPlugin.mjs.map +1 -0
  8. package/dist/actions/audit/listSessions.mjs +93 -0
  9. package/dist/actions/audit/listSessions.mjs.map +1 -0
  10. package/dist/actions/audit/openAuditDir.mjs +44 -0
  11. package/dist/actions/audit/openAuditDir.mjs.map +1 -0
  12. package/dist/actions/audit/searchAudit.mjs +77 -0
  13. package/dist/actions/audit/searchAudit.mjs.map +1 -0
  14. package/dist/actions/audit/showAiMeta.mjs +105 -0
  15. package/dist/actions/audit/showAiMeta.mjs.map +1 -0
  16. package/dist/actions/audit/showSession.mjs +105 -0
  17. package/dist/actions/audit/showSession.mjs.map +1 -0
  18. package/dist/actions/audit/statusAudit.mjs +98 -0
  19. package/dist/actions/audit/statusAudit.mjs.map +1 -0
  20. package/dist/actions/clamp/clampAudit.mjs +53 -0
  21. package/dist/actions/clamp/clampAudit.mjs.map +1 -0
  22. package/dist/actions/clamp/index.mjs +2258 -0
  23. package/dist/actions/clamp/index.mjs.map +1 -0
  24. package/dist/actions/clamp/ipcServer.mjs +55 -0
  25. package/dist/actions/clamp/ipcServer.mjs.map +1 -0
  26. package/dist/actions/clamp/policyManagement.mjs +144 -0
  27. package/dist/actions/clamp/policyManagement.mjs.map +1 -0
  28. package/dist/actions/clamp/promptUser.mjs +91 -0
  29. package/dist/actions/clamp/promptUser.mjs.map +1 -0
  30. package/dist/actions/clamp/runClamped.mjs +2107 -0
  31. package/dist/actions/clamp/runClamped.mjs.map +1 -0
  32. package/dist/actions/clamp/sandboxExec.mjs +1612 -0
  33. package/dist/actions/clamp/sandboxExec.mjs.map +1 -0
  34. package/dist/actions/clamp/shellEnvSetup.mjs +59 -0
  35. package/dist/actions/clamp/shellEnvSetup.mjs.map +1 -0
  36. package/dist/actions/clamp/shimGenerator.mjs +68 -0
  37. package/dist/actions/clamp/shimGenerator.mjs.map +1 -0
  38. package/dist/actions/clamp/terminalRenderer.mjs +145 -0
  39. package/dist/actions/clamp/terminalRenderer.mjs.map +1 -0
  40. package/dist/actions/datalake/audit/auditLog.mjs +191 -0
  41. package/dist/actions/datalake/audit/auditLog.mjs.map +1 -0
  42. package/dist/actions/datalake/createDatalake.mjs +127 -0
  43. package/dist/actions/datalake/createDatalake.mjs.map +1 -0
  44. package/dist/actions/datalake/describeDatalake.mjs +159 -0
  45. package/dist/actions/datalake/describeDatalake.mjs.map +1 -0
  46. package/dist/actions/datalake/destroyDatalake.mjs +34 -0
  47. package/dist/actions/datalake/destroyDatalake.mjs.map +1 -0
  48. package/dist/actions/datalake/dev/downDevServer.mjs +102 -0
  49. package/dist/actions/datalake/dev/downDevServer.mjs.map +1 -0
  50. package/dist/actions/datalake/dev/index.mjs +369 -0
  51. package/dist/actions/datalake/dev/index.mjs.map +1 -0
  52. package/dist/actions/datalake/dev/logsDevServer.mjs +44 -0
  53. package/dist/actions/datalake/dev/logsDevServer.mjs.map +1 -0
  54. package/dist/actions/datalake/dev/paths.mjs +25 -0
  55. package/dist/actions/datalake/dev/paths.mjs.map +1 -0
  56. package/dist/actions/datalake/dev/resetDevServer.mjs +118 -0
  57. package/dist/actions/datalake/dev/resetDevServer.mjs.map +1 -0
  58. package/dist/actions/datalake/dev/resolveServerBin.mjs +26 -0
  59. package/dist/actions/datalake/dev/resolveServerBin.mjs.map +1 -0
  60. package/dist/actions/datalake/dev/state.mjs +62 -0
  61. package/dist/actions/datalake/dev/state.mjs.map +1 -0
  62. package/dist/actions/datalake/dev/statusDevServer.mjs +101 -0
  63. package/dist/actions/datalake/dev/statusDevServer.mjs.map +1 -0
  64. package/dist/actions/datalake/dev/upDevServer.mjs +221 -0
  65. package/dist/actions/datalake/dev/upDevServer.mjs.map +1 -0
  66. package/dist/actions/datalake/dev/waitForHealth.mjs +22 -0
  67. package/dist/actions/datalake/dev/waitForHealth.mjs.map +1 -0
  68. package/dist/actions/datalake/formatters.mjs +90 -0
  69. package/dist/actions/datalake/formatters.mjs.map +1 -0
  70. package/dist/actions/datalake/grantAccess.mjs +116 -0
  71. package/dist/actions/datalake/grantAccess.mjs.map +1 -0
  72. package/dist/actions/datalake/index.mjs +361 -0
  73. package/dist/actions/datalake/index.mjs.map +1 -0
  74. package/dist/actions/datalake/listDatalakes.mjs +54 -0
  75. package/dist/actions/datalake/listDatalakes.mjs.map +1 -0
  76. package/dist/actions/datalake/login.mjs +20 -0
  77. package/dist/actions/datalake/login.mjs.map +1 -0
  78. package/dist/actions/datalake/logout.mjs +11 -0
  79. package/dist/actions/datalake/logout.mjs.map +1 -0
  80. package/dist/actions/datalake/mintToken.mjs +37 -0
  81. package/dist/actions/datalake/mintToken.mjs.map +1 -0
  82. package/dist/actions/datalake/parseSize.mjs +21 -0
  83. package/dist/actions/datalake/parseSize.mjs.map +1 -0
  84. package/dist/actions/datalake/payloads/fetchPayload.mjs +76 -0
  85. package/dist/actions/datalake/payloads/fetchPayload.mjs.map +1 -0
  86. package/dist/actions/datalake/payloads/index.mjs +271 -0
  87. package/dist/actions/datalake/payloads/index.mjs.map +1 -0
  88. package/dist/actions/datalake/payloads/mintAndConnect.mjs +46 -0
  89. package/dist/actions/datalake/payloads/mintAndConnect.mjs.map +1 -0
  90. package/dist/actions/datalake/payloads/parsePayloadsFile.mjs +71 -0
  91. package/dist/actions/datalake/payloads/parsePayloadsFile.mjs.map +1 -0
  92. package/dist/actions/datalake/payloads/pushPayloads.mjs +181 -0
  93. package/dist/actions/datalake/payloads/pushPayloads.mjs.map +1 -0
  94. package/dist/actions/datalake/payloads/tailPayloads.mjs +106 -0
  95. package/dist/actions/datalake/payloads/tailPayloads.mjs.map +1 -0
  96. package/dist/actions/datalake/resolveTarget.mjs +15 -0
  97. package/dist/actions/datalake/resolveTarget.mjs.map +1 -0
  98. package/dist/actions/datalake/revokeAccess.mjs +108 -0
  99. package/dist/actions/datalake/revokeAccess.mjs.map +1 -0
  100. package/dist/actions/datalake/useDatalake.mjs +22 -0
  101. package/dist/actions/datalake/useDatalake.mjs.map +1 -0
  102. package/dist/actions/detect/detectAiClients.mjs +405 -0
  103. package/dist/actions/detect/detectAiClients.mjs.map +1 -0
  104. package/dist/actions/detect/index.mjs +405 -0
  105. package/dist/actions/detect/index.mjs.map +1 -0
  106. package/dist/actions/hash/algorithms/blockhash.mjs +61 -0
  107. package/dist/actions/hash/algorithms/blockhash.mjs.map +1 -0
  108. package/dist/actions/hash/algorithms/chromaprint.mjs +205 -0
  109. package/dist/actions/hash/algorithms/chromaprint.mjs.map +1 -0
  110. package/dist/actions/hash/algorithms/dhash.mjs +75 -0
  111. package/dist/actions/hash/algorithms/dhash.mjs.map +1 -0
  112. package/dist/actions/hash/algorithms/index.mjs +818 -0
  113. package/dist/actions/hash/algorithms/index.mjs.map +1 -0
  114. package/dist/actions/hash/algorithms/nilsimsa.mjs +27 -0
  115. package/dist/actions/hash/algorithms/nilsimsa.mjs.map +1 -0
  116. package/dist/actions/hash/algorithms/pdq.mjs +83 -0
  117. package/dist/actions/hash/algorithms/pdq.mjs.map +1 -0
  118. package/dist/actions/hash/algorithms/phash.mjs +71 -0
  119. package/dist/actions/hash/algorithms/phash.mjs.map +1 -0
  120. package/dist/actions/hash/algorithms/sha256.mjs +24 -0
  121. package/dist/actions/hash/algorithms/sha256.mjs.map +1 -0
  122. package/dist/actions/hash/algorithms/ssdeep.mjs +203 -0
  123. package/dist/actions/hash/algorithms/ssdeep.mjs.map +1 -0
  124. package/dist/actions/hash/algorithms/tlsh.mjs +66 -0
  125. package/dist/actions/hash/algorithms/tlsh.mjs.map +1 -0
  126. package/dist/actions/hash/algorithms/types.mjs +1 -0
  127. package/dist/actions/hash/algorithms/types.mjs.map +1 -0
  128. package/dist/actions/hash/algorithms/videoFrames.mjs +404 -0
  129. package/dist/actions/hash/algorithms/videoFrames.mjs.map +1 -0
  130. package/dist/actions/hash/algorithms/xyo.mjs +30 -0
  131. package/dist/actions/hash/algorithms/xyo.mjs.map +1 -0
  132. package/dist/actions/hash/compareHashes.mjs +823 -0
  133. package/dist/actions/hash/compareHashes.mjs.map +1 -0
  134. package/dist/actions/hash/hashInput.mjs +868 -0
  135. package/dist/actions/hash/hashInput.mjs.map +1 -0
  136. package/dist/actions/hash/index.mjs +881 -0
  137. package/dist/actions/hash/index.mjs.map +1 -0
  138. package/dist/actions/hash/lib/hamming.mjs +44 -0
  139. package/dist/actions/hash/lib/hamming.mjs.map +1 -0
  140. package/dist/actions/hash/lib/levenshtein.mjs +36 -0
  141. package/dist/actions/hash/lib/levenshtein.mjs.map +1 -0
  142. package/dist/actions/hash/lib/runBinary.mjs +54 -0
  143. package/dist/actions/hash/lib/runBinary.mjs.map +1 -0
  144. package/dist/actions/hash/lib/which.mjs +36 -0
  145. package/dist/actions/hash/lib/which.mjs.map +1 -0
  146. package/dist/actions/hash/lib/withTempfile.mjs +19 -0
  147. package/dist/actions/hash/lib/withTempfile.mjs.map +1 -0
  148. package/dist/actions/index.mjs +4615 -0
  149. package/dist/actions/index.mjs.map +1 -0
  150. package/dist/actions/printVersion.mjs +12 -0
  151. package/dist/actions/printVersion.mjs.map +1 -0
  152. package/dist/actions/sync/index.mjs +51 -0
  153. package/dist/actions/sync/index.mjs.map +1 -0
  154. package/dist/actions/sync/syncAiConfig.mjs +51 -0
  155. package/dist/actions/sync/syncAiConfig.mjs.map +1 -0
  156. package/dist/actions/wallet/account/deriveAndAdd.mjs +394 -0
  157. package/dist/actions/wallet/account/deriveAndAdd.mjs.map +1 -0
  158. package/dist/actions/wallet/account/getActiveWallet.mjs +338 -0
  159. package/dist/actions/wallet/account/getActiveWallet.mjs.map +1 -0
  160. package/dist/actions/wallet/account/labelAccount.mjs +389 -0
  161. package/dist/actions/wallet/account/labelAccount.mjs.map +1 -0
  162. package/dist/actions/wallet/account/listAccounts.mjs +374 -0
  163. package/dist/actions/wallet/account/listAccounts.mjs.map +1 -0
  164. package/dist/actions/wallet/account/removeAccount.mjs +384 -0
  165. package/dist/actions/wallet/account/removeAccount.mjs.map +1 -0
  166. package/dist/actions/wallet/account/showAccount.mjs +368 -0
  167. package/dist/actions/wallet/account/showAccount.mjs.map +1 -0
  168. package/dist/actions/wallet/addressBook/storage.mjs +110 -0
  169. package/dist/actions/wallet/addressBook/storage.mjs.map +1 -0
  170. package/dist/actions/wallet/backup/exportBackup.mjs +93 -0
  171. package/dist/actions/wallet/backup/exportBackup.mjs.map +1 -0
  172. package/dist/actions/wallet/backup/importBackup.mjs +142 -0
  173. package/dist/actions/wallet/backup/importBackup.mjs.map +1 -0
  174. package/dist/actions/wallet/balance/getBalance.mjs +434 -0
  175. package/dist/actions/wallet/balance/getBalance.mjs.map +1 -0
  176. package/dist/actions/wallet/client/walletClient.mjs +64 -0
  177. package/dist/actions/wallet/client/walletClient.mjs.map +1 -0
  178. package/dist/actions/wallet/contact/contactActions.mjs +120 -0
  179. package/dist/actions/wallet/contact/contactActions.mjs.map +1 -0
  180. package/dist/actions/wallet/contact/storage.mjs +69 -0
  181. package/dist/actions/wallet/contact/storage.mjs.map +1 -0
  182. package/dist/actions/wallet/index.mjs +1439 -0
  183. package/dist/actions/wallet/index.mjs.map +1 -0
  184. package/dist/actions/wallet/network/networkActions.mjs +137 -0
  185. package/dist/actions/wallet/network/networkActions.mjs.map +1 -0
  186. package/dist/actions/wallet/network/storage.mjs +93 -0
  187. package/dist/actions/wallet/network/storage.mjs.map +1 -0
  188. package/dist/actions/wallet/password/changePassword.mjs +282 -0
  189. package/dist/actions/wallet/password/changePassword.mjs.map +1 -0
  190. package/dist/actions/wallet/password/getActiveKey.mjs +297 -0
  191. package/dist/actions/wallet/password/getActiveKey.mjs.map +1 -0
  192. package/dist/actions/wallet/password/initOrUnlock.mjs +337 -0
  193. package/dist/actions/wallet/password/initOrUnlock.mjs.map +1 -0
  194. package/dist/actions/wallet/password/passwordStorage.mjs +69 -0
  195. package/dist/actions/wallet/password/passwordStorage.mjs.map +1 -0
  196. package/dist/actions/wallet/password/setPassword.mjs +138 -0
  197. package/dist/actions/wallet/password/setPassword.mjs.map +1 -0
  198. package/dist/actions/wallet/password/validatePassword.mjs +123 -0
  199. package/dist/actions/wallet/password/validatePassword.mjs.map +1 -0
  200. package/dist/actions/wallet/passwordKey.mjs +87 -0
  201. package/dist/actions/wallet/passwordKey.mjs.map +1 -0
  202. package/dist/actions/wallet/paths.mjs +26 -0
  203. package/dist/actions/wallet/paths.mjs.map +1 -0
  204. package/dist/actions/wallet/prompt.mjs +93 -0
  205. package/dist/actions/wallet/prompt.mjs.map +1 -0
  206. package/dist/actions/wallet/seedPhrase/createPhrase.mjs +392 -0
  207. package/dist/actions/wallet/seedPhrase/createPhrase.mjs.map +1 -0
  208. package/dist/actions/wallet/seedPhrase/exportPhrase.mjs +334 -0
  209. package/dist/actions/wallet/seedPhrase/exportPhrase.mjs.map +1 -0
  210. package/dist/actions/wallet/seedPhrase/idGen.mjs +11 -0
  211. package/dist/actions/wallet/seedPhrase/idGen.mjs.map +1 -0
  212. package/dist/actions/wallet/seedPhrase/importPhrase.mjs +393 -0
  213. package/dist/actions/wallet/seedPhrase/importPhrase.mjs.map +1 -0
  214. package/dist/actions/wallet/seedPhrase/listPhrases.mjs +62 -0
  215. package/dist/actions/wallet/seedPhrase/listPhrases.mjs.map +1 -0
  216. package/dist/actions/wallet/seedPhrase/phraseStorage.mjs +89 -0
  217. package/dist/actions/wallet/seedPhrase/phraseStorage.mjs.map +1 -0
  218. package/dist/actions/wallet/seedPhrase/removePhrase.mjs +366 -0
  219. package/dist/actions/wallet/seedPhrase/removePhrase.mjs.map +1 -0
  220. package/dist/actions/wallet/seedPhrase/renamePhrase.mjs +78 -0
  221. package/dist/actions/wallet/seedPhrase/renamePhrase.mjs.map +1 -0
  222. package/dist/actions/wallet/seedPhrase/types.mjs +1 -0
  223. package/dist/actions/wallet/seedPhrase/types.mjs.map +1 -0
  224. package/dist/actions/wallet/seedPhrase/usePhrase.mjs +83 -0
  225. package/dist/actions/wallet/seedPhrase/usePhrase.mjs.map +1 -0
  226. package/dist/actions/wallet/session/machineId.mjs +145 -0
  227. package/dist/actions/wallet/session/machineId.mjs.map +1 -0
  228. package/dist/actions/wallet/session/sessionCache.mjs +221 -0
  229. package/dist/actions/wallet/session/sessionCache.mjs.map +1 -0
  230. package/dist/actions/wallet/session/unlock.mjs +307 -0
  231. package/dist/actions/wallet/session/unlock.mjs.map +1 -0
  232. package/dist/actions/wallet/sign/signPayload.mjs +637 -0
  233. package/dist/actions/wallet/sign/signPayload.mjs.map +1 -0
  234. package/dist/actions/wallet/storage.mjs +51 -0
  235. package/dist/actions/wallet/storage.mjs.map +1 -0
  236. package/dist/actions/wallet/transaction/broadcastTransaction.mjs +453 -0
  237. package/dist/actions/wallet/transaction/broadcastTransaction.mjs.map +1 -0
  238. package/dist/actions/wallet/transaction/sendTransaction.mjs +457 -0
  239. package/dist/actions/wallet/transaction/sendTransaction.mjs.map +1 -0
  240. package/dist/actions/wallet/transaction/signTransactionFile.mjs +378 -0
  241. package/dist/actions/wallet/transaction/signTransactionFile.mjs.map +1 -0
  242. package/dist/actions/xyo/index.mjs +138 -0
  243. package/dist/actions/xyo/index.mjs.map +1 -0
  244. package/dist/actions/xyo/transaction/index.mjs +138 -0
  245. package/dist/actions/xyo/transaction/index.mjs.map +1 -0
  246. package/dist/actions/xyo/transaction/validateTransactions.mjs +138 -0
  247. package/dist/actions/xyo/transaction/validateTransactions.mjs.map +1 -0
  248. package/dist/aries.mjs +8466 -0
  249. package/dist/aries.mjs.map +1 -0
  250. package/dist/bin/aries.mjs +8472 -0
  251. package/dist/bin/aries.mjs.map +1 -0
  252. package/dist/commands/aiCommand.mjs +492 -0
  253. package/dist/commands/aiCommand.mjs.map +1 -0
  254. package/dist/commands/auditAiCommand.mjs +119 -0
  255. package/dist/commands/auditAiCommand.mjs.map +1 -0
  256. package/dist/commands/auditCommand.mjs +857 -0
  257. package/dist/commands/auditCommand.mjs.map +1 -0
  258. package/dist/commands/auditInstallCommand.mjs +324 -0
  259. package/dist/commands/auditInstallCommand.mjs.map +1 -0
  260. package/dist/commands/auditListCommand.mjs +107 -0
  261. package/dist/commands/auditListCommand.mjs.map +1 -0
  262. package/dist/commands/auditOpenCommand.mjs +51 -0
  263. package/dist/commands/auditOpenCommand.mjs.map +1 -0
  264. package/dist/commands/auditSearchCommand.mjs +98 -0
  265. package/dist/commands/auditSearchCommand.mjs.map +1 -0
  266. package/dist/commands/auditShowCommand.mjs +123 -0
  267. package/dist/commands/auditShowCommand.mjs.map +1 -0
  268. package/dist/commands/auditStatusCommand.mjs +105 -0
  269. package/dist/commands/auditStatusCommand.mjs.map +1 -0
  270. package/dist/commands/clampCommand.mjs +2328 -0
  271. package/dist/commands/clampCommand.mjs.map +1 -0
  272. package/dist/commands/clampPolicyCommand.mjs +184 -0
  273. package/dist/commands/clampPolicyCommand.mjs.map +1 -0
  274. package/dist/commands/clampPolicyInitCommand.mjs +63 -0
  275. package/dist/commands/clampPolicyInitCommand.mjs.map +1 -0
  276. package/dist/commands/clampPolicyListCommand.mjs +56 -0
  277. package/dist/commands/clampPolicyListCommand.mjs.map +1 -0
  278. package/dist/commands/clampPolicyShowCommand.mjs +83 -0
  279. package/dist/commands/clampPolicyShowCommand.mjs.map +1 -0
  280. package/dist/commands/clampRunCommand.mjs +2137 -0
  281. package/dist/commands/clampRunCommand.mjs.map +1 -0
  282. package/dist/commands/datalakeAuditCommand.mjs +273 -0
  283. package/dist/commands/datalakeAuditCommand.mjs.map +1 -0
  284. package/dist/commands/datalakeCommand.mjs +1637 -0
  285. package/dist/commands/datalakeCommand.mjs.map +1 -0
  286. package/dist/commands/datalakeCreateCommand.mjs +189 -0
  287. package/dist/commands/datalakeCreateCommand.mjs.map +1 -0
  288. package/dist/commands/datalakeDescribeCommand.mjs +172 -0
  289. package/dist/commands/datalakeDescribeCommand.mjs.map +1 -0
  290. package/dist/commands/datalakeDestroyCommand.mjs +53 -0
  291. package/dist/commands/datalakeDestroyCommand.mjs.map +1 -0
  292. package/dist/commands/datalakeDevCommand.mjs +470 -0
  293. package/dist/commands/datalakeDevCommand.mjs.map +1 -0
  294. package/dist/commands/datalakeDevDownCommand.mjs +111 -0
  295. package/dist/commands/datalakeDevDownCommand.mjs.map +1 -0
  296. package/dist/commands/datalakeDevLogsCommand.mjs +65 -0
  297. package/dist/commands/datalakeDevLogsCommand.mjs.map +1 -0
  298. package/dist/commands/datalakeDevResetCommand.mjs +125 -0
  299. package/dist/commands/datalakeDevResetCommand.mjs.map +1 -0
  300. package/dist/commands/datalakeDevStatusCommand.mjs +110 -0
  301. package/dist/commands/datalakeDevStatusCommand.mjs.map +1 -0
  302. package/dist/commands/datalakeDevUpCommand.mjs +268 -0
  303. package/dist/commands/datalakeDevUpCommand.mjs.map +1 -0
  304. package/dist/commands/datalakeFetchCommand.mjs +106 -0
  305. package/dist/commands/datalakeFetchCommand.mjs.map +1 -0
  306. package/dist/commands/datalakeGrantCommand.mjs +147 -0
  307. package/dist/commands/datalakeGrantCommand.mjs.map +1 -0
  308. package/dist/commands/datalakeListCommand.mjs +61 -0
  309. package/dist/commands/datalakeListCommand.mjs.map +1 -0
  310. package/dist/commands/datalakeLoginCommand.mjs +39 -0
  311. package/dist/commands/datalakeLoginCommand.mjs.map +1 -0
  312. package/dist/commands/datalakeLogoutCommand.mjs +20 -0
  313. package/dist/commands/datalakeLogoutCommand.mjs.map +1 -0
  314. package/dist/commands/datalakePushCommand.mjs +214 -0
  315. package/dist/commands/datalakePushCommand.mjs.map +1 -0
  316. package/dist/commands/datalakeRevokeCommand.mjs +127 -0
  317. package/dist/commands/datalakeRevokeCommand.mjs.map +1 -0
  318. package/dist/commands/datalakeTailCommand.mjs +144 -0
  319. package/dist/commands/datalakeTailCommand.mjs.map +1 -0
  320. package/dist/commands/datalakeTokenCommand.mjs +61 -0
  321. package/dist/commands/datalakeTokenCommand.mjs.map +1 -0
  322. package/dist/commands/datalakeUseCommand.mjs +35 -0
  323. package/dist/commands/datalakeUseCommand.mjs.map +1 -0
  324. package/dist/commands/detectCommand.mjs +419 -0
  325. package/dist/commands/detectCommand.mjs.map +1 -0
  326. package/dist/commands/hashCommand.mjs +976 -0
  327. package/dist/commands/hashCommand.mjs.map +1 -0
  328. package/dist/commands/hashCompareCommand.mjs +865 -0
  329. package/dist/commands/hashCompareCommand.mjs.map +1 -0
  330. package/dist/commands/index.mjs +8461 -0
  331. package/dist/commands/index.mjs.map +1 -0
  332. package/dist/commands/syncCommand.mjs +66 -0
  333. package/dist/commands/syncCommand.mjs.map +1 -0
  334. package/dist/commands/versionCommand.mjs +24 -0
  335. package/dist/commands/versionCommand.mjs.map +1 -0
  336. package/dist/commands/walletAccountCommand.mjs +536 -0
  337. package/dist/commands/walletAccountCommand.mjs.map +1 -0
  338. package/dist/commands/walletAccountDeriveCommand.mjs +415 -0
  339. package/dist/commands/walletAccountDeriveCommand.mjs.map +1 -0
  340. package/dist/commands/walletAccountLabelCommand.mjs +405 -0
  341. package/dist/commands/walletAccountLabelCommand.mjs.map +1 -0
  342. package/dist/commands/walletAccountListCommand.mjs +381 -0
  343. package/dist/commands/walletAccountListCommand.mjs.map +1 -0
  344. package/dist/commands/walletAccountRemoveCommand.mjs +396 -0
  345. package/dist/commands/walletAccountRemoveCommand.mjs.map +1 -0
  346. package/dist/commands/walletAccountShowCommand.mjs +380 -0
  347. package/dist/commands/walletAccountShowCommand.mjs.map +1 -0
  348. package/dist/commands/walletBackupCommand.mjs +222 -0
  349. package/dist/commands/walletBackupCommand.mjs.map +1 -0
  350. package/dist/commands/walletBackupExportCommand.mjs +107 -0
  351. package/dist/commands/walletBackupExportCommand.mjs.map +1 -0
  352. package/dist/commands/walletBackupImportCommand.mjs +154 -0
  353. package/dist/commands/walletBackupImportCommand.mjs.map +1 -0
  354. package/dist/commands/walletBalanceCommand.mjs +448 -0
  355. package/dist/commands/walletBalanceCommand.mjs.map +1 -0
  356. package/dist/commands/walletCommand.mjs +1968 -0
  357. package/dist/commands/walletCommand.mjs.map +1 -0
  358. package/dist/commands/walletContactAddCommand.mjs +111 -0
  359. package/dist/commands/walletContactAddCommand.mjs.map +1 -0
  360. package/dist/commands/walletContactCommand.mjs +184 -0
  361. package/dist/commands/walletContactCommand.mjs.map +1 -0
  362. package/dist/commands/walletContactListCommand.mjs +66 -0
  363. package/dist/commands/walletContactListCommand.mjs.map +1 -0
  364. package/dist/commands/walletContactRemoveCommand.mjs +97 -0
  365. package/dist/commands/walletContactRemoveCommand.mjs.map +1 -0
  366. package/dist/commands/walletContactRenameCommand.mjs +114 -0
  367. package/dist/commands/walletContactRenameCommand.mjs.map +1 -0
  368. package/dist/commands/walletCreateCommand.mjs +407 -0
  369. package/dist/commands/walletCreateCommand.mjs.map +1 -0
  370. package/dist/commands/walletExportCommand.mjs +345 -0
  371. package/dist/commands/walletExportCommand.mjs.map +1 -0
  372. package/dist/commands/walletImportCommand.mjs +413 -0
  373. package/dist/commands/walletImportCommand.mjs.map +1 -0
  374. package/dist/commands/walletListCommand.mjs +69 -0
  375. package/dist/commands/walletListCommand.mjs.map +1 -0
  376. package/dist/commands/walletLockCommand.mjs +56 -0
  377. package/dist/commands/walletLockCommand.mjs.map +1 -0
  378. package/dist/commands/walletNetworkAddCommand.mjs +131 -0
  379. package/dist/commands/walletNetworkAddCommand.mjs.map +1 -0
  380. package/dist/commands/walletNetworkCommand.mjs +206 -0
  381. package/dist/commands/walletNetworkCommand.mjs.map +1 -0
  382. package/dist/commands/walletNetworkListCommand.mjs +104 -0
  383. package/dist/commands/walletNetworkListCommand.mjs.map +1 -0
  384. package/dist/commands/walletNetworkRemoveCommand.mjs +112 -0
  385. package/dist/commands/walletNetworkRemoveCommand.mjs.map +1 -0
  386. package/dist/commands/walletNetworkUseCommand.mjs +110 -0
  387. package/dist/commands/walletNetworkUseCommand.mjs.map +1 -0
  388. package/dist/commands/walletPasswordChangeCommand.mjs +291 -0
  389. package/dist/commands/walletPasswordChangeCommand.mjs.map +1 -0
  390. package/dist/commands/walletPasswordCommand.mjs +301 -0
  391. package/dist/commands/walletPasswordCommand.mjs.map +1 -0
  392. package/dist/commands/walletRemoveCommand.mjs +378 -0
  393. package/dist/commands/walletRemoveCommand.mjs.map +1 -0
  394. package/dist/commands/walletRenameCommand.mjs +94 -0
  395. package/dist/commands/walletRenameCommand.mjs.map +1 -0
  396. package/dist/commands/walletSignCommand.mjs +662 -0
  397. package/dist/commands/walletSignCommand.mjs.map +1 -0
  398. package/dist/commands/walletTxBroadcastCommand.mjs +473 -0
  399. package/dist/commands/walletTxBroadcastCommand.mjs.map +1 -0
  400. package/dist/commands/walletTxCommand.mjs +612 -0
  401. package/dist/commands/walletTxCommand.mjs.map +1 -0
  402. package/dist/commands/walletTxSendCommand.mjs +492 -0
  403. package/dist/commands/walletTxSendCommand.mjs.map +1 -0
  404. package/dist/commands/walletTxSignCommand.mjs +403 -0
  405. package/dist/commands/walletTxSignCommand.mjs.map +1 -0
  406. package/dist/commands/walletUnlockCommand.mjs +308 -0
  407. package/dist/commands/walletUnlockCommand.mjs.map +1 -0
  408. package/dist/commands/walletUseCommand.mjs +95 -0
  409. package/dist/commands/walletUseCommand.mjs.map +1 -0
  410. package/dist/commands/xyoCommand.mjs +188 -0
  411. package/dist/commands/xyoCommand.mjs.map +1 -0
  412. package/dist/commands/xyoTxCommand.mjs +178 -0
  413. package/dist/commands/xyoTxCommand.mjs.map +1 -0
  414. package/dist/commands/xyoTxValidateCommand.mjs +168 -0
  415. package/dist/commands/xyoTxValidateCommand.mjs.map +1 -0
  416. package/dist/index.d.ts +3 -0
  417. package/dist/index.mjs +8466 -0
  418. package/dist/index.mjs.map +1 -0
  419. package/dist/types/modules.d.mjs +1 -0
  420. package/dist/types/modules.d.mjs.map +1 -0
  421. package/package.json +197 -0
@@ -0,0 +1,184 @@
1
+ // src/actions/wallet/paths.ts
2
+ import OS from "os";
3
+ import PATH from "path";
4
+ function walletRoot() {
5
+ const override = process.env.ARIES_WALLET_HOME;
6
+ if (override) return override;
7
+ return PATH.join(OS.homedir(), ".aries", "wallet");
8
+ }
9
+ function walletPaths(root = walletRoot()) {
10
+ return {
11
+ root,
12
+ password: PATH.join(root, "password.json"),
13
+ phrases: PATH.join(root, "phrases.json"),
14
+ active: PATH.join(root, "active.json"),
15
+ addressBooks: PATH.join(root, "address-books.json"),
16
+ contacts: PATH.join(root, "contacts.json"),
17
+ networks: PATH.join(root, "networks.json"),
18
+ session: PATH.join(root, "session.json"),
19
+ machineId: PATH.join(root, ".machine-id")
20
+ };
21
+ }
22
+
23
+ // src/actions/wallet/storage.ts
24
+ import FS from "fs";
25
+ import PATH2 from "path";
26
+ function ensureWalletDir(root = walletRoot()) {
27
+ if (!FS.existsSync(root)) {
28
+ FS.mkdirSync(root, { recursive: true, mode: 448 });
29
+ return;
30
+ }
31
+ try {
32
+ FS.chmodSync(root, 448);
33
+ } catch {
34
+ }
35
+ }
36
+ function readJsonFile(file) {
37
+ if (!FS.existsSync(file)) return void 0;
38
+ const raw = FS.readFileSync(file, "utf8");
39
+ if (raw.trim().length === 0) return void 0;
40
+ return JSON.parse(raw);
41
+ }
42
+ function writeJsonFile(file, value) {
43
+ ensureWalletDir(PATH2.dirname(file));
44
+ const tmp = `${file}.tmp`;
45
+ FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}
46
+ `, { mode: 384 });
47
+ FS.renameSync(tmp, file);
48
+ try {
49
+ FS.chmodSync(file, 384);
50
+ } catch {
51
+ }
52
+ }
53
+
54
+ // src/actions/wallet/contact/storage.ts
55
+ var CONTACTS_VERSION = 1;
56
+ function readContacts() {
57
+ return readJsonFile(walletPaths().contacts) ?? {
58
+ entries: [],
59
+ version: CONTACTS_VERSION
60
+ };
61
+ }
62
+ function writeContacts(file) {
63
+ writeJsonFile(walletPaths().contacts, file);
64
+ }
65
+
66
+ // src/actions/wallet/contact/contactActions.ts
67
+ import chalk from "chalk";
68
+ function normalize(address) {
69
+ return address.toLowerCase();
70
+ }
71
+ function listContacts() {
72
+ const file = readContacts();
73
+ if (file.entries.length === 0) {
74
+ console.log(chalk.gray("No contacts. Run `aries wallet contact add <address> <label>` to add one."));
75
+ return;
76
+ }
77
+ for (const entry of file.entries) {
78
+ console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`);
79
+ }
80
+ }
81
+ function addContact(address, label) {
82
+ const file = readContacts();
83
+ const now = (/* @__PURE__ */ new Date()).toISOString();
84
+ const normalized = normalize(address);
85
+ const existing = file.entries.find((e) => normalize(e.address) === normalized);
86
+ if (existing) {
87
+ existing.label = label;
88
+ existing.updatedAt = now;
89
+ } else {
90
+ file.entries.push({
91
+ address: normalized,
92
+ label,
93
+ createdAt: now,
94
+ updatedAt: now
95
+ });
96
+ }
97
+ writeContacts(file);
98
+ console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`));
99
+ }
100
+ function renameContact(address, label) {
101
+ addContact(address, label);
102
+ }
103
+ function removeContact(address) {
104
+ const file = readContacts();
105
+ const normalized = normalize(address);
106
+ const before = file.entries.length;
107
+ file.entries = file.entries.filter((e) => normalize(e.address) !== normalized);
108
+ if (file.entries.length === before) throw new Error(`Contact not found: ${address}`);
109
+ writeContacts(file);
110
+ console.log(chalk.green(`Removed contact ${normalized}`));
111
+ }
112
+
113
+ // src/commands/walletContactAddCommand.ts
114
+ var walletContactAddCommand = {
115
+ command: "add <address> <label>",
116
+ describe: "Add or update a contact",
117
+ builder: (yargs) => yargs.positional("address", {
118
+ type: "string",
119
+ demandOption: true,
120
+ describe: "Address (0x...)"
121
+ }).positional("label", {
122
+ type: "string",
123
+ demandOption: true,
124
+ describe: "Friendly label"
125
+ }),
126
+ handler: (argv) => {
127
+ addContact(argv.address, argv.label);
128
+ }
129
+ };
130
+
131
+ // src/commands/walletContactListCommand.ts
132
+ var walletContactListCommand = {
133
+ command: "list",
134
+ describe: "List address-book contacts",
135
+ handler: () => {
136
+ listContacts();
137
+ }
138
+ };
139
+
140
+ // src/commands/walletContactRemoveCommand.ts
141
+ var walletContactRemoveCommand = {
142
+ command: "remove <address>",
143
+ describe: "Remove a contact",
144
+ builder: (yargs) => yargs.positional("address", {
145
+ type: "string",
146
+ demandOption: true,
147
+ describe: "Address (0x...)"
148
+ }),
149
+ handler: (argv) => {
150
+ removeContact(argv.address);
151
+ }
152
+ };
153
+
154
+ // src/commands/walletContactRenameCommand.ts
155
+ var walletContactRenameCommand = {
156
+ command: "rename <address> <label>",
157
+ describe: "Rename an existing contact",
158
+ builder: (yargs) => yargs.positional("address", {
159
+ type: "string",
160
+ demandOption: true,
161
+ describe: "Address (0x...)"
162
+ }).positional("label", {
163
+ type: "string",
164
+ demandOption: true,
165
+ describe: "New label"
166
+ }),
167
+ handler: (argv) => {
168
+ renameContact(argv.address, argv.label);
169
+ }
170
+ };
171
+
172
+ // src/commands/walletContactCommand.ts
173
+ var walletContactCommand = {
174
+ command: "contact",
175
+ describe: "Manage external address-book contacts",
176
+ builder: (yargs) => yargs.command(walletContactListCommand).command(walletContactAddCommand).command(walletContactRenameCommand).command(walletContactRemoveCommand).demandCommand(1).strictCommands(),
177
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
178
+ handler: () => {
179
+ }
180
+ };
181
+ export {
182
+ walletContactCommand
183
+ };
184
+ //# sourceMappingURL=walletContactCommand.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/wallet/paths.ts","../../src/actions/wallet/storage.ts","../../src/actions/wallet/contact/storage.ts","../../src/actions/wallet/contact/contactActions.ts","../../src/commands/walletContactAddCommand.ts","../../src/commands/walletContactListCommand.ts","../../src/commands/walletContactRemoveCommand.ts","../../src/commands/walletContactRenameCommand.ts","../../src/commands/walletContactCommand.ts"],"sourcesContent":["import OS from 'node:os'\nimport PATH from 'node:path'\n\nexport interface WalletPaths {\n root: string\n password: string\n phrases: string\n active: string\n addressBooks: string\n contacts: string\n networks: string\n session: string\n machineId: string\n}\n\nexport function walletRoot(): string {\n const override = process.env.ARIES_WALLET_HOME\n if (override) return override\n return PATH.join(OS.homedir(), '.aries', 'wallet')\n}\n\nexport function walletPaths(root: string = walletRoot()): WalletPaths {\n return {\n root,\n password: PATH.join(root, 'password.json'),\n phrases: PATH.join(root, 'phrases.json'),\n active: PATH.join(root, 'active.json'),\n addressBooks: PATH.join(root, 'address-books.json'),\n contacts: PATH.join(root, 'contacts.json'),\n networks: PATH.join(root, 'networks.json'),\n session: PATH.join(root, 'session.json'),\n machineId: PATH.join(root, '.machine-id'),\n }\n}\n","import FS from 'node:fs'\nimport PATH from 'node:path'\n\nimport { walletRoot } from './paths.ts'\n\nexport function ensureWalletDir(root: string = walletRoot()): void {\n if (!FS.existsSync(root)) {\n FS.mkdirSync(root, { recursive: true, mode: 0o700 })\n return\n }\n try {\n FS.chmodSync(root, 0o700)\n } catch {\n // best-effort on platforms without chmod\n }\n}\n\nexport function readJsonFile<T>(file: string): T | undefined {\n if (!FS.existsSync(file)) return undefined\n const raw = FS.readFileSync(file, 'utf8')\n if (raw.trim().length === 0) return undefined\n return JSON.parse(raw) as T\n}\n\nexport function writeJsonFile(file: string, value: unknown): void {\n ensureWalletDir(PATH.dirname(file))\n const tmp = `${file}.tmp`\n FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}\\n`, { mode: 0o600 })\n FS.renameSync(tmp, file)\n try {\n FS.chmodSync(file, 0o600)\n } catch {\n // best-effort\n }\n}\n\nexport function deleteFile(file: string): void {\n if (FS.existsSync(file)) FS.unlinkSync(file)\n}\n","import { walletPaths } from '../paths.ts'\nimport { readJsonFile, writeJsonFile } from '../storage.ts'\n\nexport interface ContactEntry {\n address: string\n label: string\n createdAt: string\n updatedAt: string\n}\n\nexport interface ContactsFile {\n entries: ContactEntry[]\n version: number\n}\n\nconst CONTACTS_VERSION = 1\n\nexport function readContacts(): ContactsFile {\n return readJsonFile<ContactsFile>(walletPaths().contacts) ?? {\n entries: [],\n version: CONTACTS_VERSION,\n }\n}\n\nexport function writeContacts(file: ContactsFile): void {\n writeJsonFile(walletPaths().contacts, file)\n}\n","import chalk from 'chalk'\n\nimport { readContacts, writeContacts } from './storage.ts'\n\nfunction normalize(address: string): string {\n return address.toLowerCase()\n}\n\nexport function listContacts(): void {\n const file = readContacts()\n if (file.entries.length === 0) {\n console.log(chalk.gray('No contacts. Run `aries wallet contact add <address> <label>` to add one.'))\n return\n }\n for (const entry of file.entries) {\n console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`)\n }\n}\n\nexport function addContact(address: string, label: string): void {\n const file = readContacts()\n const now = new Date().toISOString()\n const normalized = normalize(address)\n const existing = file.entries.find(e => normalize(e.address) === normalized)\n if (existing) {\n existing.label = label\n existing.updatedAt = now\n } else {\n file.entries.push({\n address: normalized, label, createdAt: now, updatedAt: now,\n })\n }\n writeContacts(file)\n console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`))\n}\n\nexport function renameContact(address: string, label: string): void {\n addContact(address, label)\n}\n\nexport function removeContact(address: string): void {\n const file = readContacts()\n const normalized = normalize(address)\n const before = file.entries.length\n file.entries = file.entries.filter(e => normalize(e.address) !== normalized)\n if (file.entries.length === before) throw new Error(`Contact not found: ${address}`)\n writeContacts(file)\n console.log(chalk.green(`Removed contact ${normalized}`))\n}\n","import type { CommandModule } from 'yargs'\n\nimport { addContact } from '../actions/wallet/index.ts'\n\nexport const walletContactAddCommand: CommandModule = {\n command: 'add <address> <label>',\n describe: 'Add or update a contact',\n builder: yargs =>\n yargs\n .positional('address', {\n type: 'string', demandOption: true, describe: 'Address (0x...)',\n })\n .positional('label', {\n type: 'string', demandOption: true, describe: 'Friendly label',\n }),\n handler: (argv) => {\n addContact(argv.address as string, argv.label as string)\n },\n}\n","import type { CommandModule } from 'yargs'\n\nimport { listContacts } from '../actions/wallet/index.ts'\n\nexport const walletContactListCommand: CommandModule = {\n command: 'list',\n describe: 'List address-book contacts',\n handler: () => {\n listContacts()\n },\n}\n","import type { CommandModule } from 'yargs'\n\nimport { removeContact } from '../actions/wallet/index.ts'\n\nexport const walletContactRemoveCommand: CommandModule = {\n command: 'remove <address>',\n describe: 'Remove a contact',\n builder: yargs =>\n yargs.positional('address', {\n type: 'string', demandOption: true, describe: 'Address (0x...)',\n }),\n handler: (argv) => {\n removeContact(argv.address as string)\n },\n}\n","import type { CommandModule } from 'yargs'\n\nimport { renameContact } from '../actions/wallet/index.ts'\n\nexport const walletContactRenameCommand: CommandModule = {\n command: 'rename <address> <label>',\n describe: 'Rename an existing contact',\n builder: yargs =>\n yargs\n .positional('address', {\n type: 'string', demandOption: true, describe: 'Address (0x...)',\n })\n .positional('label', {\n type: 'string', demandOption: true, describe: 'New label',\n }),\n handler: (argv) => {\n renameContact(argv.address as string, argv.label as string)\n },\n}\n","import type { CommandModule } from 'yargs'\n\nimport { walletContactAddCommand } from './walletContactAddCommand.ts'\nimport { walletContactListCommand } from './walletContactListCommand.ts'\nimport { walletContactRemoveCommand } from './walletContactRemoveCommand.ts'\nimport { walletContactRenameCommand } from './walletContactRenameCommand.ts'\n\nexport const walletContactCommand: CommandModule = {\n command: 'contact',\n describe: 'Manage external address-book contacts',\n builder: yargs =>\n yargs\n .command(walletContactListCommand)\n .command(walletContactAddCommand)\n .command(walletContactRenameCommand)\n .command(walletContactRemoveCommand)\n .demandCommand(1)\n .strictCommands(),\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n handler: () => {},\n}\n"],"mappings":"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","names":["PATH","PATH"]}
@@ -0,0 +1,66 @@
1
+ // src/actions/wallet/paths.ts
2
+ import OS from "os";
3
+ import PATH from "path";
4
+ function walletRoot() {
5
+ const override = process.env.ARIES_WALLET_HOME;
6
+ if (override) return override;
7
+ return PATH.join(OS.homedir(), ".aries", "wallet");
8
+ }
9
+ function walletPaths(root = walletRoot()) {
10
+ return {
11
+ root,
12
+ password: PATH.join(root, "password.json"),
13
+ phrases: PATH.join(root, "phrases.json"),
14
+ active: PATH.join(root, "active.json"),
15
+ addressBooks: PATH.join(root, "address-books.json"),
16
+ contacts: PATH.join(root, "contacts.json"),
17
+ networks: PATH.join(root, "networks.json"),
18
+ session: PATH.join(root, "session.json"),
19
+ machineId: PATH.join(root, ".machine-id")
20
+ };
21
+ }
22
+
23
+ // src/actions/wallet/storage.ts
24
+ import FS from "fs";
25
+ import PATH2 from "path";
26
+ function readJsonFile(file) {
27
+ if (!FS.existsSync(file)) return void 0;
28
+ const raw = FS.readFileSync(file, "utf8");
29
+ if (raw.trim().length === 0) return void 0;
30
+ return JSON.parse(raw);
31
+ }
32
+
33
+ // src/actions/wallet/contact/storage.ts
34
+ var CONTACTS_VERSION = 1;
35
+ function readContacts() {
36
+ return readJsonFile(walletPaths().contacts) ?? {
37
+ entries: [],
38
+ version: CONTACTS_VERSION
39
+ };
40
+ }
41
+
42
+ // src/actions/wallet/contact/contactActions.ts
43
+ import chalk from "chalk";
44
+ function listContacts() {
45
+ const file = readContacts();
46
+ if (file.entries.length === 0) {
47
+ console.log(chalk.gray("No contacts. Run `aries wallet contact add <address> <label>` to add one."));
48
+ return;
49
+ }
50
+ for (const entry of file.entries) {
51
+ console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`);
52
+ }
53
+ }
54
+
55
+ // src/commands/walletContactListCommand.ts
56
+ var walletContactListCommand = {
57
+ command: "list",
58
+ describe: "List address-book contacts",
59
+ handler: () => {
60
+ listContacts();
61
+ }
62
+ };
63
+ export {
64
+ walletContactListCommand
65
+ };
66
+ //# sourceMappingURL=walletContactListCommand.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/wallet/paths.ts","../../src/actions/wallet/storage.ts","../../src/actions/wallet/contact/storage.ts","../../src/actions/wallet/contact/contactActions.ts","../../src/commands/walletContactListCommand.ts"],"sourcesContent":["import OS from 'node:os'\nimport PATH from 'node:path'\n\nexport interface WalletPaths {\n root: string\n password: string\n phrases: string\n active: string\n addressBooks: string\n contacts: string\n networks: string\n session: string\n machineId: string\n}\n\nexport function walletRoot(): string {\n const override = process.env.ARIES_WALLET_HOME\n if (override) return override\n return PATH.join(OS.homedir(), '.aries', 'wallet')\n}\n\nexport function walletPaths(root: string = walletRoot()): WalletPaths {\n return {\n root,\n password: PATH.join(root, 'password.json'),\n phrases: PATH.join(root, 'phrases.json'),\n active: PATH.join(root, 'active.json'),\n addressBooks: PATH.join(root, 'address-books.json'),\n contacts: PATH.join(root, 'contacts.json'),\n networks: PATH.join(root, 'networks.json'),\n session: PATH.join(root, 'session.json'),\n machineId: PATH.join(root, '.machine-id'),\n }\n}\n","import FS from 'node:fs'\nimport PATH from 'node:path'\n\nimport { walletRoot } from './paths.ts'\n\nexport function ensureWalletDir(root: string = walletRoot()): void {\n if (!FS.existsSync(root)) {\n FS.mkdirSync(root, { recursive: true, mode: 0o700 })\n return\n }\n try {\n FS.chmodSync(root, 0o700)\n } catch {\n // best-effort on platforms without chmod\n }\n}\n\nexport function readJsonFile<T>(file: string): T | undefined {\n if (!FS.existsSync(file)) return undefined\n const raw = FS.readFileSync(file, 'utf8')\n if (raw.trim().length === 0) return undefined\n return JSON.parse(raw) as T\n}\n\nexport function writeJsonFile(file: string, value: unknown): void {\n ensureWalletDir(PATH.dirname(file))\n const tmp = `${file}.tmp`\n FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}\\n`, { mode: 0o600 })\n FS.renameSync(tmp, file)\n try {\n FS.chmodSync(file, 0o600)\n } catch {\n // best-effort\n }\n}\n\nexport function deleteFile(file: string): void {\n if (FS.existsSync(file)) FS.unlinkSync(file)\n}\n","import { walletPaths } from '../paths.ts'\nimport { readJsonFile, writeJsonFile } from '../storage.ts'\n\nexport interface ContactEntry {\n address: string\n label: string\n createdAt: string\n updatedAt: string\n}\n\nexport interface ContactsFile {\n entries: ContactEntry[]\n version: number\n}\n\nconst CONTACTS_VERSION = 1\n\nexport function readContacts(): ContactsFile {\n return readJsonFile<ContactsFile>(walletPaths().contacts) ?? {\n entries: [],\n version: CONTACTS_VERSION,\n }\n}\n\nexport function writeContacts(file: ContactsFile): void {\n writeJsonFile(walletPaths().contacts, file)\n}\n","import chalk from 'chalk'\n\nimport { readContacts, writeContacts } from './storage.ts'\n\nfunction normalize(address: string): string {\n return address.toLowerCase()\n}\n\nexport function listContacts(): void {\n const file = readContacts()\n if (file.entries.length === 0) {\n console.log(chalk.gray('No contacts. Run `aries wallet contact add <address> <label>` to add one.'))\n return\n }\n for (const entry of file.entries) {\n console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`)\n }\n}\n\nexport function addContact(address: string, label: string): void {\n const file = readContacts()\n const now = new Date().toISOString()\n const normalized = normalize(address)\n const existing = file.entries.find(e => normalize(e.address) === normalized)\n if (existing) {\n existing.label = label\n existing.updatedAt = now\n } else {\n file.entries.push({\n address: normalized, label, createdAt: now, updatedAt: now,\n })\n }\n writeContacts(file)\n console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`))\n}\n\nexport function renameContact(address: string, label: string): void {\n addContact(address, label)\n}\n\nexport function removeContact(address: string): void {\n const file = readContacts()\n const normalized = normalize(address)\n const before = file.entries.length\n file.entries = file.entries.filter(e => normalize(e.address) !== normalized)\n if (file.entries.length === before) throw new Error(`Contact not found: ${address}`)\n writeContacts(file)\n console.log(chalk.green(`Removed contact ${normalized}`))\n}\n","import type { CommandModule } from 'yargs'\n\nimport { listContacts } from '../actions/wallet/index.ts'\n\nexport const walletContactListCommand: CommandModule = {\n command: 'list',\n describe: 'List address-book contacts',\n handler: () => {\n listContacts()\n },\n}\n"],"mappings":";AAAA,OAAO,QAAQ;AACf,OAAO,UAAU;AAcV,SAAS,aAAqB;AACnC,QAAM,WAAW,QAAQ,IAAI;AAC7B,MAAI,SAAU,QAAO;AACrB,SAAO,KAAK,KAAK,GAAG,QAAQ,GAAG,UAAU,QAAQ;AACnD;AAEO,SAAS,YAAY,OAAe,WAAW,GAAgB;AACpE,SAAO;AAAA,IACL;AAAA,IACA,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,SAAS,KAAK,KAAK,MAAM,cAAc;AAAA,IACvC,QAAQ,KAAK,KAAK,MAAM,aAAa;AAAA,IACrC,cAAc,KAAK,KAAK,MAAM,oBAAoB;AAAA,IAClD,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,SAAS,KAAK,KAAK,MAAM,cAAc;AAAA,IACvC,WAAW,KAAK,KAAK,MAAM,aAAa;AAAA,EAC1C;AACF;;;ACjCA,OAAO,QAAQ;AACf,OAAOA,WAAU;AAgBV,SAAS,aAAgB,MAA6B;AAC3D,MAAI,CAAC,GAAG,WAAW,IAAI,EAAG,QAAO;AACjC,QAAM,MAAM,GAAG,aAAa,MAAM,MAAM;AACxC,MAAI,IAAI,KAAK,EAAE,WAAW,EAAG,QAAO;AACpC,SAAO,KAAK,MAAM,GAAG;AACvB;;;ACPA,IAAM,mBAAmB;AAElB,SAAS,eAA6B;AAC3C,SAAO,aAA2B,YAAY,EAAE,QAAQ,KAAK;AAAA,IAC3D,SAAS,CAAC;AAAA,IACV,SAAS;AAAA,EACX;AACF;;;ACtBA,OAAO,WAAW;AAQX,SAAS,eAAqB;AACnC,QAAM,OAAO,aAAa;AAC1B,MAAI,KAAK,QAAQ,WAAW,GAAG;AAC7B,YAAQ,IAAI,MAAM,KAAK,2EAA2E,CAAC;AACnG;AAAA,EACF;AACA,aAAW,SAAS,KAAK,SAAS;AAChC,YAAQ,IAAI,KAAK,MAAM,MAAM,MAAM,MAAM,OAAO,EAAE,CAAC,CAAC,IAAI,MAAM,OAAO,EAAE;AAAA,EACzE;AACF;;;ACbO,IAAM,2BAA0C;AAAA,EACrD,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,MAAM;AACb,iBAAa;AAAA,EACf;AACF;","names":["PATH"]}
@@ -0,0 +1,97 @@
1
+ // src/actions/wallet/paths.ts
2
+ import OS from "os";
3
+ import PATH from "path";
4
+ function walletRoot() {
5
+ const override = process.env.ARIES_WALLET_HOME;
6
+ if (override) return override;
7
+ return PATH.join(OS.homedir(), ".aries", "wallet");
8
+ }
9
+ function walletPaths(root = walletRoot()) {
10
+ return {
11
+ root,
12
+ password: PATH.join(root, "password.json"),
13
+ phrases: PATH.join(root, "phrases.json"),
14
+ active: PATH.join(root, "active.json"),
15
+ addressBooks: PATH.join(root, "address-books.json"),
16
+ contacts: PATH.join(root, "contacts.json"),
17
+ networks: PATH.join(root, "networks.json"),
18
+ session: PATH.join(root, "session.json"),
19
+ machineId: PATH.join(root, ".machine-id")
20
+ };
21
+ }
22
+
23
+ // src/actions/wallet/storage.ts
24
+ import FS from "fs";
25
+ import PATH2 from "path";
26
+ function ensureWalletDir(root = walletRoot()) {
27
+ if (!FS.existsSync(root)) {
28
+ FS.mkdirSync(root, { recursive: true, mode: 448 });
29
+ return;
30
+ }
31
+ try {
32
+ FS.chmodSync(root, 448);
33
+ } catch {
34
+ }
35
+ }
36
+ function readJsonFile(file) {
37
+ if (!FS.existsSync(file)) return void 0;
38
+ const raw = FS.readFileSync(file, "utf8");
39
+ if (raw.trim().length === 0) return void 0;
40
+ return JSON.parse(raw);
41
+ }
42
+ function writeJsonFile(file, value) {
43
+ ensureWalletDir(PATH2.dirname(file));
44
+ const tmp = `${file}.tmp`;
45
+ FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}
46
+ `, { mode: 384 });
47
+ FS.renameSync(tmp, file);
48
+ try {
49
+ FS.chmodSync(file, 384);
50
+ } catch {
51
+ }
52
+ }
53
+
54
+ // src/actions/wallet/contact/storage.ts
55
+ var CONTACTS_VERSION = 1;
56
+ function readContacts() {
57
+ return readJsonFile(walletPaths().contacts) ?? {
58
+ entries: [],
59
+ version: CONTACTS_VERSION
60
+ };
61
+ }
62
+ function writeContacts(file) {
63
+ writeJsonFile(walletPaths().contacts, file);
64
+ }
65
+
66
+ // src/actions/wallet/contact/contactActions.ts
67
+ import chalk from "chalk";
68
+ function normalize(address) {
69
+ return address.toLowerCase();
70
+ }
71
+ function removeContact(address) {
72
+ const file = readContacts();
73
+ const normalized = normalize(address);
74
+ const before = file.entries.length;
75
+ file.entries = file.entries.filter((e) => normalize(e.address) !== normalized);
76
+ if (file.entries.length === before) throw new Error(`Contact not found: ${address}`);
77
+ writeContacts(file);
78
+ console.log(chalk.green(`Removed contact ${normalized}`));
79
+ }
80
+
81
+ // src/commands/walletContactRemoveCommand.ts
82
+ var walletContactRemoveCommand = {
83
+ command: "remove <address>",
84
+ describe: "Remove a contact",
85
+ builder: (yargs) => yargs.positional("address", {
86
+ type: "string",
87
+ demandOption: true,
88
+ describe: "Address (0x...)"
89
+ }),
90
+ handler: (argv) => {
91
+ removeContact(argv.address);
92
+ }
93
+ };
94
+ export {
95
+ walletContactRemoveCommand
96
+ };
97
+ //# sourceMappingURL=walletContactRemoveCommand.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/wallet/paths.ts","../../src/actions/wallet/storage.ts","../../src/actions/wallet/contact/storage.ts","../../src/actions/wallet/contact/contactActions.ts","../../src/commands/walletContactRemoveCommand.ts"],"sourcesContent":["import OS from 'node:os'\nimport PATH from 'node:path'\n\nexport interface WalletPaths {\n root: string\n password: string\n phrases: string\n active: string\n addressBooks: string\n contacts: string\n networks: string\n session: string\n machineId: string\n}\n\nexport function walletRoot(): string {\n const override = process.env.ARIES_WALLET_HOME\n if (override) return override\n return PATH.join(OS.homedir(), '.aries', 'wallet')\n}\n\nexport function walletPaths(root: string = walletRoot()): WalletPaths {\n return {\n root,\n password: PATH.join(root, 'password.json'),\n phrases: PATH.join(root, 'phrases.json'),\n active: PATH.join(root, 'active.json'),\n addressBooks: PATH.join(root, 'address-books.json'),\n contacts: PATH.join(root, 'contacts.json'),\n networks: PATH.join(root, 'networks.json'),\n session: PATH.join(root, 'session.json'),\n machineId: PATH.join(root, '.machine-id'),\n }\n}\n","import FS from 'node:fs'\nimport PATH from 'node:path'\n\nimport { walletRoot } from './paths.ts'\n\nexport function ensureWalletDir(root: string = walletRoot()): void {\n if (!FS.existsSync(root)) {\n FS.mkdirSync(root, { recursive: true, mode: 0o700 })\n return\n }\n try {\n FS.chmodSync(root, 0o700)\n } catch {\n // best-effort on platforms without chmod\n }\n}\n\nexport function readJsonFile<T>(file: string): T | undefined {\n if (!FS.existsSync(file)) return undefined\n const raw = FS.readFileSync(file, 'utf8')\n if (raw.trim().length === 0) return undefined\n return JSON.parse(raw) as T\n}\n\nexport function writeJsonFile(file: string, value: unknown): void {\n ensureWalletDir(PATH.dirname(file))\n const tmp = `${file}.tmp`\n FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}\\n`, { mode: 0o600 })\n FS.renameSync(tmp, file)\n try {\n FS.chmodSync(file, 0o600)\n } catch {\n // best-effort\n }\n}\n\nexport function deleteFile(file: string): void {\n if (FS.existsSync(file)) FS.unlinkSync(file)\n}\n","import { walletPaths } from '../paths.ts'\nimport { readJsonFile, writeJsonFile } from '../storage.ts'\n\nexport interface ContactEntry {\n address: string\n label: string\n createdAt: string\n updatedAt: string\n}\n\nexport interface ContactsFile {\n entries: ContactEntry[]\n version: number\n}\n\nconst CONTACTS_VERSION = 1\n\nexport function readContacts(): ContactsFile {\n return readJsonFile<ContactsFile>(walletPaths().contacts) ?? {\n entries: [],\n version: CONTACTS_VERSION,\n }\n}\n\nexport function writeContacts(file: ContactsFile): void {\n writeJsonFile(walletPaths().contacts, file)\n}\n","import chalk from 'chalk'\n\nimport { readContacts, writeContacts } from './storage.ts'\n\nfunction normalize(address: string): string {\n return address.toLowerCase()\n}\n\nexport function listContacts(): void {\n const file = readContacts()\n if (file.entries.length === 0) {\n console.log(chalk.gray('No contacts. Run `aries wallet contact add <address> <label>` to add one.'))\n return\n }\n for (const entry of file.entries) {\n console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`)\n }\n}\n\nexport function addContact(address: string, label: string): void {\n const file = readContacts()\n const now = new Date().toISOString()\n const normalized = normalize(address)\n const existing = file.entries.find(e => normalize(e.address) === normalized)\n if (existing) {\n existing.label = label\n existing.updatedAt = now\n } else {\n file.entries.push({\n address: normalized, label, createdAt: now, updatedAt: now,\n })\n }\n writeContacts(file)\n console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`))\n}\n\nexport function renameContact(address: string, label: string): void {\n addContact(address, label)\n}\n\nexport function removeContact(address: string): void {\n const file = readContacts()\n const normalized = normalize(address)\n const before = file.entries.length\n file.entries = file.entries.filter(e => normalize(e.address) !== normalized)\n if (file.entries.length === before) throw new Error(`Contact not found: ${address}`)\n writeContacts(file)\n console.log(chalk.green(`Removed contact ${normalized}`))\n}\n","import type { CommandModule } from 'yargs'\n\nimport { removeContact } from '../actions/wallet/index.ts'\n\nexport const walletContactRemoveCommand: CommandModule = {\n command: 'remove <address>',\n describe: 'Remove a contact',\n builder: yargs =>\n yargs.positional('address', {\n type: 'string', demandOption: true, describe: 'Address (0x...)',\n }),\n handler: (argv) => {\n removeContact(argv.address as string)\n },\n}\n"],"mappings":";AAAA,OAAO,QAAQ;AACf,OAAO,UAAU;AAcV,SAAS,aAAqB;AACnC,QAAM,WAAW,QAAQ,IAAI;AAC7B,MAAI,SAAU,QAAO;AACrB,SAAO,KAAK,KAAK,GAAG,QAAQ,GAAG,UAAU,QAAQ;AACnD;AAEO,SAAS,YAAY,OAAe,WAAW,GAAgB;AACpE,SAAO;AAAA,IACL;AAAA,IACA,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,SAAS,KAAK,KAAK,MAAM,cAAc;AAAA,IACvC,QAAQ,KAAK,KAAK,MAAM,aAAa;AAAA,IACrC,cAAc,KAAK,KAAK,MAAM,oBAAoB;AAAA,IAClD,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,UAAU,KAAK,KAAK,MAAM,eAAe;AAAA,IACzC,SAAS,KAAK,KAAK,MAAM,cAAc;AAAA,IACvC,WAAW,KAAK,KAAK,MAAM,aAAa;AAAA,EAC1C;AACF;;;ACjCA,OAAO,QAAQ;AACf,OAAOA,WAAU;AAIV,SAAS,gBAAgB,OAAe,WAAW,GAAS;AACjE,MAAI,CAAC,GAAG,WAAW,IAAI,GAAG;AACxB,OAAG,UAAU,MAAM,EAAE,WAAW,MAAM,MAAM,IAAM,CAAC;AACnD;AAAA,EACF;AACA,MAAI;AACF,OAAG,UAAU,MAAM,GAAK;AAAA,EAC1B,QAAQ;AAAA,EAER;AACF;AAEO,SAAS,aAAgB,MAA6B;AAC3D,MAAI,CAAC,GAAG,WAAW,IAAI,EAAG,QAAO;AACjC,QAAM,MAAM,GAAG,aAAa,MAAM,MAAM;AACxC,MAAI,IAAI,KAAK,EAAE,WAAW,EAAG,QAAO;AACpC,SAAO,KAAK,MAAM,GAAG;AACvB;AAEO,SAAS,cAAc,MAAc,OAAsB;AAChE,kBAAgBC,MAAK,QAAQ,IAAI,CAAC;AAClC,QAAM,MAAM,GAAG,IAAI;AACnB,KAAG,cAAc,KAAK,GAAG,KAAK,UAAU,OAAO,MAAM,CAAC,CAAC;AAAA,GAAM,EAAE,MAAM,IAAM,CAAC;AAC5E,KAAG,WAAW,KAAK,IAAI;AACvB,MAAI;AACF,OAAG,UAAU,MAAM,GAAK;AAAA,EAC1B,QAAQ;AAAA,EAER;AACF;;;ACnBA,IAAM,mBAAmB;AAElB,SAAS,eAA6B;AAC3C,SAAO,aAA2B,YAAY,EAAE,QAAQ,KAAK;AAAA,IAC3D,SAAS,CAAC;AAAA,IACV,SAAS;AAAA,EACX;AACF;AAEO,SAAS,cAAc,MAA0B;AACtD,gBAAc,YAAY,EAAE,UAAU,IAAI;AAC5C;;;AC1BA,OAAO,WAAW;AAIlB,SAAS,UAAU,SAAyB;AAC1C,SAAO,QAAQ,YAAY;AAC7B;AAkCO,SAAS,cAAc,SAAuB;AACnD,QAAM,OAAO,aAAa;AAC1B,QAAM,aAAa,UAAU,OAAO;AACpC,QAAM,SAAS,KAAK,QAAQ;AAC5B,OAAK,UAAU,KAAK,QAAQ,OAAO,OAAK,UAAU,EAAE,OAAO,MAAM,UAAU;AAC3E,MAAI,KAAK,QAAQ,WAAW,OAAQ,OAAM,IAAI,MAAM,sBAAsB,OAAO,EAAE;AACnF,gBAAc,IAAI;AAClB,UAAQ,IAAI,MAAM,MAAM,mBAAmB,UAAU,EAAE,CAAC;AAC1D;;;AC5CO,IAAM,6BAA4C;AAAA,EACvD,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS,WACP,MAAM,WAAW,WAAW;AAAA,IAC1B,MAAM;AAAA,IAAU,cAAc;AAAA,IAAM,UAAU;AAAA,EAChD,CAAC;AAAA,EACH,SAAS,CAAC,SAAS;AACjB,kBAAc,KAAK,OAAiB;AAAA,EACtC;AACF;","names":["PATH","PATH"]}
@@ -0,0 +1,114 @@
1
+ // src/actions/wallet/paths.ts
2
+ import OS from "os";
3
+ import PATH from "path";
4
+ function walletRoot() {
5
+ const override = process.env.ARIES_WALLET_HOME;
6
+ if (override) return override;
7
+ return PATH.join(OS.homedir(), ".aries", "wallet");
8
+ }
9
+ function walletPaths(root = walletRoot()) {
10
+ return {
11
+ root,
12
+ password: PATH.join(root, "password.json"),
13
+ phrases: PATH.join(root, "phrases.json"),
14
+ active: PATH.join(root, "active.json"),
15
+ addressBooks: PATH.join(root, "address-books.json"),
16
+ contacts: PATH.join(root, "contacts.json"),
17
+ networks: PATH.join(root, "networks.json"),
18
+ session: PATH.join(root, "session.json"),
19
+ machineId: PATH.join(root, ".machine-id")
20
+ };
21
+ }
22
+
23
+ // src/actions/wallet/storage.ts
24
+ import FS from "fs";
25
+ import PATH2 from "path";
26
+ function ensureWalletDir(root = walletRoot()) {
27
+ if (!FS.existsSync(root)) {
28
+ FS.mkdirSync(root, { recursive: true, mode: 448 });
29
+ return;
30
+ }
31
+ try {
32
+ FS.chmodSync(root, 448);
33
+ } catch {
34
+ }
35
+ }
36
+ function readJsonFile(file) {
37
+ if (!FS.existsSync(file)) return void 0;
38
+ const raw = FS.readFileSync(file, "utf8");
39
+ if (raw.trim().length === 0) return void 0;
40
+ return JSON.parse(raw);
41
+ }
42
+ function writeJsonFile(file, value) {
43
+ ensureWalletDir(PATH2.dirname(file));
44
+ const tmp = `${file}.tmp`;
45
+ FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}
46
+ `, { mode: 384 });
47
+ FS.renameSync(tmp, file);
48
+ try {
49
+ FS.chmodSync(file, 384);
50
+ } catch {
51
+ }
52
+ }
53
+
54
+ // src/actions/wallet/contact/storage.ts
55
+ var CONTACTS_VERSION = 1;
56
+ function readContacts() {
57
+ return readJsonFile(walletPaths().contacts) ?? {
58
+ entries: [],
59
+ version: CONTACTS_VERSION
60
+ };
61
+ }
62
+ function writeContacts(file) {
63
+ writeJsonFile(walletPaths().contacts, file);
64
+ }
65
+
66
+ // src/actions/wallet/contact/contactActions.ts
67
+ import chalk from "chalk";
68
+ function normalize(address) {
69
+ return address.toLowerCase();
70
+ }
71
+ function addContact(address, label) {
72
+ const file = readContacts();
73
+ const now = (/* @__PURE__ */ new Date()).toISOString();
74
+ const normalized = normalize(address);
75
+ const existing = file.entries.find((e) => normalize(e.address) === normalized);
76
+ if (existing) {
77
+ existing.label = label;
78
+ existing.updatedAt = now;
79
+ } else {
80
+ file.entries.push({
81
+ address: normalized,
82
+ label,
83
+ createdAt: now,
84
+ updatedAt: now
85
+ });
86
+ }
87
+ writeContacts(file);
88
+ console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`));
89
+ }
90
+ function renameContact(address, label) {
91
+ addContact(address, label);
92
+ }
93
+
94
+ // src/commands/walletContactRenameCommand.ts
95
+ var walletContactRenameCommand = {
96
+ command: "rename <address> <label>",
97
+ describe: "Rename an existing contact",
98
+ builder: (yargs) => yargs.positional("address", {
99
+ type: "string",
100
+ demandOption: true,
101
+ describe: "Address (0x...)"
102
+ }).positional("label", {
103
+ type: "string",
104
+ demandOption: true,
105
+ describe: "New label"
106
+ }),
107
+ handler: (argv) => {
108
+ renameContact(argv.address, argv.label);
109
+ }
110
+ };
111
+ export {
112
+ walletContactRenameCommand
113
+ };
114
+ //# sourceMappingURL=walletContactRenameCommand.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/actions/wallet/paths.ts","../../src/actions/wallet/storage.ts","../../src/actions/wallet/contact/storage.ts","../../src/actions/wallet/contact/contactActions.ts","../../src/commands/walletContactRenameCommand.ts"],"sourcesContent":["import OS from 'node:os'\nimport PATH from 'node:path'\n\nexport interface WalletPaths {\n root: string\n password: string\n phrases: string\n active: string\n addressBooks: string\n contacts: string\n networks: string\n session: string\n machineId: string\n}\n\nexport function walletRoot(): string {\n const override = process.env.ARIES_WALLET_HOME\n if (override) return override\n return PATH.join(OS.homedir(), '.aries', 'wallet')\n}\n\nexport function walletPaths(root: string = walletRoot()): WalletPaths {\n return {\n root,\n password: PATH.join(root, 'password.json'),\n phrases: PATH.join(root, 'phrases.json'),\n active: PATH.join(root, 'active.json'),\n addressBooks: PATH.join(root, 'address-books.json'),\n contacts: PATH.join(root, 'contacts.json'),\n networks: PATH.join(root, 'networks.json'),\n session: PATH.join(root, 'session.json'),\n machineId: PATH.join(root, '.machine-id'),\n }\n}\n","import FS from 'node:fs'\nimport PATH from 'node:path'\n\nimport { walletRoot } from './paths.ts'\n\nexport function ensureWalletDir(root: string = walletRoot()): void {\n if (!FS.existsSync(root)) {\n FS.mkdirSync(root, { recursive: true, mode: 0o700 })\n return\n }\n try {\n FS.chmodSync(root, 0o700)\n } catch {\n // best-effort on platforms without chmod\n }\n}\n\nexport function readJsonFile<T>(file: string): T | undefined {\n if (!FS.existsSync(file)) return undefined\n const raw = FS.readFileSync(file, 'utf8')\n if (raw.trim().length === 0) return undefined\n return JSON.parse(raw) as T\n}\n\nexport function writeJsonFile(file: string, value: unknown): void {\n ensureWalletDir(PATH.dirname(file))\n const tmp = `${file}.tmp`\n FS.writeFileSync(tmp, `${JSON.stringify(value, null, 2)}\\n`, { mode: 0o600 })\n FS.renameSync(tmp, file)\n try {\n FS.chmodSync(file, 0o600)\n } catch {\n // best-effort\n }\n}\n\nexport function deleteFile(file: string): void {\n if (FS.existsSync(file)) FS.unlinkSync(file)\n}\n","import { walletPaths } from '../paths.ts'\nimport { readJsonFile, writeJsonFile } from '../storage.ts'\n\nexport interface ContactEntry {\n address: string\n label: string\n createdAt: string\n updatedAt: string\n}\n\nexport interface ContactsFile {\n entries: ContactEntry[]\n version: number\n}\n\nconst CONTACTS_VERSION = 1\n\nexport function readContacts(): ContactsFile {\n return readJsonFile<ContactsFile>(walletPaths().contacts) ?? {\n entries: [],\n version: CONTACTS_VERSION,\n }\n}\n\nexport function writeContacts(file: ContactsFile): void {\n writeJsonFile(walletPaths().contacts, file)\n}\n","import chalk from 'chalk'\n\nimport { readContacts, writeContacts } from './storage.ts'\n\nfunction normalize(address: string): string {\n return address.toLowerCase()\n}\n\nexport function listContacts(): void {\n const file = readContacts()\n if (file.entries.length === 0) {\n console.log(chalk.gray('No contacts. Run `aries wallet contact add <address> <label>` to add one.'))\n return\n }\n for (const entry of file.entries) {\n console.log(` ${chalk.white(entry.label.padEnd(20))} ${entry.address}`)\n }\n}\n\nexport function addContact(address: string, label: string): void {\n const file = readContacts()\n const now = new Date().toISOString()\n const normalized = normalize(address)\n const existing = file.entries.find(e => normalize(e.address) === normalized)\n if (existing) {\n existing.label = label\n existing.updatedAt = now\n } else {\n file.entries.push({\n address: normalized, label, createdAt: now, updatedAt: now,\n })\n }\n writeContacts(file)\n console.log(chalk.green(`Saved contact ${chalk.cyan(label)} (${normalized})`))\n}\n\nexport function renameContact(address: string, label: string): void {\n addContact(address, label)\n}\n\nexport function removeContact(address: string): void {\n const file = readContacts()\n const normalized = normalize(address)\n const before = file.entries.length\n file.entries = file.entries.filter(e => normalize(e.address) !== normalized)\n if (file.entries.length === before) throw new Error(`Contact not found: ${address}`)\n writeContacts(file)\n console.log(chalk.green(`Removed contact ${normalized}`))\n}\n","import type { CommandModule } from 'yargs'\n\nimport { renameContact } from '../actions/wallet/index.ts'\n\nexport const walletContactRenameCommand: CommandModule = {\n command: 'rename <address> <label>',\n describe: 'Rename an existing contact',\n builder: yargs =>\n yargs\n .positional('address', {\n type: 'string', demandOption: true, describe: 'Address (0x...)',\n })\n .positional('label', {\n type: 'string', demandOption: true, describe: 'New label',\n }),\n handler: (argv) => {\n renameContact(argv.address as string, argv.label as string)\n },\n}\n"],"mappings":"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","names":["PATH","PATH"]}