polkamarkets-js 3.4.1 → 3.4.2

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 (319) hide show
  1. package/package.json +1 -1
  2. package/src/models/PredictionMarketV3Contract.js +49 -16
  3. package/abis/AccessControlUpgradeable.json +0 -1
  4. package/abis/AddAdminToLand.json +0 -1
  5. package/abis/AddressUpgradeable.json +0 -1
  6. package/abis/ClaimMerkleRoot.json +0 -1
  7. package/abis/CreateLand.json +0 -1
  8. package/abis/CreateMarkets.json +0 -1
  9. package/abis/DeployContracts.json +0 -1
  10. package/abis/DeployMerkleRewardsDistributor.json +0 -1
  11. package/abis/DeployToken.json +0 -1
  12. package/abis/DeployUSDT.json +0 -1
  13. package/abis/ECDSA.json +0 -1
  14. package/abis/ERC165Upgradeable.json +0 -1
  15. package/abis/ERC1967UpgradeUpgradeable.json +0 -1
  16. package/abis/Hashes.json +0 -1
  17. package/abis/IBeaconUpgradeable.json +0 -1
  18. package/abis/IERC1822ProxiableUpgradeable.json +0 -1
  19. package/abis/IERC20PermitUpgradeable.json +0 -1
  20. package/abis/IERC20Upgradeable.json +0 -1
  21. package/abis/Manager.json +0 -1
  22. package/abis/MerkleProof.json +0 -1
  23. package/abis/MerkleRewardsDistributor.json +0 -1
  24. package/abis/MerkleRewardsDistributorTest.json +0 -1
  25. package/abis/MessageHashUtils.json +0 -1
  26. package/abis/MintTokens.json +0 -1
  27. package/abis/Nonces.json +0 -1
  28. package/abis/Panic.json +0 -1
  29. package/abis/PublishMerkleRoot.json +0 -1
  30. package/abis/ResolveMarket.json +0 -1
  31. package/abis/RewardsDistributor.json +0 -1
  32. package/abis/RewardsDistributorTest.json +0 -1
  33. package/abis/SafeCast.json +0 -1
  34. package/abis/SafeERC20Upgradeable.json +0 -1
  35. package/abis/SignedMath.json +0 -1
  36. package/abis/StorageSlotUpgradeable.json +0 -1
  37. package/abis/TradeMarket.json +0 -1
  38. package/abis/USDT.json +0 -1
  39. package/abis/UpdateMarket.json +0 -1
  40. package/abis/UpdateTest.json +0 -1
  41. package/abis/WhaleTest.json +0 -1
  42. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +0 -22
  43. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +0 -109
  44. package/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +0 -9
  45. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +0 -25
  46. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +0 -24
  47. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +0 -23
  48. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +0 -14
  49. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +0 -16
  50. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +0 -17
  51. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +0 -20
  52. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +0 -37
  53. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +0 -80
  54. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +0 -21
  55. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +0 -32
  56. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +0 -28
  57. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +0 -21
  58. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +0 -7
  59. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +0 -11
  60. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +0 -26
  61. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +0 -19
  62. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +0 -27
  63. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +0 -15
  64. package/lib/openzeppelin-contracts/docs/README.md +0 -16
  65. package/lib/openzeppelin-contracts/docs/antora.yml +0 -7
  66. package/lib/openzeppelin-contracts/docs/config.js +0 -21
  67. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  68. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  69. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +0 -99
  70. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  71. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  72. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  73. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  74. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  75. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  76. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  77. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  78. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  79. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  80. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  81. package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +0 -29
  82. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +0 -288
  83. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  84. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +0 -354
  85. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  86. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  87. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  88. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  89. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +0 -67
  90. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  91. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  92. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +0 -58
  93. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  94. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +0 -13
  95. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +0 -239
  96. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +0 -70
  97. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +0 -306
  98. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +0 -31
  99. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  100. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +0 -591
  101. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +0 -15
  102. package/lib/openzeppelin-contracts/docs/templates/contract.hbs +0 -141
  103. package/lib/openzeppelin-contracts/docs/templates/helpers.js +0 -46
  104. package/lib/openzeppelin-contracts/docs/templates/page.hbs +0 -4
  105. package/lib/openzeppelin-contracts/docs/templates/properties.js +0 -88
  106. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC20WithAutoMinerRewardUpgradeable.sol +0 -28
  107. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC4626FeesUpgradeable.sol +0 -115
  108. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/MyNFTUpgradeable.sol +0 -14
  109. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintBaseUpgradeable.sol +0 -31
  110. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintMissingUpgradeable.sol +0 -30
  111. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRoleUpgradeable.sol +0 -29
  112. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlModifiedUpgradeable.sol +0 -20
  113. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessManagedERC20MintBaseUpgradeable.sol +0 -22
  114. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/MyContractOwnableUpgradeable.sol +0 -22
  115. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyAccountERC7702Upgradeable.sol +0 -26
  116. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyFactoryAccountUpgradeable.sol +0 -42
  117. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyGovernorUpgradeable.sol +0 -92
  118. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenTimestampBasedUpgradeable.sol +0 -39
  119. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenUpgradeable.sol +0 -28
  120. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenWrappedUpgradeable.sol +0 -39
  121. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/GameItemsUpgradeable.sol +0 -27
  122. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/MyERC115HolderContractUpgradeable.sol +0 -13
  123. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC20/GLDTokenUpgradeable.sol +0 -17
  124. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC6909/ERC6909GameItemsUpgradeable.sol +0 -31
  125. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC721/GameItemUpgradeable.sol +0 -24
  126. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/Base64NFTUpgradeable.sol +0 -32
  127. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/MulticallUpgradeable.sol +0 -21
  128. package/lib/openzeppelin-contracts-upgradeable/docs/README.md +0 -16
  129. package/lib/openzeppelin-contracts-upgradeable/docs/antora.yml +0 -7
  130. package/lib/openzeppelin-contracts-upgradeable/docs/config.js +0 -21
  131. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  132. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  133. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager.svg +0 -99
  134. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  135. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  136. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  137. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  138. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  139. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  140. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  141. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  142. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  143. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/tally-exec.png +0 -0
  144. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/tally-vote.png +0 -0
  145. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/nav.adoc +0 -29
  146. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/access-control.adoc +0 -288
  147. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  148. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/accounts.adoc +0 -354
  149. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  150. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  151. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  152. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  153. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20.adoc +0 -67
  154. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  155. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  156. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc721.adoc +0 -58
  157. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  158. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/faq.adoc +0 -13
  159. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/governance.adoc +0 -239
  160. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/index.adoc +0 -70
  161. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/multisig.adoc +0 -306
  162. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/tokens.adoc +0 -31
  163. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  164. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/utilities.adoc +0 -591
  165. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/wizard.adoc +0 -15
  166. package/lib/openzeppelin-contracts-upgradeable/docs/templates/contract.hbs +0 -141
  167. package/lib/openzeppelin-contracts-upgradeable/docs/templates/helpers.js +0 -46
  168. package/lib/openzeppelin-contracts-upgradeable/docs/templates/page.hbs +0 -4
  169. package/lib/openzeppelin-contracts-upgradeable/docs/templates/properties.js +0 -88
  170. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +0 -22
  171. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +0 -109
  172. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +0 -9
  173. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +0 -25
  174. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +0 -24
  175. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +0 -23
  176. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +0 -14
  177. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +0 -16
  178. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +0 -17
  179. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +0 -20
  180. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +0 -37
  181. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +0 -80
  182. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +0 -21
  183. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +0 -32
  184. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +0 -28
  185. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +0 -21
  186. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +0 -7
  187. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +0 -11
  188. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +0 -26
  189. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +0 -19
  190. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +0 -27
  191. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +0 -15
  192. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/README.md +0 -16
  193. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/antora.yml +0 -7
  194. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/config.js +0 -21
  195. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +0 -97
  196. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +0 -47
  197. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +0 -99
  198. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  199. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  200. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  201. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  202. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  203. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  204. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  205. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  206. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  207. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  208. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  209. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +0 -29
  210. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +0 -288
  211. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +0 -100
  212. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +0 -354
  213. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +0 -50
  214. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +0 -143
  215. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +0 -118
  216. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +0 -71
  217. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +0 -67
  218. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +0 -214
  219. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +0 -47
  220. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +0 -58
  221. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +0 -51
  222. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +0 -13
  223. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +0 -239
  224. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +0 -70
  225. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +0 -306
  226. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +0 -31
  227. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +0 -77
  228. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +0 -591
  229. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +0 -15
  230. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/contract.hbs +0 -141
  231. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/helpers.js +0 -46
  232. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/page.hbs +0 -4
  233. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/properties.js +0 -88
  234. package/lib/openzeppelin-contracts-upgradeable.git/docs/antora.yml +0 -6
  235. package/lib/openzeppelin-contracts-upgradeable.git/docs/config.js +0 -21
  236. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/images/tally-exec.png +0 -0
  237. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/images/tally-vote.png +0 -0
  238. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/nav.adoc +0 -23
  239. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/access-control.adoc +0 -217
  240. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  241. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  242. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/drafts.adoc +0 -19
  243. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc1155.adoc +0 -153
  244. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc20-supply.adoc +0 -113
  245. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc20.adoc +0 -85
  246. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc721.adoc +0 -90
  247. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/erc777.adoc +0 -73
  248. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/extending-contracts.adoc +0 -129
  249. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/governance.adoc +0 -321
  250. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/index.adoc +0 -63
  251. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  252. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/tokens.adoc +0 -32
  253. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/upgradeable.adoc +0 -73
  254. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/utilities.adoc +0 -190
  255. package/lib/openzeppelin-contracts-upgradeable.git/docs/modules/ROOT/pages/wizard.adoc +0 -15
  256. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/contract.hbs +0 -85
  257. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/helpers.js +0 -46
  258. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/page.hbs +0 -4
  259. package/lib/openzeppelin-contracts-upgradeable.git/docs/templates/properties.js +0 -49
  260. package/lib/openzeppelin-contracts.git/docs/antora.yml +0 -6
  261. package/lib/openzeppelin-contracts.git/docs/config.js +0 -21
  262. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/images/tally-exec.png +0 -0
  263. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/images/tally-vote.png +0 -0
  264. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/nav.adoc +0 -23
  265. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/access-control.adoc +0 -217
  266. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  267. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  268. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/drafts.adoc +0 -19
  269. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc1155.adoc +0 -153
  270. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc20-supply.adoc +0 -113
  271. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc20.adoc +0 -85
  272. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc721.adoc +0 -90
  273. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/erc777.adoc +0 -73
  274. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/extending-contracts.adoc +0 -129
  275. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/governance.adoc +0 -321
  276. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/index.adoc +0 -63
  277. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  278. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/tokens.adoc +0 -32
  279. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/upgradeable.adoc +0 -73
  280. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/utilities.adoc +0 -190
  281. package/lib/openzeppelin-contracts.git/docs/modules/ROOT/pages/wizard.adoc +0 -15
  282. package/lib/openzeppelin-contracts.git/docs/templates/contract.hbs +0 -85
  283. package/lib/openzeppelin-contracts.git/docs/templates/helpers.js +0 -46
  284. package/lib/openzeppelin-contracts.git/docs/templates/page.hbs +0 -4
  285. package/lib/openzeppelin-contracts.git/docs/templates/properties.js +0 -49
  286. package/lib/reality-eth-monorepo/packages/docs/Audit_Reality_v3_202108.pdf +0 -0
  287. package/lib/reality-eth-monorepo/packages/docs/Makefile +0 -20
  288. package/lib/reality-eth-monorepo/packages/docs/arbitrators.rst +0 -85
  289. package/lib/reality-eth-monorepo/packages/docs/audit.rst +0 -12
  290. package/lib/reality-eth-monorepo/packages/docs/audit_v2.rst +0 -249
  291. package/lib/reality-eth-monorepo/packages/docs/audit_v2_ERC20.rst +0 -1075
  292. package/lib/reality-eth-monorepo/packages/docs/audit_v3.rst +0 -70
  293. package/lib/reality-eth-monorepo/packages/docs/conf.py +0 -155
  294. package/lib/reality-eth-monorepo/packages/docs/contract_explanation.rst +0 -82
  295. package/lib/reality-eth-monorepo/packages/docs/contracts.rst +0 -277
  296. package/lib/reality-eth-monorepo/packages/docs/dapp.rst +0 -126
  297. package/lib/reality-eth-monorepo/packages/docs/dapp_links.rst +0 -67
  298. package/lib/reality-eth-monorepo/packages/docs/fees.rst +0 -89
  299. package/lib/reality-eth-monorepo/packages/docs/index.rst +0 -26
  300. package/lib/reality-eth-monorepo/packages/docs/javascript.rst +0 -142
  301. package/lib/reality-eth-monorepo/packages/docs/make.bat +0 -36
  302. package/lib/reality-eth-monorepo/packages/docs/question_box.png +0 -0
  303. package/lib/reality-eth-monorepo/packages/docs/requirements.txt +0 -24
  304. package/lib/reality-eth-monorepo/packages/docs/whitepaper.rst +0 -165
  305. package/script/AddAdminToLand.s.sol +0 -29
  306. package/script/ClaimMerkleRoot.s.sol +0 -34
  307. package/script/CreateLand.s.sol +0 -28
  308. package/script/CreateMarkets.s.sol +0 -71
  309. package/script/DeployContracts.s.sol +0 -94
  310. package/script/DeployMerkleRewardsDistributor.s.sol +0 -27
  311. package/script/DeployToken.s.sol +0 -17
  312. package/script/DeployUSDT.s.sol +0 -24
  313. package/script/MintTokens.s.sol +0 -21
  314. package/script/PublishMerkleRoot.s.sol +0 -50
  315. package/script/ResolveMarket.s.sol +0 -23
  316. package/script/TradeMarket.s.sol +0 -28
  317. package/test/UpdateTest.t.sol +0 -55
  318. package/test/WhaleTest.t.sol +0 -188
  319. 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,22 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {ERC20} from "../../token/ERC20/ERC20.sol";
