@turnkey/core 1.0.0-beta.4 → 1.0.0-beta.6

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 (65) hide show
  1. package/dist/__clients__/core.d.ts +88 -35
  2. package/dist/__clients__/core.d.ts.map +1 -1
  3. package/dist/__clients__/core.js +271 -140
  4. package/dist/__clients__/core.js.map +1 -1
  5. package/dist/__clients__/core.mjs +274 -143
  6. package/dist/__clients__/core.mjs.map +1 -1
  7. package/dist/__generated__/sdk-client-base.d.ts +13 -0
  8. package/dist/__generated__/sdk-client-base.d.ts.map +1 -1
  9. package/dist/__generated__/sdk-client-base.js +198 -8
  10. package/dist/__generated__/sdk-client-base.js.map +1 -1
  11. package/dist/__generated__/sdk-client-base.mjs +198 -8
  12. package/dist/__generated__/sdk-client-base.mjs.map +1 -1
  13. package/dist/__generated__/version.d.ts +1 -1
  14. package/dist/__generated__/version.js +1 -1
  15. package/dist/__generated__/version.mjs +1 -1
  16. package/dist/__inputs__/public_api.types.d.ts +629 -494
  17. package/dist/__inputs__/public_api.types.d.ts.map +1 -1
  18. package/dist/__polyfills__/jest.setup.webcrypto.d.ts +2 -0
  19. package/dist/__polyfills__/jest.setup.webcrypto.d.ts.map +1 -0
  20. package/dist/__stampers__/api/base.d.ts +11 -5
  21. package/dist/__stampers__/api/base.d.ts.map +1 -1
  22. package/dist/__stampers__/api/base.js +32 -10
  23. package/dist/__stampers__/api/base.js.map +1 -1
  24. package/dist/__stampers__/api/base.mjs +32 -10
  25. package/dist/__stampers__/api/base.mjs.map +1 -1
  26. package/dist/__stampers__/api/web/stamper.d.ts.map +1 -1
  27. package/dist/__stampers__/api/web/stamper.js +2 -4
  28. package/dist/__stampers__/api/web/stamper.js.map +1 -1
  29. package/dist/__stampers__/api/web/stamper.mjs +2 -4
  30. package/dist/__stampers__/api/web/stamper.mjs.map +1 -1
  31. package/dist/__types__/base.d.ts +195 -75
  32. package/dist/__types__/base.d.ts.map +1 -1
  33. package/dist/__types__/base.js +14 -13
  34. package/dist/__types__/base.js.map +1 -1
  35. package/dist/__types__/base.mjs +15 -14
  36. package/dist/__types__/base.mjs.map +1 -1
  37. package/dist/__wallet__/stamper.d.ts.map +1 -1
  38. package/dist/__wallet__/stamper.js +8 -7
  39. package/dist/__wallet__/stamper.js.map +1 -1
  40. package/dist/__wallet__/stamper.mjs +9 -8
  41. package/dist/__wallet__/stamper.mjs.map +1 -1
  42. package/dist/__wallet__/wallet-connect/base.d.ts +3 -0
  43. package/dist/__wallet__/wallet-connect/base.d.ts.map +1 -1
  44. package/dist/__wallet__/wallet-connect/base.js +32 -8
  45. package/dist/__wallet__/wallet-connect/base.js.map +1 -1
  46. package/dist/__wallet__/wallet-connect/base.mjs +32 -8
  47. package/dist/__wallet__/wallet-connect/base.mjs.map +1 -1
  48. package/dist/__wallet__/wallet-connect/client.d.ts +28 -3
  49. package/dist/__wallet__/wallet-connect/client.d.ts.map +1 -1
  50. package/dist/__wallet__/wallet-connect/client.js +54 -5
  51. package/dist/__wallet__/wallet-connect/client.js.map +1 -1
  52. package/dist/__wallet__/wallet-connect/client.mjs +54 -5
  53. package/dist/__wallet__/wallet-connect/client.mjs.map +1 -1
  54. package/dist/index.d.ts +2 -1
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +2 -10
  57. package/dist/index.js.map +1 -1
  58. package/dist/index.mjs +2 -2
  59. package/dist/utils.d.ts +61 -13
  60. package/dist/utils.d.ts.map +1 -1
  61. package/dist/utils.js +184 -32
  62. package/dist/utils.js.map +1 -1
  63. package/dist/utils.mjs +179 -33
  64. package/dist/utils.mjs.map +1 -1
  65. package/package.json +10 -9
