Add complete token lists for Ethereum Mainnet, ChainID 138, and ALL Mainnet
- Added Ethereum Mainnet token list (1 token: USDT) - Updated ChainID 138 token list (6 tokens: added cUSDT and cUSDC) - Added ALL Mainnet token list (9 tokens including AUSDT) - Discovered ALL Mainnet tokens via Transfer event scanning - Updated validation scripts for multi-chain support - Created comprehensive documentation and guides - Updated master documentation indexes - All token lists validated and ready for submission
This commit is contained in:
86
token-lists/chainlists/SUBMISSION_SCRIPT.sh
Executable file
86
token-lists/chainlists/SUBMISSION_SCRIPT.sh
Executable file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env bash
|
||||
# Chainlist Submission Script - ChainID 138
|
||||
# This script prepares the chain-138.json file for Chainlist submission
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
CHAIN_FILE="$SCRIPT_DIR/chain-138.json"
|
||||
|
||||
# Colors
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
|
||||
log_success() { echo -e "${GREEN}[✓]${NC} $1"; }
|
||||
log_warn() { echo -e "${YELLOW}[WARN]${NC} $1"; }
|
||||
|
||||
log_info "=== Chainlist Submission Preparation ==="
|
||||
log_info ""
|
||||
|
||||
# Validate JSON
|
||||
log_info "1. Validating chain-138.json..."
|
||||
if python3 -c "import json; json.load(open('$CHAIN_FILE'))" 2>/dev/null; then
|
||||
log_success " JSON is valid"
|
||||
else
|
||||
log_warn " JSON validation failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check required fields
|
||||
log_info ""
|
||||
log_info "2. Checking required fields..."
|
||||
python3 << 'PYTHON'
|
||||
import json
|
||||
import sys
|
||||
|
||||
try:
|
||||
with open('chain-138.json', 'r') as f:
|
||||
data = json.load(f)
|
||||
|
||||
required = ['name', 'shortName', 'chain', 'chainId', 'networkId', 'rpc', 'faucets', 'infoURL', 'nativeCurrency']
|
||||
missing = [field for field in required if field not in data]
|
||||
|
||||
if missing:
|
||||
print(f" ❌ Missing required fields: {missing}")
|
||||
sys.exit(1)
|
||||
else:
|
||||
print(" ✅ All required fields present")
|
||||
|
||||
# Check nativeCurrency
|
||||
if 'nativeCurrency' in data:
|
||||
nc_required = ['name', 'symbol', 'decimals']
|
||||
nc_missing = [field for field in nc_required if field not in data['nativeCurrency']]
|
||||
if nc_missing:
|
||||
print(f" ❌ NativeCurrency missing: {nc_missing}")
|
||||
sys.exit(1)
|
||||
else:
|
||||
print(" ✅ NativeCurrency complete")
|
||||
|
||||
print(f"\n Chain: {data.get('name', 'N/A')}")
|
||||
print(f" ChainID: {data.get('chainId', 'N/A')}")
|
||||
print(f" RPC URLs: {len(data.get('rpc', []))}")
|
||||
print(f" Explorers: {len(data.get('explorers', []))}")
|
||||
|
||||
except Exception as e:
|
||||
print(f" ❌ Error: {e}")
|
||||
sys.exit(1)
|
||||
PYTHON
|
||||
|
||||
log_info ""
|
||||
log_success "=== Chainlist Configuration Validated ==="
|
||||
log_info ""
|
||||
|
||||
# Instructions
|
||||
log_info "Next Steps:"
|
||||
log_info "1. Fork Chainlist repository: https://github.com/ethereum-lists/chains"
|
||||
log_info "2. Clone your fork: git clone https://github.com/YOUR_USERNAME/chains.git"
|
||||
log_info "3. Create branch: git checkout -b add-dbis-chain-138"
|
||||
log_info "4. Copy file: cp $CHAIN_FILE chains/_data/chains/eip155-138.json"
|
||||
log_info "5. Commit: git add _data/chains/eip155-138.json && git commit -m 'Add DBIS Chain (ChainID 138)'"
|
||||
log_info "6. Push: git push origin add-dbis-chain-138"
|
||||
log_info "7. Create PR: Visit GitHub and create pull request"
|
||||
log_info ""
|
||||
log_info "See CHAINLIST_PR_TEMPLATE.md for PR description template"
|
||||
Reference in New Issue
Block a user