@defisaver/sdk 1.0.23 → 1.0.25

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 (39) hide show
  1. package/esm/src/actions/curveusd/CurveUsdBorrowAction.d.ts +15 -0
  2. package/esm/src/actions/curveusd/CurveUsdBorrowAction.js +22 -0
  3. package/esm/src/actions/curveusd/CurveUsdCreateAction.d.ts +22 -0
  4. package/esm/src/actions/curveusd/CurveUsdCreateAction.js +44 -0
  5. package/esm/src/actions/curveusd/CurveUsdPaybackAction.d.ts +22 -0
  6. package/esm/src/actions/curveusd/CurveUsdPaybackAction.js +43 -0
  7. package/esm/src/actions/curveusd/CurveUsdRepayAction.d.ts +9 -0
  8. package/esm/src/actions/curveusd/CurveUsdRepayAction.js +14 -0
  9. package/esm/src/actions/curveusd/CurveUsdSupplyAction.d.ts +20 -0
  10. package/esm/src/actions/curveusd/CurveUsdSupplyAction.js +40 -0
  11. package/esm/src/actions/curveusd/CurveUsdWithdrawAction.d.ts +15 -0
  12. package/esm/src/actions/curveusd/CurveUsdWithdrawAction.js +22 -0
  13. package/esm/src/actions/curveusd/index.d.ts +6 -0
  14. package/esm/src/actions/curveusd/index.js +6 -0
  15. package/esm/src/actions/index.d.ts +2 -1
  16. package/esm/src/actions/index.js +2 -1
  17. package/esm/src/addresses.d.ts +15 -0
  18. package/esm/src/addresses.js +6 -0
  19. package/esm/src/index.d.ts +60 -0
  20. package/esm/src/types.d.ts +2 -1
  21. package/esm/src/utils/curveusd-utils.d.ts +15 -0
  22. package/esm/src/utils/curveusd-utils.js +10 -0
  23. package/esm/src/utils/index.d.ts +2 -1
  24. package/esm/src/utils/index.js +2 -1
  25. package/package.json +1 -1
  26. package/src/actions/curveusd/CurveUsdBorrowAction.ts +34 -0
  27. package/src/actions/curveusd/CurveUsdCreateAction.ts +49 -0
  28. package/src/actions/curveusd/CurveUsdPaybackAction.ts +48 -0
  29. package/src/actions/curveusd/CurveUsdRepayAction.ts +27 -0
  30. package/src/actions/curveusd/CurveUsdSupplyAction.ts +44 -0
  31. package/src/actions/curveusd/CurveUsdWithdrawAction.ts +34 -0
  32. package/src/actions/curveusd/index.ts +7 -0
  33. package/src/actions/index.ts +2 -0
  34. package/src/addresses.ts +7 -0
  35. package/src/types.ts +2 -1
  36. package/src/utils/curveusd-utils.ts +13 -0
  37. package/src/utils/index.ts +2 -0
  38. package/umd/index.js +333 -40
  39. package/yarn-error.log +3976 -0
package/umd/index.js CHANGED
@@ -7,7 +7,7 @@
7
7
  exports["defisaver-sdk"] = factory(require("web3-eth-abi"), require("web3-utils"), require("decimal.js"), require("@defisaver/tokens"), require("@ethersproject/solidity"), require("@ethersproject/address"), require("axios"));
8
8
  else
9
9
  root["defisaver-sdk"] = factory(root["web3-eth-abi"], root["web3-utils"], root["decimal.js"], root["@defisaver/tokens"], root["@ethersproject/solidity"], root["@ethersproject/address"], root["axios"]);
