polkamarkets-js 3.4.1 → 3.4.3

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.
Files changed (318) hide show
  1. package/package.json +1 -1
  2. package/script/AddAdminToLand.s.sol +1 -1
  3. package/script/ClaimMerkleRoot.s.sol +29 -29
  4. package/script/CreateLand.s.sol +1 -1
  5. package/script/DeployMerkleRewardsDistributor.s.sol +21 -21
  6. package/script/MintTokens.s.sol +1 -1
  7. package/script/PublishMerkleRoot.s.sol +50 -50
  8. package/script/UpdateMarket.s.sol +55 -0
  9. package/script/copy-abis.js +57 -0
  10. package/src/Application.js +12 -1
  11. package/src/models/IContract.js +87 -1
  12. package/src/models/PolkamarketsSmartAccount.js +23 -0
  13. package/src/models/PredictionMarketV3Contract.js +49 -16
  14. package/abis/AccessControlUpgradeable.json +0 -1
  15. package/abis/AddAdminToLand.json +0 -1
  16. package/abis/AddressUpgradeable.json +0 -1
  17. package/abis/ClaimMerkleRoot.json +0 -1
  18. package/abis/CreateLand.json +0 -1
  19. package/abis/CreateMarkets.json +0 -1
  20. package/abis/DeployContracts.json +0 -1
  21. package/abis/DeployMerkleRewardsDistributor.json +0 -1
  22. package/abis/DeployToken.json +0 -1
  23. package/abis/DeployUSDT.json +0 -1
  24. package/abis/ECDSA.json +0 -1
  25. package/abis/ERC165Upgradeable.json +0 -1
  26. package/abis/ERC1967UpgradeUpgradeable.json +0 -1
  27. package/abis/Hashes.json +0 -1
  28. package/abis/IBeaconUpgradeable.json +0 -1
  29. package/abis/IERC1822ProxiableUpgradeable.json +0 -1
  30. package/abis/IERC20PermitUpgradeable.json +0 -1
  31. package/abis/IERC20Upgradeable.json +0 -1
  32. package/abis/Manager.json +0 -1
  33. package/abis/MerkleProof.json +0 -1
  34. package/abis/MerkleRewardsDistributor.json +0 -1
  35. package/abis/MerkleRewardsDistributorTest.json +0 -1
  36. package/abis/MessageHashUtils.json +0 -1
  37. package/abis/MintTokens.json +0 -1
  38. package/abis/Nonces.json +0 -1
  39. package/abis/Panic.json +0 -1
  40. package/abis/PublishMerkleRoot.json +0 -1
  41. package/abis/ResolveMarket.json +0 -1
  42. package/abis/RewardsDistributor.json +0 -1
  43. package/abis/RewardsDistributorTest.json +0 -1
  44. package/abis/SafeCast.json +0 -1
  45. package/abis/SafeERC20Upgradeable.json +0 -1
  46. package/abis/SignedMath.json +0 -1
  47. package/abis/StorageSlotUpgradeable.json +0 -1
  48. package/abis/TradeMarket.json +0 -1
  49. package/abis/USDT.json +0 -1
  50. package/abis/UpdateMarket.json +0 -1
  51. package/abis/UpdateTest.json +0 -1
  52. package/abis/WhaleTest.json +0 -1
  53. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +0 -22
  54. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +0 -109
  55. package/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +0 -9
  56. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +0 -25
  57. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +0 -24
  58. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +0 -23
  59. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +0 -14
  60. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +0 -16
  61. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +0 -17
  62. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +0 -20
  63. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +0 -37
  64. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +0 -80
  65. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +0 -21
  66. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +0 -32
  67. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +0 -28
  68. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +0 -21
  69. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +0 -7
  70. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +0 -11
  71. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +0 -26
  72. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +0 -19
  73. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +0 -27
  74. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +0 -15
  75. package/lib/openzeppelin-contracts/docs/README.md +0 -16
  76. package/lib/openzeppelin-contracts/docs/antora.yml +0 -7
  77. package/lib/openzeppelin-contracts/docs/config.js +0 -21
  78. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  79. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  80. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +0 -99
  81. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  82. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  83. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  84. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  85. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  86. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  87. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  88. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  89. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  90. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  91. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  92. package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +0 -29
  93. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +0 -288
  94. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  95. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +0 -354
  96. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  97. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  98. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  99. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  100. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +0 -67
  101. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  102. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  103. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +0 -58
  104. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  105. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +0 -13
  106. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +0 -239
  107. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +0 -70
  108. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +0 -306
  109. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +0 -31
  110. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  111. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +0 -591
  112. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +0 -15
  113. package/lib/openzeppelin-contracts/docs/templates/contract.hbs +0 -141
  114. package/lib/openzeppelin-contracts/docs/templates/helpers.js +0 -46
  115. package/lib/openzeppelin-contracts/docs/templates/page.hbs +0 -4
  116. package/lib/openzeppelin-contracts/docs/templates/properties.js +0 -88
  117. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC20WithAutoMinerRewardUpgradeable.sol +0 -28
  118. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC4626FeesUpgradeable.sol +0 -115
  119. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/MyNFTUpgradeable.sol +0 -14
  120. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintBaseUpgradeable.sol +0 -31
  121. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintMissingUpgradeable.sol +0 -30
  122. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRoleUpgradeable.sol +0 -29
  123. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlModifiedUpgradeable.sol +0 -20
  124. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessManagedERC20MintBaseUpgradeable.sol +0 -22
  125. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/MyContractOwnableUpgradeable.sol +0 -22
  126. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyAccountERC7702Upgradeable.sol +0 -26
  127. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyFactoryAccountUpgradeable.sol +0 -42
  128. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyGovernorUpgradeable.sol +0 -92
  129. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenTimestampBasedUpgradeable.sol +0 -39
  130. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenUpgradeable.sol +0 -28
  131. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenWrappedUpgradeable.sol +0 -39
  132. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/GameItemsUpgradeable.sol +0 -27
  133. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/MyERC115HolderContractUpgradeable.sol +0 -13
  134. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC20/GLDTokenUpgradeable.sol +0 -17
  135. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC6909/ERC6909GameItemsUpgradeable.sol +0 -31
  136. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC721/GameItemUpgradeable.sol +0 -24
  137. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/Base64NFTUpgradeable.sol +0 -32
  138. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/MulticallUpgradeable.sol +0 -21
  139. package/lib/openzeppelin-contracts-upgradeable/docs/README.md +0 -16
  140. package/lib/openzeppelin-contracts-upgradeable/docs/antora.yml +0 -7
  141. package/lib/openzeppelin-contracts-upgradeable/docs/config.js +0 -21
  142. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  143. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  144. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager.svg +0 -99
  145. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  146. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  147. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  148. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  149. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  150. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  151. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  152. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  153. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  154. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/tally-exec.png +0 -0
  155. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/tally-vote.png +0 -0
  156. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/nav.adoc +0 -29
  157. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/access-control.adoc +0 -288
  158. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  159. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/accounts.adoc +0 -354
  160. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  161. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  162. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  163. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  164. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20.adoc +0 -67
  165. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  166. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  167. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc721.adoc +0 -58
  168. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  169. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/faq.adoc +0 -13
  170. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/governance.adoc +0 -239
  171. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/index.adoc +0 -70
  172. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/multisig.adoc +0 -306
  173. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/tokens.adoc +0 -31
  174. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  175. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/utilities.adoc +0 -591
  176. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/wizard.adoc +0 -15
  177. package/lib/openzeppelin-contracts-upgradeable/docs/templates/contract.hbs +0 -141
  178. package/lib/openzeppelin-contracts-upgradeable/docs/templates/helpers.js +0 -46
  179. package/lib/openzeppelin-contracts-upgradeable/docs/templates/page.hbs +0 -4
  180. package/lib/openzeppelin-contracts-upgradeable/docs/templates/properties.js +0 -88
  181. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +0 -22
  182. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +0 -109
  183. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +0 -9
  184. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +0 -25
  185. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +0 -24
  186. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +0 -23
  187. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +0 -14
  188. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +0 -16
  189. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +0 -17
  190. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +0 -20
  191. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +0 -37
  192. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +0 -80
  193. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +0 -21
  194. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +0 -32
  195. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +0 -28
  196. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +0 -21
  197. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +0 -7
  198. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +0 -11
  199. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +0 -26
  200. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +0 -19
  201. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +0 -27
  202. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +0 -15
  203. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/README.md +0 -16
  204. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/antora.yml +0 -7
  205. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/config.js +0 -21
  206. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  207. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  208. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +0 -99
  209. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  210. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  211. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  212. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  213. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  214. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  215. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  216. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  217. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  218. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  219. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  220. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +0 -29
  221. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +0 -288
  222. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  223. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +0 -354
  224. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  225. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  226. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  227. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  228. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +0 -67
  229. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  230. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  231. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +0 -58
  232. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  233. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +0 -13
  234. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +0 -239
  235. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +0 -70
  236. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +0 -306
  237. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +0 -31
  238. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  239. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +0 -591
  240. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +0 -15
  241. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/contract.hbs +0 -141
  242. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/helpers.js +0 -46
  243. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/page.hbs +0 -4
  244. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/properties.js +0 -88
  245. package/lib/openzeppelin-contracts-upgradeable.git/docs/antora.yml +0 -6
  246. package/lib/openzeppelin-contracts-upgradeable.git/docs/config.js +0 -21
  247. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/images/tally-exec.png +0 -0
  248. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/images/tally-vote.png +0 -0
  249. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/nav.adoc +0 -23
  250. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/access-control.adoc +0 -217
  251. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  252. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  253. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/drafts.adoc +0 -19
  254. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc1155.adoc +0 -153
  255. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc20-supply.adoc +0 -113
  256. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc20.adoc +0 -85
  257. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc721.adoc +0 -90
  258. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc777.adoc +0 -73
  259. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/extending-contracts.adoc +0 -129
  260. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/governance.adoc +0 -321
  261. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/index.adoc +0 -63
  262. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  263. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/tokens.adoc +0 -32
  264. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/upgradeable.adoc +0 -73
  265. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/utilities.adoc +0 -190
  266. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/wizard.adoc +0 -15
  267. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/contract.hbs +0 -85
  268. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/helpers.js +0 -46
  269. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/page.hbs +0 -4
  270. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/properties.js +0 -49
  271. package/lib/openzeppelin-contracts.git/docs/antora.yml +0 -6
  272. package/lib/openzeppelin-contracts.git/docs/config.js +0 -21
  273. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/images/tally-exec.png +0 -0
  274. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/images/tally-vote.png +0 -0
  275. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/nav.adoc +0 -23
  276. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/access-control.adoc +0 -217
  277. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  278. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  279. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/drafts.adoc +0 -19
  280. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc1155.adoc +0 -153
  281. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc20-supply.adoc +0 -113
  282. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc20.adoc +0 -85
  283. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc721.adoc +0 -90
  284. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc777.adoc +0 -73
  285. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/extending-contracts.adoc +0 -129
  286. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/governance.adoc +0 -321
  287. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/index.adoc +0 -63
  288. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  289. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/tokens.adoc +0 -32
  290. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/upgradeable.adoc +0 -73
  291. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/utilities.adoc +0 -190
  292. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/wizard.adoc +0 -15
  293. package/lib/openzeppelin-contracts.git/docs/templates/contract.hbs +0 -85
  294. package/lib/openzeppelin-contracts.git/docs/templates/helpers.js +0 -46
  295. package/lib/openzeppelin-contracts.git/docs/templates/page.hbs +0 -4
  296. package/lib/openzeppelin-contracts.git/docs/templates/properties.js +0 -49
  297. package/lib/reality-eth-monorepo/packages/docs/Audit_Reality_v3_202108.pdf +0 -0
  298. package/lib/reality-eth-monorepo/packages/docs/Makefile +0 -20
  299. package/lib/reality-eth-monorepo/packages/docs/arbitrators.rst +0 -85
  300. package/lib/reality-eth-monorepo/packages/docs/audit.rst +0 -12
  301. package/lib/reality-eth-monorepo/packages/docs/audit_v2.rst +0 -249
  302. package/lib/reality-eth-monorepo/packages/docs/audit_v2_ERC20.rst +0 -1075
  303. package/lib/reality-eth-monorepo/packages/docs/audit_v3.rst +0 -70
  304. package/lib/reality-eth-monorepo/packages/docs/conf.py +0 -155
  305. package/lib/reality-eth-monorepo/packages/docs/contract_explanation.rst +0 -82
  306. package/lib/reality-eth-monorepo/packages/docs/contracts.rst +0 -277
  307. package/lib/reality-eth-monorepo/packages/docs/dapp.rst +0 -126
  308. package/lib/reality-eth-monorepo/packages/docs/dapp_links.rst +0 -67
  309. package/lib/reality-eth-monorepo/packages/docs/fees.rst +0 -89
  310. package/lib/reality-eth-monorepo/packages/docs/index.rst +0 -26
  311. package/lib/reality-eth-monorepo/packages/docs/javascript.rst +0 -142
  312. package/lib/reality-eth-monorepo/packages/docs/make.bat +0 -36
  313. package/lib/reality-eth-monorepo/packages/docs/question_box.png +0 -0
  314. package/lib/reality-eth-monorepo/packages/docs/requirements.txt +0 -24
  315. package/lib/reality-eth-monorepo/packages/docs/whitepaper.rst +0 -165
  316. package/test/UpdateTest.t.sol +0 -55
  317. package/test/WhaleTest.t.sol +0 -188
  318. package/tooling/docs/jsdoc.json +0 -6
