The "scripts" portion of the build script has been refactored to pass
the "build target" throughout the file. The "build target" is the
target environment for the build, reflected by the command used to
start the build (e.g. "dev", "prod", "test", or "testDev").
Beforehand we derived the variables `devMode` and `testing` from this
build target, and passed these throughout the script. However, there is
a future change [1] that requires adding a new build target that acts
like "prod" in some ways but not others. It was easier to refactor to
pass through `buildTarget` directly than it was to add a _third_
boolean flag to indirectly represent the target.
The existence of the "testDev" target made it convenient to still have
the `testing` and `devMode` flag, so helper functions were added to
derive those values from the build target. I anticipate that these will
only be needed temporarily though. We will probably be able to get rid
of the `testDev` target and the related complexities when we start
adding more flags (like `--watch`[2] and `--minify`[3]) to the build
script directly.
[1]: https://github.com/MetaMask/metamask-extension/issues/15003
[2]: https://github.com/MetaMask/metamask-extension/issues/12767
[3]: https://github.com/MetaMask/metamask-extension/issues/12768
* Stop throwing an error when adding gas defaults for a simple send, that has data, to an address without a response code
* Lint fix
* fixup lint
Co-authored-by: brad-decker <bhdecker84@gmail.com>
* Use @testing-library/react for account-menu test
* Add testids for account menu accounts and balances
* Expand render wrapper functionality with metrics provider and router history
* Add testid to menu-droppo-container and menu-droppo
* Add network item nickname testid
* Use @testing-library/react for network dropdown test
* Add color icon testid
* No need for interpolation for testid in menu-droppo
* Fix "app-init" injection
The way we were injecting variables into the `app-init.js` bundle was
accidentally overwriting the bundle output with the raw `app-init.js`
source file. This is a problem because the bundling process handles a
lot of things we care about like source maps, polyfills and other
necessary Babel transformations, environment variable injection, and
minification.
Instead of using string replacement to inject variables, we are now
using environment variables. The old string replacement strategy has
been removed, and the `app-init.js` module is now generated using the
same process as our other bundles.
A new option, "extraEnvironmentVariables", was added to allow us to
inject environment variables specifically for this bundle.
* Add check to ensure APPLY_LAVAMOAT is set
* Stop throwing an error when adding gas defaults for a simple send, that has data, to an address without a response code
* Lint fix
* fixup lint
Co-authored-by: brad-decker <bhdecker84@gmail.com>
* Created a logic for the 'Add a block explorer URL'
Removed unused message
Message logic rollback
Modified history push operation
WIP: Pushing before rebasing
Applied requested changes
Removed unintenionally added code
* Lint fix
* Metrics fixed
* cast chainId to hex for metrics
* Update ui/pages/settings/networks-tab/networks-form/networks-form.js
Co-authored-by: Ariella Vu <20778143+digiwand@users.noreply.github.com>
Co-authored-by: Ariella Vu <20778143+digiwand@users.noreply.github.com>