10
- })(this, (__WEBPACK_EXTERNAL_MODULE__2__, __WEBPACK_EXTERNAL_MODULE__3__, __WEBPACK_EXTERNAL_MODULE__5__, __WEBPACK_EXTERNAL_MODULE__6__, __WEBPACK_EXTERNAL_MODULE__105__, __WEBPACK_EXTERNAL_MODULE__106__, __WEBPACK_EXTERNAL_MODULE__243__) => {
10
+ })(this, (__WEBPACK_EXTERNAL_MODULE__2__, __WEBPACK_EXTERNAL_MODULE__3__, __WEBPACK_EXTERNAL_MODULE__5__, __WEBPACK_EXTERNAL_MODULE__6__, __WEBPACK_EXTERNAL_MODULE__105__, __WEBPACK_EXTERNAL_MODULE__106__, __WEBPACK_EXTERNAL_MODULE__251__) => {
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ "use strict";
13
13
  /******/ var __webpack_modules__ = ([
@@ -1411,7 +1411,13 @@ var actionAddresses = {
1411
1411
  CompV3Payback: '0x6d14b9d69aADcb0d31a3e5d89fba75AB053fc9f0',
1412
1412
  CompV3Supply: '0xaF36Eca43bb26468078B8163fe5Bc1fCFc292095',
1413
1413
  CompV3Transfer: '0xeD7450e9C17146476137b77198DFfB17857906c4',
1414
- CompV3Withdraw: '0x0b0F21EDE32DE4243D9145a899E97FC2366Aec46'
1414
+ CompV3Withdraw: '0x0b0F21EDE32DE4243D9145a899E97FC2366Aec46',
1415
+ // crvUSD
1416
+ CurveUsdBorrow: '0x1BA4D23c1af6a57257bA54DDb9Dbc009941924a6',
1417
+ CurveUsdCreate: '0x8Be91C3a8095B7086ea950f4E4AeF16eDe47Df25',
1418
+ CurveUsdPayback: '0x9BD581efD76DeC4FA4a71B9e583094874fE1d9Ab',
1419
+ CurveUsdSupply: '0x3eA5d08F8f7d6bA52DAa88c47E349125437e0eEA',
1420
+ CurveUsdWithdraw: '0xa05Afb6C7f8b7B76B890c0839A4ceC17667Cde29'
1415
1421
  },
1416
1422
  [_config__WEBPACK_IMPORTED_MODULE_0__.NETWORKS.optimism.chainId]: {
1417
1423
  DFSSell: '0xC6c601fcAa870efd26C624F8c65fbc54cBe533b1',
@@ -1805,6 +1811,7 @@ __webpack_require__.r(__webpack_exports__);
1805
1811
  /* harmony export */ "compoundV3": () => (/* reexport module object */ _compoundV3__WEBPACK_IMPORTED_MODULE_22__),
1806
1812
  /* harmony export */ "convex": () => (/* reexport module object */ _convex__WEBPACK_IMPORTED_MODULE_20__),
1807
1813
  /* harmony export */ "curve": () => (/* reexport module object */ _curve__WEBPACK_IMPORTED_MODULE_15__),
1814
+ /* harmony export */ "curveusd": () => (/* reexport module object */ _curveusd__WEBPACK_IMPORTED_MODULE_25__),
1808
1815
  /* harmony export */ "dydx": () => (/* reexport module object */ _dydx__WEBPACK_IMPORTED_MODULE_7__),
1809
1816
  /* harmony export */ "flashloan": () => (/* reexport module object */ _flashloan__WEBPACK_IMPORTED_MODULE_4__),
1810
1817
  /* harmony export */ "guni": () => (/* reexport module object */ _guni__WEBPACK_IMPORTED_MODULE_16__),
@@ -1845,6 +1852,8 @@ __webpack_require__.r(__webpack_exports__);
1845
1852
  /* harmony import */ var _compoundV3__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(206);
1846
1853
  /* harmony import */ var _morpho__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(214);
1847
1854
  /* harmony import */ var _bprotocol__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(224);
1855
+ /* harmony import */ var _curveusd__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(227);
1856
+
1848
1857
 
1849
1858
 
1850
1859
 
@@ -9083,6 +9092,287 @@ class BprotocolLiquitySPWithdrawAction extends _Action__WEBPACK_IMPORTED_MODULE_
9083
9092
  /* 227 */
9084
9093
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9085
9094
 
9095
+ __webpack_require__.r(__webpack_exports__);
9096
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9097
+ /* harmony export */ "CurveUsdBorrowAction": () => (/* reexport safe */ _CurveUsdBorrowAction__WEBPACK_IMPORTED_MODULE_3__.CurveUsdBorrowAction),
9098
+ /* harmony export */ "CurveUsdCreateAction": () => (/* reexport safe */ _CurveUsdCreateAction__WEBPACK_IMPORTED_MODULE_0__.CurveUsdCreateAction),
9099
+ /* harmony export */ "CurveUsdPaybackAction": () => (/* reexport safe */ _CurveUsdPaybackAction__WEBPACK_IMPORTED_MODULE_4__.CurveUsdPaybackAction),
9100
+ /* harmony export */ "CurveUsdRepayAction": () => (/* reexport safe */ _CurveUsdRepayAction__WEBPACK_IMPORTED_MODULE_5__.CurveUsdRepayAction),
9101
+ /* harmony export */ "CurveUsdSupplyAction": () => (/* reexport safe */ _CurveUsdSupplyAction__WEBPACK_IMPORTED_MODULE_1__.CurveUsdSupplyAction),
9102
+ /* harmony export */ "CurveUsdWithdrawAction": () => (/* reexport safe */ _CurveUsdWithdrawAction__WEBPACK_IMPORTED_MODULE_2__.CurveUsdWithdrawAction)
9103
+ /* harmony export */ });
9104
+ /* harmony import */ var _CurveUsdCreateAction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(228);
9105
+ /* harmony import */ var _CurveUsdSupplyAction__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(230);
9106
+ /* harmony import */ var _CurveUsdWithdrawAction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(231);
9107
+ /* harmony import */ var _CurveUsdBorrowAction__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(232);
9108
+ /* harmony import */ var _CurveUsdPaybackAction__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(233);
9109
+ /* harmony import */ var _CurveUsdRepayAction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(234);
9110
+
9111
+
9112
+
9113
+
9114
+
9115
+
9116
+
9117
+ /***/ }),
9118
+ /* 228 */
9119
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9120
+
9121
+ __webpack_require__.r(__webpack_exports__);
9122
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9123
+ /* harmony export */ "CurveUsdCreateAction": () => (/* binding */ CurveUsdCreateAction)
9124
+ /* harmony export */ });
9125
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
9126
+ /* harmony import */ var _utils_general__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);
9127
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27);
9128
+ /* harmony import */ var _utils_curveusd_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(229);
9129
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9130
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
9131
+
9132
+
9133
+
9134
+
9135
+
9136
+ /**
9137
+ * CurveUsdCreateAction - Action that creates a curveusd position on behalf of proxy
9138
+ *
9139
+ * @category CurveUsd
9140
+ */
9141
+ class CurveUsdCreateAction extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9142
+ /**
9143
+ * address controllerAddress - Address of the curveusd market controller
9144
+ * address from - Address from which to pull collateral asset, will default to proxy
9145
+ * address to - Address that will receive the borrowed crvUSD, will default to proxy
9146
+ * uint256 collateralAmount - Amount of collateral asset to supply
9147
+ * uint256 debtAmount - Amount of crvUSD to borrow
9148
+ * uint256 nBands - Number of bands in which the collateral will be supplied
9149
+ */
9150
+ /// @dev both collateralAmount and debtAmount must be non-zero and can be maxUint
9151
+ constructor(controllerAddress, from, to, collateralAmount, debtAmount, nBands) {
9152
+ (0,_utils_general__WEBPACK_IMPORTED_MODULE_1__.requireAddress)(to);
9153
+ super('CurveUsdCreate', (0,_addresses__WEBPACK_IMPORTED_MODULE_2__.getAddr)('CurveUsdCreate'), ['address', 'address', 'address', 'uint256', 'uint256', 'uint256'], [controllerAddress, from, to, collateralAmount, debtAmount, nBands]);
9154
+ this.mappableArgs = [...this.args];
9155
+ }
9156
+ getAssetsToApprove() {
9157
+ var _this = this;
9158
+ return _asyncToGenerator(function* () {
9159
+ return [{
9160
+ owner: _this.args[1],
9161
+ asset: _utils_curveusd_utils__WEBPACK_IMPORTED_MODULE_3__.controllerToAssetMap[_this.args[0]]
9162
+ }];
9163
+ })();
9164
+ }
9165
+ }
9166
+
9167
+ /***/ }),
9168
+ /* 229 */
9169
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9170
+
9171
+ __webpack_require__.r(__webpack_exports__);
9172
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9173
+ /* harmony export */ "controllerFactoryAddress": () => (/* binding */ controllerFactoryAddress),
9174
+ /* harmony export */ "controllerToAssetMap": () => (/* binding */ controllerToAssetMap),
9175
+ /* harmony export */ "curveusdMarkets": () => (/* binding */ curveusdMarkets)
9176
+ /* harmony export */ });
9177
+ /// @dev debtAvailableBlock is only used in v3-contracts repo
9178
+ var curveusdMarkets = {
9179
+ sfrxETH: {
9180
+ controllerAddress: '0x8472a9a7632b173c8cf3a86d3afec50c35548e76',
9181
+ debtAvailableBlock: 17425859
9182
+ },
9183
+ wstETH: {
9184
+ controllerAddress: '0x100dAa78fC509Db39Ef7D04DE0c1ABD299f4C6CE',
9185
+ debtAvailableBlock: 17487165
9186
+ }
9187
+ };
9188
+ var controllerToAssetMap = {
9189
+ '0x8472a9a7632b173c8cf3a86d3afec50c35548e76': '0xac3E018457B222d93114458476f3E3416Abbe38F',
9190
+ '0x100dAa78fC509Db39Ef7D04DE0c1ABD299f4C6CE': '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0'
9191
+ };
9192
+ var controllerFactoryAddress = '0xC9332fdCB1C491Dcc683bAe86Fe3cb70360738BC';
9193
+
9194
+ /***/ }),
9195
+ /* 230 */
9196
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9197
+
9198
+ __webpack_require__.r(__webpack_exports__);
9199
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9200
+ /* harmony export */ "CurveUsdSupplyAction": () => (/* binding */ CurveUsdSupplyAction)
9201
+ /* harmony export */ });
9202
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
9203
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27);
9204
+ /* harmony import */ var _utils_curveusd_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(229);
9205
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9206
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
9207
+
9208
+
9209
+
9210
+
9211
+ /**
9212
+ * CurveUsdSupplyAction - Action that supplies collateral to a curveusd position
9213
+ *
9214
+ * @category CurveUsd
9215
+ */
9216
+ class CurveUsdSupplyAction extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9217
+ /**
9218
+ * address controllerAddress - Address of the curveusd market controller
9219
+ * address from - Address from which to pull collateral asset, will default to proxy
9220
+ * address onBehalfOf - Address for which we are supplying, will default to proxy
9221
+ * uint256 collateralAmount - Amount of collateral asset to supply
9222
+ */
9223
+ /// @dev collateralAmount must be non-zero, can be maxUint
9224
+ constructor(controllerAddress, from, onBehalfOf, collateralAmount) {
9225
+ super('CurveUsdSupply', (0,_addresses__WEBPACK_IMPORTED_MODULE_1__.getAddr)('CurveUsdSupply'), ['address', 'address', 'address', 'uint256'], [controllerAddress, from, onBehalfOf, collateralAmount]);
9226
+ this.mappableArgs = [...this.args];
9227
+ }
9228
+ getAssetsToApprove() {
9229
+ var _this = this;
9230
+ return _asyncToGenerator(function* () {
9231
+ return [{
9232
+ owner: _this.args[1],
9233
+ asset: _utils_curveusd_utils__WEBPACK_IMPORTED_MODULE_2__.controllerToAssetMap[_this.args[0]]
9234
+ }];
9235
+ })();
9236
+ }
9237
+ }
9238
+
9239
+ /***/ }),
9240
+ /* 231 */
9241
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9242
+
9243
+ __webpack_require__.r(__webpack_exports__);
9244
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9245
+ /* harmony export */ "CurveUsdWithdrawAction": () => (/* binding */ CurveUsdWithdrawAction)
9246
+ /* harmony export */ });
9247
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
9248
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27);
9249
+
9250
+
9251
+ /**
9252
+ * CurveUsdWithdrawAction - Action that withdraws collateral from proxy curveusd position
9253
+ *
9254
+ * @category CurveUsd
9255
+ */
9256
+ class CurveUsdWithdrawAction extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9257
+ /**
9258
+ * address controllerAddress - Address of the curveusd market controller
9259
+ * address to - Address that will receive the withdrawn collateral, will default to proxy
9260
+ * uint256 collateralAmount - Amount of collateral to withdraw
9261
+ */
9262
+ /// @dev collateralAmount must be non-zero
9263
+ /// @dev if collateralAmount == uintMax will withdraw as much as the debt will allow
9264
+ constructor(controllerAddress, to, collateralAmount) {
9265
+ super('CurveUsdWithdraw', (0,_addresses__WEBPACK_IMPORTED_MODULE_1__.getAddr)('CurveUsdWithdraw'), ['address', 'address', 'uint256'], [controllerAddress, to, collateralAmount]);
9266
+ this.mappableArgs = [...this.args];
9267
+ }
9268
+ }
9269
+
9270
+ /***/ }),
9271
+ /* 232 */
9272
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9273
+
9274
+ __webpack_require__.r(__webpack_exports__);
9275
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9276
+ /* harmony export */ "CurveUsdBorrowAction": () => (/* binding */ CurveUsdBorrowAction)
9277
+ /* harmony export */ });
9278
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
9279
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27);
9280
+
9281
+
9282
+ /**
9283
+ * CurveUsdBorrowAction - Action that borrows crvUSD from proxy curveusd position
9284
+ *
9285
+ * @category CurveUsd
9286
+ */
9287
+ class CurveUsdBorrowAction extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9288
+ /**
9289
+ * address controllerAddress - Address of the curveusd market controller
9290
+ * address to - Address that will receive the borrowed crvUSD, will default to proxy
9291
+ * uint256 debtAmount - Amount of crvUSD to borrow
9292
+ */
9293
+ /// @dev debtAmount must be non-zero
9294
+ /// @dev if debtAmount == uintMax will borrow as much as the collateral will support
9295
+ constructor(controllerAddress, to, debtAmount) {
9296
+ super('CurveUsdBorrow', (0,_addresses__WEBPACK_IMPORTED_MODULE_1__.getAddr)('CurveUsdBorrow'), ['address', 'address', 'uint256'], [controllerAddress, to, debtAmount]);
9297
+ this.mappableArgs = [...this.args];
9298
+ }
9299
+ }
9300
+
9301
+ /***/ }),
9302
+ /* 233 */
9303
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9304
+
9305
+ __webpack_require__.r(__webpack_exports__);
9306
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9307
+ /* harmony export */ "CurveUsdPaybackAction": () => (/* binding */ CurveUsdPaybackAction)
9308
+ /* harmony export */ });
9309
+ /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);
9310
+ /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_defisaver_tokens__WEBPACK_IMPORTED_MODULE_0__);
9311
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
9312
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27);
9313
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9314
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
9315
+
9316
+
9317
+
9318
+ /**
9319
+ * CurveUsdPaybackAction - Action that pays back crvUSD to a curveusd position
9320
+ *
9321
+ * @category CurveUsd
9322
+ */
9323
+ class CurveUsdPaybackAction extends _Action__WEBPACK_IMPORTED_MODULE_1__.Action {
9324
+ /**
9325
+ * address controllerAddress - Address of the curveusd market controller
9326
+ * address from - Address from which to pull crvUSD, will default to proxy
9327
+ * address onBehalfOf - Address for which we are paying back debt, will default to proxy
9328
+ * address to - Address that will receive the crvUSD and collateral asset if close, will default to proxy
9329
+ * uint256 debtAmount - Amount of crvUSD to payback
9330
+ * int256 maxActiveBand - Don't allow active band to be higher than this (to prevent front-running the repay)
9331
+ */
9332
+ /// @dev debtAmount must be non-zero
9333
+ /// @dev if debtAmount >= debt will repay whole debt and close the position, transfering collateral
9334
+ constructor(controllerAddress, from, onBehalfOf, to, debtAmount, maxActiveBand) {
9335
+ super('CurveUsdPayback', (0,_addresses__WEBPACK_IMPORTED_MODULE_2__.getAddr)('CurveUsdPayback'), ['address', 'address', 'address', 'address', 'uint256', 'int256'], [controllerAddress, from, onBehalfOf, to, debtAmount, maxActiveBand]);
9336
+ this.mappableArgs = [...this.args];
9337
+ }
9338
+ getAssetsToApprove() {
9339
+ var _this = this;
9340
+ return _asyncToGenerator(function* () {
9341
+ return [{
9342
+ owner: _this.args[1],
9343
+ asset: (0,_defisaver_tokens__WEBPACK_IMPORTED_MODULE_0__.getAssetInfo)('crvUSD').address
9344
+ }];
9345
+ })();
9346
+ }
9347
+ }
9348
+
9349
+ /***/ }),
9350
+ /* 234 */
9351
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9352
+
9353
+ __webpack_require__.r(__webpack_exports__);
9354
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9355
+ /* harmony export */ "CurveUsdRepayAction": () => (/* binding */ CurveUsdRepayAction)
9356
+ /* harmony export */ });
9357
+ /* harmony import */ var _Action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
9358
+ /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27);
9359
+
9360
+
9361
+ /**
9362
+ *
9363
+ * @category CurveUsd
9364
+ */
9365
+ class CurveUsdRepayAction extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9366
+ constructor(controllerAddress, collAmount, to, swapData) {
9367
+ super('CurveUsdRepay', (0,_addresses__WEBPACK_IMPORTED_MODULE_1__.getAddr)('CurveUsdRepay'), ['address', 'uint256', 'address', 'uint256[]'], [controllerAddress, collAmount, to, swapData]);
9368
+ this.mappableArgs = [...this.args];
9369
+ }
9370
+ }
9371
+
9372
+ /***/ }),
9373
+ /* 235 */
9374
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9375
+
9086
9376
  __webpack_require__.r(__webpack_exports__);
