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

feat: Add Multichain API to Flask #27782

Open
wants to merge 933 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
933 commits
Select commit Hold shift + click to select a range
af5ae95
Merge branch 'main' into caip25-permission-migration
jiexi Jan 6, 2025
42f2386
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 6, 2025
afc2629
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 6, 2025
43e2e3a
Fix wallet_createSession use getSupportedScopeObjects
jiexi Jan 6, 2025
babf3b8
Add back requestPermissionApprovalForOrigin to MMC. Use in requestApp…
jiexi Jan 6, 2025
9d8b687
Rename requestPermissionApprovalForOrigin to requestPermissionApprova…
jiexi Jan 6, 2025
432fcf8
yarn audit
jiexi Jan 6, 2025
add8328
Update LavaMoat policies
metamaskbot Jan 6, 2025
e66e970
Merge branch 'main' into caip25-permission-migration
jiexi Jan 6, 2025
2071366
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 6, 2025
ffef7ae
First Multichain API e2e Test (#29209)
adonesky1 Jan 6, 2025
aec0472
Merge branch 'main' into caip25-permission-migration
jiexi Jan 7, 2025
8a2203c
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 7, 2025
7a13bcc
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 7, 2025
f4af744
Revert "Rename requestPermissionApprovalForOrigin to requestPermissio…
jiexi Jan 7, 2025
b991c19
Use requestPermissionApproval again
jiexi Jan 7, 2025
2d747f4
DRY background-api getCaip25Caveat
jiexi Jan 7, 2025
bd77c86
Update app/scripts/metamask-controller.js
jiexi Jan 7, 2025
21cbc47
capitalize Snaps in thrown error
jiexi Jan 7, 2025
082a39a
Merge branch 'main' into caip25-permission-migration
jiexi Jan 7, 2025
20b2245
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 7, 2025
d6dfd27
use isSnapId in background-api
jiexi Jan 7, 2025
d2a2d44
jsdoc handlers
jiexi Jan 7, 2025
cd0e2d1
Merge branch 'main' into caip25-permission-migration
jiexi Jan 7, 2025
d3d5f9b
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 7, 2025
0b044e4
Jl/fix api specs multichain (#29487)
jiexi Jan 7, 2025
3f87444
Update app/scripts/metamask-controller.js
jiexi Jan 7, 2025
1ef2033
replace parseInt with hexToBigInt
jiexi Jan 8, 2025
b9e61e0
Merge branch 'main' into caip25-permission-migration
jiexi Jan 8, 2025
eee52ec
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 8, 2025
fb2c400
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 8, 2025
2e1be33
fix bad merge. lint
jiexi Jan 8, 2025
52e6ea2
Merge branch 'main' into caip25-permission-migration
jiexi Jan 8, 2025
8b06c2c
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 8, 2025
132e784
Merge branch 'main' into caip25-permission-migration
jiexi Jan 8, 2025
b1c0b07
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 8, 2025
097ef14
Fix wallet_requestPermissions approval ordering
jiexi Jan 8, 2025
75814f4
Jl/caip multichain/add api specs wallet create session (#29592)
jiexi Jan 8, 2025
43a5aad
Merge branch 'main' into caip25-permission-migration
jiexi Jan 9, 2025
9a42c67
Merge branch 'main' into caip25-permission-migration
jiexi Jan 9, 2025
368fccb
Jl/caip25 permission migration/fix wallet request permissions delay g…
jiexi Jan 9, 2025
60b4a0b
move cannot derive ethAccounts comment to ethAccounts var assignment
jiexi Jan 9, 2025
553f83e
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 9, 2025
094abb3
Update app/scripts/lib/rpc-method-middleware/handlers/wallet-revokePe…
jiexi Jan 9, 2025
51dc9d3
add ignoreLock options object to getPermittedAccounts
jiexi Jan 9, 2025
9f2422e
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 9, 2025
8a3bc99
remove isMultichainOrigin checks in add/switchEthereumChain and revok…
jiexi Jan 9, 2025
30b1773
Convert request-accounts.ts back to js
jiexi Jan 9, 2025
85782c5
Merge branch 'main' into caip25-permission-migration
jiexi Jan 10, 2025
9542e9c
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 10, 2025
3f70fdc
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 10, 2025
af1cb6a
Update app/scripts/metamask-controller.js
jiexi Jan 10, 2025
7e5782b
add wallet_registerOnboarding to Multichain API (#29491)
jiexi Jan 10, 2025
6d861f1
jsdoc createUnsupportedMethodMiddleware
jiexi Jan 10, 2025
49e9ac4
fix migration to skip malformed permission subjects (#29634)
adonesky1 Jan 10, 2025
79dc228
Update LavaMoat policies
metamaskbot Jan 10, 2025
dbed7a1
Multichain API e2e test: calling `wallet_invokeMethod` on the same da…
ffmcgee725 Jan 10, 2025
73ca76f
grant wallet:eip155 for dapps as well
jiexi Jan 10, 2025
5b027f8
annoying persistent local lint
jiexi Jan 10, 2025
c1cbb26
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 10, 2025
c4b62c1
Multichain API E2E Test: wallet_notify (#29623)
ffmcgee725 Jan 10, 2025
70b9f05
Merge branch 'main' into caip25-permission-migration
jiexi Jan 10, 2025
3771ebc
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 10, 2025
7688c40
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 10, 2025
9faf0e6
remove unnecessary JSON.stringify in wallet_createSession
jiexi Jan 10, 2025
08ff03d
add missing import
jiexi Jan 10, 2025
c7f9adc
remove eip3085 handling from wallet_createSession
jiexi Jan 10, 2025
f7f5c28
remove unused hooks
jiexi Jan 10, 2025
9d7a8a4
jsdoc wallet_createSession handler
jiexi Jan 10, 2025
f2e64be
remove processScopedProperties
jiexi Jan 10, 2025
9f58f3f
lint
jiexi Jan 10, 2025
61f1182
use preview build 298fc547
jiexi Jan 10, 2025
b27d53b
Update app/scripts/lib/rpc-method-middleware/handlers/wallet-requestP…
jiexi Jan 13, 2025
bea54cf
move getCaveat in requestPermittedChainsPermissionIncremental to afte…
jiexi Jan 13, 2025
2e078a8
Merge branch 'main' into caip25-permission-migration
jiexi Jan 13, 2025
50748b6
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 13, 2025
6aea438
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 13, 2025
ec4f301
move getCaveat in requestPermittedChainsPermissionIncremental to afte…
jiexi Jan 13, 2025
df60de4
Update ui/pages/permissions-connect/connect-page/connect-page.tsx
jiexi Jan 13, 2025
11faff5
Update ui/components/multichain/pages/review-permissions-page/site-ce…
jiexi Jan 13, 2025
abc0343
remove delays from sign.flow.ts
jiexi Jan 13, 2025
8d99f45
lint
jiexi Jan 13, 2025
422f379
Merge branch 'main' into caip25-permission-migration
jiexi Jan 13, 2025
e932140
lint
jiexi Jan 13, 2025
b1d52ad
Merge branch 'main' into caip25-permission-migration
jiexi Jan 13, 2025
cec2311
Merge branch 'main' into caip25-permission-migration
jiexi Jan 13, 2025
ebee234
Multichain API E2E Test: wallet_revokeSession (#29639)
ffmcgee725 Jan 14, 2025
0c0adf8
address partially mutation state bugs (#29682)
adonesky1 Jan 14, 2025
1817ba9
Multichain API E2E Test: wallet_createSession called with an existing…
ffmcgee725 Jan 14, 2025
6ebcb5f
Jl/restore legacy fixtures (#29674)
jiexi Jan 14, 2025
2846b0d
remove extraneous hooks
adonesky1 Jan 14, 2025
19826fe
dedupe
adonesky1 Jan 14, 2025
7240c13
lint
adonesky1 Jan 14, 2025
f166986
Merge branch 'main' into caip25-permission-migration
jiexi Jan 14, 2025
fe7469e
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 14, 2025
10d4d9c
Update LavaMoat policies
metamaskbot Jan 14, 2025
492687c
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 14, 2025
bb38fc4
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 14, 2025
0ba6f86
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 14, 2025
16c42b8
use preview build e05b7d3e
jiexi Jan 14, 2025
69a188b
Update LavaMoat policies
metamaskbot Jan 14, 2025
6633fb7
dedupe
adonesky1 Jan 14, 2025
113e643
update hookname: getCaveatForOrigin
adonesky1 Jan 14, 2025
106e7a6
Update LavaMoat policies
metamaskbot Jan 14, 2025
24fe195
wrap rpcErrors in flask build flags
adonesky1 Jan 14, 2025
65bd138
use preview build f3715655
jiexi Jan 14, 2025
baf0afc
fix getCaveatForOrigin
adonesky1 Jan 14, 2025
4b52240
Merge branch 'main' into caip25-permission-migration
jiexi Jan 14, 2025
20204ec
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 14, 2025
9df1ef3
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 14, 2025
04d64da
use preview build 6244b7be
jiexi Jan 14, 2025
b89c40c
lint
jiexi Jan 14, 2025
8776db0
Multichain API E2E test: wallet_sessionChanged (#29706)
ffmcgee725 Jan 15, 2025
62621a1
Merge branch 'main' into caip25-permission-migration
adonesky1 Jan 15, 2025
113ba76
lint
adonesky1 Jan 15, 2025
29d2381
lint
adonesky1 Jan 15, 2025
236b2d4
Merge branch 'main' into caip25-permission-migration
jiexi Jan 15, 2025
9d73bd9
jsdoc captureKeyringTypesWithMissingIdentities
jiexi Jan 15, 2025
89ed1b3
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 15, 2025
eb67f19
jsdoc sortAccountsByLastSelected
jiexi Jan 15, 2025
c86e052
Merge branch 'main' into caip25-permission-migration
jiexi Jan 15, 2025
ea4294a
Update app/scripts/migrations/138.ts
adonesky1 Jan 15, 2025
fdeb41e
Update app/scripts/migrations/138.ts
adonesky1 Jan 15, 2025
28094b5
Update app/scripts/migrations/138.ts
adonesky1 Jan 15, 2025
ab87b63
add comment/link for BUILT_IN_NETWORKS
adonesky1 Jan 15, 2025
9cdf8b7
address feedback / cleanup migration
adonesky1 Jan 15, 2025
43a0749
bail out of migration when encountering any data malformation
adonesky1 Jan 15, 2025
134f730
make malformation checks against networkConfigurations more strict
adonesky1 Jan 15, 2025
27b7353
Merge branch 'main' into caip25-permission-migration
jiexi Jan 15, 2025
8bdde06
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 15, 2025
fe26dcf
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 15, 2025
724e178
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 15, 2025
b2581f4
lint
jiexi Jan 15, 2025
6a6b1bf
Trigger
jiexi Jan 15, 2025
b213d94
add isNonEmptyArrayOfStrings to migration
jiexi Jan 15, 2025
2f0a4e5
Merge branch 'main' into caip25-permission-migration
jiexi Jan 15, 2025
0de03cc
Update test/e2e/tests/request-queuing/ui.spec.js
jiexi Jan 15, 2025
9233f06
Revert ui/ducks/bridge/selectors.ts
jiexi Jan 15, 2025
dcdee7f
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 15, 2025
5357693
Merge branch 'main' into caip25-permission-migration
jiexi Jan 16, 2025
651a40c
cleanup fixtures
jiexi Jan 16, 2025
b032101
clean fixtures deprecated-networks.spec.js and switch-custom-network.…
jiexi Jan 16, 2025
4c700fd
remove ERC_4337_ACCOUNT from withPreferencesControllerAdditionalAccou…
jiexi Jan 16, 2025
0f6c9f9
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
adonesky1 Jan 16, 2025
79678cd
update yarn.lock post rebase
adonesky1 Jan 16, 2025
6865dc5
Update LavaMoat policies
metamaskbot Jan 16, 2025
0412864
dedupe
adonesky1 Jan 16, 2025
792306f
fix wallet locked behavior
adonesky1 Jan 16, 2025
dea12c0
Update LavaMoat policies
metamaskbot Jan 16, 2025
ba9efbb
revert unecessary change to fixtures
jiexi Jan 16, 2025
7797d67
Merge branch 'main' into caip25-permission-migration
jiexi Jan 16, 2025
608ac95
revert unecessary change to fixtures 2
jiexi Jan 16, 2025
03624be
restore styling changes fixture
jiexi Jan 16, 2025
bd1e230
undo fixture changes that aren't needed
jiexi Jan 16, 2025
76f77b0
Merge branch 'main' into caip25-permission-migration
jiexi Jan 16, 2025
962c343
lint
jiexi Jan 16, 2025
3d0cfdd
lint
jiexi Jan 16, 2025
aba2d8a
Merge branch 'main' into caip25-permission-migration
jiexi Jan 17, 2025
1fb0f29
Update ui/components/multichain/edit-accounts-modal/edit-accounts-mod…
adonesky1 Jan 17, 2025
1bf080d
Multichain API E2E Test: handling when MetaMask is password locked (#…
ffmcgee725 Jan 17, 2025
5f96f94
Fix wallet_revokePermission spec
jiexi Jan 17, 2025
4762e5c
Merge branch 'main' into caip25-permission-migration
jiexi Jan 17, 2025
18440d6
Merge remote-tracking branch 'origin/caip25-permission-migration' int…
jiexi Jan 17, 2025
15fa319
Merge branch 'main' into caip25-permission-migration
jiexi Jan 17, 2025
c1b4b29
Merge branch 'caip25-permission-migration' into jl/caip-multichain-mi…
jiexi Jan 17, 2025
540899a
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 17, 2025
ad7169d
Update LavaMoat policies
metamaskbot Jan 17, 2025
d52827e
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 21, 2025
9b74e4c
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 21, 2025
a15a668
use preview build 2ba45577
jiexi Jan 21, 2025
a91d9b4
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 21, 2025
f85ad62
Update LavaMoat policies
metamaskbot Jan 21, 2025
6e0dbeb
remove caipPermissionAdapterMiddleware
jiexi Jan 21, 2025
721c85b
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 22, 2025
58be906
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 23, 2025
66d0308
yarn dedupe
jiexi Jan 23, 2025
d4410f2
Update LavaMoat policies
metamaskbot Jan 23, 2025
b8ae6c3
lint?
jiexi Jan 23, 2025
7f32e4d
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 23, 2025
0c2a696
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 23, 2025
a69d816
remove unneeded hooks
jiexi Jan 23, 2025
cfe4339
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 23, 2025
67dae48
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 24, 2025
d65cabf
fix remove network
jiexi Jan 24, 2025
fc286d9
lint
jiexi Jan 24, 2025
ea676b4
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 24, 2025
1ff78c6
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 28, 2025
51ad9d9
yarn
jiexi Jan 28, 2025
7199240
Restore wallet locked behavior
jiexi Jan 28, 2025
96c77a2
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 28, 2025
ef209cd
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 28, 2025
0c27eb1
move missing caveat check
jiexi Jan 29, 2025
6bcd229
lint
jiexi Jan 29, 2025
464e972
remove connect.spec
jiexi Jan 29, 2025
2d08956
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 29, 2025
5bd7d64
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 29, 2025
16f9f38
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 30, 2025
d5ab747
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 30, 2025
acdac1f
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 30, 2025
970ad3b
lint
jiexi Jan 30, 2025
94c8dd9
WIP: adapt to new CAIP-25 approval UI
jiexi Jan 30, 2025
08c32f0
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 30, 2025
ec9ddca
update approval UI to modify only evm portion of returned CAIP-25 per…
jiexi Jan 30, 2025
e0c548e
update wallet_createSession to pass in a validated CAIP-25 permission…
jiexi Jan 30, 2025
95e1275
lint
jiexi Jan 30, 2025
c18440b
Fix connect page supported request chain id check
jiexi Jan 30, 2025
ffbf346
WIP: fix snaps request accounts
jiexi Jan 30, 2025
a265050
Fix snaps account grant
jiexi Jan 30, 2025
9b6cf67
lint
jiexi Jan 30, 2025
16c0b5d
lint
jiexi Jan 31, 2025
80c0fd8
Update app/scripts/lib/rpc-method-middleware/handlers/wallet-createSe…
jiexi Jan 31, 2025
4feca47
delete password-locked spec
jiexi Jan 31, 2025
c40afc6
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 31, 2025
c5cfbde
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 31, 2025
cf15677
remove console.log
jiexi Jan 31, 2025
22e6e6b
loosen wallet_revokeSession fixture assert
jiexi Jan 31, 2025
6d511af
remove secp256k1 v5 force resolution
adonesky1 Jan 31, 2025
a139124
yarn.lock reset
adonesky1 Jan 31, 2025
7cce39d
Update LavaMoat policies
metamaskbot Jan 31, 2025
6867030
lint
adonesky1 Jan 31, 2025
3e7c8ae
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Jan 31, 2025
66a4c65
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Jan 31, 2025
6311273
Update app/scripts/lib/rpc-method-middleware/handlers/request-account…
adonesky1 Feb 3, 2025
b07aac2
remove comment
adonesky1 Feb 3, 2025
ccb8644
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 3, 2025
164d189
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Feb 3, 2025
22957ef
Update LavaMoat policies
FrederikBolding Feb 4, 2025
3613394
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 5, 2025
f054b45
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Feb 5, 2025
97a5097
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 5, 2025
e22b7bc
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 5, 2025
f665043
yarn dedupe
jiexi Feb 5, 2025
ecdb0b8
Update app/scripts/metamask-controller.js
jiexi Feb 5, 2025
e1d3631
DRY multichain eth subscription add and removal
jiexi Feb 5, 2025
fd30905
Merge remote-tracking branch 'origin/jl/caip-multichain-migrate-core'…
jiexi Feb 5, 2025
f90be7c
update getRemovedAuthorizations to include removed scopes as well as …
jiexi Feb 5, 2025
8a5f2cf
switch to createDeepEqualSelector
jiexi Feb 6, 2025
551b56c
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 6, 2025
75db2f7
add default value to createUnsupportedMethodMiddleware
jiexi Feb 6, 2025
1e20517
Bump api-specs to 0.10.14
jiexi Feb 6, 2025
84cc007
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 6, 2025
d5445f1
yarn dedupe
jiexi Feb 6, 2025
eed6a10
Lint
jiexi Feb 6, 2025
1d43a4a
codefence UNSUPPORTED_RPC_METHODS in MMC
jiexi Feb 6, 2025
03a40aa
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 6, 2025
5152d05
bump @metamask/api-specs to 0.10.15
jiexi Feb 7, 2025
7103714
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 7, 2025
57c5874
Fix sessionChanged not firing
jiexi Feb 7, 2025
c960844
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 7, 2025
701820c
Merge branch 'main' into jl/caip-multichain-migrate-core
jiexi Feb 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,10 @@ workflows:
requires:
- prep-build-test
- get-changed-files-with-git-diff
- test-api-specs-multichain:
requires:
- prep-build-test-flask
- get-changed-files-with-git-diff
- test-e2e-chrome-multiple-providers:
requires:
- prep-build-test
Expand Down Expand Up @@ -1096,6 +1100,37 @@ jobs:
- store_test_results:
path: test/test-results/e2e

test-api-specs-multichain:
executor: node-browsers-medium-plus
steps:
- run: *shallow-git-clone-and-enable-vnc
- run: sudo corepack enable
- attach_workspace:
at: .
- run:
name: Move test build to dist
command: mv ./dist-test-flask ./dist
- run:
name: Move test zips to builds
command: mv ./builds-test-flask ./builds
- gh/install
- run:
name: test:api-specs-multichain
command: .circleci/scripts/test-run-e2e.sh yarn test:api-specs-multichain
no_output_timeout: 5m
- run:
name: Comment on PR
command: |
if [ -f html-report-multichain/index.html ]; then
gh pr comment "${CIRCLE_PR_NUMBER}" --body ":x: Multichain API Spec Test Failed. View the report [here](https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/${CIRCLE_NODE_INDEX}/html-report-multichain/index.html)."
else
echo "Multichain API Spec Report not found!"
fi
when: on_fail
- store_artifacts:
path: html-report-multichain
destination: html-report-multichain

test-api-specs:
executor: node-browsers-medium-plus
steps:
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,13 @@ lavamoat/**/policy-debug.json
# Attributions
licenseInfos.json

# Branding
/app/images/branding

# API Spec tests
html-report/
html-report-multichain/

/app/images/branding
/changed-files

# UI Integration tests
Expand Down
24 changes: 17 additions & 7 deletions .storybook/test-data.js
Original file line number Diff line number Diff line change
Expand Up @@ -1429,17 +1429,27 @@ const state = {
subjects: {
'https://app.uniswap.org': {
permissions: {
eth_accounts: {
invoker: 'https://app.uniswap.org',
parentCapability: 'eth_accounts',
id: 'a7342e4b-beae-4525-a36c-c0635fd03359',
date: 1620710693178,
'endowment:caip25': {
caveats: [
{
type: 'restrictReturnedAccounts',
value: ['0x64a845a5b02460acf8a3d84503b0d68d028b4bb4'],
type: 'authorizedScopes',
value: {
requiredScopes: {},
optionalScopes: {
'eip155:1': {
accounts: [
'eip155:1:0x64a845a5b02460acf8a3d84503b0d68d028b4bb4',
],
},
},
isMultichainOrigin: false,
},
},
],
invoker: 'https://app.uniswap.org',
id: 'a7342e4b-beae-4525-a36c-c0635fd03359',
date: 1620710693178,
parentCapability: 'endowment:caip25',
},
},
},
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/lib/index.js b/lib/index.js
index f5795884311124b221d91f488ed45750eb6e9c80..e030d6f8d8e85e6d1350c565d36ad48bc49af881 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -25,7 +25,7 @@ class Ptr {
});
return `/${tokens.join("/")}`;
}
- eval(instance) {
+ shmeval(instance) {
for (const token of this.tokens) {
if (instance.hasOwnProperty(token)) {
instance = instance[token];
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/build/resolve-pointer.js b/build/resolve-pointer.js
index d5a8ec7486250cd17572eb0e0449725643fc9842..044e74bb51a46e9bf3547f6d7a84763b93260613 100644
--- a/build/resolve-pointer.js
+++ b/build/resolve-pointer.js
@@ -27,7 +27,7 @@ exports.default = (function (ref, root) {
try {
var withoutHash = ref.replace("#", "");
var pointer = json_pointer_1.default.parse(withoutHash);
- return pointer.eval(root);
+ return pointer.shmeval(root);
}
catch (e) {
throw new InvalidJsonPointerRefError(ref, e.message);
4 changes: 4 additions & 0 deletions app/build-types/flask/manifest/_base.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@
},
"default_title": "MetaMask Flask"
},
"externally_connectable": {
"matches": ["http://*/*", "https://*/*"],
"ids": ["*"]
},
"icons": {
"16": "images/icon-16.png",
"19": "images/icon-19.png",
Expand Down
6 changes: 0 additions & 6 deletions app/manifest/v2/_barad_dur.json

This file was deleted.

6 changes: 0 additions & 6 deletions app/manifest/v3/_barad_dur.json

This file was deleted.

21 changes: 13 additions & 8 deletions app/scripts/background.js
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,9 @@ function overrideContentSecurityPolicyHeader() {
// These are set after initialization
let connectRemote;
let connectExternalExtension;
///: BEGIN:ONLY_INCLUDE_IF(build-flask)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we use runtime checks here rather than build-time? It doesn't look like this would cut out any major chunks of code, nothing that would make a major bundle size difference. Therefore doing this at runtime would seemingly have no downside, and would be much easier to lint/test/maintain

let connectExternalCaip;
///: END:ONLY_INCLUDE_IF

browser.runtime.onConnect.addListener(async (...args) => {
// Queue up connection attempts here, waiting until after initialization
Expand All @@ -378,13 +380,18 @@ browser.runtime.onConnectExternal.addListener(async (...args) => {
// Queue up connection attempts here, waiting until after initialization
await isInitialized;
// This is set in `setupController`, which is called as part of initialization
const port = args[0];

if (port.sender.tab?.id && process.env.BARAD_DUR) {
///: BEGIN:ONLY_INCLUDE_IF(build-main,build-beta,build-mmi)
connectExternalExtension(...args);
///: END:ONLY_INCLUDE_IF
///: BEGIN:ONLY_INCLUDE_IF(build-flask)
const port = args[0];
if (port.sender.tab?.id) {
connectExternalCaip(...args);
} else {
connectExternalExtension(...args);
}
///: END:ONLY_INCLUDE_IF
});

function saveTimestamp() {
Expand Down Expand Up @@ -677,13 +684,9 @@ function emitDappViewedMetricEvent(origin) {
return;
}

const permissions = controller.controllerMessenger.call(
'PermissionController:getPermissions',
origin,
);
const numberOfConnectedAccounts =
permissions?.eth_accounts?.caveats[0]?.value.length;
if (!numberOfConnectedAccounts) {
controller.getPermittedAccounts(origin).length;
if (numberOfConnectedAccounts === 0) {
return;
}

Expand Down Expand Up @@ -1021,6 +1024,7 @@ export function setupController(
});
};

///: BEGIN:ONLY_INCLUDE_IF(build-flask)
connectExternalCaip = async (remotePort) => {
if (metamaskBlockedPorts.includes(remotePort.name)) {
return;
Expand All @@ -1039,6 +1043,7 @@ export function setupController(
sender: remotePort.sender,
});
};
///: END:ONLY_INCLUDE_IF

if (overrides?.registerConnectListeners) {
overrides.registerConnectListeners(connectRemote, connectExternalExtension);
Expand Down
Loading
Loading