@gurge/sdk 0.3.10 → 0.3.12

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 (54) hide show
  1. package/common/src/API/enclaveSignatureCalls.cjs +1 -1
  2. package/common/src/API/enclaveSignatureCalls.d.ts +1 -1
  3. package/common/src/API/enclaveSignatureCalls.mjs +1 -1
  4. package/common/src/API/getServerURL.cjs +1 -1
  5. package/common/src/API/getServerURL.mjs +2 -2
  6. package/common/src/constants/protocol.constants.cjs +1 -1
  7. package/common/src/constants/protocol.constants.d.ts +2 -0
  8. package/common/src/constants/protocol.constants.mjs +2 -2
  9. package/common/src/constants/server.constants.cjs +1 -1
  10. package/common/src/constants/server.constants.d.ts +1 -1
  11. package/common/src/constants/server.constants.mjs +2 -2
  12. package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
  13. package/common/src/data-structures/Hinkal/Hinkal.d.ts +5 -1
  14. package/common/src/data-structures/Hinkal/Hinkal.mjs +125 -112
  15. package/common/src/data-structures/Hinkal/IHinkal.d.ts +5 -1
  16. package/common/src/error-handling/error-codes.constants.cjs +1 -1
  17. package/common/src/error-handling/error-codes.constants.d.ts +2 -0
  18. package/common/src/error-handling/error-codes.constants.mjs +2 -0
  19. package/common/src/functions/pre-transaction/sendV0Transaction.cjs +2 -1
  20. package/common/src/functions/pre-transaction/sendV0Transaction.mjs +2 -2
  21. package/common/src/functions/snarkjs/constant.cjs +1 -1
  22. package/common/src/functions/snarkjs/constant.mjs +1 -1
  23. package/common/src/functions/utils/enclave-signature-storage.cjs +1 -1
  24. package/common/src/functions/utils/enclave-signature-storage.d.ts +1 -1
  25. package/common/src/functions/utils/enclave-signature-storage.mjs +1 -1
  26. package/common/src/functions/utils/erc20tokenFunctions.cjs +1 -1
  27. package/common/src/functions/utils/erc20tokenFunctions.d.ts +1 -0
  28. package/common/src/functions/utils/erc20tokenFunctions.mjs +3 -3
  29. package/common/src/webworker/package.json +1 -1
  30. package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
  31. package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
  32. package/functions/index.cjs +1 -1
  33. package/functions/index.mjs +0 -1
  34. package/functions/integrations/swapApi.cjs +1 -1
  35. package/functions/integrations/swapApi.d.ts +2 -2
  36. package/functions/integrations/swapApi.mjs +5 -4
  37. package/functions/utils/index.cjs +1 -1
  38. package/functions/utils/index.d.ts +0 -1
  39. package/functions/utils/index.mjs +0 -1
  40. package/index.cjs +1 -1
  41. package/index.mjs +2 -3
  42. package/internal/token.utils.cjs +1 -0
  43. package/internal/token.utils.d.ts +7 -0
  44. package/internal/token.utils.mjs +38 -0
  45. package/package.json +1 -1
  46. package/services/Hinkal.cjs +1 -1
  47. package/services/Hinkal.d.ts +23 -20
  48. package/services/Hinkal.mjs +50 -44
  49. package/types/IHinkal.d.ts +21 -19
  50. package/types/balances.types.d.ts +12 -1
  51. package/types/token.types.d.ts +5 -1
  52. package/functions/utils/getERC20Token.cjs +0 -1
  53. package/functions/utils/getERC20Token.d.ts +0 -2
  54. package/functions/utils/getERC20Token.mjs +0 -5
@@ -1 +1 @@
1
- const e=require(`../functions/snarkjs/constant.cjs`),t=require(`../data-structures/http/HttpClient.cjs`);require(`../data-structures/http/index.cjs`);var n=async(n,r,i,a,o)=>t.httpClient.post(`${e.ENCLAVE_URL}/store-and-get-signature`,{ethAddress:n,encryptedSignature:r,key:i,isSolanaLedger:a,txMessageForSolanaLedger:o});exports.storeAndGetSignatureEnclaveCall=n;
1
+ const e=require(`../functions/snarkjs/constant.cjs`),t=require(`../data-structures/http/HttpClient.cjs`);require(`../data-structures/http/index.cjs`);var n=async(n,r,i,a=!1,o)=>t.httpClient.post(`${e.ENCLAVE_URL}/store-and-get-signature`,{ethAddress:n,encryptedSignature:r,key:i,isSolanaLedger:a,txMessageForSolanaLedger:o});exports.storeAndGetSignatureEnclaveCall=n;
@@ -1,5 +1,5 @@
1
1
  interface IStoreAndGetSignatureResponse {
2
2
  signature: string;
3
3
  }
4
- export declare const storeAndGetSignatureEnclaveCall: (ethAddress: string, encryptedSignature: string, key: string, isSolanaLedger: boolean, txMessageForSolanaLedger?: string) => Promise<IStoreAndGetSignatureResponse>;
4
+ export declare const storeAndGetSignatureEnclaveCall: (ethAddress: string, encryptedSignature: string, key: string, isSolanaLedger?: boolean, txMessageForSolanaLedger?: string) => Promise<IStoreAndGetSignatureResponse>;
5
5
  export {};
@@ -2,7 +2,7 @@ import { ENCLAVE_URL as e } from "../functions/snarkjs/constant.mjs";
2
2
  import { httpClient as t } from "../data-structures/http/HttpClient.mjs";
3
3
  import "../data-structures/http/index.mjs";
4
4
  //#region libs/shared/common/src/API/enclaveSignatureCalls.ts