9087
9377
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9088
9378
  /* harmony export */ "AaveV3QuotePriceTrigger": () => (/* reexport safe */ _AaveV3QuotePriceTrigger__WEBPACK_IMPORTED_MODULE_12__.AaveV3QuotePriceTrigger),
@@ -9099,19 +9389,19 @@ __webpack_require__.r(__webpack_exports__);
9099
9389
  /* harmony export */ "TrailingStopTrigger": () => (/* reexport safe */ _TrailingStopTrigger__WEBPACK_IMPORTED_MODULE_10__.TrailingStopTrigger),
9100
9390
  /* harmony export */ "UniV3CurrentTickTrigger": () => (/* reexport safe */ _UniV3CurrentTickTrigger__WEBPACK_IMPORTED_MODULE_2__.UniV3CurrentTickTrigger)
9101
9391
  /* harmony export */ });
9102
- /* harmony import */ var _MakerRatioTrigger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(228);
9103
- /* harmony import */ var _ChainLinkPriceTrigger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(229);
9104
- /* harmony import */ var _UniV3CurrentTickTrigger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(230);
9105
- /* harmony import */ var _TimestampTrigger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(231);
9106
- /* harmony import */ var _GasPriceTrigger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(232);
9107
- /* harmony import */ var _CompoundRatioTrigger__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(233);
9108
- /* harmony import */ var _ReflexerRatioTrigger__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(234);
9109
- /* harmony import */ var _LiquityRatioTrigger__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(235);
9110
- /* harmony import */ var _AaveV3RatioTrigger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(236);
9111
- /* harmony import */ var _CompV3RatioTrigger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(237);
9112
- /* harmony import */ var _TrailingStopTrigger__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(238);
9113
- /* harmony import */ var _CBRebondTrigger__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(239);
9114
- /* harmony import */ var _AaveV3QuotePriceTrigger__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(240);
9392
+ /* harmony import */ var _MakerRatioTrigger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(236);
9393
+ /* harmony import */ var _ChainLinkPriceTrigger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(237);
9394
+ /* harmony import */ var _UniV3CurrentTickTrigger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(238);
9395
+ /* harmony import */ var _TimestampTrigger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(239);
9396
+ /* harmony import */ var _GasPriceTrigger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(240);
9397
+ /* harmony import */ var _CompoundRatioTrigger__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(241);
9398
+ /* harmony import */ var _ReflexerRatioTrigger__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(242);
9399
+ /* harmony import */ var _LiquityRatioTrigger__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(243);
9400
+ /* harmony import */ var _AaveV3RatioTrigger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(244);
9401
+ /* harmony import */ var _CompV3RatioTrigger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(245);
9402
+ /* harmony import */ var _TrailingStopTrigger__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(246);
9403
+ /* harmony import */ var _CBRebondTrigger__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(247);
9404
+ /* harmony import */ var _AaveV3QuotePriceTrigger__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(248);
9115
9405
 
