Skip to content

Commit c03337d

Browse files
adonesky1jiexi
andauthored
setup/configure @metamask/connect root package + repoint playgrounds (ex node playground) to @metamask/connect (#70)
* setup/configure @metamask/connect root package * re-point playgrounds to @metamask/connect * changelog entry * one small revert * Update CHANGELOG.md Co-authored-by: jiexi <jiexiluan@gmail.com> * revert to use the root for multichain * fix changelog --------- Co-authored-by: jiexi <jiexiluan@gmail.com>
1 parent f358f0d commit c03337d

15 files changed

Lines changed: 43 additions & 19 deletions

File tree

packages/connect/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Added
11+
12+
- Added subpath exports to `@metamask/connect` package: `@metamask/connect/evm` - unified export for EVM functionality
13+
1014
### Changed
1115

1216
- Updated `description` in `package.json` ([#18](https://github.com/MetaMask/connect-monorepo/pull/18))

packages/connect/package.json

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,17 @@
3636
},
3737
"default": "./dist/multichain/index.js"
3838
},
39+
"./evm": {
40+
"import": {
41+
"types": "./dist/evm/index.d.ts",
42+
"default": "./dist/evm/index.mjs"
43+
},
44+
"require": {
45+
"types": "./dist/evm/index.d.ts",
46+
"default": "./dist/evm/index.js"
47+
},
48+
"default": "./dist/evm/index.js"
49+
},
3950
"./package.json": "./package.json"
4051
},
4152
"main": "./dist/index.js",
@@ -45,7 +56,7 @@
4556
"dist/"
4657
],
4758
"scripts": {
48-
"build": "yarn clean && tsc -b --force tsconfig.build.json && npx tsup src/index.ts src/multichain/index.ts --format esm,cjs --external @metamask/connect-multichain",
59+
"build": "yarn clean && tsc -b --force tsconfig.build.json && npx tsup src/index.ts src/multichain/index.ts src/evm/index.ts --format esm,cjs --external @metamask/connect-multichain --external @metamask/connect-evm",
4960
"build:docs": "typedoc",
5061
"changelog:format": "../../scripts/format-changelog.sh @metamask/connect",
5162
"changelog:update": "../../scripts/update-changelog.sh @metamask/connect",
@@ -58,6 +69,7 @@
5869
"test:verbose": "yarn test"
5970
},
6071
"dependencies": {
72+
"@metamask/connect-evm": "workspace:^",
6173
"@metamask/connect-multichain": "workspace:^"
6274
},
6375
"devDependencies": {

packages/connect/src/evm/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export * from '@metamask/connect-evm';
2+

packages/connect/tsconfig.build.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
},
88
"include": ["./src"],
99
"references": [
10+
{ "path": "../connect-evm/tsconfig.build.json" },
1011
{ "path": "../connect-multichain/tsconfig.build.json" }
1112
]
1213
}

packages/connect/tsconfig.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,9 @@
33
"compilerOptions": {
44
"baseUrl": "./"
55
},
6+
"references": [
7+
{ "path": "../connect-evm/tsconfig.build.json" },
8+
{ "path": "../connect-multichain/tsconfig.build.json" }
9+
],
610
"include": ["./src"]
711
}

playground/legacy-evm-react-vite-playground/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Legacy EVM React Vite Playground
22

3-
> A demo application showcasing `@metamask/connect-evm` integration in a React + Vite application.
3+
> A demo application showcasing `@metamask/connect/evm` integration in a React + Vite application.
44
5-
This playground demonstrates how to use `@metamask/connect-evm` in a React application with Vite. It provides working examples of all major features including connection, signing, transactions, and chain switching.
5+
This playground demonstrates how to use `@metamask/connect/evm` in a React application with Vite. It provides working examples of all major features including connection, signing, transactions, and chain switching.
66

77
## Features Demonstrated
88

@@ -98,7 +98,7 @@ legacy-evm-react-vite-playground/
9898
- **React 18** - UI framework
9999
- **Vite** - Build tool and dev server
100100
- **TypeScript** - Type safety
101-
- **@metamask/connect-evm** - MetaMask connection SDK
101+
- **@metamask/connect/evm** - MetaMask connection SDK
102102

103103
## Troubleshooting
104104

@@ -116,7 +116,7 @@ legacy-evm-react-vite-playground/
116116

117117
## Learn More
118118

119-
- [@metamask/connect-evm Documentation](../../packages/connect-evm/README.md)
119+
- [@metamask/connect/evm Documentation](../../packages/connect-evm/README.md)
120120
- [MetaMask Documentation](https://docs.metamask.io)
121121
- [EIP-1193 Specification](https://eips.ethereum.org/EIPS/eip-1193)
122122

playground/legacy-evm-react-vite-playground/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"preview": "vite preview"
1313
},
1414
"dependencies": {
15-
"@metamask/connect-evm": "workspace:^",
15+
"@metamask/connect": "workspace:^",
1616
"react": "^18.3.1",
1717
"react-dom": "^18.3.1",
1818
"vite-plugin-node-polyfills": "^0.24.0"

playground/legacy-evm-react-vite-playground/src/App.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ import { useEffect, useState } from 'react';
22
import {
33
MetamaskConnectEVM,
44
createMetamaskConnectEVM,
5-
} from '@metamask/connect-evm';
5+
} from '@metamask/connect/evm';
66
import './App.css';
77
import { send_eth_signTypedData_v4, send_personal_sign } from './SignHelpers';
8-
import type { EIP1193Provider } from '@metamask/connect-evm';
8+
import type { EIP1193Provider } from '@metamask/connect/evm';
99
import { getInfuraRpcUrls } from '@metamask/connect-multichain';
1010

1111
function useSDK() {

playground/legacy-evm-react-vite-playground/src/SignHelpers.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { EIP1193Provider } from '@metamask/connect-evm';
1+
import { EIP1193Provider } from '@metamask/connect/evm';
22
import { Buffer } from 'buffer';
33

44
export const send_eth_signTypedData_v4 = async (

playground/multichain-react-playground/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
"@metamask/utils": "^11.8.1"
5252
},
5353
"dependencies": {
54-
"@metamask/connect-multichain": "workspace:^",
54+
"@metamask/connect": "workspace:^",
5555
"@metamask/utils": "^11.8.1",
5656
"react": "^18.3.1",
5757
"react-dom": "^18.3.1"
@@ -108,8 +108,8 @@
108108
"@solana/web3.js>bigint-buffer": false,
109109
"@solana/web3.js>rpc-websockets>bufferutil": false,
110110
"@solana/web3.js>rpc-websockets>utf-8-validate": false,
111-
"@metamask/connect-multichain>@metamask/mobile-wallet-protocol-dapp-client>@metamask/mobile-wallet-protocol-core>centrifuge>protobufjs": false,
112-
"@metamask/connect-multichain>@metamask/mobile-wallet-protocol-core>centrifuge>protobufjs": false
111+
"@metamask/connect>@metamask/mobile-wallet-protocol-dapp-client>@metamask/mobile-wallet-protocol-core>centrifuge>protobufjs": false,
112+
"@metamask/connect>@metamask/mobile-wallet-protocol-core>centrifuge>protobufjs": false
113113
}
114114
}
115115
}

0 commit comments

Comments
 (0)