JBPayoutRedemptionPaymentTerminal3_1_2
Inherits: JBSingleTokenPaymentTerminal
, JBOperatable
, Ownable
, IJBPayoutRedemptionPaymentTerminal3_1_1
Generic terminal managing all inflows and outflows of funds into the protocol ecosystem.
State Variables
_FEE_CAP
Maximum fee that can be set for a funding cycle configuration.
Out of MAX_FEE (50_000_000 / 1_000_000_000).
uint256 internal constant _FEE_CAP = 50_000_000;
_FEE_BENEFICIARY_PROJECT_ID
The fee beneficiary project ID is 1, as it should be the first project launched during the deployment process.
uint256 internal constant _FEE_BENEFICIARY_PROJECT_ID = 1;
_heldFeesOf
Fees that are being held to be processed later.
mapping(uint256 => JBFee[]) internal _heldFeesOf;
projects
Mints ERC-721's that represent project ownership and transfers.
IJBProjects public immutable override projects;
directory
The directory of terminals and controllers for projects.
IJBDirectory public immutable override directory;
splitsStore
The contract that stores splits for each project.
IJBSplitsStore public immutable override splitsStore;
prices
The contract that exposes price feeds.
IJBPrices public immutable override prices;
store
The contract that stores and manages the terminal's data.
address public immutable override store;
baseWeightCurrency
The currency to base token issuance on.
If this differs from currency
, there must be a price feed available to convert currency
to baseWeightCurrency
.
uint256 public immutable override baseWeightCurrency;
payoutSplitsGroup
The group that payout splits coming from this terminal are identified by.
uint256 public immutable override payoutSplitsGroup;
fee
The platform fee percent.
Out of MAX_FEE (25_000_000 / 1_000_000_000)
uint256 public override fee = 25_000_000;
feeGauge
The data source that returns a discount to apply to a project's fee.
address public override feeGauge;