@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,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCreateCallContract = exports.getSignMessageLibContract = exports.getMultiSendCallOnlyContract = exports.getMultiSendContract = exports.getCompatibilityFallbackHandlerContract = exports.getProxyFactoryContract = exports.getSafeContract = exports.getCreateCallContractDeployment = exports.getSignMessageLibContractDeployment = exports.getSafeProxyFactoryContractDeployment = exports.getMultiSendContractDeployment = exports.getMultiSendCallOnlyContractDeployment = exports.getCompatibilityFallbackHandlerContractDeployment = exports.getSafeContractDeployment = void 0;
|
|
4
|
+
const safe_deployments_1 = require("@safe-global/safe-deployments");
|
|
5
|
+
const config_1 = require("./config");
|
|
6
|
+
function getSafeContractDeployment(safeVersion, chainId, isL1SafeMasterCopy = false) {
|
|
7
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].safeMasterCopyVersion;
|
|
8
|
+
const filters = { version, network: chainId.toString(), released: true };
|
|
9
|
+
if (config_1.safeDeploymentsL1ChainIds.includes(chainId) || isL1SafeMasterCopy) {
|
|
10
|
+
return (0, safe_deployments_1.getSafeSingletonDeployment)(filters);
|
|
11
|
+
}
|
|
12
|
+
return (0, safe_deployments_1.getSafeL2SingletonDeployment)(filters);
|
|
13
|
+
}
|
|
14
|
+
exports.getSafeContractDeployment = getSafeContractDeployment;
|
|
15
|
+
function getCompatibilityFallbackHandlerContractDeployment(safeVersion, chainId) {
|
|
16
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].compatibilityFallbackHandler;
|
|
17
|
+
return (0, safe_deployments_1.getCompatibilityFallbackHandlerDeployment)({
|
|
18
|
+
version,
|
|
19
|
+
network: chainId.toString(),
|
|
20
|
+
released: true
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
exports.getCompatibilityFallbackHandlerContractDeployment = getCompatibilityFallbackHandlerContractDeployment;
|
|
24
|
+
function getMultiSendCallOnlyContractDeployment(safeVersion, chainId) {
|
|
25
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].multiSendCallOnlyVersion;
|
|
26
|
+
return (0, safe_deployments_1.getMultiSendCallOnlyDeployment)({ version, network: chainId.toString(), released: true });
|
|
27
|
+
}
|
|
28
|
+
exports.getMultiSendCallOnlyContractDeployment = getMultiSendCallOnlyContractDeployment;
|
|
29
|
+
function getMultiSendContractDeployment(safeVersion, chainId) {
|
|
30
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].multiSendVersion;
|
|
31
|
+
return (0, safe_deployments_1.getMultiSendDeployment)({ version, network: chainId.toString(), released: true });
|
|
32
|
+
}
|
|
33
|
+
exports.getMultiSendContractDeployment = getMultiSendContractDeployment;
|
|
34
|
+
function getSafeProxyFactoryContractDeployment(safeVersion, chainId) {
|
|
35
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].safeProxyFactoryVersion;
|
|
36
|
+
return (0, safe_deployments_1.getProxyFactoryDeployment)({ version, network: chainId.toString(), released: true });
|
|
37
|
+
}
|
|
38
|
+
exports.getSafeProxyFactoryContractDeployment = getSafeProxyFactoryContractDeployment;
|
|
39
|
+
function getSignMessageLibContractDeployment(safeVersion, chainId) {
|
|
40
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].signMessageLibVersion;
|
|
41
|
+
return (0, safe_deployments_1.getSignMessageLibDeployment)({ version, network: chainId.toString(), released: true });
|
|
42
|
+
}
|
|
43
|
+
exports.getSignMessageLibContractDeployment = getSignMessageLibContractDeployment;
|
|
44
|
+
function getCreateCallContractDeployment(safeVersion, chainId) {
|
|
45
|
+
const version = config_1.safeDeploymentsVersions[safeVersion].createCallVersion;
|
|
46
|
+
return (0, safe_deployments_1.getCreateCallDeployment)({ version, network: chainId.toString(), released: true });
|
|
47
|
+
}
|
|
48
|
+
exports.getCreateCallContractDeployment = getCreateCallContractDeployment;
|
|
49
|
+
async function getSafeContract({ ethAdapter, safeVersion, chainId, customSafeAddress, isL1SafeMasterCopy, customContracts }) {
|
|
50
|
+
const singletonDeployment = getSafeContractDeployment(safeVersion, chainId, isL1SafeMasterCopy);
|
|
51
|
+
const gnosisSafeContract = ethAdapter.getSafeContract({
|
|
52
|
+
safeVersion,
|
|
53
|
+
chainId,
|
|
54
|
+
singletonDeployment,
|
|
55
|
+
customContractAddress: customSafeAddress !== null && customSafeAddress !== void 0 ? customSafeAddress : customContracts === null || customContracts === void 0 ? void 0 : customContracts.safeMasterCopyAddress,
|
|
56
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.safeMasterCopyAbi
|
|
57
|
+
});
|
|
58
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(gnosisSafeContract.getAddress());
|
|
59
|
+
if (!isContractDeployed) {
|
|
60
|
+
throw new Error('SafeProxy contract is not deployed on the current network');
|
|
61
|
+
}
|
|
62
|
+
return gnosisSafeContract;
|
|
63
|
+
}
|
|
64
|
+
exports.getSafeContract = getSafeContract;
|
|
65
|
+
async function getProxyFactoryContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
66
|
+
const proxyFactoryDeployment = getSafeProxyFactoryContractDeployment(safeVersion, chainId);
|
|
67
|
+
const safeProxyFactoryContract = await ethAdapter.getSafeProxyFactoryContract({
|
|
68
|
+
safeVersion,
|
|
69
|
+
chainId,
|
|
70
|
+
singletonDeployment: proxyFactoryDeployment,
|
|
71
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.safeProxyFactoryAddress,
|
|
72
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.safeProxyFactoryAbi
|
|
73
|
+
});
|
|
74
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(safeProxyFactoryContract.getAddress());
|
|
75
|
+
if (!isContractDeployed) {
|
|
76
|
+
throw new Error('SafeProxyFactory contract is not deployed on the current network');
|
|
77
|
+
}
|
|
78
|
+
return safeProxyFactoryContract;
|
|
79
|
+
}
|
|
80
|
+
exports.getProxyFactoryContract = getProxyFactoryContract;
|
|
81
|
+
async function getCompatibilityFallbackHandlerContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
82
|
+
const fallbackHandlerDeployment = getCompatibilityFallbackHandlerContractDeployment(safeVersion, chainId);
|
|
83
|
+
const fallbackHandlerContract = await ethAdapter.getCompatibilityFallbackHandlerContract({
|
|
84
|
+
safeVersion,
|
|
85
|
+
chainId,
|
|
86
|
+
singletonDeployment: fallbackHandlerDeployment,
|
|
87
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.fallbackHandlerAddress,
|
|
88
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.fallbackHandlerAbi
|
|
89
|
+
});
|
|
90
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(fallbackHandlerContract.getAddress());
|
|
91
|
+
if (!isContractDeployed) {
|
|
92
|
+
throw new Error('CompatibilityFallbackHandler contract is not deployed on the current network');
|
|
93
|
+
}
|
|
94
|
+
return fallbackHandlerContract;
|
|
95
|
+
}
|
|
96
|
+
exports.getCompatibilityFallbackHandlerContract = getCompatibilityFallbackHandlerContract;
|
|
97
|
+
async function getMultiSendContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
98
|
+
const multiSendDeployment = getMultiSendContractDeployment(safeVersion, chainId);
|
|
99
|
+
const multiSendContract = await ethAdapter.getMultiSendContract({
|
|
100
|
+
safeVersion,
|
|
101
|
+
chainId,
|
|
102
|
+
singletonDeployment: multiSendDeployment,
|
|
103
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.multiSendAddress,
|
|
104
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.multiSendAbi
|
|
105
|
+
});
|
|
106
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(multiSendContract.getAddress());
|
|
107
|
+
if (!isContractDeployed) {
|
|
108
|
+
throw new Error('MultiSend contract is not deployed on the current network');
|
|
109
|
+
}
|
|
110
|
+
return multiSendContract;
|
|
111
|
+
}
|
|
112
|
+
exports.getMultiSendContract = getMultiSendContract;
|
|
113
|
+
async function getMultiSendCallOnlyContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
114
|
+
const multiSendCallOnlyDeployment = getMultiSendCallOnlyContractDeployment(safeVersion, chainId);
|
|
115
|
+
const multiSendCallOnlyContract = await ethAdapter.getMultiSendCallOnlyContract({
|
|
116
|
+
safeVersion,
|
|
117
|
+
chainId,
|
|
118
|
+
singletonDeployment: multiSendCallOnlyDeployment,
|
|
119
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.multiSendCallOnlyAddress,
|
|
120
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.multiSendCallOnlyAbi
|
|
121
|
+
});
|
|
122
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(multiSendCallOnlyContract.getAddress());
|
|
123
|
+
if (!isContractDeployed) {
|
|
124
|
+
throw new Error('MultiSendCallOnly contract is not deployed on the current network');
|
|
125
|
+
}
|
|
126
|
+
return multiSendCallOnlyContract;
|
|
127
|
+
}
|
|
128
|
+
exports.getMultiSendCallOnlyContract = getMultiSendCallOnlyContract;
|
|
129
|
+
async function getSignMessageLibContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
130
|
+
const signMessageLibDeployment = getSignMessageLibContractDeployment(safeVersion, chainId);
|
|
131
|
+
const signMessageLibContract = await ethAdapter.getSignMessageLibContract({
|
|
132
|
+
safeVersion,
|
|
133
|
+
chainId,
|
|
134
|
+
singletonDeployment: signMessageLibDeployment,
|
|
135
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.signMessageLibAddress,
|
|
136
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.signMessageLibAbi
|
|
137
|
+
});
|
|
138
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(signMessageLibContract.getAddress());
|
|
139
|
+
if (!isContractDeployed) {
|
|
140
|
+
throw new Error('SignMessageLib contract is not deployed on the current network');
|
|
141
|
+
}
|
|
142
|
+
return signMessageLibContract;
|
|
143
|
+
}
|
|
144
|
+
exports.getSignMessageLibContract = getSignMessageLibContract;
|
|
145
|
+
async function getCreateCallContract({ ethAdapter, safeVersion, chainId, customContracts }) {
|
|
146
|
+
const createCallDeployment = getCreateCallContractDeployment(safeVersion, chainId);
|
|
147
|
+
const createCallContract = await ethAdapter.getCreateCallContract({
|
|
148
|
+
safeVersion,
|
|
149
|
+
chainId,
|
|
150
|
+
singletonDeployment: createCallDeployment,
|
|
151
|
+
customContractAddress: customContracts === null || customContracts === void 0 ? void 0 : customContracts.createCallAddress,
|
|
152
|
+
customContractAbi: customContracts === null || customContracts === void 0 ? void 0 : customContracts.createCallAbi
|
|
153
|
+
});
|
|
154
|
+
const isContractDeployed = await ethAdapter.isContractDeployed(createCallContract.getAddress());
|
|
155
|
+
if (!isContractDeployed) {
|
|
156
|
+
throw new Error('CreateCall contract is not deployed on the current network');
|
|
157
|
+
}
|
|
158
|
+
return createCallContract;
|
|
159
|
+
}
|
|
160
|
+
exports.getCreateCallContract = getCreateCallContract;
|
|
161
|
+
//# sourceMappingURL=safeDeploymentContracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safeDeploymentContracts.js","sourceRoot":"","sources":["../../../src/contracts/safeDeploymentContracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { getCompatibilityFallbackHandlerContract, getCreateCallContract, getMultiSendCallOnlyContract, getMultiSendContract, getProxyFactoryContract, getSafeContract, getSignMessageLibContract } from './contracts/safeDeploymentContracts';
|
|
2
|
+
import ContractManager from './managers/contractManager';
|
|
3
|
+
import Safe, { AddOwnerTxParams, ConnectSafeConfig, CreateTransactionProps, RemoveOwnerTxParams, SafeConfig, SwapOwnerTxParams } from './Safe';
|
|
4
|
+
import SafeFactory, { DeploySafeProps, PredictSafeProps, SafeAccountConfig, SafeDeploymentConfig, SafeFactoryConfig } from './safeFactory';
|
|
5
|
+
import { EthersAdapter, EthersAdapterConfig, EthersTransactionOptions, EthersTransactionResult, CreateProxyProps as CreateEthersProxyProps, CreateCallEthersContract, GnosisSafeContractEthers, GnosisSafeProxyFactoryEthersContract, MultiSendEthersContract, MultiSendCallOnlyEthersContract, SignMessageLibEthersContract } from './adapters/ethers';
|
|
6
|
+
import { Web3Adapter, Web3AdapterConfig, Web3TransactionOptions, CreateProxyProps as CreateWeb3ProxyProps, Web3TransactionResult, CreateCallWeb3Contract, GnosisSafeContractWeb3, GnosisSafeProxyFactoryWeb3Contract, MultiSendWeb3Contract, MultiSendCallOnlyWeb3Contract, SignMessageLibWeb3Contract } from './adapters/web3';
|
|
7
|
+
import { ContractNetworksConfig } from './types';
|
|
8
|
+
import { SafeTransactionOptionalProps } from './utils/transactions/types';
|
|
9
|
+
import { encodeMultiSendData, standardizeSafeTransactionData } from './utils/transactions/utils';
|
|
10
|
+
export { ContractManager, SafeFactory, SafeFactoryConfig, SafeAccountConfig, SafeDeploymentConfig, PredictSafeProps, DeploySafeProps, SafeConfig, ConnectSafeConfig, ContractNetworksConfig, SafeTransactionOptionalProps, CreateTransactionProps, AddOwnerTxParams, RemoveOwnerTxParams, SwapOwnerTxParams, encodeMultiSendData, standardizeSafeTransactionData, EthersAdapter, EthersAdapterConfig, EthersTransactionOptions, EthersTransactionResult, CreateEthersProxyProps, CreateCallEthersContract, GnosisSafeContractEthers, GnosisSafeProxyFactoryEthersContract, MultiSendEthersContract, MultiSendCallOnlyEthersContract, SignMessageLibEthersContract, Web3Adapter, Web3AdapterConfig, Web3TransactionOptions, CreateWeb3ProxyProps, Web3TransactionResult, CreateCallWeb3Contract, GnosisSafeContractWeb3, GnosisSafeProxyFactoryWeb3Contract, MultiSendWeb3Contract, MultiSendCallOnlyWeb3Contract, SignMessageLibWeb3Contract, getSafeContract, getProxyFactoryContract, getCompatibilityFallbackHandlerContract, getMultiSendContract, getMultiSendCallOnlyContract, getSignMessageLibContract, getCreateCallContract };
|
|
11
|
+
export default Safe;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getCreateCallContract = exports.getSignMessageLibContract = exports.getMultiSendCallOnlyContract = exports.getMultiSendContract = exports.getCompatibilityFallbackHandlerContract = exports.getProxyFactoryContract = exports.getSafeContract = exports.SignMessageLibWeb3Contract = exports.MultiSendCallOnlyWeb3Contract = exports.MultiSendWeb3Contract = exports.GnosisSafeProxyFactoryWeb3Contract = exports.GnosisSafeContractWeb3 = exports.CreateCallWeb3Contract = exports.Web3Adapter = exports.SignMessageLibEthersContract = exports.MultiSendCallOnlyEthersContract = exports.MultiSendEthersContract = exports.GnosisSafeProxyFactoryEthersContract = exports.GnosisSafeContractEthers = exports.CreateCallEthersContract = exports.EthersAdapter = exports.standardizeSafeTransactionData = exports.encodeMultiSendData = exports.SafeFactory = exports.ContractManager = void 0;
|
|
7
|
+
const safeDeploymentContracts_1 = require("./contracts/safeDeploymentContracts");
|
|
8
|
+
Object.defineProperty(exports, "getCompatibilityFallbackHandlerContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getCompatibilityFallbackHandlerContract; } });
|
|
9
|
+
Object.defineProperty(exports, "getCreateCallContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getCreateCallContract; } });
|
|
10
|
+
Object.defineProperty(exports, "getMultiSendCallOnlyContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getMultiSendCallOnlyContract; } });
|
|
11
|
+
Object.defineProperty(exports, "getMultiSendContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getMultiSendContract; } });
|
|
12
|
+
Object.defineProperty(exports, "getProxyFactoryContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getProxyFactoryContract; } });
|
|
13
|
+
Object.defineProperty(exports, "getSafeContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getSafeContract; } });
|
|
14
|
+
Object.defineProperty(exports, "getSignMessageLibContract", { enumerable: true, get: function () { return safeDeploymentContracts_1.getSignMessageLibContract; } });
|
|
15
|
+
const contractManager_1 = __importDefault(require("./managers/contractManager"));
|
|
16
|
+
exports.ContractManager = contractManager_1.default;
|
|
17
|
+
const Safe_1 = __importDefault(require("./Safe"));
|
|
18
|
+
const safeFactory_1 = __importDefault(require("./safeFactory"));
|
|
19
|
+
exports.SafeFactory = safeFactory_1.default;
|
|
20
|
+
const ethers_1 = require("./adapters/ethers");
|
|
21
|
+
Object.defineProperty(exports, "EthersAdapter", { enumerable: true, get: function () { return ethers_1.EthersAdapter; } });
|
|
22
|
+
Object.defineProperty(exports, "CreateCallEthersContract", { enumerable: true, get: function () { return ethers_1.CreateCallEthersContract; } });
|
|
23
|
+
Object.defineProperty(exports, "GnosisSafeContractEthers", { enumerable: true, get: function () { return ethers_1.GnosisSafeContractEthers; } });
|
|
24
|
+
Object.defineProperty(exports, "GnosisSafeProxyFactoryEthersContract", { enumerable: true, get: function () { return ethers_1.GnosisSafeProxyFactoryEthersContract; } });
|
|
25
|
+
Object.defineProperty(exports, "MultiSendEthersContract", { enumerable: true, get: function () { return ethers_1.MultiSendEthersContract; } });
|
|
26
|
+
Object.defineProperty(exports, "MultiSendCallOnlyEthersContract", { enumerable: true, get: function () { return ethers_1.MultiSendCallOnlyEthersContract; } });
|
|
27
|
+
Object.defineProperty(exports, "SignMessageLibEthersContract", { enumerable: true, get: function () { return ethers_1.SignMessageLibEthersContract; } });
|
|
28
|
+
const web3_1 = require("./adapters/web3");
|
|
29
|
+
Object.defineProperty(exports, "Web3Adapter", { enumerable: true, get: function () { return web3_1.Web3Adapter; } });
|
|
30
|
+
Object.defineProperty(exports, "CreateCallWeb3Contract", { enumerable: true, get: function () { return web3_1.CreateCallWeb3Contract; } });
|
|
31
|
+
Object.defineProperty(exports, "GnosisSafeContractWeb3", { enumerable: true, get: function () { return web3_1.GnosisSafeContractWeb3; } });
|
|
32
|
+
Object.defineProperty(exports, "GnosisSafeProxyFactoryWeb3Contract", { enumerable: true, get: function () { return web3_1.GnosisSafeProxyFactoryWeb3Contract; } });
|
|
33
|
+
Object.defineProperty(exports, "MultiSendWeb3Contract", { enumerable: true, get: function () { return web3_1.MultiSendWeb3Contract; } });
|
|
34
|
+
Object.defineProperty(exports, "MultiSendCallOnlyWeb3Contract", { enumerable: true, get: function () { return web3_1.MultiSendCallOnlyWeb3Contract; } });
|
|
35
|
+
Object.defineProperty(exports, "SignMessageLibWeb3Contract", { enumerable: true, get: function () { return web3_1.SignMessageLibWeb3Contract; } });
|
|
36
|
+
const utils_1 = require("./utils/transactions/utils");
|
|
37
|
+
Object.defineProperty(exports, "encodeMultiSendData", { enumerable: true, get: function () { return utils_1.encodeMultiSendData; } });
|
|
38
|
+
Object.defineProperty(exports, "standardizeSafeTransactionData", { enumerable: true, get: function () { return utils_1.standardizeSafeTransactionData; } });
|
|
39
|
+
exports.default = Safe_1.default;
|
|
40
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,iFAQ4C;AA0F1C,wHAjGA,iEAAuC,OAiGA;AAIvC,sGApGA,+CAAqB,OAoGA;AAFrB,6GAjGA,sDAA4B,OAiGA;AAD5B,qGA/FA,8CAAoB,OA+FA;AAFpB,wGA5FA,iDAAuB,OA4FA;AADvB,gGA1FA,yCAAe,OA0FA;AAKf,0GA9FA,mDAAyB,OA8FA;AA5F3B,iFAAwD;AAgDtD,0BAhDK,yBAAe,CAgDL;AA/CjB,kDAOe;AACf,gEAMsB;AAkCpB,sBAxCK,qBAAW,CAwCL;AAjCb,8CAY0B;AAqCxB,8FAhDA,sBAAa,OAgDA;AAKb,yGAhDA,iCAAwB,OAgDA;AACxB,yGAhDA,iCAAwB,OAgDA;AACxB,qHAhDA,6CAAoC,OAgDA;AACpC,wGAhDA,gCAAuB,OAgDA;AACvB,gHAhDA,wCAA+B,OAgDA;AAC/B,6GAhDA,qCAA4B,OAgDA;AA9C9B,0CAYwB;AAmCtB,4FA9CA,kBAAW,OA8CA;AAKX,uGA9CA,6BAAsB,OA8CA;AACtB,uGA9CA,6BAAsB,OA8CA;AACtB,mHA9CA,yCAAkC,OA8CA;AAClC,sGA9CA,4BAAqB,OA8CA;AACrB,8GA9CA,oCAA6B,OA8CA;AAC7B,2GA9CA,iCAA0B,OA8CA;AAzC5B,sDAAgG;AAkB9F,oGAlBO,2BAAmB,OAkBP;AACnB,+GAnB4B,sCAA8B,OAmB5B;AAgChC,kBAAe,cAAI,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GnosisSafeContract, MultiSendCallOnlyContract, MultiSendContract } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
import { SafeConfig } from '@safe-global/protocol-kit/Safe';
|
|
3
|
+
import { ContractNetworksConfig } from '@safe-global/protocol-kit/types';
|
|
4
|
+
declare class ContractManager {
|
|
5
|
+
#private;
|
|
6
|
+
static create({ ethAdapter, safeAddress, isL1SafeMasterCopy, contractNetworks }: SafeConfig): Promise<ContractManager>;
|
|
7
|
+
init({ ethAdapter, safeAddress, isL1SafeMasterCopy, contractNetworks }: SafeConfig): Promise<void>;
|
|
8
|
+
get contractNetworks(): ContractNetworksConfig | undefined;
|
|
9
|
+
get isL1SafeMasterCopy(): boolean | undefined;
|
|
10
|
+
get safeContract(): GnosisSafeContract;
|
|
11
|
+
get multiSendContract(): MultiSendContract;
|
|
12
|
+
get multiSendCallOnlyContract(): MultiSendCallOnlyContract;
|
|
13
|
+
}
|
|
14
|
+
export default ContractManager;
|
|
@@ -0,0 +1,83 @@
|
|
|
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 _ContractManager_contractNetworks, _ContractManager_isL1SafeMasterCopy, _ContractManager_safeContract, _ContractManager_multiSendContract, _ContractManager_multiSendCallOnlyContract;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const config_1 = require("@safe-global/protocol-kit/contracts/config");
|
|
16
|
+
const safeDeploymentContracts_1 = require("@safe-global/protocol-kit/contracts/safeDeploymentContracts");
|
|
17
|
+
class ContractManager {
|
|
18
|
+
constructor() {
|
|
19
|
+
_ContractManager_contractNetworks.set(this, void 0);
|
|
20
|
+
_ContractManager_isL1SafeMasterCopy.set(this, void 0);
|
|
21
|
+
_ContractManager_safeContract.set(this, void 0);
|
|
22
|
+
_ContractManager_multiSendContract.set(this, void 0);
|
|
23
|
+
_ContractManager_multiSendCallOnlyContract.set(this, void 0);
|
|
24
|
+
}
|
|
25
|
+
static async create({ ethAdapter, safeAddress, isL1SafeMasterCopy, contractNetworks }) {
|
|
26
|
+
const contractManager = new ContractManager();
|
|
27
|
+
await contractManager.init({ ethAdapter, safeAddress, isL1SafeMasterCopy, contractNetworks });
|
|
28
|
+
return contractManager;
|
|
29
|
+
}
|
|
30
|
+
async init({ ethAdapter, safeAddress, isL1SafeMasterCopy, contractNetworks }) {
|
|
31
|
+
const chainId = await ethAdapter.getChainId();
|
|
32
|
+
const customContracts = contractNetworks === null || contractNetworks === void 0 ? void 0 : contractNetworks[chainId];
|
|
33
|
+
__classPrivateFieldSet(this, _ContractManager_contractNetworks, contractNetworks, "f");
|
|
34
|
+
__classPrivateFieldSet(this, _ContractManager_isL1SafeMasterCopy, isL1SafeMasterCopy, "f");
|
|
35
|
+
const temporarySafeContract = await (0, safeDeploymentContracts_1.getSafeContract)({
|
|
36
|
+
ethAdapter,
|
|
37
|
+
safeVersion: config_1.SAFE_LAST_VERSION,
|
|
38
|
+
chainId,
|
|
39
|
+
isL1SafeMasterCopy,
|
|
40
|
+
customSafeAddress: safeAddress,
|
|
41
|
+
customContracts
|
|
42
|
+
});
|
|
43
|
+
const safeVersion = await temporarySafeContract.getVersion();
|
|
44
|
+
__classPrivateFieldSet(this, _ContractManager_safeContract, await (0, safeDeploymentContracts_1.getSafeContract)({
|
|
45
|
+
ethAdapter,
|
|
46
|
+
safeVersion,
|
|
47
|
+
chainId,
|
|
48
|
+
isL1SafeMasterCopy,
|
|
49
|
+
customSafeAddress: safeAddress,
|
|
50
|
+
customContracts
|
|
51
|
+
}), "f");
|
|
52
|
+
__classPrivateFieldSet(this, _ContractManager_multiSendContract, await (0, safeDeploymentContracts_1.getMultiSendContract)({
|
|
53
|
+
ethAdapter,
|
|
54
|
+
safeVersion,
|
|
55
|
+
chainId,
|
|
56
|
+
customContracts
|
|
57
|
+
}), "f");
|
|
58
|
+
__classPrivateFieldSet(this, _ContractManager_multiSendCallOnlyContract, await (0, safeDeploymentContracts_1.getMultiSendCallOnlyContract)({
|
|
59
|
+
ethAdapter,
|
|
60
|
+
safeVersion,
|
|
61
|
+
chainId,
|
|
62
|
+
customContracts
|
|
63
|
+
}), "f");
|
|
64
|
+
}
|
|
65
|
+
get contractNetworks() {
|
|
66
|
+
return __classPrivateFieldGet(this, _ContractManager_contractNetworks, "f");
|
|
67
|
+
}
|
|
68
|
+
get isL1SafeMasterCopy() {
|
|
69
|
+
return __classPrivateFieldGet(this, _ContractManager_isL1SafeMasterCopy, "f");
|
|
70
|
+
}
|
|
71
|
+
get safeContract() {
|
|
72
|
+
return __classPrivateFieldGet(this, _ContractManager_safeContract, "f");
|
|
73
|
+
}
|
|
74
|
+
get multiSendContract() {
|
|
75
|
+
return __classPrivateFieldGet(this, _ContractManager_multiSendContract, "f");
|
|
76
|
+
}
|
|
77
|
+
get multiSendCallOnlyContract() {
|
|
78
|
+
return __classPrivateFieldGet(this, _ContractManager_multiSendCallOnlyContract, "f");
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
_ContractManager_contractNetworks = new WeakMap(), _ContractManager_isL1SafeMasterCopy = new WeakMap(), _ContractManager_safeContract = new WeakMap(), _ContractManager_multiSendContract = new WeakMap(), _ContractManager_multiSendCallOnlyContract = new WeakMap();
|
|
82
|
+
exports.default = ContractManager;
|
|
83
|
+
//# sourceMappingURL=contractManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contractManager.js","sourceRoot":"","sources":["../../../src/managers/contractManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,uEAA8E;AAC9E,yGAIoE;AAIpE,MAAM,eAAe;IAArB;QACE,oDAA0C;QAC1C,sDAA6B;QAC7B,gDAAkC;QAClC,qDAAsC;QACtC,6DAAsD;IA0ExD,CAAC;IAxEC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAClB,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EACL;QACX,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC7C,MAAM,eAAe,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,CAAA;QAC7F,OAAO,eAAe,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EACT,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EACL;QACX,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;QAC7C,MAAM,eAAe,GAAG,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,OAAO,CAAC,CAAA;QACnD,uBAAA,IAAI,qCAAqB,gBAAgB,MAAA,CAAA;QACzC,uBAAA,IAAI,uCAAuB,kBAAkB,MAAA,CAAA;QAE7C,MAAM,qBAAqB,GAAG,MAAM,IAAA,yCAAe,EAAC;YAClD,UAAU;YACV,WAAW,EAAE,0BAAiB;YAC9B,OAAO;YACP,kBAAkB;YAClB,iBAAiB,EAAE,WAAW;YAC9B,eAAe;SAChB,CAAC,CAAA;QACF,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAAC,UAAU,EAAE,CAAA;QAC5D,uBAAA,IAAI,iCAAiB,MAAM,IAAA,yCAAe,EAAC;YACzC,UAAU;YACV,WAAW;YACX,OAAO;YACP,kBAAkB;YAClB,iBAAiB,EAAE,WAAW;YAC9B,eAAe;SAChB,CAAC,MAAA,CAAA;QACF,uBAAA,IAAI,sCAAsB,MAAM,IAAA,8CAAoB,EAAC;YACnD,UAAU;YACV,WAAW;YACX,OAAO;YACP,eAAe;SAChB,CAAC,MAAA,CAAA;QACF,uBAAA,IAAI,8CAA8B,MAAM,IAAA,sDAA4B,EAAC;YACnE,UAAU;YACV,WAAW;YACX,OAAO;YACP,eAAe;SAChB,CAAC,MAAA,CAAA;IACJ,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,uBAAA,IAAI,yCAAkB,CAAA;IAC/B,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,uBAAA,IAAI,2CAAoB,CAAA;IACjC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,uBAAA,IAAI,qCAAc,CAAA;IAC3B,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,uBAAA,IAAI,0CAAmB,CAAA;IAChC,CAAC;IAED,IAAI,yBAAyB;QAC3B,OAAO,uBAAA,IAAI,kDAA2B,CAAA;IACxC,CAAC;CACF;;AAED,kBAAe,eAAe,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EthAdapter, GnosisSafeContract } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
declare class FallbackHandlerManager {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(ethAdapter: EthAdapter, safeContract: GnosisSafeContract);
|
|
5
|
+
private validateFallbackHandlerAddress;
|
|
6
|
+
private validateFallbackHandlerIsNotEnabled;
|
|
7
|
+
private validateFallbackHandlerIsEnabled;
|
|
8
|
+
getFallbackHandler(): Promise<string>;
|
|
9
|
+
encodeEnableFallbackHandlerData(fallbackHandlerAddress: string): Promise<string>;
|
|
10
|
+
encodeDisableFallbackHandlerData(): Promise<string>;
|
|
11
|
+
}
|
|
12
|
+
export default FallbackHandlerManager;
|
|
@@ -0,0 +1,65 @@
|
|
|
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 _FallbackHandlerManager_ethAdapter, _FallbackHandlerManager_safeContract, _FallbackHandlerManager_slot;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const utils_1 = require("@safe-global/protocol-kit/utils");
|
|
16
|
+
const constants_1 = require("@safe-global/protocol-kit/utils/constants");
|
|
17
|
+
class FallbackHandlerManager {
|
|
18
|
+
constructor(ethAdapter, safeContract) {
|
|
19
|
+
_FallbackHandlerManager_ethAdapter.set(this, void 0);
|
|
20
|
+
_FallbackHandlerManager_safeContract.set(this, void 0);
|
|
21
|
+
// keccak256("fallback_manager.handler.address")
|
|
22
|
+
_FallbackHandlerManager_slot.set(this, '0x6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d5');
|
|
23
|
+
__classPrivateFieldSet(this, _FallbackHandlerManager_ethAdapter, ethAdapter, "f");
|
|
24
|
+
__classPrivateFieldSet(this, _FallbackHandlerManager_safeContract, safeContract, "f");
|
|
25
|
+
}
|
|
26
|
+
validateFallbackHandlerAddress(fallbackHandlerAddress) {
|
|
27
|
+
const isValidAddress = __classPrivateFieldGet(this, _FallbackHandlerManager_ethAdapter, "f").isAddress(fallbackHandlerAddress);
|
|
28
|
+
if (!isValidAddress || (0, utils_1.isZeroAddress)(fallbackHandlerAddress)) {
|
|
29
|
+
throw new Error('Invalid fallback handler address provided');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
validateFallbackHandlerIsNotEnabled(currentFallbackHandler, newFallbackHandlerAddress) {
|
|
33
|
+
if ((0, utils_1.sameString)(currentFallbackHandler, newFallbackHandlerAddress)) {
|
|
34
|
+
throw new Error('Fallback handler provided is already enabled');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
validateFallbackHandlerIsEnabled(fallbackHandlerAddress) {
|
|
38
|
+
if ((0, utils_1.isZeroAddress)(fallbackHandlerAddress)) {
|
|
39
|
+
throw new Error('There is no fallback handler enabled yet');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
async getFallbackHandler() {
|
|
43
|
+
const safeVersion = await __classPrivateFieldGet(this, _FallbackHandlerManager_safeContract, "f").getVersion();
|
|
44
|
+
if ((0, utils_1.hasSafeFeature)(utils_1.SAFE_FEATURES.SAFE_FALLBACK_HANDLER, safeVersion)) {
|
|
45
|
+
return __classPrivateFieldGet(this, _FallbackHandlerManager_ethAdapter, "f").getStorageAt(__classPrivateFieldGet(this, _FallbackHandlerManager_safeContract, "f").getAddress(), __classPrivateFieldGet(this, _FallbackHandlerManager_slot, "f"));
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
throw new Error('Current version of the Safe does not support the fallback handler functionality');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async encodeEnableFallbackHandlerData(fallbackHandlerAddress) {
|
|
52
|
+
this.validateFallbackHandlerAddress(fallbackHandlerAddress);
|
|
53
|
+
const currentFallbackHandler = await this.getFallbackHandler();
|
|
54
|
+
this.validateFallbackHandlerIsNotEnabled(currentFallbackHandler, fallbackHandlerAddress);
|
|
55
|
+
return __classPrivateFieldGet(this, _FallbackHandlerManager_safeContract, "f").encode('setFallbackHandler', [fallbackHandlerAddress]);
|
|
56
|
+
}
|
|
57
|
+
async encodeDisableFallbackHandlerData() {
|
|
58
|
+
const currentFallbackHandler = await this.getFallbackHandler();
|
|
59
|
+
this.validateFallbackHandlerIsEnabled(currentFallbackHandler);
|
|
60
|
+
return __classPrivateFieldGet(this, _FallbackHandlerManager_safeContract, "f").encode('setFallbackHandler', [constants_1.ZERO_ADDRESS]);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
_FallbackHandlerManager_ethAdapter = new WeakMap(), _FallbackHandlerManager_safeContract = new WeakMap(), _FallbackHandlerManager_slot = new WeakMap();
|
|
64
|
+
exports.default = FallbackHandlerManager;
|
|
65
|
+
//# sourceMappingURL=fallbackHandlerManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fallbackHandlerManager.js","sourceRoot":"","sources":["../../../src/managers/fallbackHandlerManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,2DAKwC;AACxC,yEAAwE;AAExE,MAAM,sBAAsB;IAM1B,YAAY,UAAsB,EAAE,YAAgC;QALpE,qDAAuB;QACvB,uDAAiC;QACjC,gDAAgD;QAChD,uCAAQ,oEAAoE,EAAA;QAG1E,uBAAA,IAAI,sCAAe,UAAU,MAAA,CAAA;QAC7B,uBAAA,IAAI,wCAAiB,YAAY,MAAA,CAAA;IACnC,CAAC;IAEO,8BAA8B,CAAC,sBAA8B;QACnE,MAAM,cAAc,GAAG,uBAAA,IAAI,0CAAY,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAA;QACzE,IAAI,CAAC,cAAc,IAAI,IAAA,qBAAa,EAAC,sBAAsB,CAAC,EAAE;YAC5D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;SAC7D;IACH,CAAC;IAEO,mCAAmC,CACzC,sBAA8B,EAC9B,yBAAiC;QAEjC,IAAI,IAAA,kBAAU,EAAC,sBAAsB,EAAE,yBAAyB,CAAC,EAAE;YACjE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;SAChE;IACH,CAAC;IAEO,gCAAgC,CAAC,sBAA8B;QACrE,IAAI,IAAA,qBAAa,EAAC,sBAAsB,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC5D;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,WAAW,GAAG,MAAM,uBAAA,IAAI,4CAAc,CAAC,UAAU,EAAE,CAAA;QACzD,IAAI,IAAA,sBAAc,EAAC,qBAAa,CAAC,qBAAqB,EAAE,WAAW,CAAC,EAAE;YACpE,OAAO,uBAAA,IAAI,0CAAY,CAAC,YAAY,CAAC,uBAAA,IAAI,4CAAc,CAAC,UAAU,EAAE,EAAE,uBAAA,IAAI,oCAAM,CAAC,CAAA;SAClF;aAAM;YACL,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAA;SACF;IACH,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,sBAA8B;QAClE,IAAI,CAAC,8BAA8B,CAAC,sBAAsB,CAAC,CAAA;QAC3D,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC9D,IAAI,CAAC,mCAAmC,CAAC,sBAAsB,EAAE,sBAAsB,CAAC,CAAA;QACxF,OAAO,uBAAA,IAAI,4CAAc,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAClF,CAAC;IAED,KAAK,CAAC,gCAAgC;QACpC,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC9D,IAAI,CAAC,gCAAgC,CAAC,sBAAsB,CAAC,CAAA;QAC7D,OAAO,uBAAA,IAAI,4CAAc,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,wBAAY,CAAC,CAAC,CAAA;IACxE,CAAC;CACF;;AAED,kBAAe,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EthAdapter, GnosisSafeContract } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
declare class GuardManager {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(ethAdapter: EthAdapter, safeContract: GnosisSafeContract);
|
|
5
|
+
private validateGuardAddress;
|
|
6
|
+
private validateGuardIsNotEnabled;
|
|
7
|
+
private validateGuardIsEnabled;
|
|
8
|
+
getGuard(): Promise<string>;
|
|
9
|
+
encodeEnableGuardData(guardAddress: string): Promise<string>;
|
|
10
|
+
encodeDisableGuardData(): Promise<string>;
|
|
11
|
+
}
|
|
12
|
+
export default GuardManager;
|
|
@@ -0,0 +1,65 @@
|
|
|
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 _GuardManager_ethAdapter, _GuardManager_safeContract, _GuardManager_slot;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const utils_1 = require("@safe-global/protocol-kit/utils");
|
|
16
|
+
const constants_1 = require("@safe-global/protocol-kit/utils/constants");
|
|
17
|
+
class GuardManager {
|
|
18
|
+
constructor(ethAdapter, safeContract) {
|
|
19
|
+
_GuardManager_ethAdapter.set(this, void 0);
|
|
20
|
+
_GuardManager_safeContract.set(this, void 0);
|
|
21
|
+
// keccak256("guard_manager.guard.address")
|
|
22
|
+
_GuardManager_slot.set(this, '0x4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558c93c34c8');
|
|
23
|
+
__classPrivateFieldSet(this, _GuardManager_ethAdapter, ethAdapter, "f");
|
|
24
|
+
__classPrivateFieldSet(this, _GuardManager_safeContract, safeContract, "f");
|
|
25
|
+
}
|
|
26
|
+
validateGuardAddress(guardAddress) {
|
|
27
|
+
const isValidAddress = __classPrivateFieldGet(this, _GuardManager_ethAdapter, "f").isAddress(guardAddress);
|
|
28
|
+
if (!isValidAddress || (0, utils_1.isZeroAddress)(guardAddress)) {
|
|
29
|
+
throw new Error('Invalid guard address provided');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
validateGuardIsNotEnabled(currentGuard, newGuardAddress) {
|
|
33
|
+
if ((0, utils_1.sameString)(currentGuard, newGuardAddress)) {
|
|
34
|
+
throw new Error('Guard provided is already enabled');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
validateGuardIsEnabled(guardAddress) {
|
|
38
|
+
if ((0, utils_1.isZeroAddress)(guardAddress)) {
|
|
39
|
+
throw new Error('There is no guard enabled yet');
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
async getGuard() {
|
|
43
|
+
const safeVersion = await __classPrivateFieldGet(this, _GuardManager_safeContract, "f").getVersion();
|
|
44
|
+
if ((0, utils_1.hasSafeFeature)(utils_1.SAFE_FEATURES.SAFE_TX_GUARDS, safeVersion)) {
|
|
45
|
+
return __classPrivateFieldGet(this, _GuardManager_ethAdapter, "f").getStorageAt(__classPrivateFieldGet(this, _GuardManager_safeContract, "f").getAddress(), __classPrivateFieldGet(this, _GuardManager_slot, "f"));
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
throw new Error('Current version of the Safe does not support Safe transaction guards functionality');
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async encodeEnableGuardData(guardAddress) {
|
|
52
|
+
this.validateGuardAddress(guardAddress);
|
|
53
|
+
const currentGuard = await this.getGuard();
|
|
54
|
+
this.validateGuardIsNotEnabled(currentGuard, guardAddress);
|
|
55
|
+
return __classPrivateFieldGet(this, _GuardManager_safeContract, "f").encode('setGuard', [guardAddress]);
|
|
56
|
+
}
|
|
57
|
+
async encodeDisableGuardData() {
|
|
58
|
+
const currentGuard = await this.getGuard();
|
|
59
|
+
this.validateGuardIsEnabled(currentGuard);
|
|
60
|
+
return __classPrivateFieldGet(this, _GuardManager_safeContract, "f").encode('setGuard', [constants_1.ZERO_ADDRESS]);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
_GuardManager_ethAdapter = new WeakMap(), _GuardManager_safeContract = new WeakMap(), _GuardManager_slot = new WeakMap();
|
|
64
|
+
exports.default = GuardManager;
|
|
65
|
+
//# sourceMappingURL=guardManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardManager.js","sourceRoot":"","sources":["../../../src/managers/guardManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,2DAKwC;AACxC,yEAAwE;AAExE,MAAM,YAAY;IAMhB,YAAY,UAAsB,EAAE,YAAgC;QALpE,2CAAuB;QACvB,6CAAiC;QACjC,2CAA2C;QAC3C,6BAAQ,oEAAoE,EAAA;QAG1E,uBAAA,IAAI,4BAAe,UAAU,MAAA,CAAA;QAC7B,uBAAA,IAAI,8BAAiB,YAAY,MAAA,CAAA;IACnC,CAAC;IAEO,oBAAoB,CAAC,YAAoB;QAC/C,MAAM,cAAc,GAAG,uBAAA,IAAI,gCAAY,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAC/D,IAAI,CAAC,cAAc,IAAI,IAAA,qBAAa,EAAC,YAAY,CAAC,EAAE;YAClD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAClD;IACH,CAAC;IAEO,yBAAyB,CAAC,YAAoB,EAAE,eAAuB;QAC7E,IAAI,IAAA,kBAAU,EAAC,YAAY,EAAE,eAAe,CAAC,EAAE;YAC7C,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;SACrD;IACH,CAAC;IAEO,sBAAsB,CAAC,YAAoB;QACjD,IAAI,IAAA,qBAAa,EAAC,YAAY,CAAC,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;SACjD;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,WAAW,GAAG,MAAM,uBAAA,IAAI,kCAAc,CAAC,UAAU,EAAE,CAAA;QACzD,IAAI,IAAA,sBAAc,EAAC,qBAAa,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE;YAC7D,OAAO,uBAAA,IAAI,gCAAY,CAAC,YAAY,CAAC,uBAAA,IAAI,kCAAc,CAAC,UAAU,EAAE,EAAE,uBAAA,IAAI,0BAAM,CAAC,CAAA;SAClF;aAAM;YACL,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAA;SACF;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,YAAoB;QAC9C,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;QACvC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC1C,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;QAC1D,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAC9D,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC1C,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAA;QACzC,OAAO,uBAAA,IAAI,kCAAc,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,wBAAY,CAAC,CAAC,CAAA;IAC9D,CAAC;CACF;;AAED,kBAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EthAdapter, GnosisSafeContract } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
declare class ModuleManager {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(ethAdapter: EthAdapter, safeContract: GnosisSafeContract);
|
|
5
|
+
private validateModuleAddress;
|
|
6
|
+
private validateModuleIsNotEnabled;
|
|
7
|
+
private validateModuleIsEnabled;
|
|
8
|
+
getModules(): Promise<string[]>;
|
|
9
|
+
isModuleEnabled(moduleAddress: string): Promise<boolean>;
|
|
10
|
+
encodeEnableModuleData(moduleAddress: string): Promise<string>;
|
|
11
|
+
encodeDisableModuleData(moduleAddress: string): Promise<string>;
|
|
12
|
+
}
|
|
13
|
+
export default ModuleManager;
|
|
@@ -0,0 +1,67 @@
|
|
|
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 _ModuleManager_ethAdapter, _ModuleManager_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 ModuleManager {
|
|
18
|
+
constructor(ethAdapter, safeContract) {
|
|
19
|
+
_ModuleManager_ethAdapter.set(this, void 0);
|
|
20
|
+
_ModuleManager_safeContract.set(this, void 0);
|
|
21
|
+
__classPrivateFieldSet(this, _ModuleManager_ethAdapter, ethAdapter, "f");
|
|
22
|
+
__classPrivateFieldSet(this, _ModuleManager_safeContract, safeContract, "f");
|
|
23
|
+
}
|
|
24
|
+
validateModuleAddress(moduleAddress) {
|
|
25
|
+
const isValidAddress = __classPrivateFieldGet(this, _ModuleManager_ethAdapter, "f").isAddress(moduleAddress);
|
|
26
|
+
if (!isValidAddress || (0, address_1.isRestrictedAddress)(moduleAddress)) {
|
|
27
|
+
throw new Error('Invalid module address provided');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
validateModuleIsNotEnabled(moduleAddress, modules) {
|
|
31
|
+
const moduleIndex = modules.findIndex((module) => (0, address_1.sameString)(module, moduleAddress));
|
|
32
|
+
const isEnabled = moduleIndex >= 0;
|
|
33
|
+
if (isEnabled) {
|
|
34
|
+
throw new Error('Module provided is already enabled');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
validateModuleIsEnabled(moduleAddress, modules) {
|
|
38
|
+
const moduleIndex = modules.findIndex((module) => (0, address_1.sameString)(module, moduleAddress));
|
|
39
|
+
const isEnabled = moduleIndex >= 0;
|
|
40
|
+
if (!isEnabled) {
|
|
41
|
+
throw new Error('Module provided is not enabled yet');
|
|
42
|
+
}
|
|
43
|
+
return moduleIndex;
|
|
44
|
+
}
|
|
45
|
+
async getModules() {
|
|
46
|
+
return __classPrivateFieldGet(this, _ModuleManager_safeContract, "f").getModules();
|
|
47
|
+
}
|
|
48
|
+
async isModuleEnabled(moduleAddress) {
|
|
49
|
+
return __classPrivateFieldGet(this, _ModuleManager_safeContract, "f").isModuleEnabled(moduleAddress);
|
|
50
|
+
}
|
|
51
|
+
async encodeEnableModuleData(moduleAddress) {
|
|
52
|
+
this.validateModuleAddress(moduleAddress);
|
|
53
|
+
const modules = await this.getModules();
|
|
54
|
+
this.validateModuleIsNotEnabled(moduleAddress, modules);
|
|
55
|
+
return __classPrivateFieldGet(this, _ModuleManager_safeContract, "f").encode('enableModule', [moduleAddress]);
|
|
56
|
+
}
|
|
57
|
+
async encodeDisableModuleData(moduleAddress) {
|
|
58
|
+
this.validateModuleAddress(moduleAddress);
|
|
59
|
+
const modules = await this.getModules();
|
|
60
|
+
const moduleIndex = this.validateModuleIsEnabled(moduleAddress, modules);
|
|
61
|
+
const prevModuleAddress = moduleIndex === 0 ? constants_1.SENTINEL_ADDRESS : modules[moduleIndex - 1];
|
|
62
|
+
return __classPrivateFieldGet(this, _ModuleManager_safeContract, "f").encode('disableModule', [prevModuleAddress, moduleAddress]);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
_ModuleManager_ethAdapter = new WeakMap(), _ModuleManager_safeContract = new WeakMap();
|
|
66
|
+
exports.default = ModuleManager;
|
|
67
|
+
//# sourceMappingURL=moduleManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleManager.js","sourceRoot":"","sources":["../../../src/managers/moduleManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,qEAAyF;AACzF,yEAA4E;AAE5E,MAAM,aAAa;IAIjB,YAAY,UAAsB,EAAE,YAAgC;QAHpE,4CAAuB;QACvB,8CAAiC;QAG/B,uBAAA,IAAI,6BAAe,UAAU,MAAA,CAAA;QAC7B,uBAAA,IAAI,+BAAiB,YAAY,MAAA,CAAA;IACnC,CAAC;IAEO,qBAAqB,CAAC,aAAqB;QACjD,MAAM,cAAc,GAAG,uBAAA,IAAI,iCAAY,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;QAChE,IAAI,CAAC,cAAc,IAAI,IAAA,6BAAmB,EAAC,aAAa,CAAC,EAAE;YACzD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;SACnD;IACH,CAAC;IAEO,0BAA0B,CAAC,aAAqB,EAAE,OAAiB;QACzE,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAA;QAC5F,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,CAAA;QAClC,IAAI,SAAS,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;SACtD;IACH,CAAC;IAEO,uBAAuB,CAAC,aAAqB,EAAE,OAAiB;QACtE,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,IAAA,oBAAU,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAA;QAC5F,MAAM,SAAS,GAAG,WAAW,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;SACtD;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,uBAAA,IAAI,mCAAc,CAAC,UAAU,EAAE,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,aAAqB;QACzC,OAAO,uBAAA,IAAI,mCAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,aAAqB;QAChD,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;QACvC,IAAI,CAAC,0BAA0B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACvD,OAAO,uBAAA,IAAI,mCAAc,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;IACnE,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,aAAqB;QACjD,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACxE,MAAM,iBAAiB,GAAG,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,4BAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;QACzF,OAAO,uBAAA,IAAI,mCAAc,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAA;IACvF,CAAC;CACF;;AAED,kBAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { EthAdapter, GnosisSafeContract } from '@safe-global/safe-core-sdk-types';
|
|
2
|
+
declare class OwnerManager {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(ethAdapter: EthAdapter, safeContract: GnosisSafeContract);
|
|
5
|
+
private validateOwnerAddress;
|
|
6
|
+
private validateThreshold;
|
|
7
|
+
private validateAddressIsNotOwner;
|
|
8
|
+
private validateAddressIsOwner;
|
|
9
|
+
getOwners(): Promise<string[]>;
|
|
10
|
+
getThreshold(): Promise<number>;
|
|
11
|
+
isOwner(ownerAddress: string): Promise<boolean>;
|
|
12
|
+
encodeAddOwnerWithThresholdData(ownerAddress: string, threshold?: number): Promise<string>;
|
|
13
|
+
encodeRemoveOwnerData(ownerAddress: string, threshold?: number): Promise<string>;
|
|
14
|
+
encodeSwapOwnerData(oldOwnerAddress: string, newOwnerAddress: string): Promise<string>;
|
|
15
|
+
encodeChangeThresholdData(threshold: number): Promise<string>;
|
|
16
|
+
}
|
|
17
|
+
export default OwnerManager;
|