@otim/utils 0.0.2-development.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 (421) hide show
  1. package/LICENSE +201 -0
  2. package/dist/api/api.d.mts +18 -0
  3. package/dist/api/api.d.ts +18 -0
  4. package/dist/api/api.d.ts.map +1 -0
  5. package/dist/api/core/error.d.mts +74 -0
  6. package/dist/api/core/error.d.ts +74 -0
  7. package/dist/api/core/error.d.ts.map +1 -0
  8. package/dist/api/core/index.d.mts +4 -0
  9. package/dist/api/core/index.d.ts +4 -0
  10. package/dist/api/core/index.d.ts.map +1 -0
  11. package/dist/api/core/instance.d.mts +13 -0
  12. package/dist/api/core/instance.d.ts +13 -0
  13. package/dist/api/core/instance.d.ts.map +1 -0
  14. package/dist/api/core/service.d.mts +51 -0
  15. package/dist/api/core/service.d.ts +51 -0
  16. package/dist/api/core/service.d.ts.map +1 -0
  17. package/dist/api/index.d.mts +7 -0
  18. package/dist/api/index.d.ts +7 -0
  19. package/dist/api/index.d.ts.map +1 -0
  20. package/dist/api/index.js +2061 -0
  21. package/dist/api/index.js.map +7 -0
  22. package/dist/api/index.mjs +2030 -0
  23. package/dist/api/index.mjs.map +7 -0
  24. package/dist/api/schemas/account.d.mts +44 -0
  25. package/dist/api/schemas/account.d.ts +44 -0
  26. package/dist/api/schemas/account.d.ts.map +1 -0
  27. package/dist/api/schemas/activity.d.mts +277 -0
  28. package/dist/api/schemas/activity.d.ts +277 -0
  29. package/dist/api/schemas/activity.d.ts.map +1 -0
  30. package/dist/api/schemas/auth.d.mts +127 -0
  31. package/dist/api/schemas/auth.d.ts +127 -0
  32. package/dist/api/schemas/auth.d.ts.map +1 -0
  33. package/dist/api/schemas/chain.d.mts +15 -0
  34. package/dist/api/schemas/chain.d.ts +15 -0
  35. package/dist/api/schemas/chain.d.ts.map +1 -0
  36. package/dist/api/schemas/config.d.mts +33 -0
  37. package/dist/api/schemas/config.d.ts +33 -0
  38. package/dist/api/schemas/config.d.ts.map +1 -0
  39. package/dist/api/schemas/contacts.d.mts +27 -0
  40. package/dist/api/schemas/contacts.d.ts +27 -0
  41. package/dist/api/schemas/contacts.d.ts.map +1 -0
  42. package/dist/api/schemas/index.d.mts +12 -0
  43. package/dist/api/schemas/index.d.ts +12 -0
  44. package/dist/api/schemas/index.d.ts.map +1 -0
  45. package/dist/api/schemas/instruction.d.mts +446 -0
  46. package/dist/api/schemas/instruction.d.ts +446 -0
  47. package/dist/api/schemas/instruction.d.ts.map +1 -0
  48. package/dist/api/schemas/integration.d.mts +166 -0
  49. package/dist/api/schemas/integration.d.ts +166 -0
  50. package/dist/api/schemas/integration.d.ts.map +1 -0
  51. package/dist/api/schemas/operating-account.d.mts +11 -0
  52. package/dist/api/schemas/operating-account.d.ts +11 -0
  53. package/dist/api/schemas/operating-account.d.ts.map +1 -0
  54. package/dist/api/schemas/payments.d.mts +196 -0
  55. package/dist/api/schemas/payments.d.ts +196 -0
  56. package/dist/api/schemas/payments.d.ts.map +1 -0
  57. package/dist/api/schemas/transaction.d.mts +37 -0
  58. package/dist/api/schemas/transaction.d.ts +37 -0
  59. package/dist/api/schemas/transaction.d.ts.map +1 -0
  60. package/dist/api/services/account.d.mts +8 -0
  61. package/dist/api/services/account.d.ts +8 -0
  62. package/dist/api/services/account.d.ts.map +1 -0
  63. package/dist/api/services/activity.d.mts +7 -0
  64. package/dist/api/services/activity.d.ts +7 -0
  65. package/dist/api/services/activity.d.ts.map +1 -0
  66. package/dist/api/services/auth.d.mts +12 -0
  67. package/dist/api/services/auth.d.ts +12 -0
  68. package/dist/api/services/auth.d.ts.map +1 -0
  69. package/dist/api/services/base.d.mts +10 -0
  70. package/dist/api/services/base.d.ts +10 -0
  71. package/dist/api/services/base.d.ts.map +1 -0
  72. package/dist/api/services/config.d.mts +10 -0
  73. package/dist/api/services/config.d.ts +10 -0
  74. package/dist/api/services/config.d.ts.map +1 -0
  75. package/dist/api/services/contacts.d.mts +8 -0
  76. package/dist/api/services/contacts.d.ts +8 -0
  77. package/dist/api/services/contacts.d.ts.map +1 -0
  78. package/dist/api/services/developer.d.mts +6 -0
  79. package/dist/api/services/developer.d.ts +6 -0
  80. package/dist/api/services/developer.d.ts.map +1 -0
  81. package/dist/api/services/index.d.mts +13 -0
  82. package/dist/api/services/index.d.ts +13 -0
  83. package/dist/api/services/index.d.ts.map +1 -0
  84. package/dist/api/services/instruction.d.mts +12 -0
  85. package/dist/api/services/instruction.d.ts +12 -0
  86. package/dist/api/services/instruction.d.ts.map +1 -0
  87. package/dist/api/services/integration.d.mts +8 -0
  88. package/dist/api/services/integration.d.ts +8 -0
  89. package/dist/api/services/integration.d.ts.map +1 -0
  90. package/dist/api/services/operating-account.d.mts +8 -0
  91. package/dist/api/services/operating-account.d.ts +8 -0
  92. package/dist/api/services/operating-account.d.ts.map +1 -0
  93. package/dist/api/services/payments.d.mts +13 -0
  94. package/dist/api/services/payments.d.ts +13 -0
  95. package/dist/api/services/payments.d.ts.map +1 -0
  96. package/dist/api/services/transaction.d.mts +8 -0
  97. package/dist/api/services/transaction.d.ts +8 -0
  98. package/dist/api/services/transaction.d.ts.map +1 -0
  99. package/dist/api/services/uniswap-token-list-service.d.mts +66 -0
  100. package/dist/api/services/uniswap-token-list-service.d.ts +66 -0
  101. package/dist/api/services/uniswap-token-list-service.d.ts.map +1 -0
  102. package/dist/api/utils/index.d.mts +2 -0
  103. package/dist/api/utils/index.d.ts +2 -0
  104. package/dist/api/utils/index.d.ts.map +1 -0
  105. package/dist/api/utils/pagination.d.mts +32 -0
  106. package/dist/api/utils/pagination.d.ts +32 -0
  107. package/dist/api/utils/pagination.d.ts.map +1 -0
  108. package/dist/chains/config/all-chains.d.mts +4243 -0
  109. package/dist/chains/config/all-chains.d.ts +4243 -0
  110. package/dist/chains/config/all-chains.d.ts.map +1 -0
  111. package/dist/chains/config/custom-chains.d.mts +49 -0
  112. package/dist/chains/config/custom-chains.d.ts +49 -0
  113. package/dist/chains/config/custom-chains.d.ts.map +1 -0
  114. package/dist/chains/config/mainnet-chains.d.mts +1063 -0
  115. package/dist/chains/config/mainnet-chains.d.ts +1063 -0
  116. package/dist/chains/config/mainnet-chains.d.ts.map +1 -0
  117. package/dist/chains/config/supported-chains.d.mts +2172 -0
  118. package/dist/chains/config/supported-chains.d.ts +2172 -0
  119. package/dist/chains/config/supported-chains.d.ts.map +1 -0
  120. package/dist/chains/config/testnet-chains.d.mts +1110 -0
  121. package/dist/chains/config/testnet-chains.d.ts +1110 -0
  122. package/dist/chains/config/testnet-chains.d.ts.map +1 -0
  123. package/dist/chains/index.d.mts +16 -0
  124. package/dist/chains/index.d.ts +16 -0
  125. package/dist/chains/index.d.ts.map +1 -0
  126. package/dist/chains/index.js +490 -0
  127. package/dist/chains/index.js.map +7 -0
  128. package/dist/chains/index.mjs +505 -0
  129. package/dist/chains/index.mjs.map +7 -0
  130. package/dist/chains/lambda/chain-mapping.d.mts +55 -0
  131. package/dist/chains/lambda/chain-mapping.d.ts +55 -0
  132. package/dist/chains/lambda/chain-mapping.d.ts.map +1 -0
  133. package/dist/chains/lambda/index.d.mts +2 -0
  134. package/dist/chains/lambda/index.d.ts +2 -0
  135. package/dist/chains/lambda/index.d.ts.map +1 -0
  136. package/dist/chains/tokens/chain-tokens.d.mts +6 -0
  137. package/dist/chains/tokens/chain-tokens.d.ts +6 -0
  138. package/dist/chains/tokens/chain-tokens.d.ts.map +1 -0
  139. package/dist/chains/tokens/token-addresses.d.mts +8 -0
  140. package/dist/chains/tokens/token-addresses.d.ts +8 -0
  141. package/dist/chains/tokens/token-addresses.d.ts.map +1 -0
  142. package/dist/chains/tokens/token-metadata.d.mts +5 -0
  143. package/dist/chains/tokens/token-metadata.d.ts +5 -0
  144. package/dist/chains/tokens/token-metadata.d.ts.map +1 -0
  145. package/dist/chains/types.d.mts +23 -0
  146. package/dist/chains/types.d.ts +23 -0
  147. package/dist/chains/types.d.ts.map +1 -0
  148. package/dist/chains/utils/filter-tokens.d.mts +3 -0
  149. package/dist/chains/utils/filter-tokens.d.ts +3 -0
  150. package/dist/chains/utils/filter-tokens.d.ts.map +1 -0
  151. package/dist/chains/utils/stablecoin.d.mts +7 -0
  152. package/dist/chains/utils/stablecoin.d.ts +7 -0
  153. package/dist/chains/utils/stablecoin.d.ts.map +1 -0
  154. package/dist/chains/utils/token-maps.d.mts +10 -0
  155. package/dist/chains/utils/token-maps.d.ts +10 -0
  156. package/dist/chains/utils/token-maps.d.ts.map +1 -0
  157. package/dist/constants.d.mts +31 -0
  158. package/dist/constants.d.ts +31 -0
  159. package/dist/constants.d.ts.map +1 -0
  160. package/dist/constants.js +47 -0
  161. package/dist/constants.js.map +7 -0
  162. package/dist/constants.mjs +26 -0
  163. package/dist/constants.mjs.map +7 -0
  164. package/dist/env.d.mts +17 -0
  165. package/dist/env.d.ts +17 -0
  166. package/dist/env.d.ts.map +1 -0
  167. package/dist/formatters/index.d.mts +2 -0
  168. package/dist/formatters/index.d.ts +2 -0
  169. package/dist/formatters/index.d.ts.map +1 -0
  170. package/dist/formatters/index.js +19 -0
  171. package/dist/formatters/index.js.map +7 -0
  172. package/dist/formatters/index.mjs +1 -0
  173. package/dist/formatters/index.mjs.map +7 -0
  174. package/dist/helpers/address.d.mts +7 -0
  175. package/dist/helpers/address.d.ts +7 -0
  176. package/dist/helpers/address.d.ts.map +1 -0
  177. package/dist/helpers/blockchain.d.mts +41 -0
  178. package/dist/helpers/blockchain.d.ts +41 -0
  179. package/dist/helpers/blockchain.d.ts.map +1 -0
  180. package/dist/helpers/date.d.mts +70 -0
  181. package/dist/helpers/date.d.ts +70 -0
  182. package/dist/helpers/date.d.ts.map +1 -0
  183. package/dist/helpers/datetime.d.mts +57 -0
  184. package/dist/helpers/datetime.d.ts +57 -0
  185. package/dist/helpers/datetime.d.ts.map +1 -0
  186. package/dist/helpers/domain.d.mts +2 -0
  187. package/dist/helpers/domain.d.ts +2 -0
  188. package/dist/helpers/domain.d.ts.map +1 -0
  189. package/dist/helpers/index.d.mts +19 -0
  190. package/dist/helpers/index.d.ts +19 -0
  191. package/dist/helpers/index.d.ts.map +1 -0
  192. package/dist/helpers/index.js +1322 -0
  193. package/dist/helpers/index.js.map +7 -0
  194. package/dist/helpers/index.mjs +1294 -0
  195. package/dist/helpers/index.mjs.map +7 -0
  196. package/dist/helpers/intl.d.mts +20 -0
  197. package/dist/helpers/intl.d.ts +20 -0
  198. package/dist/helpers/intl.d.ts.map +1 -0
  199. package/dist/helpers/logger.d.mts +26 -0
  200. package/dist/helpers/logger.d.ts +26 -0
  201. package/dist/helpers/logger.d.ts.map +1 -0
  202. package/dist/helpers/mask-options.d.mts +10 -0
  203. package/dist/helpers/mask-options.d.ts +10 -0
  204. package/dist/helpers/mask-options.d.ts.map +1 -0
  205. package/dist/helpers/num-formatter.d.mts +3 -0
  206. package/dist/helpers/num-formatter.d.ts +3 -0
  207. package/dist/helpers/num-formatter.d.ts.map +1 -0
  208. package/dist/helpers/polling.d.mts +39 -0
  209. package/dist/helpers/polling.d.ts +39 -0
  210. package/dist/helpers/polling.d.ts.map +1 -0
  211. package/dist/helpers/random.d.mts +10 -0
  212. package/dist/helpers/random.d.ts +10 -0
  213. package/dist/helpers/random.d.ts.map +1 -0
  214. package/dist/helpers/sdk-loader.d.mts +25 -0
  215. package/dist/helpers/sdk-loader.d.ts +25 -0
  216. package/dist/helpers/sdk-loader.d.ts.map +1 -0
  217. package/dist/helpers/signatures.d.mts +17 -0
  218. package/dist/helpers/signatures.d.ts +17 -0
  219. package/dist/helpers/signatures.d.ts.map +1 -0
  220. package/dist/helpers/string.d.mts +17 -0
  221. package/dist/helpers/string.d.ts +17 -0
  222. package/dist/helpers/string.d.ts.map +1 -0
  223. package/dist/helpers/types.d.mts +39 -0
  224. package/dist/helpers/types.d.ts +39 -0
  225. package/dist/helpers/types.d.ts.map +1 -0
  226. package/dist/helpers/url.d.mts +11 -0
  227. package/dist/helpers/url.d.ts +11 -0
  228. package/dist/helpers/url.d.ts.map +1 -0
  229. package/dist/helpers/window.d.mts +37 -0
  230. package/dist/helpers/window.d.ts +37 -0
  231. package/dist/helpers/window.d.ts.map +1 -0
  232. package/dist/helpers/zod.d.mts +30 -0
  233. package/dist/helpers/zod.d.ts +30 -0
  234. package/dist/helpers/zod.d.ts.map +1 -0
  235. package/dist/index.d.mts +1 -0
  236. package/dist/index.d.ts +1 -0
  237. package/dist/index.d.ts.map +1 -0
  238. package/dist/index.js +2 -0
  239. package/dist/index.js.map +7 -0
  240. package/dist/index.mjs +1 -0
  241. package/dist/index.mjs.map +7 -0
  242. package/dist/instructions/actions/index.d.mts +5 -0
  243. package/dist/instructions/actions/index.d.ts +5 -0
  244. package/dist/instructions/actions/index.d.ts.map +1 -0
  245. package/dist/instructions/actions/refuel/index.d.mts +15 -0
  246. package/dist/instructions/actions/refuel/index.d.ts +15 -0
  247. package/dist/instructions/actions/refuel/index.d.ts.map +1 -0
  248. package/dist/instructions/actions/swap/index.d.mts +19 -0
  249. package/dist/instructions/actions/swap/index.d.ts +19 -0
  250. package/dist/instructions/actions/swap/index.d.ts.map +1 -0
  251. package/dist/instructions/actions/sweep/index.d.mts +16 -0
  252. package/dist/instructions/actions/sweep/index.d.ts +16 -0
  253. package/dist/instructions/actions/sweep/index.d.ts.map +1 -0
  254. package/dist/instructions/actions/transfer/index.d.mts +13 -0
  255. package/dist/instructions/actions/transfer/index.d.ts +13 -0
  256. package/dist/instructions/actions/transfer/index.d.ts.map +1 -0
  257. package/dist/instructions/activate.d.mts +84 -0
  258. package/dist/instructions/activate.d.ts +84 -0
  259. package/dist/instructions/activate.d.ts.map +1 -0
  260. package/dist/instructions/build.d.mts +146 -0
  261. package/dist/instructions/build.d.ts +146 -0
  262. package/dist/instructions/build.d.ts.map +1 -0
  263. package/dist/instructions/constants.d.mts +9 -0
  264. package/dist/instructions/constants.d.ts +9 -0
  265. package/dist/instructions/constants.d.ts.map +1 -0
  266. package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.mts +609 -0
  267. package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.ts +609 -0
  268. package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.ts.map +1 -0
  269. package/dist/instructions/index.d.mts +6 -0
  270. package/dist/instructions/index.d.ts +6 -0
  271. package/dist/instructions/index.d.ts.map +1 -0
  272. package/dist/instructions/index.js +1152 -0
  273. package/dist/instructions/index.js.map +7 -0
  274. package/dist/instructions/index.mjs +1119 -0
  275. package/dist/instructions/index.mjs.map +7 -0
  276. package/dist/instructions/types.d.mts +289 -0
  277. package/dist/instructions/types.d.ts +289 -0
  278. package/dist/instructions/types.d.ts.map +1 -0
  279. package/dist/payments/action-names.d.mts +16 -0
  280. package/dist/payments/action-names.d.ts +16 -0
  281. package/dist/payments/action-names.d.ts.map +1 -0
  282. package/dist/payments/actions/index.d.mts +5 -0
  283. package/dist/payments/actions/index.d.ts +5 -0
  284. package/dist/payments/actions/index.d.ts.map +1 -0
  285. package/dist/payments/actions/sweep-cctp.d.mts +15 -0
  286. package/dist/payments/actions/sweep-cctp.d.ts +15 -0
  287. package/dist/payments/actions/sweep-cctp.d.ts.map +1 -0
  288. package/dist/payments/actions/sweep-erc20.d.mts +12 -0
  289. package/dist/payments/actions/sweep-erc20.d.ts +12 -0
  290. package/dist/payments/actions/sweep-erc20.d.ts.map +1 -0
  291. package/dist/payments/actions/sweep-uniswap-v3.d.mts +17 -0
  292. package/dist/payments/actions/sweep-uniswap-v3.d.ts +17 -0
  293. package/dist/payments/actions/sweep-uniswap-v3.d.ts.map +1 -0
  294. package/dist/payments/actions/sweep.d.mts +12 -0
  295. package/dist/payments/actions/sweep.d.ts +12 -0
  296. package/dist/payments/actions/sweep.d.ts.map +1 -0
  297. package/dist/payments/build.d.mts +27 -0
  298. package/dist/payments/build.d.ts +27 -0
  299. package/dist/payments/build.d.ts.map +1 -0
  300. package/dist/payments/chain-token-config-builder.d.mts +10 -0
  301. package/dist/payments/chain-token-config-builder.d.ts +10 -0
  302. package/dist/payments/chain-token-config-builder.d.ts.map +1 -0
  303. package/dist/payments/comprehensive-payment-request.d.mts +25 -0
  304. package/dist/payments/comprehensive-payment-request.d.ts +25 -0
  305. package/dist/payments/comprehensive-payment-request.d.ts.map +1 -0
  306. package/dist/payments/config/cctp.d.mts +14 -0
  307. package/dist/payments/config/cctp.d.ts +14 -0
  308. package/dist/payments/config/cctp.d.ts.map +1 -0
  309. package/dist/payments/config/index.d.mts +3 -0
  310. package/dist/payments/config/index.d.ts +3 -0
  311. package/dist/payments/config/index.d.ts.map +1 -0
  312. package/dist/payments/config/tokens.d.mts +14 -0
  313. package/dist/payments/config/tokens.d.ts +14 -0
  314. package/dist/payments/config/tokens.d.ts.map +1 -0
  315. package/dist/payments/index.d.mts +16 -0
  316. package/dist/payments/index.d.ts +16 -0
  317. package/dist/payments/index.d.ts.map +1 -0
  318. package/dist/payments/index.js +1303 -0
  319. package/dist/payments/index.js.map +7 -0
  320. package/dist/payments/index.mjs +1281 -0
  321. package/dist/payments/index.mjs.map +7 -0
  322. package/dist/payments/instruction-registry.d.mts +19 -0
  323. package/dist/payments/instruction-registry.d.ts +19 -0
  324. package/dist/payments/instruction-registry.d.ts.map +1 -0
  325. package/dist/payments/payment-metadata-builder.d.mts +56 -0
  326. package/dist/payments/payment-metadata-builder.d.ts +56 -0
  327. package/dist/payments/payment-metadata-builder.d.ts.map +1 -0
  328. package/dist/payments/payment-metadata.d.mts +15 -0
  329. package/dist/payments/payment-metadata.d.ts +15 -0
  330. package/dist/payments/payment-metadata.d.ts.map +1 -0
  331. package/dist/payments/payment-request-token-resolver.d.mts +25 -0
  332. package/dist/payments/payment-request-token-resolver.d.ts +25 -0
  333. package/dist/payments/payment-request-token-resolver.d.ts.map +1 -0
  334. package/dist/payments/types.d.mts +40 -0
  335. package/dist/payments/types.d.ts +40 -0
  336. package/dist/payments/types.d.ts.map +1 -0
  337. package/dist/payments/validation.d.mts +19 -0
  338. package/dist/payments/validation.d.ts +19 -0
  339. package/dist/payments/validation.d.ts.map +1 -0
  340. package/dist/schemas/account.d.mts +9 -0
  341. package/dist/schemas/account.d.ts +9 -0
  342. package/dist/schemas/account.d.ts.map +1 -0
  343. package/dist/schemas/brand.d.mts +7 -0
  344. package/dist/schemas/brand.d.ts +7 -0
  345. package/dist/schemas/brand.d.ts.map +1 -0
  346. package/dist/schemas/contact.d.mts +18 -0
  347. package/dist/schemas/contact.d.ts +18 -0
  348. package/dist/schemas/contact.d.ts.map +1 -0
  349. package/dist/schemas/index.d.mts +10 -0
  350. package/dist/schemas/index.d.ts +10 -0
  351. package/dist/schemas/index.d.ts.map +1 -0
  352. package/dist/schemas/index.js +433 -0
  353. package/dist/schemas/index.js.map +7 -0
  354. package/dist/schemas/index.mjs +410 -0
  355. package/dist/schemas/index.mjs.map +7 -0
  356. package/dist/schemas/instruction.d.mts +248 -0
  357. package/dist/schemas/instruction.d.ts +248 -0
  358. package/dist/schemas/instruction.d.ts.map +1 -0
  359. package/dist/schemas/misc.d.mts +36 -0
  360. package/dist/schemas/misc.d.ts +36 -0
  361. package/dist/schemas/misc.d.ts.map +1 -0
  362. package/dist/schemas/payment.d.mts +64 -0
  363. package/dist/schemas/payment.d.ts +64 -0
  364. package/dist/schemas/payment.d.ts.map +1 -0
  365. package/dist/schemas/token.d.mts +17 -0
  366. package/dist/schemas/token.d.ts +17 -0
  367. package/dist/schemas/token.d.ts.map +1 -0
  368. package/dist/schemas/transaction.d.mts +65 -0
  369. package/dist/schemas/transaction.d.ts +65 -0
  370. package/dist/schemas/transaction.d.ts.map +1 -0
  371. package/dist/schemas/user.d.mts +24 -0
  372. package/dist/schemas/user.d.ts +24 -0
  373. package/dist/schemas/user.d.ts.map +1 -0
  374. package/dist/server/client.d.mts +3 -0
  375. package/dist/server/client.d.ts +3 -0
  376. package/dist/server/client.d.ts.map +1 -0
  377. package/dist/server/index.d.mts +3 -0
  378. package/dist/server/index.d.ts +3 -0
  379. package/dist/server/index.d.ts.map +1 -0
  380. package/dist/server/index.js +420 -0
  381. package/dist/server/index.js.map +7 -0
  382. package/dist/server/index.mjs +389 -0
  383. package/dist/server/index.mjs.map +7 -0
  384. package/dist/server/routes/account.d.mts +4 -0
  385. package/dist/server/routes/account.d.ts +4 -0
  386. package/dist/server/routes/account.d.ts.map +1 -0
  387. package/dist/server/routes/auth.d.mts +28 -0
  388. package/dist/server/routes/auth.d.ts +28 -0
  389. package/dist/server/routes/auth.d.ts.map +1 -0
  390. package/dist/server/routes/bridge.d.mts +192 -0
  391. package/dist/server/routes/bridge.d.ts +192 -0
  392. package/dist/server/routes/bridge.d.ts.map +1 -0
  393. package/dist/server/routes/config.d.mts +3 -0
  394. package/dist/server/routes/config.d.ts +3 -0
  395. package/dist/server/routes/config.d.ts.map +1 -0
  396. package/dist/server/routes/index.d.mts +8 -0
  397. package/dist/server/routes/index.d.ts +8 -0
  398. package/dist/server/routes/index.d.ts.map +1 -0
  399. package/dist/server/routes/instruction.d.mts +4 -0
  400. package/dist/server/routes/instruction.d.ts +4 -0
  401. package/dist/server/routes/instruction.d.ts.map +1 -0
  402. package/dist/server/routes/integration.d.mts +4 -0
  403. package/dist/server/routes/integration.d.ts +4 -0
  404. package/dist/server/routes/integration.d.ts.map +1 -0
  405. package/dist/server/routes/payments.d.mts +4 -0
  406. package/dist/server/routes/payments.d.ts +4 -0
  407. package/dist/server/routes/payments.d.ts.map +1 -0
  408. package/dist/server/routes/verify.d.mts +3 -0
  409. package/dist/server/routes/verify.d.ts +3 -0
  410. package/dist/server/routes/verify.d.ts.map +1 -0
  411. package/dist/wallet/wagmi/config.d.mts +18 -0
  412. package/dist/wallet/wagmi/config.d.ts +18 -0
  413. package/dist/wallet/wagmi/config.d.ts.map +1 -0
  414. package/dist/wallet/wagmi/index.d.mts +2 -0
  415. package/dist/wallet/wagmi/index.d.ts +2 -0
  416. package/dist/wallet/wagmi/index.d.ts.map +1 -0
  417. package/dist/wallet/wagmi/index.js +429 -0
  418. package/dist/wallet/wagmi/index.js.map +7 -0
  419. package/dist/wallet/wagmi/index.mjs +431 -0
  420. package/dist/wallet/wagmi/index.mjs.map +7 -0
  421. package/package.json +222 -0
