@reown/appkit-common-react-native 0.0.0-feat-onramp-20250722205908 → 0.0.0-feat-coinbase-20250723173858

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 (74) hide show
  1. package/lib/commonjs/adapters/BlockchainAdapter.js +81 -0
  2. package/lib/commonjs/adapters/BlockchainAdapter.js.map +1 -0
  3. package/lib/commonjs/adapters/EvmAdapter.js +208 -0
  4. package/lib/commonjs/adapters/EvmAdapter.js.map +1 -0
  5. package/lib/commonjs/adapters/SolanaBaseAdapter.js +10 -0
  6. package/lib/commonjs/adapters/SolanaBaseAdapter.js.map +1 -0
  7. package/lib/commonjs/index.js +62 -1
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/networks/bitcoin.js +40 -0
  10. package/lib/commonjs/networks/bitcoin.js.map +1 -0
  11. package/lib/commonjs/networks/solana.js +78 -0
  12. package/lib/commonjs/networks/solana.js.map +1 -0
  13. package/lib/commonjs/utils/ConstantsUtil.js +13 -3
  14. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
  15. package/lib/commonjs/utils/NumberUtil.js +52 -11
  16. package/lib/commonjs/utils/NumberUtil.js.map +1 -1
  17. package/lib/commonjs/utils/PresetsUtil.js +35 -10
  18. package/lib/commonjs/utils/PresetsUtil.js.map +1 -1
  19. package/lib/commonjs/utils/TypeUtil.js +42 -0
  20. package/lib/commonjs/utils/TypeUtil.js.map +1 -1
  21. package/lib/module/adapters/BlockchainAdapter.js +74 -0
  22. package/lib/module/adapters/BlockchainAdapter.js.map +1 -0
  23. package/lib/module/adapters/EvmAdapter.js +202 -0
  24. package/lib/module/adapters/EvmAdapter.js.map +1 -0
  25. package/lib/module/adapters/SolanaBaseAdapter.js +3 -0
  26. package/lib/module/adapters/SolanaBaseAdapter.js.map +1 -0
  27. package/lib/module/index.js +5 -0
  28. package/lib/module/index.js.map +1 -1
  29. package/lib/module/networks/bitcoin.js +34 -0
  30. package/lib/module/networks/bitcoin.js.map +1 -0
  31. package/lib/module/networks/solana.js +72 -0
  32. package/lib/module/networks/solana.js.map +1 -0
  33. package/lib/module/utils/ConstantsUtil.js +13 -3
  34. package/lib/module/utils/ConstantsUtil.js.map +1 -1
  35. package/lib/module/utils/NumberUtil.js +52 -11
  36. package/lib/module/utils/NumberUtil.js.map +1 -1
  37. package/lib/module/utils/PresetsUtil.js +35 -10
  38. package/lib/module/utils/PresetsUtil.js.map +1 -1
  39. package/lib/module/utils/TypeUtil.js +36 -0
  40. package/lib/module/utils/TypeUtil.js.map +1 -1
  41. package/lib/typescript/adapters/BlockchainAdapter.d.ts +25 -0
  42. package/lib/typescript/adapters/BlockchainAdapter.d.ts.map +1 -0
  43. package/lib/typescript/adapters/EvmAdapter.d.ts +27 -0
  44. package/lib/typescript/adapters/EvmAdapter.d.ts.map +1 -0
  45. package/lib/typescript/adapters/SolanaBaseAdapter.d.ts +6 -0
  46. package/lib/typescript/adapters/SolanaBaseAdapter.d.ts.map +1 -0
  47. package/lib/typescript/adapters/__tests__/EvmAdapter.test.d.ts +2 -0
  48. package/lib/typescript/adapters/__tests__/EvmAdapter.test.d.ts.map +1 -0
  49. package/lib/typescript/index.d.ts +5 -0
  50. package/lib/typescript/index.d.ts.map +1 -1
  51. package/lib/typescript/networks/bitcoin.d.ts +4 -0
  52. package/lib/typescript/networks/bitcoin.d.ts.map +1 -0
  53. package/lib/typescript/networks/solana.d.ts +5 -0
  54. package/lib/typescript/networks/solana.d.ts.map +1 -0
  55. package/lib/typescript/utils/ConstantsUtil.d.ts +10 -1
  56. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
  57. package/lib/typescript/utils/NumberUtil.d.ts +39 -11
  58. package/lib/typescript/utils/NumberUtil.d.ts.map +1 -1
  59. package/lib/typescript/utils/PresetsUtil.d.ts +1 -3
  60. package/lib/typescript/utils/PresetsUtil.d.ts.map +1 -1
  61. package/lib/typescript/utils/TypeUtil.d.ts +296 -12
  62. package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
  63. package/package.json +2 -2
  64. package/src/adapters/BlockchainAdapter.ts +107 -0
  65. package/src/adapters/EvmAdapter.ts +260 -0
  66. package/src/adapters/SolanaBaseAdapter.ts +6 -0
  67. package/src/adapters/__tests__/EvmAdapter.test.ts +126 -0
  68. package/src/index.ts +5 -0
  69. package/src/networks/bitcoin.ts +32 -0
  70. package/src/networks/solana.ts +44 -0
  71. package/src/utils/ConstantsUtil.ts +14 -3
  72. package/src/utils/NumberUtil.ts +54 -11
  73. package/src/utils/PresetsUtil.ts +37 -12
  74. package/src/utils/TypeUtil.ts +379 -14
