Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Crowdin translations by Github Action #28996

Open
wants to merge 922 commits into
base: develop
Choose a base branch
from

Conversation

metamaskbot
Copy link
Collaborator

No description provided.

@metamaskbot metamaskbot requested a review from a team as a code owner December 6, 2024 15:27
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from bfd46e0 to 48faa78 Compare December 6, 2024 15:27
@metamaskbot metamaskbot added the team-bot Bot team (for MetaMask Bot) label Dec 6, 2024
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from 48faa78 to 7bcf84b Compare December 6, 2024 15:56
@github-actions github-actions bot requested review from a team, HowardBraham and kumavis as code owners December 6, 2024 15:56
Copy link

socket-security bot commented Dec 6, 2024

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Alert Package NoteSourceCI
New author npm/@chainsafe/[email protected] 🚫
Network access npm/@viem/[email protected] 🚫
Network access npm/@viem/[email protected] 🚫
Shell access npm/[email protected] 🚫
New author npm/[email protected] 🚫
Network access npm/[email protected] 🚫
Network access npm/@firebase/[email protected] 🚫
Network access npm/@firebase/[email protected] 🚫
AI-detected potential code anomaly npm/[email protected]
  • Notes: The code appears to be performing cryptographic operations related to application security and transaction processing. However, due to the obfuscated nature of some function calls and the unconventional style, there is a moderate security risk and low confidence in the overall integrity of the code.
  • Confidence: 1.00
  • Severity: 0.60
⚠︎
Unstable ownership npm/@metamask/[email protected] 🚫
Network access npm/@metamask/[email protected] 🚫
New author npm/@metamask/[email protected] 🚫
Network access npm/@metamask/[email protected] 🚫
New author npm/@metamask/[email protected] 🚫
Unstable ownership npm/@metamask/[email protected] 🚫
Network access npm/@metamask/[email protected] 🚫
Medium CVE npm/[email protected] ⚠︎
Network access npm/@metamask/[email protected] 🚫
Network access npm/@metamask/[email protected] 🚫
Network access npm/@metamask/[email protected] 🚫
New author npm/@metamask/[email protected] 🚫
Unstable ownership npm/@metamask/[email protected] 🚫

View full report↗︎

Next steps

What is new author?

A new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.

Scrutinize new collaborator additions to packages because they now have the ability to publish code into your dependency tree. Packages should avoid frequent or unnecessary additions or changes to publishing rights.

What is network access?

This module accesses the network.

Packages should remove all network access that is functionally unnecessary. Consumers should audit network access to ensure legitimate use.

What is shell access?

This module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.

Packages should avoid accessing the shell which can reduce portability, and make it easier for malicious shell access to be introduced.

What is an AI-detected potential code anomaly?

AI has identified unusual behaviors that may pose a security risk.

An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

What is unstable ownership?

A new collaborator has begun publishing package versions. Package stability and security risk may be elevated.

Try to reduce the number of authors you depend on to reduce the risk to malicious actors gaining access to your supply chain. Packages should remove inactive collaborators with publishing rights from packages on npm.

What is a medium CVE?

Contains a medium severity Common Vulnerability and Exposure (CVE).

Remove or replace dependencies that include known medium severity CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of ecosystem/package-name@version specifiers. e.g. @SocketSecurity ignore npm/[email protected] or ignore all packages with @SocketSecurity ignore-all

Copy link
Contributor

github-actions bot commented Dec 6, 2024

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 12 times, most recently from a985b35 to 2f5ca29 Compare December 10, 2024 10:28
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

Updates the `@metamask/multichain-transactions-controller` to the latest
version.

## **Related issues**

Fixes:

## **Manual testing steps**

1. Go to this page...
2.
3.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Co-authored-by: MetaMask Bot <[email protected]>
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 2 times, most recently from 13e3753 to 7b1d531 Compare February 24, 2025 12:40
zone-live and others added 2 commits February 24, 2025 14:08
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

Updates the `@metamask/assets-controller` to the latest version, in
order to get [this fix](MetaMask/core#5370) in.
## **Related issues**

Fixes: MetaMask/core#5370

## **Manual testing steps**

1. Go to this page...
2.
3.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Co-authored-by: MetaMask Bot <[email protected]>
## **Description**

The current URLs that we use for non-EVM networks does not scale well.
The `address` will not always be appended at the end of the URL.

Instead, we now use "sort-of" format strings to be able to place the
`address` wherever we want on the URL.

Also, since we're going to use block explorers to also link
transactions, we now use an object that holds multiple format URL
instead of just having a single one, see:
- #29323

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30085?quickstart=1)

