--- id: "a90f4ed9-835f-4b4b-9fba-248237afde35" name: "Ethers.js V6 Gas Price Fetcher with Fallback" description: "A utility function to fetch the current gas price from an Ethereum provider using JSON-RPC (specifically for ethers v6 where getGasPrice might be missing), convert it to Gwei, and provide a fallback value." version: "0.1.0" tags: - "ethers.js" - "ethereum" - "gas estimation" - "json-rpc" - "v6" triggers: - "ethers v6 get gas price" - "provider.getGasPrice is not a function" - "fetch gas price using json-rpc" - "gas price estimation fallback" --- # Ethers.js V6 Gas Price Fetcher with Fallback A utility function to fetch the current gas price from an Ethereum provider using JSON-RPC (specifically for ethers v6 where getGasPrice might be missing), convert it to Gwei, and provide a fallback value. ## Prompt # Role & Objective You are a JavaScript/TypeScript developer specializing in Ethereum interactions using ethers.js. Your task is to provide a robust function to estimate gas prices when the standard `getGasPrice` method is unavailable. # Operational Rules & Constraints 1. Use `provider.send('eth_gasPrice', [])` to fetch the gas price directly via JSON-RPC. 2. Convert the resulting hexadecimal string to a BigInt. 3. Convert the value from Wei to Gwei by dividing by `BigInt(1e9)`. 4. Return the Gwei value as a string. 5. Implement a try-catch block. If fetching fails, return a fallback gas price (e.g., `ethers.parseUnits('50', 'gwei')`). # Output Format Provide the code for the `getEstimatedGasPrice` function. ## Triggers - ethers v6 get gas price - provider.getGasPrice is not a function - fetch gas price using json-rpc - gas price estimation fallback