@0xsquid/react-hooks 8.0.5 → 8.0.7-hedera-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/core/constants.d.ts +2 -0
  2. package/dist/core/queries/queries-keys.d.ts +6 -3
  3. package/dist/core/types/evm.d.ts +0 -1
  4. package/dist/hooks/hedera/useHederaTokenAssociations.d.ts +11 -0
  5. package/dist/hooks/index.d.ts +1 -0
  6. package/dist/hooks/transaction/useErc20Allowance.d.ts +3 -11
  7. package/dist/{index-fCnKL8wD.js → index-C0H64ktj.js} +326 -190
  8. package/dist/index-C0H64ktj.js.map +1 -0
  9. package/dist/{index-B402hKhN.js → index-DFAgGls6.js} +327 -194
  10. package/dist/index-DFAgGls6.js.map +1 -0
  11. package/dist/index.esm.js +2 -2
  12. package/dist/index.js +5 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/{secretService-CIyWIixx.js → secretService-D7gPw0fs.js} +3 -3
  15. package/dist/{secretService-CIyWIixx.js.map → secretService-D7gPw0fs.js.map} +1 -1
  16. package/dist/{secretService-CV_qKM-f.js → secretService-DX3NE6Of.js} +3 -3
  17. package/dist/{secretService-CV_qKM-f.js.map → secretService-DX3NE6Of.js.map} +1 -1
  18. package/dist/services/index.d.ts +1 -0
  19. package/dist/services/internal/hederaService.d.ts +2 -0
  20. package/dist/{stellarService.client-BK4en2TV.js → stellarService.client-Cr3lD8Iw.js} +3 -3
  21. package/dist/{stellarService.client-BK4en2TV.js.map → stellarService.client-Cr3lD8Iw.js.map} +1 -1
  22. package/dist/{stellarService.client-K2_2eYYZ.js → stellarService.client-peMOjG49.js} +3 -3
  23. package/dist/{stellarService.client-K2_2eYYZ.js.map → stellarService.client-peMOjG49.js.map} +1 -1
  24. package/package.json +1 -1
  25. package/dist/index-B402hKhN.js.map +0 -1
  26. package/dist/index-fCnKL8wD.js.map +0 -1
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- export { A as AxelarStatusResponseType, C as CHAIN_IDS, N as ConnectingWalletStatus, m as CosmosProvider, D as DEFAULT_LOCALE, aM as EnsService, bE as EvmNetworkNotSupportedErrorCode, az as FINAL_TRANSACTION_STATUSES, H as HistoryTxType, o as SendTransactionStatus, aL as SquidProvider, S as SquidStatusErrorType, ay as TX_STATUS_CONSTANTS, T as TransactionErrorType, p as TransactionStatus, bD as WidgetEvents, X as XamanXrplNetwork, cy as accessProperty, bN as adaptiveRound, bF as addEthereumChain, cF as addTokenToWallet, cC as areSameAddress, bb as areTokenSymbolsCompatible, aS as assetsBaseUrl, cQ as buildXrplTrustSetTx, bZ as calculateTotal24hChange, cE as calculateTotalUsdBalanceUSD, cL as cancelConnectWallet, c as chainTypeToNativeTokenAddressMap, a as chainTypeToZeroAddressMap, cn as chainflipMultihopBridgeType, bW as cleanAmount, cc as compareTransactionIds, bs as connectCosmosWallet, cK as connectWallet, bX as convertTokenAmountToUSD, bY as convertUSDToTokenAmount, bC as createQuoteRequestParamsHash, d as definedInWindow, b as destinationAddressResetValue, c1 as executeSolanaSwap, c2 as executeSolanaTransfer, e as fallbackAddressResetValue, b7 as fetchAssetsColors, bh as fetchHighestBalanceToken, cb as fetchSwapTransactionStatus, aW as filterChains, b$ as filterSolanaWallets, aX as filterTokens, bk as filterTokensForDestination, b4 as filterViewableTokens, bI as filterWagmiConnector, b0 as findNativeToken, a$ as findToken, f as formatBNToReadable, c7 as formatDistance, bH as formatEvmWallet, cv as formatHash, c8 as formatSeconds, c9 as formatSwapTxStatusResponseForStorage, bS as formatTokenAmount, c3 as formatTransactionHistoryDate, bR as formatUnitsRounded, bT as formatUsdAmount, bo as getAllKeysForSupportedCosmosChains, c4 as getAxelarExplorerTxUrl, co as getBridgeType, bd as getConfigWithDefaults, cI as getConnectorForChainType, br as getCosmosChainInfosObject, bm as getCosmosKey, bq as getCosmosSigningClient, bL as getCountryData, bM as getCurrencyData, cA as getDefaultChain, bg as getFirstAvailableChainId, cj as getHalfSuccessState, ch as getHistoryTransactionId, bl as getInitialChainIdFromConfig, bi as getInitialOrDefaultTokenAddressForChain, bj as getInitialTokenAddressForChain, bn as getKeysSettled, c6 as getMainExplorerUrl, aZ as getNewSwapParamsFromInput, bV as getNumericValue, aP as getQueryHeaders, b5 as getSecretNetworkBalances, cm as getSendTxStatusRefetchInterval, c5 as getSourceExplorerTxUrl, aQ as getStatusCode, ci as getStepStatuses, ck as getStepsInfos, bO as getSuggestedAmountsForCurrency, aV as getSupportedChainIdsForDirection, cl as getSwapTxStatusRefetchInterval, b6 as getTokenAssetsKey, aY as getTokenImage, bf as getTokensForChain, cq as getTransactionEndStatus, by as getTransactionError, cp as getTransactionStatus, bK as getUserCountry, cH as getWalletSupportedChainTypes, cR as getXrplNetwork, aN as getXummClient, b3 as groupTokensByChainId, b2 as groupTokensBySymbol, bz as handleTransactionErrorEvents, b8 as initializeSquidWithAssetsColors, aR as is404Error, cg as isChainflipBridgeTransaction, cd as isCoralBridgeAction, bp as isCosmosAddressValid, cf as isDepositRoute, b9 as isEmptyObject, cG as isEvmChainNotSupportedError, bc as isEvmosChain, bt as isFallbackAddressNeeded, cu as isHistoryTransactionEnded, cs as isHistoryTransactionFailed, cr as isHistoryTransactionPending, ct as isHistoryTransactionWarning, cM as isProblematicConnector, c0 as isSolanaAddressValid, bB as isStatusError, bA as isSwapRouteError, bx as isUserRejectionError, cw as isWalletAddressValid, aO as isXamanXAppContext, cO as isXionSmartContractAddress, cP as isXrplAddressValid, cN as mergeWallets, n as nativeBitcoinTokenAddress, g as nativeCosmosTokenAddress, h as nativeEvmTokenAddress, i as nativeSolanaTokenAddress, j as nativeStellarTokenAddress, k as nativeSuiTokenAddress, l as nativeXrplTokenAddress, bv as normalizeError, b1 as normalizeIbcAddress, ba as normalizeTokenSymbol, bG as parseEvmAddress, bP as parseToBigInt, cS as parseXrplPaymentTx, cz as populateWallets, be as randomIntFromInterval, cx as redirectToExtensionsStore, bQ as roundNumericValue, b_ as searchTokens, aT as shareSubgraphId, ca as simplifyRouteAction, ce as sleep, cD as sortAddressBook, a_ as sortAllTokens, aU as sortTokensBySharedSubgraphIds, cB as sortWallets, bu as suggestChainOrThrow, bw as transactionErrorCode, bU as trimExtraDecimals, am as useAddToken, B as useAddressBookStore, R as useAllConnectedWalletBalances, U as useAllTokensWithBalanceForChainType, a8 as useAllTransactionsStatus, a9 as useApproval, E as useAssetsColorsStore, an as useAutoConnect, aH as useAvailableQuotes, ai as useAvatar, s as useClient, J as useConfigStore, V as useCosmosBalance, u as useCosmosContext, t as useCosmosForChain, aG as useCountryDetails, aF as useCurrencyDetails, al as useDebouncedValue, P as useDepositAddress, ao as useEnsDataForAddress, ap as useEnsSearch, aa as useEstimate, ab as useEstimatePriceImpact, a5 as useEstimateSendTransaction, Y as useEvmBalance, aC as useExecuteFiatQuote, ac as useExecuteTransaction, F as useFavoriteTokensStore, aD as useFiatOnRampTxStatus, aE as useFiatTransactions, aA as useGetFiatQuote, aB as useGetOnRampConfig, aJ as useGetOnrampPaymentTypes, ad as useGetRoute, ae as useGetRouteWrapper, aq as useGnosisContext, a3 as useHistoricalData, aj as useHistory, G as useHistoryStore, as as useIntegratorContext, ar as useIsSameAddressAndGnosisContext, v as useKeyboardNavigation, Z as useMultiChainBalance, at as useMultiChainWallet, _ as useMultipleTokenPrices, $ as useNativeBalance, a0 as useNativeTokenForChain, aI as useRecommendedQuote, af as useRouteWarnings, a6 as useSendTransaction, a7 as useSendTransactionGas, ag as useSendTransactionStatus, I as useSendTransactionStore, au as useSigner, a1 as useSingleTokenPrice, y as useSquid, r as useSquidChains, x as useSquidQueryClient, K as useSquidStore, a2 as useSquidTokens, z as useStellarAccountActivation, aK as useSuggestedFiatAmounts, Q as useSwap, L as useSwapRoutePersistStore, ah as useSwapTransactionStatus, a4 as useTokensData, q as useTrackSearchEmpty, M as useTransactionStore, ak as useUserParams, av as useWallet, O as useWalletStore, aw as useWallets, ax as useXrplTrustLine, bJ as waitForReceiptWithRetry, cJ as walletSupportsChainType } from './index-B402hKhN.js';
1
+ export { A as AxelarStatusResponseType, C as CHAIN_IDS, O as ConnectingWalletStatus, m as CosmosProvider, D as DEFAULT_LOCALE, aN as EnsService, bF as EvmNetworkNotSupportedErrorCode, aA as FINAL_TRANSACTION_STATUSES, H as HistoryTxType, o as SendTransactionStatus, aM as SquidProvider, S as SquidStatusErrorType, az as TX_STATUS_CONSTANTS, T as TransactionErrorType, p as TransactionStatus, bE as WidgetEvents, X as XamanXrplNetwork, cB as accessProperty, bO as adaptiveRound, bG as addEthereumChain, cI as addTokenToWallet, cF as areSameAddress, bc as areTokenSymbolsCompatible, aT as assetsBaseUrl, cT as buildXrplTrustSetTx, c0 as calculateTotal24hChange, cH as calculateTotalUsdBalanceUSD, cO as cancelConnectWallet, c as chainTypeToNativeTokenAddressMap, a as chainTypeToZeroAddressMap, cq as chainflipMultihopBridgeType, bZ as cleanAmount, cf as compareTransactionIds, bt as connectCosmosWallet, cN as connectWallet, bR as convertEvmAddressToHederaAccountId, bQ as convertHederaAccountIdToEvmAddress, b_ as convertTokenAmountToUSD, b$ as convertUSDToTokenAmount, bD as createQuoteRequestParamsHash, d as definedInWindow, b as destinationAddressResetValue, c4 as executeSolanaSwap, c5 as executeSolanaTransfer, e as fallbackAddressResetValue, b8 as fetchAssetsColors, bi as fetchHighestBalanceToken, ce as fetchSwapTransactionStatus, aX as filterChains, c2 as filterSolanaWallets, aY as filterTokens, bl as filterTokensForDestination, b5 as filterViewableTokens, bJ as filterWagmiConnector, b1 as findNativeToken, b0 as findToken, f as formatBNToReadable, ca as formatDistance, bI as formatEvmWallet, cy as formatHash, cb as formatSeconds, cc as formatSwapTxStatusResponseForStorage, bV as formatTokenAmount, c6 as formatTransactionHistoryDate, bU as formatUnitsRounded, bW as formatUsdAmount, bp as getAllKeysForSupportedCosmosChains, c7 as getAxelarExplorerTxUrl, cr as getBridgeType, be as getConfigWithDefaults, cL as getConnectorForChainType, bs as getCosmosChainInfosObject, bn as getCosmosKey, br as getCosmosSigningClient, bM as getCountryData, bN as getCurrencyData, cD as getDefaultChain, bh as getFirstAvailableChainId, cm as getHalfSuccessState, ck as getHistoryTransactionId, bm as getInitialChainIdFromConfig, bj as getInitialOrDefaultTokenAddressForChain, bk as getInitialTokenAddressForChain, bo as getKeysSettled, c9 as getMainExplorerUrl, a_ as getNewSwapParamsFromInput, bY as getNumericValue, aQ as getQueryHeaders, b6 as getSecretNetworkBalances, cp as getSendTxStatusRefetchInterval, c8 as getSourceExplorerTxUrl, aR as getStatusCode, cl as getStepStatuses, cn as getStepsInfos, bP as getSuggestedAmountsForCurrency, aW as getSupportedChainIdsForDirection, co as getSwapTxStatusRefetchInterval, b7 as getTokenAssetsKey, aZ as getTokenImage, bg as getTokensForChain, ct as getTransactionEndStatus, bz as getTransactionError, cs as getTransactionStatus, bL as getUserCountry, cK as getWalletSupportedChainTypes, cU as getXrplNetwork, aO as getXummClient, b4 as groupTokensByChainId, b3 as groupTokensBySymbol, bA as handleTransactionErrorEvents, b9 as initializeSquidWithAssetsColors, aS as is404Error, cj as isChainflipBridgeTransaction, cg as isCoralBridgeAction, bq as isCosmosAddressValid, ci as isDepositRoute, ba as isEmptyObject, cJ as isEvmChainNotSupportedError, bd as isEvmosChain, bu as isFallbackAddressNeeded, cx as isHistoryTransactionEnded, cv as isHistoryTransactionFailed, cu as isHistoryTransactionPending, cw as isHistoryTransactionWarning, cP as isProblematicConnector, c3 as isSolanaAddressValid, bC as isStatusError, bB as isSwapRouteError, by as isUserRejectionError, cz as isWalletAddressValid, aP as isXamanXAppContext, cR as isXionSmartContractAddress, cS as isXrplAddressValid, cQ as mergeWallets, n as nativeBitcoinTokenAddress, g as nativeCosmosTokenAddress, h as nativeEvmTokenAddress, i as nativeSolanaTokenAddress, j as nativeStellarTokenAddress, k as nativeSuiTokenAddress, l as nativeXrplTokenAddress, bw as normalizeError, b2 as normalizeIbcAddress, bb as normalizeTokenSymbol, bH as parseEvmAddress, bS as parseToBigInt, cV as parseXrplPaymentTx, cC as populateWallets, bf as randomIntFromInterval, cA as redirectToExtensionsStore, bT as roundNumericValue, c1 as searchTokens, aU as shareSubgraphId, cd as simplifyRouteAction, ch as sleep, cG as sortAddressBook, a$ as sortAllTokens, aV as sortTokensBySharedSubgraphIds, cE as sortWallets, bv as suggestChainOrThrow, bx as transactionErrorCode, bX as trimExtraDecimals, an as useAddToken, E as useAddressBookStore, U as useAllConnectedWalletBalances, V as useAllTokensWithBalanceForChainType, a9 as useAllTransactionsStatus, aa as useApproval, F as useAssetsColorsStore, ao as useAutoConnect, aI as useAvailableQuotes, aj as useAvatar, s as useClient, K as useConfigStore, Y as useCosmosBalance, u as useCosmosContext, t as useCosmosForChain, aH as useCountryDetails, aG as useCurrencyDetails, am as useDebouncedValue, Q as useDepositAddress, ap as useEnsDataForAddress, aq as useEnsSearch, ab as useEstimate, ac as useEstimatePriceImpact, a6 as useEstimateSendTransaction, Z as useEvmBalance, aD as useExecuteFiatQuote, ad as useExecuteTransaction, G as useFavoriteTokensStore, aE as useFiatOnRampTxStatus, aF as useFiatTransactions, aB as useGetFiatQuote, aC as useGetOnRampConfig, aK as useGetOnrampPaymentTypes, ae as useGetRoute, af as useGetRouteWrapper, ar as useGnosisContext, v as useHederaTokenAssociations, a4 as useHistoricalData, ak as useHistory, I as useHistoryStore, at as useIntegratorContext, as as useIsSameAddressAndGnosisContext, x as useKeyboardNavigation, _ as useMultiChainBalance, au as useMultiChainWallet, $ as useMultipleTokenPrices, a0 as useNativeBalance, a1 as useNativeTokenForChain, aJ as useRecommendedQuote, ag as useRouteWarnings, a7 as useSendTransaction, a8 as useSendTransactionGas, ah as useSendTransactionStatus, J as useSendTransactionStore, av as useSigner, a2 as useSingleTokenPrice, z as useSquid, r as useSquidChains, y as useSquidQueryClient, L as useSquidStore, a3 as useSquidTokens, B as useStellarAccountActivation, aL as useSuggestedFiatAmounts, R as useSwap, M as useSwapRoutePersistStore, ai as useSwapTransactionStatus, a5 as useTokensData, q as useTrackSearchEmpty, N as useTransactionStore, al as useUserParams, aw as useWallet, P as useWalletStore, ax as useWallets, ay as useXrplTrustLine, bK as waitForReceiptWithRetry, cM as walletSupportsChainType } from './index-DFAgGls6.js';
2
2
  import '@0xsquid/squid-types';
