-
Notifications
You must be signed in to change notification settings - Fork 5.4k
feat: expose Multichain API via window.postMessage for Firefox #30142
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
Merged
adonesky1
merged 1,080 commits into
main
from
jl/mmp-3725/caip-multichain-add-postMessage-stream-non-chromium
Apr 16, 2025
Merged
Changes from all commits
Commits
Show all changes
1080 commits
Select commit
Hold shift + click to select a range
6865dc5
Update LavaMoat policies
metamaskbot 0412864
dedupe
adonesky1 792306f
fix wallet locked behavior
adonesky1 dea12c0
Update LavaMoat policies
metamaskbot ba9efbb
revert unecessary change to fixtures
jiexi 7797d67
Merge branch 'main' into caip25-permission-migration
jiexi 608ac95
revert unecessary change to fixtures 2
jiexi 03624be
restore styling changes fixture
jiexi bd1e230
undo fixture changes that aren't needed
jiexi 76f77b0
Merge branch 'main' into caip25-permission-migration
jiexi 962c343
lint
jiexi 3d0cfdd
lint
jiexi aba2d8a
Merge branch 'main' into caip25-permission-migration
jiexi 1fb0f29
Update ui/components/multichain/edit-accounts-modal/edit-accounts-mod…
adonesky1 1bf080d
Multichain API E2E Test: handling when MetaMask is password locked (#…
ffmcgee725 5f96f94
Fix wallet_revokePermission spec
jiexi 4762e5c
Merge branch 'main' into caip25-permission-migration
jiexi 18440d6
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi 15fa319
Merge branch 'main' into caip25-permission-migration
jiexi c1b4b29
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi 540899a
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi ad7169d
Update LavaMoat policies
metamaskbot d52827e
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 9b74e4c
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi a15a668
use preview build 2ba45577
jiexi a91d9b4
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi f85ad62
Update LavaMoat policies
metamaskbot 6e0dbeb
remove caipPermissionAdapterMiddleware
jiexi 721c85b
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 58be906
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 66d0308
yarn dedupe
jiexi d4410f2
Update LavaMoat policies
metamaskbot b8ae6c3
lint?
jiexi 7f32e4d
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi 0c2a696
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi a69d816
remove unneeded hooks
jiexi cfe4339
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 67dae48
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi d65cabf
fix remove network
jiexi fc286d9
lint
jiexi ea676b4
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 1ff78c6
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 51ad9d9
yarn
jiexi 7199240
Restore wallet locked behavior
jiexi 96c77a2
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi ef209cd
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 0c27eb1
move missing caveat check
jiexi 6bcd229
lint
jiexi 464e972
remove connect.spec
jiexi 2d08956
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 5bd7d64
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 16f9f38
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi d5ab747
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi acdac1f
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 970ad3b
lint
jiexi 94c8dd9
WIP: adapt to new CAIP-25 approval UI
jiexi 08c32f0
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi ec9ddca
update approval UI to modify only evm portion of returned CAIP-25 per…
jiexi e0c548e
update wallet_createSession to pass in a validated CAIP-25 permission…
jiexi 95e1275
lint
jiexi c18440b
Fix connect page supported request chain id check
jiexi ffbf346
WIP: fix snaps request accounts
jiexi a265050
Fix snaps account grant
jiexi 9b6cf67
lint
jiexi 16c0b5d
lint
jiexi 80c0fd8
Update app/scripts/lib/rpc-method-middleware/handlers/wallet-createSe…
jiexi 4feca47
delete password-locked spec
jiexi c40afc6
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi c5cfbde
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi cf15677
remove console.log
jiexi 22e6e6b
loosen wallet_revokeSession fixture assert
jiexi 6d511af
remove secp256k1 v5 force resolution
adonesky1 a139124
yarn.lock reset
adonesky1 7cce39d
Update LavaMoat policies
metamaskbot 6867030
lint
adonesky1 3e7c8ae
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 66a4c65
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi 6311273
Update app/scripts/lib/rpc-method-middleware/handlers/request-account…
adonesky1 b07aac2
remove comment
adonesky1 ccb8644
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 164d189
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi 22957ef
Update LavaMoat policies
FrederikBolding 3613394
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi f054b45
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi 97a5097
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 3da5f33
Merge branch 'jl/caip-multichain-migrate-core' into jl/mmp-3725/caip-…
jiexi e22b7bc
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi f665043
yarn dedupe
jiexi ecdb0b8
Update app/scripts/metamask-controller.js
jiexi e1d3631
DRY multichain eth subscription add and removal
jiexi fd30905
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi f90be7c
update getRemovedAuthorizations to include removed scopes as well as …
jiexi 8a5f2cf
switch to createDeepEqualSelector
jiexi 551b56c
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 75db2f7
add default value to createUnsupportedMethodMiddleware
jiexi 1e20517
Bump api-specs to 0.10.14
jiexi 84cc007
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi d5445f1
yarn dedupe
jiexi eed6a10
Lint
jiexi 1d43a4a
codefence UNSUPPORTED_RPC_METHODS in MMC
jiexi 03a40aa
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 5152d05
bump @metamask/api-specs to 0.10.15
jiexi 7103714
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 57c5874
Fix sessionChanged not firing
jiexi c960844
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 701820c
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 68f4c35
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi f4b58b4
Add permission differs
jiexi de7ebf7
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 259e36a
Make createUnsupportedMethodMiddleware accept a Set again
jiexi 1230a38
Add back BARAD_DUR flag. Replaces Multichain API flask code fences. S…
jiexi e381705
rename BARAD_DUR to MULTICHAIN_API
jiexi a219b31
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 1cf91a7
Fix flipped connectExternalCaip condition
jiexi 1b8d61b
Fix MMC test
jiexi 4446500
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi b2be74f
fix bad merge
jiexi 986adf9
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 9b81f88
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 9ae93dc
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi db2d7b3
WIP update e2e tests
jiexi 454ffdc
Finish update e2e tests -ish
jiexi 7f6ad99
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi 2a454ef
Fix ganacheOptions renamed to localNodeOptions
jiexi d9c024c
Merge branch 'main', remote-tracking branch 'origin' into jl/caip-mul…
adonesky1 3cf5850
bump api-specs version
adonesky1 55f1101
Merge branch 'main' into jl/caip-multichain-migrate-core
adonesky1 1a59473
Merge branch 'main' into jl/caip-multichain-migrate-core
adonesky1 3130fa9
dedupe
adonesky1 f86d829
Update LavaMoat policies
metamaskbot 60c3e89
Update LavaMoat policies
metamaskbot 157a555
chore: update @metamask/multichain (#30495)
ffmcgee725 52304af
Rename supportedRequiredScopesObjects/supportedOptionalScopesObjects
mcmire 808cf97
Roll back change to ui/ducks/bridge/selectors.ts
mcmire 3b8eaf6
Merge branch 'main' into jl/caip-multichain-migrate-core
mcmire 166a8cb
Revert maskType: 'alpha' changes
mcmire 9a3599e
Add link to planning ticket
mcmire 5a48fbc
Update LavaMoat policies
metamaskbot c279367
Remove duplicate key
mcmire 30e82ba
Revert this file, we can update it later
mcmire fdf1cd0
Use provider.request and not provider.sendAsync
mcmire 825188e
Use createSelector instead of createDeepEqualSelector
mcmire 44d34d9
Merge branch 'main' into jl/caip-multichain-migrate-core
mcmire ee43107
Bump api-specs to make e2e test pass
mcmire 8d7d22d
Update LavaMoat policies
metamaskbot ec39686
Add missing MethodNames
mcmire 5074638
Perhaps fix api-specs-multichain
mcmire e50c7a2
Get more tests passing
mcmire a3f2b02
Fix lint issues
mcmire 7b0b747
Fix more tests
mcmire 8a8fb7f
Merge branch 'main' into jl/caip-multichain-migrate-core
mcmire 5d9aa06
Maybe get more tests to pass
mcmire 9c02711
Address nit in createSession handler
mcmire deb1b0f
Ohhhhh, I forgot the end()
mcmire 0079d5e
Fix wallet_invokeMethod tests
mcmire 0b26c90
Merge branch 'main' into jl/caip-multichain-migrate-core
mcmire 3917dd3
WIP
jiexi 2a173b5
fix
adonesky1 d5effdc
remove flask build flags
adonesky1 501c13d
Merge branch 'main' into jl/caip-multichain-migrate-core
mcmire cf5e8e3
Maybe mock the foo.io HTTP request in the multichain API tests?
mcmire 303b4e2
Add rejectApprovalRequestsForOrigin as a hook for multichain method m…
mcmire 9714b30
Mock foo.io in multichain API specs
mcmire b6102ed
Fix multichain-api test helpers
mcmire 6b690a1
Group new wallet_ constants with others
mcmire ea57e9a
Invert this condition
mcmire 63f0ba4
Fix lint error
mcmire c700391
Merge branch 'main' into jl/caip-multichain-migrate-core
adonesky1 eb59152
Merge branch 'jl/caip-multichain-migrate-core' into jl/mmp-3725/caip-…
jiexi d5ba871
Merge branch 'jl/mmp-3725/caip-multichain-add-postMessage-stream-non-…
jiexi 452cb80
Add METAMASK_CAIP_PROVIDER constant. Rename METAMASK_PROVIDER to META…
jiexi cc90dde
Rename extensionChannel to extensionEip1193Channel.
jiexi 203ae0e
Destroy extensionCaipChannel when mux is destroyed
jiexi 68508bc
add ignore streams for caip provider to cookie and phishing
jiexi 011ccd5
ignore caip provider stream in provider-stream
jiexi c51ccf3
restore inpage
jiexi 65bc1d2
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 0d4ff35
restore import order background.js
jiexi 801efd0
cleanup mmc logs
jiexi 5e879d2
add non-chromium check-ish
jiexi 80e66b7
add "start:flask:mv2"
jiexi d3ff1fa
lint
jiexi 420346e
add isExternallyConnectableWildcardEnabled and use in background.js
jiexi 255d2da
move flask externally_connectable into chrome config
jiexi 47a5241
Fix isExternallyConnectableWildcardEnabled
jiexi bf06ceb
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 2f20d57
lint
jiexi 99ca4fe
restore flask manifest changes
jiexi 9d4e166
remove isExternallyConnectableWildcardEnabled. use isFirefox
jiexi 56e6b33
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi ae4d091
lint
jiexi 9d9f69d
add missing ignore in MMC
jiexi 51d0b4b
guard multichain connect behind origin checks
jiexi d533d6a
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 9a6e1ef
Rename METAMASK_CAIP_PROVIDER to METAMASK_CAIP_MULTICHAIN_PROVIDER an…
jiexi e32e8cf
Rename connect fn names to be more clear
jiexi b6f6bbb
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 936c0fd
Rename connectEip1193WindowPostMessage to connectWindowPostMessage, c…
jiexi a4ab9a9
refactor connect helpers again
jiexi 6372150
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 670a24e
fix missing sender context
jiexi 5e67959
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 699b1cb
fix wrong remotePort.sender param position
jiexi 5a8c5bf
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 68aacdd
Replace jsdoc Port with chrome.runtime.Port
jiexi e10fa39
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi d907c7e
remove guard on connectExternallyConnectable trackDappView
jiexi 19ba0e7
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 4a70d06
remove describeBrowserOnly. add sendMultichainApiRequest. fix connect…
jiexi 605dfc8
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 02de12c
lint
jiexi fd3a416
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 4e3a3b3
temp run test-e2e-firefox-flask on feature branch
jiexi 36453f0
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 4645b19
replace method button clicks with id selectors
jiexi a332928
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 99d59d9
Add revokeSession to page object class
jiexi 4e1c5e1
add MessageSender typing
jiexi f29ea4d
add jsdoc types
jiexi caf3bfa
fix revoke button spec
jiexi 70c5c4f
restore circleci config
jiexi 9f3d3ff
lint
jiexi 623b99b
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 5128a8c
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 929963a
Update test/e2e/flask/multichain-api/wallet_revokeSession.spec.ts
jiexi a63e413
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi ec58a4e
Merge remote-tracking branch 'origin/jl/mmp-3725/caip-multichain-add-…
jiexi 0de9acb
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
adonesky1 1c53f7d
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi b061bd9
Merge remote-tracking branch 'origin/jl/mmp-3725/caip-multichain-add-…
jiexi 334aa0c
jsdoc
jiexi 367965c
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 4ae7b89
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
adonesky1 569d8e0
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
adonesky1 57090f3
await button click
jiexi f2a6438
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi ca74228
Merge remote-tracking branch 'origin/jl/mmp-3725/caip-multichain-add-…
jiexi 9697f0d
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 911bcc3
move caipStream instantiation into background.js, externally_connecta…
jiexi 4469a70
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 2563c64
bump @metamask/test-dapp-multichain to 0.9.0
jiexi 7f73b1d
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi 314b6d8
fix sendMultichainApiRequest helper
jiexi 64dd96c
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi c980eda
Merge remote-tracking branch 'origin/jl/mmp-3725/caip-multichain-add-…
jiexi cfd65a2
fix account address id selector
jiexi 5dc4318
fix MMC spec
jiexi 1d5c64c
Merge branch 'main' into jl/mmp-3725/caip-multichain-add-postMessage-…
jiexi fb09cd9
lint
jiexi f0c8812
fix custom address selector
jiexi File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.