## **Related issues**

N/A

## **Manual testing steps**

1. Checkout this branch and run `yarn`
2. Update the file `shared/lib/accounts/solana-wallet-snap.ts` with:
`export const SOLANA_WALLET_SNAP_ID: SnapId =
'local:http://localhost:8080' as SnapId;`
3. Update the filtering code in MultichainTransactionsController under
node modules to return transactions for devnet, currently only returns
for mainnet. It's under
`node_modules/@metamask/multichain-transactions-controller/dist/MultichainTransactionsController.cjs`
with:
```
MultichainNetwork.SolanaDevnet
instead of
MultichainNetwork.Solana
```
4. Run the extension with `yarn start:flask`
5. Run the Snap: https://github.com/MetaMask/snap-solana-wallet
    - Clone it
    - Run `yarn`
    - Run `yarn start`
6. Go to http://localhost:3000/
7. Install the Snap
8. In the extension, go to the Settings > Experimental > Enable Solana
account
9. Import a Solana account that has transactions already
10. Click one of the transactions and see it's details
11. Thats it! 🎉

## **Screenshots/Recordings**

### **Before**

### **After**

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Co-authored-by: António Regadas <[email protected]>
Co-authored-by: Antonio Regadas <[email protected]>
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 2 times, most recently from d696cb1 to 30f5f9b Compare February 24, 2025 14:54
)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

Adds the `multichain` feature code fence across places that are common
to Bitcoin and Solana.
Keeps `solana` for specific Solana code.

## **Related issues**

Fixes:

## **Manual testing steps**

Main, Flask builds run successfully.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from 30f5f9b to 653f8e3 Compare February 24, 2025 15:45
DDDDDanica and others added 3 commits February 24, 2025 16:07
…ort page (#30415)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**
We currently redirect users to this url when they reach out to support:
https://support.metamask.io/

We should update Extension client in order to redirect users to this url
when they reach out to support:
https://support.metamask.io/?metamask_version=11.16.12&metamask_profile_id=d9b2d63d-a233-4d4d-bd4b-5b3d5a6e2c5d&metamask_metametrics_id=f3b9c1d2-4a5e-4b6f-9e2d-8c4f7a1b3c6d

Passing MetaMask Identifier and the version of the app to support can
help facilitate debugging on our side.

This PR added 2 entry points for this feature: 
- settings page
- when page crushes and lead to error page 

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30415?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#3765

## **Manual testing steps**

1. Go to settings => about => visit our support center 
2. Choose confirm or don't share to proceed
3. Confirm with lead to MM support site with URL including version,
metametricsId, profileId
4. Don't share will lead to `https://support.metamask.io/` 
5. Go to developer options => trigger a page crash
6. Click contact support
7. The behavior is the same as above

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

https://www.loom.com/share/9a45da1640104488abb2c7b7000dbdc9?sid=069eee12-f244-44b6-8947-c213208570364
<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
…ns (#30474)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

Previously, the non-zero hex data alert could be visible by the user if
another alert was triggered for contract deployments. This PR hides it
for this case.

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30474?quickstart=1)

## **Related issues**

Fixes: #30359

## **Manual testing steps**

1. Go to this page...
2.
3.

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**
**Problem**: Multichain controllers identify chains and addresses in the
CAIP format, but Bridge components assume that everything is either
`Hex` and case-insensitive. This will cause unexpected behavior when
non-evm data is integrated into the experience, such as missing data due
to bad lookups, invalid bridge-api requests, page crashes due to hex to
decimal conversions

**Solution**: Decouple the quote parameters used within components from
the QuoteRequest object sent to the bridge-api. This enables
transforming inputs into any format required by the backend while
allowing any data to be passed around in the frontend

**Changes**
- chainIds and addresses are used as-is and not formatted until they are
needed for metrics or bridge-api requests
- bridge feature flags for chain config are identified by CAIP chain
addresses
- `GenericQuoteRequest` type covers all possible parameter types. this
is converted to `QuoteRequest` in fetchBridgeQuotes
- caip-formatters.ts formats ids and addresses
- chainId in metrics will be in caip format instead of hex

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30305?quickstart=1)

## **Related issues**

Fixes: MMS-1867

## **Manual testing steps**

