Skip to content

Commit

Permalink
fix sack too depp and update dummy etherscan
Browse files Browse the repository at this point in the history
  • Loading branch information
GuillaumeNervoXS committed Jun 4, 2024
1 parent f48d561 commit ba02e9f
Show file tree
Hide file tree
Showing 7 changed files with 46 additions and 20 deletions.
1 change: 1 addition & 0 deletions lib/borrow-contracts
Submodule borrow-contracts added at 2d9882
2 changes: 1 addition & 1 deletion lib/prb-math
Submodule prb-math updated 163 files
5 changes: 2 additions & 3 deletions scripts/DeployTransmuterSidechain.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,9 @@ contract DeployTransmuterSidechain is TransmuterDeploymentHelper, Helpers {
vm.startBroadcast(deployerPrivateKey);

// TODO
uint256 chain = CHAIN_ARBITRUM;
uint256 chain = CHAIN_BASE;
uint256 hardCap = 1000 ether;
// address core = _chainToContract(chain, ContractType.CoreBorrow);
address core = 0xb38Ba207d02f07653a37b53C1C0a250B04F97e82;
address core = _chainToContract(chain, ContractType.CoreBorrow);
address agToken = _chainToContract(chain, ContractType.AgUSD);
StablecoinType fiat = StablecoinType.USD;

Expand Down
25 changes: 21 additions & 4 deletions scripts/generated/DummyDiamondImplementation.sol
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ pragma solidity ^0.8.0;
/**
* This is a generated dummy diamond implementation for compatibility with
* etherscan. For full contract implementation, check out the diamond on louper:
* https://louper.dev/diamond/0xFF091a4FDBcddce68805183dfFdeA47cDbb9fEAC?network=xdai
* https://louper.dev/diamond/0xD253b62108d1831aEd298Fc2434A5A8e4E418053?network=arbitrum
*/

contract DummyDiamondImplementation {
Expand All @@ -19,7 +19,7 @@ contract DummyDiamondImplementation {
bytes4[] functionSelectors;
}

struct Tuple3550792 {
struct Tuple522902 {
uint8 isManaged;
uint8 isMintLive;
uint8 isBurnLive;
Expand All @@ -33,6 +33,7 @@ contract DummyDiamondImplementation {
bytes oracleConfig;
bytes whitelistData;
Tuple5479340 managerData;
uint256 stablecoinCap;
}

struct Tuple5479340 {
Expand Down Expand Up @@ -64,7 +65,7 @@ contract DummyDiamondImplementation {

function getCollateralDecimals(address collateral) external view returns (uint8) {}

function getCollateralInfo(address collateral) external view returns (Tuple3550792 memory) {}
function getCollateralInfo(address collateral) external view returns (Tuple522902 memory) {}

function getCollateralList() external view returns (address[] memory) {}

Expand All @@ -84,7 +85,17 @@ contract DummyDiamondImplementation {

function getOracle(
address collateral
) external view returns (uint8 oracleType, uint8 targetType, bytes memory oracleData, bytes memory targetData) {}
)
external
view
returns (
uint8 oracleType,
uint8 targetType,
bytes memory oracleData,
bytes memory targetData,
bytes memory hyperparameters
)
{}

function getOracleValues(
address collateral
Expand All @@ -96,6 +107,8 @@ contract DummyDiamondImplementation {
returns (uint64[] memory xRedemptionCurve, int64[] memory yRedemptionCurve)
{}

function getStablecoinCap(address collateral) external view returns (uint256) {}

function getTotalIssued() external view returns (uint256) {}

function isPaused(address collateral, uint8 action) external view returns (bool) {}
Expand Down Expand Up @@ -134,10 +147,14 @@ contract DummyDiamondImplementation {

function toggleTrusted(address sender, uint8 t) external {}

function updateOracle(address collateral) external {}

function setFees(address collateral, uint64[] memory xFee, int64[] memory yFee, bool mint) external {}

function setRedemptionCurveParams(uint64[] memory xFee, int64[] memory yFee) external {}

function setStablecoinCap(address collateral, uint256 stablecoinCap) external {}

function togglePause(address collateral, uint8 pausedType) external {}

function toggleWhitelist(uint8 whitelistType, address who) external {}
Expand Down
29 changes: 19 additions & 10 deletions scripts/interaction/transmuter/Swap.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,13 @@ import { IERC20 } from "oz/token/ERC20/IERC20.sol";
import { IERC20Metadata } from "oz/token/ERC20/extensions/IERC20Metadata.sol";

contract SwapTransmuter is Utils, Helpers {
ITransmuter public transmuter;
address public tokenIn;
uint256 public decimalsIn;
address public tokenOut;
uint256 public decimalsOut;
uint256 public amount;

function run() external {
// TODO: make sure that selectors are well generated `yarn generate` before running this script
// Here the `selectors.json` file is normally up to date
Expand All @@ -21,16 +28,18 @@ contract SwapTransmuter is Utils, Helpers {
vm.startBroadcast(deployerPrivateKey);

// TODO
uint256 chain = CHAIN_GNOSIS;
StablecoinType fiat = StablecoinType.USD;
address agToken = _chainToContract(chain, ContractType.AgUSD);
(address liquidStablecoin, ) = _chainToLiquidStablecoinAndOracle(chain, fiat);
ITransmuter transmuter = ITransmuter(_chainToContract(chain, ContractType.TransmuterAgUSD));
address tokenIn = agToken;
uint256 decimalsIn = IERC20Metadata(agToken).decimals();
address tokenOut = liquidStablecoin;
uint256 decimalsOut = IERC20Metadata(liquidStablecoin).decimals();
uint256 amount = 1.2375 ether;
{
uint256 chain = CHAIN_GNOSIS;
StablecoinType fiat = StablecoinType.USD;
address agToken = _chainToContract(chain, ContractType.AgUSD);
(address liquidStablecoin, ) = _chainToLiquidStablecoinAndOracle(chain, fiat);
transmuter = ITransmuter(_chainToContract(chain, ContractType.TransmuterAgUSD));
tokenIn = agToken;
decimalsIn = IERC20Metadata(agToken).decimals();
tokenOut = liquidStablecoin;
decimalsOut = IERC20Metadata(liquidStablecoin).decimals();
amount = 1.2375 ether;
}
// TODO END

uint256 minAmountOut = (((amount * 10 ** decimalsOut) / 10 ** decimalsIn) * 99) / 100;
Expand Down
2 changes: 1 addition & 1 deletion scripts/utils/Utils.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { StdAssertions } from "forge-std/Test.sol";
import "stringutils/strings.sol";

import { CommonUtils } from "utils/src/CommonUtils.sol";
import { ContractType, StablecoinType } from "utils/src/Constants.sol";
import { ContractType } from "utils/src/Constants.sol";

contract Utils is Script, CommonUtils {
using strings for *;
Expand Down

0 comments on commit ba02e9f

Please sign in to comment.