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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "polkamarkets-js",
3
- "version": "3.4.1",
3
+ "version": "3.4.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "directories": {
@@ -14,7 +14,7 @@ contract AddAdminToLand is Script {
14
14
 
15
15
  address PREDICTION_MARKET_V3_MANAGER = address(0xBC39fa757886E8A56422Abc460b1FFfc70bbaeC6);
16
16
  address PREDICTION_MARKET_V3 = address(0x39E66eE6b2ddaf4DEfDEd3038E0162180dbeF340);
17
- address LAND_TOKEN = address(0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e);
17
+ address LAND_TOKEN = address(0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d);
18
18
  address admin = address(0xAE7Bfff784EeEe7812D6527B72c77A7Ed773Ed9D);
19
19
 
20
20
  // PredictionMarketV3_4(payable(PREDICTION_MARKET_V3)).setAllowedManager(PREDICTION_MARKET_V3_MANAGER, true);
@@ -1,34 +1,34 @@
1
- // // SPDX-License-Identifier: GPL-2.0
2
- // pragma solidity ^0.8.26;
1
+ // SPDX-License-Identifier: GPL-2.0
2
+ pragma solidity ^0.8.26;
3
3
 
4
- // import {Script} from "forge-std/Script.sol";
5
- // import {console} from "forge-std/console.sol";
6
- // import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
- // import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
4
+ import {Script} from "forge-std/Script.sol";
5
+ import {console} from "forge-std/console.sol";
6
+ import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
+ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
8
8
 
9
- // contract ClaimMerkleRoot is Script {
10
- // function run() public {
11
- // vm.startBroadcast();
9
+ contract ClaimMerkleRoot is Script {
10
+ function run() public {
11
+ vm.startBroadcast();
12
12
 
13
- // MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(0x846BBEF1e62c211a16fD3F4Cd15C54B010D85036));
14
- // IERC20 token = IERC20(address(0xf74B14ecbAdC9fBb283Fb3c8ae11E186856eae6f));
15
- // string memory contestId = "7663c7a6-5c93-40e2-9de7-21a821d363e3";
16
- // uint256 index = 4;
17
- // address account = address(0x68FcB3Db1BA4Abb85D9f9420A110948e6459d613);
18
- // uint256 amount = 200000;
19
- // bytes32[] memory merkleProof = new bytes32[](2);
20
- // merkleProof[0] = bytes32(0x7c0e1af482e345503812141a5583c24adcfb9304cd8674e2d55b875e1ec27fdc);
21
- // merkleProof[1] = bytes32(0x995dc3a28d8b8bcf31a29435a588bfcea38841d36509f285b0ea606c0ee574bf);
13
+ MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(0x846BBEF1e62c211a16fD3F4Cd15C54B010D85036));
14
+ IERC20 token = IERC20(address(0xf74B14ecbAdC9fBb283Fb3c8ae11E186856eae6f));
15
+ string memory contestId = "7663c7a6-5c93-40e2-9de7-21a821d363e3";
16
+ uint256 index = 4;
17
+ address account = address(0x68FcB3Db1BA4Abb85D9f9420A110948e6459d613);
18
+ uint256 amount = 200000;
19
+ bytes32[] memory merkleProof = new bytes32[](2);
20
+ merkleProof[0] = bytes32(0x7c0e1af482e345503812141a5583c24adcfb9304cd8674e2d55b875e1ec27fdc);
21
+ merkleProof[1] = bytes32(0x995dc3a28d8b8bcf31a29435a588bfcea38841d36509f285b0ea606c0ee574bf);
22
22
 
23
- // distributor.claim(
24
- // contestId,
25
- // IERC20(address(token)),
26
- // index,
27
- // account,
28
- // amount,
29
- // merkleProof
30
- // );
23
+ distributor.claim(
24
+ contestId,
25
+ IERC20(address(token)),
26
+ index,
27
+ account,
28
+ amount,
29
+ merkleProof
30
+ );
31
31
 
32
- // vm.stopBroadcast();
33
- // }
34
- // }
32
+ vm.stopBroadcast();
33
+ }
34
+ }
@@ -14,7 +14,7 @@ contract CreateLand is Script {
14
14
 
15
15
  address PREDICTION_MARKET_V3_MANAGER = address(0xBC39fa757886E8A56422Abc460b1FFfc70bbaeC6);
16
16
  address ADMIN_TOKEN = address(0x307893b1d9F2F6AF097310Ef6E49b90bc5a2Ee3d);
17
- address LAND_TOKEN = address(0x55d398326f99059fF775485246999027B3197955);
17
+ address LAND_TOKEN = address(0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d);
18
18
 
19
19
  // IERC20(ADMIN_TOKEN).approve(PREDICTION_MARKET_V3_MANAGER, 1000 ether);
20
20
 
@@ -1,27 +1,27 @@
1
- // // SPDX-License-Identifier: GPL-2.0
2
- // pragma solidity ^0.8.26;
1
+ // SPDX-License-Identifier: GPL-2.0
2
+ pragma solidity ^0.8.26;
3
3
 
4
- // import {Script} from "forge-std/Script.sol";
5
- // import {console} from "forge-std/console.sol";
6
- // import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
- // import {ERC1967Proxy} from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
4
+ import {Script} from "forge-std/Script.sol";
5
+ import {console} from "forge-std/console.sol";
6
+ import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
+ import {ERC1967Proxy} from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
8
8
 
9
- // contract DeployMerkleRewardsDistributor is Script {
10
- // function run() public {
11
- // vm.startBroadcast();
9
+ contract DeployMerkleRewardsDistributor is Script {
10
+ function run() public {
11
+ vm.startBroadcast();
12
12
 
13
- // address admin = address(0xAE7Bfff784EeEe7812D6527B72c77A7Ed773Ed9D);
13
+ address admin = address(0xAE7Bfff784EeEe7812D6527B72c77A7Ed773Ed9D);
14
14
 
15
- // // it's a proxy
16
- // address implementation = address(new MerkleRewardsDistributor());
17
- // bytes memory initData = abi.encodeCall(MerkleRewardsDistributor.initialize, (admin));
18
- // console.log("Initialization data for proxy:");
19
- // console.logBytes(initData);
15
+ // it's a proxy
16
+ address implementation = address(new MerkleRewardsDistributor());
17
+ bytes memory initData = abi.encodeCall(MerkleRewardsDistributor.initialize, (admin));
18
+ console.log("Initialization data for proxy:");
19
+ console.logBytes(initData);
20
20
 
21
- // ERC1967Proxy proxy = new ERC1967Proxy(implementation, initData);
22
- // MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(proxy));
23
- // console.log("MerkleRewardsDistributor deployed at:", address(distributor));
21
+ ERC1967Proxy proxy = new ERC1967Proxy(implementation, initData);
22
+ MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(proxy));
23
+ console.log("MerkleRewardsDistributor deployed at:", address(distributor));
24
24
 
25
- // vm.stopBroadcast();
26
- // }
27
- // }
25
+ vm.stopBroadcast();
26
+ }
27
+ }
@@ -9,7 +9,7 @@ contract MintTokens is Script {
9
9
  function run() public {
10
10
  vm.startBroadcast();
11
11
 
12
- address token = address(0x49Ff827F0C8835ebd8109Cc3b51b80435ce44F09);
12
+ address token = address(0x54eC4711c4a429D7b0466dd169079f276a868462);
13
13
  address user = address(0x68FcB3Db1BA4Abb85D9f9420A110948e6459d613);
14
14
  uint256 amount = 1000000000000000000000000;
15
15
 
@@ -1,50 +1,50 @@
1
- // // SPDX-License-Identifier: GPL-2.0
2
- // pragma solidity ^0.8.26;
3
-
4
- // import {Script} from "forge-std/Script.sol";
5
- // import {console} from "forge-std/console.sol";
6
- // import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
- // import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
8
-
9
- // contract PublishMerkleRoot is Script {
10
- // function run() public {
11
- // vm.startBroadcast();
12
-
13
- // MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(0x846BBEF1e62c211a16fD3F4Cd15C54B010D85036));
14
- // IERC20 token = IERC20(address(0xf74B14ecbAdC9fBb283Fb3c8ae11E186856eae6f));
15
- // bytes32 root = bytes32(0x07b1c91af93eaf54d8cf1644d632ddee695267f4044167b88842e90be3e4878e);
16
- // string memory contestId = "55d2ca19-fee9-4320-a7c6-aea620ba7588";
17
-
18
- // string[5] memory contestIds = [
19
- // "8c8f733c-ecca-4a8b-8ce9-a1208f04de2a",
20
- // "4f29b3d5-097a-404c-9014-9e5ba7cb38a0",
21
- // "1577b57f-e763-4d07-8c58-56d36a49563e",
22
- // "9fbcd4d2-3fb3-4c0b-9fcd-82e7604d1673",
23
- // "b72746ec-8046-4ae5-9a34-92270ab6c3f7"
24
- // ];
25
-
26
- // bytes32[5] memory roots = [
27
- // bytes32(0x29512536af9410dc44a47a16eeff9e65ebb3e05fd5c8369c2dfa59a5bee9e2ac),
28
- // bytes32(0x66af758212a3c1ee876654b4e354908f57caf337178f3895dcc059e2b507ee83),
29
- // bytes32(0x8d022151e97cfb76f08c309f24d13bea76d1f2d7d81c38f46c49d1584912f988),
30
- // bytes32(0x1936d0d67853de21b9f4bd6f369c545e77b63c98596e95d61306f1ac1c0848f9),
31
- // bytes32(0xe84504014594f44045abdb598af6253ac00d41f3da59002dcaa7fd4d3acaaf40)
32
- // ];
33
-
34
- // for (uint256 i = 0; i < contestIds.length; i++) {
35
- // distributor.publishRoot(
36
- // contestIds[i],
37
- // IERC20(address(token)),
38
- // roots[i]
39
- // );
40
- // }
41
-
42
- // // distributor.publishRoot(
43
- // // contestId,
44
- // // IERC20(address(token)),
45
- // // root
46
- // // );
47
-
48
- // vm.stopBroadcast();
49
- // }
50
- // }
1
+ // SPDX-License-Identifier: GPL-2.0
2
+ pragma solidity ^0.8.26;
3
+
4
+ import {Script} from "forge-std/Script.sol";
5
+ import {console} from "forge-std/console.sol";
6
+ import {MerkleRewardsDistributor} from "../contracts/MerkleRewardsDistributor.sol";
7
+ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
8
+
9
+ contract PublishMerkleRoot is Script {
10
+ function run() public {
11
+ vm.startBroadcast();
12
+
13
+ MerkleRewardsDistributor distributor = MerkleRewardsDistributor(address(0x846BBEF1e62c211a16fD3F4Cd15C54B010D85036));
14
+ IERC20 token = IERC20(address(0xf74B14ecbAdC9fBb283Fb3c8ae11E186856eae6f));
15
+ bytes32 root = bytes32(0x07b1c91af93eaf54d8cf1644d632ddee695267f4044167b88842e90be3e4878e);
16
+ string memory contestId = "55d2ca19-fee9-4320-a7c6-aea620ba7588";
17
+
18
+ string[5] memory contestIds = [
19
+ "8c8f733c-ecca-4a8b-8ce9-a1208f04de2a",
20
+ "4f29b3d5-097a-404c-9014-9e5ba7cb38a0",
21
+ "1577b57f-e763-4d07-8c58-56d36a49563e",
22
+ "9fbcd4d2-3fb3-4c0b-9fcd-82e7604d1673",
23
+ "b72746ec-8046-4ae5-9a34-92270ab6c3f7"
24
+ ];
25
+
26
+ bytes32[5] memory roots = [
27
+ bytes32(0x29512536af9410dc44a47a16eeff9e65ebb3e05fd5c8369c2dfa59a5bee9e2ac),
28
+ bytes32(0x66af758212a3c1ee876654b4e354908f57caf337178f3895dcc059e2b507ee83),
29
+ bytes32(0x8d022151e97cfb76f08c309f24d13bea76d1f2d7d81c38f46c49d1584912f988),
30
+ bytes32(0x1936d0d67853de21b9f4bd6f369c545e77b63c98596e95d61306f1ac1c0848f9),
31
+ bytes32(0xe84504014594f44045abdb598af6253ac00d41f3da59002dcaa7fd4d3acaaf40)
32
+ ];
33
+
34
+ for (uint256 i = 0; i < contestIds.length; i++) {
35
+ distributor.publishRoot(
36
+ contestIds[i],
37
+ IERC20(address(token)),
38
+ roots[i]
39
+ );
40
+ }
41
+
42
+ // distributor.publishRoot(
43
+ // contestId,
44
+ // IERC20(address(token)),
45
+ // root
46
+ // );
47
+
48
+ vm.stopBroadcast();
49
+ }
50
+ }
@@ -0,0 +1,55 @@
1
+ // SPDX-License-Identifier: GPL-2.0
2
+ pragma solidity ^0.8.26;
3
+
4
+ import {Script} from "forge-std/Script.sol";
5
+ import {console} from "forge-std/console.sol";
6
+ // Import your contracts here
7
+ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
8
+ import {PredictionMarketV3_3, IWETH} from "../contracts/PredictionMarketV3_3.sol";
9
+ import {IPredictionMarketV3Manager} from "../contracts/IPredictionMarketV3Manager.sol";
10
+ import {PredictionMarketV3Manager, FantasyERC20} from "../contracts/PredictionMarketV3Manager.sol";
11
+ import {IRealityETH_ERC20} from "../contracts/IRealityETH_ERC20.sol";
12
+
13
+ contract UpdateMarket is Script {
14
+ function run() public {
15
+
16
+ vm.startBroadcast();
17
+
18
+ address payable PREDICTION_MARKET_V3_3 = payable(address(0x3e0F5F8F5Fb043aBFA475C0308417Bf72c463289));
19
+ address PREDICTION_MARKET_V3_MANAGER = address(0x68dDc91CCC06e63d74905D901A30edEA7C77EebE);
20
+
21
+ PredictionMarketV3_3.MarketState state = PredictionMarketV3_3(PREDICTION_MARKET_V3_3).getMarketState(486);
22
+ console2.log("state: ", state);
23
+
24
+ PredictionMarketV3_3.MarketUpdateDescription memory description = PredictionMarketV3_3.MarketUpdateDescription({
25
+ closesAtTimestamp: 1762066800,
26
+ balance: 456538064447348172635074428,
27
+ liquidity: 120000000000000000000000000,
28
+ sharesAvailable: 1272835104225672313766121101,
29
+ state: PredictionMarketV3_3.MarketState.open,
30
+ resolution: PredictionMarketV3_3.MarketResolution({
31
+ resolved: false,
32
+ realitio: IRealityETH_ERC20(0x71D76Ff3C2729071B2c52A667197d9f715029F2c),
33
+ outcomeId: 115792089237316195423570985008687907853269984665640564039457584007913129639935,
34
+ questionId: 0x21d6c6c195572d82a7d0a7ba677251dfd3839b21e09df9b39ae36ec99fa6744d,
35
+ realitioTimeout: 3600
36
+ }),
37
+ feesPoolWeight: 0,
38
+ feesTreasury: address(0xBc30e9765Dc8c735206c76DE96d369754eBbcc1f),
39
+ feesDistributor: address(0xBc30e9765Dc8c735206c76DE96d369754eBbcc1f),
40
+ buyFees: PredictionMarketV3_3.Fees({fee: 0, treasuryFee: 0, distributorFee: 0}),
41
+ sellFees: PredictionMarketV3_3.Fees({fee: 0, treasuryFee: 0, distributorFee: 0}),
42
+ outcomeCount: 5,
43
+ token: IERC20(0x0b07cf011B6e2b7E0803b892d97f751659940F23),
44
+ manager: IPredictionMarketV3Manager(0x2EbD002d755bdFadb9e5549aA00a80bd7fa408AE),
45
+ creator: address(0xBc30e9765Dc8c735206c76DE96d369754eBbcc1f),
46
+ paused: false
47
+ });
48
+
49
+ PredictionMarketV3_3(PREDICTION_MARKET_V3_3).updateMarket(486, description);
50
+ PredictionMarketV3_3(PREDICTION_MARKET_V3_3).updateMarketResolution(486, description);
51
+
52
+ state = PredictionMarketV3_3(PREDICTION_MARKET_V3_3).getMarketState(486);
53
+ console2.log("new state: ", state);
54
+ }
55
+ }
@@ -0,0 +1,57 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+
4
+ const outDir = path.join(__dirname, '../out');
5
+ const abisDir = path.join(__dirname, '../abis');
6
+
7
+ // Ensure abis directory exists
8
+ if (!fs.existsSync(abisDir)) {
9
+ fs.mkdirSync(abisDir, { recursive: true });
10
+ }
11
+
12
+ // Copy ABIs from out/ to abis/
13
+ function copyAbis() {
14
+ if (!fs.existsSync(outDir)) {
15
+ console.log('❌ /out directory not found. Run "forge build" first.');
16
+ process.exit(1);
17
+ }
18
+
19
+ const contracts = fs.readdirSync(outDir);
20
+ let copiedCount = 0;
21
+
22
+ contracts.forEach(contract => {
23
+ if (contract.endsWith('.sol')) {
24
+ const contractDir = path.join(outDir, contract);
25
+
26
+ if (fs.statSync(contractDir).isDirectory()) {
27
+ const contractFiles = fs.readdirSync(contractDir);
28
+
29
+ contractFiles.forEach(file => {
30
+ if (file.endsWith('.json')) {
31
+ try {
32
+ const sourcePath = path.join(contractDir, file);
33
+ const destPath = path.join(abisDir, file);
34
+
35
+ const contractData = JSON.parse(fs.readFileSync(sourcePath, 'utf8'));
36
+
37
+ // Extract only ABI (minified)
38
+ const abiData = {
39
+ abi: contractData.abi || []
40
+ };
41
+
42
+ fs.writeFileSync(destPath, JSON.stringify(abiData));
43
+ copiedCount++;
44
+ console.log(`✅ Copied ${file}`);
45
+ } catch (error) {
46
+ console.log(`⚠️ Failed to copy ${file}:`, error.message);
47
+ }
48
+ }
49
+ });
50
+ }
51
+ }
52
+ });
53
+
54
+ console.log(`\n🎉 Successfully copied ${copiedCount} contract ABIs to /abis directory`);
55
+ }
56
+
57
+ copyAbis();
@@ -37,6 +37,7 @@ class Application {
37
37
  web3EventsProvider,
38
38
  gasPrice,
39
39
  isSocialLogin = false,
40
+ useGaslessTransactions,
40
41
  socialLoginParams,
41
42
  startBlock,
42
43
  defaultDecimals,
@@ -48,6 +49,8 @@ class Application {
48
49
  // fixed gas price for txs (optional)
49
50
  this.gasPrice = gasPrice;
50
51
  this.isSocialLogin = isSocialLogin;
52
+ // If useGaslessTransactions is not explicitly set, default to true when isSocialLogin is true, otherwise false (backwards compatibility)
53
+ this.useGaslessTransactions = useGaslessTransactions !== undefined ? useGaslessTransactions : isSocialLogin;
51
54
  this.startBlock = startBlock;
52
55
  this.defaultDecimals = defaultDecimals;
53
56
  // use DualProvider to separate read (HttpProvider) and write (window.ethereum) operations
@@ -91,6 +94,8 @@ class Application {
91
94
  /**
92
95
  * @name login
93
96
  * @description Login with Metamask or a web3 provider
97
+ * @param {Object} provider
98
+ * @param {Boolean} isConnectedWallet
94
99
  */
95
100
  async login(provider = null, isConnectedWallet = null) {
96
101
  if (this.isSocialLogin) {
@@ -98,9 +103,14 @@ class Application {
98
103
  this.smartAccount = PolkamarketsSmartAccount.singleton.getInstanceIfExists()
99
104
  }
100
105
 
101
- if ((!this.smartAccount || !this.smartAccount.provider) && provider) {
106
+ if (provider) {
102
107
  PolkamarketsSmartAccount.singleton.clearInstance();
103
108
  this.smartAccount = PolkamarketsSmartAccount.singleton.getInstance(provider, this.socialLoginParams.networkConfig, isConnectedWallet);
109
+
110
+ // Store thirdweb account reference if provider has sendTransaction method
111
+ if (typeof provider.sendTransaction === 'function') {
112
+ this.smartAccount.thirdwebAccount = provider;
113
+ }
104
114
  }
105
115
 
106
116
  return true;
@@ -157,6 +167,7 @@ class Application {
157
167
  web3EventsProvider: this.web3EventsProvider,
158
168
  gasPrice: this.gasPrice,
159
169
  isSocialLogin: this.isSocialLogin,
170
+ useGaslessTransactions: this.useGaslessTransactions,
160
171
  startBlock: this.startBlock,
161
172
  defaultDecimals: this.defaultDecimals
162
173
  };
@@ -34,6 +34,7 @@ class IContract {
34
34
  web3EventsProvider,
35
35
  gasPrice,
36
36
  isSocialLogin = false,
37
+ useGaslessTransactions,
37
38
  startBlock
38
39
  }) {
39
40
  try {
@@ -58,6 +59,8 @@ class IContract {
58
59
  gasPrice,
59
60
  contract: new Contract(web3, abi, contractAddress),
60
61
  isSocialLogin,
62
+ // (For backwards compatibility) If useGaslessTransactions is not explicitly set, default to true when isSocialLogin is true, otherwise false
63
+ useGaslessTransactions: useGaslessTransactions !== undefined ? useGaslessTransactions : isSocialLogin,
61
64
  startBlock,
62
65
  };
63
66
  } catch (err) {
@@ -590,6 +593,30 @@ class IContract {
590
593
  return receipt;
591
594
  }
592
595
 
596
+ async useThirdWebWithUserPaidGas(tx, networkConfig, smartAccount) {
597
+ const client = createThirdwebClient({ clientId: networkConfig.thirdWebClientId });
598
+ const chain = defineChain(networkConfig.chainId);
599
+
600
+ if (!smartAccount || typeof smartAccount.sendTransaction !== 'function') {
601
+ throw new Error('Invalid account provided - expected thirdweb Account object with sendTransaction method');
602
+ }
603
+
604
+ const res = await smartAccount.sendTransaction({
605
+ to: tx.to,
606
+ data: tx.data,
607
+ gas: BigInt(500000),
608
+ chain: chain,
609
+ });
610
+
611
+ const receipt = await waitForReceipt({
612
+ client,
613
+ chain,
614
+ transactionHash: res.transactionHash,
615
+ });
616
+
617
+ return receipt;
618
+ }
619
+
593
620
  async sendGaslessTransactions(f) {
594
621
  const smartAccount = PolkamarketsSmartAccount.singleton.getInstance();
595
622
  const networkConfig = smartAccount.networkConfig;
@@ -799,9 +826,68 @@ class IContract {
799
826
  return transformedEvents;
800
827
  }
801
828
 
829
+ async sendSocialLoginGasTransactions(f) {
830
+ const smartAccount = PolkamarketsSmartAccount.singleton.getInstance();
831
+ const networkConfig = smartAccount.networkConfig;
832
+
833
+ const { isConnectedWallet, signer } = await smartAccount.providerIsConnectedWallet();
834
+
835
+ const methodName = f._method.name;
836
+
837
+ const contractInterface = new ethers.utils.Interface(this.params.abi.abi);
838
+ const methodCallData = contractInterface.encodeFunctionData(methodName, f.arguments);
839
+
840
+ const tx = {
841
+ to: this.params.contractAddress,
842
+ data: methodCallData,
843
+ };
844
+
845
+ try {
846
+ let receipt;
847
+
848
+ if (isConnectedWallet) {
849
+ const txResponse = await signer.sendTransaction({ ...tx, gasLimit: 210000 });
850
+ receipt = await txResponse.wait();
851
+ } else {
852
+ if (networkConfig.useThirdWeb) {
853
+ const thirdwebAccount = smartAccount.getThirdwebAccount();
854
+ if (!thirdwebAccount) {
855
+ throw new Error('ThirdWeb account not found. Make sure you passed the thirdweb account when calling login()');
856
+ }
857
+ receipt = await this.useThirdWebWithUserPaidGas(tx, networkConfig, thirdwebAccount);
858
+ } else {
859
+ throw new Error('User-paid transactions are only supported with ThirdWeb configuration');
860
+ }
861
+ }
862
+
863
+ console.log('receipt:', receipt.status, receipt.transactionHash);
864
+
865
+ if (receipt.logs) {
866
+ const events = receipt.logs.map(log => {
867
+ try {
868
+ const event = contractInterface.parseLog(log);
869
+ return event;
870
+ } catch (error) {
871
+ return null;
872
+ }
873
+ });
874
+ receipt.events = this.convertEtherEventsToWeb3Events(events);
875
+ }
876
+
877
+ return receipt;
878
+ } catch (error) {
879
+ console.error(error);
880
+ throw error;
881
+ }
882
+ }
883
+
802
884
  async __sendTx(f, call = false, value, callback = () => { }) {
803
885
  if (this.params.isSocialLogin && !call) {
804
- return await this.sendGaslessTransactions(f);
886
+ if (this.params.useGaslessTransactions) {
887
+ return await this.sendGaslessTransactions(f);
888
+ } else {
889
+ return await this.sendSocialLoginGasTransactions(f);
890
+ }
805
891
  } else {
806
892
  var res;
807
893
  if (!this.acc && !call) {
@@ -6,6 +6,11 @@ const { createPublicClient, http } = require('viem');
6
6
  const { signerToSimpleSmartAccount } = require('permissionless/accounts');
7
7
 
8
8
  class PolkamarketsSmartAccount {
9
+ networkConfig = null;
10
+ provider = null;
11
+ isConnectedWallet = null;
12
+ thirdwebAccount = null;
13
+ smartAccount = null;
9
14
 
10
15
  static PIMLICO_FACTORY_ADDRESS = '0x9406Cc6185a346906296840746125a0E44976454';
11
16
  static THIRDWEB_FACTORY_ADDRESS = '0x85e23b94e7F5E9cC1fF78BCe78cfb15B81f0DF00';
@@ -65,12 +70,30 @@ class PolkamarketsSmartAccount {
65
70
  return { isConnectedWallet: false, address: null, signer: null };
66
71
  }
67
72
 
73
+ getThirdwebAccount() {
74
+ if (this.thirdwebAccount) {
75
+ return this.thirdwebAccount;
76
+ }
77
+
78
+ // For backward compatibility, check if provider is already a thirdweb account
79
+ if (this.provider && typeof this.provider.sendTransaction === "function") {
80
+ return this.provider;
81
+ }
82
+
83
+ return null;
84
+ }
85
+
68
86
  async getAddress() {
69
87
  const { isConnectedWallet, address } = await this.providerIsConnectedWallet();
70
88
  if (isConnectedWallet) {
71
89
  return address;
72
90
  }
73
91
 
92
+ // Check if we have a stored thirdweb account (for agw support)
93
+ if (this.thirdwebAccount && this.thirdwebAccount.address) {
94
+ return this.thirdwebAccount.address;
95
+ }
96
+
74
97
  if (this.networkConfig.useThirdWeb && this.networkConfig.isZkSync) {
75
98
  if (this.provider.address) {
76
99
  return this.provider.address;