cleanup script
diff --git a/.env.example b/.env.example
index a537275..5b8feaf 100644
--- a/.env.example
+++ b/.env.example
@@ -1 +1 @@
-STACKUP_KEY=
\ No newline at end of file
+THIRDWEB_API_KEY=
\ No newline at end of file
diff --git a/README.md b/README.md
index 1883d21..a28eb8b 100644
--- a/README.md
+++ b/README.md
@@ -16,20 +16,22 @@ yarn dev # yarn
## Configuration
-The things to change to switch the type of smart wallets deployed are in `index.ts`:
+The script runs on goerli by default, but requires a thirdweb API key.
-```ts
-const chain = Goerli; // your chain
-const factoryAddress = "0x..."; // your own factory address
-const accountId = "..."; // a username, email, etc
+paste your api key in your .env file:
+
+```.env
+THIRDWEB_API_KEY={{your_api_key}}
```
-## Contract Requirements:
+## Chains
-For the current scripts:
+The script runs on goerli by default, you can change it in `index.ts`
-- `AccountFactory` should have a `function createAccount(address owner,uint256 salt)` that deploys a new `Account` contract. [See sample implementation](https://github.com/eth-infinitism/account-abstraction/blob/develop/contracts/samples/SimpleAccountFactory.sol#L28)
+```ts
+const chain = Goerli; // your chain: Mumbai, BaseGoerli, OptimismGoerli, etc
+```
-- `Account` should extend [BaseAccount](https://github.com/eth-infinitism/account-abstraction/blob/develop/contracts/core/BaseAccount.sol) and have a simple `function execute(address dest, uint256 value, bytes calldata func)` to execute transactions.
+## Contract Requirements:
-This is all changeable, and can easily changed in the script if needed in `lib/account.ts`
+The script has default factories out of the box for testnets, but you can deploy your own on the [thirdweb dashboard](https://thirdweb.com/explore).
diff --git a/artifacts/TWAccount.json b/artifacts/TWAccount.json
deleted file mode 100644
index 6f6477e..0000000
--- a/artifacts/TWAccount.json
+++ /dev/null
@@ -1,7108 +0,0 @@
-{
- "abi": [
- {
- "inputs": [
- {
- "internalType": "contract IEntryPoint",
- "name": "_entrypoint",
- "type": "address"
- }
- ],
- "stateMutability": "nonpayable",
- "type": "constructor"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "string",
- "name": "prevURI",
- "type": "string"
- },
- {
- "indexed": false,
- "internalType": "string",
- "name": "newURI",
- "type": "string"
- }
- ],
- "name": "ContractURIUpdated",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
- }
- ],
- "name": "Initialized",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "previousAdminRole",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "newAdminRole",
- "type": "bytes32"
- }
- ],
- "name": "RoleAdminChanged",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "account",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "sender",
- "type": "address"
- }
- ],
- "name": "RoleGranted",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "account",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "sender",
- "type": "address"
- }
- ],
- "name": "RoleRevoked",
- "type": "event"
- },
- {
- "inputs": [],
- "name": "DEFAULT_ADMIN_ROLE",
- "outputs": [
- {
- "internalType": "bytes32",
- "name": "",
- "type": "bytes32"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "SIGNER_ROLE",
- "outputs": [
- {
- "internalType": "bytes32",
- "name": "",
- "type": "bytes32"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "addDeposit",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "contractURI",
- "outputs": [
- {
- "internalType": "string",
- "name": "",
- "type": "string"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "entryPoint",
- "outputs": [
- {
- "internalType": "contract IEntryPoint",
- "name": "",
- "type": "address"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "address",
- "name": "_target",
- "type": "address"
- },
- {
- "internalType": "uint256",
- "name": "_value",
- "type": "uint256"
- },
- {
- "internalType": "bytes",
- "name": "_calldata",
- "type": "bytes"
- }
- ],
- "name": "execute",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "address[]",
- "name": "_target",
- "type": "address[]"
- },
- {
- "internalType": "uint256[]",
- "name": "_value",
- "type": "uint256[]"
- },
- {
- "internalType": "bytes[]",
- "name": "_calldata",
- "type": "bytes[]"
- }
- ],
- "name": "executeBatch",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getDeposit",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "",
- "type": "uint256"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- }
- ],
- "name": "getRoleAdmin",
- "outputs": [
- {
- "internalType": "bytes32",
- "name": "",
- "type": "bytes32"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "internalType": "uint256",
- "name": "index",
- "type": "uint256"
- }
- ],
- "name": "getRoleMember",
- "outputs": [
- {
- "internalType": "address",
- "name": "member",
[... diff too long, it was truncated ...]
GitHub
sha: 64a017eca00e518e21e087de09813496d0fbf9ef