@peeramid-labs/sdk 3.14.0 → 3.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -1
- package/cli/abis/ArguableVotingTournament.js +15 -0
- package/cli/abis/ArguableVotingTournament.js.map +1 -1
- package/cli/abis/MAODistribution.js +16 -0
- package/cli/abis/MAODistribution.js.map +1 -1
- package/cli/abis/MockShortStrings.js +37 -0
- package/cli/abis/MockShortStrings.js.map +1 -0
- package/cli/abis/Multipass.js +7 -1
- package/cli/abis/Multipass.js.map +1 -1
- package/cli/abis/PausableUpgradeable.js +79 -0
- package/cli/abis/PausableUpgradeable.js.map +1 -0
- package/cli/abis/RankToken.js +38 -0
- package/cli/abis/RankToken.js.map +1 -1
- package/cli/abis/RankifyDiamondInstance.js +3275 -1863
- package/cli/abis/RankifyDiamondInstance.js.map +1 -1
- package/cli/abis/RankifyInstanceInit.js +190 -0
- package/cli/abis/RankifyInstanceInit.js.map +1 -1
- package/cli/abis/RankifyInstanceMainFacet.js +99 -68
- package/cli/abis/RankifyInstanceMainFacet.js.map +1 -1
- package/cli/abis/RankifyOwnersFacet.js +78 -0
- package/cli/abis/RankifyOwnersFacet.js.map +1 -0
- package/cli/abis/ScoreGetterFacet.js +195 -0
- package/cli/abis/ScoreGetterFacet.js.map +1 -0
- package/cli/abis/UBI.js +775 -0
- package/cli/abis/UBI.js.map +1 -0
- package/cli/abis/index.js +21 -1
- package/cli/abis/index.js.map +1 -1
- package/cli/abis/superinterface.js +192 -7
- package/cli/abis/superinterface.js.map +1 -1
- package/cli/cli/commands/blockchain/mine.js +0 -2
- package/cli/cli/commands/blockchain/mine.js.map +1 -1
- package/cli/cli/commands/fellowship/game/create.js +49 -2
- package/cli/cli/commands/fellowship/game/create.js.map +1 -1
- package/cli/cli/commands/fellowship/game/end-proposing.js +2 -2
- package/cli/cli/commands/fellowship/game/end-proposing.js.map +1 -1
- package/cli/cli/commands/fellowship/game/end-voting.js +2 -2
- package/cli/cli/commands/fellowship/game/end-voting.js.map +1 -1
- package/cli/cli/commands/fellowship/game/join.js +2 -1
- package/cli/cli/commands/fellowship/game/join.js.map +1 -1
- package/cli/cli/commands/fellowship/game/start.js +0 -17
- package/cli/cli/commands/fellowship/game/start.js.map +1 -1
- package/cli/cli/commands/fellowship/game/vote.js +2 -1
- package/cli/cli/commands/fellowship/game/vote.js.map +1 -1
- package/cli/cli/commands/fellowship/gameMaster/add.js +52 -0
- package/cli/cli/commands/fellowship/gameMaster/add.js.map +1 -0
- package/cli/cli/commands/fellowship/gameMaster/index.js +7 -0
- package/cli/cli/commands/fellowship/gameMaster/index.js.map +1 -0
- package/cli/cli/commands/fellowship/index.js +3 -1
- package/cli/cli/commands/fellowship/index.js.map +1 -1
- package/cli/cli/commands/instances/list.js +6 -0
- package/cli/cli/commands/instances/list.js.map +1 -1
- package/cli/cli/commands/multipass/contract.js +26 -0
- package/cli/cli/commands/multipass/contract.js.map +1 -1
- package/cli/cli/commands/multipass/domain.js +44 -1
- package/cli/cli/commands/multipass/domain.js.map +1 -1
- package/cli/cli/commands/multipass/domains.js +16 -2
- package/cli/cli/commands/multipass/domains.js.map +1 -1
- package/cli/cli/playbooks/demo-script.js +192 -0
- package/cli/cli/playbooks/demo-script.js.map +1 -0
- package/cli/cli/playbooks/demoScript.js +190 -0
- package/cli/cli/playbooks/demoScript.js.map +1 -0
- package/cli/cli/playbooks/initGameMaster.js +50 -0
- package/cli/cli/playbooks/initGameMaster.js.map +1 -0
- package/cli/cli/playbooks/playbookRunner.js +80 -0
- package/cli/cli/playbooks/playbookRunner.js.map +1 -0
- package/cli/cli/playbooks/push-game-to-next-phase.js +162 -0
- package/cli/cli/playbooks/push-game-to-next-phase.js.map +1 -0
- package/cli/cli/playbooks/utils.js +210 -0
- package/cli/cli/playbooks/utils.js.map +1 -0
- package/cli/cli/utils.js +47 -0
- package/cli/cli/utils.js.map +1 -1
- package/cli/multipass/MultipassBase.js +38 -70
- package/cli/multipass/MultipassBase.js.map +1 -1
- package/cli/multipass/Owner.js +34 -16
- package/cli/multipass/Owner.js.map +1 -1
- package/cli/rankify/GameMaster.js +1 -1
- package/cli/rankify/GameMaster.js.map +1 -1
- package/cli/rankify/InstanceAdmininstrative.js +70 -0
- package/cli/rankify/InstanceAdmininstrative.js.map +1 -0
- package/cli/rankify/InstanceBase.js +168 -2
- package/cli/rankify/InstanceBase.js.map +1 -1
- package/cli/rankify/Player.js +45 -3
- package/cli/rankify/Player.js.map +1 -1
- package/cli/types.js +7 -1
- package/cli/types.js.map +1 -1
- package/cli/utils/EnvioGraphQLClient.js +527 -0
- package/cli/utils/EnvioGraphQLClient.js.map +1 -1
- package/cli/utils/artifacts.js +23 -2
- package/cli/utils/artifacts.js.map +1 -1
- package/cli/utils/chainMapping.js +1 -1
- package/cli/utils/chainMapping.js.map +1 -1
- package/docs/classes/EnvioGraphQLClient.md +390 -22
- package/docs/classes/GameMaster.md +19 -0
- package/docs/classes/InstanceBase.md +179 -4
- package/docs/classes/InstancePlayer.md +214 -13
- package/docs/classes/InstanceUBI.md +1591 -0
- package/docs/classes/Multipass.md +31 -4
- package/docs/classes/MultipassBase.md +26 -3
- package/docs/docs/classes/EnvioGraphQLClient.md +390 -22
- package/docs/docs/classes/GameMaster.md +19 -0
- package/docs/docs/classes/InstanceBase.md +179 -4
- package/docs/docs/classes/InstancePlayer.md +214 -13
- package/docs/docs/classes/InstanceUBI.md +1591 -0
- package/docs/docs/classes/Multipass.md +31 -4
- package/docs/docs/classes/MultipassBase.md +26 -3
- package/docs/docs/enums/ContractTypes.md +27 -0
- package/docs/docs/index.md +25 -8
- package/docs/docs/interfaces/ContractCondition.md +41 -0
- package/docs/docs/interfaces/DailyProposal.md +36 -0
- package/docs/docs/interfaces/EnvioGraphQLClientConfig.md +9 -0
- package/docs/docs/interfaces/JoinRequirementsInput.md +20 -0
- package/docs/docs/interfaces/ProposalGlobalStats.md +29 -0
- package/docs/docs/interfaces/TransactionProperties.md +20 -0
- package/docs/docs/interfaces/UBIParams.md +29 -0
- package/docs/docs/interfaces/UserState.md +22 -0
- package/docs/docs/interfaces/VoteElement.md +22 -0
- package/docs/docs/interfaces/configSmartRequirement.md +34 -0
- package/docs/docs/interfaces/numericConditon.md +41 -0
- package/docs/enums/ContractTypes.md +27 -0
- package/docs/index.md +25 -8
- package/docs/interfaces/ContractCondition.md +41 -0
- package/docs/interfaces/DailyProposal.md +36 -0
- package/docs/interfaces/EnvioGraphQLClientConfig.md +9 -0
- package/docs/interfaces/JoinRequirementsInput.md +20 -0
- package/docs/interfaces/ProposalGlobalStats.md +29 -0
- package/docs/interfaces/TransactionProperties.md +20 -0
- package/docs/interfaces/UBIParams.md +29 -0
- package/docs/interfaces/UserState.md +22 -0
- package/docs/interfaces/VoteElement.md +22 -0
- package/docs/interfaces/configSmartRequirement.md +34 -0
- package/docs/interfaces/numericConditon.md +41 -0
- package/lib.commonjs/abis/ArguableVotingTournament.d.ts +12 -0
- package/lib.commonjs/abis/ArguableVotingTournament.d.ts.map +1 -1
- package/lib.commonjs/abis/ArguableVotingTournament.js +15 -0
- package/lib.commonjs/abis/ArguableVotingTournament.js.map +1 -1
- package/lib.commonjs/abis/MAODistribution.d.ts +12 -0
- package/lib.commonjs/abis/MAODistribution.d.ts.map +1 -1
- package/lib.commonjs/abis/MAODistribution.js +16 -0
- package/lib.commonjs/abis/MAODistribution.js.map +1 -1
- package/lib.commonjs/abis/MockShortStrings.d.ts +25 -0
- package/lib.commonjs/abis/MockShortStrings.d.ts.map +1 -0
- package/lib.commonjs/abis/MockShortStrings.js +37 -0
- package/lib.commonjs/abis/MockShortStrings.js.map +1 -0
- package/lib.commonjs/abis/Multipass.d.ts +5 -1
- package/lib.commonjs/abis/Multipass.d.ts.map +1 -1
- package/lib.commonjs/abis/Multipass.js +7 -1
- package/lib.commonjs/abis/Multipass.js.map +1 -1
- package/lib.commonjs/abis/PausableUpgradeable.d.ts +59 -0
- package/lib.commonjs/abis/PausableUpgradeable.d.ts.map +1 -0
- package/lib.commonjs/abis/PausableUpgradeable.js +79 -0
- package/lib.commonjs/abis/PausableUpgradeable.js.map +1 -0
- package/lib.commonjs/abis/RankToken.d.ts +30 -0
- package/lib.commonjs/abis/RankToken.d.ts.map +1 -1
- package/lib.commonjs/abis/RankToken.js +38 -0
- package/lib.commonjs/abis/RankToken.js.map +1 -1
- package/lib.commonjs/abis/RankifyDiamondInstance.d.ts +2499 -1401
- package/lib.commonjs/abis/RankifyDiamondInstance.d.ts.map +1 -1
- package/lib.commonjs/abis/RankifyDiamondInstance.js +3275 -1863
- package/lib.commonjs/abis/RankifyDiamondInstance.js.map +1 -1
- package/lib.commonjs/abis/RankifyInstanceInit.d.ts +150 -0
- package/lib.commonjs/abis/RankifyInstanceInit.d.ts.map +1 -1
- package/lib.commonjs/abis/RankifyInstanceInit.js +190 -0
- package/lib.commonjs/abis/RankifyInstanceInit.js.map +1 -1
- package/lib.commonjs/abis/RankifyInstanceMainFacet.d.ts +81 -56
- package/lib.commonjs/abis/RankifyInstanceMainFacet.d.ts.map +1 -1
- package/lib.commonjs/abis/RankifyInstanceMainFacet.js +99 -68
- package/lib.commonjs/abis/RankifyInstanceMainFacet.js.map +1 -1
- package/lib.commonjs/abis/RankifyOwnersFacet.d.ts +57 -0
- package/lib.commonjs/abis/RankifyOwnersFacet.d.ts.map +1 -0
- package/lib.commonjs/abis/RankifyOwnersFacet.js +78 -0
- package/lib.commonjs/abis/RankifyOwnersFacet.js.map +1 -0
- package/lib.commonjs/abis/ScoreGetterFacet.d.ts +145 -0
- package/lib.commonjs/abis/ScoreGetterFacet.d.ts.map +1 -0
- package/lib.commonjs/abis/ScoreGetterFacet.js +195 -0
- package/lib.commonjs/abis/ScoreGetterFacet.js.map +1 -0
- package/lib.commonjs/abis/UBI.d.ts +601 -0
- package/lib.commonjs/abis/UBI.d.ts.map +1 -0
- package/lib.commonjs/abis/UBI.js +775 -0
- package/lib.commonjs/abis/UBI.js.map +1 -0
- package/lib.commonjs/abis/index.d.ts +3746 -1533
- package/lib.commonjs/abis/index.d.ts.map +1 -1
- package/lib.commonjs/abis/index.js +21 -1
- package/lib.commonjs/abis/index.js.map +1 -1
- package/lib.commonjs/abis/superinterface.d.ts +1 -1
- package/lib.commonjs/abis/superinterface.d.ts.map +1 -1
- package/lib.commonjs/abis/superinterface.js +192 -7
- package/lib.commonjs/abis/superinterface.js.map +1 -1
- package/lib.commonjs/index.d.ts +2 -0
- package/lib.commonjs/index.d.ts.map +1 -1
- package/lib.commonjs/index.js +3 -1
- package/lib.commonjs/index.js.map +1 -1
- package/lib.commonjs/multipass/MultipassBase.d.ts +18 -4
- package/lib.commonjs/multipass/MultipassBase.d.ts.map +1 -1
- package/lib.commonjs/multipass/MultipassBase.js +39 -71
- package/lib.commonjs/multipass/MultipassBase.js.map +1 -1
- package/lib.commonjs/multipass/Owner.d.ts +22 -8
- package/lib.commonjs/multipass/Owner.d.ts.map +1 -1
- package/lib.commonjs/multipass/Owner.js +34 -16
- package/lib.commonjs/multipass/Owner.js.map +1 -1
- package/lib.commonjs/multipass/Registrar.d.ts +3 -1
- package/lib.commonjs/multipass/Registrar.d.ts.map +1 -1
- package/lib.commonjs/multipass/Registrar.js +2 -2
- package/lib.commonjs/multipass/Registrar.js.map +1 -1
- package/lib.commonjs/rankify/GameMaster.d.ts +5 -1
- package/lib.commonjs/rankify/GameMaster.d.ts.map +1 -1
- package/lib.commonjs/rankify/GameMaster.js +1 -1
- package/lib.commonjs/rankify/GameMaster.js.map +1 -1
- package/lib.commonjs/rankify/InstanceAdmininstrative.d.ts +34 -0
- package/lib.commonjs/rankify/InstanceAdmininstrative.d.ts.map +1 -0
- package/lib.commonjs/rankify/InstanceAdmininstrative.js +74 -0
- package/lib.commonjs/rankify/InstanceAdmininstrative.js.map +1 -0
- package/lib.commonjs/rankify/InstanceBase.d.ts +63 -2
- package/lib.commonjs/rankify/InstanceBase.d.ts.map +1 -1
- package/lib.commonjs/rankify/InstanceBase.js +168 -2
- package/lib.commonjs/rankify/InstanceBase.js.map +1 -1
- package/lib.commonjs/rankify/Player.d.ts +5 -35
- package/lib.commonjs/rankify/Player.d.ts.map +1 -1
- package/lib.commonjs/rankify/Player.js +45 -3
- package/lib.commonjs/rankify/Player.js.map +1 -1
- package/lib.commonjs/types.d.ts +33 -0
- package/lib.commonjs/types.d.ts.map +1 -1
- package/lib.commonjs/types.js +7 -1
- package/lib.commonjs/types.js.map +1 -1
- package/lib.commonjs/ubi/InstanceUBI.d.ts +548 -0
- package/lib.commonjs/ubi/InstanceUBI.d.ts.map +1 -0
- package/lib.commonjs/ubi/InstanceUBI.js +728 -0
- package/lib.commonjs/ubi/InstanceUBI.js.map +1 -0
- package/lib.commonjs/utils/EnvioGraphQLClient.d.ts +295 -0
- package/lib.commonjs/utils/EnvioGraphQLClient.d.ts.map +1 -1
- package/lib.commonjs/utils/EnvioGraphQLClient.js +527 -0
- package/lib.commonjs/utils/EnvioGraphQLClient.js.map +1 -1
- package/lib.commonjs/utils/artifacts.d.ts.map +1 -1
- package/lib.commonjs/utils/artifacts.js +23 -2
- package/lib.commonjs/utils/artifacts.js.map +1 -1
- package/lib.commonjs/utils/chainMapping.js +1 -1
- package/lib.commonjs/utils/chainMapping.js.map +1 -1
- package/lib.commonjs/utils/mockUtils.d.ts +3 -0
- package/lib.commonjs/utils/mockUtils.d.ts.map +1 -1
- package/lib.commonjs/utils/mockUtils.js +3 -0
- package/lib.commonjs/utils/mockUtils.js.map +1 -1
- package/lib.esm/abis/ArguableVotingTournament.d.ts +12 -0
- package/lib.esm/abis/ArguableVotingTournament.d.ts.map +1 -1
- package/lib.esm/abis/ArguableVotingTournament.js +15 -0
- package/lib.esm/abis/ArguableVotingTournament.js.map +1 -1
- package/lib.esm/abis/MAODistribution.d.ts +12 -0
- package/lib.esm/abis/MAODistribution.d.ts.map +1 -1
- package/lib.esm/abis/MAODistribution.js +16 -0
- package/lib.esm/abis/MAODistribution.js.map +1 -1
- package/lib.esm/abis/MockShortStrings.d.ts +25 -0
- package/lib.esm/abis/MockShortStrings.d.ts.map +1 -0
- package/lib.esm/abis/MockShortStrings.js +34 -0
- package/lib.esm/abis/MockShortStrings.js.map +1 -0
- package/lib.esm/abis/Multipass.d.ts +5 -1
- package/lib.esm/abis/Multipass.d.ts.map +1 -1
- package/lib.esm/abis/Multipass.js +7 -1
- package/lib.esm/abis/Multipass.js.map +1 -1
- package/lib.esm/abis/PausableUpgradeable.d.ts +59 -0
- package/lib.esm/abis/PausableUpgradeable.d.ts.map +1 -0
- package/lib.esm/abis/PausableUpgradeable.js +76 -0
- package/lib.esm/abis/PausableUpgradeable.js.map +1 -0
- package/lib.esm/abis/RankToken.d.ts +30 -0
- package/lib.esm/abis/RankToken.d.ts.map +1 -1
- package/lib.esm/abis/RankToken.js +38 -0
- package/lib.esm/abis/RankToken.js.map +1 -1
- package/lib.esm/abis/RankifyDiamondInstance.d.ts +2499 -1401
- package/lib.esm/abis/RankifyDiamondInstance.d.ts.map +1 -1
- package/lib.esm/abis/RankifyDiamondInstance.js +3275 -1863
- package/lib.esm/abis/RankifyDiamondInstance.js.map +1 -1
- package/lib.esm/abis/RankifyInstanceInit.d.ts +150 -0
- package/lib.esm/abis/RankifyInstanceInit.d.ts.map +1 -1
- package/lib.esm/abis/RankifyInstanceInit.js +190 -0
- package/lib.esm/abis/RankifyInstanceInit.js.map +1 -1
- package/lib.esm/abis/RankifyInstanceMainFacet.d.ts +81 -56
- package/lib.esm/abis/RankifyInstanceMainFacet.d.ts.map +1 -1
- package/lib.esm/abis/RankifyInstanceMainFacet.js +99 -68
- package/lib.esm/abis/RankifyInstanceMainFacet.js.map +1 -1
- package/lib.esm/abis/RankifyOwnersFacet.d.ts +57 -0
- package/lib.esm/abis/RankifyOwnersFacet.d.ts.map +1 -0
- package/lib.esm/abis/RankifyOwnersFacet.js +75 -0
- package/lib.esm/abis/RankifyOwnersFacet.js.map +1 -0
- package/lib.esm/abis/ScoreGetterFacet.d.ts +145 -0
- package/lib.esm/abis/ScoreGetterFacet.d.ts.map +1 -0
- package/lib.esm/abis/ScoreGetterFacet.js +192 -0
- package/lib.esm/abis/ScoreGetterFacet.js.map +1 -0
- package/lib.esm/abis/UBI.d.ts +601 -0
- package/lib.esm/abis/UBI.d.ts.map +1 -0
- package/lib.esm/abis/UBI.js +772 -0
- package/lib.esm/abis/UBI.js.map +1 -0
- package/lib.esm/abis/index.d.ts +3746 -1533
- package/lib.esm/abis/index.d.ts.map +1 -1
- package/lib.esm/abis/index.js +15 -0
- package/lib.esm/abis/index.js.map +1 -1
- package/lib.esm/abis/superinterface.d.ts +1 -1
- package/lib.esm/abis/superinterface.d.ts.map +1 -1
- package/lib.esm/abis/superinterface.js +192 -7
- package/lib.esm/abis/superinterface.js.map +1 -1
- package/lib.esm/index.d.ts +2 -0
- package/lib.esm/index.d.ts.map +1 -1
- package/lib.esm/index.js +1 -0
- package/lib.esm/index.js.map +1 -1
- package/lib.esm/multipass/MultipassBase.d.ts +18 -4
- package/lib.esm/multipass/MultipassBase.d.ts.map +1 -1
- package/lib.esm/multipass/MultipassBase.js +40 -72
- package/lib.esm/multipass/MultipassBase.js.map +1 -1
- package/lib.esm/multipass/Owner.d.ts +22 -8
- package/lib.esm/multipass/Owner.d.ts.map +1 -1
- package/lib.esm/multipass/Owner.js +34 -16
- package/lib.esm/multipass/Owner.js.map +1 -1
- package/lib.esm/multipass/Registrar.d.ts +3 -1
- package/lib.esm/multipass/Registrar.d.ts.map +1 -1
- package/lib.esm/multipass/Registrar.js +2 -2
- package/lib.esm/multipass/Registrar.js.map +1 -1
- package/lib.esm/rankify/GameMaster.d.ts +5 -1
- package/lib.esm/rankify/GameMaster.d.ts.map +1 -1
- package/lib.esm/rankify/GameMaster.js +1 -1
- package/lib.esm/rankify/GameMaster.js.map +1 -1
- package/lib.esm/rankify/InstanceAdmininstrative.d.ts +34 -0
- package/lib.esm/rankify/InstanceAdmininstrative.d.ts.map +1 -0
- package/lib.esm/rankify/InstanceAdmininstrative.js +70 -0
- package/lib.esm/rankify/InstanceAdmininstrative.js.map +1 -0
- package/lib.esm/rankify/InstanceBase.d.ts +63 -2
- package/lib.esm/rankify/InstanceBase.d.ts.map +1 -1
- package/lib.esm/rankify/InstanceBase.js +168 -2
- package/lib.esm/rankify/InstanceBase.js.map +1 -1
- package/lib.esm/rankify/Player.d.ts +5 -35
- package/lib.esm/rankify/Player.d.ts.map +1 -1
- package/lib.esm/rankify/Player.js +45 -3
- package/lib.esm/rankify/Player.js.map +1 -1
- package/lib.esm/types.d.ts +33 -0
- package/lib.esm/types.d.ts.map +1 -1
- package/lib.esm/types.js +6 -0
- package/lib.esm/types.js.map +1 -1
- package/lib.esm/ubi/InstanceUBI.d.ts +548 -0
- package/lib.esm/ubi/InstanceUBI.d.ts.map +1 -0
- package/lib.esm/ubi/InstanceUBI.js +722 -0
- package/lib.esm/ubi/InstanceUBI.js.map +1 -0
- package/lib.esm/utils/EnvioGraphQLClient.d.ts +295 -0
- package/lib.esm/utils/EnvioGraphQLClient.d.ts.map +1 -1
- package/lib.esm/utils/EnvioGraphQLClient.js +527 -0
- package/lib.esm/utils/EnvioGraphQLClient.js.map +1 -1
- package/lib.esm/utils/artifacts.d.ts.map +1 -1
- package/lib.esm/utils/artifacts.js +23 -2
- package/lib.esm/utils/artifacts.js.map +1 -1
- package/lib.esm/utils/chainMapping.js +1 -1
- package/lib.esm/utils/chainMapping.js.map +1 -1
- package/lib.esm/utils/mockUtils.d.ts +3 -0
- package/lib.esm/utils/mockUtils.d.ts.map +1 -1
- package/lib.esm/utils/mockUtils.js +3 -0
- package/lib.esm/utils/mockUtils.js.map +1 -1
- package/package.json +7 -7
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Address, type Hex, type PublicClient } from "viem";
|
|
2
2
|
import type { RegisterMessage } from "../types";
|
|
3
|
+
import EnvioGraphQLClient from "../utils/EnvioGraphQLClient";
|
|
3
4
|
export type Domain = {
|
|
4
5
|
name: string;
|
|
5
6
|
registrar: Address;
|
|
@@ -39,16 +40,18 @@ export default class MultipassBase {
|
|
|
39
40
|
chainId: number;
|
|
40
41
|
/** Public client for reading contracts */
|
|
41
42
|
publicClient: PublicClient;
|
|
42
|
-
|
|
43
|
+
envioClient: EnvioGraphQLClient;
|
|
43
44
|
/**
|
|
44
45
|
* Creates a new MultipassBase instance
|
|
45
46
|
* @param params - Constructor parameters
|
|
46
47
|
* @param params.chainId - ID of the blockchain network
|
|
47
48
|
* @param params.publicClient - Public client for reading contracts
|
|
49
|
+
* @param params.envioClient - Envio GraphQL client for querying data
|
|
48
50
|
*/
|
|
49
|
-
constructor({ chainId, publicClient }: {
|
|
51
|
+
constructor({ chainId, publicClient, envioClient, }: {
|
|
50
52
|
chainId: number;
|
|
51
53
|
publicClient: PublicClient;
|
|
54
|
+
envioClient: EnvioGraphQLClient;
|
|
52
55
|
});
|
|
53
56
|
/**
|
|
54
57
|
* Generates a URL for a dapp
|
|
@@ -59,6 +62,12 @@ export default class MultipassBase {
|
|
|
59
62
|
* @returns The generated URL
|
|
60
63
|
*/
|
|
61
64
|
getDappURL(message: object, signature: string, basepath: string, contractAddress: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* Convert a string to bytes32 format with length encoded in the last byte (UBI format)
|
|
67
|
+
* @param text - The string to convert
|
|
68
|
+
* @returns Hex string representing the bytes32 value
|
|
69
|
+
*/
|
|
70
|
+
getShortStringBytes32(text: string): `0x${string}`;
|
|
62
71
|
getRegistrarMessage: ({ username, id, domainName, validUntil, }: {
|
|
63
72
|
username: string;
|
|
64
73
|
id: string;
|
|
@@ -73,10 +82,11 @@ export default class MultipassBase {
|
|
|
73
82
|
* @param params.targetDomain - Target domain to be encoded in the query
|
|
74
83
|
* @returns The generated name query
|
|
75
84
|
*/
|
|
76
|
-
formQueryByAddress: ({ address, domainName, targetDomain, }: {
|
|
85
|
+
formQueryByAddress: ({ address, domainName, targetDomain, useBytes32, }: {
|
|
77
86
|
address: string;
|
|
78
87
|
domainName: string;
|
|
79
88
|
targetDomain?: string;
|
|
89
|
+
useBytes32?: boolean;
|
|
80
90
|
}) => NameQuery;
|
|
81
91
|
/**
|
|
82
92
|
* Creates a name query by ID
|
|
@@ -138,7 +148,11 @@ export default class MultipassBase {
|
|
|
138
148
|
}) => NameQuery;
|
|
139
149
|
getContractAddress(): Address;
|
|
140
150
|
protected getAbi(): readonly [{
|
|
141
|
-
readonly inputs: readonly [
|
|
151
|
+
readonly inputs: readonly [{
|
|
152
|
+
readonly internalType: "bool";
|
|
153
|
+
readonly name: "isTest";
|
|
154
|
+
readonly type: "bool";
|
|
155
|
+
}];
|
|
142
156
|
readonly stateMutability: "nonpayable";
|
|
143
157
|
readonly type: "constructor";
|
|
144
158
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultipassBase.d.ts","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"MultipassBase.d.ts","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { stringToHex, zeroAddress, isAddress } from "viem";
|
|
1
|
+
import { stringToHex, zeroAddress, isAddress, stringToBytes, toHex, } from "viem";
|
|
2
2
|
import { MultipassAbi } from "../abis";
|
|
3
3
|
import { getArtifact } from "../utils";
|
|
4
4
|
/**
|
|
@@ -9,18 +9,18 @@ export default class MultipassBase {
|
|
|
9
9
|
chainId;
|
|
10
10
|
/** Public client for reading contracts */
|
|
11
11
|
publicClient;
|
|
12
|
-
|
|
12
|
+
envioClient;
|
|
13
13
|
/**
|
|
14
14
|
* Creates a new MultipassBase instance
|
|
15
15
|
* @param params - Constructor parameters
|
|
16
16
|
* @param params.chainId - ID of the blockchain network
|
|
17
17
|
* @param params.publicClient - Public client for reading contracts
|
|
18
|
+
* @param params.envioClient - Envio GraphQL client for querying data
|
|
18
19
|
*/
|
|
19
|
-
constructor({ chainId, publicClient }) {
|
|
20
|
+
constructor({ chainId, publicClient, envioClient, }) {
|
|
20
21
|
this.chainId = chainId;
|
|
21
22
|
this.publicClient = publicClient;
|
|
22
|
-
|
|
23
|
-
this.creationBlock = BigInt(receipt.blockNumber);
|
|
23
|
+
this.envioClient = envioClient;
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
26
|
* Generates a URL for a dapp
|
|
@@ -41,6 +41,22 @@ export default class MultipassBase {
|
|
|
41
41
|
"&chainId=" +
|
|
42
42
|
this.chainId);
|
|
43
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Convert a string to bytes32 format with length encoded in the last byte (UBI format)
|
|
46
|
+
* @param text - The string to convert
|
|
47
|
+
* @returns Hex string representing the bytes32 value
|
|
48
|
+
*/
|
|
49
|
+
getShortStringBytes32(text) {
|
|
50
|
+
const utf8Bytes = stringToBytes(text);
|
|
51
|
+
const len = utf8Bytes.length;
|
|
52
|
+
if (len > 31) {
|
|
53
|
+
throw new Error(`String "${text}" is too long for a bytes32. Maximum length is 31 bytes.`);
|
|
54
|
+
}
|
|
55
|
+
const bytes32Array = new Uint8Array(32);
|
|
56
|
+
bytes32Array.set(utf8Bytes);
|
|
57
|
+
bytes32Array[31] = len;
|
|
58
|
+
return toHex(bytes32Array);
|
|
59
|
+
}
|
|
44
60
|
getRegistrarMessage = ({ username, id, domainName, validUntil, }) => {
|
|
45
61
|
return {
|
|
46
62
|
name: stringToHex(username, { size: 32 }),
|
|
@@ -58,14 +74,14 @@ export default class MultipassBase {
|
|
|
58
74
|
* @param params.targetDomain - Target domain to be encoded in the query
|
|
59
75
|
* @returns The generated name query
|
|
60
76
|
*/
|
|
61
|
-
formQueryByAddress = ({ address, domainName, targetDomain, }) => {
|
|
77
|
+
formQueryByAddress = ({ address, domainName, targetDomain, useBytes32, }) => {
|
|
62
78
|
if (!isAddress(address))
|
|
63
79
|
throw new Error("formQueryByAddress: is not a valid address");
|
|
64
80
|
return {
|
|
65
81
|
name: stringToHex("", { size: 32 }),
|
|
66
82
|
id: stringToHex("", { size: 32 }),
|
|
67
83
|
wallet: address,
|
|
68
|
-
domainName: stringToHex(domainName, { size: 32 }),
|
|
84
|
+
domainName: useBytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 }),
|
|
69
85
|
targetDomain: stringToHex(targetDomain ?? "", { size: 32 }),
|
|
70
86
|
};
|
|
71
87
|
};
|
|
@@ -193,50 +209,26 @@ export default class MultipassBase {
|
|
|
193
209
|
* @returns Array of domains with their states
|
|
194
210
|
*/
|
|
195
211
|
async listDomains(onlyActive) {
|
|
196
|
-
const initializedFilter = await this.
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
fromBlock: this.creationBlock,
|
|
200
|
-
eventName: "InitializedDomain",
|
|
201
|
-
});
|
|
202
|
-
const activatedFilter = await this.publicClient.getContractEvents({
|
|
203
|
-
address: this.getContractAddress(),
|
|
204
|
-
abi: MultipassAbi,
|
|
205
|
-
fromBlock: 0n,
|
|
206
|
-
eventName: "DomainActivated",
|
|
207
|
-
});
|
|
208
|
-
const deactivatedFilter = await this.publicClient.getContractEvents({
|
|
209
|
-
address: this.getContractAddress(),
|
|
210
|
-
abi: MultipassAbi,
|
|
211
|
-
fromBlock: 0n,
|
|
212
|
-
eventName: "DomainDeactivated",
|
|
213
|
-
});
|
|
212
|
+
const initializedFilter = await this.envioClient.getMultipassInitializedDomainEvents({});
|
|
213
|
+
const activatedFilter = await this.envioClient.getMultipassDomainActivatedEvents({});
|
|
214
|
+
const deactivatedFilter = await this.envioClient.getMultipassDomainDeactivatedEvents({});
|
|
214
215
|
const domains = new Map();
|
|
215
216
|
// Process initialized domains
|
|
216
217
|
for (const event of initializedFilter) {
|
|
217
|
-
const
|
|
218
|
-
|
|
219
|
-
continue;
|
|
220
|
-
const domainState = await this.getDomainState(args.domainName);
|
|
221
|
-
domains.set(args.domainName, domainState);
|
|
218
|
+
const domainState = await this.getDomainState(event.domainName);
|
|
219
|
+
domains.set(event.domainName, domainState);
|
|
222
220
|
}
|
|
223
221
|
// Update active status
|
|
224
222
|
for (const event of activatedFilter) {
|
|
225
|
-
const
|
|
226
|
-
if (!args || !domains.has(args.domainName))
|
|
227
|
-
continue;
|
|
228
|
-
const domain = domains.get(args.domainName);
|
|
223
|
+
const domain = domains.get(event.domainName);
|
|
229
224
|
domain.isActive = true;
|
|
230
|
-
domains.set(
|
|
225
|
+
domains.set(event.domainName, domain);
|
|
231
226
|
}
|
|
232
227
|
// Update deactive status
|
|
233
228
|
for (const event of deactivatedFilter) {
|
|
234
|
-
const
|
|
235
|
-
if (!args || !domains.has(args.domainName))
|
|
236
|
-
continue;
|
|
237
|
-
const domain = domains.get(args.domainName);
|
|
229
|
+
const domain = domains.get(event.domainName);
|
|
238
230
|
domain.isActive = false;
|
|
239
|
-
domains.set(
|
|
231
|
+
domains.set(event.domainName, domain);
|
|
240
232
|
}
|
|
241
233
|
let result = Array.from(domains.values());
|
|
242
234
|
if (onlyActive) {
|
|
@@ -250,24 +242,9 @@ export default class MultipassBase {
|
|
|
250
242
|
* @returns Array of records with their states
|
|
251
243
|
*/
|
|
252
244
|
async listRecords(onlyActive) {
|
|
253
|
-
const registeredFilterP = this.
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
fromBlock: this.creationBlock,
|
|
257
|
-
eventName: "Registered",
|
|
258
|
-
});
|
|
259
|
-
const renewedFilterP = this.publicClient.getContractEvents({
|
|
260
|
-
address: this.getContractAddress(),
|
|
261
|
-
abi: MultipassAbi,
|
|
262
|
-
fromBlock: this.creationBlock,
|
|
263
|
-
eventName: "Renewed",
|
|
264
|
-
});
|
|
265
|
-
const deletedFilterP = this.publicClient.getContractEvents({
|
|
266
|
-
address: this.getContractAddress(),
|
|
267
|
-
abi: MultipassAbi,
|
|
268
|
-
fromBlock: this.creationBlock,
|
|
269
|
-
eventName: "nameDeleted",
|
|
270
|
-
});
|
|
245
|
+
const registeredFilterP = this.envioClient.getMultipassRegisteredEvents({});
|
|
246
|
+
const renewedFilterP = this.envioClient.getMultipassRenewedEvents({});
|
|
247
|
+
const deletedFilterP = this.envioClient.getMultipassNameDeletedEvents({});
|
|
271
248
|
const [registeredFilter, renewedFilter, deletedFilter] = await Promise.all([
|
|
272
249
|
registeredFilterP,
|
|
273
250
|
renewedFilterP,
|
|
@@ -276,26 +253,17 @@ export default class MultipassBase {
|
|
|
276
253
|
const records = new Map();
|
|
277
254
|
// Process registered records
|
|
278
255
|
for (const event of registeredFilter) {
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
continue;
|
|
282
|
-
const key = `${args.NewRecord.name}-${args.NewRecord.id}-${args.NewRecord.domainName}`;
|
|
283
|
-
records.set(key, { record: args.NewRecord, isActive: true });
|
|
256
|
+
const key = `${event.name}-${event.userId}-${event.domainName}`;
|
|
257
|
+
records.set(key, { record: event, isActive: true });
|
|
284
258
|
}
|
|
285
259
|
// Update renewed records
|
|
286
260
|
for (const event of renewedFilter) {
|
|
287
|
-
const
|
|
288
|
-
|
|
289
|
-
continue;
|
|
290
|
-
const key = `${args.newRecord.name}-${args.newRecord.id}-${args.newRecord.domainName}`;
|
|
291
|
-
records.set(key, { record: args.newRecord, isActive: true });
|
|
261
|
+
const key = `${event.name}-${event.userId}-${event.domainName}`;
|
|
262
|
+
records.set(key, { record: event, isActive: true });
|
|
292
263
|
}
|
|
293
264
|
// Update deleted records
|
|
294
265
|
for (const event of deletedFilter) {
|
|
295
|
-
const
|
|
296
|
-
if (!args)
|
|
297
|
-
continue;
|
|
298
|
-
const key = `${args.name}-${args.id}-${args.domainName}`;
|
|
266
|
+
const key = `${event.name}-${event.userId}-${event.domainName}`;
|
|
299
267
|
if (records.has(key)) {
|
|
300
268
|
const record = records.get(key);
|
|
301
269
|
record.isActive = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultipassBase.js","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"MultipassBase.js","sourceRoot":"","sources":["../../../src/multipass/MultipassBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Address, type Hash, type WalletClient, type PublicClient } from "viem";
|
|
2
2
|
import MultipassBase from "./MultipassBase";
|
|
3
|
+
import EnvioGraphQLClient from "../utils/EnvioGraphQLClient";
|
|
3
4
|
export type NameQuery = {
|
|
4
5
|
name: `0x${string}`;
|
|
5
6
|
id: `0x${string}`;
|
|
@@ -17,10 +18,11 @@ export type Record = {
|
|
|
17
18
|
};
|
|
18
19
|
export default class MultipassOwner extends MultipassBase {
|
|
19
20
|
private walletClient;
|
|
20
|
-
constructor({ chainId, walletClient, publicClient, }: {
|
|
21
|
+
constructor({ chainId, walletClient, publicClient, envioClient, }: {
|
|
21
22
|
chainId: number;
|
|
22
23
|
walletClient: WalletClient;
|
|
23
24
|
publicClient: PublicClient;
|
|
25
|
+
envioClient: EnvioGraphQLClient;
|
|
24
26
|
});
|
|
25
27
|
/**
|
|
26
28
|
* Register a new name in Multipass
|
|
@@ -59,43 +61,50 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
59
61
|
* @param params.domainName Domain name as string
|
|
60
62
|
* @param params.referrerReward Reward for referrers in wei
|
|
61
63
|
* @param params.referralDiscount Discount for referred users in wei
|
|
64
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
62
65
|
* @returns Transaction hash
|
|
63
66
|
*/
|
|
64
|
-
initializeDomain({ registrar, fee, renewalFee, domainName, referrerReward, referralDiscount, }: {
|
|
67
|
+
initializeDomain({ registrar, fee, renewalFee, domainName, referrerReward, referralDiscount, bytes32, }: {
|
|
65
68
|
registrar: Address;
|
|
66
69
|
fee: bigint;
|
|
67
70
|
renewalFee: bigint;
|
|
68
71
|
domainName: string;
|
|
69
72
|
referrerReward: bigint;
|
|
70
73
|
referralDiscount: bigint;
|
|
74
|
+
bytes32?: boolean;
|
|
71
75
|
}): Promise<Hash>;
|
|
72
76
|
/**
|
|
73
77
|
* Deactivate a domain in Multipass
|
|
74
78
|
* @param domainName Domain name to deactivate
|
|
79
|
+
* @param bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
75
80
|
* @returns Transaction hash
|
|
76
81
|
*/
|
|
77
|
-
deactivateDomain(domainName: string): Promise<Hash>;
|
|
82
|
+
deactivateDomain(domainName: string, bytes32?: boolean): Promise<Hash>;
|
|
78
83
|
/**
|
|
79
84
|
* Change the registration fee for a domain
|
|
80
85
|
* @param params Parameters for changing fee
|
|
81
86
|
* @param params.domainName Domain name
|
|
82
87
|
* @param params.fee New fee in wei
|
|
88
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
83
89
|
* @returns Transaction hash
|
|
84
90
|
*/
|
|
85
|
-
changeFee({ domainName, fee }: {
|
|
91
|
+
changeFee({ domainName, fee, bytes32, }: {
|
|
86
92
|
domainName: string;
|
|
87
93
|
fee: bigint;
|
|
94
|
+
bytes32?: boolean;
|
|
88
95
|
}): Promise<Hash>;
|
|
89
96
|
/**
|
|
90
97
|
* Change the registrar for a domain
|
|
91
98
|
* @param params Parameters for changing registrar
|
|
92
99
|
* @param params.domainName Domain name
|
|
93
100
|
* @param params.newRegistrar Address of the new registrar
|
|
101
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
94
102
|
* @returns Transaction hash
|
|
95
103
|
*/
|
|
96
|
-
changeRegistrar({ domainName, newRegistrar, }: {
|
|
104
|
+
changeRegistrar({ domainName, newRegistrar, bytes32, }: {
|
|
97
105
|
domainName: string;
|
|
98
106
|
newRegistrar: Address;
|
|
107
|
+
bytes32?: boolean;
|
|
99
108
|
}): Promise<Hash>;
|
|
100
109
|
/**
|
|
101
110
|
* Delete a name from a domain
|
|
@@ -109,29 +118,34 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
109
118
|
* @param params.domainName Domain name
|
|
110
119
|
* @param params.referrerReward New referrer reward in wei
|
|
111
120
|
* @param params.referralDiscount New referral discount in wei
|
|
121
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
112
122
|
* @returns Transaction hash
|
|
113
123
|
*/
|
|
114
|
-
changeReferralProgram({ domainName, referrerReward, referralDiscount, }: {
|
|
124
|
+
changeReferralProgram({ domainName, referrerReward, referralDiscount, bytes32, }: {
|
|
115
125
|
domainName: string;
|
|
116
126
|
referrerReward: bigint;
|
|
117
127
|
referralDiscount: bigint;
|
|
128
|
+
bytes32?: boolean;
|
|
118
129
|
}): Promise<Hash>;
|
|
119
130
|
/**
|
|
120
131
|
* Change the renewal fee for a domain
|
|
121
132
|
* @param params Parameters for changing renewal fee
|
|
122
133
|
* @param params.domainName Domain name
|
|
123
134
|
* @param params.fee New renewal fee in wei
|
|
135
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
124
136
|
* @returns Transaction hash
|
|
125
137
|
*/
|
|
126
|
-
changeRenewalFee({ domainName, fee }: {
|
|
138
|
+
changeRenewalFee({ domainName, fee, bytes32, }: {
|
|
127
139
|
domainName: string;
|
|
128
140
|
fee: bigint;
|
|
141
|
+
bytes32?: boolean;
|
|
129
142
|
}): Promise<Hash>;
|
|
130
143
|
/**
|
|
131
144
|
* Activate a domain in Multipass
|
|
132
145
|
* @param domainName Domain name to activate
|
|
146
|
+
* @param bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
133
147
|
* @returns Transaction hash
|
|
134
148
|
*/
|
|
135
|
-
activateDomain(domainName: string): Promise<Hash>;
|
|
149
|
+
activateDomain(domainName: string, bytes32?: boolean): Promise<Hash>;
|
|
136
150
|
}
|
|
137
151
|
//# sourceMappingURL=Owner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Owner.d.ts","sourceRoot":"","sources":["../../../src/multipass/Owner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAe,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAClG,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;IACvD,OAAO,CAAC,YAAY,CAAe;gBAEvB,EACV,OAAO,EACP,YAAY,EACZ,YAAY,
|
|
1
|
+
{"version":3,"file":"Owner.d.ts","sourceRoot":"","sources":["../../../src/multipass/Owner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAe,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAClG,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,6BAA6B,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;IACvD,OAAO,CAAC,YAAY,CAAe;gBAEvB,EACV,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,YAAY,CAAC;QAC3B,YAAY,EAAE,YAAY,CAAC;QAC3B,WAAW,EAAE,kBAAkB,CAAC;KACjC;IAKD;;;;;;;;OAQG;IACU,QAAQ,CAAC,EACpB,MAAM,EACN,kBAAkB,EAClB,QAMC,EACD,YAAY,GACb,EAAE;QACD,MAAM,EAAE,MAAM,CAAC;QACf,kBAAkB,EAAE,KAAK,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,EAAE,SAAS,CAAC;QACrB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;KAC9B,GAAG,OAAO,CAAC,IAAI,CAAC;IAajB;;;;;;;OAOG;IACU,WAAW,CAAC,EACvB,KAAK,EACL,MAAM,EACN,kBAAkB,GACnB,EAAE;QACD,KAAK,EAAE,SAAS,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,kBAAkB,EAAE,KAAK,MAAM,EAAE,CAAC;KACnC,GAAG,OAAO,CAAC,IAAI,CAAC;IAajB;;;;;;;;;;;OAWG;IACU,gBAAgB,CAAC,EAC5B,SAAS,EACT,GAAG,EACH,UAAU,EACV,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,OAAe,GAChB,EAAE;QACD,SAAS,EAAE,OAAO,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBjB;;;;;OAKG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAa1F;;;;;;;OAOG;IACU,SAAS,CAAC,EACrB,UAAU,EACV,GAAG,EACH,OAAe,GAChB,EAAE;QACD,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAajB;;;;;;;OAOG;IACU,eAAe,CAAC,EAC3B,UAAU,EACV,YAAY,EACZ,OAAe,GAChB,EAAE;QACD,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,OAAO,CAAC;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAajB;;;;OAIG;IACU,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAaxD;;;;;;;;OAQG;IACU,qBAAqB,CAAC,EACjC,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,OAAe,GAChB,EAAE;QACD,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjB;;;;;;;OAOG;IACU,gBAAgB,CAAC,EAC5B,UAAU,EACV,GAAG,EACH,OAAe,GAChB,EAAE;QACD,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC,IAAI,CAAC;IAajB;;;;;OAKG;IACU,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAYzF"}
|
|
@@ -2,8 +2,8 @@ import { stringToHex } from "viem";
|
|
|
2
2
|
import MultipassBase from "./MultipassBase";
|
|
3
3
|
export default class MultipassOwner extends MultipassBase {
|
|
4
4
|
walletClient;
|
|
5
|
-
constructor({ chainId, walletClient, publicClient, }) {
|
|
6
|
-
super({ chainId, publicClient });
|
|
5
|
+
constructor({ chainId, walletClient, publicClient, envioClient, }) {
|
|
6
|
+
super({ chainId, publicClient, envioClient });
|
|
7
7
|
this.walletClient = walletClient;
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
@@ -62,16 +62,24 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
62
62
|
* @param params.domainName Domain name as string
|
|
63
63
|
* @param params.referrerReward Reward for referrers in wei
|
|
64
64
|
* @param params.referralDiscount Discount for referred users in wei
|
|
65
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
65
66
|
* @returns Transaction hash
|
|
66
67
|
*/
|
|
67
|
-
async initializeDomain({ registrar, fee, renewalFee, domainName, referrerReward, referralDiscount, }) {
|
|
68
|
+
async initializeDomain({ registrar, fee, renewalFee, domainName, referrerReward, referralDiscount, bytes32 = false, }) {
|
|
68
69
|
if (!this.walletClient.account)
|
|
69
70
|
throw new Error("No account found");
|
|
70
71
|
return this.walletClient.writeContract({
|
|
71
72
|
address: this.getContractAddress(),
|
|
72
73
|
abi: this.getAbi(),
|
|
73
74
|
functionName: "initializeDomain",
|
|
74
|
-
args: [
|
|
75
|
+
args: [
|
|
76
|
+
registrar,
|
|
77
|
+
fee,
|
|
78
|
+
renewalFee,
|
|
79
|
+
bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 }),
|
|
80
|
+
referrerReward,
|
|
81
|
+
referralDiscount,
|
|
82
|
+
],
|
|
75
83
|
chain: null,
|
|
76
84
|
account: this.walletClient.account,
|
|
77
85
|
});
|
|
@@ -79,16 +87,17 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
79
87
|
/**
|
|
80
88
|
* Deactivate a domain in Multipass
|
|
81
89
|
* @param domainName Domain name to deactivate
|
|
90
|
+
* @param bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
82
91
|
* @returns Transaction hash
|
|
83
92
|
*/
|
|
84
|
-
async deactivateDomain(domainName) {
|
|
93
|
+
async deactivateDomain(domainName, bytes32 = false) {
|
|
85
94
|
if (!this.walletClient.account)
|
|
86
95
|
throw new Error("No account found");
|
|
87
96
|
return this.walletClient.writeContract({
|
|
88
97
|
address: this.getContractAddress(),
|
|
89
98
|
abi: this.getAbi(),
|
|
90
99
|
functionName: "deactivateDomain",
|
|
91
|
-
args: [stringToHex(domainName, { size: 32 })],
|
|
100
|
+
args: [bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 })],
|
|
92
101
|
chain: null,
|
|
93
102
|
account: this.walletClient.account,
|
|
94
103
|
});
|
|
@@ -98,16 +107,17 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
98
107
|
* @param params Parameters for changing fee
|
|
99
108
|
* @param params.domainName Domain name
|
|
100
109
|
* @param params.fee New fee in wei
|
|
110
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
101
111
|
* @returns Transaction hash
|
|
102
112
|
*/
|
|
103
|
-
async changeFee({ domainName, fee }) {
|
|
113
|
+
async changeFee({ domainName, fee, bytes32 = false, }) {
|
|
104
114
|
if (!this.walletClient.account)
|
|
105
115
|
throw new Error("No account found");
|
|
106
116
|
return this.walletClient.writeContract({
|
|
107
117
|
address: this.getContractAddress(),
|
|
108
118
|
abi: this.getAbi(),
|
|
109
119
|
functionName: "changeFee",
|
|
110
|
-
args: [stringToHex(domainName, { size: 32 }), fee],
|
|
120
|
+
args: [bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 }), fee],
|
|
111
121
|
chain: null,
|
|
112
122
|
account: this.walletClient.account,
|
|
113
123
|
});
|
|
@@ -117,16 +127,17 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
117
127
|
* @param params Parameters for changing registrar
|
|
118
128
|
* @param params.domainName Domain name
|
|
119
129
|
* @param params.newRegistrar Address of the new registrar
|
|
130
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
120
131
|
* @returns Transaction hash
|
|
121
132
|
*/
|
|
122
|
-
async changeRegistrar({ domainName, newRegistrar, }) {
|
|
133
|
+
async changeRegistrar({ domainName, newRegistrar, bytes32 = false, }) {
|
|
123
134
|
if (!this.walletClient.account)
|
|
124
135
|
throw new Error("No account found");
|
|
125
136
|
return this.walletClient.writeContract({
|
|
126
137
|
address: this.getContractAddress(),
|
|
127
138
|
abi: this.getAbi(),
|
|
128
139
|
functionName: "changeRegistrar",
|
|
129
|
-
args: [stringToHex(domainName, { size: 32 }), newRegistrar],
|
|
140
|
+
args: [bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 }), newRegistrar],
|
|
130
141
|
chain: null,
|
|
131
142
|
account: this.walletClient.account,
|
|
132
143
|
});
|
|
@@ -154,16 +165,21 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
154
165
|
* @param params.domainName Domain name
|
|
155
166
|
* @param params.referrerReward New referrer reward in wei
|
|
156
167
|
* @param params.referralDiscount New referral discount in wei
|
|
168
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
157
169
|
* @returns Transaction hash
|
|
158
170
|
*/
|
|
159
|
-
async changeReferralProgram({ domainName, referrerReward, referralDiscount, }) {
|
|
171
|
+
async changeReferralProgram({ domainName, referrerReward, referralDiscount, bytes32 = false, }) {
|
|
160
172
|
if (!this.walletClient.account)
|
|
161
173
|
throw new Error("No account found");
|
|
162
174
|
return this.walletClient.writeContract({
|
|
163
175
|
address: this.getContractAddress(),
|
|
164
176
|
abi: this.getAbi(),
|
|
165
177
|
functionName: "changeReferralProgram",
|
|
166
|
-
args: [
|
|
178
|
+
args: [
|
|
179
|
+
referrerReward,
|
|
180
|
+
referralDiscount,
|
|
181
|
+
bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 }),
|
|
182
|
+
],
|
|
167
183
|
chain: null,
|
|
168
184
|
account: this.walletClient.account,
|
|
169
185
|
});
|
|
@@ -173,16 +189,17 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
173
189
|
* @param params Parameters for changing renewal fee
|
|
174
190
|
* @param params.domainName Domain name
|
|
175
191
|
* @param params.fee New renewal fee in wei
|
|
192
|
+
* @param params.bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
176
193
|
* @returns Transaction hash
|
|
177
194
|
*/
|
|
178
|
-
async changeRenewalFee({ domainName, fee }) {
|
|
195
|
+
async changeRenewalFee({ domainName, fee, bytes32 = false, }) {
|
|
179
196
|
if (!this.walletClient.account)
|
|
180
197
|
throw new Error("No account found");
|
|
181
198
|
return this.walletClient.writeContract({
|
|
182
199
|
address: this.getContractAddress(),
|
|
183
200
|
abi: this.getAbi(),
|
|
184
201
|
functionName: "changeRenewalFee",
|
|
185
|
-
args: [fee, stringToHex(domainName, { size: 32 })],
|
|
202
|
+
args: [fee, bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 })],
|
|
186
203
|
chain: null,
|
|
187
204
|
account: this.walletClient.account,
|
|
188
205
|
});
|
|
@@ -190,16 +207,17 @@ export default class MultipassOwner extends MultipassBase {
|
|
|
190
207
|
/**
|
|
191
208
|
* Activate a domain in Multipass
|
|
192
209
|
* @param domainName Domain name to activate
|
|
210
|
+
* @param bytes32 Whether to use bytes32 encoding with length in last byte (UBI format)
|
|
193
211
|
* @returns Transaction hash
|
|
194
212
|
*/
|
|
195
|
-
async activateDomain(domainName) {
|
|
213
|
+
async activateDomain(domainName, bytes32 = false) {
|
|
196
214
|
if (!this.walletClient.account)
|
|
197
215
|
throw new Error("No account found");
|
|
198
216
|
return this.walletClient.writeContract({
|
|
199
217
|
address: this.getContractAddress(),
|
|
200
218
|
abi: this.getAbi(),
|
|
201
219
|
functionName: "activateDomain",
|
|
202
|
-
args: [stringToHex(domainName, { size: 32 })],
|
|
220
|
+
args: [bytes32 ? this.getShortStringBytes32(domainName) : stringToHex(domainName, { size: 32 })],
|
|
203
221
|
chain: null,
|
|
204
222
|
account: this.walletClient.account,
|
|
205
223
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Owner.js","sourceRoot":"","sources":["../../../src/multipass/Owner.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,WAAW,EAAwC,MAAM,MAAM,CAAC;AAClG,OAAO,aAAa,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Owner.js","sourceRoot":"","sources":["../../../src/multipass/Owner.ts"],"names":[],"mappings":"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"}
|