This should not affect the EVM bridging flow. Testing in Flask will be
possible when the asset-picker is updated to include non-evm tokens:
#30313

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [X ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 3 times, most recently from a3959ee to 40a5cd2 Compare February 24, 2025 17:08
sahar-fehri and others added 2 commits February 24, 2025 17:14
## **Description**

This PR
1- Integrate SPL tokens into token list. 
2- Integrates the new `MultichainAssetsRatesController` to be used
instead of the of `ratesController`.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30311?quickstart=1)

## **Related issues**

Solana Effort

## **Manual testing steps**

1. clone snaps repo: `git clone
[email protected]:MetaMask/snap-solana-wallet.git`
2. Add .env to /packages/snap (ask around for this)
3. yarn && yarn start -> go to localhost:3000

In separate terminal, for extension:

4. checkout this branch
5. `yarn && yarn start:flask` _or_ `yarn && yarn webpack --watch --type
flask`
6. Go to localhost:3000 and install snap
Settings -> Experimental -> toggle Enable "Add a new Solana account
(Beta)"
Add the Solana Account (you may need to refresh extension)

You should see Solana tokens populating the token list!

Sort controls should be functional

## **Screenshots/Recordings**


https://github.com/user-attachments/assets/11e1aff1-f2ad-4542-952a-96f44c0e2533

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

---------

Co-authored-by: Nicholas Gambino <[email protected]>
Co-authored-by: Nick Gambino <[email protected]>
Co-authored-by: salimtb <[email protected]>
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

Adds new support link for `beta` build
This will be on every `beta` from now on.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30482?quickstart=1)

## **Related issues**

Fixes:

## **Manual testing steps**

1. Create a `beta` build
2. Go to Settings > Submit a ticket
3. Should navigate to the new link
4. The link on the footer should also navigate to the same website
5. Share feedback button should not be on the footer

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from 40a5cd2 to cd28632 Compare February 24, 2025 17:48
…d synced accounts limit removal #30317 (#30529)

## **Description**

This PR bumps:

- `@metamask/profile-sync-controller` from `^7.0.1` to `^8.1.0`

This package bump alongside the files changed will ensure that:
- Account syncing will only "care" about primary SRP HD keyring accounts
- This doesn't change the current implementation of account syncing, it
will only ensure that if multi-SRP releases before account syncing fully
supports it, nothing will break and account sync will still work at
least the same as of right now
- During account syncing, new accounts will be added in bulk
- This will vastly improve client performance by being able to batch RPC
calls that previously happened sequentially when we added accounts one
by one
    - We are then removing the maximum accounts to sync limit

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30529?quickstart=1)

## **Related issues**

Related to:
- https://consensyssoftware.atlassian.net/browse/IDENTITY-28
- https://consensyssoftware.atlassian.net/browse/IDENTITY-6

## **Manual testing steps**

1. Import an SRP with a lot of accounts synced
2. Verify that every account is added
3. Verify that you can sync more than 100 accounts

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 2 times, most recently from 15d105e to 7210eb2 Compare February 24, 2025 18:36
…y storage,… (#29826)

## **Description**

We currently decide whether the current running of initBackground in
background.js is a first time install (vs a post install
opening/loading/initialization, as would happen upon opening the browser
or reloading the service worker) by checking if the store exists (prior
to loadStateFromPersistance)
https://github.com/MetaMask/metamask-extension/blob/main/app/scripts/background.js#L1301

However, because state can be corrupted or possibly missing, we no
longer can assume that the absence of the store always means that it is
a first time install.

As such, it would be best if we could implement a way to track whether
it is a first time install that was not dependent on pre-existing stored
data. This PR does this by using the browser.runtime.onInstalled event
handler

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/29826?quickstart=1)

## **Related issues**

Fixes: MetaMask/MetaMask-planning#4192

## **Manual testing steps**

1. Checkout this branch, build, install and open
2. Open the service worker console and go to the networks tab
3. Go through onboarding and opt in to metametrics
4. There should be an "App installed" event in a network request sent to
segment
5. Complete onboarding
6. Reload the extension from chrome://extensions and open the service
worker. There should be no "App installed" event in a network request to
segment

Also, `test/e2e/tests/metrics/app-installed.spec.ts` should pass

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from 7210eb2 to 87516ee Compare February 24, 2025 19:44
…n connection flow (#30164)

## **Description**
This PR updates connection flow to prepare it for multichain
connection/permission/account requests.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30164?quickstart=1)

## **Related issues**
Fixes: MetaMask/MetaMask-planning#3899