@@ -1,15 +0,0 @@
1
- = Contracts Wizard
2
- :page-notoc:
3
-
4
- Not sure where to start? Use the interactive generator below to bootstrap your
5
- contract and learn about the components offered in OpenZeppelin Contracts.
6
-
7
- TIP: Place the resulting contract in your `contracts` or `src` directory in order to compile it with a tool like Hardhat or Foundry. Consider reading our guide on xref:learn::developing-smart-contracts.adoc[Developing Smart Contracts] for more guidance!
8
-
9
- ++++
10
- <script async src="https://wizard.openzeppelin.com/build/embed.js"></script>
11
-
12
- <oz-wizard style="display: block; min-height: 40rem;"></oz-wizard>
13
- ++++
14
-
15
-
@@ -1,141 +0,0 @@
1
- {{#each items}}
2
- :{{name}}: pass:normal[xref:#{{anchor}}[`++{{name}}++`]]
3
- {{/each}}
4
-
5
- {{#each functions}}
6
- :{{fullname}}: pass:normal[xref:#{{anchor}}[`++{{name}}++`]]
7
- {{/each}}
8
-
9
- [.contract]
10
- [[{{anchor}}]]
11
- === `++{{name}}++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v{{oz-version}}/{{__item_context.file.absolutePath}}[{github-icon},role=heading-link]
12
-
13
- [.hljs-theme-light.nopadding]
14
- ```solidity
15
- import "@openzeppelin/{{__item_context.file.absolutePath}}";
16
- ```
17
-
18
- {{{natspec.dev}}}
19
-
20
- {{#if modifiers}}
21
- [.contract-index]
22
- .Modifiers
23
- --
24
- {{#each modifiers}}
25
- * {xref-{{anchor~}} }[`++{{name}}({{names params}})++`]
26
- {{/each}}
27
- --
28
- {{/if}}
29
-
30
- {{#if has-functions}}
31
- [.contract-index]
32
- .Functions
33
- --
34
- {{#each inherited-functions}}
35
- {{#unless @first}}
36
- [.contract-subindex-inherited]
37
- .{{contract.name}}
38
- {{/unless}}
39
- {{#each functions}}
40
- * {xref-{{anchor~}} }[`++{{name}}({{names params}})++`]
41
- {{/each}}
42
-
43
- {{/each}}
44
- --
45
- {{/if}}
46
-
47
- {{#if has-events}}
48
- [.contract-index]
49
- .Events
50
- --
51
- {{#each inheritance}}
52
- {{#unless @first}}
53
- [.contract-subindex-inherited]
54
- .{{name}}
55
- {{/unless}}
56
- {{#each events}}
57
- * {xref-{{anchor~}} }[`++{{name}}({{names params}})++`]
58
- {{/each}}
59
-
60
- {{/each}}
61
- --
62
- {{/if}}
63
-
64
- {{#if has-errors}}
65
- [.contract-index]
66
- .Errors
67
- --
68
- {{#each inheritance}}
69
- {{#unless @first}}
70
- [.contract-subindex-inherited]
71
- .{{name}}
72
- {{/unless}}
73
- {{#each errors}}
74
- * {xref-{{anchor~}} }[`++{{name}}({{names params}})++`]
75
- {{/each}}
76
-
77
- {{/each}}
78
- --
79
- {{/if}}
80
-
81
- {{#if has-internal-variables}}
82
- [.contract-index]
83
- .Internal Variables
84
- --
85
- {{#each inheritance}}
86
- {{#unless @first}}
87
- [.contract-subindex-inherited]
88
- .{{name}}
89
- {{/unless}}
90
- {{#each internal-variables}}
91
- * {xref-{{anchor~}} }[`++{{typeDescriptions.typeString}} {{#if constant}}constant{{/if}} {{name}}++`]
92
- {{/each}}
93
-
94
- {{/each}}
95
- --
96
- {{/if}}
97
-
98
- {{#each modifiers}}
99
- [.contract-item]
100
- [[{{anchor}}]]
101
- ==== `[.contract-item-name]#++{{name}}++#++({{typed-params params}})++` [.item-kind]#modifier#
102
-
103
- {{{natspec.dev}}}
104
-
105
- {{/each}}
106
-
107
- {{#each functions}}
108
- [.contract-item]
109
- [[{{anchor}}]]
110
- ==== `[.contract-item-name]#++{{name}}++#++({{typed-params params}}){{#if returns2}} → {{typed-params returns2}}{{/if}}++` [.item-kind]#{{visibility}}#
111
-
112
- {{{natspec.dev}}}
113
-
114
- {{/each}}
115
-
116
- {{#each events}}
117
- [.contract-item]
118
- [[{{anchor}}]]
119
- ==== `[.contract-item-name]#++{{name}}++#++({{typed-params params}})++` [.item-kind]#event#
120
-
121
- {{{natspec.dev}}}
122
-
123
- {{/each}}
124
-
125
- {{#each errors}}
126
- [.contract-item]
127
- [[{{anchor}}]]
128
- ==== `[.contract-item-name]#++{{name}}++#++({{typed-params params}})++` [.item-kind]#error#
129
-
130
- {{{natspec.dev}}}
131
-
132
- {{/each}}
133
-
134
- {{#each internal-variables}}
135
- [.contract-item]
136
- [[{{anchor}}]]
137
- ==== `{{typeDescriptions.typeString}} [.contract-item-name]#++{{name}}++#` [.item-kind]#internal{{#if constant}} constant{{/if}}#
138
-
139
- {{{natspec.dev}}}
140
-
141
- {{/each}}
@@ -1,46 +0,0 @@
1
- const { version } = require('../../package.json');
2
-
3
- module.exports['oz-version'] = () => version;
4
-
5
- module.exports['readme-path'] = opts => {
6
- return 'contracts/' + opts.data.root.id.replace(/\.adoc$/, '') + '/README.adoc';
7
- };
8
-
9
- module.exports.names = params => params?.map(p => p.name).join(', ');
10
-
11
- module.exports['typed-params'] = params => {
12
- return params?.map(p => `${p.type}${p.indexed ? ' indexed' : ''}${p.name ? ' ' + p.name : ''}`).join(', ');
13
- };
14
-
15
- const slug = (module.exports.slug = str => {
16
- if (str === undefined) {
17
- throw new Error('Missing argument');
18
- }
19
- return str.replace(/\W/g, '-');
20
- });
21
-
22
- const linksCache = new WeakMap();
23
-
24
- function getAllLinks(items) {
25
- if (linksCache.has(items)) {
26
- return linksCache.get(items);
27
- }
28
- const res = {};
29
- linksCache.set(items, res);
30
- for (const item of items) {
31
- res[`xref-${item.anchor}`] = `xref:${item.__item_context.page}#${item.anchor}`;
32
- res[slug(item.fullName)] = `pass:normal[xref:${item.__item_context.page}#${item.anchor}[\`${item.fullName}\`]]`;
33
- }
34
- return res;
35
- }
36
-
37
- module.exports['with-prelude'] = opts => {
38
- const links = getAllLinks(opts.data.site.items);
39
- const contents = opts.fn();
40
- const neededLinks = contents
41
- .match(/\{[-._a-z0-9]+\}/gi)
42
- .map(m => m.replace(/^\{(.+)\}$/, '$1'))
43
- .filter(k => k in links);
44
- const prelude = neededLinks.map(k => `:${k}: ${links[k]}`).join('\n');
45
- return prelude + '\n' + contents;
46
- };
@@ -1,4 +0,0 @@
1
- :github-icon: pass:[<svg class="icon"><use href="#github-icon"/></svg>]
2
- {{#with-prelude}}
3
- {{readme (readme-path)}}
4
- {{/with-prelude}}
@@ -1,88 +0,0 @@
1
- const { isNodeType, findAll } = require('solidity-ast/utils');
2
- const { slug } = require('./helpers');
3
-
4
- module.exports.anchor = function anchor({ item, contract }) {
5
- let res = '';
6
- if (contract) {
7
- res += contract.name + '-';
8
- }
9
- res += item.name;
10
- if ('parameters' in item) {
11
- const signature = item.parameters.parameters.map(v => v.typeName.typeDescriptions.typeString).join(',');
12
- res += slug('(' + signature + ')');
13
- }
14
- if (isNodeType('VariableDeclaration', item)) {
15
- res += '-' + slug(item.typeName.typeDescriptions.typeString);
16
- }
17
- return res;
18
- };
19
-
20
- module.exports.fullname = function fullname({ item }) {
21
- let res = '';
22
- res += item.name;
23
- if ('parameters' in item) {
24
- const signature = item.parameters.parameters.map(v => v.typeName.typeDescriptions.typeString).join(',');
25
- res += slug('(' + signature + ')');
26
- }
27
- if (isNodeType('VariableDeclaration', item)) {
28
- res += '-' + slug(item.typeName.typeDescriptions.typeString);
29
- }
30
- if (res.charAt(res.length - 1) === '-') {
31
- return res.slice(0, -1);
32
- }
33
- return res;
34
- };
35
-
36
- module.exports.inheritance = function ({ item, build }) {
37
- if (!isNodeType('ContractDefinition', item)) {
38
- throw new Error('used inherited-items on non-contract');
39
- }
40
-
41
- return item.linearizedBaseContracts
42
- .map(id => build.deref('ContractDefinition', id))
43
- .filter((c, i) => c.name !== 'Context' || i === 0);
44
- };
45
-
46
- module.exports['has-functions'] = function ({ item }) {
47
- return item.inheritance.some(c => c.functions.length > 0);
48
- };
49
-
50
- module.exports['has-events'] = function ({ item }) {
51
- return item.inheritance.some(c => c.events.length > 0);
52
- };
53
-
54
- module.exports['has-errors'] = function ({ item }) {
55
- return item.inheritance.some(c => c.errors.length > 0);
56
- };
57
-
58
- module.exports['internal-variables'] = function ({ item }) {
59
- return item.variables.filter(({ visibility }) => visibility === 'internal');
60
- };
61
-
62
- module.exports['has-internal-variables'] = function ({ item }) {
63
- return module.exports['internal-variables']({ item }).length > 0;
64
- };
65
-
66
- module.exports.functions = function ({ item }) {
67
- return [
68
- ...[...findAll('FunctionDefinition', item)].filter(f => f.visibility !== 'private'),
69
- ...[...findAll('VariableDeclaration', item)].filter(f => f.visibility === 'public'),
70
- ];
71
- };
72
-
73
- module.exports.returns2 = function ({ item }) {
74
- if (isNodeType('VariableDeclaration', item)) {
75
- return [{ type: item.typeDescriptions.typeString }];
76
- } else {
77
- return item.returns;
78
- }
79
- };
80
-
81
- module.exports['inherited-functions'] = function ({ item }) {
82
- const { inheritance } = item;
83
- const baseFunctions = new Set(inheritance.flatMap(c => c.functions.flatMap(f => f.baseFunctions ?? [])));
84
- return inheritance.map((contract, i) => ({
85
- contract,
86
- functions: contract.functions.filter(f => !baseFunctions.has(f.id) && (f.name !== 'constructor' || i === 0)),
87
- }));
88
- };
@@ -1,28 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {ERC20Upgradeable} from "../../token/ERC20/ERC20Upgradeable.sol";
6
- import {Initializable} from "../../proxy/utils/Initializable.sol";
7
-
8
- contract ERC20WithAutoMinerRewardUpgradeable is Initializable, ERC20Upgradeable {
9
- function __ERC20WithAutoMinerReward_init() internal onlyInitializing {
10
- __ERC20_init_unchained("Reward", "RWD");
11
- __ERC20WithAutoMinerReward_init_unchained();
12
- }
13
-
14
- function __ERC20WithAutoMinerReward_init_unchained() internal onlyInitializing {
15
- _mintMinerReward();
16
- }
17
-
18
- function _mintMinerReward() internal {
19
- _mint(block.coinbase, 1000);
20
- }
21
-
22
- function _update(address from, address to, uint256 value) internal virtual override {
23
- if (!(from == address(0) && to == block.coinbase)) {
24
- _mintMinerReward();
25
- }
26
- super._update(from, to, value);
27
- }
28
- }
@@ -1,115 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
6
- import {ERC4626Upgradeable} from "../../token/ERC20/extensions/ERC4626Upgradeable.sol";
7
- import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
8
- import {Math} from "@openzeppelin/contracts/utils/math/Math.sol";
9
- import {Initializable} from "../../proxy/utils/Initializable.sol";
10
-
11
- /// @dev ERC-4626 vault with entry/exit fees expressed in https://en.wikipedia.org/wiki/Basis_point[basis point (bp)].
12
- ///
13
- /// NOTE: The contract charges fees in terms of assets, not shares. This means that the fees are calculated based on the
14
- /// amount of assets that are being deposited or withdrawn, and not based on the amount of shares that are being minted or
15
- /// redeemed. This is an opinionated design decision that should be taken into account when integrating this contract.
16
- ///
17
- /// WARNING: This contract has not been audited and shouldn't be considered production ready. Consider using it with caution.
18
- abstract contract ERC4626FeesUpgradeable is Initializable, ERC4626Upgradeable {
19
- using Math for uint256;
20
-
21
- uint256 private constant _BASIS_POINT_SCALE = 1e4;
22
-
23
- function __ERC4626Fees_init() internal onlyInitializing {
24
- }
25
-
26
- function __ERC4626Fees_init_unchained() internal onlyInitializing {
27
- }
28
- // === Overrides ===
29
-
30
- /// @dev Preview taking an entry fee on deposit. See {IERC4626-previewDeposit}.
31
- function previewDeposit(uint256 assets) public view virtual override returns (uint256) {
32
- uint256 fee = _feeOnTotal(assets, _entryFeeBasisPoints());
33
- return super.previewDeposit(assets - fee);
34
- }
35
-
36
- /// @dev Preview adding an entry fee on mint. See {IERC4626-previewMint}.
37
- function previewMint(uint256 shares) public view virtual override returns (uint256) {
38
- uint256 assets = super.previewMint(shares);
39
- return assets + _feeOnRaw(assets, _entryFeeBasisPoints());
40
- }
41
-
42
- /// @dev Preview adding an exit fee on withdraw. See {IERC4626-previewWithdraw}.
43
- function previewWithdraw(uint256 assets) public view virtual override returns (uint256) {
44
- uint256 fee = _feeOnRaw(assets, _exitFeeBasisPoints());
45
- return super.previewWithdraw(assets + fee);
46
- }
47
-
48
- /// @dev Preview taking an exit fee on redeem. See {IERC4626-previewRedeem}.
49
- function previewRedeem(uint256 shares) public view virtual override returns (uint256) {
50
- uint256 assets = super.previewRedeem(shares);
51
- return assets - _feeOnTotal(assets, _exitFeeBasisPoints());
52
- }
53
-
54
- /// @dev Send entry fee to {_entryFeeRecipient}. See {IERC4626-_deposit}.
55
- function _deposit(address caller, address receiver, uint256 assets, uint256 shares) internal virtual override {
56
- uint256 fee = _feeOnTotal(assets, _entryFeeBasisPoints());
57
- address recipient = _entryFeeRecipient();
58
-
59
- super._deposit(caller, receiver, assets, shares);
60
-
61
- if (fee > 0 && recipient != address(this)) {
62
- SafeERC20.safeTransfer(IERC20(asset()), recipient, fee);
63
- }
64
- }
65
-
66
- /// @dev Send exit fee to {_exitFeeRecipient}. See {IERC4626-_deposit}.
67
- function _withdraw(
68
- address caller,
69
- address receiver,
70
- address owner,
71
- uint256 assets,
72
- uint256 shares
73
- ) internal virtual override {
74
- uint256 fee = _feeOnRaw(assets, _exitFeeBasisPoints());
75
- address recipient = _exitFeeRecipient();
76
-
77
- super._withdraw(caller, receiver, owner, assets, shares);
78
-
79
- if (fee > 0 && recipient != address(this)) {
80
- SafeERC20.safeTransfer(IERC20(asset()), recipient, fee);
81
- }
82
- }
83
-
84
- // === Fee configuration ===
85
-
86
- function _entryFeeBasisPoints() internal view virtual returns (uint256) {
87
- return 0; // replace with e.g. 100 for 1%
88
- }
89
-
90
- function _exitFeeBasisPoints() internal view virtual returns (uint256) {
91
- return 0; // replace with e.g. 100 for 1%
92
- }
93
-
94
- function _entryFeeRecipient() internal view virtual returns (address) {
95
- return address(0); // replace with e.g. a treasury address
96
- }
97
-
98
- function _exitFeeRecipient() internal view virtual returns (address) {
99
- return address(0); // replace with e.g. a treasury address
100
- }
101
-
102
- // === Fee operations ===
103
-
104
- /// @dev Calculates the fees that should be added to an amount `assets` that does not already include fees.
105
- /// Used in {IERC4626-mint} and {IERC4626-withdraw} operations.
106
- function _feeOnRaw(uint256 assets, uint256 feeBasisPoints) private pure returns (uint256) {
107
- return assets.mulDiv(feeBasisPoints, _BASIS_POINT_SCALE, Math.Rounding.Ceil);
108
- }
109
-
110
- /// @dev Calculates the fee part of an amount `assets` that already includes fees.
111
- /// Used in {IERC4626-deposit} and {IERC4626-redeem} operations.
112
- function _feeOnTotal(uint256 assets, uint256 feeBasisPoints) private pure returns (uint256) {
113
- return assets.mulDiv(feeBasisPoints, feeBasisPoints + _BASIS_POINT_SCALE, Math.Rounding.Ceil);
114
- }
115
- }
@@ -1,14 +0,0 @@
1
- // contracts/MyNFT.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {ERC721Upgradeable} from "../../token/ERC721/ERC721Upgradeable.sol";
6
- import {Initializable} from "../../proxy/utils/Initializable.sol";
7
-
8
- contract MyNFTUpgradeable is Initializable, ERC721Upgradeable {
9
- function __MyNFT_init() internal onlyInitializing {
10
- __ERC721_init_unchained("MyNFT", "MNFT");
11
- }
12
-
13
- function __MyNFT_init_unchained() internal onlyInitializing {}
14
- }
@@ -1,31 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControlUpgradeable} from "../../../access/AccessControlUpgradeable.sol";
5
- import {ERC20Upgradeable} from "../../../token/ERC20/ERC20Upgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract AccessControlERC20MintBaseUpgradeable is Initializable, ERC20Upgradeable, AccessControlUpgradeable {
9
- // Create a new role identifier for the minter role
10
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
11
-
12
- error CallerNotMinter(address caller);
13
-
14
- function __AccessControlERC20MintBase_init(address minter) internal onlyInitializing {
15
- __ERC20_init_unchained("MyToken", "TKN");
16
- __AccessControlERC20MintBase_init_unchained(minter);
17
- }
18
-
19
- function __AccessControlERC20MintBase_init_unchained(address minter) internal onlyInitializing {
20
- // Grant the minter role to a specified account
21
- _grantRole(MINTER_ROLE, minter);
22
- }
23
-
24
- function mint(address to, uint256 amount) public {
25
- // Check that the calling account has the minter role
26
- if (!hasRole(MINTER_ROLE, msg.sender)) {
27
- revert CallerNotMinter(msg.sender);
28
- }
29
- _mint(to, amount);
30
- }
31
- }
@@ -1,30 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControlUpgradeable} from "../../../access/AccessControlUpgradeable.sol";
5
- import {ERC20Upgradeable} from "../../../token/ERC20/ERC20Upgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract AccessControlERC20MintMissingUpgradeable is Initializable, ERC20Upgradeable, AccessControlUpgradeable {
9
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
10
- bytes32 public constant BURNER_ROLE = keccak256("BURNER_ROLE");
11
-
12
- function __AccessControlERC20MintMissing_init() internal onlyInitializing {
13
- __ERC20_init_unchained("MyToken", "TKN");
14
- __AccessControlERC20MintMissing_init_unchained();
15
- }
16
-
17
- function __AccessControlERC20MintMissing_init_unchained() internal onlyInitializing {
18
- // Grant the contract deployer the default admin role: it will be able
19
- // to grant and revoke any roles
20
- _grantRole(DEFAULT_ADMIN_ROLE, msg.sender);
21
- }
22
-
23
- function mint(address to, uint256 amount) public onlyRole(MINTER_ROLE) {
24
- _mint(to, amount);
25
- }
26
-
27
- function burn(address from, uint256 amount) public onlyRole(BURNER_ROLE) {
28
- _burn(from, amount);
29
- }
30
- }
@@ -1,29 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControlUpgradeable} from "../../../access/AccessControlUpgradeable.sol";
5
- import {ERC20Upgradeable} from "../../../token/ERC20/ERC20Upgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract AccessControlERC20MintUpgradeable is Initializable, ERC20Upgradeable, AccessControlUpgradeable {
9
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
10
- bytes32 public constant BURNER_ROLE = keccak256("BURNER_ROLE");
11
-
12
- function __AccessControlERC20Mint_init(address minter, address burner) internal onlyInitializing {
13
- __ERC20_init_unchained("MyToken", "TKN");
14
- __AccessControlERC20Mint_init_unchained(minter, burner);
15
- }
16
-
17
- function __AccessControlERC20Mint_init_unchained(address minter, address burner) internal onlyInitializing {
18
- _grantRole(MINTER_ROLE, minter);
19
- _grantRole(BURNER_ROLE, burner);
20
- }
21
-
22
- function mint(address to, uint256 amount) public onlyRole(MINTER_ROLE) {
23
- _mint(to, amount);
24
- }
25
-
26
- function burn(address from, uint256 amount) public onlyRole(BURNER_ROLE) {
27
- _burn(from, amount);
28
- }
29
- }
@@ -1,20 +0,0 @@
1
- // contracts/AccessControlModified.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {AccessControlUpgradeable} from "../../../access/AccessControlUpgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract AccessControlModifiedUpgradeable is Initializable, AccessControlUpgradeable {
9
- error AccessControlNonRevocable();
10
-
11
- function __AccessControlModified_init() internal onlyInitializing {
12
- }
13
-
14
- function __AccessControlModified_init_unchained() internal onlyInitializing {
15
- }
16
- // Override the revokeRole function
17
- function revokeRole(bytes32, address) public pure override {
18
- revert AccessControlNonRevocable();
19
- }
20
- }
@@ -1,22 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessManagedUpgradeable} from "../../../access/manager/AccessManagedUpgradeable.sol";
5
- import {ERC20Upgradeable} from "../../../token/ERC20/ERC20Upgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract AccessManagedERC20MintUpgradeable is Initializable, ERC20Upgradeable, AccessManagedUpgradeable {
9
- function __AccessManagedERC20Mint_init(address manager) internal onlyInitializing {
10
- __ERC20_init_unchained("MyToken", "TKN");
11
- __AccessManaged_init_unchained(manager);
12
- }
13
-
14
- function __AccessManagedERC20Mint_init_unchained(address) internal onlyInitializing {}
15
-
16
- // Minting is restricted according to the manager rules for this function.
17
- // The function is identified by its selector: 0x40c10f19.
18
- // Calculated with bytes4(keccak256('mint(address,uint256)'))
19
- function mint(address to, uint256 amount) public restricted {
20
- _mint(to, amount);
21
- }
22
- }
@@ -1,22 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {OwnableUpgradeable} from "../../../access/OwnableUpgradeable.sol";
6
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
7
-
8
- contract MyContractUpgradeable is Initializable, OwnableUpgradeable {
9
- function __MyContract_init(address initialOwner) internal onlyInitializing {
10
- __Ownable_init_unchained(initialOwner);
11
- }
12
-
13
- function __MyContract_init_unchained(address) internal onlyInitializing {}
14
-
15
- function normalThing() public {
16
- // anyone can call this normalThing()
17
- }
18
-
19
- function specialThing() public onlyOwner {
20
- // only the owner can call specialThing()!
21
- }
22
- }
@@ -1,26 +0,0 @@
1
- // contracts/MyAccountERC7702.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {Account} from "@openzeppelin/contracts/account/Account.sol";
6
- import {ERC721HolderUpgradeable} from "../../../token/ERC721/utils/ERC721HolderUpgradeable.sol";
7
- import {ERC1155HolderUpgradeable} from "../../../token/ERC1155/utils/ERC1155HolderUpgradeable.sol";
8
- import {ERC7821} from "@openzeppelin/contracts/account/extensions/draft-ERC7821.sol";
9
- import {SignerERC7702} from "@openzeppelin/contracts/utils/cryptography/signers/SignerERC7702.sol";
10
- import {Initializable} from "../../../proxy/utils/Initializable.sol";
11
-
12
- contract MyAccountERC7702Upgradeable is Initializable, Account, SignerERC7702, ERC7821, ERC721HolderUpgradeable, ERC1155HolderUpgradeable {
13
- function __MyAccountERC7702_init() internal onlyInitializing {
14
- }
15
-
16
- function __MyAccountERC7702_init_unchained() internal onlyInitializing {
17
- }
18
- /// @dev Allows the entry point as an authorized executor.
19
- function _erc7821AuthorizedExecutor(
20
- address caller,
21
- bytes32 mode,
22
- bytes calldata executionData
23
- ) internal view virtual override returns (bool) {
24
- return caller == address(entryPoint()) || super._erc7821AuthorizedExecutor(caller, mode, executionData);
25
- }
26
- }