1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-24 19:10:22 +01:00
metamask-extension/ui/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.container.js

44 lines
1.3 KiB
JavaScript

import { connect } from 'react-redux';
import {
decGWEIToHexWEI,
decimalToHex,
hexWEIToDecGWEI,
} from '../../../../helpers/utils/conversions.util';
import { MIN_GAS_LIMIT_DEC } from '../../../../pages/send/send.constants';
import AdvancedGasInputs from './advanced-gas-inputs.component';
function convertGasPriceForInputs(gasPriceInHexWEI) {
return Number(hexWEIToDecGWEI(gasPriceInHexWEI));
}
function convertGasLimitForInputs(gasLimitInHexWEI) {
return parseInt(gasLimitInHexWEI, 16) || 0;
}
function convertMinimumGasLimitForInputs(minimumGasLimit = MIN_GAS_LIMIT_DEC) {
return parseInt(minimumGasLimit, 10);
}
const mergeProps = (stateProps, dispatchProps, ownProps) => {
const {
customGasPrice,
customGasLimit,
updateCustomGasPrice,
updateCustomGasLimit,
minimumGasLimit,
} = ownProps;
return {
...ownProps,
...stateProps,
...dispatchProps,
customGasPrice: convertGasPriceForInputs(customGasPrice),
customGasLimit: convertGasLimitForInputs(customGasLimit),
minimumGasLimit: convertMinimumGasLimitForInputs(minimumGasLimit),
updateCustomGasPrice: (price) =>
updateCustomGasPrice(decGWEIToHexWEI(price)),
updateCustomGasLimit: (limit) => updateCustomGasLimit(decimalToHex(limit)),
};
};
export default connect(null, null, mergeProps)(AdvancedGasInputs);