@peeramid-labs/sdk 2.1.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (400) hide show
  1. package/README.md +34 -0
  2. package/cli/abis/AccessControl.js +232 -0
  3. package/cli/abis/AccessControl.js.map +1 -0
  4. package/cli/abis/AccessControlDefaultAdminRules.js +460 -0
  5. package/cli/abis/AccessControlDefaultAdminRules.js.map +1 -0
  6. package/cli/abis/ArguableVotingTournament.js +187 -0
  7. package/cli/abis/ArguableVotingTournament.js.map +1 -0
  8. package/cli/abis/Checkpoints.js +12 -0
  9. package/cli/abis/Checkpoints.js.map +1 -0
  10. package/cli/abis/CloneDistribution.js +102 -0
  11. package/cli/abis/CloneDistribution.js.map +1 -0
  12. package/cli/abis/Clones.js +12 -0
  13. package/cli/abis/Clones.js.map +1 -0
  14. package/cli/abis/CodeHashDistribution.js +159 -0
  15. package/cli/abis/CodeHashDistribution.js.map +1 -0
  16. package/cli/abis/CodeIndex.js +74 -0
  17. package/cli/abis/CodeIndex.js.map +1 -0
  18. package/cli/abis/ContextUpgradeable.js +30 -0
  19. package/cli/abis/ContextUpgradeable.js.map +1 -0
  20. package/cli/abis/DAODistributor.js +1351 -0
  21. package/cli/abis/DAODistributor.js.map +1 -0
  22. package/cli/abis/Diamond.js +92 -0
  23. package/cli/abis/Diamond.js.map +1 -0
  24. package/cli/abis/DiamondClonable.js +103 -0
  25. package/cli/abis/DiamondClonable.js.map +1 -0
  26. package/cli/abis/DiamondCutFacet.js +89 -0
  27. package/cli/abis/DiamondCutFacet.js.map +1 -0
  28. package/cli/abis/DiamondDistribution.js +118 -0
  29. package/cli/abis/DiamondDistribution.js.map +1 -0
  30. package/cli/abis/DiamondInit.js +14 -0
  31. package/cli/abis/DiamondInit.js.map +1 -0
  32. package/cli/abis/DiamondLoupeFacet.js +102 -0
  33. package/cli/abis/DiamondLoupeFacet.js.map +1 -0
  34. package/cli/abis/DistributableGovernanceERC20.js +917 -0
  35. package/cli/abis/DistributableGovernanceERC20.js.map +1 -0
  36. package/cli/abis/Distributor.js +801 -0
  37. package/cli/abis/Distributor.js.map +1 -0
  38. package/cli/abis/ECDSA.js +34 -0
  39. package/cli/abis/ECDSA.js.map +1 -0
  40. package/cli/abis/EIP712InspectorFacet.js +58 -0
  41. package/cli/abis/EIP712InspectorFacet.js.map +1 -0
  42. package/cli/abis/EIP712Upgradeable.js +79 -0
  43. package/cli/abis/EIP712Upgradeable.js.map +1 -0
  44. package/cli/abis/ERC1155.js +421 -0
  45. package/cli/abis/ERC1155.js.map +1 -0
  46. package/cli/abis/ERC1155Burnable.js +467 -0
  47. package/cli/abis/ERC1155Burnable.js.map +1 -0
  48. package/cli/abis/ERC1155BurnableUpgradeable.js +490 -0
  49. package/cli/abis/ERC1155BurnableUpgradeable.js.map +1 -0
  50. package/cli/abis/ERC1155Upgradeable.js +444 -0
  51. package/cli/abis/ERC1155Upgradeable.js.map +1 -0
  52. package/cli/abis/ERC165.js +26 -0
  53. package/cli/abis/ERC165.js.map +1 -0
  54. package/cli/abis/ERC165Upgradeable.js +49 -0
  55. package/cli/abis/ERC165Upgradeable.js.map +1 -0
  56. package/cli/abis/ERC20.js +315 -0
  57. package/cli/abis/ERC20.js.map +1 -0
  58. package/cli/abis/ERC20Burnable.js +346 -0
  59. package/cli/abis/ERC20Burnable.js.map +1 -0
  60. package/cli/abis/ERC20Upgradeable.js +338 -0
  61. package/cli/abis/ERC20Upgradeable.js.map +1 -0
  62. package/cli/abis/ERC20VotesUpgradeable.js +781 -0
  63. package/cli/abis/ERC20VotesUpgradeable.js.map +1 -0
  64. package/cli/abis/ERC721.js +440 -0
  65. package/cli/abis/ERC721.js.map +1 -0
  66. package/cli/abis/ERC721Burnable.js +453 -0
  67. package/cli/abis/ERC721Burnable.js.map +1 -0
  68. package/cli/abis/IAccessControl.js +200 -0
  69. package/cli/abis/IAccessControl.js.map +1 -0
  70. package/cli/abis/IAccessControlDefaultAdminRules.js +399 -0
  71. package/cli/abis/IAccessControlDefaultAdminRules.js.map +1 -0
  72. package/cli/abis/ICodeIndex.js +74 -0
  73. package/cli/abis/ICodeIndex.js.map +1 -0
  74. package/cli/abis/IContractURI.js +20 -0
  75. package/cli/abis/IContractURI.js.map +1 -0
  76. package/cli/abis/IDAOFactory.js +89 -0
  77. package/cli/abis/IDAOFactory.js.map +1 -0
  78. package/cli/abis/IDiamondCut.js +47 -0
  79. package/cli/abis/IDiamondCut.js.map +1 -0
  80. package/cli/abis/IDiamondLoupe.js +83 -0
  81. package/cli/abis/IDiamondLoupe.js.map +1 -0
  82. package/cli/abis/IDistribution.js +91 -0
  83. package/cli/abis/IDistribution.js.map +1 -0
  84. package/cli/abis/IDistributor.js +627 -0
  85. package/cli/abis/IDistributor.js.map +1 -0
  86. package/cli/abis/IERC1155.js +300 -0
  87. package/cli/abis/IERC1155.js.map +1 -0
  88. package/cli/abis/IERC1155Errors.js +109 -0
  89. package/cli/abis/IERC1155Errors.js.map +1 -0
  90. package/cli/abis/IERC1155MetadataURI.js +319 -0
  91. package/cli/abis/IERC1155MetadataURI.js.map +1 -0
  92. package/cli/abis/IERC1155Receiver.js +85 -0
  93. package/cli/abis/IERC1155Receiver.js.map +1 -0
  94. package/cli/abis/IERC1271.js +31 -0
  95. package/cli/abis/IERC1271.js.map +1 -0
  96. package/cli/abis/IERC165.js +26 -0
  97. package/cli/abis/IERC165.js.map +1 -0
  98. package/cli/abis/IERC173.js +33 -0
  99. package/cli/abis/IERC173.js.map +1 -0
  100. package/cli/abis/IERC20.js +190 -0
  101. package/cli/abis/IERC20.js.map +1 -0
  102. package/cli/abis/IERC20Errors.js +93 -0
  103. package/cli/abis/IERC20Errors.js.map +1 -0
  104. package/cli/abis/IERC20Metadata.js +229 -0
  105. package/cli/abis/IERC20Metadata.js.map +1 -0
  106. package/cli/abis/IERC20MintableUpgradeable.js +25 -0
  107. package/cli/abis/IERC20MintableUpgradeable.js.map +1 -0
  108. package/cli/abis/IERC5267.js +56 -0
  109. package/cli/abis/IERC5267.js.map +1 -0
  110. package/cli/abis/IERC5313.js +20 -0
  111. package/cli/abis/IERC5313.js.map +1 -0
  112. package/cli/abis/IERC5805.js +226 -0
  113. package/cli/abis/IERC5805.js.map +1 -0
  114. package/cli/abis/IERC6372.js +33 -0
  115. package/cli/abis/IERC6372.js.map +1 -0
  116. package/cli/abis/IERC721.js +292 -0
  117. package/cli/abis/IERC721.js.map +1 -0
  118. package/cli/abis/IERC721Errors.js +110 -0
  119. package/cli/abis/IERC721Errors.js.map +1 -0
  120. package/cli/abis/IERC721Metadata.js +337 -0
  121. package/cli/abis/IERC721Metadata.js.map +1 -0
  122. package/cli/abis/IERC721Receiver.js +41 -0
  123. package/cli/abis/IERC721Receiver.js.map +1 -0
  124. package/cli/abis/IERC7746.js +84 -0
  125. package/cli/abis/IERC7746.js.map +1 -0
  126. package/cli/abis/IErrors.js +23 -0
  127. package/cli/abis/IErrors.js.map +1 -0
  128. package/cli/abis/IInitializer.js +75 -0
  129. package/cli/abis/IInitializer.js.map +1 -0
  130. package/cli/abis/IInstaller.js +506 -0
  131. package/cli/abis/IInstaller.js.map +1 -0
  132. package/cli/abis/ILockableERC1155.js +464 -0
  133. package/cli/abis/ILockableERC1155.js.map +1 -0
  134. package/cli/abis/IMultipass.js +1263 -0
  135. package/cli/abis/IMultipass.js.map +1 -0
  136. package/cli/abis/IPluginRepo.js +114 -0
  137. package/cli/abis/IPluginRepo.js.map +1 -0
  138. package/cli/abis/IRankToken.js +533 -0
  139. package/cli/abis/IRankToken.js.map +1 -0
  140. package/cli/abis/IRankifyInstance.js +147 -0
  141. package/cli/abis/IRankifyInstance.js.map +1 -0
  142. package/cli/abis/IRepository.js +343 -0
  143. package/cli/abis/IRepository.js.map +1 -0
  144. package/cli/abis/IVotes.js +200 -0
  145. package/cli/abis/IVotes.js.map +1 -0
  146. package/cli/abis/Initializable.js +30 -0
  147. package/cli/abis/Initializable.js.map +1 -0
  148. package/cli/abis/InitializedDiamondDistribution.js +107 -0
  149. package/cli/abis/InitializedDiamondDistribution.js.map +1 -0
  150. package/cli/abis/Installer.js +506 -0
  151. package/cli/abis/Installer.js.map +1 -0
  152. package/cli/abis/InstallerClonable.js +542 -0
  153. package/cli/abis/InstallerClonable.js.map +1 -0
  154. package/cli/abis/LatestVersionDistribution.js +136 -0
  155. package/cli/abis/LatestVersionDistribution.js.map +1 -0
  156. package/cli/abis/LibDiamond.js +79 -0
  157. package/cli/abis/LibDiamond.js.map +1 -0
  158. package/cli/abis/LibSemver.js +18 -0
  159. package/cli/abis/LibSemver.js.map +1 -0
  160. package/cli/abis/LockableERC1155.js +631 -0
  161. package/cli/abis/LockableERC1155.js.map +1 -0
  162. package/cli/abis/MAODistribution.js +285 -0
  163. package/cli/abis/MAODistribution.js.map +1 -0
  164. package/cli/abis/Math.js +12 -0
  165. package/cli/abis/Math.js.map +1 -0
  166. package/cli/abis/MiddlewareProxy.js +39 -0
  167. package/cli/abis/MiddlewareProxy.js.map +1 -0
  168. package/cli/abis/MockCloneDistribution.js +107 -0
  169. package/cli/abis/MockCloneDistribution.js.map +1 -0
  170. package/cli/abis/MockDiamondInitialize.js +33 -0
  171. package/cli/abis/MockDiamondInitialize.js.map +1 -0
  172. package/cli/abis/MockERC1155.js +636 -0
  173. package/cli/abis/MockERC1155.js.map +1 -0
  174. package/cli/abis/MockERC20.js +336 -0
  175. package/cli/abis/MockERC20.js.map +1 -0
  176. package/cli/abis/MockERC721.js +620 -0
  177. package/cli/abis/MockERC721.js.map +1 -0
  178. package/cli/abis/MockInstaller.js +596 -0
  179. package/cli/abis/MockInstaller.js.map +1 -0
  180. package/cli/abis/MockTokenizedDistributor.js +1351 -0
  181. package/cli/abis/MockTokenizedDistributor.js.map +1 -0
  182. package/cli/abis/MockVendingMachine.js +404 -0
  183. package/cli/abis/MockVendingMachine.js.map +1 -0
  184. package/cli/abis/Multipass.js +1461 -0
  185. package/cli/abis/Multipass.js.map +1 -0
  186. package/cli/abis/NoncesUpgradeable.js +65 -0
  187. package/cli/abis/NoncesUpgradeable.js.map +1 -0
  188. package/cli/abis/Ownable.js +81 -0
  189. package/cli/abis/Ownable.js.map +1 -0
  190. package/cli/abis/OwnableDistributor.js +886 -0
  191. package/cli/abis/OwnableDistributor.js.map +1 -0
  192. package/cli/abis/OwnableRepository.js +566 -0
  193. package/cli/abis/OwnableRepository.js.map +1 -0
  194. package/cli/abis/OwnableUpgradeable.js +104 -0
  195. package/cli/abis/OwnableUpgradeable.js.map +1 -0
  196. package/cli/abis/OwnershipFacet.js +52 -0
  197. package/cli/abis/OwnershipFacet.js.map +1 -0
  198. package/cli/abis/RankToken.js +783 -0
  199. package/cli/abis/RankToken.js.map +1 -0
  200. package/cli/abis/Rankify.js +449 -0
  201. package/cli/abis/Rankify.js.map +1 -0
  202. package/cli/abis/RankifyDiamondInstance.js +2032 -0
  203. package/cli/abis/RankifyDiamondInstance.js.map +1 -0
  204. package/cli/abis/RankifyInstanceEventMock.js +332 -0
  205. package/cli/abis/RankifyInstanceEventMock.js.map +1 -0
  206. package/cli/abis/RankifyInstanceGameMastersFacet.js +319 -0
  207. package/cli/abis/RankifyInstanceGameMastersFacet.js.map +1 -0
  208. package/cli/abis/RankifyInstanceInit.js +80 -0
  209. package/cli/abis/RankifyInstanceInit.js.map +1 -0
  210. package/cli/abis/RankifyInstanceMainFacet.js +987 -0
  211. package/cli/abis/RankifyInstanceMainFacet.js.map +1 -0
  212. package/cli/abis/RankifyInstanceRequirementsFacet.js +549 -0
  213. package/cli/abis/RankifyInstanceRequirementsFacet.js.map +1 -0
  214. package/cli/abis/ReentrancyGuard.js +12 -0
  215. package/cli/abis/ReentrancyGuard.js.map +1 -0
  216. package/cli/abis/ReentrancyGuardUpgradeable.js +35 -0
  217. package/cli/abis/ReentrancyGuardUpgradeable.js.map +1 -0
  218. package/cli/abis/Repo.js +566 -0
  219. package/cli/abis/Repo.js.map +1 -0
  220. package/cli/abis/Repository.js +471 -0
  221. package/cli/abis/Repository.js.map +1 -0
  222. package/cli/abis/SafeCast.js +61 -0
  223. package/cli/abis/SafeCast.js.map +1 -0
  224. package/cli/abis/SimpleAccessManager.js +224 -0
  225. package/cli/abis/SimpleAccessManager.js.map +1 -0
  226. package/cli/abis/Strings.js +23 -0
  227. package/cli/abis/Strings.js.map +1 -0
  228. package/cli/abis/Test1Facet.js +179 -0
  229. package/cli/abis/Test1Facet.js.map +1 -0
  230. package/cli/abis/Test2Facet.js +147 -0
  231. package/cli/abis/Test2Facet.js.map +1 -0
  232. package/cli/abis/TestFacet.js +33 -0
  233. package/cli/abis/TestFacet.js.map +1 -0
  234. package/cli/abis/TokenizedDistributor.js +878 -0
  235. package/cli/abis/TokenizedDistributor.js.map +1 -0
  236. package/cli/abis/VotesUpgradeable.js +402 -0
  237. package/cli/abis/VotesUpgradeable.js.map +1 -0
  238. package/cli/abis/index.js +484 -0
  239. package/cli/abis/index.js.map +1 -0
  240. package/cli/cli/client.js +57 -0
  241. package/cli/cli/client.js.map +1 -0
  242. package/cli/cli/commands/distributions/add.js +96 -0
  243. package/cli/cli/commands/distributions/add.js.map +1 -0
  244. package/cli/cli/commands/distributions/index.js +11 -0
  245. package/cli/cli/commands/distributions/index.js.map +1 -0
  246. package/cli/cli/commands/distributions/list.js +42 -0
  247. package/cli/cli/commands/distributions/list.js.map +1 -0
  248. package/cli/cli/commands/fellowship/create.js +130 -0
  249. package/cli/cli/commands/fellowship/create.js.map +1 -0
  250. package/cli/cli/commands/fellowship/index.js +11 -0
  251. package/cli/cli/commands/fellowship/index.js.map +1 -0
  252. package/cli/cli/commands/fellowship/metadata.js +42 -0
  253. package/cli/cli/commands/fellowship/metadata.js.map +1 -0
  254. package/cli/cli/commands/instances/index.js +7 -0
  255. package/cli/cli/commands/instances/index.js.map +1 -0
  256. package/cli/cli/commands/instances/list.js +50 -0
  257. package/cli/cli/commands/instances/list.js.map +1 -0
  258. package/cli/cli/commands/multipass/contract.js +178 -0
  259. package/cli/cli/commands/multipass/contract.js.map +1 -0
  260. package/cli/cli/commands/multipass/domain.js +512 -0
  261. package/cli/cli/commands/multipass/domain.js.map +1 -0
  262. package/cli/cli/commands/multipass/domains.js +141 -0
  263. package/cli/cli/commands/multipass/domains.js.map +1 -0
  264. package/cli/cli/commands/multipass/index.js +20 -0
  265. package/cli/cli/commands/multipass/index.js.map +1 -0
  266. package/cli/cli/commands/multipass/owner.js +320 -0
  267. package/cli/cli/commands/multipass/owner.js.map +1 -0
  268. package/cli/cli/index.js +20 -0
  269. package/cli/cli/index.js.map +1 -0
  270. package/cli/eds/Distributor.js +76 -0
  271. package/cli/eds/Distributor.js.map +1 -0
  272. package/cli/index.js +50 -0
  273. package/cli/index.js.map +1 -0
  274. package/cli/multipass/MultipassBase.js +307 -0
  275. package/cli/multipass/MultipassBase.js.map +1 -0
  276. package/cli/multipass/Owner.js +214 -0
  277. package/cli/multipass/Owner.js.map +1 -0
  278. package/cli/multipass/Registrar.js +77 -0
  279. package/cli/multipass/Registrar.js.map +1 -0
  280. package/cli/rankify/GameMaster.js +372 -0
  281. package/cli/rankify/GameMaster.js.map +1 -0
  282. package/cli/rankify/InstanceBase.js +432 -0
  283. package/cli/rankify/InstanceBase.js.map +1 -0
  284. package/cli/rankify/MAODistributor.js +278 -0
  285. package/cli/rankify/MAODistributor.js.map +1 -0
  286. package/cli/rankify/Player.js +175 -0
  287. package/cli/rankify/Player.js.map +1 -0
  288. package/cli/rankify/RankToken.js +109 -0
  289. package/cli/rankify/RankToken.js.map +1 -0
  290. package/cli/types/contracts.js +3 -0
  291. package/cli/types/contracts.js.map +1 -0
  292. package/cli/types.js +30 -0
  293. package/cli/types.js.map +1 -0
  294. package/cli/utils/ApiError.js +21 -0
  295. package/cli/utils/ApiError.js.map +1 -0
  296. package/cli/utils/artifacts.js +51 -0
  297. package/cli/utils/artifacts.js.map +1 -0
  298. package/cli/utils/chainMapping.js +16 -0
  299. package/cli/utils/chainMapping.js.map +1 -0
  300. package/cli/utils/index.js +35 -0
  301. package/cli/utils/index.js.map +1 -0
  302. package/docs/classes/MAODistributorClient.md +89 -43
  303. package/docs/classes/Multipass.md +148 -0
  304. package/docs/classes/MultipassBase.md +120 -0
  305. package/docs/classes/RankTokenClient.md +34 -0
  306. package/docs/docs/classes/MAODistributorClient.md +89 -43
  307. package/docs/docs/classes/Multipass.md +148 -0
  308. package/docs/docs/classes/MultipassBase.md +120 -0
  309. package/docs/docs/classes/RankTokenClient.md +34 -0
  310. package/docs/docs/enums/CONTENT_STORAGE.md +27 -0
  311. package/docs/docs/enums/SUBMISSION_TYPES.md +41 -0
  312. package/docs/docs/index.md +137 -3
  313. package/docs/enums/CONTENT_STORAGE.md +27 -0
  314. package/docs/enums/SUBMISSION_TYPES.md +41 -0
  315. package/docs/index.md +137 -3
  316. package/lib.commonjs/eds/Distributor.d.ts +5 -1
  317. package/lib.commonjs/eds/Distributor.d.ts.map +1 -1
  318. package/lib.commonjs/eds/Distributor.js +14 -2
  319. package/lib.commonjs/eds/Distributor.js.map +1 -1
  320. package/lib.commonjs/multipass/MultipassBase.d.ts +1185 -2
  321. package/lib.commonjs/multipass/MultipassBase.d.ts.map +1 -1
  322. package/lib.commonjs/multipass/MultipassBase.js +168 -1
  323. package/lib.commonjs/multipass/MultipassBase.js.map +1 -1
  324. package/lib.commonjs/multipass/Owner.d.ts +137 -0
  325. package/lib.commonjs/multipass/Owner.d.ts.map +1 -0
  326. package/lib.commonjs/multipass/Owner.js +214 -0
  327. package/lib.commonjs/multipass/Owner.js.map +1 -0
  328. package/lib.commonjs/multipass/Registrar.d.ts +3 -2
  329. package/lib.commonjs/multipass/Registrar.d.ts.map +1 -1
  330. package/lib.commonjs/multipass/Registrar.js +3 -3
  331. package/lib.commonjs/multipass/Registrar.js.map +1 -1
  332. package/lib.commonjs/rankify/MAODistributor.d.ts +1042 -2
  333. package/lib.commonjs/rankify/MAODistributor.d.ts.map +1 -1
  334. package/lib.commonjs/rankify/MAODistributor.js +146 -33
  335. package/lib.commonjs/rankify/MAODistributor.js.map +1 -1
  336. package/lib.commonjs/rankify/Player.js +7 -7
  337. package/lib.commonjs/rankify/Player.js.map +1 -1
  338. package/lib.commonjs/rankify/RankToken.d.ts +3 -0
  339. package/lib.commonjs/rankify/RankToken.d.ts.map +1 -1
  340. package/lib.commonjs/rankify/RankToken.js +74 -0
  341. package/lib.commonjs/rankify/RankToken.js.map +1 -1
  342. package/lib.commonjs/types/contracts.d.ts +0 -6
  343. package/lib.commonjs/types/contracts.d.ts.map +1 -1
  344. package/lib.commonjs/types/contracts.js +0 -16
  345. package/lib.commonjs/types/contracts.js.map +1 -1
  346. package/lib.commonjs/types.d.ts +113 -2
  347. package/lib.commonjs/types.d.ts.map +1 -1
  348. package/lib.commonjs/types.js +15 -1
  349. package/lib.commonjs/types.js.map +1 -1
  350. package/lib.commonjs/utils/artifacts.d.ts +5 -2
  351. package/lib.commonjs/utils/artifacts.d.ts.map +1 -1
  352. package/lib.commonjs/utils/artifacts.js +4 -2
  353. package/lib.commonjs/utils/artifacts.js.map +1 -1
  354. package/lib.commonjs/utils/index.d.ts +7 -0
  355. package/lib.commonjs/utils/index.d.ts.map +1 -1
  356. package/lib.commonjs/utils/index.js +16 -0
  357. package/lib.commonjs/utils/index.js.map +1 -1
  358. package/lib.esm/eds/Distributor.d.ts +5 -1
  359. package/lib.esm/eds/Distributor.d.ts.map +1 -1
  360. package/lib.esm/eds/Distributor.js +14 -2
  361. package/lib.esm/eds/Distributor.js.map +1 -1
  362. package/lib.esm/multipass/MultipassBase.d.ts +1185 -2
  363. package/lib.esm/multipass/MultipassBase.d.ts.map +1 -1
  364. package/lib.esm/multipass/MultipassBase.js +168 -1
  365. package/lib.esm/multipass/MultipassBase.js.map +1 -1
  366. package/lib.esm/multipass/Owner.d.ts +137 -0
  367. package/lib.esm/multipass/Owner.d.ts.map +1 -0
  368. package/lib.esm/multipass/Owner.js +208 -0
  369. package/lib.esm/multipass/Owner.js.map +1 -0
  370. package/lib.esm/multipass/Registrar.d.ts +3 -2
  371. package/lib.esm/multipass/Registrar.d.ts.map +1 -1
  372. package/lib.esm/multipass/Registrar.js +3 -3
  373. package/lib.esm/multipass/Registrar.js.map +1 -1
  374. package/lib.esm/rankify/MAODistributor.d.ts +1042 -2
  375. package/lib.esm/rankify/MAODistributor.d.ts.map +1 -1
  376. package/lib.esm/rankify/MAODistributor.js +144 -31
  377. package/lib.esm/rankify/MAODistributor.js.map +1 -1
  378. package/lib.esm/rankify/Player.js +7 -7
  379. package/lib.esm/rankify/Player.js.map +1 -1
  380. package/lib.esm/rankify/RankToken.d.ts +3 -0
  381. package/lib.esm/rankify/RankToken.d.ts.map +1 -1
  382. package/lib.esm/rankify/RankToken.js +74 -0
  383. package/lib.esm/rankify/RankToken.js.map +1 -1
  384. package/lib.esm/types/contracts.d.ts +0 -6
  385. package/lib.esm/types/contracts.d.ts.map +1 -1
  386. package/lib.esm/types/contracts.js +1 -14
  387. package/lib.esm/types/contracts.js.map +1 -1
  388. package/lib.esm/types.d.ts +113 -2
  389. package/lib.esm/types.d.ts.map +1 -1
  390. package/lib.esm/types.js +14 -0
  391. package/lib.esm/types.js.map +1 -1
  392. package/lib.esm/utils/artifacts.d.ts +5 -2
  393. package/lib.esm/utils/artifacts.d.ts.map +1 -1
  394. package/lib.esm/utils/artifacts.js +5 -3
  395. package/lib.esm/utils/artifacts.js.map +1 -1
  396. package/lib.esm/utils/index.d.ts +7 -0
  397. package/lib.esm/utils/index.d.ts.map +1 -1
  398. package/lib.esm/utils/index.js +14 -0
  399. package/lib.esm/utils/index.js.map +1 -1
  400. package/package.json +16 -6