9116
9406
 
9117
9407
 
@@ -9127,7 +9417,7 @@ __webpack_require__.r(__webpack_exports__);
9127
9417
 
9128
9418
 
9129
9419
  /***/ }),
9130
- /* 228 */
9420
+ /* 236 */
9131
9421
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9132
9422
 
9133
9423
  __webpack_require__.r(__webpack_exports__);
@@ -9150,7 +9440,7 @@ class MakerRatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9150
9440
  }
9151
9441
 
9152
9442
  /***/ }),
9153
- /* 229 */
9443
+ /* 237 */
9154
9444
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9155
9445
 
9156
9446
  __webpack_require__.r(__webpack_exports__);
@@ -9173,7 +9463,7 @@ class ChainLinkPriceTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action
9173
9463
  }
9174
9464
 
9175
9465
  /***/ }),
9176
- /* 230 */
9466
+ /* 238 */
9177
9467
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9178
9468
 
9179
9469
  __webpack_require__.r(__webpack_exports__);
@@ -9196,7 +9486,7 @@ class UniV3CurrentTickTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Actio
9196
9486
  }
9197
9487
 
9198
9488
  /***/ }),
9199
- /* 231 */
9489
+ /* 239 */
9200
9490
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9201
9491
 
9202
9492
  __webpack_require__.r(__webpack_exports__);
