Merge remote-tracking branch 'origin/develop' into master-sync

feature/default_network_editable
ryanml 3 years ago
commit 352e1dd74c
  1. 2
      .github/workflows/cla.yml
  2. 65
      .storybook/initial-states/approval-screens/add-suggested-token.js
  3. 56
      .storybook/initial-states/approval-screens/add-token.js
  4. 26
      .storybook/test-data.js
  5. 39
      app/_locales/en/messages.json
  6. 2
      app/_locales/fr/messages.json
  7. 1
      app/scripts/controllers/preferences.js
  8. 4
      app/scripts/controllers/transactions/index.js
  9. 4
      app/scripts/migrations/053.js
  10. 6
      app/scripts/migrations/056.js
  11. 2
      docs/extension_description/en.txt
  12. 4
      package.json
  13. 3
      test/e2e/benchmark.js
  14. 4
      test/e2e/helpers.js
  15. 3
      test/e2e/metrics.spec.js
  16. 3
      test/e2e/tests/permissions.spec.js
  17. 4
      test/e2e/tests/provider-events.spec.js
  18. 2
      ui/components/app/advanced-gas-controls/advanced-gas-controls.component.js
  19. 22
      ui/components/app/edit-gas-display/edit-gas-display.component.js
  20. 15
      ui/components/app/gas-timing/gas-timing.component.js
  21. 1
      ui/components/app/gas-timing/index.scss
  22. 4
      ui/components/app/transaction-total-banner/index.scss
  23. 8
      ui/components/ui/radio-group/index.scss
  24. 16
      ui/components/ui/radio-group/radio-group.component.js
  25. 1
      ui/components/ui/unit-input/unit-input.component.js
  26. 47
      ui/pages/confirm-add-suggested-token/confirm-add-suggested-token.stories.js
  27. 38
      ui/pages/confirm-add-token/confirm-add-token.stories.js
  28. 22
      ui/pages/confirm-token-transaction-base/confirm-token-transaction-base.stories.js
  29. 11
      ui/pages/confirm-transaction-base/confirm-transaction-base.component.js
  30. 4
      ui/pages/mobile-sync/mobile-sync.component.js
  31. 2
      ui/pages/mobile-sync/mobile-sync.container.js
  32. 5
      ui/pages/send/send-content/add-recipient/ens-input.component.js
  33. 10
      ui/pages/swaps/awaiting-signatures/awaiting-signatures.stories.js
  34. 24
      ui/pages/swaps/dropdown-search-list/dropdown-search-list.stories.js
  35. 2
      ui/pages/swaps/fee-card/__snapshots__/fee-card.test.js.snap
  36. 514
      yarn.lock

@ -22,6 +22,6 @@ jobs:
url-to-cladocument: 'https://metamask.io/cla.html'
# This branch can't have protections, commits are made directly to the specified branch.
branch: 'cla-signatures'
allowlist: 'dependabot[bot],metamaskbot,muji'
allowlist: 'dependabot[bot],metamaskbot'
allow-organization-members: true
blockchain-storage-flag: false

@ -0,0 +1,65 @@
export const suggestedTokens = {
"0x6b175474e89094c44da98b954eedeac495271d0f": {
"address": "0x6b175474e89094c44da98b954eedeac495271d0f",
"symbol": "META",
"decimals": 18,
"image": "metamark.svg",
"unlisted": false
},
"0xB8c77482e45F1F44dE1745F52C74426C631bDD52": {
"address": "0xB8c77482e45F1F44dE1745F52C74426C631bDD52",
"symbol": "0X",
"decimals": 18,
"image": "0x.svg",
"unlisted": false
},
"0x1f9840a85d5af5bf1d1762f925bdaddc4201f984": {
"address": "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984",
"symbol": "AST",
"decimals": 18,
"image": "ast.png",
"unlisted": false
},
"0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2": {
"address": "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
"symbol": "BAT",
"decimals": 18,
"image": "BAT_icon.svg",
"unlisted": false
},
"0xe83cccfabd4ed148903bf36d4283ee7c8b3494d1": {
"address": "0xe83cccfabd4ed148903bf36d4283ee7c8b3494d1",
"symbol": "CVL",
"decimals": 18,
"image": "CVL_token.svg",
"unlisted": false
},
"0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e": {
"address": "0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e",
"symbol": "GLA",
"decimals": 18,
"image": "gladius.svg",
"unlisted": false
},
"0x467Bccd9d29f223BcE8043b84E8C8B282827790F": {
"address": "0x467Bccd9d29f223BcE8043b84E8C8B282827790F",
"symbol": "GNO",
"decimals": 18,
"image": "gnosis.svg",
"unlisted": false
},
"0xff20817765cb7f73d4bde2e66e067e58d11095c2": {
"address": "0xff20817765cb7f73d4bde2e66e067e58d11095c2",
"symbol": "OMG",
"decimals": 18,
"image": "omg.jpg",
"unlisted": false
},
"0x8e870d67f660d95d5be530380d0ec0bd388289e1": {
"address": "0x8e870d67f660d95d5be530380d0ec0bd388289e1",
"symbol": "WED",
"decimals": 18,
"image": "wed.png",
"unlisted": false
},
}

@ -0,0 +1,56 @@
export const tokens = {
"0x33f90dee07c6e8b9682dd20f73e6c358b2ed0f03": {
"address": "0x33f90dee07c6e8b9682dd20f73e6c358b2ed0f03",
"symbol": "TRDT",
"decimals": 18,
"unlisted": false
},
"0x39013f961c378f02c2b82a6e1d31e9812786fd9d": {
"address": "0x39013f961c378f02c2b82a6e1d31e9812786fd9d",
"symbol": "SMS",
"decimals": 18,
"unlisted": false
},
"0x78b7fada55a64dd895d8c8c35779dd8b67fa8a05": {
"address": "0x78b7fada55a64dd895d8c8c35779dd8b67fa8a05",
"symbol": "ATL",
"decimals": 18,
"unlisted": false
},
"0xfd8971d5e8e1740ce2d0a84095fca4de729d0c16": {
"address": "0xfd8971d5e8e1740ce2d0a84095fca4de729d0c16",
"symbol": "ZLA",
"decimals": 18,
"unlisted": false
},
"0xe83cccfabd4ed148903bf36d4283ee7c8b3494d1": {
"address": "0xe83cccfabd4ed148903bf36d4283ee7c8b3494d1",
"symbol": "BTT",
"decimals": 18,
"unlisted": false
},
"0x7a07e1a0c2514d51132183ecfea2a880ec3b7648": {
"address": "0x7a07e1a0c2514d51132183ecfea2a880ec3b7648",
"symbol": "IXE",
"decimals": 18,
"unlisted": false
},
"0x467Bccd9d29f223BcE8043b84E8C8B282827790F": {
"address": "0x467Bccd9d29f223BcE8043b84E8C8B282827790F",
"symbol": "TEL",
"decimals": 18,
"unlisted": false
},
"0xff20817765cb7f73d4bde2e66e067e58d11095c2": {
"address": "0xff20817765cb7f73d4bde2e66e067e58d11095c2",
"symbol": "AMP",
"decimals": 18,
"unlisted": false
},
"0x15bda08c3afbf5955d6e9b235fd55a1fd0dbc829": {
"address": "0x15bda08c3afbf5955d6e9b235fd55a1fd0dbc829",
"symbol": "APC",
"decimals": 18,
"unlisted": false
},
}