@@ -0,0 +1,432 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.gameStatusEnum = void 0;
7
+ const index_1 = require("../utils/index");
8
+ const RankifyDiamondInstance_1 = __importDefault(require("../abis/RankifyDiamondInstance"));
9
+ /**
10
+ * Enum representing different states of a game instance
11
+ * @public
12
+ */
13
+ var gameStatusEnum;
14
+ (function (gameStatusEnum) {
15
+ /** Game has been created but not opened for registration */
16
+ gameStatusEnum["created"] = "Game created";
17
+ /** Game is open for player registration */
18
+ gameStatusEnum["open"] = "Registration open";
19
+ /** Game is in progress */
20
+ gameStatusEnum["started"] = "In progress";
21
+ /** Game is in its final turn */
22
+ gameStatusEnum["lastTurn"] = "Playing last turn";
23
+ /** Game is in overtime */
24
+ gameStatusEnum["overtime"] = "PLaying in overtime";
25
+ /** Game has finished */
26
+ gameStatusEnum["finished"] = "Finished";
27
+ /** Game was not found */
28
+ gameStatusEnum["notFound"] = "not found";
29
+ })(gameStatusEnum || (exports.gameStatusEnum = gameStatusEnum = {}));
30
+ /**
31
+ * Base class for interacting with a Rankify game instance
32
+ * Provides core functionality for managing game state and interactions
33
+ */
34
+ class InstanceBase {
35
+ /** Public client for blockchain interactions */
36
+ publicClient;
37
+ /** Chain ID of the network */
38
+ chainId;
39
+ /** Address of the Rankify instance contract */
40
+ instanceAddress;
41
+ /**
42
+ * Creates a new InstanceBase
43
+ * @param {Object} params - Constructor parameters
44
+ * @param {PublicClient} params.publicClient - Public client for blockchain interactions
45
+ * @param {number} params.chainId - Chain ID of the network
46
+ * @param {Address} params.instanceAddress - Address of the Rankify instance contract
47
+ */
48
+ constructor({ publicClient, chainId, instanceAddress, }) {
49
+ this.publicClient = publicClient;
50
+ this.chainId = chainId;
51
+ this.instanceAddress = instanceAddress;
52
+ }
53
+ /**
54
+ * Retrieves the historic turn information for a specific game and turn ID.
55
+ * @returns The historic turn event object.
56
+ * @throws {ApiError} If the game or turn is not found.
57
+ */
58
+ getHistoricTurn = async (gameId, turnId) => {
59
+ const logs = await this.publicClient.getContractEvents({
60
+ address: this.instanceAddress,
61
+ abi: RankifyDiamondInstance_1.default,
62
+ eventName: "TurnEnded",
63
+ args: {
64
+ gameId,
65
+ turn: turnId,
66
+ },
67
+ });
68
+ if (logs.length !== 1) {
69
+ console.error("getHistoricTurn", gameId, turnId, "failed:", logs.length);
70
+ throw new index_1.ApiError("Game not found", { status: 404 });
71
+ }
72
+ return logs[0];
73
+ };
74
+ /**
75
+ * Retrieves the previous turn information for a specific game.
76
+ * @param gameId - The ID of the game.
77
+ * @returns The previous turn information for the specified game.
78
+ */
79
+ getPreviousTurnStats = async (gameId) => {
80
+ const currentTurn = await this.publicClient.readContract({
81
+ address: this.instanceAddress,
82
+ abi: RankifyDiamondInstance_1.default,
83
+ functionName: "getTurn",
84
+ args: [gameId],
85
+ });
86
+ if (currentTurn > 1n) {
87
+ return this.getHistoricTurn(gameId, currentTurn - 1n);
88
+ }
89
+ else {
90
+ return {
91
+ players: "N/A",
92
+ scores: "N/A",
93
+ turnSalt: "N/A",
94
+ voters: ["N/A"],
95
+ votesRevealed: ["N/A"],
96
+ };
97
+ }
98
+ };
99
+ /**
100
+ * Retrieves the voting information for a specific game and turn.
101
+ * @param gameId - The ID of the game.
102
+ * @param turnId - The ID of the turn.
103
+ * @returns The voting information for the specified game and turn.
104
+ */
105
+ getVoting = async (gameId, turnId) => {
106
+ if (!gameId)
107
+ throw new Error("gameId not set");
108
+ if (!turnId)
109
+ throw new Error("turnId not set");
110
+ const voteEvents = await this.publicClient.getContractEvents({
111
+ address: this.instanceAddress,
112
+ abi: RankifyDiamondInstance_1.default,
113
+ eventName: "VoteSubmitted",
114
+ args: {
115
+ gameId,
116
+ turn: turnId,
117
+ },
118
+ });
119
+ const proposalEvents = await this.publicClient.getContractEvents({
120
+ address: this.instanceAddress,
121
+ abi: RankifyDiamondInstance_1.default,
122
+ eventName: "ProposalSubmitted",
123
+ args: {
124
+ gameId,
125
+ turn: turnId,
126
+ },
127
+ });
128
+ return { voteEvents, proposalEvents };
129
+ };
130
+ /**
131
+ * Retrieves the ongoing voting for a specific game.
132
+ * @param gameId - The ID of the game.
133
+ */
134
+ getOngoingVoting = async (gameId) => {
135
+ try {
136
+ const turn = await this.publicClient.readContract({
137
+ address: this.instanceAddress,
138
+ abi: RankifyDiamondInstance_1.default,
139
+ functionName: "getTurn",
140
+ args: [gameId],
141
+ });
142
+ return this.getVoting(gameId, turn);
143
+ }
144
+ catch (error) {
145
+ console.error(error);
146
+ }
147
+ };
148
+ /**
149
+ * Retrieves the ongoing proposals for a specific game.
150
+ * @param gameId - The ID of the game.
151
+ * @returns The ongoing proposals for the specified game.
152
+ */
153
+ getOngoingProposals = async (gameId) => {
154
+ const currentTurn = await this.publicClient.readContract({
155
+ address: this.instanceAddress,
156
+ abi: RankifyDiamondInstance_1.default,
157
+ functionName: "getTurn",
158
+ args: [gameId],
159
+ });
160
+ try {
161
+ const lastTurnEndedEvent = await this.publicClient.getContractEvents({
162
+ address: this.instanceAddress,
163
+ abi: RankifyDiamondInstance_1.default,
164
+ eventName: "TurnEnded",
165
+ args: { turn: currentTurn - 1n, gameId },
166
+ });
167
+ if (lastTurnEndedEvent.length !== 1) {
168
+ console.error("getOngoingProposals", gameId, "failed:", lastTurnEndedEvent.length);
169
+ throw new index_1.ApiError("Game not found", { status: 404 });
170
+ }
171
+ const args = lastTurnEndedEvent[0].args;
172
+ return { currentTurn, proposals: args.newProposals };
173
+ }
174
+ catch (error) {
175
+ console.error("Error in getOngoingProposals:", error);
176
+ return { currentTurn, proposals: [] };
177
+ }
178
+ };
179
+ /**
180
+ * Retrieves the registration deadline for a specific game.
181
+ * @param gameId - The ID of the game.
182
+ * @param timeToJoin - Optional. The additional time (in seconds) to join the game.
183
+ * @returns A Promise that resolves to the registration deadline timestamp.
184
+ */
185
+ getRegistrationDeadline = async (gameId, timeToJoin) => {
186
+ const log = await this.publicClient.getContractEvents({
187
+ address: this.instanceAddress,
188
+ abi: RankifyDiamondInstance_1.default,
189
+ eventName: "RegistrationOpen",
190
+ args: {
191
+ gameId: gameId,
192
+ },
193
+ });
194
+ if (log.length !== 1) {
195
+ console.error("getRegistrationDeadline", gameId, "failed:", log.length);
196
+ throw new index_1.ApiError("Game not found", { status: 404 });
197
+ }
198
+ const block = await this.publicClient.getBlock({ blockNumber: log[0].blockNumber });
199
+ if (timeToJoin) {
200
+ return Number(block.timestamp) + timeToJoin;
201
+ }
202
+ const gameState = await this.publicClient.readContract({
203
+ address: this.instanceAddress,
204
+ abi: RankifyDiamondInstance_1.default,
205
+ functionName: "getGameState",
206
+ args: [gameId],
207
+ });
208
+ return Number(block.timestamp) + Number(gameState.timeToJoin);
209
+ };
210
+ /**
211
+ * Resolves the deadline for the current turn.
212
+ * @param block The current block.
213
+ * @param gameId The ID of the game.
214
+ * @param timePerTurn The time duration per turn (optional).
215
+ * @returns The deadline for the current turn.
216
+ */
217
+ resolveTurnDeadline = async (block, gameId, timePerTurn) => {
218
+ if (timePerTurn)
219
+ return Number(block.timestamp) + timePerTurn;
220
+ const gameState = await this.publicClient.readContract({
221
+ address: this.instanceAddress,
222
+ abi: RankifyDiamondInstance_1.default,
223
+ functionName: "getGameState",
224
+ args: [gameId],
225
+ });
226
+ return Number(block.timestamp) + Number(gameState.timePerTurn);
227
+ };
228
+ /**
229
+ * Retrieves the deadline for the current turn in a game.
230
+ * @param gameId - The ID of the game.
231
+ * @param timePerTurn - Optional. The duration of each turn in seconds.
232
+ * @returns A Promise that resolves to the deadline for the current turn, or 0 if the turn has not started.
233
+ */
234
+ getTurnDeadline = async (gameId, timePerTurn) => {
235
+ if (!gameId)
236
+ throw new Error("gameId not set");
237
+ const currentTurn = await this.publicClient.readContract({
238
+ address: this.instanceAddress,
239
+ abi: RankifyDiamondInstance_1.default,
240
+ functionName: "getTurn",
241
+ args: [gameId],
242
+ });
243
+ if (currentTurn === 0n)
244
+ return 0;
245
+ const eventName = currentTurn === 1n ? "GameStarted" : "TurnEnded";
246
+ const args = currentTurn === 1n ? { gameId } : { gameId, turnId: currentTurn - 1n };
247
+ const logs = await this.publicClient.getContractEvents({
248
+ address: this.instanceAddress,
249
+ abi: RankifyDiamondInstance_1.default,
250
+ eventName: eventName,
251
+ args: args,
252
+ });
253
+ if (logs.length !== 1) {
254
+ console.error("getTurnDeadline", gameId, "failed:", logs.length);
255
+ throw new index_1.ApiError("Game not found", { status: 404 });
256
+ }
257
+ const block = await this.publicClient.getBlock({ blockNumber: logs[0].blockNumber });
258
+ return this.resolveTurnDeadline(block, gameId, timePerTurn);
259
+ };
260
+ /**
261
+ * Retrieves the contract state.
262
+ */
263
+ getContractState = async () => {
264
+ const state = await this.publicClient.readContract({
265
+ address: this.instanceAddress,
266
+ abi: RankifyDiamondInstance_1.default,
267
+ functionName: "getContractState",
268
+ });
269
+ return state;
270
+ };
271
+ /**
272
+ * Retrieves a player's game.
273
+ * @param account - The player's account address.
274
+ */
275
+ getPlayersGame = async (account) => {
276
+ return this.publicClient.readContract({
277
+ address: this.instanceAddress,
278
+ abi: RankifyDiamondInstance_1.default,
279
+ functionName: "getPlayersGame",
280
+ args: [account],
281
+ });
282
+ };
283
+ /**
284
+ * Retrieves the list of proposal scores for a specific game.
285
+ * @param gameId - The ID of the game.
286
+ * @returns A Promise that resolves to the list of proposal scores.
287
+ */
288
+ getProposalScoresList = async (gameId) => {
289
+ if (!gameId)
290
+ throw new Error("gameId not set");
291
+ const logs = await this.publicClient.getContractEvents({
292
+ address: this.instanceAddress,
293
+ abi: RankifyDiamondInstance_1.default,
294
+ eventName: "ProposalScore",
295
+ args: { gameId },
296
+ });
297
+ return logs;
298
+ };
299
+ /**
300
+ * Retrieves the current turn of a game.
301
+ * @param gameId - The ID of the game.
302
+ * @returns A Promise that resolves to the current turn of the game.
303
+ */
304
+ getCurrentTurn = async (gameId) => {
305
+ return this.publicClient.readContract({
306
+ address: this.instanceAddress,
307
+ abi: RankifyDiamondInstance_1.default,
308
+ functionName: "getTurn",
309
+ args: [gameId],
310
+ });
311
+ };
312
+ /**
313
+ * Retrieves the game state for a specific game.
314
+ * @param gameId - The ID of the game.
315
+ * @returns A promise that resolves to an object containing the game state.
316
+ */
317
+ getGameState = async (gameId) => {
318
+ const [gameMaster, joinRequirements, scores, currentTurn, isFinished, isOvertime, isLastTurn, isOpen, createdBy, gameRank, players, canStart,] = await Promise.all([
319
+ this.publicClient.readContract({
320
+ address: this.instanceAddress,
321
+ abi: RankifyDiamondInstance_1.default,
322
+ functionName: "getGM",
323
+ args: [gameId],
324
+ }),
325
+ this.publicClient.readContract({
326
+ address: this.instanceAddress,
327
+ abi: RankifyDiamondInstance_1.default,
328
+ functionName: "getJoinRequirements",
329
+ args: [gameId],
330
+ }),
331
+ this.publicClient.readContract({
332
+ address: this.instanceAddress,
333
+ abi: RankifyDiamondInstance_1.default,
334
+ functionName: "getScores",
335
+ args: [gameId],
336
+ }),
337
+ this.publicClient.readContract({
338
+ address: this.instanceAddress,
339
+ abi: RankifyDiamondInstance_1.default,
340
+ functionName: "getTurn",
341
+ args: [gameId],
342
+ }),
343
+ this.publicClient.readContract({
344
+ address: this.instanceAddress,
345
+ abi: RankifyDiamondInstance_1.default,
346
+ functionName: "isGameOver",
347
+ args: [gameId],
348
+ }),
349
+ this.publicClient.readContract({
350
+ address: this.instanceAddress,
351
+ abi: RankifyDiamondInstance_1.default,
352
+ functionName: "isOvertime",
353
+ args: [gameId],
354
+ }),
355
+ this.publicClient.readContract({
356
+ address: this.instanceAddress,
357
+ abi: RankifyDiamondInstance_1.default,
358
+ functionName: "isLastTurn",
359
+ args: [gameId],
360
+ }),
361
+ this.publicClient.readContract({
362
+ address: this.instanceAddress,
363
+ abi: RankifyDiamondInstance_1.default,
364
+ functionName: "isRegistrationOpen",
365
+ args: [gameId],
366
+ }),
367
+ this.publicClient.readContract({
368
+ address: this.instanceAddress,
369
+ abi: RankifyDiamondInstance_1.default,
370
+ functionName: "gameCreator",
371
+ args: [gameId],
372
+ }),
373
+ this.publicClient.readContract({
374
+ address: this.instanceAddress,
375
+ abi: RankifyDiamondInstance_1.default,
376
+ functionName: "getGameRank",
377
+ args: [gameId],
378
+ }),
379
+ this.publicClient.readContract({
380
+ address: this.instanceAddress,
381
+ abi: RankifyDiamondInstance_1.default,
382
+ functionName: "getPlayers",
383
+ args: [gameId],
384
+ }),
385
+ this.publicClient.readContract({
386
+ address: this.instanceAddress,
387
+ abi: RankifyDiamondInstance_1.default,
388
+ functionName: "canStartGame",
389
+ args: [gameId],
390
+ }),
391
+ ]);
392
+ const requirementsPerContract = await Promise.all(joinRequirements.contractAddresses.map(async (address, idx) => {
393
+ return this.publicClient.readContract({
394
+ address: this.instanceAddress,
395
+ abi: RankifyDiamondInstance_1.default,
396
+ functionName: "getJoinRequirementsByToken",
397
+ args: [gameId, address, joinRequirements.contractIds[idx], joinRequirements.contractTypes[idx]],
398
+ });
399
+ }));
400
+ const gamePhase = isFinished
401
+ ? gameStatusEnum["finished"]
402
+ : isOvertime
403
+ ? gameStatusEnum["overtime"]
404
+ : isLastTurn
405
+ ? gameStatusEnum["lastTurn"]
406
+ : currentTurn > 0n
407
+ ? gameStatusEnum["started"]
408
+ : isOpen
409
+ ? gameStatusEnum["open"]
410
+ : gameMaster
411
+ ? gameStatusEnum["created"]
412
+ : gameStatusEnum["notFound"];
413
+ return {
414
+ gameMaster,
415
+ joinRequirements,
416
+ requirementsPerContract,
417
+ scores,
418
+ currentTurn,
419
+ isFinished,
420
+ isOvertime,
421
+ isLastTurn,
422
+ isOpen,
423
+ createdBy,
424
+ gameRank,
425
+ players,
426
+ canStart,
427
+ gamePhase,
428
+ };
429
+ };
430
+ }
431
+ exports.default = InstanceBase;
432
+ //# sourceMappingURL=InstanceBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InstanceBase.js","sourceRoot":"","sources":["../../../src/rankify/InstanceBase.ts"],"names":[],"mappings":"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"}