@@ -9219,7 +9509,7 @@ class TimestampTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9219
9509
  }
9220
9510
 
9221
9511
  /***/ }),
9222
- /* 232 */
9512
+ /* 240 */
9223
9513
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9224
9514
 
9225
9515
  __webpack_require__.r(__webpack_exports__);
@@ -9242,7 +9532,7 @@ class GasPriceTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9242
9532
  }
9243
9533
 
9244
9534
  /***/ }),
9245
- /* 233 */
9535
+ /* 241 */
9246
9536
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9247
9537
 
9248
9538
  __webpack_require__.r(__webpack_exports__);
@@ -9265,7 +9555,7 @@ class CompoundRatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9265
9555
  }
9266
9556
 
9267
9557
  /***/ }),
9268
- /* 234 */
9558
+ /* 242 */
9269
9559
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9270
9560
 
9271
9561
  __webpack_require__.r(__webpack_exports__);
@@ -9288,7 +9578,7 @@ class ReflexerRatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9288
9578
  }
9289
9579
 
9290
9580
  /***/ }),
9291
- /* 235 */
9581
+ /* 243 */
9292
9582
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9293
9583
 
9294
9584
  __webpack_require__.r(__webpack_exports__);
@@ -9311,7 +9601,7 @@ class LiquityRatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9311
9601
  }