@@ -8,6 +8,12 @@ var BigNumber = _interopRequireWildcard(require("bignumber.js"));
8
8
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
9
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
10
  const NumberUtil = exports.NumberUtil = {
11
+ /**
12
+ * Creates a BigNumber instance from a given value.
13
+ * If the value is a string, commas are removed before conversion.
14
+ * @param value - The input value (string, number, or BigNumber) to convert to a BigNumber.
15
+ * @returns A BigNumber instance.
16
+ */
11
17
  bigNumber(value) {
12
18
  if (typeof value === 'string') {
13
19
  return new BigNumber.BigNumber(value.replace(/,/g, ''));
@@ -15,10 +21,11 @@ const NumberUtil = exports.NumberUtil = {
15
21
  return new BigNumber.BigNumber(value);
16
22
  },
17
23
  /**
18
- * Multiply two numbers represented as strings with BigNumber to handle decimals correctly
19
- * @param a string
20
- * @param b string
21
- * @returns
24
+ * Multiplies two numbers using BigNumber for precision, especially with decimals.
25
+ * Handles undefined inputs by returning BigNumber(0).
26
+ * @param a - The first multiplicand (string, number, or BigNumber). Commas are removed if it's a string.
27
+ * @param b - The second multiplicand (string, number, or BigNumber). Commas are removed if it's a string.
28
+ * @returns The product as a BigNumber instance, or BigNumber(0) if either input is undefined.
22
29
  */
23
30
  multiply(a, b) {
24
31
  if (a === undefined || b === undefined) {
@@ -28,19 +35,32 @@ const NumberUtil = exports.NumberUtil = {
28
35
  const bBigNumber = new BigNumber.BigNumber(typeof b === 'string' ? b.replace(/,/gu, '') : b);
29
36
  return aBigNumber.multipliedBy(bBigNumber);
30
37
  },
38
+ /**
39
+ * Rounds a number to a specified number of decimal places if its string representation meets a certain length threshold.
40
+ * @param number - The number to potentially round.
41
+ * @param threshold - The minimum string length of the number to trigger rounding.
42
+ * @param fixed - The number of decimal places to round to.
43
+ * @returns The rounded number (as a string if rounded, otherwise the original number) or the original number.
44
+ */
31
45
  roundNumber(number, threshold, fixed) {
32
46
  const roundedNumber = number.toString().length >= threshold ? Number(number).toFixed(fixed) : number;
33
47
  return roundedNumber;
34
48
  },
49
+ /**
50
+ * Calculates the next multiple of ten greater than or equal to the given amount.
51
+ * Defaults to 10 if no amount is provided or if the calculated multiple is less than 10.
52
+ * @param amount - The number for which to find the next multiple of ten. Optional.
53
+ * @returns The next multiple of ten, at least 10.
54
+ */
35
55
  nextMultipleOfTen(amount) {
36
56
  if (!amount) return 10;
37
57
  return Math.max(Math.ceil(amount / 10) * 10, 10);
38
58
  },
39
59
  /**
40
- * Format the given number or string to human readable numbers with the given number of decimals
41
- * @param value - The value to format. It could be a number or string. If it's a string, it will be parsed to a float then formatted.
42
- * @param decimals - number of decimals after dot
43
- * @returns
60
+ * Formats a number or string to a human-readable string with a specified number of decimal places, using US locale formatting.
61
+ * @param value - The value to format (string, number, or undefined). If undefined, returns '0.00'.
62
+ * @param decimals - The number of decimal places to display. Defaults to 2.
63
+ * @returns A locale-formatted string representation of the number.
44
64
  */
45
65
  formatNumberToLocalString(value, decimals = 2) {
46
66
  if (value === undefined) {
@@ -58,9 +78,9 @@ const NumberUtil = exports.NumberUtil = {
58
78
  });
59
79
  },
60
80
  /**
61
- * Parse a formatted local string back to a number
62
- * @param value - The formatted string to parse
63
- * @returns
81
+ * Parses a locale-formatted numeric string (e.g., with commas) back into a number.
82
+ * @param value - The formatted string to parse. If undefined, returns 0.
83
+ * @returns The parsed number, or 0 if the input is undefined.
64
84
  */
65
85
  parseLocalStringToNumber(value) {
66
86
  if (value === undefined) {
@@ -69,6 +89,27 @@ const NumberUtil = exports.NumberUtil = {
69
89
 
70
90
  // Remove any commas used as thousand separators and parse the float
71
91
  return parseFloat(value.replace(/,/gu, ''));
92
+ },
93
+ /**
94
+ * Converts a numeric value (BigInt, number, or string representation of a number) to a 0x-prefixed hexadecimal string.
95
+ * This is often required for Ethereum RPC parameters like value, gas, gasPrice.
96
+ * @param value - The value to convert. Can be BigInt, number, or a string (decimal or hex).
97
+ * @returns A 0x-prefixed hexadecimal string, or undefined if the input is undefined or null.
98
+ * @throws Error if the value cannot be converted to BigInt.
99
+ */
100
+ convertNumericToHexString: value => {
101
+ if (value === undefined || value === null) {
102
+ return undefined;
103
+ }
104
+ try {
105
+ // This handles BigInt, number, or string representation of a number (decimal or hex)
106
+ const bigIntValue = BigInt(value);
107
+ // Ethereum RPC spec requires "0x0" for zero, and other values to be 0x-prefixed hex.
108
+
109
+ return '0x' + bigIntValue.toString(16);
110
+ } catch (error) {
111
+ throw new Error(`NumberUtil: Invalid parameter, cannot convert to hex: ${value}`);
112
+ }
72
113
  }
73
114
  };
74
115
  //# sourceMappingURL=NumberUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BigNumber","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","NumberUtil","exports","bigNumber","value","replace","multiply","b","undefined","aBigNumber","bBigNumber","multipliedBy","roundNumber","number","threshold","fixed","roundedNumber","toString","length","Number","toFixed","nextMultipleOfTen","amount","Math","max","ceil","formatNumberToLocalString","decimals","toLocaleString","maximumFractionDigits","minimumFractionDigits","parseFloat","parseLocalStringToNumber"],"sourceRoot":"../../../src","sources":["utils/NumberUtil.ts"],"mappings":"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"}
1
+ {"version":3,"names":["BigNumber","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","NumberUtil","exports","bigNumber","value","replace","multiply","b","undefined","aBigNumber","bBigNumber","multipliedBy","roundNumber","number","threshold","fixed","roundedNumber","toString","length","Number","toFixed","nextMultipleOfTen","amount","Math","max","ceil","formatNumberToLocalString","decimals","toLocaleString","maximumFractionDigits","minimumFractionDigits","parseFloat","parseLocalStringToNumber","convertNumericToHexString","bigIntValue","BigInt","error","Error"],"sourceRoot":"../../../src","sources":["utils/NumberUtil.ts"],"mappings":"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"}
@@ -9,11 +9,11 @@ const PresetsUtil = exports.PresetsUtil = {
9
9
  ConnectorExplorerIds: {
10
10
  [_ConstantsUtil.ConstantsUtil.COINBASE_CONNECTOR_ID]: 'fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa'
11
11
  },
12
- EIP155NetworkImageIds: {
12
+ NetworkImageIds: {
13
13
  // Ethereum
14
14
  1: 'ba0ba0cd-17c6-4806-ad93-f9d174f17900',
15
15
  // Arbitrum
16
- 42161: '600a9a04-c1b9-42ca-6785-9b4b6ff85200',
16
+ 42161: '3bff954d-5cb0-47a0-9a23-d20192e74600',
17
17
  // Avalanche
18
18
  43114: '30c46e53-e989-45fb-4549-be3bd4eb3b00',
19
19
  // Binance Smart Chain
@@ -24,6 +24,20 @@ const PresetsUtil = exports.PresetsUtil = {
24
24
  10: 'ab9c186a-c52f-464b-2906-ca59d760a400',
25
25
  // Polygon
26
26
  137: '41d04d42-da3b-4453-8506-668cc0727900',
27
+ // Mantle
28
+ 5000: 'e86fae9b-b770-4eea-e520-150e12c81100',
29
+ // Hedera Mainnet
30
+ 295: '6a97d510-cac8-4e58-c7ce-e8681b044c00',
31
+ // Sepolia
32
+ 11_155_111: 'e909ea0a-f92a-4512-c8fc-748044ea6800',
33
+ // Base Sepolia
34
+ 84532: 'a18a7ecd-e307-4360-4746-283182228e00',
35
+ // Unichain Sepolia
36
+ 1301: '4eeea7ef-0014-4649-5d1d-07271a80f600',
37
+ // Unichain Mainnet
38
+ 130: '2257980a-3463-48c6-cbac-a42d2a956e00',
39
+ // Monad Testnet
40
+ 10_143: '0a728e83-bacb-46db-7844-948f05434900',
27
41
  // Gnosis
28
42
  100: '02b53f6a-e3d4-479e-1cb4-21178987d100',
29
43
  // EVMos
@@ -47,22 +61,33 @@ const PresetsUtil = exports.PresetsUtil = {
47
61
  // Base
48
62
  8453: '7289c336-3981-4081-c5f4-efc26ac64a00',
49
63
  // Aurora
50
- 1313161554: '3ff73439-a619-4894-9262-4470c773a100'
64
+ 1313161554: '3ff73439-a619-4894-9262-4470c773a100',
65
+ // Ronin Mainnet
66
+ 2020: 'b8101fc0-9c19-4b6f-ec65-f6dfff106e00',
67
+ // Saigon Testnet (a.k.a. Ronin)
68
+ 2021: 'b8101fc0-9c19-4b6f-ec65-f6dfff106e00',
69
+ // Berachain Mainnet
70
+ 80094: 'e329c2c9-59b0-4a02-83e4-212ff3779900',
71
+ // Abstract Mainnet
72
+ 2741: 'fc2427d1-5af9-4a9c-8da5-6f94627cd900',
73
+ // Solana networks
74
+ /// Mainnet
75
+ '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp': 'a1b58899-f671-4276-6a5e-56ca5bd59700',
76
+ /// Testnet
77
+ '4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z': 'a1b58899-f671-4276-6a5e-56ca5bd59700',
78
+ // Bitcoin
79
+ '000000000019d6689c085ae165831e93': '0b4838db-0161-4ffe-022d-532bf03dba00',
80
+ // Bitcoin Testnet
81
+ '000000000933ea01ad0ee984209779ba': '39354064-d79b-420b-065d-f980c4b78200'
51
82
  },
52
83
  ConnectorNamesMap: {
53
84
  [_ConstantsUtil.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID]: 'WalletConnect',
54
- [_ConstantsUtil.ConstantsUtil.COINBASE_CONNECTOR_ID]: 'Coinbase Wallet',
55
- [_ConstantsUtil.ConstantsUtil.AUTH_CONNECTOR_ID]: 'AppKit Universal Wallet'
85
+ [_ConstantsUtil.ConstantsUtil.COINBASE_CONNECTOR_ID]: 'Coinbase Wallet'
56
86
  },
57
87
  ConnectorImageIds: {
58
88
  [_ConstantsUtil.ConstantsUtil.COINBASE_CONNECTOR_ID]: '0c2840c3-5b04-4c44-9661-fbd4b49e1800',
59
89
  [_ConstantsUtil.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID]: 'ef1a1fcf-7fe8-4d69-bd6d-fda1345b4400'
60
90
  },
61
- ConnectorTypesMap: {
62
- [_ConstantsUtil.ConstantsUtil.WALLET_CONNECT_CONNECTOR_ID]: 'WALLET_CONNECT',
63
- [_ConstantsUtil.ConstantsUtil.COINBASE_CONNECTOR_ID]: 'COINBASE',
64
- [_ConstantsUtil.ConstantsUtil.AUTH_CONNECTOR_ID]: 'AUTH'
65
- },
66
91
  RpcChainIds: [
67
92
  // Ethereum
68
93
  1,
@@ -1 +1 @@
1
- {"version":3,"names":["_ConstantsUtil","require","PresetsUtil","exports","ConnectorExplorerIds","ConstantsUtil","COINBASE_CONNECTOR_ID","EIP155NetworkImageIds","ConnectorNamesMap","WALLET_CONNECT_CONNECTOR_ID","AUTH_CONNECTOR_ID","ConnectorImageIds","ConnectorTypesMap","RpcChainIds"],"sourceRoot":"../../../src","sources":["utils/PresetsUtil.ts"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG;EACzBE,oBAAoB,EAAE;IACpB,CAACC,4BAAa,CAACC,qBAAqB,GAClC;EACJ,CAA2B;EAE3BC,qBAAqB,EAAE;IACrB;IACA,CAAC,EAAE,sCAAsC;IACzC;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,EAAE,EAAE,sCAAsC;IAC1C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,EAAE,EAAE,sCAAsC;IAC1C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,OAAO,EAAE,sCAAsC;IAC/C;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,UAAU,EAAE;EACd,CAA2B;EAE3BC,iBAAiB,EAAE;IACjB,CAACH,4BAAa,CAACI,2BAA2B,GAAG,eAAe;IAC5D,CAACJ,4BAAa,CAACC,qBAAqB,GAAG,iBAAiB;IACxD,CAACD,4BAAa,CAACK,iBAAiB,GAAG;EACrC,CAA2B;EAE3BC,iBAAiB,EAAE;IACjB,CAACN,4BAAa,CAACC,qBAAqB,GAAG,sCAAsC;IAC7E,CAACD,4BAAa,CAACI,2BAA2B,GAAG;EAC/C,CAA2B;EAE3BG,iBAAiB,EAAE;IACjB,CAACP,4BAAa,CAACI,2BAA2B,GAAG,gBAAgB;IAC7D,CAACJ,4BAAa,CAACC,qBAAqB,GAAG,UAAU;IACjD,CAACD,4BAAa,CAACK,iBAAiB,GAAG;EACrC,CAAkC;EAElCG,WAAW,EAAE;EACX;EACA,CAAC;EACD;EACA,CAAC;EACD;EACA,QAAQ;EACR;EACA,EAAE;EACF;EACA,GAAG;EACH;EACA,KAAK;EACL;EACA,MAAM;EACN;EACA,GAAG;EACH;EACA,KAAK;EACL;EACA,KAAK;EACL;EACA,UAAU;EACV;EACA,UAAU;EACV;EACA,EAAE;EACF;EACA,EAAE;EACF;EACA,KAAK;EACL;EACA,KAAK;EACL;EACA,GAAG;EACH;EACA,IAAI;EACJ;EACA,KAAK;EACL;EACA,OAAO;EACP;EACA,GAAG;EACH;EACA,GAAG;EACH;EACA,GAAG;AAEP,CAAC"}
1
+ {"version":3,"names":["_ConstantsUtil","require","PresetsUtil","exports","ConnectorExplorerIds","ConstantsUtil","COINBASE_CONNECTOR_ID","NetworkImageIds","ConnectorNamesMap","WALLET_CONNECT_CONNECTOR_ID","ConnectorImageIds","RpcChainIds"],"sourceRoot":"../../../src","sources":["utils/PresetsUtil.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG;EACzBE,oBAAoB,EAAE;IACpB,CAACC,4BAAa,CAACC,qBAAqB,GAClC;EACJ,CAA2B;EAE3BC,eAAe,EAAE;IACf;IACA,CAAC,EAAE,sCAAsC;IACzC;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,EAAE,EAAE,sCAAsC;IAC1C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,EAAE,EAAE,sCAAsC;IAC1C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,UAAU,EAAE,sCAAsC;IAClD;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,MAAM,EAAE,sCAAsC;IAC9C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,GAAG,EAAE,sCAAsC;IAC3C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,OAAO,EAAE,sCAAsC;IAC/C;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,UAAU,EAAE,sCAAsC;IAClD;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,IAAI,EAAE,sCAAsC;IAC5C;IACA,KAAK,EAAE,sCAAsC;IAC7C;IACA,IAAI,EAAE,sCAAsC;IAE5C;IACA;IACA,kCAAkC,EAAE,sCAAsC;IAC1E;IACA,kCAAkC,EAAE,sCAAsC;IAE1E;IACA,kCAAkC,EAAE,sCAAsC;IAC1E;IACA,kCAAkC,EAAE;EACtC,CAA2B;EAE3BC,iBAAiB,EAAE;IACjB,CAACH,4BAAa,CAACI,2BAA2B,GAAG,eAAe;IAC5D,CAACJ,4BAAa,CAACC,qBAAqB,GAAG;EACzC,CAA2B;EAE3BI,iBAAiB,EAAE;IACjB,CAACL,4BAAa,CAACC,qBAAqB,GAAG,sCAAsC;IAC7E,CAACD,4BAAa,CAACI,2BAA2B,GAAG;EAC/C,CAA2B;EAE3BE,WAAW,EAAE;EACX;EACA,CAAC;EACD;EACA,CAAC;EACD;EACA,QAAQ;EACR;EACA,EAAE;EACF;EACA,GAAG;EACH;EACA,KAAK;EACL;EACA,MAAM;EACN;EACA,GAAG;EACH;EACA,KAAK;EACL;EACA,KAAK;EACL;EACA,UAAU;EACV;EACA,UAAU;EACV;EACA,EAAE;EACF;EACA,EAAE;EACF;EACA,KAAK;EACL;EACA,KAAK;EACL;EACA,GAAG;EACH;EACA,IAAI;EACJ;EACA,KAAK;EACL;EACA,OAAO;EACP;EACA,GAAG;EACH;EACA,GAAG;EACH;EACA,GAAG;AAEP,CAAC"}
@@ -1,2 +1,44 @@
1
1
  "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WalletConnector = void 0;
7
+ var _events = require("events");
8
+ //********** Adapter Event Payloads **********//
9
+
10
+ //********** Adapter Event Map **********//
11
+
12
+ //********** Connector Types **********//
13
+
14
+ class WalletConnector extends _events.EventEmitter {
15
+ constructor({
16
+ type
17
+ }) {
18
+ super();
19
+ this.type = type;
20
+ }
21
+ async init(ops) {
22
+ this.storage = ops.storage;
23
+ this.metadata = ops.metadata;
24
+ }
25
+ setProvider(provider) {
26
+ this.provider = provider;
27
+ }
28
+ async disconnect() {
29
+ await this.getProvider().disconnect();
30
+ this.namespaces = undefined;
31
+ this.wallet = undefined;
32
+ this.properties = undefined;
33
+ }
34
+ }
35
+
36
+ //********** Provider Types **********//
37
+
38
+ //********** Others **********//
39
+
40
+ //********** SIWE Types **********//
41
+
42
+ // Signed Cacao (CAIP-74)
43
+ exports.WalletConnector = WalletConnector;
2
44
  //# sourceMappingURL=TypeUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/TypeUtil.ts"],"mappings":""}
1
+ {"version":3,"names":["_events","require","WalletConnector","EventEmitter","constructor","type","init","ops","storage","metadata","setProvider","provider","disconnect","getProvider","namespaces","undefined","wallet","properties","exports"],"sourceRoot":"../../../src","sources":["utils/TypeUtil.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAkLA;;AAgBA;;AAgBA;;AA8BO,MAAeC,eAAe,SAASC,oBAAY,CAAC;EASzDC,WAAWA,CAAC;IAAEC;EAA8B,CAAC,EAAE;IAC7C,KAAK,CAAC,CAAC;IACP,IAAI,CAACA,IAAI,GAAGA,IAAI;EAClB;EAEA,MAAaC,IAAIA,CAACC,GAAyB,EAAE;IAC3C,IAAI,CAACC,OAAO,GAAGD,GAAG,CAACC,OAAO;IAC1B,IAAI,CAACC,QAAQ,GAAGF,GAAG,CAACE,QAAQ;EAC9B;EAEOC,WAAWA,CAACC,QAAkB,EAAE;IACrC,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EAC1B;EAEA,MAAaC,UAAUA,CAAA,EAAG;IACxB,MAAM,IAAI,CAACC,WAAW,CAAC,CAAC,CAACD,UAAU,CAAC,CAAC;IACrC,IAAI,CAACE,UAAU,GAAGC,SAAS;IAC3B,IAAI,CAACC,MAAM,GAAGD,SAAS;IACvB,IAAI,CAACE,UAAU,GAAGF,SAAS;EAC7B;AAUF;;AAEA;;AAqBA;;AA+DA;;AA6BA;AAAAG,OAAA,CAAAhB,eAAA,GAAAA,eAAA"}
@@ -0,0 +1,74 @@
1
+ import { EventEmitter } from 'events';
2
+ export class BlockchainAdapter extends EventEmitter {
3
+ // Typed emit method
4
+ emit(event, payload) {
5
+ return super.emit(event, payload);
6
+ }
7
+ constructor({
8
+ projectId,
9
+ supportedNamespace,
10
+ adapterType
11
+ }) {
12
+ super();
13
+ this.projectId = projectId;
14
+ this.supportedNamespace = supportedNamespace;
15
+ this.adapterType = adapterType;
16
+ }
17
+ setConnector(connector) {
18
+ this.connector = connector;
19
+ this.subscribeToEvents();
20
+ }
21
+ removeConnector() {
22
+ this.connector = undefined;
23
+ }
24
+ getProvider() {
25
+ if (!this.connector) throw new Error('No active connector');
26
+ return this.connector.getProvider();
27
+ }
28
+ subscribeToEvents() {
29
+ const provider = this.connector?.getProvider();
30
+ if (!provider) return;
31
+ provider.on('chainChanged', this.onChainChanged.bind(this));
32
+ provider.on('accountsChanged', this.onAccountsChanged.bind(this));
33
+ provider.on('disconnect', this.onDisconnect.bind(this));
34
+ }
35
+ onChainChanged(chainId) {
36
+ const _chains = this.getAccounts()?.map(account => account.split(':')[1]);
37
+ const shouldEmit = _chains?.some(chain => chain === chainId);
38
+ if (shouldEmit) {
39
+ this.emit('chainChanged', {
40
+ chainId
41
+ });
42
+ }
43
+ }
44
+ onAccountsChanged(accounts) {
45
+ const _accounts = this.getAccounts();
46
+ const shouldEmit = _accounts?.some(account => {
47
+ const accountAddress = account.split(':')[2];
48
+ return accountAddress !== undefined && accounts.includes(accountAddress);
49
+ });
50
+ if (shouldEmit) {
51
+ this.emit('accountsChanged', {
52
+ accounts
53
+ });
54
+ }
55
+ }
56
+ onDisconnect() {
57
+ this.emit('disconnect', {
58
+ namespace: this.getSupportedNamespace()
59
+ });
60
+ const provider = this.connector?.getProvider();
61
+ if (provider) {
62
+ provider.off('chainChanged', this.onChainChanged.bind(this));
63
+ provider.off('accountsChanged', this.onAccountsChanged.bind(this));
64
+ provider.off('disconnect', this.onDisconnect.bind(this));
65
+ }
66
+ this.connector = undefined;
67
+ }
68
+ parseUnits(value, decimals) {
69
+ const [whole, fraction = ''] = value.split('.');
70
+ const paddedFraction = (fraction + '0'.repeat(decimals)).slice(0, decimals);
71
+ return BigInt(whole + paddedFraction);
72
+ }
73
+ }
74
+ //# sourceMappingURL=BlockchainAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["EventEmitter","BlockchainAdapter","emit","event","payload","constructor","projectId","supportedNamespace","adapterType","setConnector","connector","subscribeToEvents","removeConnector","undefined","getProvider","Error","provider","on","onChainChanged","bind","onAccountsChanged","onDisconnect","chainId","_chains","getAccounts","map","account","split","shouldEmit","some","chain","accounts","_accounts","accountAddress","includes","namespace","getSupportedNamespace","off","parseUnits","value","decimals","whole","fraction","paddedFraction","repeat","slice","BigInt"],"sourceRoot":"../../../src","sources":["adapters/BlockchainAdapter.ts"],"mappings":"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"}
@@ -0,0 +1,202 @@
1
+ import { BlockchainAdapter } from './BlockchainAdapter';
2
+ import { NumberUtil } from '../utils/NumberUtil';
3
+
4
+ // Type definitions for writeContract
5
+
6
+ // Simple ABI encoder for ERC20 functions
7
+ function encodeERC20Function(method, params) {
8
+ const functionSelectors = {
9
+ transfer: '0xa9059cbb',
10
+ // transfer(address,uint256)
11
+ transferFrom: '0x23b872dd',
12
+ // transferFrom(address,address,uint256)
13
+ approve: '0x095ea7b3' // approve(address,uint256)
14
+ };
15
+
16
+ const selector = functionSelectors[method];
17
+ if (!selector) {
18
+ throw new Error(`EVMAdapter:encodeERC20Function - unsupported method: ${method}`);
19
+ }
20
+ let encodedParams = '';
21
+ switch (method) {
22
+ case 'transfer':
23
+ if (params.length !== 2) throw new Error('transfer requires 2 parameters: to, amount');
24
+ const [to, amount] = params;
25
+ encodedParams = to.toLowerCase().slice(2).padStart(64, '0') + amount.toString(16).padStart(64, '0');
26
+ break;
27
+ case 'transferFrom':
28
+ if (params.length !== 3) throw new Error('transferFrom requires 3 parameters: from, to, amount');
29
+ const [from, toTransferFrom, amountTransferFrom] = params;
30
+ encodedParams = from.toLowerCase().slice(2).padStart(64, '0') + toTransferFrom.toLowerCase().slice(2).padStart(64, '0') + amountTransferFrom.toString(16).padStart(64, '0');
31
+ break;
32
+ case 'approve':
33
+ if (params.length !== 2) throw new Error('approve requires 2 parameters: spender, amount');
34
+ const [spender, amountApprove] = params;
35
+ encodedParams = spender.toLowerCase().slice(2).padStart(64, '0') + amountApprove.toString(16).padStart(64, '0');
36
+ break;
37
+ default:
38
+ throw new Error(`EVMAdapter:encodeERC20Function - unsupported method: ${method}`);
39
+ }
40
+ return selector + encodedParams;
41
+ }
42
+ export class EVMAdapter extends BlockchainAdapter {
43
+ subscribeToEvents() {
44
+ super.subscribeToEvents();
45
+ const provider = this.getProvider();
46
+ if (!provider) return;
47
+ provider.on('reown_updateEmail', info => {
48
+ // this.emit('updateEmail', email);
49
+ //TODO: check this
50
+ //eslint-disable-next-line no-console
51
+ console.log('reown_updateEmail', info);
52
+ });
53
+ }
54
+ async signMessage(address, message, chain) {
55
+ const provider = this.getProvider();
56
+ if (!provider) {
57
+ throw new Error('EVMAdapter:signMessage - provider is undefined');
58
+ }
59
+ const signature = await provider.request({
60
+ method: 'personal_sign',
61
+ params: [message, address]
62
+ }, `eip155:${chain}`);
63
+ return signature;
64
+ }
65
+ async estimateGas({
66
+ address,
67
+ to,
68
+ data,
69
+ chainNamespace
70
+ }) {
71
+ const provider = this.getProvider();
72
+ if (!provider) {
73
+ throw new Error('EVMAdapter:estimateGas - provider is undefined');
74
+ }
75
+ if (!address) {
76
+ throw new Error('EVMAdapter:estimateGas - from address is undefined');
77
+ }
78
+ if (chainNamespace && chainNamespace !== 'eip155') {
79
+ throw new Error('EVMAdapter:estimateGas - chainNamespace is not eip155');
80
+ }
81
+ try {
82
+ const txParams = {
83
+ from: address,
84
+ to,
85
+ data,
86
+ type: '0x0' // optional, legacy type
87
+ };
88
+
89
+ const estimatedGasHex = await provider.request({
90
+ method: 'eth_estimateGas',
91
+ params: [txParams]
92
+ });
93
+ return BigInt(estimatedGasHex);
94
+ } catch (error) {
95
+ throw new Error('EVMAdapter:estimateGas - eth_estimateGas RPC failed');
96
+ }
97
+ }
98
+ async sendTransaction(data) {
99
+ const {
100
+ address,
101
+ network
102
+ } = data || {};
103
+ if (!this.getProvider()) {
104
+ throw new Error('EVMAdapter:sendTransaction - provider is undefined');
105
+ }
106
+ if (!address) {
107
+ throw new Error('EVMAdapter:sendTransaction - address is undefined');
108
+ }
109
+ if (!network) {
110
+ throw new Error('EVMAdapter:sendTransaction - network is undefined');
111
+ }
112
+ const txParams = {
113
+ from: address,
114
+ to: data.to,
115
+ value: NumberUtil.convertNumericToHexString(data.value),
116
+ data: data.data,
117
+ // hex-encoded bytecode
118
+ type: '0x0' // optional: legacy transaction type
119
+ };
120
+
121
+ const txHash = await this.getProvider().request({
122
+ method: 'eth_sendTransaction',
123
+ params: [txParams]
124
+ }, network.caipNetworkId);
125
+ return txHash;
126
+ }
127
+ async writeContract(data) {
128
+ const {
129
+ tokenAddress,
130
+ receiverAddress,
131
+ tokenAmount,
132
+ method,
133
+ fromAddress,
134
+ spenderAddress,
135
+ network
136
+ } = data;
137
+ if (!this.getProvider()) {
138
+ throw new Error('EVMAdapter:writeContract - provider is undefined');
139
+ }
140
+ if (!fromAddress) {
141
+ throw new Error('EVMAdapter:writeContract - fromAddress is undefined');
142
+ }
143
+ if (!tokenAddress) {
144
+ throw new Error('EVMAdapter:writeContract - tokenAddress is undefined');
145
+ }
146
+ if (!tokenAmount) {
147
+ throw new Error('EVMAdapter:writeContract - tokenAmount is undefined');
148
+ }
149
+ if (!method) {
150
+ throw new Error('EVMAdapter:writeContract - method is undefined');
151
+ }
152
+
153
+ // Validate method-specific parameters
154
+ if (method === 'transfer' && !receiverAddress) {
155
+ throw new Error('EVMAdapter:writeContract - receiverAddress is required for transfer method');
156
+ }
157
+ if ((method === 'transferFrom' || method === 'approve') && !spenderAddress) {
158
+ throw new Error(`EVMAdapter:writeContract - spenderAddress is required for ${method} method`);
159
+ }
160
+
161
+ // Encode the function call data based on method
162
+ let encodedData;
163
+ switch (method) {
164
+ case 'transfer':
165
+ encodedData = encodeERC20Function('transfer', [receiverAddress, tokenAmount]);
166
+ break;
167
+ case 'transferFrom':
168
+ encodedData = encodeERC20Function('transferFrom', [fromAddress, receiverAddress, tokenAmount]);
169
+ break;
170
+ case 'approve':
171
+ encodedData = encodeERC20Function('approve', [spenderAddress, tokenAmount]);
172
+ break;
173
+ default:
174
+ throw new Error(`EVMAdapter:writeContract - method '${method}' is not supported`);
175
+ }
176
+
177
+ // Create transaction parameters
178
+ const txParams = {
179
+ from: fromAddress,
180
+ to: tokenAddress,
181
+ data: encodedData,
182
+ value: '0x0',
183
+ // No ETH value for token operations
184
+ type: '0x0' // legacy transaction type
185
+ };
186
+
187
+ try {
188
+ // Send the transaction
189
+ const txHash = await this.getProvider().request({
190
+ method: 'eth_sendTransaction',
191
+ params: [txParams]
192
+ }, network.caipNetworkId);
193
+ return txHash;
194
+ } catch (error) {
195
+ if (error instanceof Error) {
196
+ throw new Error(`EVMAdapter:writeContract - ${error.message}`);
197
+ }
198
+ throw new Error('EVMAdapter:writeContract - unknown error occurred');
199
+ }
200
+ }
201
+ }
202
+ //# sourceMappingURL=EvmAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BlockchainAdapter","NumberUtil","encodeERC20Function","method","params","functionSelectors","transfer","transferFrom","approve","selector","Error","encodedParams","length","to","amount","toLowerCase","slice","padStart","toString","from","toTransferFrom","amountTransferFrom","spender","amountApprove","EVMAdapter","subscribeToEvents","provider","getProvider","on","info","console","log","signMessage","address","message","chain","signature","request","estimateGas","data","chainNamespace","txParams","type","estimatedGasHex","BigInt","error","sendTransaction","network","value","convertNumericToHexString","txHash","caipNetworkId","writeContract","tokenAddress","receiverAddress","tokenAmount","fromAddress","spenderAddress","encodedData"],"sourceRoot":"../../../src","sources":["adapters/EvmAdapter.ts"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { BlockchainAdapter } from './BlockchainAdapter';
2
+ export class SolanaBaseAdapter extends BlockchainAdapter {}
3
+ //# sourceMappingURL=SolanaBaseAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["BlockchainAdapter","SolanaBaseAdapter"],"sourceRoot":"../../../src","sources":["adapters/SolanaBaseAdapter.ts"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAEvD,OAAO,MAAeC,iBAAiB,SAASD,iBAAiB,CAAC"}
@@ -8,5 +8,10 @@ export { PresetsUtil } from './utils/PresetsUtil';
8
8
  export { StringUtil } from './utils/StringUtil';
9
9
  export { ErrorUtil } from './utils/ErrorUtil';
10
10
  export { erc20ABI } from './contracts/erc20';
11
+ export { solana, solanaDevnet, solanaTestnet } from './networks/solana';
12
+ export { bitcoin, bitcoinTestnet } from './networks/bitcoin';
13
+ export { BlockchainAdapter } from './adapters/BlockchainAdapter';
14
+ export { EVMAdapter } from './adapters/EvmAdapter';
15
+ export { SolanaBaseAdapter } from './adapters/SolanaBaseAdapter';
11
16
  export * from './utils/TypeUtil';
12
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ConstantsUtil","ContractUtil","DateUtil","NamesUtil","NetworkUtil","NumberUtil","PresetsUtil","StringUtil","ErrorUtil","erc20ABI"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,QAAQ,QAAQ,kBAAkB;AAC3C,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,QAAQ,QAAQ,mBAAmB;AAC5C,cAAc,kBAAkB"}
1
+ {"version":3,"names":["ConstantsUtil","ContractUtil","DateUtil","NamesUtil","NetworkUtil","NumberUtil","PresetsUtil","StringUtil","ErrorUtil","erc20ABI","solana","solanaDevnet","solanaTestnet","bitcoin","bitcoinTestnet","BlockchainAdapter","EVMAdapter","SolanaBaseAdapter"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,QAAQ,QAAQ,kBAAkB;AAC3C,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,WAAW,QAAQ,qBAAqB;AACjD,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,QAAQ,QAAQ,mBAAmB;AAC5C,SAASC,MAAM,EAAEC,YAAY,EAAEC,aAAa,QAAQ,mBAAmB;AACvE,SAASC,OAAO,EAAEC,cAAc,QAAQ,oBAAoB;AAC5D,SAASC,iBAAiB,QAAQ,8BAA8B;AAChE,SAASC,UAAU,QAAQ,uBAAuB;AAClD,SAASC,iBAAiB,QAAQ,8BAA8B;AAChE,cAAc,kBAAkB"}
@@ -0,0 +1,34 @@
1
+ export const bitcoin = {
2
+ id: '000000000019d6689c085ae165831e93',
3
+ caipNetworkId: 'bip122:000000000019d6689c085ae165831e93',
4
+ chainNamespace: 'bip122',
5
+ name: 'Bitcoin',
6
+ nativeCurrency: {
7
+ name: 'Bitcoin',
8
+ symbol: 'BTC',
9
+ decimals: 8
10
+ },
11
+ rpcUrls: {
12
+ default: {
13
+ http: ['https://rpc.walletconnect.org/v1']
14
+ }
15
+ }
16
+ };
17
+ export const bitcoinTestnet = {
18
+ id: '000000000933ea01ad0ee984209779ba',
19
+ caipNetworkId: 'bip122:000000000933ea01ad0ee984209779ba',
20
+ chainNamespace: 'bip122',
21
+ name: 'Bitcoin Testnet',
22
+ nativeCurrency: {
23
+ name: 'Bitcoin',
24
+ symbol: 'BTC',
25
+ decimals: 8
26
+ },
27
+ rpcUrls: {
28
+ default: {
29
+ http: ['https://rpc.walletconnect.org/v1']
30
+ }
31
+ },
32
+ testnet: true
33
+ };
34
+ //# sourceMappingURL=bitcoin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bitcoin","id","caipNetworkId","chainNamespace","name","nativeCurrency","symbol","decimals","rpcUrls","default","http","bitcoinTestnet","testnet"],"sourceRoot":"../../../src","sources":["networks/bitcoin.ts"],"mappings":"AAEA,OAAO,MAAMA,OAAsB,GAAG;EACpCC,EAAE,EAAE,kCAAkC;EACtCC,aAAa,EAAE,yCAAyC;EACxDC,cAAc,EAAE,QAAQ;EACxBC,IAAI,EAAE,SAAS;EACfC,cAAc,EAAE;IACdD,IAAI,EAAE,SAAS;IACfE,MAAM,EAAE,KAAK;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDC,OAAO,EAAE;IACPC,OAAO,EAAE;MAAEC,IAAI,EAAE,CAAC,kCAAkC;IAAE;EACxD;AACF,CAAC;AAED,OAAO,MAAMC,cAA6B,GAAG;EAC3CV,EAAE,EAAE,kCAAkC;EACtCC,aAAa,EAAE,yCAAyC;EACxDC,cAAc,EAAE,QAAQ;EACxBC,IAAI,EAAE,iBAAiB;EACvBC,cAAc,EAAE;IACdD,IAAI,EAAE,SAAS;IACfE,MAAM,EAAE,KAAK;IACbC,QAAQ,EAAE;EACZ,CAAC;EACDC,OAAO,EAAE;IACPC,OAAO,EAAE;MAAEC,IAAI,EAAE,CAAC,kCAAkC;IAAE;EACxD,CAAC;EACDE,OAAO,EAAE;AACX,CAAC"}