diff --git a/README.md b/README.md index 0c538a7..08ba412 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ - [Join Party](#join-liquidity-party) - [Leave Party](#leave-party) - [Swap Router](#swap-router) +- [UML diagram](#uml-diagram) - [License](#license) ## Installation @@ -208,6 +209,10 @@ await BNBSwapRouter.multicall([exactInputData, unwrapWETH9Data]) This section demonstrates how to efficiently perform token swaps using the **Swap Router**, providing an alternative to the `joinParty` and `leaveParty` functions while saving on gas costs +## UML Diagram + +![classDiagram](https://github.com/user-attachments/assets/8c102041-7e2a-4804-a7d1-fef2acfefdef) + ## License **BNB-Party** Contracts is released under the [MIT License](https://github.com/bnb-party/BNBParty.Factory/blob/readme/LICENSE). diff --git a/contracts/BNBPartyFactory.sol b/contracts/BNBPartyFactory.sol index 61fe0ef..b1f7af6 100644 --- a/contracts/BNBPartyFactory.sol +++ b/contracts/BNBPartyFactory.sol @@ -3,14 +3,13 @@ pragma solidity ^0.8.0; import "./token/ERC20Token.sol"; import "./BNBPartyLiquidity.sol"; -import "./BNBPartyManageable.sol"; import "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import "@bnb-party/v3-periphery/contracts/interfaces/IPeripheryPayments.sol"; /// @title BNBPartyFactory /// @notice This contract is used for creating and managing liquidity pools and custom ERC20 tokens on the Binance Smart Chain (BSC) using Uniswap V3 system. -contract BNBPartyFactory is BNBPartyLiquidity, ReentrancyGuard, BNBPartyManageable { +contract BNBPartyFactory is BNBPartyLiquidity, ReentrancyGuard { using SafeERC20 for IERC20; /// @notice Allows the contract to receive BNB diff --git a/contracts/BNBPartyView.sol b/contracts/BNBPartyView.sol index 91bc986..bbf9cb0 100644 --- a/contracts/BNBPartyView.sol +++ b/contracts/BNBPartyView.sol @@ -1,11 +1,11 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; -import "./BNBPartyFee.sol"; +import "./BNBPartyManageable.sol"; /// @title BNBPartyView /// @notice This abstract contract provides view functions for the BNB Party system, including fee calculations and token checks. -abstract contract BNBPartyView is BNBPartyFee { +abstract contract BNBPartyView is BNBPartyManageable { /// @notice Checks if WBNB is the token0 in the provided Uniswap V3 pool /// @param liquidityPool Address of the Uniswap V3 pool to check /// @return True if WBNB is token0, false otherwise