@florent-uzio/custody 2.1.0

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 (383) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +280 -0
  3. package/dist/constants/defaults.d.ts +3 -0
  4. package/dist/constants/defaults.d.ts.map +1 -0
  5. package/dist/constants/defaults.js +3 -0
  6. package/dist/constants/defaults.js.map +1 -0
  7. package/dist/constants/index.d.ts +3 -0
  8. package/dist/constants/index.d.ts.map +1 -0
  9. package/dist/constants/index.js +3 -0
  10. package/dist/constants/index.js.map +1 -0
  11. package/dist/constants/urls.d.ts +86 -0
  12. package/dist/constants/urls.d.ts.map +1 -0
  13. package/dist/constants/urls.js +109 -0
  14. package/dist/constants/urls.js.map +1 -0
  15. package/dist/helpers/async/async.d.ts +6 -0
  16. package/dist/helpers/async/async.d.ts.map +1 -0
  17. package/dist/helpers/async/async.js +6 -0
  18. package/dist/helpers/async/async.js.map +1 -0
  19. package/dist/helpers/async/index.d.ts +2 -0
  20. package/dist/helpers/async/index.d.ts.map +1 -0
  21. package/dist/helpers/async/index.js +2 -0
  22. package/dist/helpers/async/index.js.map +1 -0
  23. package/dist/helpers/index.d.ts +4 -0
  24. package/dist/helpers/index.d.ts.map +1 -0
  25. package/dist/helpers/index.js +4 -0
  26. package/dist/helpers/index.js.map +1 -0
  27. package/dist/helpers/typeof-fns/index.d.ts +2 -0
  28. package/dist/helpers/typeof-fns/index.d.ts.map +1 -0
  29. package/dist/helpers/typeof-fns/index.js +2 -0
  30. package/dist/helpers/typeof-fns/index.js.map +1 -0
  31. package/dist/helpers/typeof-fns/typeof-fns.d.ts +18 -0
  32. package/dist/helpers/typeof-fns/typeof-fns.d.ts.map +1 -0
  33. package/dist/helpers/typeof-fns/typeof-fns.js +48 -0
  34. package/dist/helpers/typeof-fns/typeof-fns.js.map +1 -0
  35. package/dist/helpers/url/index.d.ts +2 -0
  36. package/dist/helpers/url/index.d.ts.map +1 -0
  37. package/dist/helpers/url/index.js +2 -0
  38. package/dist/helpers/url/index.js.map +1 -0
  39. package/dist/helpers/url/url.d.ts +39 -0
  40. package/dist/helpers/url/url.d.ts.map +1 -0
  41. package/dist/helpers/url/url.js +54 -0
  42. package/dist/helpers/url/url.js.map +1 -0
  43. package/dist/index.d.ts +27 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +9 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/main.d.ts +2 -0
  48. package/dist/main.d.ts.map +1 -0
  49. package/dist/main.helpers.d.ts +2 -0
  50. package/dist/main.helpers.d.ts.map +1 -0
  51. package/dist/main.helpers.js +99 -0
  52. package/dist/main.helpers.js.map +1 -0
  53. package/dist/main.js +41 -0
  54. package/dist/main.js.map +1 -0
  55. package/dist/models/custody-error.d.ts +22 -0
  56. package/dist/models/custody-error.d.ts.map +1 -0
  57. package/dist/models/custody-error.js +47 -0
  58. package/dist/models/custody-error.js.map +1 -0
  59. package/dist/models/custody-types.d.ts +14664 -0
  60. package/dist/models/custody-types.d.ts.map +1 -0
  61. package/dist/models/custody-types.js +6 -0
  62. package/dist/models/custody-types.js.map +1 -0
  63. package/dist/models/index.d.ts +4 -0
  64. package/dist/models/index.d.ts.map +1 -0
  65. package/dist/models/index.js +3 -0
  66. package/dist/models/index.js.map +1 -0
  67. package/dist/models/ledger-ids.d.ts +19 -0
  68. package/dist/models/ledger-ids.d.ts.map +1 -0
  69. package/dist/models/ledger-ids.js +2 -0
  70. package/dist/models/ledger-ids.js.map +1 -0
  71. package/dist/namespaces/accounts.d.ts +32 -0
  72. package/dist/namespaces/accounts.d.ts.map +1 -0
  73. package/dist/namespaces/accounts.js +66 -0
  74. package/dist/namespaces/accounts.js.map +1 -0
  75. package/dist/namespaces/channels.d.ts +14 -0
  76. package/dist/namespaces/channels.d.ts.map +1 -0
  77. package/dist/namespaces/channels.js +15 -0
  78. package/dist/namespaces/channels.js.map +1 -0
  79. package/dist/namespaces/domains.d.ts +7 -0
  80. package/dist/namespaces/domains.d.ts.map +1 -0
  81. package/dist/namespaces/domains.js +8 -0
  82. package/dist/namespaces/domains.js.map +1 -0
  83. package/dist/namespaces/endpoints.d.ts +7 -0
  84. package/dist/namespaces/endpoints.d.ts.map +1 -0
  85. package/dist/namespaces/endpoints.js +8 -0
  86. package/dist/namespaces/endpoints.js.map +1 -0
  87. package/dist/namespaces/events.d.ts +6 -0
  88. package/dist/namespaces/events.d.ts.map +1 -0
  89. package/dist/namespaces/events.js +7 -0
  90. package/dist/namespaces/events.js.map +1 -0
  91. package/dist/namespaces/genesis.d.ts +6 -0
  92. package/dist/namespaces/genesis.d.ts.map +1 -0
  93. package/dist/namespaces/genesis.js +7 -0
  94. package/dist/namespaces/genesis.js.map +1 -0
  95. package/dist/namespaces/index.d.ts +16 -0
  96. package/dist/namespaces/index.d.ts.map +1 -0
  97. package/dist/namespaces/index.js +16 -0
  98. package/dist/namespaces/index.js.map +1 -0
  99. package/dist/namespaces/intents.d.ts +13 -0
  100. package/dist/namespaces/intents.d.ts.map +1 -0
  101. package/dist/namespaces/intents.js +70 -0
  102. package/dist/namespaces/intents.js.map +1 -0
  103. package/dist/namespaces/ledgers.d.ts +11 -0
  104. package/dist/namespaces/ledgers.d.ts.map +1 -0
  105. package/dist/namespaces/ledgers.js +12 -0
  106. package/dist/namespaces/ledgers.js.map +1 -0
  107. package/dist/namespaces/policies.d.ts +7 -0
  108. package/dist/namespaces/policies.d.ts.map +1 -0
  109. package/dist/namespaces/policies.js +8 -0
  110. package/dist/namespaces/policies.js.map +1 -0
  111. package/dist/namespaces/requests.d.ts +8 -0
  112. package/dist/namespaces/requests.d.ts.map +1 -0
  113. package/dist/namespaces/requests.js +9 -0
  114. package/dist/namespaces/requests.js.map +1 -0
  115. package/dist/namespaces/tickers.d.ts +7 -0
  116. package/dist/namespaces/tickers.d.ts.map +1 -0
  117. package/dist/namespaces/tickers.js +8 -0
  118. package/dist/namespaces/tickers.js.map +1 -0
  119. package/dist/namespaces/transactions.d.ts +12 -0
  120. package/dist/namespaces/transactions.d.ts.map +1 -0
  121. package/dist/namespaces/transactions.js +13 -0
  122. package/dist/namespaces/transactions.js.map +1 -0
  123. package/dist/namespaces/user-invitations.d.ts +13 -0
  124. package/dist/namespaces/user-invitations.d.ts.map +1 -0
  125. package/dist/namespaces/user-invitations.js +14 -0
  126. package/dist/namespaces/user-invitations.js.map +1 -0
  127. package/dist/namespaces/users.d.ts +9 -0
  128. package/dist/namespaces/users.d.ts.map +1 -0
  129. package/dist/namespaces/users.js +10 -0
  130. package/dist/namespaces/users.js.map +1 -0
  131. package/dist/namespaces/vaults.d.ts +9 -0
  132. package/dist/namespaces/vaults.d.ts.map +1 -0
  133. package/dist/namespaces/vaults.js +12 -0
  134. package/dist/namespaces/vaults.js.map +1 -0
  135. package/dist/ripple-custody.d.ts +95 -0
  136. package/dist/ripple-custody.d.ts.map +1 -0
  137. package/dist/ripple-custody.js +138 -0
  138. package/dist/ripple-custody.js.map +1 -0
  139. package/dist/ripple-custody.types.d.ts +29 -0
  140. package/dist/ripple-custody.types.d.ts.map +1 -0
  141. package/dist/ripple-custody.types.js +2 -0
  142. package/dist/ripple-custody.types.js.map +1 -0
  143. package/dist/services/accounts/accounts.types.d.ts +48 -0
  144. package/dist/services/accounts/accounts.types.d.ts.map +1 -0
  145. package/dist/services/accounts/accounts.types.js +2 -0
  146. package/dist/services/accounts/accounts.types.js.map +1 -0
  147. package/dist/services/accounts/index.d.ts +2 -0
  148. package/dist/services/accounts/index.d.ts.map +1 -0
  149. package/dist/services/accounts/index.js +2 -0
  150. package/dist/services/accounts/index.js.map +1 -0
  151. package/dist/services/apis/api.service.d.ts +64 -0
  152. package/dist/services/apis/api.service.d.ts.map +1 -0
  153. package/dist/services/apis/api.service.js +235 -0
  154. package/dist/services/apis/api.service.js.map +1 -0
  155. package/dist/services/apis/api.service.types.d.ts +16 -0
  156. package/dist/services/apis/api.service.types.d.ts.map +1 -0
  157. package/dist/services/apis/api.service.types.js +3 -0
  158. package/dist/services/apis/api.service.types.js.map +1 -0
  159. package/dist/services/apis/index.d.ts +3 -0
  160. package/dist/services/apis/index.d.ts.map +1 -0
  161. package/dist/services/apis/index.js +3 -0
  162. package/dist/services/apis/index.js.map +1 -0
  163. package/dist/services/auth/auth.service.d.ts +56 -0
  164. package/dist/services/auth/auth.service.d.ts.map +1 -0
  165. package/dist/services/auth/auth.service.js +120 -0
  166. package/dist/services/auth/auth.service.js.map +1 -0
  167. package/dist/services/auth/auth.service.types.d.ts +9 -0
  168. package/dist/services/auth/auth.service.types.d.ts.map +1 -0
  169. package/dist/services/auth/auth.service.types.js +2 -0
  170. package/dist/services/auth/auth.service.types.js.map +1 -0
  171. package/dist/services/auth/index.d.ts +3 -0
  172. package/dist/services/auth/index.d.ts.map +1 -0
  173. package/dist/services/auth/index.js +3 -0
  174. package/dist/services/auth/index.js.map +1 -0
  175. package/dist/services/channels/channels.types.d.ts +37 -0
  176. package/dist/services/channels/channels.types.d.ts.map +1 -0
  177. package/dist/services/channels/channels.types.js +2 -0
  178. package/dist/services/channels/channels.types.js.map +1 -0
  179. package/dist/services/channels/index.d.ts +3 -0
  180. package/dist/services/channels/index.d.ts.map +1 -0
  181. package/dist/services/channels/index.js +3 -0
  182. package/dist/services/channels/index.js.map +1 -0
  183. package/dist/services/channels/parse-event-payload.d.ts +12 -0
  184. package/dist/services/channels/parse-event-payload.d.ts.map +1 -0
  185. package/dist/services/channels/parse-event-payload.js +37 -0
  186. package/dist/services/channels/parse-event-payload.js.map +1 -0
  187. package/dist/services/domain-resolver/domain-resolver.types.d.ts +18 -0
  188. package/dist/services/domain-resolver/domain-resolver.types.d.ts.map +1 -0
  189. package/dist/services/domain-resolver/domain-resolver.types.js +2 -0
  190. package/dist/services/domain-resolver/domain-resolver.types.js.map +1 -0
  191. package/dist/services/domain-resolver/index.d.ts +2 -0
  192. package/dist/services/domain-resolver/index.d.ts.map +1 -0
  193. package/dist/services/domain-resolver/index.js +2 -0
  194. package/dist/services/domain-resolver/index.js.map +1 -0
  195. package/dist/services/domains/domain.types.d.ts +6 -0
  196. package/dist/services/domains/domain.types.d.ts.map +1 -0
  197. package/dist/services/domains/domain.types.js +2 -0
  198. package/dist/services/domains/domain.types.js.map +1 -0
  199. package/dist/services/domains/index.d.ts +2 -0
  200. package/dist/services/domains/index.d.ts.map +1 -0
  201. package/dist/services/domains/index.js +2 -0
  202. package/dist/services/domains/index.js.map +1 -0
  203. package/dist/services/endpoints/endpoints.types.d.ts +7 -0
  204. package/dist/services/endpoints/endpoints.types.d.ts.map +1 -0
  205. package/dist/services/endpoints/endpoints.types.js +2 -0
  206. package/dist/services/endpoints/endpoints.types.js.map +1 -0
  207. package/dist/services/endpoints/index.d.ts +2 -0
  208. package/dist/services/endpoints/index.d.ts.map +1 -0
  209. package/dist/services/endpoints/index.js +2 -0
  210. package/dist/services/endpoints/index.js.map +1 -0
  211. package/dist/services/events/events.types.d.ts +8 -0
  212. package/dist/services/events/events.types.d.ts.map +1 -0
  213. package/dist/services/events/events.types.js +2 -0
  214. package/dist/services/events/events.types.js.map +1 -0
  215. package/dist/services/events/index.d.ts +2 -0
  216. package/dist/services/events/index.d.ts.map +1 -0
  217. package/dist/services/events/index.js +2 -0
  218. package/dist/services/events/index.js.map +1 -0
  219. package/dist/services/genesis/genesis.types.d.ts +7 -0
  220. package/dist/services/genesis/genesis.types.d.ts.map +1 -0
  221. package/dist/services/genesis/genesis.types.js +2 -0
  222. package/dist/services/genesis/genesis.types.js.map +1 -0
  223. package/dist/services/genesis/index.d.ts +2 -0
  224. package/dist/services/genesis/index.d.ts.map +1 -0
  225. package/dist/services/genesis/index.js +2 -0
  226. package/dist/services/genesis/index.js.map +1 -0
  227. package/dist/services/index.d.ts +19 -0
  228. package/dist/services/index.d.ts.map +1 -0
  229. package/dist/services/index.js +19 -0
  230. package/dist/services/index.js.map +1 -0
  231. package/dist/services/intents/index.d.ts +2 -0
  232. package/dist/services/intents/index.d.ts.map +1 -0
  233. package/dist/services/intents/index.js +2 -0
  234. package/dist/services/intents/index.js.map +1 -0
  235. package/dist/services/intents/intents.types.d.ts +66 -0
  236. package/dist/services/intents/intents.types.d.ts.map +1 -0
  237. package/dist/services/intents/intents.types.js +5 -0
  238. package/dist/services/intents/intents.types.js.map +1 -0
  239. package/dist/services/keypairs/ed25519.service.d.ts +25 -0
  240. package/dist/services/keypairs/ed25519.service.d.ts.map +1 -0
  241. package/dist/services/keypairs/ed25519.service.js +84 -0
  242. package/dist/services/keypairs/ed25519.service.js.map +1 -0
  243. package/dist/services/keypairs/index.d.ts +3 -0
  244. package/dist/services/keypairs/index.d.ts.map +1 -0
  245. package/dist/services/keypairs/index.js +3 -0
  246. package/dist/services/keypairs/index.js.map +1 -0
  247. package/dist/services/keypairs/keypair.service.d.ts +27 -0
  248. package/dist/services/keypairs/keypair.service.d.ts.map +1 -0
  249. package/dist/services/keypairs/keypair.service.js +69 -0
  250. package/dist/services/keypairs/keypair.service.js.map +1 -0
  251. package/dist/services/keypairs/keypairs.types.d.ts +10 -0
  252. package/dist/services/keypairs/keypairs.types.d.ts.map +1 -0
  253. package/dist/services/keypairs/keypairs.types.js +2 -0
  254. package/dist/services/keypairs/keypairs.types.js.map +1 -0
  255. package/dist/services/keypairs/secp256k1.service.d.ts +24 -0
  256. package/dist/services/keypairs/secp256k1.service.d.ts.map +1 -0
  257. package/dist/services/keypairs/secp256k1.service.js +101 -0
  258. package/dist/services/keypairs/secp256k1.service.js.map +1 -0
  259. package/dist/services/keypairs/secp256r1.service.d.ts +24 -0
  260. package/dist/services/keypairs/secp256r1.service.d.ts.map +1 -0
  261. package/dist/services/keypairs/secp256r1.service.js +101 -0
  262. package/dist/services/keypairs/secp256r1.service.js.map +1 -0
  263. package/dist/services/ledgers/index.d.ts +2 -0
  264. package/dist/services/ledgers/index.d.ts.map +1 -0
  265. package/dist/services/ledgers/index.js +2 -0
  266. package/dist/services/ledgers/index.js.map +1 -0
  267. package/dist/services/ledgers/ledgers.types.d.ts +13 -0
  268. package/dist/services/ledgers/ledgers.types.d.ts.map +1 -0
  269. package/dist/services/ledgers/ledgers.types.js +2 -0
  270. package/dist/services/ledgers/ledgers.types.js.map +1 -0
  271. package/dist/services/policies/index.d.ts +2 -0
  272. package/dist/services/policies/index.d.ts.map +1 -0
  273. package/dist/services/policies/index.js +2 -0
  274. package/dist/services/policies/index.js.map +1 -0
  275. package/dist/services/policies/policies.types.d.ts +13 -0
  276. package/dist/services/policies/policies.types.d.ts.map +1 -0
  277. package/dist/services/policies/policies.types.js +2 -0
  278. package/dist/services/policies/policies.types.js.map +1 -0
  279. package/dist/services/requests/index.d.ts +2 -0
  280. package/dist/services/requests/index.d.ts.map +1 -0
  281. package/dist/services/requests/index.js +2 -0
  282. package/dist/services/requests/index.js.map +1 -0
  283. package/dist/services/requests/requests.types.d.ts +8 -0
  284. package/dist/services/requests/requests.types.d.ts.map +1 -0
  285. package/dist/services/requests/requests.types.js +2 -0
  286. package/dist/services/requests/requests.types.js.map +1 -0
  287. package/dist/services/tickers/index.d.ts +2 -0
  288. package/dist/services/tickers/index.d.ts.map +1 -0
  289. package/dist/services/tickers/index.js +2 -0
  290. package/dist/services/tickers/index.js.map +1 -0
  291. package/dist/services/tickers/tickers.types.d.ts +6 -0
  292. package/dist/services/tickers/tickers.types.d.ts.map +1 -0
  293. package/dist/services/tickers/tickers.types.js +2 -0
  294. package/dist/services/tickers/tickers.types.js.map +1 -0
  295. package/dist/services/transactions/index.d.ts +2 -0
  296. package/dist/services/transactions/index.d.ts.map +1 -0
  297. package/dist/services/transactions/index.js +2 -0
  298. package/dist/services/transactions/index.js.map +1 -0
  299. package/dist/services/transactions/transactions.types.d.ts +21 -0
  300. package/dist/services/transactions/transactions.types.d.ts.map +1 -0
  301. package/dist/services/transactions/transactions.types.js +2 -0
  302. package/dist/services/transactions/transactions.types.js.map +1 -0
  303. package/dist/services/user-invitations/index.d.ts +2 -0
  304. package/dist/services/user-invitations/index.d.ts.map +1 -0
  305. package/dist/services/user-invitations/index.js +2 -0
  306. package/dist/services/user-invitations/index.js.map +1 -0
  307. package/dist/services/user-invitations/user-invitations.types.d.ts +15 -0
  308. package/dist/services/user-invitations/user-invitations.types.d.ts.map +1 -0
  309. package/dist/services/user-invitations/user-invitations.types.js +2 -0
  310. package/dist/services/user-invitations/user-invitations.types.js.map +1 -0
  311. package/dist/services/users/index.d.ts +2 -0
  312. package/dist/services/users/index.d.ts.map +1 -0
  313. package/dist/services/users/index.js +2 -0
  314. package/dist/services/users/index.js.map +1 -0
  315. package/dist/services/users/users.types.d.ts +10 -0
  316. package/dist/services/users/users.types.d.ts.map +1 -0
  317. package/dist/services/users/users.types.js +2 -0
  318. package/dist/services/users/users.types.js.map +1 -0
  319. package/dist/services/vaults/index.d.ts +2 -0
  320. package/dist/services/vaults/index.d.ts.map +1 -0
  321. package/dist/services/vaults/index.js +2 -0
  322. package/dist/services/vaults/index.js.map +1 -0
  323. package/dist/services/vaults/vaults.types.d.ts +14 -0
  324. package/dist/services/vaults/vaults.types.d.ts.map +1 -0
  325. package/dist/services/vaults/vaults.types.js +2 -0
  326. package/dist/services/vaults/vaults.types.js.map +1 -0
  327. package/dist/services/xrpl/index.d.ts +5 -0
  328. package/dist/services/xrpl/index.d.ts.map +1 -0
  329. package/dist/services/xrpl/index.js +8 -0
  330. package/dist/services/xrpl/index.js.map +1 -0
  331. package/dist/services/xrpl/xrpl.adapters.d.ts +13 -0
  332. package/dist/services/xrpl/xrpl.adapters.d.ts.map +1 -0
  333. package/dist/services/xrpl/xrpl.adapters.js +288 -0
  334. package/dist/services/xrpl/xrpl.adapters.js.map +1 -0
  335. package/dist/services/xrpl/xrpl.http-adapters.d.ts +14 -0
  336. package/dist/services/xrpl/xrpl.http-adapters.d.ts.map +1 -0
  337. package/dist/services/xrpl/xrpl.http-adapters.js +83 -0
  338. package/dist/services/xrpl/xrpl.http-adapters.js.map +1 -0
  339. package/dist/services/xrpl/xrpl.ports.d.ts +36 -0
  340. package/dist/services/xrpl/xrpl.ports.d.ts.map +1 -0
  341. package/dist/services/xrpl/xrpl.ports.js +2 -0
  342. package/dist/services/xrpl/xrpl.ports.js.map +1 -0
  343. package/dist/services/xrpl/xrpl.service.d.ts +124 -0
  344. package/dist/services/xrpl/xrpl.service.d.ts.map +1 -0
  345. package/dist/services/xrpl/xrpl.service.js +370 -0
  346. package/dist/services/xrpl/xrpl.service.js.map +1 -0
  347. package/dist/services/xrpl/xrpl.types.d.ts +131 -0
  348. package/dist/services/xrpl/xrpl.types.d.ts.map +1 -0
  349. package/dist/services/xrpl/xrpl.types.js +30 -0
  350. package/dist/services/xrpl/xrpl.types.js.map +1 -0
  351. package/dist/transport/index.d.ts +4 -0
  352. package/dist/transport/index.d.ts.map +1 -0
  353. package/dist/transport/index.js +3 -0
  354. package/dist/transport/index.js.map +1 -0
  355. package/dist/transport/split-params.d.ts +14 -0
  356. package/dist/transport/split-params.d.ts.map +1 -0
  357. package/dist/transport/split-params.js +28 -0
  358. package/dist/transport/split-params.js.map +1 -0
  359. package/dist/transport/transport.types.d.ts +11 -0
  360. package/dist/transport/transport.types.d.ts.map +1 -0
  361. package/dist/transport/transport.types.js +2 -0
  362. package/dist/transport/transport.types.js.map +1 -0
  363. package/dist/transport/typed-transport.d.ts +38 -0
  364. package/dist/transport/typed-transport.d.ts.map +1 -0
  365. package/dist/transport/typed-transport.js +78 -0
  366. package/dist/transport/typed-transport.js.map +1 -0
  367. package/dist/type-utils/index.d.ts +4 -0
  368. package/dist/type-utils/index.d.ts.map +1 -0
  369. package/dist/type-utils/index.js +4 -0
  370. package/dist/type-utils/index.js.map +1 -0
  371. package/dist/type-utils/optional-except-for.d.ts +2 -0
  372. package/dist/type-utils/optional-except-for.d.ts.map +1 -0
  373. package/dist/type-utils/optional-except-for.js +2 -0
  374. package/dist/type-utils/optional-except-for.js.map +1 -0
  375. package/dist/type-utils/prettify.d.ts +4 -0
  376. package/dist/type-utils/prettify.d.ts.map +1 -0
  377. package/dist/type-utils/prettify.js +2 -0
  378. package/dist/type-utils/prettify.js.map +1 -0
  379. package/dist/type-utils/required-except-for.d.ts +2 -0
  380. package/dist/type-utils/required-except-for.d.ts.map +1 -0
  381. package/dist/type-utils/required-except-for.js +2 -0
  382. package/dist/type-utils/required-except-for.js.map +1 -0
  383. package/package.json +72 -0
