rango-sdk 0.1.78 → 0.1.79

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.
@@ -785,47 +785,59 @@ var RangoClient = /*#__PURE__*/function () {
785
785
  return RangoClient;
786
786
  }();
787
787
 
788
- var isEvmBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'EVM'; };
789
- var isCosmosBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'COSMOS'; };
790
- var isSolanaBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'SOLANA'; };
791
- var isTronBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'TRON'; };
792
- var isTransferBlockchain = function (blockchainMeta) {
793
- return blockchainMeta.type === 'TRANSFER';
788
+ var isEvmBlockchain = function isEvmBlockchain(blockchainMeta) {
789
+ return blockchainMeta.type === 'EVM';
794
790
  };
795
- var isStarknetBlockchain = function (blockchainMeta) {
796
- return blockchainMeta.type === 'STARKNET';
791
+ var isCosmosBlockchain = function isCosmosBlockchain(blockchainMeta) {
792
+ return blockchainMeta.type === 'COSMOS';
797
793
  };
798
- var isTonBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'TON'; };
799
- var isXrplBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'XRPL'; };
800
- var isHyperliquidBlockchain = function (blockchainMeta) {
801
- return blockchainMeta.type === 'HYPERLIQUID';
794
+ var isSolanaBlockchain = function isSolanaBlockchain(blockchainMeta) {
795
+ return blockchainMeta.type === 'SOLANA';
802
796
  };
803
- var evmBlockchains = function (blockchains) {
804
- return blockchains.filter(isEvmBlockchain);
797
+ var isTronBlockchain = function isTronBlockchain(blockchainMeta) {
798
+ return blockchainMeta.type === 'TRON';
805
799
  };
806
- var solanaBlockchain = function (blockchains) {
807
- return blockchains.filter(isSolanaBlockchain);
800
+ var isTransferBlockchain = function isTransferBlockchain(blockchainMeta) {
801
+ return blockchainMeta.type === 'TRANSFER';
808
802
  };
809
- var starknetBlockchain = function (blockchains) {
810
- return blockchains.filter(isStarknetBlockchain);
803
+ var isStarknetBlockchain = function isStarknetBlockchain(blockchainMeta) {
804
+ return blockchainMeta.type === 'STARKNET';
811
805
  };
812
- var tronBlockchain = function (blockchains) {
813
- return blockchains.filter(isTronBlockchain);
806
+ var isTonBlockchain = function isTonBlockchain(blockchainMeta) {
807
+ return blockchainMeta.type === 'TON';
814
808
  };
815
- var cosmosBlockchains = function (blockchains) {
816
- return blockchains.filter(isCosmosBlockchain);
809
+ var isXrplBlockchain = function isXrplBlockchain(blockchainMeta) {
810
+ return blockchainMeta.type === 'XRPL';
817
811
  };
818
- var transferBlockchains = function (blockchains) {
819
- return blockchains.filter(isTransferBlockchain);
812
+ var isHyperliquidBlockchain = function isHyperliquidBlockchain(blockchainMeta) {
813
+ return blockchainMeta.type === 'HYPERLIQUID';
820
814
  };
821
- var tonBlockchain = function (blockchains) {
822
- return blockchains.filter(isTonBlockchain);
815
+ var evmBlockchains = function evmBlockchains(blockchains) {
816
+ return blockchains.filter(isEvmBlockchain);
823
817
  };
824
- var xrplBlockchain = function (blockchains) {
825
- return blockchains.filter(isXrplBlockchain);
818
+ var solanaBlockchain = function solanaBlockchain(blockchains) {
819
+ return blockchains.filter(isSolanaBlockchain);
826
820
  };
827
- var hyperliquidBlockchain = function (blockchains) {
828
- return blockchains.filter(isHyperliquidBlockchain);
821
+ var starknetBlockchain = function starknetBlockchain(blockchains) {
822
+ return blockchains.filter(isStarknetBlockchain);
823
+ };
824
+ var tronBlockchain = function tronBlockchain(blockchains) {
825
+ return blockchains.filter(isTronBlockchain);
826
+ };
827
+ var cosmosBlockchains = function cosmosBlockchains(blockchains) {
828
+ return blockchains.filter(isCosmosBlockchain);
829
+ };
830
+ var transferBlockchains = function transferBlockchains(blockchains) {
831
+ return blockchains.filter(isTransferBlockchain);
832
+ };
833
+ var tonBlockchain = function tonBlockchain(blockchains) {
834
+ return blockchains.filter(isTonBlockchain);
835
+ };
836
+ var xrplBlockchain = function xrplBlockchain(blockchains) {
837
+ return blockchains.filter(isXrplBlockchain);
838
+ };
839
+ var hyperliquidBlockchain = function hyperliquidBlockchain(blockchains) {
840
+ return blockchains.filter(isHyperliquidBlockchain);
829
841
  };
830
842
 
831
843
  /**
@@ -833,60 +845,68 @@ var hyperliquidBlockchain = function (blockchains) {
833
845
  *
834
846
  */
835
847
  (function (RoutingResultType) {
836
- RoutingResultType["OK"] = "OK";
837
- RoutingResultType["HIGH_IMPACT"] = "HIGH_IMPACT";
838
- RoutingResultType["NO_ROUTE"] = "NO_ROUTE";
839
- RoutingResultType["INPUT_LIMIT_ISSUE"] = "INPUT_LIMIT_ISSUE";
840
- RoutingResultType["HIGH_IMPACT_FOR_CREATE_TX"] = "HIGH_IMPACT_FOR_CREATE_TX";
848
+ RoutingResultType["OK"] = "OK";
849
+ RoutingResultType["HIGH_IMPACT"] = "HIGH_IMPACT";
850
+ RoutingResultType["NO_ROUTE"] = "NO_ROUTE";
851
+ RoutingResultType["INPUT_LIMIT_ISSUE"] = "INPUT_LIMIT_ISSUE";
852
+ RoutingResultType["HIGH_IMPACT_FOR_CREATE_TX"] = "HIGH_IMPACT_FOR_CREATE_TX";
841
853
  })(exports.RoutingResultType || (exports.RoutingResultType = {}));
842
854
 
843
855
  /**
844
856
  * The type of transaction
845
857
  */
846
858
  (function (TransactionType) {
847
- TransactionType["EVM"] = "EVM";
848
- TransactionType["TRANSFER"] = "TRANSFER";
849
- TransactionType["COSMOS"] = "COSMOS";
850
- TransactionType["SOLANA"] = "SOLANA";
851
- TransactionType["TRON"] = "TRON";
852
- TransactionType["STARKNET"] = "STARKNET";
853
- TransactionType["TON"] = "TON";
854
- TransactionType["SUI"] = "SUI";
855
- TransactionType["XRPL"] = "XRPL";
856
- TransactionType["STELLAR"] = "STELLAR";
857
- TransactionType["HYPERLIQUID"] = "HYPERLIQUID";
859
+ TransactionType["EVM"] = "EVM";
860
+ TransactionType["TRANSFER"] = "TRANSFER";
861
+ TransactionType["COSMOS"] = "COSMOS";
862
+ TransactionType["SOLANA"] = "SOLANA";
863
+ TransactionType["TRON"] = "TRON";
864
+ TransactionType["STARKNET"] = "STARKNET";
865
+ TransactionType["TON"] = "TON";
866
+ TransactionType["SUI"] = "SUI";
867
+ TransactionType["XRPL"] = "XRPL";
868
+ TransactionType["STELLAR"] = "STELLAR";
869
+ TransactionType["HYPERLIQUID"] = "HYPERLIQUID";
858
870
  })(exports.TransactionType || (exports.TransactionType = {}));
859
871
  (function (GenericTransactionType) {
860
- GenericTransactionType["EVM"] = "EVM";
861
- GenericTransactionType["TRANSFER"] = "TRANSFER";
862
- GenericTransactionType["COSMOS"] = "COSMOS";
863
- GenericTransactionType["SOLANA"] = "SOLANA";
872
+ GenericTransactionType["EVM"] = "EVM";
873
+ GenericTransactionType["TRANSFER"] = "TRANSFER";
874
+ GenericTransactionType["COSMOS"] = "COSMOS";
875
+ GenericTransactionType["SOLANA"] = "SOLANA";
864
876
  })(exports.GenericTransactionType || (exports.GenericTransactionType = {}));
865
877
  (function (TransactionStatus) {
866
- TransactionStatus["FAILED"] = "failed";
867
- TransactionStatus["RUNNING"] = "running";
868
- TransactionStatus["SUCCESS"] = "success";
878
+ TransactionStatus["FAILED"] = "failed";
879
+ TransactionStatus["RUNNING"] = "running";
880
+ TransactionStatus["SUCCESS"] = "success";
869
881
  })(exports.TransactionStatus || (exports.TransactionStatus = {}));
870
882
 
871
- var isCosmosTransaction = function (transaction) {
872
- return transaction.type === exports.TransactionType.COSMOS;
883
+ var isCosmosTransaction = function isCosmosTransaction(transaction) {
884
+ return transaction.type === exports.TransactionType.COSMOS;
873
885
  };
874
886
 
875
- var isSolanaTransaction = function (transaction) {
876
- return transaction.type === exports.TransactionType.SOLANA;
887
+ var isSolanaTransaction = function isSolanaTransaction(transaction) {
888
+ return transaction.type === exports.TransactionType.SOLANA;
877
889
  };
878
890
 
879
- var isTransferTransaction = function (transaction) { return transaction.type === exports.TransactionType.TRANSFER; };
891
+ var isTransferTransaction = function isTransferTransaction(transaction) {
892
+ return transaction.type === exports.TransactionType.TRANSFER;
893
+ };
880
894
 
881
- var isTronTransaction = function (transaction) { return transaction.type === exports.TransactionType.TRON; };
895
+ var isTronTransaction = function isTronTransaction(transaction) {
896
+ return transaction.type === exports.TransactionType.TRON;
897
+ };
882
898
 
883
899
  (function (TonChainID) {
884
- TonChainID["MAINNET"] = "-239";
885
- TonChainID["TESTNET"] = "-3";
900
+ TonChainID["MAINNET"] = "-239";
901
+ TonChainID["TESTNET"] = "-3";
886
902
  })(exports.TonChainID || (exports.TonChainID = {}));
887
- var isTonTransaction = function (transaction) { return transaction.type === exports.TransactionType.TON; };
903
+ var isTonTransaction = function isTonTransaction(transaction) {
904
+ return transaction.type === exports.TransactionType.TON;
905
+ };
888
906
 
889
- var isEvmTransaction = function (transaction) { return transaction.type === exports.TransactionType.EVM; };
907
+ var isEvmTransaction = function isEvmTransaction(transaction) {
908
+ return transaction.type === exports.TransactionType.EVM;
909
+ };
890
910
 
891
911
  exports.RangoClient = RangoClient;
892
912
  exports.cosmosBlockchains = cosmosBlockchains;
@@ -1 +1 @@
1
- {"version":3,"file":"rango-sdk.cjs.development.js","sources":["../src/services/client.ts","../node_modules/rango-types/src/api/shared/type-gaurds.ts","../node_modules/rango-types/src/api/shared/routing.ts","../node_modules/rango-types/src/api/shared/transactions.ts","../node_modules/rango-types/src/api/shared/txs/cosmos.ts","../node_modules/rango-types/src/api/shared/txs/solana.ts","../node_modules/rango-types/src/api/shared/txs/transfer.ts","../node_modules/rango-types/src/api/shared/txs/tron.ts","../node_modules/rango-types/src/api/shared/txs/ton.ts","../node_modules/rango-types/src/api/main/txs/evm.ts"],"sourcesContent":["import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n","/**\n * Routing Result Type\n *\n */\nexport enum RoutingResultType {\n OK = 'OK',\n HIGH_IMPACT = 'HIGH_IMPACT',\n NO_ROUTE = 'NO_ROUTE',\n INPUT_LIMIT_ISSUE = 'INPUT_LIMIT_ISSUE',\n HIGH_IMPACT_FOR_CREATE_TX = 'HIGH_IMPACT_FOR_CREATE_TX',\n}\n","/**\n * The type of transaction\n */\nexport enum TransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n TRON = 'TRON',\n STARKNET = 'STARKNET',\n TON = 'TON',\n SUI = 'SUI',\n XRPL = 'XRPL',\n STELLAR = 'STELLAR',\n HYPERLIQUID = 'HYPERLIQUID',\n}\n\n/**\n * The type of transaction\n * @deprecated use TransactionType instead\n */\nexport enum GenericTransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n}\n\n/**\n * A transaction's url that can be displayed to advanced user to track the progress\n *\n * @property {string} url - Url of the transaction in blockchain explorer. example: https://etherscan.io/tx/0xa1a3...\n * @property {string | null} description - A custom display name to help user distinguish the transactions from each\n * other. Example: Inbound, Outbound, Bridge, or null\n *\n */\nexport type SwapExplorerUrl = {\n description: string | null\n url: string\n}\n\n/**\n * APIErrorCode\n *\n * Error code of a swap failure\n *\n */\nexport type APIErrorCode =\n | 'TX_FAIL'\n | 'TX_EXPIRED'\n | 'FETCH_TX_FAILED'\n | 'USER_REJECT'\n | 'USER_CANCEL'\n | 'USER_CANCELED_TX'\n | 'CALL_WALLET_FAILED'\n | 'SEND_TX_FAILED'\n | 'CALL_OR_SEND_FAILED'\n | 'TX_FAILED_IN_BLOCKCHAIN'\n | 'CLIENT_UNEXPECTED_BEHAVIOUR'\n | 'INSUFFICIENT_APPROVE'\n\n/**\n * The function checks if a given string value is a valid API error code.\n * @param {string} value - a string that represents a possible API error code.\n * @returns A boolean value is being returned, indicating whether the input `value` is of type\n * `APIErrorCode` or not.\n */\nexport function isAPIErrorCode(value: string): value is APIErrorCode {\n return [\n 'TX_FAIL',\n 'TX_EXPIRED',\n 'FETCH_TX_FAILED',\n 'USER_REJECT',\n 'USER_CANCEL',\n 'USER_CANCELED_TX',\n 'CALL_WALLET_FAILED',\n 'SEND_TX_FAILED',\n 'CALL_OR_SEND_FAILED',\n 'TX_FAILED_IN_BLOCKCHAIN',\n 'CLIENT_UNEXPECTED_BEHAVIOUR',\n 'INSUFFICIENT_APPROVE',\n ].includes(value)\n}\n\n/**\n * ReportTransactionRequest\n *\n * It should be used when an error happened in client and we want to inform server that transaction failed,\n * E.g. user rejected the transaction dialog or and an RPC error raised during signing tx by user.\n *\n * @property {string} requestId - The requestId from best route endpoint\n * @property {APIErrorCode} eventType - Type of the event that happened, example: USER_REJECT\n * @property {number} [step] - Step number in which failure happened\n * @property {string} [reason] - Reason or message for the error\n * @property {[key: string]: string} [data] - @deprecated A list of key-value for extra details\n * @property {wallet?: string, errorCode? string} [tags] - A list of key-value for pre-defined tags\n *\n */\nexport type ReportTransactionRequest = {\n requestId: string\n eventType: APIErrorCode\n step?: number\n reason?: string\n data?: { [key: string]: string }\n tags?: { wallet?: string; errorCode?: string }\n}\n\n/**\n * The status of transaction in tracking\n */\nexport enum TransactionStatus {\n FAILED = 'failed',\n RUNNING = 'running',\n SUCCESS = 'success',\n}\n\n/**\n * Response body of check-approval\n * You could stop check approval if:\n * 1- approved successfully\n * => isApproved = true\n * 2- approval transaction failed\n * => isApproved = false && txStatus === 'failed'\n * 3- approval transaction succeeded but currentApprovedAmount is still less than requiredApprovedAmount\n * (e.g. user changed transaction data and enter another approve amount in MetaMask)\n * => isApproved = false && txStatus == 'success'\n *\n * @property {boolean} isApproved - A flag which indicates that the approve tx is done or not\n * @property {TransactionStatus | null} txStatus - Status of approve transaction in blockchain,\n * if isArppoved is false and txStatus is failed, it seems that approve transaction failed in blockchain\n * @property {string | null} requiredApprovedAmount - required amount to be approved by user\n * @property {string | null} currentApprovedAmount - current approved amount by user\n *\n */\nexport type CheckApprovalResponse = {\n isApproved: boolean\n txStatus: TransactionStatus | null\n requiredApprovedAmount: string | null\n currentApprovedAmount: string | null\n}\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * CosmosCoin\n */\nexport type CosmosCoin = {\n amount: string\n denom: string\n}\n\n/**\n * CosmosProtoMsg\n */\nexport type CosmosProtoMsg = {\n type_url: string\n value: number[]\n}\n\n/**\n * CosmosFee representing fee for cosmos transaction\n */\nexport type CosmosFee = {\n gas: string\n amount: CosmosCoin[]\n}\n\n/**\n * Main transaction object for COSMOS type transactions\n */\nexport type CosmosMessage = {\n signType: 'AMINO' | 'DIRECT'\n sequence: string | null\n source: number | null\n account_number: number | null\n rpcUrl: string\n chainId: string | null\n msgs: any[] // TODO\n protoMsgs: CosmosProtoMsg[]\n memo: string | null\n fee: CosmosFee | null\n}\n/**\n * An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages (e.g. XDefi)\n *\n * @property {AssetWithTicker} asset - The asset to be transferred\n * @property {string} amount - The machine-readable amount to transfer, example: 1000000000000000000\n * @property {number} decimals - The decimals for this asset, example: 18\n * @property {string | null} memo - Memo of transaction, could be null\n * @property {string} method - The transaction method, example: transfer, deposit\n * @property {string} recipient - The recipient address of transaction\n *\n */\nexport type CosmosRawTransferData = {\n amount: string\n asset: AssetWithTicker\n decimals: number\n memo: string | null\n method: string\n recipient: string\n}\n\n/**\n * A Cosmos transaction, child of GenericTransaction\n *\n * @property {TransactionType} type - This fields equals to COSMOS for all CosmosTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} fromWalletAddress - Address of wallet that this transaction should be executed in, same as the create transaction request's input\n * @property {CosmosMessage} data - Transaction data\n * @property {CosmosRawTransferData | null} rawTransfer - An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages\n *\n */\nexport interface CosmosTransaction extends BaseTransaction {\n type: TransactionType.COSMOS\n fromWalletAddress: string\n data: CosmosMessage\n rawTransfer: CosmosRawTransferData | null\n}\n\nexport const isCosmosTransaction = (transaction: {\n type: TransactionType\n}): transaction is CosmosTransaction =>\n transaction.type === TransactionType.COSMOS\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * Account metadata used to define instructions\n */\nexport type SolanaInstructionKey = {\n pubkey: string\n isSigner: boolean\n isWritable: boolean\n}\n\n/**\n * Transaction Instruction class\n */\nexport type SolanaInstruction = {\n keys: SolanaInstructionKey[]\n programId: string\n data: number[]\n}\n\n/**\n * Pair of signature and corresponding public key\n */\nexport type SolanaSignature = {\n signature: number[]\n publicKey: string\n}\n\n/**\n * This type of transaction is used for all solana transactions\n *\n * @property {TransactionType} type - This fields equals to SOLANA for all SolanaTransactions\n * @property {'LEGACY' | 'VERSIONED'} txType - Type of the solana transaction\n * @property {string} blockChain, equals to SOLANA\n * @property {string} from, Source wallet address\n * @property {string} identifier, Transaction hash used in case of retry\n * @property {string | null} recentBlockhash, A recent blockhash\n * @property {SolanaSignature[]} signatures, Signatures for the transaction\n * @property {number[] | null} serializedMessage, The byte array of the transaction\n * @property {SolanaInstruction[]} instructions, The instructions to atomically execute\n *\n */\nexport interface SolanaTransaction extends BaseTransaction {\n type: TransactionType.SOLANA\n txType: 'LEGACY' | 'VERSIONED'\n from: string\n identifier: string\n recentBlockhash: string | null\n signatures: SolanaSignature[]\n serializedMessage: number[] | null\n instructions: SolanaInstruction[]\n}\n\nexport const isSolanaTransaction = (transaction: {\n type: TransactionType\n}): transaction is SolanaTransaction =>\n transaction.type === TransactionType.SOLANA\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type InputToSign = { address: string, signingIndexes: number[] }\n/**\n * @property {unsignedPsbtBase64} unsignedPsbtBase64 - Base 64 representation of the Unsigned PSBT\n * @property {InputToSign[]} inputsToSign - Inputs to be signed\n */\nexport type PSBT = {\n unsignedPsbtBase64: string\n inputsToSign: InputToSign[]\n}\n/**\n * TransferTransaction. This type of transaction is used for UTXO blockchains including BTC, LTC, BCH\n *\n * @property {TransactionType} type - This fields equals to TRANSFER for all TransferTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} method - The method that should be passed to wallet. examples: deposit, transfer\n * @property {AssetWithTicker} asset\n * @property {string} amount - The machine-readable amount of transaction, example: 1000000000000000000\n * @property {number} decimals - The decimals of the asset\n * @property {string} fromWalletAddress - The source wallet address that can sign this transaction\n * @property {string} recipientAddress - The destination wallet address that the fund should be sent to\n * @property {string | null} memo - The memo of transaction, can be null\n * @property {PSBT | null} psbt - PSBT object containing base 64 representation of the Unsigned PSBT along with the inputs to be signed\n *\n */\nexport interface Transfer extends BaseTransaction {\n type: TransactionType.TRANSFER\n method: string\n asset: AssetWithTicker\n amount: string\n decimals: number\n fromWalletAddress: string\n recipientAddress: string\n memo: string | null\n psbt: PSBT | null\n}\n\nexport const isTransferTransaction = (transaction: {\n type: TransactionType\n}): transaction is Transfer => transaction.type === TransactionType.TRANSFER\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type TrxContractParameter = {\n value: unknown\n type_url: string\n}\n\nexport type TrxContractData = {\n parameter: TrxContractParameter\n type: string\n}\n\nexport type TrxRawData = {\n contract: TrxContractData[]\n ref_block_bytes: string\n ref_block_hash: string\n expiration: number\n timestamp: number\n}\n\n/**\n * TronTransaction\n *\n * @property {TransactionType} type - TransactionType.TRON\n * @property {boolean} isApprovalTx - Whether or not the transaction is an approval transaction.\n * @property {TrxRawData | null} raw_data - This is the raw data of the transaction.\n * @property {string | null} raw_data_hex - The raw hex data of the transaction.\n * @property {string} txID - The transaction ID.\n * @property {boolean} visible - boolean\n * @property {object} __payload__\n */\nexport interface TronTransaction extends BaseTransaction {\n type: TransactionType.TRON\n isApprovalTx: boolean\n raw_data: TrxRawData | null\n raw_data_hex: string | null\n txID: string\n visible: boolean\n __payload__: object\n}\n\nexport const isTronTransaction = (transaction: {\n type: TransactionType\n}): transaction is TronTransaction => transaction.type === TransactionType.TRON\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport enum TonChainID {\n MAINNET = '-239',\n TESTNET = '-3',\n}\n\n/**\n * @property {string} address - Receiver's address\n * @property {string} amount - Amount to send in nanoTon\n * @property {string} [stateInit] - Contract specific data to add to the transaction\n * @property {string} [payload] - Contract specific data to add to the transaction\n */\nexport interface TonMessage {\n address: string\n amount: string\n stateInit?: string\n payload?: string\n}\n\n/**\n * This type of transaction is used for all Ton transactions\n *\n * @property {TransactionType} type - This field equals to TON for all Ton transactions\n * @property {number} validUntil - Sending transaction deadline in unix epoch seconds\n * @property {TonChainID} [network] - The network (mainnet or testnet) where DApp intends to send the transaction. If not set, the transaction is sent to the network currently set in the wallet, but this is not safe and DApp should always strive to set the network. If the network parameter is set, but the wallet has a different network set, the wallet should show an alert and DO NOT ALLOW TO SEND this transaction\n * @property {string} [from] - The sender address in '<wc>:<hex>' format from which DApp intends to send the transaction. Current account.address by default\n * @property {TonMessage[]} messages - Messages to send: min is 1, max is 4\n */\nexport interface TonTransaction extends BaseTransaction {\n type: TransactionType.TON\n validUntil: number\n network?: TonChainID\n from?: string\n messages: TonMessage[]\n}\n\nexport const isTonTransaction = (transaction: {\n type: TransactionType\n}): transaction is TonTransaction => transaction.type === TransactionType.TON\n","import { BaseTransaction, TransactionType } from '../../shared/index.js'\n\n/**\n * The transaction object for all EVM-based blockchains, including Ethereum, BSC, Polygon, Harmony, etc\n *\n * @property {TransactionType} type - This fields equals to EVM for all EvmTransactions\n * @property {string} blockChain - The blockchain that this transaction is going to run in\n * @property {boolean} isApprovalTx - Determines that this transaction is an approval transaction or not, if true user\n * should approve the transaction and call create transaction endpoint again to get the original tx. Beware that most\n * of the fields of this object will be passed directly to the wallet without any change.\n * @property {string | null} from - The source wallet address, it can be null\n * @property {string} to - Address of destination wallet or the smart contract or token that is going to be called\n * @property {string | null} data - The data of smart contract call, it can be null in case of native token transfer\n * @property {string | null} value - The amount of transaction in case of native token transfer\n * @property {string | null} nonce - The nonce value for transaction\n * @property {string | null} gasPrice - The suggested gas price for this transaction\n * @property {string | null} gasLimit - The suggested gas limit for this transaction\n * @property {string | null} maxPriorityFeePerGas - Suggested max priority fee per gas for this transaction\n * @property {string | null} maxFeePerGas - Suggested max fee per gas for this transaction\n *\n */\nexport interface EvmTransaction extends BaseTransaction {\n type: TransactionType.EVM\n isApprovalTx: boolean\n from: string | null\n to: string\n data: string | null\n value: string | null\n nonce: string | null\n gasLimit: string | null\n gasPrice: string | null\n maxPriorityFeePerGas: string | null\n maxFeePerGas: string | null\n}\n\nexport const isEvmTransaction = (transaction: {\n type: TransactionType\n}): transaction is EvmTransaction => transaction.type === TransactionType.EVM\n"],"names":["RangoClient","apiKey","apiUrl","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_callee$","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","sent","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_callee2$","_context2","_x3","getSwappers","_getSwappers","_callee3","_callee3$","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_callee4$","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_callee5$","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_callee6$","_context6","post","headers","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_callee7$","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_callee8$","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_callee9$","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_callee10$","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_callee11$","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_callee12$","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_callee13$","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_callee14$","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_callee15$","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_callee16$","_context16","_x30","_x31","RoutingResultType","TransactionType","GenericTransactionType","TransactionStatus","TonChainID"],"mappings":"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"}
1
+ {"version":3,"file":"rango-sdk.cjs.development.js","sources":["../src/services/client.ts","../../rango-types/src/api/shared/type-gaurds.ts","../../rango-types/src/api/shared/routing.ts","../../rango-types/src/api/shared/transactions.ts","../../rango-types/src/api/shared/txs/ton.ts"],"sourcesContent":["import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n","/**\n * Routing Result Type\n *\n */\nexport enum RoutingResultType {\n OK = 'OK',\n HIGH_IMPACT = 'HIGH_IMPACT',\n NO_ROUTE = 'NO_ROUTE',\n INPUT_LIMIT_ISSUE = 'INPUT_LIMIT_ISSUE',\n HIGH_IMPACT_FOR_CREATE_TX = 'HIGH_IMPACT_FOR_CREATE_TX',\n}\n","/**\n * The type of transaction\n */\nexport enum TransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n TRON = 'TRON',\n STARKNET = 'STARKNET',\n TON = 'TON',\n SUI = 'SUI',\n XRPL = 'XRPL',\n STELLAR = 'STELLAR',\n HYPERLIQUID = 'HYPERLIQUID',\n}\n\n/**\n * The type of transaction\n * @deprecated use TransactionType instead\n */\nexport enum GenericTransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n}\n\n/**\n * A transaction's url that can be displayed to advanced user to track the progress\n *\n * @property {string} url - Url of the transaction in blockchain explorer. example: https://etherscan.io/tx/0xa1a3...\n * @property {string | null} description - A custom display name to help user distinguish the transactions from each\n * other. Example: Inbound, Outbound, Bridge, or null\n *\n */\nexport type SwapExplorerUrl = {\n description: string | null\n url: string\n}\n\n/**\n * APIErrorCode\n *\n * Error code of a swap failure\n *\n */\nexport type APIErrorCode =\n | 'TX_FAIL'\n | 'TX_EXPIRED'\n | 'FETCH_TX_FAILED'\n | 'USER_REJECT'\n | 'USER_CANCEL'\n | 'USER_CANCELED_TX'\n | 'CALL_WALLET_FAILED'\n | 'SEND_TX_FAILED'\n | 'CALL_OR_SEND_FAILED'\n | 'TX_FAILED_IN_BLOCKCHAIN'\n | 'CLIENT_UNEXPECTED_BEHAVIOUR'\n | 'INSUFFICIENT_APPROVE'\n\n/**\n * The function checks if a given string value is a valid API error code.\n * @param {string} value - a string that represents a possible API error code.\n * @returns A boolean value is being returned, indicating whether the input `value` is of type\n * `APIErrorCode` or not.\n */\nexport function isAPIErrorCode(value: string): value is APIErrorCode {\n return [\n 'TX_FAIL',\n 'TX_EXPIRED',\n 'FETCH_TX_FAILED',\n 'USER_REJECT',\n 'USER_CANCEL',\n 'USER_CANCELED_TX',\n 'CALL_WALLET_FAILED',\n 'SEND_TX_FAILED',\n 'CALL_OR_SEND_FAILED',\n 'TX_FAILED_IN_BLOCKCHAIN',\n 'CLIENT_UNEXPECTED_BEHAVIOUR',\n 'INSUFFICIENT_APPROVE',\n ].includes(value)\n}\n\n/**\n * ReportTransactionRequest\n *\n * It should be used when an error happened in client and we want to inform server that transaction failed,\n * E.g. user rejected the transaction dialog or and an RPC error raised during signing tx by user.\n *\n * @property {string} requestId - The requestId from best route endpoint\n * @property {APIErrorCode} eventType - Type of the event that happened, example: USER_REJECT\n * @property {number} [step] - Step number in which failure happened\n * @property {string} [reason] - Reason or message for the error\n * @property {[key: string]: string} [data] - @deprecated A list of key-value for extra details\n * @property {wallet?: string, errorCode? string} [tags] - A list of key-value for pre-defined tags\n *\n */\nexport type ReportTransactionRequest = {\n requestId: string\n eventType: APIErrorCode\n step?: number\n reason?: string\n data?: { [key: string]: string }\n tags?: { wallet?: string; errorCode?: string }\n}\n\n/**\n * The status of transaction in tracking\n */\nexport enum TransactionStatus {\n FAILED = 'failed',\n RUNNING = 'running',\n SUCCESS = 'success',\n}\n\n/**\n * Response body of check-approval\n * You could stop check approval if:\n * 1- approved successfully\n * => isApproved = true\n * 2- approval transaction failed\n * => isApproved = false && txStatus === 'failed'\n * 3- approval transaction succeeded but currentApprovedAmount is still less than requiredApprovedAmount\n * (e.g. user changed transaction data and enter another approve amount in MetaMask)\n * => isApproved = false && txStatus == 'success'\n *\n * @property {boolean} isApproved - A flag which indicates that the approve tx is done or not\n * @property {TransactionStatus | null} txStatus - Status of approve transaction in blockchain,\n * if isArppoved is false and txStatus is failed, it seems that approve transaction failed in blockchain\n * @property {string | null} requiredApprovedAmount - required amount to be approved by user\n * @property {string | null} currentApprovedAmount - current approved amount by user\n *\n */\nexport type CheckApprovalResponse = {\n isApproved: boolean\n txStatus: TransactionStatus | null\n requiredApprovedAmount: string | null\n currentApprovedAmount: string | null\n}\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport enum TonChainID {\n MAINNET = '-239',\n TESTNET = '-3',\n}\n\n/**\n * @property {string} address - Receiver's address\n * @property {string} amount - Amount to send in nanoTon\n * @property {string} [stateInit] - Contract specific data to add to the transaction\n * @property {string} [payload] - Contract specific data to add to the transaction\n */\nexport interface TonMessage {\n address: string\n amount: string\n stateInit?: string\n payload?: string\n}\n\n/**\n * This type of transaction is used for all Ton transactions\n *\n * @property {TransactionType} type - This field equals to TON for all Ton transactions\n * @property {number} validUntil - Sending transaction deadline in unix epoch seconds\n * @property {TonChainID} [network] - The network (mainnet or testnet) where DApp intends to send the transaction. If not set, the transaction is sent to the network currently set in the wallet, but this is not safe and DApp should always strive to set the network. If the network parameter is set, but the wallet has a different network set, the wallet should show an alert and DO NOT ALLOW TO SEND this transaction\n * @property {string} [from] - The sender address in '<wc>:<hex>' format from which DApp intends to send the transaction. Current account.address by default\n * @property {TonMessage[]} messages - Messages to send: min is 1, max is 4\n */\nexport interface TonTransaction extends BaseTransaction {\n type: TransactionType.TON\n validUntil: number\n network?: TonChainID\n from?: string\n messages: TonMessage[]\n}\n\nexport const isTonTransaction = (transaction: {\n type: TransactionType\n}): transaction is TonTransaction => transaction.type === TransactionType.TON\n"],"names":["RangoClient","apiKey","apiUrl","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_callee$","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","sent","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_callee2$","_context2","_x3","getSwappers","_getSwappers","_callee3","_callee3$","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_callee4$","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_callee5$","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_callee6$","_context6","post","headers","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_callee7$","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_callee8$","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_callee9$","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_callee10$","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_callee11$","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_callee12$","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_callee13$","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_callee14$","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_callee15$","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_callee16$","_context16","_x30","_x31","blockchainMeta","isTronBlockchain"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rango-sdk.cjs.production.min.js","sources":["../node_modules/rango-types/src/api/shared/routing.ts","../node_modules/rango-types/src/api/shared/transactions.ts","../node_modules/rango-types/src/api/shared/txs/ton.ts","../src/services/client.ts","../node_modules/rango-types/src/api/shared/type-gaurds.ts","../node_modules/rango-types/src/api/shared/txs/cosmos.ts","../node_modules/rango-types/src/api/main/txs/evm.ts","../node_modules/rango-types/src/api/shared/txs/solana.ts","../node_modules/rango-types/src/api/shared/txs/transfer.ts","../node_modules/rango-types/src/api/shared/txs/tron.ts"],"sourcesContent":["/**\n * Routing Result Type\n *\n */\nexport enum RoutingResultType {\n OK = 'OK',\n HIGH_IMPACT = 'HIGH_IMPACT',\n NO_ROUTE = 'NO_ROUTE',\n INPUT_LIMIT_ISSUE = 'INPUT_LIMIT_ISSUE',\n HIGH_IMPACT_FOR_CREATE_TX = 'HIGH_IMPACT_FOR_CREATE_TX',\n}\n","/**\n * The type of transaction\n */\nexport enum TransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n TRON = 'TRON',\n STARKNET = 'STARKNET',\n TON = 'TON',\n SUI = 'SUI',\n XRPL = 'XRPL',\n STELLAR = 'STELLAR',\n HYPERLIQUID = 'HYPERLIQUID',\n}\n\n/**\n * The type of transaction\n * @deprecated use TransactionType instead\n */\nexport enum GenericTransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n}\n\n/**\n * A transaction's url that can be displayed to advanced user to track the progress\n *\n * @property {string} url - Url of the transaction in blockchain explorer. example: https://etherscan.io/tx/0xa1a3...\n * @property {string | null} description - A custom display name to help user distinguish the transactions from each\n * other. Example: Inbound, Outbound, Bridge, or null\n *\n */\nexport type SwapExplorerUrl = {\n description: string | null\n url: string\n}\n\n/**\n * APIErrorCode\n *\n * Error code of a swap failure\n *\n */\nexport type APIErrorCode =\n | 'TX_FAIL'\n | 'TX_EXPIRED'\n | 'FETCH_TX_FAILED'\n | 'USER_REJECT'\n | 'USER_CANCEL'\n | 'USER_CANCELED_TX'\n | 'CALL_WALLET_FAILED'\n | 'SEND_TX_FAILED'\n | 'CALL_OR_SEND_FAILED'\n | 'TX_FAILED_IN_BLOCKCHAIN'\n | 'CLIENT_UNEXPECTED_BEHAVIOUR'\n | 'INSUFFICIENT_APPROVE'\n\n/**\n * The function checks if a given string value is a valid API error code.\n * @param {string} value - a string that represents a possible API error code.\n * @returns A boolean value is being returned, indicating whether the input `value` is of type\n * `APIErrorCode` or not.\n */\nexport function isAPIErrorCode(value: string): value is APIErrorCode {\n return [\n 'TX_FAIL',\n 'TX_EXPIRED',\n 'FETCH_TX_FAILED',\n 'USER_REJECT',\n 'USER_CANCEL',\n 'USER_CANCELED_TX',\n 'CALL_WALLET_FAILED',\n 'SEND_TX_FAILED',\n 'CALL_OR_SEND_FAILED',\n 'TX_FAILED_IN_BLOCKCHAIN',\n 'CLIENT_UNEXPECTED_BEHAVIOUR',\n 'INSUFFICIENT_APPROVE',\n ].includes(value)\n}\n\n/**\n * ReportTransactionRequest\n *\n * It should be used when an error happened in client and we want to inform server that transaction failed,\n * E.g. user rejected the transaction dialog or and an RPC error raised during signing tx by user.\n *\n * @property {string} requestId - The requestId from best route endpoint\n * @property {APIErrorCode} eventType - Type of the event that happened, example: USER_REJECT\n * @property {number} [step] - Step number in which failure happened\n * @property {string} [reason] - Reason or message for the error\n * @property {[key: string]: string} [data] - @deprecated A list of key-value for extra details\n * @property {wallet?: string, errorCode? string} [tags] - A list of key-value for pre-defined tags\n *\n */\nexport type ReportTransactionRequest = {\n requestId: string\n eventType: APIErrorCode\n step?: number\n reason?: string\n data?: { [key: string]: string }\n tags?: { wallet?: string; errorCode?: string }\n}\n\n/**\n * The status of transaction in tracking\n */\nexport enum TransactionStatus {\n FAILED = 'failed',\n RUNNING = 'running',\n SUCCESS = 'success',\n}\n\n/**\n * Response body of check-approval\n * You could stop check approval if:\n * 1- approved successfully\n * => isApproved = true\n * 2- approval transaction failed\n * => isApproved = false && txStatus === 'failed'\n * 3- approval transaction succeeded but currentApprovedAmount is still less than requiredApprovedAmount\n * (e.g. user changed transaction data and enter another approve amount in MetaMask)\n * => isApproved = false && txStatus == 'success'\n *\n * @property {boolean} isApproved - A flag which indicates that the approve tx is done or not\n * @property {TransactionStatus | null} txStatus - Status of approve transaction in blockchain,\n * if isArppoved is false and txStatus is failed, it seems that approve transaction failed in blockchain\n * @property {string | null} requiredApprovedAmount - required amount to be approved by user\n * @property {string | null} currentApprovedAmount - current approved amount by user\n *\n */\nexport type CheckApprovalResponse = {\n isApproved: boolean\n txStatus: TransactionStatus | null\n requiredApprovedAmount: string | null\n currentApprovedAmount: string | null\n}\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport enum TonChainID {\n MAINNET = '-239',\n TESTNET = '-3',\n}\n\n/**\n * @property {string} address - Receiver's address\n * @property {string} amount - Amount to send in nanoTon\n * @property {string} [stateInit] - Contract specific data to add to the transaction\n * @property {string} [payload] - Contract specific data to add to the transaction\n */\nexport interface TonMessage {\n address: string\n amount: string\n stateInit?: string\n payload?: string\n}\n\n/**\n * This type of transaction is used for all Ton transactions\n *\n * @property {TransactionType} type - This field equals to TON for all Ton transactions\n * @property {number} validUntil - Sending transaction deadline in unix epoch seconds\n * @property {TonChainID} [network] - The network (mainnet or testnet) where DApp intends to send the transaction. If not set, the transaction is sent to the network currently set in the wallet, but this is not safe and DApp should always strive to set the network. If the network parameter is set, but the wallet has a different network set, the wallet should show an alert and DO NOT ALLOW TO SEND this transaction\n * @property {string} [from] - The sender address in '<wc>:<hex>' format from which DApp intends to send the transaction. Current account.address by default\n * @property {TonMessage[]} messages - Messages to send: min is 1, max is 4\n */\nexport interface TonTransaction extends BaseTransaction {\n type: TransactionType.TON\n validUntil: number\n network?: TonChainID\n from?: string\n messages: TonMessage[]\n}\n\nexport const isTonTransaction = (transaction: {\n type: TransactionType\n}): transaction is TonTransaction => transaction.type === TransactionType.TON\n","import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * CosmosCoin\n */\nexport type CosmosCoin = {\n amount: string\n denom: string\n}\n\n/**\n * CosmosProtoMsg\n */\nexport type CosmosProtoMsg = {\n type_url: string\n value: number[]\n}\n\n/**\n * CosmosFee representing fee for cosmos transaction\n */\nexport type CosmosFee = {\n gas: string\n amount: CosmosCoin[]\n}\n\n/**\n * Main transaction object for COSMOS type transactions\n */\nexport type CosmosMessage = {\n signType: 'AMINO' | 'DIRECT'\n sequence: string | null\n source: number | null\n account_number: number | null\n rpcUrl: string\n chainId: string | null\n msgs: any[] // TODO\n protoMsgs: CosmosProtoMsg[]\n memo: string | null\n fee: CosmosFee | null\n}\n/**\n * An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages (e.g. XDefi)\n *\n * @property {AssetWithTicker} asset - The asset to be transferred\n * @property {string} amount - The machine-readable amount to transfer, example: 1000000000000000000\n * @property {number} decimals - The decimals for this asset, example: 18\n * @property {string | null} memo - Memo of transaction, could be null\n * @property {string} method - The transaction method, example: transfer, deposit\n * @property {string} recipient - The recipient address of transaction\n *\n */\nexport type CosmosRawTransferData = {\n amount: string\n asset: AssetWithTicker\n decimals: number\n memo: string | null\n method: string\n recipient: string\n}\n\n/**\n * A Cosmos transaction, child of GenericTransaction\n *\n * @property {TransactionType} type - This fields equals to COSMOS for all CosmosTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} fromWalletAddress - Address of wallet that this transaction should be executed in, same as the create transaction request's input\n * @property {CosmosMessage} data - Transaction data\n * @property {CosmosRawTransferData | null} rawTransfer - An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages\n *\n */\nexport interface CosmosTransaction extends BaseTransaction {\n type: TransactionType.COSMOS\n fromWalletAddress: string\n data: CosmosMessage\n rawTransfer: CosmosRawTransferData | null\n}\n\nexport const isCosmosTransaction = (transaction: {\n type: TransactionType\n}): transaction is CosmosTransaction =>\n transaction.type === TransactionType.COSMOS\n","import { BaseTransaction, TransactionType } from '../../shared/index.js'\n\n/**\n * The transaction object for all EVM-based blockchains, including Ethereum, BSC, Polygon, Harmony, etc\n *\n * @property {TransactionType} type - This fields equals to EVM for all EvmTransactions\n * @property {string} blockChain - The blockchain that this transaction is going to run in\n * @property {boolean} isApprovalTx - Determines that this transaction is an approval transaction or not, if true user\n * should approve the transaction and call create transaction endpoint again to get the original tx. Beware that most\n * of the fields of this object will be passed directly to the wallet without any change.\n * @property {string | null} from - The source wallet address, it can be null\n * @property {string} to - Address of destination wallet or the smart contract or token that is going to be called\n * @property {string | null} data - The data of smart contract call, it can be null in case of native token transfer\n * @property {string | null} value - The amount of transaction in case of native token transfer\n * @property {string | null} nonce - The nonce value for transaction\n * @property {string | null} gasPrice - The suggested gas price for this transaction\n * @property {string | null} gasLimit - The suggested gas limit for this transaction\n * @property {string | null} maxPriorityFeePerGas - Suggested max priority fee per gas for this transaction\n * @property {string | null} maxFeePerGas - Suggested max fee per gas for this transaction\n *\n */\nexport interface EvmTransaction extends BaseTransaction {\n type: TransactionType.EVM\n isApprovalTx: boolean\n from: string | null\n to: string\n data: string | null\n value: string | null\n nonce: string | null\n gasLimit: string | null\n gasPrice: string | null\n maxPriorityFeePerGas: string | null\n maxFeePerGas: string | null\n}\n\nexport const isEvmTransaction = (transaction: {\n type: TransactionType\n}): transaction is EvmTransaction => transaction.type === TransactionType.EVM\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * Account metadata used to define instructions\n */\nexport type SolanaInstructionKey = {\n pubkey: string\n isSigner: boolean\n isWritable: boolean\n}\n\n/**\n * Transaction Instruction class\n */\nexport type SolanaInstruction = {\n keys: SolanaInstructionKey[]\n programId: string\n data: number[]\n}\n\n/**\n * Pair of signature and corresponding public key\n */\nexport type SolanaSignature = {\n signature: number[]\n publicKey: string\n}\n\n/**\n * This type of transaction is used for all solana transactions\n *\n * @property {TransactionType} type - This fields equals to SOLANA for all SolanaTransactions\n * @property {'LEGACY' | 'VERSIONED'} txType - Type of the solana transaction\n * @property {string} blockChain, equals to SOLANA\n * @property {string} from, Source wallet address\n * @property {string} identifier, Transaction hash used in case of retry\n * @property {string | null} recentBlockhash, A recent blockhash\n * @property {SolanaSignature[]} signatures, Signatures for the transaction\n * @property {number[] | null} serializedMessage, The byte array of the transaction\n * @property {SolanaInstruction[]} instructions, The instructions to atomically execute\n *\n */\nexport interface SolanaTransaction extends BaseTransaction {\n type: TransactionType.SOLANA\n txType: 'LEGACY' | 'VERSIONED'\n from: string\n identifier: string\n recentBlockhash: string | null\n signatures: SolanaSignature[]\n serializedMessage: number[] | null\n instructions: SolanaInstruction[]\n}\n\nexport const isSolanaTransaction = (transaction: {\n type: TransactionType\n}): transaction is SolanaTransaction =>\n transaction.type === TransactionType.SOLANA\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type InputToSign = { address: string, signingIndexes: number[] }\n/**\n * @property {unsignedPsbtBase64} unsignedPsbtBase64 - Base 64 representation of the Unsigned PSBT\n * @property {InputToSign[]} inputsToSign - Inputs to be signed\n */\nexport type PSBT = {\n unsignedPsbtBase64: string\n inputsToSign: InputToSign[]\n}\n/**\n * TransferTransaction. This type of transaction is used for UTXO blockchains including BTC, LTC, BCH\n *\n * @property {TransactionType} type - This fields equals to TRANSFER for all TransferTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} method - The method that should be passed to wallet. examples: deposit, transfer\n * @property {AssetWithTicker} asset\n * @property {string} amount - The machine-readable amount of transaction, example: 1000000000000000000\n * @property {number} decimals - The decimals of the asset\n * @property {string} fromWalletAddress - The source wallet address that can sign this transaction\n * @property {string} recipientAddress - The destination wallet address that the fund should be sent to\n * @property {string | null} memo - The memo of transaction, can be null\n * @property {PSBT | null} psbt - PSBT object containing base 64 representation of the Unsigned PSBT along with the inputs to be signed\n *\n */\nexport interface Transfer extends BaseTransaction {\n type: TransactionType.TRANSFER\n method: string\n asset: AssetWithTicker\n amount: string\n decimals: number\n fromWalletAddress: string\n recipientAddress: string\n memo: string | null\n psbt: PSBT | null\n}\n\nexport const isTransferTransaction = (transaction: {\n type: TransactionType\n}): transaction is Transfer => transaction.type === TransactionType.TRANSFER\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type TrxContractParameter = {\n value: unknown\n type_url: string\n}\n\nexport type TrxContractData = {\n parameter: TrxContractParameter\n type: string\n}\n\nexport type TrxRawData = {\n contract: TrxContractData[]\n ref_block_bytes: string\n ref_block_hash: string\n expiration: number\n timestamp: number\n}\n\n/**\n * TronTransaction\n *\n * @property {TransactionType} type - TransactionType.TRON\n * @property {boolean} isApprovalTx - Whether or not the transaction is an approval transaction.\n * @property {TrxRawData | null} raw_data - This is the raw data of the transaction.\n * @property {string | null} raw_data_hex - The raw hex data of the transaction.\n * @property {string} txID - The transaction ID.\n * @property {boolean} visible - boolean\n * @property {object} __payload__\n */\nexport interface TronTransaction extends BaseTransaction {\n type: TransactionType.TRON\n isApprovalTx: boolean\n raw_data: TrxRawData | null\n raw_data_hex: string | null\n txID: string\n visible: boolean\n __payload__: object\n}\n\nexport const isTronTransaction = (transaction: {\n type: TransactionType\n}): transaction is TronTransaction => transaction.type === TransactionType.TRON\n"],"names":["RoutingResultType","TransactionType","GenericTransactionType","TransactionStatus","TonChainID","RangoClient","apiKey","apiUrl","this","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","sent","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_context2","_x3","getSwappers","_getSwappers","_callee3","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_context6","post","headers","X-Rango-Id","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_context16","_x30","_x31","isEvmBlockchain","blockchainMeta","type","isCosmosBlockchain","isSolanaBlockchain","isTronBlockchain","isTransferBlockchain","isStarknetBlockchain","isTonBlockchain","isXrplBlockchain","isHyperliquidBlockchain","filter","transaction","COSMOS","EVM","SOLANA","TON","TRANSFER","TRON"],"mappings":"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"}
1
+ {"version":3,"file":"rango-sdk.cjs.production.min.js","sources":["../src/services/client.ts","../../rango-types/src/api/shared/type-gaurds.ts"],"sourcesContent":["import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n"],"names":["RangoClient","apiKey","apiUrl","this","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","sent","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_context2","_x3","getSwappers","_getSwappers","_callee3","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_context6","post","headers","X-Rango-Id","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_context16","_x30","_x31","blockchainMeta"],"mappings":"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"}
@@ -779,47 +779,59 @@ var RangoClient = /*#__PURE__*/function () {
779
779
  return RangoClient;
780
780
  }();
781
781
 
782
- var isEvmBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'EVM'; };
783
- var isCosmosBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'COSMOS'; };
784
- var isSolanaBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'SOLANA'; };
785
- var isTronBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'TRON'; };
786
- var isTransferBlockchain = function (blockchainMeta) {
787
- return blockchainMeta.type === 'TRANSFER';
782
+ var isEvmBlockchain = function isEvmBlockchain(blockchainMeta) {
783
+ return blockchainMeta.type === 'EVM';
788
784
  };
789
- var isStarknetBlockchain = function (blockchainMeta) {
790
- return blockchainMeta.type === 'STARKNET';
785
+ var isCosmosBlockchain = function isCosmosBlockchain(blockchainMeta) {
786
+ return blockchainMeta.type === 'COSMOS';
791
787
  };
792
- var isTonBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'TON'; };
793
- var isXrplBlockchain = function (blockchainMeta) { return blockchainMeta.type === 'XRPL'; };
794
- var isHyperliquidBlockchain = function (blockchainMeta) {
795
- return blockchainMeta.type === 'HYPERLIQUID';
788
+ var isSolanaBlockchain = function isSolanaBlockchain(blockchainMeta) {
789
+ return blockchainMeta.type === 'SOLANA';
796
790
  };
797
- var evmBlockchains = function (blockchains) {
798
- return blockchains.filter(isEvmBlockchain);
791
+ var isTronBlockchain = function isTronBlockchain(blockchainMeta) {
792
+ return blockchainMeta.type === 'TRON';
799
793
  };
800
- var solanaBlockchain = function (blockchains) {
801
- return blockchains.filter(isSolanaBlockchain);
794
+ var isTransferBlockchain = function isTransferBlockchain(blockchainMeta) {
795
+ return blockchainMeta.type === 'TRANSFER';
802
796
  };
803
- var starknetBlockchain = function (blockchains) {
804
- return blockchains.filter(isStarknetBlockchain);
797
+ var isStarknetBlockchain = function isStarknetBlockchain(blockchainMeta) {
798
+ return blockchainMeta.type === 'STARKNET';
805
799
  };
806
- var tronBlockchain = function (blockchains) {
807
- return blockchains.filter(isTronBlockchain);
800
+ var isTonBlockchain = function isTonBlockchain(blockchainMeta) {
801
+ return blockchainMeta.type === 'TON';
808
802
  };
809
- var cosmosBlockchains = function (blockchains) {
810
- return blockchains.filter(isCosmosBlockchain);
803
+ var isXrplBlockchain = function isXrplBlockchain(blockchainMeta) {
804
+ return blockchainMeta.type === 'XRPL';
811
805
  };
812
- var transferBlockchains = function (blockchains) {
813
- return blockchains.filter(isTransferBlockchain);
806
+ var isHyperliquidBlockchain = function isHyperliquidBlockchain(blockchainMeta) {
807
+ return blockchainMeta.type === 'HYPERLIQUID';
814
808
  };
815
- var tonBlockchain = function (blockchains) {
816
- return blockchains.filter(isTonBlockchain);
809
+ var evmBlockchains = function evmBlockchains(blockchains) {
810
+ return blockchains.filter(isEvmBlockchain);
817
811
  };
818
- var xrplBlockchain = function (blockchains) {
819
- return blockchains.filter(isXrplBlockchain);
812
+ var solanaBlockchain = function solanaBlockchain(blockchains) {
813
+ return blockchains.filter(isSolanaBlockchain);
820
814
  };
821
- var hyperliquidBlockchain = function (blockchains) {
822
- return blockchains.filter(isHyperliquidBlockchain);
815
+ var starknetBlockchain = function starknetBlockchain(blockchains) {
816
+ return blockchains.filter(isStarknetBlockchain);
817
+ };
818
+ var tronBlockchain = function tronBlockchain(blockchains) {
819
+ return blockchains.filter(isTronBlockchain);
820
+ };
821
+ var cosmosBlockchains = function cosmosBlockchains(blockchains) {
822
+ return blockchains.filter(isCosmosBlockchain);
823
+ };
824
+ var transferBlockchains = function transferBlockchains(blockchains) {
825
+ return blockchains.filter(isTransferBlockchain);
826
+ };
827
+ var tonBlockchain = function tonBlockchain(blockchains) {
828
+ return blockchains.filter(isTonBlockchain);
829
+ };
830
+ var xrplBlockchain = function xrplBlockchain(blockchains) {
831
+ return blockchains.filter(isXrplBlockchain);
832
+ };
833
+ var hyperliquidBlockchain = function hyperliquidBlockchain(blockchains) {
834
+ return blockchains.filter(isHyperliquidBlockchain);
823
835
  };
824
836
 
825
837
  /**
@@ -828,11 +840,11 @@ var hyperliquidBlockchain = function (blockchains) {
828
840
  */
829
841
  var RoutingResultType;
830
842
  (function (RoutingResultType) {
831
- RoutingResultType["OK"] = "OK";
832
- RoutingResultType["HIGH_IMPACT"] = "HIGH_IMPACT";
833
- RoutingResultType["NO_ROUTE"] = "NO_ROUTE";
834
- RoutingResultType["INPUT_LIMIT_ISSUE"] = "INPUT_LIMIT_ISSUE";
835
- RoutingResultType["HIGH_IMPACT_FOR_CREATE_TX"] = "HIGH_IMPACT_FOR_CREATE_TX";
843
+ RoutingResultType["OK"] = "OK";
844
+ RoutingResultType["HIGH_IMPACT"] = "HIGH_IMPACT";
845
+ RoutingResultType["NO_ROUTE"] = "NO_ROUTE";
846
+ RoutingResultType["INPUT_LIMIT_ISSUE"] = "INPUT_LIMIT_ISSUE";
847
+ RoutingResultType["HIGH_IMPACT_FOR_CREATE_TX"] = "HIGH_IMPACT_FOR_CREATE_TX";
836
848
  })(RoutingResultType || (RoutingResultType = {}));
837
849
 
838
850
  /**
@@ -840,17 +852,17 @@ var RoutingResultType;
840
852
  */
841
853
  var TransactionType;
842
854
  (function (TransactionType) {
843
- TransactionType["EVM"] = "EVM";
844
- TransactionType["TRANSFER"] = "TRANSFER";
845
- TransactionType["COSMOS"] = "COSMOS";
846
- TransactionType["SOLANA"] = "SOLANA";
847
- TransactionType["TRON"] = "TRON";
848
- TransactionType["STARKNET"] = "STARKNET";
849
- TransactionType["TON"] = "TON";
850
- TransactionType["SUI"] = "SUI";
851
- TransactionType["XRPL"] = "XRPL";
852
- TransactionType["STELLAR"] = "STELLAR";
853
- TransactionType["HYPERLIQUID"] = "HYPERLIQUID";
855
+ TransactionType["EVM"] = "EVM";
856
+ TransactionType["TRANSFER"] = "TRANSFER";
857
+ TransactionType["COSMOS"] = "COSMOS";
858
+ TransactionType["SOLANA"] = "SOLANA";
859
+ TransactionType["TRON"] = "TRON";
860
+ TransactionType["STARKNET"] = "STARKNET";
861
+ TransactionType["TON"] = "TON";
862
+ TransactionType["SUI"] = "SUI";
863
+ TransactionType["XRPL"] = "XRPL";
864
+ TransactionType["STELLAR"] = "STELLAR";
865
+ TransactionType["HYPERLIQUID"] = "HYPERLIQUID";
854
866
  })(TransactionType || (TransactionType = {}));
855
867
  /**
856
868
  * The type of transaction
@@ -858,41 +870,49 @@ var TransactionType;
858
870
  */
859
871
  var GenericTransactionType;
860
872
  (function (GenericTransactionType) {
861
- GenericTransactionType["EVM"] = "EVM";
862
- GenericTransactionType["TRANSFER"] = "TRANSFER";
863
- GenericTransactionType["COSMOS"] = "COSMOS";
864
- GenericTransactionType["SOLANA"] = "SOLANA";
873
+ GenericTransactionType["EVM"] = "EVM";
874
+ GenericTransactionType["TRANSFER"] = "TRANSFER";
875
+ GenericTransactionType["COSMOS"] = "COSMOS";
876
+ GenericTransactionType["SOLANA"] = "SOLANA";
865
877
  })(GenericTransactionType || (GenericTransactionType = {}));
866
878
  /**
867
879
  * The status of transaction in tracking
868
880
  */
869
881
  var TransactionStatus;
870
882
  (function (TransactionStatus) {
871
- TransactionStatus["FAILED"] = "failed";
872
- TransactionStatus["RUNNING"] = "running";
873
- TransactionStatus["SUCCESS"] = "success";
883
+ TransactionStatus["FAILED"] = "failed";
884
+ TransactionStatus["RUNNING"] = "running";
885
+ TransactionStatus["SUCCESS"] = "success";
874
886
  })(TransactionStatus || (TransactionStatus = {}));
875
887
 
876
- var isCosmosTransaction = function (transaction) {
877
- return transaction.type === TransactionType.COSMOS;
888
+ var isCosmosTransaction = function isCosmosTransaction(transaction) {
889
+ return transaction.type === TransactionType.COSMOS;
878
890
  };
879
891
 
880
- var isSolanaTransaction = function (transaction) {
881
- return transaction.type === TransactionType.SOLANA;
892
+ var isSolanaTransaction = function isSolanaTransaction(transaction) {
893
+ return transaction.type === TransactionType.SOLANA;
882
894
  };
883
895
 
884
- var isTransferTransaction = function (transaction) { return transaction.type === TransactionType.TRANSFER; };
896
+ var isTransferTransaction = function isTransferTransaction(transaction) {
897
+ return transaction.type === TransactionType.TRANSFER;
898
+ };
885
899
 
886
- var isTronTransaction = function (transaction) { return transaction.type === TransactionType.TRON; };
900
+ var isTronTransaction = function isTronTransaction(transaction) {
901
+ return transaction.type === TransactionType.TRON;
902
+ };
887
903
 
888
904
  var TonChainID;
889
905
  (function (TonChainID) {
890
- TonChainID["MAINNET"] = "-239";
891
- TonChainID["TESTNET"] = "-3";
906
+ TonChainID["MAINNET"] = "-239";
907
+ TonChainID["TESTNET"] = "-3";
892
908
  })(TonChainID || (TonChainID = {}));
893
- var isTonTransaction = function (transaction) { return transaction.type === TransactionType.TON; };
909
+ var isTonTransaction = function isTonTransaction(transaction) {
910
+ return transaction.type === TransactionType.TON;
911
+ };
894
912
 
895
- var isEvmTransaction = function (transaction) { return transaction.type === TransactionType.EVM; };
913
+ var isEvmTransaction = function isEvmTransaction(transaction) {
914
+ return transaction.type === TransactionType.EVM;
915
+ };
896
916
 
897
917
  export { GenericTransactionType, RangoClient, RoutingResultType, TonChainID, TransactionStatus, TransactionType, cosmosBlockchains, evmBlockchains, hyperliquidBlockchain, isCosmosBlockchain, isCosmosTransaction, isEvmBlockchain, isEvmTransaction, isHyperliquidBlockchain, isSolanaBlockchain, isSolanaTransaction, isStarknetBlockchain, isTonBlockchain, isTonTransaction, isTransferBlockchain, isTransferTransaction, isTronBlockchain, isTronTransaction, isXrplBlockchain, solanaBlockchain, starknetBlockchain, tonBlockchain, transferBlockchains, tronBlockchain, xrplBlockchain };
898
918
  //# sourceMappingURL=rango-sdk.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rango-sdk.esm.js","sources":["../src/services/client.ts","../node_modules/rango-types/src/api/shared/type-gaurds.ts","../node_modules/rango-types/src/api/shared/routing.ts","../node_modules/rango-types/src/api/shared/transactions.ts","../node_modules/rango-types/src/api/shared/txs/cosmos.ts","../node_modules/rango-types/src/api/shared/txs/solana.ts","../node_modules/rango-types/src/api/shared/txs/transfer.ts","../node_modules/rango-types/src/api/shared/txs/tron.ts","../node_modules/rango-types/src/api/shared/txs/ton.ts","../node_modules/rango-types/src/api/main/txs/evm.ts"],"sourcesContent":["import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n","/**\n * Routing Result Type\n *\n */\nexport enum RoutingResultType {\n OK = 'OK',\n HIGH_IMPACT = 'HIGH_IMPACT',\n NO_ROUTE = 'NO_ROUTE',\n INPUT_LIMIT_ISSUE = 'INPUT_LIMIT_ISSUE',\n HIGH_IMPACT_FOR_CREATE_TX = 'HIGH_IMPACT_FOR_CREATE_TX',\n}\n","/**\n * The type of transaction\n */\nexport enum TransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n TRON = 'TRON',\n STARKNET = 'STARKNET',\n TON = 'TON',\n SUI = 'SUI',\n XRPL = 'XRPL',\n STELLAR = 'STELLAR',\n HYPERLIQUID = 'HYPERLIQUID',\n}\n\n/**\n * The type of transaction\n * @deprecated use TransactionType instead\n */\nexport enum GenericTransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n}\n\n/**\n * A transaction's url that can be displayed to advanced user to track the progress\n *\n * @property {string} url - Url of the transaction in blockchain explorer. example: https://etherscan.io/tx/0xa1a3...\n * @property {string | null} description - A custom display name to help user distinguish the transactions from each\n * other. Example: Inbound, Outbound, Bridge, or null\n *\n */\nexport type SwapExplorerUrl = {\n description: string | null\n url: string\n}\n\n/**\n * APIErrorCode\n *\n * Error code of a swap failure\n *\n */\nexport type APIErrorCode =\n | 'TX_FAIL'\n | 'TX_EXPIRED'\n | 'FETCH_TX_FAILED'\n | 'USER_REJECT'\n | 'USER_CANCEL'\n | 'USER_CANCELED_TX'\n | 'CALL_WALLET_FAILED'\n | 'SEND_TX_FAILED'\n | 'CALL_OR_SEND_FAILED'\n | 'TX_FAILED_IN_BLOCKCHAIN'\n | 'CLIENT_UNEXPECTED_BEHAVIOUR'\n | 'INSUFFICIENT_APPROVE'\n\n/**\n * The function checks if a given string value is a valid API error code.\n * @param {string} value - a string that represents a possible API error code.\n * @returns A boolean value is being returned, indicating whether the input `value` is of type\n * `APIErrorCode` or not.\n */\nexport function isAPIErrorCode(value: string): value is APIErrorCode {\n return [\n 'TX_FAIL',\n 'TX_EXPIRED',\n 'FETCH_TX_FAILED',\n 'USER_REJECT',\n 'USER_CANCEL',\n 'USER_CANCELED_TX',\n 'CALL_WALLET_FAILED',\n 'SEND_TX_FAILED',\n 'CALL_OR_SEND_FAILED',\n 'TX_FAILED_IN_BLOCKCHAIN',\n 'CLIENT_UNEXPECTED_BEHAVIOUR',\n 'INSUFFICIENT_APPROVE',\n ].includes(value)\n}\n\n/**\n * ReportTransactionRequest\n *\n * It should be used when an error happened in client and we want to inform server that transaction failed,\n * E.g. user rejected the transaction dialog or and an RPC error raised during signing tx by user.\n *\n * @property {string} requestId - The requestId from best route endpoint\n * @property {APIErrorCode} eventType - Type of the event that happened, example: USER_REJECT\n * @property {number} [step] - Step number in which failure happened\n * @property {string} [reason] - Reason or message for the error\n * @property {[key: string]: string} [data] - @deprecated A list of key-value for extra details\n * @property {wallet?: string, errorCode? string} [tags] - A list of key-value for pre-defined tags\n *\n */\nexport type ReportTransactionRequest = {\n requestId: string\n eventType: APIErrorCode\n step?: number\n reason?: string\n data?: { [key: string]: string }\n tags?: { wallet?: string; errorCode?: string }\n}\n\n/**\n * The status of transaction in tracking\n */\nexport enum TransactionStatus {\n FAILED = 'failed',\n RUNNING = 'running',\n SUCCESS = 'success',\n}\n\n/**\n * Response body of check-approval\n * You could stop check approval if:\n * 1- approved successfully\n * => isApproved = true\n * 2- approval transaction failed\n * => isApproved = false && txStatus === 'failed'\n * 3- approval transaction succeeded but currentApprovedAmount is still less than requiredApprovedAmount\n * (e.g. user changed transaction data and enter another approve amount in MetaMask)\n * => isApproved = false && txStatus == 'success'\n *\n * @property {boolean} isApproved - A flag which indicates that the approve tx is done or not\n * @property {TransactionStatus | null} txStatus - Status of approve transaction in blockchain,\n * if isArppoved is false and txStatus is failed, it seems that approve transaction failed in blockchain\n * @property {string | null} requiredApprovedAmount - required amount to be approved by user\n * @property {string | null} currentApprovedAmount - current approved amount by user\n *\n */\nexport type CheckApprovalResponse = {\n isApproved: boolean\n txStatus: TransactionStatus | null\n requiredApprovedAmount: string | null\n currentApprovedAmount: string | null\n}\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * CosmosCoin\n */\nexport type CosmosCoin = {\n amount: string\n denom: string\n}\n\n/**\n * CosmosProtoMsg\n */\nexport type CosmosProtoMsg = {\n type_url: string\n value: number[]\n}\n\n/**\n * CosmosFee representing fee for cosmos transaction\n */\nexport type CosmosFee = {\n gas: string\n amount: CosmosCoin[]\n}\n\n/**\n * Main transaction object for COSMOS type transactions\n */\nexport type CosmosMessage = {\n signType: 'AMINO' | 'DIRECT'\n sequence: string | null\n source: number | null\n account_number: number | null\n rpcUrl: string\n chainId: string | null\n msgs: any[] // TODO\n protoMsgs: CosmosProtoMsg[]\n memo: string | null\n fee: CosmosFee | null\n}\n/**\n * An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages (e.g. XDefi)\n *\n * @property {AssetWithTicker} asset - The asset to be transferred\n * @property {string} amount - The machine-readable amount to transfer, example: 1000000000000000000\n * @property {number} decimals - The decimals for this asset, example: 18\n * @property {string | null} memo - Memo of transaction, could be null\n * @property {string} method - The transaction method, example: transfer, deposit\n * @property {string} recipient - The recipient address of transaction\n *\n */\nexport type CosmosRawTransferData = {\n amount: string\n asset: AssetWithTicker\n decimals: number\n memo: string | null\n method: string\n recipient: string\n}\n\n/**\n * A Cosmos transaction, child of GenericTransaction\n *\n * @property {TransactionType} type - This fields equals to COSMOS for all CosmosTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} fromWalletAddress - Address of wallet that this transaction should be executed in, same as the create transaction request's input\n * @property {CosmosMessage} data - Transaction data\n * @property {CosmosRawTransferData | null} rawTransfer - An alternative to CosmosMessage object for the cosmos wallets that do not support generic Cosmos messages\n *\n */\nexport interface CosmosTransaction extends BaseTransaction {\n type: TransactionType.COSMOS\n fromWalletAddress: string\n data: CosmosMessage\n rawTransfer: CosmosRawTransferData | null\n}\n\nexport const isCosmosTransaction = (transaction: {\n type: TransactionType\n}): transaction is CosmosTransaction =>\n transaction.type === TransactionType.COSMOS\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\n/**\n * Account metadata used to define instructions\n */\nexport type SolanaInstructionKey = {\n pubkey: string\n isSigner: boolean\n isWritable: boolean\n}\n\n/**\n * Transaction Instruction class\n */\nexport type SolanaInstruction = {\n keys: SolanaInstructionKey[]\n programId: string\n data: number[]\n}\n\n/**\n * Pair of signature and corresponding public key\n */\nexport type SolanaSignature = {\n signature: number[]\n publicKey: string\n}\n\n/**\n * This type of transaction is used for all solana transactions\n *\n * @property {TransactionType} type - This fields equals to SOLANA for all SolanaTransactions\n * @property {'LEGACY' | 'VERSIONED'} txType - Type of the solana transaction\n * @property {string} blockChain, equals to SOLANA\n * @property {string} from, Source wallet address\n * @property {string} identifier, Transaction hash used in case of retry\n * @property {string | null} recentBlockhash, A recent blockhash\n * @property {SolanaSignature[]} signatures, Signatures for the transaction\n * @property {number[] | null} serializedMessage, The byte array of the transaction\n * @property {SolanaInstruction[]} instructions, The instructions to atomically execute\n *\n */\nexport interface SolanaTransaction extends BaseTransaction {\n type: TransactionType.SOLANA\n txType: 'LEGACY' | 'VERSIONED'\n from: string\n identifier: string\n recentBlockhash: string | null\n signatures: SolanaSignature[]\n serializedMessage: number[] | null\n instructions: SolanaInstruction[]\n}\n\nexport const isSolanaTransaction = (transaction: {\n type: TransactionType\n}): transaction is SolanaTransaction =>\n transaction.type === TransactionType.SOLANA\n","import { AssetWithTicker } from '../common.js'\nimport { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type InputToSign = { address: string, signingIndexes: number[] }\n/**\n * @property {unsignedPsbtBase64} unsignedPsbtBase64 - Base 64 representation of the Unsigned PSBT\n * @property {InputToSign[]} inputsToSign - Inputs to be signed\n */\nexport type PSBT = {\n unsignedPsbtBase64: string\n inputsToSign: InputToSign[]\n}\n/**\n * TransferTransaction. This type of transaction is used for UTXO blockchains including BTC, LTC, BCH\n *\n * @property {TransactionType} type - This fields equals to TRANSFER for all TransferTransactions\n * @property {string} blockChain - The blockchain that this transaction will be executed in, same as the input blockchain of creating transaction\n * @property {string} method - The method that should be passed to wallet. examples: deposit, transfer\n * @property {AssetWithTicker} asset\n * @property {string} amount - The machine-readable amount of transaction, example: 1000000000000000000\n * @property {number} decimals - The decimals of the asset\n * @property {string} fromWalletAddress - The source wallet address that can sign this transaction\n * @property {string} recipientAddress - The destination wallet address that the fund should be sent to\n * @property {string | null} memo - The memo of transaction, can be null\n * @property {PSBT | null} psbt - PSBT object containing base 64 representation of the Unsigned PSBT along with the inputs to be signed\n *\n */\nexport interface Transfer extends BaseTransaction {\n type: TransactionType.TRANSFER\n method: string\n asset: AssetWithTicker\n amount: string\n decimals: number\n fromWalletAddress: string\n recipientAddress: string\n memo: string | null\n psbt: PSBT | null\n}\n\nexport const isTransferTransaction = (transaction: {\n type: TransactionType\n}): transaction is Transfer => transaction.type === TransactionType.TRANSFER\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport type TrxContractParameter = {\n value: unknown\n type_url: string\n}\n\nexport type TrxContractData = {\n parameter: TrxContractParameter\n type: string\n}\n\nexport type TrxRawData = {\n contract: TrxContractData[]\n ref_block_bytes: string\n ref_block_hash: string\n expiration: number\n timestamp: number\n}\n\n/**\n * TronTransaction\n *\n * @property {TransactionType} type - TransactionType.TRON\n * @property {boolean} isApprovalTx - Whether or not the transaction is an approval transaction.\n * @property {TrxRawData | null} raw_data - This is the raw data of the transaction.\n * @property {string | null} raw_data_hex - The raw hex data of the transaction.\n * @property {string} txID - The transaction ID.\n * @property {boolean} visible - boolean\n * @property {object} __payload__\n */\nexport interface TronTransaction extends BaseTransaction {\n type: TransactionType.TRON\n isApprovalTx: boolean\n raw_data: TrxRawData | null\n raw_data_hex: string | null\n txID: string\n visible: boolean\n __payload__: object\n}\n\nexport const isTronTransaction = (transaction: {\n type: TransactionType\n}): transaction is TronTransaction => transaction.type === TransactionType.TRON\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport enum TonChainID {\n MAINNET = '-239',\n TESTNET = '-3',\n}\n\n/**\n * @property {string} address - Receiver's address\n * @property {string} amount - Amount to send in nanoTon\n * @property {string} [stateInit] - Contract specific data to add to the transaction\n * @property {string} [payload] - Contract specific data to add to the transaction\n */\nexport interface TonMessage {\n address: string\n amount: string\n stateInit?: string\n payload?: string\n}\n\n/**\n * This type of transaction is used for all Ton transactions\n *\n * @property {TransactionType} type - This field equals to TON for all Ton transactions\n * @property {number} validUntil - Sending transaction deadline in unix epoch seconds\n * @property {TonChainID} [network] - The network (mainnet or testnet) where DApp intends to send the transaction. If not set, the transaction is sent to the network currently set in the wallet, but this is not safe and DApp should always strive to set the network. If the network parameter is set, but the wallet has a different network set, the wallet should show an alert and DO NOT ALLOW TO SEND this transaction\n * @property {string} [from] - The sender address in '<wc>:<hex>' format from which DApp intends to send the transaction. Current account.address by default\n * @property {TonMessage[]} messages - Messages to send: min is 1, max is 4\n */\nexport interface TonTransaction extends BaseTransaction {\n type: TransactionType.TON\n validUntil: number\n network?: TonChainID\n from?: string\n messages: TonMessage[]\n}\n\nexport const isTonTransaction = (transaction: {\n type: TransactionType\n}): transaction is TonTransaction => transaction.type === TransactionType.TON\n","import { BaseTransaction, TransactionType } from '../../shared/index.js'\n\n/**\n * The transaction object for all EVM-based blockchains, including Ethereum, BSC, Polygon, Harmony, etc\n *\n * @property {TransactionType} type - This fields equals to EVM for all EvmTransactions\n * @property {string} blockChain - The blockchain that this transaction is going to run in\n * @property {boolean} isApprovalTx - Determines that this transaction is an approval transaction or not, if true user\n * should approve the transaction and call create transaction endpoint again to get the original tx. Beware that most\n * of the fields of this object will be passed directly to the wallet without any change.\n * @property {string | null} from - The source wallet address, it can be null\n * @property {string} to - Address of destination wallet or the smart contract or token that is going to be called\n * @property {string | null} data - The data of smart contract call, it can be null in case of native token transfer\n * @property {string | null} value - The amount of transaction in case of native token transfer\n * @property {string | null} nonce - The nonce value for transaction\n * @property {string | null} gasPrice - The suggested gas price for this transaction\n * @property {string | null} gasLimit - The suggested gas limit for this transaction\n * @property {string | null} maxPriorityFeePerGas - Suggested max priority fee per gas for this transaction\n * @property {string | null} maxFeePerGas - Suggested max fee per gas for this transaction\n *\n */\nexport interface EvmTransaction extends BaseTransaction {\n type: TransactionType.EVM\n isApprovalTx: boolean\n from: string | null\n to: string\n data: string | null\n value: string | null\n nonce: string | null\n gasLimit: string | null\n gasPrice: string | null\n maxPriorityFeePerGas: string | null\n maxFeePerGas: string | null\n}\n\nexport const isEvmTransaction = (transaction: {\n type: TransactionType\n}): transaction is EvmTransaction => transaction.type === TransactionType.EVM\n"],"names":["RangoClient","apiKey","apiUrl","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_callee$","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","sent","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_callee2$","_context2","_x3","getSwappers","_getSwappers","_callee3","_callee3$","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_callee4$","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_callee5$","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_callee6$","_context6","post","headers","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_callee7$","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_callee8$","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_callee9$","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_callee10$","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_callee11$","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_callee12$","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_callee13$","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_callee14$","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_callee15$","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_callee16$","_context16","_x30","_x31"],"mappings":"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"}
1
+ {"version":3,"file":"rango-sdk.esm.js","sources":["../src/services/client.ts","../../rango-types/src/api/shared/type-gaurds.ts","../../rango-types/src/api/shared/routing.ts","../../rango-types/src/api/shared/transactions.ts","../../rango-types/src/api/shared/txs/ton.ts"],"sourcesContent":["import uuid from 'uuid-random'\nimport {\n MetaRequest,\n MetaResponse,\n BestRouteRequest,\n BestRouteResponse,\n CheckApprovalResponse,\n CheckTxStatusRequest,\n TransactionStatusResponse,\n CreateTransactionRequest,\n CreateTransactionResponse,\n ReportTransactionRequest,\n WalletDetailsResponse,\n RequestOptions,\n BlockchainMeta,\n CompactMetaResponse,\n CompactToken,\n Token,\n MultiRouteRequest,\n MultiRouteResponse,\n ConfirmRouteResponse,\n ConfirmRouteRequest,\n CustomTokenRequest,\n CustomTokenResponse,\n TokenBalanceResponse,\n TokenBalanceRequest,\n SwapperMetaExtended,\n MultipleTokenBalanceRequest,\n MultipleTokenBalanceResponse,\n SearchCustomTokensRequest,\n SearchCustomTokensResponse,\n} from '../types'\nimport axios, { AxiosInstance } from 'axios'\n\ntype WalletAddresses = { blockchain: string; address: string }[]\n\nexport class RangoClient {\n private readonly deviceId: string\n private readonly apiKey: string\n private readonly apiUrl: string\n private readonly httpService: AxiosInstance\n\n constructor(apiKey: string, apiUrl?: string) {\n this.apiUrl = apiUrl || 'https://api.rango.exchange'\n this.apiKey = apiKey\n try {\n if (typeof window !== 'undefined') {\n const deviceId = localStorage.getItem('deviceId')\n if (deviceId) {\n this.deviceId = deviceId\n } else {\n const generatedId = uuid()\n localStorage.setItem('deviceId', generatedId)\n this.deviceId = generatedId\n }\n } else {\n this.deviceId = uuid()\n }\n } catch (e) {\n this.deviceId = uuid()\n }\n this.httpService = axios.create({\n baseURL: this.apiUrl,\n })\n }\n\n public async getAllMetadata(\n metaRequest?: MetaRequest,\n options?: RequestOptions\n ): Promise<MetaResponse> {\n const params = {\n ...metaRequest,\n blockchains: metaRequest?.blockchains?.join(),\n swappers: metaRequest?.swappers?.join(),\n swappersGroups: metaRequest?.swappersGroups?.join(),\n transactionTypes: metaRequest?.transactionTypes?.join(),\n }\n const axiosResponse = await this.httpService.get<CompactMetaResponse>(\n `/meta/compact?apiKey=${this.apiKey}`,\n {\n params,\n ...options,\n }\n )\n const reformatTokens = (tokens: CompactToken[]): Token[] =>\n tokens.map((tm) => ({\n blockchain: tm.b,\n symbol: tm.s,\n image: tm.i,\n address: tm.a || null,\n usdPrice: tm.p || null,\n isSecondaryCoin: tm.is || false,\n coinSource: tm.c || null,\n coinSourceUrl: tm.cu || null,\n name: tm.n || null,\n decimals: tm.d,\n isPopular: tm.ip || false,\n supportedSwappers: tm.ss || [],\n }))\n\n const tokens = reformatTokens(axiosResponse.data.tokens)\n const popularTokens = reformatTokens(axiosResponse.data.popularTokens)\n return { ...axiosResponse.data, tokens, popularTokens }\n }\n\n public async getBlockchains(\n options?: RequestOptions\n ): Promise<BlockchainMeta[]> {\n const axiosResponse = await this.httpService.get<BlockchainMeta[]>(\n `/meta/blockchains?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getSwappers(\n options?: RequestOptions\n ): Promise<SwapperMetaExtended[]> {\n const axiosResponse = await this.httpService.get<SwapperMetaExtended[]>(\n `/meta/swappers?apiKey=${this.apiKey}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getCustomToken(\n customTokenRequest?: CustomTokenRequest,\n options?: RequestOptions\n ): Promise<CustomTokenResponse> {\n const axiosResponse = await this.httpService.get<CustomTokenResponse>(\n `/meta/custom-token?apiKey=${this.apiKey}`,\n { params: customTokenRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async searchCustomTokens(\n searchCustomTokensRequest: SearchCustomTokensRequest,\n options?: RequestOptions\n ): Promise<SearchCustomTokensResponse> {\n const axiosResponse =\n await this.httpService.get<SearchCustomTokensResponse>(\n `/meta/token/search?apiKey=${this.apiKey}`,\n { params: searchCustomTokensRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getBestRoute(\n requestBody: BestRouteRequest,\n options?: RequestOptions\n ): Promise<BestRouteResponse> {\n const axiosResponse = await this.httpService.post<BestRouteResponse>(\n `/routing/best?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async getAllRoutes(\n requestBody: MultiRouteRequest,\n options?: RequestOptions\n ): Promise<MultiRouteResponse> {\n const axiosResponse = await this.httpService.post<MultiRouteResponse>(\n `/routing/bests?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async confirmRoute(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n // @deprecated use confirmRoute instead\n public async confirmRouteRequest(\n requestBody: ConfirmRouteRequest,\n options?: RequestOptions\n ): Promise<ConfirmRouteResponse> {\n const axiosResponse = await this.httpService.post<ConfirmRouteResponse>(\n `/routing/confirm?apiKey=${this.apiKey}`,\n requestBody,\n { headers: { 'X-Rango-Id': this.deviceId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkApproval(\n requestId: string,\n txId?: string,\n options?: RequestOptions\n ): Promise<CheckApprovalResponse> {\n const axiosResponse = await this.httpService.get<CheckApprovalResponse>(\n `/tx/${requestId}/check-approval?apiKey=${this.apiKey}`,\n { params: { txId }, ...options }\n )\n return axiosResponse.data\n }\n\n public async checkStatus(\n requestBody: CheckTxStatusRequest,\n options?: RequestOptions\n ): Promise<TransactionStatusResponse> {\n const axiosResponse =\n await this.httpService.post<TransactionStatusResponse>(\n `/tx/check-status?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async createTransaction(\n requestBody: CreateTransactionRequest,\n options?: RequestOptions\n ): Promise<CreateTransactionResponse> {\n const axiosResponse =\n await this.httpService.post<CreateTransactionResponse>(\n `/tx/create?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async reportFailure(\n requestBody: ReportTransactionRequest,\n options?: RequestOptions\n ): Promise<void> {\n await this.httpService.post(\n `/tx/report-tx?apiKey=${this.apiKey}`,\n requestBody,\n {\n ...options,\n }\n )\n }\n\n public async getWalletsDetails(\n walletAddresses: WalletAddresses,\n options?: RequestOptions\n ): Promise<WalletDetailsResponse> {\n let walletAddressesQueryParams = ''\n for (let i = 0; i < walletAddresses.length; i++) {\n const walletAddress = walletAddresses[i]\n walletAddressesQueryParams += `&address=${walletAddress.blockchain}.${walletAddress.address}`\n }\n const axiosResponse = await this.httpService.get<WalletDetailsResponse>(\n `/wallets/details?apiKey=${this.apiKey}${walletAddressesQueryParams}`,\n { ...options }\n )\n return axiosResponse.data\n }\n\n public async getTokenBalance(\n tokenBalanceRequest: TokenBalanceRequest,\n options?: RequestOptions\n ): Promise<TokenBalanceResponse> {\n const axiosResponse = await this.httpService.get<TokenBalanceResponse>(\n `/wallets/token-balance?apiKey=${this.apiKey}`,\n { params: tokenBalanceRequest, ...options }\n )\n return axiosResponse.data\n }\n\n public async getMultipleTokenBalance(\n requestBody: MultipleTokenBalanceRequest,\n options?: RequestOptions\n ): Promise<MultipleTokenBalanceResponse> {\n const axiosResponse =\n await this.httpService.post<MultipleTokenBalanceResponse>(\n `/wallets/multiple-token-balance?apiKey=${this.apiKey}`,\n requestBody,\n { ...options }\n )\n return axiosResponse.data\n }\n}\n","import {\n BlockchainMeta,\n CosmosBlockchainMeta,\n EvmBlockchainMeta,\n HyperliquidBlockchainMeta,\n SolanaBlockchainMeta,\n StarkNetBlockchainMeta,\n TonBlockchainMeta,\n TransferBlockchainMeta,\n TronBlockchainMeta,\n XrplBlockchainMeta,\n} from './meta.js'\n\nexport const isEvmBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is EvmBlockchainMeta => blockchainMeta.type === 'EVM'\n\nexport const isCosmosBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is CosmosBlockchainMeta => blockchainMeta.type === 'COSMOS'\n\nexport const isSolanaBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is SolanaBlockchainMeta => blockchainMeta.type === 'SOLANA'\n\nexport const isTronBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TronBlockchainMeta => blockchainMeta.type === 'TRON'\n\nexport const isTransferBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TransferBlockchainMeta =>\n blockchainMeta.type === 'TRANSFER'\n\nexport const isStarknetBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is StarkNetBlockchainMeta =>\n blockchainMeta.type === 'STARKNET'\n\nexport const isTonBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is TonBlockchainMeta => blockchainMeta.type === 'TON'\n\nexport const isXrplBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is XrplBlockchainMeta => blockchainMeta.type === 'XRPL'\n\nexport const isHyperliquidBlockchain = (\n blockchainMeta: BlockchainMeta\n): blockchainMeta is HyperliquidBlockchainMeta =>\n blockchainMeta.type === 'HYPERLIQUID'\n\nexport const evmBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isEvmBlockchain)\n\nexport const solanaBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isSolanaBlockchain)\n\nexport const starknetBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isStarknetBlockchain)\n\nexport const tronBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTronBlockchain)\n\nexport const cosmosBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isCosmosBlockchain)\n\nexport const transferBlockchains = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTransferBlockchain)\n\nexport const tonBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isTonBlockchain)\n\nexport const xrplBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isXrplBlockchain)\n\nexport const hyperliquidBlockchain = (blockchains: BlockchainMeta[]) =>\n blockchains.filter(isHyperliquidBlockchain)\n","/**\n * Routing Result Type\n *\n */\nexport enum RoutingResultType {\n OK = 'OK',\n HIGH_IMPACT = 'HIGH_IMPACT',\n NO_ROUTE = 'NO_ROUTE',\n INPUT_LIMIT_ISSUE = 'INPUT_LIMIT_ISSUE',\n HIGH_IMPACT_FOR_CREATE_TX = 'HIGH_IMPACT_FOR_CREATE_TX',\n}\n","/**\n * The type of transaction\n */\nexport enum TransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n TRON = 'TRON',\n STARKNET = 'STARKNET',\n TON = 'TON',\n SUI = 'SUI',\n XRPL = 'XRPL',\n STELLAR = 'STELLAR',\n HYPERLIQUID = 'HYPERLIQUID',\n}\n\n/**\n * The type of transaction\n * @deprecated use TransactionType instead\n */\nexport enum GenericTransactionType {\n EVM = 'EVM',\n TRANSFER = 'TRANSFER',\n COSMOS = 'COSMOS',\n SOLANA = 'SOLANA',\n}\n\n/**\n * A transaction's url that can be displayed to advanced user to track the progress\n *\n * @property {string} url - Url of the transaction in blockchain explorer. example: https://etherscan.io/tx/0xa1a3...\n * @property {string | null} description - A custom display name to help user distinguish the transactions from each\n * other. Example: Inbound, Outbound, Bridge, or null\n *\n */\nexport type SwapExplorerUrl = {\n description: string | null\n url: string\n}\n\n/**\n * APIErrorCode\n *\n * Error code of a swap failure\n *\n */\nexport type APIErrorCode =\n | 'TX_FAIL'\n | 'TX_EXPIRED'\n | 'FETCH_TX_FAILED'\n | 'USER_REJECT'\n | 'USER_CANCEL'\n | 'USER_CANCELED_TX'\n | 'CALL_WALLET_FAILED'\n | 'SEND_TX_FAILED'\n | 'CALL_OR_SEND_FAILED'\n | 'TX_FAILED_IN_BLOCKCHAIN'\n | 'CLIENT_UNEXPECTED_BEHAVIOUR'\n | 'INSUFFICIENT_APPROVE'\n\n/**\n * The function checks if a given string value is a valid API error code.\n * @param {string} value - a string that represents a possible API error code.\n * @returns A boolean value is being returned, indicating whether the input `value` is of type\n * `APIErrorCode` or not.\n */\nexport function isAPIErrorCode(value: string): value is APIErrorCode {\n return [\n 'TX_FAIL',\n 'TX_EXPIRED',\n 'FETCH_TX_FAILED',\n 'USER_REJECT',\n 'USER_CANCEL',\n 'USER_CANCELED_TX',\n 'CALL_WALLET_FAILED',\n 'SEND_TX_FAILED',\n 'CALL_OR_SEND_FAILED',\n 'TX_FAILED_IN_BLOCKCHAIN',\n 'CLIENT_UNEXPECTED_BEHAVIOUR',\n 'INSUFFICIENT_APPROVE',\n ].includes(value)\n}\n\n/**\n * ReportTransactionRequest\n *\n * It should be used when an error happened in client and we want to inform server that transaction failed,\n * E.g. user rejected the transaction dialog or and an RPC error raised during signing tx by user.\n *\n * @property {string} requestId - The requestId from best route endpoint\n * @property {APIErrorCode} eventType - Type of the event that happened, example: USER_REJECT\n * @property {number} [step] - Step number in which failure happened\n * @property {string} [reason] - Reason or message for the error\n * @property {[key: string]: string} [data] - @deprecated A list of key-value for extra details\n * @property {wallet?: string, errorCode? string} [tags] - A list of key-value for pre-defined tags\n *\n */\nexport type ReportTransactionRequest = {\n requestId: string\n eventType: APIErrorCode\n step?: number\n reason?: string\n data?: { [key: string]: string }\n tags?: { wallet?: string; errorCode?: string }\n}\n\n/**\n * The status of transaction in tracking\n */\nexport enum TransactionStatus {\n FAILED = 'failed',\n RUNNING = 'running',\n SUCCESS = 'success',\n}\n\n/**\n * Response body of check-approval\n * You could stop check approval if:\n * 1- approved successfully\n * => isApproved = true\n * 2- approval transaction failed\n * => isApproved = false && txStatus === 'failed'\n * 3- approval transaction succeeded but currentApprovedAmount is still less than requiredApprovedAmount\n * (e.g. user changed transaction data and enter another approve amount in MetaMask)\n * => isApproved = false && txStatus == 'success'\n *\n * @property {boolean} isApproved - A flag which indicates that the approve tx is done or not\n * @property {TransactionStatus | null} txStatus - Status of approve transaction in blockchain,\n * if isArppoved is false and txStatus is failed, it seems that approve transaction failed in blockchain\n * @property {string | null} requiredApprovedAmount - required amount to be approved by user\n * @property {string | null} currentApprovedAmount - current approved amount by user\n *\n */\nexport type CheckApprovalResponse = {\n isApproved: boolean\n txStatus: TransactionStatus | null\n requiredApprovedAmount: string | null\n currentApprovedAmount: string | null\n}\n","import { TransactionType } from '../transactions.js'\nimport { BaseTransaction } from './base.js'\n\nexport enum TonChainID {\n MAINNET = '-239',\n TESTNET = '-3',\n}\n\n/**\n * @property {string} address - Receiver's address\n * @property {string} amount - Amount to send in nanoTon\n * @property {string} [stateInit] - Contract specific data to add to the transaction\n * @property {string} [payload] - Contract specific data to add to the transaction\n */\nexport interface TonMessage {\n address: string\n amount: string\n stateInit?: string\n payload?: string\n}\n\n/**\n * This type of transaction is used for all Ton transactions\n *\n * @property {TransactionType} type - This field equals to TON for all Ton transactions\n * @property {number} validUntil - Sending transaction deadline in unix epoch seconds\n * @property {TonChainID} [network] - The network (mainnet or testnet) where DApp intends to send the transaction. If not set, the transaction is sent to the network currently set in the wallet, but this is not safe and DApp should always strive to set the network. If the network parameter is set, but the wallet has a different network set, the wallet should show an alert and DO NOT ALLOW TO SEND this transaction\n * @property {string} [from] - The sender address in '<wc>:<hex>' format from which DApp intends to send the transaction. Current account.address by default\n * @property {TonMessage[]} messages - Messages to send: min is 1, max is 4\n */\nexport interface TonTransaction extends BaseTransaction {\n type: TransactionType.TON\n validUntil: number\n network?: TonChainID\n from?: string\n messages: TonMessage[]\n}\n\nexport const isTonTransaction = (transaction: {\n type: TransactionType\n}): transaction is TonTransaction => transaction.type === TransactionType.TON\n"],"names":["RangoClient","apiKey","apiUrl","window","deviceId","localStorage","getItem","generatedId","uuid","setItem","e","httpService","axios","create","baseURL","_proto","prototype","getAllMetadata","_getAllMetadata","_asyncToGenerator","_regeneratorRuntime","mark","_callee","metaRequest","options","_metaRequest$blockcha","_metaRequest$swappers","_metaRequest$swappers2","_metaRequest$transact","params","axiosResponse","reformatTokens","tokens","popularTokens","wrap","_callee$","_context","prev","next","_extends","blockchains","join","swappers","swappersGroups","transactionTypes","get","sent","map","tm","blockchain","b","symbol","s","image","i","address","a","usdPrice","p","isSecondaryCoin","is","coinSource","c","coinSourceUrl","cu","name","n","decimals","d","isPopular","ip","supportedSwappers","ss","data","abrupt","stop","_x","_x2","apply","arguments","getBlockchains","_getBlockchains","_callee2","_callee2$","_context2","_x3","getSwappers","_getSwappers","_callee3","_callee3$","_context3","_x4","getCustomToken","_getCustomToken","_callee4","customTokenRequest","_callee4$","_context4","_x5","_x6","searchCustomTokens","_searchCustomTokens","_callee5","searchCustomTokensRequest","_callee5$","_context5","_x7","_x8","getBestRoute","_getBestRoute","_callee6","requestBody","_callee6$","_context6","post","headers","_x9","_x10","getAllRoutes","_getAllRoutes","_callee7","_callee7$","_context7","_x11","_x12","confirmRoute","_confirmRoute","_callee8","_callee8$","_context8","_x13","_x14","confirmRouteRequest","_confirmRouteRequest","_callee9","_callee9$","_context9","_x15","_x16","checkApproval","_checkApproval","_callee10","requestId","txId","_callee10$","_context10","_x17","_x18","_x19","checkStatus","_checkStatus","_callee11","_callee11$","_context11","_x20","_x21","createTransaction","_createTransaction","_callee12","_callee12$","_context12","_x22","_x23","reportFailure","_reportFailure","_callee13","_callee13$","_context13","_x24","_x25","getWalletsDetails","_getWalletsDetails","_callee14","walletAddresses","walletAddressesQueryParams","walletAddress","_callee14$","_context14","length","_x26","_x27","getTokenBalance","_getTokenBalance","_callee15","tokenBalanceRequest","_callee15$","_context15","_x28","_x29","getMultipleTokenBalance","_getMultipleTokenBalance","_callee16","_callee16$","_context16","_x30","_x31","blockchainMeta","isTronBlockchain"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rango-sdk",
3
- "version": "0.1.78",
3
+ "version": "0.1.79",
4
4
  "description": "Rango Exchange SDK for dApps",
5
5
  "module": "lib/rango-sdk.esm.js",
6
6
  "main": "lib/index.js",