3
3
  import 'viem';
4
4
  import 'react';
@@ -26,11 +26,11 @@ import 'wagmi';
26
26
  import '@safe-global/safe-apps-sdk';
27
27
  import '@wallet-standard/core';
28
28
  import '@mysten/slush-wallet';
29
+ import 'wagmi/connectors';
29
30
  import '@cosmjs/stargate';
30
31
  import '@mysten/sui/client';
31
32
  import '@cosmjs/proto-signing';
32
33
  import '@mysten/sui/transactions';
33
- import 'wagmi/connectors';
34
34
  import '@cosmjs/cosmwasm-stargate';
35
35
  import '@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js';
36
36
  import '@0xsquid/sdk';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-fCnKL8wD.js');
3
+ var index = require('./index-C0H64ktj.js');
4
4
  require('@0xsquid/squid-types');
5
5
  require('viem');
6
6
  require('react');
@@ -28,11 +28,11 @@ require('wagmi');
28
28
  require('@safe-global/safe-apps-sdk');
29
29
  require('@wallet-standard/core');
30
30
  require('@mysten/slush-wallet');
31
+ require('wagmi/connectors');
31
32
  require('@cosmjs/stargate');
32
33
  require('@mysten/sui/client');
33
34
  require('@cosmjs/proto-signing');
