diff --git a/modules/client-common/src/context-core.ts b/modules/client-common/src/context-core.ts index 4e51d29f0..3aaa008fe 100644 --- a/modules/client-common/src/context-core.ts +++ b/modules/client-common/src/context-core.ts @@ -24,6 +24,7 @@ import { const DEFAULT_GAS_FEE_ESTIMATION_FACTOR = 0.625; const supportedProtocols = ["https:"]; +const contractNames = Object.values(ContractNames); if (typeof process !== "undefined" && process?.env?.TESTING) { supportedProtocols.push("http:"); } @@ -31,7 +32,7 @@ if (typeof process !== "undefined" && process?.env?.TESTING) { export abstract class ContextCore { protected state: ContextState = {} as ContextState; - protected overriden: OverriddenState = Object.values(ContractNames).reduce( + protected overriden: OverriddenState = contractNames.reduce( (acc, key) => ({ ...acc, [key]: false }), { ENSRegistry: false } as OverriddenState, ); @@ -80,7 +81,7 @@ export abstract class ContextCore { this.overriden.ipfsNodes = true; } // Set all the available addresses - for (const address of Object.values(ContractNames)) { + for (const address of contractNames) { if (contextParams[address]) { this.state[address] = contextParams[address]!; this.overriden[address] = true; @@ -115,7 +116,7 @@ export abstract class ContextCore { ); } // set contract addresses - for (const contractName of Object.values(ContractNames)) { + for (const contractName of contractNames) { if (!this.overriden[contractName]) { let contractAddress: string | undefined; // get deployment diff --git a/modules/client-common/src/types.ts b/modules/client-common/src/types.ts index 3e02f8e5a..96d9f504c 100644 --- a/modules/client-common/src/types.ts +++ b/modules/client-common/src/types.ts @@ -259,11 +259,6 @@ export type ApplyUpdateParams = ApplyUpdateParamsBase & { export type DecodedApplyUpdateParams = ApplyUpdateParamsBase & { helpersHash: string; }; -export enum SupportedVersion { - V1_0_0 = "1.0.0", - V1_3_0 = "1.3.0", - LATEST = "1.3.0", -} export type IsMemberParams = { address: string; pluginAddress: string; diff --git a/modules/client/examples/02-multisig-client/02-create-proposal.ts b/modules/client/examples/02-multisig-client/02-create-proposal.ts index 9cdf4945c..eb5f7d16b 100644 --- a/modules/client/examples/02-multisig-client/02-create-proposal.ts +++ b/modules/client/examples/02-multisig-client/02-create-proposal.ts @@ -47,6 +47,8 @@ const metadataUri: string = await multisigClient.methods.pinMetadata( const proposalParams: CreateMultisigProposalParams = { pluginAddress: "0x1234567890123456789012345678901234567890", metadataUri, + // Boolean array indicating the actions that can and cannot fail + // when the proposal is executed. failSafeActions: [], actions: [], // optional - if left as an empty array, no action will be set for the proposal. the action needs to be encoded and will be executed once a proposal passes. }; diff --git a/modules/client/src/addresslistVoting/internal/client/encoding.ts b/modules/client/src/addresslistVoting/internal/client/encoding.ts index af08b5dc7..b6d870753 100644 --- a/modules/client/src/addresslistVoting/internal/client/encoding.ts +++ b/modules/client/src/addresslistVoting/internal/client/encoding.ts @@ -45,8 +45,8 @@ export class AddresslistVotingClientEncoding extends ClientCore network: Networkish, ): PluginInstallItem { const networkName = getNetwork(network).name; - const aragonNw = getNetworkNameByAlias(networkName); - if (!aragonNw) { + const aragonNetwork = getNetworkNameByAlias(networkName); + if (!aragonNetwork) { throw new UnsupportedNetworkError(networkName); } const hexBytes = defaultAbiCoder.encode( @@ -58,7 +58,7 @@ export class AddresslistVotingClientEncoding extends ClientCore ); return { - id: contracts[aragonNw][SupportedVersions.V1_3_0] + id: contracts[aragonNetwork][SupportedVersions.V1_3_0] ?.AddresslistVotingRepoProxy.address || "", data: hexToBytes(hexBytes), }; diff --git a/modules/client/src/multisig/internal/client/encoding.ts b/modules/client/src/multisig/internal/client/encoding.ts index 3fe2e9a3d..3242f78fe 100644 --- a/modules/client/src/multisig/internal/client/encoding.ts +++ b/modules/client/src/multisig/internal/client/encoding.ts @@ -63,6 +63,8 @@ export class MultisigClientEncoding extends ClientCore ], ); return { + // this case will return "" when the version 1.3.0 of the contracts is not deployed + // in the specified network id: contracts[aragonNetwork][SupportedVersions.V1_3_0]?.MultisigRepoProxy .address || "", data: hexToBytes(hexBytes), diff --git a/modules/client/test/integration/client/methods.test.ts b/modules/client/test/integration/client/methods.test.ts index a5264d35c..00feb7d34 100644 --- a/modules/client/test/integration/client/methods.test.ts +++ b/modules/client/test/integration/client/methods.test.ts @@ -118,14 +118,12 @@ describe("Client", () => { deployment.pluginSetupProcessor.address; contextParamsLocalChain.MultisigRepoProxy = deployment.multisigRepo.address; - contextParamsLocalChain.AdminRepoProxy = ""; contextParamsLocalChain.AddresslistVotingRepoProxy = deployment.addresslistVotingRepo.address; contextParamsLocalChain.TokenVotingRepoProxy = deployment.tokenVotingRepo.address; contextParamsLocalChain.MultisigSetup = deployment.multisigPluginSetup.address; - contextParamsLocalChain.AdminSetup = ""; contextParamsLocalChain.AddresslistVotingSetup = deployment.addresslistVotingPluginSetup.address; contextParamsLocalChain.TokenVotingSetup = diff --git a/modules/client/test/integration/core-modules/ipfs.test.ts b/modules/client/test/integration/core-modules/ipfs.test.ts index 043a9ead9..072debd6d 100644 --- a/modules/client/test/integration/core-modules/ipfs.test.ts +++ b/modules/client/test/integration/core-modules/ipfs.test.ts @@ -24,7 +24,7 @@ const TEST_WALLET = const contextParamsMainnet: ContextParams = { network: "mainnet", signer: new Wallet(TEST_WALLET), - DAOFactory: "0x0123456789012345678901234567890123456789", + DAOFactory: `0x${'0123456789'.repeat(4)}`, web3Providers: web3endpoints.working, ipfsNodes: [ {