TerminalV1
Mainnet: 0xd569D3CCE55b71a8a3f3C418c329A66e5f714431
Inherits: Operatable
, ITerminalV1
, ITerminal
, ReentrancyGuard
This contract manages the Juicebox ecosystem, serves as a payment terminal, and custodies all funds.
A project can transfer its funds, along with the power to reconfigure and mint/burn their Tickets, from this contract to another allowed terminal contract at any time.
State Variables
_processedTicketTrackerOf
mapping(uint256 => int256) private _processedTicketTrackerOf;
_preconfigureTicketCountOf
mapping(uint256 => uint256) private _preconfigureTicketCountOf;
projects
The Projects contract which mints ERC-721's that represent project ownership and transfers.
IProjects public immutable override projects;
fundingCycles
The contract storing all funding cycle configurations.
IFundingCycles public immutable override fundingCycles;
ticketBooth
The contract that manages Ticket printing and redeeming.
ITicketBooth public immutable override ticketBooth;
modStore
The contract that stores mods for each project.
IModStore public immutable override modStore;
prices
The prices feeds.
IPrices public immutable override prices;
terminalDirectory
The directory of terminals.
ITerminalDirectory public immutable override terminalDirectory;
balanceOf
The amount of ETH that each project is responsible for.
mapping(uint256 => uint256) public override balanceOf;