@gauntlet-xyz/sdk 1.0.1 → 1.0.3

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 (131) hide show
  1. package/dist/attribution/erc8021.d.ts +7 -0
  2. package/dist/attribution/erc8021.d.ts.map +1 -0
  3. package/dist/attribution/erc8021.js +13 -3
  4. package/dist/attribution/erc8021.js.map +1 -1
  5. package/dist/attribution/index.d.ts +9 -0
  6. package/dist/attribution/index.d.ts.map +1 -0
  7. package/dist/attribution/index.js +8 -0
  8. package/dist/attribution/index.js.map +1 -1
  9. package/dist/client.d.ts +36 -0
  10. package/dist/client.d.ts.map +1 -0
  11. package/dist/client.js +35 -0
  12. package/dist/client.js.map +1 -1
  13. package/dist/errors.d.ts +1 -0
  14. package/dist/errors.d.ts.map +1 -0
  15. package/dist/evm/abis/erc20.d.ts +1 -0
  16. package/dist/evm/abis/erc20.d.ts.map +1 -0
  17. package/dist/evm/abis/erc4626.d.ts +1 -0
  18. package/dist/evm/abis/erc4626.d.ts.map +1 -0
  19. package/dist/evm/abis/multiDepositorVault.d.ts +1 -0
  20. package/dist/evm/abis/multiDepositorVault.d.ts.map +1 -0
  21. package/dist/evm/abis/priceAndFeeCalculator.d.ts +1 -0
  22. package/dist/evm/abis/priceAndFeeCalculator.d.ts.map +1 -0
  23. package/dist/evm/abis/provisioner.d.ts +1 -0
  24. package/dist/evm/abis/provisioner.d.ts.map +1 -0
  25. package/dist/evm/abis/provisioner.js +30 -0
  26. package/dist/evm/abis/provisioner.js.map +1 -1
  27. package/dist/evm/adapters/aera.d.ts +1 -0
  28. package/dist/evm/adapters/aera.d.ts.map +1 -0
  29. package/dist/evm/adapters/aera.js +31 -2
  30. package/dist/evm/adapters/aera.js.map +1 -1
  31. package/dist/evm/adapters/index.d.ts +1 -0
  32. package/dist/evm/adapters/index.d.ts.map +1 -0
  33. package/dist/evm/adapters/morpho.d.ts +1 -0
  34. package/dist/evm/adapters/morpho.d.ts.map +1 -0
  35. package/dist/evm/adapters/types.d.ts +4 -0
  36. package/dist/evm/adapters/types.d.ts.map +1 -0
  37. package/dist/evm/aeraContracts.d.ts +5 -0
  38. package/dist/evm/aeraContracts.d.ts.map +1 -0
  39. package/dist/evm/aeraContracts.js +4 -0
  40. package/dist/evm/aeraContracts.js.map +1 -1
  41. package/dist/evm/deposit.d.ts +31 -0
  42. package/dist/evm/deposit.d.ts.map +1 -0
  43. package/dist/evm/deposit.js +29 -0
  44. package/dist/evm/deposit.js.map +1 -1
  45. package/dist/evm/index.d.ts +1 -0
  46. package/dist/evm/index.d.ts.map +1 -0
  47. package/dist/evm/types.d.ts +3 -0
  48. package/dist/evm/types.d.ts.map +1 -0
  49. package/dist/evm/userCurrentBalance.d.ts +35 -0
  50. package/dist/evm/userCurrentBalance.d.ts.map +1 -0
  51. package/dist/evm/userCurrentBalance.js +37 -0
  52. package/dist/evm/userCurrentBalance.js.map +1 -1
  53. package/dist/evm/vaults.d.ts +21 -0
  54. package/dist/evm/vaults.d.ts.map +1 -0
  55. package/dist/evm/vaults.js +23 -0
  56. package/dist/evm/vaults.js.map +1 -1
  57. package/dist/evm/withdraw.d.ts +37 -0
  58. package/dist/evm/withdraw.d.ts.map +1 -0
  59. package/dist/evm/withdraw.js +34 -0
  60. package/dist/evm/withdraw.js.map +1 -1
  61. package/dist/index.d.ts +1 -0
  62. package/dist/index.d.ts.map +1 -0
  63. package/manifest/vaults.json +1592 -24
  64. package/package.json +11 -4
  65. package/src/attribution/erc8021.ts +8 -4
  66. package/src/attribution/index.ts +1 -1
  67. package/dist/manifest/vaults.json +0 -139
  68. package/dist/src/attribution/erc8021.d.ts +0 -2
  69. package/dist/src/attribution/erc8021.js +0 -7
  70. package/dist/src/attribution/erc8021.js.map +0 -1
  71. package/dist/src/attribution/index.d.ts +0 -16
  72. package/dist/src/attribution/index.js +0 -37
  73. package/dist/src/attribution/index.js.map +0 -1
  74. package/dist/src/client.d.ts +0 -28
  75. package/dist/src/client.js +0 -35
  76. package/dist/src/client.js.map +0 -1
  77. package/dist/src/errors.d.ts +0 -55
  78. package/dist/src/errors.js +0 -97
  79. package/dist/src/errors.js.map +0 -1
  80. package/dist/src/evm/abis/erc20.d.ts +0 -40
  81. package/dist/src/evm/abis/erc20.js +0 -30
  82. package/dist/src/evm/abis/erc20.js.map +0 -1
  83. package/dist/src/evm/abis/erc4626.d.ts +0 -104
  84. package/dist/src/evm/abis/erc4626.js +0 -70
  85. package/dist/src/evm/abis/erc4626.js.map +0 -1
  86. package/dist/src/evm/abis/multiDepositorVault.d.ts +0 -1047
  87. package/dist/src/evm/abis/multiDepositorVault.js +0 -587
  88. package/dist/src/evm/abis/multiDepositorVault.js.map +0 -1
  89. package/dist/src/evm/abis/priceAndFeeCalculator.d.ts +0 -909
  90. package/dist/src/evm/abis/priceAndFeeCalculator.js +0 -490
  91. package/dist/src/evm/abis/priceAndFeeCalculator.js.map +0 -1
  92. package/dist/src/evm/abis/provisioner.d.ts +0 -4983
  93. package/dist/src/evm/abis/provisioner.js +0 -2738
  94. package/dist/src/evm/abis/provisioner.js.map +0 -1
  95. package/dist/src/evm/adapters/aera.d.ts +0 -5
  96. package/dist/src/evm/adapters/aera.js +0 -144
  97. package/dist/src/evm/adapters/aera.js.map +0 -1
  98. package/dist/src/evm/adapters/index.d.ts +0 -2
  99. package/dist/src/evm/adapters/index.js +0 -14
  100. package/dist/src/evm/adapters/index.js.map +0 -1
  101. package/dist/src/evm/adapters/morpho.d.ts +0 -2
  102. package/dist/src/evm/adapters/morpho.js +0 -79
  103. package/dist/src/evm/adapters/morpho.js.map +0 -1
  104. package/dist/src/evm/adapters/types.d.ts +0 -65
  105. package/dist/src/evm/adapters/types.js +0 -2
  106. package/dist/src/evm/adapters/types.js.map +0 -1
  107. package/dist/src/evm/aeraContracts.d.ts +0 -2315
  108. package/dist/src/evm/aeraContracts.js +0 -37
  109. package/dist/src/evm/aeraContracts.js.map +0 -1
  110. package/dist/src/evm/deposit.d.ts +0 -13
  111. package/dist/src/evm/deposit.js +0 -66
  112. package/dist/src/evm/deposit.js.map +0 -1
  113. package/dist/src/evm/index.d.ts +0 -10
  114. package/dist/src/evm/index.js +0 -5
  115. package/dist/src/evm/index.js.map +0 -1
  116. package/dist/src/evm/types.d.ts +0 -27
  117. package/dist/src/evm/types.js +0 -2
  118. package/dist/src/evm/types.js.map +0 -1
  119. package/dist/src/evm/userCurrentBalance.d.ts +0 -16
  120. package/dist/src/evm/userCurrentBalance.js +0 -164
  121. package/dist/src/evm/userCurrentBalance.js.map +0 -1
  122. package/dist/src/evm/vaults.d.ts +0 -17
  123. package/dist/src/evm/vaults.js +0 -39
  124. package/dist/src/evm/vaults.js.map +0 -1
  125. package/dist/src/evm/withdraw.d.ts +0 -24
  126. package/dist/src/evm/withdraw.js +0 -51
  127. package/dist/src/evm/withdraw.js.map +0 -1
  128. package/dist/src/index.d.ts +0 -7
  129. package/dist/src/index.js +0 -4
  130. package/dist/src/index.js.map +0 -1
  131. package/dist/tsconfig.tsbuildinfo +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gauntlet-xyz/sdk",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "Official Gauntlet SDK for vault deposits, withdrawals, and attribution",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -14,6 +14,10 @@