9312
9602
 
9313
9603
  /***/ }),
9314
- /* 236 */
9604
+ /* 244 */
9315
9605
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9316
9606
 
9317
9607
  __webpack_require__.r(__webpack_exports__);
@@ -9334,7 +9624,7 @@ class AaveV3RatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9334
9624
  }
9335
9625
 
9336
9626
  /***/ }),
9337
- /* 237 */
9627
+ /* 245 */
9338
9628
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9339
9629
 
9340
9630
  __webpack_require__.r(__webpack_exports__);
@@ -9357,7 +9647,7 @@ class CompV3RatioTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9357
9647
  }
9358
9648
 
9359
9649
  /***/ }),
9360
- /* 238 */
9650
+ /* 246 */
9361
9651
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9362
9652
 
9363
9653
  __webpack_require__.r(__webpack_exports__);
@@ -9380,7 +9670,7 @@ class TrailingStopTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9380
9670
  }
9381
9671
 
9382
9672
  /***/ }),
9383
- /* 239 */
9673
+ /* 247 */
9384
9674
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9385
9675
 
9386
9676
  __webpack_require__.r(__webpack_exports__);
@@ -9403,7 +9693,7 @@ class CBRebondTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Action {
9403
9693
  }
9404
9694
 
9405
9695
  /***/ }),
