clanker-sdk 4.2.16 → 4.2.17
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/dist/{clankerTokenV3-BqHTF9QY.d.ts → clankerTokenV3-D-7Wi27l.d.ts} +0 -10
- package/dist/{clankerTokenV4-NqiH_j7p.d.ts → clankerTokenV4-DCMDdonP.d.ts} +1824 -23
- package/dist/cli/cli.js +73 -23
- package/dist/cli/commands/airdrop.js +61 -7
- package/dist/cli/commands/deploy.d.ts +1 -1
- package/dist/cli/commands/deploy.js +68 -19
- package/dist/cli/commands/presale.js +60 -6
- package/dist/cli/commands/rewards.js +60 -6
- package/dist/cli/commands/setup.js +33 -5
- package/dist/cli/commands/token.js +60 -6
- package/dist/cli/commands/vault.js +60 -6
- package/dist/cli/create-clanker.js +58 -5
- package/dist/cli/utils/chains.js +28 -1
- package/dist/cli/utils/config.js +3 -3
- package/dist/cli/utils/wallet.js +31 -4
- package/dist/index.d.ts +51 -4
- package/dist/index.js +56 -1
- package/dist/legacyFeeClaims/index.js +51 -0
- package/dist/v3/index.d.ts +2 -2
- package/dist/v3/index.js +54 -1
- package/dist/v4/extensions/index.d.ts +4 -4
- package/dist/v4/extensions/index.js +55 -2
- package/dist/v4/index.d.ts +3 -3
- package/dist/v4/index.js +55 -2
- package/package.json +4 -1
- package/dist/{write-clanker-contracts-wZSL1UyM.d.ts → write-clanker-contracts-DMbbbYUa.d.ts} +1248 -1248
package/dist/cli/cli.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
// src/cli/cli.ts
|
|
4
|
-
import { readFileSync as readFileSync3 } from "
|
|
5
|
-
import { dirname, join as join2 } from "
|
|
6
|
-
import { fileURLToPath } from "
|
|
4
|
+
import { readFileSync as readFileSync3 } from "fs";
|
|
5
|
+
import { dirname, join as join2 } from "path";
|
|
6
|
+
import { fileURLToPath } from "url";
|
|
7
7
|
import { Command } from "commander";
|
|
8
8
|
|
|
9
9
|
// src/cli/commands/airdrop.ts
|
|
10
|
-
import * as fs from "
|
|
10
|
+
import * as fs from "fs";
|
|
11
11
|
|
|
12
12
|
// src/utils/merkleTree.ts
|
|
13
13
|
import { StandardMerkleTree } from "@openzeppelin/merkle-tree";
|
|
@@ -5548,6 +5548,33 @@ var monad = /* @__PURE__ */ defineChain({
|
|
|
5548
5548
|
testnet: false
|
|
5549
5549
|
});
|
|
5550
5550
|
|
|
5551
|
+
// src/utils/chains/robinhood.ts
|
|
5552
|
+
import { defineChain as defineChain2 } from "viem";
|
|
5553
|
+
var robinhood = /* @__PURE__ */ defineChain2({
|
|
5554
|
+
id: 4663,
|
|
5555
|
+
name: "Robinhood Chain",
|
|
5556
|
+
blockTime: 100,
|
|
5557
|
+
nativeCurrency: {
|
|
5558
|
+
name: "Ether",
|
|
5559
|
+
symbol: "ETH",
|
|
5560
|
+
decimals: 18
|
|
5561
|
+
},
|
|
5562
|
+
rpcUrls: {
|
|
5563
|
+
default: {
|
|
5564
|
+
http: ["https://rpc.mainnet.chain.robinhood.com"]
|
|
5565
|
+
}
|
|
5566
|
+
},
|
|
5567
|
+
blockExplorers: {
|
|
5568
|
+
default: {
|
|
5569
|
+
name: "Robinhood Chain Blockscout Explorer",
|
|
5570
|
+
url: "https://robinhoodchain.blockscout.com"
|
|
5571
|
+
}
|
|
5572
|
+
},
|
|
5573
|
+
contracts: {},
|
|
5574
|
+
testnet: false
|
|
5575
|
+
});
|
|
5576
|
+
var ROBINHOOD_WETH_ADDRESS = "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73";
|
|
5577
|
+
|
|
5551
5578
|
// src/utils/clankers.ts
|
|
5552
5579
|
var CLANKERS = {
|
|
5553
5580
|
clanker_v0: {
|
|
@@ -5796,6 +5823,29 @@ var CLANKERS = {
|
|
|
5796
5823
|
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
5797
5824
|
feeDynamicHookV2: "0x011a8ed40095F2D7E9c19125B8254b19678D68Cc"
|
|
5798
5825
|
}
|
|
5826
|
+
},
|
|
5827
|
+
clanker_v4_robinhood: {
|
|
5828
|
+
abi: Clanker_v4_abi,
|
|
5829
|
+
token: {
|
|
5830
|
+
abi: ClankerToken_v4_abi,
|
|
5831
|
+
bytecode: ClankerToken_v4_bytecode
|
|
5832
|
+
},
|
|
5833
|
+
chainId: robinhood.id,
|
|
5834
|
+
type: "clanker_v4",
|
|
5835
|
+
address: "0xD3f2cC1731b7Fd17f28798835C2E02f0a1839A94",
|
|
5836
|
+
related: {
|
|
5837
|
+
locker: "0x290F735F63824BB5836cDe24a35F5103A5B5Bc99",
|
|
5838
|
+
vault: "0x99B2a80ed21c7af1F5cc1A97383DADeEC7DD1427",
|
|
5839
|
+
airdrop: "0x6f27372FF493A3855E6746b9a4fe6Ed2Cc3034B5",
|
|
5840
|
+
devbuy: "0xa27b1986e5c7e5371Cb6507f87918fBD0302fF5a",
|
|
5841
|
+
mevModule: "0xEA1Fe197dF140e5d88fC6B49f2d21Ea05092299e",
|
|
5842
|
+
mevDescendingFees: true,
|
|
5843
|
+
feeLocker: "0x88db2340bE5991B2b5Fca2Baee39B5CE048Cd70c",
|
|
5844
|
+
feeStaticHook: "0x0000000000000000000000000000000000000000",
|
|
5845
|
+
feeStaticHookV2: "0x48B8F6AD3A1b4aA477314c9a23035b8F84dDe8cc",
|
|
5846
|
+
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
5847
|
+
feeDynamicHookV2: "0x65efDF8Cce99b53C925DF878Df275Df21cB6E8Cc"
|
|
5848
|
+
}
|
|
5799
5849
|
}
|
|
5800
5850
|
};
|
|
5801
5851
|
var Chains = [...new Set(Object.values(CLANKERS).map(({ chainId }) => chainId))];
|
|
@@ -5822,6 +5872,8 @@ var ClankerError = class _ClankerError extends Error {
|
|
|
5822
5872
|
this.error = error;
|
|
5823
5873
|
this.data = data;
|
|
5824
5874
|
}
|
|
5875
|
+
error;
|
|
5876
|
+
data;
|
|
5825
5877
|
static unknown(e, name) {
|
|
5826
5878
|
return new _ClankerError(e, {
|
|
5827
5879
|
type: "unknown",
|
|
@@ -6987,7 +7039,8 @@ var WETH_ADDRESSES = {
|
|
|
6987
7039
|
[abstract2.id]: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
6988
7040
|
[monadTestnet2.id]: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
|
|
6989
7041
|
// WMON
|
|
6990
|
-
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
|
|
7042
|
+
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a",
|
|
7043
|
+
[robinhood.id]: ROBINHOOD_WETH_ADDRESS
|
|
6991
7044
|
};
|
|
6992
7045
|
var DEFAULT_SUPPLY = 100000000000000000000000000000n;
|
|
6993
7046
|
var POOL_POSITIONS = {
|
|
@@ -7491,7 +7544,7 @@ var clankerTokenV4Converter = async (config) => {
|
|
|
7491
7544
|
},
|
|
7492
7545
|
mevModuleConfig: {
|
|
7493
7546
|
mevModule: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevModule,
|
|
7494
|
-
mevModuleData: clankerConfig.related?.mevModuleV2 ? encodeAbiParameters3(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7547
|
+
mevModuleData: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevDescendingFees ? encodeAbiParameters3(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7495
7548
|
{
|
|
7496
7549
|
startingFee: cfg.sniperFees.startingFee,
|
|
7497
7550
|
endingFee: cfg.sniperFees.endingFee,
|
|
@@ -8439,7 +8492,8 @@ var CHAIN_MAP = {
|
|
|
8439
8492
|
ethereum: mainnet3,
|
|
8440
8493
|
bsc: bsc3,
|
|
8441
8494
|
unichain: unichain3,
|
|
8442
|
-
monad
|
|
8495
|
+
monad,
|
|
8496
|
+
robinhood
|
|
8443
8497
|
};
|
|
8444
8498
|
var CHAIN_NAMES = Object.keys(CHAIN_MAP);
|
|
8445
8499
|
function resolveChain(name) {
|
|
@@ -8451,9 +8505,9 @@ function resolveChain(name) {
|
|
|
8451
8505
|
}
|
|
8452
8506
|
|
|
8453
8507
|
// src/cli/utils/config.ts
|
|
8454
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "
|
|
8455
|
-
import { homedir } from "
|
|
8456
|
-
import { join } from "
|
|
8508
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
8509
|
+
import { homedir } from "os";
|
|
8510
|
+
import { join } from "path";
|
|
8457
8511
|
var CONFIG_DIR = join(homedir(), ".clanker");
|
|
8458
8512
|
var CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
8459
8513
|
function ensureDir() {
|
|
@@ -10191,21 +10245,16 @@ function buildV4Config(f) {
|
|
|
10191
10245
|
};
|
|
10192
10246
|
return token;
|
|
10193
10247
|
}
|
|
10194
|
-
var CHAIN_ID_MAP = {
|
|
10195
|
-
base: 8453,
|
|
10196
|
-
"base-sepolia": 84532,
|
|
10197
|
-
arbitrum: 42161,
|
|
10198
|
-
ethereum: 1,
|
|
10199
|
-
bsc: 56,
|
|
10200
|
-
unichain: 130,
|
|
10201
|
-
monad: 143
|
|
10202
|
-
};
|
|
10203
10248
|
function resolveChainId(name) {
|
|
10204
|
-
|
|
10249
|
+
try {
|
|
10250
|
+
return resolveChain(name).id;
|
|
10251
|
+
} catch {
|
|
10252
|
+
return 8453;
|
|
10253
|
+
}
|
|
10205
10254
|
}
|
|
10206
10255
|
function resolveChainName(chainId) {
|
|
10207
|
-
for (const
|
|
10208
|
-
if (id === chainId) return name;
|
|
10256
|
+
for (const name of CHAIN_NAMES) {
|
|
10257
|
+
if (resolveChain(name).id === chainId) return name;
|
|
10209
10258
|
}
|
|
10210
10259
|
return "base";
|
|
10211
10260
|
}
|
|
@@ -10596,7 +10645,8 @@ var PUBLIC_RPCS = {
|
|
|
10596
10645
|
arbitrum: "https://arb1.arbitrum.io/rpc",
|
|
10597
10646
|
ethereum: "https://eth.llamarpc.com",
|
|
10598
10647
|
bsc: "https://bsc-dataseed.binance.org",
|
|
10599
|
-
unichain: "https://mainnet.unichain.org"
|
|
10648
|
+
unichain: "https://mainnet.unichain.org",
|
|
10649
|
+
robinhood: "https://rpc.mainnet.chain.robinhood.com"
|
|
10600
10650
|
};
|
|
10601
10651
|
function registerSetupCommand(program2) {
|
|
10602
10652
|
program2.command("setup").description("Configure wallet and RPC settings").action(async (_opts, command) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/cli/commands/airdrop.ts
|
|
2
|
-
import * as fs from "
|
|
2
|
+
import * as fs from "fs";
|
|
3
3
|
|
|
4
4
|
// src/utils/merkleTree.ts
|
|
5
5
|
import { StandardMerkleTree } from "@openzeppelin/merkle-tree";
|
|
@@ -5540,6 +5540,33 @@ var monad = /* @__PURE__ */ defineChain({
|
|
|
5540
5540
|
testnet: false
|
|
5541
5541
|
});
|
|
5542
5542
|
|
|
5543
|
+
// src/utils/chains/robinhood.ts
|
|
5544
|
+
import { defineChain as defineChain2 } from "viem";
|
|
5545
|
+
var robinhood = /* @__PURE__ */ defineChain2({
|
|
5546
|
+
id: 4663,
|
|
5547
|
+
name: "Robinhood Chain",
|
|
5548
|
+
blockTime: 100,
|
|
5549
|
+
nativeCurrency: {
|
|
5550
|
+
name: "Ether",
|
|
5551
|
+
symbol: "ETH",
|
|
5552
|
+
decimals: 18
|
|
5553
|
+
},
|
|
5554
|
+
rpcUrls: {
|
|
5555
|
+
default: {
|
|
5556
|
+
http: ["https://rpc.mainnet.chain.robinhood.com"]
|
|
5557
|
+
}
|
|
5558
|
+
},
|
|
5559
|
+
blockExplorers: {
|
|
5560
|
+
default: {
|
|
5561
|
+
name: "Robinhood Chain Blockscout Explorer",
|
|
5562
|
+
url: "https://robinhoodchain.blockscout.com"
|
|
5563
|
+
}
|
|
5564
|
+
},
|
|
5565
|
+
contracts: {},
|
|
5566
|
+
testnet: false
|
|
5567
|
+
});
|
|
5568
|
+
var ROBINHOOD_WETH_ADDRESS = "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73";
|
|
5569
|
+
|
|
5543
5570
|
// src/utils/clankers.ts
|
|
5544
5571
|
var CLANKERS = {
|
|
5545
5572
|
clanker_v0: {
|
|
@@ -5788,6 +5815,29 @@ var CLANKERS = {
|
|
|
5788
5815
|
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
5789
5816
|
feeDynamicHookV2: "0x011a8ed40095F2D7E9c19125B8254b19678D68Cc"
|
|
5790
5817
|
}
|
|
5818
|
+
},
|
|
5819
|
+
clanker_v4_robinhood: {
|
|
5820
|
+
abi: Clanker_v4_abi,
|
|
5821
|
+
token: {
|
|
5822
|
+
abi: ClankerToken_v4_abi,
|
|
5823
|
+
bytecode: ClankerToken_v4_bytecode
|
|
5824
|
+
},
|
|
5825
|
+
chainId: robinhood.id,
|
|
5826
|
+
type: "clanker_v4",
|
|
5827
|
+
address: "0xD3f2cC1731b7Fd17f28798835C2E02f0a1839A94",
|
|
5828
|
+
related: {
|
|
5829
|
+
locker: "0x290F735F63824BB5836cDe24a35F5103A5B5Bc99",
|
|
5830
|
+
vault: "0x99B2a80ed21c7af1F5cc1A97383DADeEC7DD1427",
|
|
5831
|
+
airdrop: "0x6f27372FF493A3855E6746b9a4fe6Ed2Cc3034B5",
|
|
5832
|
+
devbuy: "0xa27b1986e5c7e5371Cb6507f87918fBD0302fF5a",
|
|
5833
|
+
mevModule: "0xEA1Fe197dF140e5d88fC6B49f2d21Ea05092299e",
|
|
5834
|
+
mevDescendingFees: true,
|
|
5835
|
+
feeLocker: "0x88db2340bE5991B2b5Fca2Baee39B5CE048Cd70c",
|
|
5836
|
+
feeStaticHook: "0x0000000000000000000000000000000000000000",
|
|
5837
|
+
feeStaticHookV2: "0x48B8F6AD3A1b4aA477314c9a23035b8F84dDe8cc",
|
|
5838
|
+
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
5839
|
+
feeDynamicHookV2: "0x65efDF8Cce99b53C925DF878Df275Df21cB6E8Cc"
|
|
5840
|
+
}
|
|
5791
5841
|
}
|
|
5792
5842
|
};
|
|
5793
5843
|
var Chains = [...new Set(Object.values(CLANKERS).map(({ chainId }) => chainId))];
|
|
@@ -5814,6 +5864,8 @@ var ClankerError = class _ClankerError extends Error {
|
|
|
5814
5864
|
this.error = error;
|
|
5815
5865
|
this.data = data;
|
|
5816
5866
|
}
|
|
5867
|
+
error;
|
|
5868
|
+
data;
|
|
5817
5869
|
static unknown(e, name) {
|
|
5818
5870
|
return new _ClankerError(e, {
|
|
5819
5871
|
type: "unknown",
|
|
@@ -6971,7 +7023,8 @@ var WETH_ADDRESSES = {
|
|
|
6971
7023
|
[abstract2.id]: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
6972
7024
|
[monadTestnet2.id]: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
|
|
6973
7025
|
// WMON
|
|
6974
|
-
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
|
|
7026
|
+
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a",
|
|
7027
|
+
[robinhood.id]: ROBINHOOD_WETH_ADDRESS
|
|
6975
7028
|
};
|
|
6976
7029
|
var DEFAULT_SUPPLY = 100000000000000000000000000000n;
|
|
6977
7030
|
var POOL_POSITIONS = {
|
|
@@ -7421,7 +7474,7 @@ var clankerTokenV4Converter = async (config) => {
|
|
|
7421
7474
|
},
|
|
7422
7475
|
mevModuleConfig: {
|
|
7423
7476
|
mevModule: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevModule,
|
|
7424
|
-
mevModuleData: clankerConfig.related?.mevModuleV2 ? encodeAbiParameters3(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7477
|
+
mevModuleData: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevDescendingFees ? encodeAbiParameters3(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7425
7478
|
{
|
|
7426
7479
|
startingFee: cfg.sniperFees.startingFee,
|
|
7427
7480
|
endingFee: cfg.sniperFees.endingFee,
|
|
@@ -8306,7 +8359,8 @@ var CHAIN_MAP = {
|
|
|
8306
8359
|
ethereum: mainnet3,
|
|
8307
8360
|
bsc: bsc3,
|
|
8308
8361
|
unichain: unichain3,
|
|
8309
|
-
monad
|
|
8362
|
+
monad,
|
|
8363
|
+
robinhood
|
|
8310
8364
|
};
|
|
8311
8365
|
var CHAIN_NAMES = Object.keys(CHAIN_MAP);
|
|
8312
8366
|
function resolveChain(name) {
|
|
@@ -8318,9 +8372,9 @@ function resolveChain(name) {
|
|
|
8318
8372
|
}
|
|
8319
8373
|
|
|
8320
8374
|
// src/cli/utils/config.ts
|
|
8321
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "
|
|
8322
|
-
import { homedir } from "
|
|
8323
|
-
import { join } from "
|
|
8375
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
8376
|
+
import { homedir } from "os";
|
|
8377
|
+
import { join } from "path";
|
|
8324
8378
|
var CONFIG_DIR = join(homedir(), ".clanker");
|
|
8325
8379
|
var CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
8326
8380
|
function loadConfig() {
|
|
@@ -39,6 +39,33 @@ var monad = /* @__PURE__ */ defineChain({
|
|
|
39
39
|
testnet: false
|
|
40
40
|
});
|
|
41
41
|
|
|
42
|
+
// src/utils/chains/robinhood.ts
|
|
43
|
+
import { defineChain as defineChain2 } from "viem";
|
|
44
|
+
var robinhood = /* @__PURE__ */ defineChain2({
|
|
45
|
+
id: 4663,
|
|
46
|
+
name: "Robinhood Chain",
|
|
47
|
+
blockTime: 100,
|
|
48
|
+
nativeCurrency: {
|
|
49
|
+
name: "Ether",
|
|
50
|
+
symbol: "ETH",
|
|
51
|
+
decimals: 18
|
|
52
|
+
},
|
|
53
|
+
rpcUrls: {
|
|
54
|
+
default: {
|
|
55
|
+
http: ["https://rpc.mainnet.chain.robinhood.com"]
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
blockExplorers: {
|
|
59
|
+
default: {
|
|
60
|
+
name: "Robinhood Chain Blockscout Explorer",
|
|
61
|
+
url: "https://robinhoodchain.blockscout.com"
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
contracts: {},
|
|
65
|
+
testnet: false
|
|
66
|
+
});
|
|
67
|
+
var ROBINHOOD_WETH_ADDRESS = "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73";
|
|
68
|
+
|
|
42
69
|
// src/constants.ts
|
|
43
70
|
var DEGEN_ADDRESS = "0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed";
|
|
44
71
|
var NATIVE_ADDRESS = "0x20DD04c17AFD5c9a8b3f2cdacaa8Ee7907385BEF";
|
|
@@ -59,7 +86,8 @@ var WETH_ADDRESSES = {
|
|
|
59
86
|
[abstract.id]: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
60
87
|
[monadTestnet.id]: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
|
|
61
88
|
// WMON
|
|
62
|
-
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
|
|
89
|
+
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a",
|
|
90
|
+
[robinhood.id]: ROBINHOOD_WETH_ADDRESS
|
|
63
91
|
};
|
|
64
92
|
var DEFAULT_SUPPLY = 100000000000000000000000000000n;
|
|
65
93
|
var POOL_POSITIONS = {
|
|
@@ -208,6 +236,8 @@ var ClankerError = class _ClankerError extends Error {
|
|
|
208
236
|
this.error = error;
|
|
209
237
|
this.data = data;
|
|
210
238
|
}
|
|
239
|
+
error;
|
|
240
|
+
data;
|
|
211
241
|
static unknown(e, name) {
|
|
212
242
|
return new _ClankerError(e, {
|
|
213
243
|
type: "unknown",
|
|
@@ -6411,6 +6441,29 @@ var CLANKERS = {
|
|
|
6411
6441
|
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
6412
6442
|
feeDynamicHookV2: "0x011a8ed40095F2D7E9c19125B8254b19678D68Cc"
|
|
6413
6443
|
}
|
|
6444
|
+
},
|
|
6445
|
+
clanker_v4_robinhood: {
|
|
6446
|
+
abi: Clanker_v4_abi,
|
|
6447
|
+
token: {
|
|
6448
|
+
abi: ClankerToken_v4_abi,
|
|
6449
|
+
bytecode: ClankerToken_v4_bytecode
|
|
6450
|
+
},
|
|
6451
|
+
chainId: robinhood.id,
|
|
6452
|
+
type: "clanker_v4",
|
|
6453
|
+
address: "0xD3f2cC1731b7Fd17f28798835C2E02f0a1839A94",
|
|
6454
|
+
related: {
|
|
6455
|
+
locker: "0x290F735F63824BB5836cDe24a35F5103A5B5Bc99",
|
|
6456
|
+
vault: "0x99B2a80ed21c7af1F5cc1A97383DADeEC7DD1427",
|
|
6457
|
+
airdrop: "0x6f27372FF493A3855E6746b9a4fe6Ed2Cc3034B5",
|
|
6458
|
+
devbuy: "0xa27b1986e5c7e5371Cb6507f87918fBD0302fF5a",
|
|
6459
|
+
mevModule: "0xEA1Fe197dF140e5d88fC6B49f2d21Ea05092299e",
|
|
6460
|
+
mevDescendingFees: true,
|
|
6461
|
+
feeLocker: "0x88db2340bE5991B2b5Fca2Baee39B5CE048Cd70c",
|
|
6462
|
+
feeStaticHook: "0x0000000000000000000000000000000000000000",
|
|
6463
|
+
feeStaticHookV2: "0x48B8F6AD3A1b4aA477314c9a23035b8F84dDe8cc",
|
|
6464
|
+
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
6465
|
+
feeDynamicHookV2: "0x65efDF8Cce99b53C925DF878Df275Df21cB6E8Cc"
|
|
6466
|
+
}
|
|
6414
6467
|
}
|
|
6415
6468
|
};
|
|
6416
6469
|
var Chains = [...new Set(Object.values(CLANKERS).map(({ chainId }) => chainId))];
|
|
@@ -8423,7 +8476,7 @@ var clankerTokenV4Converter = async (config) => {
|
|
|
8423
8476
|
},
|
|
8424
8477
|
mevModuleConfig: {
|
|
8425
8478
|
mevModule: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevModule,
|
|
8426
|
-
mevModuleData: clankerConfig.related?.mevModuleV2 ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
8479
|
+
mevModuleData: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevDescendingFees ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
8427
8480
|
{
|
|
8428
8481
|
startingFee: cfg.sniperFees.startingFee,
|
|
8429
8482
|
endingFee: cfg.sniperFees.endingFee,
|
|
@@ -9112,7 +9165,8 @@ var CHAIN_MAP = {
|
|
|
9112
9165
|
ethereum: mainnet3,
|
|
9113
9166
|
bsc: bsc3,
|
|
9114
9167
|
unichain: unichain3,
|
|
9115
|
-
monad
|
|
9168
|
+
monad,
|
|
9169
|
+
robinhood
|
|
9116
9170
|
};
|
|
9117
9171
|
var CHAIN_NAMES = Object.keys(CHAIN_MAP);
|
|
9118
9172
|
function resolveChain(name) {
|
|
@@ -9268,9 +9322,9 @@ import {
|
|
|
9268
9322
|
import { privateKeyToAccount } from "viem/accounts";
|
|
9269
9323
|
|
|
9270
9324
|
// src/cli/utils/config.ts
|
|
9271
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "
|
|
9272
|
-
import { homedir } from "
|
|
9273
|
-
import { join } from "
|
|
9325
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
9326
|
+
import { homedir } from "os";
|
|
9327
|
+
import { join } from "path";
|
|
9274
9328
|
var CONFIG_DIR = join(homedir(), ".clanker");
|
|
9275
9329
|
var CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
9276
9330
|
function loadConfig() {
|
|
@@ -9309,7 +9363,7 @@ function resolveClients(opts) {
|
|
|
9309
9363
|
}
|
|
9310
9364
|
|
|
9311
9365
|
// src/cli/commands/airdrop.ts
|
|
9312
|
-
import * as fs from "
|
|
9366
|
+
import * as fs from "fs";
|
|
9313
9367
|
|
|
9314
9368
|
// src/utils/merkleTree.ts
|
|
9315
9369
|
import { StandardMerkleTree as StandardMerkleTree2 } from "@openzeppelin/merkle-tree";
|
|
@@ -9709,21 +9763,16 @@ function buildV4Config(f) {
|
|
|
9709
9763
|
};
|
|
9710
9764
|
return token;
|
|
9711
9765
|
}
|
|
9712
|
-
var CHAIN_ID_MAP = {
|
|
9713
|
-
base: 8453,
|
|
9714
|
-
"base-sepolia": 84532,
|
|
9715
|
-
arbitrum: 42161,
|
|
9716
|
-
ethereum: 1,
|
|
9717
|
-
bsc: 56,
|
|
9718
|
-
unichain: 130,
|
|
9719
|
-
monad: 143
|
|
9720
|
-
};
|
|
9721
9766
|
function resolveChainId(name) {
|
|
9722
|
-
|
|
9767
|
+
try {
|
|
9768
|
+
return resolveChain(name).id;
|
|
9769
|
+
} catch {
|
|
9770
|
+
return 8453;
|
|
9771
|
+
}
|
|
9723
9772
|
}
|
|
9724
9773
|
function resolveChainName(chainId) {
|
|
9725
|
-
for (const
|
|
9726
|
-
if (id === chainId) return name;
|
|
9774
|
+
for (const name of CHAIN_NAMES) {
|
|
9775
|
+
if (resolveChain(name).id === chainId) return name;
|
|
9727
9776
|
}
|
|
9728
9777
|
return "base";
|
|
9729
9778
|
}
|
|
@@ -9,6 +9,8 @@ var ClankerError = class _ClankerError extends Error {
|
|
|
9
9
|
this.error = error;
|
|
10
10
|
this.data = data;
|
|
11
11
|
}
|
|
12
|
+
error;
|
|
13
|
+
data;
|
|
12
14
|
static unknown(e, name) {
|
|
13
15
|
return new _ClankerError(e, {
|
|
14
16
|
type: "unknown",
|
|
@@ -2233,6 +2235,33 @@ var monad = /* @__PURE__ */ defineChain({
|
|
|
2233
2235
|
testnet: false
|
|
2234
2236
|
});
|
|
2235
2237
|
|
|
2238
|
+
// src/utils/chains/robinhood.ts
|
|
2239
|
+
import { defineChain as defineChain2 } from "viem";
|
|
2240
|
+
var robinhood = /* @__PURE__ */ defineChain2({
|
|
2241
|
+
id: 4663,
|
|
2242
|
+
name: "Robinhood Chain",
|
|
2243
|
+
blockTime: 100,
|
|
2244
|
+
nativeCurrency: {
|
|
2245
|
+
name: "Ether",
|
|
2246
|
+
symbol: "ETH",
|
|
2247
|
+
decimals: 18
|
|
2248
|
+
},
|
|
2249
|
+
rpcUrls: {
|
|
2250
|
+
default: {
|
|
2251
|
+
http: ["https://rpc.mainnet.chain.robinhood.com"]
|
|
2252
|
+
}
|
|
2253
|
+
},
|
|
2254
|
+
blockExplorers: {
|
|
2255
|
+
default: {
|
|
2256
|
+
name: "Robinhood Chain Blockscout Explorer",
|
|
2257
|
+
url: "https://robinhoodchain.blockscout.com"
|
|
2258
|
+
}
|
|
2259
|
+
},
|
|
2260
|
+
contracts: {},
|
|
2261
|
+
testnet: false
|
|
2262
|
+
});
|
|
2263
|
+
var ROBINHOOD_WETH_ADDRESS = "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73";
|
|
2264
|
+
|
|
2236
2265
|
// src/constants.ts
|
|
2237
2266
|
var WBNB_ADDRESS = "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c";
|
|
2238
2267
|
var WETH_ADDRESSES = {
|
|
@@ -2245,7 +2274,8 @@ var WETH_ADDRESSES = {
|
|
|
2245
2274
|
[abstract.id]: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
2246
2275
|
[monadTestnet.id]: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
|
|
2247
2276
|
// WMON
|
|
2248
|
-
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
|
|
2277
|
+
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a",
|
|
2278
|
+
[robinhood.id]: ROBINHOOD_WETH_ADDRESS
|
|
2249
2279
|
};
|
|
2250
2280
|
var DEFAULT_SUPPLY = 100000000000000000000000000000n;
|
|
2251
2281
|
var POOL_POSITIONS = {
|
|
@@ -7451,6 +7481,29 @@ var CLANKERS = {
|
|
|
7451
7481
|
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
7452
7482
|
feeDynamicHookV2: "0x011a8ed40095F2D7E9c19125B8254b19678D68Cc"
|
|
7453
7483
|
}
|
|
7484
|
+
},
|
|
7485
|
+
clanker_v4_robinhood: {
|
|
7486
|
+
abi: Clanker_v4_abi,
|
|
7487
|
+
token: {
|
|
7488
|
+
abi: ClankerToken_v4_abi,
|
|
7489
|
+
bytecode: ClankerToken_v4_bytecode
|
|
7490
|
+
},
|
|
7491
|
+
chainId: robinhood.id,
|
|
7492
|
+
type: "clanker_v4",
|
|
7493
|
+
address: "0xD3f2cC1731b7Fd17f28798835C2E02f0a1839A94",
|
|
7494
|
+
related: {
|
|
7495
|
+
locker: "0x290F735F63824BB5836cDe24a35F5103A5B5Bc99",
|
|
7496
|
+
vault: "0x99B2a80ed21c7af1F5cc1A97383DADeEC7DD1427",
|
|
7497
|
+
airdrop: "0x6f27372FF493A3855E6746b9a4fe6Ed2Cc3034B5",
|
|
7498
|
+
devbuy: "0xa27b1986e5c7e5371Cb6507f87918fBD0302fF5a",
|
|
7499
|
+
mevModule: "0xEA1Fe197dF140e5d88fC6B49f2d21Ea05092299e",
|
|
7500
|
+
mevDescendingFees: true,
|
|
7501
|
+
feeLocker: "0x88db2340bE5991B2b5Fca2Baee39B5CE048Cd70c",
|
|
7502
|
+
feeStaticHook: "0x0000000000000000000000000000000000000000",
|
|
7503
|
+
feeStaticHookV2: "0x48B8F6AD3A1b4aA477314c9a23035b8F84dDe8cc",
|
|
7504
|
+
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
7505
|
+
feeDynamicHookV2: "0x65efDF8Cce99b53C925DF878Df275Df21cB6E8Cc"
|
|
7506
|
+
}
|
|
7454
7507
|
}
|
|
7455
7508
|
};
|
|
7456
7509
|
var Chains = [...new Set(Object.values(CLANKERS).map(({ chainId }) => chainId))];
|
|
@@ -7841,7 +7894,7 @@ var clankerTokenV4Converter = async (config) => {
|
|
|
7841
7894
|
},
|
|
7842
7895
|
mevModuleConfig: {
|
|
7843
7896
|
mevModule: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevModule,
|
|
7844
|
-
mevModuleData: clankerConfig.related?.mevModuleV2 ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7897
|
+
mevModuleData: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevDescendingFees ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7845
7898
|
{
|
|
7846
7899
|
startingFee: cfg.sniperFees.startingFee,
|
|
7847
7900
|
endingFee: cfg.sniperFees.endingFee,
|
|
@@ -9078,7 +9131,8 @@ var CHAIN_MAP = {
|
|
|
9078
9131
|
ethereum: mainnet3,
|
|
9079
9132
|
bsc: bsc3,
|
|
9080
9133
|
unichain: unichain3,
|
|
9081
|
-
monad
|
|
9134
|
+
monad,
|
|
9135
|
+
robinhood
|
|
9082
9136
|
};
|
|
9083
9137
|
var CHAIN_NAMES = Object.keys(CHAIN_MAP);
|
|
9084
9138
|
function resolveChain(name) {
|
|
@@ -9090,9 +9144,9 @@ function resolveChain(name) {
|
|
|
9090
9144
|
}
|
|
9091
9145
|
|
|
9092
9146
|
// src/cli/utils/config.ts
|
|
9093
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "
|
|
9094
|
-
import { homedir } from "
|
|
9095
|
-
import { join } from "
|
|
9147
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
9148
|
+
import { homedir } from "os";
|
|
9149
|
+
import { join } from "path";
|
|
9096
9150
|
var CONFIG_DIR = join(homedir(), ".clanker");
|
|
9097
9151
|
var CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
9098
9152
|
function loadConfig() {
|
|
@@ -1950,6 +1950,33 @@ var monad = /* @__PURE__ */ defineChain({
|
|
|
1950
1950
|
testnet: false
|
|
1951
1951
|
});
|
|
1952
1952
|
|
|
1953
|
+
// src/utils/chains/robinhood.ts
|
|
1954
|
+
import { defineChain as defineChain2 } from "viem";
|
|
1955
|
+
var robinhood = /* @__PURE__ */ defineChain2({
|
|
1956
|
+
id: 4663,
|
|
1957
|
+
name: "Robinhood Chain",
|
|
1958
|
+
blockTime: 100,
|
|
1959
|
+
nativeCurrency: {
|
|
1960
|
+
name: "Ether",
|
|
1961
|
+
symbol: "ETH",
|
|
1962
|
+
decimals: 18
|
|
1963
|
+
},
|
|
1964
|
+
rpcUrls: {
|
|
1965
|
+
default: {
|
|
1966
|
+
http: ["https://rpc.mainnet.chain.robinhood.com"]
|
|
1967
|
+
}
|
|
1968
|
+
},
|
|
1969
|
+
blockExplorers: {
|
|
1970
|
+
default: {
|
|
1971
|
+
name: "Robinhood Chain Blockscout Explorer",
|
|
1972
|
+
url: "https://robinhoodchain.blockscout.com"
|
|
1973
|
+
}
|
|
1974
|
+
},
|
|
1975
|
+
contracts: {},
|
|
1976
|
+
testnet: false
|
|
1977
|
+
});
|
|
1978
|
+
var ROBINHOOD_WETH_ADDRESS = "0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73";
|
|
1979
|
+
|
|
1953
1980
|
// src/constants.ts
|
|
1954
1981
|
var WBNB_ADDRESS = "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c";
|
|
1955
1982
|
var WETH_ADDRESSES = {
|
|
@@ -1962,7 +1989,8 @@ var WETH_ADDRESSES = {
|
|
|
1962
1989
|
[abstract.id]: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
1963
1990
|
[monadTestnet.id]: "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701",
|
|
1964
1991
|
// WMON
|
|
1965
|
-
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
|
|
1992
|
+
[monad.id]: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a",
|
|
1993
|
+
[robinhood.id]: ROBINHOOD_WETH_ADDRESS
|
|
1966
1994
|
};
|
|
1967
1995
|
var DEFAULT_SUPPLY = 100000000000000000000000000000n;
|
|
1968
1996
|
var POOL_POSITIONS = {
|
|
@@ -6613,6 +6641,29 @@ var CLANKERS = {
|
|
|
6613
6641
|
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
6614
6642
|
feeDynamicHookV2: "0x011a8ed40095F2D7E9c19125B8254b19678D68Cc"
|
|
6615
6643
|
}
|
|
6644
|
+
},
|
|
6645
|
+
clanker_v4_robinhood: {
|
|
6646
|
+
abi: Clanker_v4_abi,
|
|
6647
|
+
token: {
|
|
6648
|
+
abi: ClankerToken_v4_abi,
|
|
6649
|
+
bytecode: ClankerToken_v4_bytecode
|
|
6650
|
+
},
|
|
6651
|
+
chainId: robinhood.id,
|
|
6652
|
+
type: "clanker_v4",
|
|
6653
|
+
address: "0xD3f2cC1731b7Fd17f28798835C2E02f0a1839A94",
|
|
6654
|
+
related: {
|
|
6655
|
+
locker: "0x290F735F63824BB5836cDe24a35F5103A5B5Bc99",
|
|
6656
|
+
vault: "0x99B2a80ed21c7af1F5cc1A97383DADeEC7DD1427",
|
|
6657
|
+
airdrop: "0x6f27372FF493A3855E6746b9a4fe6Ed2Cc3034B5",
|
|
6658
|
+
devbuy: "0xa27b1986e5c7e5371Cb6507f87918fBD0302fF5a",
|
|
6659
|
+
mevModule: "0xEA1Fe197dF140e5d88fC6B49f2d21Ea05092299e",
|
|
6660
|
+
mevDescendingFees: true,
|
|
6661
|
+
feeLocker: "0x88db2340bE5991B2b5Fca2Baee39B5CE048Cd70c",
|
|
6662
|
+
feeStaticHook: "0x0000000000000000000000000000000000000000",
|
|
6663
|
+
feeStaticHookV2: "0x48B8F6AD3A1b4aA477314c9a23035b8F84dDe8cc",
|
|
6664
|
+
feeDynamicHook: "0x0000000000000000000000000000000000000000",
|
|
6665
|
+
feeDynamicHookV2: "0x65efDF8Cce99b53C925DF878Df275Df21cB6E8Cc"
|
|
6666
|
+
}
|
|
6616
6667
|
}
|
|
6617
6668
|
};
|
|
6618
6669
|
var Chains = [...new Set(Object.values(CLANKERS).map(({ chainId }) => chainId))];
|
|
@@ -7003,7 +7054,7 @@ var clankerTokenV4Converter = async (config) => {
|
|
|
7003
7054
|
},
|
|
7004
7055
|
mevModuleConfig: {
|
|
7005
7056
|
mevModule: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevModule,
|
|
7006
|
-
mevModuleData: clankerConfig.related?.mevModuleV2 ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7057
|
+
mevModuleData: clankerConfig.related?.mevModuleV2 || clankerConfig.related?.mevDescendingFees ? encodeAbiParameters2(Clanker_MevSniperAuction_InitData_v4_1_abi, [
|
|
7007
7058
|
{
|
|
7008
7059
|
startingFee: cfg.sniperFees.startingFee,
|
|
7009
7060
|
endingFee: cfg.sniperFees.endingFee,
|
|
@@ -7144,6 +7195,8 @@ var ClankerError = class _ClankerError extends Error {
|
|
|
7144
7195
|
this.error = error;
|
|
7145
7196
|
this.data = data;
|
|
7146
7197
|
}
|
|
7198
|
+
error;
|
|
7199
|
+
data;
|
|
7147
7200
|
static unknown(e, name) {
|
|
7148
7201
|
return new _ClankerError(e, {
|
|
7149
7202
|
type: "unknown",
|
|
@@ -8022,7 +8075,8 @@ var CHAIN_MAP = {
|
|
|
8022
8075
|
ethereum: mainnet3,
|
|
8023
8076
|
bsc: bsc3,
|
|
8024
8077
|
unichain: unichain3,
|
|
8025
|
-
monad
|
|
8078
|
+
monad,
|
|
8079
|
+
robinhood
|
|
8026
8080
|
};
|
|
8027
8081
|
var CHAIN_NAMES = Object.keys(CHAIN_MAP);
|
|
8028
8082
|
function resolveChain(name) {
|
|
@@ -8034,9 +8088,9 @@ function resolveChain(name) {
|
|
|
8034
8088
|
}
|
|
8035
8089
|
|
|
8036
8090
|
// src/cli/utils/config.ts
|
|
8037
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "
|
|
8038
|
-
import { homedir } from "
|
|
8039
|
-
import { join } from "
|
|
8091
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
8092
|
+
import { homedir } from "os";
|
|
8093
|
+
import { join } from "path";
|
|
8040
8094
|
var CONFIG_DIR = join(homedir(), ".clanker");
|
|
8041
8095
|
var CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
8042
8096
|
function loadConfig() {
|