14
14
  "withdraw",
15
15
  "sdk"
16
16
  ],
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/Gauntlet-xyz/sdk"
20
+ },
17
21
  "publishConfig": {
18
22
  "access": "public",
19
23
  "registry": "https://registry.npmjs.org"
@@ -52,13 +56,16 @@
52
56
  },
53
57
  "devDependencies": {
54
58
  "@next/eslint-plugin-next": "13.1.1",
55
- "@types/node": "^18.15.11",
59
+ "@types/node": "^22.0.0",
56
60
  "@viem/anvil": "^0.0.10",
57
61
  "echo-cli": "^2.0.0",
58
62
  "eslint": "^8.57.0",
59
- "typescript": "^5.5.4",
63
+ "typescript": "~5.5.4",
60
64
  "viem": "2.30.1",
61
65
  "vitest": "^4.1.2"
62
66
  },
63
- "packageManager": "yarn@4.3.1"
67
+ "engines": {
68
+ "npm": ">=11.5.1",
69
+ "node": ">=22"
70
+ }
64
71
  }
@@ -1,14 +1,18 @@
1
1
  import { toHex, type Hex } from 'viem';
2
2
 
3
- const ERC8021_PREFIX = '8021' as const;
3
+ // 16-byte ERC-8021 marker: "8021" repeated 8 times
4
+ const ERC8021_MARKER = '80218021802180218021802180218021' as const;
5
+ const ERC8021_SCHEMA_ID = '00' as const; // Schema 0: simple ASCII codes
4
6
 
