0xtrails 0.13.0 → 0.13.2

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 (307) hide show
  1. package/dist/{ccip-Cg9-lJ6K.js → ccip-CT_An6eM.js} +39 -39
  2. package/dist/chains.d.ts +4 -3
  3. package/dist/chains.d.ts.map +1 -1
  4. package/dist/constants.d.ts +1 -0
  5. package/dist/constants.d.ts.map +1 -1
  6. package/dist/customTokens.d.ts.map +1 -1
  7. package/dist/error.d.ts +1 -0
  8. package/dist/error.d.ts.map +1 -1
  9. package/dist/gasless.d.ts +1 -2
  10. package/dist/gasless.d.ts.map +1 -1
  11. package/dist/{index-DEojZg7b.js → index-RfqL5Foz.js} +56672 -43550
  12. package/dist/index.d.ts +5 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +385 -333
  15. package/dist/intents.d.ts +8 -2
  16. package/dist/intents.d.ts.map +1 -1
  17. package/dist/keyMachineClient.d.ts +9 -0
  18. package/dist/keyMachineClient.d.ts.map +1 -0
  19. package/dist/keymachine/index.d.ts +14 -0
  20. package/dist/keymachine/index.d.ts.map +1 -0
  21. package/dist/keymachine/key-machine.gen.d.ts +461 -0
  22. package/dist/keymachine/key-machine.gen.d.ts.map +1 -0
  23. package/dist/onramp/MeshConnectFlow.d.ts +18 -0
  24. package/dist/onramp/MeshConnectFlow.d.ts.map +1 -0
  25. package/dist/onramp/MeshConnectIframe.d.ts +13 -0
  26. package/dist/onramp/MeshConnectIframe.d.ts.map +1 -0
  27. package/dist/onramp/SendFromExchangeButton.d.ts +16 -0
  28. package/dist/onramp/SendFromExchangeButton.d.ts.map +1 -0
  29. package/dist/onramp/TrailsOnRampProvider.d.ts +31 -0
  30. package/dist/onramp/TrailsOnRampProvider.d.ts.map +1 -0
  31. package/dist/onramp/index.d.ts +13 -0
  32. package/dist/onramp/index.d.ts.map +1 -0
  33. package/dist/onramp/meshconnect.d.ts +30 -0
  34. package/dist/onramp/meshconnect.d.ts.map +1 -0
  35. package/dist/onramp/trailsOnramp.d.ts +24 -0
  36. package/dist/onramp/trailsOnramp.d.ts.map +1 -0
  37. package/dist/onramp-client/index.d.ts +3 -3
  38. package/dist/onramp-client/index.d.ts.map +1 -1
  39. package/dist/paymasterSend.d.ts.map +1 -1
  40. package/dist/prepareSend.d.ts.map +1 -1
  41. package/dist/query/balance.fetchers.d.ts +31 -2
  42. package/dist/query/balance.fetchers.d.ts.map +1 -1
  43. package/dist/query/balance.hooks.d.ts +21 -2
  44. package/dist/query/balance.hooks.d.ts.map +1 -1
  45. package/dist/query/balance.queries.d.ts +18 -1
  46. package/dist/query/balance.queries.d.ts.map +1 -1
  47. package/dist/query/chains.queries.d.ts.map +1 -1
  48. package/dist/query/meld.fetchers.d.ts +1 -1
  49. package/dist/query/meld.fetchers.d.ts.map +1 -1
  50. package/dist/query/meld.hooks.d.ts +3 -3
  51. package/dist/query/meld.hooks.d.ts.map +1 -1
  52. package/dist/query/meld.queries.d.ts +1 -1
  53. package/dist/query/meld.queries.d.ts.map +1 -1
  54. package/dist/query/price.fetchers.d.ts +15 -0
  55. package/dist/query/price.fetchers.d.ts.map +1 -0
  56. package/dist/query/price.hooks.d.ts +352 -0
  57. package/dist/query/price.hooks.d.ts.map +1 -0
  58. package/dist/query/price.queries.d.ts +34 -0
  59. package/dist/query/price.queries.d.ts.map +1 -0
  60. package/dist/query/tokenList.queries.d.ts +54 -0
  61. package/dist/query/tokenList.queries.d.ts.map +1 -0
  62. package/dist/recover.d.ts +6 -4
  63. package/dist/recover.d.ts.map +1 -1
  64. package/dist/tokens.d.ts +13 -0
  65. package/dist/tokens.d.ts.map +1 -1
  66. package/dist/transactionIntent/deposits/depositOrchestrator.d.ts +2 -2
  67. package/dist/transactionIntent/deposits/depositOrchestrator.d.ts.map +1 -1
  68. package/dist/transactionIntent/deposits/gaslessDeposit.d.ts +2 -2
  69. package/dist/transactionIntent/deposits/gaslessDeposit.d.ts.map +1 -1
  70. package/dist/transactionIntent/deposits/standardDeposit.d.ts +1 -1
  71. package/dist/transactionIntent/deposits/standardDeposit.d.ts.map +1 -1
  72. package/dist/transactionIntent/handlers/intentHandler.d.ts.map +1 -1
  73. package/dist/transactionIntent/helpers/transactionStateHelpers.d.ts.map +1 -1
  74. package/dist/transactionIntent/quote/normalizeQuote.d.ts.map +1 -1
  75. package/dist/transactionIntent/types.d.ts +1 -1
  76. package/dist/transactionIntent/types.d.ts.map +1 -1
  77. package/dist/transactions.d.ts +4 -0
  78. package/dist/transactions.d.ts.map +1 -1
  79. package/dist/umd/trails.min.js +291 -202
  80. package/dist/utils/format.d.ts +7 -0
  81. package/dist/utils/format.d.ts.map +1 -1
  82. package/dist/walletUtils.d.ts +2 -1
  83. package/dist/walletUtils.d.ts.map +1 -1
  84. package/dist/wallets.d.ts +13 -54
  85. package/dist/wallets.d.ts.map +1 -1
  86. package/dist/widget/components/AccountIntentTransactionHistory.d.ts.map +1 -1
  87. package/dist/widget/components/ClassicSwap.d.ts.map +1 -1
  88. package/dist/widget/components/ConnectWallet.d.ts.map +1 -1
  89. package/dist/widget/components/ConnectedWallets.d.ts.map +1 -1
  90. package/dist/widget/components/DirectTransfer.d.ts +1 -1
  91. package/dist/widget/components/DirectTransfer.d.ts.map +1 -1
  92. package/dist/widget/components/EarnPools.d.ts.map +1 -1
  93. package/dist/widget/components/ExecutionStatusBadge.d.ts.map +1 -1
  94. package/dist/widget/components/Fund.d.ts.map +1 -1
  95. package/dist/widget/components/FundMethods.d.ts.map +1 -1
  96. package/dist/widget/components/HighPriceImpactBlock.d.ts +7 -0
  97. package/dist/widget/components/HighPriceImpactBlock.d.ts.map +1 -0
  98. package/dist/widget/components/MeldHistory.d.ts.map +1 -1
  99. package/dist/widget/components/MeshExchangeSelection.d.ts +11 -0
  100. package/dist/widget/components/MeshExchangeSelection.d.ts.map +1 -0
  101. package/dist/widget/components/OnrampHistoryRow.d.ts +1 -1
  102. package/dist/widget/components/OnrampHistoryRow.d.ts.map +1 -1
  103. package/dist/widget/components/OnrampProviderConfirmation.d.ts.map +1 -1
  104. package/dist/widget/components/Pay.d.ts.map +1 -1
  105. package/dist/widget/components/PoolDeposit.d.ts.map +1 -1
  106. package/dist/widget/components/PoolWithdraw.d.ts.map +1 -1
  107. package/dist/widget/components/QRCodeWalletSelect.d.ts +1 -1
  108. package/dist/widget/components/QRCodeWalletSelect.d.ts.map +1 -1
  109. package/dist/widget/components/QuoteDetails.d.ts.map +1 -1
  110. package/dist/widget/components/Receipt.d.ts.map +1 -1
  111. package/dist/widget/components/Recipients.d.ts.map +1 -1
  112. package/dist/widget/components/RefundWarning.d.ts.map +1 -1
  113. package/dist/widget/components/TokenSelector.d.ts.map +1 -1
  114. package/dist/widget/components/TransactionDetails.d.ts.map +1 -1
  115. package/dist/widget/components/TransactionHistoryItem.d.ts +2 -0
  116. package/dist/widget/components/TransactionHistoryItem.d.ts.map +1 -1
  117. package/dist/widget/components/TransferPendingVertical.d.ts +1 -0
  118. package/dist/widget/components/TransferPendingVertical.d.ts.map +1 -1
  119. package/dist/widget/components/WaasFeeOptions.d.ts.map +1 -1
  120. package/dist/widget/components/WalletConnect.d.ts.map +1 -1
  121. package/dist/widget/components/WalletImage.d.ts.map +1 -1
  122. package/dist/widget/components/WalletList.d.ts.map +1 -1
  123. package/dist/widget/components/Withdraw.d.ts.map +1 -1
  124. package/dist/widget/css/compiled.css +1 -1
  125. package/dist/widget/hooks/useAddressWalletIcon.d.ts.map +1 -1
  126. package/dist/widget/hooks/useCombinedHistory.d.ts +6 -5
  127. package/dist/widget/hooks/useCombinedHistory.d.ts.map +1 -1
  128. package/dist/widget/hooks/useCustomTokenSearch.d.ts +6 -1
  129. package/dist/widget/hooks/useCustomTokenSearch.d.ts.map +1 -1
  130. package/dist/widget/hooks/useDefaultDestinationToken.d.ts.map +1 -1
  131. package/dist/widget/hooks/useDefaultOriginToken.d.ts.map +1 -1
  132. package/dist/widget/hooks/useFiatOnRampCurrencies.d.ts +1 -1
  133. package/dist/widget/hooks/useFiatOnRampCurrencies.d.ts.map +1 -1
  134. package/dist/widget/hooks/useGetIntent.d.ts +3 -2
  135. package/dist/widget/hooks/useGetIntent.d.ts.map +1 -1
  136. package/dist/widget/hooks/useIntentReceiptBalances.d.ts +1 -1
  137. package/dist/widget/hooks/useIntentReceiptBalances.d.ts.map +1 -1
  138. package/dist/widget/hooks/useIntentTransactionHistory.d.ts +3 -2
  139. package/dist/widget/hooks/useIntentTransactionHistory.d.ts.map +1 -1
  140. package/dist/widget/hooks/useMeldTransactionHistory.d.ts +1 -1
  141. package/dist/widget/hooks/useMeldTransactionHistory.d.ts.map +1 -1
  142. package/dist/widget/hooks/useMeldTransactionStatus.d.ts +1 -1
  143. package/dist/widget/hooks/useMeldTransactionStatus.d.ts.map +1 -1
  144. package/dist/widget/hooks/useOnRampQuote.d.ts +1 -1
  145. package/dist/widget/hooks/useOnRampQuote.d.ts.map +1 -1
  146. package/dist/widget/hooks/useOnRampTransactionStatus.d.ts +1 -1
  147. package/dist/widget/hooks/useOnRampTransactionStatus.d.ts.map +1 -1
  148. package/dist/widget/hooks/useQuote.d.ts +2 -2
  149. package/dist/widget/hooks/useQuote.d.ts.map +1 -1
  150. package/dist/widget/hooks/useSelectedFundMethod.d.ts +7 -0
  151. package/dist/widget/hooks/useSelectedFundMethod.d.ts.map +1 -1
  152. package/dist/widget/hooks/useSendForm.d.ts +0 -1
  153. package/dist/widget/hooks/useSendForm.d.ts.map +1 -1
  154. package/dist/widget/hooks/useTokenList.d.ts +7 -1
  155. package/dist/widget/hooks/useTokenList.d.ts.map +1 -1
  156. package/dist/widget/hooks/useViewManager.d.ts +1 -1
  157. package/dist/widget/hooks/useViewManager.d.ts.map +1 -1
  158. package/dist/widget/index.js +1 -1
  159. package/dist/widget/providers/TrailsProvider.d.ts +2 -0
  160. package/dist/widget/providers/TrailsProvider.d.ts.map +1 -1
  161. package/dist/widget/utils/createWagmiConfig.d.ts +2 -2
  162. package/dist/widget/utils/createWagmiConfig.d.ts.map +1 -1
  163. package/dist/widget/utils/fundMethodSwitchState.d.ts +1 -0
  164. package/dist/widget/utils/fundMethodSwitchState.d.ts.map +1 -1
  165. package/dist/widget/utils/historyFilters.d.ts +13 -0
  166. package/dist/widget/utils/historyFilters.d.ts.map +1 -0
  167. package/dist/widget/utils/meldProviderUtils.d.ts +1 -1
  168. package/dist/widget/utils/meldProviderUtils.d.ts.map +1 -1
  169. package/dist/widget/utils/meshSupportedTokens.d.ts +4 -0
  170. package/dist/widget/utils/meshSupportedTokens.d.ts.map +1 -0
  171. package/dist/widget/utils/onrampConfig.d.ts +11 -0
  172. package/dist/widget/utils/onrampConfig.d.ts.map +1 -0
  173. package/dist/widget/utils/statusLabel.d.ts +2 -0
  174. package/dist/widget/utils/statusLabel.d.ts.map +1 -0
  175. package/dist/widget/utils/trailsOnrampConfig.d.ts +18 -0
  176. package/dist/widget/utils/trailsOnrampConfig.d.ts.map +1 -0
  177. package/dist/widget/widget.d.ts +24 -8
  178. package/dist/widget/widget.d.ts.map +1 -1
  179. package/package.json +9 -7
  180. package/src/chains.ts +26 -9
  181. package/src/constants.ts +2 -0
  182. package/src/customTokens.ts +22 -7
  183. package/src/error.ts +7 -0
  184. package/src/gasless.ts +5 -2
  185. package/src/index.ts +8 -5
  186. package/src/intents.ts +56 -60
  187. package/src/keyMachineClient.ts +29 -0
  188. package/src/keymachine/index.ts +175 -0
  189. package/src/keymachine/key-machine.gen.ts +993 -0
  190. package/src/onramp/MeshConnectFlow.tsx +86 -0
  191. package/src/onramp/MeshConnectIframe.tsx +661 -0
  192. package/src/onramp/SendFromExchangeButton.tsx +81 -0
  193. package/src/onramp/TrailsOnRampProvider.tsx +59 -0
  194. package/src/onramp/index.ts +31 -0
  195. package/src/onramp/meshconnect.ts +277 -0
  196. package/src/onramp/trailsOnramp.tsx +130 -0
  197. package/src/onramp-client/index.ts +4 -6
  198. package/src/paymasterSend.ts +0 -5
  199. package/src/prepareSend.ts +45 -44
  200. package/src/query/balance.fetchers.ts +172 -17
  201. package/src/query/balance.hooks.ts +69 -6
  202. package/src/query/balance.queries.ts +63 -0
  203. package/src/query/chains.queries.ts +1 -6
  204. package/src/query/meld.fetchers.ts +1 -1
  205. package/src/query/meld.hooks.ts +1 -1
  206. package/src/query/meld.queries.ts +1 -1
  207. package/src/query/price.fetchers.ts +53 -0
  208. package/src/query/price.hooks.ts +46 -0
  209. package/src/query/price.queries.ts +364 -0
  210. package/src/query/tokenList.queries.ts +118 -0
  211. package/src/recover.ts +89 -26
  212. package/src/tokens.ts +108 -26
  213. package/src/transactionIntent/deposits/depositOrchestrator.ts +11 -11
  214. package/src/transactionIntent/deposits/gaslessDeposit.ts +38 -39
  215. package/src/transactionIntent/deposits/standardDeposit.ts +5 -30
  216. package/src/transactionIntent/handlers/intentHandler.ts +29 -12
  217. package/src/transactionIntent/helpers/transactionStateHelpers.ts +5 -2
  218. package/src/transactionIntent/quote/normalizeQuote.ts +11 -5
  219. package/src/transactionIntent/types.ts +1 -1
  220. package/src/transactions.ts +5 -1
  221. package/src/utils/format.ts +85 -1
  222. package/src/walletUtils.ts +2 -1
  223. package/src/wallets.ts +184 -380
  224. package/src/widget/compiled.css +1 -1
  225. package/src/widget/components/AccountIntentTransactionHistory.tsx +134 -109
  226. package/src/widget/components/ClassicSwap.tsx +26 -24
  227. package/src/widget/components/ConnectWallet.tsx +4 -2
  228. package/src/widget/components/ConnectedWallets.tsx +2 -5
  229. package/src/widget/components/DirectTransfer.tsx +5 -2
  230. package/src/widget/components/EarnPools.tsx +1 -2
  231. package/src/widget/components/ExecutionStatusBadge.tsx +10 -4
  232. package/src/widget/components/Fund.tsx +169 -110
  233. package/src/widget/components/FundMethods.tsx +5 -9
  234. package/src/widget/components/HighPriceImpactBlock.tsx +44 -0
  235. package/src/widget/components/MeldHistory.tsx +4 -28
  236. package/src/widget/components/MeshExchangeSelection.tsx +218 -0
  237. package/src/widget/components/OnrampHistoryRow.tsx +3 -27
  238. package/src/widget/components/OnrampProviderConfirmation.tsx +0 -25
  239. package/src/widget/components/Pay.tsx +20 -36
  240. package/src/widget/components/PoolDeposit.tsx +14 -24
  241. package/src/widget/components/PoolWithdraw.tsx +1 -63
  242. package/src/widget/components/QRCodeWalletSelect.tsx +5 -2
  243. package/src/widget/components/QuoteDetails.tsx +113 -106
  244. package/src/widget/components/Receipt.tsx +0 -11
  245. package/src/widget/components/Recipients.tsx +2 -1
  246. package/src/widget/components/RefundWarning.tsx +5 -10
  247. package/src/widget/components/ThemeProvider.tsx +4 -4
  248. package/src/widget/components/TokenSelector.tsx +85 -16
  249. package/src/widget/components/TransactionDetails.tsx +46 -0
  250. package/src/widget/components/TransactionHistoryItem.tsx +14 -23
  251. package/src/widget/components/TransferPendingVertical.tsx +17 -11
  252. package/src/widget/components/WaasFeeOptions.tsx +4 -42
  253. package/src/widget/components/WalletConnect.tsx +2 -5
  254. package/src/widget/components/WalletImage.tsx +6 -18
  255. package/src/widget/components/WalletList.tsx +1 -1
  256. package/src/widget/components/Withdraw.tsx +22 -23
  257. package/src/widget/hooks/useAddressWalletIcon.ts +2 -1
  258. package/src/widget/hooks/useAmountUsd.ts +1 -1
  259. package/src/widget/hooks/useCombinedHistory.ts +37 -93
  260. package/src/widget/hooks/useCustomTokenSearch.tsx +63 -33
  261. package/src/widget/hooks/useDefaultDestinationToken.tsx +2 -5
  262. package/src/widget/hooks/useDefaultOriginToken.tsx +2 -5
  263. package/src/widget/hooks/useFiatOnRampCurrencies.ts +1 -1
  264. package/src/widget/hooks/useGetIntent.ts +5 -4
  265. package/src/widget/hooks/useIntentReceiptBalances.ts +3 -3
  266. package/src/widget/hooks/useIntentTransactionHistory.ts +24 -47
  267. package/src/widget/hooks/useMeldTransactionHistory.ts +4 -2
  268. package/src/widget/hooks/useMeldTransactionStatus.ts +13 -11
  269. package/src/widget/hooks/useOnRampQuote.ts +3 -3
  270. package/src/widget/hooks/useOnRampTransactionStatus.ts +8 -6
  271. package/src/widget/hooks/useQuote.ts +56 -48
  272. package/src/widget/hooks/useSelectedFundMethod.tsx +14 -1
  273. package/src/widget/hooks/useSendForm.ts +52 -31
  274. package/src/widget/hooks/useTokenList.ts +209 -140
  275. package/src/widget/hooks/useTrailsSendTransaction.ts +1 -1
  276. package/src/widget/hooks/useViewManager.tsx +1 -0
  277. package/src/widget/providers/TrailsProvider.tsx +5 -0
  278. package/src/widget/styles.ts +1 -1
  279. package/src/widget/utils/createWagmiConfig.ts +7 -2
  280. package/src/widget/utils/fundMethodSwitchState.ts +2 -0
  281. package/src/widget/utils/historyFilters.ts +157 -0
  282. package/src/widget/utils/meldProviderUtils.ts +8 -2
  283. package/src/widget/utils/meshSupportedTokens.ts +28 -0
  284. package/src/widget/utils/onrampConfig.ts +15 -0
  285. package/src/widget/utils/statusLabel.ts +3 -0
  286. package/src/widget/utils/trailsOnrampConfig.ts +39 -0
  287. package/src/widget/widget.tsx +235 -185
  288. package/dist/onramp-client/trails-onramp.gen.d.ts +0 -570
  289. package/dist/onramp-client/trails-onramp.gen.d.ts.map +0 -1
  290. package/dist/prices.d.ts +0 -34
  291. package/dist/prices.d.ts.map +0 -1
  292. package/dist/useGasEstimation.d.ts +0 -34
  293. package/dist/useGasEstimation.d.ts.map +0 -1
  294. package/dist/widget/hooks/useCustomTokenFetch.d.ts +0 -19
  295. package/dist/widget/hooks/useCustomTokenFetch.d.ts.map +0 -1
  296. package/dist/widget/hooks/useTokenWithFreshBalance.d.ts +0 -18
  297. package/dist/widget/hooks/useTokenWithFreshBalance.d.ts.map +0 -1
  298. package/src/onramp-client/trails-onramp.gen.ts +0 -1320
  299. package/src/prices.ts +0 -528
  300. package/src/useGasEstimation.ts +0 -147
  301. package/src/widget/assets/Binance_Icon_Logo.svg +0 -14
  302. package/src/widget/assets/Bitfinex_Icon_Logo.svg +0 -5
  303. package/src/widget/assets/Coinbase_Icon_Logo.svg +0 -1
  304. package/src/widget/assets/WalletConnect-logo-blue-bg.svg +0 -11
  305. package/src/widget/assets/sequence-logo.svg +0 -15
  306. package/src/widget/hooks/useCustomTokenFetch.tsx +0 -74
  307. package/src/widget/hooks/useTokenWithFreshBalance.ts +0 -246