package/dist/utils.js CHANGED
@@ -2,10 +2,28 @@
2
2
 
3
3
  var sdkTypes = require('@turnkey/sdk-types');
4
4
  var base = require('./__types__/base.js');
5
+ var bs58 = require('bs58');
5
6
  var turnkeyHelpers = require('./turnkey-helpers.js');
6
7
  var crypto$1 = require('@turnkey/crypto');
7
8
  var encoding = require('@turnkey/encoding');
9
+ var ethers = require('ethers');
8
10
 
11
+ /**
12
+ * Configuration for all supported address formats.
13
+ *
14
+ * Includes:
15
+ * - encoding type
16
+ * - hash function
17
+ * - default accounts for the address format
18
+ * - display name for the address format
19
+ *
20
+ * ```ts
21
+ * // Example usage:
22
+ * import { addressFormatConfig } from "@turnkey/sdk-core";
23
+ *
24
+ * const config = addressFormatConfig["ADDRESS_FORMAT_ETHEREUM"];
25
+ * ```
26
+ */
9
27
  const addressFormatConfig = {
10
28
  ADDRESS_FORMAT_UNCOMPRESSED: {
11
29
  encoding: "PAYLOAD_ENCODING_HEXADECIMAL",
@@ -350,27 +368,6 @@ const broadcastTransaction = async (params) => {
350
368
  throw new sdkTypes.TurnkeyError(`Unsupported transaction type for broadcasting: ${transactionType}`, sdkTypes.TurnkeyErrorCodes.SIGN_AND_SEND_TRANSACTION_ERROR);
351
369
  }
352
370
  };
353
- const getWalletAccountMethods = (sign, provider) => {
354
- const signWithIntent = (intent) => {
355
- return async (input) => {
356
- return sign(input, provider, intent);
357
- };
358
- };
359
- switch (provider.chainInfo.namespace) {
360
- case base.Chain.Ethereum:
361
- return {
362
- signMessage: signWithIntent(base.SignIntent.SignMessage),
363
- signAndSendTransaction: signWithIntent(base.SignIntent.SignAndSendTransaction),
364
- };
365
- case base.Chain.Solana:
366
- return {
367
- signMessage: signWithIntent(base.SignIntent.SignMessage),
368
- signTransaction: signWithIntent(base.SignIntent.SignTransaction),
369
- };
370
- default:
371
- throw new Error(`Unsupported wallet chain: ${provider.chainInfo}. Supported chains are Ethereum and Solana.`);
372
- }
373
- };
374
371
  function splitSignature(signature, addressFormat) {
375
372
  const hex = signature.replace(/^0x/, "");
376
373
  if (addressFormat === "ADDRESS_FORMAT_ETHEREUM") {
@@ -413,7 +410,7 @@ function isWalletAccountArray(arr) {
413
410
  "pathFormat" in arr[0]));
414
411
  }
415
412
  function createWalletAccountFromAddressFormat(addressFormat) {
416
- const walletAccount = addressFormatConfig[addressFormat].defaultAccounts;
413
+ const walletAccount = addressFormatConfig[addressFormat]?.defaultAccounts;
417
414
  if (!walletAccount) {
418
415
  throw new Error(`Unsupported address format: ${addressFormat}`);
419
416
  }
@@ -422,6 +419,7 @@ function createWalletAccountFromAddressFormat(addressFormat) {
422
419
  }
423
420
  throw new Error(`No default accounts defined for address format: ${addressFormat}`);
424
421
  }
422
+ /**@internal */
425
423
  function generateWalletAccountsFromAddressFormat(params) {
426
424
  const { addresses, existingWalletAccounts } = params;
427
425
  const pathMap = new Map();
@@ -446,6 +444,7 @@ function generateWalletAccountsFromAddressFormat(params) {
446
444
  let nextIndex = 0;
447
445
  if (maxIndexMap.has(key)) {
448
446
  nextIndex = maxIndexMap.get(key) + 1;
447
+ maxIndexMap.set(key, nextIndex);
449
448
  }
450
449
  else if (pathMap.has(account.path)) {
451
450
  nextIndex = pathMap.get(account.path);
@@ -465,7 +464,7 @@ function buildSignUpBody(params) {
465
464
  if (createSubOrgParams?.authenticators?.length) {
466
465
  authenticators =
467
466
  createSubOrgParams?.authenticators?.map((authenticator) => ({
468
- authenticatorName: authenticator.authenticatorName || `${websiteName}-${Date.now()}`,
467
+ authenticatorName: authenticator?.authenticatorName || `${websiteName}-${Date.now()}`,
469
468
  challenge: authenticator.challenge,
470
469
  attestation: authenticator.attestation,
471
470
  })) || [];
@@ -540,14 +539,90 @@ function getPublicKeyFromStampHeader(stampHeaderValue) {
540
539
  throw new Error(`Failed to extract public key from stamp header: ${error instanceof Error ? error.message : String(error)}`);
541
540
  }
542
541
  }
543
- function isEthereumWallet(wallet) {
544
- const walletType = wallet.chainInfo.namespace;
545
- return walletType === base.Chain.Ethereum;
542
+ /**@internal */
543
+ function isEthereumProvider(provider) {
544
+ return provider.chainInfo.namespace === base.Chain.Ethereum;
546
545
  }
547
- function isSolanaWallet(wallet) {
548
- const walletType = wallet.chainInfo.namespace;
549
- return walletType === base.Chain.Solana;
546
+ /**@internal */
547
+ function isSolanaProvider(provider) {
548
+ return provider.chainInfo.namespace === base.Chain.Solana;
550
549
  }
550
+ /** @internal */
551
+ function getCurveTypeFromProvider(provider) {
552
+ if (isEthereumProvider(provider)) {
553
+ return "API_KEY_CURVE_SECP256K1";
554
+ }
555
+ if (isSolanaProvider(provider)) {
556
+ return "API_KEY_CURVE_ED25519";
557
+ }
558
+ // we should never hit this case
559
+ // if we do then it means we added support for a new chain but missed updating this function
560
+ throw new Error(`Unsupported provider namespace: ${provider.chainInfo.namespace}. Expected Ethereum or Solana.`);
561
+ }
562
+ /** @internal */
563
+ function getSignatureSchemeFromProvider(provider) {
564
+ if (isEthereumProvider(provider)) {
565
+ return "SIGNATURE_SCHEME_TK_API_SECP256K1_EIP191";
566
+ }
567
+ if (isSolanaProvider(provider)) {
568
+ return "SIGNATURE_SCHEME_TK_API_ED25519";
569
+ }
570
+ // we should never hit this case
571
+ // if we do then it means we added support for a new chain but missed updating this function
572
+ throw new Error(`Unsupported provider namespace: ${provider.chainInfo.namespace}. Expected Ethereum or Solana.`);
573
+ }
574
+ /** @internal */
575
+ function findWalletProviderFromAddress(address, providers) {
576
+ for (const provider of providers) {
577
+ if (provider.connectedAddresses.includes(address)) {
578
+ return provider;
579
+ }
580
+ }
581
+ // no provider found for that address
582
+ return undefined;
583
+ }
584
+ /**
585
+ * Derives a wallet address from a given public key and chain.
586
+ *
587
+ * @param chain - "ethereum" or "solana"
588
+ * @param publicKey - The raw public key string
589
+ * @returns The derived wallet address
590
+ */
591
+ function addressFromPublicKey(chain, publicKey) {
592
+ if (chain === base.Chain.Ethereum) {
593
+ const compressedBytes = encoding.uint8ArrayFromHexString(publicKey);
594
+ const publicKeyUncompressed = encoding.uint8ArrayToHexString(crypto$1.uncompressRawPublicKey(compressedBytes, base.Curve.SECP256K1));
595
+ // drop 04 prefix
596
+ const key = publicKeyUncompressed.startsWith("04")
597
+ ? publicKeyUncompressed.slice(2)
598
+ : publicKeyUncompressed;
599
+ // hash with Keccak256 and take last 20 bytes
600
+ const hash = ethers.keccak256(encoding.uint8ArrayFromHexString(key));
601
+ return "0x" + hash.slice(-40);
602
+ }
603
+ if (chain === base.Chain.Solana) {
604
+ return bs58.encode(encoding.uint8ArrayFromHexString(publicKey));
605
+ }
606
+ throw new Error(`Unsupported chain: ${chain}`);
607
+ }
608
+ /**@internal */
609
+ function getAuthenticatorAddresses(user) {
610
+ const ethereum = [];
611
+ const solana = [];
612
+ for (const key of user.apiKeys) {
613
+ const { type, publicKey } = key.credential;
614
+ switch (type) {
615
+ case "CREDENTIAL_TYPE_API_KEY_SECP256K1":
616
+ ethereum.push(addressFromPublicKey(base.Chain.Ethereum, publicKey));
617
+ break;
618
+ case "CREDENTIAL_TYPE_API_KEY_ED25519":
619
+ solana.push(addressFromPublicKey(base.Chain.Solana, publicKey));
620
+ break;
621
+ }
622
+ }
623
+ return { ethereum, solana };
624
+ }
625
+ /**@internal */
551
626
  async function getAuthProxyConfig(authProxyConfigId, authProxyUrl) {
552
627
  const fullUrl = (authProxyUrl ?? "https://authproxy.turnkey.com") + "/v1/wallet_kit_config";
553
628
  var headers = {
@@ -572,10 +647,16 @@ async function getAuthProxyConfig(authProxyConfigId, authProxyUrl) {
572
647
  return data;
573
648
  }
574
649
  /**
650
+ * @internal
575
651
  * Executes an async function with error handling.
576
652
  *
577
653
  * @param fn The async function to execute with error handling
578
654
  * @param errorOptions Options for customizing error handling
655
+ * @param errorOptions.catchFn Optional function to execute in the catch block
656
+ * @param errorOptions.errorMessage The default error message to use if no custom message is found
657
+ * @param errorOptions.errorCode The default error code to use if no custom message is found
658
+ * @param errorOptions.customMessageByCodes Optional mapping of error codes to custom messages, if you're trying to target a specific error code and surface a custom message, use this
659
+ * @param errorOptions.customMessageByMessages Optional mapping of error messages to custom messages, if you're trying to target a specific error message and surface a custom message, use this
579
660
  * @param finallyFn Optional function to execute in the finally block
580
661
  * @returns The result of the async function or throws an error
581
662
  */
@@ -614,6 +695,14 @@ async function withTurnkeyErrorHandling(fn, catchOptions, finallyOptions) {
614
695
  await finallyFn?.();
615
696
  }
616
697
  }
698
+ /**
699
+ * Throws a TurnkeyError with a custom message if the error message matches any key in customMessageByMessages.
700
+ * If no match is found, it does nothing.
701
+ *
702
+ * @param errorMessage The error message to check against the custom messages.
703
+ * @param customMessageByMessages An object mapping error messages to custom messages and codes.
704
+ * @param error The original error that triggered this function.
705
+ */
617
706
  const throwMatchingMessage = (errorMessage, customMessageByMessages, error) => {
618
707
  if (customMessageByMessages &&
619
708
  Object.keys(customMessageByMessages).length > 0) {
@@ -624,23 +713,86 @@ const throwMatchingMessage = (errorMessage, customMessageByMessages, error) => {
624
713
  });
625
714
  }
626
715
  };
716
+ /**
717
+ * @internal
718
+ *
719
+ * Asserts that the provided key pair is a valid P-256 ECDSA key pair.
720
+ * @param pair The key pair to validate.
721
+ */
722
+ async function assertValidP256ECDSAKeyPair(pair) {
723
+ const { privateKey, publicKey } = pair;
724
+ // Check basic shape
725
+ if (!(privateKey instanceof CryptoKey) || !(publicKey instanceof CryptoKey)) {
726
+ throw new sdkTypes.TurnkeyError("Both keys must be CryptoKey instances.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
727
+ }
728
+ if (privateKey.type !== "private")
729
+ throw new sdkTypes.TurnkeyError("privateKey.type must be 'private'.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
730
+ if (publicKey.type !== "public")
731
+ throw new sdkTypes.TurnkeyError("publicKey.type must be 'public'.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
732
+ // Verify extractability and usages
733
+ if (privateKey.extractable !== false) {
734
+ throw new sdkTypes.TurnkeyError("Provided privateKey must be non-extractable.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
735
+ }
736
+ if (!privateKey.usages.includes("sign")) {
737
+ throw new sdkTypes.TurnkeyError("privateKey must have 'sign' in keyUsages.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
738
+ }
739
+ if (!publicKey.usages.includes("verify")) {
740
+ throw new sdkTypes.TurnkeyError("publicKey must have 'verify' in keyUsages.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
741
+ }
742
+ // Algorithm checks (must be ECDSA on P-256)
743
+ const pAlg = privateKey.algorithm;
744
+ const pubAlg = publicKey.algorithm;
745
+ if (pAlg.name !== "ECDSA" || pubAlg.name !== "ECDSA") {
746
+ throw new sdkTypes.TurnkeyError("Keys must be ECDSA keys.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
747
+ }
748
+ if (pAlg.namedCurve !== "P-256" || pubAlg.namedCurve !== "P-256") {
749
+ throw new sdkTypes.TurnkeyError("Keys must be on the P-256 curve.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
750
+ }
751
+ // Public key export sanity (should be uncompressed 65 bytes starting with 0x04)
752
+ const rawPub = new Uint8Array(await crypto.subtle.exportKey("raw", publicKey));
753
+ if (rawPub.length !== 65 || rawPub[0] !== 0x04) {
754
+ throw new sdkTypes.TurnkeyError("Public key must be an uncompressed P-256 point (65 bytes, leading 0x04).", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
755
+ }
756
+ // Prove the pair matches: sign→verify a test message
757
+ const msg = crypto.getRandomValues(new Uint8Array(32));
758
+ const sig = await crypto.subtle.sign({ name: "ECDSA", hash: "SHA-256" }, privateKey, msg);
759
+ const ok = await crypto.subtle.verify({ name: "ECDSA", hash: "SHA-256" }, publicKey, sig, msg);
760
+ if (!ok) {
761
+ throw new sdkTypes.TurnkeyError("publicKey does not match privateKey (verify failed).", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
762
+ }
763
+ }
764
+ function isValidPasskeyName(name) {
765
+ const nameRegex = isReactNative()
766
+ ? /^[a-zA-Z0-9 _\-:\/\.]{1,64}$/
767
+ : /^[a-zA-Z0-9 _\-:\/\.]+$/;
768
+ if (!nameRegex.test(name)) {
769
+ throw new sdkTypes.TurnkeyError("Passkey name must be 1-64 characters and only contain letters, numbers, spaces, dashes, underscores, colons, or slashes.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
770
+ }
771
+ return name;
772
+ }
627
773
 
628
774
  exports.addressFormatConfig = addressFormatConfig;
775
+ exports.addressFromPublicKey = addressFromPublicKey;
776
+ exports.assertValidP256ECDSAKeyPair = assertValidP256ECDSAKeyPair;
629
777
  exports.broadcastTransaction = broadcastTransaction;
630
778
  exports.buildSignUpBody = buildSignUpBody;
631
779
  exports.createWalletAccountFromAddressFormat = createWalletAccountFromAddressFormat;
780
+ exports.findWalletProviderFromAddress = findWalletProviderFromAddress;
632
781
  exports.generateRandomBuffer = generateRandomBuffer;
633
782
  exports.generateWalletAccountsFromAddressFormat = generateWalletAccountsFromAddressFormat;
634
783
  exports.getAuthProxyConfig = getAuthProxyConfig;
784
+ exports.getAuthenticatorAddresses = getAuthenticatorAddresses;
785
+ exports.getCurveTypeFromProvider = getCurveTypeFromProvider;
635
786
  exports.getEncodedMessage = getEncodedMessage;
636
787
  exports.getEncodingType = getEncodingType;
637
788
  exports.getHashFunction = getHashFunction;
638
789
  exports.getPublicKeyFromStampHeader = getPublicKeyFromStampHeader;
639
- exports.getWalletAccountMethods = getWalletAccountMethods;
790
+ exports.getSignatureSchemeFromProvider = getSignatureSchemeFromProvider;
640
791
  exports.googleISS = googleISS;
641
- exports.isEthereumWallet = isEthereumWallet;
792
+ exports.isEthereumProvider = isEthereumProvider;
642
793
  exports.isReactNative = isReactNative;
643
- exports.isSolanaWallet = isSolanaWallet;
794
+ exports.isSolanaProvider = isSolanaProvider;
795
+ exports.isValidPasskeyName = isValidPasskeyName;
644
796
  exports.isWalletAccountArray = isWalletAccountArray;
645
797
  exports.isWeb = isWeb;
646
798
  exports.parseSession = parseSession;
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../src/utils.ts"],"sourcesContent":[null],"names":["DEFAULT_ETHEREUM_ACCOUNTS","DEFAULT_SOLANA_ACCOUNTS","DEFAULT_COSMOS_ACCOUNTS","DEFAULT_TRON_ACCOUNTS","DEFAULT_SUI_ACCOUNTS","DEFAULT_APTOS_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2SH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2TR_ACCOUNTS","DEFAULT_SEI_ACCOUNTS","DEFAULT_XLM_ACCOUNTS","DEFAULT_DOGE_MAINNET_ACCOUNTS","DEFAULT_DOGE_TESTNET_ACCOUNTS","DEFAULT_TON_V3R2_ACCOUNTS","DEFAULT_TON_V4R2_ACCOUNTS","DEFAULT_XRP_ACCOUNTS","TurnkeyError","TurnkeyErrorCodes","Chain","SignIntent","fromDerSignature","uint8ArrayToHexString","decodeBase64urlToString","TurnkeyRequestError"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../src/utils.ts"],"sourcesContent":[null],"names":["DEFAULT_ETHEREUM_ACCOUNTS","DEFAULT_SOLANA_ACCOUNTS","DEFAULT_COSMOS_ACCOUNTS","DEFAULT_TRON_ACCOUNTS","DEFAULT_SUI_ACCOUNTS","DEFAULT_APTOS_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_MAINNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_TESTNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2SH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_SIGNET_P2TR_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2PKH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2SH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2WPKH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2WSH_ACCOUNTS","DEFAULT_BITCOIN_REGTEST_P2TR_ACCOUNTS","DEFAULT_SEI_ACCOUNTS","DEFAULT_XLM_ACCOUNTS","DEFAULT_DOGE_MAINNET_ACCOUNTS","DEFAULT_DOGE_TESTNET_ACCOUNTS","DEFAULT_TON_V3R2_ACCOUNTS","DEFAULT_TON_V4R2_ACCOUNTS","DEFAULT_XRP_ACCOUNTS","TurnkeyError","TurnkeyErrorCodes","fromDerSignature","uint8ArrayToHexString","decodeBase64urlToString","Chain","uint8ArrayFromHexString","uncompressRawPublicKey","Curve","keccak256","TurnkeyRequestError"],"mappings":"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"}