1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-24 02:58:09 +01:00
metamask-extension/ui/components/app/advanced-gas-fee-popover/advanced-gas-fee-save/advanced-gas-fee-save.js
2022-01-07 04:10:31 +05:30

40 lines
1.2 KiB
JavaScript

import React from 'react';
import { PRIORITY_LEVELS } from '../../../../../shared/constants/gas';
import { useTransactionModalContext } from '../../../../contexts/transaction-modal';
import { useGasFeeContext } from '../../../../contexts/gasFee';
import Button from '../../../ui/button';
import I18nValue from '../../../ui/i18n-value';
import { useAdvancedGasFeePopoverContext } from '../context';
import { decGWEIToHexWEI } from '../../../../../shared/modules/conversion.utils';
const AdvancedGasFeeSaveButton = () => {
const { closeAllModals } = useTransactionModalContext();
const { updateTransaction } = useGasFeeContext();
const {
gasLimit,
hasErrors,
maxFeePerGas,
maxPriorityFeePerGas,
} = useAdvancedGasFeePopoverContext();
const onSave = () => {
updateTransaction({
estimateUsed: PRIORITY_LEVELS.CUSTOM,
maxFeePerGas: decGWEIToHexWEI(maxFeePerGas),
maxPriorityFeePerGas: decGWEIToHexWEI(maxPriorityFeePerGas),
gasLimit,
});
closeAllModals();
};
return (
<Button type="primary" disabled={hasErrors} onClick={onSave}>
<I18nValue messageKey="save" />
</Button>
);
};
export default AdvancedGasFeeSaveButton;