@@ -1,1320 +0,0 @@
1
- /* eslint-disable */
2
- // trails-api v1-26.1.15-71ef491 3f31d593a685b4e54343107223b6cdd5c96a1b27
3
- // --
4
- // Code generated by Webrpc-gen@v0.31.3 with typescript generator. DO NOT EDIT.
5
- //
6
- // webrpc-gen -schema=trails-api.ridl -target=typescript -client -service=TrailsOnramp -methodTreeShake -ignore=@api -out=./clients/onramp/trails-onramp.gen.ts
7
-
8
- // Webrpc description and code-gen version
9
- export const WebrpcVersion = "v1"
10
-
11
- // Schema version of your RIDL schema
12
- export const WebrpcSchemaVersion = "v1-26.1.15-71ef491"
13
-
14
- // Schema hash generated from your RIDL schema
15
- export const WebrpcSchemaHash = "3f31d593a685b4e54343107223b6cdd5c96a1b27"
16
-
17
- //
18
- // Client interface
19
- //
20
-
21
- export interface TrailsOnrampClient {
22
- /**
23
- * GetMeldServiceProviders returns available service providers for onramp transactions.
24
- */
25
- getMeldServiceProviders(req: GetMeldServiceProvidersRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldServiceProvidersResponse>
26
-
27
- /**
28
- * GetMeldCountryDefaults returns default currency and payment methods for a country.
29
- */
30
- getMeldCountryDefaults(req: GetMeldCountryDefaultsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldCountryDefaultsResponse>
31
-
32
- /**
33
- * GetMeldFiatCurrencies returns available fiat currencies for a country.
34
- */
35
- getMeldFiatCurrencies(req: GetMeldFiatCurrenciesRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldFiatCurrenciesResponse>
36
-
37
- /**
38
- * GetMeldPaymentMethods returns payment methods available for a fiat currency.
39
- */
40
- getMeldPaymentMethods(req: GetMeldPaymentMethodsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldPaymentMethodsResponse>
41
-
42
- /**
43
- * GetMeldCryptoCurrencies returns available cryptocurrencies for a country.
44
- */
45
- getMeldCryptoCurrencies(req: GetMeldCryptoCurrenciesRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldCryptoCurrenciesResponse>
46
-
47
- /**
48
- * GetMeldPurchaseLimits returns purchase limits for all fiat currencies.
49
- */
50
- getMeldPurchaseLimits(req: GetMeldPurchaseLimitsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldPurchaseLimitsResponse>
51
-
52
- /**
53
- * GetMeldQuote returns real-time quotes from multiple providers.
54
- */
55
- getMeldQuote(req: GetMeldQuoteRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldQuoteResponse>
56
-
57
- /**
58
- * CreateMeldWidgetSession creates a widget session and returns the provider URL.
59
- */
60
- createMeldWidgetSession(req: CreateMeldWidgetSessionRequest, headers?: object, signal?: AbortSignal): Promise<CreateMeldWidgetSessionResponse>
61
-
62
- /**
63
- * GetMeldTransaction returns transaction details by transaction ID.
64
- */
65
- getMeldTransaction(req: GetMeldTransactionRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldTransactionResponse>
66
-
67
- /**
68
- * SearchMeldTransactions returns transactions matching the search criteria.
69
- */
70
- searchMeldTransactions(req: SearchMeldTransactionsRequest, headers?: object, signal?: AbortSignal): Promise<SearchMeldTransactionsResponse>
71
-
72
- /**
73
- * CreateMeldBankLinkingConnection creates a bank linking connection for ACH transfers.
74
- */
75
- createMeldBankLinkingConnection(req: CreateMeldBankLinkingConnectionRequest, headers?: object, signal?: AbortSignal): Promise<CreateMeldBankLinkingConnectionResponse>
76
- }
77
-
78
-
79
- //
80
- // Schema types
81
- //
82
-
83
- export enum CCTPTransferStatus {
84
- UNKNOWN = 'UNKNOWN',
85
- ON_HOLD = 'ON_HOLD',
86
- PENDING = 'PENDING',
87
- FETCHING = 'FETCHING',
88
- COMPLETE = 'COMPLETE',
89
- FAILED = 'FAILED'
90
- }
91
-
92
- export enum RelayTransferStatus {
93
- UNKNOWN = 'UNKNOWN',
94
- ON_HOLD = 'ON_HOLD',
95
- PENDING = 'PENDING',
96
- FETCHING = 'FETCHING',
97
- COMPLETE = 'COMPLETE',
98
- REFUNDED = 'REFUNDED',
99
- FAILED = 'FAILED'
100
- }
101
-
102
- export interface ChainMetadata {
103
- chainId: number
104
- name: string
105
- logoUri?: string
106
- testnet?: boolean
107
- }
108
-
109
- export interface CCTPTransfer {
110
- id: number
111
- intentId: string
112
- originChainId: number
113
- destinationChainId: number
114
- originTxnId: number
115
- originTxnHash: string
116
- destinationTxnId: number
117
- message: string
118
- attestation: string
119
- status: number
120
- statusReason?: string
121
- createdAt: string
122
- updatedAt: string
123
- }
124
-
125
- export interface RelayTransfer {
126
- id: number
127
- intentId: string
128
- originChainId: number
129
- destinationChainId: number
130
- originTxnId: number
131
- originTxnHash: string
132
- destinationTxnId: number
133
- destinationTxnHash: string
134
- status: number
135
- statusReason?: string
136
- createdAt: string
137
- updatedAt: string
138
- }
139
-
140
- export interface GetMeldServiceProvidersRequest {
141
- countryCode?: string
142
- serviceProviders?: string
143
- paymentMethodType?: string
144
- sourceCurrencyCode?: string
145
- destinationCurrencyCode?: string
146
- }
147
-
148
- export interface GetMeldServiceProvidersResponse {
149
- serviceProviders: Array<MeldServiceProvider>
150
- }
151
-
152
- export interface MeldServiceProvider {
153
- serviceProvider: string
154
- name: string
155
- logoUrl?: string
156
- supportedCountries: Array<string>
157
- supportedFiatCurrencies: Array<string>
158
- supportedCryptoCurrencies: Array<string>
159
- supportedPaymentMethods: Array<string>
160
- fees?: MeldServiceProviderFees
161
- limits?: MeldServiceProviderLimits
162
- processingTime?: string
163
- kycRequired: boolean
164
- available: boolean
165
- }
166
-
167
- export interface MeldServiceProviderFees {
168
- percentage?: number
169
- fixed?: number
170
- network?: number
171
- }
172
-
173
- export interface MeldServiceProviderLimits {
174
- min?: number
175
- max?: number
176
- daily?: number
177
- monthly?: number
178
- }
179
-
180
- export interface GetMeldCountryDefaultsRequest {
181
- countryCode: string
182
- }
183
-
184
- export interface GetMeldCountryDefaultsResponse {
185
- defaults: Array<MeldCountryDefault>
186
- }
187
-
188
- export interface MeldCountryDefault {
189
- countryCode: string
190
- defaultCurrencyCode: string
191
- defaultPaymentMethods: Array<string>
192
- }
193
-
194
- export interface GetMeldFiatCurrenciesRequest {
195
- countryCode: string
196
- }
197
-
198
- export interface GetMeldFiatCurrenciesResponse {
199
- fiatCurrencies: Array<MeldFiatCurrency>
200
- }
201
-
202
- export interface MeldFiatCurrency {
203
- currencyCode: string
204
- name: string
205
- symbolImageUrl: string
206
- }
207
-
208
- export interface GetMeldPaymentMethodsRequest {
209
- fiatCurrency: string
210
- }
211
-
212
- export interface GetMeldPaymentMethodsResponse {
213
- paymentMethods: Array<MeldPaymentMethod>
214
- }
215
-
216
- export interface MeldPaymentMethod {
217
- paymentMethod: string
218
- name: string
219
- paymentType: string
220
- logos: MeldPaymentLogos
221
- }
222
-
223
- export interface MeldPaymentLogos {
224
- dark: string
225
- light: string
226
- }
227
-
228
- export interface GetMeldCryptoCurrenciesRequest {
229
- countryCode: string
230
- }
231
-
232
- export interface GetMeldCryptoCurrenciesResponse {
233
- cryptoCurrencies: Array<MeldCryptoCurrency>
234
- }
235
-
236
- export interface MeldCryptoCurrency {
237
- currencyCode: string
238
- name: string
239
- chainCode: string
240
- chainName: string
241
- chainId?: string
242
- contractAddress?: string
243
- symbolImageUrl: string
244
- }
245
-
246
- export interface GetMeldPurchaseLimitsRequest {
247
- }
248
-
249
- export interface GetMeldPurchaseLimitsResponse {
250
- limits: {[key: string]: MeldCurrencyLimits}
251
- }
252
-
253
- export interface MeldCurrencyLimits {
254
- defaultAmount?: number
255
- minimumAmount: number
256
- maximumAmount: number
257
- }
258
-
259
- export interface GetMeldQuoteRequest {
260
- sourceAmount: string
261
- sourceCurrencyCode: string
262
- destinationCurrencyCode: string
263
- countryCode: string
264
- walletAddress: string
265
- paymentMethodType?: string
266
- }
267
-
268
- export interface GetMeldQuoteResponse {
269
- quoteResponse: string
270
- }
271
-
272
- export interface MeldQuote {
273
- transactionType: string
274
- sourceAmount: number
275
- sourceAmountWithoutFees: number
276
- fiatAmountWithoutFees: number
277
- destinationAmountWithoutFees?: number
278
- sourceCurrencyCode: string
279
- countryCode: string
280
- totalFee: number
281
- networkFee: number
282
- transactionFee: number
283
- destinationAmount: number
284
- destinationCurrencyCode: string
285
- exchangeRate: number
286
- paymentMethodType: string
287
- customerScore: number
288
- serviceProvider: string
289
- institutionName?: string
290
- lowKyc?: boolean
291
- partnerFee: number
292
- }
293
-
294
- export interface CreateMeldWidgetSessionRequest {
295
- sessionData: MeldSessionData
296
- sessionType: string
297
- externalCustomerId: string
298
- externalSessionId: string
299
- }
300
-
301
- export interface MeldSessionData {
302
- walletAddress: string
303
- countryCode: string
304
- sourceCurrencyCode: string
305
- sourceAmount: string
306
- destinationCurrencyCode: string
307
- serviceProvider: string
308
- paymentMethodType?: string
309
- redirectUrl?: string
310
- }
311
-
312
- export interface CreateMeldWidgetSessionResponse {
313
- widgetSession: string
314
- }
315
-
316
- export interface GetMeldTransactionRequest {
317
- transactionId: string
318
- }
319
-
320
- export interface GetMeldTransactionResponse {
321
- transaction: MeldTransaction
322
- }
323
-
324
- export interface SearchMeldTransactionsRequest {
325
- statuses?: string
326
- externalSessionIds?: string
327
- externalCustomerIds?: string
328
- customerIds?: string
329
- sessionIds?: string
330
- sessionId?: string
331
- from?: string
332
- to?: string
333
- limit?: number
334
- }
335
-
336
- export interface SearchMeldTransactionsResponse {
337
- transactions: MeldTransactions
338
- }
339
-
340
- export interface MeldTransaction {
341
- id: string
342
- }
343
-
344
- export interface MeldTransactions {
345
- transactions: Array<MeldTransaction>
346
- }
347
-
348
- export interface CreateMeldBankLinkingConnectionRequest {
349
- externalCustomerId: string
350
- institutionId?: string
351
- institutionSearchString?: string
352
- products?: Array<string>
353
- optionalProducts?: Array<string>
354
- redirectUrl?: string
355
- regions?: Array<string>
356
- accountPreferenceOverride?: MeldAccountPreferenceOverride
357
- }
358
-
359
- export interface MeldAccountPreferenceOverride {
360
- allowRedirect?: boolean
361
- }
362
-
363
- export interface CreateMeldBankLinkingConnectionResponse {
364
- connectionResponse: string
365
- }
366
-
367
-
368
-
369
-
370
-
371
-
372
-
373
-
374
-
375
-
376
-
377
-
378
-
379
-
380
- //
381
- // Client
382
- //
383
-
384
- export class TrailsOnramp implements TrailsOnrampClient {
385
- protected hostname: string
386
- protected fetch: Fetch
387
- protected path = '/rpc/TrailsOnramp/'
388
-
389
- constructor(hostname: string, fetch: Fetch) {
390
- this.hostname = hostname.replace(/\/*$/, '')
391
- this.fetch = (input: RequestInfo, init?: RequestInit) => fetch(input, init)
392
- }
393
-
394
- private url(name: string): string {
395
- return this.hostname + this.path + name
396
- }
397
-
398
- queryKey = {
399
- getMeldServiceProviders: (req: GetMeldServiceProvidersRequest) => ['TrailsOnramp', 'getMeldServiceProviders', req] as const,
400
- getMeldCountryDefaults: (req: GetMeldCountryDefaultsRequest) => ['TrailsOnramp', 'getMeldCountryDefaults', req] as const,
401
- getMeldFiatCurrencies: (req: GetMeldFiatCurrenciesRequest) => ['TrailsOnramp', 'getMeldFiatCurrencies', req] as const,
402
- getMeldPaymentMethods: (req: GetMeldPaymentMethodsRequest) => ['TrailsOnramp', 'getMeldPaymentMethods', req] as const,
403
- getMeldCryptoCurrencies: (req: GetMeldCryptoCurrenciesRequest) => ['TrailsOnramp', 'getMeldCryptoCurrencies', req] as const,
404
- getMeldPurchaseLimits: (req: GetMeldPurchaseLimitsRequest) => ['TrailsOnramp', 'getMeldPurchaseLimits', req] as const,
405
- getMeldQuote: (req: GetMeldQuoteRequest) => ['TrailsOnramp', 'getMeldQuote', req] as const,
406
- createMeldWidgetSession: (req: CreateMeldWidgetSessionRequest) => ['TrailsOnramp', 'createMeldWidgetSession', req] as const,
407
- getMeldTransaction: (req: GetMeldTransactionRequest) => ['TrailsOnramp', 'getMeldTransaction', req] as const,
408
- searchMeldTransactions: (req: SearchMeldTransactionsRequest) => ['TrailsOnramp', 'searchMeldTransactions', req] as const,
409
- createMeldBankLinkingConnection: (req: CreateMeldBankLinkingConnectionRequest) => ['TrailsOnramp', 'createMeldBankLinkingConnection', req] as const,
410
- }
411
-
412
- getMeldServiceProviders = (req: GetMeldServiceProvidersRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldServiceProvidersResponse> => {
413
- return this.fetch(
414
- this.url('GetMeldServiceProviders'),
415
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
416
- return buildResponse(res).then(_data => {
417
- return JsonDecode<GetMeldServiceProvidersResponse>(_data, 'GetMeldServiceProvidersResponse')
418
- })
419
- }, (error) => {
420
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
421
- })
422
- }
423
-
424
- getMeldCountryDefaults = (req: GetMeldCountryDefaultsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldCountryDefaultsResponse> => {
425
- return this.fetch(
426
- this.url('GetMeldCountryDefaults'),
427
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
428
- return buildResponse(res).then(_data => {
429
- return JsonDecode<GetMeldCountryDefaultsResponse>(_data, 'GetMeldCountryDefaultsResponse')
430
- })
431
- }, (error) => {
432
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
433
- })
434
- }
435
-
436
- getMeldFiatCurrencies = (req: GetMeldFiatCurrenciesRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldFiatCurrenciesResponse> => {
437
- return this.fetch(
438
- this.url('GetMeldFiatCurrencies'),
439
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
440
- return buildResponse(res).then(_data => {
441
- return JsonDecode<GetMeldFiatCurrenciesResponse>(_data, 'GetMeldFiatCurrenciesResponse')
442
- })
443
- }, (error) => {
444
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
445
- })
446
- }
447
-
448
- getMeldPaymentMethods = (req: GetMeldPaymentMethodsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldPaymentMethodsResponse> => {
449
- return this.fetch(
450
- this.url('GetMeldPaymentMethods'),
451
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
452
- return buildResponse(res).then(_data => {
453
- return JsonDecode<GetMeldPaymentMethodsResponse>(_data, 'GetMeldPaymentMethodsResponse')
454
- })
455
- }, (error) => {
456
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
457
- })
458
- }
459
-
460
- getMeldCryptoCurrencies = (req: GetMeldCryptoCurrenciesRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldCryptoCurrenciesResponse> => {
461
- return this.fetch(
462
- this.url('GetMeldCryptoCurrencies'),
463
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
464
- return buildResponse(res).then(_data => {
465
- return JsonDecode<GetMeldCryptoCurrenciesResponse>(_data, 'GetMeldCryptoCurrenciesResponse')
466
- })
467
- }, (error) => {
468
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
469
- })
470
- }
471
-
472
- getMeldPurchaseLimits = (req: GetMeldPurchaseLimitsRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldPurchaseLimitsResponse> => {
473
- return this.fetch(
474
- this.url('GetMeldPurchaseLimits'),
475
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
476
- return buildResponse(res).then(_data => {
477
- return JsonDecode<GetMeldPurchaseLimitsResponse>(_data, 'GetMeldPurchaseLimitsResponse')
478
- })
479
- }, (error) => {
480
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
481
- })
482
- }
483
-
484
- getMeldQuote = (req: GetMeldQuoteRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldQuoteResponse> => {
485
- return this.fetch(
486
- this.url('GetMeldQuote'),
487
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
488
- return buildResponse(res).then(_data => {
489
- return JsonDecode<GetMeldQuoteResponse>(_data, 'GetMeldQuoteResponse')
490
- })
491
- }, (error) => {
492
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
493
- })
494
- }
495
-
496
- createMeldWidgetSession = (req: CreateMeldWidgetSessionRequest, headers?: object, signal?: AbortSignal): Promise<CreateMeldWidgetSessionResponse> => {
497
- return this.fetch(
498
- this.url('CreateMeldWidgetSession'),
499
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
500
- return buildResponse(res).then(_data => {
501
- return JsonDecode<CreateMeldWidgetSessionResponse>(_data, 'CreateMeldWidgetSessionResponse')
502
- })
503
- }, (error) => {
504
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
505
- })
506
- }
507
-
508
- getMeldTransaction = (req: GetMeldTransactionRequest, headers?: object, signal?: AbortSignal): Promise<GetMeldTransactionResponse> => {
509
- return this.fetch(
510
- this.url('GetMeldTransaction'),
511
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
512
- return buildResponse(res).then(_data => {
513
- return JsonDecode<GetMeldTransactionResponse>(_data, 'GetMeldTransactionResponse')
514
- })
515
- }, (error) => {
516
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
517
- })
518
- }
519
-
520
- searchMeldTransactions = (req: SearchMeldTransactionsRequest, headers?: object, signal?: AbortSignal): Promise<SearchMeldTransactionsResponse> => {
521
- return this.fetch(
522
- this.url('SearchMeldTransactions'),
523
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
524
- return buildResponse(res).then(_data => {
525
- return JsonDecode<SearchMeldTransactionsResponse>(_data, 'SearchMeldTransactionsResponse')
526
- })
527
- }, (error) => {
528
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
529
- })
530
- }
531
-
532
- createMeldBankLinkingConnection = (req: CreateMeldBankLinkingConnectionRequest, headers?: object, signal?: AbortSignal): Promise<CreateMeldBankLinkingConnectionResponse> => {
533
- return this.fetch(
534
- this.url('CreateMeldBankLinkingConnection'),
535
- createHttpRequest(JsonEncode(req), headers, signal)).then((res) => {
536
- return buildResponse(res).then(_data => {
537
- return JsonDecode<CreateMeldBankLinkingConnectionResponse>(_data, 'CreateMeldBankLinkingConnectionResponse')
538
- })
539
- }, (error) => {
540
- throw WebrpcRequestFailedError.new({ cause: `fetch(): ${error instanceof Error ? error.message : String(error)}` })
541
- })
542
- }
543
-
544
- }
545
-
546
- const createHttpRequest = (body: string = '{}', headers: object = {}, signal: AbortSignal | null = null): object => {
547
- const reqHeaders: { [key: string]: string } = { ...headers, 'Content-Type': 'application/json', [WebrpcHeader]: WebrpcHeaderValue }
548
- return { method: 'POST', headers: reqHeaders, body, signal }
549
- }
550
-
551
- const buildResponse = (res: Response): Promise<any> => {
552
- return res.text().then(text => {
553
- let data
554
- try {
555
- data = JSON.parse(text)
556
- } catch(error) {
557
- throw WebrpcBadResponseError.new({
558
- status: res.status,
559
- cause: `JSON.parse(): ${error instanceof Error ? error.message : String(error)}: response text: ${text}`},
560
- )
561
- }
562
- if (!res.ok) {
563
- const code: number = (typeof data.code === 'number') ? data.code : 0
564
- throw (webrpcErrorByCode[code] || WebrpcError).new(data)
565
- }
566
- return data
567
- })
568
- }
569
-
570
- export type Fetch = (input: RequestInfo, init?: RequestInit) => Promise<Response>
571
-
572
-
573
-
574
-
575
-
576
-
577
- export const JsonEncode = <T = any>(obj: T): string => {
578
- return JSON.stringify(obj)
579
- }
580
-
581
- export const JsonDecode = <T = any>(data: string | any, _typ: string = ''): T => {
582
- let parsed: any = data
583
- if (typeof data === 'string') {
584
- try { parsed = JSON.parse(data) } catch (err) {
585
- throw WebrpcBadResponseError.new({ cause: `JsonDecode: JSON.parse failed: ${(err as Error).message}` })
586
- }
587
- }
588
- return parsed as T
589
- }
590
-
591
-
592
- //
593
- // Errors
594
- //
595
-
596
- type WebrpcErrorParams = { name?: string, code?: number, message?: string, status?: number, cause?: string }
597
-
598
- export class WebrpcError extends Error {
599
- code: number
600
- status: number
601
-
602
- constructor(error: WebrpcErrorParams = {}) {
603
- super(error.message)
604
- this.name = error.name || 'WebrpcEndpointError'
605
- this.code = typeof error.code === 'number' ? error.code : 0
606
- this.message = error.message || `endpoint error`
607
- this.status = typeof error.status === 'number' ? error.status : 400
608
- if (error.cause !== undefined) this.cause = error.cause
609
- Object.setPrototypeOf(this, WebrpcError.prototype)
610
- }
611
-
612
- static new(payload: any): WebrpcError {
613
- return new this({ message: payload.message, code: payload.code, status: payload.status, cause: payload.cause })
614
- }
615
- }
616
-
617
-
618
- export class WebrpcEndpointError extends WebrpcError {
619
- constructor(error: WebrpcErrorParams = {}) {
620
- super(error)
621
- this.name = error.name || 'WebrpcEndpoint'
622
- this.code = typeof error.code === 'number' ? error.code : 0
623
- this.message = error.message || `endpoint error`
624
- this.status = typeof error.status === 'number' ? error.status : 400
625
- if (error.cause !== undefined) this.cause = error.cause
626
- Object.setPrototypeOf(this, WebrpcEndpointError.prototype)
627
- }
628
- }
629
-
630
- export class WebrpcRequestFailedError extends WebrpcError {
631
- constructor(error: WebrpcErrorParams = {}) {
632
- super(error)
633
- this.name = error.name || 'WebrpcRequestFailed'
634
- this.code = typeof error.code === 'number' ? error.code : -1
635
- this.message = error.message || `request failed`
636
- this.status = typeof error.status === 'number' ? error.status : 400
637
- if (error.cause !== undefined) this.cause = error.cause
638
- Object.setPrototypeOf(this, WebrpcRequestFailedError.prototype)
639
- }
640
- }
641
-
642
- export class WebrpcBadRouteError extends WebrpcError {
643
- constructor(error: WebrpcErrorParams = {}) {
644
- super(error)
645
- this.name = error.name || 'WebrpcBadRoute'
646
- this.code = typeof error.code === 'number' ? error.code : -2
647
- this.message = error.message || `bad route`
648
- this.status = typeof error.status === 'number' ? error.status : 404
649
- if (error.cause !== undefined) this.cause = error.cause
650
- Object.setPrototypeOf(this, WebrpcBadRouteError.prototype)
651
- }
652
- }
653
-
654
- export class WebrpcBadMethodError extends WebrpcError {
655
- constructor(error: WebrpcErrorParams = {}) {
656
- super(error)
657
- this.name = error.name || 'WebrpcBadMethod'
658
- this.code = typeof error.code === 'number' ? error.code : -3
659
- this.message = error.message || `bad method`
660
- this.status = typeof error.status === 'number' ? error.status : 405
661
- if (error.cause !== undefined) this.cause = error.cause
662
- Object.setPrototypeOf(this, WebrpcBadMethodError.prototype)
663
- }
664
- }
665
-
666
- export class WebrpcBadRequestError extends WebrpcError {
667
- constructor(error: WebrpcErrorParams = {}) {
668
- super(error)
669
- this.name = error.name || 'WebrpcBadRequest'
670
- this.code = typeof error.code === 'number' ? error.code : -4
671
- this.message = error.message || `bad request`
672
- this.status = typeof error.status === 'number' ? error.status : 400
673
- if (error.cause !== undefined) this.cause = error.cause
674
- Object.setPrototypeOf(this, WebrpcBadRequestError.prototype)
675
- }
676
- }
677
-
678
- export class WebrpcBadResponseError extends WebrpcError {
679
- constructor(error: WebrpcErrorParams = {}) {
680
- super(error)
681
- this.name = error.name || 'WebrpcBadResponse'
682
- this.code = typeof error.code === 'number' ? error.code : -5
683
- this.message = error.message || `bad response`
684
- this.status = typeof error.status === 'number' ? error.status : 500
685
- if (error.cause !== undefined) this.cause = error.cause
686
- Object.setPrototypeOf(this, WebrpcBadResponseError.prototype)
687
- }
688
- }
689
-
690
- export class WebrpcServerPanicError extends WebrpcError {
691
- constructor(error: WebrpcErrorParams = {}) {
692
- super(error)
693
- this.name = error.name || 'WebrpcServerPanic'
694
- this.code = typeof error.code === 'number' ? error.code : -6
695
- this.message = error.message || `server panic`
696
- this.status = typeof error.status === 'number' ? error.status : 500
697
- if (error.cause !== undefined) this.cause = error.cause
698
- Object.setPrototypeOf(this, WebrpcServerPanicError.prototype)
699
- }
700
- }
701
-
702
- export class WebrpcInternalErrorError extends WebrpcError {
703
- constructor(error: WebrpcErrorParams = {}) {
704
- super(error)
705
- this.name = error.name || 'WebrpcInternalError'
706
- this.code = typeof error.code === 'number' ? error.code : -7
707
- this.message = error.message || `internal error`
708
- this.status = typeof error.status === 'number' ? error.status : 500
709
- if (error.cause !== undefined) this.cause = error.cause
710
- Object.setPrototypeOf(this, WebrpcInternalErrorError.prototype)
711
- }
712
- }
713
-
714
- export class WebrpcClientAbortedError extends WebrpcError {
715
- constructor(error: WebrpcErrorParams = {}) {
716
- super(error)
717
- this.name = error.name || 'WebrpcClientAborted'
718
- this.code = typeof error.code === 'number' ? error.code : -8
719
- this.message = error.message || `request aborted by client`
720
- this.status = typeof error.status === 'number' ? error.status : 400
721
- if (error.cause !== undefined) this.cause = error.cause
722
- Object.setPrototypeOf(this, WebrpcClientAbortedError.prototype)
723
- }
724
- }
725
-
726
- export class WebrpcStreamLostError extends WebrpcError {
727
- constructor(error: WebrpcErrorParams = {}) {
728
- super(error)
729
- this.name = error.name || 'WebrpcStreamLost'
730
- this.code = typeof error.code === 'number' ? error.code : -9
731
- this.message = error.message || `stream lost`
732
- this.status = typeof error.status === 'number' ? error.status : 400
733
- if (error.cause !== undefined) this.cause = error.cause
734
- Object.setPrototypeOf(this, WebrpcStreamLostError.prototype)
735
- }
736
- }
737
-
738
- export class WebrpcStreamFinishedError extends WebrpcError {
739
- constructor(error: WebrpcErrorParams = {}) {
740
- super(error)
741
- this.name = error.name || 'WebrpcStreamFinished'
742
- this.code = typeof error.code === 'number' ? error.code : -10
743
- this.message = error.message || `stream finished`
744
- this.status = typeof error.status === 'number' ? error.status : 200
745
- if (error.cause !== undefined) this.cause = error.cause
746
- Object.setPrototypeOf(this, WebrpcStreamFinishedError.prototype)
747
- }
748
- }
749
-
750
-
751
- //
752
- // Schema errors
753
- //
754
-
755
- export class UnauthorizedError extends WebrpcError {
756
- constructor(error: WebrpcErrorParams = {}) {
757
- super(error)
758
- this.name = error.name || 'Unauthorized'
759
- this.code = typeof error.code === 'number' ? error.code : 1000
760
- this.message = error.message || `Unauthorized access`
761
- this.status = typeof error.status === 'number' ? error.status : 401
762
- if (error.cause !== undefined) this.cause = error.cause
763
- Object.setPrototypeOf(this, UnauthorizedError.prototype)
764
- }
765
- }
766
-
767
- export class PermissionDeniedError extends WebrpcError {
768
- constructor(error: WebrpcErrorParams = {}) {
769
- super(error)
770
- this.name = error.name || 'PermissionDenied'
771
- this.code = typeof error.code === 'number' ? error.code : 1001
772
- this.message = error.message || `Permission denied`
773
- this.status = typeof error.status === 'number' ? error.status : 403
774
- if (error.cause !== undefined) this.cause = error.cause
775
- Object.setPrototypeOf(this, PermissionDeniedError.prototype)
776
- }
777
- }
778
-
779
- export class SessionExpiredError extends WebrpcError {
780
- constructor(error: WebrpcErrorParams = {}) {
781
- super(error)
782
- this.name = error.name || 'SessionExpired'
783
- this.code = typeof error.code === 'number' ? error.code : 1002
784
- this.message = error.message || `Session expired`
785
- this.status = typeof error.status === 'number' ? error.status : 403
786
- if (error.cause !== undefined) this.cause = error.cause
787
- Object.setPrototypeOf(this, SessionExpiredError.prototype)
788
- }
789
- }
790
-
791
- export class MethodNotFoundError extends WebrpcError {
792
- constructor(error: WebrpcErrorParams = {}) {
793
- super(error)
794
- this.name = error.name || 'MethodNotFound'
795
- this.code = typeof error.code === 'number' ? error.code : 1003
796
- this.message = error.message || `Method not found`
797
- this.status = typeof error.status === 'number' ? error.status : 404
798
- if (error.cause !== undefined) this.cause = error.cause
799
- Object.setPrototypeOf(this, MethodNotFoundError.prototype)
800
- }
801
- }
802
-
803
- export class RequestConflictError extends WebrpcError {
804
- constructor(error: WebrpcErrorParams = {}) {
805
- super(error)
806
- this.name = error.name || 'RequestConflict'
807
- this.code = typeof error.code === 'number' ? error.code : 1004
808
- this.message = error.message || `Conflict with target resource`
809
- this.status = typeof error.status === 'number' ? error.status : 409
810
- if (error.cause !== undefined) this.cause = error.cause
811
- Object.setPrototypeOf(this, RequestConflictError.prototype)
812
- }
813
- }
814
-
815
- export class AbortedError extends WebrpcError {
816
- constructor(error: WebrpcErrorParams = {}) {
817
- super(error)
818
- this.name = error.name || 'Aborted'
819
- this.code = typeof error.code === 'number' ? error.code : 1005
820
- this.message = error.message || `Request aborted`
821
- this.status = typeof error.status === 'number' ? error.status : 400
822
- if (error.cause !== undefined) this.cause = error.cause
823
- Object.setPrototypeOf(this, AbortedError.prototype)
824
- }
825
- }
826
-
827
- export class GeoblockedError extends WebrpcError {
828
- constructor(error: WebrpcErrorParams = {}) {
829
- super(error)
830
- this.name = error.name || 'Geoblocked'
831
- this.code = typeof error.code === 'number' ? error.code : 1006
832
- this.message = error.message || `Geoblocked region`
833
- this.status = typeof error.status === 'number' ? error.status : 451
834
- if (error.cause !== undefined) this.cause = error.cause
835
- Object.setPrototypeOf(this, GeoblockedError.prototype)
836
- }
837
- }
838
-
839
- export class RateLimitedError extends WebrpcError {
840
- constructor(error: WebrpcErrorParams = {}) {
841
- super(error)
842
- this.name = error.name || 'RateLimited'
843
- this.code = typeof error.code === 'number' ? error.code : 1007
844
- this.message = error.message || `Rate-limited. Please slow down.`
845
- this.status = typeof error.status === 'number' ? error.status : 429
846
- if (error.cause !== undefined) this.cause = error.cause
847
- Object.setPrototypeOf(this, RateLimitedError.prototype)
848
- }
849
- }
850
-
851
- export class ProjectNotFoundError extends WebrpcError {
852
- constructor(error: WebrpcErrorParams = {}) {
853
- super(error)
854
- this.name = error.name || 'ProjectNotFound'
855
- this.code = typeof error.code === 'number' ? error.code : 1008
856
- this.message = error.message || `Project not found`
857
- this.status = typeof error.status === 'number' ? error.status : 401
858
- if (error.cause !== undefined) this.cause = error.cause
859
- Object.setPrototypeOf(this, ProjectNotFoundError.prototype)
860
- }
861
- }
862
-
863
- export class AccessKeyNotFoundError extends WebrpcError {
864
- constructor(error: WebrpcErrorParams = {}) {
865
- super(error)
866
- this.name = error.name || 'AccessKeyNotFound'
867
- this.code = typeof error.code === 'number' ? error.code : 1101
868
- this.message = error.message || `Access key not found`
869
- this.status = typeof error.status === 'number' ? error.status : 401
870
- if (error.cause !== undefined) this.cause = error.cause
871
- Object.setPrototypeOf(this, AccessKeyNotFoundError.prototype)
872
- }
873
- }
874
-
875
- export class AccessKeyMismatchError extends WebrpcError {
876
- constructor(error: WebrpcErrorParams = {}) {
877
- super(error)
878
- this.name = error.name || 'AccessKeyMismatch'
879
- this.code = typeof error.code === 'number' ? error.code : 1102
880
- this.message = error.message || `Access key mismatch`
881
- this.status = typeof error.status === 'number' ? error.status : 409
882
- if (error.cause !== undefined) this.cause = error.cause
883
- Object.setPrototypeOf(this, AccessKeyMismatchError.prototype)
884
- }
885
- }
886
-
887
- export class InvalidOriginError extends WebrpcError {
888
- constructor(error: WebrpcErrorParams = {}) {
889
- super(error)
890
- this.name = error.name || 'InvalidOrigin'
891
- this.code = typeof error.code === 'number' ? error.code : 1103
892
- this.message = error.message || `Invalid origin for Access Key`
893
- this.status = typeof error.status === 'number' ? error.status : 403
894
- if (error.cause !== undefined) this.cause = error.cause
895
- Object.setPrototypeOf(this, InvalidOriginError.prototype)
896
- }
897
- }
898
-
899
- export class InvalidServiceError extends WebrpcError {
900
- constructor(error: WebrpcErrorParams = {}) {
901
- super(error)
902
- this.name = error.name || 'InvalidService'
903
- this.code = typeof error.code === 'number' ? error.code : 1104
904
- this.message = error.message || `Service not enabled for Access key`
905
- this.status = typeof error.status === 'number' ? error.status : 403
906
- if (error.cause !== undefined) this.cause = error.cause
907
- Object.setPrototypeOf(this, InvalidServiceError.prototype)
908
- }
909
- }
910
-
911
- export class UnauthorizedUserError extends WebrpcError {
912
- constructor(error: WebrpcErrorParams = {}) {
913
- super(error)
914
- this.name = error.name || 'UnauthorizedUser'
915
- this.code = typeof error.code === 'number' ? error.code : 1105
916
- this.message = error.message || `Unauthorized user`
917
- this.status = typeof error.status === 'number' ? error.status : 403
918
- if (error.cause !== undefined) this.cause = error.cause
919
- Object.setPrototypeOf(this, UnauthorizedUserError.prototype)
920
- }
921
- }
922
-
923
- export class QuotaExceededError extends WebrpcError {
924
- constructor(error: WebrpcErrorParams = {}) {
925
- super(error)
926
- this.name = error.name || 'QuotaExceeded'
927
- this.code = typeof error.code === 'number' ? error.code : 1200
928
- this.message = error.message || `Quota request exceeded`
929
- this.status = typeof error.status === 'number' ? error.status : 429
930
- if (error.cause !== undefined) this.cause = error.cause
931
- Object.setPrototypeOf(this, QuotaExceededError.prototype)
932
- }
933
- }
934
-
935
- export class QuotaRateLimitError extends WebrpcError {
936
- constructor(error: WebrpcErrorParams = {}) {
937
- super(error)
938
- this.name = error.name || 'QuotaRateLimit'
939
- this.code = typeof error.code === 'number' ? error.code : 1201
940
- this.message = error.message || `Quota rate limit exceeded`
941
- this.status = typeof error.status === 'number' ? error.status : 429
942
- if (error.cause !== undefined) this.cause = error.cause
943
- Object.setPrototypeOf(this, QuotaRateLimitError.prototype)
944
- }
945
- }
946
-
947
- export class NoDefaultKeyError extends WebrpcError {
948
- constructor(error: WebrpcErrorParams = {}) {
949
- super(error)
950
- this.name = error.name || 'NoDefaultKey'
951
- this.code = typeof error.code === 'number' ? error.code : 1300
952
- this.message = error.message || `No default access key found`
953
- this.status = typeof error.status === 'number' ? error.status : 403
954
- if (error.cause !== undefined) this.cause = error.cause
955
- Object.setPrototypeOf(this, NoDefaultKeyError.prototype)
956
- }
957
- }
958
-
959
- export class MaxAccessKeysError extends WebrpcError {
960
- constructor(error: WebrpcErrorParams = {}) {
961
- super(error)
962
- this.name = error.name || 'MaxAccessKeys'
963
- this.code = typeof error.code === 'number' ? error.code : 1301
964
- this.message = error.message || `Access keys limit reached`
965
- this.status = typeof error.status === 'number' ? error.status : 403
966
- if (error.cause !== undefined) this.cause = error.cause
967
- Object.setPrototypeOf(this, MaxAccessKeysError.prototype)
968
- }
969
- }
970
-
971
- export class AtLeastOneKeyError extends WebrpcError {
972
- constructor(error: WebrpcErrorParams = {}) {
973
- super(error)
974
- this.name = error.name || 'AtLeastOneKey'
975
- this.code = typeof error.code === 'number' ? error.code : 1302
976
- this.message = error.message || `You need at least one Access Key`
977
- this.status = typeof error.status === 'number' ? error.status : 403
978
- if (error.cause !== undefined) this.cause = error.cause
979
- Object.setPrototypeOf(this, AtLeastOneKeyError.prototype)
980
- }
981
- }
982
-
983
- export class TimeoutError extends WebrpcError {
984
- constructor(error: WebrpcErrorParams = {}) {
985
- super(error)
986
- this.name = error.name || 'Timeout'
987
- this.code = typeof error.code === 'number' ? error.code : 1900
988
- this.message = error.message || `Request timed out`
989
- this.status = typeof error.status === 'number' ? error.status : 408
990
- if (error.cause !== undefined) this.cause = error.cause
991
- Object.setPrototypeOf(this, TimeoutError.prototype)
992
- }
993
- }
994
-
995
- export class InvalidArgumentError extends WebrpcError {
996
- constructor(error: WebrpcErrorParams = {}) {
997
- super(error)
998
- this.name = error.name || 'InvalidArgument'
999
- this.code = typeof error.code === 'number' ? error.code : 2000
1000
- this.message = error.message || `Invalid argument`
1001
- this.status = typeof error.status === 'number' ? error.status : 400
1002
- if (error.cause !== undefined) this.cause = error.cause
1003
- Object.setPrototypeOf(this, InvalidArgumentError.prototype)
1004
- }
1005
- }
1006
-
1007
- export class UnexpectedError extends WebrpcError {
1008
- constructor(error: WebrpcErrorParams = {}) {
1009
- super(error)
1010
- this.name = error.name || 'Unexpected'
1011
- this.code = typeof error.code === 'number' ? error.code : 2001
1012
- this.message = error.message || `Unexpected server error`
1013
- this.status = typeof error.status === 'number' ? error.status : 500
1014
- if (error.cause !== undefined) this.cause = error.cause
1015
- Object.setPrototypeOf(this, UnexpectedError.prototype)
1016
- }
1017
- }
1018
-
1019
- export class UnavailableError extends WebrpcError {
1020
- constructor(error: WebrpcErrorParams = {}) {
1021
- super(error)
1022
- this.name = error.name || 'Unavailable'
1023
- this.code = typeof error.code === 'number' ? error.code : 2002
1024
- this.message = error.message || `Unavailable resource`
1025
- this.status = typeof error.status === 'number' ? error.status : 400
1026
- if (error.cause !== undefined) this.cause = error.cause
1027
- Object.setPrototypeOf(this, UnavailableError.prototype)
1028
- }
1029
- }
1030
-
1031
- export class QueryFailedError extends WebrpcError {
1032
- constructor(error: WebrpcErrorParams = {}) {
1033
- super(error)
1034
- this.name = error.name || 'QueryFailed'
1035
- this.code = typeof error.code === 'number' ? error.code : 2003
1036
- this.message = error.message || `Query failed`
1037
- this.status = typeof error.status === 'number' ? error.status : 400
1038
- if (error.cause !== undefined) this.cause = error.cause
1039
- Object.setPrototypeOf(this, QueryFailedError.prototype)
1040
- }
1041
- }
1042
-
1043
- export class IntentStatusError extends WebrpcError {
1044
- constructor(error: WebrpcErrorParams = {}) {
1045
- super(error)
1046
- this.name = error.name || 'IntentStatus'
1047
- this.code = typeof error.code === 'number' ? error.code : 2004
1048
- this.message = error.message || `Invalid intent status`
1049
- this.status = typeof error.status === 'number' ? error.status : 422
1050
- if (error.cause !== undefined) this.cause = error.cause
1051
- Object.setPrototypeOf(this, IntentStatusError.prototype)
1052
- }
1053
- }
1054
-
1055
- export class NotFoundError extends WebrpcError {
1056
- constructor(error: WebrpcErrorParams = {}) {
1057
- super(error)
1058
- this.name = error.name || 'NotFound'
1059
- this.code = typeof error.code === 'number' ? error.code : 8000
1060
- this.message = error.message || `Resource not found`
1061
- this.status = typeof error.status === 'number' ? error.status : 400
1062
- if (error.cause !== undefined) this.cause = error.cause
1063
- Object.setPrototypeOf(this, NotFoundError.prototype)
1064
- }
1065
- }
1066
-
1067
- export class UnsupportedNetworkError extends WebrpcError {
1068
- constructor(error: WebrpcErrorParams = {}) {
1069
- super(error)
1070
- this.name = error.name || 'UnsupportedNetwork'
1071
- this.code = typeof error.code === 'number' ? error.code : 8008
1072
- this.message = error.message || `Unsupported network`
1073
- this.status = typeof error.status === 'number' ? error.status : 422
1074
- if (error.cause !== undefined) this.cause = error.cause
1075
- Object.setPrototypeOf(this, UnsupportedNetworkError.prototype)
1076
- }
1077
- }
1078
-
1079
- export class ClientOutdatedError extends WebrpcError {
1080
- constructor(error: WebrpcErrorParams = {}) {
1081
- super(error)
1082
- this.name = error.name || 'ClientOutdated'
1083
- this.code = typeof error.code === 'number' ? error.code : 8009
1084
- this.message = error.message || `Client is outdated`
1085
- this.status = typeof error.status === 'number' ? error.status : 422
1086
- if (error.cause !== undefined) this.cause = error.cause
1087
- Object.setPrototypeOf(this, ClientOutdatedError.prototype)
1088
- }
1089
- }
1090
-
1091
- export class IntentsSkippedError extends WebrpcError {
1092
- constructor(error: WebrpcErrorParams = {}) {
1093
- super(error)
1094
- this.name = error.name || 'IntentsSkipped'
1095
- this.code = typeof error.code === 'number' ? error.code : 7000
1096
- this.message = error.message || `Intents skipped as client is attempting a transaction that does not require intents`
1097
- this.status = typeof error.status === 'number' ? error.status : 400
1098
- if (error.cause !== undefined) this.cause = error.cause
1099
- Object.setPrototypeOf(this, IntentsSkippedError.prototype)
1100
- }
1101
- }
1102
-
1103
- export class QuoteExpiredError extends WebrpcError {
1104
- constructor(error: WebrpcErrorParams = {}) {
1105
- super(error)
1106
- this.name = error.name || 'QuoteExpired'
1107
- this.code = typeof error.code === 'number' ? error.code : 7001
1108
- this.message = error.message || `Intent quote has expired. Please try again.`
1109
- this.status = typeof error.status === 'number' ? error.status : 400
1110
- if (error.cause !== undefined) this.cause = error.cause
1111
- Object.setPrototypeOf(this, QuoteExpiredError.prototype)
1112
- }
1113
- }
1114
-
1115
- export class IntentsDisabledError extends WebrpcError {
1116
- constructor(error: WebrpcErrorParams = {}) {
1117
- super(error)
1118
- this.name = error.name || 'IntentsDisabled'
1119
- this.code = typeof error.code === 'number' ? error.code : 9000
1120
- this.message = error.message || `Intents service is currently unavailable`
1121
- this.status = typeof error.status === 'number' ? error.status : 400
1122
- if (error.cause !== undefined) this.cause = error.cause
1123
- Object.setPrototypeOf(this, IntentsDisabledError.prototype)
1124
- }
1125
- }
1126
-
1127
-
1128
- export enum errors {
1129
- WebrpcEndpoint = 'WebrpcEndpoint',
1130
- WebrpcRequestFailed = 'WebrpcRequestFailed',
1131
- WebrpcBadRoute = 'WebrpcBadRoute',
1132
- WebrpcBadMethod = 'WebrpcBadMethod',
1133
- WebrpcBadRequest = 'WebrpcBadRequest',
1134
- WebrpcBadResponse = 'WebrpcBadResponse',
1135
- WebrpcServerPanic = 'WebrpcServerPanic',
1136
- WebrpcInternalError = 'WebrpcInternalError',
1137
- WebrpcClientAborted = 'WebrpcClientAborted',
1138
- WebrpcStreamLost = 'WebrpcStreamLost',
1139
- WebrpcStreamFinished = 'WebrpcStreamFinished',
1140
- Unauthorized = 'Unauthorized',
1141
- PermissionDenied = 'PermissionDenied',
1142
- SessionExpired = 'SessionExpired',
1143
- MethodNotFound = 'MethodNotFound',
1144
- RequestConflict = 'RequestConflict',
1145
- Aborted = 'Aborted',
1146
- Geoblocked = 'Geoblocked',
1147
- RateLimited = 'RateLimited',
1148
- ProjectNotFound = 'ProjectNotFound',
1149
- AccessKeyNotFound = 'AccessKeyNotFound',
1150
- AccessKeyMismatch = 'AccessKeyMismatch',
1151
- InvalidOrigin = 'InvalidOrigin',
1152
- InvalidService = 'InvalidService',
1153
- UnauthorizedUser = 'UnauthorizedUser',
1154
- QuotaExceeded = 'QuotaExceeded',
1155
- QuotaRateLimit = 'QuotaRateLimit',
1156
- NoDefaultKey = 'NoDefaultKey',
1157
- MaxAccessKeys = 'MaxAccessKeys',
1158
- AtLeastOneKey = 'AtLeastOneKey',
1159
- Timeout = 'Timeout',
1160
- InvalidArgument = 'InvalidArgument',
1161
- Unexpected = 'Unexpected',
1162
- Unavailable = 'Unavailable',
1163
- QueryFailed = 'QueryFailed',
1164
- IntentStatus = 'IntentStatus',
1165
- NotFound = 'NotFound',
1166
- UnsupportedNetwork = 'UnsupportedNetwork',
1167
- ClientOutdated = 'ClientOutdated',
1168
- IntentsSkipped = 'IntentsSkipped',
1169
- QuoteExpired = 'QuoteExpired',
1170
- IntentsDisabled = 'IntentsDisabled',
1171
- }
1172
-
1173
- export enum WebrpcErrorCodes {
1174
- WebrpcEndpoint = 0,
1175
- WebrpcRequestFailed = -1,
1176
- WebrpcBadRoute = -2,
1177
- WebrpcBadMethod = -3,
1178
- WebrpcBadRequest = -4,
1179
- WebrpcBadResponse = -5,
1180
- WebrpcServerPanic = -6,
1181
- WebrpcInternalError = -7,
1182
- WebrpcClientAborted = -8,
1183
- WebrpcStreamLost = -9,
1184
- WebrpcStreamFinished = -10,
1185
- Unauthorized = 1000,
1186
- PermissionDenied = 1001,
1187
- SessionExpired = 1002,
1188
- MethodNotFound = 1003,
1189
- RequestConflict = 1004,
1190
- Aborted = 1005,
1191
- Geoblocked = 1006,
1192
- RateLimited = 1007,
1193
- ProjectNotFound = 1008,
1194
- AccessKeyNotFound = 1101,
1195
- AccessKeyMismatch = 1102,
1196
- InvalidOrigin = 1103,
1197
- InvalidService = 1104,
1198
- UnauthorizedUser = 1105,
1199
- QuotaExceeded = 1200,
1200
- QuotaRateLimit = 1201,
1201
- NoDefaultKey = 1300,
1202
- MaxAccessKeys = 1301,
1203
- AtLeastOneKey = 1302,
1204
- Timeout = 1900,
1205
- InvalidArgument = 2000,
1206
- Unexpected = 2001,
1207
- Unavailable = 2002,
1208
- QueryFailed = 2003,
1209
- IntentStatus = 2004,
1210
- NotFound = 8000,
1211
- UnsupportedNetwork = 8008,
1212
- ClientOutdated = 8009,
1213
- IntentsSkipped = 7000,
1214
- QuoteExpired = 7001,
1215
- IntentsDisabled = 9000,
1216
- }
1217
-
1218
- export const webrpcErrorByCode: { [code: number]: any } = {
1219
- [0]: WebrpcEndpointError,
1220
- [-1]: WebrpcRequestFailedError,
1221
- [-2]: WebrpcBadRouteError,
1222
- [-3]: WebrpcBadMethodError,
1223
- [-4]: WebrpcBadRequestError,
1224
- [-5]: WebrpcBadResponseError,
1225
- [-6]: WebrpcServerPanicError,
1226
- [-7]: WebrpcInternalErrorError,
1227
- [-8]: WebrpcClientAbortedError,
1228
- [-9]: WebrpcStreamLostError,
1229
- [-10]: WebrpcStreamFinishedError,
1230
- [1000]: UnauthorizedError,
1231
- [1001]: PermissionDeniedError,
1232
- [1002]: SessionExpiredError,
1233
- [1003]: MethodNotFoundError,
1234
- [1004]: RequestConflictError,
1235
- [1005]: AbortedError,
1236
- [1006]: GeoblockedError,
1237
- [1007]: RateLimitedError,
1238
- [1008]: ProjectNotFoundError,
1239
- [1101]: AccessKeyNotFoundError,
1240
- [1102]: AccessKeyMismatchError,
1241
- [1103]: InvalidOriginError,
1242
- [1104]: InvalidServiceError,
1243
- [1105]: UnauthorizedUserError,
1244
- [1200]: QuotaExceededError,
1245
- [1201]: QuotaRateLimitError,
1246
- [1300]: NoDefaultKeyError,
1247
- [1301]: MaxAccessKeysError,
1248
- [1302]: AtLeastOneKeyError,
1249
- [1900]: TimeoutError,
1250
- [2000]: InvalidArgumentError,
1251
- [2001]: UnexpectedError,
1252
- [2002]: UnavailableError,
1253
- [2003]: QueryFailedError,
1254
- [2004]: IntentStatusError,
1255
- [8000]: NotFoundError,
1256
- [8008]: UnsupportedNetworkError,
1257
- [8009]: ClientOutdatedError,
1258
- [7000]: IntentsSkippedError,
1259
- [7001]: QuoteExpiredError,
1260
- [9000]: IntentsDisabledError,
1261
- }
1262
-
1263
-
1264
-
1265
- //
1266
- // Webrpc
1267
- //
1268
-
1269
- export const WebrpcHeader = "Webrpc"
1270
-
1271
- export const WebrpcHeaderValue = "webrpc@v0.31.3;gen-typescript@v0.23.1;trails-api@v1-26.1.15-71ef491"
1272
-
1273
- type WebrpcGenVersions = {
1274
- WebrpcGenVersion: string;
1275
- codeGenName: string;
1276
- codeGenVersion: string;
1277
- schemaName: string;
1278
- schemaVersion: string;
1279
- };
1280
-
1281
- export function VersionFromHeader(headers: Headers): WebrpcGenVersions {
1282
- const headerValue = headers.get(WebrpcHeader)
1283
- if (!headerValue) {
1284
- return {
1285
- WebrpcGenVersion: "",
1286
- codeGenName: "",
1287
- codeGenVersion: "",
1288
- schemaName: "",
1289
- schemaVersion: "",
1290
- };
1291
- }
1292
-
1293
- return parseWebrpcGenVersions(headerValue)
1294
- }
1295
-
1296
- function parseWebrpcGenVersions(header: string): WebrpcGenVersions {
1297
- const versions = header.split(";")
1298
- if (versions.length < 3) {
1299
- return {
1300
- WebrpcGenVersion: "",
1301
- codeGenName: "",
1302
- codeGenVersion: "",
1303
- schemaName: "",
1304
- schemaVersion: "",
1305
- };
1306
- }
1307
-
1308
- const [_, WebrpcGenVersion] = versions[0]!.split("@")
1309
- const [codeGenName, codeGenVersion] = versions[1]!.split("@")
1310
- const [schemaName, schemaVersion] = versions[2]!.split("@")
1311
-
1312
- return {
1313
- WebrpcGenVersion: WebrpcGenVersion ?? "",
1314
- codeGenName: codeGenName ?? "",
1315
- codeGenVersion: codeGenVersion ?? "",
1316
- schemaName: schemaName ?? "",
1317
- schemaVersion: schemaVersion ?? "",
1318
- };
1319
- }
1320
-