@ -34,8 +34,8 @@ const state = {
}
},
"unapprovedTxs": {
"7786962153682822": {
"id": 7786962153682822,
"3111025347726181": {
"id": 3111025347726181,
"time": 1620710815484,
"status": "unapproved",
"metamaskNetworkId": "3",
@ -43,7 +43,7 @@ const state = {
"loadingDefaults": false,
"txParams": {
"from": "0x64a845a5b02460acf8a3d84503b0d68d028b4bb4",
"to": "0xad6d458402f60fd3bd25163575031acdce07538d",
"to": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"value": "0x0",
"data": "0xa9059cbb000000000000000000000000b19ac54efa18cc3a14a5b821bfec73d284bf0c5e0000000000000000000000000000000000000000000000003782dace9d900000",
"gas": "0xcb28",
@ -62,7 +62,7 @@ const state = {
"loadingDefaults": true,
"txParams": {
"from": "0x64a845a5b02460acf8a3d84503b0d68d028b4bb4",
"to": "0xad6d458402f60fd3bd25163575031acdce07538d",
"to": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"value": "0x0",
"data": "0xa9059cbb000000000000000000000000b19ac54efa18cc3a14a5b821bfec73d284bf0c5e0000000000000000000000000000000000000000000000003782dace9d900000",
"gas": "0xcb28",
@ -95,11 +95,11 @@ const state = {
}
},
"contractExchangeRates": {
"0xad6d458402f60fd3bd25163575031acdce07538d": 0
"0xaD6D458402F60fD3Bd25163575031ACDce07538D": 0
},
"tokens": [
{
"address": "0xad6d458402f60fd3bd25163575031acdce07538d",
"address": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"symbol": "DAI",
"decimals": 18
}
@ -122,7 +122,7 @@ const state = {
"ensResolution": null,
"ensResolutionError": "",
"token": {
"address": "0xad6d458402f60fd3bd25163575031acdce07538d",
"address": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"symbol": "DAI",
"decimals": 18
}
@ -259,7 +259,7 @@ const state = {
],
"0x3": [
{
"address": "0xad6d458402f60fd3bd25163575031acdce07538d",
"address": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"symbol": "DAI",
"decimals": 18
}
@ -274,7 +274,7 @@ const state = {
}
},
"assetImages": {
"0xad6d458402f60fd3bd25163575031acdce07538d": "./images/logo.png"
"0xaD6D458402F60fD3Bd25163575031ACDce07538D": "./sai.svg"
},
"hiddenTokens": [],
"suggestedTokens": {},
@ -652,14 +652,14 @@ const state = {
"chainId": "0x3",
"loadingDefaults": false,
"txParams": {
"from": "0x983211ce699ea5ab57cc528086154b6db1ad8e55",
"to": "0xad6d458402f60fd3bd25163575031acdce07538d",
"from": "0x64a845a5b02460acf8a3d84503b0d68d028b4bb4",
"to": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"value": "0x0",
"data": "0x095ea7b30000000000000000000000009bc5baf874d2da8d216ae9f137804184ee5afef40000000000000000000000000000000000000000000000000000000000011170",
"gas": "0xea60",
"gasPrice": "0x4a817c800"
},
"type": "standard",
"type": "transfer",
"origin": "https://metamask.github.io",
"transactionCategory": "approve",
"history": [
@ -672,7 +672,7 @@ const state = {
"loadingDefaults": true,
"txParams": {
"from": "0x983211ce699ea5ab57cc528086154b6db1ad8e55",
"to": "0xad6d458402f60fd3bd25163575031acdce07538d",
"to": "0xaD6D458402F60fD3Bd25163575031ACDce07538D",
"value": "0x0",
"data": "0x095ea7b30000000000000000000000009bc5baf874d2da8d216ae9f137804184ee5afef40000000000000000000000000000000000000000000000000000000000011170",
"gas": "0xea60",

@ -323,10 +323,10 @@
"message": "Confirm password"
},
"confirmSecretBackupPhrase": {
"message": "Confirm your Secret Backup Phrase"
"message": "Confirm your Secret Recovery Phrase"
},
"confirmSeedPhrase": {
"message": "Confirm Seed Phrase"
"message": "Confirm Secret Recovery Phrase"
},
"confirmed": {
"message": "Confirmed"
@ -594,10 +594,10 @@
"message": "Dismiss"
},
"dismissReminderDescriptionField": {
"message": "Turn this on to dismiss the recovery phrase backup reminder message. We highly recommend that you back up your Secret Recovery Phrase to avoid loss of funds"
"message": "Turn this on to dismiss the Secret Recovery Phrase backup reminder message. We highly recommend that you back up your Secret Recovery Phrase to avoid loss of funds"
},
"dismissReminderField": {
"message": "Dismiss recovery phrase backup reminder"
"message": "Dismiss Secret Recovery Phrase backup reminder"
},
"domain": {
"message": "Domain"
@ -612,7 +612,7 @@
"message": "Download Google Chrome"
},
"downloadSecretBackup": {
"message": "Download this Secret Backup Phrase and keep it stored safely on an external encrypted hard drive or storage medium."
"message": "Download this Secret Recovery Phrase and keep it stored safely on an external encrypted hard drive or storage medium."
},
"downloadStateLogs": {
"message": "Download State Logs"
@ -714,9 +714,8 @@
"editGasTooLowTooltip": {
"message": "Your max fee or max priority fee may be low for current market conditions. We don't know when (or if) your transaction will be processed. "
},
"editGasTotalBannerSubtitle": {
"message": "Up to $1 ($2)",
"display": "$1 represents a fiat value"
"editGasTooLowWarningTooltip": {
"message": "This lowers your maximum fee but if network traffic increases your transaction may be delayed or fail."
},
"editNonceField": {
"message": "Edit Nonce"
@ -1221,7 +1220,7 @@
},
"makeSureNoOneWatching": {
"message": "Make sure no one is watching your screen",
"description": "Warning to users to be care while creating and saving their new seed phrase"
"description": "Warning to users to be care while creating and saving their new Secret Recovery Phrase"
},
"max": {
"message": "Max"
@ -1774,13 +1773,13 @@
"message": "Search Tokens"
},
"secretBackupPhrase": {
"message": "Secret Backup Phrase"
"message": "Secret Recovery Phrase"
},
"secretBackupPhraseDescription": {
"message": "Your secret backup phrase makes it easy to back up and restore your account."
"message": "Your Secret Recovery Phrase makes it easy to back up and restore your account."
},
"secretBackupPhraseWarning": {
"message": "WARNING: Never disclose your backup phrase. Anyone with this phrase can take your Ether forever."
"message": "WARNING: Never disclose your Secret Recovery Phrase. Anyone with this phrase can take your Ether forever."
},
"secretPhrase": {
"message": "Enter your secret phrase here to restore your vault."
@ -1813,28 +1812,28 @@
"message": "Store in a bank vault."
},
"seedPhraseIntroSidebarCopyOne": {
"message": "Your recovery phrase is the “master key” to your wallet and funds."
"message": "Your Secret Recovery Phrase is the “master key” to your wallet and funds."
},
"seedPhraseIntroSidebarCopyThree": {
"message": "If someone asks for your recovery phrase, they are most likely trying to scam you."
"message": "If someone asks for your Secret Recovery Phrase, they are most likely trying to scam you."
},
"seedPhraseIntroSidebarCopyTwo": {
"message": "Never, ever share your recovery phrase, even with MetaMask!"
"message": "Never, ever share your Secret Recovery Phrase, even with MetaMask!"
},
"seedPhraseIntroSidebarTitleOne": {
"message": "What is a recovery phrase?"
"message": "What is a Secret Recovery Phrase?"
},
"seedPhraseIntroSidebarTitleThree": {
"message": "Should I share my recovery phrase?"
"message": "Should I share my Secret Recovery Phrase?"
},
"seedPhraseIntroSidebarTitleTwo": {
"message": "How do I save my recovery phrase?"
"message": "How do I save my Secret Recovery Phrase?"
},
"seedPhraseIntroTitle": {
"message": "Secure your wallet"
},
"seedPhraseIntroTitleCopy": {
"message": "Before getting started, watch this short video to learn about your recovery phrase and how to keep your wallet safe."
"message": "Before getting started, watch this short video to learn about your Secret Recovery Phrase and how to keep your wallet safe."
},
"seedPhrasePlaceholder": {
"message": "Separate each word with a single space"
@ -2527,7 +2526,7 @@
"message": "Gas fees are set by the network and fluctuate based on network traffic and transaction complexity."
},
"transactionDetailGasTooltipIntro": {
"message": "Gas fees are paid to crypto miners who process transactions on the Ethereum network. MetaMask does not profit from gas fees."
"message": "Gas fees are paid to crypto miners who process transactions on the $1 network. MetaMask does not profit from gas fees."
},
"transactionDetailGasTotalSubtitle": {
"message": "Amount + gas fee"

@ -657,7 +657,7 @@
"message": "de"
},
"off": {
"message": "Déconnecté"
"message": "Désactivé"
},
"on": {
"message": "Activé"

@ -816,7 +816,6 @@ export default class PreferencesController {
return await tokenContract
.supportsInterface(ERC721_INTERFACE_ID)
.catch((error) => {
console.log('error', error);
log.debug(error);
return false;
});

@ -1383,6 +1383,10 @@ export default class TransactionController extends EventEmitter {
* @param {Object} extraParams - optional props and values to include in sensitiveProperties
*/
_trackTransactionMetricsEvent(txMeta, event, extraParams = {}) {
if (!txMeta) {
return;
}
const {
type,
time,

@ -23,6 +23,7 @@ function transformState(state) {
state?.IncomingTransactionsController?.incomingTransactions;
if (Array.isArray(transactions)) {
transactions.forEach((transaction) => {
if (transaction) {
if (
transaction.type !== TRANSACTION_TYPES.RETRY &&
transaction.type !== TRANSACTION_TYPES.CANCEL
@ -30,16 +31,19 @@ function transformState(state) {
transaction.type = transaction.transactionCategory;
}
delete transaction.transactionCategory;
}
});
}
if (incomingTransactions) {
const incomingTransactionsEntries = Object.entries(incomingTransactions);
incomingTransactionsEntries.forEach(([key, transaction]) => {
if (transaction) {
delete transaction.transactionCategory;
state.IncomingTransactionsController.incomingTransactions[key] = {
...transaction,
type: TRANSACTION_TYPES.INCOMING,
};
}
});
}
return state;

@ -15,14 +15,14 @@ export default {
const { PreferencesController } = versionedData.data;
if (Array.isArray(PreferencesController.tokens)) {
if (Array.isArray(PreferencesController?.tokens)) {
PreferencesController.tokens = PreferencesController.tokens.filter(
({ address }) => address,
);
}
if (
PreferencesController.accountTokens &&
PreferencesController?.accountTokens &&
typeof PreferencesController.accountTokens === 'object'
) {
Object.keys(PreferencesController.accountTokens).forEach((account) => {
@ -40,7 +40,7 @@ export default {
}
if (
PreferencesController.assetImages &&
PreferencesController?.assetImages &&
'undefined' in PreferencesController.assetImages
) {
delete PreferencesController.assetImages.undefined;

@ -5,4 +5,4 @@ The extension injects the Ethereum web3 API into every website's javascript cont
MetaMask also lets the user create and manage their own identities, so when a Dapp wants to perform a transaction and write to the blockchain, the user gets a secure interface to review the transaction, before approving or rejecting it.
Because it adds functionality to the normal browser context, MetaMask requires the permission to read and write to any webpage. You can always "view the source" of MetaMask the way you do any extension, or view the source code on Github:
https://github.com/MetaMask/metamask-plugin
https://github.com/MetaMask/metamask-extension

@ -60,8 +60,8 @@
"devtools:redux": "remotedev --hostname=localhost --port=8000",
"start:dev": "concurrently -k -n build,react,redux yarn:start yarn:devtools:react yarn:devtools:redux",
"announce": "node development/announcer.js",
"storybook": "start-storybook -p 6006 -c .storybook --static-dir ./app ./storybook/images",
"storybook:build": "build-storybook -c .storybook -o storybook-build --static-dir ./app ./storybook/images",
"storybook": "start-storybook -p 6006 -c .storybook -s ./app,./.storybook/images",
"storybook:build": "build-storybook -c .storybook -o storybook-build -s ./app,./.storybook/images",
"storybook:deploy": "storybook-to-ghpages --existing-output-dir storybook-build --remote storybook --branch master",
"update-changelog": "auto-changelog update",
"generate:migration": "./development/generate-migration.sh",

@ -7,7 +7,7 @@ const { hideBin } = require('yargs/helpers');
const ttest = require('ttest');
const { retry } = require('../../development/lib/retry');
const { exitWithError } = require('../../development/lib/exit-with-error');
const { withFixtures } = require('./helpers');
const { withFixtures, tinyDelayMs } = require('./helpers');
const { PAGES } = require('./webdriver/driver');
const DEFAULT_NUM_SAMPLES = 20;
@ -16,6 +16,7 @@ const ALL_PAGES = Object.values(PAGES);
async function measurePage(pageName) {
let metrics;
await withFixtures({ fixtures: 'imported-account' }, async ({ driver }) => {
await driver.delay(tinyDelayMs);
await driver.navigate();
await driver.fill('#password', 'correct horse battery staple');
await driver.press('#password', driver.Key.ENTER);

@ -11,6 +11,8 @@ const { buildWebDriver } = require('./webdriver');
const tinyDelayMs = 200;
const regularDelayMs = tinyDelayMs * 2;
const largeDelayMs = regularDelayMs * 2;
const xLargeDelayMs = largeDelayMs * 2;
const xxLargeDelayMs = xLargeDelayMs * 2;
const dappPort = 8080;
@ -144,5 +146,7 @@ module.exports = {
tinyDelayMs,
regularDelayMs,
largeDelayMs,
xLargeDelayMs,
xxLargeDelayMs,
withFixtures,
};

@ -1,6 +1,6 @@
const { strict: assert } = require('assert');
const waitUntilCalled = require('../lib/wait-until-called');
const { withFixtures } = require('./helpers');
const { withFixtures, tinyDelayMs } = require('./helpers');
/**
* WARNING: These tests must be run using a build created with `yarn build:test:metrics`, so that it has
@ -30,6 +30,7 @@ describe('Segment metrics', function () {
const threeSegmentEventsReceived = waitUntilCalled(segmentStub, null, {
callCount: 3,
});
await driver.delay(tinyDelayMs);
await driver.navigate();
await driver.fill('#password', 'correct horse battery staple');

@ -1,5 +1,5 @@
const { strict: assert } = require('assert');
const { withFixtures } = require('../helpers');
const { withFixtures, xxLargeDelayMs } = require('../helpers');
describe('Permissions', function () {
it('sets permissions and connect to Dapp', async function () {
@ -34,6 +34,7 @@ describe('Permissions', function () {
await driver.waitUntilXWindowHandles(3);
const windowHandles = await driver.getAllWindowHandles();
const extension = windowHandles[0];
await driver.delay(xxLargeDelayMs);
await driver.switchToWindowWithTitle(
'MetaMask Notification',
windowHandles,

@ -1,5 +1,5 @@
const { strict: assert } = require('assert');
const { withFixtures, regularDelayMs } = require('../helpers');
const { withFixtures, regularDelayMs, xxLargeDelayMs } = require('../helpers');
describe('MetaMask', function () {
it('provider should inform dapp when switching networks', async function () {
@ -27,7 +27,7 @@ describe('MetaMask', function () {
await driver.openNewPage('http://127.0.0.1:8080/');
const networkDiv = await driver.findElement('#network');
const chainIdDiv = await driver.findElement('#chainId');
await driver.delay(regularDelayMs);
await driver.delay(xxLargeDelayMs);
assert.equal(await networkDiv.getText(), '1337');
assert.equal(await chainIdDiv.getText(), '0x539');

@ -131,5 +131,5 @@ AdvancedGasControls.propTypes = {
maxPriorityFeeFiat: PropTypes.string,
maxFeeFiat: PropTypes.string,
gasErrors: PropTypes.object,
minimumGasLimit: PropTypes.number,
minimumGasLimit: PropTypes.string,
};

@ -161,19 +161,23 @@ export default function EditGasDisplay({
}
detail={
networkAndAccountSupport1559 &&
estimatedMaximumFiat !== undefined &&
t('editGasTotalBannerSubtitle', [
estimatedMaximumFiat !== undefined && (
<>
<Typography
fontWeight={FONT_WEIGHT.BOLD}
tag="span"
key="secondary"
key="label"
fontWeight={FONT_WEIGHT.BOLD}
>
{t('editGasSubTextFeeLabel')}
</Typography>
<Typography tag="span" key="secondary">
{estimatedMaximumFiat}
</Typography>,
</Typography>
<Typography tag="span" key="primary">
{estimatedMaximumNative}
</Typography>,
])
{`(${estimatedMaximumNative})`}
</Typography>
</>
)
}
timing={
hasGasErrors === false && (
@ -315,7 +319,7 @@ EditGasDisplay.propTypes = {
gasErrors: PropTypes.object,
gasWarnings: PropTypes.object,
onManualChange: PropTypes.func,
minimumGasLimit: PropTypes.number,
minimumGasLimit: PropTypes.string,
balanceError: PropTypes.bool,
estimatesUnavailableWarning: PropTypes.bool,
hasGasErrors: PropTypes.bool,

@ -126,7 +126,6 @@ export default function GasTiming({
let text = '';
let attitude = 'positive';
let fontWeight = FONT_WEIGHT.NORMAL;
// Anything medium or faster is positive
if (
@ -159,7 +158,6 @@ export default function GasTiming({
customEstimatedTime === 'unknown' ||
customEstimatedTime?.upperTimeBound === 'unknown'
) {
fontWeight = FONT_WEIGHT.BOLD;
text = unknownProcessingTimeText;
} else {
text = t('gasTimingNegative', [
@ -167,16 +165,23 @@ export default function GasTiming({
]);
}
} else {
text = t('gasTimingNegative', [
text = (
<>
{t('gasTimingNegative', [
toHumanReadableTime(low.maxWaitTimeEstimate, t),
]);
])}
<InfoTooltip
position="top"
contentText={t('editGasTooLowWarningTooltip')}
/>
</>
);
}
}
return (
<Typography
variant={TYPOGRAPHY.H7}
fontWeight={fontWeight}
className={classNames('gas-timing', {
[`gas-timing--${attitude}`]: attitude,
})}

@ -11,6 +11,7 @@
&--negative {
color: $error-1;
font-weight: bold;
}
.info-tooltip {

@ -4,4 +4,8 @@
&__detail {
padding-bottom: 4px;
}
span {
margin-inline-start: 2px;
}
}

@ -1,8 +1,12 @@
.radio-group {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-columns: 33% 33% 33%;
grid-template-rows: 60px;
width: 100%;
&--has-recommendation {
grid-template-rows: 100px;
width: 300px;
}
label {
cursor: pointer;

@ -1,5 +1,6 @@
import React, { useContext } from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import { I18nContext } from '../../../contexts/i18n';
import Typography from '../typography/typography';
import {
@ -11,13 +12,22 @@ import {
export default function RadioGroup({ options, name, selectedValue, onChange }) {
const t = useContext(I18nContext);
const hasRecommendation = Boolean(
options.find((option) => option.recommended),
);
return (
<div className="radio-group">
<div
className={classNames('radio-group', {
'radio-group--has-recommendation': hasRecommendation,
})}
>
{options.map((option) => {
const checked = option.value === selectedValue;
return (
<div className="radio-group__column" key={`${name}-${option.value}`}>
<label>
{hasRecommendation && (
<Typography
color={COLORS.SUCCESS3}
className="radio-group__column-recommended"
@ -25,7 +35,7 @@ export default function RadioGroup({ options, name, selectedValue, onChange }) {
>
{option.recommended ? t('recommendedGasLabel') : ''}
</Typography>
)}
<div className="radio-group__column-radio">
<input
type="radio"
@ -38,7 +48,7 @@ export default function RadioGroup({ options, name, selectedValue, onChange }) {
<div className="radio-group__column-line"></div>
<div className="radio-group__column-horizontal-line"></div>
<Typography
color={COLORS.UI4}
color={checked ? COLORS.BLACK : COLORS.UI4}
fontWeight={FONT_WEIGHT.BOLD}
variant={TYPOGRAPHY.H7}
className="radio-group__column-label"

@ -106,6 +106,7 @@ export default class UnitInput extends PureComponent {
ref={(ref) => {
this.unitInput = ref;
}}
autoFocus
/>
{suffix && <div className="unit-input__suffix">{suffix}</div>}
</div>

@ -0,0 +1,47 @@
/* eslint-disable react/prop-types */
import React, { useEffect } from 'react';
import { text } from '@storybook/addon-knobs';
import { store } from '../../../.storybook/preview';
import { suggestedTokens } from '../../../.storybook/initial-states/approval-screens/add-suggested-token';
import { updateMetamaskState } from '../../store/actions';
import ConfirmAddSuggestedToken from '.';
export default {
title: 'Confirmation Screens',
};
const PageSet = ({ children }) => {
const symbol = text('symbol', 'META');
const image = text('Icon URL', 'metamark.svg');
const state = store.getState();
const suggestedTokensState = state.metamask.suggestedTokens;
useEffect(() => {
suggestedTokensState[
'0x6b175474e89094c44da98b954eedeac495271d0f'
].symbol = symbol;
store.dispatch(
updateMetamaskState({ suggestedTokens: suggestedTokensState }),
);
}, [symbol, suggestedTokensState]);
useEffect(() => {
suggestedTokensState[
'0x6b175474e89094c44da98b954eedeac495271d0f'
].image = image;
store.dispatch(
updateMetamaskState({ suggestedTokens: suggestedTokensState }),
);
}, [image, suggestedTokensState]);
return children;
};
export const AddSuggestedToken = () => {
store.dispatch(updateMetamaskState({ suggestedTokens, pendingTokens: {} }));
return (
<PageSet>
<ConfirmAddSuggestedToken />
</PageSet>
);
};

@ -0,0 +1,38 @@
/* eslint-disable react/prop-types */
import React, { useEffect } from 'react';
import { createBrowserHistory } from 'history';
import { text } from '@storybook/addon-knobs';
import { store } from '../../../.storybook/preview';
import { tokens } from '../../../.storybook/initial-states/approval-screens/add-token';
import { updateMetamaskState } from '../../store/actions';
import ConfirmAddToken from '.';
export default {
title: 'Confirmation Screens',
};
const history = createBrowserHistory();
const PageSet = ({ children }) => {
const symbol = text('symbol', 'TRDT');
const state = store.getState();
const pendingTokensState = state.metamask.pendingTokens;
// only change the first token in the list
useEffect(() => {
const pendingTokens = { ...pendingTokensState };
pendingTokens['0x33f90dee07c6e8b9682dd20f73e6c358b2ed0f03'].symbol = symbol;
store.dispatch(updateMetamaskState({ pendingTokens }));
}, [symbol, pendingTokensState]);
return children;
};
export const AddToken = () => {
store.dispatch(updateMetamaskState({ pendingTokens: tokens }));
return (
<PageSet>
<ConfirmAddToken history={history} />
</PageSet>
);
};

@ -0,0 +1,22 @@
import React from 'react';
import { store } from '../../../.storybook/preview';
import ConfirmTokenTransactionBase from './confirm-token-transaction-base.component';
export default {
title: 'Confirmation Screens',
};
const state = store.getState();
export const ConfirmTokenTransaction = () => {
const { metamask, confirmTransaction } = state;
const { currentCurrency } = metamask;
const { fiatTransactionTotal } = confirmTransaction;
return (
<ConfirmTokenTransactionBase
currentCurrency={currentCurrency}
fiatTransactionTotal={fiatTransactionTotal}
tokenSymbol="DAI"
/>
);
};

@ -116,6 +116,7 @@ export default class ConfirmTransactionBase extends Component {
maxFeePerGas: PropTypes.string,
maxPriorityFeePerGas: PropTypes.string,
baseFeePerGas: PropTypes.string,
isMainnet: PropTypes.bool,
gasFeeIsCustom: PropTypes.bool,
};
@ -295,6 +296,7 @@ export default class ConfirmTransactionBase extends Component {
primaryTotalTextOverrideMaxAmount,
maxFeePerGas,
maxPriorityFeePerGas,
isMainnet,
} = this.props;
const { t } = this.context;
@ -315,6 +317,7 @@ export default class ConfirmTransactionBase extends Component {
return (
<UserPreferencedCurrencyDisplay
type={PRIMARY}
key="total-max-amount"
value={addHexes(txData.txParams.value, hexMaximumTransactionFee)}
hideLabel={!useNativeCurrencyAsPrimaryCurrency}
/>
@ -335,6 +338,7 @@ export default class ConfirmTransactionBase extends Component {
return (
<UserPreferencedCurrencyDisplay
type={PRIMARY}
key="total-detail-value"
value={hexTransactionTotal}
hideLabel={!useNativeCurrencyAsPrimaryCurrency}
/>
@ -353,6 +357,7 @@ export default class ConfirmTransactionBase extends Component {
return (
<UserPreferencedCurrencyDisplay
type={SECONDARY}
key="total-detail-text"
value={hexTransactionTotal}
hideLabel={Boolean(useNativeCurrencyAsPrimaryCurrency)}
/>
@ -419,7 +424,11 @@ export default class ConfirmTransactionBase extends Component {
<InfoTooltip
contentText={
<>
<p>{t('transactionDetailGasTooltipIntro')}</p>
<p>
{t('transactionDetailGasTooltipIntro', [
isMainnet ? t('networkNameEthereum') : '',
])}
</p>
<p>{t('transactionDetailGasTooltipExplanation')}</p>
<p>
<a

@ -28,6 +28,7 @@ export default class MobileSyncPage extends Component {
requestRevealSeedWords: PropTypes.func.isRequired,
exportAccounts: PropTypes.func.isRequired,
keyrings: PropTypes.array,
hideWarning: PropTypes.func.isRequired,
};
state = {
@ -277,6 +278,9 @@ export default class MobileSyncPage extends Component {
}
componentWillUnmount() {
if (this.state.error) {
this.props.hideWarning();
}
this.clearTimeouts();
this.disconnectWebsockets();
}

@ -4,6 +4,7 @@ import {
requestRevealSeedWords,
fetchInfoToSync,
exportAccounts,
hideWarning,
} from '../../store/actions';
import { getMostRecentOverviewPage } from '../../ducks/history/history';
import { getMetaMaskKeyrings } from '../../selectors';
@ -17,6 +18,7 @@ const mapDispatchToProps = (dispatch) => {
displayWarning: (message) => dispatch(displayWarning(message || null)),
exportAccounts: (password, addresses) =>
dispatch(exportAccounts(password, addresses)),
hideWarning: () => dispatch(hideWarning()),
};
};

@ -36,7 +36,9 @@ export default class EnsInput extends Component {
}
onPaste = (event) => {
event.clipboardData.items[0].getAsString((text) => {
if (event.clipboardData.items?.length) {
const clipboardItem = event.clipboardData.items[0];
clipboardItem?.getAsString((text) => {
const input = text.trim();
if (
!isBurnAddress(input) &&
@ -45,6 +47,7 @@ export default class EnsInput extends Component {
this.props.onPaste(input);
}
});
}
};
onChange = ({ target: { value } }) => {

@ -0,0 +1,10 @@
import React from 'react';
import AwaitingSignatures from './awaiting-signatures';
export default {
title: 'Signatures',
};
export const AwaitingSignaturesComponent = () => {
return <AwaitingSignatures />;
};

@ -5,7 +5,7 @@ const tokens = [
{
primaryLabel: 'MetaMark (META)',
name: 'MetaMark',
iconUrl: '.storybook/images/metamark.svg',
iconUrl: 'metamark.svg',
erc20: true,
decimals: 18,
symbol: 'META',
@ -14,7 +14,7 @@ const tokens = [
{
primaryLabel: '0x (ZRX)',
name: '0x',
iconUrl: '.storybook/images/0x.svg',
iconUrl: '0x.svg',
erc20: true,
symbol: 'ZRX',
decimals: 18,
@ -23,7 +23,7 @@ const tokens = [
{
primaryLabel: 'AirSwap Token (AST)',
name: 'AirSwap Token',
iconUrl: '.storybook/images/AST.png',
iconUrl: 'AST.png',
erc20: true,
symbol: 'AST',
decimals: 4,
@ -32,7 +32,7 @@ const tokens = [
{
primaryLabel: 'Basic Attention Token (BAT)',
name: 'Basic Attention Token',
iconUrl: '.storybook/images/BAT_icon.svg',
iconUrl: 'BAT_icon.svg',
erc20: true,
symbol: 'BAT',
decimals: 18,
@ -41,7 +41,7 @@ const tokens = [
{
primaryLabel: 'Civil Token (CVL)',
name: 'Civil Token',
iconUrl: '.storybook/images/CVL_token.svg',
iconUrl: 'CVL_token.svg',
erc20: true,
symbol: 'CVL',
decimals: 18,
@ -50,7 +50,7 @@ const tokens = [
{
primaryLabel: 'Gladius (GLA)',
name: 'Gladius',
iconUrl: '.storybook/images/gladius.svg',
iconUrl: 'gladius.svg',
erc20: true,
symbol: 'GLA',
decimals: 8,
@ -59,7 +59,7 @@ const tokens = [
{
primaryLabel: 'Gnosis Token (GNO)',
name: 'Gnosis Token',
iconUrl: '.storybook/images/gnosis.svg',
iconUrl: 'gnosis.svg',
erc20: true,
symbol: 'GNO',
decimals: 18,
@ -68,7 +68,7 @@ const tokens = [
{
primaryLabel: 'OmiseGO (OMG)',
name: 'OmiseGO',
iconUrl: '.storybook/images/omg.jpg',
iconUrl: 'omg.jpg',
erc20: true,
symbol: 'OMG',
decimals: 18,
@ -77,7 +77,7 @@ const tokens = [
{
primaryLabel: 'Sai Stablecoin v1.0 (SAI)',
name: 'Sai Stablecoin v1.0',
iconUrl: '.storybook/images/sai.svg',
iconUrl: 'sai.svg',
erc20: true,
symbol: 'SAI',
decimals: 18,
@ -86,7 +86,7 @@ const tokens = [
{
primaryLabel: 'Tether USD (USDT)',
name: 'Tether USD',
iconUrl: '.storybook/images/tether_usd.png',
iconUrl: 'tether_usd.png',
erc20: true,
symbol: 'USDT',
decimals: 6,
@ -95,7 +95,7 @@ const tokens = [
{
primaryLabel: 'WednesdayCoin (WED)',
name: 'WednesdayCoin',
iconUrl: '.storybook/images/wed.png',
iconUrl: 'wed.png',
erc20: true,
symbol: 'WED',
decimals: 18,
@ -104,7 +104,7 @@ const tokens = [
{
primaryLabel: 'Wrapped BTC (WBTC)',
name: 'Wrapped BTC',
iconUrl: '.storybook/images/wbtc.png',
iconUrl: 'wbtc.png',
erc20: true,
symbol: 'WBTC',
decimals: 8,

@ -52,7 +52,7 @@ exports[`FeeCard renders the component with EIP-1559 enabled 2`] = `
class="fee-card__info-tooltip-container"
>
<div
aria-describedby="tippy-tooltip-6"
aria-describedby="tippy-tooltip-7"
class="info-tooltip__tooltip-container"
data-original-title="null"
data-tooltipped=""

@ -1556,15 +1556,7 @@
minimatch "^3.0.4"
strip-json-comments "^3.1.1"
"@ethereumjs/common@^2.3.1":
version "2.3.1"
resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.3.1.tgz#d692e3aff5adb35dd587dd1e6caab69e0ed2fa0b"
integrity sha512-V8hrULExoq0H4HFs3cCmdRGbgmipmlNzak6Xg34nHYfQyqkSdrCuflvYjyWmsNpI8GtrcZhzifAbgX/1C1Cjwg==
dependencies:
crc-32 "^1.2.0"
ethereumjs-util "^7.0.10"
"@ethereumjs/common@^2.4.0":
"@ethereumjs/common@^2.3.1", "@ethereumjs/common@^2.4.0":
version "2.4.0"
resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.4.0.tgz#2d67f6e6ba22246c5c89104e6b9a119fb3039766"
integrity sha512-UdkhFWzWcJCZVsj1O/H8/oqj/0RVYjLc1OhPjBrQdALAkQHpCp8xXI4WLnuGTADqTdJZww0NtgwG+TRPkXt27w==
@ -1572,15 +1564,7 @@
crc-32 "^1.2.0"
ethereumjs-util "^7.1.0"
"@ethereumjs/tx@^3.1.1", "@ethereumjs/tx@^3.1.4", "@ethereumjs/tx@^3.2.1":
version "3.2.1"
resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.2.1.tgz#65f5f1c11541764f08377a94ba4b0dcbbd67739e"
integrity sha512-i9V39OtKvwWos1uVNZxdVhd7zFOyzFLjgt69CoiOY0EmXugS0HjO3uxpLBSglDKFMRriuGqw6ddKEv+RP1UNEw==
dependencies:
"@ethereumjs/common" "^2.3.1"
ethereumjs-util "^7.0.10"
"@ethereumjs/tx@^3.3.0":
"@ethereumjs/tx@^3.1.1", "@ethereumjs/tx@^3.1.4", "@ethereumjs/tx@^3.2.1", "@ethereumjs/tx@^3.3.0":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.3.0.tgz#14ed1b7fa0f28e1cd61e3ecbdab824205f6a4378"
integrity sha512-yTwEj2lVzSMgE6Hjw9Oa1DZks/nKTWM8Wn4ykDNapBPua2f4nXO3qKnni86O6lgDj5fVNRqbDsD0yy7/XNGDEA==
@ -1603,21 +1587,6 @@
"@ethersproject/properties" ">=5.0.0-beta.131"
"@ethersproject/strings" ">=5.0.0-beta.130"
"@ethersproject/abi@5.0.13", "@ethersproject/abi@^5.0.10":
version "5.0.13"
resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.0.13.tgz#600a559c3730467716595658beaa2894b4352bcc"
integrity sha512-2coOH3D7ra1lwamKEH0HVc+Jbcsw5yfeCgmY8ekhCDualEiyyovD2qDcMBBcY3+kjoLHVTmo7ost6MNClxdOrg==
dependencies:
"@ethersproject/address" "^5.0.9"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/hash" "^5.0.10"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/abi@5.4.0", "@ethersproject/abi@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.4.0.tgz#a6d63bdb3672f738398846d4279fa6b6c9818242"
@ -1633,19 +1602,6 @@
"@ethersproject/properties" "^5.4.0"
"@ethersproject/strings" "^5.4.0"
"@ethersproject/abstract-provider@5.0.10", "@ethersproject/abstract-provider@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.0.10.tgz#a533aed39a5f27312745c8c4c40fa25fc884831c"
integrity sha512-OSReY5iz94iIaPlRvLiJP8YVIvQLx4aUvMMnHWSaA/vTU8QHZmgNlt4OBdYV1+aFY8Xl+VRYiWBHq72ZDKXXCQ==
dependencies:
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/networks" "^5.0.7"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/transactions" "^5.0.9"
"@ethersproject/web" "^5.0.12"
"@ethersproject/abstract-provider@5.4.0", "@ethersproject/abstract-provider@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.4.0.tgz#415331031b0f678388971e1987305244edc04e1d"
@ -1672,17 +1628,6 @@
"@ethersproject/transactions" "^5.0.5"
"@ethersproject/web" "^5.0.6"
"@ethersproject/abstract-signer@5.0.14", "@ethersproject/abstract-signer@^5.0.10":
version "5.0.14"
resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.0.14.tgz#30ef912b0f86599d90fdffc65c110452e7b55cf1"
integrity sha512-JztBwVO7o5OHLh2vyjordlS4/1EjRyaECtc8vPdXTF1i4dXN+J0coeRoPN6ZFbBvi/YbaB6br2fvqhst1VQD/g==
dependencies:
"@ethersproject/abstract-provider" "^5.0.8"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/abstract-signer@5.4.0", "@ethersproject/abstract-signer@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.4.0.tgz#cd5f50b93141ee9f9f49feb4075a0b3eafb57d65"
@ -1705,17 +1650,6 @@
"@ethersproject/logger" "^5.0.5"
"@ethersproject/properties" "^5.0.3"
"@ethersproject/address@5.0.11", "@ethersproject/address@^5.0.9":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.0.11.tgz#12022e8c590c33939beb5ab18b401ecf585eac59"
integrity sha512-Et4GBdD8/tsBGjCEOKee9upN29qjL5kbRcmJifb4Penmiuh9GARXL2/xpXvEp5EW+EIW/rfCHFJrkYBgoQFQBw==
dependencies:
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/rlp" "^5.0.7"
"@ethersproject/address@5.4.0", "@ethersproject/address@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.4.0.tgz#ba2d00a0f8c4c0854933b963b9a3a9f6eb4a37a3"
@ -1739,13 +1673,6 @@
"@ethersproject/rlp" "^5.0.3"
bn.js "^4.4.0"
"@ethersproject/base64@5.0.9", "@ethersproject/base64@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.0.9.tgz#bb1f35d3dba92082a574d5e2418f9202a0a1a7e6"
integrity sha512-37RBz5LEZ9SlTNGiWCYFttnIN9J7qVs9Xo2EbqGqDH5LfW9EIji66S+YDMpXVo1zWDax1FkEldAoatxHK2gfgA==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/base64@5.4.0", "@ethersproject/base64@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.4.0.tgz#7252bf65295954c9048c7ca5f43e5c86441b2a9a"
@ -1760,14 +1687,6 @@
dependencies:
"@ethersproject/bytes" "^5.0.4"
"@ethersproject/basex@5.0.9", "@ethersproject/basex@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.0.9.tgz#00d727a031bac563cb8bb900955206f1bf3cf1fc"
integrity sha512-FANswl1IN3PS0eltQxH2aM2+utPrkLUVG4XVFi6SafRG9EpAqXCgycxC8PU90mPGhigYTpg9cnTB5mCZ6ejQjw==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/basex@5.4.0", "@ethersproject/basex@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.4.0.tgz#0a2da0f4e76c504a94f2b21d3161ed9438c7f8a6"
@ -1776,15 +1695,6 @@
"@ethersproject/bytes" "^5.4.0"
"@ethersproject/properties" "^5.4.0"
"@ethersproject/bignumber@5.0.15", "@ethersproject/bignumber@^5.0.13":
version "5.0.15"
resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.0.15.tgz#b089b3f1e0381338d764ac1c10512f0c93b184ed"
integrity sha512-MTADqnyacvdRwtKh7o9ujwNDSM1SDJjYDMYAzjIgjoi9rh6TY4suMbhCa3i2vh3SUXiXSICyTI8ui+NPdrZ9Lw==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
bn.js "^4.4.0"
"@ethersproject/bignumber@5.4.1", "@ethersproject/bignumber@^5.4.0":
version "5.4.1"
resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.4.1.tgz#64399d3b9ae80aa83d483e550ba57ea062c1042d"
@ -1803,13 +1713,6 @@
"@ethersproject/logger" "^5.0.5"
bn.js "^4.4.0"
"@ethersproject/bytes@5.0.11", "@ethersproject/bytes@^5.0.9":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.11.tgz#21118e75b1d00db068984c15530e316021101276"
integrity sha512-D51plLYY5qF05AsoVQwIZVLqlBkaTPVHVP/1WmmBIWyHB0cRW0C9kh0kx5Exo51rB63Hk8PfHxc7SmpoaQFEyg==
dependencies:
"@ethersproject/logger" "^5.0.8"
"@ethersproject/bytes@5.4.0", "@ethersproject/bytes@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.4.0.tgz#56fa32ce3bf67153756dbaefda921d1d4774404e"
@ -1824,12 +1727,12 @@
dependencies:
"@ethersproject/logger" "^5.0.5"
"@ethersproject/constants@5.0.10", "@ethersproject/constants@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.0.10.tgz#eb0c604fbc44c53ba9641eed31a1d0c9e1ebcadc"
integrity sha512-OSo8jxkHLDXieCy8bgOFR7lMfgPxEzKvSDdP+WAWHCDM8+orwch0B6wzkTmiQFgryAtIctrBt5glAdJikZ3hGw==
"@ethersproject/bytes@^5.0.9":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.0.11.tgz#21118e75b1d00db068984c15530e316021101276"
integrity sha512-D51plLYY5qF05AsoVQwIZVLqlBkaTPVHVP/1WmmBIWyHB0cRW0C9kh0kx5Exo51rB63Hk8PfHxc7SmpoaQFEyg==
dependencies:
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/constants@5.4.0", "@ethersproject/constants@^5.4.0":
version "5.4.0"
@ -1845,21 +1748,6 @@
dependencies:
"@ethersproject/bignumber" "^5.0.7"
"@ethersproject/contracts@5.0.12":
version "5.0.12"
resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.0.12.tgz#6d488db46221258399dfe80b89bf849b3afd7897"
integrity sha512-srijy31idjz8bE+gL1I6IRj2H4I9dUwfQ+QroLrIgNdGArqY8y2iFUKa3QTy+JBX26fJsdYiCQi1kKkaNpnMpQ==
dependencies:
"@ethersproject/abi" "^5.0.10"
"@ethersproject/abstract-provider" "^5.0.8"
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/address" "^5.0.9"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/contracts@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.4.0.tgz#e05fe6bd33acc98741e27d553889ec5920078abb"
@ -1876,20 +1764,6 @@
"@ethersproject/properties" "^5.4.0"
"@ethersproject/transactions" "^5.4.0"
"@ethersproject/hash@5.0.12", "@ethersproject/hash@^5.0.10":
version "5.0.12"
resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.0.12.tgz#1074599f7509e2ca2bb7a3d4f4e39ab3a796da42"
integrity sha512-kn4QN+fhNFbUgX3XZTZUaQixi0oyfIEY+hfW+KtkHu+rq7dV76oAIvaLEEynu1/4npOL38E4X4YI42gGZk+C0Q==
dependencies:
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/address" "^5.0.9"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/hash@5.4.0", "@ethersproject/hash@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.4.0.tgz#d18a8e927e828e22860a011f39e429d388344ae0"
@ -1918,24 +1792,6 @@
"@ethersproject/properties" "^5.0.4"
"@ethersproject/strings" "^5.0.4"
"@ethersproject/hdnode@5.0.10", "@ethersproject/hdnode@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.0.10.tgz#f7cdf154bf5d104c76dce2940745fc71d9e7eb1b"
integrity sha512-ZLwMtIcXK7xz2lSITDCl40W04CtRq4K9NwBxhCzdzPdaz6XnoJMwGz2YMVLg+8ksseq+RYtTwIIXtlK6vyvQyg==
dependencies:
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/basex" "^5.0.7"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/pbkdf2" "^5.0.7"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/sha2" "^5.0.7"
"@ethersproject/signing-key" "^5.0.8"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/transactions" "^5.0.9"
"@ethersproject/wordlists" "^5.0.8"
"@ethersproject/hdnode@5.4.0", "@ethersproject/hdnode@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.4.0.tgz#4bc9999b9a12eb5ce80c5faa83114a57e4107cac"
@ -1954,25 +1810,6 @@
"@ethersproject/transactions" "^5.4.0"
"@ethersproject/wordlists" "^5.4.0"
"@ethersproject/json-wallets@5.0.12", "@ethersproject/json-wallets@^5.0.10":
version "5.0.12"
resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.0.12.tgz#8946a0fcce1634b636313a50330b7d30a24996e8"
integrity sha512-nac553zGZnOewpjlqbfy7WBl8m3y7qudzRsI2dCxrediYtPIVIs9f6Pbnou8vDmmp8X4/U4W788d+Ma88o+Gbg==
dependencies:
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/address" "^5.0.9"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/hdnode" "^5.0.8"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/pbkdf2" "^5.0.7"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/random" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/transactions" "^5.0.9"
aes-js "3.0.0"
scrypt-js "3.0.1"
"@ethersproject/json-wallets@5.4.0", "@ethersproject/json-wallets@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.4.0.tgz#2583341cfe313fc9856642e8ace3080154145e95"
@ -1992,14 +1829,6 @@
aes-js "3.0.0"
scrypt-js "3.0.1"
"@ethersproject/keccak256@5.0.9", "@ethersproject/keccak256@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.0.9.tgz#ca0d86e4af56c13b1ef25e533bde3e96d28f647d"
integrity sha512-zhdUTj6RGtCJSgU+bDrWF6cGbvW453LoIC1DSNWrTlXzC7WuH4a+EiPrgc7/kNoRxerKuA/cxYlI8GwNtVtDlw==
dependencies:
"@ethersproject/bytes" "^5.0.9"
js-sha3 "0.5.7"
"@ethersproject/keccak256@5.4.0", "@ethersproject/keccak256@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.4.0.tgz#7143b8eea4976080241d2bd92e3b1f1bf7025318"
@ -2016,11 +1845,6 @@
"@ethersproject/bytes" "^5.0.4"
js-sha3 "0.5.7"
"@ethersproject/logger@5.0.10", "@ethersproject/logger@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.10.tgz#fd884688b3143253e0356ef92d5f22d109d2e026"
integrity sha512-0y2T2NqykDrbPM3Zw9RSbPkDOxwChAL8detXaom76CfYoGxsOnRP/zTX8OUAV+x9LdwzgbWvWmeXrc0M7SuDZw==
"@ethersproject/logger@5.4.0", "@ethersproject/logger@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.4.0.tgz#f39adadf62ad610c420bcd156fd41270e91b3ca9"
@ -2031,12 +1855,10 @@
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.6.tgz#faa484203e86e08be9e07fef826afeef7183fe88"
integrity sha512-FrX0Vnb3JZ1md/7GIZfmJ06XOAA8r3q9Uqt9O5orr4ZiksnbpXKlyDzQtlZ5Yv18RS8CAUbiKH9vwidJg1BPmQ==
"@ethersproject/networks@5.0.9", "@ethersproject/networks@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.0.9.tgz#ec5da11e4d4bfd69bec4eaebc9ace33eb9569279"
integrity sha512-L8+VCQwArBLGkxZb/5Ns/OH/OxP38AcaveXIxhUTq+VWpXYjrObG3E7RDQIKkUx1S1IcQl/UWTz5w4DK0UitJg==
dependencies:
"@ethersproject/logger" "^5.0.8"
"@ethersproject/logger@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.0.10.tgz#fd884688b3143253e0356ef92d5f22d109d2e026"
integrity sha512-0y2T2NqykDrbPM3Zw9RSbPkDOxwChAL8detXaom76CfYoGxsOnRP/zTX8OUAV+x9LdwzgbWvWmeXrc0M7SuDZw==
"@ethersproject/networks@5.4.1", "@ethersproject/networks@^5.4.0":
version "5.4.1"
@ -2052,14 +1874,6 @@
dependencies:
"@ethersproject/logger" "^5.0.5"
"@ethersproject/pbkdf2@5.0.9", "@ethersproject/pbkdf2@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.0.9.tgz#be39c7f0a66c0d3cb1ad1dbb12a78e9bcdf9b5ae"
integrity sha512-ItE/wQ/WVw/ajEHPUVgfu0aEvksPgOQc+278bke8sGKnGO3ppjmqp0MHh17tHc1EBTzJbSms5aLIqc56qZ/oiA==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/sha2" "^5.0.7"
"@ethersproject/pbkdf2@5.4.0", "@ethersproject/pbkdf2@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.4.0.tgz#ed88782a67fda1594c22d60d0ca911a9d669641c"
@ -2068,13 +1882,6 @@
"@ethersproject/bytes" "^5.4.0"
"@ethersproject/sha2" "^5.4.0"
"@ethersproject/properties@5.0.9", "@ethersproject/properties@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.0.9.tgz#d7aae634680760136ea522e25c3ef043ec15b5c2"
integrity sha512-ZCjzbHYTw+rF1Pn8FDCEmx3gQttwIHcm/6Xee8g/M3Ga3SfW4tccNMbs5zqnBH0E4RoOPaeNgyg1O68TaF0tlg==
dependencies:
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties@5.4.0", "@ethersproject/properties@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.4.0.tgz#38ba20539b44dcc5d5f80c45ad902017dcdbefe7"
@ -2089,30 +1896,12 @@
dependencies:
"@ethersproject/logger" "^5.0.5"
"@ethersproject/providers@5.0.24":
version "5.0.24"
resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.0.24.tgz#4c638a029482d052faa18364b5e0e2d3ddd9c0cb"
integrity sha512-M4Iw1r4gGJkt7ZUa++iREuviKL/DIpmIMsaUlVlXtV+ZrUXeN8xQ3zOTrbz7R4h9W9oljBZM7i4D3Kn1krJ30A==
"@ethersproject/properties@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.0.9.tgz#d7aae634680760136ea522e25c3ef043ec15b5c2"
integrity sha512-ZCjzbHYTw+rF1Pn8FDCEmx3gQttwIHcm/6Xee8g/M3Ga3SfW4tccNMbs5zqnBH0E4RoOPaeNgyg1O68TaF0tlg==
dependencies:
"@ethersproject/abstract-provider" "^5.0.8"
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/address" "^5.0.9"
"@ethersproject/basex" "^5.0.7"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/hash" "^5.0.10"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/networks" "^5.0.7"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/random" "^5.0.7"
"@ethersproject/rlp" "^5.0.7"
"@ethersproject/sha2" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/transactions" "^5.0.9"
"@ethersproject/web" "^5.0.12"
bech32 "1.1.4"
ws "7.2.3"
"@ethersproject/providers@5.4.2":
version "5.4.2"
@ -2139,14 +1928,6 @@
bech32 "1.1.4"
ws "7.4.6"
"@ethersproject/random@5.0.9", "@ethersproject/random@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.0.9.tgz#1903d4436ba66e4c8ac77968b16f756abea3a0d0"
integrity sha512-DANG8THsKqFbJOantrxumtG6gyETNE54VfbsWa+SQAT8WKpDo9W/X5Zhh73KuhClaey1UI32uVmISZeq/Zxn1A==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/random@5.4.0", "@ethersproject/random@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.4.0.tgz#9cdde60e160d024be39cc16f8de3b9ce39191e16"
@ -2155,14 +1936,6 @@
"@ethersproject/bytes" "^5.4.0"
"@ethersproject/logger" "^5.4.0"
"@ethersproject/rlp@5.0.9", "@ethersproject/rlp@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.0.9.tgz#da205bf8a34d3c3409eb73ddd237130a4b376aff"
integrity sha512-ns1U7ZMVeruUW6JXc4om+1w3w4ynHN/0fpwmeNTsAjwGKoF8SAUgue6ylKpHKWSti2idx7jDxbn8hNNFHk67CA==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/rlp@5.4.0", "@ethersproject/rlp@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.4.0.tgz#de61afda5ff979454e76d3b3310a6c32ad060931"
@ -2179,15 +1952,6 @@
"@ethersproject/bytes" "^5.0.4"
"@ethersproject/logger" "^5.0.5"
"@ethersproject/sha2@5.0.9", "@ethersproject/sha2@^5.0.7":
version "5.0.9"
resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.0.9.tgz#41275ee03e6e1660b3c997754005e089e936adc6"
integrity sha512-5FH4s47gM7N1fFAYQ1+m7aX0SbLg0Xr+6tvqndmNqc382/qBIbzXiGlUookrsjlPb6gLNurnTssCXjNM72J6lQ==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
hash.js "1.1.3"
"@ethersproject/sha2@5.4.0", "@ethersproject/sha2@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.4.0.tgz#c9a8db1037014cbc4e9482bd662f86c090440371"
@ -2197,16 +1961,6 @@
"@ethersproject/logger" "^5.4.0"
hash.js "1.1.7"
"@ethersproject/signing-key@5.0.11", "@ethersproject/signing-key@^5.0.4", "@ethersproject/signing-key@^5.0.8":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.0.11.tgz#19fc5c4597e18ad0a5efc6417ba5b74069fdd2af"
integrity sha512-Jfcru/BGwdkXhLxT+8WCZtFy7LL0TPFZw05FAb5asxB/MyVsEfNdNxGDtjVE9zXfmRSPe/EusXYY4K7wcygOyQ==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
elliptic "6.5.4"
"@ethersproject/signing-key@5.4.0", "@ethersproject/signing-key@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.4.0.tgz#2f05120984e81cf89a3d5f6dec5c68ee0894fbec"
@ -2219,16 +1973,15 @@
elliptic "6.5.4"
hash.js "1.1.7"
"@ethersproject/solidity@5.0.10":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.0.10.tgz#128c9289761cf83d81ff62a1195d6079a924a86c"
integrity sha512-8OG3HLqynWXDA6mVIHuHfF/ojTTwBahON7hc9GAKCqglzXCkVA3OpyxOJXPzjHClRIAUUiU7r9oy9Z/nsjtT/g==
"@ethersproject/signing-key@^5.0.4":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.0.11.tgz#19fc5c4597e18ad0a5efc6417ba5b74069fdd2af"
integrity sha512-Jfcru/BGwdkXhLxT+8WCZtFy7LL0TPFZw05FAb5asxB/MyVsEfNdNxGDtjVE9zXfmRSPe/EusXYY4K7wcygOyQ==
dependencies:
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/sha2" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
elliptic "6.5.4"
"@ethersproject/solidity@5.4.0":
version "5.4.0"
@ -2241,15 +1994,6 @@
"@ethersproject/sha2" "^5.4.0"
"@ethersproject/strings" "^5.4.0"
"@ethersproject/strings@5.0.10", "@ethersproject/strings@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.0.10.tgz#ddce1e9724f4ac4f3f67e0cac0b48748e964bfdb"
integrity sha512-KAeoS1tZ9/5ECXiIZA6S6hywbD0so2VmuW+Wfyo5EDXeyZ6Na1nxTPhTnW7voQmjbeYJffCrOc0qLFJeylyg7w==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/strings@5.4.0", "@ethersproject/strings@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.4.0.tgz#fb12270132dd84b02906a8d895ae7e7fa3d07d9a"
@ -2268,21 +2012,6 @@
"@ethersproject/constants" "^5.0.4"
"@ethersproject/logger" "^5.0.5"
"@ethersproject/transactions@5.0.11", "@ethersproject/transactions@^5.0.9":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.0.11.tgz#b31df5292f47937136a45885d6ee6112477c13df"
integrity sha512-ftsRvR9+gQp7L63F6+XmstvsZ4w8GtWvQB08e/zB+oB86Fnhq8+i/tkgpJplSHC8I/qgiCisva+M3u2GVhDFPA==
dependencies:
"@ethersproject/address" "^5.0.9"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/rlp" "^5.0.7"
"@ethersproject/signing-key" "^5.0.8"
"@ethersproject/transactions@5.4.0", "@ethersproject/transactions@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.4.0.tgz#a159d035179334bd92f340ce0f77e83e9e1522e0"
@ -2313,15 +2042,6 @@
"@ethersproject/rlp" "^5.0.3"
"@ethersproject/signing-key" "^5.0.4"
"@ethersproject/units@5.0.11":
version "5.0.11"
resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.0.11.tgz#f82f6e353ac0d6fa43b17337790f1f9aa72cb4c8"
integrity sha512-nOSPmcCWyB/dwoBRhhTtPGCsTbiXqmc7Q0Adwvafc432AC7hy3Fj3IFZtnSXsbtJ/GdHCIUIoA8gtvxSsFuBJg==
dependencies:
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/constants" "^5.0.8"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/units@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.4.0.tgz#d57477a4498b14b88b10396062c8cbbaf20c79fe"
@ -2331,27 +2051,6 @@
"@ethersproject/constants" "^5.4.0"
"@ethersproject/logger" "^5.4.0"
"@ethersproject/wallet@5.0.12":
version "5.0.12"
resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.0.12.tgz#bfb96f95e066b4b1b4591c4615207b87afedda8b"
integrity sha512-rboJebGf47/KPZrKZQdYg9BAYuXbc/OwcUyML1K1f2jnJeo1ObWV11U1PAWTjTbhhSy6/Fg+34GO2yMb5Dt1Rw==
dependencies:
"@ethersproject/abstract-provider" "^5.0.8"
"@ethersproject/abstract-signer" "^5.0.10"
"@ethersproject/address" "^5.0.9"
"@ethersproject/bignumber" "^5.0.13"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/hash" "^5.0.10"
"@ethersproject/hdnode" "^5.0.8"
"@ethersproject/json-wallets" "^5.0.10"
"@ethersproject/keccak256" "^5.0.7"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/random" "^5.0.7"
"@ethersproject/signing-key" "^5.0.8"
"@ethersproject/transactions" "^5.0.9"
"@ethersproject/wordlists" "^5.0.8"
"@ethersproject/wallet@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.4.0.tgz#fa5b59830b42e9be56eadd45a16a2e0933ad9353"
@ -2373,17 +2072,6 @@
"@ethersproject/transactions" "^5.4.0"
"@ethersproject/wordlists" "^5.4.0"
"@ethersproject/web@5.0.14", "@ethersproject/web@^5.0.12":
version "5.0.14"
resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.0.14.tgz#6e7bebdd9fb967cb25ee60f44d9218dc0803bac4"
integrity sha512-QpTgplslwZ0Sp9oKNLoRuS6TKxnkwfaEk3gr7zd7XLF8XBsYejsrQO/03fNfnMx/TAT/RR6WEw/mbOwpRSeVRA==
dependencies:
"@ethersproject/base64" "^5.0.7"
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/web@5.4.0", "@ethersproject/web@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.4.0.tgz#49fac173b96992334ed36a175538ba07a7413d1f"
@ -2406,17 +2094,6 @@
"@ethersproject/properties" "^5.0.3"
"@ethersproject/strings" "^5.0.4"
"@ethersproject/wordlists@5.0.10", "@ethersproject/wordlists@^5.0.8":
version "5.0.10"
resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.0.10.tgz#177b9a0b4d72b9c4f304d08b36612d6c60e9b896"
integrity sha512-jWsEm1iJzpg9SCXnNfFz+tcp4Ofzv0TJb6mj+soCNcar9GcT0yGz62ZsHC3pLQWaF4LkCzGwRJHJTXKjHQfG1A==
dependencies:
"@ethersproject/bytes" "^5.0.9"
"@ethersproject/hash" "^5.0.10"
"@ethersproject/logger" "^5.0.8"
"@ethersproject/properties" "^5.0.7"
"@ethersproject/strings" "^5.0.8"
"@ethersproject/wordlists@5.4.0", "@ethersproject/wordlists@^5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.4.0.tgz#f34205ec3bbc9e2c49cadaee774cf0b07e7573d7"
@ -3039,29 +2716,24 @@
react-is "^16.8.0"
"@metamask/auto-changelog@^2.1.0":
version "2.4.0"
resolved "https://registry.yarnpkg.com/@metamask/auto-changelog/-/auto-changelog-2.4.0.tgz#d249034a5010060e4db2addfc27863787fe4546c"
integrity sha512-6kIeKT4vy18dKUQEIsfIwVGBHDcLO3jBZB0klRDD+CayAqjh3Rcpi/AXr6NPI+c0rF802vAbqMX+/KFaU3scVg==
version "2.5.0"
resolved "https://registry.yarnpkg.com/@metamask/auto-changelog/-/auto-changelog-2.5.0.tgz#078f38142a3086fdb5556c758969a015c71dfdc9"
integrity sha512-39FeU98Poll3eTqv/bggqo3Yisza0WQJ8l9IiYloMVa2LV8XqTNqVkS4cNEU/5yq62n47JSAv6lZBtWCqeAjZQ==
dependencies:
diff "^5.0.0"
execa "^5.1.1"
semver "^7.3.5"
yargs "^17.0.1"
"@metamask/contract-metadata@^1.19.0":
version "1.25.0"
resolved "https://registry.yarnpkg.com/@metamask/contract-metadata/-/contract-metadata-1.25.0.tgz#442ace91fb40165310764b68d8096d0017bb0492"
integrity sha512-yhmYB9CQPv0dckNcPoWDcgtrdUp0OgK0uvkRE5QIBv4b3qENI1/03BztvK2ijbTuMlORUpjPq7/1MQDUPoRPVw==
"@metamask/contract-metadata@^1.28.0":
"@metamask/contract-metadata@^1.19.0", "@metamask/contract-metadata@^1.28.0":
version "1.28.0"
resolved "https://registry.yarnpkg.com/@metamask/contract-metadata/-/contract-metadata-1.28.0.tgz#76796f5010aa4aa6d28bf6fe36392017cea687cb"
integrity sha512-QZj6Y1nmSs9BHufBS1GSuPX5TVFa5gbtMhEo/KRuSdKyY43OdlbBKuyT36/l5p30krlzfMX8bN0MAWqw3g0Bog==
"@metamask/controllers@^14.0.2":
version "14.0.2"
resolved "https://registry.yarnpkg.com/@metamask/controllers/-/controllers-14.0.2.tgz#5b7cc044e6c5442e9728a6923ab7d29c7a07b2f3"
integrity sha512-abR1GTDxyOI2+2+jl8xv0WweFzHTmiuvvfe1y7qFtVKHpswO4p+xUjT7UmyDFe4nxsjqf6npct7ZDeS/EjEudg==
version "14.2.0"
resolved "https://registry.yarnpkg.com/@metamask/controllers/-/controllers-14.2.0.tgz#bed161ac3523fd525be79b0e557b132e2e2526e4"
integrity sha512-1Is1OJByDJo5GOKt02TiCCGhYlclcAT2IeoiqhSL6fTUT4Qc+2xwgjx42XeE7bzKIDwXpxafpHViCkO3d6IIdA==
dependencies:
"@ethereumjs/common" "^2.3.1"
"@ethereumjs/tx" "^3.2.1"
@ -8269,7 +7941,7 @@ chokidar@^2.0.0, chokidar@^2.1.1, chokidar@^2.1.8:
optionalDependencies:
fsevents "^1.2.7"
chownr@^1.1.1:
chownr@^1.1.1, chownr@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
@ -11729,31 +11401,7 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereum
safe-buffer "^5.1.1"
secp256k1 "^3.0.1"
ethereumjs-util@^7.0.10:
version "7.0.10"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.0.10.tgz#5fb7b69fa1fda0acc59634cf39d6b0291180fc1f"
integrity sha512-c/xThw6A+EAnej5Xk5kOzFzyoSnw0WX0tSlZ6pAsfGVvQj3TItaDg9b1+Fz1RJXA+y2YksKwQnuzgt1eY6LKzw==
dependencies:
"@types/bn.js" "^5.1.0"
bn.js "^5.1.2"
create-hash "^1.1.2"
ethereum-cryptography "^0.1.3"
ethjs-util "0.1.6"
rlp "^2.2.4"
ethereumjs-util@^7.0.2, ethereumjs-util@^7.0.9:
version "7.0.9"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.0.9.tgz#2038baeb30f370a3e576ec175bd70bbbb6807d42"
integrity sha512-cRqvYYKJoitq6vMKMf8pXeVwvTrX+dRD0JwHaYqm8jvogK14tqIoCWH/KUHcRwnVxVXEYF/o6pup5jRG4V0xzg==
dependencies:
"@types/bn.js" "^5.1.0"
bn.js "^5.1.2"
create-hash "^1.1.2"
ethereum-cryptography "^0.1.3"
ethjs-util "0.1.6"
rlp "^2.2.4"
ethereumjs-util@^7.1.0:
ethereumjs-util@^7.0.10, ethereumjs-util@^7.0.2, ethereumjs-util@^7.0.9, ethereumjs-util@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.0.tgz#e2b43a30bfcdbcb432a4eb42bd5f2393209b3fd5"
integrity sha512-kR+vhu++mUDARrsMMhsjjzPduRVAeundLGXucGRHF3B4oEltOUspfgCVco4kckucj3FMlLaZHUl9n7/kdmr6Tw==
@ -11860,43 +11508,7 @@ ethers@^4.0.20, ethers@^4.0.28:
uuid "2.0.1"
xmlhttprequest "1.8.0"
ethers@^5.0.8:
version "5.0.32"
resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.0.32.tgz#f009970be31d96a589bf0ce597a39c10c7e297a6"
integrity sha512-rORfGWR0HsA4pjKMMcWZorw12DHsXqfIAuPVHJsXt+vI24jvXcVqx+rLsSvgOoLdaCMdxiN5qlIq2+4axKG31g==
dependencies:
"@ethersproject/abi" "5.0.13"
"@ethersproject/abstract-provider" "5.0.10"
"@ethersproject/abstract-signer" "5.0.14"
"@ethersproject/address" "5.0.11"
"@ethersproject/base64" "5.0.9"
"@ethersproject/basex" "5.0.9"
"@ethersproject/bignumber" "5.0.15"
"@ethersproject/bytes" "5.0.11"
"@ethersproject/constants" "5.0.10"
"@ethersproject/contracts" "5.0.12"
"@ethersproject/hash" "5.0.12"
"@ethersproject/hdnode" "5.0.10"
"@ethersproject/json-wallets" "5.0.12"
"@ethersproject/keccak256" "5.0.9"
"@ethersproject/logger" "5.0.10"
"@ethersproject/networks" "5.0.9"
"@ethersproject/pbkdf2" "5.0.9"
"@ethersproject/properties" "5.0.9"
"@ethersproject/providers" "5.0.24"
"@ethersproject/random" "5.0.9"
"@ethersproject/rlp" "5.0.9"
"@ethersproject/sha2" "5.0.9"
"@ethersproject/signing-key" "5.0.11"
"@ethersproject/solidity" "5.0.10"
"@ethersproject/strings" "5.0.10"
"@ethersproject/transactions" "5.0.11"
"@ethersproject/units" "5.0.11"
"@ethersproject/wallet" "5.0.12"
"@ethersproject/web" "5.0.14"
"@ethersproject/wordlists" "5.0.10"
ethers@^5.4.1:
ethers@^5.0.8, ethers@^5.4.1:
version "5.4.2"
resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.4.2.tgz#91368e4d9c39f1111157de1c2aa1d8c1616c0f7b"
integrity sha512-JcFcNWjULzhm4tMp5cZKnU45zqN/c7rqabIITiUiQzZuP7LcYSD4WAbADo4Ja6G2orU4d/PbhAWGHGtAKYrB4Q==
@ -13179,7 +12791,7 @@ fs-extra@^9.0.0:
jsonfile "^6.0.1"
universalify "^1.0.0"
fs-minipass@^1.2.5:
fs-minipass@^1.2.5, fs-minipass@^1.2.7:
version "1.2.7"
resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
@ -19329,7 +18941,7 @@ minipass@^3.0.0, minipass@^3.1.1:
dependencies:
yallist "^4.0.0"
minizlib@^1.2.1:
minizlib@^1.2.1, minizlib@^1.3.3:
version "1.3.3"
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
@ -19795,12 +19407,7 @@ nanoid@^2.0.0, nanoid@^2.1.6:
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.11.tgz#ec24b8a758d591561531b4176a01e3ab4f0f0280"
integrity sha512-s/snB+WGm6uwi0WjsZdaVcuf3KJXlfGl2LcxgwkEwJF0D/BWzVWAZW/XY4bFaiR7s0Jk3FPvlnepg1H1b1UwlA==
nanoid@^3.1.12:
version "3.1.16"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.16.tgz#b21f0a7d031196faf75314d7c65d36352beeef64"
integrity sha512-+AK8MN0WHji40lj8AEuwLOvLSbWYApQpre/aFJZD71r43wVRLrOYS4FmJOPQYon1TqB462RzrrxlfA74XRES8w==
nanoid@^3.1.23:
nanoid@^3.1.12, nanoid@^3.1.23:
version "3.1.23"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz#f744086ce7c2bc47ee0a8472574d5c78e4183a81"
integrity sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==
@ -24453,7 +24060,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1, safe-buffer@~5.1.2:
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2:
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1:
version "5.2.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
@ -26314,7 +25921,20 @@ tar@6.0.2:
mkdirp "^1.0.3"
yallist "^4.0.0"
tar@^4, tar@^4.0.2:
tar@^4:
version "4.4.17"
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.17.tgz#44be5e3fa8353ee1d11db3b1401561223a5c3985"
integrity sha512-q7OwXq6NTdcYIa+k58nEMV3j1euhDhGCs/VRw9ymx/PbH0jtIM2+VTgDE/BW3rbLkrBUXs5fzEKgic5oUciu7g==
dependencies:
chownr "^1.1.4"
fs-minipass "^1.2.7"
minipass "^2.9.0"
minizlib "^1.3.3"
mkdirp "^0.5.5"
safe-buffer "^5.2.1"
yallist "^3.1.1"
tar@^4.0.2:
version "4.4.15"
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8"
integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA==
@ -28094,35 +27714,7 @@ web3-provider-engine@14.2.1:
xhr "^2.2.0"
xtend "^4.0.1"
web3-provider-engine@^16.0.1:
version "16.0.1"
resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-16.0.1.tgz#2600a39ede364cdc0a1fc773bf40a94f2177e605"
integrity sha512-/Eglt2aocXMBiDj7Se/lyZnNDaHBaoJlaUfbP5HkLJQC/HlGbR+3/W+dINirlJDhh7b54DzgykqY7ksaU5QgTg==
dependencies:
async "^2.5.0"
backoff "^2.5.0"
clone "^2.0.0"
cross-fetch "^2.1.0"
eth-block-tracker "^4.4.2"
eth-json-rpc-filters "^4.2.1"
eth-json-rpc-infura "^5.1.0"
eth-json-rpc-middleware "^6.0.0"
eth-rpc-errors "^3.0.0"
eth-sig-util "^1.4.2"
ethereumjs-block "^1.2.2"
ethereumjs-tx "^1.2.0"
ethereumjs-util "^5.1.5"
ethereumjs-vm "^2.3.4"
json-stable-stringify "^1.0.1"
promise-to-callback "^1.0.0"
readable-stream "^2.2.9"
request "^2.85.0"
semaphore "^1.0.3"
ws "^5.1.1"
xhr "^2.2.0"
xtend "^4.0.1"
web3-provider-engine@^16.0.3:
web3-provider-engine@^16.0.1, web3-provider-engine@^16.0.3:
version "16.0.3"
resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-16.0.3.tgz#8ff93edf3a8da2f70d7f85c5116028c06a0d9f07"
integrity sha512-Q3bKhGqLfMTdLvkd4TtkGYJHcoVQ82D1l8jTIwwuJp/sAp7VHnRYb9YJ14SW/69VMWoOhSpPLZV2tWb9V0WJoA==
@ -28621,7 +28213,7 @@ write@^0.2.1:
dependencies:
mkdirp "^0.5.1"
ws@7.1.0, ws@7.2.3, ws@7.4.6, ws@^1.1.0, ws@^3.0.0, ws@^5.1.1, ws@^7, ws@^7.2.0, ws@^7.4.0, ws@^7.4.4, ws@^7.4.6, ws@~7.4.2:
ws@7.1.0, ws@7.4.6, ws@^1.1.0, ws@^3.0.0, ws@^5.1.1, ws@^7, ws@^7.2.0, ws@^7.4.0, ws@^7.4.4, ws@^7.4.6, ws@~7.4.2:
version "7.4.6"
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
@ -28755,7 +28347,7 @@ yallist@^2.1.2:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3, yallist@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==

Loading…
Cancel
Save