@@ -0,0 +1,2061 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
31
+
32
+ // src/api/index.ts
33
+ var api_exports = {};
34
+ __export(api_exports, {
35
+ APIClient: () => APIClient,
36
+ AccountService: () => AccountService,
37
+ ActivityService: () => ActivityService,
38
+ AuthService: () => AuthService,
39
+ ConfigService: () => ConfigService,
40
+ ContactsService: () => ContactsService,
41
+ DelegationStatus: () => DelegationStatus,
42
+ DeveloperService: () => DeveloperService,
43
+ HttpMethod: () => HttpMethod,
44
+ InstructionService: () => InstructionService,
45
+ IntegrationService: () => IntegrationService,
46
+ IntegrationType: () => IntegrationType,
47
+ OperatingAccountService: () => OperatingAccountService,
48
+ PaymentsService: () => PaymentsService,
49
+ ServiceError: () => ServiceError,
50
+ TransactionService: () => TransactionService,
51
+ UniswapTokenListService: () => UniswapTokenListService,
52
+ actionArgumentsResponseSchema: () => actionArgumentsResponseSchema,
53
+ actionArgumentsSchema: () => actionArgumentsSchema,
54
+ actionNameSchema: () => actionNameSchema,
55
+ activityDataSchema: () => activityDataSchema,
56
+ activityRecordSchema: () => activityRecordSchema,
57
+ addressWhitelistCheckRequestSchema: () => addressWhitelistCheckRequestSchema,
58
+ addressWhitelistCheckResponseSchema: () => addressWhitelistCheckResponseSchema,
59
+ apiErrorSchema: () => apiErrorSchema,
60
+ attestationSchema: () => attestationSchema,
61
+ authLoginRequestSchema: () => authLoginRequestSchema,
62
+ authLoginResponseSchema: () => authLoginResponseSchema,
63
+ buildEphemeralInstructionSchema: () => buildEphemeralInstructionSchema,
64
+ calculateHasMore: () => calculateHasMore,
65
+ chainIdSchema: () => chainIdSchema,
66
+ chainSuccessResponseSchema: () => chainSuccessResponseSchema,
67
+ contactSchema: () => contactSchema,
68
+ createAPIClient: () => createAPIClient,
69
+ createAbortController: () => createAbortController,
70
+ createInstance: () => createInstance,
71
+ delegationCreateRequestSchema: () => delegationCreateRequestSchema,
72
+ delegationCreateResponseSchema: () => delegationCreateResponseSchema,
73
+ delegationStatusRequestSchema: () => delegationStatusRequestSchema,
74
+ delegationStatusResponseSchema: () => delegationStatusResponseSchema,
75
+ delegationStatusSchema: () => delegationStatusSchema,
76
+ delegationStatusValues: () => delegationStatusValues,
77
+ errorResponseSchema: () => errorResponseSchema,
78
+ extractPaginationParams: () => extractPaginationParams,
79
+ feeResponseSchema: () => feeResponseSchema2,
80
+ getConfigChainsResponseSchema: () => getConfigChainsResponseSchema,
81
+ getConfigTokensRequestParametersSchema: () => getConfigTokensRequestParametersSchema,
82
+ getConfigTokensResponseSchema: () => getConfigTokensResponseSchema,
83
+ getContactsRequestSchema: () => getContactsRequestSchema,
84
+ getContactsResponseSchema: () => getContactsResponseSchema,
85
+ getCurrentUserResponseSchema: () => getCurrentUserResponseSchema,
86
+ getDefaultPagination: () => getDefaultPagination,
87
+ getDelegateAddressResponseSchema: () => getDelegateAddressResponseSchema,
88
+ getDelegateAddressSchema: () => getDelegateAddressSchema,
89
+ getErrorMessage: () => getErrorMessage,
90
+ getErrorMessageWithCode: () => getErrorMessageWithCode,
91
+ getInstructionActivityRequestSchema: () => getInstructionActivityRequestSchema,
92
+ getInstructionActivityResponseSchema: () => getInstructionActivityResponseSchema,
93
+ getIntegrationRequestSchema: () => getIntegrationRequestSchema,
94
+ getMaxPriorityFeePerGasEstimateResponseSchema: () => getMaxPriorityFeePerGasEstimateResponseSchema,
95
+ getMaxPriorityFeePerGasEstimateSchema: () => getMaxPriorityFeePerGasEstimateSchema,
96
+ getOperatingAccountSubOrgResponseSchema: () => getOperatingAccountSubOrgResponseSchema,
97
+ getPaymentRequestsRequestSchema: () => getPaymentRequestsRequestSchema,
98
+ getPaymentRequestsResponseSchema: () => getPaymentRequestsResponseSchema,
99
+ getUserFriendlyErrorMessage: () => getUserFriendlyErrorMessage,
100
+ instructionActivateRequestSchema: () => instructionActivateRequestSchema,
101
+ instructionActivateResponseSchema: () => instructionActivateResponseSchema,
102
+ instructionBuildRequestSchema: () => instructionBuildRequestSchema,
103
+ instructionBuildSchema: () => instructionBuildSchema,
104
+ instructionDeactivateRequestSchema: () => instructionDeactivateRequestSchema,
105
+ instructionDeactivateResponseSchema: () => instructionDeactivateResponseSchema,
106
+ instructionDetailsRequestSchema: () => instructionDetailsRequestSchema,
107
+ instructionDetailsResponseSchema: () => instructionDetailsResponseSchema,
108
+ instructionGetAllRequestSchema: () => instructionGetAllRequestSchema,
109
+ instructionGetAllResponseSchema: () => instructionGetAllResponseSchema,
110
+ instructionGetRulesRequestSchema: () => instructionGetRulesRequestSchema,
111
+ instructionGetRulesResponseSchema: () => instructionGetRulesResponseSchema,
112
+ integrationResponseSchema: () => integrationResponseSchema,
113
+ integrationTypeSchema: () => integrationTypeSchema,
114
+ integrationTypeValues: () => integrationTypeValues,
115
+ isInstanceInit: () => isInstanceInit,
116
+ isTechnicalError: () => isTechnicalError,
117
+ isUserAddressableError: () => isUserAddressableError,
118
+ isUserRejectionError: () => isUserRejectionError,
119
+ meResponseSchema: () => meResponseSchema,
120
+ newContactRequestSchema: () => newContactRequestSchema,
121
+ newInstructionRequestSchema: () => newInstructionRequestSchema,
122
+ newOperatingAccountSubOrgResponseSchema: () => newOperatingAccountSubOrgResponseSchema,
123
+ paymentRequestBuildRequestSchema: () => paymentRequestBuildRequestSchema,
124
+ paymentRequestBuildResponseSchema: () => paymentRequestBuildResponseSchema,
125
+ paymentRequestDetailsRequestSchema: () => paymentRequestDetailsRequestSchema,
126
+ paymentRequestDetailsResponseSchema: () => paymentRequestDetailsResponseSchema,
127
+ paymentRequestNewRequestSchema: () => paymentRequestNewRequestSchema,
128
+ paymentRequestSchema: () => paymentRequestSchema,
129
+ paymentRequestStatusSchema: () => paymentRequestStatusSchema,
130
+ paymentRequestsDirectionSchema: () => paymentRequestsDirectionSchema,
131
+ sessionTokenRequestSchema: () => sessionTokenRequestSchema,
132
+ sessionTokenResponseSchema: () => sessionTokenResponseSchema,
133
+ sessionVerifyResponseSchema: () => sessionVerifyResponseSchema,
134
+ setChainIdSchema: () => setChainIdSchema,
135
+ transactionGetListRequestSchema: () => transactionGetListRequestSchema,
136
+ transactionGetListResponseSchema: () => transactionGetListResponseSchema,
137
+ turnkeyLoginRequestSchema: () => turnkeyLoginRequestSchema,
138
+ turnkeyLoginResponseSchema: () => turnkeyLoginResponseSchema,
139
+ turnkeyVerificationRequestSchema: () => turnkeyVerificationRequestSchema,
140
+ turnkeyVerificationResponseSchema: () => turnkeyVerificationResponseSchema,
141
+ updateIntegrationRequestSchema: () => updateIntegrationRequestSchema,
142
+ whitelistCheckRequestSchema: () => whitelistCheckRequestSchema,
143
+ whitelistCheckResponseSchema: () => whitelistCheckResponseSchema
144
+ });
145
+ module.exports = __toCommonJS(api_exports);
146
+
147
+ // src/api/core/error.ts
148
+ var import_zod = require("zod");
149
+ var apiErrorSchema = import_zod.z.object({
150
+ code: import_zod.z.string().nullish(),
151
+ message: import_zod.z.string().nullish(),
152
+ errorCode: import_zod.z.string().nullish(),
153
+ errorMessage: import_zod.z.string().nullish(),
154
+ status: import_zod.z.number().nullish(),
155
+ context: import_zod.z.object({
156
+ field_errors: import_zod.z.record(import_zod.z.string(), import_zod.z.string()).nullish()
157
+ }).nullish()
158
+ });
159
+ var errorResponseSchema = import_zod.z.object({
160
+ message: import_zod.z.string().nullish(),
161
+ errorMessage: import_zod.z.string().nullish(),
162
+ errorCode: import_zod.z.string().nullish(),
163
+ errors: import_zod.z.array(apiErrorSchema).nullish()
164
+ });
165
+ var defaultErrorCode = "unknown";
166
+ var defaultErrorMessage = "Unexpected error";
167
+ function extractErrorData(maybeError) {
168
+ let errorData = maybeError?.body;
169
+ if (!errorData && maybeError?.response?.data) {
170
+ errorData = maybeError.response.data;
171
+ }
172
+ if (!errorData && (maybeError?.errorMessage || maybeError?.message || maybeError?.errorCode)) {
173
+ errorData = maybeError;
174
+ }
175
+ return errorData;
176
+ }
177
+ function getErrorMessage(maybeError, fallbackMessage) {
178
+ const errorMessage = fallbackMessage ?? defaultErrorMessage;
179
+ const errorData = extractErrorData(maybeError);
180
+ const result = errorResponseSchema.safeParse(errorData);
181
+ if (!result.success) {
182
+ return errorMessage;
183
+ }
184
+ const { message, errorMessage: apiErrorMessage, errors } = result.data;
185
+ return apiErrorMessage ?? message ?? errors?.[0]?.errorMessage ?? errors?.[0]?.message ?? errorMessage;
186
+ }
187
+ function getErrorMessageWithCode(maybeError, fallbackMessage) {
188
+ const errorMessage = fallbackMessage ?? defaultErrorMessage;
189
+ const errorData = extractErrorData(maybeError);
190
+ const result = errorResponseSchema.safeParse(errorData);
191
+ if (!result.success || !result.data.errors?.[0] && !result.data.errorMessage && !result.data.message) {
192
+ return {
193
+ message: errorMessage,
194
+ code: defaultErrorCode
195
+ };
196
+ }
197
+ const {
198
+ message,
199
+ errorMessage: apiErrorMessage,
200
+ errorCode,
201
+ errors
202
+ } = result.data;
203
+ return {
204
+ message: apiErrorMessage ?? message ?? errors?.[0]?.errorMessage ?? errors?.[0]?.message ?? errorMessage,
205
+ code: errorCode ?? errors?.[0]?.errorCode ?? errors?.[0]?.code ?? defaultErrorCode
206
+ };
207
+ }
208
+ function isUserRejectionError(error) {
209
+ if (!error) return false;
210
+ let errorMessage = "";
211
+ if (typeof error === "string") {
212
+ errorMessage = error;
213
+ } else if (typeof error === "object") {
214
+ errorMessage = error.message || error.errorMessage || error.details || "";
215
+ }
216
+ if (!errorMessage) {
217
+ errorMessage = String(error);
218
+ }
219
+ errorMessage = errorMessage.toLowerCase();
220
+ const rejectionPatterns = [
221
+ "user rejected",
222
+ "user denied",
223
+ "user cancelled",
224
+ "cancelled by user",
225
+ "rejected by user",
226
+ "user abort",
227
+ "transaction rejected",
228
+ "signature rejected",
229
+ "request rejected"
230
+ ];
231
+ return rejectionPatterns.some((pattern) => errorMessage.includes(pattern));
232
+ }
233
+ var isUserAddressableError = (errorCode, errorMessage) => {
234
+ const isInUserErrorRange = errorCode >= 1e3 && errorCode < 2e3;
235
+ const hasErrorMessage = Boolean(errorMessage);
236
+ return isInUserErrorRange && hasErrorMessage;
237
+ };
238
+ function isTechnicalError(error) {
239
+ if (!error) return false;
240
+ let errorMessage = "";
241
+ if (typeof error === "string") {
242
+ errorMessage = error;
243
+ } else if (typeof error === "object") {
244
+ errorMessage = error.message || error.errorMessage || error.details || "";
245
+ }
246
+ if (!errorMessage) {
247
+ errorMessage = String(error);
248
+ }
249
+ errorMessage = errorMessage.toLowerCase();
250
+ const technicalErrorPatterns = [
251
+ "is not a function",
252
+ "cannot read prop",
253
+ "cannot read property",
254
+ "reading undefined",
255
+ "read undefined of",
256
+ "cannot access before initialization",
257
+ "is not defined",
258
+ "is undefined",
259
+ "is null",
260
+ "unexpected token",
261
+ "syntax error",
262
+ "reference error",
263
+ "type error",
264
+ "network error",
265
+ "failed to fetch",
266
+ "server components"
267
+ ];
268
+ return technicalErrorPatterns.some(
269
+ (pattern) => errorMessage.includes(pattern)
270
+ );
271
+ }
272
+ function getUserFriendlyErrorMessage(error, fallbackMessage) {
273
+ if (isTechnicalError(error)) {
274
+ return "Internal server error";
275
+ }
276
+ return getErrorMessage(error, fallbackMessage);
277
+ }
278
+
279
+ // src/api/core/instance.ts
280
+ var import_axios = __toESM(require("axios"));
281
+ var API_INSTANCE_DEFAULT_TIMEOUT = 3e4;
282
+ var createInstance = (config) => {
283
+ const instance = import_axios.default.create({
284
+ timeout: API_INSTANCE_DEFAULT_TIMEOUT,
285
+ ...config
286
+ });
287
+ return instance;
288
+ };
289
+ var createAbortController = () => {
290
+ return new AbortController();
291
+ };
292
+ var isInstanceInit = (init) => {
293
+ return !!init && typeof init === "object" && "instance" in init;
294
+ };
295
+
296
+ // src/api/core/service.ts
297
+ var ServiceError = class extends Error {
298
+ constructor(message, code) {
299
+ super(message);
300
+ this.code = code;
301
+ this.name = "ServiceError";
302
+ }
303
+ };
304
+ var HttpMethod = {
305
+ Get: "GET",
306
+ Post: "POST",
307
+ Put: "PUT",
308
+ Delete: "DELETE"
309
+ };
310
+
311
+ // src/api/schemas/account.ts
312
+ var import_zod2 = require("zod");
313
+ var DelegationStatus = {
314
+ Undelegated: "Undelegated",
315
+ Pending: "Pending",
316
+ Delegated: "Delegated",
317
+ Expired: "Expired",
318
+ Errored: "Errored"
319
+ };
320
+ var delegationStatusValues = Object.values(DelegationStatus);
321
+ var delegationStatusSchema = import_zod2.z.enum(delegationStatusValues);
322
+ var delegationStatusRequestSchema = import_zod2.z.object({
323
+ address: import_zod2.z.string(),
324
+ chainId: import_zod2.z.number()
325
+ });
326
+ var delegationStatusResponseSchema = import_zod2.z.object({
327
+ delegationStatus: delegationStatusSchema
328
+ });
329
+ var delegationCreateRequestSchema = import_zod2.z.object({
330
+ signedAuthorization: import_zod2.z.string(),
331
+ signerAddress: import_zod2.z.string()
332
+ });
333
+ var delegationCreateResponseSchema = import_zod2.z.object({
334
+ success: import_zod2.z.boolean(),
335
+ transactionHash: import_zod2.z.string().optional(),
336
+ message: import_zod2.z.string().optional()
337
+ });
338
+
339
+ // src/api/schemas/activity.ts
340
+ var import_zod8 = require("zod");
341
+
342
+ // src/schemas/instruction.ts
343
+ var import_zod4 = require("zod");
344
+
345
+ // src/schemas/misc.ts
346
+ var import_zod3 = require("zod");
347
+ var DATE_REGEX = /^(19|20)\d{2}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/;
348
+ var DATE_ISO_8601_REGEX = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?$/;
349
+ var DATE_STANDARD_REGEX = /^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/(19|20)\d{2}$/;
350
+ var TIME_REGEX = /^(0[1-9]|1[0-2]):[0-5][0-9]:[0-5][0-9] (AM|PM)$/;
351
+ var regexSchema = (regex, message) => import_zod3.z.string().regex(regex, message);
352
+ var nonEmptyStringSchema = import_zod3.z.string().min(1);
353
+ var numberSchema = import_zod3.z.union([
354
+ import_zod3.z.number().finite(),
355
+ import_zod3.z.string().regex(/^-?\d*\.?\d+(?:[eE][-+]?\d+)?$/).transform(Number)
356
+ ]);
357
+ var decimalStringSchema = import_zod3.z.string().regex(/^-?\d*\.?\d+$/).refine((val) => !isNaN(parseFloat(val)), {
358
+ message: "Must be a valid decimal number"
359
+ });
360
+ var bigintSchema = import_zod3.z.union([
361
+ import_zod3.z.bigint(),
362
+ import_zod3.z.string().regex(/^-?\d+$/).transform(BigInt)
363
+ ]);
364
+ var hexStringSchema = import_zod3.z.string().startsWith("0x").transform((val) => val);
365
+ var dateSchema = regexSchema(DATE_REGEX);
366
+ var dateISO8601Schema = regexSchema(DATE_ISO_8601_REGEX);
367
+ var dateStandardSchema = regexSchema(DATE_STANDARD_REGEX);
368
+ var timeSchema = regexSchema(TIME_REGEX);
369
+ var Sort = {
370
+ Asc: "asc",
371
+ Desc: "desc"
372
+ };
373
+ var sortValues = Object.values(Sort);
374
+ var vrsSchema = import_zod3.z.object({
375
+ v: import_zod3.z.number(),
376
+ r: import_zod3.z.string(),
377
+ s: import_zod3.z.string()
378
+ });
379
+ var eip2098SignatureSchema = import_zod3.z.object({
380
+ yParity: import_zod3.z.number(),
381
+ r: import_zod3.z.string(),
382
+ s: import_zod3.z.string()
383
+ });
384
+
385
+ // src/schemas/instruction.ts
386
+ var instructionIdSchema = hexStringSchema;
387
+ var InstructionState = {
388
+ PendingActivation: "PendingActivation",
389
+ Active: "Active",
390
+ PendingDeactivation: "PendingDeactivation",
391
+ Deactivated: "Deactivated",
392
+ Errored: "Errored",
393
+ Completed: "Completed",
394
+ UserNotDelegated: "UserNotDelegated",
395
+ InFlight: "InFlight",
396
+ NotifyUser: "NotifyUser"
397
+ };
398
+ var instructionStateValues = Object.values(InstructionState);
399
+ var instructionStateSchema = import_zod4.z.enum(instructionStateValues);
400
+ var InstructionAction = {
401
+ RefuelERC20: "refuelERC20",
402
+ Refuel: "refuel",
403
+ Transfer: "transfer",
404
+ TransferERC20: "transferERC20",
405
+ UniswapV3ExactInput: "uniswapV3ExactInput",
406
+ Sweep: "sweep",
407
+ SweepERC20: "sweepERC20",
408
+ SweepCCTP: "sweepCCTP",
409
+ SweepUniswapV3: "sweepUniswapV3",
410
+ SweepDepositAccount: "sweepDepositAccount",
411
+ SweepDepositAccountERC20: "sweepDepositAccountERC20",
412
+ DeactivateInstruction: "deactivateInstruction",
413
+ SweepSkipCCTPDepositAccount: "sweepSkipCCTPDepositAccount"
414
+ };
415
+ var instructionActionValues = Object.values(InstructionAction);
416
+ var instructionActionSchema = import_zod4.z.enum(instructionActionValues);
417
+ var InstructionScheduleStartType = {
418
+ Now: "now",
419
+ DateTime: "datetime"
420
+ };
421
+ var instructionScheduleStartValues = Object.values(
422
+ InstructionScheduleStartType
423
+ );
424
+ var baseStartSchema = import_zod4.z.object({
425
+ type: import_zod4.z.enum(instructionScheduleStartValues)
426
+ });
427
+ var nowStartSchema = baseStartSchema.extend({
428
+ type: import_zod4.z.literal(InstructionScheduleStartType.Now)
429
+ });
430
+ var dateTimeStartSchema = baseStartSchema.extend({
431
+ type: import_zod4.z.literal(InstructionScheduleStartType.DateTime),
432
+ startDate: dateStandardSchema,
433
+ startTime: import_zod4.z.string()
434
+ });
435
+ var instructionScheduleStartSchema = import_zod4.z.discriminatedUnion("type", [
436
+ nowStartSchema,
437
+ dateTimeStartSchema
438
+ ]);
439
+ var InstructionScheduleRepeatType = {
440
+ UntilDeactivated: "until-deactivated",
441
+ MaxExecutions: "max-executions"
442
+ };
443
+ var instructionScheduleRepeatValues = Object.values(
444
+ InstructionScheduleRepeatType
445
+ );
446
+ var baseRepeatSchema = import_zod4.z.object({});
447
+ var untilDeactivatedRepeatSchema = baseRepeatSchema.extend({
448
+ type: import_zod4.z.literal(InstructionScheduleRepeatType.UntilDeactivated)
449
+ });
450
+ var maxExecutionsRepeatSchema = baseRepeatSchema.extend({
451
+ type: import_zod4.z.literal(InstructionScheduleRepeatType.MaxExecutions),
452
+ maxExecutions: numberSchema
453
+ });
454
+ var instructionScheduleRepeatSchema = import_zod4.z.discriminatedUnion("type", [
455
+ untilDeactivatedRepeatSchema,
456
+ maxExecutionsRepeatSchema
457
+ ]);
458
+ var InstructionScheduleRetryType = {
459
+ UntilDeactivated: "until-deactivated",
460
+ TimeLimited: "time-limited"
461
+ };
462
+ var instructionScheduleRetryValues = Object.values(
463
+ InstructionScheduleRetryType
464
+ );
465
+ var baseRetrySchema = import_zod4.z.object({});
466
+ var untilDeactivatedRetrySchema = baseRetrySchema.extend({
467
+ type: import_zod4.z.literal(InstructionScheduleRetryType.UntilDeactivated)
468
+ });
469
+ var timeLimitedRetrySchema = baseRetrySchema.extend({
470
+ type: import_zod4.z.literal(InstructionScheduleRetryType.TimeLimited),
471
+ retryCount: numberSchema
472
+ });
473
+ var instructionScheduleRetrySchema = import_zod4.z.discriminatedUnion("type", [
474
+ untilDeactivatedRetrySchema,
475
+ timeLimitedRetrySchema
476
+ ]);
477
+ var TimeUnit = {
478
+ None: "none",
479
+ Second: "second",
480
+ Minute: "minute",
481
+ Hour: "hour",
482
+ Day: "day",
483
+ Week: "week",
484
+ Month: "month"
485
+ };
486
+ var timeUnitValues = Object.values(TimeUnit);
487
+ var timeUnitSchema = import_zod4.z.enum(timeUnitValues);
488
+ var instructionExecutionStateSchema = import_zod4.z.object({
489
+ executionStatus: instructionStateSchema.optional(),
490
+ executionCounter: import_zod4.z.number().int().optional(),
491
+ lastExecuted: import_zod4.z.number().int().optional()
492
+ });
493
+ var instructionSchema = import_zod4.z.object({
494
+ instructionId: hexStringSchema,
495
+ createdAt: import_zod4.z.number().optional(),
496
+ startAt: import_zod4.z.string().nullish(),
497
+ interval: import_zod4.z.number().nullish(),
498
+ timeout: import_zod4.z.number().nullish(),
499
+ maxExecutions: import_zod4.z.number().nullish(),
500
+ executionState: instructionExecutionStateSchema.optional(),
501
+ actionName: import_zod4.z.string().optional(),
502
+ arguments: import_zod4.z.any(),
503
+ nickname: import_zod4.z.string().nullish(),
504
+ lastInstructedValue: import_zod4.z.string().optional(),
505
+ lastErrorCode: import_zod4.z.number().nullish(),
506
+ lastErrorMessage: import_zod4.z.string().nullish(),
507
+ totalInstructedValue: import_zod4.z.string().optional(),
508
+ instructedTokenAddress: hexStringSchema.nullish(),
509
+ chainId: import_zod4.z.number().nullish(),
510
+ chain: import_zod4.z.string().optional()
511
+ });
512
+ var instructionsSchema = import_zod4.z.array(instructionSchema);
513
+ var instructionSummarySchema = import_zod4.z.object({
514
+ instructionId: hexStringSchema,
515
+ chainId: import_zod4.z.number().int(),
516
+ executionCount: import_zod4.z.number().int(),
517
+ onTimeCount: import_zod4.z.number().int(),
518
+ lateCount: import_zod4.z.number().int(),
519
+ wasActivatedDuring: import_zod4.z.boolean(),
520
+ amount: import_zod4.z.number().default(0),
521
+ instructedValue: import_zod4.z.string().nullish().default("0"),
522
+ instructedTokenAddress: import_zod4.z.string().nullish().default(null)
523
+ });
524
+ var instructionSummariesSchema = import_zod4.z.array(instructionSummarySchema);
525
+ var instructionSummariesByDateSchema = import_zod4.z.record(
526
+ import_zod4.z.string(),
527
+ instructionSummariesSchema
528
+ );
529
+ var InstructionViewTimescale = {
530
+ Days: "days",
531
+ Hours: "hours",
532
+ Minutes: "minutes",
533
+ Seconds: "seconds"
534
+ };
535
+ var instructionViewTimescaleValues = Object.values(
536
+ InstructionViewTimescale
537
+ );
538
+
539
+ // src/schemas/payment.ts
540
+ var import_zod5 = require("zod");
541
+ var PaymentStatus = {
542
+ Due: "due",
543
+ NotDue: "not-due",
544
+ Paid: "paid"
545
+ };
546
+ var PaymentSource = {
547
+ Bill: "Bill",
548
+ Stripe: "Stripe",
549
+ Clio: "Clio",
550
+ QuickBooks: "QuickBooks"
551
+ };
552
+ var paymentRequestSourceValues = [
553
+ PaymentSource.Bill,
554
+ PaymentSource.Stripe,
555
+ PaymentSource.Clio,
556
+ PaymentSource.QuickBooks
557
+ ];
558
+ var paymentSchema = import_zod5.z.object({
559
+ id: import_zod5.z.string(),
560
+ fromUserId: import_zod5.z.string().nullable().optional(),
561
+ toUserId: import_zod5.z.string().nullable().optional(),
562
+ payerAddress: import_zod5.z.string().nullable().optional(),
563
+ ephemeralWalletAddress: import_zod5.z.string(),
564
+ ephemeralWalletId: import_zod5.z.string().optional(),
565
+ instructions: import_zod5.z.object({
566
+ ids: import_zod5.z.array(import_zod5.z.string()),
567
+ completionIds: import_zod5.z.array(import_zod5.z.string())
568
+ }).optional(),
569
+ metadata: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).optional(),
570
+ // UI-derived fields
571
+ status: import_zod5.z.union([
572
+ import_zod5.z.literal(PaymentStatus.Due),
573
+ import_zod5.z.literal(PaymentStatus.NotDue),
574
+ import_zod5.z.literal(PaymentStatus.Paid)
575
+ ]),
576
+ dueDate: import_zod5.z.string(),
577
+ amountDue: import_zod5.z.number(),
578
+ note: import_zod5.z.string().nullable().optional(),
579
+ address: import_zod5.z.string().nullable().optional(),
580
+ addedOn: import_zod5.z.string(),
581
+ source: import_zod5.z.union([
582
+ import_zod5.z.literal(PaymentSource.Bill),
583
+ import_zod5.z.literal(PaymentSource.Stripe),
584
+ import_zod5.z.literal(PaymentSource.Clio),
585
+ import_zod5.z.literal(PaymentSource.QuickBooks)
586
+ ]).nullish(),
587
+ attachmentUrl: import_zod5.z.string().url().nullable().optional(),
588
+ attachmentName: import_zod5.z.string().nullable().optional(),
589
+ fromAccountAddress: import_zod5.z.string().nullable().optional()
590
+ });
591
+ var PaymentsSchema = import_zod5.z.array(paymentSchema);
592
+
593
+ // src/schemas/transaction.ts
594
+ var import_zod6 = require("zod");
595
+ var transactionSchema = import_zod6.z.object({
596
+ instructionId: instructionIdSchema,
597
+ transactionHash: hexStringSchema.optional(),
598
+ blockHash: import_zod6.z.string().nullable(),
599
+ transactionStatus: import_zod6.z.string(),
600
+ error: import_zod6.z.string().nullish(),
601
+ startedAt: import_zod6.z.string(),
602
+ startedAtBlock: import_zod6.z.number(),
603
+ finishedAt: import_zod6.z.string().nullable(),
604
+ finishedAtBlock: import_zod6.z.number().nullable(),
605
+ amount: import_zod6.z.object({ value: import_zod6.z.number(), token: import_zod6.z.string() }).nullish(),
606
+ instructedValue: import_zod6.z.string(),
607
+ instructedTokenAddress: import_zod6.z.string().nullable(),
608
+ executionNum: import_zod6.z.number(),
609
+ chainId: import_zod6.z.number().nullish(),
610
+ chain: import_zod6.z.string().optional()
611
+ });
612
+ var transactionWithValidAmountSchema = transactionSchema.extend({
613
+ amount: import_zod6.z.object({
614
+ value: import_zod6.z.number(),
615
+ token: import_zod6.z.string()
616
+ })
617
+ });
618
+ var transactionsSchema = import_zod6.z.array(transactionSchema);
619
+
620
+ // src/schemas/user.ts
621
+ var import_zod7 = require("zod");
622
+ var entityIdSchema = import_zod7.z.string().uuid();
623
+ var addressSchema = import_zod7.z.string().regex(/^0x[a-fA-F0-9]{40}$/).transform((v) => v.toLowerCase());
624
+ var userPreferencesSchema = import_zod7.z.object({
625
+ chainId: import_zod7.z.number().optional(),
626
+ tokenSymbol: import_zod7.z.string().optional(),
627
+ localCurrency: import_zod7.z.string().optional()
628
+ });
629
+ var userSchema = import_zod7.z.object({
630
+ id: entityIdSchema,
631
+ address: addressSchema,
632
+ createdAt: import_zod7.z.string(),
633
+ updatedAt: import_zod7.z.string(),
634
+ preferences: userPreferencesSchema.optional(),
635
+ isDeveloper: import_zod7.z.boolean(),
636
+ developerPublicKey: import_zod7.z.string().nullable().optional()
637
+ });
638
+
639
+ // src/api/schemas/activity.ts
640
+ var actionNameSchema = import_zod8.z.enum([
641
+ "refuel",
642
+ "transfer",
643
+ "refuelERC20",
644
+ "transferERC20",
645
+ "uniswapV3ExactInput",
646
+ "deactivateInstruction",
647
+ "sweepCCTP",
648
+ "transferCCTP",
649
+ "sweep",
650
+ "sweepERC20",
651
+ "sweepUniswapV3",
652
+ "depositERC4626",
653
+ "sweepDepositERC4626",
654
+ "withdrawERC4626",
655
+ "sweepWithdrawERC4626",
656
+ "callOnce"
657
+ ]);
658
+ var transferFieldsSchema = import_zod8.z.object({
659
+ token: hexStringSchema,
660
+ from: hexStringSchema,
661
+ to: hexStringSchema,
662
+ value: hexStringSchema
663
+ });
664
+ var swapFieldsSchema = import_zod8.z.object({
665
+ poolAddress: hexStringSchema,
666
+ fromToken: hexStringSchema,
667
+ toToken: hexStringSchema,
668
+ from: hexStringSchema,
669
+ to: hexStringSchema,
670
+ fromAmount: hexStringSchema,
671
+ toAmount: hexStringSchema
672
+ });
673
+ var cctpBurnFieldsSchema = import_zod8.z.object({
674
+ token: hexStringSchema,
675
+ from: hexStringSchema,
676
+ mintRecipient: hexStringSchema,
677
+ destinationDomain: hexStringSchema,
678
+ value: hexStringSchema
679
+ });
680
+ var erc4626DepositFieldsSchema = import_zod8.z.object({
681
+ vault: hexStringSchema,
682
+ token: hexStringSchema,
683
+ from: hexStringSchema,
684
+ owner: hexStringSchema,
685
+ value: hexStringSchema,
686
+ shares: hexStringSchema
687
+ });
688
+ var erc4626WithdrawFieldsSchema = import_zod8.z.object({
689
+ vault: hexStringSchema,
690
+ token: hexStringSchema,
691
+ from: hexStringSchema,
692
+ to: hexStringSchema,
693
+ value: hexStringSchema,
694
+ shares: hexStringSchema
695
+ });
696
+ var activityDataSchema = import_zod8.z.union([
697
+ import_zod8.z.object({ transfer: transferFieldsSchema }),
698
+ import_zod8.z.object({ swap: swapFieldsSchema }),
699
+ import_zod8.z.object({ cctpBurn: cctpBurnFieldsSchema }),
700
+ import_zod8.z.object({ erc4626Deposit: erc4626DepositFieldsSchema }),
701
+ import_zod8.z.object({ erc4626Withdraw: erc4626WithdrawFieldsSchema })
702
+ ]);
703
+ var activityRecordSchema = import_zod8.z.object({
704
+ actionName: actionNameSchema,
705
+ blockTimestamp: numberSchema,
706
+ transactionHash: hexStringSchema,
707
+ activity: activityDataSchema,
708
+ instructionId: hexStringSchema.nullable(),
709
+ executionCount: import_zod8.z.number().nullable()
710
+ });
711
+ var getInstructionActivityRequestSchema = import_zod8.z.object({
712
+ chainId: import_zod8.z.number(),
713
+ actionNames: import_zod8.z.array(actionNameSchema),
714
+ page: numberSchema.optional(),
715
+ perPage: numberSchema.optional()
716
+ });
717
+ var getInstructionActivityResponseSchema = import_zod8.z.array(activityRecordSchema);
718
+
719
+ // src/api/schemas/auth.ts
720
+ var import_zod9 = require("zod");
721
+ var authLoginRequestSchema = import_zod9.z.object({
722
+ siwe: import_zod9.z.string(),
723
+ signature: vrsSchema
724
+ });
725
+ var authLoginResponseSchema = import_zod9.z.object({
726
+ authorization: import_zod9.z.string(),
727
+ user: userSchema
728
+ });
729
+ var turnkeyVerificationRequestSchema = import_zod9.z.object({
730
+ email: import_zod9.z.string().email()
731
+ });
732
+ var turnkeyVerificationResponseSchema = import_zod9.z.object({
733
+ isLogin: import_zod9.z.boolean()
734
+ });
735
+ var attestationSchema = import_zod9.z.object({
736
+ credentialId: import_zod9.z.string(),
737
+ clientDataJson: import_zod9.z.string(),
738
+ attestationObject: import_zod9.z.string(),
739
+ transports: import_zod9.z.array(import_zod9.z.string()).optional()
740
+ });
741
+ var turnkeyLoginRequestSchema = import_zod9.z.object({
742
+ email: import_zod9.z.email(),
743
+ verificationCode: import_zod9.z.coerce.number().int().min(1e5).max(999999),
744
+ passkeyChallenge: import_zod9.z.string().optional(),
745
+ attestation: attestationSchema.optional()
746
+ });
747
+ var turnkeyLoginResponseSchema = import_zod9.z.object({
748
+ email: import_zod9.z.string(),
749
+ subOrgId: import_zod9.z.string(),
750
+ walletAddress: import_zod9.z.string(),
751
+ isLogin: import_zod9.z.boolean().optional()
752
+ });
753
+ var meResponseSchema = userSchema;
754
+ var sessionTokenRequestSchema = import_zod9.z.object({
755
+ sessionToken: import_zod9.z.string()
756
+ });
757
+ var sessionTokenResponseSchema = import_zod9.z.object({
758
+ success: import_zod9.z.boolean()
759
+ });
760
+ var sessionVerifyResponseSchema = import_zod9.z.object({
761
+ authenticated: import_zod9.z.boolean(),
762
+ hasSessionToken: import_zod9.z.boolean()
763
+ });
764
+ var whitelistCheckRequestSchema = import_zod9.z.object({
765
+ email: import_zod9.z.string().email()
766
+ });
767
+ var whitelistCheckResponseSchema = import_zod9.z.object({
768
+ isAllowed: import_zod9.z.boolean(),
769
+ message: import_zod9.z.string().optional()
770
+ });
771
+ var addressWhitelistCheckRequestSchema = import_zod9.z.object({
772
+ address: import_zod9.z.string()
773
+ });
774
+ var addressWhitelistCheckResponseSchema = import_zod9.z.object({
775
+ isAllowed: import_zod9.z.boolean(),
776
+ message: import_zod9.z.string().optional()
777
+ });
778
+ var getCurrentUserResponseSchema = import_zod9.z.object({
779
+ data: userSchema
780
+ });
781
+
782
+ // src/api/schemas/chain.ts
783
+ var import_zod10 = require("zod");
784
+ var chainIdSchema = import_zod10.z.object({
785
+ chainId: import_zod10.z.number().nullable()
786
+ });
787
+ var setChainIdSchema = import_zod10.z.object({
788
+ chainId: import_zod10.z.number().positive()
789
+ });
790
+ var chainSuccessResponseSchema = import_zod10.z.object({
791
+ success: import_zod10.z.boolean(),
792
+ chainId: import_zod10.z.number().optional()
793
+ });
794
+
795
+ // src/api/schemas/config.ts
796
+ var import_zod11 = require("zod");
797
+ var getDelegateAddressSchema = import_zod11.z.object({
798
+ chainId: import_zod11.z.number()
799
+ });
800
+ var getDelegateAddressResponseSchema = import_zod11.z.object({
801
+ otimDelegateAddress: import_zod11.z.string()
802
+ });
803
+ var getConfigTokensRequestParametersSchema = import_zod11.z.object({
804
+ chainId: import_zod11.z.number()
805
+ });
806
+ var getConfigTokensResponseSchema = import_zod11.z.object({
807
+ tokens: import_zod11.z.array(
808
+ import_zod11.z.object({
809
+ symbol: import_zod11.z.any(),
810
+ address: hexStringSchema
811
+ })
812
+ )
813
+ });
814
+ var getConfigChainsResponseSchema = import_zod11.z.unknown();
815
+ var getMaxPriorityFeePerGasEstimateSchema = import_zod11.z.object({
816
+ chainId: import_zod11.z.number()
817
+ });
818
+ var getMaxPriorityFeePerGasEstimateResponseSchema = import_zod11.z.object({
819
+ slowMaxPriorityFeeEstimate: import_zod11.z.number(),
820
+ normalMaxPriorityFeeEstimate: import_zod11.z.number(),
821
+ fastMaxPriorityFeeEstimate: import_zod11.z.number()
822
+ });
823
+
824
+ // src/api/schemas/contacts.ts
825
+ var import_zod12 = require("zod");
826
+ var newContactRequestSchema = import_zod12.z.object({
827
+ address: hexStringSchema,
828
+ name: import_zod12.z.string()
829
+ });
830
+ var getContactsRequestSchema = import_zod12.z.object({
831
+ perPage: numberSchema.optional(),
832
+ page: numberSchema.optional()
833
+ });
834
+ var contactSchema = import_zod12.z.object({
835
+ userId: import_zod12.z.string(),
836
+ address: hexStringSchema,
837
+ name: import_zod12.z.string(),
838
+ createdAt: import_zod12.z.string(),
839
+ updatedAt: import_zod12.z.string()
840
+ });
841
+ var getContactsResponseSchema = import_zod12.z.array(contactSchema);
842
+
843
+ // src/api/schemas/instruction.ts
844
+ var import_zod13 = require("zod");
845
+ var feeSchema = import_zod13.z.object({
846
+ executionFee: hexStringSchema,
847
+ maxBaseFeePerGas: hexStringSchema,
848
+ maxPriorityFeePerGas: hexStringSchema,
849
+ token: hexStringSchema
850
+ });
851
+ var scheduleSchema = import_zod13.z.object({
852
+ startAt: numberSchema,
853
+ startBy: numberSchema,
854
+ interval: numberSchema,
855
+ timeout: numberSchema
856
+ });
857
+ var baseActionArgumentsSchema = import_zod13.z.object({
858
+ target: hexStringSchema,
859
+ fee: feeSchema,
860
+ token: hexStringSchema
861
+ });
862
+ var refuelActionArgumentsSchema = baseActionArgumentsSchema.extend({
863
+ threshold: numberSchema,
864
+ endBalance: numberSchema,
865
+ gasLimit: numberSchema
866
+ });
867
+ var refuelERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
868
+ threshold: numberSchema,
869
+ endBalance: numberSchema,
870
+ gasLimit: numberSchema
871
+ });
872
+ var transferActionArgumentsSchema = baseActionArgumentsSchema.extend({
873
+ value: numberSchema,
874
+ gasLimit: numberSchema,
875
+ schedule: scheduleSchema
876
+ });
877
+ var transferERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
878
+ value: numberSchema,
879
+ gasLimit: numberSchema,
880
+ schedule: scheduleSchema
881
+ });
882
+ var sweepDepositAccountActionArgumentsSchema = baseActionArgumentsSchema.extend({
883
+ threshold: numberSchema,
884
+ recipient: hexStringSchema,
885
+ depositorAddress: hexStringSchema
886
+ });
887
+ var sweepDepositAccountERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
888
+ threshold: numberSchema,
889
+ recipient: hexStringSchema,
890
+ depositorAddress: hexStringSchema
891
+ });
892
+ var uniswapV3ExactInputActionArgumentsSchema = import_zod13.z.object({
893
+ tokenIn: hexStringSchema,
894
+ tokenOut: hexStringSchema,
895
+ amountIn: numberSchema,
896
+ floorAmountOut: numberSchema,
897
+ feeTier: import_zod13.z.string(),
898
+ recipient: hexStringSchema,
899
+ meanPriceLookBack: numberSchema,
900
+ maxPriceDeviationBps: numberSchema,
901
+ fee: feeSchema,
902
+ schedule: scheduleSchema
903
+ });
904
+ var deactivateInstructionActionArgumentsSchema = import_zod13.z.object({
905
+ instructionId: hexStringSchema,
906
+ fee: feeSchema
907
+ });
908
+ var actionArgumentsSchema = import_zod13.z.union([
909
+ refuelActionArgumentsSchema,
910
+ refuelERC20ActionArgumentsSchema,
911
+ transferActionArgumentsSchema,
912
+ transferERC20ActionArgumentsSchema,
913
+ sweepDepositAccountActionArgumentsSchema,
914
+ sweepDepositAccountERC20ActionArgumentsSchema,
915
+ uniswapV3ExactInputActionArgumentsSchema,
916
+ deactivateInstructionActionArgumentsSchema
917
+ ]);
918
+ var feeResponseSchema = import_zod13.z.object({
919
+ token: hexStringSchema,
920
+ executionFee: hexStringSchema,
921
+ maxBaseFeePerGas: hexStringSchema,
922
+ maxPriorityFeePerGas: hexStringSchema
923
+ });
924
+ var scheduleResponseSchema = import_zod13.z.object({
925
+ startAt: hexStringSchema,
926
+ startBy: hexStringSchema,
927
+ interval: hexStringSchema,
928
+ timeout: hexStringSchema
929
+ });
930
+ var refuelActionResponseSchema = import_zod13.z.object({
931
+ target: hexStringSchema,
932
+ threshold: hexStringSchema,
933
+ endBalance: hexStringSchema,
934
+ gasLimit: hexStringSchema,
935
+ fee: feeResponseSchema
936
+ });
937
+ var transferActionResponseSchema = import_zod13.z.object({
938
+ target: hexStringSchema,
939
+ value: hexStringSchema,
940
+ gasLimit: hexStringSchema,
941
+ schedule: scheduleResponseSchema,
942
+ fee: feeResponseSchema
943
+ });
944
+ var refuelERC20ActionResponseSchema = import_zod13.z.object({
945
+ token: hexStringSchema,
946
+ target: hexStringSchema,
947
+ threshold: hexStringSchema,
948
+ endBalance: hexStringSchema,
949
+ fee: feeResponseSchema
950
+ });
951
+ var transferERC20ActionResponseSchema = import_zod13.z.object({
952
+ token: hexStringSchema,
953
+ target: hexStringSchema,
954
+ value: hexStringSchema,
955
+ schedule: scheduleResponseSchema,
956
+ fee: feeResponseSchema
957
+ });
958
+ var actionArgumentsResponseSchema = import_zod13.z.union([
959
+ refuelActionResponseSchema,
960
+ transferActionResponseSchema,
961
+ refuelERC20ActionResponseSchema,
962
+ transferERC20ActionResponseSchema
963
+ ]);
964
+ var instructionBuildSchema = import_zod13.z.object({
965
+ action: hexStringSchema,
966
+ arguments: hexStringSchema,
967
+ maxExecutions: hexStringSchema,
968
+ salt: hexStringSchema,
969
+ nickname: import_zod13.z.string().nullish()
970
+ });
971
+ var instructionGetAllRequestSchema = import_zod13.z.object({
972
+ address: hexStringSchema,
973
+ chainId: import_zod13.z.number(),
974
+ page: import_zod13.z.number().optional(),
975
+ perPage: import_zod13.z.number().optional()
976
+ });
977
+ var instructionGetAllResponseSchema = import_zod13.z.array(instructionSchema);
978
+ var instructionBuildRequestSchema = import_zod13.z.object({
979
+ address: hexStringSchema,
980
+ chainId: import_zod13.z.number(),
981
+ salt: import_zod13.z.number(),
982
+ maxExecutions: import_zod13.z.number(),
983
+ actionArguments: import_zod13.z.record(import_zod13.z.string(), actionArgumentsSchema).refine(
984
+ (args) => {
985
+ const keys = Object.keys(args);
986
+ return keys.length === 1 && instructionActionValues.includes(
987
+ keys[0]
988
+ );
989
+ },
990
+ {
991
+ message: "actionArguments must contain exactly one valid instruction action"
992
+ }
993
+ )
994
+ });
995
+ var instructionActivateRequestSchema = import_zod13.z.object({
996
+ nickname: import_zod13.z.string().optional(),
997
+ address: hexStringSchema,
998
+ chainId: import_zod13.z.number(),
999
+ salt: hexStringSchema,
1000
+ maxExecutions: hexStringSchema,
1001
+ action: hexStringSchema,
1002
+ arguments: hexStringSchema,
1003
+ activationSignature: eip2098SignatureSchema
1004
+ });
1005
+ var instructionActivateResponseSchema = import_zod13.z.object({
1006
+ instructionId: hexStringSchema
1007
+ });
1008
+ var instructionDeactivateRequestSchema = import_zod13.z.object({
1009
+ address: hexStringSchema,
1010
+ chainId: import_zod13.z.number(),
1011
+ deactivation: import_zod13.z.object({
1012
+ instructionId: hexStringSchema
1013
+ }),
1014
+ deactivationSignature: eip2098SignatureSchema
1015
+ });
1016
+ var instructionDeactivateResponseSchema = import_zod13.z.unknown();
1017
+ var instructionDetailsRequestSchema = import_zod13.z.object({
1018
+ address: hexStringSchema,
1019
+ instructionId: hexStringSchema,
1020
+ chainId: import_zod13.z.number()
1021
+ });
1022
+ var instructionDetailsResponseSchema = import_zod13.z.object({
1023
+ action: hexStringSchema,
1024
+ actionArguments: import_zod13.z.any(),
1025
+ actionName: import_zod13.z.string().nullish(),
1026
+ salt: hexStringSchema,
1027
+ maxExecutions: hexStringSchema,
1028
+ nickname: import_zod13.z.string().nullish(),
1029
+ lastErrorCode: import_zod13.z.number().int(),
1030
+ lastErrorMessage: import_zod13.z.string().nullish()
1031
+ });
1032
+ var instructionGetRulesRequestSchema = import_zod13.z.object({
1033
+ chainId: import_zod13.z.number(),
1034
+ page: import_zod13.z.number().optional(),
1035
+ perPage: import_zod13.z.number().optional()
1036
+ });
1037
+ var instructionGetRulesResponseSchema = import_zod13.z.array(
1038
+ instructionSchema
1039
+ );
1040
+
1041
+ // src/api/schemas/integration.ts
1042
+ var import_zod14 = require("zod");
1043
+ var IntegrationType = {
1044
+ Bank: "Bank",
1045
+ Clio: "Clio",
1046
+ Stripe: "Stripe",
1047
+ QuickBooks: "QuickBooks",
1048
+ Bill: "Bill",
1049
+ Zoho: "Zoho"
1050
+ };
1051
+ var integrationTypeValues = [
1052
+ IntegrationType.Bank,
1053
+ IntegrationType.Clio,
1054
+ IntegrationType.Stripe,
1055
+ IntegrationType.QuickBooks,
1056
+ IntegrationType.Bill,
1057
+ IntegrationType.Zoho
1058
+ ];
1059
+ var quickBooksDetailsSchema = import_zod14.z.object({
1060
+ accessToken: import_zod14.z.string().optional(),
1061
+ refreshToken: import_zod14.z.string().optional(),
1062
+ realmId: import_zod14.z.string().optional(),
1063
+ tokenType: import_zod14.z.string().optional(),
1064
+ expiresIn: import_zod14.z.number().optional(),
1065
+ xRefreshTokenExpiresIn: import_zod14.z.number().optional()
1066
+ });
1067
+ var stripeTokensSchema = import_zod14.z.object({
1068
+ accessToken: import_zod14.z.string(),
1069
+ refreshToken: import_zod14.z.string().optional()
1070
+ });
1071
+ var stripeDetailsSchema = import_zod14.z.object({
1072
+ clientId: import_zod14.z.string().optional(),
1073
+ clientSecret: import_zod14.z.string().optional(),
1074
+ tokens: stripeTokensSchema.optional()
1075
+ });
1076
+ var billcomDetailsSchema = import_zod14.z.object({
1077
+ devKey: import_zod14.z.string().optional(),
1078
+ sessionId: import_zod14.z.string().optional(),
1079
+ orgId: import_zod14.z.string().optional(),
1080
+ rememberMeId: import_zod14.z.string().optional()
1081
+ });
1082
+ var liquidationAddressSchema = import_zod14.z.object({
1083
+ liquidationAddressId: import_zod14.z.string(),
1084
+ address: import_zod14.z.string(),
1085
+ chain: import_zod14.z.string(),
1086
+ currency: import_zod14.z.string(),
1087
+ blockchainMemo: import_zod14.z.string().optional()
1088
+ });
1089
+ var plaidAccountSchema = import_zod14.z.object({
1090
+ accountId: import_zod14.z.string(),
1091
+ name: import_zod14.z.string().optional(),
1092
+ mask: import_zod14.z.string().optional(),
1093
+ subtype: import_zod14.z.string().optional(),
1094
+ externalAccountId: import_zod14.z.string().optional(),
1095
+ liquidationAddress: liquidationAddressSchema.optional()
1096
+ });
1097
+ var plaidConnectionSchema = import_zod14.z.object({
1098
+ accessToken: import_zod14.z.string(),
1099
+ itemId: import_zod14.z.string(),
1100
+ institutionId: import_zod14.z.string().optional(),
1101
+ institutionName: import_zod14.z.string().optional(),
1102
+ accounts: import_zod14.z.array(plaidAccountSchema)
1103
+ });
1104
+ var bridgeConnectionSchema = import_zod14.z.object({
1105
+ customerId: import_zod14.z.string(),
1106
+ kycLinkId: import_zod14.z.string().optional(),
1107
+ kycLink: import_zod14.z.string().optional(),
1108
+ tosLink: import_zod14.z.string().optional(),
1109
+ completedSteps: import_zod14.z.array(import_zod14.z.string()).optional()
1110
+ });
1111
+ var bankDetailsSchema = import_zod14.z.object({
1112
+ plaid: import_zod14.z.array(plaidConnectionSchema).optional(),
1113
+ bridge: import_zod14.z.array(bridgeConnectionSchema).optional()
1114
+ });
1115
+ var integrationTypeSchema = import_zod14.z.enum(integrationTypeValues);
1116
+ var updateIntegrationRequestSchema = import_zod14.z.discriminatedUnion(
1117
+ "integrationType",
1118
+ [
1119
+ import_zod14.z.object({
1120
+ integrationType: import_zod14.z.literal(IntegrationType.QuickBooks),
1121
+ details: quickBooksDetailsSchema
1122
+ }),
1123
+ import_zod14.z.object({
1124
+ integrationType: import_zod14.z.literal(IntegrationType.Bank),
1125
+ details: bankDetailsSchema
1126
+ }),
1127
+ import_zod14.z.object({
1128
+ integrationType: import_zod14.z.literal(IntegrationType.Clio),
1129
+ details: import_zod14.z.unknown()
1130
+ }),
1131
+ import_zod14.z.object({
1132
+ integrationType: import_zod14.z.literal(IntegrationType.Stripe),
1133
+ details: stripeDetailsSchema
1134
+ }),
1135
+ import_zod14.z.object({
1136
+ integrationType: import_zod14.z.literal(IntegrationType.Bill),
1137
+ details: billcomDetailsSchema
1138
+ }),
1139
+ import_zod14.z.object({
1140
+ integrationType: import_zod14.z.literal(IntegrationType.Zoho),
1141
+ details: import_zod14.z.unknown()
1142
+ })
1143
+ ]
1144
+ );
1145
+ var getIntegrationRequestSchema = import_zod14.z.object({
1146
+ integrationType: integrationTypeSchema
1147
+ });
1148
+ var integrationResponseSchema = import_zod14.z.discriminatedUnion(
1149
+ "integrationType",
1150
+ [
1151
+ import_zod14.z.object({
1152
+ integrationType: import_zod14.z.literal(IntegrationType.QuickBooks),
1153
+ details: quickBooksDetailsSchema
1154
+ }),
1155
+ import_zod14.z.object({
1156
+ integrationType: import_zod14.z.literal(IntegrationType.Bank),
1157
+ details: bankDetailsSchema
1158
+ }),
1159
+ import_zod14.z.object({
1160
+ integrationType: import_zod14.z.literal(IntegrationType.Clio),
1161
+ details: import_zod14.z.unknown()
1162
+ }),
1163
+ import_zod14.z.object({
1164
+ integrationType: import_zod14.z.literal(IntegrationType.Stripe),
1165
+ details: stripeDetailsSchema
1166
+ }),
1167
+ import_zod14.z.object({
1168
+ integrationType: import_zod14.z.literal(IntegrationType.Bill),
1169
+ details: billcomDetailsSchema
1170
+ }),
1171
+ import_zod14.z.object({
1172
+ integrationType: import_zod14.z.literal(IntegrationType.Zoho),
1173
+ details: import_zod14.z.unknown()
1174
+ })
1175
+ ]
1176
+ );
1177
+
1178
+ // src/api/schemas/operating-account.ts
1179
+ var import_zod15 = require("zod");
1180
+ var newOperatingAccountSubOrgResponseSchema = import_zod15.z.object({
1181
+ subOrganizationId: import_zod15.z.string(),
1182
+ endUserId: import_zod15.z.string()
1183
+ });
1184
+ var getOperatingAccountSubOrgResponseSchema = import_zod15.z.object({
1185
+ subOrganizationId: import_zod15.z.string()
1186
+ });
1187
+
1188
+ // src/api/schemas/payments.ts
1189
+ var import_zod16 = require("zod");
1190
+ var paymentRequestsDirectionSchema = import_zod16.z.enum(["from", "to"]);
1191
+ var getPaymentRequestsRequestSchema = import_zod16.z.object({
1192
+ direction: paymentRequestsDirectionSchema,
1193
+ statuses: import_zod16.z.array(import_zod16.z.enum(["pending", "inProgress", "paid", "cancelled", "draft"])).optional(),
1194
+ perPage: numberSchema.optional(),
1195
+ page: numberSchema.optional()
1196
+ });
1197
+ var paymentRequestStatusSchema = import_zod16.z.enum([
1198
+ "pending",
1199
+ "inProgress",
1200
+ "paid",
1201
+ "cancelled",
1202
+ "draft"
1203
+ ]);
1204
+ var paymentRequestSchema = import_zod16.z.object({
1205
+ id: import_zod16.z.string(),
1206
+ fromUserId: import_zod16.z.string(),
1207
+ toUserId: import_zod16.z.string().nullable(),
1208
+ payerAddress: hexStringSchema.nullable(),
1209
+ ephemeralWalletAddress: hexStringSchema,
1210
+ instructions: import_zod16.z.object({
1211
+ ids: import_zod16.z.array(import_zod16.z.string()),
1212
+ completionIds: import_zod16.z.array(import_zod16.z.string())
1213
+ }),
1214
+ metadata: import_zod16.z.record(import_zod16.z.string(), import_zod16.z.unknown()),
1215
+ status: paymentRequestStatusSchema,
1216
+ createdAt: import_zod16.z.string(),
1217
+ updatedAt: import_zod16.z.string()
1218
+ });
1219
+ var getPaymentRequestsResponseSchema = import_zod16.z.array(paymentRequestSchema);
1220
+ var buildEphemeralInstructionSchema = import_zod16.z.object({
1221
+ chainId: import_zod16.z.number(),
1222
+ salt: numberSchema,
1223
+ maxExecutions: numberSchema,
1224
+ actionArguments: import_zod16.z.record(import_zod16.z.string(), import_zod16.z.unknown()),
1225
+ setEphemeralTarget: import_zod16.z.boolean().optional()
1226
+ });
1227
+ var paymentRequestBuildRequestSchema = import_zod16.z.object({
1228
+ payerAddress: hexStringSchema.nullish(),
1229
+ completionInstructions: import_zod16.z.array(buildEphemeralInstructionSchema),
1230
+ instructions: import_zod16.z.array(buildEphemeralInstructionSchema),
1231
+ metadata: import_zod16.z.record(import_zod16.z.string(), import_zod16.z.unknown()).optional().default({})
1232
+ });
1233
+ var feeResponseSchema2 = import_zod16.z.object({
1234
+ token: hexStringSchema,
1235
+ executionFee: hexStringSchema,
1236
+ maxBaseFeePerGas: hexStringSchema,
1237
+ maxPriorityFeePerGas: hexStringSchema
1238
+ });
1239
+ var buildInstructionResponseSchema = import_zod16.z.object({
1240
+ address: hexStringSchema,
1241
+ chainId: import_zod16.z.number(),
1242
+ salt: hexStringSchema,
1243
+ maxExecutions: hexStringSchema,
1244
+ action: hexStringSchema,
1245
+ arguments: hexStringSchema
1246
+ });
1247
+ var paymentRequestBuildResponseSchema = import_zod16.z.object({
1248
+ requestId: import_zod16.z.string(),
1249
+ subOrgId: import_zod16.z.string(),
1250
+ walletId: import_zod16.z.string(),
1251
+ ephemeralWalletAddress: hexStringSchema,
1252
+ completionInstructions: import_zod16.z.array(buildInstructionResponseSchema),
1253
+ instructions: import_zod16.z.array(buildInstructionResponseSchema)
1254
+ });
1255
+ var newInstructionRequestSchema = import_zod16.z.object({
1256
+ nickname: import_zod16.z.string().optional(),
1257
+ address: hexStringSchema,
1258
+ chainId: import_zod16.z.number(),
1259
+ salt: hexStringSchema,
1260
+ maxExecutions: hexStringSchema,
1261
+ action: hexStringSchema,
1262
+ arguments: hexStringSchema,
1263
+ activationSignature: eip2098SignatureSchema
1264
+ });
1265
+ var paymentRequestNewRequestSchema = import_zod16.z.object({
1266
+ requestId: import_zod16.z.string(),
1267
+ signedAuthorization: import_zod16.z.string(),
1268
+ completionInstructions: import_zod16.z.array(newInstructionRequestSchema),
1269
+ instructions: import_zod16.z.array(newInstructionRequestSchema)
1270
+ });
1271
+ var paymentRequestDetailsRequestSchema = import_zod16.z.object({
1272
+ requestId: import_zod16.z.string()
1273
+ });
1274
+ var paymentRequestDetailsResponseSchema = import_zod16.z.object({
1275
+ requestId: import_zod16.z.string(),
1276
+ ephemeralWalletAddress: hexStringSchema,
1277
+ ephemeralWalletId: import_zod16.z.string().optional(),
1278
+ status: import_zod16.z.enum(["pending", "inProgress", "paid", "cancelled", "draft"]),
1279
+ metadata: import_zod16.z.record(import_zod16.z.string(), import_zod16.z.unknown())
1280
+ });
1281
+
1282
+ // src/api/schemas/transaction.ts
1283
+ var import_zod17 = require("zod");
1284
+ var transactionGetListRequestSchema = import_zod17.z.object({
1285
+ address: hexStringSchema,
1286
+ chainId: import_zod17.z.number(),
1287
+ instructionIds: import_zod17.z.array(import_zod17.z.string()).optional(),
1288
+ from: import_zod17.z.string().optional(),
1289
+ to: import_zod17.z.string().optional(),
1290
+ page: import_zod17.z.number().optional(),
1291
+ perPage: import_zod17.z.number().optional(),
1292
+ sort: import_zod17.z.enum(sortValues).optional()
1293
+ });
1294
+ var transactionGetListResponseSchema = import_zod17.z.array(transactionSchema);
1295
+
1296
+ // src/env.ts
1297
+ var BUILD_MODE = "development";
1298
+
1299
+ // src/helpers/logger.ts
1300
+ var Logger = class {
1301
+ constructor() {
1302
+ __publicField(this, "isDevelopment", BUILD_MODE === "development");
1303
+ }
1304
+ debug(message, options) {
1305
+ if (this.isDevelopment) {
1306
+ this.log("debug", message, options);
1307
+ }
1308
+ }
1309
+ info(message, options) {
1310
+ this.log("info", message, options);
1311
+ }
1312
+ warn(message, options) {
1313
+ this.log("warn", message, options);
1314
+ }
1315
+ error(message, options) {
1316
+ this.log("error", message, options);
1317
+ }
1318
+ /**
1319
+ * Log errors with context - useful for non-API errors
1320
+ * For API errors, use the existing getErrorMessage from @otim/utils/api
1321
+ */
1322
+ logError(error, options = {}) {
1323
+ const { context, operation, metadata } = options;
1324
+ const prefix = this.buildPrefix(context, operation);
1325
+ let message = "Unknown error";
1326
+ if (error instanceof Error) {
1327
+ message = error.message;
1328
+ } else if (typeof error === "string") {
1329
+ message = error;
1330
+ } else if (error && typeof error === "object" && "message" in error) {
1331
+ message = String(error.message);
1332
+ }
1333
+ console.error(prefix ? `${prefix} ${message}` : message);
1334
+ if (metadata && Object.keys(metadata).length > 0) {
1335
+ console.error("Context:", metadata);
1336
+ }
1337
+ if (error instanceof Error && error.stack) {
1338
+ console.error("Stack:", error.stack);
1339
+ } else {
1340
+ console.error("Error details:", error);
1341
+ }
1342
+ }
1343
+ buildPrefix(context, operation) {
1344
+ const parts = [];
1345
+ if (context) parts.push(`[${context}]`);
1346
+ if (operation) parts.push(`[${operation}]`);
1347
+ return parts.join(" ");
1348
+ }
1349
+ log(level, message, options) {
1350
+ const prefix = options?.context ? `[${options.context}]` : "";
1351
+ const fullMessage = `${prefix} ${message}`.trim();
1352
+ switch (level) {
1353
+ case "debug":
1354
+ case "info":
1355
+ console.log(fullMessage);
1356
+ break;
1357
+ case "warn":
1358
+ console.warn(fullMessage);
1359
+ break;
1360
+ case "error":
1361
+ console.error(fullMessage);
1362
+ break;
1363
+ }
1364
+ if (options?.data) {
1365
+ console.dir(options.data, { depth: null });
1366
+ }
1367
+ }
1368
+ };
1369
+ var logger = new Logger();
1370
+
1371
+ // src/helpers/zod.ts
1372
+ var import_zod18 = require("zod");
1373
+ var parseSchema = (values, schema) => {
1374
+ const inputValues = schema.safeParse(values);
1375
+ if (!inputValues.success) {
1376
+ throw new Error(
1377
+ `parseSchema: invalid input values ${JSON.stringify(inputValues.error)}`
1378
+ );
1379
+ }
1380
+ return inputValues.data;
1381
+ };
1382
+
1383
+ // src/api/utils/pagination.ts
1384
+ function calculateHasMore(items, requestedPageSize) {
1385
+ return items.length >= requestedPageSize;
1386
+ }
1387
+ function extractPaginationParams(request) {
1388
+ const { page, perPage, ...restParams } = request;
1389
+ return {
1390
+ paginationParams: { page, perPage },
1391
+ restParams
1392
+ };
1393
+ }
1394
+ function getDefaultPagination() {
1395
+ return {
1396
+ page: 0,
1397
+ perPage: 100
1398
+ };
1399
+ }
1400
+
1401
+ // src/api/services/base.ts
1402
+ var BaseService = class {
1403
+ constructor(instance) {
1404
+ this.instance = instance;
1405
+ }
1406
+ async makeRequest({
1407
+ url,
1408
+ method = HttpMethod.Get,
1409
+ data,
1410
+ schema,
1411
+ validateResponse,
1412
+ ...config
1413
+ }) {
1414
+ try {
1415
+ const res = await this.instance.request({ url, method, data, ...config });
1416
+ if (validateResponse && !validateResponse(res.data)) {
1417
+ throw new ServiceError("Invalid response format", "INVALID_RESPONSE");
1418
+ }
1419
+ const parsedData = schema ? parseSchema(res.data, schema) : res.data;
1420
+ return { data: parsedData };
1421
+ } catch (error) {
1422
+ if (error instanceof ServiceError) {
1423
+ throw error;
1424
+ }
1425
+ let errorMessage = "Unknown error";
1426
+ let errorCode;
1427
+ if (error && typeof error === "object" && "response" in error) {
1428
+ const axiosError = error;
1429
+ const responseData = axiosError.response?.data;
1430
+ errorMessage = responseData?.errorMessage || responseData?.message || errorMessage;
1431
+ errorCode = responseData?.errorCode;
1432
+ } else if (error instanceof Error) {
1433
+ errorMessage = error.message;
1434
+ }
1435
+ throw new ServiceError(errorMessage, errorCode || "REQUEST_FAILED");
1436
+ }
1437
+ }
1438
+ async makePaginatedRequest({
1439
+ url,
1440
+ method = HttpMethod.Get,
1441
+ data,
1442
+ schema,
1443
+ validateResponse,
1444
+ ...config
1445
+ }) {
1446
+ const { paginationParams, restParams } = extractPaginationParams(
1447
+ data || {}
1448
+ );
1449
+ const { page, perPage } = {
1450
+ ...getDefaultPagination(),
1451
+ ...paginationParams
1452
+ };
1453
+ const requestData = { ...restParams, page, perPage };
1454
+ const response = await this.makeRequest({
1455
+ url,
1456
+ method,
1457
+ data: requestData,
1458
+ schema,
1459
+ validateResponse,
1460
+ ...config
1461
+ });
1462
+ const hasMore = Array.isArray(response.data) ? calculateHasMore(response.data, perPage) : false;
1463
+ return {
1464
+ data: response.data,
1465
+ hasMore
1466
+ };
1467
+ }
1468
+ };
1469
+
1470
+ // src/api/services/account.ts
1471
+ var AccountService = class extends BaseService {
1472
+ async getDelegationStatus(requestBody) {
1473
+ const res = await this.makeRequest({
1474
+ url: "/delegation/status",
1475
+ method: HttpMethod.Get,
1476
+ data: requestBody,
1477
+ schema: delegationStatusResponseSchema
1478
+ });
1479
+ return res;
1480
+ }
1481
+ async createDelegation(requestBody) {
1482
+ await this.makeRequest({
1483
+ url: "/delegation/new",
1484
+ method: HttpMethod.Post,
1485
+ data: requestBody
1486
+ });
1487
+ return {
1488
+ data: { success: true, message: "Delegation created" }
1489
+ };
1490
+ }
1491
+ };
1492
+
1493
+ // src/api/services/activity.ts
1494
+ var import_zod19 = require("zod");
1495
+ var safeParseActivityArray = (data) => {
1496
+ if (!Array.isArray(data)) {
1497
+ return [];
1498
+ }
1499
+ const validRecords = [];
1500
+ data.forEach((record) => {
1501
+ const result = activityRecordSchema.safeParse(record);
1502
+ if (result.success) {
1503
+ validRecords.push(result.data);
1504
+ }
1505
+ });
1506
+ return validRecords;
1507
+ };
1508
+ var safeActivityArraySchema = import_zod19.z.unknown().transform(safeParseActivityArray);
1509
+ var ActivityService = class extends BaseService {
1510
+ async getInstructionActivity(requestBody) {
1511
+ return this.makePaginatedRequest({
1512
+ url: "/instructions/activity",
1513
+ method: HttpMethod.Get,
1514
+ data: requestBody,
1515
+ schema: safeActivityArraySchema
1516
+ });
1517
+ }
1518
+ };
1519
+
1520
+ // src/api/services/auth.ts
1521
+ var AuthService = class extends BaseService {
1522
+ async login(requestBody) {
1523
+ const res = await this.makeRequest({
1524
+ url: "/auth/login",
1525
+ method: HttpMethod.Post,
1526
+ data: requestBody,
1527
+ schema: authLoginResponseSchema
1528
+ });
1529
+ return res;
1530
+ }
1531
+ async turnkeyVerification(requestBody) {
1532
+ const res = await this.makeRequest({
1533
+ url: "/turnkey/verification",
1534
+ method: HttpMethod.Post,
1535
+ data: requestBody,
1536
+ schema: turnkeyVerificationResponseSchema
1537
+ });
1538
+ return res;
1539
+ }
1540
+ async turnkeyLogin(requestBody) {
1541
+ const res = await this.makeRequest({
1542
+ url: "/turnkey/login",
1543
+ method: HttpMethod.Post,
1544
+ data: requestBody,
1545
+ schema: turnkeyLoginResponseSchema
1546
+ });
1547
+ return res;
1548
+ }
1549
+ async me() {
1550
+ const res = await this.makeRequest({
1551
+ url: "/auth/me",
1552
+ method: HttpMethod.Get,
1553
+ schema: userSchema
1554
+ });
1555
+ return res;
1556
+ }
1557
+ async updatePreferences(preferences) {
1558
+ const res = await this.makeRequest({
1559
+ url: "/user/preferences",
1560
+ method: HttpMethod.Put,
1561
+ data: { preferences }
1562
+ });
1563
+ return res;
1564
+ }
1565
+ };
1566
+
1567
+ // src/api/services/config.ts
1568
+ var ConfigService = class extends BaseService {
1569
+ async getDelegateAddress(requestBody) {
1570
+ const res = await this.makeRequest({
1571
+ url: `/config/delegate/address/${requestBody.chainId}`,
1572
+ method: HttpMethod.Get,
1573
+ schema: getDelegateAddressResponseSchema
1574
+ });
1575
+ return res;
1576
+ }
1577
+ async getConfigTokens({
1578
+ chainId
1579
+ }) {
1580
+ const res = await this.makeRequest({
1581
+ url: `/config/tokens/${chainId}`,
1582
+ method: HttpMethod.Get,
1583
+ schema: getConfigTokensResponseSchema
1584
+ });
1585
+ return res;
1586
+ }
1587
+ async getConfigChains() {
1588
+ const res = await this.makeRequest({
1589
+ url: `/config/chains`,
1590
+ method: HttpMethod.Get,
1591
+ schema: getConfigChainsResponseSchema
1592
+ });
1593
+ return res;
1594
+ }
1595
+ async getMaxPriorityFeePerGasEstimate(requestBody) {
1596
+ const res = await this.makeRequest({
1597
+ url: `/instruction/estimate/max_priority_fee_per_gas/${requestBody.chainId}`,
1598
+ method: HttpMethod.Get,
1599
+ schema: getMaxPriorityFeePerGasEstimateResponseSchema
1600
+ });
1601
+ return res;
1602
+ }
1603
+ };
1604
+
1605
+ // src/api/services/contacts.ts
1606
+ var ContactsService = class extends BaseService {
1607
+ async create(request) {
1608
+ const validated = newContactRequestSchema.parse(request);
1609
+ return this.makeRequest({
1610
+ url: "/contacts",
1611
+ method: HttpMethod.Put,
1612
+ data: validated
1613
+ });
1614
+ }
1615
+ async list(request) {
1616
+ const validated = getContactsRequestSchema.parse(request);
1617
+ return this.makePaginatedRequest({
1618
+ url: "/contacts",
1619
+ method: HttpMethod.Get,
1620
+ data: validated,
1621
+ schema: getContactsResponseSchema
1622
+ });
1623
+ }
1624
+ };
1625
+
1626
+ // src/api/services/developer.ts
1627
+ var DeveloperService = class extends BaseService {
1628
+ async updatePublicKey(developerPublicKey) {
1629
+ return this.makeRequest({
1630
+ url: "/developer/public_key",
1631
+ method: HttpMethod.Put,
1632
+ data: { developerPublicKey }
1633
+ });
1634
+ }
1635
+ async generateApiKey() {
1636
+ return this.makeRequest({
1637
+ url: "/developer/api_key",
1638
+ method: HttpMethod.Post
1639
+ });
1640
+ }
1641
+ };
1642
+
1643
+ // src/api/services/instruction.ts
1644
+ var InstructionService = class extends BaseService {
1645
+ async all(requestBody) {
1646
+ return this.makePaginatedRequest({
1647
+ url: "/instructions/all",
1648
+ method: HttpMethod.Get,
1649
+ data: requestBody,
1650
+ schema: instructionsSchema
1651
+ });
1652
+ }
1653
+ async build(requestBody) {
1654
+ const res = await this.makeRequest({
1655
+ url: "/instruction/build",
1656
+ method: HttpMethod.Post,
1657
+ data: requestBody,
1658
+ schema: instructionBuildSchema
1659
+ });
1660
+ return res;
1661
+ }
1662
+ async activate(requestBody) {
1663
+ const res = await this.makeRequest({
1664
+ url: "/instruction/new",
1665
+ method: HttpMethod.Post,
1666
+ data: requestBody,
1667
+ schema: instructionActivateResponseSchema
1668
+ });
1669
+ return res;
1670
+ }
1671
+ async deactivate(requestBody) {
1672
+ const res = await this.makeRequest({
1673
+ url: "/instruction/deactivate",
1674
+ method: HttpMethod.Post,
1675
+ data: requestBody,
1676
+ schema: instructionDeactivateResponseSchema
1677
+ });
1678
+ return res;
1679
+ }
1680
+ async details(requestBody) {
1681
+ const res = await this.makeRequest({
1682
+ url: "/instruction/details",
1683
+ method: HttpMethod.Get,
1684
+ data: requestBody,
1685
+ schema: instructionDetailsResponseSchema
1686
+ });
1687
+ return res;
1688
+ }
1689
+ async rules(requestBody) {
1690
+ return this.makePaginatedRequest({
1691
+ url: "/instructions/rules",
1692
+ method: HttpMethod.Get,
1693
+ data: requestBody,
1694
+ schema: instructionGetRulesResponseSchema
1695
+ });
1696
+ }
1697
+ };
1698
+
1699
+ // src/api/services/transaction.ts
1700
+ var TransactionService = class extends BaseService {
1701
+ async list(requestBody) {
1702
+ return this.makePaginatedRequest({
1703
+ url: "/transactions",
1704
+ method: HttpMethod.Get,
1705
+ data: requestBody,
1706
+ schema: transactionGetListResponseSchema
1707
+ });
1708
+ }
1709
+ };
1710
+
1711
+ // src/api/services/payments.ts
1712
+ var PaymentsService = class extends BaseService {
1713
+ async getOutgoingPaymentsList(request) {
1714
+ return this.makePaginatedRequest({
1715
+ url: "/api/payments/outgoing",
1716
+ method: HttpMethod.Get,
1717
+ data: request,
1718
+ schema: PaymentsSchema
1719
+ });
1720
+ }
1721
+ async getIncomingPaymentsList(request) {
1722
+ return this.makePaginatedRequest({
1723
+ url: "/api/payments/incoming",
1724
+ method: HttpMethod.Get,
1725
+ data: request,
1726
+ schema: PaymentsSchema
1727
+ });
1728
+ }
1729
+ async buildPaymentRequest(requestBody) {
1730
+ return this.makeRequest({
1731
+ url: "/payment/request/build",
1732
+ method: HttpMethod.Post,
1733
+ data: requestBody,
1734
+ schema: paymentRequestBuildResponseSchema
1735
+ });
1736
+ }
1737
+ async newPaymentRequest(requestBody) {
1738
+ return this.makeRequest({
1739
+ url: "/payment/request/new",
1740
+ method: HttpMethod.Post,
1741
+ data: requestBody,
1742
+ validateResponse: () => true
1743
+ });
1744
+ }
1745
+ async getPaymentRequestDetails(requestBody) {
1746
+ return this.makeRequest({
1747
+ url: "/payment/request/details",
1748
+ method: HttpMethod.Get,
1749
+ data: requestBody,
1750
+ schema: paymentRequestDetailsResponseSchema
1751
+ });
1752
+ }
1753
+ async getPaymentRequests(request) {
1754
+ return this.makePaginatedRequest({
1755
+ url: "/payment/requests",
1756
+ method: HttpMethod.Get,
1757
+ data: request,
1758
+ schema: getPaymentRequestsResponseSchema
1759
+ });
1760
+ }
1761
+ };
1762
+
1763
+ // src/api/services/integration.ts
1764
+ var import_axios2 = __toESM(require("axios"));
1765
+ function createEmptyIntegrationResponse(integrationType) {
1766
+ switch (integrationType) {
1767
+ case IntegrationType.QuickBooks:
1768
+ return { integrationType: IntegrationType.QuickBooks, details: {} };
1769
+ case IntegrationType.Bank:
1770
+ return { integrationType: IntegrationType.Bank, details: {} };
1771
+ case IntegrationType.Clio:
1772
+ return { integrationType: IntegrationType.Clio, details: {} };
1773
+ case IntegrationType.Stripe:
1774
+ return { integrationType: IntegrationType.Stripe, details: {} };
1775
+ case IntegrationType.Bill:
1776
+ return { integrationType: IntegrationType.Bill, details: {} };
1777
+ case IntegrationType.Zoho:
1778
+ return { integrationType: IntegrationType.Zoho, details: {} };
1779
+ default:
1780
+ return { integrationType: IntegrationType.Bank, details: {} };
1781
+ }
1782
+ }
1783
+ var IntegrationService = class extends BaseService {
1784
+ async upsert(request) {
1785
+ return this.makeRequest({
1786
+ url: "/integration",
1787
+ method: HttpMethod.Put,
1788
+ data: request,
1789
+ schema: integrationResponseSchema
1790
+ });
1791
+ }
1792
+ async get(request) {
1793
+ try {
1794
+ return await this.makeRequest(
1795
+ {
1796
+ url: "/integration/get",
1797
+ method: HttpMethod.Post,
1798
+ data: request,
1799
+ schema: integrationResponseSchema
1800
+ }
1801
+ );
1802
+ } catch (error) {
1803
+ if (import_axios2.default.isAxiosError(error) && error.response?.status === 404) {
1804
+ const defaultResponse = createEmptyIntegrationResponse(
1805
+ request.integrationType
1806
+ );
1807
+ return { data: defaultResponse };
1808
+ }
1809
+ throw error;
1810
+ }
1811
+ }
1812
+ };
1813
+
1814
+ // src/api/services/operating-account.ts
1815
+ var OperatingAccountService = class extends BaseService {
1816
+ async createSubOrganization() {
1817
+ const res = await this.makeRequest({
1818
+ url: "/operating_accounts/sub_organization/new",
1819
+ method: HttpMethod.Post,
1820
+ schema: newOperatingAccountSubOrgResponseSchema
1821
+ });
1822
+ return res;
1823
+ }
1824
+ async getSubOrganization() {
1825
+ const res = await this.makeRequest({
1826
+ url: "/operating_accounts/sub_organization",
1827
+ method: HttpMethod.Get,
1828
+ schema: getOperatingAccountSubOrgResponseSchema
1829
+ });
1830
+ return res;
1831
+ }
1832
+ };
1833
+
1834
+ // src/api/services/uniswap-token-list-service.ts
1835
+ var UniswapTokenListService = class extends BaseService {
1836
+ constructor() {
1837
+ super(...arguments);
1838
+ __publicField(this, "UNISWAP_TOKEN_LIST_URL", "https://ipfs.io/ipns/tokens.uniswap.org");
1839
+ __publicField(this, "FALLBACK_URL", "https://tokens.uniswap.org/");
1840
+ __publicField(this, "CACHE_DURATION", 30 * 60 * 1e3);
1841
+ // 30 minutes
1842
+ __publicField(this, "SUPPORTED_CHAIN_IDS", [1, 10, 42161, 8453]);
1843
+ // mainnet, optimism, arbitrum, base
1844
+ __publicField(this, "tokenListCache", null);
1845
+ __publicField(this, "lastFetch", 0);
1846
+ }
1847
+ /**
1848
+ * Get tokens for a specific chain
1849
+ */
1850
+ async getTokensForChain({
1851
+ chainId,
1852
+ limit = 50
1853
+ }) {
1854
+ try {
1855
+ const tokenList = await this.fetchTokenList();
1856
+ if (!this.SUPPORTED_CHAIN_IDS.includes(chainId)) {
1857
+ return {
1858
+ data: {
1859
+ tokens: [],
1860
+ source: "uniswap",
1861
+ timestamp: tokenList.timestamp
1862
+ }
1863
+ };
1864
+ }
1865
+ const chainTokens = tokenList.tokens.filter(
1866
+ (token) => token.chainId === chainId
1867
+ );
1868
+ const filteredTokens = chainTokens.filter((token) => {
1869
+ const suspiciousPatterns = [
1870
+ /test/i,
1871
+ /fake/i,
1872
+ /scam/i,
1873
+ /shit/i,
1874
+ /moon/i,
1875
+ /doge/i,
1876
+ /inu/i,
1877
+ /baby/i,
1878
+ /mini/i,
1879
+ /micro/i,
1880
+ /nano/i,
1881
+ /pico/i,
1882
+ /mega/i,
1883
+ /ultra/i,
1884
+ /super/i,
1885
+ /hyper/i,
1886
+ /meta/i,
1887
+ /safe/i,
1888
+ /new/i,
1889
+ /old/i,
1890
+ /v2/i,
1891
+ /v3/i,
1892
+ /v4/i,
1893
+ /v5/i,
1894
+ /2\.0/i,
1895
+ /3\.0/i,
1896
+ /4\.0/i,
1897
+ /5\.0/i
1898
+ ];
1899
+ const name = token.name?.toLowerCase() || "";
1900
+ const symbol = token.symbol?.toLowerCase() || "";
1901
+ if (suspiciousPatterns.some(
1902
+ (pattern) => pattern.test(name) || pattern.test(symbol)
1903
+ )) {
1904
+ return false;
1905
+ }
1906
+ if (name.length < 2 || name.length > 50) return false;
1907
+ if (symbol.length < 2 || symbol.length > 20) return false;
1908
+ if (!token.name || !token.symbol || !token.address) return false;
1909
+ return true;
1910
+ });
1911
+ const limitedTokens = filteredTokens.slice(0, limit);
1912
+ return {
1913
+ data: {
1914
+ tokens: limitedTokens,
1915
+ source: "uniswap",
1916
+ timestamp: tokenList.timestamp
1917
+ }
1918
+ };
1919
+ } catch (error) {
1920
+ throw new Error(error instanceof Error ? error.message : "Unknown error");
1921
+ }
1922
+ }
1923
+ /**
1924
+ * Get all supported chains from the token list
1925
+ */
1926
+ async getSupportedChains() {
1927
+ try {
1928
+ const tokenList = await this.fetchTokenList();
1929
+ const chainIds = Array.from(
1930
+ new Set(tokenList.tokens.map((token) => token.chainId))
1931
+ ).sort((a, b) => a - b);
1932
+ return {
1933
+ data: chainIds
1934
+ };
1935
+ } catch (error) {
1936
+ throw new Error(error instanceof Error ? error.message : "Unknown error");
1937
+ }
1938
+ }
1939
+ /**
1940
+ * Search for a specific token by address or symbol
1941
+ */
1942
+ async findToken(chainId, query) {
1943
+ try {
1944
+ const tokenList = await this.fetchTokenList();
1945
+ const token = tokenList.tokens.find(
1946
+ (t) => t.chainId === chainId && (t.address.toLowerCase() === query.toLowerCase() || t.symbol.toLowerCase() === query.toLowerCase() || t.name.toLowerCase().includes(query.toLowerCase()))
1947
+ );
1948
+ return {
1949
+ data: token || null
1950
+ };
1951
+ } catch (error) {
1952
+ throw new Error(error instanceof Error ? error.message : "Unknown error");
1953
+ }
1954
+ }
1955
+ /**
1956
+ * Get bridge information for a token
1957
+ */
1958
+ async getBridgeInfo(chainId, tokenAddress) {
1959
+ try {
1960
+ const tokenList = await this.fetchTokenList();
1961
+ const token = tokenList.tokens.find(
1962
+ (t) => t.chainId === chainId && t.address.toLowerCase() === tokenAddress.toLowerCase()
1963
+ );
1964
+ if (!token || !token.extensions?.bridgeInfo) {
1965
+ return {
1966
+ data: {}
1967
+ };
1968
+ }
1969
+ const bridgeInfo = {};
1970
+ for (const [targetChainId, info] of Object.entries(
1971
+ token.extensions.bridgeInfo
1972
+ )) {
1973
+ bridgeInfo[targetChainId] = info.tokenAddress;
1974
+ }
1975
+ return {
1976
+ data: bridgeInfo
1977
+ };
1978
+ } catch (error) {
1979
+ throw new Error(error instanceof Error ? error.message : "Unknown error");
1980
+ }
1981
+ }
1982
+ /**
1983
+ * Fetch the Uniswap token list
1984
+ */
1985
+ async fetchTokenList() {
1986
+ const now = Date.now();
1987
+ if (this.tokenListCache && now - this.lastFetch < this.CACHE_DURATION) {
1988
+ return this.tokenListCache;
1989
+ }
1990
+ try {
1991
+ const response = await fetch(this.UNISWAP_TOKEN_LIST_URL, {
1992
+ headers: {
1993
+ Accept: "application/json"
1994
+ }
1995
+ });
1996
+ if (!response.ok) {
1997
+ throw new Error(`IPFS fetch failed: ${response.status}`);
1998
+ }
1999
+ const data = await response.json();
2000
+ this.tokenListCache = data;
2001
+ this.lastFetch = now;
2002
+ return data;
2003
+ } catch (error) {
2004
+ logger.logError(error, {
2005
+ context: this.fetchTokenList.name
2006
+ });
2007
+ try {
2008
+ const response = await fetch(this.FALLBACK_URL, {
2009
+ headers: {
2010
+ Accept: "application/json"
2011
+ }
2012
+ });
2013
+ if (!response.ok) {
2014
+ throw new Error(`Fallback fetch failed: ${response.status}`);
2015
+ }
2016
+ const data = await response.json();
2017
+ this.tokenListCache = data;
2018
+ this.lastFetch = now;
2019
+ return data;
2020
+ } catch (fallbackError) {
2021
+ logger.logError(fallbackError, {
2022
+ context: this.fetchTokenList.name
2023
+ });
2024
+ throw new Error("Unable to fetch Uniswap token list");
2025
+ }
2026
+ }
2027
+ }
2028
+ };
2029
+
2030
+ // src/api/api.ts
2031
+ var APIClient = class {
2032
+ constructor(init) {
2033
+ __publicField(this, "account");
2034
+ __publicField(this, "activity");
2035
+ __publicField(this, "auth");
2036
+ __publicField(this, "operatingAccount");
2037
+ __publicField(this, "config");
2038
+ __publicField(this, "contacts");
2039
+ __publicField(this, "developer");
2040
+ __publicField(this, "instruction");
2041
+ __publicField(this, "transaction");
2042
+ __publicField(this, "payments");
2043
+ __publicField(this, "integration");
2044
+ const instance = isInstanceInit(init) ? init.instance : createInstance(init);
2045
+ this.account = new AccountService(instance);
2046
+ this.activity = new ActivityService(instance);
2047
+ this.auth = new AuthService(instance);
2048
+ this.config = new ConfigService(instance);
2049
+ this.contacts = new ContactsService(instance);
2050
+ this.developer = new DeveloperService(instance);
2051
+ this.instruction = new InstructionService(instance);
2052
+ this.integration = new IntegrationService(instance);
2053
+ this.transaction = new TransactionService(instance);
2054
+ this.operatingAccount = new OperatingAccountService(instance);
2055
+ this.payments = new PaymentsService(instance);
2056
+ }
2057
+ };
2058
+ var createAPIClient = (...params) => {
2059
+ return new APIClient(...params);
2060
+ };
2061
+ //# sourceMappingURL=index.js.map