5
- var n = async (n, r, i, a, o) => t.post(`${e}/store-and-get-signature`, {
5
+ var n = async (n, r, i, a = !1, o) => t.post(`${e}/store-and-get-signature`, {
6
6
  ethAddress: n,
7
7
  encryptedSignature: r,
8
8
  key: i,
@@ -1 +1 @@
1
- const e=require(`../constants/vite.constants.cjs`),t=require(`../constants/server.constants.cjs`);var n=(()=>{switch(e.deploymentMode){case e.DEPLOYMENT_MODE.DEVELOPMENT:return t.STAGING_URL;case e.DEPLOYMENT_MODE.PLAYGROUND:return t.PLAYGROUND_URL;case e.DEPLOYMENT_MODE.STAGING:return t.STAGING_URL;case e.DEPLOYMENT_MODE.PRODUCTION:return t.PRODUCTION_URL;default:return t.PRODUCTION_URL}})(),r=()=>t.SERVER_URL_LOCAL,i=()=>`${n}${t.RELAYER_URL_ENDPOINT}`,a=()=>`${n}${t.SNAPSHOT_SERVER_URL_ENDPOINT}`,o=()=>`${n}${t.DATA_SERVER_URL_ENDPOINT}`,s=()=>`${n}${t.FUND_COMPLIANCE_URL_ENDPOINT}`,c=()=>{switch(e.deploymentMode){case e.DEPLOYMENT_MODE.DEVELOPMENT:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.PLAYGROUND:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.STAGING:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.PRODUCTION:return t.ENCLAVE_API_PRODUCTION_URL;default:return t.ENCLAVE_API_PRODUCTION_URL}},l=r(),u=i(),d=a(),f=o();s(),c(),exports.BACK_END_URL=n,exports.DATA_SERVER_URL=f,exports.RELAYER_URL=u,exports.SERVER_URL=l,exports.SNAPSHOT_SERVER_URL=d;
1
+ const e=require(`../constants/vite.constants.cjs`),t=require(`../constants/server.constants.cjs`);var n=(()=>{switch(e.deploymentMode){case e.DEPLOYMENT_MODE.DEVELOPMENT:return t.STAGING_URL;case e.DEPLOYMENT_MODE.PLAYGROUND:return t.PLAYGROUND_URL;case e.DEPLOYMENT_MODE.STAGING:return t.STAGING_URL;case e.DEPLOYMENT_MODE.PRODUCTION:return t.PRODUCTION_URL;default:return t.PRODUCTION_URL}})(),r=()=>`${n}${t.SERVER_URL_ENDPOINT}`,i=()=>`${n}${t.RELAYER_URL_ENDPOINT}`,a=()=>`${n}${t.SNAPSHOT_SERVER_URL_ENDPOINT}`,o=()=>`${n}${t.DATA_SERVER_URL_ENDPOINT}`,s=()=>`${n}${t.FUND_COMPLIANCE_URL_ENDPOINT}`,c=()=>{switch(e.deploymentMode){case e.DEPLOYMENT_MODE.DEVELOPMENT:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.PLAYGROUND:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.STAGING:return t.ENCLAVE_API_STAGING_URL;case e.DEPLOYMENT_MODE.PRODUCTION:return t.ENCLAVE_API_PRODUCTION_URL;default:return t.ENCLAVE_API_PRODUCTION_URL}},l=r(),u=i(),d=a(),f=o();s(),c(),exports.BACK_END_URL=n,exports.DATA_SERVER_URL=f,exports.RELAYER_URL=u,exports.SERVER_URL=l,exports.SNAPSHOT_SERVER_URL=d;
@@ -1,5 +1,5 @@
1
1
  import { DEPLOYMENT_MODE as e, deploymentMode as t } from "../constants/vite.constants.mjs";
2
- import { DATA_SERVER_URL_ENDPOINT as n, ENCLAVE_API_PRODUCTION_URL as r, ENCLAVE_API_STAGING_URL as i, FUND_COMPLIANCE_URL_ENDPOINT as a, PLAYGROUND_URL as o, PRODUCTION_URL as s, RELAYER_URL_ENDPOINT as c, SERVER_URL_LOCAL as l, SNAPSHOT_SERVER_URL_ENDPOINT as u, STAGING_URL as d } from "../constants/server.constants.mjs";
2
+ import { DATA_SERVER_URL_ENDPOINT as n, ENCLAVE_API_PRODUCTION_URL as r, ENCLAVE_API_STAGING_URL as i, FUND_COMPLIANCE_URL_ENDPOINT as a, PLAYGROUND_URL as o, PRODUCTION_URL as s, RELAYER_URL_ENDPOINT as c, SERVER_URL_ENDPOINT as l, SNAPSHOT_SERVER_URL_ENDPOINT as u, STAGING_URL as d } from "../constants/server.constants.mjs";
3
3
  var f = (() => {
4
4
  switch (t) {
5
5
  case e.DEVELOPMENT: return d;
@@ -8,7 +8,7 @@ var f = (() => {
8
8
  case e.PRODUCTION: return s;
9
9
  default: return s;
10
10
  }
11
- })(), p = () => l, m = () => `${f}${c}`, h = () => `${f}${u}`, g = () => `${f}${n}`, _ = () => `${f}${a}`, v = () => {
11
+ })(), p = () => `${f}${l}`, m = () => `${f}${c}`, h = () => `${f}${u}`, g = () => `${f}${n}`, _ = () => `${f}${a}`, v = () => {
12
12
  switch (t) {
13
13
  case e.DEVELOPMENT: return i;
14
14
  case e.PLAYGROUND: return i;
@@ -1 +1 @@
1
- var e=`0x${`00`.repeat(20)}`,t=`0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee`,n=`11111111111111111111111111111111`,r=1e9,i=3600*1e3,a=21888242871839275222246405745257275088548364400416034343698204186575808495617n,o=a/2n,s=200n,c=`0x${`00`.repeat(32)}`,l={r:c,s:c,v:c,accessKey:c,nonce:0,ethereumAddress:e},u=[`V1_NFT`,`V2_NFT`,`ProgrammableNFT`,`MplCoreAsset`],d=function(e){return e.ERC20=`ERC20`,e.ERC721=`ERC721`,e.ERC1155=`ERC1155`,e.MetaplexNFT=`Metaplex NFT`,e.Token2022NFT=`Token-2022 NFT`,e.CompressedNFT=`Compressed NFT`,e}({}),f=35n,p=5n,m=10n,h=15e5,g=14e5,_=256*1024,v=2e5,y=.2,b=`v1x1`;exports.CIRCOM_P=a,exports.CIRCOM_P_HALF=o,exports.COMPUTE_UNIT_PADDING_PERCENTAGE=y,exports.HINKAL_PRIVATE_SEND_VARIABLE_RATE=p,exports.HINKAL_SWAP_VARIABLE_RATE=f,exports.MAX_COMPUTE_UNIT_LIMIT=g,exports.MAX_MICRO_LAMPORTS_PER_CU=h,exports.MAX_SOLANA_HEAP_FRAME_BYTES=_,exports.MERKLE_LEVELS=s,exports.MIN_COMPUTE_UNIT_LIMIT=v,exports.PAY_SEND_VARIABLE_RATE=m,exports.PROVER_VERSION=b,exports.SOLANA_NFT_INTERFACES=u,exports.TRON_DEFAULT_FEE_LIMIT_SUN=r,exports.TokenType=d,exports.defaultSignatureData=l,exports.oneInchZeroAddress=t,exports.permitSignatureValidFor=i,exports.solanaNativeAddress=n,exports.zeroAddress=e;
1
+ var e=`0x${`00`.repeat(20)}`,t=`0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee`,n=`11111111111111111111111111111111`,r=1e9,i=3600*1e3,a=21888242871839275222246405745257275088548364400416034343698204186575808495617n,o=a/2n,s=200n,c=`0x${`00`.repeat(32)}`,l={r:c,s:c,v:c,accessKey:c,nonce:0,ethereumAddress:e},u=[`V1_NFT`,`V2_NFT`,`ProgrammableNFT`,`MplCoreAsset`],d=function(e){return e.ERC20=`ERC20`,e.ERC721=`ERC721`,e.ERC1155=`ERC1155`,e.MetaplexNFT=`Metaplex NFT`,e.Token2022NFT=`Token-2022 NFT`,e.CompressedNFT=`Compressed NFT`,e}({}),f=35n,p=5n,m=10n,h=15e5,g=14e5,_=256*1024,v=2e5,y=.2,b=`v1x1`,x=`BjNVy3aJw55TpQApJZ2v9pxkmeXr5KcwzEvcJ1e1E8hY`,S=394466828;exports.CIRCOM_P=a,exports.CIRCOM_P_HALF=o,exports.COMPUTE_UNIT_PADDING_PERCENTAGE=y,exports.DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH=x,exports.DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT=S,exports.HINKAL_PRIVATE_SEND_VARIABLE_RATE=p,exports.HINKAL_SWAP_VARIABLE_RATE=f,exports.MAX_COMPUTE_UNIT_LIMIT=g,exports.MAX_MICRO_LAMPORTS_PER_CU=h,exports.MAX_SOLANA_HEAP_FRAME_BYTES=_,exports.MERKLE_LEVELS=s,exports.MIN_COMPUTE_UNIT_LIMIT=v,exports.PAY_SEND_VARIABLE_RATE=m,exports.PROVER_VERSION=b,exports.SOLANA_NFT_INTERFACES=u,exports.TRON_DEFAULT_FEE_LIMIT_SUN=r,exports.TokenType=d,exports.defaultSignatureData=l,exports.oneInchZeroAddress=t,exports.permitSignatureValidFor=i,exports.solanaNativeAddress=n,exports.zeroAddress=e;
@@ -60,3 +60,5 @@ export declare const SOLANA_LOOKUP_TABLE_VISIBILITY_MAX_POLL_ATTEMPTS = 20;
60
60
  export declare const SOLANA_LOOKUP_TABLE_VISIBILITY_POLL_INTERVAL_MS = 500;
61
61
  export declare const SOLANA_LOCKED_ACCOUNTS_LIMIT = 64;
62
62
  export declare const PROVER_VERSION = "v1x1";
63
+ export declare const DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH = "BjNVy3aJw55TpQApJZ2v9pxkmeXr5KcwzEvcJ1e1E8hY";
64
+ export declare const DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT = 394466828;
@@ -13,6 +13,6 @@ var e = `0x${"00".repeat(20)}`, t = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
13
13
  "MplCoreAsset"
14
14
  ], d = /* @__PURE__ */ function(e) {
15
15
  return e.ERC20 = "ERC20", e.ERC721 = "ERC721", e.ERC1155 = "ERC1155", e.MetaplexNFT = "Metaplex NFT", e.Token2022NFT = "Token-2022 NFT", e.CompressedNFT = "Compressed NFT", e;
16
- }({}), f = 35n, p = 5n, m = 10n, h = 15e5, g = 14e5, _ = 256 * 1024, v = 2e5, y = .2, b = "v1x1";
16
+ }({}), f = 35n, p = 5n, m = 10n, h = 15e5, g = 14e5, _ = 256 * 1024, v = 2e5, y = .2, b = "v1x1", x = "BjNVy3aJw55TpQApJZ2v9pxkmeXr5KcwzEvcJ1e1E8hY", S = 394466828;
17
17
  //#endregion
18
- export { a as CIRCOM_P, o as CIRCOM_P_HALF, y as COMPUTE_UNIT_PADDING_PERCENTAGE, p as HINKAL_PRIVATE_SEND_VARIABLE_RATE, f as HINKAL_SWAP_VARIABLE_RATE, g as MAX_COMPUTE_UNIT_LIMIT, h as MAX_MICRO_LAMPORTS_PER_CU, _ as MAX_SOLANA_HEAP_FRAME_BYTES, s as MERKLE_LEVELS, v as MIN_COMPUTE_UNIT_LIMIT, m as PAY_SEND_VARIABLE_RATE, b as PROVER_VERSION, u as SOLANA_NFT_INTERFACES, r as TRON_DEFAULT_FEE_LIMIT_SUN, d as TokenType, l as defaultSignatureData, t as oneInchZeroAddress, i as permitSignatureValidFor, n as solanaNativeAddress, e as zeroAddress };
18
+ export { a as CIRCOM_P, o as CIRCOM_P_HALF, y as COMPUTE_UNIT_PADDING_PERCENTAGE, x as DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH, S as DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT, p as HINKAL_PRIVATE_SEND_VARIABLE_RATE, f as HINKAL_SWAP_VARIABLE_RATE, g as MAX_COMPUTE_UNIT_LIMIT, h as MAX_MICRO_LAMPORTS_PER_CU, _ as MAX_SOLANA_HEAP_FRAME_BYTES, s as MERKLE_LEVELS, v as MIN_COMPUTE_UNIT_LIMIT, m as PAY_SEND_VARIABLE_RATE, b as PROVER_VERSION, u as SOLANA_NFT_INTERFACES, r as TRON_DEFAULT_FEE_LIMIT_SUN, d as TokenType, l as defaultSignatureData, t as oneInchZeroAddress, i as permitSignatureValidFor, n as solanaNativeAddress, e as zeroAddress };
@@ -1 +1 @@
1
- const e=require(`./vite.constants.cjs`),t=require(`../types/new-rewards.type.cjs`);require(`../types/index.cjs`);var n={ROUTES:{checkKycStatus:`/check-kyc-status`,startReclaimVerification:`/start-reclaim-verification`,startUserVerification:`/start-aiprise-verification`,zkMeAccessToken:`/zkMeAccessToken`,getSnapshots:e=>`/snapshots/${e}`,getMerkleTreeSiblings:`/merkle-tree-siblings`,getSnapshotServerEvents:`/events`,callOdosAPI:`/OdosSwapData`,callOneInchAPI:`/OneInchSwapData`,callLifiAPI:`/LifiBridgeData`,callOkxAPI:`/OkxSwapData`,callNearIntentsQuote:`/near-intents/quote`,callNearIntentsTokens:`/near-intents/tokens`,getOdosPriceForToken:(e,t)=>`/getOdosPriceForToken/${e}/${t}`,monitor:`/monitor`,monitorBatch:`/monitor/batch`,checkRisk:e=>`/check-risk/${e}`,simulateTransaction:`/simulate-transaction`,simulateBatchTx:`/simulate-batch-tx`,simulateVolatileTokenTransfer:`/simulate-volatile-token-transfer`,getTokensInfo:`/get-tokens-info`,getTokensForChain:`/get-tokens-for-chain`,getTokenBySymbol:`/get-token-by-symbol`,getTokenData:e=>`/get-token-data/${e}`,getProxyAccounts:e=>`/get-proxy-accounts/${e}`,updateProxyAccounts:`/update-proxy-accounts`,getTemporaryWalletNonces:(e,t)=>`/temporary-wallets/nonces/${e}/${t}`,addTemporaryWalletNonce:`/temporary-wallets/add-nonce`,removeTemporaryWalletNonce:`/temporary-wallets/remove-nonce`,encodeMoonPayBuyUrl:`/moonpay-buy-url`,getMoonPayQuote:`/moonpay-quote`,privateSendTopUpRecipientInfos:`/private-send-recipient-info/top-up`,privateSendAllocateRecipientInfos:`/private-send-recipient-info/allocate`,privateSendNonceSync:`/private-send-nonce/sync`,privateSendNonceReserve:`/private-send-nonce/reserve`,getDashboardAccount:`/get-dashboard-account`,updateDashboardAccount:`/update-dashboard-account`,deleteDashboardAccount:`/delete-dashboard-account`,updateUserProfile:`/update-user-profile`,addDashboardContact:`/add-dashboard-contact`,deleteDashboardContact:`/delete-dashboard-contact`,updateDashboardContact:`/update-dashboard-contact`,getDashboardContacts:`/get-dashboard-contacts`,sendDashboardInvitationEmail:`/send-dashboard-invitation-email`,removeMember:`/remove-member`,editMember:`/edit-member`,createDashboardPayout:`/create-dashboard-payout`,getDashboardPayouts:`/get-dashboard-payouts`,syncDashboardBalances:`/sync-dashboard-balances`,getDashboardBalances:`/get-dashboard-balances`,changePayoutStatus:`/change-payout-status`,getDashboardTransactions:`/get-dashboard-transactions`,createDashboardTransactions:`/create-dashboard-transactions`,tronSubsidyEligibility:`/tron-subsidy/eligibility`,tronSubsidyRecord:`/tron-subsidy/record`,privateSendRecipientInfoGetAny:`/private-send-recipient-info/get-any`}},r={getGasEstimate:(e,t,n,r)=>`/gas-estimation/${e}/${n}/${t}/${r}`,getTokenPrices:`/get-token-prices`,TRANSACT:`/general-transact`,TRANSACT_BATCH:`/general-transact-batch`,SOLANA_TRANSACT:`/solana-transact`,SOLANA_TRANSACT_BATCH:`/solana-transact-batch`,getIdleRelay:`/get-idle-relay`,emitTxPublicData:`/emit-tx-public-data`,emitReferralTx:`/emit-referral-tx`,getScheduledTransactions:`/scheduled-transactions`,getScheduledTransactionById:e=>`/scheduled-transactions/${e}`,getScheduledTransactionsNullifierIndexes:`/scheduled-transactions/nullifier-indexes`,updateDepositAndWithdrawStatus:`/update-deposit-and-withdraw-status`,getTokenPriceChartData:`/get-token-price-chart-data`,getTokenPreviousDayPrices:`/get-token-previous-day-prices`,getPrivateTransactionsRatio:e=>`/get-private-transactions-ratio/${e}`,savePrivacyScoreAndGetPrivacyRank:`/save-privacy-score-and-get-privacy-rank`},i=[t.TaskTypes.firstSwap,t.TaskTypes.reclaim,t.TaskTypes.dailySwap,t.TaskTypes.dailyDappTx,t.TaskTypes.createOrJoinBH,t.TaskTypes.shieldUnshield,t.TaskTypes.moneyComes];t.TaskTypes.discord,t.TaskTypes.telegram,{...Object.fromEntries(i.map(e=>[e,e=>`/verify/wallet-task/${e}`]))};var a={createPresaleReferral:`/create-presale-referral`,updatePresaleReferralList:`/update-presale-referral-list`,generateTradingPoints:`/generate-trading-points`,getBrotherhoodUsers:e=>`/brotherhoods/${e}/users`,getCurrentUserBrotherhoodUsers:e=>`/get-current-user-brotherhood-users/${e}`,editBrotherhood:`/edit-brotherhood`,createBrotherhood:`/create-brotherhood`,getCurrentUserBrotherhood:`/get-current-user-brotherhood`,getPublicBrotherhoods:`/get-public-brotherhoods`,getBrotherhood:e=>`/brotherhoods/${e}`,leaveBrotherhood:e=>`/brotherhoods/${e}/leave`,joinBrotherhood:e=>`/brotherhoods/${e}/join`,getUserAnalytics:`/get-user-analytics`,getBrotherhoodAnalytics:`/brotherhood/analytics`,connectRewardsUser:`/connect-user`,updateRewardsUser:`/update-rewards-user`,getRewardsUser:e=>`/get-rewards-user/${e}`,checkUsernameAvailability:e=>`/check-username/${encodeURIComponent(e)}`,getSwapStreak:`/swap-streak`,getUserCurrentLeaderboard:`/current-users-leaderboard`,getBrotherhoodsLeaderboard:`/brotherhoods-leaderboard`,getCurrentUserReferral:`/current-user-referral`,submitReferralCode:`/refer-user`,getCurrentUserAppliedReferralCode:`/current-user-applied-referral-code`,submitAccessCode:`/submit-access-code`,getAccessCodeBenefits:`/get-access-code-benefits`,getTelegramCallback:`/auth/telegram/callback`,generateAumPoints:`/generate-aum-points`,getTasksProgress:e=>`/get-tasks-progress/${e}`,disconnectSocialNetwork:`/disconnect-social-network`,getNftMultiplier:e=>`/get-nft-multiplier/${e}`,seedlessInit:`/seedless/init`,seedlessBackup:`/seedless/backup`,seedlessCheckPassword:`/seedless/check-password`,seedlessStatus:`/seedless/status`,seedlessSalt:`/seedless/salt`,sendPrivateSendEmailNotifications:`/private-send-email-notifications`,webflowBlogPosts:`/webflow-blog-posts`,brevoSubscribe:`/brevo-subscribe`,versionChecker:e=>`/version-checker/${e}`};e.isNotProduction?e.deploymentMode:`${e.deploymentMode}`;var o=`https://wallet-playground.hinkal.io`,s=`https://wallet-staging.hinkal.io`,c=`https://wallet-prodv12.hinkal.io`,l=`http://localhost:7072`,u=`/relayer`,d=`/snapshot-server`,f=`/data-server`,p=`/compliance-server`,m=`https://api-staging.hinkal.io`,h=`https://api.hinkal.io`;exports.API_CONFIG=n,exports.DATA_SERVER_CONFIG=a,exports.DATA_SERVER_URL_ENDPOINT=f,exports.ENCLAVE_API_PRODUCTION_URL=h,exports.ENCLAVE_API_STAGING_URL=m,exports.FUND_COMPLIANCE_URL_ENDPOINT=p,exports.PLAYGROUND_URL=o,exports.PRODUCTION_URL=c,exports.RELAYER_CONFIG=r,exports.RELAYER_URL_ENDPOINT=u,exports.SERVER_URL_LOCAL=l,exports.SNAPSHOT_SERVER_URL_ENDPOINT=d,exports.STAGING_URL=s,exports.WALLET_TASK_VERIFICATION_TYPES=i;
1
+ const e=require(`./vite.constants.cjs`),t=require(`../types/new-rewards.type.cjs`);require(`../types/index.cjs`);var n={ROUTES:{checkKycStatus:`/check-kyc-status`,startReclaimVerification:`/start-reclaim-verification`,startUserVerification:`/start-aiprise-verification`,zkMeAccessToken:`/zkMeAccessToken`,getSnapshots:e=>`/snapshots/${e}`,getMerkleTreeSiblings:`/merkle-tree-siblings`,getSnapshotServerEvents:`/events`,callOdosAPI:`/OdosSwapData`,callOneInchAPI:`/OneInchSwapData`,callLifiAPI:`/LifiBridgeData`,callOkxAPI:`/OkxSwapData`,callNearIntentsQuote:`/near-intents/quote`,callNearIntentsTokens:`/near-intents/tokens`,getOdosPriceForToken:(e,t)=>`/getOdosPriceForToken/${e}/${t}`,monitor:`/monitor`,monitorBatch:`/monitor/batch`,checkRisk:e=>`/check-risk/${e}`,simulateTransaction:`/simulate-transaction`,simulateBatchTx:`/simulate-batch-tx`,simulateVolatileTokenTransfer:`/simulate-volatile-token-transfer`,getTokensInfo:`/get-tokens-info`,getTokensForChain:`/get-tokens-for-chain`,getTokenBySymbol:`/get-token-by-symbol`,getTokenData:e=>`/get-token-data/${e}`,getProxyAccounts:e=>`/get-proxy-accounts/${e}`,updateProxyAccounts:`/update-proxy-accounts`,getTemporaryWalletNonces:(e,t)=>`/temporary-wallets/nonces/${e}/${t}`,addTemporaryWalletNonce:`/temporary-wallets/add-nonce`,removeTemporaryWalletNonce:`/temporary-wallets/remove-nonce`,encodeMoonPayBuyUrl:`/moonpay-buy-url`,getMoonPayQuote:`/moonpay-quote`,privateSendTopUpRecipientInfos:`/private-send-recipient-info/top-up`,privateSendAllocateRecipientInfos:`/private-send-recipient-info/allocate`,privateSendNonceSync:`/private-send-nonce/sync`,privateSendNonceReserve:`/private-send-nonce/reserve`,getDashboardAccount:`/get-dashboard-account`,updateDashboardAccount:`/update-dashboard-account`,deleteDashboardAccount:`/delete-dashboard-account`,updateUserProfile:`/update-user-profile`,addDashboardContact:`/add-dashboard-contact`,deleteDashboardContact:`/delete-dashboard-contact`,updateDashboardContact:`/update-dashboard-contact`,getDashboardContacts:`/get-dashboard-contacts`,sendDashboardInvitationEmail:`/send-dashboard-invitation-email`,removeMember:`/remove-member`,editMember:`/edit-member`,createDashboardPayout:`/create-dashboard-payout`,getDashboardPayouts:`/get-dashboard-payouts`,syncDashboardBalances:`/sync-dashboard-balances`,getDashboardBalances:`/get-dashboard-balances`,changePayoutStatus:`/change-payout-status`,getDashboardTransactions:`/get-dashboard-transactions`,createDashboardTransactions:`/create-dashboard-transactions`,tronSubsidyEligibility:`/tron-subsidy/eligibility`,tronSubsidyRecord:`/tron-subsidy/record`,privateSendRecipientInfoGetAny:`/private-send-recipient-info/get-any`}},r={getGasEstimate:(e,t,n,r)=>`/gas-estimation/${e}/${n}/${t}/${r}`,getTokenPrices:`/get-token-prices`,TRANSACT:`/general-transact`,TRANSACT_BATCH:`/general-transact-batch`,SOLANA_TRANSACT:`/solana-transact`,SOLANA_TRANSACT_BATCH:`/solana-transact-batch`,getIdleRelay:`/get-idle-relay`,emitTxPublicData:`/emit-tx-public-data`,emitReferralTx:`/emit-referral-tx`,getScheduledTransactions:`/scheduled-transactions`,getScheduledTransactionById:e=>`/scheduled-transactions/${e}`,getScheduledTransactionsNullifierIndexes:`/scheduled-transactions/nullifier-indexes`,updateDepositAndWithdrawStatus:`/update-deposit-and-withdraw-status`,getTokenPriceChartData:`/get-token-price-chart-data`,getTokenPreviousDayPrices:`/get-token-previous-day-prices`,getPrivateTransactionsRatio:e=>`/get-private-transactions-ratio/${e}`,savePrivacyScoreAndGetPrivacyRank:`/save-privacy-score-and-get-privacy-rank`},i=[t.TaskTypes.firstSwap,t.TaskTypes.reclaim,t.TaskTypes.dailySwap,t.TaskTypes.dailyDappTx,t.TaskTypes.createOrJoinBH,t.TaskTypes.shieldUnshield,t.TaskTypes.moneyComes];t.TaskTypes.discord,t.TaskTypes.telegram,{...Object.fromEntries(i.map(e=>[e,e=>`/verify/wallet-task/${e}`]))};var a={createPresaleReferral:`/create-presale-referral`,updatePresaleReferralList:`/update-presale-referral-list`,generateTradingPoints:`/generate-trading-points`,getBrotherhoodUsers:e=>`/brotherhoods/${e}/users`,getCurrentUserBrotherhoodUsers:e=>`/get-current-user-brotherhood-users/${e}`,editBrotherhood:`/edit-brotherhood`,createBrotherhood:`/create-brotherhood`,getCurrentUserBrotherhood:`/get-current-user-brotherhood`,getPublicBrotherhoods:`/get-public-brotherhoods`,getBrotherhood:e=>`/brotherhoods/${e}`,leaveBrotherhood:e=>`/brotherhoods/${e}/leave`,joinBrotherhood:e=>`/brotherhoods/${e}/join`,getUserAnalytics:`/get-user-analytics`,getBrotherhoodAnalytics:`/brotherhood/analytics`,connectRewardsUser:`/connect-user`,updateRewardsUser:`/update-rewards-user`,getRewardsUser:e=>`/get-rewards-user/${e}`,checkUsernameAvailability:e=>`/check-username/${encodeURIComponent(e)}`,getSwapStreak:`/swap-streak`,getUserCurrentLeaderboard:`/current-users-leaderboard`,getBrotherhoodsLeaderboard:`/brotherhoods-leaderboard`,getCurrentUserReferral:`/current-user-referral`,submitReferralCode:`/refer-user`,getCurrentUserAppliedReferralCode:`/current-user-applied-referral-code`,submitAccessCode:`/submit-access-code`,getAccessCodeBenefits:`/get-access-code-benefits`,getTelegramCallback:`/auth/telegram/callback`,generateAumPoints:`/generate-aum-points`,getTasksProgress:e=>`/get-tasks-progress/${e}`,disconnectSocialNetwork:`/disconnect-social-network`,getNftMultiplier:e=>`/get-nft-multiplier/${e}`,seedlessInit:`/seedless/init`,seedlessBackup:`/seedless/backup`,seedlessCheckPassword:`/seedless/check-password`,seedlessStatus:`/seedless/status`,seedlessSalt:`/seedless/salt`,sendPrivateSendEmailNotifications:`/private-send-email-notifications`,webflowBlogPosts:`/webflow-blog-posts`,brevoSubscribe:`/brevo-subscribe`,versionChecker:e=>`/version-checker/${e}`};e.isNotProduction?e.deploymentMode:`${e.deploymentMode}`;var o=`https://wallet-playground.hinkal.io`,s=`https://wallet-staging-v2.hinkal.io`,c=`https://wallet-prodv12.hinkal.io`,l=`/server`,u=`/relayer`,d=`/snapshot-server`,f=`/data-server`,p=`/compliance-server`,m=`https://api-staging.hinkal.io`,h=`https://api.hinkal.io`;exports.API_CONFIG=n,exports.DATA_SERVER_CONFIG=a,exports.DATA_SERVER_URL_ENDPOINT=f,exports.ENCLAVE_API_PRODUCTION_URL=h,exports.ENCLAVE_API_STAGING_URL=m,exports.FUND_COMPLIANCE_URL_ENDPOINT=p,exports.PLAYGROUND_URL=o,exports.PRODUCTION_URL=c,exports.RELAYER_CONFIG=r,exports.RELAYER_URL_ENDPOINT=u,exports.SERVER_URL_ENDPOINT=l,exports.SNAPSHOT_SERVER_URL_ENDPOINT=d,exports.STAGING_URL=s,exports.WALLET_TASK_VERIFICATION_TYPES=i;
@@ -125,7 +125,7 @@ export declare const DATA_SERVER_CONFIG: {
125
125
  export declare const backendVersion = "v12";
126
126
  export declare const deploymentModeWithVersion: string | undefined;
127
127
  export declare const PLAYGROUND_URL = "https://wallet-playground.hinkal.io";
128
- export declare const STAGING_URL = "https://wallet-staging.hinkal.io";
128
+ export declare const STAGING_URL = "https://wallet-staging-v2.hinkal.io";
129
129
  export declare const PRODUCTION_URL = "https://wallet-prodv12.hinkal.io";
130
130
  export declare const SERVER_URL_LOCAL = "http://localhost:7072";
131
131
  export declare const SERVER_URL_ENDPOINT = "/server";
@@ -130,6 +130,6 @@ var o = {
130
130
  versionChecker: (e) => `/version-checker/${e}`
131
131
  };
132
132
  t || `${e}`;
133
- var s = "https://wallet-playground.hinkal.io", c = "https://wallet-staging.hinkal.io", l = "https://wallet-prodv12.hinkal.io", u = "http://localhost:7072", d = "/relayer", f = "/snapshot-server", p = "/data-server", m = "/compliance-server", h = "https://api-staging.hinkal.io", g = "https://api.hinkal.io";
133
+ var s = "https://wallet-playground.hinkal.io", c = "https://wallet-staging-v2.hinkal.io", l = "https://wallet-prodv12.hinkal.io", u = "/server", d = "/relayer", f = "/snapshot-server", p = "/data-server", m = "/compliance-server", h = "https://api-staging.hinkal.io", g = "https://api.hinkal.io";
134
134
  //#endregion
135
- export { r as API_CONFIG, o as DATA_SERVER_CONFIG, p as DATA_SERVER_URL_ENDPOINT, g as ENCLAVE_API_PRODUCTION_URL, h as ENCLAVE_API_STAGING_URL, m as FUND_COMPLIANCE_URL_ENDPOINT, s as PLAYGROUND_URL, l as PRODUCTION_URL, i as RELAYER_CONFIG, d as RELAYER_URL_ENDPOINT, u as SERVER_URL_LOCAL, f as SNAPSHOT_SERVER_URL_ENDPOINT, c as STAGING_URL, a as WALLET_TASK_VERIFICATION_TYPES };
135
+ export { r as API_CONFIG, o as DATA_SERVER_CONFIG, p as DATA_SERVER_URL_ENDPOINT, g as ENCLAVE_API_PRODUCTION_URL, h as ENCLAVE_API_STAGING_URL, m as FUND_COMPLIANCE_URL_ENDPOINT, s as PLAYGROUND_URL, l as PRODUCTION_URL, i as RELAYER_CONFIG, d as RELAYER_URL_ENDPOINT, u as SERVER_URL_ENDPOINT, f as SNAPSHOT_SERVER_URL_ENDPOINT, c as STAGING_URL, a as WALLET_TASK_VERIFICATION_TYPES };
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../functions/utils/serialize.utils.cjs`),t=require(`../../constants/vite.constants.cjs`),n=require(`../../constants/chains.constants.cjs`),r=require(`../../types/hinkal.types.cjs`),i=require(`../../types/ethereum-network.types.cjs`),a=require(`../../crypto/poseidon.cjs`),o=require(`../../error-handling/error-codes.constants.cjs`),s=require(`../crypto-keys/keys.cjs`),c=require(`../../API/API.cjs`),l=require(`../../functions/utils/token-check.utils.cjs`),u=require(`../TokenDBs/PrivateTokensDB.cjs`),d=require(`../../functions/utils/erc20tokenFunctions.cjs`),f=require(`../../functions/web3/events/getShieldedBalance.cjs`),p=require(`../../functions/pre-transaction/solana.cjs`),m=require(`../../functions/web3/getContractMetadata.cjs`),h=require(`../../constants/kyc.constants.cjs`),g=require(`../../functions/utils/reloadPage.cjs`),_=require(`../../functions/utils/cacheDevice.utils.cjs`),v=require(`../../providers/SolanaProviderAdapter.cjs`),y=require(`../../functions/utils/enclave-signature-storage.cjs`),ee=require(`../../functions/utils/mnemonics.cjs`),b=require(`../../functions/web3/fetchSolanaMerkleTreeRootHash.cjs`),x=require(`../../functions/private-wallet/emporium.helpers.cjs`),S=require(`./hinkalDeposit.cjs`);require(`../../API/index.cjs`);const C=require(`../../functions/kyc/checkTokenLimitsUSD.cjs`);require(`../../functions/index.cjs`);const w=require(`./hinkalDepositAndWithdraw.cjs`),T=require(`./hinkalSolanaDeposit.cjs`),E=require(`./hinkalSwap.cjs`),D=require(`./hinkalWithdraw.cjs`),O=require(`../merkle-tree/MerkleTree.cjs`);require(`../merkle-tree/index.cjs`);const k=require(`./resetMerkleTrees.cjs`),A=require(`../MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs`),j=require(`./hinkalPrivateWallet.cjs`),M=require(`./hinkalGetRecipientInfo.cjs`),N=require(`./hinkalSignSubAccount.cjs`),P=require(`./hinkalActionReceive.cjs`);require(`../TokenDBs/index.cjs`);const F=require(`./hinkalProoflessDeposit.cjs`),te=require(`./hinkalProxySwap.cjs`),I=require(`./hinkalMultiSend.cjs`),L=require(`./hinkalTransfer.cjs`),R=require(`./hinkalProxyToPrivate.cjs`),z=require(`../../providers/TronProviderAdapter.cjs`),B=require(`./hinkalSolanaDepositAndWithdraw.cjs`),V=require(`./hinkalSolanaWithdraw.cjs`),H=require(`./hinkalSolanaTransfer.cjs`),U=require(`./hinkalSolanaSwap.cjs`),W=require(`./hinkalSolanaProxySend.cjs`),G=require(`./hinkalSolanaProxySwap.cjs`),K=require(`./hinkalSolanaProxyShield.cjs`),q=require(`./hinkalDepositAndBridge.cjs`),J=require(`./hinkalNearDepositAndBridge.cjs`),Y=require(`./hinkalClaimUtxo.cjs`),X=require(`./hinkalSolanaProoflessDeposit.cjs`),Z=require(`./hinkalSolanaClaimUtxo.cjs`),Q=require(`./hinkalWithdrawStuckUtxos.cjs`),ne=require(`./HinkalPrivateBalanceController.cjs`);let $=require(`@solana/web3.js`);var re=class{ethereumProviderAdapter;solanaProviderAdapter;tronProviderAdapter;userKeys;signingMessage=`Login to Hinkal Protocol`;privateTransferSigningMessage=`Login to Hinkal's Private Transfer App`;merkleTreeHinkalByChain={};nullifiersByChain={};encryptedOutputsByChain={};commitmentsSnapshotServiceByChain={};nullifierSnapshotServiceByChain={};utxoUtils;lastCallState=new Map;cacheDevice;generateProofRemotely;disableMerkleTreeUpdates;privateBalances=new ne.HinkalPrivateBalanceController(this);constructor(e){this.userKeys=new s.UserKeys(void 0),e?.tronChainOverride&&n.setHinkalTronChainId(e.tronChainOverride),n.HINKAL_SUPPORTED_CHAINS.forEach(e=>{this.merkleTreeHinkalByChain[e]=O.MerkleTree.create(a.poseidonFunction,0n),this.nullifiersByChain[e]=new Set,this.encryptedOutputsByChain[e]=[]}),this.generateProofRemotely=e?.generateProofRemotely??!0,this.utxoUtils=new A.MultiThreadedUtxoUtils,this.cacheDevice=_.createCacheDevice(e),this.disableMerkleTreeUpdates=e?.disableMerkleTreeUpdates??!1}enforceRateLimit(t,n,r=1e3){let i=Date.now(),a=e.CustomJSONStringify(n),o=this.lastCallState.get(t);if(o&&o.argsKey===a&&i-o.timestamp<r)throw Error(`${t} was already called with the same arguments`);this.lastCallState.set(t,{timestamp:i,argsKey:a})}getProviderAdapter(e){let t=e;t||=this.ethereumProviderAdapter?n.chainIds.ethMainnet:this.solanaProviderAdapter?n.currentSolanaChainId:n.chainIds.tronMainnet;let r;if(r=n.isSolanaLike(t)?this.solanaProviderAdapter:n.isTronLike(t)?this.tronProviderAdapter:this.ethereumProviderAdapter,!r)throw Error(`ProviderAdapter is not initialized`);return r}async initProviderAdapter(e,t){let r=n.chainIds.ethMainnet;t instanceof v.SolanaProviderAdapter?r=n.currentSolanaChainId:t instanceof z.TronProviderAdapter&&(r=n.currentTronChainId),await this.updateProviderAdapter(r,t),t.initConnector(e);let i=await t.connectAndPatchProvider(e);await t.init(i),await this.setListeners()}getSigningMessage(e=r.LoginMessageMode.PROTOCOL){switch(e){case r.LoginMessageMode.PRIVATE_TRANSFER:return this.privateTransferSigningMessage;case r.LoginMessageMode.PROTOCOL:default:return this.signingMessage}}async signHinkalMessage(e=r.LoginMessageMode.PROTOCOL){let t=this.getSigningMessage(e);return this.getProviderAdapter().signMessage(t)}async initUserKeys(e=r.LoginMessageMode.PROTOCOL){this.userKeys=new s.UserKeys(await this.signHinkalMessage(e))}initUserKeysWithSignature(e){this.userKeys=new s.UserKeys(e)}async initUserKeysFromSeedPhrases(e){let t=ee.generateHashFromSeedPhrases(e);this.userKeys=new s.UserKeys(t)}async storeAndGetInitialSignature(e,t,n){let r=await this.getEthereumAddress();if(!r)throw Error(`Connected address not found`);return await y.storeAndGetSignatureFromEnclave(r,e,t,n)}async resetMerkle(e){this.disableMerkleTreeUpdates||(e?.every(e=>this.isSelectedNetworkSupported(e))??!0)&&await k.resetMerkleTrees(this,e)}getTronWeb(){let e=this.tronProviderAdapter;if(!e)throw Error(`Tron provider adapter not initialized`);if(!(e instanceof z.TronProviderAdapter))throw Error(`Tron provider adapter is not a TronProviderAdapter`);let t=e.getTronWeb();if(!t)throw Error(`TronWeb not available`);return t}getSupportedChains(){return this.ethereumProviderAdapter&&this.solanaProviderAdapter?n.WALLET_SUPPORTED_CHAINS:this.ethereumProviderAdapter?n.HINKAL_SUPPORTED_CHAINS.filter(e=>!n.isSolanaLike(e)&&!n.isTronLike(e)):this.solanaProviderAdapter?n.HINKAL_SUPPORTED_CHAINS.filter(e=>n.isSolanaLike(e)):this.tronProviderAdapter?[n.currentTronChainId]:[]}async waitForTransaction(e,t,n=1){return!!await this.getProviderAdapter(e).waitForTransaction(e,t,n)}getContract(e,t,n=void 0){return this.getProviderAdapter(e).getContract(e,t,n)}getContractWithFetcherByChainId(e,t,n=void 0){return m.getContractWithFetcherByChainId(e,t,n)}async signMessage(e){return await this.getProviderAdapter().signMessage(e)}async signTypedData(e,t,n){return await this.getProviderAdapter().signTypedData(e,t,n)}async signWithSubAccount(e,t,n,r){return N.hinkalSignSubAccount(e,t,n,r)}getContractWithSigner(e,t,n=``){return this.getProviderAdapter(e).getContractWithSigner(e,t,n)}getContractWithFetcher(e,t,n=``){return this.getProviderAdapter(e).getContractWithFetcher(e,t,n)}isSelectedNetworkSupported(e){return!!n.networkRegistry[e]}async switchNetwork(e){let t=this.getProviderAdapter(),r=t.getChainId(),i=r!==void 0&&n.isSameOnchainNetwork(e.chainId,r);if(!(e.chainId===r||i))try{await t.switchNetwork(e)}catch{throw Error(o.transactionErrorCodes.FAILED_TO_SWITCH_NETWORKS)}}isPermitterAvailable(e){return this.getProviderAdapter(e).isPermitterAvailable()}async disconnectFromConnector(){await this.ethereumProviderAdapter?.disconnectFromConnector(),await this.solanaProviderAdapter?.disconnectFromConnector(),await this.tronProviderAdapter?.disconnectFromConnector()}async resetProviderAdapters(){this.ethereumProviderAdapter=void 0,this.solanaProviderAdapter=void 0,this.tronProviderAdapter=void 0}async updateProviderAdapter(e,t){try{n.isSolanaLike(e)?(this.solanaProviderAdapter&&this.solanaProviderAdapter.release(),this.solanaProviderAdapter=t):n.isTronLike(e)?(this.tronProviderAdapter&&this.tronProviderAdapter.release(),this.tronProviderAdapter=t):(this.ethereumProviderAdapter&&this.ethereumProviderAdapter.release(),this.ethereumProviderAdapter=t)}catch(e){throw console.error(e),Error(`updateProviderAdapter failed, please try again.`)}}async setListeners(){this.ethereumProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}}),this.solanaProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}}),this.tronProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}})}async onAccountChanged(){await this.ethereumProviderAdapter?.onAccountChanged(),await this.solanaProviderAdapter?.onAccountChanged(),await this.tronProviderAdapter?.onAccountChanged();let e=r.EventType.AccountChanged;typeof document<`u`?document?.dispatchEvent(new Event(e)):process?.emit(`message`,e,void 0)}async onChainChanged(e){e?await this.getProviderAdapter(e).onChainChanged(e):(await this.disconnectFromConnector(),g.reloadPage())}async monitorConnectedAddress(e){await c.API.monitor(await this.getEthereumAddressByChain(e))}async getBalances(e,t,n,r,i=!1,a,o=!1){return f.getShieldedBalance(this,e,t,n,r,i,this.generateProofRemotely,a,o)}async getTotalBalance(e,n,r,i=!1,a,o=!1){let s=r??await this.getEthereumAddressByChain(e),c=n??this.userKeys,l=await this.getBalances(e,c.getShieldedPrivateKey(),c.getShieldedPublicKey(),s,i,a,o),f=t.isExtension?await u.privateTokensDB.getPrivateTokens(e,s):await d.getErc20TokensForChainAPI(e),p=[];return f.forEach(e=>{let t=e.erc20TokenAddress.toLowerCase(),n=l.get(t),r={token:e,balance:n?.balance??0n,timestamp:n?.timestamp||`0`,nfts:n?.nfts||[]};p.push(r)}),p}async getStuckShieldedBalances(e,t,n,r=!1,i=!1){return(await this.getTotalBalance(e,t,n,r,i,!0)).filter(e=>e.balance>0n)}get privateBalancesWithUSD(){return this.privateBalances.getSnapshot()}onPrivateBalancesWithUSDChange(e){return this.privateBalances.onPrivateBalancesWithUSDChange(e)}getSupportedPassportLinks(){return h.supportedPassportLinks}checkAccessToken(e,t){return Promise.resolve(!0)}checkExternalTokenLimitsUSD(e,t,n){return C.checkTokenLimitsUSD(e,t,n)}async getHinkalTreeRootHash(e){if(n.isSolanaLike(e)){let{hinkalIdl:t,hinkalAddress:r,originalDeployer:i}=n.networkRegistry[e].contractData;if(!t||!r||!i)throw Error(`Missing Solana configuration for chain ${e}`);let a=new $.PublicKey(i),o=p.getMerkleAccountPublicKey(new $.PublicKey(r),a);return b.fetchSolanaMerkleTreeRootHash(this.getSolanaProgram(t),o)}return this.getContractWithFetcherByChainId(e,i.ContractType.HinkalContract).getRootHash()}async resetMerkleTreesIfNecessary(e){let t=(await Promise.all((e??this.getSupportedChains()).map(async e=>{let t=await this.getHinkalTreeRootHash(e);return{chainId:e,needsReset:BigInt(t)!==this.merkleTreeHinkalByChain[e].getRootHash()}}))).filter(e=>e.needsReset).map(e=>e.chainId);t.length>0&&(console.log(`resetting merkle tree in resetMerkleTreesIfNecessary for chains:`,t),await this.resetMerkle(t))}async getEthereumAddress(){let e=this.ethereumProviderAdapter??this.solanaProviderAdapter??this.tronProviderAdapter;if(!e)throw Error(`No provider adapter initialized`);return e.getAddress()}getEthereumAddressByChain(e){return this.getProviderAdapter(e).getAddress()}async getRandomRelay(e,t=!1){return(await c.API.getIdleRelay(e,t)).relay}getGasPrice(e){let t=this.getProviderAdapter(e);if(!t)throw Error(`Illegal State of providerAdapter in Hinkal: no providerAdapter initialized`);return t.getGasPrice(e)}getAPI(){return c.API}snapshotsClearInterval(){this.getSupportedChains().forEach(e=>{this.commitmentsSnapshotServiceByChain[e]?.intervalClear(),this.nullifierSnapshotServiceByChain[e]?.intervalClear()})}getRecipientInfo(){return M.getRecipientInfo(this)}async deposit(e,t,n=!0,r=!1){return S.hinkalDeposit(this,e,t,n,r)}async depositSolana(e,t,n=!1){return T.hinkalSolanaDeposit(this,e,t,n)}async depositForOther(e,t,n,r=!0,i=!1,a){return this.enforceRateLimit(this.depositForOther.name,[e,t,n]),S.hinkalDepositForOther(this,e,t,n,r,i,a)}async depositSolanaForOther(e,t,n,r=!1,i){return this.enforceRateLimit(this.depositSolanaForOther.name,[e,t,n]),T.hinkalSolanaDepositForOther(this,e,t,n,r,i)}async depositAndWithdraw(e,t,r,i,a,o,s,c,u=!0){return n.isSolanaLike(l.validateAndGetChainId([e]))?B.hinkalSolanaDepositAndWithdraw(this,e,t,r,i,a,o,s,c):w.hinkalDepositAndWithdraw(this,e,t,r,i,a,o,s,c,u)}async claimUtxo(e,t,r,i){return n.isSolanaLike(l.validateAndGetChainId([e]))?Z.hinkalSolanaClaimUtxo(this,e,t,r,i):Y.hinkalClaimUtxo(this,e,t,r,i)}async depositAndBridge(e,t,n,r,i,a,o,s=!0){return q.hinkalDepositAndBridge(this,e,t,n,r,i,a,o,s)}async nearDepositAndBridge(e,t,n,r,i,a,o,s,c){return this.enforceRateLimit(this.nearDepositAndBridge.name,[e,t,n,r]),J.hinkalNearDepositAndBridge(this,e,t,n,r,i,a,o,s,c)}async prooflessDeposit(e,t,r,i,a=!1){return n.isSolanaLike(l.validateAndGetChainId(e))?X.hinkalSolanaProoflessDeposit(this,e,t,r,i,a):F.hinkalProoflessDeposit(this,e,t,r,i,a)}async prooflessDepositWithPublicFee(e,t,r,i,a){let o=l.validateAndGetChainId([e]);return n.isSolanaLike(o)?T.hinkalSolanaProoflessDepositWithPublicFee(this,e,t,r,i,a):F.hinkalProoflessDepositWithPublicFee(this,o,e,t,r,i,a)}getSolanaProgram(e){if(!this.solanaProviderAdapter)throw Error(`No provider adapter initialized`);if(!(`getSolanaProgram`in this.solanaProviderAdapter))throw Error(`Current provider adapter is not a Solana provider adapter`);return this.solanaProviderAdapter.getSolanaProgram(e)}getSolanaPublicKey(){if(!this.solanaProviderAdapter)throw Error(`No provider adapter initialized`);if(!(`getSolanaPublicKey`in this.solanaProviderAdapter))throw Error(`Current provider adapter is not a Solana provider adapter`);return this.solanaProviderAdapter.getSolanaPublicKey()}async transfer(e,t,r,i,a,o){return this.enforceRateLimit(this.transfer.name,[e,t,r]),n.isSolanaLike(l.validateAndGetChainId(e))?H.hinkalSolanaTransfer(this,e,t,r,i,a,o):L.hinkalTransfer(this,e,t,r,i,a,o)}async withdraw(e,t,r,i,a,o,s){return n.isSolanaLike(l.validateAndGetChainId(e))?V.hinkalSolanaWithdraw(this,e,t,r,a,o,s):D.hinkalWithdraw(this,e,t,r,i,a,o,s)}async withdrawStuckUtxos(e,t){return Q.hinkalWithdrawStuckUtxos(this,e,t)}async swap(e,t,r,i,a,o,s){return n.isSolanaLike(l.validateAndGetChainId(e))?this.swapSolana(e,t,i,a,o,s):E.hinkalSwap(this,e,t,r,i,a,o,s)}async swapSolana(e,t,n,r,i,a){let o=JSON.parse(n),s=BigInt(o.swapperAccountSalt),{instructionLists:c,addressLookupTableAccount:l}=o.data;return U.hinkalSolanaSwap(this,e,t,s,c,l,r,i,a)}async actionReceive(e,t,r,i,a,o){if(!a)throw Error(`subAccount is required`);return n.isSolanaLike(l.validateAndGetChainId(e))?K.hinkalSolanaProxyShield(this,e[0],t[0],a,void 0,o):P.hinkalActionReceive(this,e,t,r,i,a,o)}async actionPrivateWallet(e,t,n,r,i,a,o,s,c,l,u=!1,d,f,p){return this.enforceRateLimit(this.actionPrivateWallet.name,[e,t,n,r,i,a,o,s,c,p]),j.hinkalPrivateWallet(this,e,t,n,r,i,a,o,s,c,l,u,d,f,p)}async proxySwap(e,t,r,i,a,o,s,c,u=!1,d,f){return n.isSolanaLike(l.validateAndGetChainId(e))?G.hinkalSolanaProxySwap(this,e,t,i,o,r,s,c,f):te.hinkalProxySwap(this,e,t,r,i,a,o,s,c,u,d,f)}async proxyToPrivate(e,t,r,i,a,o,s){return n.isSolanaLike(l.validateAndGetChainId(e))?(this.enforceRateLimit(this.proxyToPrivate.name,[e[0],t[0],r,i]),K.hinkalSolanaProxyShield(this,e[0],t[0],r,i,s)):R.hinkalProxyToPrivate(this,e,t,i,a,o,r,s)}async proxySend(e,t,r,i,a,o,s){let c=l.validateAndGetChainId(e);if(n.isSolanaLike(c))return W.hinkalSolanaProxySend(this,e[0],t[0],r,i,s);let u=x.createTransaferEmporiumOpsBatch(this,c,e.map(e=>e.erc20TokenAddress),t,i),d=e.map((e,n)=>({token:e,amount:-1n*t[n]}));return await this.actionPrivateWallet(c,[],[],[],u,d,r,a,o,void 0,void 0,void 0,s,void 0)}async multiSendPrivateRecipients(e,t,n){return this.enforceRateLimit(this.multiSendPrivateRecipients.name,[e,t,n]),I.hinkalMultiSendPrivateRecipients(this,e,t,n)}areMerkleTreeUpdatesDisabled(){return this.disableMerkleTreeUpdates}updateMerkleTreeUpdates(e){this.disableMerkleTreeUpdates=e}};exports.Hinkal=re;
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../functions/utils/serialize.utils.cjs`),t=require(`../../constants/vite.constants.cjs`),n=require(`../../constants/chains.constants.cjs`),r=require(`../../constants/protocol.constants.cjs`),i=require(`../../types/hinkal.types.cjs`),a=require(`../../types/ethereum-network.types.cjs`),o=require(`../../crypto/poseidon.cjs`),s=require(`../../error-handling/error-codes.constants.cjs`),c=require(`../crypto-keys/keys.cjs`),l=require(`../../API/API.cjs`),u=require(`../../functions/utils/token-check.utils.cjs`),d=require(`../TokenDBs/PrivateTokensDB.cjs`),f=require(`../../functions/utils/erc20tokenFunctions.cjs`),p=require(`../../functions/web3/events/getShieldedBalance.cjs`),m=require(`../../functions/pre-transaction/solana.cjs`),h=require(`../../functions/web3/getContractMetadata.cjs`),ee=require(`../../constants/kyc.constants.cjs`),g=require(`../../functions/utils/reloadPage.cjs`),_=require(`../../functions/utils/cacheDevice.utils.cjs`),v=require(`../../providers/SolanaProviderAdapter.cjs`),te=require(`../../functions/utils/enclave-signature-storage.cjs`),y=require(`../../functions/utils/mnemonics.cjs`),b=require(`../../functions/web3/fetchSolanaMerkleTreeRootHash.cjs`),x=require(`../../functions/private-wallet/emporium.helpers.cjs`),S=require(`./hinkalDeposit.cjs`);require(`../../API/index.cjs`);const C=require(`../../functions/kyc/checkTokenLimitsUSD.cjs`);require(`../../functions/index.cjs`);const w=require(`./hinkalDepositAndWithdraw.cjs`),T=require(`./hinkalSolanaDeposit.cjs`),E=require(`./hinkalSwap.cjs`),D=require(`./hinkalWithdraw.cjs`),O=require(`../merkle-tree/MerkleTree.cjs`);require(`../merkle-tree/index.cjs`);const k=require(`./resetMerkleTrees.cjs`),A=require(`../MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs`),j=require(`./hinkalPrivateWallet.cjs`),M=require(`./hinkalGetRecipientInfo.cjs`),N=require(`./hinkalSignSubAccount.cjs`),P=require(`./hinkalActionReceive.cjs`);require(`../TokenDBs/index.cjs`);const F=require(`./hinkalProoflessDeposit.cjs`),I=require(`./hinkalProxySwap.cjs`),L=require(`./hinkalMultiSend.cjs`),R=require(`./hinkalTransfer.cjs`),z=require(`./hinkalProxyToPrivate.cjs`),B=require(`../../providers/TronProviderAdapter.cjs`),V=require(`./hinkalSolanaDepositAndWithdraw.cjs`),H=require(`./hinkalSolanaWithdraw.cjs`),U=require(`./hinkalSolanaTransfer.cjs`),W=require(`./hinkalSolanaSwap.cjs`),G=require(`./hinkalSolanaProxySend.cjs`),K=require(`./hinkalSolanaProxySwap.cjs`),q=require(`./hinkalSolanaProxyShield.cjs`),J=require(`./hinkalDepositAndBridge.cjs`),Y=require(`./hinkalNearDepositAndBridge.cjs`),X=require(`./hinkalClaimUtxo.cjs`),Z=require(`./hinkalSolanaProoflessDeposit.cjs`),Q=require(`./hinkalSolanaClaimUtxo.cjs`),ne=require(`./hinkalWithdrawStuckUtxos.cjs`),re=require(`./HinkalPrivateBalanceController.cjs`);let $=require(`@solana/web3.js`);var ie=class{ethereumProviderAdapter;solanaProviderAdapter;tronProviderAdapter;userKeys;signingMessage=`Login to Hinkal Protocol`;privateTransferSigningMessage=`Login to Hinkal's Private Transfer App`;merkleTreeHinkalByChain={};nullifiersByChain={};encryptedOutputsByChain={};commitmentsSnapshotServiceByChain={};nullifierSnapshotServiceByChain={};utxoUtils;lastCallState=new Map;cacheDevice;generateProofRemotely;disableMerkleTreeUpdates;privateBalances=new re.HinkalPrivateBalanceController(this);constructor(e){this.userKeys=new c.UserKeys(void 0),e?.tronChainOverride&&n.setHinkalTronChainId(e.tronChainOverride),n.HINKAL_SUPPORTED_CHAINS.forEach(e=>{this.merkleTreeHinkalByChain[e]=O.MerkleTree.create(o.poseidonFunction,0n),this.nullifiersByChain[e]=new Set,this.encryptedOutputsByChain[e]=[]}),this.generateProofRemotely=e?.generateProofRemotely??!0,this.utxoUtils=new A.MultiThreadedUtxoUtils,this.cacheDevice=_.createCacheDevice(e),this.disableMerkleTreeUpdates=e?.disableMerkleTreeUpdates??!1}enforceRateLimit(t,n,r=1e3){let i=Date.now(),a=e.CustomJSONStringify(n),o=this.lastCallState.get(t);if(o&&o.argsKey===a&&i-o.timestamp<r)throw Error(`${t} was already called with the same arguments`);this.lastCallState.set(t,{timestamp:i,argsKey:a})}getProviderAdapter(e){let t=e;t||=this.ethereumProviderAdapter?n.chainIds.ethMainnet:this.solanaProviderAdapter?n.currentSolanaChainId:n.chainIds.tronMainnet;let r;if(r=n.isSolanaLike(t)?this.solanaProviderAdapter:n.isTronLike(t)?this.tronProviderAdapter:this.ethereumProviderAdapter,!r)throw Error(`ProviderAdapter is not initialized`);return r}async initProviderAdapter(e,t){let r=n.chainIds.ethMainnet;t instanceof v.SolanaProviderAdapter?r=n.currentSolanaChainId:t instanceof B.TronProviderAdapter&&(r=n.currentTronChainId),await this.updateProviderAdapter(r,t),t.initConnector(e);let i=await t.connectAndPatchProvider(e);await t.init(i),await this.setListeners()}getSigningMessage(e=i.LoginMessageMode.PROTOCOL){switch(e){case i.LoginMessageMode.PRIVATE_TRANSFER:return this.privateTransferSigningMessage;case i.LoginMessageMode.PROTOCOL:default:return this.signingMessage}}async signHinkalMessage(e=i.LoginMessageMode.PROTOCOL){let t=this.getSigningMessage(e);return this.getProviderAdapter().signMessage(t)}async signSolanaLedgerMessage(){let e=new $.Transaction({blockhash:r.DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH,lastValidBlockHeight:r.DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT,feePayer:this.getSolanaPublicKey()}),t=await this.getProviderAdapter().signTransactionWithoutBroadcast?.(e);if(!t)throw Error(`Failed to sign transaction without broadcast`);return{signature:t.signature,txMessageForSolanaLedger:t.transactionMessageB64}}async initUserKeys(e=i.LoginMessageMode.PROTOCOL){this.userKeys=new c.UserKeys(await this.signHinkalMessage(e))}initUserKeysWithSignature(e){this.userKeys=new c.UserKeys(e)}async initUserKeysFromSeedPhrases(e){let t=y.generateHashFromSeedPhrases(e);this.userKeys=new c.UserKeys(t)}async storeAndGetInitialSignature(e,t=!1,n){let r=await this.getEthereumAddress();if(!r)throw Error(`Connected address not found`);return await te.storeAndGetSignatureFromEnclave(r,e,t,n)}async resetMerkle(e){this.disableMerkleTreeUpdates||(e?.every(e=>this.isSelectedNetworkSupported(e))??!0)&&await k.resetMerkleTrees(this,e)}getTronWeb(){let e=this.tronProviderAdapter;if(!e)throw Error(`Tron provider adapter not initialized`);if(!(e instanceof B.TronProviderAdapter))throw Error(`Tron provider adapter is not a TronProviderAdapter`);let t=e.getTronWeb();if(!t)throw Error(`TronWeb not available`);return t}getSupportedChains(){return this.ethereumProviderAdapter&&this.solanaProviderAdapter?n.WALLET_SUPPORTED_CHAINS:this.ethereumProviderAdapter?n.HINKAL_SUPPORTED_CHAINS.filter(e=>!n.isSolanaLike(e)&&!n.isTronLike(e)):this.solanaProviderAdapter?n.HINKAL_SUPPORTED_CHAINS.filter(e=>n.isSolanaLike(e)):this.tronProviderAdapter?[n.currentTronChainId]:[]}async waitForTransaction(e,t,n=1){return!!await this.getProviderAdapter(e).waitForTransaction(e,t,n)}getContract(e,t,n=void 0){return this.getProviderAdapter(e).getContract(e,t,n)}getContractWithFetcherByChainId(e,t,n=void 0){return h.getContractWithFetcherByChainId(e,t,n)}async signMessage(e){return await this.getProviderAdapter().signMessage(e)}async signTypedData(e,t,n){return await this.getProviderAdapter().signTypedData(e,t,n)}async signWithSubAccount(e,t,n,r){return N.hinkalSignSubAccount(e,t,n,r)}getContractWithSigner(e,t,n=``){return this.getProviderAdapter(e).getContractWithSigner(e,t,n)}getContractWithFetcher(e,t,n=``){return this.getProviderAdapter(e).getContractWithFetcher(e,t,n)}isSelectedNetworkSupported(e){return!!n.networkRegistry[e]}async switchNetwork(e){let t=this.getProviderAdapter(),r=t.getChainId(),i=r!==void 0&&n.isSameOnchainNetwork(e.chainId,r);if(!(e.chainId===r||i))try{await t.switchNetwork(e)}catch{throw Error(s.transactionErrorCodes.FAILED_TO_SWITCH_NETWORKS)}}isPermitterAvailable(e){return this.getProviderAdapter(e).isPermitterAvailable()}async disconnectFromConnector(){await this.ethereumProviderAdapter?.disconnectFromConnector(),await this.solanaProviderAdapter?.disconnectFromConnector(),await this.tronProviderAdapter?.disconnectFromConnector()}async resetProviderAdapters(){this.ethereumProviderAdapter=void 0,this.solanaProviderAdapter=void 0,this.tronProviderAdapter=void 0}async updateProviderAdapter(e,t){try{n.isSolanaLike(e)?(this.solanaProviderAdapter&&this.solanaProviderAdapter.release(),this.solanaProviderAdapter=t):n.isTronLike(e)?(this.tronProviderAdapter&&this.tronProviderAdapter.release(),this.tronProviderAdapter=t):(this.ethereumProviderAdapter&&this.ethereumProviderAdapter.release(),this.ethereumProviderAdapter=t)}catch(e){throw console.error(e),Error(`updateProviderAdapter failed, please try again.`)}}async setListeners(){this.ethereumProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}}),this.solanaProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}}),this.tronProviderAdapter?.setChainEventListener({onAccountChanged:()=>{this.onAccountChanged()},onChainChanged:e=>{this.onChainChanged(e)}})}async onAccountChanged(){await this.ethereumProviderAdapter?.onAccountChanged(),await this.solanaProviderAdapter?.onAccountChanged(),await this.tronProviderAdapter?.onAccountChanged();let e=i.EventType.AccountChanged;typeof document<`u`?document?.dispatchEvent(new Event(e)):process?.emit(`message`,e,void 0)}async onChainChanged(e){e?await this.getProviderAdapter(e).onChainChanged(e):(await this.disconnectFromConnector(),g.reloadPage())}async monitorConnectedAddress(e){await l.API.monitor(await this.getEthereumAddressByChain(e))}async getBalances(e,t,n,r,i=!1,a,o=!1){return p.getShieldedBalance(this,e,t,n,r,i,this.generateProofRemotely,a,o)}async getTotalBalance(e,n,r,i=!1,a,o=!1){let s=r??await this.getEthereumAddressByChain(e),c=n??this.userKeys,l=await this.getBalances(e,c.getShieldedPrivateKey(),c.getShieldedPublicKey(),s,i,a,o),u=t.isExtension?await d.privateTokensDB.getPrivateTokens(e,s):await f.getErc20TokensForChainAPI(e),p=[];return u.forEach(e=>{let t=e.erc20TokenAddress.toLowerCase(),n=l.get(t),r={token:e,balance:n?.balance??0n,timestamp:n?.timestamp||`0`,nfts:n?.nfts||[]};p.push(r)}),p}async getStuckShieldedBalances(e,t,n,r=!1,i=!1){return(await this.getTotalBalance(e,t,n,r,i,!0)).filter(e=>e.balance>0n)}get privateBalancesWithUSD(){return this.privateBalances.getSnapshot()}onPrivateBalancesWithUSDChange(e){return this.privateBalances.onPrivateBalancesWithUSDChange(e)}getSupportedPassportLinks(){return ee.supportedPassportLinks}checkAccessToken(e,t){return Promise.resolve(!0)}checkExternalTokenLimitsUSD(e,t,n){return C.checkTokenLimitsUSD(e,t,n)}async getHinkalTreeRootHash(e){if(n.isSolanaLike(e)){let{hinkalIdl:t,hinkalAddress:r,originalDeployer:i}=n.networkRegistry[e].contractData;if(!t||!r||!i)throw Error(`Missing Solana configuration for chain ${e}`);let a=new $.PublicKey(i),o=m.getMerkleAccountPublicKey(new $.PublicKey(r),a);return b.fetchSolanaMerkleTreeRootHash(this.getSolanaProgram(t),o)}return this.getContractWithFetcherByChainId(e,a.ContractType.HinkalContract).getRootHash()}async resetMerkleTreesIfNecessary(e){let t=(await Promise.all((e??this.getSupportedChains()).map(async e=>{let t=await this.getHinkalTreeRootHash(e);return{chainId:e,needsReset:BigInt(t)!==this.merkleTreeHinkalByChain[e].getRootHash()}}))).filter(e=>e.needsReset).map(e=>e.chainId);t.length>0&&(console.log(`resetting merkle tree in resetMerkleTreesIfNecessary for chains:`,t),await this.resetMerkle(t))}async getEthereumAddress(){let e=this.ethereumProviderAdapter??this.solanaProviderAdapter??this.tronProviderAdapter;if(!e)throw Error(`No provider adapter initialized`);return e.getAddress()}getEthereumAddressByChain(e){return this.getProviderAdapter(e).getAddress()}async getRandomRelay(e,t=!1){return(await l.API.getIdleRelay(e,t)).relay}getGasPrice(e){let t=this.getProviderAdapter(e);if(!t)throw Error(`Illegal State of providerAdapter in Hinkal: no providerAdapter initialized`);return t.getGasPrice(e)}getAPI(){return l.API}snapshotsClearInterval(){this.getSupportedChains().forEach(e=>{this.commitmentsSnapshotServiceByChain[e]?.intervalClear(),this.nullifierSnapshotServiceByChain[e]?.intervalClear()})}getRecipientInfo(){return M.getRecipientInfo(this)}async deposit(e,t,n=!0,r=!1){return S.hinkalDeposit(this,e,t,n,r)}async depositSolana(e,t,n=!1){return T.hinkalSolanaDeposit(this,e,t,n)}async depositForOther(e,t,n,r=!0,i=!1,a){return this.enforceRateLimit(this.depositForOther.name,[e,t,n]),S.hinkalDepositForOther(this,e,t,n,r,i,a)}async depositSolanaForOther(e,t,n,r=!1,i){return this.enforceRateLimit(this.depositSolanaForOther.name,[e,t,n]),T.hinkalSolanaDepositForOther(this,e,t,n,r,i)}async depositAndWithdraw(e,t,r,i,a,o,s,c,l=!0){return n.isSolanaLike(u.validateAndGetChainId([e]))?V.hinkalSolanaDepositAndWithdraw(this,e,t,r,i,a,o,s,c):w.hinkalDepositAndWithdraw(this,e,t,r,i,a,o,s,c,l)}async claimUtxo(e,t,r,i){return n.isSolanaLike(u.validateAndGetChainId([e]))?Q.hinkalSolanaClaimUtxo(this,e,t,r,i):X.hinkalClaimUtxo(this,e,t,r,i)}async depositAndBridge(e,t,n,r,i,a,o,s=!0){return J.hinkalDepositAndBridge(this,e,t,n,r,i,a,o,s)}async nearDepositAndBridge(e,t,n,r,i,a,o,s,c){return this.enforceRateLimit(this.nearDepositAndBridge.name,[e,t,n,r]),Y.hinkalNearDepositAndBridge(this,e,t,n,r,i,a,o,s,c)}async prooflessDeposit(e,t,r,i,a=!1){return n.isSolanaLike(u.validateAndGetChainId(e))?Z.hinkalSolanaProoflessDeposit(this,e,t,r,i,a):F.hinkalProoflessDeposit(this,e,t,r,i,a)}async prooflessDepositWithPublicFee(e,t,r,i,a){let o=u.validateAndGetChainId([e]);return n.isSolanaLike(o)?T.hinkalSolanaProoflessDepositWithPublicFee(this,e,t,r,i,a):F.hinkalProoflessDepositWithPublicFee(this,o,e,t,r,i,a)}getSolanaProgram(e){if(!this.solanaProviderAdapter)throw Error(`No provider adapter initialized`);if(!(`getSolanaProgram`in this.solanaProviderAdapter))throw Error(`Current provider adapter is not a Solana provider adapter`);return this.solanaProviderAdapter.getSolanaProgram(e)}getSolanaPublicKey(){if(!this.solanaProviderAdapter)throw Error(`No provider adapter initialized`);if(!(`getSolanaPublicKey`in this.solanaProviderAdapter))throw Error(`Current provider adapter is not a Solana provider adapter`);return this.solanaProviderAdapter.getSolanaPublicKey()}async transfer(e,t,r,i,a,o){return this.enforceRateLimit(this.transfer.name,[e,t,r]),n.isSolanaLike(u.validateAndGetChainId(e))?U.hinkalSolanaTransfer(this,e,t,r,i,a,o):R.hinkalTransfer(this,e,t,r,i,a,o)}async withdraw(e,t,r,i,a,o,s){return n.isSolanaLike(u.validateAndGetChainId(e))?H.hinkalSolanaWithdraw(this,e,t,r,a,o,s):D.hinkalWithdraw(this,e,t,r,i,a,o,s)}async withdrawStuckUtxos(e,t){return ne.hinkalWithdrawStuckUtxos(this,e,t)}async swap(e,t,r,i,a,o,s){return n.isSolanaLike(u.validateAndGetChainId(e))?this.swapSolana(e,t,i,a,o,s):E.hinkalSwap(this,e,t,r,i,a,o,s)}async swapSolana(e,t,n,r,i,a){let o=JSON.parse(n),s=BigInt(o.swapperAccountSalt),{instructionLists:c,addressLookupTableAccount:l}=o.data;return W.hinkalSolanaSwap(this,e,t,s,c,l,r,i,a)}async actionReceive(e,t,r,i,a,o){if(!a)throw Error(`subAccount is required`);return n.isSolanaLike(u.validateAndGetChainId(e))?q.hinkalSolanaProxyShield(this,e[0],t[0],a,void 0,o):P.hinkalActionReceive(this,e,t,r,i,a,o)}async actionPrivateWallet(e,t,n,r,i,a,o,s,c,l,u=!1,d,f,p){return this.enforceRateLimit(this.actionPrivateWallet.name,[e,t,n,r,i,a,o,s,c,p]),j.hinkalPrivateWallet(this,e,t,n,r,i,a,o,s,c,l,u,d,f,p)}async proxySwap(e,t,r,i,a,o,s,c,l=!1,d,f){return n.isSolanaLike(u.validateAndGetChainId(e))?K.hinkalSolanaProxySwap(this,e,t,i,o,r,s,c,f):I.hinkalProxySwap(this,e,t,r,i,a,o,s,c,l,d,f)}async proxyToPrivate(e,t,r,i,a,o,s){return n.isSolanaLike(u.validateAndGetChainId(e))?(this.enforceRateLimit(this.proxyToPrivate.name,[e[0],t[0],r,i]),q.hinkalSolanaProxyShield(this,e[0],t[0],r,i,s)):z.hinkalProxyToPrivate(this,e,t,i,a,o,r,s)}async proxySend(e,t,r,i,a,o,s){let c=u.validateAndGetChainId(e);if(n.isSolanaLike(c))return G.hinkalSolanaProxySend(this,e[0],t[0],r,i,s);let l=x.createTransaferEmporiumOpsBatch(this,c,e.map(e=>e.erc20TokenAddress),t,i),d=e.map((e,n)=>({token:e,amount:-1n*t[n]}));return await this.actionPrivateWallet(c,[],[],[],l,d,r,a,o,void 0,void 0,void 0,s,void 0)}async multiSendPrivateRecipients(e,t,n){return this.enforceRateLimit(this.multiSendPrivateRecipients.name,[e,t,n]),L.hinkalMultiSendPrivateRecipients(this,e,t,n)}areMerkleTreeUpdatesDisabled(){return this.disableMerkleTreeUpdates}updateMerkleTreeUpdates(e){this.disableMerkleTreeUpdates=e}};exports.Hinkal=ie;
@@ -46,10 +46,14 @@ export declare class Hinkal<ConnectorType> implements IHinkal {
46
46
  initProviderAdapter(connector: ConnectorType, providerAdapter: IProviderAdapter<ConnectorType>): Promise<void>;
47
47
  getSigningMessage(mode?: LoginMessageMode): string;
48
48
  signHinkalMessage(mode?: LoginMessageMode): Promise<string>;
49
+ signSolanaLedgerMessage(): Promise<{
50
+ signature: string;
51
+ txMessageForSolanaLedger: string;
52
+ }>;
49
53
  initUserKeys(mode?: LoginMessageMode): Promise<void>;
50
54
  initUserKeysWithSignature(signature: string): void;
51
55
  initUserKeysFromSeedPhrases(seedPhrases: string[]): Promise<void>;
52
- storeAndGetInitialSignature(authSignature: string, isSolanaLedger: boolean, txMessageForSolanaLedger?: string): Promise<string>;
56
+ storeAndGetInitialSignature(authSignature: string, isSolanaLedger?: boolean, txMessageForSolanaLedger?: string): Promise<string>;
53
57
  resetMerkle(chains?: number[]): Promise<void>;
54
58
  getTronWeb(): import('tronweb').TronWeb;
55
59
  getSupportedChains(): number[];