Skip to content

Commit

Permalink
Merge branch 'eth_json_rpc_middleware_patch' of github.com:MetaMask/m…
Browse files Browse the repository at this point in the history
…etamask-extension into eth_json_rpc_middleware_patch
  • Loading branch information
jpuri committed Sep 11, 2024
2 parents a745cbb + b7e6c13 commit 0fa5aed
Show file tree
Hide file tree
Showing 46 changed files with 362 additions and 482 deletions.
10 changes: 10 additions & 0 deletions .yarnrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,16 @@ npmAuditIgnoreAdvisories:
# not appear to be used.
- 1092461

# Issue: path-to-regexp outputs backtracking regular expressions
# URL: https://github.com/advisories/GHSA-9wv6-86v2-598j
# path-to-regexp is used in react-router v5.1.2, which we use. However, the
# vulnerability in path-to-regexp could only be exploited within react-router
# if malicious properties were passed to react-router components or methods
# explicitly from our code. As such, this vulneratibility cannot be exploited
# by an external / malicious actor. Meanwhile, once we update to v6+,
# path-to-regexp will no longer be used.
- 1099518

# Temp fix for https://github.com/MetaMask/metamask-extension/pull/16920 for the sake of 11.7.1 hotfix
# This will be removed in this ticket https://github.com/MetaMask/metamask-extension/issues/22299
- 'ts-custom-error (deprecation)'
Expand Down
40 changes: 1 addition & 39 deletions lavamoat/browserify/beta/policy.json
Original file line number Diff line number Diff line change
Expand Up @@ -1688,10 +1688,10 @@
"packages": {
"@metamask/base-controller": true,
"@metamask/controller-utils": true,
"@metamask/eth-json-rpc-middleware": true,
"@metamask/eth-query": true,
"@metamask/eth-token-tracker>@metamask/eth-block-tracker": true,
"@metamask/network-controller>@metamask/eth-json-rpc-infura": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": true,
"@metamask/network-controller>@metamask/eth-json-rpc-provider": true,
"@metamask/network-controller>@metamask/swappable-obj-proxy": true,
"@metamask/rpc-errors": true,
Expand Down Expand Up @@ -1741,44 +1741,6 @@
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": {
"globals": {
"URL": true,
"console.error": true,
"setTimeout": true
},
"packages": {
"@metamask/eth-json-rpc-middleware>klona": true,
"@metamask/eth-json-rpc-middleware>safe-stable-stringify": true,
"@metamask/eth-sig-util": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"pify": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": {
"packages": {
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"@metamask/safe-event-emitter": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": {
"globals": {
"TextDecoder": true,
"TextEncoder": true
},
"packages": {
"@metamask/utils>@metamask/superstruct": true,
"@metamask/utils>@scure/base": true,
"@metamask/utils>pony-cause": true,
"@noble/hashes": true,
"browserify>buffer": true,
"nock>debug": true,
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-provider": {
"packages": {
"@metamask/rpc-errors": true,
Expand Down
40 changes: 1 addition & 39 deletions lavamoat/browserify/flask/policy.json
Original file line number Diff line number Diff line change
Expand Up @@ -1688,10 +1688,10 @@
"packages": {
"@metamask/base-controller": true,
"@metamask/controller-utils": true,
"@metamask/eth-json-rpc-middleware": true,
"@metamask/eth-query": true,
"@metamask/eth-token-tracker>@metamask/eth-block-tracker": true,
"@metamask/network-controller>@metamask/eth-json-rpc-infura": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": true,
"@metamask/network-controller>@metamask/eth-json-rpc-provider": true,
"@metamask/network-controller>@metamask/swappable-obj-proxy": true,
"@metamask/rpc-errors": true,
Expand Down Expand Up @@ -1741,44 +1741,6 @@
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": {
"globals": {
"URL": true,
"console.error": true,
"setTimeout": true
},
"packages": {
"@metamask/eth-json-rpc-middleware>klona": true,
"@metamask/eth-json-rpc-middleware>safe-stable-stringify": true,
"@metamask/eth-sig-util": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"pify": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": {
"packages": {
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"@metamask/safe-event-emitter": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": {
"globals": {
"TextDecoder": true,
"TextEncoder": true
},
"packages": {
"@metamask/utils>@metamask/superstruct": true,
"@metamask/utils>@scure/base": true,
"@metamask/utils>pony-cause": true,
"@noble/hashes": true,
"browserify>buffer": true,
"nock>debug": true,
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-provider": {
"packages": {
"@metamask/rpc-errors": true,
Expand Down
40 changes: 1 addition & 39 deletions lavamoat/browserify/main/policy.json
Original file line number Diff line number Diff line change
Expand Up @@ -1688,10 +1688,10 @@
"packages": {
"@metamask/base-controller": true,
"@metamask/controller-utils": true,
"@metamask/eth-json-rpc-middleware": true,
"@metamask/eth-query": true,
"@metamask/eth-token-tracker>@metamask/eth-block-tracker": true,
"@metamask/network-controller>@metamask/eth-json-rpc-infura": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": true,
"@metamask/network-controller>@metamask/eth-json-rpc-provider": true,
"@metamask/network-controller>@metamask/swappable-obj-proxy": true,
"@metamask/rpc-errors": true,
Expand Down Expand Up @@ -1741,44 +1741,6 @@
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": {
"globals": {
"URL": true,
"console.error": true,
"setTimeout": true
},
"packages": {
"@metamask/eth-json-rpc-middleware>klona": true,
"@metamask/eth-json-rpc-middleware>safe-stable-stringify": true,
"@metamask/eth-sig-util": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"pify": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": {
"packages": {
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"@metamask/safe-event-emitter": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": {
"globals": {
"TextDecoder": true,
"TextEncoder": true
},
"packages": {
"@metamask/utils>@metamask/superstruct": true,
"@metamask/utils>@scure/base": true,
"@metamask/utils>pony-cause": true,
"@noble/hashes": true,
"browserify>buffer": true,
"nock>debug": true,
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-provider": {
"packages": {
"@metamask/rpc-errors": true,
Expand Down
40 changes: 1 addition & 39 deletions lavamoat/browserify/mmi/policy.json
Original file line number Diff line number Diff line change
Expand Up @@ -1780,10 +1780,10 @@
"packages": {
"@metamask/base-controller": true,
"@metamask/controller-utils": true,
"@metamask/eth-json-rpc-middleware": true,
"@metamask/eth-query": true,
"@metamask/eth-token-tracker>@metamask/eth-block-tracker": true,
"@metamask/network-controller>@metamask/eth-json-rpc-infura": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": true,
"@metamask/network-controller>@metamask/eth-json-rpc-provider": true,
"@metamask/network-controller>@metamask/swappable-obj-proxy": true,
"@metamask/rpc-errors": true,
Expand Down Expand Up @@ -1833,44 +1833,6 @@
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware": {
"globals": {
"URL": true,
"console.error": true,
"setTimeout": true
},
"packages": {
"@metamask/eth-json-rpc-middleware>klona": true,
"@metamask/eth-json-rpc-middleware>safe-stable-stringify": true,
"@metamask/eth-sig-util": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": true,
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"pify": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/json-rpc-engine": {
"packages": {
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": true,
"@metamask/rpc-errors": true,
"@metamask/safe-event-emitter": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-middleware>@metamask/utils": {
"globals": {
"TextDecoder": true,
"TextEncoder": true
},
"packages": {
"@metamask/utils>@metamask/superstruct": true,
"@metamask/utils>@scure/base": true,
"@metamask/utils>pony-cause": true,
"@noble/hashes": true,
"browserify>buffer": true,
"nock>debug": true,
"semver": true
}
},
"@metamask/network-controller>@metamask/eth-json-rpc-provider": {
"packages": {
"@metamask/rpc-errors": true,
Expand Down
2 changes: 1 addition & 1 deletion shared/constants/gas.ts
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export enum EditGasModes {
export enum NetworkCongestionThresholds {
notBusy = 0,
stable = 0.33,
busy = 0.66,
busy = 0.9,
}

export type TxGasFees = {
Expand Down
11 changes: 4 additions & 7 deletions test/e2e/flask/btc/btc-account-overview.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { strict as assert } from 'assert';
import { Suite } from 'mocha';
import { withBtcAccountSnap } from './common-btc';

Expand Down Expand Up @@ -30,15 +29,13 @@ describe('BTC Account - Overview', function (this: Suite) {
css: '[disabled]',
});

const buySellButton = await driver.waitForSelector(
'[data-testid="coin-overview-buy"]',
);
assert.equal(await buySellButton.isEnabled(), true);
// buy sell button
await driver.findClickableElement('[data-testid="coin-overview-buy"]');

const portfolioButton = await driver.waitForSelector(
// receive button
await driver.findClickableElement(
'[data-testid="coin-overview-receive"]',
);
assert.equal(await portfolioButton.isEnabled(), true);
},
);
});
Expand Down
2 changes: 1 addition & 1 deletion test/e2e/tests/tokens/nft/import-nft.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ describe('Import NFT', function () {
// Enter a valid NFT that belongs to user and check success message appears
await driver.fill('#address', contractAddress);
await driver.fill('#token-id', '1');
await driver.clickElement(
await driver.clickElementAndWaitToDisappear(
'[data-testid="import-nfts-modal-import-button"]',
);

Expand Down
48 changes: 48 additions & 0 deletions test/integration/confirmations/transactions/alerts.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -347,4 +347,52 @@ describe('Contract Interaction Confirmation', () => {
'This transaction won’t go through until a previous transaction is complete. Learn how to cancel or speed up a transaction.',
);
});

it('displays the alert for gas fees too', async () => {
const account =
mockMetaMaskState.internalAccounts.accounts[
mockMetaMaskState.internalAccounts
.selectedAccount as keyof typeof mockMetaMaskState.internalAccounts.accounts
];

const mockedMetaMaskState =
getMetaMaskStateWithUnapprovedApproveTransaction(account.address);

const transaction = mockedMetaMaskState.transactions[0];
transaction.defaultGasEstimates.estimateType = 'low';
transaction.userFeeLevel = 'low';

await act(async () => {
await integrationTestRender({
preloadedState: {
...mockedMetaMaskState,
transactions: [transaction],
},
backgroundConnection: backgroundConnectionMocked,
});
});

act(() => {
fireEvent.click(screen.getByTestId('inline-alert'));
});

expect(await screen.findByTestId('alert-modal')).toBeInTheDocument();

expect(
await screen.findByTestId('alert-modal__selected-alert'),
).toBeInTheDocument();

expect(
await screen.findByTestId('alert-modal__selected-alert'),
).toHaveTextContent(
'When choosing a low fee, expect slower transactions and longer wait times. For faster transactions, choose Market or Aggressive fee options.',
);

expect(
await screen.findByTestId('alert-modal-action-showGasFeeModal'),
).toBeInTheDocument();
expect(
await screen.findByTestId('alert-modal-action-showGasFeeModal'),
).toHaveTextContent('Update gas options');
});
});
8 changes: 2 additions & 6 deletions ui/components/app/connected-sites-list/connected-snaps.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import { useDispatch, useSelector } from 'react-redux';
import { Box, IconName, IconSize, Text } from '../../component-library';
import { useI18nContext } from '../../../hooks/useI18nContext';
import { MenuItem } from '../../ui/menu';
import SnapAvatar from '../snaps/snap-avatar';
import {
AlignItems,
BlockSize,
Expand All @@ -18,6 +17,7 @@ import ConnectedAccountsListOptions from '../connected-accounts-list/connected-a
import { getOriginOfCurrentTab } from '../../../selectors';
import { disconnectOriginFromSnap } from '../../../store/actions';
import { getSnapRoute } from '../../../helpers/utils/util';
import { SnapIcon } from '../snaps/snap-icon';

export default function ConnectedSnaps({ connectedSubjects }) {
const [showOptions, setShowOptions] = useState();
Expand Down Expand Up @@ -74,11 +74,7 @@ export default function ConnectedSnaps({ connectedSubjects }) {
display={Display.Flex}
alignItems={AlignItems.center}
>
<SnapAvatar
snapId={subject.origin}
badgeSize={IconSize.Xs}
avatarSize={IconSize.Md}
/>
<SnapIcon snapId={subject.origin} avatarSize={IconSize.Md} />
<Text
variant={TextVariant.bodyLgMedium}
className="connected-accounts-list__account-name"
Expand Down
Loading

0 comments on commit 0fa5aed

Please sign in to comment.