Epic: MetaMask/MetaMask-planning#3660

Design:
https://www.figma.com/design/TVuSsLlBQGypLamTsjN1hG/Connection?node-id=286-3221&p=f&t=FkFfpgICtIpA2WBY-0

## **Notes**
- `AccountListItem` will be updated to handle network icons in this task
here: MetaMask/MetaMask-planning#4056 (when
done, it can be integrated into the connection flow, but for now it's
alright to not have it, since it's not a blocker).

## **Manual testing steps**
1. Go to test-dapp.
2. Request permissions / request to connect.
3. Check UI functionality and designs.
4. Check edge cases.
5. Confirm functionality of the entire flow.

## **Screenshots/Recordings**
### **Before**
![Screenshot 2025-02-11 at 17 26
59](https://github.com/user-attachments/assets/18348f1c-3c12-481f-a346-4ecf05585125)
![Screenshot 2025-02-11 at 17 27
27](https://github.com/user-attachments/assets/fe827d6c-2613-4343-afbf-3d8cd0b4a5c8)
![Screenshot 2025-02-11 at 17 27
57](https://github.com/user-attachments/assets/2152b2fb-c20c-4c61-beb5-ce782040fae3)

### **After**

https://github.com/user-attachments/assets/9e47ac9c-b0de-4e84-ba41-2d72c6d9fe10

#### Regular flows
![Screenshot 2025-02-13 at 20 20
04](https://github.com/user-attachments/assets/889953f8-cbe2-4c33-bf60-649b4d77040c)
![Screenshot 2025-02-13 at 20 20
18](https://github.com/user-attachments/assets/043c5270-be4f-4e41-84ed-53885505a3fe)
![Screenshot 2025-02-13 at 20 20
31](https://github.com/user-attachments/assets/fb32e6f1-f148-4bc7-93d6-ec0f8100b18d)
![Screenshot 2025-02-13 at 20 21
41](https://github.com/user-attachments/assets/991c02e5-5065-407b-922c-c198c285f31f)

#### IP address as a hostname and missing icon handling
![Screenshot 2025-02-13 at 23 19
41](https://github.com/user-attachments/assets/55707212-11e3-4734-a156-741c6ab1baf9)
![Screenshot 2025-02-13 at 23 19
19](https://github.com/user-attachments/assets/87371e18-09ad-4a94-bac6-4883da765d61)
![Screenshot 2025-02-13 at 23 19
59](https://github.com/user-attachments/assets/35aa3456-37e4-4d74-ac36-6b54f5744052)

#### Empty state edge case handling

https://github.com/user-attachments/assets/4ae87104-1e6e-4de3-aa3f-0b2f4b28e1fc

## **Pre-merge author checklist**
- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I’ve included tests if applicable
- [ ] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**
- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch 2 times, most recently from 3d5b5c8 to 56ae5c6 Compare February 25, 2025 00:21
gambinish and others added 2 commits February 25, 2025 00:41
…0517)

## **Description**

Fixes a bug, where the network badge on the top of the nft in the nft
details page did not correspond to the chain it belonged to. This
resulted in navigating to send screen on a network that the NFT did not
belong to.

This PR introduces two things:

1. Show correct NFT chain badge on NFT details screen, regardless of
which network user is on
2. When navigating to the send flow for an NFT, where the network the
NFT belongs to is not the globally selected chainId, change the network
on behalf of the user so that the globally selected chainId is the same
as the NFT being sent.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/30517?quickstart=1)

## **Related issues**

Fixes:

## **Manual testing steps**

1. Go to NFT Grid
2. Navigate to an NFT details screen on Ethereum Mainnet
3. Change global network to Linea
4. Should not see the network badge change on the NFT
5. Click send
6. See that network is changed on behalf of user from Linea back to
Ethereum, where the NFT belongs

## **Screenshots/Recordings**

### **Before**


https://github.com/user-attachments/assets/a2620999-6ce5-4d10-91ec-2531063ee2ca

### **After**


https://github.com/user-attachments/assets/06d294eb-73d6-46ba-aa75-b463d6da0a66

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask
Extension Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@github-actions github-actions bot force-pushed the l10n_crowdin_action branch from 56ae5c6 to 840c06e Compare February 25, 2025 01:19
Copy link

Report too large to display inline

View full report↗︎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team-bot Bot team (for MetaMask Bot)
Projects
None yet
Development

Successfully merging this pull request may close these issues.