6
-
7
- contract ERC20WithAutoMinerReward is ERC20 {
8
- constructor() ERC20("Reward", "RWD") {
9
- _mintMinerReward();
10
- }
11
-
12
- function _mintMinerReward() internal {
13
- _mint(block.coinbase, 1000);
14
- }
15
-
16
- function _update(address from, address to, uint256 value) internal virtual override {
17
- if (!(from == address(0) && to == block.coinbase)) {
18
- _mintMinerReward();
19
- }
20
- super._update(from, to, value);
21
- }
22
- }
@@ -1,109 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {IERC20} from "../../token/ERC20/IERC20.sol";
6
- import {ERC4626} from "../../token/ERC20/extensions/ERC4626.sol";
7
- import {SafeERC20} from "../../token/ERC20/utils/SafeERC20.sol";
8
- import {Math} from "../../utils/math/Math.sol";
9
-
10
- /// @dev ERC-4626 vault with entry/exit fees expressed in https://en.wikipedia.org/wiki/Basis_point[basis point (bp)].
11
- ///
12
- /// NOTE: The contract charges fees in terms of assets, not shares. This means that the fees are calculated based on the
13
- /// amount of assets that are being deposited or withdrawn, and not based on the amount of shares that are being minted or
14
- /// redeemed. This is an opinionated design decision that should be taken into account when integrating this contract.
15
- ///
16
- /// WARNING: This contract has not been audited and shouldn't be considered production ready. Consider using it with caution.
17
- abstract contract ERC4626Fees is ERC4626 {
18
- using Math for uint256;
19
-
20
- uint256 private constant _BASIS_POINT_SCALE = 1e4;
21
-
22
- // === Overrides ===
23
-
24
- /// @dev Preview taking an entry fee on deposit. See {IERC4626-previewDeposit}.
25
- function previewDeposit(uint256 assets) public view virtual override returns (uint256) {
26
- uint256 fee = _feeOnTotal(assets, _entryFeeBasisPoints());
27
- return super.previewDeposit(assets - fee);
28
- }
29
-
30
- /// @dev Preview adding an entry fee on mint. See {IERC4626-previewMint}.
31
- function previewMint(uint256 shares) public view virtual override returns (uint256) {
32
- uint256 assets = super.previewMint(shares);
33
- return assets + _feeOnRaw(assets, _entryFeeBasisPoints());
34
- }
35
-
36
- /// @dev Preview adding an exit fee on withdraw. See {IERC4626-previewWithdraw}.
37
- function previewWithdraw(uint256 assets) public view virtual override returns (uint256) {
38
- uint256 fee = _feeOnRaw(assets, _exitFeeBasisPoints());
39
- return super.previewWithdraw(assets + fee);
40
- }
41
-
42
- /// @dev Preview taking an exit fee on redeem. See {IERC4626-previewRedeem}.
43
- function previewRedeem(uint256 shares) public view virtual override returns (uint256) {
44
- uint256 assets = super.previewRedeem(shares);
45
- return assets - _feeOnTotal(assets, _exitFeeBasisPoints());
46
- }
47
-
48
- /// @dev Send entry fee to {_entryFeeRecipient}. See {IERC4626-_deposit}.
49
- function _deposit(address caller, address receiver, uint256 assets, uint256 shares) internal virtual override {
50
- uint256 fee = _feeOnTotal(assets, _entryFeeBasisPoints());
51
- address recipient = _entryFeeRecipient();
52
-
53
- super._deposit(caller, receiver, assets, shares);
54
-
55
- if (fee > 0 && recipient != address(this)) {
56
- SafeERC20.safeTransfer(IERC20(asset()), recipient, fee);
57
- }
58
- }
59
-
60
- /// @dev Send exit fee to {_exitFeeRecipient}. See {IERC4626-_deposit}.
61
- function _withdraw(
62
- address caller,
63
- address receiver,
64
- address owner,
65
- uint256 assets,
66
- uint256 shares
67
- ) internal virtual override {
68
- uint256 fee = _feeOnRaw(assets, _exitFeeBasisPoints());
69
- address recipient = _exitFeeRecipient();
70
-
71
- super._withdraw(caller, receiver, owner, assets, shares);
72
-
73
- if (fee > 0 && recipient != address(this)) {
74
- SafeERC20.safeTransfer(IERC20(asset()), recipient, fee);
75
- }
76
- }
77
-
78
- // === Fee configuration ===
79
-
80
- function _entryFeeBasisPoints() internal view virtual returns (uint256) {
81
- return 0; // replace with e.g. 100 for 1%
82
- }
83
-
84
- function _exitFeeBasisPoints() internal view virtual returns (uint256) {
85
- return 0; // replace with e.g. 100 for 1%
86
- }
87
-
88
- function _entryFeeRecipient() internal view virtual returns (address) {
89
- return address(0); // replace with e.g. a treasury address
90
- }
91
-
92
- function _exitFeeRecipient() internal view virtual returns (address) {
93
- return address(0); // replace with e.g. a treasury address
94
- }
95
-
96
- // === Fee operations ===
97
-
98
- /// @dev Calculates the fees that should be added to an amount `assets` that does not already include fees.
99
- /// Used in {IERC4626-mint} and {IERC4626-withdraw} operations.
100
- function _feeOnRaw(uint256 assets, uint256 feeBasisPoints) private pure returns (uint256) {
101
- return assets.mulDiv(feeBasisPoints, _BASIS_POINT_SCALE, Math.Rounding.Ceil);
102
- }
103
-
104
- /// @dev Calculates the fee part of an amount `assets` that already includes fees.
105
- /// Used in {IERC4626-deposit} and {IERC4626-redeem} operations.
106
- function _feeOnTotal(uint256 assets, uint256 feeBasisPoints) private pure returns (uint256) {
107
- return assets.mulDiv(feeBasisPoints, feeBasisPoints + _BASIS_POINT_SCALE, Math.Rounding.Ceil);
108
- }
109
- }
@@ -1,9 +0,0 @@
1
- // contracts/MyNFT.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {ERC721} from "../../token/ERC721/ERC721.sol";
6
-
7
- contract MyNFT is ERC721 {
8
- constructor() ERC721("MyNFT", "MNFT") {}
9
- }
@@ -1,25 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControl} from "../../../access/AccessControl.sol";
5
- import {ERC20} from "../../../token/ERC20/ERC20.sol";
6
-
7
- contract AccessControlERC20MintBase is ERC20, AccessControl {
8
- // Create a new role identifier for the minter role
9
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
10
-
11
- error CallerNotMinter(address caller);
12
-
13
- constructor(address minter) ERC20("MyToken", "TKN") {
14
- // Grant the minter role to a specified account
15
- _grantRole(MINTER_ROLE, minter);
16
- }
17
-
18
- function mint(address to, uint256 amount) public {
19
- // Check that the calling account has the minter role
20
- if (!hasRole(MINTER_ROLE, msg.sender)) {
21
- revert CallerNotMinter(msg.sender);
22
- }
23
- _mint(to, amount);
24
- }
25
- }
@@ -1,24 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControl} from "../../../access/AccessControl.sol";
5
- import {ERC20} from "../../../token/ERC20/ERC20.sol";
6
-
7
- contract AccessControlERC20MintMissing is ERC20, AccessControl {
8
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
9
- bytes32 public constant BURNER_ROLE = keccak256("BURNER_ROLE");
10
-
11
- constructor() ERC20("MyToken", "TKN") {
12
- // Grant the contract deployer the default admin role: it will be able
13
- // to grant and revoke any roles
14
- _grantRole(DEFAULT_ADMIN_ROLE, msg.sender);
15
- }
16
-
17
- function mint(address to, uint256 amount) public onlyRole(MINTER_ROLE) {
18
- _mint(to, amount);
19
- }
20
-
21
- function burn(address from, uint256 amount) public onlyRole(BURNER_ROLE) {
22
- _burn(from, amount);
23
- }
24
- }
@@ -1,23 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessControl} from "../../../access/AccessControl.sol";
5
- import {ERC20} from "../../../token/ERC20/ERC20.sol";
6
-
7
- contract AccessControlERC20Mint is ERC20, AccessControl {
8
- bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");
9
- bytes32 public constant BURNER_ROLE = keccak256("BURNER_ROLE");
10
-
11
- constructor(address minter, address burner) ERC20("MyToken", "TKN") {
12
- _grantRole(MINTER_ROLE, minter);
13
- _grantRole(BURNER_ROLE, burner);
14
- }
15
-
16
- function mint(address to, uint256 amount) public onlyRole(MINTER_ROLE) {
17
- _mint(to, amount);
18
- }
19
-
20
- function burn(address from, uint256 amount) public onlyRole(BURNER_ROLE) {
21
- _burn(from, amount);
22
- }
23
- }
@@ -1,14 +0,0 @@
1
- // contracts/AccessControlModified.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {AccessControl} from "../../../access/AccessControl.sol";
6
-
7
- contract AccessControlModified is AccessControl {
8
- error AccessControlNonRevocable();
9
-
10
- // Override the revokeRole function
11
- function revokeRole(bytes32, address) public pure override {
12
- revert AccessControlNonRevocable();
13
- }
14
- }
@@ -1,16 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
- pragma solidity ^0.8.20;
3
-
4
- import {AccessManaged} from "../../../access/manager/AccessManaged.sol";
5
- import {ERC20} from "../../../token/ERC20/ERC20.sol";
6
-
7
- contract AccessManagedERC20Mint is ERC20, AccessManaged {
8
- constructor(address manager) ERC20("MyToken", "TKN") AccessManaged(manager) {}
9
-
10
- // Minting is restricted according to the manager rules for this function.
11
- // The function is identified by its selector: 0x40c10f19.
12
- // Calculated with bytes4(keccak256('mint(address,uint256)'))
13
- function mint(address to, uint256 amount) public restricted {
14
- _mint(to, amount);
15
- }
16
- }
@@ -1,17 +0,0 @@
1
- // SPDX-License-Identifier: MIT
2
-
3
- pragma solidity ^0.8.20;
4
-
5
- import {Ownable} from "../../../access/Ownable.sol";
6
-
7
- contract MyContract is Ownable {
8
- constructor(address initialOwner) Ownable(initialOwner) {}
9
-
10
- function normalThing() public {
11
- // anyone can call this normalThing()
12
- }
13
-
14
- function specialThing() public onlyOwner {
15
- // only the owner can call specialThing()!
16
- }
17
- }
@@ -1,20 +0,0 @@
1
- // contracts/MyAccountERC7702.sol
2
- // SPDX-License-Identifier: MIT
3
- pragma solidity ^0.8.20;
4
-
5
- import {Account} from "../../../account/Account.sol";
6
- import {ERC721Holder} from "../../../token/ERC721/utils/ERC721Holder.sol";
7
- import {ERC1155Holder} from "../../../token/ERC1155/utils/ERC1155Holder.sol";
8
- import {ERC7821} from "../../../account/extensions/draft-ERC7821.sol";
9
- import {SignerERC7702} from "../../../utils/cryptography/signers/SignerERC7702.sol";
10
-
11
- contract MyAccountERC7702 is Account, SignerERC7702, ERC7821, ERC721Holder, ERC1155Holder {
12
- /// @dev Allows the entry point as an authorized executor.
13
- function _erc7821AuthorizedExecutor(
14
- address caller,
15
- bytes32 mode,
16
- bytes calldata executionData
17
- ) internal view virtual override returns (bool) {
18
- return caller == address(entryPoint()) || super._erc7821AuthorizedExecutor(caller, mode, executionData);
19
- }
20
- }
@@ -1,37 +0,0 @@
1
- // contracts/MyFactoryAccount.sol
2
- // SPDX-License-Identifier: MIT
3
-
4
- pragma solidity ^0.8.20;
5
-
6
- import {Clones} from "../../../proxy/Clones.sol";
7
- import {Address} from "../../../utils/Address.sol";
8
-
9
- /**
10
- * @dev A factory contract to create accounts on demand.
11
- */
12
- contract MyFactoryAccount {
13
- using Clones for address;
14
- using Address for address;
15
-
16
- address private immutable _impl;
17
-
18
- constructor(address impl_) {
19
- require(impl_.code.length > 0);
20
- _impl = impl_;
21
- }
22
-
23
- /// @dev Predict the address of the account
24
- function predictAddress(bytes calldata callData) public view returns (address) {
25
- return _impl.predictDeterministicAddress(keccak256(callData), address(this));
26
- }
27
-
28
- /// @dev Create clone accounts on demand
29
- function cloneAndInitialize(bytes calldata callData) public returns (address) {
30
- address predicted = predictAddress(callData);
31
- if (predicted.code.length == 0) {
32
- _impl.cloneDeterministic(keccak256(callData));
33
- predicted.functionCall(callData);
34
- }
35
- return predicted;
36
- }
37
- }