9406
- /* 240 */
9696
+ /* 248 */
9407
9697
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9408
9698
 
9409
9699
  __webpack_require__.r(__webpack_exports__);
@@ -9426,24 +9716,27 @@ class AaveV3QuotePriceTrigger extends _Action__WEBPACK_IMPORTED_MODULE_0__.Actio
9426
9716
  }
9427
9717
 
9428
9718
  /***/ }),
9429
- /* 241 */
9719
+ /* 249 */
9430
9720
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9431
9721
 
9432
9722
  __webpack_require__.r(__webpack_exports__);
9433
9723
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9434
9724
  /* harmony export */ "convexUtils": () => (/* reexport module object */ _convex_utils__WEBPACK_IMPORTED_MODULE_3__),
9435
9725
  /* harmony export */ "curveUtils": () => (/* reexport module object */ _curve_utils__WEBPACK_IMPORTED_MODULE_5__),
9726
+ /* harmony export */ "curveusdUtils": () => (/* reexport module object */ _curveusd_utils__WEBPACK_IMPORTED_MODULE_6__),
9436
9727
  /* harmony export */ "mstableAssetPairs": () => (/* reexport safe */ _mstableAssetPairs__WEBPACK_IMPORTED_MODULE_4__["default"]),
9437
9728
  /* harmony export */ "uniswapLP": () => (/* reexport module object */ _uniswapLP__WEBPACK_IMPORTED_MODULE_1__),
9438
9729
  /* harmony export */ "uniswapV3LP": () => (/* reexport module object */ _uniswapV3LP__WEBPACK_IMPORTED_MODULE_2__),
9439
9730
  /* harmony export */ "zeroExExchange": () => (/* reexport module object */ _zeroExExchange__WEBPACK_IMPORTED_MODULE_0__)
