curvance 4.0.2 → 4.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.
- package/dist/abis/ProtocolReader.json +64 -0
- package/dist/classes/CToken.d.ts +33 -6
- package/dist/classes/CToken.d.ts.map +1 -1
- package/dist/classes/CToken.js +275 -47
- package/dist/classes/CToken.js.map +1 -1
- package/dist/classes/DexAggregators/IDexAgg.d.ts +3 -1
- package/dist/classes/DexAggregators/IDexAgg.d.ts.map +1 -1
- package/dist/classes/DexAggregators/Kuru.d.ts +3 -3
- package/dist/classes/DexAggregators/Kuru.d.ts.map +1 -1
- package/dist/classes/DexAggregators/Kuru.js +19 -9
- package/dist/classes/DexAggregators/Kuru.js.map +1 -1
- package/dist/classes/DexAggregators/KyberSwap.d.ts +3 -3
- package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
- package/dist/classes/DexAggregators/KyberSwap.js +16 -10
- package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
- package/dist/classes/DexAggregators/MultiDexAgg.d.ts +3 -3
- package/dist/classes/DexAggregators/MultiDexAgg.d.ts.map +1 -1
- package/dist/classes/DexAggregators/MultiDexAgg.js +13 -13
- package/dist/classes/DexAggregators/MultiDexAgg.js.map +1 -1
- package/dist/classes/OracleManager.js.map +1 -1
- package/dist/classes/ProtocolReader.d.ts +10 -0
- package/dist/classes/ProtocolReader.d.ts.map +1 -1
- package/dist/classes/ProtocolReader.js +4 -0
- package/dist/classes/ProtocolReader.js.map +1 -1
- package/dist/classes/Zapper.d.ts.map +1 -1
- package/dist/classes/Zapper.js +37 -1
- package/dist/classes/Zapper.js.map +1 -1
- package/dist/contracts/monad-mainnet.json +1 -1
- package/dist/feePolicy.d.ts +156 -0
- package/dist/feePolicy.d.ts.map +1 -0
- package/dist/feePolicy.js +102 -0
- package/dist/feePolicy.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/setup.d.ts +8 -1
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +3 -1
- package/dist/setup.js.map +1 -1
- package/package.json +1 -1
|
@@ -61,38 +61,38 @@ class MultiDexAgg {
|
|
|
61
61
|
* Fans out quoteAction to all aggregators, filters outliers, returns best.
|
|
62
62
|
* Each aggregator is called exactly once.
|
|
63
63
|
*/
|
|
64
|
-
async quoteAction(wallet, tokenIn, tokenOut, amount, slippage) {
|
|
64
|
+
async quoteAction(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver) {
|
|
65
65
|
if (this.aggregators.length === 1) {
|
|
66
|
-
return this.primary.quoteAction(wallet, tokenIn, tokenOut, amount, slippage);
|
|
66
|
+
return this.primary.quoteAction(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
67
67
|
}
|
|
68
|
-
const best = await this._bestQuoteAction(wallet, tokenIn, tokenOut, amount, slippage);
|
|
68
|
+
const best = await this._bestQuoteAction(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
69
69
|
return { action: best.action, quote: best.quote };
|
|
70
70
|
}
|
|
71
71
|
/**
|
|
72
72
|
* Returns the minimum output from the best quote.
|
|
73
73
|
*/
|
|
74
|
-
async quoteMin(wallet, tokenIn, tokenOut, amount, slippage) {
|
|
74
|
+
async quoteMin(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver) {
|
|
75
75
|
if (this.aggregators.length === 1) {
|
|
76
|
-
return this.primary.quoteMin(wallet, tokenIn, tokenOut, amount, slippage);
|
|
76
|
+
return this.primary.quoteMin(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
77
77
|
}
|
|
78
|
-
const best = await this._bestQuote(wallet, tokenIn, tokenOut, amount, slippage);
|
|
78
|
+
const best = await this._bestQuote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
79
79
|
return best.quote.out;
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
82
|
* Returns the best quote across all aggregators.
|
|
83
83
|
*/
|
|
84
|
-
async quote(wallet, tokenIn, tokenOut, amount, slippage) {
|
|
84
|
+
async quote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver) {
|
|
85
85
|
if (this.aggregators.length === 1) {
|
|
86
|
-
return this.primary.quote(wallet, tokenIn, tokenOut, amount, slippage);
|
|
86
|
+
return this.primary.quote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
87
87
|
}
|
|
88
|
-
const best = await this._bestQuote(wallet, tokenIn, tokenOut, amount, slippage);
|
|
88
|
+
const best = await this._bestQuote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver);
|
|
89
89
|
return best.quote;
|
|
90
90
|
}
|
|
91
91
|
// -----------------------------------------------------------------------
|
|
92
92
|
// Internal: fan-out for quote()
|
|
93
93
|
// -----------------------------------------------------------------------
|
|
94
|
-
async _bestQuote(wallet, tokenIn, tokenOut, amount, slippage) {
|
|
95
|
-
const results = await Promise.allSettled(this.aggregators.map(agg => this._withTimeout(agg.quote(wallet, tokenIn, tokenOut, amount, slippage)
|
|
94
|
+
async _bestQuote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver) {
|
|
95
|
+
const results = await Promise.allSettled(this.aggregators.map(agg => this._withTimeout(agg.quote(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver)
|
|
96
96
|
.then(quote => {
|
|
97
97
|
this._validateQuote(quote, agg);
|
|
98
98
|
return { aggregator: agg, quote };
|
|
@@ -102,8 +102,8 @@ class MultiDexAgg {
|
|
|
102
102
|
// -----------------------------------------------------------------------
|
|
103
103
|
// Internal: fan-out for quoteAction()
|
|
104
104
|
// -----------------------------------------------------------------------
|
|
105
|
-
async _bestQuoteAction(wallet, tokenIn, tokenOut, amount, slippage) {
|
|
106
|
-
const results = await Promise.allSettled(this.aggregators.map(agg => this._withTimeout(agg.quoteAction(wallet, tokenIn, tokenOut, amount, slippage)
|
|
105
|
+
async _bestQuoteAction(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver) {
|
|
106
|
+
const results = await Promise.allSettled(this.aggregators.map(agg => this._withTimeout(agg.quoteAction(wallet, tokenIn, tokenOut, amount, slippage, feeBps, feeReceiver)
|
|
107
107
|
.then(({ action, quote }) => {
|
|
108
108
|
this._validateQuote(quote, agg);
|
|
109
109
|
return { aggregator: agg, action, quote };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiDexAgg.js","sourceRoot":"","sources":["../../../src/classes/DexAggregators/MultiDexAgg.ts"],"names":[],"mappings":";;;AAuBA;;;;;;;;;;;;;GAaG;AACH,MAAa,WAAW;IACZ,WAAW,CAAY;IACvB,OAAO,CAAU;IACjB,MAAM,CAA8B;IAE5C,yFAAyF;IACzF,IAAI,GAAG,KAAc,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,IAAI,MAAM,KAAc,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAErD,YAAY,WAAsB,EAAE,SAA4B,EAAE;QAC9D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG;YACV,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,IAAI,EAAE;YAC7D,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,MAAM;SAClD,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,QAA2B,EAAE,QAAuB,IAAI;QAC7E,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CACvE,CAAC;QAEF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,MAAM,GAAe,EAAE,CAAC;QAE9B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;gBAAE,SAAS;YAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACnD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,OAAe,EAAE,QAAgB,EAAE,MAAc,EAAE,QAAgB;
|
|
1
|
+
{"version":3,"file":"MultiDexAgg.js","sourceRoot":"","sources":["../../../src/classes/DexAggregators/MultiDexAgg.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OracleManager.js","sourceRoot":"","sources":["../../src/classes/OracleManager.ts"],"names":[],"mappings":";;;AACA,wCAA2C;AAE3C,oCAAwC;AAMxC,MAAa,aAAa;IACtB,QAAQ,CAAoB;IAC5B,OAAO,CAAU;IACjB,QAAQ,CAA4B;IAEpC,YAAY,OAAgB,EAAE,WAA8B,oBAAY,CAAC,QAAQ;QAC7E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAkB,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAA,uBAAa,EAAiB,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE;YAClE,wEAAwE;SAC3E,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAc,EAAE,KAAc,EAAE,QAAiB;QAC5D,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"OracleManager.js","sourceRoot":"","sources":["../../src/classes/OracleManager.ts"],"names":[],"mappings":";;;AACA,wCAA2C;AAE3C,oCAAwC;AAMxC,MAAa,aAAa;IACtB,QAAQ,CAAoB;IAC5B,OAAO,CAAU;IACjB,QAAQ,CAA4B;IAEpC,YAAY,OAAgB,EAAE,WAA8B,oBAAY,CAAC,QAAQ;QAC7E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAkB,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,IAAA,uBAAa,EAAiB,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE;YAClE,wEAAwE;SAC3E,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAc,EAAE,KAAc,EAAE,QAAiB;QAC5D,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAqB,CAAC;QAEpG,IAAG,SAAS,IAAI,EAAE,EAAE,CAAC;YACjB,IAAI,SAAS,GAAG,SAAS,CAAC;YAC1B,QAAO,SAAS,EAAE,CAAC;gBACf,KAAK,EAAE;oBACH,SAAS,GAAG,oDAAoD,CAAC;oBACjE,MAAM;gBACV,KAAK,EAAE;oBACH,SAAS,GAAG,oDAAoD,CAAC;oBACjE,MAAM;YACd,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,UAAU,SAAS,MAAM,SAAS,EAAE,CAAC,CAAC;QAChG,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAhCD,sCAgCC"}
|
|
@@ -119,6 +119,7 @@ export interface IProtocolReader {
|
|
|
119
119
|
maxRedemptionOf(account: address, ctoken: address, bufferTime: bigint): Promise<[bigint, bigint, boolean]>;
|
|
120
120
|
debtBalanceAtTimestamp(account: address, borrowableCtoken: address, timestamp: bigint): Promise<bigint>;
|
|
121
121
|
getBalancesOf(tokens: address[], account: address): Promise<bigint[]>;
|
|
122
|
+
getLeverageSnapshot(account: address, cToken: address, borrowableCToken: address, bufferTime: bigint): Promise<[bigint, bigint, bigint, bigint, bigint, bigint, boolean]>;
|
|
122
123
|
}
|
|
123
124
|
export declare class ProtocolReader {
|
|
124
125
|
provider: curvance_provider;
|
|
@@ -166,6 +167,15 @@ export declare class ProtocolReader {
|
|
|
166
167
|
marketMultiCooldown(markets: address[], account: address): Promise<bigint[]>;
|
|
167
168
|
debtBalanceAtTimestamp(account: address, borrowableCtoken: address, timestamp: bigint): Promise<bigint>;
|
|
168
169
|
getBalancesOf(tokens: address[], account: address): Promise<bigint[]>;
|
|
170
|
+
getLeverageSnapshot(account: address, cToken: address, borrowableCToken: address, bufferTime?: bigint): Promise<{
|
|
171
|
+
collateralUsd: bigint;
|
|
172
|
+
debtUsd: bigint;
|
|
173
|
+
collateralAssetPrice: bigint;
|
|
174
|
+
sharePrice: bigint;
|
|
175
|
+
debtAssetPrice: bigint;
|
|
176
|
+
debtTokenBalance: bigint;
|
|
177
|
+
oracleError: boolean;
|
|
178
|
+
}>;
|
|
169
179
|
getStaticMarketData(use_api?: boolean): Promise<StaticMarketData[]>;
|
|
170
180
|
}
|
|
171
181
|
//# sourceMappingURL=ProtocolReader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProtocolReader.d.ts","sourceRoot":"","sources":["../../src/classes/ProtocolReader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ProtocolReader.d.ts","sourceRoot":"","sources":["../../src/classes/ProtocolReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -148,6 +148,10 @@ class ProtocolReader {
|
|
|
148
148
|
async getBalancesOf(tokens, account) {
|
|
149
149
|
return await this.contract.getBalancesOf(tokens, account);
|
|
150
150
|
}
|
|
151
|
+
async getLeverageSnapshot(account, cToken, borrowableCToken, bufferTime = 120n) {
|
|
152
|
+
const [collateralUsd, debtUsd, collateralAssetPrice, sharePrice, debtAssetPrice, debtTokenBalance, oracleError] = await this.contract.getLeverageSnapshot(account, cToken, borrowableCToken, bufferTime);
|
|
153
|
+
return { collateralUsd, debtUsd, collateralAssetPrice, sharePrice, debtAssetPrice, debtTokenBalance, oracleError };
|
|
154
|
+
}
|
|
151
155
|
async getStaticMarketData(use_api = true) {
|
|
152
156
|
// TODO: Implement API call
|
|
153
157
|
const data = await this.contract.getStaticMarketData();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProtocolReader.js","sourceRoot":"","sources":["../../src/classes/ProtocolReader.ts"],"names":[],"mappings":";;;;;;AACA,wCAA2D;AAC3D,sFAA6C;AAG7C,oCAAwC;AAIxC,wEAAgD;AAEnC,QAAA,YAAY,GAAG;IACxB,SAAS,EAAE,6EAA6E;IACxF,gBAAgB,EAAE,+EAA+E;IACjG,aAAa,EAAE,EAAE;IACjB,IAAI,EAAE,KAAK;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"ProtocolReader.js","sourceRoot":"","sources":["../../src/classes/ProtocolReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Zapper.d.ts","sourceRoot":"","sources":["../../src/classes/Zapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAK,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Zapper.d.ts","sourceRoot":"","sources":["../../src/classes/Zapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAK,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,MAAM,WAAW,IAAI;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,KAAK,CAAA;CACd;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,eAAe,CAAC;AACzF,eAAO,MAAM,gBAAgB,iCAK3B,CAAC;AAEH,MAAM,WAAW,OAAO;IACpB,cAAc,CACV,MAAM,EAAE,OAAO,EACf,sBAAsB,EAAE,OAAO,EAC/B,UAAU,EAAE,IAAI,EAChB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,OAAO,EACzB,QAAQ,EAAE,OAAO,GAClB,OAAO,CAAC,mBAAmB,CAAC,CAAA;CAClC;AAED,qBAAa,MAAO,SAAQ,QAAQ,CAAC,OAAO,CAAC;IACzC,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;gBAEN,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW;IAQpE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO;IAKhE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAG,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IAK9H,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IAyExI,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAE,OAAe;IAsBpG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;;IAW9C,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,GAAE,OAAe;CAyB9G"}
|
package/dist/classes/Zapper.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.Zapper = exports.zapperTypeToName = void 0;
|
|
|
7
7
|
const helpers_1 = require("../helpers");
|
|
8
8
|
const Calldata_1 = require("./Calldata");
|
|
9
9
|
const SimpleZapper_json_1 = __importDefault(require("../abis/SimpleZapper.json"));
|
|
10
|
+
const setup_1 = require("../setup");
|
|
10
11
|
;
|
|
11
12
|
exports.zapperTypeToName = new Map([
|
|
12
13
|
['native-vault', 'nativeVaultZapper'],
|
|
@@ -44,7 +45,42 @@ class Zapper extends Calldata_1.Calldata {
|
|
|
44
45
|
// For native MON into non-WMON tokens: wrap first, then swap WMON → target
|
|
45
46
|
// The contract handles wrapping when depositAsWrappedNative=true
|
|
46
47
|
const swapInputToken = isNative ? config.wrapped_native : inputToken;
|
|
47
|
-
|
|
48
|
+
// No-op short-circuit: same-token zap (e.g., USDC → USDC market). The
|
|
49
|
+
// SimpleZapper.swapAndDeposit contract handles this on-chain via
|
|
50
|
+
// _isMatchingToken (line 80-85). Mirror that here so we don't waste a
|
|
51
|
+
// DEX RPC call and don't accidentally charge a fee on a no-op.
|
|
52
|
+
if (swapInputToken.toLowerCase() === outputToken.toLowerCase()) {
|
|
53
|
+
const swap = {
|
|
54
|
+
inputToken: isNative ? helpers_1.NATIVE_ADDRESS : inputToken,
|
|
55
|
+
inputAmount: amount,
|
|
56
|
+
outputToken: outputToken,
|
|
57
|
+
target: helpers_1.EMPTY_ADDRESS,
|
|
58
|
+
slippage: 0n,
|
|
59
|
+
call: helpers_1.EMPTY_BYTES,
|
|
60
|
+
};
|
|
61
|
+
const expected_shares = await ctoken.convertToShares(amount);
|
|
62
|
+
return this.getCallData("swapAndDeposit", [
|
|
63
|
+
ctoken.address,
|
|
64
|
+
isNative,
|
|
65
|
+
swap,
|
|
66
|
+
expected_shares,
|
|
67
|
+
collateralize,
|
|
68
|
+
this.provider.address
|
|
69
|
+
]);
|
|
70
|
+
}
|
|
71
|
+
// Resolve fee from policy. The policy already exempts no-ops via
|
|
72
|
+
// same-token + native↔wrapped checks, so the only way feeBps > 0 here
|
|
73
|
+
// is for a real swap.
|
|
74
|
+
const feeBps = setup_1.setup_config.feePolicy.getFeeBps({
|
|
75
|
+
operation: 'zap',
|
|
76
|
+
inputToken: isNative ? helpers_1.NATIVE_ADDRESS : inputToken,
|
|
77
|
+
outputToken: outputToken,
|
|
78
|
+
inputAmount: amount,
|
|
79
|
+
currentLeverage: null,
|
|
80
|
+
targetLeverage: null,
|
|
81
|
+
});
|
|
82
|
+
const feeReceiver = feeBps > 0n ? setup_1.setup_config.feePolicy.feeReceiver : undefined;
|
|
83
|
+
const quote = await config.dexAgg.quote(this.address, swapInputToken, outputToken, amount, slippage, feeBps, feeReceiver);
|
|
48
84
|
const swap = {
|
|
49
85
|
inputToken: isNative ? helpers_1.NATIVE_ADDRESS : inputToken,
|
|
50
86
|
inputAmount: amount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Zapper.js","sourceRoot":"","sources":["../../src/classes/Zapper.ts"],"names":[],"mappings":";;;;;;AAEA,wCAAuG;AAEvG,yCAAsC;AACtC,kFAA4C;
|
|
1
|
+
{"version":3,"file":"Zapper.js","sourceRoot":"","sources":["../../src/classes/Zapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -236,7 +236,7 @@
|
|
|
236
236
|
"WBTC-DynamicIRM": "0x95B961B9aD06dB25831FcdA3c7A79b1EB7c3AFA8"
|
|
237
237
|
}
|
|
238
238
|
},
|
|
239
|
-
"ProtocolReader": "
|
|
239
|
+
"ProtocolReader": "0xC38ee49A22c7A7888f51F0Cc9a3663636a0deEa7",
|
|
240
240
|
"CombinedAggregator-ezETH": "0xd5F84C4497621768f3F08b65ad7019BdF183b1fd",
|
|
241
241
|
"CombinedAggregator-earnAUSD": "0xf80CC9965d260d7cD96E41b9734F031279dCDf2f",
|
|
242
242
|
"DAOTimelock": "0x2677738657F27e1A3591E00AD7E5a78807688C08",
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import Decimal from "decimal.js";
|
|
2
|
+
import { address } from "./types";
|
|
3
|
+
import { ChainRpcPrefix } from "./helpers";
|
|
4
|
+
/**
|
|
5
|
+
* Fee policy for SDK-initiated DEX swaps (zaps and leverage operations).
|
|
6
|
+
*
|
|
7
|
+
* Fees are charged at the DEX aggregator layer via KyberSwap's `feeAmount`
|
|
8
|
+
* parameter (`chargeFeeBy=currency_in`, `isInBps=true`). The user's swap input
|
|
9
|
+
* is reduced by the fee bps before the swap; the fee is sent directly to
|
|
10
|
+
* `feeReceiver` by the aggregator.
|
|
11
|
+
*
|
|
12
|
+
* Design notes
|
|
13
|
+
* ------------
|
|
14
|
+
* - Fees are denominated in BPS of swap notional (input amount), matching the
|
|
15
|
+
* convention used by every major perp platform (Hyperliquid, Binance, Bybit,
|
|
16
|
+
* dYdX, GMX). They are NOT scaled by leverage. Users coming from those
|
|
17
|
+
* venues expect "X bps per trade" semantics.
|
|
18
|
+
*
|
|
19
|
+
* - The policy callback shape is intentionally extensible. `flatFeePolicy`
|
|
20
|
+
* ships as the default convenience helper. Consumers needing more complex
|
|
21
|
+
* logic (per-asset overrides, leverage tiers, time-of-day, etc.) can write
|
|
22
|
+
* their own object implementing `FeePolicy`.
|
|
23
|
+
*
|
|
24
|
+
* - No-op exemptions: same input/output token (zapping a token into its own
|
|
25
|
+
* market) and native↔wrapped (zapping native into the wrapped-native market)
|
|
26
|
+
* bypass the DEX aggregator entirely on-chain via SimpleZapper's
|
|
27
|
+
* _isMatchingToken short-circuit. The default policy mirrors that path so
|
|
28
|
+
* no fee is charged for swaps that don't actually swap anything.
|
|
29
|
+
*
|
|
30
|
+
* - Deleverage interaction: when fees are active, the deleverage swap-sizing
|
|
31
|
+
* overhead must absorb the fee bps in addition to LEVERAGE.DELEVERAGE_OVERHEAD_BPS
|
|
32
|
+
* to prevent dust debt. The fee compensation is applied at the call site,
|
|
33
|
+
* not in the policy itself.
|
|
34
|
+
*
|
|
35
|
+
* Future functionality (not yet implemented)
|
|
36
|
+
* ------------------------------------------
|
|
37
|
+
* - **SDK-native token classification.** Currently, stable/volatile classification
|
|
38
|
+
* requires a consumer-provided `classify` callback. Long-term, the SDK should
|
|
39
|
+
* carry token category metadata directly on each cToken/Market (sourced from
|
|
40
|
+
* the Curvance API or chain config), eliminating the duplicate source of truth
|
|
41
|
+
* between the SDK and the v1 app's token lists.
|
|
42
|
+
*
|
|
43
|
+
* - **Multi-receiver fee splits.** KyberSwap supports comma-separated
|
|
44
|
+
* `feeReceiver` and `feeAmount` lists. The current FeePolicy only exposes a
|
|
45
|
+
* single receiver. Extending to a `feeReceivers: { address, share }[]` array
|
|
46
|
+
* would let the protocol, integrators, and a referral program co-receive
|
|
47
|
+
* fees in one swap call.
|
|
48
|
+
*
|
|
49
|
+
* - **Per-user fee tiers / discounts.** The current policy is global (one
|
|
50
|
+
* policy per setupChain). To support staker discounts, volume tiers, or
|
|
51
|
+
* referral codes, the policy would need to be invoked with per-call user
|
|
52
|
+
* context (user address, staking balance, referral code) — likely via an
|
|
53
|
+
* additional optional field on FeePolicyContext.
|
|
54
|
+
*
|
|
55
|
+
* - **Volume-based tiering.** Hyperliquid-style 14-day rolling volume tiers
|
|
56
|
+
* require off-chain volume tracking (Curvance API) and a policy that can
|
|
57
|
+
* query it. The classifier callback pattern generalizes to this — a
|
|
58
|
+
* `getUserVolume(address)` callback that the policy uses to pick a tier.
|
|
59
|
+
*
|
|
60
|
+
* - **Per-aggregator routing fees.** Currently both KyberSwap and Kuru use the
|
|
61
|
+
* same fee policy. If routing economics differ (e.g., Kuru's referrerFeeBps
|
|
62
|
+
* has different rebate semantics), the policy interface could be extended
|
|
63
|
+
* to take an aggregator name and return aggregator-specific bps.
|
|
64
|
+
*
|
|
65
|
+
* - **Leverage-tiered fees (if reversed from current decision).** The current
|
|
66
|
+
* design matches perp convention (flat bps on notional). If product later
|
|
67
|
+
* wants to reduce fees at high leverage to keep equity-cost flat, that's a
|
|
68
|
+
* one-line change in a custom FeePolicy implementation reading
|
|
69
|
+
* ctx.currentLeverage / ctx.targetLeverage.
|
|
70
|
+
*/
|
|
71
|
+
export type FeeOperation = 'leverage-up' | 'leverage-down' | 'deposit-and-leverage' | 'zap';
|
|
72
|
+
export interface FeePolicyContext {
|
|
73
|
+
/** Which SDK operation is requesting the fee. */
|
|
74
|
+
operation: FeeOperation;
|
|
75
|
+
/** Token being sent into the swap (the fee is taken from this side). */
|
|
76
|
+
inputToken: address;
|
|
77
|
+
/** Token being received from the swap. */
|
|
78
|
+
outputToken: address;
|
|
79
|
+
/** Raw amount of `inputToken` being swapped (in input token's native decimals). */
|
|
80
|
+
inputAmount: bigint;
|
|
81
|
+
/** Current leverage at the time of operation. null for zap. */
|
|
82
|
+
currentLeverage: Decimal | null;
|
|
83
|
+
/** Target leverage. null for zap. */
|
|
84
|
+
targetLeverage: Decimal | null;
|
|
85
|
+
}
|
|
86
|
+
export interface FeePolicy {
|
|
87
|
+
/** Returns the fee in BPS for this operation. Return 0n for no fee. */
|
|
88
|
+
getFeeBps(ctx: FeePolicyContext): bigint;
|
|
89
|
+
/** Address that receives the fee. KyberSwap supports comma-separated
|
|
90
|
+
* multi-receiver lists if extended in the future. */
|
|
91
|
+
feeReceiver: address;
|
|
92
|
+
}
|
|
93
|
+
/** Curvance DAO fee receiver — same wallet used for protocol interest fees
|
|
94
|
+
* and existing Kuru aggregator referrer fees. */
|
|
95
|
+
export declare const CURVANCE_DAO_FEE_RECEIVER: address;
|
|
96
|
+
/** Token classification used by the optional category-tier override.
|
|
97
|
+
* Consumers provide their own classifier — the SDK does not currently
|
|
98
|
+
* populate token categories from market metadata. */
|
|
99
|
+
export type TokenClass = 'stable' | 'volatile' | 'native';
|
|
100
|
+
export interface FlatFeePolicyConfig {
|
|
101
|
+
/** Default fee in BPS for non-no-op swaps. Must be < 10000. */
|
|
102
|
+
bps: bigint;
|
|
103
|
+
/** Address that receives the fee. */
|
|
104
|
+
feeReceiver: address;
|
|
105
|
+
/** Chain identifier — used to resolve wrapped-native for the no-op
|
|
106
|
+
* exemption. Must match the chain passed to setupChain. */
|
|
107
|
+
chain: ChainRpcPrefix;
|
|
108
|
+
/** Optional override: BPS for stable→stable swaps. Only takes effect when
|
|
109
|
+
* `classify` is provided AND both input and output classify as 'stable'.
|
|
110
|
+
* Defaults to `bps` if omitted. */
|
|
111
|
+
stableToStableBps?: bigint;
|
|
112
|
+
/** Optional token classifier. When provided AND `stableToStableBps` is set,
|
|
113
|
+
* used to detect stable→stable swaps. The SDK does not currently populate
|
|
114
|
+
* this from market metadata — consumers provide classification from their
|
|
115
|
+
* own data sources (e.g., app-side token lists or the Curvance API). */
|
|
116
|
+
classify?: (token: address) => TokenClass | null;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Default fee policy: flat BPS for all operations, with no-op exemptions for
|
|
120
|
+
* same-token and native↔wrapped routes. Optionally supports a stable→stable
|
|
121
|
+
* tier when a classifier is provided.
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* // Simple flat 4 bps everywhere except no-ops:
|
|
125
|
+
* flatFeePolicy({
|
|
126
|
+
* bps: 4n,
|
|
127
|
+
* feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
|
|
128
|
+
* chain: 'monad-mainnet',
|
|
129
|
+
* })
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* // 4 bps default, 1 bps on stable→stable pairs:
|
|
133
|
+
* const STABLES = new Set(['0xUSDC...', '0xAUSD...', '0xUSDT...']);
|
|
134
|
+
* flatFeePolicy({
|
|
135
|
+
* bps: 4n,
|
|
136
|
+
* stableToStableBps: 1n,
|
|
137
|
+
* feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
|
|
138
|
+
* chain: 'monad-mainnet',
|
|
139
|
+
* classify: (addr) => STABLES.has(addr.toLowerCase()) ? 'stable' : 'volatile',
|
|
140
|
+
* })
|
|
141
|
+
*/
|
|
142
|
+
export declare function flatFeePolicy(config: FlatFeePolicyConfig): FeePolicy;
|
|
143
|
+
/**
|
|
144
|
+
* Convenience: a no-op fee policy that returns 0 bps for all operations.
|
|
145
|
+
* This is the default when no policy is configured in setupChain — it
|
|
146
|
+
* preserves backward compatibility with pre-fee-policy SDK behavior.
|
|
147
|
+
*
|
|
148
|
+
* The receiver is set to the Curvance DAO address for consistency, but it's
|
|
149
|
+
* never used since getFeeBps always returns 0n.
|
|
150
|
+
*
|
|
151
|
+
* Frozen to prevent accidental mutation. Anyone needing a customized no-op
|
|
152
|
+
* variant should construct a fresh `flatFeePolicy({ bps: 0n, ... })` instead
|
|
153
|
+
* of mutating this singleton.
|
|
154
|
+
*/
|
|
155
|
+
export declare const NO_FEE_POLICY: FeePolicy;
|
|
156
|
+
//# sourceMappingURL=feePolicy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feePolicy.d.ts","sourceRoot":"","sources":["../src/feePolicy.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AAEH,MAAM,MAAM,YAAY,GAClB,aAAa,GACb,eAAe,GACf,sBAAsB,GACtB,KAAK,CAAC;AAEZ,MAAM,WAAW,gBAAgB;IAC7B,iDAAiD;IACjD,SAAS,EAAE,YAAY,CAAC;IACxB,wEAAwE;IACxE,UAAU,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,eAAe,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,qCAAqC;IACrC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACtB,uEAAuE;IACvE,SAAS,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAAC;IACzC;0DACsD;IACtD,WAAW,EAAE,OAAO,CAAC;CACxB;AAED;kDACkD;AAClD,eAAO,MAAM,yBAAyB,EAAE,OACQ,CAAC;AAEjD;;sDAEsD;AACtD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IAChC,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB;gEAC4D;IAC5D,KAAK,EAAE,cAAc,CAAC;IACtB;;wCAEoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;6EAGyE;IACzE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,GAAG,IAAI,CAAC;CACpD;AAID;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CA2DpE;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,EAAE,SAG1B,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NO_FEE_POLICY = exports.CURVANCE_DAO_FEE_RECEIVER = void 0;
|
|
4
|
+
exports.flatFeePolicy = flatFeePolicy;
|
|
5
|
+
const chains_1 = require("./chains");
|
|
6
|
+
/** Curvance DAO fee receiver — same wallet used for protocol interest fees
|
|
7
|
+
* and existing Kuru aggregator referrer fees. */
|
|
8
|
+
exports.CURVANCE_DAO_FEE_RECEIVER = '0x0Acb7eF4D8733C719d60e0992B489b629bc55C02';
|
|
9
|
+
const NATIVE_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
|
|
10
|
+
/**
|
|
11
|
+
* Default fee policy: flat BPS for all operations, with no-op exemptions for
|
|
12
|
+
* same-token and native↔wrapped routes. Optionally supports a stable→stable
|
|
13
|
+
* tier when a classifier is provided.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* // Simple flat 4 bps everywhere except no-ops:
|
|
17
|
+
* flatFeePolicy({
|
|
18
|
+
* bps: 4n,
|
|
19
|
+
* feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
|
|
20
|
+
* chain: 'monad-mainnet',
|
|
21
|
+
* })
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* // 4 bps default, 1 bps on stable→stable pairs:
|
|
25
|
+
* const STABLES = new Set(['0xUSDC...', '0xAUSD...', '0xUSDT...']);
|
|
26
|
+
* flatFeePolicy({
|
|
27
|
+
* bps: 4n,
|
|
28
|
+
* stableToStableBps: 1n,
|
|
29
|
+
* feeReceiver: CURVANCE_DAO_FEE_RECEIVER,
|
|
30
|
+
* chain: 'monad-mainnet',
|
|
31
|
+
* classify: (addr) => STABLES.has(addr.toLowerCase()) ? 'stable' : 'volatile',
|
|
32
|
+
* })
|
|
33
|
+
*/
|
|
34
|
+
function flatFeePolicy(config) {
|
|
35
|
+
const { bps, feeReceiver, chain, stableToStableBps, classify } = config;
|
|
36
|
+
if (bps < 0n) {
|
|
37
|
+
throw new Error(`flatFeePolicy: bps must be non-negative, got ${bps}`);
|
|
38
|
+
}
|
|
39
|
+
if (bps >= 10000n) {
|
|
40
|
+
throw new Error(`flatFeePolicy: bps must be < 10000 (100%), got ${bps}`);
|
|
41
|
+
}
|
|
42
|
+
if (stableToStableBps !== undefined) {
|
|
43
|
+
if (stableToStableBps < 0n || stableToStableBps >= 10000n) {
|
|
44
|
+
throw new Error(`flatFeePolicy: stableToStableBps must be in [0, 10000), got ${stableToStableBps}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// Resolve wrapped-native for the chain at construction time. This is
|
|
48
|
+
// required so the policy can identify native↔wrapped no-ops without the
|
|
49
|
+
// call site having to pre-filter them.
|
|
50
|
+
const chainCfg = chains_1.chain_config[chain];
|
|
51
|
+
if (!chainCfg) {
|
|
52
|
+
throw new Error(`flatFeePolicy: unknown chain '${chain}'`);
|
|
53
|
+
}
|
|
54
|
+
const wrappedNativeLower = chainCfg.wrapped_native.toLowerCase();
|
|
55
|
+
return {
|
|
56
|
+
feeReceiver,
|
|
57
|
+
getFeeBps(ctx) {
|
|
58
|
+
const inLower = ctx.inputToken.toLowerCase();
|
|
59
|
+
const outLower = ctx.outputToken.toLowerCase();
|
|
60
|
+
// No-op: same input and output token (zapping a token into its
|
|
61
|
+
// own market). SimpleZapper.swapAndDeposit handles this on-chain
|
|
62
|
+
// via _isMatchingToken — no real swap occurs, no fee should apply.
|
|
63
|
+
if (inLower === outLower)
|
|
64
|
+
return 0n;
|
|
65
|
+
// No-op: native↔wrapped. Curvance native zappers handle wrap/unwrap
|
|
66
|
+
// without a DEX call, so no fee applies. This exemption is
|
|
67
|
+
// unconditional — native↔wrapped is always a no-op regardless of
|
|
68
|
+
// which call site invokes the policy.
|
|
69
|
+
if ((inLower === NATIVE_ADDRESS && outLower === wrappedNativeLower) ||
|
|
70
|
+
(inLower === wrappedNativeLower && outLower === NATIVE_ADDRESS)) {
|
|
71
|
+
return 0n;
|
|
72
|
+
}
|
|
73
|
+
// Stable→stable tier (only when both classify and stableToStableBps
|
|
74
|
+
// are provided).
|
|
75
|
+
if (classify && stableToStableBps !== undefined) {
|
|
76
|
+
const inClass = classify(ctx.inputToken);
|
|
77
|
+
const outClass = classify(ctx.outputToken);
|
|
78
|
+
if (inClass === 'stable' && outClass === 'stable') {
|
|
79
|
+
return stableToStableBps;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return bps;
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Convenience: a no-op fee policy that returns 0 bps for all operations.
|
|
88
|
+
* This is the default when no policy is configured in setupChain — it
|
|
89
|
+
* preserves backward compatibility with pre-fee-policy SDK behavior.
|
|
90
|
+
*
|
|
91
|
+
* The receiver is set to the Curvance DAO address for consistency, but it's
|
|
92
|
+
* never used since getFeeBps always returns 0n.
|
|
93
|
+
*
|
|
94
|
+
* Frozen to prevent accidental mutation. Anyone needing a customized no-op
|
|
95
|
+
* variant should construct a fresh `flatFeePolicy({ bps: 0n, ... })` instead
|
|
96
|
+
* of mutating this singleton.
|
|
97
|
+
*/
|
|
98
|
+
exports.NO_FEE_POLICY = Object.freeze({
|
|
99
|
+
feeReceiver: exports.CURVANCE_DAO_FEE_RECEIVER,
|
|
100
|
+
getFeeBps: () => 0n,
|
|
101
|
+
});
|
|
102
|
+
//# sourceMappingURL=feePolicy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feePolicy.js","sourceRoot":"","sources":["../src/feePolicy.ts"],"names":[],"mappings":";;;AA6JA,sCA2DC;AArND,qCAAwC;AAmGxC;kDACkD;AACrC,QAAA,yBAAyB,GAClC,4CAA4C,CAAC;AA0BjD,MAAM,cAAc,GAAG,4CAA4C,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,aAAa,CAAC,MAA2B;IACrD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAExE,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,GAAG,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,iBAAiB,GAAG,EAAE,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,+DAA+D,iBAAiB,EAAE,CAAC,CAAC;QACxG,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,uCAAuC;IACvC,MAAM,QAAQ,GAAG,qBAAY,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,GAAG,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IAEjE,OAAO;QACH,WAAW;QACX,SAAS,CAAC,GAAqB;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YAE/C,+DAA+D;YAC/D,iEAAiE;YACjE,mEAAmE;YACnE,IAAI,OAAO,KAAK,QAAQ;gBAAE,OAAO,EAAE,CAAC;YAEpC,oEAAoE;YACpE,2DAA2D;YAC3D,iEAAiE;YACjE,sCAAsC;YACtC,IACI,CAAC,OAAO,KAAK,cAAc,IAAI,QAAQ,KAAK,kBAAkB,CAAC;gBAC/D,CAAC,OAAO,KAAK,kBAAkB,IAAI,QAAQ,KAAK,cAAc,CAAC,EACjE,CAAC;gBACC,OAAO,EAAE,CAAC;YACd,CAAC;YAED,oEAAoE;YACpE,iBAAiB;YACjB,IAAI,QAAQ,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC3C,IAAI,OAAO,KAAK,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAChD,OAAO,iBAAiB,CAAC;gBAC7B,CAAC;YACL,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC;KACJ,CAAC;AACN,CAAC;AAED;;;;;;;;;;;GAWG;AACU,QAAA,aAAa,GAAc,MAAM,CAAC,MAAM,CAAC;IAClD,WAAW,EAAE,iCAAyB;IACtC,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE;CACtB,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -24,4 +24,5 @@ __exportStar(require("./retry-provider"), exports);
|
|
|
24
24
|
__exportStar(require("./contracts"), exports);
|
|
25
25
|
__exportStar(require("./chains"), exports);
|
|
26
26
|
__exportStar(require("./validation"), exports);
|
|
27
|
+
__exportStar(require("./feePolicy"), exports);
|
|
27
28
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,mDAAiC;AACjC,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,mDAAiC;AACjC,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B;AAC7B,8CAA4B"}
|