@portal-hq/provider 4.1.0-beta-3 → 4.1.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.
@@ -39,27 +39,25 @@ class MpcSigner {
39
39
  }
40
40
  return params;
41
41
  };
42
+ this.featureFlags = featureFlags;
42
43
  this.keychain = keychain;
43
44
  this.mpc = react_native_1.NativeModules.PortalMobileMpc;
44
45
  this.mpcHost = mpcHost;
45
46
  this.version = version;
46
- this.featureFlags = featureFlags;
47
47
  if (!this.mpc) {
48
48
  throw new Error(`[Portal.Provider.MpcSigner] The MPC module could not be found by the signer. This is usually an issue with React Native linking. Please verify that the 'PortalReactNative' module is properly linked to this project.`);
49
49
  }
50
50
  }
51
51
  sign(message, provider) {
52
- var _a, _b;
53
52
  return __awaiter(this, void 0, void 0, function* () {
54
- const addresses = yield this.keychain.getAddresses();
55
- const legacyAddress = yield this.keychain.getAddress();
53
+ const eip155Address = yield this.keychain.getEip155Address();
56
54
  const apiKey = provider.apiKey;
57
55
  const { method, chainId, curve, isRaw } = message;
58
56
  switch (method) {
59
57
  case 'eth_requestAccounts':
60
- return [(_a = addresses.eip155) !== null && _a !== void 0 ? _a : legacyAddress];
58
+ return [eip155Address];
61
59
  case 'eth_accounts':
62
- return [(_b = addresses.eip155) !== null && _b !== void 0 ? _b : legacyAddress];
60
+ return [eip155Address];
63
61
  default:
64
62
  break;
65
63
  }
@@ -73,6 +71,7 @@ class MpcSigner {
73
71
  }
74
72
  const metadata = {
75
73
  clientPlatform: 'REACT_NATIVE',
74
+ clientPlatformVersion: (0, utils_1.getClientPlatformVersion)(),
76
75
  isMultiBackupEnabled: this.featureFlags.isMultiBackupEnabled,
77
76
  mpcServerVersion: this.version,
78
77
  optimized: true,
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { PortalCurve } from '@portal-hq/core';
11
- import { PortalMpcError, } from '@portal-hq/utils';
11
+ import { PortalMpcError, getClientPlatformVersion, } from '@portal-hq/utils';
12
12
  import { NativeModules } from 'react-native';
13
13
  class MpcSigner {
14
14
  constructor({ keychain, mpcHost = 'mpc.portalhq.io', version = 'v6', featureFlags = {}, }) {
@@ -37,27 +37,25 @@ class MpcSigner {
37
37
  }
38
38
  return params;
39
39
  };
40
+ this.featureFlags = featureFlags;
40
41
  this.keychain = keychain;
41
42
  this.mpc = NativeModules.PortalMobileMpc;
42
43
  this.mpcHost = mpcHost;
43
44
  this.version = version;
44
- this.featureFlags = featureFlags;
45
45
  if (!this.mpc) {
46
46
  throw new Error(`[Portal.Provider.MpcSigner] The MPC module could not be found by the signer. This is usually an issue with React Native linking. Please verify that the 'PortalReactNative' module is properly linked to this project.`);
47
47
  }
48
48
  }
49
49
  sign(message, provider) {
50
- var _a, _b;
51
50
  return __awaiter(this, void 0, void 0, function* () {
52
- const addresses = yield this.keychain.getAddresses();
53
- const legacyAddress = yield this.keychain.getAddress();
51
+ const eip155Address = yield this.keychain.getEip155Address();
54
52
  const apiKey = provider.apiKey;
55
53
  const { method, chainId, curve, isRaw } = message;
56
54
  switch (method) {
57
55
  case 'eth_requestAccounts':
58
- return [(_a = addresses.eip155) !== null && _a !== void 0 ? _a : legacyAddress];
56
+ return [eip155Address];
59
57
  case 'eth_accounts':
60
- return [(_b = addresses.eip155) !== null && _b !== void 0 ? _b : legacyAddress];
58
+ return [eip155Address];
61
59
  default:
62
60
  break;
63
61
  }
@@ -71,6 +69,7 @@ class MpcSigner {
71
69
  }
72
70
  const metadata = {
73
71
  clientPlatform: 'REACT_NATIVE',
72
+ clientPlatformVersion: getClientPlatformVersion(),
74
73
  isMultiBackupEnabled: this.featureFlags.isMultiBackupEnabled,
75
74
  mpcServerVersion: this.version,
76
75
  optimized: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@portal-hq/provider",
3
- "version": "4.1.0-beta-3",
3
+ "version": "4.1.0",
4
4
  "license": "MIT",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/esm/index",
@@ -19,8 +19,8 @@
19
19
  "test": "jest"
20
20
  },
21
21
  "dependencies": {
22
- "@portal-hq/connect": "^4.1.0-beta-3",
23
- "@portal-hq/utils": "^4.1.0-beta-3"
22
+ "@portal-hq/connect": "^4.1.0",
23
+ "@portal-hq/utils": "^4.1.0"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@babel/preset-typescript": "^7.18.6",
@@ -30,5 +30,5 @@
30
30
  "ts-jest": "^29.0.3",
31
31
  "typescript": "^4.8.4"
32
32
  },
33
- "gitHead": "1fc6cdb8b1effedb3574a116fb0f5dd6cd3b3c30"
33
+ "gitHead": "d53139e2dae6d0ede12d647ae4d11f4915b896f1"
34
34
  }
@@ -5,6 +5,7 @@ import {
5
5
  KeychainAdapter,
6
6
  PortalMpcError,
7
7
  type SigningRequestArguments,
8
+ getClientPlatformVersion,
8
9
  } from '@portal-hq/utils'
9
10
  import { NativeModules } from 'react-native'
10
11
 
@@ -17,11 +18,11 @@ import {
17
18
  import Signer from './abstract'
18
19
 
19
20
  class MpcSigner implements Signer {
21
+ private featureFlags: FeatureFlags
20
22
  private keychain: KeychainAdapter
21
23
  private mpc: PortalMobileMpc
22
24
  private mpcHost: string // should we add a default here mpc.portalhq.io
23
25
  private version = 'v6'
24
- private featureFlags: FeatureFlags
25
26
 
26
27
  constructor({
27
28
  keychain,
@@ -29,11 +30,11 @@ class MpcSigner implements Signer {
29
30
  version = 'v6',
30
31
  featureFlags = {},
31
32
  }: MpcSignerOptions) {
33
+ this.featureFlags = featureFlags
32
34
  this.keychain = keychain
33
35
  this.mpc = NativeModules.PortalMobileMpc
34
36
  this.mpcHost = mpcHost
35
37
  this.version = version
36
- this.featureFlags = featureFlags
37
38
 
38
39
  if (!this.mpc) {
39
40
  throw new Error(
@@ -46,8 +47,7 @@ class MpcSigner implements Signer {
46
47
  message: SigningRequestArguments,
47
48
  provider: IPortalProvider,
48
49
  ): Promise<any> {
49
- const addresses = await this.keychain.getAddresses()
50
- const legacyAddress = await this.keychain.getAddress()
50
+ const eip155Address = await this.keychain.getEip155Address()
51
51
 
52
52
  const apiKey = provider.apiKey
53
53
 
@@ -55,9 +55,9 @@ class MpcSigner implements Signer {
55
55
 
56
56
  switch (method) {
57
57
  case 'eth_requestAccounts':
58
- return [addresses.eip155 ?? legacyAddress]
58
+ return [eip155Address]
59
59
  case 'eth_accounts':
60
- return [addresses.eip155 ?? legacyAddress]
60
+ return [eip155Address]
61
61
  default:
62
62
  break
63
63
  }
@@ -77,6 +77,7 @@ class MpcSigner implements Signer {
77
77
 
78
78
  const metadata: PortalMobileMpcMetadata = {
79
79
  clientPlatform: 'REACT_NATIVE',
80
+ clientPlatformVersion: getClientPlatformVersion(),
80
81
  isMultiBackupEnabled: this.featureFlags.isMultiBackupEnabled,
81
82
  mpcServerVersion: this.version,
82
83
  optimized: true,
package/types.d.ts CHANGED
@@ -36,6 +36,7 @@ export interface PortalMobileMpcMetadata {
36
36
  chainId?: string
37
37
  curve?: PortalCurve
38
38
  clientPlatform: string
39
+ clientPlatformVersion: string
39
40
  isMultiBackupEnabled?: boolean
40
41
  mpcServerVersion: string
41
42
  optimized: true