9440
9731
  /* harmony export */ });
9441
- /* harmony import */ var _zeroExExchange__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(242);
9732
+ /* harmony import */ var _zeroExExchange__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(250);
9442
9733
  /* harmony import */ var _uniswapLP__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(104);
9443
- /* harmony import */ var _uniswapV3LP__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(244);
9734
+ /* harmony import */ var _uniswapV3LP__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(252);
9444
9735
  /* harmony import */ var _convex_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(194);
9445
9736
  /* harmony import */ var _mstableAssetPairs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(176);
9446
9737
  /* harmony import */ var _curve_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(162);
9738
+ /* harmony import */ var _curveusd_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(229);
9739
+
9447
9740
 
9448
9741
 
9449
9742
 
@@ -9453,7 +9746,7 @@ __webpack_require__.r(__webpack_exports__);
9453
9746
 
9454
9747
 
9455
9748
  /***/ }),
9456
- /* 242 */
9749
+ /* 250 */
9457
9750
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9458
9751
 
9459
9752
  __webpack_require__.r(__webpack_exports__);
@@ -9464,7 +9757,7 @@ __webpack_require__.r(__webpack_exports__);
9464
9757
  /* harmony export */ });
9465
9758
  /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
9466
9759
  /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(decimal_js__WEBPACK_IMPORTED_MODULE_0__);
9467
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(243);
9760
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(251);
9468
9761
  /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_1__);
9469
9762
  /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6);
9470
9763
  /* harmony import */ var _defisaver_tokens__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_defisaver_tokens__WEBPACK_IMPORTED_MODULE_2__);
@@ -9667,20 +9960,20 @@ var createSellAction = /*#__PURE__*/function () {
9667
9960
  }();
9668
9961
 
9669
9962
  /***/ }),
9670
- /* 243 */
9963
+ /* 251 */
9671
9964
  /***/ ((module) => {
9672
9965
 
9673
- module.exports = __WEBPACK_EXTERNAL_MODULE__243__;
9966
+ module.exports = __WEBPACK_EXTERNAL_MODULE__251__;
9674
9967
 
9675
9968
  /***/ }),
9676
- /* 244 */
9969
+ /* 252 */
9677
9970
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9678
9971
 
9679
9972
  __webpack_require__.r(__webpack_exports__);
9680
9973
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9681
9974
  /* harmony export */ "getAssetAddrByTokenId": () => (/* binding */ getAssetAddrByTokenId)
9682
9975
  /* harmony export */ });
9683
- /* harmony import */ var _abis_UniV3PositionManager_json__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(245);
9976
+ /* harmony import */ var _abis_UniV3PositionManager_json__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(253);
9684
9977
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9685
9978
  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
9686
9979
  /**
@@ -9705,7 +9998,7 @@ var getAssetAddrByTokenId = /*#__PURE__*/function () {
9705
9998
  }();
9706
9999
 
9707
10000
  /***/ }),
9708
- /* 245 */
10001
+ /* 253 */
9709
10002
  /***/ ((module) => {
9710
10003
 
9711
10004
  module.exports = JSON.parse('[{"constant":false,"inputs":[{"name":"tokenId","type":"uint256"}],"name":"positions","outputs":[{"name":"nonce","type":"uint96"},{"name":"operator","type":"address"},{"name":"token0","type":"address"},{"name":"token1","type":"address"},{"name":"fee","type":"uint24"},{"name":"tickLower","type":"int24"},{"name":"tickUpper","type":"int24"},{"name":"liquidity","type":"uint128"},{"name":"feeGrowthInside0LastX128","type":"uint256"},{"name":"feeGrowthInside1LastX128","type":"uint256"},{"name":"tokensOwed0","type":"uint128"},{"name":"tokensOwed1","type":"uint128"}],"payable":false,"stateMutability":"view","type":"function"}]');
@@ -9809,8 +10102,8 @@ __webpack_require__.r(__webpack_exports__);
9809
10102
  /* harmony import */ var _Strategy__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29);
9810
10103
  /* harmony import */ var _DfsWeb3__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(30);
9811
10104
  /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(35);
9812
- /* harmony import */ var _triggers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(227);
9813
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(241);
10105
+ /* harmony import */ var _triggers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(235);
10106
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(249);
9814
10107
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(4);
9815
10108
  /* harmony import */ var _addresses__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(27);
9816
10109
  /* Export types here */