From bd1a111c4c5f1ae2b868ab8aa17c234ed96c7f05 Mon Sep 17 00:00:00 2001 From: JordyDutch Date: Fri, 21 Mar 2025 23:12:32 +0100 Subject: [PATCH] Add ASCII art for StakingverseVault contract and SLYXToken contract --- src/SLYXToken.sol | 68 +++++++++++++++++++++++++ src/StakingverseVault.sol | 101 ++++++++++++++++++++++++-------------- 2 files changed, 132 insertions(+), 37 deletions(-) diff --git a/src/SLYXToken.sol b/src/SLYXToken.sol index ab2e2de..0d1ebfc 100644 --- a/src/SLYXToken.sol +++ b/src/SLYXToken.sol @@ -17,6 +17,74 @@ import { InvalidRecipientForSLYXTokensTransfer, OnlyVaultAllowedToMintSLYX, InvalidVaultAddress } from "./SLYXErrors.sol"; +// +// +// +// ++++++++++++ +// ;+++++++++++++++++++ +// +++++++$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// ++++++x$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$x++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// ++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++++ +// +++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++ +// ;++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++ +// +++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++ +// ++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++ +// +++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++ +// :+++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&++++++++++++++++++$$$$$$$$$$$$$$$$$$$$x+++++$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++&$$$$$$$$$&++++++++++++++$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++&$$$$$$$$$$$$$+++++++X$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$$$X++++++++++++++++++++++++++++++$$$$$$$$$$$$++++++$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++++++++$$$$$$$$$+++++X$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++++++++++$$$$$$+++++$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$$++++++++++++++++++++++++++++++++++++$$X++++$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++++++++++++++++$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$++++++++++++++++++++++++++++++++++++++$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$+++++++++++++++++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$$$$$$++++++++++++++++++++++++++++$$$$$++++$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$$$+$$$$$+++++++++++++++++++++++$$$$$$+++++++$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$$$$+$$$$$$$+++++++++++++++++++$$$$$$++++++++++$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$$$$+++$$$$$$$$$++++++++++++++$$$$$$+++++++++++++$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$$$++++&$$$$$$$$$$$++++++++&$$$$$$++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$$++++++&$$$$$$++++++++$$$$$$$+++++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$$+++++++++++++++++$$$$$$$&++++++++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$+++: +// :+++$$$++++++++++++$$$$$$$$$$$$$$x++++++++++++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++: +// +++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++ +// ++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++ +// +++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++ +// +++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++ +// +++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++ +// ++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// ++++++X$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$x++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$$$$$$$+++++++ +// +++++++$$$$$$$$$$$$+++++++ +// ++++++++++++++++++++ +// ++++++++++++ +// +// +// +// .----------------------------------------------------------------------------------------------------. +// | | +// | ███████╗████████╗ █████╗ ██╗ ██╗██╗███╗ ██╗ ██████╗ ██╗ ██╗███████╗██████╗ ███████╗███████╗ | +// | ██╔════╝╚══██╔══╝██╔══██╗██║ ██╔╝██║████╗ ██║██╔════╝ ██║ ██║██╔════╝██╔══██╗██╔════╝██╔════╝ | +// | ███████╗ ██║ ███████║█████╔╝ ██║██╔██╗ ██║██║ ███╗██║ ██║█████╗ ██████╔╝███████╗█████╗ | +// | ╚════██║ ██║ ██╔══██║██╔═██╗ ██║██║╚██╗██║██║ ██║╚██╗ ██╔╝██╔══╝ ██╔══██╗╚════██║██╔══╝ | +// | ███████║ ██║ ██║ ██║██║ ██╗██║██║ ╚████║╚██████╔╝ ╚████╔╝ ███████╗██║ ██║███████║███████╗ | +// | ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═══╝ ╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝ | +// | | +// '----------------------------------------------------------------------------------------------------' +/// /// @title Stakingverse Staked LYX (sLYX) Token contract. /// /// @notice sLYX tokens represent liquid stake in the Stakingverse vault linked to this contract. diff --git a/src/StakingverseVault.sol b/src/StakingverseVault.sol index 363bb97..6d985d8 100755 --- a/src/StakingverseVault.sol +++ b/src/StakingverseVault.sol @@ -11,44 +11,71 @@ import {IDepositContract, DEPOSIT_AMOUNT} from "./IDepositContract.sol"; import {IVault} from "./IVault.sol"; import {IVaultStakeRecipient} from "./IVaultStakeRecipient.sol"; -// ..;===+. -// .:=iiiiii=+= -// .=i))=;::+)i=+, -// ,=i);)I)))I):=i=; -// .=i==))))ii)))I:i++ -// +)+))iiiiiiii))I=i+:' -// .,:;;++++++;:,. )iii+:::;iii))+i=' -// .:;++=iiiiiiiiii=++;. =::,,,:::=i));=+' -// ,;+==ii)))))))))))ii==+;, ,,,:=i))+=: -// ,;+=ii))))))IIIIII))))ii===;. ,,:=i)=i+ -// ;+=ii)))IIIIITIIIIII))))iiii=+, ,:=));=, -// ,+=i))IIIIIITTTTTITIIIIII)))I)i=+,,:+i)=i+ -// ,+i))IIIIIITTTTTTTTTTTTI))IIII))i=::i))i=' -// ,=i))IIIIITLLTTTTTTTTTTIITTTTIII)+;+i)+i` -// =i))IIITTLTLTTTTTTTTTIITTLLTTTII+:i)ii:' -// +i))IITTTLLLTTTTTTTTTTTTLLLTTTT+:i)))=, -// =))ITTTTTTTTTTTLTTTTTTLLLLLLTi:=)IIiii; -// .i)IIITTTTTTTTLTTTITLLLLLLLT);=)I)))))i; -// :))IIITTTTTLTTTTTTLLHLLLLL);=)II)IIIIi=: -// :i)IIITTTTTTTTTLLLHLLHLL)+=)II)ITTTI)i= -// .i)IIITTTTITTLLLHHLLLL);=)II)ITTTTII)i+ -// =i)IIIIIITTLLLLLLHLL=:i)II)TTTTTTIII)i' -// +i)i)))IITTLLLLLLLLT=:i)II)TTTTLTTIII)i; -// +ii)i:)IITTLLTLLLLT=;+i)I)ITTTTLTTTII))i; -// =;)i=:,=)ITTTTLTTI=:i))I)TTTLLLTTTTTII)i; -// +i)ii::, +)IIITI+:+i)I))TTTTLLTTTTTII))=, -// :=;)i=:,, ,i++::i))I)ITTTTTTTTTTIIII)=+' -// .+ii)i=::,, ,,::=i)))iIITTTTTTTTIIIII)=+ -// ,==)ii=;:,,,,:::=ii)i)iIIIITIIITIIII))i+:' -// +=:))i==;:::;=iii)+)= `:i)))IIIII)ii+' -// .+=:))iiiiiiii)))+ii; -// .+=;))iiiiii)));ii+ -// .+=i:)))))))=+ii+ -// .;==i+::::=)i=; -// ,+==iiiiii+, -// `+=+++;` +// +// +// +// &&&&&&&&&&&&& +// &&&&&&&& &&&&&&&& +// &&&&&& &&&&&&& +// &&&&&& &&&&&&& +// &&&&&& &&&&&&& +// &&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&& &&&&&& +// &&&& &&&&& +// &&&& &&&& +// &&&& &&& +// &&& $$$$$$$$; &&&& +// &&&& $$$$$$$$$$$$$$$$$ ;$&X &&& +// &&& $$$$$$$$$$$$$$$$$$$$$ X$$$$$$$$$$$$ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$ &$$$$$$ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$+ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$+ x$$$& &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$& &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$x &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ &&& +// &&& $$$$$$$$$$$$$$$$$$$$$$$$$$$ &$ &&& +// &&& ;$$$$$$$$$$$$$$$$$$$$$$& &$$$$x &&& +// &&& $ $$$$$$$$$$$$$$$$$$& +$$$$$$$$ &&& +// &&& $$: $$$$$$$$$$$$$x :$$$$$$$$$$$ &&& +// &&& $$$ $$$$$$$$ x$$$$$$$$$$$$$$ &&& +// &&& +$$$$$ +$$$$$$; &$$$$$$$$$$$$$$$$$ &&& +// &&& $$$$$$$$$$$$$$$$ X$$$$$$$$$$$$$$$$$$$$ &&& +// &&& $$$$$$$$$$$ $$$$$$$$$$$$$$$$$ &&& +// &&&& $$$$$$$$; &&& +// &&& &&&& +// &&&& &&& +// &&&& &&&& +// &&&& &&&&& +// &&&&&& &&&&&& +// &&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&&& &&&&&& +// &&&&&& &&&&&& +// &&&&&& &&&&&&& +// &&&&&& &&&&&&& +// &&&&&&& &&&&&&&& +// &&&&&&&&&&&&& +// +// +// +// .----------------------------------------------------------------------------------------------------. +// | | +// | ███████╗████████╗ █████╗ ██╗ ██╗██╗███╗ ██╗ ██████╗ ██╗ ██╗███████╗██████╗ ███████╗███████╗ | +// | ██╔════╝╚══██╔══╝██╔══██╗██║ ██╔╝██║████╗ ██║██╔════╝ ██║ ██║██╔════╝██╔══██╗██╔════╝██╔════╝ | +// | ███████╗ ██║ ███████║█████╔╝ ██║██╔██╗ ██║██║ ███╗██║ ██║█████╗ ██████╔╝███████╗█████╗ | +// | ╚════██║ ██║ ██╔══██║██╔═██╗ ██║██║╚██╗██║██║ ██║╚██╗ ██╔╝██╔══╝ ██╔══██╗╚════██║██╔══╝ | +// | ███████║ ██║ ██║ ██║██║ ██╗██║██║ ╚████║╚██████╔╝ ╚████╔╝ ███████╗██║ ██║███████║███████╗ | +// | ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═══╝ ╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝ | +// | | +// '----------------------------------------------------------------------------------------------------' /// -/// @title Staking vault for Stakingverse +/// @title Staking Vault for Stakingverse /// /// @notice This contract is designed to manage staking operations, including depositing, withdrawing, and claiming rewards for stakers. /// Stakers can also query their staked balance, shares, claimable balance (including rewards) and pending withdrawals.