34
35
  require('@mysten/sui/transactions');
35
- require('wagmi/connectors');
36
36
  require('@cosmjs/cosmwasm-stargate');
37
37
  require('@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js');
38
38
  require('@0xsquid/sdk');
@@ -99,6 +99,8 @@ exports.cleanAmount = index.cleanAmount;
99
99
  exports.compareTransactionIds = index.compareTransactionIds;
100
100
  exports.connectCosmosWallet = index.connectCosmosWallet;
101
101
  exports.connectWallet = index.connectWallet;
102
+ exports.convertEvmAddressToHederaAccountId = index.convertEvmAddressToHederaAccountId;
103
+ exports.convertHederaAccountIdToEvmAddress = index.convertHederaAccountIdToEvmAddress;
102
104
  exports.convertTokenAmountToUSD = index.convertTokenAmountToUSD;
103
105
  exports.convertUSDToTokenAmount = index.convertUSDToTokenAmount;
104
106
  exports.createQuoteRequestParamsHash = index.createQuoteRequestParamsHash;
@@ -260,6 +262,7 @@ exports.useGetOnrampPaymentTypes = index.useGetOnrampPaymentTypes;
260
262
  exports.useGetRoute = index.useGetRoute;
261
263
  exports.useGetRouteWrapper = index.useGetRouteWrapper;
262
264
  exports.useGnosisContext = index.useGnosisContext;
265
+ exports.useHederaTokenAssociations = index.useHederaTokenAssociations;
263
266
  exports.useHistoricalData = index.useHistoricalData;
264
267
  exports.useHistory = index.useHistory;
265
268
  exports.useHistoryStore = index.useHistoryStore;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var stargate = require('@cosmjs/stargate');
4
4
  var secretjs = require('secretjs');
5
- var index = require('./index-fCnKL8wD.js');
5
+ var index = require('./index-C0H64ktj.js');
6
6
  require('@0xsquid/squid-types');
7
7
  require('viem');
8
8
  require('react');
@@ -30,10 +30,10 @@ require('wagmi');
30
30
  require('@safe-global/safe-apps-sdk');
31
31
  require('@wallet-standard/core');
32
32
  require('@mysten/slush-wallet');
33
+ require('wagmi/connectors');
33
34
  require('@mysten/sui/client');
34
35
  require('@cosmjs/proto-signing');
35
36
  require('@mysten/sui/transactions');
36
- require('wagmi/connectors');
37
37
  require('@cosmjs/cosmwasm-stargate');
38
38
  require('@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js');
39
39
  require('@0xsquid/sdk');
