@exodus/web3-ethereum 13.4.0 → 13.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -197,11 +197,17 @@ export function exposeHandlers(rpc, deps) {
197
197
  async function approveAndSignTypedData(typedData) {
198
198
  await assertTrusted();
199
199
  await ensureUnlocked();
200
- const parsedTypedData = parseAndValidateTypedData(typedData, { chainId });
201
- const message = typedDataToMessage(typedData, SignTypedDataVersion.V4);
202
- await approve(approveMessage, network, message);
203
200
  const walletAccount = await getActiveWalletAccountData();
204
201
  const asset = await getAsset(network);
202
+ const address = await getAddress();
203
+ const parsedTypedData = parseAndValidateTypedData(typedData, { chainId });
204
+ const message = typedDataToMessage(typedData, SignTypedDataVersion.V4);
205
+ const simulationResult = await asset.baseAsset.api.web3.simulateMessage({
206
+ address,
207
+ message,
208
+ url: new URL(getOrigin()),
209
+ });
210
+ await approve(approveMessage, network, message, walletAccount.toString(), simulationResult);
205
211
  const signedMessageBuffer = await messageSigner.signMessage({
206
212
  walletAccount,
207
213
  baseAssetName: asset.baseAssetName,
@@ -280,7 +286,7 @@ export function exposeHandlers(rpc, deps) {
280
286
  }
281
287
  return permissions;
282
288
  });
283
- exposeEvmFunction('wallet_requestPermissions', async (requestedPermissions) => {
289
+ exposeEvmFunction('wallet_requestPermissions', async (requestedPermissions = { [ETH_ACCOUNTS_PERMISSION]: {} }) => {
284
290
  const parentCapability = Object.keys(requestedPermissions)[0];
285
291
  if (parentCapability !== ETH_ACCOUNTS_PERMISSION) {
286
292
  // `eth_accounts` is currently the only permission.
@@ -913,12 +913,6 @@ export function validateRequest(value) {
913
913
  validate.errors = [{ keywordLocation: '#/type', instanceLocation: '#' }]
914
914
  return false
915
915
  }
916
- if (data.length < 1) {
917
- validate.errors = [
918
- { keywordLocation: '#/minItems', instanceLocation: '#' },
919
- ]
920
- return false
921
- }
922
916
  if (0 in data && hasOwn(data, 0)) {
923
917
  const err36 = validate.errors
924
918
  const res36 = ref12(data[0])
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@exodus/web3-ethereum",
3
3
  "description": "Apps connectivity library for EVM-compatible chains.",
4
- "version": "13.4.0",
4
+ "version": "13.6.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "module": "lib/index.js",
@@ -22,7 +22,8 @@
22
22
  "lib/**/*.js"
23
23
  ],
24
24
  "publishConfig": {
25
- "access": "public"
25
+ "access": "public",
26
+ "provenance": false
26
27
  },
27
28
  "repository": {
28
29
  "type": "git",
@@ -49,12 +50,12 @@
49
50
  "eth-rpc-errors": "^4.0.3"
50
51
  },
51
52
  "devDependencies": {
52
- "@exodus/assets": "^11.3.0",
53
- "@exodus/ethereum-meta": "^2.8.0",
53
+ "@exodus/assets": "^11.5.0",
54
+ "@exodus/ethereum-meta": "^2.9.1",
54
55
  "@exodus/json-rpc": "^1.11.0",
55
56
  "@exodus/schemasafe": "^1.0.0",
56
57
  "@exodus/web3-management": "0.36.1",
57
- "@exodus/web3-types": "1.57.1",
58
+ "@exodus/web3-types": "1.59.0",
58
59
  "@exodus/web3-validation": "^1.38.0",
59
60
  "@wallet-standard/base": "^1.0.1"
60
61
  },
@@ -63,5 +64,5 @@
63
64
  "url": "https://github.com/ExodusMovement/assets/issues?q=is%3Aissue+is%3Aopen+label%3Aweb3-ethereum"
64
65
  },
65
66
  "homepage": "https://github.com/ExodusMovement/assets/tree/master/web3/web3-ethereum",
66
- "gitHead": "45be970be70f9211b8a6489566c352f4caeb82dc"
67
+ "gitHead": "e5aeeccd45a3877867520b2ad7f3dc35745681fb"
67
68
  }