5
7
  /**
6
8
  * Encode an ERC-8021 builder code as a calldata suffix.
7
- * Format: "8021" marker + utf8-encoded builder code
9
+ * Format: codesLength (1 byte) + utf8-encoded builder code + schemaId (1 byte) + ERC marker (16 bytes)
8
10
  *
9
11
  * @see https://eips.ethereum.org/EIPS/eip-8021
10
12
  */
11
13
  export function encodeBuilderCode(builderCode: string): Hex {
12
- const codeHex = toHex(builderCode).slice(2); // remove 0x prefix
13
- return `0x${ERC8021_PREFIX}${codeHex}` as Hex;
14
+ const codeHex = toHex(builderCode).slice(2); // UTF-8 hex without 0x prefix
15
+ const codeByteLen = codeHex.length / 2;
16
+ const codeLengthHex = codeByteLen.toString(16).padStart(2, '0');
17
+ return `0x${codeLengthHex}${codeHex}${ERC8021_SCHEMA_ID}${ERC8021_MARKER}` as Hex;
14
18
  }
@@ -20,7 +20,7 @@ export type PreparedTx = {
20
20
  /**
21
21
  * Build the full attribution suffix to append to transaction calldata.
22
22
  *
23
- * PUBLIC: ERC-8021 builder code only — `0x8021{builderCode utf8}`, or `0x` if no builderCode.
23
+ * PUBLIC: ERC-8021 builder code only — `0x{codesLength}{builderCode utf8}{schemaId=0x00}{ercMarker}`, or `0x` if no builderCode.
24
24
  * ENCODED: Requests a sourceId from the Gauntlet API with builder code as an arg and encodes that.
25
25
  * PRIVATE: Generates a random salt and posts it to the Gauntlet API.
26
26
  *
@@ -1,139 +0,0 @@
1
- {
2
- "version": "2026-03-24",
3
- "vaults": [
4
- {
5
- "vaultId": "baseUsdcPrime",
6
- "name": "Gauntlet USDC Prime",
7
- "protocol": "morpho",
8
- "strategy": "Prime Lending",
9
- "deployments": [
10
- {
11
- "chain": "evm",
12
- "chainId": 8453,
13
- "vaultAddress": "0xeE8F4eC5672F09119b96Ab6fB59C27E1b7e44b61",
14
- "vaultType": "single-depositor",
15
- "depositMode": "sync",
16
- "supplyToken": [
17
- {
18
- "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
19
- "symbol": "USDC",
20
- "decimals": 6
21
- }
22
- ]
23
- }
24
- ]
25
- },
26
- {
27
- "vaultId": "ethUsdcPrime",
28
- "name": "Gauntlet USDC Prime",
29
- "protocol": "morpho",
30
- "strategy": "Prime Lending",
31
- "deployments": [
32
- {
33
- "chain": "evm",
34
- "chainId": 1,
35
- "vaultAddress": "0xdd0f28e19C1780eb6396170735D45153D261490d",
36
- "vaultType": "single-depositor",
37
- "depositMode": "sync",
38
- "supplyToken": [
39
- {
40
- "address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
41
- "symbol": "USDC",
42
- "decimals": 6
43
- }
44
- ]
45
- }
46
- ]
47
- },
48
- {
49
- "vaultId": "gtusda",
50
- "name": "Gauntlet USD Alpha",
51
- "protocol": "aera",
52
- "strategy": "Multi-strategy Stablecoin Yield",
53
- "deployments": [
54
- {
55
- "chain": "evm",
56
- "chainId": 8453,
57
- "vaultAddress": "0x000000000001CdB57E58Fa75Fe420a0f4D6640D5",
58
- "provisionerAddress": "0x18CF8d963E1a727F9bbF3AEffa0Bd04FB4dBdA07",
59
- "vaultType": "multi-depositor",
60
- "depositMode": "async",
61
- "supplyToken": [
62
- {
63
- "address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
64
- "symbol": "USDC",
65
- "decimals": 6
66
- }
67
- ]
68
- },
69
- {
70
- "chain": "evm",
71
- "chainId": 1,
72
- "vaultAddress": "0x3bd9248048df95db4fbd748c6cd99c1baa40bad0",
73
- "provisionerAddress": "0x74C4A66CE4F4779B11E7c63D42e51EEef3A80D11",
74
- "vaultType": "multi-depositor",
75
- "depositMode": "async",
76
- "supplyToken": [
77
- {
78
- "address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
79
- "symbol": "USDC",
80
- "decimals": 6
81
- }
82
- ]
83
- },
84
- {
85
- "chain": "evm",
86
- "chainId": 42161,
87
- "vaultAddress": "0x000000001DC8bd45d7E7829fb1c969cbe4D0D1eC",
88
- "provisionerAddress": "0xDd4a42603E6d8E515C3468789375A98c376821b3",
89
- "vaultType": "multi-depositor",
90
- "depositMode": "async",
91
- "supplyToken": [
92
- {
93
- "address": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
94
- "symbol": "USDC",
95
- "decimals": 6
96
- }
97
- ]
98
- },
99
- {
100
- "chain": "evm",
101
- "chainId": 10,
102
- "vaultAddress": "0x000000001DC8bd45d7E7829fb1c969cbe4D0D1eC",
103
- "provisionerAddress": "0xCC923371F0d3A9cA75d98E767Df9dE1cdf5799Ef",
104
- "vaultType": "multi-depositor",
105
- "depositMode": "async",
106
- "supplyToken": [
107
- {
108
- "address": "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
109
- "symbol": "USDC",
110
- "decimals": 6
111
- }
112
- ]
113
- }
114
- ]
115
- },
116
- {
117
- "vaultId": "ethUsdcPrimeV2",
118
- "name": "Gauntlet USDC Prime v2",
119
- "protocol": "morpho",
120
- "strategy": "Prime Lending v2",
121
- "deployments": [
122
- {
123
- "chain": "evm",
124
- "chainId": 1,
125
- "vaultAddress": "0x8c106EEDAd96553e64287A5A6839c3Cc78afA3D0",
126
- "vaultType": "single-depositor",
127
- "depositMode": "sync",
128
- "supplyToken": [
129
- {
130
- "address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
131
- "symbol": "USDC",
132
- "decimals": 6
133
- }
134
- ]
135
- }
136
- ]
137
- }
138
- ]
139
- }
@@ -1,2 +0,0 @@
1
- import { type Hex } from 'viem';
2
- export declare function encodeBuilderCode(builderCode: string): Hex;
@@ -1,7 +0,0 @@
1
- import { toHex } from 'viem';
2
- const ERC8021_PREFIX = '8021';
3
- export function encodeBuilderCode(builderCode) {
4
- const codeHex = toHex(builderCode).slice(2);
5
- return `0x${ERC8021_PREFIX}${codeHex}`;
6
- }
7
- //# sourceMappingURL=erc8021.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"erc8021.js","sourceRoot":"","sources":["../../../src/attribution/erc8021.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,MAAM,CAAC;AAEvC,MAAM,cAAc,GAAG,MAAe,CAAC;AAQvC,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5C,OAAO,KAAK,cAAc,GAAG,OAAO,EAAS,CAAC;AAChD,CAAC"}
@@ -1,16 +0,0 @@
1
- import { Address, type Hex } from 'viem';
2
- import { GauntletClient } from '../client';
3
- import { TxStep } from '../evm/adapters/types';
4
- export { encodeBuilderCode } from './erc8021';
5
- export type PreparedPayloadWithAttribution = {
6
- type: string;
7
- to: Address;
8
- data: Hex;
9
- account?: Address;
10
- };
11
- export type PreparedTx = {
12
- payload: PreparedPayloadWithAttribution;
13
- tx: TxStep;
14
- };
15
- export declare function buildAttribution(client: GauntletClient): Promise<Hex>;
16
- export declare function encodeTransactionWithAttribution(client: GauntletClient, transaction: TxStep): Promise<PreparedTx>;
@@ -1,37 +0,0 @@
1
- import { encodeFunctionData } from 'viem';
2
- import { encodeBuilderCode } from './erc8021';
3
- import { AttributionMode } from '../client';
4
- import { UnimplementedFeatureError } from '../errors';
5
- export { encodeBuilderCode } from './erc8021';
6
- export async function buildAttribution(client) {
7
- switch (client.attributionMode) {
8
- case AttributionMode.PUBLIC:
9
- return client.builderCode ? encodeBuilderCode(client.builderCode) : '0x';
10
- case AttributionMode.ENCODED:
11
- throw new UnimplementedFeatureError('AttributionMode.ENCODED');
12
- case AttributionMode.PRIVATE:
13
- throw new UnimplementedFeatureError('AttributionMode.PRIVATE');
14
- }
15
- }
16
- export async function encodeTransactionWithAttribution(client, transaction) {
17
- const customAttribution = await buildAttribution(client);
18
- const encodedTx = encodeFunctionData({
19
- abi: transaction.abi,
20
- functionName: transaction.functionName,
21
- args: transaction.args,
22
- });
23
- const encodedTxWithAttribution = `${encodedTx}${customAttribution.replace('0x', '')}`;
24
- return {
25
- payload: {
26
- type: transaction.type,
27
- account: transaction.account,
28
- to: transaction.address,
29
- data: encodedTxWithAttribution,
30
- },
31
- tx: {
32
- ...transaction,
33
- attribution: customAttribution,
34
- },
35
- };
36
- }
37
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/attribution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,kBAAkB,EAAY,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAkB,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAsB9C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAsB;IAC3D,QAAQ,MAAM,CAAC,eAAe,EAAE,CAAC;QAC/B,KAAK,eAAe,CAAC,MAAM;YACzB,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,KAAK,eAAe,CAAC,OAAO;YAC1B,MAAM,IAAI,yBAAyB,CAAC,yBAAyB,CAAC,CAAC;QACjE,KAAK,eAAe,CAAC,OAAO;YAC1B,MAAM,IAAI,yBAAyB,CAAC,yBAAyB,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,MAAsB,EACtB,WAAmB;IAEnB,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,kBAAkB,CAAC;QACnC,GAAG,EAAE,WAAW,CAAC,GAAG;QACpB,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,IAAI,EAAE,WAAW,CAAC,IAAI;KACvB,CAAC,CAAC;IACH,MAAM,wBAAwB,GAAG,GAAG,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAS,CAAC;IAC7F,OAAO;QACL,OAAO,EAAE;YACP,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,EAAE,EAAE,WAAW,CAAC,OAAO;YACvB,IAAI,EAAE,wBAAwB;SAC/B;QACD,EAAE,EAAE;YACF,GAAG,WAAW;YACd,WAAW,EAAE,iBAAiB;SAC/B;KACF,CAAC;AACJ,CAAC"}
@@ -1,28 +0,0 @@
1
- import { type PublicClient, type WalletClient } from 'viem';
2
- import type { VaultManifest } from './evm/types';
3
- export declare enum AttributionMode {
4
- PUBLIC = "public",
5
- ENCODED = "encoded",
6
- PRIVATE = "private"
7
- }
8
- export type ChainId = string | number;
9
- export interface GauntletClientConfig {
10
- apiKey?: string;
11
- evmClients?: Record<ChainId, PublicClient>;
12
- attributionMode?: AttributionMode;
13
- builderCode?: string;
14
- wallet?: WalletClient;
15
- }
16
- export declare class GauntletClient {
17
- readonly apiKey?: string;
18
- readonly builderCode?: string;
19
- readonly attributionMode: AttributionMode;
20
- readonly evmClients: Record<ChainId, PublicClient>;
21
- readonly wallet?: WalletClient;
22
- private _manifest;
23
- constructor(config: GauntletClientConfig);
24
- get manifest(): Promise<VaultManifest>;
25
- setManifest(manifest: VaultManifest): void;
26
- getPublicClient(chainId?: ChainId): PublicClient;
27
- getSourceId(): Promise<string>;
28
- }
@@ -1,35 +0,0 @@
1
- import bundledManifest from '../manifest/vaults.json';
2
- import { RpcNotConfiguredError, UnimplementedFeatureError } from './errors';
3
- import { base } from 'viem/chains';
4
- export var AttributionMode;
5
- (function (AttributionMode) {
6
- AttributionMode["PUBLIC"] = "public";
7
- AttributionMode["ENCODED"] = "encoded";
8
- AttributionMode["PRIVATE"] = "private";
9
- })(AttributionMode || (AttributionMode = {}));
10
- export class GauntletClient {
11
- constructor(config) {
12
- this._manifest = bundledManifest;
13
- this.apiKey = config.apiKey;
14
- this.evmClients = config.evmClients ?? {};
15
- this.attributionMode = config.attributionMode ?? AttributionMode.PUBLIC;
16
- this.builderCode = config.builderCode;
17
- this.wallet = config.wallet;
18
- }
19
- get manifest() {
20
- return Promise.resolve(this._manifest);
21
- }
22
- setManifest(manifest) {
23
- this._manifest = manifest;
24
- }
25
- getPublicClient(chainId = base.id) {
26
- const client = this.evmClients[chainId];
27
- if (!client)
28
- throw new RpcNotConfiguredError(chainId);
29
- return client;
30
- }
31
- async getSourceId() {
32
- throw new UnimplementedFeatureError('getSourceId');
33
- }
34
- }
35
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,eAAe,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAE5E,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AASnC,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;AACrB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAwCD,MAAM,OAAO,cAAc;IAUzB,YAAY,MAA4B;QAFhC,cAAS,GAAkB,eAAgC,CAAC;QAGlE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,CAAC;QACxE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,QAAuB;QACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,eAAe,CAAC,UAAmB,IAAI,CAAC,EAAE;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAID,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;CACF"}
@@ -1,55 +0,0 @@
1
- import { ChainId } from './client';
2
- export declare class GauntletSDKError extends Error {
3
- constructor(message: string);
4
- }
5
- export declare class VaultNotFoundError extends GauntletSDKError {
6
- readonly vaultId: string;
7
- readonly chainId?: ChainId;
8
- constructor(vaultId: string, chainId?: ChainId);
9
- }
10
- export declare class UnsupportedAssetError extends GauntletSDKError {
11
- readonly asset: string;
12
- readonly vaultId: string;
13
- constructor(asset: string, vaultId: string);
14
- }
15
- export declare class ChainMismatchError extends GauntletSDKError {
16
- readonly expected: string;
17
- readonly received: string;
18
- constructor(expected: string, received: string);
19
- }
20
- export declare class UnsupportedDepositModeError extends GauntletSDKError {
21
- readonly vaultId: string;
22
- readonly requested: 'sync' | 'async';
23
- readonly available: string;
24
- constructor(vaultId: string, requested: 'sync' | 'async', available: string);
25
- }
26
- export declare class RpcNotConfiguredError extends GauntletSDKError {
27
- readonly chainId: ChainId;
28
- constructor(chainId: ChainId);
29
- }
30
- export declare class AccountRequiredError extends GauntletSDKError {
31
- constructor();
32
- }
33
- export declare class UnsupportedProtocolError extends GauntletSDKError {
34
- readonly protocol: string;
35
- constructor(protocol: string);
36
- }
37
- export declare class InvalidWithdrawParamsError extends GauntletSDKError {
38
- constructor();
39
- }
40
- export declare class UnimplementedFeatureError extends GauntletSDKError {
41
- readonly feature: string;
42
- constructor(feature: string);
43
- }
44
- export declare class UnsupportedFeatureError extends GauntletSDKError {
45
- readonly feature: string;
46
- constructor(feature: string);
47
- }
48
- export declare class UnitConversionError extends GauntletSDKError {
49
- readonly vaultAddress: string;
50
- constructor(vaultAddress: string);
51
- }
52
- export declare class InvalidSlippageBPSError extends GauntletSDKError {
53
- readonly slippage: number;
54
- constructor(slippage: number);
55
- }
@@ -1,97 +0,0 @@
1
- export class GauntletSDKError extends Error {
2
- constructor(message) {
3
- super(message);
4
- this.name = 'GauntletSDKError';
5
- }
6
- }
7
- export class VaultNotFoundError extends GauntletSDKError {
8
- constructor(vaultId, chainId) {
9
- const msg = chainId
10
- ? `Vault "${vaultId}" not found on chainId "${chainId}"`
11
- : `Vault "${vaultId}" not found`;
12
- super(msg);
13
- this.name = 'VaultNotFoundError';
14
- this.vaultId = vaultId;
15
- this.chainId = chainId;
16
- }
17
- }
18
- export class UnsupportedAssetError extends GauntletSDKError {
19
- constructor(asset, vaultId) {
20
- super(`Asset "${asset}" is not supported by vault "${vaultId}"`);
21
- this.name = 'UnsupportedAssetError';
22
- this.asset = asset;
23
- this.vaultId = vaultId;
24
- }
25
- }
26
- export class ChainMismatchError extends GauntletSDKError {
27
- constructor(expected, received) {
28
- super(`Chain mismatch: expected "${expected}", received "${received}"`);
29
- this.name = 'ChainMismatchError';
30
- this.expected = expected;
31
- this.received = received;
32
- }
33
- }
34
- export class UnsupportedDepositModeError extends GauntletSDKError {
35
- constructor(vaultId, requested, available) {
36
- super(`Vault "${vaultId}" does not support ${requested} deposits (available: ${available})`);
37
- this.name = 'UnsupportedDepositModeError';
38
- this.vaultId = vaultId;
39
- this.requested = requested;
40
- this.available = available;
41
- }
42
- }
43
- export class RpcNotConfiguredError extends GauntletSDKError {
44
- constructor(chainId) {
45
- super(`No client configured for chainId "${chainId}"`);
46
- this.name = 'RpcNotConfiguredError';
47
- this.chainId = chainId;
48
- }
49
- }
50
- export class AccountRequiredError extends GauntletSDKError {
51
- constructor() {
52
- super('No account specified. Provide a wallet in the client config.');
53
- this.name = 'AccountRequiredError';
54
- }
55
- }
56
- export class UnsupportedProtocolError extends GauntletSDKError {
57
- constructor(protocol) {
58
- super(`Unsupported protocol: "${protocol}"`);
59
- this.name = 'UnsupportedProtocolError';
60
- this.protocol = protocol;
61
- }
62
- }
63
- export class InvalidWithdrawParamsError extends GauntletSDKError {
64
- constructor() {
65
- super('Withdraw requires exactly one of: shares, amount, or all');
66
- this.name = 'InvalidWithdrawParamsError';
67
- }
68
- }
69
- export class UnimplementedFeatureError extends GauntletSDKError {
70
- constructor(feature) {
71
- super(`Feature not yet implemented: "${feature}"`);
72
- this.name = 'UnimplementedFeatureError';
73
- this.feature = feature;
74
- }
75
- }
76
- export class UnsupportedFeatureError extends GauntletSDKError {
77
- constructor(feature) {
78
- super(`Feature not supported: "${feature}"`);
79
- this.name = 'UnimplementedFeatureError';
80
- this.feature = feature;
81
- }
82
- }
83
- export class UnitConversionError extends GauntletSDKError {
84
- constructor(vaultAddress) {
85
- super(`Failed to convert token units for vault "${vaultAddress}": fee calculator unavailable`);
86
- this.name = 'UnitConversionError';
87
- this.vaultAddress = vaultAddress;
88
- }
89
- }
90
- export class InvalidSlippageBPSError extends GauntletSDKError {
91
- constructor(slippage) {
92
- super(`Slippage not in range of 10000-0; argumet passed: ${slippage}`);
93
- this.name = 'IncorrectArgument';
94
- this.slippage = slippage;
95
- }
96
- }
97
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- export declare const erc20Abi: readonly [{
2
- readonly type: "function";
3
- readonly name: "approve";
4
- readonly inputs: readonly [{
5
- readonly name: "spender";
6
- readonly type: "address";
7
- }, {
8
- readonly name: "amount";
9
- readonly type: "uint256";
10
- }];
11
- readonly outputs: readonly [{
12
- readonly type: "bool";
13
- }];
14
- readonly stateMutability: "nonpayable";
15
- }, {
16
- readonly type: "function";
17
- readonly name: "allowance";
18
- readonly inputs: readonly [{
19
- readonly name: "owner";
20
- readonly type: "address";
21
- }, {
22
- readonly name: "spender";
23
- readonly type: "address";
24
- }];
25
- readonly outputs: readonly [{
26
- readonly type: "uint256";
27
- }];
28
- readonly stateMutability: "view";
29
- }, {
30
- readonly type: "function";
31
- readonly name: "balanceOf";
32
- readonly inputs: readonly [{
33
- readonly name: "account";
34
- readonly type: "address";
35
- }];
36
- readonly outputs: readonly [{
37
- readonly type: "uint256";
38
- }];
39
- readonly stateMutability: "view";
40
- }];
@@ -1,30 +0,0 @@
1
- export const erc20Abi = [
2
- {
3
- type: 'function',
4
- name: 'approve',
5
- inputs: [
6
- { name: 'spender', type: 'address' },
7
- { name: 'amount', type: 'uint256' },
8
- ],
9
- outputs: [{ type: 'bool' }],
10
- stateMutability: 'nonpayable',
11
- },
12
- {
13
- type: 'function',
14
- name: 'allowance',
15
- inputs: [
16
- { name: 'owner', type: 'address' },
17
- { name: 'spender', type: 'address' },
18
- ],
19
- outputs: [{ type: 'uint256' }],
20
- stateMutability: 'view',
21
- },
22
- {
23
- type: 'function',
24
- name: 'balanceOf',
25
- inputs: [{ name: 'account', type: 'address' }],
26
- outputs: [{ type: 'uint256' }],
27
- stateMutability: 'view',
28
- },
29
- ];
30
- //# sourceMappingURL=erc20.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"erc20.js","sourceRoot":"","sources":["../../../../src/evm/abis/erc20.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3B,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SACrC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC9B,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC9C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC9B,eAAe,EAAE,MAAM;KACxB;CACO,CAAC"}