@gearbox-protocol/sdk 17.0.0-next.3 → 17.0.0
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/cjs/dev/abi.js +14 -15
- package/dist/cjs/dev/claimFromFaucet.js +4 -8
- package/dist/cjs/dev/createAnvilClient.js +35 -17
- package/dist/cjs/dev/index.js +7 -2
- package/dist/cjs/dev/kycUtils.js +66 -58
- package/dist/cjs/dev/midasUtils.js +113 -16
- package/dist/cjs/dev/securitizeUtils.js +82 -42
- package/dist/cjs/dev/withdrawalUtils.js +3 -6
- package/dist/cjs/model/errors/index.js +2 -0
- package/dist/cjs/model/errors/operation-errors.js +19 -1
- package/dist/cjs/model/index.js +4 -2
- package/dist/cjs/model/rwa.js +4 -4
- package/dist/cjs/model/rwa.schema.js +4 -4
- package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +1 -1
- package/dist/cjs/onchain/OnchainSDK.js +3 -3
- package/dist/cjs/onchain/accounts/CreditAccountsServiceV310.js +2 -17
- package/dist/cjs/onchain/accounts/intents/borrow.js +140 -0
- package/dist/cjs/onchain/accounts/intents/collateral-valuation.js +41 -0
- package/dist/cjs/onchain/accounts/intents/guards.js +19 -7
- package/dist/cjs/onchain/accounts/intents/index.js +107 -20
- package/dist/cjs/onchain/accounts/intents/leverage-band.js +2 -12
- package/dist/cjs/onchain/accounts/intents/maxBorrow.js +89 -0
- package/dist/cjs/onchain/accounts/intents/maxWithdrawCollateral.js +15 -41
- package/dist/cjs/onchain/accounts/intents/open-strategy.js +8 -46
- package/dist/cjs/onchain/accounts/intents/operations.js +0 -1
- package/dist/cjs/onchain/accounts/intents/realize.js +61 -4
- package/dist/cjs/onchain/accounts/intents/tail.js +1 -1
- package/dist/cjs/onchain/accounts/intents/testing/sdk-mock.js +1 -0
- package/dist/cjs/onchain/accounts/intents/utils/common.js +19 -0
- package/dist/cjs/onchain/accounts/intents/utils/credit-account-slice.js +21 -0
- package/dist/cjs/onchain/accounts/intents/utils/index.js +2 -0
- package/dist/cjs/onchain/accounts/intents/utils/price-impact.js +12 -9
- package/dist/cjs/onchain/accounts/intents/utils/router-path.js +4 -5
- package/dist/cjs/onchain/accounts/intents/withdraw-limits.js +97 -0
- package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +1 -1
- package/dist/cjs/onchain/constants/address-provider.js +0 -2
- package/dist/cjs/onchain/constants/index.js +0 -1
- package/dist/cjs/onchain/core/createAddressProvider.js +2 -5
- package/dist/cjs/onchain/index.js +60 -43
- package/dist/cjs/onchain/market/adapters/abi/conctructorAbi.js +2 -2
- package/dist/cjs/onchain/market/adapters/contracts/AbstractAdapter.js +6 -0
- package/dist/cjs/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +49 -5
- package/dist/cjs/onchain/market/credit/CreditSuite.js +33 -12
- package/dist/cjs/onchain/market/index.js +50 -38
- package/dist/cjs/onchain/market/oracle/PriceOracleBaseContract.js +3 -3
- package/dist/cjs/onchain/market/pricefeeds/AbstractPriceFeed.js +0 -5
- package/dist/cjs/onchain/market/pricefeeds/PriceFeedRegistry.js +127 -0
- package/dist/cjs/onchain/market/pricefeeds/{BalancerStablePriceFeed.js → feeds/BalancerStablePriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{BalancerWeightedPriceFeed.js → feeds/BalancerWeightedPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{BoundedPriceFeed.js → feeds/BoundedPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{CompositePriceFeed.js → feeds/CompositePriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{ConstantPriceFeed.js → feeds/ConstantPriceFeed.js} +3 -3
- package/dist/cjs/onchain/market/pricefeeds/{CurveCryptoPriceFeed.js → feeds/CurveCryptoPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{CurveStablePriceFeed.js → feeds/CurveStablePriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{CurveUSDPriceFeed.js → feeds/CurveUSDPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{Erc4626PriceFeed.js → feeds/Erc4626PriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{ExternalPriceFeed.js → feeds/ExternalPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{MellowLRTPriceFeed.js → feeds/MellowLRTPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{PendleTWAPPTPriceFeed.js → feeds/PendleTWAPPTPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{PythPriceFeed.js → feeds/PythPriceFeed.js} +3 -3
- package/dist/cjs/onchain/market/pricefeeds/{RedstonePriceFeed.js → feeds/RedstonePriceFeed.js} +6 -6
- package/dist/cjs/onchain/market/pricefeeds/{WstETHPriceFeed.js → feeds/WstETHPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{YearnPriceFeed.js → feeds/YearnPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/{ZeroPriceFeed.js → feeds/ZeroPriceFeed.js} +4 -4
- package/dist/cjs/onchain/market/pricefeeds/feeds/index.js +35 -0
- package/dist/cjs/onchain/market/pricefeeds/index.js +51 -39
- package/dist/cjs/onchain/market/pricefeeds/updates/UpdatablePriceFeedRegistry.js +189 -0
- package/dist/cjs/onchain/market/pricefeeds/{getRawPriceUpdates.js → updates/getRawPriceUpdates.js} +2 -2
- package/dist/cjs/onchain/market/pricefeeds/updates/index.js +8 -0
- package/dist/cjs/onchain/market/pricefeeds/{isUpdatablePriceFeed.js → updates/isUpdatablePriceFeed.js} +1 -1
- package/dist/cjs/onchain/market/pricefeeds/updates/updatableDependencies.js +14 -0
- package/dist/cjs/onchain/market/rwa/RWARegistry.js +4 -7
- package/dist/cjs/onchain/market/rwa/index.js +1 -0
- package/dist/cjs/onchain/market/rwa/midas/MidasDegenNFT.js +45 -5
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +56 -12
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +0 -37
- package/dist/cjs/onchain/opportunities/MultichainOpportunitiesService.js +8 -2
- package/dist/cjs/onchain/opportunities/OpportunitiesService.js +16 -4
- package/dist/cjs/onchain/positions/calcHealthFactor.js +3 -3
- package/dist/cjs/onchain/preview/index.js +2 -0
- package/dist/cjs/onchain/preview/parse/parseRWAFactoryOperationCalldata.js +2 -2
- package/dist/cjs/onchain/preview/preview/index.js +2 -0
- package/dist/cjs/onchain/preview/preview/midasGreenlistsAccount.js +17 -0
- package/dist/cjs/onchain/preview/preview/previewOpenStrategyPosition.js +13 -16
- package/dist/cjs/onchain/preview/preview/previewOperation.js +19 -11
- package/dist/cjs/onchain/preview/preview/replayMulticall.js +4 -3
- package/dist/cjs/onchain/validation/bundles/checkCollateralFunding.js +3 -3
- package/dist/cjs/onchain/validation/bundles/checkCreditOperation.js +12 -10
- package/dist/cjs/onchain/validation/bundles/checkIncreaseDebt.js +28 -0
- package/dist/cjs/onchain/validation/bundles/{checkQuotasAsked.js → checkIncreaseQuota.js} +3 -3
- package/dist/cjs/onchain/validation/bundles/checkMidasAccountGreenlist.js +44 -0
- package/dist/cjs/onchain/validation/bundles/checkRWAOpenRequirements.js +9 -9
- package/dist/cjs/onchain/validation/bundles/checkRWAOpening.js +18 -8
- package/dist/cjs/onchain/validation/bundles/index.js +6 -4
- package/dist/cjs/onchain/validation/checkOperation.js +0 -1
- package/dist/cjs/onchain/validation/checkSimulation.js +1 -1
- package/dist/cjs/onchain/validation/checks/checkBorrowLimit.js +1 -1
- package/dist/cjs/onchain/validation/checks/checkDebtLimits.js +2 -5
- package/dist/cjs/onchain/validation/checks/checkPoolLiquidity.js +1 -1
- package/dist/cjs/onchain/validation/checks/checkReservePriceLimited.js +30 -0
- package/dist/cjs/onchain/validation/checks/index.js +2 -0
- package/dist/cjs/onchain/validation/index.js +8 -4
- package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +2 -2
- package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +2 -2
- package/dist/cjs/sdk/execute/ExecuteApi.js +67 -7
- package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +9 -3
- package/dist/cjs/sdk/prepare/PrepareApi.js +89 -14
- package/dist/esm/dev/abi.js +14 -15
- package/dist/esm/dev/claimFromFaucet.js +4 -8
- package/dist/esm/dev/createAnvilClient.js +36 -19
- package/dist/esm/dev/index.js +4 -4
- package/dist/esm/dev/kycUtils.js +66 -59
- package/dist/esm/dev/midasUtils.js +112 -18
- package/dist/esm/dev/securitizeUtils.js +84 -44
- package/dist/esm/dev/withdrawalUtils.js +3 -6
- package/dist/esm/model/errors/index.js +2 -2
- package/dist/esm/model/errors/operation-errors.js +18 -2
- package/dist/esm/model/index.js +4 -4
- package/dist/esm/model/rwa.js +4 -4
- package/dist/esm/model/rwa.schema.js +5 -5
- package/dist/esm/offchain/opportunities/OffchainOpportunities.js +1 -1
- package/dist/esm/onchain/OnchainSDK.js +3 -3
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +2 -17
- package/dist/esm/onchain/accounts/intents/borrow.js +138 -0
- package/dist/esm/onchain/accounts/intents/collateral-valuation.js +40 -0
- package/dist/esm/onchain/accounts/intents/guards.js +19 -7
- package/dist/esm/onchain/accounts/intents/index.js +107 -20
- package/dist/esm/onchain/accounts/intents/leverage-band.js +2 -12
- package/dist/esm/onchain/accounts/intents/maxBorrow.js +87 -0
- package/dist/esm/onchain/accounts/intents/maxWithdrawCollateral.js +15 -41
- package/dist/esm/onchain/accounts/intents/open-strategy.js +8 -46
- package/dist/esm/onchain/accounts/intents/operations.js +0 -1
- package/dist/esm/onchain/accounts/intents/realize.js +61 -4
- package/dist/esm/onchain/accounts/intents/tail.js +1 -1
- package/dist/esm/onchain/accounts/intents/testing/sdk-mock.js +1 -0
- package/dist/esm/onchain/accounts/intents/utils/common.js +19 -1
- package/dist/esm/onchain/accounts/intents/utils/credit-account-slice.js +21 -1
- package/dist/esm/onchain/accounts/intents/utils/index.js +3 -3
- package/dist/esm/onchain/accounts/intents/utils/price-impact.js +12 -9
- package/dist/esm/onchain/accounts/intents/utils/router-path.js +4 -5
- package/dist/esm/onchain/accounts/intents/withdraw-limits.js +95 -0
- package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +1 -1
- package/dist/esm/onchain/constants/address-provider.js +1 -2
- package/dist/esm/onchain/constants/index.js +2 -2
- package/dist/esm/onchain/core/createAddressProvider.js +2 -5
- package/dist/esm/onchain/index.js +32 -24
- package/dist/esm/onchain/market/adapters/abi/conctructorAbi.js +2 -2
- package/dist/esm/onchain/market/adapters/contracts/AbstractAdapter.js +6 -0
- package/dist/esm/onchain/market/adapters/contracts/MidasGatewayAdapterContract.js +50 -6
- package/dist/esm/onchain/market/credit/CreditSuite.js +33 -12
- package/dist/esm/onchain/market/index.js +26 -21
- package/dist/esm/onchain/market/oracle/PriceOracleBaseContract.js +1 -1
- package/dist/esm/onchain/market/pricefeeds/AbstractPriceFeed.js +0 -5
- package/dist/esm/onchain/market/pricefeeds/PriceFeedRegistry.js +126 -0
- package/dist/esm/onchain/market/pricefeeds/{BalancerStablePriceFeed.js → feeds/BalancerStablePriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{BalancerWeightedPriceFeed.js → feeds/BalancerWeightedPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{BoundedPriceFeed.js → feeds/BoundedPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{CompositePriceFeed.js → feeds/CompositePriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{ConstantPriceFeed.js → feeds/ConstantPriceFeed.js} +3 -3
- package/dist/esm/onchain/market/pricefeeds/{CurveCryptoPriceFeed.js → feeds/CurveCryptoPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{CurveStablePriceFeed.js → feeds/CurveStablePriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{CurveUSDPriceFeed.js → feeds/CurveUSDPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{Erc4626PriceFeed.js → feeds/Erc4626PriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{ExternalPriceFeed.js → feeds/ExternalPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{MellowLRTPriceFeed.js → feeds/MellowLRTPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{PendleTWAPPTPriceFeed.js → feeds/PendleTWAPPTPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{PythPriceFeed.js → feeds/PythPriceFeed.js} +3 -3
- package/dist/esm/onchain/market/pricefeeds/{RedstonePriceFeed.js → feeds/RedstonePriceFeed.js} +6 -6
- package/dist/esm/onchain/market/pricefeeds/{WstETHPriceFeed.js → feeds/WstETHPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{YearnPriceFeed.js → feeds/YearnPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/{ZeroPriceFeed.js → feeds/ZeroPriceFeed.js} +4 -4
- package/dist/esm/onchain/market/pricefeeds/feeds/index.js +18 -0
- package/dist/esm/onchain/market/pricefeeds/index.js +27 -21
- package/dist/esm/onchain/market/pricefeeds/updates/UpdatablePriceFeedRegistry.js +188 -0
- package/dist/esm/onchain/market/pricefeeds/{getRawPriceUpdates.js → updates/getRawPriceUpdates.js} +2 -2
- package/dist/esm/onchain/market/pricefeeds/updates/index.js +5 -1
- package/dist/esm/onchain/market/pricefeeds/{isUpdatablePriceFeed.js → updates/isUpdatablePriceFeed.js} +1 -1
- package/dist/esm/onchain/market/pricefeeds/updates/updatableDependencies.js +13 -0
- package/dist/esm/onchain/market/rwa/RWARegistry.js +4 -8
- package/dist/esm/onchain/market/rwa/index.js +2 -2
- package/dist/esm/onchain/market/rwa/midas/MidasDegenNFT.js +45 -5
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +55 -10
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +0 -37
- package/dist/esm/onchain/opportunities/MultichainOpportunitiesService.js +8 -2
- package/dist/esm/onchain/opportunities/OpportunitiesService.js +16 -4
- package/dist/esm/onchain/positions/calcHealthFactor.js +3 -3
- package/dist/esm/onchain/preview/index.js +2 -1
- package/dist/esm/onchain/preview/parse/parseRWAFactoryOperationCalldata.js +2 -2
- package/dist/esm/onchain/preview/preview/index.js +2 -1
- package/dist/esm/onchain/preview/preview/midasGreenlistsAccount.js +16 -0
- package/dist/esm/onchain/preview/preview/previewOpenStrategyPosition.js +14 -17
- package/dist/esm/onchain/preview/preview/previewOperation.js +19 -11
- package/dist/esm/onchain/preview/preview/replayMulticall.js +4 -3
- package/dist/esm/onchain/validation/bundles/checkCollateralFunding.js +3 -3
- package/dist/esm/onchain/validation/bundles/checkCreditOperation.js +12 -10
- package/dist/esm/onchain/validation/bundles/checkIncreaseDebt.js +27 -0
- package/dist/esm/onchain/validation/bundles/{checkQuotasAsked.js → checkIncreaseQuota.js} +3 -3
- package/dist/esm/onchain/validation/bundles/checkMidasAccountGreenlist.js +43 -0
- package/dist/esm/onchain/validation/bundles/checkRWAOpenRequirements.js +9 -9
- package/dist/esm/onchain/validation/bundles/checkRWAOpening.js +18 -8
- package/dist/esm/onchain/validation/bundles/index.js +4 -3
- package/dist/esm/onchain/validation/checkOperation.js +0 -1
- package/dist/esm/onchain/validation/checkSimulation.js +1 -1
- package/dist/esm/onchain/validation/checks/checkBorrowLimit.js +1 -1
- package/dist/esm/onchain/validation/checks/checkDebtLimits.js +2 -5
- package/dist/esm/onchain/validation/checks/checkPoolLiquidity.js +1 -1
- package/dist/esm/onchain/validation/checks/checkReservePriceLimited.js +29 -0
- package/dist/esm/onchain/validation/checks/index.js +2 -1
- package/dist/esm/onchain/validation/index.js +5 -3
- package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
- package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
- package/dist/esm/sdk/execute/ExecuteApi.js +67 -7
- package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +9 -3
- package/dist/esm/sdk/prepare/PrepareApi.js +94 -19
- package/dist/types/dev/abi.d.ts +13 -15
- package/dist/types/dev/claimFromFaucet.d.ts +0 -1
- package/dist/types/dev/createAnvilClient.d.ts +10 -3
- package/dist/types/dev/index.d.ts +4 -4
- package/dist/types/dev/kycUtils.d.ts +15 -24
- package/dist/types/dev/midasUtils.d.ts +35 -4
- package/dist/types/dev/securitizeUtils.d.ts +3 -9
- package/dist/types/model/errors/index.d.ts +2 -2
- package/dist/types/model/errors/operation-errors.d.ts +65 -11
- package/dist/types/model/index.d.ts +5 -5
- package/dist/types/model/opportunities.d.ts +6 -7
- package/dist/types/model/previews.d.ts +25 -19
- package/dist/types/model/rwa.d.ts +47 -27
- package/dist/types/model/rwa.schema.d.ts +3 -3
- package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +1 -2
- package/dist/types/offchain/opportunities/types.d.ts +1 -4
- package/dist/types/onchain/OnchainSDK.d.ts +2 -2
- package/dist/types/onchain/accounts/index.d.ts +5 -4
- package/dist/types/onchain/accounts/intents/borrow.d.ts +141 -0
- package/dist/types/onchain/accounts/intents/collateral-valuation.d.ts +42 -0
- package/dist/types/onchain/accounts/intents/guards.d.ts +18 -2
- package/dist/types/onchain/accounts/intents/index.d.ts +103 -15
- package/dist/types/onchain/accounts/intents/maxBorrow.d.ts +54 -0
- package/dist/types/onchain/accounts/intents/maxWithdrawCollateral.d.ts +3 -8
- package/dist/types/onchain/accounts/intents/open-strategy.d.ts +3 -17
- package/dist/types/onchain/accounts/intents/testing/sdk-mock.d.ts +2 -0
- package/dist/types/onchain/accounts/intents/tests/open-strategy.fixtures.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/types.d.ts +51 -6
- package/dist/types/onchain/accounts/intents/utils/common.d.ts +15 -1
- package/dist/types/onchain/accounts/intents/utils/credit-account-slice.d.ts +14 -1
- package/dist/types/onchain/accounts/intents/utils/index.d.ts +3 -3
- package/dist/types/onchain/accounts/intents/utils/price-impact.d.ts +4 -1
- package/dist/types/onchain/accounts/intents/utils/router-path.d.ts +2 -5
- package/dist/types/onchain/accounts/intents/withdraw-limits.d.ts +80 -0
- package/dist/types/onchain/accounts/types.d.ts +4 -2
- package/dist/types/onchain/constants/address-provider.d.ts +1 -2
- package/dist/types/onchain/constants/index.d.ts +2 -2
- package/dist/types/onchain/index.d.ts +40 -31
- package/dist/types/onchain/market/adapters/contracts/AbstractAdapter.d.ts +6 -0
- package/dist/types/onchain/market/adapters/contracts/MidasGatewayAdapterContract.d.ts +20 -4
- package/dist/types/onchain/market/adapters/types.d.ts +8 -0
- package/dist/types/onchain/market/credit/CreditSuite.d.ts +13 -3
- package/dist/types/onchain/market/credit/types.d.ts +2 -2
- package/dist/types/onchain/market/index.d.ts +29 -24
- package/dist/types/onchain/market/oracle/PriceOracleBaseContract.d.ts +2 -1
- package/dist/types/onchain/market/oracle/types.d.ts +2 -1
- package/dist/types/onchain/market/pool/types.d.ts +1 -1
- package/dist/types/onchain/market/pricefeeds/AbstractPriceFeed.d.ts +1 -2
- package/dist/types/onchain/market/pricefeeds/PriceFeedRegistry.d.ts +60 -0
- package/dist/types/onchain/market/pricefeeds/feeds/BalancerStablePriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/{BalancerWeightedPriceFeed.d.ts → feeds/BalancerWeightedPriceFeed.d.ts} +7 -7
- package/dist/types/onchain/market/pricefeeds/feeds/BoundedPriceFeed.d.ts +15 -0
- package/dist/types/onchain/market/pricefeeds/{CompositePriceFeed.d.ts → feeds/CompositePriceFeed.d.ts} +6 -6
- package/dist/types/onchain/market/pricefeeds/{ConstantPriceFeed.d.ts → feeds/ConstantPriceFeed.d.ts} +6 -6
- package/dist/types/onchain/market/pricefeeds/feeds/CurveCryptoPriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/CurveStablePriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/CurveUSDPriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/Erc4626PriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/ExternalPriceFeed.d.ts +11 -0
- package/dist/types/onchain/market/pricefeeds/feeds/MellowLRTPriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/{PendleTWAPPTPriceFeed.d.ts → feeds/PendleTWAPPTPriceFeed.d.ts} +3 -3
- package/dist/types/onchain/market/pricefeeds/{PythPriceFeed.d.ts → feeds/PythPriceFeed.d.ts} +3 -3
- package/dist/types/onchain/market/pricefeeds/{RedstonePriceFeed.d.ts → feeds/RedstonePriceFeed.d.ts} +9 -9
- package/dist/types/onchain/market/pricefeeds/feeds/WstETHPriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/YearnPriceFeed.d.ts +12 -0
- package/dist/types/onchain/market/pricefeeds/feeds/ZeroPriceFeed.d.ts +11 -0
- package/dist/types/onchain/market/pricefeeds/feeds/index.d.ts +18 -0
- package/dist/types/onchain/market/pricefeeds/index.d.ts +28 -22
- package/dist/types/onchain/market/pricefeeds/types.d.ts +1 -31
- package/dist/types/onchain/market/pricefeeds/updates/RedstoneUpdater.d.ts +1 -1
- package/dist/types/onchain/market/pricefeeds/updates/UpdatablePriceFeedRegistry.d.ts +106 -0
- package/dist/types/onchain/market/pricefeeds/updates/getRawPriceUpdates.d.ts +6 -0
- package/dist/types/onchain/market/pricefeeds/updates/index.d.ts +7 -3
- package/dist/types/onchain/market/pricefeeds/updates/isUpdatablePriceFeed.d.ts +6 -0
- package/dist/types/onchain/market/pricefeeds/updates/types.d.ts +56 -2
- package/dist/types/onchain/market/pricefeeds/updates/updatableDependencies.d.ts +10 -0
- package/dist/types/onchain/market/rwa/RWARegistry.d.ts +2 -1
- package/dist/types/onchain/market/rwa/index.d.ts +3 -3
- package/dist/types/onchain/market/rwa/midas/MidasDegenNFT.d.ts +19 -4
- package/dist/types/onchain/market/rwa/securitize/SecuritizeDegenNFT.d.ts +24 -4
- package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -14
- package/dist/types/onchain/market/rwa/types.d.ts +39 -37
- package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +5 -1
- package/dist/types/onchain/opportunities/OpportunitiesService.d.ts +10 -3
- package/dist/types/onchain/opportunities/types.d.ts +6 -1
- package/dist/types/onchain/preview/index.d.ts +2 -1
- package/dist/types/onchain/preview/preview/index.d.ts +2 -1
- package/dist/types/onchain/preview/preview/midasGreenlistsAccount.d.ts +13 -0
- package/dist/types/onchain/preview/preview/previewOpenStrategyPosition.d.ts +5 -3
- package/dist/types/onchain/preview/preview/replayMulticall.d.ts +8 -7
- package/dist/types/onchain/validation/bundles/checkCreditOperation.d.ts +5 -4
- package/dist/types/onchain/validation/bundles/{checkDraw.d.ts → checkIncreaseDebt.d.ts} +7 -7
- package/dist/types/onchain/validation/bundles/{checkQuotasAsked.d.ts → checkIncreaseQuota.d.ts} +3 -3
- package/dist/types/onchain/validation/bundles/checkMidasAccountGreenlist.d.ts +22 -0
- package/dist/types/onchain/validation/bundles/checkRWAOpenRequirements.d.ts +2 -2
- package/dist/types/onchain/validation/bundles/checkRWAOpening.d.ts +9 -7
- package/dist/types/onchain/validation/bundles/index.d.ts +5 -4
- package/dist/types/onchain/validation/checks/checkBorrowLimit.d.ts +1 -1
- package/dist/types/onchain/validation/checks/checkDebtLimits.d.ts +3 -3
- package/dist/types/onchain/validation/checks/checkPoolLiquidity.d.ts +1 -1
- package/dist/types/onchain/validation/checks/checkReservePriceLimited.d.ts +31 -0
- package/dist/types/onchain/validation/checks/index.d.ts +2 -1
- package/dist/types/onchain/validation/index.d.ts +6 -4
- package/dist/types/onchain/validation/raise.d.ts +2 -2
- package/dist/types/sdk/execute/index.d.ts +2 -2
- package/dist/types/sdk/execute/types.d.ts +48 -6
- package/dist/types/sdk/index.d.ts +5 -4
- package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +5 -1
- package/dist/types/sdk/opportunities/types.d.ts +9 -3
- package/dist/types/sdk/prepare/PrepareApi.d.ts +16 -4
- package/dist/types/sdk/prepare/index.d.ts +4 -3
- package/dist/types/sdk/prepare/types.d.ts +200 -66
- package/package.json +1 -1
- package/dist/cjs/onchain/accounts/utils/midasUtils.js +0 -70
- package/dist/cjs/onchain/market/pricefeeds/PriceFeedsRegister.js +0 -301
- package/dist/cjs/onchain/validation/bundles/checkDraw.js +0 -28
- package/dist/cjs/plugins/degen-distributors/DegenDistributorsPlugin.js +0 -61
- package/dist/cjs/plugins/degen-distributors/index.js +0 -4
- package/dist/cjs/plugins/degen-distributors/package.json +0 -1
- package/dist/cjs/plugins/degen-distributors/types.js +0 -1
- package/dist/cjs/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +0 -114
- package/dist/cjs/plugins/delayed-withdrawal/index.js +0 -4
- package/dist/cjs/plugins/delayed-withdrawal/package.json +0 -1
- package/dist/cjs/plugins/delayed-withdrawal/types.js +0 -1
- package/dist/esm/onchain/accounts/utils/midasUtils.js +0 -69
- package/dist/esm/onchain/market/pricefeeds/PriceFeedsRegister.js +0 -300
- package/dist/esm/onchain/validation/bundles/checkDraw.js +0 -27
- package/dist/esm/plugins/degen-distributors/DegenDistributorsPlugin.js +0 -60
- package/dist/esm/plugins/degen-distributors/index.js +0 -3
- package/dist/esm/plugins/degen-distributors/package.json +0 -1
- package/dist/esm/plugins/degen-distributors/types.js +0 -1
- package/dist/esm/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.js +0 -113
- package/dist/esm/plugins/delayed-withdrawal/index.js +0 -3
- package/dist/esm/plugins/delayed-withdrawal/package.json +0 -1
- package/dist/esm/plugins/delayed-withdrawal/types.js +0 -1
- package/dist/types/onchain/accounts/utils/midasUtils.d.ts +0 -38
- package/dist/types/onchain/market/pricefeeds/BalancerStablePriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/BoundedPriceFeed.d.ts +0 -15
- package/dist/types/onchain/market/pricefeeds/CurveCryptoPriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/CurveStablePriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/CurveUSDPriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/Erc4626PriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/ExternalPriceFeed.d.ts +0 -11
- package/dist/types/onchain/market/pricefeeds/MellowLRTPriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/PriceFeedsRegister.d.ts +0 -180
- package/dist/types/onchain/market/pricefeeds/WstETHPriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/YearnPriceFeed.d.ts +0 -12
- package/dist/types/onchain/market/pricefeeds/ZeroPriceFeed.d.ts +0 -11
- package/dist/types/onchain/market/pricefeeds/getRawPriceUpdates.d.ts +0 -5
- package/dist/types/onchain/market/pricefeeds/isUpdatablePriceFeed.d.ts +0 -5
- package/dist/types/plugins/degen-distributors/DegenDistributorsPlugin.d.ts +0 -25
- package/dist/types/plugins/degen-distributors/index.d.ts +0 -3
- package/dist/types/plugins/degen-distributors/types.d.ts +0 -8
- package/dist/types/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.d.ts +0 -25
- package/dist/types/plugins/delayed-withdrawal/index.d.ts +0 -3
- package/dist/types/plugins/delayed-withdrawal/types.d.ts +0 -10
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_onchain_market_pricefeeds_AbstractPriceFeed = require("
|
|
3
|
-
const require_onchain_abi_oracles = require("
|
|
4
|
-
require("
|
|
5
|
-
//#region src/onchain/market/pricefeeds/ZeroPriceFeed.ts
|
|
2
|
+
const require_onchain_market_pricefeeds_AbstractPriceFeed = require("../AbstractPriceFeed.js");
|
|
3
|
+
const require_onchain_abi_oracles = require("../../../abi/oracles.js");
|
|
4
|
+
require("../../../abi/index.js");
|
|
5
|
+
//#region src/onchain/market/pricefeeds/feeds/ZeroPriceFeed.ts
|
|
6
6
|
var ZeroPriceFeedContract = class extends require_onchain_market_pricefeeds_AbstractPriceFeed.AbstractPriceFeedContract {
|
|
7
7
|
constructor(options, args) {
|
|
8
8
|
super(options, {
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_market_pricefeeds_feeds_BalancerStablePriceFeed = require("./BalancerStablePriceFeed.js");
|
|
3
|
+
const require_onchain_market_pricefeeds_feeds_BalancerWeightedPriceFeed = require("./BalancerWeightedPriceFeed.js");
|
|
4
|
+
const require_onchain_market_pricefeeds_feeds_BoundedPriceFeed = require("./BoundedPriceFeed.js");
|
|
5
|
+
const require_onchain_market_pricefeeds_feeds_CompositePriceFeed = require("./CompositePriceFeed.js");
|
|
6
|
+
const require_onchain_market_pricefeeds_feeds_ConstantPriceFeed = require("./ConstantPriceFeed.js");
|
|
7
|
+
const require_onchain_market_pricefeeds_feeds_CurveCryptoPriceFeed = require("./CurveCryptoPriceFeed.js");
|
|
8
|
+
const require_onchain_market_pricefeeds_feeds_CurveStablePriceFeed = require("./CurveStablePriceFeed.js");
|
|
9
|
+
const require_onchain_market_pricefeeds_feeds_CurveUSDPriceFeed = require("./CurveUSDPriceFeed.js");
|
|
10
|
+
const require_onchain_market_pricefeeds_feeds_Erc4626PriceFeed = require("./Erc4626PriceFeed.js");
|
|
11
|
+
const require_onchain_market_pricefeeds_feeds_ExternalPriceFeed = require("./ExternalPriceFeed.js");
|
|
12
|
+
const require_onchain_market_pricefeeds_feeds_MellowLRTPriceFeed = require("./MellowLRTPriceFeed.js");
|
|
13
|
+
const require_onchain_market_pricefeeds_feeds_PendleTWAPPTPriceFeed = require("./PendleTWAPPTPriceFeed.js");
|
|
14
|
+
const require_onchain_market_pricefeeds_feeds_PythPriceFeed = require("./PythPriceFeed.js");
|
|
15
|
+
const require_onchain_market_pricefeeds_feeds_RedstonePriceFeed = require("./RedstonePriceFeed.js");
|
|
16
|
+
const require_onchain_market_pricefeeds_feeds_WstETHPriceFeed = require("./WstETHPriceFeed.js");
|
|
17
|
+
const require_onchain_market_pricefeeds_feeds_YearnPriceFeed = require("./YearnPriceFeed.js");
|
|
18
|
+
const require_onchain_market_pricefeeds_feeds_ZeroPriceFeed = require("./ZeroPriceFeed.js");
|
|
19
|
+
exports.BalancerStablePriceFeedContract = require_onchain_market_pricefeeds_feeds_BalancerStablePriceFeed.BalancerStablePriceFeedContract;
|
|
20
|
+
exports.BalancerWeightedPriceFeedContract = require_onchain_market_pricefeeds_feeds_BalancerWeightedPriceFeed.BalancerWeightedPriceFeedContract;
|
|
21
|
+
exports.BoundedPriceFeedContract = require_onchain_market_pricefeeds_feeds_BoundedPriceFeed.BoundedPriceFeedContract;
|
|
22
|
+
exports.CompositePriceFeedContract = require_onchain_market_pricefeeds_feeds_CompositePriceFeed.CompositePriceFeedContract;
|
|
23
|
+
exports.ConstantPriceFeedContract = require_onchain_market_pricefeeds_feeds_ConstantPriceFeed.ConstantPriceFeedContract;
|
|
24
|
+
exports.CurveCryptoPriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveCryptoPriceFeed.CurveCryptoPriceFeedContract;
|
|
25
|
+
exports.CurveStablePriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveStablePriceFeed.CurveStablePriceFeedContract;
|
|
26
|
+
exports.CurveUSDPriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveUSDPriceFeed.CurveUSDPriceFeedContract;
|
|
27
|
+
exports.Erc4626PriceFeedContract = require_onchain_market_pricefeeds_feeds_Erc4626PriceFeed.Erc4626PriceFeedContract;
|
|
28
|
+
exports.ExternalPriceFeedContract = require_onchain_market_pricefeeds_feeds_ExternalPriceFeed.ExternalPriceFeedContract;
|
|
29
|
+
exports.MellowLRTPriceFeedContract = require_onchain_market_pricefeeds_feeds_MellowLRTPriceFeed.MellowLRTPriceFeedContract;
|
|
30
|
+
exports.PendleTWAPPTPriceFeed = require_onchain_market_pricefeeds_feeds_PendleTWAPPTPriceFeed.PendleTWAPPTPriceFeed;
|
|
31
|
+
exports.PythPriceFeed = require_onchain_market_pricefeeds_feeds_PythPriceFeed.PythPriceFeed;
|
|
32
|
+
exports.RedstonePriceFeedContract = require_onchain_market_pricefeeds_feeds_RedstonePriceFeed.RedstonePriceFeedContract;
|
|
33
|
+
exports.WstETHPriceFeedContract = require_onchain_market_pricefeeds_feeds_WstETHPriceFeed.WstETHPriceFeedContract;
|
|
34
|
+
exports.YearnPriceFeedContract = require_onchain_market_pricefeeds_feeds_YearnPriceFeed.YearnPriceFeedContract;
|
|
35
|
+
exports.ZeroPriceFeedContract = require_onchain_market_pricefeeds_feeds_ZeroPriceFeed.ZeroPriceFeedContract;
|
|
@@ -1,51 +1,63 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_onchain_market_pricefeeds_isUpdatablePriceFeed = require("./isUpdatablePriceFeed.js");
|
|
3
2
|
const require_onchain_market_pricefeeds_PriceFeedRef = require("./PriceFeedRef.js");
|
|
4
3
|
const require_onchain_market_pricefeeds_AbstractPriceFeed = require("./AbstractPriceFeed.js");
|
|
5
4
|
const require_onchain_market_pricefeeds_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
5
|
+
const require_onchain_market_pricefeeds_feeds_BalancerStablePriceFeed = require("./feeds/BalancerStablePriceFeed.js");
|
|
6
|
+
const require_onchain_market_pricefeeds_feeds_BalancerWeightedPriceFeed = require("./feeds/BalancerWeightedPriceFeed.js");
|
|
7
|
+
const require_onchain_market_pricefeeds_feeds_BoundedPriceFeed = require("./feeds/BoundedPriceFeed.js");
|
|
8
|
+
const require_onchain_market_pricefeeds_feeds_CompositePriceFeed = require("./feeds/CompositePriceFeed.js");
|
|
9
|
+
const require_onchain_market_pricefeeds_feeds_ConstantPriceFeed = require("./feeds/ConstantPriceFeed.js");
|
|
10
|
+
const require_onchain_market_pricefeeds_feeds_CurveCryptoPriceFeed = require("./feeds/CurveCryptoPriceFeed.js");
|
|
11
|
+
const require_onchain_market_pricefeeds_feeds_CurveStablePriceFeed = require("./feeds/CurveStablePriceFeed.js");
|
|
12
|
+
const require_onchain_market_pricefeeds_feeds_CurveUSDPriceFeed = require("./feeds/CurveUSDPriceFeed.js");
|
|
13
|
+
const require_onchain_market_pricefeeds_feeds_Erc4626PriceFeed = require("./feeds/Erc4626PriceFeed.js");
|
|
14
|
+
const require_onchain_market_pricefeeds_feeds_ExternalPriceFeed = require("./feeds/ExternalPriceFeed.js");
|
|
15
|
+
const require_onchain_market_pricefeeds_feeds_MellowLRTPriceFeed = require("./feeds/MellowLRTPriceFeed.js");
|
|
16
|
+
const require_onchain_market_pricefeeds_feeds_PendleTWAPPTPriceFeed = require("./feeds/PendleTWAPPTPriceFeed.js");
|
|
17
|
+
const require_onchain_market_pricefeeds_feeds_PythPriceFeed = require("./feeds/PythPriceFeed.js");
|
|
18
|
+
const require_onchain_market_pricefeeds_feeds_RedstonePriceFeed = require("./feeds/RedstonePriceFeed.js");
|
|
19
|
+
const require_onchain_market_pricefeeds_feeds_WstETHPriceFeed = require("./feeds/WstETHPriceFeed.js");
|
|
20
|
+
const require_onchain_market_pricefeeds_feeds_YearnPriceFeed = require("./feeds/YearnPriceFeed.js");
|
|
21
|
+
const require_onchain_market_pricefeeds_feeds_ZeroPriceFeed = require("./feeds/ZeroPriceFeed.js");
|
|
22
|
+
require("./feeds/index.js");
|
|
23
|
+
const require_onchain_market_pricefeeds_PriceFeedRegistry = require("./PriceFeedRegistry.js");
|
|
24
|
+
require("./types.js");
|
|
20
25
|
const require_onchain_market_pricefeeds_updates_fetchRedstonePayloads = require("./updates/fetchRedstonePayloads.js");
|
|
26
|
+
const require_onchain_market_pricefeeds_updates_getRawPriceUpdates = require("./updates/getRawPriceUpdates.js");
|
|
27
|
+
const require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed = require("./updates/isUpdatablePriceFeed.js");
|
|
28
|
+
const require_onchain_market_pricefeeds_updates_PriceUpdatesCache = require("./updates/PriceUpdatesCache.js");
|
|
29
|
+
const require_onchain_market_pricefeeds_updates_RedstoneUpdater = require("./updates/RedstoneUpdater.js");
|
|
30
|
+
const require_onchain_market_pricefeeds_updates_updatableDependencies = require("./updates/updatableDependencies.js");
|
|
31
|
+
const require_onchain_market_pricefeeds_updates_UpdatablePriceFeedRegistry = require("./updates/UpdatablePriceFeedRegistry.js");
|
|
21
32
|
require("./updates/index.js");
|
|
22
|
-
const require_onchain_market_pricefeeds_WstETHPriceFeed = require("./WstETHPriceFeed.js");
|
|
23
|
-
const require_onchain_market_pricefeeds_YearnPriceFeed = require("./YearnPriceFeed.js");
|
|
24
|
-
const require_onchain_market_pricefeeds_ZeroPriceFeed = require("./ZeroPriceFeed.js");
|
|
25
|
-
const require_onchain_market_pricefeeds_PriceFeedsRegister = require("./PriceFeedsRegister.js");
|
|
26
|
-
require("./types.js");
|
|
27
33
|
exports.AbstractLPPriceFeedContract = require_onchain_market_pricefeeds_AbstractLPPriceFeed.AbstractLPPriceFeedContract;
|
|
28
34
|
exports.AbstractPriceFeedContract = require_onchain_market_pricefeeds_AbstractPriceFeed.AbstractPriceFeedContract;
|
|
29
|
-
exports.BalancerStablePriceFeedContract =
|
|
30
|
-
exports.BalancerWeightedPriceFeedContract =
|
|
31
|
-
exports.BoundedPriceFeedContract =
|
|
32
|
-
exports.CompositePriceFeedContract =
|
|
33
|
-
exports.
|
|
34
|
-
exports.
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
35
|
+
exports.BalancerStablePriceFeedContract = require_onchain_market_pricefeeds_feeds_BalancerStablePriceFeed.BalancerStablePriceFeedContract;
|
|
36
|
+
exports.BalancerWeightedPriceFeedContract = require_onchain_market_pricefeeds_feeds_BalancerWeightedPriceFeed.BalancerWeightedPriceFeedContract;
|
|
37
|
+
exports.BoundedPriceFeedContract = require_onchain_market_pricefeeds_feeds_BoundedPriceFeed.BoundedPriceFeedContract;
|
|
38
|
+
exports.CompositePriceFeedContract = require_onchain_market_pricefeeds_feeds_CompositePriceFeed.CompositePriceFeedContract;
|
|
39
|
+
exports.ConstantPriceFeedContract = require_onchain_market_pricefeeds_feeds_ConstantPriceFeed.ConstantPriceFeedContract;
|
|
40
|
+
exports.CurveCryptoPriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveCryptoPriceFeed.CurveCryptoPriceFeedContract;
|
|
41
|
+
exports.CurveStablePriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveStablePriceFeed.CurveStablePriceFeedContract;
|
|
42
|
+
exports.CurveUSDPriceFeedContract = require_onchain_market_pricefeeds_feeds_CurveUSDPriceFeed.CurveUSDPriceFeedContract;
|
|
43
|
+
exports.Erc4626PriceFeedContract = require_onchain_market_pricefeeds_feeds_Erc4626PriceFeed.Erc4626PriceFeedContract;
|
|
44
|
+
exports.ExternalPriceFeedContract = require_onchain_market_pricefeeds_feeds_ExternalPriceFeed.ExternalPriceFeedContract;
|
|
45
|
+
exports.MellowLRTPriceFeedContract = require_onchain_market_pricefeeds_feeds_MellowLRTPriceFeed.MellowLRTPriceFeedContract;
|
|
39
46
|
exports.PartialPriceFeedInitError = require_onchain_market_pricefeeds_AbstractPriceFeed.PartialPriceFeedInitError;
|
|
40
|
-
exports.PendleTWAPPTPriceFeed =
|
|
47
|
+
exports.PendleTWAPPTPriceFeed = require_onchain_market_pricefeeds_feeds_PendleTWAPPTPriceFeed.PendleTWAPPTPriceFeed;
|
|
41
48
|
exports.PriceFeedRef = require_onchain_market_pricefeeds_PriceFeedRef.PriceFeedRef;
|
|
42
|
-
exports.
|
|
43
|
-
exports.
|
|
44
|
-
exports.
|
|
45
|
-
exports.
|
|
46
|
-
exports.
|
|
47
|
-
exports.
|
|
49
|
+
exports.PriceFeedRegistry = require_onchain_market_pricefeeds_PriceFeedRegistry.PriceFeedRegistry;
|
|
50
|
+
exports.PriceUpdatesCache = require_onchain_market_pricefeeds_updates_PriceUpdatesCache.PriceUpdatesCache;
|
|
51
|
+
exports.PythPriceFeed = require_onchain_market_pricefeeds_feeds_PythPriceFeed.PythPriceFeed;
|
|
52
|
+
exports.RedstoneOptions = require_onchain_market_pricefeeds_updates_RedstoneUpdater.RedstoneOptions;
|
|
53
|
+
exports.RedstonePriceFeedContract = require_onchain_market_pricefeeds_feeds_RedstonePriceFeed.RedstonePriceFeedContract;
|
|
54
|
+
exports.RedstoneUpdater = require_onchain_market_pricefeeds_updates_RedstoneUpdater.RedstoneUpdater;
|
|
55
|
+
exports.UpdatablePriceFeedRegistry = require_onchain_market_pricefeeds_updates_UpdatablePriceFeedRegistry.UpdatablePriceFeedRegistry;
|
|
56
|
+
exports.WstETHPriceFeedContract = require_onchain_market_pricefeeds_feeds_WstETHPriceFeed.WstETHPriceFeedContract;
|
|
57
|
+
exports.YearnPriceFeedContract = require_onchain_market_pricefeeds_feeds_YearnPriceFeed.YearnPriceFeedContract;
|
|
58
|
+
exports.ZeroPriceFeedContract = require_onchain_market_pricefeeds_feeds_ZeroPriceFeed.ZeroPriceFeedContract;
|
|
48
59
|
exports.fetchRedstonePayloads = require_onchain_market_pricefeeds_updates_fetchRedstonePayloads.fetchRedstonePayloads;
|
|
49
|
-
exports.getRawPriceUpdates =
|
|
60
|
+
exports.getRawPriceUpdates = require_onchain_market_pricefeeds_updates_getRawPriceUpdates.getRawPriceUpdates;
|
|
50
61
|
exports.isLPPriceFeed = require_onchain_market_pricefeeds_AbstractLPPriceFeed.isLPPriceFeed;
|
|
51
|
-
exports.isUpdatablePriceFeed =
|
|
62
|
+
exports.isUpdatablePriceFeed = require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed.isUpdatablePriceFeed;
|
|
63
|
+
exports.updatableDependencies = require_onchain_market_pricefeeds_updates_updatableDependencies.updatableDependencies;
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_utils_createRawTx = require("../../../utils/createRawTx.js");
|
|
3
|
+
const require_onchain_constants_address_provider = require("../../../constants/address-provider.js");
|
|
4
|
+
const require_onchain_constants_addresses = require("../../../constants/addresses.js");
|
|
5
|
+
const require_onchain_constants_versions = require("../../../constants/versions.js");
|
|
6
|
+
require("../../../constants/index.js");
|
|
7
|
+
require("../../../utils/index.js");
|
|
8
|
+
const require_abi_compressors_priceFeedCompressor = require("../../../../abi/compressors/priceFeedCompressor.js");
|
|
9
|
+
const require_onchain_market_pricefeeds_PriceFeedRegistry = require("../PriceFeedRegistry.js");
|
|
10
|
+
const require_onchain_market_pricefeeds_updates_getRawPriceUpdates = require("./getRawPriceUpdates.js");
|
|
11
|
+
const require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed = require("./isUpdatablePriceFeed.js");
|
|
12
|
+
const require_onchain_market_pricefeeds_updates_RedstoneUpdater = require("./RedstoneUpdater.js");
|
|
13
|
+
const require_onchain_utils_internal_Hooks = require("../../../utils/internal/Hooks.js");
|
|
14
|
+
require("../../../utils/internal/index.js");
|
|
15
|
+
const require_onchain_market_pricefeeds_updates_updatableDependencies = require("./updatableDependencies.js");
|
|
16
|
+
let viem = require("viem");
|
|
17
|
+
//#region src/onchain/market/pricefeeds/updates/UpdatablePriceFeedRegistry.ts
|
|
18
|
+
/**
|
|
19
|
+
* {@link PriceFeedRegistry} that also orchestrates off-chain price updates
|
|
20
|
+
* (Redstone, etc.).
|
|
21
|
+
**/
|
|
22
|
+
var UpdatablePriceFeedRegistry = class extends require_onchain_market_pricefeeds_PriceFeedRegistry.PriceFeedRegistry {
|
|
23
|
+
#hooks = new require_onchain_utils_internal_Hooks.Hooks();
|
|
24
|
+
#updaters;
|
|
25
|
+
#latestUpdate;
|
|
26
|
+
constructor(sdk, opts = {}) {
|
|
27
|
+
super(sdk);
|
|
28
|
+
this.#updaters = [new require_onchain_market_pricefeeds_updates_RedstoneUpdater.RedstoneUpdater(sdk, opts.redstone)];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @internal
|
|
32
|
+
* Registers a callback for price-feed registry lifecycle events.
|
|
33
|
+
* @param event - Event name.
|
|
34
|
+
* @param handler - Callback to invoke.
|
|
35
|
+
**/
|
|
36
|
+
addHook = this.#hooks.addHook.bind(this.#hooks);
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
* Removes a previously registered hook.
|
|
40
|
+
* @param event - Event name.
|
|
41
|
+
* @param handler - Callback to remove.
|
|
42
|
+
**/
|
|
43
|
+
removeHook = this.#hooks.removeHook.bind(this.#hooks);
|
|
44
|
+
/**
|
|
45
|
+
* Generates transactions to push fresh off-chain prices to updatable feeds.
|
|
46
|
+
*
|
|
47
|
+
* @param priceFeeds - Top-level price feeds whose updatable dependencies
|
|
48
|
+
* will be resolved, or a filter (`{ main: true }` / `{ reserve: true }`)
|
|
49
|
+
* to gather feeds from all oracles. When omitted, all registered feeds
|
|
50
|
+
* are used.
|
|
51
|
+
**/
|
|
52
|
+
async generatePriceFeedsUpdateTxs(priceFeeds) {
|
|
53
|
+
let updateables = this.feeds;
|
|
54
|
+
let filterRemark = "";
|
|
55
|
+
if (priceFeeds) {
|
|
56
|
+
if (Array.isArray(priceFeeds)) updateables = priceFeeds.flatMap((pf) => require_onchain_market_pricefeeds_updates_updatableDependencies.updatableDependencies(pf));
|
|
57
|
+
else if ("main" in priceFeeds && priceFeeds.main) {
|
|
58
|
+
filterRemark = " main";
|
|
59
|
+
updateables = this.sdk.marketRegister.priceOracles.flatMap((o) => o.mainPriceFeeds.values()).flatMap((pf) => require_onchain_market_pricefeeds_updates_updatableDependencies.updatableDependencies(pf.priceFeed));
|
|
60
|
+
} else if ("reserve" in priceFeeds && priceFeeds.reserve) {
|
|
61
|
+
filterRemark = " reserve";
|
|
62
|
+
updateables = this.sdk.marketRegister.priceOracles.flatMap((o) => o.reservePriceFeeds.values()).flatMap((pf) => require_onchain_market_pricefeeds_updates_updatableDependencies.updatableDependencies(pf.priceFeed));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return this.#generateUpdateTxs(updateables, filterRemark);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Similar to {@link generatePriceFeedsUpdateTxs}, but returns raw structures instead of transactions
|
|
69
|
+
* @param priceFeeds
|
|
70
|
+
* @returns
|
|
71
|
+
*/
|
|
72
|
+
async generatePriceFeedsUpdates(priceFeeds) {
|
|
73
|
+
const updates = await this.generatePriceFeedsUpdateTxs(priceFeeds);
|
|
74
|
+
return require_onchain_market_pricefeeds_updates_getRawPriceUpdates.getRawPriceUpdates(updates);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Similar to {@link generatePriceFeedsUpdates}, but returns raw transaction to PriceFeedStore.updatePrices
|
|
78
|
+
* @param priceFeeds
|
|
79
|
+
* @returns
|
|
80
|
+
*/
|
|
81
|
+
async getPriceFeedStoreUpdateTx(priceFeeds) {
|
|
82
|
+
const pfs = this.sdk.addressProvider.getAddress(require_onchain_constants_address_provider.AP_PRICE_FEED_STORE);
|
|
83
|
+
const updates = await this.generatePriceFeedsUpdates(priceFeeds);
|
|
84
|
+
return require_onchain_utils_createRawTx.createRawTx(pfs, {
|
|
85
|
+
abi: (0, viem.parseAbi)(["function updatePrices((address,bytes)[])"]),
|
|
86
|
+
functionName: "updatePrices",
|
|
87
|
+
args: [updates.map((u) => [u.priceFeed, u.data])]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Similar to {@link generatePriceFeedsUpdateTxs}, but will generate necessary price update transactions for external price feeds (not known to sdk)
|
|
92
|
+
* This does not add feeds to this registry, so they won't be implicitly included in future generatePriceFeedsUpdateTxs calls
|
|
93
|
+
* @param feeds
|
|
94
|
+
* @param block
|
|
95
|
+
* @returns
|
|
96
|
+
*/
|
|
97
|
+
async generateExternalPriceFeedsUpdateTxs(feeds, block) {
|
|
98
|
+
const [priceFeedCompressorAddress] = this.sdk.addressProvider.mustGetLatest(require_onchain_constants_address_provider.AP_PRICE_FEED_COMPRESSOR, require_onchain_constants_versions.VERSION_RANGE_310);
|
|
99
|
+
const blockParam = block ?? { blockNumber: this.sdk.currentBlock };
|
|
100
|
+
const leaves = (await this.client.readContract({
|
|
101
|
+
address: priceFeedCompressorAddress,
|
|
102
|
+
abi: require_abi_compressors_priceFeedCompressor.priceFeedCompressorAbi,
|
|
103
|
+
functionName: "loadPriceFeedTree",
|
|
104
|
+
args: [feeds],
|
|
105
|
+
...blockParam,
|
|
106
|
+
gas: this.sdk.gasLimit
|
|
107
|
+
})).map((node) => this.get(node.baseParams.addr) ?? this.create(node)).filter(require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed.isUpdatablePriceFeed);
|
|
108
|
+
return this.#generateUpdateTxs(leaves, "");
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Similar to {@link generateExternalPriceFeedsUpdateTxs}, but returns raw structures instead of transactions
|
|
112
|
+
* @param feeds
|
|
113
|
+
* @param block
|
|
114
|
+
* @returns
|
|
115
|
+
*/
|
|
116
|
+
async generateExternalPriceFeedsUpdates(feeds, block) {
|
|
117
|
+
const updates = await this.generateExternalPriceFeedsUpdateTxs(feeds, block);
|
|
118
|
+
return require_onchain_market_pricefeeds_updates_getRawPriceUpdates.getRawPriceUpdates(updates);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Loads PARTIAL information about all updatable price feeds from MarketCompressor
|
|
122
|
+
* Discovered price feeds are not saved anywhere in PriceFeedRegistry, and can later be used to load price feed updates
|
|
123
|
+
*/
|
|
124
|
+
async getPartialUpdatablePriceFeeds(configurators) {
|
|
125
|
+
const [priceFeedCompressorAddress] = this.sdk.addressProvider.mustGetLatest(require_onchain_constants_address_provider.AP_PRICE_FEED_COMPRESSOR, require_onchain_constants_versions.VERSION_RANGE_310);
|
|
126
|
+
this.logger?.debug({ configurators }, `calling getUpdatablePriceFeeds in block ${this.sdk.currentBlock}`);
|
|
127
|
+
const result = await this.client.readContract({
|
|
128
|
+
address: priceFeedCompressorAddress,
|
|
129
|
+
abi: require_abi_compressors_priceFeedCompressor.priceFeedCompressorAbi,
|
|
130
|
+
functionName: "getUpdatablePriceFeeds",
|
|
131
|
+
args: [{
|
|
132
|
+
configurators,
|
|
133
|
+
pools: [],
|
|
134
|
+
underlying: require_onchain_constants_addresses.ADDRESS_0X0
|
|
135
|
+
}],
|
|
136
|
+
blockNumber: this.sdk.currentBlock,
|
|
137
|
+
gas: this.sdk.gasLimit
|
|
138
|
+
});
|
|
139
|
+
this.logger?.debug(`loaded ${result.length} partial updatable price feeds in block ${this.sdk.currentBlock}`);
|
|
140
|
+
return result.map((baseParams) => this.create({ baseParams }));
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* @internal
|
|
144
|
+
* Diagnostic snapshot of the most recent price-update round, or
|
|
145
|
+
* `undefined` if no updates have been generated yet.
|
|
146
|
+
**/
|
|
147
|
+
get latestUpdate() {
|
|
148
|
+
return this.#latestUpdate;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* @internal
|
|
152
|
+
* Returns true if any of the updaters are in historical mode
|
|
153
|
+
*/
|
|
154
|
+
get historical() {
|
|
155
|
+
return this.#updaters.some((u) => u.historical);
|
|
156
|
+
}
|
|
157
|
+
async #generateUpdateTxs(updateables, filterRemark) {
|
|
158
|
+
if (updateables.length === 0) return {
|
|
159
|
+
txs: [],
|
|
160
|
+
timestamp: 0
|
|
161
|
+
};
|
|
162
|
+
const txs = [];
|
|
163
|
+
const latestUpdate = {
|
|
164
|
+
updates: [],
|
|
165
|
+
timestamp: Math.floor(Date.now() / 1e3)
|
|
166
|
+
};
|
|
167
|
+
const updates = (await Promise.all(this.#updaters.map((u) => u.getUpdateTxs([...updateables]).catch(() => [])))).flat();
|
|
168
|
+
let maxTimestamp = 0;
|
|
169
|
+
for (const tx of updates) {
|
|
170
|
+
const { data } = tx;
|
|
171
|
+
const { timestamp } = data;
|
|
172
|
+
if (timestamp > maxTimestamp) maxTimestamp = timestamp;
|
|
173
|
+
txs.push(tx);
|
|
174
|
+
latestUpdate.updates.push(data);
|
|
175
|
+
}
|
|
176
|
+
txs.sort((a, b) => a.raw.to.toLowerCase().localeCompare(b.raw.to.toLowerCase()));
|
|
177
|
+
const result = {
|
|
178
|
+
txs,
|
|
179
|
+
timestamp: maxTimestamp
|
|
180
|
+
};
|
|
181
|
+
const tsDelta = BigInt(maxTimestamp) - this.sdk.timestamp;
|
|
182
|
+
this.logger?.debug(`generated ${txs.length}${filterRemark} price feed update transactions, timestamp: ${maxTimestamp} (delta ${tsDelta})`);
|
|
183
|
+
if (txs.length) await this.#hooks.triggerHooks("updatesGenerated", result);
|
|
184
|
+
this.#latestUpdate = latestUpdate;
|
|
185
|
+
return result;
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
//#endregion
|
|
189
|
+
exports.UpdatablePriceFeedRegistry = UpdatablePriceFeedRegistry;
|
package/dist/cjs/onchain/market/pricefeeds/{getRawPriceUpdates.js → updates/getRawPriceUpdates.js}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_abi_iUpdatablePriceFeed = require("
|
|
2
|
+
const require_abi_iUpdatablePriceFeed = require("../../../../abi/iUpdatablePriceFeed.js");
|
|
3
3
|
let viem = require("viem");
|
|
4
|
-
//#region src/onchain/market/pricefeeds/getRawPriceUpdates.ts
|
|
4
|
+
//#region src/onchain/market/pricefeeds/updates/getRawPriceUpdates.ts
|
|
5
5
|
function getRawPriceUpdates(updates) {
|
|
6
6
|
return updates.txs.map((tx) => {
|
|
7
7
|
const data = (0, viem.decodeFunctionData)({
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_market_pricefeeds_updates_fetchRedstonePayloads = require("./fetchRedstonePayloads.js");
|
|
3
|
+
const require_onchain_market_pricefeeds_updates_getRawPriceUpdates = require("./getRawPriceUpdates.js");
|
|
4
|
+
const require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed = require("./isUpdatablePriceFeed.js");
|
|
3
5
|
const require_onchain_market_pricefeeds_updates_PriceUpdatesCache = require("./PriceUpdatesCache.js");
|
|
4
6
|
const require_onchain_market_pricefeeds_updates_RedstoneUpdater = require("./RedstoneUpdater.js");
|
|
7
|
+
const require_onchain_market_pricefeeds_updates_updatableDependencies = require("./updatableDependencies.js");
|
|
8
|
+
const require_onchain_market_pricefeeds_updates_UpdatablePriceFeedRegistry = require("./UpdatablePriceFeedRegistry.js");
|
|
5
9
|
exports.PriceUpdatesCache = require_onchain_market_pricefeeds_updates_PriceUpdatesCache.PriceUpdatesCache;
|
|
6
10
|
exports.RedstoneOptions = require_onchain_market_pricefeeds_updates_RedstoneUpdater.RedstoneOptions;
|
|
7
11
|
exports.RedstoneUpdater = require_onchain_market_pricefeeds_updates_RedstoneUpdater.RedstoneUpdater;
|
|
12
|
+
exports.UpdatablePriceFeedRegistry = require_onchain_market_pricefeeds_updates_UpdatablePriceFeedRegistry.UpdatablePriceFeedRegistry;
|
|
8
13
|
exports.fetchRedstonePayloads = require_onchain_market_pricefeeds_updates_fetchRedstonePayloads.fetchRedstonePayloads;
|
|
14
|
+
exports.getRawPriceUpdates = require_onchain_market_pricefeeds_updates_getRawPriceUpdates.getRawPriceUpdates;
|
|
15
|
+
exports.isUpdatablePriceFeed = require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed.isUpdatablePriceFeed;
|
|
16
|
+
exports.updatableDependencies = require_onchain_market_pricefeeds_updates_updatableDependencies.updatableDependencies;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
//#region src/onchain/market/pricefeeds/isUpdatablePriceFeed.ts
|
|
2
|
+
//#region src/onchain/market/pricefeeds/updates/isUpdatablePriceFeed.ts
|
|
3
3
|
function isUpdatablePriceFeed(pf) {
|
|
4
4
|
return pf.updatable;
|
|
5
5
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed = require("./isUpdatablePriceFeed.js");
|
|
3
|
+
//#region src/onchain/market/pricefeeds/updates/updatableDependencies.ts
|
|
4
|
+
/**
|
|
5
|
+
* Collects updatable feeds in this feed's dependency tree, including this
|
|
6
|
+
* feed itself when it is updatable.
|
|
7
|
+
**/
|
|
8
|
+
function updatableDependencies(feed) {
|
|
9
|
+
if (!feed.loaded) return [feed];
|
|
10
|
+
const underlying = feed.underlyingPriceFeeds.flatMap((ref) => updatableDependencies(ref.priceFeed));
|
|
11
|
+
return require_onchain_market_pricefeeds_updates_isUpdatablePriceFeed.isUpdatablePriceFeed(feed) ? [feed, ...underlying] : underlying;
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
exports.updatableDependencies = updatableDependencies;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_onchain_utils_AddressMap = require("../../utils/AddressMap.js");
|
|
3
3
|
const require_onchain_utils_bytes32ToString = require("../../utils/bytes32ToString.js");
|
|
4
|
-
const require_onchain_constants_address_provider = require("../../constants/address-provider.js");
|
|
5
|
-
const require_onchain_constants_versions = require("../../constants/versions.js");
|
|
6
|
-
require("../../constants/index.js");
|
|
7
4
|
require("../../utils/index.js");
|
|
8
5
|
const require_onchain_base_SDKConstruct = require("../../base/SDKConstruct.js");
|
|
9
6
|
const require_onchain_base_token_types = require("../../base/token-types.js");
|
|
@@ -15,6 +12,7 @@ const require_onchain_market_rwa_securitize_SecuritizeRWAFactory = require("./se
|
|
|
15
12
|
require("./securitize/index.js");
|
|
16
13
|
let viem = require("viem");
|
|
17
14
|
//#region src/onchain/market/rwa/RWARegistry.ts
|
|
15
|
+
const RWA_COMPRESSOR_ADDRESS = "0x9Bff226505632930BA1897E7943e90A2f7D0D9f7";
|
|
18
16
|
/**
|
|
19
17
|
* Registry of RWA underlying tokens and RWA factory contracts.
|
|
20
18
|
*
|
|
@@ -42,11 +40,10 @@ var RWARegistry = class extends require_onchain_base_SDKConstruct.SDKConstruct {
|
|
|
42
40
|
getLoadMulticalls(configurators, rwaFactories = []) {
|
|
43
41
|
this.#requestedFactories = rwaFactories;
|
|
44
42
|
if (!rwaFactories.length) return [];
|
|
45
|
-
const [rwaCompressorAddress] = this.sdk.addressProvider.mustGetLatest(require_onchain_constants_address_provider.AP_RWA_COMPRESSOR, require_onchain_constants_versions.VERSION_RANGE_310);
|
|
46
43
|
return [{
|
|
47
44
|
call: {
|
|
48
45
|
abi: require_abi_rwa_iRWACompressor.iRWACompressorAbi,
|
|
49
|
-
address:
|
|
46
|
+
address: RWA_COMPRESSOR_ADDRESS,
|
|
50
47
|
functionName: "getRWAMarketsData",
|
|
51
48
|
args: [configurators, rwaFactories]
|
|
52
49
|
},
|
|
@@ -84,10 +81,9 @@ var RWARegistry = class extends require_onchain_base_SDKConstruct.SDKConstruct {
|
|
|
84
81
|
let factories = this.#factories.values();
|
|
85
82
|
if (factories_?.length) factories = factories_.map((f) => this.#factories.mustGet(f));
|
|
86
83
|
if (!factories.length) return [];
|
|
87
|
-
const [rwaCompressorAddress] = this.sdk.addressProvider.mustGetLatest(require_onchain_constants_address_provider.AP_RWA_COMPRESSOR, require_onchain_constants_versions.VERSION_RANGE_310);
|
|
88
84
|
const resp = await this.client.readContract({
|
|
89
85
|
abi: require_abi_rwa_iRWACompressor.iRWACompressorAbi,
|
|
90
|
-
address:
|
|
86
|
+
address: RWA_COMPRESSOR_ADDRESS,
|
|
91
87
|
functionName: "getRWAInvestorData",
|
|
92
88
|
args: [investor, factories.map((f) => f.address)],
|
|
93
89
|
blockNumber
|
|
@@ -286,3 +282,4 @@ var RWARegistry = class extends require_onchain_base_SDKConstruct.SDKConstruct {
|
|
|
286
282
|
};
|
|
287
283
|
//#endregion
|
|
288
284
|
exports.RWARegistry = RWARegistry;
|
|
285
|
+
exports.RWA_COMPRESSOR_ADDRESS = RWA_COMPRESSOR_ADDRESS;
|
|
@@ -17,6 +17,7 @@ exports.MidasLiquidatorContract = require_onchain_market_rwa_midas_MidasLiquidat
|
|
|
17
17
|
exports.PHANTOM_TOKEN_MIDAS_REDEMPTION = require_onchain_market_rwa_midas_constants.PHANTOM_TOKEN_MIDAS_REDEMPTION;
|
|
18
18
|
exports.PHANTOM_TOKEN_SECURITIZE_REDEMPTION = require_onchain_market_rwa_securitize_constants.PHANTOM_TOKEN_SECURITIZE_REDEMPTION;
|
|
19
19
|
exports.RWARegistry = require_onchain_market_rwa_RWARegistry.RWARegistry;
|
|
20
|
+
exports.RWA_COMPRESSOR_ADDRESS = require_onchain_market_rwa_RWARegistry.RWA_COMPRESSOR_ADDRESS;
|
|
20
21
|
exports.RWA_LIQUIDATOR_MIDAS = require_onchain_market_rwa_midas_constants.RWA_LIQUIDATOR_MIDAS;
|
|
21
22
|
exports.RWA_LIQUIDATOR_SECURITIZE = require_onchain_market_rwa_securitize_constants.RWA_LIQUIDATOR_SECURITIZE;
|
|
22
23
|
exports.SecuritizeDegenNFT = require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT;
|
|
@@ -6,14 +6,23 @@ require("../../adapters/abi/index.js");
|
|
|
6
6
|
const require_abi_rwa_iMidasDegenNFT = require("../../../../abi/rwa/iMidasDegenNFT.js");
|
|
7
7
|
require("./constants.js");
|
|
8
8
|
const require_abi_rwa_iMidasAccessControl = require("../../../../abi/rwa/iMidasAccessControl.js");
|
|
9
|
+
const require_model_rwa = require("../../../../model/rwa.js");
|
|
10
|
+
require("../../../../model/index.js");
|
|
9
11
|
let viem = require("viem");
|
|
10
12
|
//#region src/onchain/market/rwa/midas/MidasDegenNFT.ts
|
|
11
13
|
const abi = require_abi_rwa_iMidasDegenNFT.iMidasDegenNFTAbi;
|
|
14
|
+
/**
|
|
15
|
+
* Midas is an RWA protocol without a factory: accounts open through the plain
|
|
16
|
+
* facade. Only a Permissioned-mode gateway deploys a degen NFT, so a Midas
|
|
17
|
+
* strategy that does not require KYC has no NFT at all.
|
|
18
|
+
*/
|
|
12
19
|
var MidasDegenNFT = class extends require_onchain_base_BaseContract.BaseContract {
|
|
13
20
|
protocol = "midas";
|
|
21
|
+
registrationLink = require_model_rwa.KYC_REGISTRATION_LINKS.midas;
|
|
14
22
|
gateway;
|
|
15
23
|
accessControl;
|
|
16
24
|
greenlistedRole;
|
|
25
|
+
#mToken;
|
|
17
26
|
constructor(sdk, baseParams) {
|
|
18
27
|
super(sdk, {
|
|
19
28
|
...baseParams,
|
|
@@ -31,9 +40,26 @@ var MidasDegenNFT = class extends require_onchain_base_BaseContract.BaseContract
|
|
|
31
40
|
this.accessControl = accessControl;
|
|
32
41
|
this.greenlistedRole = greenlistedRole;
|
|
33
42
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
43
|
+
async getTokens() {
|
|
44
|
+
return [await this.#mTokenAddress()];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Same predicate `MidasDegenNFT.burn` reverts on; the mToken rides along in
|
|
48
|
+
* the batch until it is cached.
|
|
49
|
+
*/
|
|
50
|
+
async getOpenAccountRequirements(wallet, _props) {
|
|
51
|
+
const token = this.#mToken;
|
|
52
|
+
if (token !== void 0) return {
|
|
53
|
+
protocol: "midas",
|
|
54
|
+
token,
|
|
55
|
+
greenlisted: await this.client.readContract({
|
|
56
|
+
abi: require_abi_rwa_iMidasAccessControl.iMidasAccessControlAbi,
|
|
57
|
+
address: this.accessControl,
|
|
58
|
+
functionName: "hasRole",
|
|
59
|
+
args: [this.greenlistedRole, wallet]
|
|
60
|
+
})
|
|
61
|
+
};
|
|
62
|
+
const [greenlisted, mToken] = await this.client.multicall({
|
|
37
63
|
allowFailure: false,
|
|
38
64
|
contracts: [{
|
|
39
65
|
abi: require_abi_rwa_iMidasAccessControl.iMidasAccessControlAbi,
|
|
@@ -46,11 +72,25 @@ var MidasDegenNFT = class extends require_onchain_base_BaseContract.BaseContract
|
|
|
46
72
|
functionName: "mToken"
|
|
47
73
|
}]
|
|
48
74
|
});
|
|
75
|
+
this.#mToken = mToken;
|
|
49
76
|
return {
|
|
50
|
-
|
|
51
|
-
token
|
|
77
|
+
protocol: "midas",
|
|
78
|
+
token: mToken,
|
|
79
|
+
greenlisted
|
|
52
80
|
};
|
|
53
81
|
}
|
|
82
|
+
isRegistered(requirements) {
|
|
83
|
+
return requirements.greenlisted;
|
|
84
|
+
}
|
|
85
|
+
getMissingRequirements() {}
|
|
86
|
+
async #mTokenAddress() {
|
|
87
|
+
if (this.#mToken === void 0) this.#mToken = await this.client.readContract({
|
|
88
|
+
abi: require_onchain_market_adapters_abi_midas_iMidasGatewayV311.iMidasGatewayV311Abi,
|
|
89
|
+
address: this.gateway,
|
|
90
|
+
functionName: "mToken"
|
|
91
|
+
});
|
|
92
|
+
return this.#mToken;
|
|
93
|
+
}
|
|
54
94
|
};
|
|
55
95
|
//#endregion
|
|
56
96
|
exports.MidasDegenNFT = MidasDegenNFT;
|
|
@@ -1,14 +1,23 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_onchain_utils_AddressSet = require("../../../utils/AddressSet.js");
|
|
3
|
+
require("../../../utils/index.js");
|
|
2
4
|
const require_onchain_base_BaseContract = require("../../../base/BaseContract.js");
|
|
3
5
|
require("../../../base/index.js");
|
|
6
|
+
const require_model_rwa = require("../../../../model/rwa.js");
|
|
7
|
+
require("../../../../model/index.js");
|
|
4
8
|
const require_onchain_market_rwa_securitize_constants = require("./constants.js");
|
|
5
|
-
const require_abi_rwa_iSecuritizeDegenNFT = require("../../../../abi/rwa/iSecuritizeDegenNFT.js");
|
|
6
|
-
let viem = require("viem");
|
|
7
9
|
//#region src/onchain/market/rwa/securitize/SecuritizeDegenNFT.ts
|
|
8
|
-
const abi =
|
|
10
|
+
const abi = require("../../../../abi/rwa/iSecuritizeDegenNFT.js").iSecuritizeDegenNFTAbi;
|
|
11
|
+
/**
|
|
12
|
+
* Securitize always has a factory, which deploys this NFT. DS-token data,
|
|
13
|
+
* registrars and cached signatures live here; the factory only builds txs
|
|
14
|
+
* and looks up investor/wallet addresses.
|
|
15
|
+
*/
|
|
9
16
|
var SecuritizeDegenNFT = class extends require_onchain_base_BaseContract.BaseContract {
|
|
10
17
|
protocol = "securitize";
|
|
18
|
+
registrationLink = require_model_rwa.KYC_REGISTRATION_LINKS.securitize;
|
|
11
19
|
factory;
|
|
20
|
+
#sdk;
|
|
12
21
|
constructor(sdk, address, factory) {
|
|
13
22
|
super(sdk, {
|
|
14
23
|
addr: address,
|
|
@@ -17,19 +26,54 @@ var SecuritizeDegenNFT = class extends require_onchain_base_BaseContract.BaseCon
|
|
|
17
26
|
name: "SecuritizeDegenNFT",
|
|
18
27
|
abi
|
|
19
28
|
});
|
|
29
|
+
this.#sdk = sdk;
|
|
20
30
|
this.factory = factory;
|
|
21
31
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
32
|
+
async getTokens() {
|
|
33
|
+
return this.factory.getTokens();
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Registration on Securitize is the protocol-side KYC step; pending
|
|
37
|
+
* EIP-712 signatures are tx-side leftover, not KYC.
|
|
38
|
+
*/
|
|
39
|
+
async getOpenAccountRequirements(wallet, props) {
|
|
40
|
+
const tokensToRegister = new require_onchain_utils_AddressSet.AddressSet(this.factory.getTokens()).has(props.tokenOutAddress) ? new require_onchain_utils_AddressSet.AddressSet([props.tokenOutAddress]) : new require_onchain_utils_AddressSet.AddressSet();
|
|
41
|
+
if (tokensToRegister.size === 0) return {
|
|
42
|
+
protocol: "securitize",
|
|
43
|
+
factory: this.factory.address,
|
|
44
|
+
securitizeTokensToRegister: [],
|
|
45
|
+
tokensToRegister: [],
|
|
46
|
+
requiredSignatures: []
|
|
47
|
+
};
|
|
48
|
+
const [investorData] = await this.#sdk.rwa.getInvestorData(wallet, [this.factory.address]);
|
|
49
|
+
const registredTokens = new require_onchain_utils_AddressSet.AddressSet(investorData.registeredTokens);
|
|
50
|
+
const signedTokens = new require_onchain_utils_AddressSet.AddressSet(investorData.cachedSignatures.map((s) => s.token));
|
|
51
|
+
const unsignedTokens = tokensToRegister.difference(signedTokens);
|
|
52
|
+
const securitizeTokensToRegister = tokensToRegister.difference(registredTokens);
|
|
53
|
+
const requiredSignatures = investorData.registerVaultMessages.filter((m) => unsignedTokens.has(m.message.token));
|
|
54
|
+
return {
|
|
55
|
+
protocol: "securitize",
|
|
56
|
+
factory: this.factory.address,
|
|
57
|
+
securitizeTokensToRegister: Array.from(securitizeTokensToRegister),
|
|
58
|
+
tokensToRegister: Array.from(tokensToRegister),
|
|
59
|
+
requiredSignatures
|
|
28
60
|
};
|
|
29
|
-
|
|
61
|
+
}
|
|
62
|
+
isRegistered(requirements) {
|
|
63
|
+
return requirements.securitizeTokensToRegister.length === 0;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* A required signature is omitted when `providedArgs.signaturesToCache`
|
|
67
|
+
* already carries a signature for the same token: the transaction caches it
|
|
68
|
+
* on-chain as part of the operation.
|
|
69
|
+
*/
|
|
70
|
+
getMissingRequirements(requirements, providedArgs) {
|
|
71
|
+
const providedTokens = new require_onchain_utils_AddressSet.AddressSet((providedArgs?.signaturesToCache ?? []).map((s) => s.token));
|
|
72
|
+
const requiredSignatures = requirements.requiredSignatures.filter((message) => !providedTokens.has(message.message.token));
|
|
73
|
+
if (requiredSignatures.length === 0) return;
|
|
30
74
|
return {
|
|
31
|
-
|
|
32
|
-
|
|
75
|
+
protocol: "securitize",
|
|
76
|
+
requiredSignatures
|
|
33
77
|
};
|
|
34
78
|
}
|
|
35
79
|
};
|