polkamarkets-js 3.1.10 → 3.2.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/.gitmodules +18 -0
- package/README.md +356 -53
- package/abis/AccessControl.json +1 -0
- package/abis/Address.json +1 -0
- package/abis/BalanceHolder_ERC20.json +1 -0
- package/abis/CeilDiv.json +1 -0
- package/abis/CeilDivBad.json +1 -0
- package/abis/CeilDivGood.json +1 -0
- package/abis/Clones.json +1 -0
- package/abis/CommonBase.json +1 -0
- package/abis/Context.json +1 -0
- package/abis/ContextUpgradeable.json +1 -0
- package/abis/Create2.json +1 -0
- package/abis/CreateMarketLib.json +1 -0
- package/abis/DeployProxy.json +1 -0
- package/abis/DeployUpgradeablePM.json +1 -0
- package/abis/ERC165.json +1 -0
- package/abis/ERC1967Proxy.json +1 -0
- package/abis/ERC1967Utils.json +1 -0
- package/abis/ERC20.json +1 -0
- package/abis/ERC20Burnable.json +1 -0
- package/abis/ERC20MinterPauser.json +1 -0
- package/abis/ERC20Pausable.json +1 -0
- package/abis/Errors.json +1 -0
- package/abis/FantasyERC20.json +1 -0
- package/abis/IAccessControl.json +1 -0
- package/abis/IBalanceHolder_ERC20.json +1 -0
- package/abis/IBeacon.json +1 -0
- package/abis/IERC1155Errors.json +1 -0
- package/abis/IERC1363.json +1 -0
- package/abis/IERC165.json +1 -0
- package/abis/IERC1822Proxiable.json +1 -0
- package/abis/IERC1967.json +1 -0
- package/abis/IERC20.json +1 -0
- package/abis/IERC20Errors.json +1 -0
- package/abis/IERC20Metadata.json +1 -0
- package/abis/IERC721.json +1 -0
- package/abis/IERC721Enumerable.json +1 -0
- package/abis/IERC721Errors.json +1 -0
- package/abis/IERC721Metadata.json +1 -0
- package/abis/IERC721TokenReceiver.json +1 -0
- package/abis/IFantasyERC20.json +1 -0
- package/abis/IMulticall3.json +1 -0
- package/abis/IPredictionMarketV3Factory.json +1 -0
- package/abis/IPredictionMarketV3Manager.json +1 -0
- package/abis/IPredictionMarketV3_2.json +1 -0
- package/abis/IPredictionMarketV3_4.json +1 -0
- package/abis/IRealityETH_ERC20.json +1 -0
- package/abis/IRealityETH_IERC20.json +1 -0
- package/abis/IWETH.json +1 -0
- package/abis/Initializable.json +1 -0
- package/abis/LandFactory.json +1 -0
- package/abis/MockERC20.json +1 -0
- package/abis/MockERC721.json +1 -0
- package/abis/Ownable.json +1 -0
- package/abis/Ownable2StepUpgradeable.json +1 -0
- package/abis/OwnableUpgradeable.json +1 -0
- package/abis/Pausable.json +1 -0
- package/abis/PredictionMarketManagerTest.json +1 -0
- package/abis/PredictionMarketTest.json +1 -0
- package/abis/PredictionMarketV33Flow.json +1 -0
- package/abis/PredictionMarketV3Controller.json +1 -0
- package/abis/PredictionMarketV3Factory.json +1 -0
- package/abis/PredictionMarketV3Manager.json +1 -0
- package/abis/PredictionMarketV3Querier.json +1 -0
- package/abis/PredictionMarketV3_2.json +1 -0
- package/abis/PredictionMarketV3_4.json +1 -0
- package/abis/PredictionMarketV3_4Bad.json +1 -0
- package/abis/PredictionMarketV3_4Good.json +1 -0
- package/abis/Proxy.json +1 -0
- package/abis/RealityETH_ERC20_Factory.json +1 -0
- package/abis/RealityETH_ERC20_v3_0.json +1 -0
- package/abis/ReentrancyGuard.json +1 -0
- package/abis/ReentrancyGuardUpgradeable.json +1 -0
- package/abis/SafeERC20.json +1 -0
- package/abis/Script.json +1 -0
- package/abis/ScriptBase.json +1 -0
- package/abis/StdAssertions.json +1 -0
- package/abis/StdChains.json +1 -0
- package/abis/StdCheats.json +1 -0
- package/abis/StdCheatsSafe.json +1 -0
- package/abis/StdInvariant.json +1 -0
- package/abis/StdStyle.json +1 -0
- package/abis/StdUtils.json +1 -0
- package/abis/StorageSlot.json +1 -0
- package/abis/TestBase.json +1 -0
- package/abis/UUPSUpgradeable.json +1 -0
- package/abis/Vm.json +1 -0
- package/abis/VmSafe.json +1 -0
- package/abis/Voting.json +1 -0
- package/abis/WETH.json +1 -0
- package/abis/console.json +1 -0
- package/abis/safeconsole.json +1 -0
- package/abis/stdError.json +1 -0
- package/abis/stdJson.json +1 -0
- package/abis/stdMath.json +1 -0
- package/abis/stdStorage.json +1 -0
- package/abis/stdStorageSafe.json +1 -0
- package/abis/stdToml.json +1 -0
- package/abis/test.json +1 -0
- package/contracts/ERC20MinterPauser.sol +100 -0
- package/contracts/FantasyERC20.sol +12 -10
- package/contracts/IFantasyERC20.sol +1 -1
- package/contracts/IPredictionMarketV3Factory.sol +1 -1
- package/contracts/IPredictionMarketV3Manager.sol +5 -1
- package/contracts/IPredictionMarketV3_4.sol +219 -0
- package/contracts/IRealityETH_ERC20.sol +1 -1
- package/contracts/IWETH.sol +12 -0
- package/contracts/LandFactory.sol +71 -27
- package/contracts/PredictionMarketV3Controller.sol +7 -7
- package/contracts/PredictionMarketV3Factory.sol +7 -5
- package/contracts/PredictionMarketV3Manager.sol +7 -7
- package/contracts/PredictionMarketV3Querier.sol +14 -4
- package/contracts/PredictionMarketV3_4.sol +1492 -0
- package/contracts/PredictionMarketV3_4Bad.sol +1487 -0
- package/contracts/PredictionMarketV3_4Good.sol +1508 -0
- package/contracts/Proxy.sol +35 -0
- package/contracts/RealityETH_ERC20_Factory.sol +4 -11
- package/contracts/Voting.sol +4 -7
- package/contracts/WETH.sol +58 -0
- package/dist/Application.d.ts +201 -0
- package/dist/Application.d.ts.map +1 -0
- package/dist/Application.js +411 -0
- package/dist/Application.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/index.d.ts +4 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +22 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/models/AchievementsContract.d.ts +43 -0
- package/dist/models/AchievementsContract.d.ts.map +1 -0
- package/dist/models/AchievementsContract.js +177 -0
- package/dist/models/AchievementsContract.js.map +1 -0
- package/dist/models/ArbitrationContract.d.ts +23 -0
- package/dist/models/ArbitrationContract.d.ts.map +1 -0
- package/dist/models/ArbitrationContract.js +47 -0
- package/dist/models/ArbitrationContract.js.map +1 -0
- package/dist/models/ArbitrationProxyContract.d.ts +14 -0
- package/dist/models/ArbitrationProxyContract.d.ts.map +1 -0
- package/dist/models/ArbitrationProxyContract.js +26 -0
- package/dist/models/ArbitrationProxyContract.js.map +1 -0
- package/dist/models/ERC20Contract.d.ts +50 -0
- package/dist/models/ERC20Contract.d.ts.map +1 -0
- package/dist/models/ERC20Contract.js +99 -0
- package/dist/models/ERC20Contract.js.map +1 -0
- package/dist/models/FantasyERC20Contract.d.ts +13 -0
- package/dist/models/FantasyERC20Contract.d.ts.map +1 -0
- package/dist/models/FantasyERC20Contract.js +43 -0
- package/dist/models/FantasyERC20Contract.js.map +1 -0
- package/dist/models/IContract.d.ts +57 -0
- package/dist/models/IContract.d.ts.map +1 -0
- package/dist/models/IContract.js +515 -0
- package/dist/models/IContract.js.map +1 -0
- package/dist/models/PolkamarketsSmartAccount.d.ts +26 -0
- package/dist/models/PolkamarketsSmartAccount.d.ts.map +1 -0
- package/dist/models/PolkamarketsSmartAccount.js +100 -0
- package/dist/models/PolkamarketsSmartAccount.js.map +1 -0
- package/dist/models/PredictionMarketContract.d.ts +113 -0
- package/dist/models/PredictionMarketContract.d.ts.map +1 -0
- package/dist/models/PredictionMarketContract.js +298 -0
- package/dist/models/PredictionMarketContract.js.map +1 -0
- package/dist/models/PredictionMarketV2Contract.d.ts +157 -0
- package/dist/models/PredictionMarketV2Contract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV2Contract.js +431 -0
- package/dist/models/PredictionMarketV2Contract.js.map +1 -0
- package/dist/models/PredictionMarketV3Contract.d.ts +42 -0
- package/dist/models/PredictionMarketV3Contract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3Contract.js +277 -0
- package/dist/models/PredictionMarketV3Contract.js.map +1 -0
- package/dist/models/PredictionMarketV3ControllerContract.d.ts +128 -0
- package/dist/models/PredictionMarketV3ControllerContract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3ControllerContract.js +174 -0
- package/dist/models/PredictionMarketV3ControllerContract.js.map +1 -0
- package/dist/models/PredictionMarketV3FactoryContract.d.ts +31 -0
- package/dist/models/PredictionMarketV3FactoryContract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3FactoryContract.js +81 -0
- package/dist/models/PredictionMarketV3FactoryContract.js.map +1 -0
- package/dist/models/PredictionMarketV3ManagerContract.d.ts +67 -0
- package/dist/models/PredictionMarketV3ManagerContract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3ManagerContract.js +97 -0
- package/dist/models/PredictionMarketV3ManagerContract.js.map +1 -0
- package/dist/models/PredictionMarketV3QuerierContract.d.ts +33 -0
- package/dist/models/PredictionMarketV3QuerierContract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3QuerierContract.js +61 -0
- package/dist/models/PredictionMarketV3QuerierContract.js.map +1 -0
- package/dist/models/PredictionMarketV3_2Contract.d.ts +32 -0
- package/dist/models/PredictionMarketV3_2Contract.d.ts.map +1 -0
- package/dist/models/PredictionMarketV3_2Contract.js +169 -0
- package/dist/models/PredictionMarketV3_2Contract.js.map +1 -0
- package/dist/models/RealitioERC20Contract.d.ts +16 -0
- package/dist/models/RealitioERC20Contract.d.ts.map +1 -0
- package/dist/models/RealitioERC20Contract.js +18 -0
- package/dist/models/RealitioERC20Contract.js.map +1 -0
- package/dist/models/VotingContract.d.ts +38 -0
- package/dist/models/VotingContract.d.ts.map +1 -0
- package/dist/models/VotingContract.js +85 -0
- package/dist/models/VotingContract.js.map +1 -0
- package/dist/models/WETH9Contract.d.ts +29 -0
- package/dist/models/WETH9Contract.d.ts.map +1 -0
- package/dist/models/WETH9Contract.js +44 -0
- package/dist/models/WETH9Contract.js.map +1 -0
- package/dist/models/index.d.ts +18 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +37 -0
- package/dist/models/index.js.map +1 -0
- package/dist/types/contracts.d.ts +46 -0
- package/dist/types/contracts.d.ts.map +1 -0
- package/dist/types/contracts.js +3 -0
- package/dist/types/contracts.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/Account.d.ts +34 -0
- package/dist/utils/Account.d.ts.map +1 -0
- package/dist/utils/Account.js +38 -0
- package/dist/utils/Account.js.map +1 -0
- package/dist/utils/Contract.d.ts +31 -0
- package/dist/utils/Contract.d.ts.map +1 -0
- package/dist/utils/Contract.js +123 -0
- package/dist/utils/Contract.js.map +1 -0
- package/dist/utils/Numbers.d.ts +27 -0
- package/dist/utils/Numbers.d.ts.map +1 -0
- package/dist/utils/Numbers.js +87 -0
- package/dist/utils/Numbers.js.map +1 -0
- package/foundry.toml +11 -0
- package/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/config.json +12 -0
- package/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
- package/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
- package/lib/openzeppelin-contracts/.codecov.yml +4 -0
- package/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
- package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
- package/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +1 -1
- package/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +7 -5
- package/lib/openzeppelin-contracts/.github/actions/setup/action.yml +9 -7
- package/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
- package/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
- package/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
- package/lib/openzeppelin-contracts/.github/workflows/checks.yml +67 -25
- package/lib/openzeppelin-contracts/.github/workflows/docs.yml +1 -1
- package/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
- package/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
- package/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +23 -12
- package/lib/openzeppelin-contracts/.gitmodules +7 -0
- package/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
- package/lib/openzeppelin-contracts/.prettierrc +5 -4
- package/lib/openzeppelin-contracts/.solcover.js +19 -13
- package/lib/openzeppelin-contracts/CHANGELOG.md +918 -325
- package/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +2 -2
- package/lib/openzeppelin-contracts/CONTRIBUTING.md +19 -47
- package/lib/openzeppelin-contracts/FUNDING.json +10 -0
- package/lib/openzeppelin-contracts/GUIDELINES.md +115 -65
- package/lib/openzeppelin-contracts/LICENSE +1 -1
- package/lib/openzeppelin-contracts/README.md +40 -16
- package/lib/openzeppelin-contracts/RELEASING.md +32 -23
- package/lib/openzeppelin-contracts/SECURITY.md +34 -11
- package/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
- package/lib/openzeppelin-contracts/audits/2018-10.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/README.md +20 -0
- package/lib/openzeppelin-contracts/certora/Makefile +44 -14
- package/lib/openzeppelin-contracts/certora/README.md +43 -39
- package/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
- package/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
- package/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
- package/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
- package/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
- package/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
- package/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
- package/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
- package/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
- package/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
- package/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
- package/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
- package/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
- package/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
- package/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
- package/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/run.js +168 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
- package/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
- package/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
- package/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
- package/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
- package/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
- package/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
- package/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
- package/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
- package/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
- package/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
- package/lib/openzeppelin-contracts/certora/specs.json +110 -0
- package/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +41 -81
- package/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +20 -10
- package/lib/openzeppelin-contracts/contracts/access/Ownable.sol +29 -12
- package/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +16 -6
- package/lib/openzeppelin-contracts/contracts/access/README.adoc +23 -3
- package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
- package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
- package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
- package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
- package/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
- package/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
- package/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
- package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
- package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
- package/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
- package/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
- package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
- package/lib/openzeppelin-contracts/contracts/finance/README.adoc +1 -7
- package/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +42 -32
- package/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
- package/lib/openzeppelin-contracts/contracts/governance/Governor.sol +474 -253
- package/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +236 -58
- package/lib/openzeppelin-contracts/contracts/governance/README.adoc +37 -16
- package/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +153 -108
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +22 -33
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +24 -40
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +19 -27
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +47 -75
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +57 -56
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +43 -11
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +38 -44
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
- package/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +16 -18
- package/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +116 -75
- package/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +5 -7
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +54 -63
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +20 -20
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +19 -23
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +17 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +109 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +2 -4
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +10 -9
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +4 -4
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +4 -6
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +4 -6
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +8 -18
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +197 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +32 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +32 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +50 -1
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
- package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +62 -15
- package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
- package/lib/openzeppelin-contracts/contracts/metatx/README.adoc +6 -1
- package/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
- package/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +124 -4
- package/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
- package/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
- package/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +26 -5
- package/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
- package/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +9 -7
- package/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +10 -6
- package/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +7 -9
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +4 -4
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +1 -1
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +1 -1
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +1 -1
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +2 -2
- package/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +10 -4
- package/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +6 -6
- package/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +1 -1
- package/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +6 -6
- package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
- package/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
- package/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
- package/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
- package/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +2 -2
- package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +4 -4
- package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +13 -6
- package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
- package/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +2 -2
- package/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
- package/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
- package/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +61 -15
- package/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
- package/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
- package/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
- package/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
- package/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +20 -18
- package/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
- package/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
- package/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
- package/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +1 -1
- package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
- package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
- package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
- package/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
- package/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
- package/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
- package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
- package/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
- package/lib/openzeppelin-contracts/contracts/package.json +2 -2
- package/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +197 -24
- package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +21 -13
- package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
- package/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +4 -21
- package/lib/openzeppelin-contracts/contracts/proxy/README.adoc +13 -11
- package/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +23 -27
- package/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +16 -11
- package/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +17 -53
- package/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +80 -86
- package/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +108 -35
- package/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +81 -30
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +197 -325
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +28 -30
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +7 -6
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +6 -12
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +11 -23
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +11 -17
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +45 -21
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +9 -11
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +4 -6
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +11 -7
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +137 -221
- package/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +13 -16
- package/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +28 -36
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +13 -13
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +27 -10
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +56 -31
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +9 -15
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +43 -235
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +48 -22
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +130 -132
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +4 -6
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +241 -77
- package/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +250 -326
- package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +17 -27
- package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +6 -5
- package/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +11 -12
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +9 -9
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +82 -54
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +61 -56
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +12 -15
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +10 -22
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +25 -29
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +22 -16
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +3 -3
- package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +7 -11
- package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
- package/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +56 -28
- package/lib/openzeppelin-contracts/contracts/token/common/README.adoc +2 -2
- package/lib/openzeppelin-contracts/contracts/utils/Address.sol +51 -146
- package/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +481 -25
- package/lib/openzeppelin-contracts/contracts/utils/Base64.sol +65 -38
- package/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
- package/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
- package/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
- package/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
- package/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
- package/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
- package/lib/openzeppelin-contracts/contracts/utils/Context.sol +6 -2
- package/lib/openzeppelin-contracts/contracts/utils/Create2.sol +29 -20
- package/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
- package/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
- package/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +19 -6
- package/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
- package/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
- package/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
- package/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
- package/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
- package/lib/openzeppelin-contracts/contracts/utils/README.adoc +79 -45
- package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
- package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
- package/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
- package/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
- package/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +72 -17
- package/lib/openzeppelin-contracts/contracts/utils/Strings.sol +453 -16
- package/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +96 -96
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +96 -40
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +362 -71
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +143 -21
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
- package/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
- package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +6 -10
- package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +18 -21
- package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +5 -5
- package/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +580 -176
- package/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +224 -198
- package/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +31 -6
- package/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +14 -9
- package/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
- package/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
- package/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +46 -60
- package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +919 -130
- package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +441 -27
- package/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
- package/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
- package/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
- package/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +3 -3
- package/lib/openzeppelin-contracts/docs/README.md +16 -0
- package/lib/openzeppelin-contracts/docs/antora.yml +2 -1
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +13 -7
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +168 -97
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +19 -54
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +7 -25
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +10 -42
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +85 -167
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +19 -12
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +4 -5
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +482 -81
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +1 -1
- package/lib/openzeppelin-contracts/docs/templates/contract.hbs +57 -1
- package/lib/openzeppelin-contracts/docs/templates/helpers.js +8 -8
- package/lib/openzeppelin-contracts/docs/templates/properties.js +47 -8
- package/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
- package/lib/openzeppelin-contracts/foundry.toml +15 -0
- package/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
- package/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
- package/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
- package/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
- package/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +2 -4
- package/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
- package/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +3 -4
- package/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
- package/lib/openzeppelin-contracts/hardhat.config.js +67 -49
- package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
- package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
- package/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
- package/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
- package/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
- package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +48 -12
- package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
- package/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
- package/lib/openzeppelin-contracts/lib/forge-std/README.md +19 -3
- package/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +5 -3
- package/lib/openzeppelin-contracts/lib/forge-std/package.json +2 -2
- package/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
- package/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +7 -3
- package/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +4 -3
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +595 -135
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +146 -48
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +303 -39
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +129 -25
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +245 -99
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
- package/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +125 -39
- package/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +10 -5
- package/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2182 -304
- package/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +635 -608
- package/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +1 -1543
- package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
- package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
- package/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +126 -572
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +166 -62
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +348 -35
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +15 -13
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +31 -26
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +251 -46
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +186 -35
- package/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
- package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
- package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
- package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
- package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
- package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
- package/lib/openzeppelin-contracts/package.json +59 -45
- package/lib/openzeppelin-contracts/remappings.txt +1 -0
- package/lib/openzeppelin-contracts/renovate.json +2 -9
- package/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
- package/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +130 -92
- package/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
- package/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
- package/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +28 -23
- package/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
- package/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
- package/lib/openzeppelin-contracts/scripts/gen-nav.js +62 -22
- package/lib/openzeppelin-contracts/scripts/generate/format-lines.js +4 -4
- package/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
- package/lib/openzeppelin-contracts/scripts/generate/run.js +38 -23
- package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +67 -128
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +269 -84
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +252 -36
- package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +50 -82
- package/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +18 -18
- package/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
- package/lib/openzeppelin-contracts/scripts/helpers.js +4 -20
- package/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
- package/lib/openzeppelin-contracts/scripts/prepack.sh +14 -3
- package/lib/openzeppelin-contracts/scripts/prepare-docs.sh +12 -1
- package/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
- package/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +6 -7
- package/lib/openzeppelin-contracts/scripts/release/update-comment.js +2 -4
- package/lib/openzeppelin-contracts/scripts/release/version.sh +4 -2
- package/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
- package/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +4 -4
- package/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
- package/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
- package/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
- package/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
- package/lib/openzeppelin-contracts/scripts/update-docs-branch.js +15 -5
- package/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
- package/lib/openzeppelin-contracts/slither.config.json +3 -4
- package/lib/openzeppelin-contracts/solhint.config.js +29 -0
- package/lib/openzeppelin-contracts/test/TESTING.md +1 -1
- package/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +756 -98
- package/lib/openzeppelin-contracts/test/access/AccessControl.test.js +13 -7
- package/lib/openzeppelin-contracts/test/access/Ownable.test.js +50 -28
- package/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +77 -32
- package/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
- package/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
- package/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
- package/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
- package/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
- package/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
- package/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
- package/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
- package/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
- package/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
- package/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
- package/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
- package/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
- package/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
- package/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
- package/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
- package/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
- package/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
- package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
- package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
- package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
- package/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
- package/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
- package/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
- package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
- package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
- package/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
- package/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
- package/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
- package/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
- package/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
- package/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
- package/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
- package/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
- package/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +59 -46
- package/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +35 -37
- package/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
- package/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
- package/lib/openzeppelin-contracts/test/governance/Governor.test.js +938 -590
- package/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +910 -765
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +127 -100
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +234 -155
- package/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
- package/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +254 -273
- package/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +89 -48
- package/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
- package/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
- package/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
- package/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
- package/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
- package/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
- package/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
- package/lib/openzeppelin-contracts/test/helpers/eip712.js +41 -26
- package/lib/openzeppelin-contracts/test/helpers/enums.js +9 -24
- package/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
- package/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
- package/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
- package/lib/openzeppelin-contracts/test/helpers/governance.js +194 -188
- package/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
- package/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
- package/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
- package/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
- package/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
- package/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
- package/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
- package/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
- package/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
- package/lib/openzeppelin-contracts/test/helpers/txpool.js +9 -20
- package/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +95 -71
- package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
- package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
- package/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +60 -50
- package/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
- package/lib/openzeppelin-contracts/test/proxy/Clones.test.js +164 -56
- package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
- package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
- package/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +59 -98
- package/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +98 -113
- package/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
- package/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +45 -88
- package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
- package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
- package/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +94 -96
- package/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
- package/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
- package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +530 -541
- package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +101 -152
- package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
- package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
- package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
- package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
- package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
- package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +142 -206
- package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +133 -243
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +802 -536
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
- package/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +387 -179
- package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
- package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
- package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
- package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
- package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
- package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +488 -479
- package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +16 -11
- package/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +16 -8
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +179 -176
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
- package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
- package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
- package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
- package/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +80 -88
- package/lib/openzeppelin-contracts/test/utils/Address.test.js +159 -260
- package/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
- package/lib/openzeppelin-contracts/test/utils/Arrays.test.js +217 -95
- package/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
- package/lib/openzeppelin-contracts/test/utils/Base64.test.js +48 -22
- package/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
- package/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
- package/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
- package/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
- package/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
- package/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
- package/lib/openzeppelin-contracts/test/utils/Context.behavior.js +26 -20
- package/lib/openzeppelin-contracts/test/utils/Context.test.js +10 -9
- package/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
- package/lib/openzeppelin-contracts/test/utils/Create2.test.js +147 -49
- package/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
- package/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
- package/lib/openzeppelin-contracts/test/utils/Multicall.test.js +50 -35
- package/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
- package/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
- package/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
- package/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
- package/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
- package/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
- package/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
- package/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
- package/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
- package/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
- package/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
- package/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
- package/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +55 -92
- package/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
- package/lib/openzeppelin-contracts/test/utils/Strings.test.js +323 -49
- package/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +167 -132
- package/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +100 -52
- package/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +210 -176
- package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
- package/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +397 -56
- package/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
- package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
- package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
- package/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +11 -6
- package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +84 -142
- package/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +109 -90
- package/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +255 -24
- package/lib/openzeppelin-contracts/test/utils/math/Math.test.js +616 -215
- package/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +84 -89
- package/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
- package/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +25 -65
- package/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +83 -79
- package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
- package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
- package/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
- package/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +47 -41
- package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +122 -89
- package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +70 -73
- package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +105 -61
- package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +53 -33
- package/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
- package/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
- package/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
- package/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/all-geese-stand.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/clean-ways-push.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/config.json +12 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/dull-students-eat.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/eight-radios-check.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/fine-frogs-bake.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/full-ways-help.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/funny-years-yawn.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/hot-grapes-lie.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/lazy-poets-cheer.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/long-hornets-mate.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/lucky-donuts-scream.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/major-feet-write.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/new-days-tease.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/nice-rings-wish.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/pink-dolls-shop.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/popular-geese-tan.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/proud-tables-sip.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/public-crabs-heal.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/quiet-kiwis-feel.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/rare-shirts-unite.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/rich-cows-repair.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/ripe-bears-hide.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/rotten-apes-lie.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/social-walls-obey.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/sour-pens-shake.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/strong-points-change.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/tame-bears-mix.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/violet-turtles-like.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/wet-dodos-reply.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/whole-plums-speak.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.changeset/wild-baths-buy.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/.codecov.yml +4 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/CODEOWNERS +10 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/config.yml +4 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/PULL_REQUEST_TEMPLATE.md +1 -1
- package/lib/openzeppelin-contracts-upgradeable/.github/actions/gas-compare/action.yml +7 -5
- package/lib/openzeppelin-contracts-upgradeable/.github/actions/setup/action.yml +9 -7
- package/lib/openzeppelin-contracts-upgradeable/.github/actions/storage-layout/action.yml +57 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/actionlint.yml +18 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changeset.yml +28 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/checks.yml +67 -36
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/docs.yml +1 -1
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/formal-verification.yml +86 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/release-cycle.yml +214 -0
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/upgradeable.yml +34 -0
- package/lib/openzeppelin-contracts-upgradeable/.gitmodules +11 -0
- package/lib/openzeppelin-contracts-upgradeable/.husky/pre-commit +2 -0
- package/lib/openzeppelin-contracts-upgradeable/.prettierrc +5 -4
- package/lib/openzeppelin-contracts-upgradeable/.solcover.js +19 -13
- package/lib/openzeppelin-contracts-upgradeable/CHANGELOG.md +918 -328
- package/lib/openzeppelin-contracts-upgradeable/CODE_OF_CONDUCT.md +2 -2
- package/lib/openzeppelin-contracts-upgradeable/CONTRIBUTING.md +19 -47
- package/lib/openzeppelin-contracts-upgradeable/FUNDING.json +10 -0
- package/lib/openzeppelin-contracts-upgradeable/GUIDELINES.md +115 -65
- package/lib/openzeppelin-contracts-upgradeable/LICENSE +1 -1
- package/lib/openzeppelin-contracts-upgradeable/README.md +55 -47
- package/lib/openzeppelin-contracts-upgradeable/RELEASING.md +32 -23
- package/lib/openzeppelin-contracts-upgradeable/SECURITY.md +34 -11
- package/lib/openzeppelin-contracts-upgradeable/audits/2017-03.md +292 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-Checkpoints.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-ERC4626.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2023-05-v4.9.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2023-10-v5.0.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2024-10-v5.1.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2024-12-v5.2.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/2025-04-v5.3.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/audits/README.md +20 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/Makefile +44 -14
- package/lib/openzeppelin-contracts-upgradeable/certora/README.md +43 -39
- package/lib/openzeppelin-contracts-upgradeable/certora/diff/access_manager_AccessManager.sol.patch +97 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlHarness.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagedHarness.sol +36 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagerHarness.sol +116 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20PermitHarness.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20WrapperHarness.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721Harness.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableMapHarness.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableSetHarness.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/InitializableHarness.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/NoncesHarness.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/Ownable2StepHarness.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/OwnableHarness.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/PausableHarness.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/TimelockControllerHarness.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/reports/2021-10.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-03.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-05.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/run.js +168 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControl.spec +119 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManaged.spec +34 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManager.spec +826 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/DoubleEndedQueue.spec +300 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20.spec +352 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20FlashMint.spec +55 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20Wrapper.spec +198 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC721.spec +679 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableMap.spec +333 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableSet.spec +246 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/Initializable.spec +165 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/Nonces.spec +92 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable.spec +77 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable2Step.spec +108 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/Pausable.spec +96 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/TimelockController.spec +274 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/helpers/helpers.spec +12 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControl.spec +8 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManaged.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManager.spec +33 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC20.spec +11 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC2612.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashLender.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC5313.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721.spec +17 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721Receiver.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable2Step.spec +7 -0
- package/lib/openzeppelin-contracts-upgradeable/certora/specs.json +110 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol +71 -99
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/Ownable2StepUpgradeable.sol +38 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol +50 -26
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/README.adoc +23 -3
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlDefaultAdminRulesUpgradeable.sol +401 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlEnumerableUpgradeable.sol +104 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagedUpgradeable.sol +133 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagerUpgradeable.sol +783 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/account/README.adoc +30 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579HookedUpgradeable.sol +127 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579Upgradeable.sol +426 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/finance/README.adoc +1 -7
- package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletCliffUpgradeable.sol +73 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletUpgradeable.sol +79 -59
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/GovernorUpgradeable.sol +509 -269
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/README.adoc +37 -16
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerUpgradeable.sol +186 -131
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingFractionalUpgradeable.sol +214 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingOverridableUpgradeable.sol +248 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingSimpleUpgradeable.sol +51 -51
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorNoncesKeyedUpgradeable.sol +96 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorPreventLateQuorumUpgradeable.sol +46 -53
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalGuardianUpgradeable.sol +78 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSequentialProposalIdUpgradeable.sol +98 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSettingsUpgradeable.sol +50 -50
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorStorageUpgradeable.sol +150 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSuperQuorumUpgradeable.sol +64 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockAccessUpgradeable.sol +376 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockCompoundUpgradeable.sol +77 -91
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockControlUpgradeable.sol +84 -70
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesQuorumFractionUpgradeable.sol +51 -49
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesSuperQuorumFractionUpgradeable.sol +155 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesUpgradeable.sol +60 -23
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesExtendedUpgradeable.sol +106 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesUpgradeable.sol +143 -87
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/README.adoc +50 -1
- package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ContextUpgradeable.sol +60 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ForwarderUpgradeable.sol +380 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/README.adoc +6 -1
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagedTargetUpgradeable.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagerMockUpgradeable.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ArraysMockUpgradeable.sol +133 -26
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AuthorityMockUpgradeable.sol +95 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64DirtyUpgradeable.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BatchCallerUpgradeable.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CallReceiverMockUpgradeable.sol +35 -17
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConstructorMockUpgradeable.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ContextMockUpgradeable.sol +11 -23
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DummyImplementationUpgradeable.sol +14 -31
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712VerifierUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1271WalletMockUpgradeable.sol +12 -29
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165InterfacesSupportedUpgradeable.sol +6 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MaliciousDataUpgradeable.sol +2 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MissingDataUpgradeable.sol +2 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165NotSupportedUpgradeable.sol +2 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165ReturnBombUpgradeable.sol +5 -12
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC2771ContextMockUpgradeable.sol +10 -11
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC3156FlashBorrowerMockUpgradeable.sol +12 -19
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EtherReceiverMockUpgradeable.sol +4 -11
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/InitializableMock.sol +6 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofCustomHashMockUpgradeable.sol +68 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleTreeMockUpgradeable.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallHelperUpgradeable.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PausableMockUpgradeable.sol +3 -11
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyAttackUpgradeable.sol +5 -12
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyMockUpgradeable.sol +13 -13
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyTransientMockUpgradeable.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/RegressionImplementation.sol +2 -2
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StatelessUpgradeable.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StorageSlotMockUpgradeable.sol +62 -23
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimelockReentrantUpgradeable.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TransientSlotMockUpgradeable.sol +67 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UpgradeableBeaconMockUpgradeable.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesExtendedMockUpgradeable.sol +53 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesMockUpgradeable.sol +28 -27
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/WithInit.sol +849 -740
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/AccountMockUpgradeable.sol +223 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/modules/ERC7579MockUpgradeable.sol +138 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/utils/ERC7579UtilsMockUpgradeable.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/compound/CompTimelockUpgradeable.sol +2 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC20WithAutoMinerRewardUpgradeable.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC4626FeesUpgradeable.sol +115 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/MyNFTUpgradeable.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintBaseUpgradeable.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintMissingUpgradeable.sol +30 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRoleUpgradeable.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlModifiedUpgradeable.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessManagedERC20MintBaseUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/MyContractOwnableUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyAccountERC7702Upgradeable.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyFactoryAccountUpgradeable.sol +42 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyGovernorUpgradeable.sol +92 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenTimestampBasedUpgradeable.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenUpgradeable.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenWrappedUpgradeable.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/GameItemsUpgradeable.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/MyERC115HolderContractUpgradeable.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC20/GLDTokenUpgradeable.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC6909/ERC6909GameItemsUpgradeable.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC721/GameItemUpgradeable.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/Base64NFTUpgradeable.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/MulticallUpgradeable.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorCountingOverridableMockUpgradeable.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorFractionalMockUpgradeable.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorMockUpgradeable.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorNoncesKeyedMockUpgradeable.sol +51 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorPreventLateQuorumMockUpgradeable.sol +45 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorProposalGuardianMockUpgradeable.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSequentialProposalIdMockUpgradeable.sol +45 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorStorageMockUpgradeable.sol +85 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSuperQuorumMockUpgradeable.sol +100 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockAccessMockUpgradeable.sol +76 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockCompoundMockUpgradeable.sol +75 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockControlMockUpgradeable.sol +75 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVoteMockUpgradeable.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMockUpgradeable.sol +43 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorWithParamsMockUpgradeable.sol +57 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/BadBeaconUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/ClashingImplementationUpgradeable.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/UUPSUpgradeableMockUpgradeable.sol +56 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1155ReceiverMockUpgradeable.sol +79 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ForceApproveMockUpgradeable.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363NoReturnMockUpgradeable.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReceiverMockUpgradeable.sol +57 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReturnFalseMockUpgradeable.sol +46 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363SpenderMockUpgradeable.sol +52 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ApprovalMockUpgradeable.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20BridgeableMockUpgradeable.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20DecimalsMockUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ExcessDecimalsMockUpgradeable.sol +15 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20FlashMintMockUpgradeable.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ForceApproveMockUpgradeable.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20GetterHelperUpgradeable.sol +44 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MockUpgradeable.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MulticallMockUpgradeable.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20NoReturnMockUpgradeable.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReentrantUpgradeable.sol +46 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReturnFalseMockUpgradeable.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMockUpgradeable.sol +42 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesLegacyMockUpgradeable.sol +259 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesTimestampMockUpgradeable.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626LimitsMockUpgradeable.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626MockUpgradeable.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626OffsetMockUpgradeable.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4646FeesMockUpgradeable.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveEnumerableMockUpgradeable.sol +53 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveMockUpgradeable.sol +80 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ReceiverMockUpgradeable.sol +52 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721URIStorageMockUpgradeable.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/utils/cryptography/ERC7739MockUpgradeable.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/package.json +7 -4
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/README.adoc +13 -11
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol +108 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol +84 -40
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol +227 -343
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/README.adoc +6 -12
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155BurnableUpgradeable.sol +12 -31
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155PausableUpgradeable.sol +12 -26
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155SupplyUpgradeable.sol +63 -31
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155URIStorageUpgradeable.sol +37 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155HolderUpgradeable.sol +13 -15
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/ERC20Upgradeable.sol +168 -239
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/README.adoc +28 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC1363Upgradeable.sol +142 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20BurnableUpgradeable.sol +14 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20CappedUpgradeable.sol +45 -23
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20FlashMintUpgradeable.sol +60 -42
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PausableUpgradeable.sol +10 -24
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PermitUpgradeable.sol +82 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesUpgradeable.sol +46 -245
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20WrapperUpgradeable.sol +71 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC4626Upgradeable.sol +156 -148
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20BridgeableUpgradeable.sol +57 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20TemporaryApprovalUpgradeable.sol +126 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/README.adoc +27 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/draft-ERC6909Upgradeable.sol +250 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909ContentURIUpgradeable.sol +75 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909MetadataUpgradeable.sol +101 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupplyUpgradeable.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/ERC721Upgradeable.sol +288 -347
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/README.adoc +11 -12
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721BurnableUpgradeable.sol +10 -17
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721ConsecutiveUpgradeable.sol +106 -69
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol +100 -83
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721PausableUpgradeable.sol +13 -24
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721RoyaltyUpgradeable.sol +11 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol +45 -42
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721VotesUpgradeable.sol +20 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721WrapperUpgradeable.sol +122 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/utils/ERC721HolderUpgradeable.sol +8 -19
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/ERC2981Upgradeable.sol +86 -47
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/README.adoc +2 -2
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol +6 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/MulticallUpgradeable.sol +20 -28
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesKeyedUpgradeable.sol +94 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesUpgradeable.sol +66 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/PausableUpgradeable.sol +133 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/README.adoc +79 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardTransientUpgradeable.sol +67 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardUpgradeable.sol +108 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/EIP712Upgradeable.sol +127 -41
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/README.adoc +67 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913Upgradeable.sol +276 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913WeightedUpgradeable.sol +229 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerECDSAUpgradeable.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerERC7913Upgradeable.sol +81 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerP256Upgradeable.sol +82 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerRSAUpgradeable.sol +83 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/draft-ERC7739Upgradeable.sol +104 -0
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol +9 -20
- package/lib/openzeppelin-contracts-upgradeable/docs/antora.yml +2 -1
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager.svg +99 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-mint.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/nav.adoc +13 -7
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/access-control.adoc +168 -97
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/accounts.adoc +354 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc1155.adoc +19 -54
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20.adoc +7 -25
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc4626.adoc +214 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc6909.adoc +47 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc721.adoc +10 -42
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/faq.adoc +13 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/governance.adoc +85 -167
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/index.adoc +19 -12
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/multisig.adoc +306 -0
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/tokens.adoc +4 -5
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/utilities.adoc +482 -81
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/wizard.adoc +1 -1
- package/lib/openzeppelin-contracts-upgradeable/docs/templates/contract.hbs +57 -1
- package/lib/openzeppelin-contracts-upgradeable/docs/templates/helpers.js +8 -8
- package/lib/openzeppelin-contracts-upgradeable/docs/templates/properties.js +47 -8
- package/lib/openzeppelin-contracts-upgradeable/eslint.config.mjs +26 -0
- package/lib/openzeppelin-contracts-upgradeable/foundry.toml +15 -0
- package/lib/openzeppelin-contracts-upgradeable/fv-requirements.txt +4 -0
- package/lib/openzeppelin-contracts-upgradeable/hardhat/async-test-sanity.js +10 -0
- package/lib/openzeppelin-contracts-upgradeable/hardhat/common-contracts.js +69 -0
- package/lib/openzeppelin-contracts-upgradeable/hardhat/env-artifacts.js +15 -6
- package/lib/openzeppelin-contracts-upgradeable/hardhat/ignore-unreachable-warnings.js +2 -4
- package/lib/openzeppelin-contracts-upgradeable/hardhat/remappings.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/hardhat/skip-foundry-tests.js +3 -4
- package/lib/openzeppelin-contracts-upgradeable/hardhat/task-test-get-files.js +22 -16
- package/lib/openzeppelin-contracts-upgradeable/hardhat.config.js +67 -49
- package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.prop.sol +404 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.test.sol +356 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/LICENSE +661 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/README.md +116 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitattributes +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/ci.yml +48 -12
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/sync.yml +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/CONTRIBUTING.md +193 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/README.md +19 -3
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/foundry.toml +5 -3
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/package.json +2 -2
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/scripts/vm.py +646 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Base.sol +7 -3
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Script.sol +4 -3
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdAssertions.sol +595 -135
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdChains.sol +146 -48
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdCheats.sol +303 -39
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdInvariant.sol +122 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdJson.sol +129 -25
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStorage.sol +245 -99
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStyle.sol +333 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdToml.sol +283 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdUtils.sol +125 -39
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Test.sol +10 -5
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Vm.sol +2182 -304
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console.sol +635 -608
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console2.sol +1 -1543
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/safeconsole.sol +13937 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdAssertions.t.sol +126 -572
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdChains.t.sol +166 -62
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdCheats.t.sol +348 -35
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdError.t.sol +15 -13
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdJson.t.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdMath.t.sol +31 -26
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStorage.t.sol +251 -46
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStyle.t.sol +110 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdToml.t.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdUtils.t.sol +186 -35
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/Vm.t.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.json +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.toml +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/LICENSE +661 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/README.md +97 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SVM.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/config.json +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.codecov.yml +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.editorconfig +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +51 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/setup/action.yml +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/checks.yml +132 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/docs.yml +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.gitmodules +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.mocharc.js +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.prettierrc +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.solcover.js +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CHANGELOG.md +1220 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +73 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CONTRIBUTING.md +36 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/FUNDING.json +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/GUIDELINES.md +155 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/LICENSE +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/README.md +108 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/RELEASING.md +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/SECURITY.md +43 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/README.md +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/Makefile +54 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/README.md +60 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/run.js +168 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs.json +110 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +207 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +98 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable.sol +100 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +67 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/README.adoc +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/README.adoc +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +159 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/Governor.sol +818 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +454 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/README.adoc +197 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +471 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +96 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +92 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +106 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +165 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +167 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +63 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +113 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +252 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +86 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +112 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +41 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +230 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +200 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +105 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +90 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/README.adoc +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +171 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +78 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +65 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +130 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +131 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +87 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +42 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +174 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/package.json +32 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +262 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/README.adoc +87 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +57 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +118 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +238 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +146 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +389 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +123 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +43 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +38 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +88 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +40 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +305 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +79 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +78 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +39 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +54 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +134 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +83 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +89 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +282 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +280 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +430 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +135 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +176 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +164 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +37 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +47 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +139 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/README.adoc +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Address.sol +149 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +552 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Base64.sol +119 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Context.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Create2.sol +92 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +37 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/README.adoc +145 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +143 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol +507 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +213 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +160 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +514 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +164 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +124 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +749 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +1162 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +68 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +60 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +156 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +1319 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +792 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +86 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/LICENSE +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/antora.yml +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/config.js +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +288 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +118 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +71 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +67 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +51 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +239 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +591 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/contract.hbs +141 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/helpers.js +46 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/page.hbs +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/properties.js +88 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/foundry.toml +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat.config.js +124 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +128 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-APACHE +203 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-MIT +25 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/README.md +266 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/package.json +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +669 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +287 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +829 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdError.sol +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +283 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdMath.sol +43 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +473 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +209 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2263 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +1560 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC1155.sol +105 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC165.sol +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC20.sol +43 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +190 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC721.sol +164 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +141 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +227 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +618 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +120 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +202 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +488 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +342 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScript.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScriptBase.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTest.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTestBase.sol +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/broadcast.log.json +187 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/logo.svg +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/netlify.toml +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/package.json +106 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/remappings.txt +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/renovate.json +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +249 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/generation.sh +6 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/gen-nav.js +81 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/format-lines.js +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/run.js +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +242 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +463 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +469 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +136 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +30 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/helpers.js +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepack.sh +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepare-docs.sh +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/update-comment.js +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/version.sh +11 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/update-docs-branch.js +65 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/slither.config.json +4 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/solhint.config.js +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/TESTING.md +3 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +874 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.test.js +19 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable.test.js +79 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +102 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +87 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +65 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.test.js +980 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +1279 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +131 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +185 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +448 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +504 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +165 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +245 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +325 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +102 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712.js +45 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/enums.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/governance.js +217 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/txpool.js +29 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +133 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +160 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.test.js +177 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +185 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +141 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +82 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +357 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +216 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +120 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +763 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +213 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +66 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +105 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +119 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +56 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +269 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +199 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +105 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +55 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +164 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +129 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +546 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +203 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +888 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +463 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +946 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +23 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +77 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +181 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +228 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +81 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +57 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +121 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +194 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +20 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +152 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Address.test.js +281 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.test.js +227 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.test.js +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.behavior.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.test.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.test.js +190 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Multicall.test.js +72 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +73 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.test.js +360 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +239 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +105 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +213 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +422 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +245 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +166 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +349 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.test.js +713 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +159 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +149 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +102 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +214 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +83 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +175 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +66 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
- package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
- package/lib/openzeppelin-contracts-upgradeable/package.json +60 -47
- package/lib/openzeppelin-contracts-upgradeable/remappings.txt +2 -0
- package/lib/openzeppelin-contracts-upgradeable/renovate.json +2 -9
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compare-layout.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compareGasReports.js +130 -92
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/coverage.sh +24 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/extract-layout.js +39 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/inheritance-ordering.js +28 -23
- package/lib/openzeppelin-contracts-upgradeable/scripts/checks/pragma-validity.js +45 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/fetch-common-contracts.js +50 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/gen-nav.js +62 -22
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/format-lines.js +4 -4
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/helpers/sanitize.js +5 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/run.js +38 -23
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.js +386 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.opts.js +9 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.js +67 -128
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.opts.js +18 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.t.js +141 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Enumerable.opts.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMap.js +269 -84
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSet.js +252 -36
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.js +187 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.opts.js +11 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.js +92 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.opts.js +3 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.t.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCast.js +50 -82
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Slot.opts.js +15 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.js +119 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.t.js +127 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlot.js +77 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlotMock.js +57 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlot.js +80 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlotMock.js +35 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/conversion.js +18 -18
- package/lib/openzeppelin-contracts-upgradeable/scripts/get-contracts-metadata.js +55 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/helpers.js +4 -20
- package/lib/openzeppelin-contracts-upgradeable/scripts/minimize-pragma.js +138 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/prepack.sh +14 -3
- package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-docs.sh +12 -1
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/format-changelog.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/synchronize-versions.js +6 -7
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-comment.js +2 -4
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/version.sh +4 -2
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/exit-prerelease.sh +8 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/github-release.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/integrity-check.sh +20 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/pack.sh +26 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/publish.sh +26 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/rerun.js +7 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/set-changesets-pr-title.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/start.sh +35 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/state.js +112 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/remove-ignored-artifacts.js +4 -4
- package/lib/openzeppelin-contracts-upgradeable/scripts/set-max-old-space-size.sh +10 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/solc-versions.js +15 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/index.js +84 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/package.json +8 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/update-docs-branch.js +15 -5
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/README.md +21 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-apply.sh +19 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-save.sh +18 -0
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile-onto.sh +21 -5
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile.sh +24 -8
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/upgradeable.patch +398 -0
- package/lib/openzeppelin-contracts-upgradeable/slither.config.json +3 -4
- package/lib/openzeppelin-contracts-upgradeable/solhint.config.js +29 -0
- package/lib/openzeppelin-contracts-upgradeable/test/TESTING.md +1 -1
- package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.behavior.js +756 -98
- package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.test.js +13 -7
- package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable.test.js +50 -28
- package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable2Step.test.js +77 -32
- package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlEnumerable.test.js +24 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManaged.test.js +146 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.behavior.js +257 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.predicate.js +456 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.test.js +2489 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AuthorityUtils.test.js +112 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/Account.behavior.js +144 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/Account.test.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountECDSA.test.js +52 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.t.sol +103 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.test.js +52 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7913.test.js +116 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSigner.test.js +326 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSignerWeighted.test.js +312 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountP256.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/AccountRSA.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.behavior.js +563 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.test.js +60 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/ERC7821.behavior.js +145 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/utils/EIP7702Utils.test.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC4337Utils.test.js +289 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
- package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.test.js +399 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.abi +1 -0
- package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.bytecode +0 -0
- package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.behavior.js +59 -46
- package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.test.js +35 -37
- package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWalletCliff.test.js +70 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.t.sol +59 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.test.js +938 -590
- package/lib/openzeppelin-contracts-upgradeable/test/governance/TimelockController.test.js +910 -765
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorERC721.test.js +127 -100
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorStorage.test.js +155 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorWithParams.test.js +234 -155
- package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/ERC6372.behavior.js +28 -0
- package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.behavior.js +254 -273
- package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.test.js +89 -48
- package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/VotesExtended.test.js +152 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/access-manager.js +85 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/account.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/chains.js +56 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/constants.js +7 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/deploy.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712-types.js +61 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712.js +41 -26
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/enums.js +9 -24
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc4337.js +217 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7579.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7739.js +118 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/governance.js +194 -188
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/iterate.js +41 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/math.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/methods.js +14 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/precompiles.js +12 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/random.js +24 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/signers.js +184 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/storage.js +48 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/strings.js +5 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/time.js +33 -0
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/txpool.js +9 -20
- package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Context.test.js +95 -71
- package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.t.sol +279 -0
- package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.test.js +384 -0
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.behaviour.js +60 -50
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.t.sol +91 -0
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.test.js +164 -56
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/Proxy.behaviour.js +59 -98
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/BeaconProxy.test.js +98 -113
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/ProxyAdmin.test.js +45 -88
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/Initializable.test.js +94 -96
- package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
- package/lib/openzeppelin-contracts-upgradeable/test/sanity.test.js +27 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.behavior.js +530 -541
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.test.js +101 -152
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.behavior.js +142 -206
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.test.js +133 -243
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC1363.test.js +370 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.test.js +802 -536
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/SafeERC20.test.js +387 -179
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.behavior.js +216 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.test.js +104 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.behavior.js +488 -479
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.test.js +16 -11
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721Enumerable.test.js +16 -8
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.test.js +181 -165
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
- package/lib/openzeppelin-contracts-upgradeable/test/token/common/ERC2981.behavior.js +80 -88
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Address.test.js +160 -261
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.t.sol +31 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.test.js +217 -95
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.t.sol +34 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.test.js +48 -22
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.t.sol +101 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.test.js +59 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.t.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.test.js +212 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/CAIP.test.js +56 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Calldata.test.js +22 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.behavior.js +26 -20
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.test.js +10 -9
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.t.sol +17 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.test.js +147 -49
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.t.sol +21 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.test.js +39 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Multicall.test.js +50 -35
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.behavior.js +189 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.test.js +16 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/NoncesKeyed.test.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.t.sol +993 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.test.js +70 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Panic.test.js +37 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Pausable.test.js +90 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/ReentrancyGuard.test.js +50 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.t.sol +109 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.test.js +64 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.t.sol +248 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.test.js +58 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/StorageSlot.test.js +55 -92
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.t.sol +50 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.test.js +323 -49
- package/lib/openzeppelin-contracts-upgradeable/test/utils/TransientSlot.test.js +59 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ECDSA.test.js +167 -132
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/EIP712.test.js +79 -52
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC1271.behavior.js +111 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739.test.js +42 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739Utils.test.js +203 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MerkleProof.test.js +210 -176
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.test.js +97 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.t.sol +65 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.test.js +182 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.helper.js +17 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.test.js +102 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SignatureChecker.test.js +397 -56
- package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.t.sol +99 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.test.js +170 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165.test.js +11 -6
- package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Checker.test.js +84 -142
- package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/SupportsInterface.behavior.js +109 -90
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.t.sol +255 -24
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.test.js +616 -215
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeCast.test.js +84 -89
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.t.sol +80 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.test.js +25 -65
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/BitMap.test.js +83 -79
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.t.sol +440 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.test.js +147 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/CircularBuffer.test.js +83 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/DoubleEndedQueue.test.js +47 -41
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.behavior.js +122 -89
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.test.js +70 -73
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.behavior.js +105 -61
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.test.js +53 -33
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.t.sol +74 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.test.js +113 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/MerkleTree.test.js +180 -0
- package/lib/openzeppelin-contracts-upgradeable/test/utils/types/Time.test.js +135 -0
- package/package.json +10 -23
- package/remappings.txt +5 -0
- package/script/CreateMarketLib.sol +1873 -0
- package/script/DeployProxy.s.sol +27 -0
- package/script/DeployUpgradeablePM.s.sol +47 -0
- package/script/PredictionMarketV3_3Flow.s.sol +132 -0
- package/scripts/copy-abis.js +57 -0
- package/src/Application.js +18 -0
- package/src/interfaces/index.js +16 -15
- package/src/models/PredictionMarketV2Contract.js +19 -15
- package/src/models/PredictionMarketV3ControllerContract.js +2 -2
- package/src/models/PredictionMarketV3ManagerContract.js +4 -0
- package/src/models/PredictionMarketV3PlusContract.js +210 -0
- package/src/models/index.js +2 -0
- package/test/PredictionMarket.t.sol +923 -0
- package/test/PredictionMarketManager.t.sol +909 -0
- package/build/contracts/AccessControl.json +0 -1
- package/build/contracts/Address.json +0 -1
- package/build/contracts/BalanceHolder_ERC20.json +0 -1
- package/build/contracts/CeilDiv.json +0 -1
- package/build/contracts/Clones.json +0 -1
- package/build/contracts/Context.json +0 -1
- package/build/contracts/ERC165.json +0 -1
- package/build/contracts/ERC20.json +0 -1
- package/build/contracts/ERC20Burnable.json +0 -1
- package/build/contracts/ERC20Pausable.json +0 -1
- package/build/contracts/FantasyERC20.json +0 -1
- package/build/contracts/IAccessControl.json +0 -1
- package/build/contracts/IBalanceHolder_ERC20.json +0 -1
- package/build/contracts/IERC165.json +0 -1
- package/build/contracts/IERC20.json +0 -1
- package/build/contracts/IERC20Metadata.json +0 -1
- package/build/contracts/IERC721.json +0 -1
- package/build/contracts/IERC721Enumerable.json +0 -1
- package/build/contracts/IERC721Metadata.json +0 -1
- package/build/contracts/IFantasyERC20.json +0 -1
- package/build/contracts/IPredictionMarketV3Factory.json +0 -1
- package/build/contracts/IPredictionMarketV3Manager.json +0 -1
- package/build/contracts/IRealityETH_ERC20.json +0 -1
- package/build/contracts/IRealityETH_IERC20.json +0 -1
- package/build/contracts/IWETH.json +0 -1
- package/build/contracts/LandFactory.json +0 -1
- package/build/contracts/Ownable.json +0 -1
- package/build/contracts/Pausable.json +0 -1
- package/build/contracts/PredictionMarketV3Claimer.json +0 -1
- package/build/contracts/PredictionMarketV3Controller.json +0 -1
- package/build/contracts/PredictionMarketV3Factory.json +0 -1
- package/build/contracts/PredictionMarketV3Manager.json +0 -1
- package/build/contracts/PredictionMarketV3Querier.json +0 -1
- package/build/contracts/RealityETH_ERC20_Factory.json +0 -1
- package/build/contracts/RealityETH_ERC20_v3_0.json +0 -1
- package/build/contracts/RealityETH_ERC20_v3_0_.json +0 -1
- package/build/contracts/ReentrancyGuard.json +0 -1
- package/build/contracts/SafeERC20.json +0 -1
- package/build/contracts/StorageSlot.json +0 -1
- package/build/contracts/TWProxy.json +0 -1
- package/build/contracts/USDCERC20.json +0 -1
- package/build/contracts/Voting.json +0 -1
- package/build/contracts/test.json +0 -1
- package/cache/solidity-files-cache.json +0 -1
- package/cache/zksync-solidity-files-cache.json +0 -1
- package/cleanContracts.js +0 -22
- package/contracts/IPredictionMarketV3.sol +0 -207
- package/contracts/Migrations.sol +0 -24
- package/contracts/PredictionMarketV3.sol +0 -1332
- package/contracts/RealityETH_ERC20_v3_0.sol +0 -8
- package/contracts/TWProxy.sol +0 -42
- package/contracts/USDCERC20.sol +0 -12
- package/contracts/WETH9.sol +0 -62
- package/lib/openzeppelin-contracts/.changeset/new-ways-own.md +0 -5
- package/lib/openzeppelin-contracts/.eslintrc +0 -62
- package/lib/openzeppelin-contracts/.gitattributes +0 -1
- package/lib/openzeppelin-contracts/.github/workflows/changelog.yml +0 -28
- package/lib/openzeppelin-contracts/.solhint.json +0 -14
- package/lib/openzeppelin-contracts/audit/2017-03.md +0 -292
- package/lib/openzeppelin-contracts/certora/applyHarness.patch +0 -101
- package/lib/openzeppelin-contracts/certora/harnesses/ERC20VotesHarness.sol +0 -28
- package/lib/openzeppelin-contracts/certora/harnesses/WizardControlFirstPriority.sol +0 -150
- package/lib/openzeppelin-contracts/certora/harnesses/WizardFirstTry.sol +0 -141
- package/lib/openzeppelin-contracts/certora/munged/.gitignore +0 -2
- package/lib/openzeppelin-contracts/certora/scripts/Governor.sh +0 -10
- package/lib/openzeppelin-contracts/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
- package/lib/openzeppelin-contracts/certora/scripts/WizardControlFirstPriority.sh +0 -12
- package/lib/openzeppelin-contracts/certora/scripts/WizardFirstTry.sh +0 -10
- package/lib/openzeppelin-contracts/certora/scripts/sanity.sh +0 -14
- package/lib/openzeppelin-contracts/certora/scripts/verifyAll.sh +0 -39
- package/lib/openzeppelin-contracts/certora/specs/GovernorBase.spec +0 -333
- package/lib/openzeppelin-contracts/certora/specs/GovernorCountingSimple.spec +0 -221
- package/lib/openzeppelin-contracts/certora/specs/RulesInProgress.spec +0 -139
- package/lib/openzeppelin-contracts/certora/specs/sanity.spec +0 -14
- package/lib/openzeppelin-contracts/contracts/access/AccessControlCrossChain.sol +0 -45
- package/lib/openzeppelin-contracts/contracts/access/AccessControlEnumerable.sol +0 -64
- package/lib/openzeppelin-contracts/contracts/access/IAccessControlEnumerable.sol +0 -31
- package/lib/openzeppelin-contracts/contracts/crosschain/CrossChainEnabled.sol +0 -54
- package/lib/openzeppelin-contracts/contracts/crosschain/README.adoc +0 -34
- package/lib/openzeppelin-contracts/contracts/crosschain/amb/CrossChainEnabledAMB.sol +0 -49
- package/lib/openzeppelin-contracts/contracts/crosschain/amb/LibAMB.sol +0 -35
- package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1.sol +0 -44
- package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol +0 -40
- package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL1.sol +0 -42
- package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL2.sol +0 -45
- package/lib/openzeppelin-contracts/contracts/crosschain/errors.sol +0 -7
- package/lib/openzeppelin-contracts/contracts/crosschain/optimism/CrossChainEnabledOptimism.sol +0 -41
- package/lib/openzeppelin-contracts/contracts/crosschain/optimism/LibOptimism.sol +0 -36
- package/lib/openzeppelin-contracts/contracts/crosschain/polygon/CrossChainEnabledPolygonChild.sol +0 -72
- package/lib/openzeppelin-contracts/contracts/finance/PaymentSplitter.sol +0 -214
- package/lib/openzeppelin-contracts/contracts/governance/compatibility/GovernorCompatibilityBravo.sol +0 -285
- package/lib/openzeppelin-contracts/contracts/governance/compatibility/IGovernorCompatibilityBravo.sol +0 -114
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalThreshold.sol +0 -23
- package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesComp.sol +0 -31
- package/lib/openzeppelin-contracts/contracts/governance/extensions/IGovernorTimelock.sol +0 -26
- package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC2612.sol +0 -8
- package/lib/openzeppelin-contracts/contracts/metatx/MinimalForwarder.sol +0 -73
- package/lib/openzeppelin-contracts/contracts/mocks/AccessControlCrossChainMock.sol +0 -22
- package/lib/openzeppelin-contracts/contracts/mocks/AccessControlEnumerableMock.sol +0 -17
- package/lib/openzeppelin-contracts/contracts/mocks/AccessControlMock.sol +0 -17
- package/lib/openzeppelin-contracts/contracts/mocks/AddressImpl.sol +0 -46
- package/lib/openzeppelin-contracts/contracts/mocks/BadBeacon.sol +0 -11
- package/lib/openzeppelin-contracts/contracts/mocks/Base64Mock.sol +0 -11
- package/lib/openzeppelin-contracts/contracts/mocks/BitmapMock.sol +0 -27
- package/lib/openzeppelin-contracts/contracts/mocks/CheckpointsMock.sol +0 -120
- package/lib/openzeppelin-contracts/contracts/mocks/ClashingImplementation.sol +0 -18
- package/lib/openzeppelin-contracts/contracts/mocks/ClonesMock.sol +0 -36
- package/lib/openzeppelin-contracts/contracts/mocks/ConditionalEscrowMock.sol +0 -18
- package/lib/openzeppelin-contracts/contracts/mocks/CountersImpl.sol +0 -27
- package/lib/openzeppelin-contracts/contracts/mocks/Create2Impl.sol +0 -34
- package/lib/openzeppelin-contracts/contracts/mocks/DoubleEndedQueueMock.sol +0 -58
- package/lib/openzeppelin-contracts/contracts/mocks/ECDSAMock.sol +0 -41
- package/lib/openzeppelin-contracts/contracts/mocks/EIP712External.sol +0 -31
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155BurnableMock.sol +0 -18
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155Mock.sol +0 -51
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155PausableMock.sol +0 -29
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155ReceiverMock.sol +0 -52
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155SupplyMock.sol +0 -21
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1155URIStorageMock.sol +0 -22
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165CheckerMock.sol +0 -29
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165Mock.sol +0 -7
- package/lib/openzeppelin-contracts/contracts/mocks/ERC165StorageMock.sol +0 -11
- package/lib/openzeppelin-contracts/contracts/mocks/ERC1820ImplementerMock.sol +0 -11
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20BurnableMock.sol +0 -16
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20CappedMock.sol +0 -17
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20DecimalsMock.sol +0 -29
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20FlashMintMock.sol +0 -43
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20Mock.sol +0 -41
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20PausableMock.sol +0 -33
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20PermitMock.sol +0 -20
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20SnapshotMock.sol +0 -28
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesCompMock.sol +0 -21
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesMock.sol +0 -21
- package/lib/openzeppelin-contracts/contracts/mocks/ERC20WrapperMock.sol +0 -17
- package/lib/openzeppelin-contracts/contracts/mocks/ERC4626Mock.sol +0 -60
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721BurnableMock.sol +0 -29
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveEnumerableMock.sol +0 -55
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveMock.sol +0 -86
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721EnumerableMock.sol +0 -51
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721Mock.sol +0 -41
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721PausableMock.sol +0 -45
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721ReceiverMock.sol +0 -42
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721RoyaltyMock.sol +0 -33
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721URIStorageMock.sol +0 -55
- package/lib/openzeppelin-contracts/contracts/mocks/ERC721VotesMock.sol +0 -25
- package/lib/openzeppelin-contracts/contracts/mocks/ERC777Mock.sol +0 -56
- package/lib/openzeppelin-contracts/contracts/mocks/ERC777SenderRecipientMock.sol +0 -161
- package/lib/openzeppelin-contracts/contracts/mocks/EnumerableMapMock.sol +0 -221
- package/lib/openzeppelin-contracts/contracts/mocks/EnumerableSetMock.sol +0 -111
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompMock.sol +0 -31
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompatibilityBravoMock.sol +0 -127
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorMock.sol +0 -50
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorPreventLateQuorumMock.sol +0 -60
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockCompoundMock.sol +0 -96
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockControlMock.sol +0 -93
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorVoteMock.sol +0 -31
- package/lib/openzeppelin-contracts/contracts/mocks/GovernorWithParamsMock.sol +0 -61
- package/lib/openzeppelin-contracts/contracts/mocks/MathMock.sol +0 -48
- package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofWrapper.sol +0 -65
- package/lib/openzeppelin-contracts/contracts/mocks/MulticallTest.sol +0 -23
- package/lib/openzeppelin-contracts/contracts/mocks/MulticallTokenMock.sol +0 -10
- package/lib/openzeppelin-contracts/contracts/mocks/Ownable2StepMock.sol +0 -7
- package/lib/openzeppelin-contracts/contracts/mocks/OwnableMock.sol +0 -7
- package/lib/openzeppelin-contracts/contracts/mocks/PullPaymentMock.sol +0 -15
- package/lib/openzeppelin-contracts/contracts/mocks/SafeCastMock.sol +0 -267
- package/lib/openzeppelin-contracts/contracts/mocks/SafeERC20Helper.sol +0 -194
- package/lib/openzeppelin-contracts/contracts/mocks/SafeMathMock.sol +0 -138
- package/lib/openzeppelin-contracts/contracts/mocks/SignatureCheckerMock.sol +0 -17
- package/lib/openzeppelin-contracts/contracts/mocks/SignedMathMock.sol +0 -23
- package/lib/openzeppelin-contracts/contracts/mocks/SignedSafeMathMock.sol +0 -23
- package/lib/openzeppelin-contracts/contracts/mocks/StringsMock.sol +0 -23
- package/lib/openzeppelin-contracts/contracts/mocks/TimersBlockNumberImpl.sol +0 -39
- package/lib/openzeppelin-contracts/contracts/mocks/TimersTimestampImpl.sol +0 -39
- package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSLegacy.sol +0 -58
- package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSUpgradeableMock.sol +0 -21
- package/lib/openzeppelin-contracts/contracts/mocks/crosschain/bridges.sol +0 -102
- package/lib/openzeppelin-contracts/contracts/mocks/crosschain/receivers.sol +0 -54
- package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor1.sol +0 -87
- package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor2.sol +0 -93
- package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor3.sol +0 -96
- package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol +0 -185
- package/lib/openzeppelin-contracts/contracts/security/Pausable.sol +0 -105
- package/lib/openzeppelin-contracts/contracts/security/PullPayment.sol +0 -74
- package/lib/openzeppelin-contracts/contracts/security/README.adoc +0 -20
- package/lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol +0 -69
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/ERC1155PresetMinterPauser.sol +0 -128
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/README.md +0 -1
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol +0 -19
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Snapshot.sol +0 -195
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20VotesComp.sol +0 -46
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Permit.sol +0 -95
- package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol +0 -60
- package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol +0 -35
- package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol +0 -94
- package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/README.md +0 -1
- package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol +0 -76
- package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/draft-ERC721Votes.sol +0 -9
- package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoId.sol +0 -140
- package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/README.md +0 -1
- package/lib/openzeppelin-contracts/contracts/token/ERC777/ERC777.sol +0 -547
- package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol +0 -209
- package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol +0 -35
- package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol +0 -35
- package/lib/openzeppelin-contracts/contracts/token/ERC777/README.adoc +0 -30
- package/lib/openzeppelin-contracts/contracts/token/ERC777/presets/ERC777PresetFixedSupply.sol +0 -30
- package/lib/openzeppelin-contracts/contracts/utils/Checkpoints.sol +0 -554
- package/lib/openzeppelin-contracts/contracts/utils/Counters.sol +0 -43
- package/lib/openzeppelin-contracts/contracts/utils/Timers.sol +0 -73
- package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol +0 -8
- package/lib/openzeppelin-contracts/contracts/utils/escrow/ConditionalEscrow.sol +0 -25
- package/lib/openzeppelin-contracts/contracts/utils/escrow/Escrow.sol +0 -67
- package/lib/openzeppelin-contracts/contracts/utils/escrow/RefundEscrow.sol +0 -100
- package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Storage.sol +0 -42
- package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC1820Implementer.sol +0 -44
- package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Implementer.sol +0 -20
- package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol +0 -116
- package/lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol +0 -227
- package/lib/openzeppelin-contracts/contracts/utils/math/SignedSafeMath.sol +0 -68
- package/lib/openzeppelin-contracts/contracts/vendor/amb/IAMB.sol +0 -49
- package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IArbSys.sol +0 -141
- package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IBridge.sol +0 -109
- package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IDelayedMessageProvider.sol +0 -16
- package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IInbox.sol +0 -152
- package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IOutbox.sol +0 -121
- package/lib/openzeppelin-contracts/contracts/vendor/optimism/ICrossDomainMessenger.sol +0 -38
- package/lib/openzeppelin-contracts/contracts/vendor/optimism/LICENSE +0 -22
- package/lib/openzeppelin-contracts/contracts/vendor/polygon/IFxMessageProcessor.sol +0 -11
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crosschain.adoc +0 -210
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/drafts.adoc +0 -19
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc777.adoc +0 -73
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
- package/lib/openzeppelin-contracts/hardhat/env-contract.js +0 -10
- package/lib/openzeppelin-contracts/lib/forge-std/.gitmodules +0 -3
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/LICENSE +0 -674
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/Makefile +0 -14
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/default.nix +0 -4
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/package.json +0 -15
- package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/test.sol +0 -469
- package/lib/openzeppelin-contracts/scripts/generate/templates/CheckpointsMock.js +0 -80
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMapMock.js +0 -66
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSetMock.js +0 -56
- package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCastMock.js +0 -50
- package/lib/openzeppelin-contracts/scripts/migrate-imports.js +0 -177
- package/lib/openzeppelin-contracts/scripts/prepare-contracts-package.sh +0 -15
- package/lib/openzeppelin-contracts/scripts/prepare.sh +0 -10
- package/lib/openzeppelin-contracts/scripts/release/release.sh +0 -145
- package/lib/openzeppelin-contracts/scripts/release/update-changelog-release-date.js +0 -34
- package/lib/openzeppelin-contracts/test/access/AccessControlCrossChain.test.js +0 -59
- package/lib/openzeppelin-contracts/test/access/AccessControlEnumerable.test.js +0 -15
- package/lib/openzeppelin-contracts/test/crosschain/CrossChainEnabled.test.js +0 -88
- package/lib/openzeppelin-contracts/test/finance/PaymentSplitter.test.js +0 -217
- package/lib/openzeppelin-contracts/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
- package/lib/openzeppelin-contracts/test/governance/extensions/GovernorComp.test.js +0 -78
- package/lib/openzeppelin-contracts/test/helpers/create2.js +0 -12
- package/lib/openzeppelin-contracts/test/helpers/crosschain.js +0 -63
- package/lib/openzeppelin-contracts/test/helpers/customError.js +0 -24
- package/lib/openzeppelin-contracts/test/helpers/erc1967.js +0 -24
- package/lib/openzeppelin-contracts/test/helpers/sign.js +0 -47
- package/lib/openzeppelin-contracts/test/metatx/MinimalForwarder.test.js +0 -184
- package/lib/openzeppelin-contracts/test/migrate-imports.test.js +0 -29
- package/lib/openzeppelin-contracts/test/security/Pausable.test.js +0 -89
- package/lib/openzeppelin-contracts/test/security/PullPayment.test.js +0 -51
- package/lib/openzeppelin-contracts/test/security/ReentrancyGuard.test.js +0 -40
- package/lib/openzeppelin-contracts/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
- package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
- package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
- package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
- package/lib/openzeppelin-contracts/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
- package/lib/openzeppelin-contracts/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
- package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.behavior.js +0 -555
- package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.test.js +0 -610
- package/lib/openzeppelin-contracts/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
- package/lib/openzeppelin-contracts/test/utils/Checkpoints.test.js +0 -189
- package/lib/openzeppelin-contracts/test/utils/Counters.test.js +0 -84
- package/lib/openzeppelin-contracts/test/utils/TimersBlockNumberImpl.test.js +0 -55
- package/lib/openzeppelin-contracts/test/utils/TimersTimestamp.test.js +0 -55
- package/lib/openzeppelin-contracts/test/utils/escrow/ConditionalEscrow.test.js +0 -36
- package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.behavior.js +0 -94
- package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.test.js +0 -14
- package/lib/openzeppelin-contracts/test/utils/escrow/RefundEscrow.test.js +0 -148
- package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Storage.test.js +0 -25
- package/lib/openzeppelin-contracts/test/utils/introspection/ERC1820Implementer.test.js +0 -66
- package/lib/openzeppelin-contracts/test/utils/math/SafeMath.test.js +0 -403
- package/lib/openzeppelin-contracts/test/utils/math/SignedSafeMath.test.js +0 -152
- package/lib/openzeppelin-contracts-upgradeable/.changeset/new-ways-own.md +0 -5
- package/lib/openzeppelin-contracts-upgradeable/.eslintrc +0 -62
- package/lib/openzeppelin-contracts-upgradeable/.gitattributes +0 -1
- package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/bug_report.md +0 -21
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changelog.yml +0 -28
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/merge-upstream.yml +0 -28
- package/lib/openzeppelin-contracts-upgradeable/.github/workflows/transpile.yml +0 -27
- package/lib/openzeppelin-contracts-upgradeable/.solhint.json +0 -14
- package/lib/openzeppelin-contracts-upgradeable/UPGRADEABLE.md +0 -47
- package/lib/openzeppelin-contracts-upgradeable/audit/2017-03.md +0 -292
- package/lib/openzeppelin-contracts-upgradeable/certora/applyHarness.patch +0 -101
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20VotesHarness.sol +0 -28
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardControlFirstPriority.sol +0 -150
- package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardFirstTry.sol +0 -141
- package/lib/openzeppelin-contracts-upgradeable/certora/munged/.gitignore +0 -2
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/Governor.sh +0 -10
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardControlFirstPriority.sh +0 -12
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardFirstTry.sh +0 -10
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/sanity.sh +0 -14
- package/lib/openzeppelin-contracts-upgradeable/certora/scripts/verifyAll.sh +0 -39
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorBase.spec +0 -333
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorCountingSimple.spec +0 -221
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/RulesInProgress.spec +0 -139
- package/lib/openzeppelin-contracts-upgradeable/certora/specs/sanity.spec +0 -14
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlCrossChainUpgradeable.sol +0 -58
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlEnumerableUpgradeable.sol +0 -77
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlEnumerableUpgradeable.sol +0 -31
- package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol +0 -88
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/CrossChainEnabledUpgradeable.sol +0 -67
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/README.adoc +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/CrossChainEnabledAMBUpgradeable.sol +0 -57
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/LibAMBUpgradeable.sol +0 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1Upgradeable.sol +0 -52
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2Upgradeable.sol +0 -53
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL1Upgradeable.sol +0 -42
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL2Upgradeable.sol +0 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/errorsUpgradeable.sol +0 -7
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/CrossChainEnabledOptimismUpgradeable.sol +0 -49
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/LibOptimismUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/polygon/CrossChainEnabledPolygonChildUpgradeable.sol +0 -90
- package/lib/openzeppelin-contracts-upgradeable/contracts/finance/PaymentSplitterUpgradeable.sol +0 -226
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/IGovernorUpgradeable.sol +0 -289
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerWith46MigrationUpgradeable.sol +0 -56
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/GovernorCompatibilityBravoUpgradeable.sol +0 -298
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/IGovernorCompatibilityBravoUpgradeable.sol +0 -127
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalThresholdUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesCompUpgradeable.sol +0 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/IGovernorTimelockUpgradeable.sol +0 -39
- package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/IVotesUpgradeable.sol +0 -61
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155MetadataURIUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155ReceiverUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155Upgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1271Upgradeable.sol +0 -19
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363ReceiverUpgradeable.sol +0 -32
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363SpenderUpgradeable.sol +0 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363Upgradeable.sol +0 -95
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC165Upgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820ImplementerUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820RegistryUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20MetadataUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20Upgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2309Upgradeable.sol +0 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2981Upgradeable.sol +0 -25
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashBorrowerUpgradeable.sol +0 -29
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashLenderUpgradeable.sol +0 -43
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156Upgradeable.sol +0 -7
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC4626Upgradeable.sol +0 -240
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721EnumerableUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721MetadataUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721ReceiverUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721Upgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777RecipientUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777SenderUpgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777Upgradeable.sol +0 -6
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC1822Upgradeable.sol +0 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC2612Upgradeable.sol +0 -8
- package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/MinimalForwarderUpgradeable.sol +0 -85
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlCrossChainMockUpgradeable.sol +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlEnumerableMockUpgradeable.sol +0 -29
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlMockUpgradeable.sol +0 -29
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AddressImplUpgradeable.sol +0 -54
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BadBeaconUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64MockUpgradeable.sol +0 -24
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BitmapMockUpgradeable.sol +0 -40
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CheckpointsMockUpgradeable.sol +0 -157
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClashingImplementationUpgradeable.sol +0 -31
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClonesMockUpgradeable.sol +0 -49
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConditionalEscrowMockUpgradeable.sol +0 -32
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CountersImplUpgradeable.sol +0 -40
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Create2ImplUpgradeable.sol +0 -47
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DoubleEndedQueueMockUpgradeable.sol +0 -71
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ECDSAMockUpgradeable.sol +0 -54
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712ExternalUpgradeable.sol +0 -43
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155BurnableMockUpgradeable.sol +0 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155MockUpgradeable.sol +0 -63
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155PausableMockUpgradeable.sol +0 -43
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155ReceiverMockUpgradeable.sol +0 -69
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155SupplyMockUpgradeable.sol +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155URIStorageMockUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165CheckerMockUpgradeable.sol +0 -42
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165MockUpgradeable.sol +0 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165StorageMockUpgradeable.sol +0 -24
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1820ImplementerMockUpgradeable.sol +0 -24
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20BurnableMockUpgradeable.sol +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20CappedMockUpgradeable.sol +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20DecimalsMockUpgradeable.sol +0 -46
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20FlashMintMockUpgradeable.sol +0 -61
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20MockUpgradeable.sol +0 -59
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PausableMockUpgradeable.sol +0 -52
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PermitMockUpgradeable.sol +0 -40
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20SnapshotMockUpgradeable.sol +0 -46
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesCompMockUpgradeable.sol +0 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesMockUpgradeable.sol +0 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20WrapperMockUpgradeable.sol +0 -34
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC4626MockUpgradeable.sol +0 -96
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721BurnableMockUpgradeable.sol +0 -41
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveEnumerableMockUpgradeable.sol +0 -73
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveMockUpgradeable.sol +0 -119
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721EnumerableMockUpgradeable.sol +0 -63
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721MockUpgradeable.sol +0 -53
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721PausableMockUpgradeable.sol +0 -58
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ReceiverMockUpgradeable.sol +0 -54
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721RoyaltyMockUpgradeable.sol +0 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721URIStorageMockUpgradeable.sol +0 -67
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721VotesMockUpgradeable.sol +0 -38
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777MockUpgradeable.sol +0 -75
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777SenderRecipientMockUpgradeable.sol +0 -176
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableMapMockUpgradeable.sol +0 -282
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableSetMockUpgradeable.sol +0 -148
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompMockUpgradeable.sol +0 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompatibilityBravoMockUpgradeable.sol +0 -145
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorMockUpgradeable.sol +0 -67
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorPreventLateQuorumMockUpgradeable.sol +0 -79
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockCompoundMockUpgradeable.sol +0 -114
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockControlMockUpgradeable.sol +0 -111
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorVoteMockUpgradeable.sol +0 -45
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorWithParamsMockUpgradeable.sol +0 -75
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MathMockUpgradeable.sol +0 -61
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofWrapperUpgradeable.sol +0 -78
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTestUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTokenMockUpgradeable.sol +0 -23
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Ownable2StepMockUpgradeable.sol +0 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/OwnableMockUpgradeable.sol +0 -21
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PullPaymentMockUpgradeable.sol +0 -27
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeCastMockUpgradeable.sol +0 -280
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeERC20HelperUpgradeable.sol +0 -257
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeMathMockUpgradeable.sol +0 -151
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignatureCheckerMockUpgradeable.sol +0 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedMathMockUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedSafeMathMockUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StringsMockUpgradeable.sol +0 -36
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersBlockNumberImplUpgradeable.sol +0 -52
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersTimestampImplUpgradeable.sol +0 -52
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSLegacyUpgradeable.sol +0 -81
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSUpgradeableMockUpgradeable.sol +0 -46
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/bridgesUpgradeable.sol +0 -199
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/receiversUpgradeable.sol +0 -107
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor1Upgradeable.sol +0 -98
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor2Upgradeable.sol +0 -104
- package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor3Upgradeable.sol +0 -107
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol +0 -89
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol +0 -212
- package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/beacon/IBeaconUpgradeable.sol +0 -16
- package/lib/openzeppelin-contracts-upgradeable/contracts/security/PausableUpgradeable.sol +0 -117
- package/lib/openzeppelin-contracts-upgradeable/contracts/security/PullPaymentUpgradeable.sol +0 -89
- package/lib/openzeppelin-contracts-upgradeable/contracts/security/README.adoc +0 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol +0 -81
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol +0 -58
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol +0 -125
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol +0 -22
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.sol +0 -145
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/README.md +0 -1
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155ReceiverUpgradeable.sol +0 -32
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol +0 -82
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20SnapshotUpgradeable.sol +0 -208
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesCompUpgradeable.sol +0 -59
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/IERC20MetadataUpgradeable.sol +0 -28
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol +0 -109
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol +0 -60
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetFixedSupplyUpgradeable.sol +0 -61
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable.sol +0 -111
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/README.md +0 -1
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/SafeERC20Upgradeable.sol +0 -116
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/TokenTimelockUpgradeable.sol +0 -94
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721ReceiverUpgradeable.sol +0 -27
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721Upgradeable.sol +0 -145
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol +0 -29
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721MetadataUpgradeable.sol +0 -27
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/draft-ERC721VotesUpgradeable.sol +0 -9
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoIdUpgradeable.sol +0 -165
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/README.md +0 -1
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/ERC777Upgradeable.sol +0 -563
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777RecipientUpgradeable.sol +0 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777SenderUpgradeable.sol +0 -35
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777Upgradeable.sol +0 -209
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/README.adoc +0 -30
- package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/presets/ERC777PresetFixedSupplyUpgradeable.sol +0 -58
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol +0 -219
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ArraysUpgradeable.sol +0 -96
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Base64Upgradeable.sol +0 -92
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CheckpointsUpgradeable.sol +0 -554
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CountersUpgradeable.sol +0 -43
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Create2Upgradeable.sol +0 -83
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StorageSlotUpgradeable.sol +0 -88
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol +0 -70
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/TimersUpgradeable.sol +0 -73
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/ECDSAUpgradeable.sol +0 -213
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/MerkleProofUpgradeable.sol +0 -223
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/SignatureCheckerUpgradeable.sol +0 -42
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/draft-EIP712Upgradeable.sol +0 -8
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/ConditionalEscrowUpgradeable.sol +0 -39
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/EscrowUpgradeable.sol +0 -84
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/RefundEscrowUpgradeable.sol +0 -113
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165CheckerUpgradeable.sol +0 -127
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165StorageUpgradeable.sol +0 -55
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC1820ImplementerUpgradeable.sol +0 -57
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol +0 -25
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820ImplementerUpgradeable.sol +0 -20
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820RegistryUpgradeable.sol +0 -116
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol +0 -345
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeCastUpgradeable.sol +0 -1136
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeMathUpgradeable.sol +0 -227
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol +0 -43
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedSafeMathUpgradeable.sol +0 -68
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/BitMapsUpgradeable.sol +0 -55
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/DoubleEndedQueueUpgradeable.sol +0 -170
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableMapUpgradeable.sol +0 -530
- package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableSetUpgradeable.sol +0 -378
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/amb/IAMBUpgradeable.sol +0 -49
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IArbSysUpgradeable.sol +0 -141
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IBridgeUpgradeable.sol +0 -109
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IDelayedMessageProviderUpgradeable.sol +0 -16
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IInboxUpgradeable.sol +0 -152
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IOutboxUpgradeable.sol +0 -121
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/compound/ICompoundTimelockUpgradeable.sol +0 -86
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/ICrossDomainMessengerUpgradeable.sol +0 -38
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/LICENSE +0 -22
- package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/polygon/IFxMessageProcessorUpgradeable.sol +0 -11
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crosschain.adoc +0 -210
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/drafts.adoc +0 -19
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc777.adoc +0 -73
- package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
- package/lib/openzeppelin-contracts-upgradeable/hardhat/env-contract.js +0 -10
- package/lib/openzeppelin-contracts-upgradeable/hardhat/task-get-compiler-input.js +0 -10
- package/lib/openzeppelin-contracts-upgradeable/icon.svg +0 -13
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitmodules +0 -3
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/LICENSE +0 -674
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/Makefile +0 -14
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/default.nix +0 -4
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/package.json +0 -15
- package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/src/test.sol +0 -469
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/CheckpointsMock.js +0 -80
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMapMock.js +0 -66
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSetMock.js +0 -56
- package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCastMock.js +0 -50
- package/lib/openzeppelin-contracts-upgradeable/scripts/migrate-imports.js +0 -177
- package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-contracts-package.sh +0 -15
- package/lib/openzeppelin-contracts-upgradeable/scripts/prepare.sh +0 -10
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/release.sh +0 -145
- package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-changelog-release-date.js +0 -34
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/merge-upstream.sh +0 -33
- package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch/.gitkeep +0 -0
- package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlCrossChain.test.js +0 -59
- package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlEnumerable.test.js +0 -15
- package/lib/openzeppelin-contracts-upgradeable/test/crosschain/CrossChainEnabled.test.js +0 -88
- package/lib/openzeppelin-contracts-upgradeable/test/finance/PaymentSplitter.test.js +0 -217
- package/lib/openzeppelin-contracts-upgradeable/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
- package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorComp.test.js +0 -78
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/create2.js +0 -12
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/crosschain.js +0 -63
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/customError.js +0 -24
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc1967.js +0 -24
- package/lib/openzeppelin-contracts-upgradeable/test/helpers/sign.js +0 -47
- package/lib/openzeppelin-contracts-upgradeable/test/metatx/MinimalForwarder.test.js +0 -184
- package/lib/openzeppelin-contracts-upgradeable/test/migrate-imports.test.js +0 -29
- package/lib/openzeppelin-contracts-upgradeable/test/security/Pausable.test.js +0 -89
- package/lib/openzeppelin-contracts-upgradeable/test/security/PullPayment.test.js +0 -51
- package/lib/openzeppelin-contracts-upgradeable/test/security/ReentrancyGuard.test.js +0 -40
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.behavior.js +0 -555
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.test.js +0 -610
- package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Checkpoints.test.js +0 -189
- package/lib/openzeppelin-contracts-upgradeable/test/utils/Counters.test.js +0 -84
- package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersBlockNumberImpl.test.js +0 -55
- package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersTimestamp.test.js +0 -55
- package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/ConditionalEscrow.test.js +0 -36
- package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.behavior.js +0 -94
- package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.test.js +0 -14
- package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/RefundEscrow.test.js +0 -148
- package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Storage.test.js +0 -25
- package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC1820Implementer.test.js +0 -66
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeMath.test.js +0 -403
- package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedSafeMath.test.js +0 -152
- package/migrations/10_deploy_weth.js +0 -5
- package/migrations/11_deploy_full_flow.js +0 -99
- package/migrations/12_deploy_pm_v3_querier.js +0 -7
- package/migrations/13_deploy_pm_v3_factory.js +0 -14
- package/migrations/15_deploy_ppmm.js +0 -10
- package/migrations/16_deploy_raffle.js +0 -5
- package/migrations/1_initial_migration.js +0 -5
- package/migrations/2_deploy_erc20.js +0 -10
- package/migrations/3_deploy_realitio.js +0 -11
- package/migrations/4_deploy_pm.js +0 -20
- package/migrations/5_seed_markets.js +0 -51
- package/migrations/6_deploy_achievements.js +0 -5
- package/migrations/7_deploy_voting.js +0 -14
- package/migrations/8_deploy_pm_v2.js +0 -20
- package/migrations/9_seed_markets_v2.js +0 -68
- package/tests/PPMMarketContract.js +0 -340
- package/tests/fantasyERC20Contract.js +0 -225
- package/tests/index.js +0 -10
- package/tests/predictionMarketContract.js +0 -466
- package/tests/predictionMarketV2Contract.js +0 -1042
- package/tests/predictionMarketV3Contract.js +0 -1079
- package/tests/predictionMarketV3ControllerContract.js +0 -613
- package/tests/predictionMarketV3FactoryContract.js +0 -469
- package/tests/predictionMarketV3ManagerContract.js +0 -610
- package/tests/utils.js +0 -16
- package/tests/votingContract.js +0 -490
- package/truffle-config.js +0 -134
- package/zkout/AccessControl.sol/AccessControl.json +0 -1
- package/zkout/AccessControlEnumerable.sol/AccessControlEnumerable.json +0 -1
- package/zkout/Address.sol/Address.json +0 -1
- package/zkout/Clones.sol/Clones.json +0 -1
- package/zkout/Context.sol/Context.json +0 -1
- package/zkout/ERC165.sol/ERC165.json +0 -1
- package/zkout/ERC20.sol/ERC20.json +0 -1
- package/zkout/ERC20Burnable.sol/ERC20Burnable.json +0 -1
- package/zkout/ERC20Pausable.sol/ERC20Pausable.json +0 -1
- package/zkout/ERC20PresetMinterPauser.sol/ERC20PresetMinterPauser.json +0 -1
- package/zkout/EnumerableSet.sol/EnumerableSet.json +0 -1
- package/zkout/FantasyERC20.sol/FantasyERC20.json +0 -1
- package/zkout/IAccessControl.sol/IAccessControl.json +0 -1
- package/zkout/IAccessControlEnumerable.sol/IAccessControlEnumerable.json +0 -1
- package/zkout/IERC165.sol/IERC165.json +0 -1
- package/zkout/IERC20.sol/IERC20.json +0 -1
- package/zkout/IERC20Metadata.sol/IERC20Metadata.json +0 -1
- package/zkout/IFantasyERC20.sol/IFantasyERC20.json +0 -1
- package/zkout/IPredictionMarketV3.sol/IPredictionMarketV3.json +0 -1
- package/zkout/IPredictionMarketV3Factory.sol/IPredictionMarketV3Factory.json +0 -1
- package/zkout/IPredictionMarketV3Manager.sol/IPredictionMarketV3Manager.json +0 -1
- package/zkout/IRealityETH_ERC20.sol/IRealityETH_ERC20.json +0 -1
- package/zkout/LandFactory.sol/LandFactory.json +0 -1
- package/zkout/Math.sol/Math.json +0 -1
- package/zkout/Migrations.sol/Migrations.json +0 -1
- package/zkout/Ownable.sol/Ownable.json +0 -1
- package/zkout/Pausable.sol/Pausable.json +0 -1
- package/zkout/PredictionMarketV3.sol/CeilDiv.json +0 -1
- package/zkout/PredictionMarketV3.sol/IWETH.json +0 -1
- package/zkout/PredictionMarketV3.sol/PredictionMarketV3.json +0 -1
- package/zkout/PredictionMarketV3Controller.sol/PredictionMarketV3Controller.json +0 -1
- package/zkout/PredictionMarketV3Factory.sol/PredictionMarketV3Factory.json +0 -1
- package/zkout/PredictionMarketV3Manager.sol/PredictionMarketV3Manager.json +0 -1
- package/zkout/PredictionMarketV3Querier.sol/PredictionMarketV3Querier.json +0 -1
- package/zkout/Proxy.sol/Proxy.json +0 -1
- package/zkout/RealityETH_ERC20_Factory.sol/IRealityETH_IERC20.json +0 -1
- package/zkout/RealityETH_ERC20_Factory.sol/RealityETH_ERC20_Factory.json +0 -1
- package/zkout/RealityETH_ERC20_v3_0.sol/RealityETH_ERC20_v3_0_.json +0 -1
- package/zkout/ReentrancyGuard.sol/ReentrancyGuard.json +0 -1
- package/zkout/SafeERC20.sol/SafeERC20.json +0 -1
- package/zkout/SafeMath.sol/SafeMath.json +0 -1
- package/zkout/Strings.sol/Strings.json +0 -1
- package/zkout/USDCERC20.sol/USDCERC20.json +0 -1
- package/zkout/Voting.sol/Voting.json +0 -1
- package/zkout/build-info/0fa499f04838f8c1f593bcbafd0fd1a5.json +0 -1
- package/zkout/build-info/39c03363a71a9805ec8ec63c81a8aaaf.json +0 -1
- package/zkout/build-info/637aa7b0942c0ead878e36bd5d598008.json +0 -1
- package/zkout/build-info/810ab68b6fb1e3386ce5a111c7eb136f.json +0 -1
- package/zkout/build-info/aec05d9534229710b5b5f567c42384a1.json +0 -1
- package/zkout/build-info/cdd531656c4131c11667647afa1b2cca.json +0 -1
- package/zkout/build-info/e702288987d16a0b64efe75b321dfb8a.json +0 -1
- package/zkout/build-info/eccbfbbf7a8a18e02ebf05d3b7c6eea8.json +0 -1
- package/zkout/contracts/BalanceHolder_ERC20.sol/BalanceHolder_ERC20.json +0 -1
- package/zkout/contracts/IBalanceHolder_ERC20.sol/IBalanceHolder_ERC20.json +0 -1
- package/zkout/contracts/RealityETH_ERC20-3.0.sol/RealityETH_ERC20_v3_0.json +0 -1
- package/zkout/development/contracts/IERC20.sol/IERC20.json +0 -1
- package/zkout/draft-IERC20Permit.sol/IERC20Permit.json +0 -1
- /package/{build/contracts → abis}/AccessControlEnumerable.json +0 -0
- /package/{build/contracts → abis}/Achievements.json +0 -0
- /package/{build/contracts → abis}/BalanceHolder.json +0 -0
- /package/{build/contracts → abis}/Counters.json +0 -0
- /package/{build/contracts → abis}/ERC20PresetMinterPauser.json +0 -0
- /package/{build/contracts → abis}/ERC721.json +0 -0
- /package/{build/contracts → abis}/EnumerableMap.json +0 -0
- /package/{build/contracts → abis}/EnumerableSet.json +0 -0
- /package/{build/contracts → abis}/IAccessControlEnumerable.json +0 -0
- /package/{build/contracts → abis}/IERC20Permit.json +0 -0
- /package/{build/contracts → abis}/IERC721Receiver.json +0 -0
- /package/{build/contracts → abis}/IPredictionMarketV3.json +0 -0
- /package/{build/contracts → abis}/Math.json +0 -0
- /package/{build/contracts → abis}/Migrations.json +0 -0
- /package/{build/contracts → abis}/PredictionMarket.json +0 -0
- /package/{build/contracts → abis}/PredictionMarketV2.json +0 -0
- /package/{build/contracts → abis}/PredictionMarketV3.json +0 -0
- /package/{build/contracts → abis}/RealitioERC20.json +0 -0
- /package/{build/contracts → abis}/RealitioForeignArbitrationProxyWithAppeals.json +0 -0
- /package/{build/contracts → abis}/RealitioHomeArbitrationProxy.json +0 -0
- /package/{build/contracts → abis}/RealitioSafeMath256.json +0 -0
- /package/{build/contracts → abis}/RealitioSafeMath32.json +0 -0
- /package/{build/contracts → abis}/SafeMath.json +0 -0
- /package/{build/contracts → abis}/Strings.json +0 -0
- /package/{build/contracts → abis}/WETH9.json +0 -0
- /package/lib/openzeppelin-contracts-upgradeable/{audit → audits}/2018-10.pdf +0 -0
- /package/lib/openzeppelin-contracts-upgradeable/{DOCUMENTATION.md → docs/README.md} +0 -0
- /package/lib/openzeppelin-contracts-upgradeable/{.github → lib/openzeppelin-contracts/.github}/ISSUE_TEMPLATE/feature_request.md +0 -0
- /package/lib/{openzeppelin-contracts/audit → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits}/2018-10.pdf +0 -0
- /package/lib/{openzeppelin-contracts/DOCUMENTATION.md → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/README.md} +0 -0
- /package/lib/openzeppelin-contracts-upgradeable/{scripts/upgradeable → lib/openzeppelin-contracts/scripts}/git-user-config.sh +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Halmos Cheat Codes
|
|
2
|
+
|
|
3
|
+
Halmos cheatcodes are abstract functions designed to facilitate writing symbolic tests, such as the creation of new symbolic values at runtime. While these cheatcodes are currently exclusive to [Halmos][halmos], they are not limited to it and could potentially be supported by other symbolic testing tools in the future.
|
|
4
|
+
|
|
5
|
+
Please refer to [the list of currently available cheatcodes][list]. More cheatcodes will be added in the future.
|
|
6
|
+
|
|
7
|
+
Join the [Halmos Telegram Group][chat] for any inquiries or further discussions.
|
|
8
|
+
|
|
9
|
+
[halmos]: <https://github.com/a16z/halmos>
|
|
10
|
+
[list]: <src/SVM.sol>
|
|
11
|
+
[chat]: <https://t.me/+4UhzHduai3MzZmUx>
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
To install using Foundry:
|
|
16
|
+
```
|
|
17
|
+
forge install a16z/halmos-cheatcodes
|
|
18
|
+
```
|
|
19
|
+
Alternatively, you can directly add it as a submodule:
|
|
20
|
+
```
|
|
21
|
+
git submodule add https://github.com/a16z/halmos-cheatcodes
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Example usage
|
|
25
|
+
|
|
26
|
+
Below is an example of a symbolic test that checks for potential unauthorized access to others' tokens. The approach involves setting up an initial symbolic state of the token contract, executing an arbitrary function call to the token contract, and checking if there is an execution path that increases the caller's balance and/or decreases the balance of others. This example illustrates how to utilize cheatcodes to set up initial symbolic states and execute arbitrary function calls.
|
|
27
|
+
|
|
28
|
+
```solidity
|
|
29
|
+
// import Halmos cheatcodes
|
|
30
|
+
import {SymTest} from "halmos-cheatcodes/SymTest.sol";
|
|
31
|
+
|
|
32
|
+
import {Test} from "forge-std/Test.sol";
|
|
33
|
+
|
|
34
|
+
import {Token} from "/path/to/Token.sol";
|
|
35
|
+
|
|
36
|
+
contract TokenTest is SymTest, Test {
|
|
37
|
+
Token token;
|
|
38
|
+
|
|
39
|
+
function setUp() public {
|
|
40
|
+
token = new Token();
|
|
41
|
+
|
|
42
|
+
// set the balances of three arbitrary accounts to arbitrary symbolic values
|
|
43
|
+
for (uint256 i = 0; i < 3; i++) {
|
|
44
|
+
address receiver = svm.createAddress('receiver'); // create a new symbolic address
|
|
45
|
+
uint256 amount = svm.createUint256('amount'); // create a new symbolic uint256 value
|
|
46
|
+
token.transfer(receiver, amount);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function checkBalanceUpdate() public {
|
|
51
|
+
// consider two arbitrary distinct accounts
|
|
52
|
+
address caller = svm.createAddress('caller'); // create a symbolic address
|
|
53
|
+
address others = svm.createAddress('others'); // create another symbolic address
|
|
54
|
+
vm.assume(others != caller); // assume the two addresses are different
|
|
55
|
+
|
|
56
|
+
// record their current balances
|
|
57
|
+
uint256 oldBalanceCaller = token.balanceOf(caller);
|
|
58
|
+
uint256 oldBalanceOthers = token.balanceOf(others);
|
|
59
|
+
|
|
60
|
+
// execute an arbitrary function call to the token from the caller
|
|
61
|
+
vm.prank(caller);
|
|
62
|
+
uint256 dataSize = 100; // the max calldata size for the public functions in the token
|
|
63
|
+
bytes memory data = svm.createBytes(dataSize, 'data'); // create a symbolic calldata
|
|
64
|
+
address(token).call(data);
|
|
65
|
+
|
|
66
|
+
// ensure that the caller cannot spend others' tokens
|
|
67
|
+
assert(token.balanceOf(caller) <= oldBalanceCaller); // cannot increase their own balance
|
|
68
|
+
assert(token.balanceOf(others) >= oldBalanceOthers); // cannot decrease others' balance
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
When running the above test against the following buggy token contract, Halmos will provide a counterexample that may be overlooked during manual reviews.
|
|
74
|
+
|
|
75
|
+
```solidity
|
|
76
|
+
/// @notice This is a buggy token contract. DO NOT use it in production.
|
|
77
|
+
contract Token {
|
|
78
|
+
mapping(address => uint) public balanceOf;
|
|
79
|
+
|
|
80
|
+
constructor() public {
|
|
81
|
+
balanceOf[msg.sender] = 1e27;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function transfer(address to, uint amount) public {
|
|
85
|
+
_transfer(msg.sender, to, amount);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
function _transfer(address from, address to, uint amount) public {
|
|
89
|
+
balanceOf[from] -= amount;
|
|
90
|
+
balanceOf[to] += amount;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Disclaimer
|
|
96
|
+
|
|
97
|
+
_These smart contracts and code are being provided as is. No guarantee, representation or warranty is being made, express or implied, as to the safety or correctness of the user interface or the smart contracts and code. They have not been audited and as such there can be no assurance they will work as intended, and users may experience delays, failures, errors, omissions or loss of transmitted information. THE SMART CONTRACTS AND CODE CONTAINED HEREIN ARE FURNISHED AS IS, WHERE IS, WITH ALL FAULTS AND WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NON-INFRINGEMENT OR FITNESS FOR ANY PARTICULAR PURPOSE. Further, use of any of these smart contracts and code may be restricted or prohibited under applicable law, including securities laws, and it is therefore strongly advised for you to contact a reputable attorney in any jurisdiction where these smart contracts and code may be accessible for any questions or concerns with respect thereto. Further, no information provided in this repo should be construed as investment advice or legal advice for any particular facts or circumstances, and is not meant to replace competent counsel. a16z is not liable for any use of the foregoing, and users should proceed with caution and use at their own risk. See a16z.com/disclosures for more info._
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// SPDX-License-Identifier: AGPL-3.0
|
|
2
|
+
pragma solidity >=0.8.0 <0.9.0;
|
|
3
|
+
|
|
4
|
+
/// @notice Symbolic Virtual Machine
|
|
5
|
+
interface SVM {
|
|
6
|
+
// Create a new symbolic uint value ranging over [0, 2**bitSize - 1] (inclusive)
|
|
7
|
+
function createUint(uint256 bitSize, string memory name) external pure returns (uint256 value);
|
|
8
|
+
|
|
9
|
+
// Create a new symbolic uint256 value
|
|
10
|
+
function createUint256(string memory name) external pure returns (uint256 value);
|
|
11
|
+
|
|
12
|
+
// Create a new symbolic signed int value
|
|
13
|
+
function createInt(uint256 bitSize, string memory name) external pure returns (int256 value);
|
|
14
|
+
|
|
15
|
+
// Create a new symbolic int256 value
|
|
16
|
+
function createInt256(string memory name) external pure returns (int256 value);
|
|
17
|
+
|
|
18
|
+
// Create a new symbolic byte array with the given byte size
|
|
19
|
+
function createBytes(uint256 byteSize, string memory name) external pure returns (bytes memory value);
|
|
20
|
+
|
|
21
|
+
// Create a new symbolic string backed by a symbolic array with the given byte size
|
|
22
|
+
function createString(uint256 byteSize, string memory name) external pure returns (string memory value);
|
|
23
|
+
|
|
24
|
+
// Create a new symbolic bytes32 value
|
|
25
|
+
function createBytes32(string memory name) external pure returns (bytes32 value);
|
|
26
|
+
|
|
27
|
+
// Create a new symbolic bytes4 value
|
|
28
|
+
function createBytes4(string memory name) external pure returns (bytes4 value);
|
|
29
|
+
|
|
30
|
+
// Create a new symbolic address value
|
|
31
|
+
function createAddress(string memory name) external pure returns (address value);
|
|
32
|
+
|
|
33
|
+
// Create a new symbolic boolean value
|
|
34
|
+
function createBool(string memory name) external pure returns (bool value);
|
|
35
|
+
|
|
36
|
+
// Create arbitrary symbolic calldata for the given contract or interface name.
|
|
37
|
+
// An exception is thrown if the contract name exists in multiple files. An optional filename (with .sol extension) can be provided to avoid ambiguity.
|
|
38
|
+
// By default, view and pure functions are excluded. An optional boolean flag can be set to include view and pure functions.
|
|
39
|
+
function createCalldata(string memory contractOrInterfaceName) external pure returns (bytes memory data);
|
|
40
|
+
function createCalldata(string memory contractOrInterfaceName, bool includeViewAndPureFunctions) external pure returns (bytes memory data);
|
|
41
|
+
function createCalldata(string memory filename, string memory contractOrInterfaceName) external pure returns (bytes memory data);
|
|
42
|
+
function createCalldata(string memory filename, string memory contractOrInterfaceName, bool includeViewAndPureFunctions) external pure returns (bytes memory data);
|
|
43
|
+
|
|
44
|
+
// Assign symbolic values to uninitialized storage slots
|
|
45
|
+
function enableSymbolicStorage(address) external;
|
|
46
|
+
|
|
47
|
+
// Snapshot the current storage of the given account and return a snapshot ID
|
|
48
|
+
function snapshotStorage(address) external returns (uint256 id);
|
|
49
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// SPDX-License-Identifier: AGPL-3.0
|
|
2
|
+
pragma solidity >=0.8.0 <0.9.0;
|
|
3
|
+
|
|
4
|
+
import {SVM} from "./SVM.sol";
|
|
5
|
+
|
|
6
|
+
abstract contract SymTest {
|
|
7
|
+
// SVM cheat code address: 0xf3993a62377bcd56ae39d773740a5390411e8bc9
|
|
8
|
+
address internal constant SVM_ADDRESS = address(uint160(uint256(keccak256("svm cheat code"))));
|
|
9
|
+
|
|
10
|
+
SVM internal constant svm = SVM(SVM_ADDRESS);
|
|
11
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<svg width="422" height="40" viewBox="0 0 422 40" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0)">
|
|
3
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M35.7774 39.9836V29.6104H24.5468C21.4926 29.6104 18.6635 31.223 17.0993 33.8558L13.4584 39.9836H35.7774Z" fill="#63D2F9"/>
|
|
4
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M0.0332031 0.133484V10.5067H29.6139L35.7774 0.133484H0.0332031Z" fill="#4E5EE4"/>
|
|
5
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M14.1902 16.3452L0.0657959 39.9836H12.0995L28.9898 11.7036H22.3447C19.0023 11.7036 15.9058 13.4661 14.1902 16.3452Z" fill="#63B0F9"/>
|
|
6
|
+
<path opacity="0.9" d="M288.7 30.0173C284.218 30.0173 281.078 26.6207 281.078 22.2251C281.078 17.8296 284.304 14.433 288.672 14.433C291.898 14.433 294.895 16.3739 295.695 19.6848H293.354C292.754 17.7439 290.87 16.488 288.729 16.488C285.56 16.488 283.419 18.9998 283.419 22.2251C283.419 25.5646 285.674 27.9622 288.786 27.9622C290.927 27.9622 292.84 26.7063 293.411 24.7654H295.723C294.952 28.0764 291.926 30.0173 288.7 30.0173ZM306.843 30.0173C302.39 30.0173 299.107 26.7349 299.107 22.2251C299.107 17.7439 302.447 14.433 306.872 14.433C311.354 14.433 314.608 17.7725 314.608 22.2251C314.608 26.6778 311.297 30.0173 306.843 30.0173ZM306.843 27.9622C310.041 27.9622 312.296 25.5361 312.296 22.2251C312.296 18.9427 310.041 16.488 306.843 16.488C303.646 16.488 301.419 18.9713 301.419 22.2251C301.419 25.5646 303.674 27.9622 306.843 27.9622ZM319.134 29.6462V14.804H321.389V16.9733H321.56C322.188 15.6318 323.787 14.433 326.099 14.433C329.554 14.433 331.638 17.0304 331.638 20.3128V29.6462H329.382V20.4555C329.382 18.0864 327.641 16.5451 325.557 16.5451C323.216 16.5451 321.389 18.3433 321.389 20.798V29.6462H319.134ZM342.815 29.6462C340.074 29.6462 338.39 28.162 338.39 25.165V16.7164H335.592V14.804H337.819C338.219 14.804 338.533 14.5471 338.533 14.0619V10.4941H340.645V14.804H345.213V16.7164H340.645V25.1365C340.645 26.7349 341.245 27.6768 342.957 27.6768H345.013V29.6462H342.815ZM349.738 29.6462V14.804H351.965V17.5727H352.136C352.564 16.3168 354.02 14.804 356.19 14.804H357.446V17.0589H356.219C353.507 17.0589 351.993 19.1711 351.993 21.9968V29.6462H349.738ZM367.367 30.0173C362.999 30.0173 359.973 26.792 359.973 22.2537C359.973 17.6868 362.999 14.433 367.196 14.433C370.308 14.433 371.963 16.431 372.42 17.2016H372.591V14.804H374.847V29.6462H372.677V27.3057H372.506C372.135 27.8481 370.593 30.0173 367.367 30.0173ZM367.51 27.9908C370.736 27.9908 372.677 25.3648 372.677 22.2537C372.677 18.6002 370.393 16.488 367.453 16.488C364.398 16.488 362.286 18.8856 362.286 22.2537C362.286 25.7359 364.398 27.9908 367.51 27.9908ZM386.709 30.0173C382.227 30.0173 379.087 26.6207 379.087 22.2251C379.087 17.8296 382.312 14.433 386.68 14.433C389.906 14.433 392.904 16.3739 393.703 19.6848H391.362C390.763 17.7439 388.879 16.488 386.737 16.488C383.569 16.488 381.427 18.9998 381.427 22.2251C381.427 25.5646 383.683 27.9622 386.795 27.9622C388.936 27.9622 390.848 26.7063 391.419 24.7654H393.732C392.961 28.0764 389.935 30.0173 386.709 30.0173ZM404.052 29.6462C401.312 29.6462 399.627 28.162 399.627 25.165V16.7164H396.83V14.804H399.056C399.456 14.804 399.77 14.5471 399.77 14.0619V10.4941H401.883V14.804H406.45V16.7164H401.883V25.1365C401.883 26.7349 402.482 27.6768 404.195 27.6768H406.25V29.6462H404.052ZM415.886 30.0173C412.375 30.0173 410.376 28.1049 410.119 25.3363H412.317C412.574 27.1059 413.831 28.0479 416 28.0479C418.227 28.0479 419.454 26.9632 419.454 25.4505C419.454 21.2832 410.576 24.4515 410.576 18.5717C410.576 16.0599 412.831 14.433 415.943 14.433C418.684 14.433 420.968 16.0314 421.196 18.7144H419.026C418.826 17.3158 417.77 16.3739 415.8 16.3739C413.945 16.3739 412.746 17.2872 412.746 18.5717C412.746 22.3393 421.653 19.1996 421.653 25.3363C421.653 28.1335 419.34 30.0173 415.886 30.0173Z" fill="#282846"/>
|
|
7
|
+
<path d="M61.3795 30.03C55.3284 30.03 50.8757 25.6059 50.8757 19.669C50.8757 13.7892 55.3569 9.30797 61.408 9.30797C67.4591 9.30797 71.9403 13.8463 71.9403 19.669C71.9403 25.5488 67.4305 30.03 61.3795 30.03ZM61.408 26.4051C65.2327 26.4051 67.9728 23.5508 67.9728 19.669C67.9728 15.8443 65.2327 12.9329 61.408 12.9329C57.5547 12.9329 54.8146 15.8443 54.8146 19.669C54.8146 23.5508 57.5547 26.4051 61.408 26.4051ZM75.9923 36.2238V14.6455H79.6457V16.5578H79.8455C80.2451 15.9299 81.6152 14.2744 84.3553 14.2744C88.5511 14.2744 91.4339 17.4141 91.4339 22.0951C91.4339 26.7761 88.5796 30.03 84.4695 30.03C81.815 30.03 80.3879 28.5458 79.9026 27.718H79.7028V36.2238H75.9923ZM83.6417 26.6619C86.0393 26.6619 87.6662 24.8067 87.6662 22.1522C87.6662 19.4121 86.0393 17.6424 83.6132 17.6424C81.1585 17.6424 79.6172 19.6119 79.6172 22.1522C79.6172 24.9494 81.3298 26.6619 83.6417 26.6619ZM102.051 30.03C97.6266 30.03 94.4869 26.719 94.4869 22.2378C94.4869 17.4997 97.6551 14.2744 102.051 14.2744C106.874 14.2744 109.5 17.8422 109.5 22.0666V23.2368H98.0833C98.1975 25.5202 99.7673 27.0615 102.165 27.0615C103.992 27.0615 105.39 26.2053 105.904 24.9779H109.358C108.616 28.032 105.933 30.03 102.051 30.03ZM98.1404 20.6109H105.961C105.79 18.5844 104.22 17.2428 102.051 17.2428C99.9671 17.2428 98.3687 18.7271 98.1404 20.6109ZM113.495 29.6589V14.6455H117.035V16.4722H117.234C117.834 15.359 119.318 14.2744 121.459 14.2744C124.827 14.2744 126.882 16.6434 126.882 19.8402V29.6589H123.171V20.8107C123.171 18.984 122.001 17.7566 120.288 17.7566C118.49 17.7566 117.206 19.1837 117.206 21.0676V29.6589H113.495ZM130.563 29.6589V26.2623L140.952 13.1612V12.9614H130.934V9.67903H145.69V13.0471L135.301 26.1482V26.3765H145.748V29.6589H130.563ZM155.794 30.03C151.369 30.03 148.23 26.719 148.23 22.2378C148.23 17.4997 151.398 14.2744 155.794 14.2744C160.617 14.2744 163.243 17.8422 163.243 22.0666V23.2368H151.826C151.94 25.5202 153.51 27.0615 155.908 27.0615C157.734 27.0615 159.133 26.2053 159.647 24.9779H163.1C162.358 28.032 159.675 30.03 155.794 30.03ZM151.883 20.6109H159.704C159.533 18.5844 157.963 17.2428 155.794 17.2428C153.71 17.2428 152.112 18.7271 151.883 20.6109ZM167.238 36.2238V14.6455H170.892V16.5578H171.091C171.491 15.9299 172.861 14.2744 175.601 14.2744C179.797 14.2744 182.68 17.4141 182.68 22.0951C182.68 26.7761 179.825 30.03 175.715 30.03C173.061 30.03 171.634 28.5458 171.148 27.718H170.949V36.2238H167.238ZM174.888 26.6619C177.285 26.6619 178.912 24.8067 178.912 22.1522C178.912 19.4121 177.285 17.6424 174.859 17.6424C172.404 17.6424 170.863 19.6119 170.863 22.1522C170.863 24.9494 172.576 26.6619 174.888 26.6619ZM186.675 36.2238V14.6455H190.328V16.5578H190.528C190.927 15.9299 192.298 14.2744 195.038 14.2744C199.233 14.2744 202.116 17.4141 202.116 22.0951C202.116 26.7761 199.262 30.03 195.152 30.03C192.497 30.03 191.07 28.5458 190.585 27.718H190.385V36.2238H186.675ZM194.324 26.6619C196.722 26.6619 198.349 24.8067 198.349 22.1522C198.349 19.4121 196.722 17.6424 194.296 17.6424C191.841 17.6424 190.3 19.6119 190.3 22.1522C190.3 24.9494 192.012 26.6619 194.324 26.6619ZM212.733 30.03C208.309 30.03 205.169 26.719 205.169 22.2378C205.169 17.4997 208.337 14.2744 212.733 14.2744C217.557 14.2744 220.183 17.8422 220.183 22.0666V23.2368H208.766C208.88 25.5202 210.45 27.0615 212.847 27.0615C214.674 27.0615 216.073 26.2053 216.586 24.9779H220.04C219.298 28.032 216.615 30.03 212.733 30.03ZM208.823 20.6109H216.643C216.472 18.5844 214.902 17.2428 212.733 17.2428C210.649 17.2428 209.051 18.7271 208.823 20.6109ZM227.831 29.6589C225.205 29.6589 223.721 28.0891 223.721 25.4346V8.25189H227.432V25.0921C227.432 25.9484 227.86 26.4051 228.63 26.4051H229.23V29.6589H227.831ZM234.652 12.6475C233.31 12.6475 232.368 11.8197 232.368 10.4782C232.368 9.1938 233.31 8.33752 234.652 8.33752C235.993 8.33752 236.935 9.1938 236.935 10.4782C236.935 11.8197 235.993 12.6475 234.652 12.6475ZM232.797 29.6589V14.6455H236.507V29.6589H232.797ZM241.016 29.6589V14.6455H244.555V16.4722H244.755C245.354 15.359 246.838 14.2744 248.979 14.2744C252.347 14.2744 254.402 16.6434 254.402 19.8402V29.6589H250.692V20.8107C250.692 18.984 249.521 17.7566 247.809 17.7566C246.011 17.7566 244.726 19.1837 244.726 21.0676V29.6589H241.016Z" fill="#282846"/>
|
|
8
|
+
<path opacity="0.9" d="M269.325 30.2504H267.125V9.62091H269.325V30.2504Z" fill="#282846"/>
|
|
9
|
+
</g>
|
|
10
|
+
<defs>
|
|
11
|
+
<clipPath id="clip0">
|
|
12
|
+
<rect width="421.8" height="40" fill="white"/>
|
|
13
|
+
</clipPath>
|
|
14
|
+
</defs>
|
|
15
|
+
</svg>
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "openzeppelin-solidity",
|
|
3
|
+
"description": "Secure Smart Contract library for Solidity",
|
|
4
|
+
"version": "5.3.0",
|
|
5
|
+
"private": true,
|
|
6
|
+
"files": [
|
|
7
|
+
"/contracts/**/*.sol",
|
|
8
|
+
"!/contracts/mocks/**/*"
|
|
9
|
+
],
|
|
10
|
+
"scripts": {
|
|
11
|
+
"compile": "hardhat compile",
|
|
12
|
+
"compile:harnesses": "env SRC=./certora/harnesses hardhat compile",
|
|
13
|
+
"coverage": "scripts/checks/coverage.sh",
|
|
14
|
+
"docs": "npm run prepare-docs && oz-docs",
|
|
15
|
+
"docs:watch": "oz-docs watch contracts docs/templates docs/config.js",
|
|
16
|
+
"prepare": "husky",
|
|
17
|
+
"prepare-docs": "scripts/prepare-docs.sh",
|
|
18
|
+
"lint": "npm run lint:js && npm run lint:sol",
|
|
19
|
+
"lint:fix": "npm run lint:js:fix && npm run lint:sol:fix",
|
|
20
|
+
"lint:js": "prettier --log-level warn --ignore-path .gitignore '**/*.{js,ts}' --check && eslint .",
|
|
21
|
+
"lint:js:fix": "prettier --log-level warn --ignore-path .gitignore '**/*.{js,ts}' --write && eslint . --fix",
|
|
22
|
+
"lint:sol": "prettier --log-level warn --ignore-path .gitignore '{contracts,test}/**/*.sol' --check && solhint '{contracts,test}/**/*.sol'",
|
|
23
|
+
"lint:sol:fix": "prettier --log-level warn --ignore-path .gitignore '{contracts,test}/**/*.sol' --write",
|
|
24
|
+
"clean": "hardhat clean && rimraf build contracts/build",
|
|
25
|
+
"prepack": "scripts/prepack.sh",
|
|
26
|
+
"generate": "scripts/generate/run.js",
|
|
27
|
+
"pragma": "npm run compile && scripts/minimize-pragma.js artifacts/build-info/*",
|
|
28
|
+
"version": "scripts/release/version.sh",
|
|
29
|
+
"test": ". scripts/set-max-old-space-size.sh && hardhat test",
|
|
30
|
+
"test:generation": "scripts/checks/generation.sh",
|
|
31
|
+
"test:inheritance": "npm run compile && scripts/checks/inheritance-ordering.js artifacts/build-info/*",
|
|
32
|
+
"test:pragma": "npm run compile && scripts/checks/pragma-validity.js artifacts/build-info/*",
|
|
33
|
+
"gas-report": "env ENABLE_GAS_REPORT=true npm run test",
|
|
34
|
+
"slither": "npm run clean && slither ."
|
|
35
|
+
},
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "https://github.com/OpenZeppelin/openzeppelin-contracts.git"
|
|
39
|
+
},
|
|
40
|
+
"keywords": [
|
|
41
|
+
"solidity",
|
|
42
|
+
"ethereum",
|
|
43
|
+
"smart",
|
|
44
|
+
"contracts",
|
|
45
|
+
"security",
|
|
46
|
+
"zeppelin"
|
|
47
|
+
],
|
|
48
|
+
"author": "OpenZeppelin Community <maintainers@openzeppelin.org>",
|
|
49
|
+
"license": "MIT",
|
|
50
|
+
"bugs": {
|
|
51
|
+
"url": "https://github.com/OpenZeppelin/openzeppelin-contracts/issues"
|
|
52
|
+
},
|
|
53
|
+
"homepage": "https://openzeppelin.com/contracts/",
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@changesets/changelog-github": "^0.5.0",
|
|
56
|
+
"@changesets/cli": "^2.26.0",
|
|
57
|
+
"@changesets/pre": "^2.0.0",
|
|
58
|
+
"@changesets/read": "^0.6.0",
|
|
59
|
+
"@eslint/compat": "^1.2.1",
|
|
60
|
+
"@nomicfoundation/hardhat-chai-matchers": "^2.0.6",
|
|
61
|
+
"@nomicfoundation/hardhat-ethers": "^3.0.9",
|
|
62
|
+
"@nomicfoundation/hardhat-network-helpers": "^1.0.13",
|
|
63
|
+
"@openzeppelin/docs-utils": "^0.1.5",
|
|
64
|
+
"@openzeppelin/merkle-tree": "^1.0.7",
|
|
65
|
+
"@openzeppelin/upgrade-safe-transpiler": "^0.3.32",
|
|
66
|
+
"@openzeppelin/upgrades-core": "^1.20.6",
|
|
67
|
+
"chai": "^4.2.0",
|
|
68
|
+
"eslint": "^9.0.0",
|
|
69
|
+
"eslint-config-prettier": "^10.0.0",
|
|
70
|
+
"ethers": "^6.14.0",
|
|
71
|
+
"glob": "^11.0.0",
|
|
72
|
+
"globals": "^16.0.0",
|
|
73
|
+
"graphlib": "^2.1.8",
|
|
74
|
+
"hardhat": "^2.24.3",
|
|
75
|
+
"hardhat-exposed": "^0.3.15",
|
|
76
|
+
"hardhat-gas-reporter": "^2.1.0",
|
|
77
|
+
"hardhat-ignore-warnings": "^0.2.11",
|
|
78
|
+
"husky": "^9.1.7",
|
|
79
|
+
"interoperable-addresses": "^0.1.3",
|
|
80
|
+
"lint-staged": "^16.0.0",
|
|
81
|
+
"lodash.startcase": "^4.4.0",
|
|
82
|
+
"micromatch": "^4.0.2",
|
|
83
|
+
"p-limit": "^6.0.0",
|
|
84
|
+
"prettier": "^3.0.0",
|
|
85
|
+
"prettier-plugin-solidity": "^2.0.0",
|
|
86
|
+
"rimraf": "^6.0.0",
|
|
87
|
+
"semver": "^7.3.5",
|
|
88
|
+
"solhint": "^5.0.0",
|
|
89
|
+
"solhint-plugin-openzeppelin": "file:scripts/solhint-custom",
|
|
90
|
+
"solidity-ast": "^0.4.50",
|
|
91
|
+
"solidity-coverage": "^0.8.14",
|
|
92
|
+
"solidity-docgen": "^0.6.0-beta.29",
|
|
93
|
+
"undici": "^7.4.0",
|
|
94
|
+
"yargs": "^18.0.0"
|
|
95
|
+
},
|
|
96
|
+
"lint-staged": {
|
|
97
|
+
"*.{js,ts}": [
|
|
98
|
+
"prettier --log-level warn --ignore-path .gitignore --check",
|
|
99
|
+
"eslint"
|
|
100
|
+
],
|
|
101
|
+
"*.sol": [
|
|
102
|
+
"prettier --log-level warn --ignore-path .gitignore --check",
|
|
103
|
+
"solhint"
|
|
104
|
+
]
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@openzeppelin/contracts/=contracts/
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const { getStorageUpgradeReport } = require('@openzeppelin/upgrades-core/dist/storage');
|
|
5
|
+
|
|
6
|
+
const { hideBin } = require('yargs/helpers');
|
|
7
|
+
const { argv } = require('yargs/yargs')(hideBin(process.argv))
|
|
8
|
+
.env('')
|
|
9
|
+
.options({
|
|
10
|
+
ref: { type: 'string', required: true },
|
|
11
|
+
head: { type: 'string', required: true },
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
const oldLayout = JSON.parse(fs.readFileSync(argv.ref));
|
|
15
|
+
const newLayout = JSON.parse(fs.readFileSync(argv.head));
|
|
16
|
+
|
|
17
|
+
for (const name in oldLayout) {
|
|
18
|
+
if (name in newLayout) {
|
|
19
|
+
const report = getStorageUpgradeReport(oldLayout[name], newLayout[name], {});
|
|
20
|
+
if (!report.ok) {
|
|
21
|
+
console.log(`Storage layout incompatibility found in ${name}:`);
|
|
22
|
+
console.log(report.explain());
|
|
23
|
+
process.exitCode = 1;
|
|
24
|
+
}
|
|
25
|
+
} else {
|
|
26
|
+
console.log(`WARNING: ${name} is missing from the current branch`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const fs = require('fs');
|
|
4
|
+
const chalk = require('chalk');
|
|
5
|
+
|
|
6
|
+
const { hideBin } = require('yargs/helpers');
|
|
7
|
+
const { argv } = require('yargs/yargs')(hideBin(process.argv))
|
|
8
|
+
.env('')
|
|
9
|
+
.options({
|
|
10
|
+
style: {
|
|
11
|
+
type: 'string',
|
|
12
|
+
choices: ['shell', 'markdown'],
|
|
13
|
+
default: 'shell',
|
|
14
|
+
},
|
|
15
|
+
hideEqual: {
|
|
16
|
+
type: 'boolean',
|
|
17
|
+
default: true,
|
|
18
|
+
},
|
|
19
|
+
strictTesting: {
|
|
20
|
+
type: 'boolean',
|
|
21
|
+
default: false,
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
// Deduce base tx cost from the percentage denominator
|
|
26
|
+
const BASE_TX_COST = 21000;
|
|
27
|
+
|
|
28
|
+
// Utilities
|
|
29
|
+
function sum(...args) {
|
|
30
|
+
return args.reduce((a, b) => a + b, 0);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function average(...args) {
|
|
34
|
+
return sum(...args) / args.length;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function variation(current, previous, offset = 0) {
|
|
38
|
+
return {
|
|
39
|
+
value: current,
|
|
40
|
+
delta: current - previous,
|
|
41
|
+
prcnt: (100 * (current - previous)) / (previous - offset),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Report class
|
|
46
|
+
class Report {
|
|
47
|
+
// Read report file
|
|
48
|
+
static load(filepath) {
|
|
49
|
+
return JSON.parse(fs.readFileSync(filepath, 'utf8'));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// Compare two reports
|
|
53
|
+
static compare(update, ref, opts = { hideEqual: true, strictTesting: false }) {
|
|
54
|
+
if (JSON.stringify(update.options?.solcInfo) !== JSON.stringify(ref.options?.solcInfo)) {
|
|
55
|
+
console.warn('WARNING: Reports produced with non matching metadata');
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// gasReporter 1.0.0 uses ".info", but 2.0.0 uses ".data"
|
|
59
|
+
const updateInfo = update.info ?? update.data;
|
|
60
|
+
const refInfo = ref.info ?? ref.data;
|
|
61
|
+
|
|
62
|
+
const deployments = updateInfo.deployments
|
|
63
|
+
.map(contract =>
|
|
64
|
+
Object.assign(contract, { previousVersion: refInfo.deployments.find(({ name }) => name === contract.name) }),
|
|
65
|
+
)
|
|
66
|
+
.filter(contract => contract.gasData?.length && contract.previousVersion?.gasData?.length)
|
|
67
|
+
.flatMap(contract => [
|
|
68
|
+
{
|
|
69
|
+
contract: contract.name,
|
|
70
|
+
method: '[bytecode length]',
|
|
71
|
+
avg: variation(contract.bytecode.length / 2 - 1, contract.previousVersion.bytecode.length / 2 - 1),
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
contract: contract.name,
|
|
75
|
+
method: '[construction cost]',
|
|
76
|
+
avg: variation(
|
|
77
|
+
...[contract.gasData, contract.previousVersion.gasData].map(x => Math.round(average(...x))),
|
|
78
|
+
BASE_TX_COST,
|
|
79
|
+
),
|
|
80
|
+
},
|
|
81
|
+
])
|
|
82
|
+
.sort((a, b) => `${a.contract}:${a.method}`.localeCompare(`${b.contract}:${b.method}`));
|
|
83
|
+
|
|
84
|
+
const methods = Object.keys(updateInfo.methods)
|
|
85
|
+
.filter(key => refInfo.methods[key])
|
|
86
|
+
.filter(key => updateInfo.methods[key].numberOfCalls > 0)
|
|
87
|
+
.filter(
|
|
88
|
+
key => !opts.strictTesting || updateInfo.methods[key].numberOfCalls === refInfo.methods[key].numberOfCalls,
|
|
89
|
+
)
|
|
90
|
+
.map(key => ({
|
|
91
|
+
contract: refInfo.methods[key].contract,
|
|
92
|
+
method: refInfo.methods[key].fnSig,
|
|
93
|
+
min: variation(...[updateInfo, refInfo].map(x => Math.min(...x.methods[key].gasData)), BASE_TX_COST),
|
|
94
|
+
max: variation(...[updateInfo, refInfo].map(x => Math.max(...x.methods[key].gasData)), BASE_TX_COST),
|
|
95
|
+
avg: variation(...[updateInfo, refInfo].map(x => Math.round(average(...x.methods[key].gasData))), BASE_TX_COST),
|
|
96
|
+
}))
|
|
97
|
+
.sort((a, b) => `${a.contract}:${a.method}`.localeCompare(`${b.contract}:${b.method}`));
|
|
98
|
+
|
|
99
|
+
return []
|
|
100
|
+
.concat(deployments, methods)
|
|
101
|
+
.filter(row => !opts.hideEqual || row.min?.delta || row.max?.delta || row.avg?.delta);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// Display
|
|
106
|
+
function center(text, length) {
|
|
107
|
+
return text.padStart((text.length + length) / 2).padEnd(length);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function plusSign(num) {
|
|
111
|
+
return num > 0 ? '+' : '';
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function formatCellShell(cell) {
|
|
115
|
+
const format = chalk[cell?.delta > 0 ? 'red' : cell?.delta < 0 ? 'green' : 'reset'];
|
|
116
|
+
return [
|
|
117
|
+
format((!isFinite(cell?.value) ? '-' : cell.value.toString()).padStart(8)),
|
|
118
|
+
format((!isFinite(cell?.delta) ? '-' : plusSign(cell.delta) + cell.delta.toString()).padStart(8)),
|
|
119
|
+
format((!isFinite(cell?.prcnt) ? '-' : plusSign(cell.prcnt) + cell.prcnt.toFixed(2) + '%').padStart(8)),
|
|
120
|
+
];
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function formatCmpShell(rows) {
|
|
124
|
+
const contractLength = Math.max(8, ...rows.map(({ contract }) => contract.length));
|
|
125
|
+
const methodLength = Math.max(7, ...rows.map(({ method }) => method.length));
|
|
126
|
+
|
|
127
|
+
const COLS = [
|
|
128
|
+
{ txt: '', length: 0 },
|
|
129
|
+
{ txt: 'Contract', length: contractLength },
|
|
130
|
+
{ txt: 'Method', length: methodLength },
|
|
131
|
+
{ txt: 'Min', length: 30 },
|
|
132
|
+
{ txt: 'Max', length: 30 },
|
|
133
|
+
{ txt: 'Avg', length: 30 },
|
|
134
|
+
{ txt: '', length: 0 },
|
|
135
|
+
];
|
|
136
|
+
const HEADER = COLS.map(entry => chalk.bold(center(entry.txt, entry.length || 0)))
|
|
137
|
+
.join(' | ')
|
|
138
|
+
.trim();
|
|
139
|
+
const SEPARATOR = COLS.map(({ length }) => (length > 0 ? '-'.repeat(length + 2) : ''))
|
|
140
|
+
.join('|')
|
|
141
|
+
.trim();
|
|
142
|
+
|
|
143
|
+
return [
|
|
144
|
+
'',
|
|
145
|
+
HEADER,
|
|
146
|
+
...rows.map(entry =>
|
|
147
|
+
[
|
|
148
|
+
'',
|
|
149
|
+
chalk.grey(entry.contract.padEnd(contractLength)),
|
|
150
|
+
entry.method.padEnd(methodLength),
|
|
151
|
+
...formatCellShell(entry.min),
|
|
152
|
+
...formatCellShell(entry.max),
|
|
153
|
+
...formatCellShell(entry.avg),
|
|
154
|
+
'',
|
|
155
|
+
]
|
|
156
|
+
.join(' | ')
|
|
157
|
+
.trim(),
|
|
158
|
+
),
|
|
159
|
+
'',
|
|
160
|
+
]
|
|
161
|
+
.join(`\n${SEPARATOR}\n`)
|
|
162
|
+
.trim();
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
function alignPattern(align) {
|
|
166
|
+
switch (align) {
|
|
167
|
+
case 'left':
|
|
168
|
+
case undefined:
|
|
169
|
+
return ':-';
|
|
170
|
+
case 'right':
|
|
171
|
+
return '-:';
|
|
172
|
+
case 'center':
|
|
173
|
+
return ':-:';
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function trend(value) {
|
|
178
|
+
return value > 0 ? ':x:' : value < 0 ? ':heavy_check_mark:' : ':heavy_minus_sign:';
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function formatCellMarkdown(cell) {
|
|
182
|
+
return [
|
|
183
|
+
!isFinite(cell?.value) ? '-' : cell.value.toString(),
|
|
184
|
+
!isFinite(cell?.delta) ? '-' : plusSign(cell.delta) + cell.delta.toString(),
|
|
185
|
+
!isFinite(cell?.prcnt) ? '-' : plusSign(cell.prcnt) + cell.prcnt.toFixed(2) + '% ' + trend(cell.delta),
|
|
186
|
+
];
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
function formatCmpMarkdown(rows) {
|
|
190
|
+
const COLS = [
|
|
191
|
+
{ txt: '' },
|
|
192
|
+
{ txt: 'Contract', align: 'left' },
|
|
193
|
+
{ txt: 'Method', align: 'left' },
|
|
194
|
+
{ txt: 'Min', align: 'right' },
|
|
195
|
+
{ txt: '(+/-)', align: 'right' },
|
|
196
|
+
{ txt: '%', align: 'right' },
|
|
197
|
+
{ txt: 'Max', align: 'right' },
|
|
198
|
+
{ txt: '(+/-)', align: 'right' },
|
|
199
|
+
{ txt: '%', align: 'right' },
|
|
200
|
+
{ txt: 'Avg', align: 'right' },
|
|
201
|
+
{ txt: '(+/-)', align: 'right' },
|
|
202
|
+
{ txt: '%', align: 'right' },
|
|
203
|
+
{ txt: '' },
|
|
204
|
+
];
|
|
205
|
+
const HEADER = COLS.map(entry => entry.txt)
|
|
206
|
+
.join(' | ')
|
|
207
|
+
.trim();
|
|
208
|
+
const SEPARATOR = COLS.map(entry => (entry.txt ? alignPattern(entry.align) : ''))
|
|
209
|
+
.join('|')
|
|
210
|
+
.trim();
|
|
211
|
+
|
|
212
|
+
return [
|
|
213
|
+
'# Changes to gas costs',
|
|
214
|
+
'',
|
|
215
|
+
HEADER,
|
|
216
|
+
SEPARATOR,
|
|
217
|
+
rows
|
|
218
|
+
.map(entry =>
|
|
219
|
+
[
|
|
220
|
+
'',
|
|
221
|
+
entry.contract,
|
|
222
|
+
entry.method,
|
|
223
|
+
...formatCellMarkdown(entry.min),
|
|
224
|
+
...formatCellMarkdown(entry.max),
|
|
225
|
+
...formatCellMarkdown(entry.avg),
|
|
226
|
+
'',
|
|
227
|
+
]
|
|
228
|
+
.join(' | ')
|
|
229
|
+
.trim(),
|
|
230
|
+
)
|
|
231
|
+
.join('\n'),
|
|
232
|
+
'',
|
|
233
|
+
]
|
|
234
|
+
.join('\n')
|
|
235
|
+
.trim();
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
// MAIN
|
|
239
|
+
const report = Report.compare(Report.load(argv._[0]), Report.load(argv._[1]), argv);
|
|
240
|
+
|
|
241
|
+
switch (argv.style) {
|
|
242
|
+
case 'markdown':
|
|
243
|
+
console.log(formatCmpMarkdown(report));
|
|
244
|
+
break;
|
|
245
|
+
case 'shell':
|
|
246
|
+
default:
|
|
247
|
+
console.log(formatCmpShell(report));
|
|
248
|
+
break;
|
|
249
|
+
}
|
package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/coverage.sh
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -euo pipefail
|
|
4
|
+
|
|
5
|
+
export COVERAGE=true
|
|
6
|
+
export FOUNDRY_FUZZ_RUNS=10
|
|
7
|
+
|
|
8
|
+
. scripts/set-max-old-space-size.sh
|
|
9
|
+
|
|
10
|
+
# Hardhat coverage
|
|
11
|
+
hardhat coverage
|
|
12
|
+
|
|
13
|
+
if [ "${CI:-"false"}" == "true" ]; then
|
|
14
|
+
# Foundry coverage
|
|
15
|
+
forge coverage --report lcov --ir-minimum
|
|
16
|
+
# Remove zero hits
|
|
17
|
+
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
18
|
+
sed -i '' '/,0/d' lcov.info
|
|
19
|
+
else
|
|
20
|
+
sed -i '/,0/d' lcov.info
|
|
21
|
+
fi
|
|
22
|
+
fi
|
|
23
|
+
|
|
24
|
+
# Reports are then uploaded to Codecov automatically by workflow, and merged.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
const fs = require('fs');
|
|
2
|
+
const { findAll, astDereferencer, srcDecoder } = require('solidity-ast/utils');
|
|
3
|
+
const { extractStorageLayout } = require('@openzeppelin/upgrades-core/dist/storage/extract');
|
|
4
|
+
|
|
5
|
+
const { hideBin } = require('yargs/helpers');
|
|
6
|
+
const { argv } = require('yargs/yargs')(hideBin(process.argv));
|
|
7
|
+
|
|
8
|
+
const skipPath = ['contracts/mocks/', 'contracts-exposed/'];
|
|
9
|
+
const skipKind = ['interface', 'library'];
|
|
10
|
+
|
|
11
|
+
function extractLayouts(path) {
|
|
12
|
+
const layout = {};
|
|
13
|
+
const { input, output } = JSON.parse(fs.readFileSync(path));
|
|
14
|
+
|
|
15
|
+
const decoder = srcDecoder(input, output);
|
|
16
|
+
const deref = astDereferencer(output);
|
|
17
|
+
|
|
18
|
+
for (const src in output.contracts) {
|
|
19
|
+
if (skipPath.some(prefix => src.startsWith(prefix))) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
for (const contractDef of findAll('ContractDefinition', output.sources[src].ast)) {
|
|
24
|
+
if (skipKind.includes(contractDef.contractKind)) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
layout[contractDef.name] = extractStorageLayout(
|
|
29
|
+
contractDef,
|
|
30
|
+
decoder,
|
|
31
|
+
deref,
|
|
32
|
+
output.contracts[src][contractDef.name].storageLayout,
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return layout;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
console.log(JSON.stringify(Object.assign(...argv._.map(extractLayouts))));
|