mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-22 09:57:02 +01:00
Use eth_gasPrice result for setting too low warning on custom networks (#11370)
* Use eth_gasPrice result for setting too low warning on custom networks * Assume CustomPriceSafeForCustomNetwork when there is no custom price set (it will default to recommended)
This commit is contained in:
parent
171320eaa9
commit
87166afb6b
@ -29,12 +29,14 @@ import {
|
||||
getCurrentCurrency,
|
||||
getCurrentEthBalance,
|
||||
getIsMainnet,
|
||||
getIsTestnet,
|
||||
getBasicGasEstimateLoadingStatus,
|
||||
getCustomGasLimit,
|
||||
getCustomGasPrice,
|
||||
getDefaultActiveButtonIndex,
|
||||
getRenderableBasicEstimateData,
|
||||
isCustomPriceSafe,
|
||||
isCustomPriceSafeForCustomNetwork,
|
||||
getAveragePriceEstimateInHexWEI,
|
||||
isCustomPriceExcessive,
|
||||
getIsGasEstimatesFetched,
|
||||
@ -113,6 +115,7 @@ const mapStateToProps = (state, ownProps) => {
|
||||
const balance = getCurrentEthBalance(state);
|
||||
|
||||
const isMainnet = getIsMainnet(state);
|
||||
const isTestnet = getIsTestnet(state);
|
||||
const showFiat = getShouldShowFiat(state);
|
||||
|
||||
const newTotalEth =
|
||||
@ -134,6 +137,16 @@ const mapStateToProps = (state, ownProps) => {
|
||||
conversionRate,
|
||||
});
|
||||
const isGasEstimate = getIsGasEstimatesFetched(state);
|
||||
|
||||
let customPriceIsSafe;
|
||||
if ((isMainnet || process.env.IN_TEST) && isGasEstimate) {
|
||||
customPriceIsSafe = isCustomPriceSafe(state);
|
||||
} else if (isTestnet) {
|
||||
customPriceIsSafe = true;
|
||||
} else {
|
||||
customPriceIsSafe = isCustomPriceSafeForCustomNetwork(state);
|
||||
}
|
||||
|
||||
return {
|
||||
hideBasic,
|
||||
isConfirm: isConfirm(state),
|
||||
@ -143,10 +156,7 @@ const mapStateToProps = (state, ownProps) => {
|
||||
customGasLimit: calcCustomGasLimit(customModalGasLimitInHex),
|
||||
customGasTotal,
|
||||
newTotalFiat,
|
||||
customPriceIsSafe:
|
||||
(isMainnet || process.env.IN_TEST) && isGasEstimate
|
||||
? isCustomPriceSafe(state)
|
||||
: true,
|
||||
customPriceIsSafe,
|
||||
customPriceIsExcessive: isCustomPriceExcessive(state),
|
||||
maxModeOn,
|
||||
gasPriceButtonGroupProps: {
|
||||
|
@ -96,6 +96,28 @@ export function isCustomPriceSafe(state) {
|
||||
return customPriceSafe;
|
||||
}
|
||||
|
||||
export function isCustomPriceSafeForCustomNetwork(state) {
|
||||
const estimatedPrice = state.gas.basicEstimates.average;
|
||||
|
||||
const customGasPrice = getCustomGasPrice(state);
|
||||
|
||||
if (!customGasPrice) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const customPriceSafe = conversionGreaterThan(
|
||||
{
|
||||
value: customGasPrice,
|
||||
fromNumericBase: 'hex',
|
||||
fromDenomination: 'WEI',
|
||||
toDenomination: 'GWEI',
|
||||
},
|
||||
{ value: estimatedPrice, fromNumericBase: 'dec' },
|
||||
);
|
||||
|
||||
return customPriceSafe;
|
||||
}
|
||||
|
||||
export function isCustomPriceExcessive(state, checkSend = false) {
|
||||
const customPrice = checkSend ? getGasPrice(state) : getCustomGasPrice(state);
|
||||
const fastPrice = getFastPriceEstimate(state);
|
||||
|
Loading…
Reference in New Issue
Block a user