@@ -0,0 +1,15 @@
1
+ import type { components, paths } from "../../models/custody-types.js";
2
+ export type GetUserInvitationsPathParams = paths["/v1/domains/{domainId}/users/invitations"]["post"]["parameters"]["path"];
3
+ export type GetUserInvitationsQueryParams = paths["/v1/domains/{domainId}/users/invitations"]["get"]["parameters"]["query"];
4
+ export type CreateUserInvitationPathParams = paths["/v1/domains/{domainId}/users/invitations"]["post"]["parameters"]["path"];
5
+ export type CoreExtensions_InvitationIn = components["schemas"]["CoreExtensions_InvitationIn"];
6
+ export type GetUserInvitationPathParams = paths["/v1/domains/{domainId}/users/invitations/{id}"]["get"]["parameters"]["path"];
7
+ export type CancelUserInvitationPathParams = paths["/v1/domains/{domainId}/users/invitations/{id}/cancel"]["post"]["parameters"]["path"];
8
+ export type RenewUserInvitationPathParams = paths["/v1/domains/{domainId}/users/invitations/{id}/renew"]["post"]["parameters"]["path"];
9
+ export type CompleteUserInvitationPathParams = paths["/v1/domains/{domainId}/users/invitations/{id}/complete"]["post"]["parameters"]["path"];
10
+ export type FillUserInvitationPathParams = paths["/v1/users/invitations/{idOrCode}"]["post"]["parameters"]["path"];
11
+ export type CoreExtensions_InvitationAnswerIn = components["schemas"]["CoreExtensions_InvitationAnswerIn"];
12
+ export type GetPublicUserInvitationPathParams = paths["/v1/users/invitations/{idOrCode}"]["get"]["parameters"]["path"];
13
+ export type CoreExtensions_InvitationOut = components["schemas"]["CoreExtensions_InvitationOut"];
14
+ export type CoreExtensions_PublicInvitationOut = components["schemas"]["CoreExtensions_PublicInvitationOut"];
15
+ //# sourceMappingURL=user-invitations.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-invitations.types.d.ts","sourceRoot":"","sources":["../../../src/services/user-invitations/user-invitations.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAA;AAItE,MAAM,MAAM,4BAA4B,GACtC,KAAK,CAAC,0CAA0C,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AACjF,MAAM,MAAM,6BAA6B,GACvC,KAAK,CAAC,0CAA0C,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjF,MAAM,MAAM,8BAA8B,GACxC,KAAK,CAAC,0CAA0C,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjF,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,6BAA6B,CAAC,CAAA;AAE9F,MAAM,MAAM,2BAA2B,GACrC,KAAK,CAAC,+CAA+C,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAErF,MAAM,MAAM,8BAA8B,GACxC,KAAK,CAAC,sDAAsD,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7F,MAAM,MAAM,6BAA6B,GACvC,KAAK,CAAC,qDAAqD,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAE5F,MAAM,MAAM,gCAAgC,GAC1C,KAAK,CAAC,wDAAwD,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/F,MAAM,MAAM,4BAA4B,GACtC,KAAK,CAAC,kCAAkC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AACzE,MAAM,MAAM,iCAAiC,GAC3C,UAAU,CAAC,SAAS,CAAC,CAAC,mCAAmC,CAAC,CAAA;AAE5D,MAAM,MAAM,iCAAiC,GAC3C,KAAK,CAAC,kCAAkC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAIxE,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,8BAA8B,CAAC,CAAA;AAEhG,MAAM,MAAM,kCAAkC,GAC5C,UAAU,CAAC,SAAS,CAAC,CAAC,oCAAoC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=user-invitations.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-invitations.types.js","sourceRoot":"","sources":["../../../src/services/user-invitations/user-invitations.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from "./users.types.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/users/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from "./users.types.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/users/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { operations } from "../../models/custody-types.js";
2
+ export type GetUsersPathParams = operations["getUsers"]["parameters"]["path"];
3
+ export type GetUsersQueryParams = operations["getUsers"]["parameters"]["query"];
4
+ export type GetKnownUserRolesPathParams = operations["getKnownUserRoles"]["parameters"]["path"];
5
+ export type GetUserPathParams = operations["getUser"]["parameters"]["path"];
6
+ export type Core_TrustedUsersCollection = operations["getUsers"]["responses"]["200"]["content"]["application/json"];
7
+ export type Core_ApiRoles = operations["getKnownUserRoles"]["responses"]["200"]["content"]["application/json"];
8
+ export type Core_TrustedUser = operations["getUser"]["responses"]["200"]["content"]["application/json"];
9
+ export type Core_MeReference = operations["getMe"]["responses"]["200"]["content"]["application/json"];
10
+ //# sourceMappingURL=users.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.types.d.ts","sourceRoot":"","sources":["../../../src/services/users/users.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAI/D,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7E,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;AAE/E,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/F,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAI3E,MAAM,MAAM,2BAA2B,GACrC,UAAU,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA;AAE3E,MAAM,MAAM,aAAa,GACvB,UAAU,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA;AAEpF,MAAM,MAAM,gBAAgB,GAC1B,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA;AAE1E,MAAM,MAAM,gBAAgB,GAC1B,UAAU,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=users.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.types.js","sourceRoot":"","sources":["../../../src/services/users/users.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from "./vaults.types.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/vaults/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from "./vaults.types.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/vaults/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,14 @@
1
+ import type { operations, paths } from "../../models/custody-types.js";
2
+ export type GetVaultsQueryParams = operations["getVaults"]["parameters"]["query"];
3
+ export type GetVaultPathParams = operations["getVault"]["parameters"]["path"];
4
+ export type ExportPreparedOperationsPathParams = paths["/v1/vaults/{vaultId}/operations/prepared"]["get"]["parameters"]["path"];
5
+ export type ImportPreparedOperationsRequestBody = {
6
+ /**
7
+ * Array of strings (binary)
8
+ */
9
+ files: string[];
10
+ };
11
+ export type Core_VaultsCollection = operations["getVaults"]["responses"]["200"]["content"]["application/json"];
12
+ export type Core_ApiVault = operations["getVault"]["responses"]["200"]["content"]["application/json"];
13
+ export type Core_ExportPreparedOperationsResponse = paths["/v1/vaults/{vaultId}/operations/prepared"]["get"]["responses"]["200"]["content"];
14
+ //# sourceMappingURL=vaults.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vaults.types.d.ts","sourceRoot":"","sources":["../../../src/services/vaults/vaults.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAA;AAItE,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;AAEjF,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7E,MAAM,MAAM,kCAAkC,GAC5C,KAAK,CAAC,0CAA0C,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAEhF,MAAM,MAAM,mCAAmC,GAAG;IAChD;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAID,MAAM,MAAM,qBAAqB,GAC/B,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA;AAE5E,MAAM,MAAM,aAAa,GACvB,UAAU,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAA;AAE3E,MAAM,MAAM,qCAAqC,GAC/C,KAAK,CAAC,0CAA0C,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vaults.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vaults.types.js","sourceRoot":"","sources":["../../../src/services/vaults/vaults.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export { createHttpPorts } from "./xrpl.http-adapters.js";
2
+ export type { XrplPorts } from "./xrpl.ports.js";
3
+ export * from "./xrpl.service.js";
4
+ export * from "./xrpl.types.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/xrpl/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,8 @@
1
+ // export {
2
+ // batchSignersToCustodyBatchSigners,
3
+ // rawTransactionsToInnerTransactions,
4
+ // } from "./xrpl.adapters.js"
5
+ export { createHttpPorts } from "./xrpl.http-adapters.js";
6
+ export * from "./xrpl.service.js";
7
+ export * from "./xrpl.types.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/xrpl/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,uCAAuC;AACvC,wCAAwC;AACxC,8BAA8B;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1,13 @@
1
+ export {};
2
+ /**
3
+ * Converts an XRPL SDK BatchSigners array (from a signed Batch transaction)
4
+ * to the batchSigners format required by the Ripple Custody API.
5
+ */
6
+ /**
7
+ * Converts an XRPL SDK Batch.RawTransactions array to the innerTransactions
8
+ * format required by the Ripple Custody API.
9
+ *
10
+ * Supported transaction types: Payment, OfferCreate, TrustSet, AccountSet, TicketCreate.
11
+ * Throws for any other type.
12
+ */
13
+ //# sourceMappingURL=xrpl.adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.adapters.d.ts","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.adapters.ts"],"names":[],"mappings":";AAiRA;;;GAGG;AAWH;;;;;;GAMG"}
@@ -0,0 +1,288 @@
1
+ import { AccountSetAsfFlags, MPTokenAuthorizeFlags, MPTokenIssuanceCreateFlags, MPTokenIssuanceSetFlags, OfferCreateFlags, TrustSetFlags, } from "xrpl";
2
+ // XRP drops are represented as plain strings; IOU amounts carry currency/issuer metadata.
3
+ const amountToAssetQuantity = (amount) => {
4
+ if (typeof amount === "string") {
5
+ return { amount };
6
+ }
7
+ return {
8
+ amount: amount.value,
9
+ currency: {
10
+ type: "Currency",
11
+ code: amount.currency,
12
+ issuer: amount.issuer,
13
+ },
14
+ };
15
+ };
16
+ // XRPL flags can arrive either as a bitmask integer or as a pre-decoded object
17
+ // (e.g. { tfSell: true }). Both forms are handled throughout the flag helpers below.
18
+ const offerCreateFlagsToStrings = (flags) => {
19
+ if (!flags)
20
+ return [];
21
+ if (typeof flags === "object") {
22
+ const f = flags;
23
+ return ["tfImmediateOrCancel", "tfFillOrKill", "tfSell"].filter((k) => f[k]);
24
+ }
25
+ const result = [];
26
+ if (flags & OfferCreateFlags.tfImmediateOrCancel)
27
+ result.push("tfImmediateOrCancel");
28
+ if (flags & OfferCreateFlags.tfFillOrKill)
29
+ result.push("tfFillOrKill");
30
+ if (flags & OfferCreateFlags.tfSell)
31
+ result.push("tfSell");
32
+ return result;
33
+ };
34
+ const trustSetFlagsToStrings = (flags) => {
35
+ if (!flags)
36
+ return [];
37
+ if (typeof flags === "object") {
38
+ const f = flags;
39
+ return ["tfSetfAuth", "tfSetFreeze", "tfClearFreeze"].filter((k) => f[k]);
40
+ }
41
+ const result = [];
42
+ if (flags & TrustSetFlags.tfSetfAuth)
43
+ result.push("tfSetfAuth");
44
+ if (flags & TrustSetFlags.tfSetFreeze)
45
+ result.push("tfSetFreeze");
46
+ if (flags & TrustSetFlags.tfClearFreeze)
47
+ result.push("tfClearFreeze");
48
+ return result;
49
+ };
50
+ const ASF_FLAG_MAP = {
51
+ [AccountSetAsfFlags.asfRequireDest]: "asfRequireDest",
52
+ [AccountSetAsfFlags.asfRequireAuth]: "asfRequireAuth",
53
+ [AccountSetAsfFlags.asfAccountTxnID]: "asfAccountTxnID",
54
+ [AccountSetAsfFlags.asfNoFreeze]: "asfNoFreeze",
55
+ [AccountSetAsfFlags.asfGlobalFreeze]: "asfGlobalFreeze",
56
+ [AccountSetAsfFlags.asfDefaultRipple]: "asfDefaultRipple",
57
+ [AccountSetAsfFlags.asfDepositAuth]: "asfDepositAuth",
58
+ [AccountSetAsfFlags.asfAllowTrustLineClawback]: "asfAllowTrustLineClawback",
59
+ };
60
+ const accountSetAsfFlagToString = (flag) => {
61
+ const mapped = ASF_FLAG_MAP[flag];
62
+ if (!mapped)
63
+ throw new Error(`Unsupported AccountSet flag: ${flag}`);
64
+ return mapped;
65
+ };
66
+ const mpTokenAuthorizeFlagsToStrings = (flags) => {
67
+ if (!flags)
68
+ return [];
69
+ if (typeof flags === "object") {
70
+ const f = flags;
71
+ return ["tfMPTUnauthorize"].filter((k) => f[k]);
72
+ }
73
+ const result = [];
74
+ if (flags & MPTokenAuthorizeFlags.tfMPTUnauthorize)
75
+ result.push("tfMPTUnauthorize");
76
+ return result;
77
+ };
78
+ const mpTokenIssuanceCreateFlagsToStrings = (flags) => {
79
+ if (!flags)
80
+ return [];
81
+ if (typeof flags === "object") {
82
+ const f = flags;
83
+ return [
84
+ "tfMPTCanLock",
85
+ "tfMPTRequireAuth",
86
+ "tfMPTCanEscrow",
87
+ "tfMPTCanTrade",
88
+ "tfMPTCanTransfer",
89
+ "tfMPTCanClawback",
90
+ ].filter((k) => f[k]);
91
+ }
92
+ const result = [];
93
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTCanLock)
94
+ result.push("tfMPTCanLock");
95
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTRequireAuth)
96
+ result.push("tfMPTRequireAuth");
97
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTCanEscrow)
98
+ result.push("tfMPTCanEscrow");
99
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTCanTrade)
100
+ result.push("tfMPTCanTrade");
101
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTCanTransfer)
102
+ result.push("tfMPTCanTransfer");
103
+ if (flags & MPTokenIssuanceCreateFlags.tfMPTCanClawback)
104
+ result.push("tfMPTCanClawback");
105
+ return result;
106
+ };
107
+ const mpTokenIssuanceSetFlagsToStrings = (flags) => {
108
+ if (!flags)
109
+ return [];
110
+ if (typeof flags === "object") {
111
+ const f = flags;
112
+ return ["tfMPTLock", "tfMPTUnlock"].filter((k) => f[k]);
113
+ }
114
+ const result = [];
115
+ if (flags & MPTokenIssuanceSetFlags.tfMPTLock)
116
+ result.push("tfMPTLock");
117
+ if (flags & MPTokenIssuanceSetFlags.tfMPTUnlock)
118
+ result.push("tfMPTUnlock");
119
+ return result;
120
+ };
121
+ // const txToOperation = (tx: RawTx): CustodyOperation => {
122
+ // switch (tx.TransactionType) {
123
+ // case "Payment": {
124
+ // const amount = tx.Amount
125
+ // if (isString(amount)) {
126
+ // // XRP drops
127
+ // return {
128
+ // type: "Payment",
129
+ // destination: { type: "Address", address: tx.Destination },
130
+ // amount,
131
+ // ...(tx.DestinationTag !== undefined && { destinationTag: tx.DestinationTag }),
132
+ // }
133
+ // }
134
+ // const isMPT = "mpt_issuance_id" in amount
135
+ // return {
136
+ // type: "Payment",
137
+ // destination: { type: "Address", address: tx.Destination },
138
+ // amount: amount.value,
139
+ // ...(tx.DestinationTag !== undefined && { destinationTag: tx.DestinationTag }),
140
+ // currency: isMPT
141
+ // ? { type: "MultiPurposeToken" as const, issuanceId: amount.mpt_issuance_id }
142
+ // : {
143
+ // type: "Currency" as const,
144
+ // code: (amount as IssuedCurrencyAmount).currency,
145
+ // issuer: (amount as IssuedCurrencyAmount).issuer,
146
+ // },
147
+ // }
148
+ // }
149
+ // case "OfferCreate":
150
+ // return {
151
+ // type: "OfferCreate",
152
+ // takerGets: amountToAssetQuantity(tx.TakerGets as IssuedCurrencyAmount | string),
153
+ // takerPays: amountToAssetQuantity(tx.TakerPays as IssuedCurrencyAmount | string),
154
+ // flags: offerCreateFlagsToStrings(tx.Flags),
155
+ // }
156
+ // case "TrustSet":
157
+ // return {
158
+ // type: "TrustSet",
159
+ // limitAmount: {
160
+ // currency: {
161
+ // type: "Currency",
162
+ // code: tx.LimitAmount.currency,
163
+ // issuer: tx.LimitAmount.issuer,
164
+ // },
165
+ // value: tx.LimitAmount.value,
166
+ // },
167
+ // flags: trustSetFlagsToStrings(tx.Flags),
168
+ // }
169
+ // case "AccountSet":
170
+ // return {
171
+ // type: "AccountSet",
172
+ // ...(tx.SetFlag !== undefined && { setFlag: accountSetAsfFlagToString(tx.SetFlag) }),
173
+ // ...(tx.ClearFlag !== undefined && { clearFlag: accountSetAsfFlagToString(tx.ClearFlag) }),
174
+ // ...(tx.TransferRate !== undefined && { transferRate: tx.TransferRate }),
175
+ // }
176
+ // case "TicketCreate":
177
+ // return {
178
+ // type: "TicketCreate",
179
+ // ticketCount: tx.TicketCount,
180
+ // }
181
+ // case "Clawback": {
182
+ // const amount = tx.Amount
183
+ // // Clawback Amount can be either an IOU (IssuedCurrencyAmount) or an MPT amount,
184
+ // // distinguished by the presence of `mpt_issuance_id`.
185
+ // const isMPT = "mpt_issuance_id" in amount
186
+ // return {
187
+ // type: "Clawback",
188
+ // currency: isMPT
189
+ // ? { type: "MultiPurposeToken" as const, issuanceId: amount.mpt_issuance_id }
190
+ // : {
191
+ // type: "Currency" as const,
192
+ // code: (amount as IssuedCurrencyAmount).currency,
193
+ // issuer: (amount as IssuedCurrencyAmount).issuer,
194
+ // },
195
+ // holder: { type: "Address" as const, address: tx.Holder as string },
196
+ // value: amount.value,
197
+ // }
198
+ // }
199
+ // case "DepositPreauth":
200
+ // return {
201
+ // type: "DepositPreauth",
202
+ // ...(tx.Authorize !== undefined && {
203
+ // authorize: { type: "Address" as const, address: tx.Authorize },
204
+ // }),
205
+ // ...(tx.Unauthorize !== undefined && {
206
+ // unauthorize: { type: "Address" as const, address: tx.Unauthorize },
207
+ // }),
208
+ // }
209
+ // case "EscrowFinish":
210
+ // return {
211
+ // type: "EscrowFinish",
212
+ // owner: { type: "Address" as const, address: tx.Owner },
213
+ // offerSequence: Number(tx.OfferSequence),
214
+ // ...(tx.Condition !== undefined && { condition: tx.Condition }),
215
+ // ...(tx.Fulfillment !== undefined && { fulfillment: tx.Fulfillment }),
216
+ // ...(tx.CredentialIDs !== undefined && { credentialIds: tx.CredentialIDs }),
217
+ // }
218
+ // case "MPTokenAuthorize":
219
+ // return {
220
+ // type: "MPTokenAuthorize",
221
+ // tokenIdentifier: { type: "MPTokenIssuanceId" as const, issuanceId: tx.MPTokenIssuanceID },
222
+ // flags: mpTokenAuthorizeFlagsToStrings(tx.Flags),
223
+ // ...(tx.Holder !== undefined && {
224
+ // holder: { type: "Address" as const, address: tx.Holder },
225
+ // }),
226
+ // }
227
+ // case "MPTokenIssuanceCreate":
228
+ // return {
229
+ // type: "MPTokenIssuanceCreate",
230
+ // flags: mpTokenIssuanceCreateFlagsToStrings(tx.Flags),
231
+ // ...(tx.AssetScale !== undefined && { assetScale: tx.AssetScale }),
232
+ // ...(tx.TransferFee !== undefined && { transferFee: tx.TransferFee }),
233
+ // ...(tx.MaximumAmount !== undefined && { maximumAmount: tx.MaximumAmount }),
234
+ // ...(tx.MPTokenMetadata !== undefined && {
235
+ // metadata: { type: "HexEncodedMetadata" as const, value: tx.MPTokenMetadata },
236
+ // }),
237
+ // }
238
+ // case "MPTokenIssuanceDestroy":
239
+ // return {
240
+ // type: "MPTokenIssuanceDestroy",
241
+ // tokenIdentifier: { type: "MPTokenIssuanceId" as const, issuanceId: tx.MPTokenIssuanceID },
242
+ // }
243
+ // case "MPTokenIssuanceSet":
244
+ // return {
245
+ // type: "MPTokenIssuanceSet",
246
+ // tokenIdentifier: { type: "MPTokenIssuanceId" as const, issuanceId: tx.MPTokenIssuanceID },
247
+ // flags: mpTokenIssuanceSetFlagsToStrings(tx.Flags),
248
+ // ...(tx.Holder !== undefined && {
249
+ // holder: { type: "Address" as const, address: tx.Holder },
250
+ // }),
251
+ // }
252
+ // default:
253
+ // throw new Error(`Unsupported transaction type: ${tx.TransactionType}`)
254
+ // }
255
+ // }
256
+ /**
257
+ * Converts an XRPL SDK BatchSigners array (from a signed Batch transaction)
258
+ * to the batchSigners format required by the Ripple Custody API.
259
+ */
260
+ // export const batchSignersToCustodyBatchSigners = (
261
+ // batchSigners: BatchSigner[],
262
+ // ): CustodyBatchSigner[] => {
263
+ // return batchSigners.map(({ BatchSigner: { Account, SigningPubKey, TxnSignature } }) => ({
264
+ // account: Account,
265
+ // signingPubKey: SigningPubKey ?? "",
266
+ // txnSignature: TxnSignature ?? "",
267
+ // }))
268
+ // }
269
+ /**
270
+ * Converts an XRPL SDK Batch.RawTransactions array to the innerTransactions
271
+ * format required by the Ripple Custody API.
272
+ *
273
+ * Supported transaction types: Payment, OfferCreate, TrustSet, AccountSet, TicketCreate.
274
+ * Throws for any other type.
275
+ */
276
+ // export const rawTransactionsToInnerTransactions = (
277
+ // rawTransactions: Batch["RawTransactions"],
278
+ // ): CustodyInnerTransaction[] => {
279
+ // return rawTransactions.map(({ RawTransaction: tx }) => ({
280
+ // account: tx.Account,
281
+ // ...(tx.Sequence !== undefined && { sequence: tx.Sequence }),
282
+ // ...(tx.TicketSequence !== undefined && {
283
+ // ticketSequence: tx.TicketSequence,
284
+ // }),
285
+ // operation: txToOperation(tx),
286
+ // }))
287
+ // }
288
+ //# sourceMappingURL=xrpl.adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.adapters.js","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.adapters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { TypedTransport } from "../../transport/index.js";
2
+ import type { XrplPorts } from "./xrpl.ports.js";
3
+ /**
4
+ * Production implementation of XrplPorts backed by TypedTransport (HTTP).
5
+ *
6
+ * Absorbs:
7
+ * - DomainResolverService (GET /v1/me + validation + domain resolution)
8
+ * - findByAddressOrThrow (GET /v1/addresses)
9
+ * - intent submission (POST /v1/intents)
10
+ * - manifest retrieval (GET /v1/domains/.../manifests/...)
11
+ * - account details (GET /v1/domains/.../accounts/...)
12
+ */
13
+ export declare function createHttpPorts(transport: TypedTransport): XrplPorts;
14
+ //# sourceMappingURL=xrpl.http-adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.http-adapters.d.ts","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.http-adapters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAI9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,cAAc,GAAG,SAAS,CAsCpE"}
@@ -0,0 +1,83 @@
1
+ import { URLs } from "../../constants/urls.js";
2
+ import { CustodyError } from "../../models/index.js";
3
+ import { findByAddressOrThrow } from "../../namespaces/accounts.js";
4
+ /**
5
+ * Production implementation of XrplPorts backed by TypedTransport (HTTP).
6
+ *
7
+ * Absorbs:
8
+ * - DomainResolverService (GET /v1/me + validation + domain resolution)
9
+ * - findByAddressOrThrow (GET /v1/addresses)
10
+ * - intent submission (POST /v1/intents)
11
+ * - manifest retrieval (GET /v1/domains/.../manifests/...)
12
+ * - account details (GET /v1/domains/.../accounts/...)
13
+ */
14
+ export function createHttpPorts(transport) {
15
+ return {
16
+ async resolveContext(address, opts = {}) {
17
+ const me = await transport.get(URLs.me);
18
+ const { domainId, userId } = resolveDomainAndUser(me, opts.domainId);
19
+ const account = await findByAddressOrThrow(transport, address, {
20
+ ledgerId: opts.ledgerId,
21
+ domainId: opts.domainId,
22
+ });
23
+ return {
24
+ domainId,
25
+ userId,
26
+ accountId: account.accountId,
27
+ ledgerId: account.ledgerId,
28
+ address: account.address,
29
+ };
30
+ },
31
+ submitIntent(body) {
32
+ return transport.post(URLs.intents, body);
33
+ },
34
+ getManifest(domainId, accountId, manifestId) {
35
+ return transport.get(URLs.accountManifest, {
36
+ domainId,
37
+ accountId,
38
+ manifestId,
39
+ });
40
+ },
41
+ getAccount(domainId, accountId) {
42
+ return transport.get(URLs.account, { domainId, accountId });
43
+ },
44
+ };
45
+ }
46
+ // ── Inlined from DomainResolverService ─────────────────────────
47
+ function resolveDomainAndUser(me, providedDomainId) {
48
+ if (!me.loginId?.id) {
49
+ throw new CustodyError({ reason: "User has no login ID" });
50
+ }
51
+ if (me.domains.length === 0) {
52
+ throw new CustodyError({ reason: "User has no domains" });
53
+ }
54
+ if (providedDomainId) {
55
+ const domain = me.domains.find((d) => d.id === providedDomainId);
56
+ if (!domain) {
57
+ throw new CustodyError({
58
+ reason: `Domain with ID ${providedDomainId} not found for user`,
59
+ });
60
+ }
61
+ if (!domain.id) {
62
+ throw new CustodyError({ reason: `Domain ${providedDomainId} has no ID` });
63
+ }
64
+ if (!domain.userReference?.id) {
65
+ throw new CustodyError({ reason: `Domain ${providedDomainId} has no user reference` });
66
+ }
67
+ return { domainId: domain.id, userId: domain.userReference.id };
68
+ }
69
+ if (me.domains.length > 1) {
70
+ throw new CustodyError({
71
+ reason: "User has multiple domains. Please specify domainId in the options parameter.",
72
+ });
73
+ }
74
+ const domain = me.domains[0];
75
+ if (!domain?.id) {
76
+ throw new CustodyError({ reason: "User has no primary domain" });
77
+ }
78
+ if (!domain.userReference?.id) {
79
+ throw new CustodyError({ reason: "Primary domain has no user reference" });
80
+ }
81
+ return { domainId: domain.id, userId: domain.userReference.id };
82
+ }
83
+ //# sourceMappingURL=xrpl.http-adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.http-adapters.js","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.http-adapters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { XrplLedgerId } from "../../models/ledger-ids.js";
2
+ import type { Core_ApiAccount, Core_ApiManifest } from "../accounts/accounts.types.js";
3
+ import type { Core_IntentResponse, Core_ProposeIntentBody } from "../intents/intents.types.js";
4
+ import type { IntentContext } from "./xrpl.types.js";
5
+ /**
6
+ * I/O ports for XrplService.
7
+ *
8
+ * Production: backed by TypedTransport (HTTP).
9
+ * Tests: backed by plain in-memory objects.
10
+ */
11
+ export interface XrplPorts {
12
+ /**
13
+ * Resolves the full intent context (domain, user, account) for a given XRPL address.
14
+ * Absorbs domain resolution (GET /v1/me) and account lookup (GET /v1/addresses).
15
+ */
16
+ resolveContext(address: string, opts?: {
17
+ domainId?: string;
18
+ ledgerId?: XrplLedgerId;
19
+ }): Promise<IntentContext>;
20
+ /**
21
+ * Submits a proposed intent to the custody platform.
22
+ * Wraps POST /v1/intents.
23
+ */
24
+ submitIntent(body: Core_ProposeIntentBody): Promise<Core_IntentResponse>;
25
+ /**
26
+ * Retrieves a manifest for polling signature availability.
27
+ * Wraps GET /v1/domains/{domainId}/accounts/{accountId}/manifests/{manifestId}.
28
+ */
29
+ getManifest(domainId: string, accountId: string, manifestId: string): Promise<Core_ApiManifest>;
30
+ /**
31
+ * Retrieves full account details (needed for public key retrieval).
32
+ * Wraps GET /v1/domains/{domainId}/accounts/{accountId}.
33
+ */
34
+ getAccount(domainId: string, accountId: string): Promise<Core_ApiAccount>;
35
+ }
36
+ //# sourceMappingURL=xrpl.ports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.ports.d.ts","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.ports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AACtF,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAC9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,cAAc,CACZ,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;KAAE,GACpD,OAAO,CAAC,aAAa,CAAC,CAAA;IAEzB;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAExE;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAE/F;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CAC1E"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=xrpl.ports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xrpl.ports.js","sourceRoot":"","sources":["../../../src/services/xrpl/xrpl.ports.ts"],"names":[],"mappings":""}