@safe-global/protocol-kit 0.1.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/LICENSE.md +9 -0
- package/README.md +984 -0
- package/dist/src/Safe.d.ts +383 -0
- package/dist/src/Safe.js +715 -0
- package/dist/src/Safe.js.map +1 -0
- package/dist/src/adapters/ethers/EthersAdapter.d.ts +53 -0
- package/dist/src/adapters/ethers/EthersAdapter.js +189 -0
- package/dist/src/adapters/ethers/EthersAdapter.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerEthersContract.d.ts +9 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerEthersContract.js +15 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/CreateCallEthersContract.d.ts +13 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/CreateCallEthersContract.js +37 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/CreateCallEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/GnosisSafeContractEthers.d.ts +28 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/GnosisSafeContractEthers.js +91 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/GnosisSafeContractEthers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Ethers.d.ts +12 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Ethers.js +34 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Ethers.d.ts +12 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Ethers.js +34 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Ethers.d.ts +12 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Ethers.js +32 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Ethers.d.ts +12 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Ethers.js +33 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryEthersContract.d.ts +22 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryEthersContract.js +47 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/MultiSendEthersContract.d.ts +10 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/MultiSendEthersContract.js +15 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/MultiSendEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/MultiSendCallOnlyEthersContract.d.ts +9 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/MultiSendCallOnlyEthersContract.js +15 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/MultiSendCallOnlyEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/SignMessageLibEthersContract.d.ts +13 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/SignMessageLibEthersContract.js +29 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/SignMessageLibEthersContract.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Ethers.d.ts +7 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Ethers.js +14 -0
- package/dist/src/adapters/ethers/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Ethers.js.map +1 -0
- package/dist/src/adapters/ethers/contracts/contractInstancesEthers.d.ts +23 -0
- package/dist/src/adapters/ethers/contracts/contractInstancesEthers.js +139 -0
- package/dist/src/adapters/ethers/contracts/contractInstancesEthers.js.map +1 -0
- package/dist/src/adapters/ethers/index.d.ts +9 -0
- package/dist/src/adapters/ethers/index.js +21 -0
- package/dist/src/adapters/ethers/index.js.map +1 -0
- package/dist/src/adapters/ethers/types.d.ts +14 -0
- package/dist/src/adapters/ethers/types.js +3 -0
- package/dist/src/adapters/ethers/types.js.map +1 -0
- package/dist/src/adapters/ethers/utils/constants.d.ts +3 -0
- package/dist/src/adapters/ethers/utils/constants.js +7 -0
- package/dist/src/adapters/ethers/utils/constants.js.map +1 -0
- package/dist/src/adapters/ethers/utils/index.d.ts +6 -0
- package/dist/src/adapters/ethers/utils/index.js +20 -0
- package/dist/src/adapters/ethers/utils/index.js.map +1 -0
- package/dist/src/adapters/web3/Web3Adapter.d.ts +51 -0
- package/dist/src/adapters/web3/Web3Adapter.js +192 -0
- package/dist/src/adapters/web3/Web3Adapter.js.map +1 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerWeb3Contract.d.ts +9 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerWeb3Contract.js +15 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandler_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/CreateCall/CreateCallWeb3Contract.d.ts +13 -0
- package/dist/src/adapters/web3/contracts/CreateCall/CreateCallWeb3Contract.js +42 -0
- package/dist/src/adapters/web3/contracts/CreateCall/CreateCallWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/CreateCall/v1.3.0/CreateCallEthersContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/GnosisSafeContractWeb3.d.ts +28 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/GnosisSafeContractWeb3.js +103 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/GnosisSafeContractWeb3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Web3.d.ts +12 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Web3.js +36 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.0.0/GnosisSafeContract_V1_0_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Web3.d.ts +12 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Web3.js +36 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.1.1/GnosisSafeContract_V1_1_1_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Web3.d.ts +12 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Web3.js +34 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.2.0/GnosisSafeContract_V1_2_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Web3.d.ts +12 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Web3.js +35 -0
- package/dist/src/adapters/web3/contracts/GnosisSafe/v1.3.0/GnosisSafeContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryWeb3Contract.d.ts +22 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryWeb3Contract.js +51 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/GnosisSafeProxyFactoryWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.0.0/GnosisSafeProxyFactoryContract_V1_0_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.1.1/GnosisSafeProxyFactoryContract_V1_1_1_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/GnosisSafeProxyFactory/v1.3.0/GnosisSafeProxyFactoryContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/MultiSend/MultiSendWeb3Contract.d.ts +10 -0
- package/dist/src/adapters/web3/contracts/MultiSend/MultiSendWeb3Contract.js +15 -0
- package/dist/src/adapters/web3/contracts/MultiSend/MultiSendWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.1.1/MultiSendContract_V1_1_1_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/MultiSend/v1.3.0/MultiSendContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/MultiSendCallOnlyWeb3Contract.d.ts +9 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/MultiSendCallOnlyWeb3Contract.js +15 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/MultiSendCallOnlyWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/MultiSendCallOnly/v1.3.0/MultiSendCallOnlyContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/SignMessageLibWeb3Contract.d.ts +13 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/SignMessageLibWeb3Contract.js +34 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/SignMessageLibWeb3Contract.js.map +1 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Web3.d.ts +7 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Web3.js +14 -0
- package/dist/src/adapters/web3/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_V1_3_0_Web3.js.map +1 -0
- package/dist/src/adapters/web3/contracts/contractInstancesWeb3.d.ts +33 -0
- package/dist/src/adapters/web3/contracts/contractInstancesWeb3.js +106 -0
- package/dist/src/adapters/web3/contracts/contractInstancesWeb3.js.map +1 -0
- package/dist/src/adapters/web3/index.d.ts +9 -0
- package/dist/src/adapters/web3/index.js +21 -0
- package/dist/src/adapters/web3/index.js.map +1 -0
- package/dist/src/adapters/web3/types.d.ts +14 -0
- package/dist/src/adapters/web3/types.js +3 -0
- package/dist/src/adapters/web3/types.js.map +1 -0
- package/dist/src/adapters/web3/utils/constants.d.ts +3 -0
- package/dist/src/adapters/web3/utils/constants.js +7 -0
- package/dist/src/adapters/web3/utils/constants.js.map +1 -0
- package/dist/src/adapters/web3/utils/index.d.ts +4 -0
- package/dist/src/adapters/web3/utils/index.js +14 -0
- package/dist/src/adapters/web3/utils/index.js.map +1 -0
- package/dist/src/contracts/config.d.ts +18 -0
- package/dist/src/contracts/config.js +51 -0
- package/dist/src/contracts/config.js.map +1 -0
- package/dist/src/contracts/safeDeploymentContracts.d.ts +28 -0
- package/dist/src/contracts/safeDeploymentContracts.js +161 -0
- package/dist/src/contracts/safeDeploymentContracts.js.map +1 -0
- package/dist/src/index.d.ts +11 -0
- package/dist/src/index.js +40 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/managers/contractManager.d.ts +14 -0
- package/dist/src/managers/contractManager.js +83 -0
- package/dist/src/managers/contractManager.js.map +1 -0
- package/dist/src/managers/fallbackHandlerManager.d.ts +12 -0
- package/dist/src/managers/fallbackHandlerManager.js +65 -0
- package/dist/src/managers/fallbackHandlerManager.js.map +1 -0
- package/dist/src/managers/guardManager.d.ts +12 -0
- package/dist/src/managers/guardManager.js +65 -0
- package/dist/src/managers/guardManager.js.map +1 -0
- package/dist/src/managers/moduleManager.d.ts +13 -0
- package/dist/src/managers/moduleManager.js +67 -0
- package/dist/src/managers/moduleManager.js.map +1 -0
- package/dist/src/managers/ownerManager.d.ts +17 -0
- package/dist/src/managers/ownerManager.js +101 -0
- package/dist/src/managers/ownerManager.js.map +1 -0
- package/dist/src/safeFactory/index.d.ts +49 -0
- package/dist/src/safeFactory/index.js +165 -0
- package/dist/src/safeFactory/index.js.map +1 -0
- package/dist/src/safeFactory/utils.d.ts +3 -0
- package/dist/src/safeFactory/utils.js +19 -0
- package/dist/src/safeFactory/utils.js.map +1 -0
- package/dist/src/types/index.d.ts +35 -0
- package/dist/src/types/index.js +3 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/utils/address.d.ts +3 -0
- package/dist/src/utils/address.js +20 -0
- package/dist/src/utils/address.js.map +1 -0
- package/dist/src/utils/constants.d.ts +3 -0
- package/dist/src/utils/constants.js +7 -0
- package/dist/src/utils/constants.js.map +1 -0
- package/dist/src/utils/eip-3770/config.d.ts +6 -0
- package/dist/src/utils/eip-3770/config.js +116 -0
- package/dist/src/utils/eip-3770/config.js.map +1 -0
- package/dist/src/utils/eip-3770/index.d.ts +7 -0
- package/dist/src/utils/eip-3770/index.js +48 -0
- package/dist/src/utils/eip-3770/index.js.map +1 -0
- package/dist/src/utils/eip-712/index.d.ts +17 -0
- package/dist/src/utils/eip-712/index.js +68 -0
- package/dist/src/utils/eip-712/index.js.map +1 -0
- package/dist/src/utils/index.d.ts +5 -0
- package/dist/src/utils/index.js +22 -0
- package/dist/src/utils/index.js.map +1 -0
- package/dist/src/utils/safeVersions.d.ts +7 -0
- package/dist/src/utils/safeVersions.js +28 -0
- package/dist/src/utils/safeVersions.js.map +1 -0
- package/dist/src/utils/signatures/SafeSignature.d.ts +26 -0
- package/dist/src/utils/signatures/SafeSignature.js +33 -0
- package/dist/src/utils/signatures/SafeSignature.js.map +1 -0
- package/dist/src/utils/signatures/index.d.ts +12 -0
- package/dist/src/utils/signatures/index.js +94 -0
- package/dist/src/utils/signatures/index.js.map +1 -0
- package/dist/src/utils/transactions/SafeTransaction.d.ts +9 -0
- package/dist/src/utils/transactions/SafeTransaction.js +25 -0
- package/dist/src/utils/transactions/SafeTransaction.js.map +1 -0
- package/dist/src/utils/transactions/gas.d.ts +2 -0
- package/dist/src/utils/transactions/gas.js +75 -0
- package/dist/src/utils/transactions/gas.js.map +1 -0
- package/dist/src/utils/transactions/index.d.ts +4 -0
- package/dist/src/utils/transactions/index.js +21 -0
- package/dist/src/utils/transactions/index.js.map +1 -0
- package/dist/src/utils/transactions/types.d.ts +2 -0
- package/dist/src/utils/transactions/types.js +3 -0
- package/dist/src/utils/transactions/types.js.map +1 -0
- package/dist/src/utils/transactions/utils.d.ts +7 -0
- package/dist/src/utils/transactions/utils.js +98 -0
- package/dist/src/utils/transactions/utils.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +90 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var _OwnerManager_ethAdapter, _OwnerManager_safeContract;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const address_1 = require("@safe-global/protocol-kit/utils/address");
|
|
16
|
+
const constants_1 = require("@safe-global/protocol-kit/utils/constants");
|
|
17
|
+
class OwnerManager {
|
|
18
|
+
constructor(ethAdapter, safeContract) {
|
|
19
|
+
_OwnerManager_ethAdapter.set(this, void 0);
|
|
20
|
+
_OwnerManager_safeContract.set(this, void 0);
|
|
21
|
+
__classPrivateFieldSet(this, _OwnerManager_ethAdapter, ethAdapter, "f");
|
|
22
|
+
__classPrivateFieldSet(this, _OwnerManager_safeContract, safeContract, "f");
|
|
23
|
+
}
|
|
24
|
+
validateOwnerAddress(ownerAddress, errorMessage) {
|
|
25
|
+
const isValidAddress = __classPrivateFieldGet(this, _OwnerManager_ethAdapter, "f").isAddress(ownerAddress);
|
|
26
|
+
if (!isValidAddress || (0, address_1.isRestrictedAddress)(ownerAddress)) {
|
|
27
|
+
throw new Error(errorMessage || 'Invalid owner address provided');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
validateThreshold(threshold, numOwners) {
|
|
31
|
+
if (threshold <= 0) {
|
|
32
|
+
throw new Error('Threshold needs to be greater than 0');
|
|
33
|
+
}
|
|
34
|
+
if (threshold > numOwners) {
|
|
35
|
+
throw new Error('Threshold cannot exceed owner count');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
validateAddressIsNotOwner(ownerAddress, owners, errorMessage) {
|
|
39
|
+
const ownerIndex = owners.findIndex((owner) => (0, address_1.sameString)(owner, ownerAddress));
|
|
40
|
+
const isOwner = ownerIndex >= 0;
|
|
41
|
+
if (isOwner) {
|
|
42
|
+
throw new Error(errorMessage || 'Address provided is already an owner');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
validateAddressIsOwner(ownerAddress, owners, errorMessage) {
|
|
46
|
+
const ownerIndex = owners.findIndex((owner) => (0, address_1.sameString)(owner, ownerAddress));
|
|
47
|
+
const isOwner = ownerIndex >= 0;
|
|
48
|
+
if (!isOwner) {
|
|
49
|
+
throw new Error(errorMessage || 'Address provided is not an owner');
|
|
50
|
+
}
|
|
51
|
+
return ownerIndex;
|
|
52
|
+
}
|
|
53
|
+
async getOwners() {
|
|
54
|
+
const owners = await __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").getOwners();
|
|
55
|
+
return [...owners];
|
|
56
|
+
}
|
|
57
|
+
async getThreshold() {
|
|
58
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").getThreshold();
|
|
59
|
+
}
|
|
60
|
+
async isOwner(ownerAddress) {
|
|
61
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").isOwner(ownerAddress);
|
|
62
|
+
}
|
|
63
|
+
async encodeAddOwnerWithThresholdData(ownerAddress, threshold) {
|
|
64
|
+
this.validateOwnerAddress(ownerAddress);
|
|
65
|
+
const owners = await this.getOwners();
|
|
66
|
+
this.validateAddressIsNotOwner(ownerAddress, owners);
|
|
67
|
+
const newThreshold = threshold !== null && threshold !== void 0 ? threshold : (await this.getThreshold());
|
|
68
|
+
this.validateThreshold(newThreshold, owners.length + 1);
|
|
69
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").encode('addOwnerWithThreshold', [ownerAddress, newThreshold]);
|
|
70
|
+
}
|
|
71
|
+
async encodeRemoveOwnerData(ownerAddress, threshold) {
|
|
72
|
+
this.validateOwnerAddress(ownerAddress);
|
|
73
|
+
const owners = await this.getOwners();
|
|
74
|
+
const ownerIndex = this.validateAddressIsOwner(ownerAddress, owners);
|
|
75
|
+
const newThreshold = threshold !== null && threshold !== void 0 ? threshold : (await this.getThreshold()) - 1;
|
|
76
|
+
this.validateThreshold(newThreshold, owners.length - 1);
|
|
77
|
+
const prevOwnerAddress = ownerIndex === 0 ? constants_1.SENTINEL_ADDRESS : owners[ownerIndex - 1];
|
|
78
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").encode('removeOwner', [prevOwnerAddress, ownerAddress, newThreshold]);
|
|
79
|
+
}
|
|
80
|
+
async encodeSwapOwnerData(oldOwnerAddress, newOwnerAddress) {
|
|
81
|
+
this.validateOwnerAddress(newOwnerAddress, 'Invalid new owner address provided');
|
|
82
|
+
this.validateOwnerAddress(oldOwnerAddress, 'Invalid old owner address provided');
|
|
83
|
+
const owners = await this.getOwners();
|
|
84
|
+
this.validateAddressIsNotOwner(newOwnerAddress, owners, 'New address provided is already an owner');
|
|
85
|
+
const oldOwnerIndex = this.validateAddressIsOwner(oldOwnerAddress, owners, 'Old address provided is not an owner');
|
|
86
|
+
const prevOwnerAddress = oldOwnerIndex === 0 ? constants_1.SENTINEL_ADDRESS : owners[oldOwnerIndex - 1];
|
|
87
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").encode('swapOwner', [
|
|
88
|
+
prevOwnerAddress,
|
|
89
|
+
oldOwnerAddress,
|
|
90
|
+
newOwnerAddress
|
|
91
|
+
]);
|
|
92
|
+
}
|
|
93
|
+
async encodeChangeThresholdData(threshold) {
|
|
94
|
+
const owners = await this.getOwners();
|
|
95
|
+
this.validateThreshold(threshold, owners.length);
|
|
96
|
+
return __classPrivateFieldGet(this, _OwnerManager_safeContract, "f").encode('changeThreshold', [threshold]);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
_OwnerManager_ethAdapter = new WeakMap(), _OwnerManager_safeContract = new WeakMap();
|
|
100
|
+
exports.default = OwnerManager;
|
|
101
|
+
//# sourceMappingURL=ownerManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ownerManager.js","sourceRoot":"","sources":["../../../src/managers/ownerManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,qEAAyF;AACzF,yEAA4E;AAE5E,MAAM,YAAY;IAIhB,YAAY,UAAsB,EAAE,YAAgC;QAHpE,2CAAuB;QACvB,6CAAiC;QAG/B,uBAAA,IAAI,4BAAe,UAAU,MAAA,CAAA;QAC7B,uBAAA,IAAI,8BAAiB,YAAY,MAAA,CAAA;IACnC,CAAC;IAEO,oBAAoB,CAAC,YAAoB,EAAE,YAAqB;QACtE,MAAM,cAAc,GAAG,uBAAA,IAAI,gCAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAC/D,IAAI,CAAC,cAAc,IAAI,IAAA,6BAAmB,EAAC,YAAY,CAAC,EAAE;YACxD,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,gCAAgC,CAAC,CAAA;SAClE;IACH,CAAC;IAEO,iBAAiB,CAAC,SAAiB,EAAE,SAAiB;QAC5D,IAAI,SAAS,IAAI,CAAC,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,SAAS,GAAG,SAAS,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;SACvD;IACH,CAAC;IAEO,yBAAyB,CAC/B,YAAoB,EACpB,MAAgB,EAChB,YAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;QACvF,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAA;QAC/B,IAAI,OAAO,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,sCAAsC,CAAC,CAAA;SACxE;IACH,CAAC;IAEO,sBAAsB,CAC5B,YAAoB,EACpB,MAAgB,EAChB,YAAqB;QAErB,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;QACvF,MAAM,OAAO,GAAG,UAAU,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,kCAAkC,CAAC,CAAA;SACpE;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,MAAM,GAAG,MAAM,uBAAA,IAAI,kCAAc,CAAC,SAAS,EAAE,CAAA;QACnD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,OAAO,uBAAA,IAAI,kCAAc,CAAC,YAAY,EAAE,CAAA;IAC1C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,YAAoB;QAChC,OAAO,uBAAA,IAAI,kCAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,YAAoB,EAAE,SAAkB;QAC5E,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACrC,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACpD,MAAM,YAAY,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;QAC7D,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACvD,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA;IACzF,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,YAAoB,EAAE,SAAkB;QAClE,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACpE,MAAM,YAAY,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAA;QACjE,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACvD,MAAM,gBAAgB,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,4BAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;QACrF,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA;IACjG,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,eAAuB,EAAE,eAAuB;QACxE,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,oCAAoC,CAAC,CAAA;QAChF,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,oCAAoC,CAAC,CAAA;QAChF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACrC,IAAI,CAAC,yBAAyB,CAC5B,eAAe,EACf,MAAM,EACN,0CAA0C,CAC3C,CAAA;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAC/C,eAAe,EACf,MAAM,EACN,sCAAsC,CACvC,CAAA;QACD,MAAM,gBAAgB,GAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,4BAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,CAAA;QAC3F,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,WAAW,EAAE;YAC5C,gBAAgB;YAChB,eAAe;YACf,eAAe;SAChB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,SAAiB;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACrC,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAChD,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAClE,CAAC;CACF;;AAED,kBAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { EthAdapter, SafeVersion, TransactionOptions } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
import Safe from '@safe-global/protocol-kit/Safe';
|
|
3
|
+
import { ContractNetworksConfig } from '@safe-global/protocol-kit/types';
|
|
4
|
+
export interface SafeAccountConfig {
|
|
5
|
+
owners: string[];
|
|
6
|
+
threshold: number;
|
|
7
|
+
to?: string;
|
|
8
|
+
data?: string;
|
|
9
|
+
fallbackHandler?: string;
|
|
10
|
+
paymentToken?: string;
|
|
11
|
+
payment?: number;
|
|
12
|
+
paymentReceiver?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface SafeDeploymentConfig {
|
|
15
|
+
saltNonce: string;
|
|
16
|
+
}
|
|
17
|
+
export interface PredictSafeProps {
|
|
18
|
+
safeAccountConfig: SafeAccountConfig;
|
|
19
|
+
safeDeploymentConfig: SafeDeploymentConfig;
|
|
20
|
+
}
|
|
21
|
+
export interface DeploySafeProps {
|
|
22
|
+
safeAccountConfig: SafeAccountConfig;
|
|
23
|
+
safeDeploymentConfig?: SafeDeploymentConfig;
|
|
24
|
+
options?: TransactionOptions;
|
|
25
|
+
callback?: (txHash: string) => void;
|
|
26
|
+
}
|
|
27
|
+
export interface SafeFactoryConfig {
|
|
28
|
+
/** ethAdapter - Ethereum adapter */
|
|
29
|
+
ethAdapter: EthAdapter;
|
|
30
|
+
/** safeVersion - Versions of the Safe deployed by this Factory contract */
|
|
31
|
+
safeVersion?: SafeVersion;
|
|
32
|
+
/** isL1SafeMasterCopy - Forces to use the GnosisSafe L1 version of the contract instead of the L2 version */
|
|
33
|
+
isL1SafeMasterCopy?: boolean;
|
|
34
|
+
/** contractNetworks - Contract network configuration */
|
|
35
|
+
contractNetworks?: ContractNetworksConfig;
|
|
36
|
+
}
|
|
37
|
+
declare class SafeFactory {
|
|
38
|
+
#private;
|
|
39
|
+
static create({ ethAdapter, safeVersion, isL1SafeMasterCopy, contractNetworks }: SafeFactoryConfig): Promise<SafeFactory>;
|
|
40
|
+
private init;
|
|
41
|
+
getEthAdapter(): EthAdapter;
|
|
42
|
+
getSafeVersion(): SafeVersion;
|
|
43
|
+
getAddress(): string;
|
|
44
|
+
getChainId(): Promise<number>;
|
|
45
|
+
private encodeSetupCallData;
|
|
46
|
+
predictSafeAddress({ safeAccountConfig, safeDeploymentConfig }: PredictSafeProps): Promise<string>;
|
|
47
|
+
deploySafe({ safeAccountConfig, safeDeploymentConfig, options, callback }: DeploySafeProps): Promise<Safe>;
|
|
48
|
+
}
|
|
49
|
+
export default SafeFactory;
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
var _SafeFactory_contractNetworks, _SafeFactory_isL1SafeMasterCopy, _SafeFactory_safeVersion, _SafeFactory_ethAdapter, _SafeFactory_safeProxyFactoryContract, _SafeFactory_gnosisSafeContract;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const ethereumjs_util_1 = require("ethereumjs-util");
|
|
19
|
+
const satisfies_1 = __importDefault(require("semver/functions/satisfies"));
|
|
20
|
+
const config_1 = require("@safe-global/protocol-kit/contracts/config");
|
|
21
|
+
const safeDeploymentContracts_1 = require("@safe-global/protocol-kit/contracts/safeDeploymentContracts");
|
|
22
|
+
const Safe_1 = __importDefault(require("@safe-global/protocol-kit/Safe"));
|
|
23
|
+
const constants_1 = require("@safe-global/protocol-kit/utils/constants");
|
|
24
|
+
const utils_1 = require("./utils");
|
|
25
|
+
class SafeFactory {
|
|
26
|
+
constructor() {
|
|
27
|
+
_SafeFactory_contractNetworks.set(this, void 0);
|
|
28
|
+
_SafeFactory_isL1SafeMasterCopy.set(this, void 0);
|
|
29
|
+
_SafeFactory_safeVersion.set(this, void 0);
|
|
30
|
+
_SafeFactory_ethAdapter.set(this, void 0);
|
|
31
|
+
_SafeFactory_safeProxyFactoryContract.set(this, void 0);
|
|
32
|
+
_SafeFactory_gnosisSafeContract.set(this, void 0);
|
|
33
|
+
}
|
|
34
|
+
static async create({ ethAdapter, safeVersion = config_1.SAFE_LAST_VERSION, isL1SafeMasterCopy = false, contractNetworks }) {
|
|
35
|
+
const safeFactorySdk = new SafeFactory();
|
|
36
|
+
await safeFactorySdk.init({ ethAdapter, safeVersion, isL1SafeMasterCopy, contractNetworks });
|
|
37
|
+
return safeFactorySdk;
|
|
38
|
+
}
|
|
39
|
+
async init({ ethAdapter, safeVersion, isL1SafeMasterCopy, contractNetworks }) {
|
|
40
|
+
__classPrivateFieldSet(this, _SafeFactory_ethAdapter, ethAdapter, "f");
|
|
41
|
+
__classPrivateFieldSet(this, _SafeFactory_safeVersion, safeVersion, "f");
|
|
42
|
+
__classPrivateFieldSet(this, _SafeFactory_isL1SafeMasterCopy, isL1SafeMasterCopy, "f");
|
|
43
|
+
__classPrivateFieldSet(this, _SafeFactory_contractNetworks, contractNetworks, "f");
|
|
44
|
+
const chainId = await __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").getChainId();
|
|
45
|
+
const customContracts = contractNetworks === null || contractNetworks === void 0 ? void 0 : contractNetworks[chainId];
|
|
46
|
+
__classPrivateFieldSet(this, _SafeFactory_safeProxyFactoryContract, await (0, safeDeploymentContracts_1.getProxyFactoryContract)({
|
|
47
|
+
ethAdapter,
|
|
48
|
+
safeVersion,
|
|
49
|
+
chainId,
|
|
50
|
+
customContracts
|
|
51
|
+
}), "f");
|
|
52
|
+
__classPrivateFieldSet(this, _SafeFactory_gnosisSafeContract, await (0, safeDeploymentContracts_1.getSafeContract)({
|
|
53
|
+
ethAdapter,
|
|
54
|
+
safeVersion,
|
|
55
|
+
chainId,
|
|
56
|
+
isL1SafeMasterCopy,
|
|
57
|
+
customContracts
|
|
58
|
+
}), "f");
|
|
59
|
+
}
|
|
60
|
+
getEthAdapter() {
|
|
61
|
+
return __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f");
|
|
62
|
+
}
|
|
63
|
+
getSafeVersion() {
|
|
64
|
+
return __classPrivateFieldGet(this, _SafeFactory_safeVersion, "f");
|
|
65
|
+
}
|
|
66
|
+
getAddress() {
|
|
67
|
+
return __classPrivateFieldGet(this, _SafeFactory_safeProxyFactoryContract, "f").getAddress();
|
|
68
|
+
}
|
|
69
|
+
async getChainId() {
|
|
70
|
+
return __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").getChainId();
|
|
71
|
+
}
|
|
72
|
+
async encodeSetupCallData({ owners, threshold, to = constants_1.ZERO_ADDRESS, data = constants_1.EMPTY_DATA, fallbackHandler, paymentToken = constants_1.ZERO_ADDRESS, payment = 0, paymentReceiver = constants_1.ZERO_ADDRESS }) {
|
|
73
|
+
var _a;
|
|
74
|
+
if ((0, satisfies_1.default)(__classPrivateFieldGet(this, _SafeFactory_safeVersion, "f"), '<=1.0.0')) {
|
|
75
|
+
return __classPrivateFieldGet(this, _SafeFactory_gnosisSafeContract, "f").encode('setup', [
|
|
76
|
+
owners,
|
|
77
|
+
threshold,
|
|
78
|
+
to,
|
|
79
|
+
data,
|
|
80
|
+
paymentToken,
|
|
81
|
+
payment,
|
|
82
|
+
paymentReceiver
|
|
83
|
+
]);
|
|
84
|
+
}
|
|
85
|
+
let fallbackHandlerAddress;
|
|
86
|
+
if (fallbackHandler) {
|
|
87
|
+
fallbackHandlerAddress = fallbackHandler;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
const chainId = await __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").getChainId();
|
|
91
|
+
const customContracts = (_a = __classPrivateFieldGet(this, _SafeFactory_contractNetworks, "f")) === null || _a === void 0 ? void 0 : _a[chainId];
|
|
92
|
+
const fallbackHandlerContract = await (0, safeDeploymentContracts_1.getCompatibilityFallbackHandlerContract)({
|
|
93
|
+
ethAdapter: __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f"),
|
|
94
|
+
safeVersion: __classPrivateFieldGet(this, _SafeFactory_safeVersion, "f"),
|
|
95
|
+
chainId,
|
|
96
|
+
customContracts
|
|
97
|
+
});
|
|
98
|
+
fallbackHandlerAddress = fallbackHandlerContract.getAddress();
|
|
99
|
+
}
|
|
100
|
+
return __classPrivateFieldGet(this, _SafeFactory_gnosisSafeContract, "f").encode('setup', [
|
|
101
|
+
owners,
|
|
102
|
+
threshold,
|
|
103
|
+
to,
|
|
104
|
+
data,
|
|
105
|
+
fallbackHandlerAddress,
|
|
106
|
+
paymentToken,
|
|
107
|
+
payment,
|
|
108
|
+
paymentReceiver
|
|
109
|
+
]);
|
|
110
|
+
}
|
|
111
|
+
async predictSafeAddress({ safeAccountConfig, safeDeploymentConfig }) {
|
|
112
|
+
(0, utils_1.validateSafeAccountConfig)(safeAccountConfig);
|
|
113
|
+
(0, utils_1.validateSafeDeploymentConfig)(safeDeploymentConfig);
|
|
114
|
+
const from = __classPrivateFieldGet(this, _SafeFactory_safeProxyFactoryContract, "f").getAddress();
|
|
115
|
+
const initializer = await this.encodeSetupCallData(safeAccountConfig);
|
|
116
|
+
const saltNonce = safeDeploymentConfig.saltNonce;
|
|
117
|
+
const encodedNonce = (0, ethereumjs_util_1.toBuffer)(__classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").encodeParameters(['uint256'], [saltNonce])).toString('hex');
|
|
118
|
+
const salt = (0, ethereumjs_util_1.keccak256)((0, ethereumjs_util_1.toBuffer)('0x' + (0, ethereumjs_util_1.keccak256)((0, ethereumjs_util_1.toBuffer)(initializer)).toString('hex') + encodedNonce));
|
|
119
|
+
const proxyCreationCode = await __classPrivateFieldGet(this, _SafeFactory_safeProxyFactoryContract, "f").proxyCreationCode();
|
|
120
|
+
const constructorData = (0, ethereumjs_util_1.toBuffer)(__classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").encodeParameters(['address'], [__classPrivateFieldGet(this, _SafeFactory_gnosisSafeContract, "f").getAddress()])).toString('hex');
|
|
121
|
+
const initCode = proxyCreationCode + constructorData;
|
|
122
|
+
const proxyAddress = '0x' + (0, ethereumjs_util_1.generateAddress2)((0, ethereumjs_util_1.toBuffer)(from), (0, ethereumjs_util_1.toBuffer)(salt), (0, ethereumjs_util_1.toBuffer)(initCode)).toString('hex');
|
|
123
|
+
return __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").getChecksummedAddress(proxyAddress);
|
|
124
|
+
}
|
|
125
|
+
async deploySafe({ safeAccountConfig, safeDeploymentConfig, options, callback }) {
|
|
126
|
+
var _a;
|
|
127
|
+
(0, utils_1.validateSafeAccountConfig)(safeAccountConfig);
|
|
128
|
+
if (safeDeploymentConfig) {
|
|
129
|
+
(0, utils_1.validateSafeDeploymentConfig)(safeDeploymentConfig);
|
|
130
|
+
}
|
|
131
|
+
const signerAddress = await __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").getSignerAddress();
|
|
132
|
+
if (!signerAddress) {
|
|
133
|
+
throw new Error('EthAdapter must be initialized with a signer to use this method');
|
|
134
|
+
}
|
|
135
|
+
const initializer = await this.encodeSetupCallData(safeAccountConfig);
|
|
136
|
+
const saltNonce = (_a = safeDeploymentConfig === null || safeDeploymentConfig === void 0 ? void 0 : safeDeploymentConfig.saltNonce) !== null && _a !== void 0 ? _a : (Date.now() * 1000 + Math.floor(Math.random() * 1000)).toString();
|
|
137
|
+
if ((options === null || options === void 0 ? void 0 : options.gas) && (options === null || options === void 0 ? void 0 : options.gasLimit)) {
|
|
138
|
+
throw new Error('Cannot specify gas and gasLimit together in transaction options');
|
|
139
|
+
}
|
|
140
|
+
const safeAddress = await __classPrivateFieldGet(this, _SafeFactory_safeProxyFactoryContract, "f").createProxy({
|
|
141
|
+
safeMasterCopyAddress: __classPrivateFieldGet(this, _SafeFactory_gnosisSafeContract, "f").getAddress(),
|
|
142
|
+
initializer,
|
|
143
|
+
saltNonce,
|
|
144
|
+
options: {
|
|
145
|
+
from: signerAddress,
|
|
146
|
+
...options
|
|
147
|
+
},
|
|
148
|
+
callback
|
|
149
|
+
});
|
|
150
|
+
const isContractDeployed = await __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f").isContractDeployed(safeAddress);
|
|
151
|
+
if (!isContractDeployed) {
|
|
152
|
+
throw new Error('SafeProxy contract is not deployed on the current network');
|
|
153
|
+
}
|
|
154
|
+
const safe = await Safe_1.default.create({
|
|
155
|
+
ethAdapter: __classPrivateFieldGet(this, _SafeFactory_ethAdapter, "f"),
|
|
156
|
+
safeAddress,
|
|
157
|
+
isL1SafeMasterCopy: __classPrivateFieldGet(this, _SafeFactory_isL1SafeMasterCopy, "f"),
|
|
158
|
+
contractNetworks: __classPrivateFieldGet(this, _SafeFactory_contractNetworks, "f")
|
|
159
|
+
});
|
|
160
|
+
return safe;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
_SafeFactory_contractNetworks = new WeakMap(), _SafeFactory_isL1SafeMasterCopy = new WeakMap(), _SafeFactory_safeVersion = new WeakMap(), _SafeFactory_ethAdapter = new WeakMap(), _SafeFactory_safeProxyFactoryContract = new WeakMap(), _SafeFactory_gnosisSafeContract = new WeakMap();
|
|
164
|
+
exports.default = SafeFactory;
|
|
165
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/safeFactory/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateSafeDeploymentConfig = exports.validateSafeAccountConfig = void 0;
|
|
4
|
+
const bignumber_1 = require("@ethersproject/bignumber");
|
|
5
|
+
const validateSafeAccountConfig = ({ owners, threshold }) => {
|
|
6
|
+
if (owners.length <= 0)
|
|
7
|
+
throw new Error('Owner list must have at least one owner');
|
|
8
|
+
if (threshold <= 0)
|
|
9
|
+
throw new Error('Threshold must be greater than or equal to 1');
|
|
10
|
+
if (threshold > owners.length)
|
|
11
|
+
throw new Error('Threshold must be lower than or equal to owners length');
|
|
12
|
+
};
|
|
13
|
+
exports.validateSafeAccountConfig = validateSafeAccountConfig;
|
|
14
|
+
const validateSafeDeploymentConfig = ({ saltNonce }) => {
|
|
15
|
+
if (bignumber_1.BigNumber.from(saltNonce).lt(0))
|
|
16
|
+
throw new Error('saltNonce must be greater than or equal to 0');
|
|
17
|
+
};
|
|
18
|
+
exports.validateSafeDeploymentConfig = validateSafeDeploymentConfig;
|
|
19
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/safeFactory/utils.ts"],"names":[],"mappings":";;;AAAA,wDAAoD;AAG7C,MAAM,yBAAyB,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAqB,EAAQ,EAAE;IAC1F,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAClF,IAAI,SAAS,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACnF,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM;QAC3B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;AAC7E,CAAC,CAAA;AALY,QAAA,yBAAyB,6BAKrC;AAEM,MAAM,4BAA4B,GAAG,CAAC,EAAE,SAAS,EAAwB,EAAQ,EAAE;IACxF,IAAI,qBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;AACnE,CAAC,CAAA;AAHY,QAAA,4BAA4B,gCAGxC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { AbiItem } from 'web3-utils';
|
|
2
|
+
export interface ContractNetworkConfig {
|
|
3
|
+
/** safeMasterCopyAddress - Address of the GnosisSafe Master Copy contract deployed on a specific network */
|
|
4
|
+
safeMasterCopyAddress: string;
|
|
5
|
+
/** safeMasterCopyAbi - Abi of the GnosisSafe Master Copy contract deployed on a specific network */
|
|
6
|
+
safeMasterCopyAbi?: AbiItem | AbiItem[];
|
|
7
|
+
/** safeProxyFactoryAddress - Address of the GnosisSafeProxyFactory contract deployed on a specific network */
|
|
8
|
+
safeProxyFactoryAddress: string;
|
|
9
|
+
/** safeProxyFactoryAbi - Abi of the GnosisSafeProxyFactory contract deployed on a specific network */
|
|
10
|
+
safeProxyFactoryAbi?: AbiItem | AbiItem[];
|
|
11
|
+
/** multiSendAddress - Address of the MultiSend contract deployed on a specific network */
|
|
12
|
+
multiSendAddress: string;
|
|
13
|
+
/** multiSendAbi - Abi of the MultiSend contract deployed on a specific network */
|
|
14
|
+
multiSendAbi?: AbiItem | AbiItem[];
|
|
15
|
+
/** multiSendCallOnlyAddress - Address of the MultiSendCallOnly contract deployed on a specific network */
|
|
16
|
+
multiSendCallOnlyAddress: string;
|
|
17
|
+
/** multiSendCallOnlyAbi - Abi of the MultiSendCallOnly contract deployed on a specific network */
|
|
18
|
+
multiSendCallOnlyAbi?: AbiItem | AbiItem[];
|
|
19
|
+
/** fallbackHandlerAddress - Address of the Fallback Handler contract deployed on a specific network */
|
|
20
|
+
fallbackHandlerAddress: string;
|
|
21
|
+
/** fallbackHandlerAbi - Abi of the Fallback Handler contract deployed on a specific network */
|
|
22
|
+
fallbackHandlerAbi?: AbiItem | AbiItem[];
|
|
23
|
+
/** signMessageLibAddress - Address of the SignMessageLib contract deployed on a specific network */
|
|
24
|
+
signMessageLibAddress: string;
|
|
25
|
+
/** signMessageLibAbi - Abi of the SignMessageLib contract deployed on a specific network */
|
|
26
|
+
signMessageLibAbi?: AbiItem | AbiItem[];
|
|
27
|
+
/** createCallAddress - Address of the CreateCall contract deployed on a specific network */
|
|
28
|
+
createCallAddress: string;
|
|
29
|
+
/** createCallAbi - Abi of the CreateCall contract deployed on a specific network */
|
|
30
|
+
createCallAbi?: AbiItem | AbiItem[];
|
|
31
|
+
}
|
|
32
|
+
export interface ContractNetworksConfig {
|
|
33
|
+
/** id - Network id */
|
|
34
|
+
[id: string]: ContractNetworkConfig;
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isRestrictedAddress = exports.isZeroAddress = exports.sameString = void 0;
|
|
4
|
+
const constants_1 = require("./constants");
|
|
5
|
+
function sameString(str1, str2) {
|
|
6
|
+
return str1.toLowerCase() === str2.toLowerCase();
|
|
7
|
+
}
|
|
8
|
+
exports.sameString = sameString;
|
|
9
|
+
function isZeroAddress(address) {
|
|
10
|
+
return sameString(address, constants_1.ZERO_ADDRESS);
|
|
11
|
+
}
|
|
12
|
+
exports.isZeroAddress = isZeroAddress;
|
|
13
|
+
function isSentinelAddress(address) {
|
|
14
|
+
return sameString(address, constants_1.SENTINEL_ADDRESS);
|
|
15
|
+
}
|
|
16
|
+
function isRestrictedAddress(address) {
|
|
17
|
+
return isZeroAddress(address) || isSentinelAddress(address);
|
|
18
|
+
}
|
|
19
|
+
exports.isRestrictedAddress = isRestrictedAddress;
|
|
20
|
+
//# sourceMappingURL=address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../src/utils/address.ts"],"names":[],"mappings":";;;AAAA,2CAA4D;AAE5D,SAAgB,UAAU,CAAC,IAAY,EAAE,IAAY;IACnD,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAA;AAClD,CAAC;AAFD,gCAEC;AAED,SAAgB,aAAa,CAAC,OAAe;IAC3C,OAAO,UAAU,CAAC,OAAO,EAAE,wBAAY,CAAC,CAAA;AAC1C,CAAC;AAFD,sCAEC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,OAAO,UAAU,CAAC,OAAO,EAAE,4BAAgB,CAAC,CAAA;AAC9C,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAe;IACjD,OAAO,aAAa,CAAC,OAAO,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAA;AAC7D,CAAC;AAFD,kDAEC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SENTINEL_ADDRESS = exports.EMPTY_DATA = exports.ZERO_ADDRESS = void 0;
|
|
4
|
+
exports.ZERO_ADDRESS = `0x${'0'.repeat(40)}`;
|
|
5
|
+
exports.EMPTY_DATA = '0x';
|
|
6
|
+
exports.SENTINEL_ADDRESS = '0x0000000000000000000000000000000000000001';
|
|
7
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAA;AACpC,QAAA,UAAU,GAAG,IAAI,CAAA;AACjB,QAAA,gBAAgB,GAAG,4CAA4C,CAAA"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.networks = void 0;
|
|
4
|
+
// https://github.com/ethereum-lists/chains/tree/master/_data/chains
|
|
5
|
+
exports.networks = [
|
|
6
|
+
{ chainId: 1, shortName: 'eth' },
|
|
7
|
+
{ chainId: 3, shortName: 'rop' },
|
|
8
|
+
{ chainId: 4, shortName: 'rin' },
|
|
9
|
+
{ chainId: 5, shortName: 'gor' },
|
|
10
|
+
{ chainId: 10, shortName: 'oeth' },
|
|
11
|
+
{ chainId: 11, shortName: 'meta' },
|
|
12
|
+
{ chainId: 12, shortName: 'kal' },
|
|
13
|
+
{ chainId: 25, shortName: 'cro' },
|
|
14
|
+
{ chainId: 28, shortName: 'bobarinkeby' },
|
|
15
|
+
{ chainId: 40, shortName: 'telosevm' },
|
|
16
|
+
{ chainId: 41, shortName: 'telosevmtestnet' },
|
|
17
|
+
{ chainId: 42, shortName: 'kov' },
|
|
18
|
+
{ chainId: 50, shortName: 'xdc' },
|
|
19
|
+
{ chainId: 51, shortName: 'txdc' },
|
|
20
|
+
{ chainId: 56, shortName: 'bnb' },
|
|
21
|
+
{ chainId: 61, shortName: 'etc' },
|
|
22
|
+
{ chainId: 63, shortName: 'metc' },
|
|
23
|
+
{ chainId: 69, shortName: 'okov' },
|
|
24
|
+
{ chainId: 82, shortName: 'meter' },
|
|
25
|
+
{ chainId: 83, shortName: 'meter-test' },
|
|
26
|
+
{ chainId: 97, shortName: 'bnbt' },
|
|
27
|
+
{ chainId: 100, shortName: 'gno' },
|
|
28
|
+
{ chainId: 106, shortName: 'vlx' },
|
|
29
|
+
{ chainId: 108, shortName: 'tt' },
|
|
30
|
+
{ chainId: 111, shortName: 'etl' },
|
|
31
|
+
{ chainId: 122, shortName: 'fuse' },
|
|
32
|
+
{ chainId: 123, shortName: 'spark' },
|
|
33
|
+
{ chainId: 137, shortName: 'matic' },
|
|
34
|
+
{ chainId: 246, shortName: 'ewt' },
|
|
35
|
+
{ chainId: 250, shortName: 'ftm' },
|
|
36
|
+
{ chainId: 288, shortName: 'boba' },
|
|
37
|
+
{ chainId: 300, shortName: 'ogn' },
|
|
38
|
+
{ chainId: 321, shortName: 'kcs' },
|
|
39
|
+
{ chainId: 322, shortName: 'kcst' },
|
|
40
|
+
{ chainId: 336, shortName: 'sdn' },
|
|
41
|
+
{ chainId: 338, shortName: 'tcro' },
|
|
42
|
+
{ chainId: 420, shortName: 'ogor' },
|
|
43
|
+
{ chainId: 588, shortName: 'metis-stardust' },
|
|
44
|
+
{ chainId: 592, shortName: 'astr' },
|
|
45
|
+
{ chainId: 595, shortName: 'maca' },
|
|
46
|
+
{ chainId: 599, shortName: 'metis-goerli' },
|
|
47
|
+
{ chainId: 686, shortName: 'kar' },
|
|
48
|
+
{ chainId: 787, shortName: 'aca' },
|
|
49
|
+
{ chainId: 1001, shortName: 'baobab' },
|
|
50
|
+
{ chainId: 1008, shortName: 'eun' },
|
|
51
|
+
{ chainId: 1088, shortName: 'metis-andromeda' },
|
|
52
|
+
{ chainId: 1284, shortName: 'mbeam' },
|
|
53
|
+
{ chainId: 1285, shortName: 'mriver' },
|
|
54
|
+
{ chainId: 1287, shortName: 'mbase' },
|
|
55
|
+
{ chainId: 1294, shortName: 'bobabeam' },
|
|
56
|
+
{ chainId: 1807, shortName: 'rana' },
|
|
57
|
+
{ chainId: 1984, shortName: 'euntest' },
|
|
58
|
+
{ chainId: 2001, shortName: 'milkada' },
|
|
59
|
+
{ chainId: 2002, shortName: 'milkalgo' },
|
|
60
|
+
{ chainId: 2008, shortName: 'cloudwalk_testnet' },
|
|
61
|
+
{ chainId: 2019, shortName: 'pmint_test' },
|
|
62
|
+
{ chainId: 2020, shortName: 'pmint' },
|
|
63
|
+
{ chainId: 2221, shortName: 'tkava' },
|
|
64
|
+
{ chainId: 2222, shortName: 'kava' },
|
|
65
|
+
{ chainId: 4002, shortName: 'tftm' },
|
|
66
|
+
{ chainId: 4689, shortName: 'iotex-mainnet' },
|
|
67
|
+
{ chainId: 4918, shortName: 'txvm' },
|
|
68
|
+
{ chainId: 4919, shortName: 'xvm' },
|
|
69
|
+
{ chainId: 7341, shortName: 'shyft' },
|
|
70
|
+
{ chainId: 7700, shortName: 'canto' },
|
|
71
|
+
{ chainId: 8217, shortName: 'cypress' },
|
|
72
|
+
{ chainId: 9000, shortName: 'evmos-testnet' },
|
|
73
|
+
{ chainId: 9001, shortName: 'evmos' },
|
|
74
|
+
{ chainId: 9728, shortName: 'boba-testnet' },
|
|
75
|
+
{ chainId: 10000, shortName: 'smartbch' },
|
|
76
|
+
{ chainId: 10001, shortName: 'smartbchtest' },
|
|
77
|
+
{ chainId: 10200, shortName: 'chi' },
|
|
78
|
+
{ chainId: 11235, shortName: 'islm' },
|
|
79
|
+
{ chainId: 11437, shortName: 'shyftt' },
|
|
80
|
+
{ chainId: 12357, shortName: 'rei-testnet' },
|
|
81
|
+
{ chainId: 42161, shortName: 'arb1' },
|
|
82
|
+
{ chainId: 42170, shortName: 'arb-nova' },
|
|
83
|
+
{ chainId: 42220, shortName: 'celo' },
|
|
84
|
+
{ chainId: 43113, shortName: 'fuji' },
|
|
85
|
+
{ chainId: 43114, shortName: 'avax' },
|
|
86
|
+
{ chainId: 43288, shortName: 'boba-avax' },
|
|
87
|
+
{ chainId: 44787, shortName: 'alfa' },
|
|
88
|
+
{ chainId: 45000, shortName: 'autobahnnetwork' },
|
|
89
|
+
{ chainId: 47805, shortName: 'rei' },
|
|
90
|
+
{ chainId: 54211, shortName: 'islmt' },
|
|
91
|
+
{ chainId: 56288, shortName: 'boba-bnb' },
|
|
92
|
+
{ chainId: 71401, shortName: 'gw-testnet-v1' },
|
|
93
|
+
{ chainId: 71402, shortName: 'gw-mainnet-v1' },
|
|
94
|
+
{ chainId: 73799, shortName: 'vt' },
|
|
95
|
+
{ chainId: 80001, shortName: 'maticmum' },
|
|
96
|
+
{ chainId: 84531, shortName: 'base-gor' },
|
|
97
|
+
{ chainId: 200101, shortName: 'milktada' },
|
|
98
|
+
{ chainId: 200202, shortName: 'milktalgo' },
|
|
99
|
+
{ chainId: 333999, shortName: 'olympus' },
|
|
100
|
+
{ chainId: 421611, shortName: 'arb-rinkeby' },
|
|
101
|
+
{ chainId: 421613, shortName: 'arb-goerli' },
|
|
102
|
+
{ chainId: 11155111, shortName: 'sep' },
|
|
103
|
+
{ chainId: 1313161554, shortName: 'aurora' },
|
|
104
|
+
{ chainId: 1313161555, shortName: 'aurora-testnet' },
|
|
105
|
+
{ chainId: 1666600000, shortName: 'hmy-s0' },
|
|
106
|
+
{ chainId: 1666700000, shortName: 'hmy-b-s0' },
|
|
107
|
+
{ chainId: 11297108099, shortName: 'tpalm' },
|
|
108
|
+
{ chainId: 11297108109, shortName: 'palm' }
|
|
109
|
+
];
|
|
110
|
+
if (process.env.TEST_NETWORK === 'hardhat') {
|
|
111
|
+
exports.networks.push({ shortName: 'local', chainId: 31337 });
|
|
112
|
+
}
|
|
113
|
+
else if (process.env.TEST_NETWORK === 'ganache') {
|
|
114
|
+
exports.networks.push({ shortName: 'local', chainId: 1337 });
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/utils/eip-3770/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Eip3770Address } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
export declare function parseEip3770Address(fullAddress: string): Eip3770Address;
|
|
3
|
+
export declare function getEip3770NetworkPrefixFromChainId(chainId: number): string;
|
|
4
|
+
export declare function isValidEip3770NetworkPrefix(prefix: string): boolean;
|
|
5
|
+
export declare function validateEip3770NetworkPrefix(prefix: string, currentChainId: number): void;
|
|
6
|
+
export declare function validateEthereumAddress(address: string): void;
|
|
7
|
+
export declare function validateEip3770Address(fullAddress: string, currentChainId: number): Eip3770Address;
|