@@ -167,4 +167,4 @@ const fetchAllSecretBalances = async (chainData, userAddress, secretTokens, kepl
167
167
  exports.fetchAllSecretBalances = fetchAllSecretBalances;
168
168
  exports.getPermit = getPermit;
169
169
  exports.getTokenBalance = getTokenBalance;
170
- //# sourceMappingURL=secretService-CIyWIixx.js.map
170
+ //# sourceMappingURL=secretService-D7gPw0fs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"secretService-CIyWIixx.js","sources":["../src/services/external/secretService.ts"],"sourcesContent":["import type { ChainData, CosmosChain, Token } from \"@0xsquid/squid-types\";\nimport { StargateClient } from \"@cosmjs/stargate\";\nimport type { Keplr } from \"@keplr-wallet/types\";\nimport { SecretNetworkClient } from \"secretjs\";\nimport { CHAIN_IDS } from \"../../core/constants\";\nimport type { TokenWithBalance } from \"../../core/types/tokens\";\nimport type { TypedWindow } from \"../../core/types/wallet\";\nimport { formatBNToReadable } from \"../internal/numberService\";\n\n/**\n * Fetch secret network token balance\n * Using the permit signature, see permit function for more details\n * @param secretJS\n * @param contract\n * @param chainId\n * @param walletAddress\n * @param permit\n * @returns\n */\nexport const getTokenBalance = async (\n secretJS: SecretNetworkClient,\n contract: { address: string; codeHash: string },\n permit: any\n) => {\n if (permit) {\n const msg = {\n balance: {},\n };\n\n const result = await secretJS.query.compute.queryContract({\n contract_address: contract.address,\n code_hash: contract.codeHash,\n query: {\n with_permit: {\n query: msg,\n permit,\n },\n },\n });\n return result;\n }\n return -1;\n};\n\nexport const getPermit = async (\n chainId: string,\n contracts: any[],\n address: string\n) => {\n const contractsString = contracts.join(\"_\");\n const permKey = `perm_${chainId}_${contractsString}_${address}`;\n let permit: any;\n\n const permitStored = window.localStorage.getItem(permKey);\n if (permitStored) permit = JSON.parse(permitStored);\n\n // Not able to fetch permit signature from local storage,\n // Ask user to sign message\n if (!permit) {\n try {\n const result = await (window as TypedWindow).keplr.signAmino(\n chainId,\n address,\n {\n chain_id: chainId,\n account_number: \"0\",\n sequence: \"0\",\n fee: {\n amount: [{ denom: \"uscrt\", amount: \"0\" }],\n gas: \"1\",\n },\n msgs: [\n {\n type: \"query_permit\",\n value: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n permissions: [\"balance\"],\n },\n },\n ],\n memo: \"\",\n },\n {\n preferNoSetFee: true,\n preferNoSetMemo: true,\n }\n );\n permit = {\n params: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n chain_id: chainId,\n permissions: [\"balance\"],\n },\n signature: result.signature,\n };\n window.localStorage.setItem(permKey, JSON.stringify(permit));\n } catch (err) {\n console.error(\"--- PERMIT ERROR ---\");\n console.error(err);\n }\n }\n return permit;\n};\n\n/**\n * Fetches the secret balance of the user\n * This has a different logic than the other balances because Secret network hides the balance of the user by design\n * So we need to fetch the balance in a different way\n */\nexport const fetchAllSecretBalances = async (\n chainData: ChainData,\n userAddress: string,\n secretTokens: (Token & { codeHash?: string })[],\n keplr?: Keplr\n): Promise<TokenWithBalance[]> => {\n if (!keplr) return [];\n // Enables app to utilize keplr's secret utilities\n await keplr.enable(CHAIN_IDS.SECRET);\n // Create a client that handles the query encryption\n const client = new SecretNetworkClient({\n url: (chainData as CosmosChain).rest,\n chainId: CHAIN_IDS.SECRET,\n wallet: keplr.getOfflineSignerOnlyAmino(CHAIN_IDS.SECRET),\n encryptionUtils: keplr.getEnigmaUtils(CHAIN_IDS.SECRET),\n walletAddress: userAddress,\n });\n\n // Get secret tokens\n\n const permit = await getPermit(\n CHAIN_IDS.SECRET,\n secretTokens.map((st) => st.address),\n userAddress\n );\n\n // Fetching all balances in parallel\n const privateTokens = await Promise.all(\n secretTokens\n .filter((t) => !!t.codeHash)\n .map(async (token) => {\n const result = (await getTokenBalance(\n client,\n {\n address: token.address,\n codeHash: token.codeHash ?? \"\",\n },\n permit\n )) as { balance: { amount: string } };\n\n return {\n ...token,\n balance: formatBNToReadable(\n BigInt(result.balance.amount),\n token?.decimals\n ),\n } as TokenWithBalance;\n })\n );\n\n // Use Stargate getBalance for SCRT\n const stargateClient = await StargateClient.connect(chainData.rpc);\n const nativeSecretToken = secretTokens.find((t) => t.address === \"uscrt\");\n\n const publicTokenBalance = await stargateClient.getBalance(\n userAddress,\n \"uscrt\"\n );\n\n const publicTokenWithBalance = {\n ...nativeSecretToken,\n balance: formatBNToReadable(\n BigInt(publicTokenBalance.amount),\n nativeSecretToken?.decimals ?? 18\n ),\n } as TokenWithBalance;\n\n return [...privateTokens, publicTokenWithBalance];\n};\n"],"names":["CHAIN_IDS","SecretNetworkClient","formatBNToReadable","StargateClient"],"mappings":"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"}
1
+ {"version":3,"file":"secretService-D7gPw0fs.js","sources":["../src/services/external/secretService.ts"],"sourcesContent":["import type { ChainData, CosmosChain, Token } from \"@0xsquid/squid-types\";\nimport { StargateClient } from \"@cosmjs/stargate\";\nimport type { Keplr } from \"@keplr-wallet/types\";\nimport { SecretNetworkClient } from \"secretjs\";\nimport { CHAIN_IDS } from \"../../core/constants\";\nimport type { TokenWithBalance } from \"../../core/types/tokens\";\nimport type { TypedWindow } from \"../../core/types/wallet\";\nimport { formatBNToReadable } from \"../internal/numberService\";\n\n/**\n * Fetch secret network token balance\n * Using the permit signature, see permit function for more details\n * @param secretJS\n * @param contract\n * @param chainId\n * @param walletAddress\n * @param permit\n * @returns\n */\nexport const getTokenBalance = async (\n secretJS: SecretNetworkClient,\n contract: { address: string; codeHash: string },\n permit: any\n) => {\n if (permit) {\n const msg = {\n balance: {},\n };\n\n const result = await secretJS.query.compute.queryContract({\n contract_address: contract.address,\n code_hash: contract.codeHash,\n query: {\n with_permit: {\n query: msg,\n permit,\n },\n },\n });\n return result;\n }\n return -1;\n};\n\nexport const getPermit = async (\n chainId: string,\n contracts: any[],\n address: string\n) => {\n const contractsString = contracts.join(\"_\");\n const permKey = `perm_${chainId}_${contractsString}_${address}`;\n let permit: any;\n\n const permitStored = window.localStorage.getItem(permKey);\n if (permitStored) permit = JSON.parse(permitStored);\n\n // Not able to fetch permit signature from local storage,\n // Ask user to sign message\n if (!permit) {\n try {\n const result = await (window as TypedWindow).keplr.signAmino(\n chainId,\n address,\n {\n chain_id: chainId,\n account_number: \"0\",\n sequence: \"0\",\n fee: {\n amount: [{ denom: \"uscrt\", amount: \"0\" }],\n gas: \"1\",\n },\n msgs: [\n {\n type: \"query_permit\",\n value: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n permissions: [\"balance\"],\n },\n },\n ],\n memo: \"\",\n },\n {\n preferNoSetFee: true,\n preferNoSetMemo: true,\n }\n );\n permit = {\n params: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n chain_id: chainId,\n permissions: [\"balance\"],\n },\n signature: result.signature,\n };\n window.localStorage.setItem(permKey, JSON.stringify(permit));\n } catch (err) {\n console.error(\"--- PERMIT ERROR ---\");\n console.error(err);\n }\n }\n return permit;\n};\n\n/**\n * Fetches the secret balance of the user\n * This has a different logic than the other balances because Secret network hides the balance of the user by design\n * So we need to fetch the balance in a different way\n */\nexport const fetchAllSecretBalances = async (\n chainData: ChainData,\n userAddress: string,\n secretTokens: (Token & { codeHash?: string })[],\n keplr?: Keplr\n): Promise<TokenWithBalance[]> => {\n if (!keplr) return [];\n // Enables app to utilize keplr's secret utilities\n await keplr.enable(CHAIN_IDS.SECRET);\n // Create a client that handles the query encryption\n const client = new SecretNetworkClient({\n url: (chainData as CosmosChain).rest,\n chainId: CHAIN_IDS.SECRET,\n wallet: keplr.getOfflineSignerOnlyAmino(CHAIN_IDS.SECRET),\n encryptionUtils: keplr.getEnigmaUtils(CHAIN_IDS.SECRET),\n walletAddress: userAddress,\n });\n\n // Get secret tokens\n\n const permit = await getPermit(\n CHAIN_IDS.SECRET,\n secretTokens.map((st) => st.address),\n userAddress\n );\n\n // Fetching all balances in parallel\n const privateTokens = await Promise.all(\n secretTokens\n .filter((t) => !!t.codeHash)\n .map(async (token) => {\n const result = (await getTokenBalance(\n client,\n {\n address: token.address,\n codeHash: token.codeHash ?? \"\",\n },\n permit\n )) as { balance: { amount: string } };\n\n return {\n ...token,\n balance: formatBNToReadable(\n BigInt(result.balance.amount),\n token?.decimals\n ),\n } as TokenWithBalance;\n })\n );\n\n // Use Stargate getBalance for SCRT\n const stargateClient = await StargateClient.connect(chainData.rpc);\n const nativeSecretToken = secretTokens.find((t) => t.address === \"uscrt\");\n\n const publicTokenBalance = await stargateClient.getBalance(\n userAddress,\n \"uscrt\"\n );\n\n const publicTokenWithBalance = {\n ...nativeSecretToken,\n balance: formatBNToReadable(\n BigInt(publicTokenBalance.amount),\n nativeSecretToken?.decimals ?? 18\n ),\n } as TokenWithBalance;\n\n return [...privateTokens, publicTokenWithBalance];\n};\n"],"names":["CHAIN_IDS","SecretNetworkClient","formatBNToReadable","StargateClient"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { StargateClient } from '@cosmjs/stargate';
2
2
  import { SecretNetworkClient } from 'secretjs';
3
- import { C as CHAIN_IDS, f as formatBNToReadable } from './index-B402hKhN.js';
3
+ import { C as CHAIN_IDS, f as formatBNToReadable } from './index-DFAgGls6.js';
4
4
  import '@0xsquid/squid-types';
5
5
  import 'viem';
6
6
  import 'react';
@@ -28,10 +28,10 @@ import 'wagmi';
28
28
  import '@safe-global/safe-apps-sdk';
29
29
  import '@wallet-standard/core';
30
30
  import '@mysten/slush-wallet';
31
+ import 'wagmi/connectors';
31
32
  import '@mysten/sui/client';
32
33
  import '@cosmjs/proto-signing';
33
34
  import '@mysten/sui/transactions';
34
- import 'wagmi/connectors';
35
35
  import '@cosmjs/cosmwasm-stargate';
36
36
  import '@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js';
37
37
  import '@0xsquid/sdk';
@@ -163,4 +163,4 @@ const fetchAllSecretBalances = async (chainData, userAddress, secretTokens, kepl
163
163
  };
164
164
 
165
165
  export { fetchAllSecretBalances, getPermit, getTokenBalance };
166
- //# sourceMappingURL=secretService-CV_qKM-f.js.map
166
+ //# sourceMappingURL=secretService-DX3NE6Of.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"secretService-CV_qKM-f.js","sources":["../src/services/external/secretService.ts"],"sourcesContent":["import type { ChainData, CosmosChain, Token } from \"@0xsquid/squid-types\";\nimport { StargateClient } from \"@cosmjs/stargate\";\nimport type { Keplr } from \"@keplr-wallet/types\";\nimport { SecretNetworkClient } from \"secretjs\";\nimport { CHAIN_IDS } from \"../../core/constants\";\nimport type { TokenWithBalance } from \"../../core/types/tokens\";\nimport type { TypedWindow } from \"../../core/types/wallet\";\nimport { formatBNToReadable } from \"../internal/numberService\";\n\n/**\n * Fetch secret network token balance\n * Using the permit signature, see permit function for more details\n * @param secretJS\n * @param contract\n * @param chainId\n * @param walletAddress\n * @param permit\n * @returns\n */\nexport const getTokenBalance = async (\n secretJS: SecretNetworkClient,\n contract: { address: string; codeHash: string },\n permit: any\n) => {\n if (permit) {\n const msg = {\n balance: {},\n };\n\n const result = await secretJS.query.compute.queryContract({\n contract_address: contract.address,\n code_hash: contract.codeHash,\n query: {\n with_permit: {\n query: msg,\n permit,\n },\n },\n });\n return result;\n }\n return -1;\n};\n\nexport const getPermit = async (\n chainId: string,\n contracts: any[],\n address: string\n) => {\n const contractsString = contracts.join(\"_\");\n const permKey = `perm_${chainId}_${contractsString}_${address}`;\n let permit: any;\n\n const permitStored = window.localStorage.getItem(permKey);\n if (permitStored) permit = JSON.parse(permitStored);\n\n // Not able to fetch permit signature from local storage,\n // Ask user to sign message\n if (!permit) {\n try {\n const result = await (window as TypedWindow).keplr.signAmino(\n chainId,\n address,\n {\n chain_id: chainId,\n account_number: \"0\",\n sequence: \"0\",\n fee: {\n amount: [{ denom: \"uscrt\", amount: \"0\" }],\n gas: \"1\",\n },\n msgs: [\n {\n type: \"query_permit\",\n value: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n permissions: [\"balance\"],\n },\n },\n ],\n memo: \"\",\n },\n {\n preferNoSetFee: true,\n preferNoSetMemo: true,\n }\n );\n permit = {\n params: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n chain_id: chainId,\n permissions: [\"balance\"],\n },\n signature: result.signature,\n };\n window.localStorage.setItem(permKey, JSON.stringify(permit));\n } catch (err) {\n console.error(\"--- PERMIT ERROR ---\");\n console.error(err);\n }\n }\n return permit;\n};\n\n/**\n * Fetches the secret balance of the user\n * This has a different logic than the other balances because Secret network hides the balance of the user by design\n * So we need to fetch the balance in a different way\n */\nexport const fetchAllSecretBalances = async (\n chainData: ChainData,\n userAddress: string,\n secretTokens: (Token & { codeHash?: string })[],\n keplr?: Keplr\n): Promise<TokenWithBalance[]> => {\n if (!keplr) return [];\n // Enables app to utilize keplr's secret utilities\n await keplr.enable(CHAIN_IDS.SECRET);\n // Create a client that handles the query encryption\n const client = new SecretNetworkClient({\n url: (chainData as CosmosChain).rest,\n chainId: CHAIN_IDS.SECRET,\n wallet: keplr.getOfflineSignerOnlyAmino(CHAIN_IDS.SECRET),\n encryptionUtils: keplr.getEnigmaUtils(CHAIN_IDS.SECRET),\n walletAddress: userAddress,\n });\n\n // Get secret tokens\n\n const permit = await getPermit(\n CHAIN_IDS.SECRET,\n secretTokens.map((st) => st.address),\n userAddress\n );\n\n // Fetching all balances in parallel\n const privateTokens = await Promise.all(\n secretTokens\n .filter((t) => !!t.codeHash)\n .map(async (token) => {\n const result = (await getTokenBalance(\n client,\n {\n address: token.address,\n codeHash: token.codeHash ?? \"\",\n },\n permit\n )) as { balance: { amount: string } };\n\n return {\n ...token,\n balance: formatBNToReadable(\n BigInt(result.balance.amount),\n token?.decimals\n ),\n } as TokenWithBalance;\n })\n );\n\n // Use Stargate getBalance for SCRT\n const stargateClient = await StargateClient.connect(chainData.rpc);\n const nativeSecretToken = secretTokens.find((t) => t.address === \"uscrt\");\n\n const publicTokenBalance = await stargateClient.getBalance(\n userAddress,\n \"uscrt\"\n );\n\n const publicTokenWithBalance = {\n ...nativeSecretToken,\n balance: formatBNToReadable(\n BigInt(publicTokenBalance.amount),\n nativeSecretToken?.decimals ?? 18\n ),\n } as TokenWithBalance;\n\n return [...privateTokens, publicTokenWithBalance];\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secretService-DX3NE6Of.js","sources":["../src/services/external/secretService.ts"],"sourcesContent":["import type { ChainData, CosmosChain, Token } from \"@0xsquid/squid-types\";\nimport { StargateClient } from \"@cosmjs/stargate\";\nimport type { Keplr } from \"@keplr-wallet/types\";\nimport { SecretNetworkClient } from \"secretjs\";\nimport { CHAIN_IDS } from \"../../core/constants\";\nimport type { TokenWithBalance } from \"../../core/types/tokens\";\nimport type { TypedWindow } from \"../../core/types/wallet\";\nimport { formatBNToReadable } from \"../internal/numberService\";\n\n/**\n * Fetch secret network token balance\n * Using the permit signature, see permit function for more details\n * @param secretJS\n * @param contract\n * @param chainId\n * @param walletAddress\n * @param permit\n * @returns\n */\nexport const getTokenBalance = async (\n secretJS: SecretNetworkClient,\n contract: { address: string; codeHash: string },\n permit: any\n) => {\n if (permit) {\n const msg = {\n balance: {},\n };\n\n const result = await secretJS.query.compute.queryContract({\n contract_address: contract.address,\n code_hash: contract.codeHash,\n query: {\n with_permit: {\n query: msg,\n permit,\n },\n },\n });\n return result;\n }\n return -1;\n};\n\nexport const getPermit = async (\n chainId: string,\n contracts: any[],\n address: string\n) => {\n const contractsString = contracts.join(\"_\");\n const permKey = `perm_${chainId}_${contractsString}_${address}`;\n let permit: any;\n\n const permitStored = window.localStorage.getItem(permKey);\n if (permitStored) permit = JSON.parse(permitStored);\n\n // Not able to fetch permit signature from local storage,\n // Ask user to sign message\n if (!permit) {\n try {\n const result = await (window as TypedWindow).keplr.signAmino(\n chainId,\n address,\n {\n chain_id: chainId,\n account_number: \"0\",\n sequence: \"0\",\n fee: {\n amount: [{ denom: \"uscrt\", amount: \"0\" }],\n gas: \"1\",\n },\n msgs: [\n {\n type: \"query_permit\",\n value: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n permissions: [\"balance\"],\n },\n },\n ],\n memo: \"\",\n },\n {\n preferNoSetFee: true,\n preferNoSetMemo: true,\n }\n );\n permit = {\n params: {\n permit_name: \"secret-bridge-balance\",\n allowed_tokens: contracts,\n chain_id: chainId,\n permissions: [\"balance\"],\n },\n signature: result.signature,\n };\n window.localStorage.setItem(permKey, JSON.stringify(permit));\n } catch (err) {\n console.error(\"--- PERMIT ERROR ---\");\n console.error(err);\n }\n }\n return permit;\n};\n\n/**\n * Fetches the secret balance of the user\n * This has a different logic than the other balances because Secret network hides the balance of the user by design\n * So we need to fetch the balance in a different way\n */\nexport const fetchAllSecretBalances = async (\n chainData: ChainData,\n userAddress: string,\n secretTokens: (Token & { codeHash?: string })[],\n keplr?: Keplr\n): Promise<TokenWithBalance[]> => {\n if (!keplr) return [];\n // Enables app to utilize keplr's secret utilities\n await keplr.enable(CHAIN_IDS.SECRET);\n // Create a client that handles the query encryption\n const client = new SecretNetworkClient({\n url: (chainData as CosmosChain).rest,\n chainId: CHAIN_IDS.SECRET,\n wallet: keplr.getOfflineSignerOnlyAmino(CHAIN_IDS.SECRET),\n encryptionUtils: keplr.getEnigmaUtils(CHAIN_IDS.SECRET),\n walletAddress: userAddress,\n });\n\n // Get secret tokens\n\n const permit = await getPermit(\n CHAIN_IDS.SECRET,\n secretTokens.map((st) => st.address),\n userAddress\n );\n\n // Fetching all balances in parallel\n const privateTokens = await Promise.all(\n secretTokens\n .filter((t) => !!t.codeHash)\n .map(async (token) => {\n const result = (await getTokenBalance(\n client,\n {\n address: token.address,\n codeHash: token.codeHash ?? \"\",\n },\n permit\n )) as { balance: { amount: string } };\n\n return {\n ...token,\n balance: formatBNToReadable(\n BigInt(result.balance.amount),\n token?.decimals\n ),\n } as TokenWithBalance;\n })\n );\n\n // Use Stargate getBalance for SCRT\n const stargateClient = await StargateClient.connect(chainData.rpc);\n const nativeSecretToken = secretTokens.find((t) => t.address === \"uscrt\");\n\n const publicTokenBalance = await stargateClient.getBalance(\n userAddress,\n \"uscrt\"\n );\n\n const publicTokenWithBalance = {\n ...nativeSecretToken,\n balance: formatBNToReadable(\n BigInt(publicTokenBalance.amount),\n nativeSecretToken?.decimals ?? 18\n ),\n } as TokenWithBalance;\n\n return [...privateTokens, publicTokenWithBalance];\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA;;;;;;;;;AASG;AACI,MAAM,eAAe,GAAG,OAC7B,QAA6B,EAC7B,QAA+C,EAC/C,MAAW,KACT;AACF,IAAA,IAAI,MAAM,EAAE;AACV,QAAA,MAAM,GAAG,GAAG;AACV,YAAA,OAAO,EAAE,EAAE;SACZ;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YACxD,gBAAgB,EAAE,QAAQ,CAAC,OAAO;YAClC,SAAS,EAAE,QAAQ,CAAC,QAAQ;AAC5B,YAAA,KAAK,EAAE;AACL,gBAAA,WAAW,EAAE;AACX,oBAAA,KAAK,EAAE,GAAG;oBACV,MAAM;AACP,iBAAA;AACF,aAAA;AACF,SAAA,CAAC;AACF,QAAA,OAAO,MAAM;AACd;IACD,OAAO,EAAE;AACX;AAEO,MAAM,SAAS,GAAG,OACvB,OAAe,EACf,SAAgB,EAChB,OAAe,KACb;IACF,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;IAC3C,MAAM,OAAO,GAAG,CAAQ,KAAA,EAAA,OAAO,IAAI,eAAe,CAAA,CAAA,EAAI,OAAO,CAAA,CAAE;AAC/D,IAAA,IAAI,MAAW;IAEf,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC;AACzD,IAAA,IAAI,YAAY;AAAE,QAAA,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;;;IAInD,IAAI,CAAC,MAAM,EAAE;QACX,IAAI;AACF,YAAA,MAAM,MAAM,GAAG,MAAO,MAAsB,CAAC,KAAK,CAAC,SAAS,CAC1D,OAAO,EACP,OAAO,EACP;AACE,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,cAAc,EAAE,GAAG;AACnB,gBAAA,QAAQ,EAAE,GAAG;AACb,gBAAA,GAAG,EAAE;oBACH,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACzC,oBAAA,GAAG,EAAE,GAAG;AACT,iBAAA;AACD,gBAAA,IAAI,EAAE;AACJ,oBAAA;AACE,wBAAA,IAAI,EAAE,cAAc;AACpB,wBAAA,KAAK,EAAE;AACL,4BAAA,WAAW,EAAE,uBAAuB;AACpC,4BAAA,cAAc,EAAE,SAAS;4BACzB,WAAW,EAAE,CAAC,SAAS,CAAC;AACzB,yBAAA;AACF,qBAAA;AACF,iBAAA;AACD,gBAAA,IAAI,EAAE,EAAE;aACT,EACD;AACE,gBAAA,cAAc,EAAE,IAAI;AACpB,gBAAA,eAAe,EAAE,IAAI;AACtB,aAAA,CACF;AACD,YAAA,MAAM,GAAG;AACP,gBAAA,MAAM,EAAE;AACN,oBAAA,WAAW,EAAE,uBAAuB;AACpC,oBAAA,cAAc,EAAE,SAAS;AACzB,oBAAA,QAAQ,EAAE,OAAO;oBACjB,WAAW,EAAE,CAAC,SAAS,CAAC;AACzB,iBAAA;gBACD,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B;AACD,YAAA,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC7D;AAAC,QAAA,OAAO,GAAG,EAAE;AACZ,YAAA,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;AACrC,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;AACnB;AACF;AACD,IAAA,OAAO,MAAM;AACf;AAEA;;;;AAIG;AACI,MAAM,sBAAsB,GAAG,OACpC,SAAoB,EACpB,WAAmB,EACnB,YAA+C,EAC/C,KAAa,KACkB;AAC/B,IAAA,IAAI,CAAC,KAAK;AAAE,QAAA,OAAO,EAAE;;IAErB,MAAM,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;;AAEpC,IAAA,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC;QACrC,GAAG,EAAG,SAAyB,CAAC,IAAI;QACpC,OAAO,EAAE,SAAS,CAAC,MAAM;QACzB,MAAM,EAAE,KAAK,CAAC,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC;QACzD,eAAe,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC;AACvD,QAAA,aAAa,EAAE,WAAW;AAC3B,KAAA,CAAC;;IAIF,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,SAAS,CAAC,MAAM,EAChB,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EACpC,WAAW,CACZ;;AAGD,IAAA,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC;SACG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ;AAC1B,SAAA,GAAG,CAAC,OAAO,KAAK,KAAI;AACnB,QAAA,MAAM,MAAM,IAAI,MAAM,eAAe,CACnC,MAAM,EACN;YACE,OAAO,EAAE,KAAK,CAAC,OAAO;AACtB,YAAA,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;SAC/B,EACD,MAAM,CACP,CAAoC;QAErC,OAAO;AACL,YAAA,GAAG,KAAK;AACR,YAAA,OAAO,EAAE,kBAAkB,CACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAC7B,KAAK,EAAE,QAAQ,CAChB;SACkB;KACtB,CAAC,CACL;;IAGD,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC;AAClE,IAAA,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;IAEzE,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC,UAAU,CACxD,WAAW,EACX,OAAO,CACR;AAED,IAAA,MAAM,sBAAsB,GAAG;AAC7B,QAAA,GAAG,iBAAiB;AACpB,QAAA,OAAO,EAAE,kBAAkB,CACzB,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,EACjC,iBAAiB,EAAE,QAAQ,IAAI,EAAE,CAClC;KACkB;AAErB,IAAA,OAAO,CAAC,GAAG,aAAa,EAAE,sBAAsB,CAAC;AACnD;;;;"}
@@ -7,6 +7,7 @@ export * from "./internal/errorService";
7
7
  export * from "./internal/eventService";
8
8
  export * from "./internal/evmService";
9
9
  export * from "./internal/fiatToCryptoService";
10
+ export * from "./internal/hederaService";
10
11
  export * from "./internal/numberService";
11
12
  export * from "./internal/priceService";
12
13
  export * from "./internal/searchService";
@@ -0,0 +1,2 @@
1
+ export declare function convertHederaAccountIdToEvmAddress(accId: string): string;
2
+ export declare function convertEvmAddressToHederaAccountId(address: string): string;
@@ -1,6 +1,6 @@
1
1
  import { ChainType } from '@0xsquid/squid-types';
2
2
  import { HANA_ID, LOBSTR_ID, FREIGHTER_ID, XBULL_ID, RABET_ID, HOTWALLET_ID, ALBEDO_ID } from '@creit.tech/stellar-wallets-kit';
3
- import { W as WindowWalletFlag, w as walletIconBaseUrl, d as definedInWindow } from './index-B402hKhN.js';
3
+ import { W as WindowWalletFlag, w as walletIconBaseUrl, d as definedInWindow } from './index-DFAgGls6.js';
4
4
  import 'viem';
5
5
  import 'react';
6
6
  import '@tanstack/react-query';
@@ -27,11 +27,11 @@ import 'wagmi';
27
27
  import '@safe-global/safe-apps-sdk';
28
28
  import '@wallet-standard/core';
29
29
  import '@mysten/slush-wallet';
30
+ import 'wagmi/connectors';
30
31
  import '@cosmjs/stargate';
31
32
  import '@mysten/sui/client';
32
33
  import '@cosmjs/proto-signing';
33
34
  import '@mysten/sui/transactions';
34
- import 'wagmi/connectors';
35
35
  import '@cosmjs/cosmwasm-stargate';
36
36
  import '@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js';
37
37
  import '@0xsquid/sdk';
@@ -92,4 +92,4 @@ function formatStellarWallet(connector, isAvailable) {
92
92
  }
93
93
 
94
94
  export { formatStellarWallet };
95
- //# sourceMappingURL=stellarService.client-BK4en2TV.js.map
95
+ //# sourceMappingURL=stellarService.client-Cr3lD8Iw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stellarService.client-BK4en2TV.js","sources":["../src/services/internal/stellarService.client.ts"],"sourcesContent":["import { ChainType } from \"@0xsquid/squid-types\";\nimport {\n ALBEDO_ID,\n FREIGHTER_ID,\n HANA_ID,\n HOTWALLET_ID,\n LOBSTR_ID,\n RABET_ID,\n XBULL_ID,\n} from \"@creit.tech/stellar-wallets-kit\";\nimport { StellarConnector } from \"../../core/types/stellar\";\nimport {\n ConnectorID,\n StellarWallet,\n WindowWalletFlag,\n} from \"../../core/types/wallet\";\nimport { walletIconBaseUrl } from \"../../core/wallets\";\nimport { definedInWindow } from \"./walletService\";\n\ntype WalletOverride = Partial<\n Pick<\n StellarWallet,\n \"icon\" | \"windowFlag\" | \"skipInstallCheck\" | \"isInstalled\" | \"connectorId\"\n >\n>;\n\nconst walletOverrides: Partial<Record<string, WalletOverride>> = {\n [ALBEDO_ID]: {\n icon: `${walletIconBaseUrl}/albedo.webp`,\n isInstalled: () => false,\n skipInstallCheck: true,\n connectorId: \"albedo\",\n },\n [HOTWALLET_ID]: {\n icon: `${walletIconBaseUrl}/hot.webp`,\n windowFlag: WindowWalletFlag.HotWallet,\n skipInstallCheck: true,\n connectorId: \"hotWallet\",\n },\n [RABET_ID]: {\n icon: `${walletIconBaseUrl}/rabet.webp`,\n },\n [XBULL_ID]: {\n icon: `${walletIconBaseUrl}/xbull.webp`,\n windowFlag: WindowWalletFlag.XBull,\n skipInstallCheck: true,\n connectorId: \"xBull\",\n },\n [FREIGHTER_ID]: {\n connectorId: \"freighter\",\n },\n [LOBSTR_ID]: {\n connectorId: \"lobstr\",\n },\n [HANA_ID]: {\n connectorId: \"hanaWallet\",\n },\n};\n\nexport function formatStellarWallet(\n connector: StellarConnector,\n isAvailable: boolean\n): StellarWallet {\n const { productName, productId, productIcon, productUrl } = connector;\n\n const overrides = walletOverrides[productId];\n const icon = overrides?.icon || productIcon;\n const connectorId = overrides?.connectorId || (productId as ConnectorID);\n\n return {\n connectorId,\n name: productName,\n connectorName: productName,\n type: ChainType.STELLAR,\n icon,\n windowFlag: productName as WindowWalletFlag,\n isMobile: false,\n isInstalled: overrides?.windowFlag\n ? () => definedInWindow(overrides.windowFlag, window)\n : overrides?.isInstalled || (() => isAvailable),\n skipInstallCheck: overrides?.skipInstallCheck,\n connector,\n url: productUrl,\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,MAAM,eAAe,GAA4C;IAC/D,CAAC,SAAS,GAAG;QACX,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAc,YAAA,CAAA;AACxC,QAAA,WAAW,EAAE,MAAM,KAAK;AACxB,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAAC,YAAY,GAAG;QACd,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAW,SAAA,CAAA;QACrC,UAAU,EAAE,gBAAgB,CAAC,SAAS;AACtC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAAC,QAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAa,WAAA,CAAA;AACxC,KAAA;IACD,CAAC,QAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAa,WAAA,CAAA;QACvC,UAAU,EAAE,gBAAgB,CAAC,KAAK;AAClC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,OAAO;AACrB,KAAA;IACD,CAAC,YAAY,GAAG;AACd,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAAC,SAAS,GAAG;AACX,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAAC,OAAO,GAAG;AACT,QAAA,WAAW,EAAE,YAAY;AAC1B,KAAA;CACF;AAEe,SAAA,mBAAmB,CACjC,SAA2B,EAC3B,WAAoB,EAAA;IAEpB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,SAAS;AAErE,IAAA,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AAC5C,IAAA,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,WAAW;AAC3C,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,IAAK,SAAyB;IAExE,OAAO;QACL,WAAW;AACX,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,aAAa,EAAE,WAAW;QAC1B,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,IAAI;AACJ,QAAA,UAAU,EAAE,WAA+B;AAC3C,QAAA,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,SAAS,EAAE;cACpB,MAAM,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM;cAClD,SAAS,EAAE,WAAW,KAAK,MAAM,WAAW,CAAC;QACjD,gBAAgB,EAAE,SAAS,EAAE,gBAAgB;QAC7C,SAAS;AACT,QAAA,GAAG,EAAE,UAAU;KAChB;AACH;;;;"}
1
+ {"version":3,"file":"stellarService.client-Cr3lD8Iw.js","sources":["../src/services/internal/stellarService.client.ts"],"sourcesContent":["import { ChainType } from \"@0xsquid/squid-types\";\nimport {\n ALBEDO_ID,\n FREIGHTER_ID,\n HANA_ID,\n HOTWALLET_ID,\n LOBSTR_ID,\n RABET_ID,\n XBULL_ID,\n} from \"@creit.tech/stellar-wallets-kit\";\nimport { StellarConnector } from \"../../core/types/stellar\";\nimport {\n ConnectorID,\n StellarWallet,\n WindowWalletFlag,\n} from \"../../core/types/wallet\";\nimport { walletIconBaseUrl } from \"../../core/wallets\";\nimport { definedInWindow } from \"./walletService\";\n\ntype WalletOverride = Partial<\n Pick<\n StellarWallet,\n \"icon\" | \"windowFlag\" | \"skipInstallCheck\" | \"isInstalled\" | \"connectorId\"\n >\n>;\n\nconst walletOverrides: Partial<Record<string, WalletOverride>> = {\n [ALBEDO_ID]: {\n icon: `${walletIconBaseUrl}/albedo.webp`,\n isInstalled: () => false,\n skipInstallCheck: true,\n connectorId: \"albedo\",\n },\n [HOTWALLET_ID]: {\n icon: `${walletIconBaseUrl}/hot.webp`,\n windowFlag: WindowWalletFlag.HotWallet,\n skipInstallCheck: true,\n connectorId: \"hotWallet\",\n },\n [RABET_ID]: {\n icon: `${walletIconBaseUrl}/rabet.webp`,\n },\n [XBULL_ID]: {\n icon: `${walletIconBaseUrl}/xbull.webp`,\n windowFlag: WindowWalletFlag.XBull,\n skipInstallCheck: true,\n connectorId: \"xBull\",\n },\n [FREIGHTER_ID]: {\n connectorId: \"freighter\",\n },\n [LOBSTR_ID]: {\n connectorId: \"lobstr\",\n },\n [HANA_ID]: {\n connectorId: \"hanaWallet\",\n },\n};\n\nexport function formatStellarWallet(\n connector: StellarConnector,\n isAvailable: boolean\n): StellarWallet {\n const { productName, productId, productIcon, productUrl } = connector;\n\n const overrides = walletOverrides[productId];\n const icon = overrides?.icon || productIcon;\n const connectorId = overrides?.connectorId || (productId as ConnectorID);\n\n return {\n connectorId,\n name: productName,\n connectorName: productName,\n type: ChainType.STELLAR,\n icon,\n windowFlag: productName as WindowWalletFlag,\n isMobile: false,\n isInstalled: overrides?.windowFlag\n ? () => definedInWindow(overrides.windowFlag, window)\n : overrides?.isInstalled || (() => isAvailable),\n skipInstallCheck: overrides?.skipInstallCheck,\n connector,\n url: productUrl,\n };\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,MAAM,eAAe,GAA4C;IAC/D,CAAC,SAAS,GAAG;QACX,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAc,YAAA,CAAA;AACxC,QAAA,WAAW,EAAE,MAAM,KAAK;AACxB,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAAC,YAAY,GAAG;QACd,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAW,SAAA,CAAA;QACrC,UAAU,EAAE,gBAAgB,CAAC,SAAS;AACtC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAAC,QAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAa,WAAA,CAAA;AACxC,KAAA;IACD,CAAC,QAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAA,iBAAiB,CAAa,WAAA,CAAA;QACvC,UAAU,EAAE,gBAAgB,CAAC,KAAK;AAClC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,OAAO;AACrB,KAAA;IACD,CAAC,YAAY,GAAG;AACd,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAAC,SAAS,GAAG;AACX,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAAC,OAAO,GAAG;AACT,QAAA,WAAW,EAAE,YAAY;AAC1B,KAAA;CACF;AAEe,SAAA,mBAAmB,CACjC,SAA2B,EAC3B,WAAoB,EAAA;IAEpB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,SAAS;AAErE,IAAA,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AAC5C,IAAA,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,WAAW;AAC3C,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,IAAK,SAAyB;IAExE,OAAO;QACL,WAAW;AACX,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,aAAa,EAAE,WAAW;QAC1B,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,IAAI;AACJ,QAAA,UAAU,EAAE,WAA+B;AAC3C,QAAA,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,SAAS,EAAE;cACpB,MAAM,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM;cAClD,SAAS,EAAE,WAAW,KAAK,MAAM,WAAW,CAAC;QACjD,gBAAgB,EAAE,SAAS,EAAE,gBAAgB;QAC7C,SAAS;AACT,QAAA,GAAG,EAAE,UAAU;KAChB;AACH;;;;"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var squidTypes = require('@0xsquid/squid-types');
4
4
  var stellarWalletsKit = require('@creit.tech/stellar-wallets-kit');
5
- var index = require('./index-fCnKL8wD.js');
5
+ var index = require('./index-C0H64ktj.js');
6
6
  require('viem');
7
7
  require('react');
8
8
  require('@tanstack/react-query');
@@ -29,11 +29,11 @@ require('wagmi');
29
29
  require('@safe-global/safe-apps-sdk');
30
30
  require('@wallet-standard/core');
31
31
  require('@mysten/slush-wallet');
32
+ require('wagmi/connectors');
32
33
  require('@cosmjs/stargate');
33
34
  require('@mysten/sui/client');
34
35
  require('@cosmjs/proto-signing');
35
36
  require('@mysten/sui/transactions');
36
- require('wagmi/connectors');
37
37
  require('@cosmjs/cosmwasm-stargate');
38
38
  require('@injectivelabs/sdk-ts/dist/cjs/core/stargate/index.js');
39
39
  require('@0xsquid/sdk');
@@ -94,4 +94,4 @@ function formatStellarWallet(connector, isAvailable) {
94
94
  }
95
95
 
96
96
  exports.formatStellarWallet = formatStellarWallet;
97
- //# sourceMappingURL=stellarService.client-K2_2eYYZ.js.map
97
+ //# sourceMappingURL=stellarService.client-peMOjG49.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stellarService.client-K2_2eYYZ.js","sources":["../src/services/internal/stellarService.client.ts"],"sourcesContent":["import { ChainType } from \"@0xsquid/squid-types\";\nimport {\n ALBEDO_ID,\n FREIGHTER_ID,\n HANA_ID,\n HOTWALLET_ID,\n LOBSTR_ID,\n RABET_ID,\n XBULL_ID,\n} from \"@creit.tech/stellar-wallets-kit\";\nimport { StellarConnector } from \"../../core/types/stellar\";\nimport {\n ConnectorID,\n StellarWallet,\n WindowWalletFlag,\n} from \"../../core/types/wallet\";\nimport { walletIconBaseUrl } from \"../../core/wallets\";\nimport { definedInWindow } from \"./walletService\";\n\ntype WalletOverride = Partial<\n Pick<\n StellarWallet,\n \"icon\" | \"windowFlag\" | \"skipInstallCheck\" | \"isInstalled\" | \"connectorId\"\n >\n>;\n\nconst walletOverrides: Partial<Record<string, WalletOverride>> = {\n [ALBEDO_ID]: {\n icon: `${walletIconBaseUrl}/albedo.webp`,\n isInstalled: () => false,\n skipInstallCheck: true,\n connectorId: \"albedo\",\n },\n [HOTWALLET_ID]: {\n icon: `${walletIconBaseUrl}/hot.webp`,\n windowFlag: WindowWalletFlag.HotWallet,\n skipInstallCheck: true,\n connectorId: \"hotWallet\",\n },\n [RABET_ID]: {\n icon: `${walletIconBaseUrl}/rabet.webp`,\n },\n [XBULL_ID]: {\n icon: `${walletIconBaseUrl}/xbull.webp`,\n windowFlag: WindowWalletFlag.XBull,\n skipInstallCheck: true,\n connectorId: \"xBull\",\n },\n [FREIGHTER_ID]: {\n connectorId: \"freighter\",\n },\n [LOBSTR_ID]: {\n connectorId: \"lobstr\",\n },\n [HANA_ID]: {\n connectorId: \"hanaWallet\",\n },\n};\n\nexport function formatStellarWallet(\n connector: StellarConnector,\n isAvailable: boolean\n): StellarWallet {\n const { productName, productId, productIcon, productUrl } = connector;\n\n const overrides = walletOverrides[productId];\n const icon = overrides?.icon || productIcon;\n const connectorId = overrides?.connectorId || (productId as ConnectorID);\n\n return {\n connectorId,\n name: productName,\n connectorName: productName,\n type: ChainType.STELLAR,\n icon,\n windowFlag: productName as WindowWalletFlag,\n isMobile: false,\n isInstalled: overrides?.windowFlag\n ? () => definedInWindow(overrides.windowFlag, window)\n : overrides?.isInstalled || (() => isAvailable),\n skipInstallCheck: overrides?.skipInstallCheck,\n connector,\n url: productUrl,\n };\n}\n"],"names":["ALBEDO_ID","walletIconBaseUrl","HOTWALLET_ID","WindowWalletFlag","RABET_ID","XBULL_ID","FREIGHTER_ID","LOBSTR_ID","HANA_ID","ChainType","definedInWindow"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,MAAM,eAAe,GAA4C;IAC/D,CAACA,2BAAS,GAAG;QACX,IAAI,EAAE,CAAG,EAAAC,uBAAiB,CAAc,YAAA,CAAA;AACxC,QAAA,WAAW,EAAE,MAAM,KAAK;AACxB,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAACC,8BAAY,GAAG;QACd,IAAI,EAAE,CAAG,EAAAD,uBAAiB,CAAW,SAAA,CAAA;QACrC,UAAU,EAAEE,sBAAgB,CAAC,SAAS;AACtC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAACC,0BAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAAH,uBAAiB,CAAa,WAAA,CAAA;AACxC,KAAA;IACD,CAACI,0BAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAAJ,uBAAiB,CAAa,WAAA,CAAA;QACvC,UAAU,EAAEE,sBAAgB,CAAC,KAAK;AAClC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,OAAO;AACrB,KAAA;IACD,CAACG,8BAAY,GAAG;AACd,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAACC,2BAAS,GAAG;AACX,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAACC,yBAAO,GAAG;AACT,QAAA,WAAW,EAAE,YAAY;AAC1B,KAAA;CACF;AAEe,SAAA,mBAAmB,CACjC,SAA2B,EAC3B,WAAoB,EAAA;IAEpB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,SAAS;AAErE,IAAA,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AAC5C,IAAA,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,WAAW;AAC3C,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,IAAK,SAAyB;IAExE,OAAO;QACL,WAAW;AACX,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,aAAa,EAAE,WAAW;QAC1B,IAAI,EAAEC,oBAAS,CAAC,OAAO;QACvB,IAAI;AACJ,QAAA,UAAU,EAAE,WAA+B;AAC3C,QAAA,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,SAAS,EAAE;cACpB,MAAMC,qBAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM;cAClD,SAAS,EAAE,WAAW,KAAK,MAAM,WAAW,CAAC;QACjD,gBAAgB,EAAE,SAAS,EAAE,gBAAgB;QAC7C,SAAS;AACT,QAAA,GAAG,EAAE,UAAU;KAChB;AACH;;;;"}
1
+ {"version":3,"file":"stellarService.client-peMOjG49.js","sources":["../src/services/internal/stellarService.client.ts"],"sourcesContent":["import { ChainType } from \"@0xsquid/squid-types\";\nimport {\n ALBEDO_ID,\n FREIGHTER_ID,\n HANA_ID,\n HOTWALLET_ID,\n LOBSTR_ID,\n RABET_ID,\n XBULL_ID,\n} from \"@creit.tech/stellar-wallets-kit\";\nimport { StellarConnector } from \"../../core/types/stellar\";\nimport {\n ConnectorID,\n StellarWallet,\n WindowWalletFlag,\n} from \"../../core/types/wallet\";\nimport { walletIconBaseUrl } from \"../../core/wallets\";\nimport { definedInWindow } from \"./walletService\";\n\ntype WalletOverride = Partial<\n Pick<\n StellarWallet,\n \"icon\" | \"windowFlag\" | \"skipInstallCheck\" | \"isInstalled\" | \"connectorId\"\n >\n>;\n\nconst walletOverrides: Partial<Record<string, WalletOverride>> = {\n [ALBEDO_ID]: {\n icon: `${walletIconBaseUrl}/albedo.webp`,\n isInstalled: () => false,\n skipInstallCheck: true,\n connectorId: \"albedo\",\n },\n [HOTWALLET_ID]: {\n icon: `${walletIconBaseUrl}/hot.webp`,\n windowFlag: WindowWalletFlag.HotWallet,\n skipInstallCheck: true,\n connectorId: \"hotWallet\",\n },\n [RABET_ID]: {\n icon: `${walletIconBaseUrl}/rabet.webp`,\n },\n [XBULL_ID]: {\n icon: `${walletIconBaseUrl}/xbull.webp`,\n windowFlag: WindowWalletFlag.XBull,\n skipInstallCheck: true,\n connectorId: \"xBull\",\n },\n [FREIGHTER_ID]: {\n connectorId: \"freighter\",\n },\n [LOBSTR_ID]: {\n connectorId: \"lobstr\",\n },\n [HANA_ID]: {\n connectorId: \"hanaWallet\",\n },\n};\n\nexport function formatStellarWallet(\n connector: StellarConnector,\n isAvailable: boolean\n): StellarWallet {\n const { productName, productId, productIcon, productUrl } = connector;\n\n const overrides = walletOverrides[productId];\n const icon = overrides?.icon || productIcon;\n const connectorId = overrides?.connectorId || (productId as ConnectorID);\n\n return {\n connectorId,\n name: productName,\n connectorName: productName,\n type: ChainType.STELLAR,\n icon,\n windowFlag: productName as WindowWalletFlag,\n isMobile: false,\n isInstalled: overrides?.windowFlag\n ? () => definedInWindow(overrides.windowFlag, window)\n : overrides?.isInstalled || (() => isAvailable),\n skipInstallCheck: overrides?.skipInstallCheck,\n connector,\n url: productUrl,\n };\n}\n"],"names":["ALBEDO_ID","walletIconBaseUrl","HOTWALLET_ID","WindowWalletFlag","RABET_ID","XBULL_ID","FREIGHTER_ID","LOBSTR_ID","HANA_ID","ChainType","definedInWindow"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,MAAM,eAAe,GAA4C;IAC/D,CAACA,2BAAS,GAAG;QACX,IAAI,EAAE,CAAG,EAAAC,uBAAiB,CAAc,YAAA,CAAA;AACxC,QAAA,WAAW,EAAE,MAAM,KAAK;AACxB,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAACC,8BAAY,GAAG;QACd,IAAI,EAAE,CAAG,EAAAD,uBAAiB,CAAW,SAAA,CAAA;QACrC,UAAU,EAAEE,sBAAgB,CAAC,SAAS;AACtC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAACC,0BAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAAH,uBAAiB,CAAa,WAAA,CAAA;AACxC,KAAA;IACD,CAACI,0BAAQ,GAAG;QACV,IAAI,EAAE,CAAG,EAAAJ,uBAAiB,CAAa,WAAA,CAAA;QACvC,UAAU,EAAEE,sBAAgB,CAAC,KAAK;AAClC,QAAA,gBAAgB,EAAE,IAAI;AACtB,QAAA,WAAW,EAAE,OAAO;AACrB,KAAA;IACD,CAACG,8BAAY,GAAG;AACd,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;IACD,CAACC,2BAAS,GAAG;AACX,QAAA,WAAW,EAAE,QAAQ;AACtB,KAAA;IACD,CAACC,yBAAO,GAAG;AACT,QAAA,WAAW,EAAE,YAAY;AAC1B,KAAA;CACF;AAEe,SAAA,mBAAmB,CACjC,SAA2B,EAC3B,WAAoB,EAAA;IAEpB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,SAAS;AAErE,IAAA,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;AAC5C,IAAA,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,WAAW;AAC3C,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,IAAK,SAAyB;IAExE,OAAO;QACL,WAAW;AACX,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,aAAa,EAAE,WAAW;QAC1B,IAAI,EAAEC,oBAAS,CAAC,OAAO;QACvB,IAAI;AACJ,QAAA,UAAU,EAAE,WAA+B;AAC3C,QAAA,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,SAAS,EAAE;cACpB,MAAMC,qBAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM;cAClD,SAAS,EAAE,WAAW,KAAK,MAAM,WAAW,CAAC;QACjD,gBAAgB,EAAE,SAAS,EAAE,gBAAgB;QAC7C,SAAS;AACT,QAAA,GAAG,EAAE,UAAU;KAChB;AACH;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsquid/react-hooks",
3
- "version": "8.0.5",
3
+ "version": "8.0.7-hedera-beta.0",
4
4
  "description": "Squid hooks monorepo",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",