@dynamic-labs/multi-wallet 0.11.25 → 0.11.27

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/multi-wallet",
3
- "version": "0.11.25",
3
+ "version": "0.11.27",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org"
6
6
  },
@@ -12,6 +12,7 @@
12
12
  "@solana/web3.js": "^1.50.1",
13
13
  "@coinbase/wallet-sdk": "^3.4.0",
14
14
  "@walletconnect/client": "^1.8.0",
15
+ "@blocto/sdk": "^0.3.0-beta.2",
15
16
  "@walletconnect/ethereum-provider": "^1.7.8",
16
17
  "@onflow/fcl": "1.2.1"
17
18
  },
@@ -111,6 +111,20 @@
111
111
  "disabled": false
112
112
  }
113
113
  },
114
+ "bloctoevm": {
115
+ "desktop": {
116
+ "chrome": "",
117
+ "firefox": "",
118
+ "brave": "",
119
+ "edge": "",
120
+ "safari": ""
121
+ },
122
+ "mobile": {
123
+ "android": "",
124
+ "ios": "",
125
+ "disabled": false
126
+ }
127
+ },
114
128
  "bravesol": {
115
129
  "desktop": {
116
130
  "chrome": "",
@@ -2323,6 +2337,20 @@
2323
2337
  "disabled": false
2324
2338
  }
2325
2339
  },
2340
+ "phantomledger": {
2341
+ "desktop": {
2342
+ "chrome": "https://chrome.google.com/webstore/detail/phantom/bfnaelmomeimhlpmgjnjophhpkkoljpa",
2343
+ "firefox": "https://addons.mozilla.org/en-US/firefox/addon/phantom-app/",
2344
+ "brave": "https://chrome.google.com/webstore/detail/phantom/bfnaelmomeimhlpmgjnjophhpkkoljpa",
2345
+ "edge": "https://chrome.google.com/webstore/detail/phantom/bfnaelmomeimhlpmgjnjophhpkkoljpa",
2346
+ "safari": ""
2347
+ },
2348
+ "mobile": {
2349
+ "android": "https://play.google.com/store/apps/details?id=app.phantom",
2350
+ "ios": "https://apps.apple.com/us/app/phantom-solana-wallet/id1598432977",
2351
+ "disabled": true
2352
+ }
2353
+ },
2326
2354
  "glow": {
2327
2355
  "desktop": {
2328
2356
  "chrome": "https://chrome.google.com/webstore/detail/glow-solana-wallet-beta/ojbcfhjmpigfobfclfflafhblgemeidi",
@@ -0,0 +1,2 @@
1
+ export declare class NotSupportedError extends Error {
2
+ }
package/src/errors.js ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotSupportedError = void 0;
4
+ class NotSupportedError extends Error {
5
+ }
6
+ exports.NotSupportedError = NotSupportedError;
7
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,iBAAkB,SAAQ,KAAK;CAAG;AAA/C,8CAA+C"}
package/src/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import Console from './utils/console';
2
2
  import './polyfills';
3
3
  export * from './multi-wallet';
4
4
  export * from './types';
5
+ export * from './errors';
5
6
  export { Console };
6
7
  export type { WalletConnector, Chain, FetchPublicAddressOpts, } from './wallets/wallet-connector';
7
8
  export { generateMessageToSign } from './utils/message';
package/src/index.js CHANGED
@@ -23,6 +23,7 @@ exports.Console = console_1.default;
23
23
  require("./polyfills");
24
24
  __exportStar(require("./multi-wallet"), exports);
25
25
  __exportStar(require("./types"), exports);
26
+ __exportStar(require("./errors"), exports);
26
27
  var message_1 = require("./utils/message");
27
28
  Object.defineProperty(exports, "generateMessageToSign", { enumerable: true, get: function () { return message_1.generateMessageToSign; } });
28
29
  var isMobile_1 = require("./utils/isMobile");
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,8DAAsC;AAM7B,kBANF,iBAAO,CAME;AAJhB,uBAAqB;AAErB,iDAA+B;AAC/B,0CAAwB;AAQxB,2CAAwD;AAA/C,gHAAA,qBAAqB,OAAA;AAC9B,6CAA8D;AAArD,kGAAA,MAAM,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAEnC,mEAAkE;AAAzD,0HAAA,mBAAmB,OAAA;AAC5B,uDAG+B;AAF7B,+GAAA,cAAc,OAAA;AACd,yHAAA,wBAAwB,OAAA;AAE1B,mDAAqD;AAA5C,6GAAA,cAAc,OAAA;AAGvB,kEAAgD;AAChD,6DAA2C;AAI3C,wDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,8DAAsC;AAO7B,kBAPF,iBAAO,CAOE;AALhB,uBAAqB;AAErB,iDAA+B;AAC/B,0CAAwB;AACxB,2CAAyB;AAQzB,2CAAwD;AAA/C,gHAAA,qBAAqB,OAAA;AAC9B,6CAA8D;AAArD,kGAAA,MAAM,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAEnC,mEAAkE;AAAzD,0HAAA,mBAAmB,OAAA;AAC5B,uDAG+B;AAF7B,+GAAA,cAAc,OAAA;AACd,yHAAA,wBAAwB,OAAA;AAE1B,mDAAqD;AAA5C,6GAAA,cAAc,OAAA;AAGvB,kEAAgD;AAChD,6DAA2C;AAI3C,wDAAsC"}
@@ -26,6 +26,8 @@ const GameStop_1 = __importDefault(require("./wallets/ethereum/injected/GameStop
26
26
  const ExodusEvm_1 = __importDefault(require("./wallets/ethereum/injected/ExodusEvm"));
27
27
  const ExodusSol_1 = __importDefault(require("./wallets/solana/injected/ExodusSol"));
28
28
  const BloctoInjected_1 = __importDefault(require("./wallets/ethereum/injected/BloctoInjected"));
29
+ const BloctoEvm_1 = __importDefault(require("./wallets/ethereum/BloctoEvm"));
30
+ const phantom_ledger_1 = __importDefault(require("./wallets/solana/phantom-ledger"));
29
31
  let wallets = [];
30
32
  const getSupportedWallets = ({ appLogoUrl, appName, evmNetworks, skipMemo } = {
31
33
  appLogoUrl: '',
@@ -49,6 +51,7 @@ const getSupportedWallets = ({ appLogoUrl, appName, evmNetworks, skipMemo } = {
49
51
  new slope_1.default(),
50
52
  new dapper_1.default({ appLogoUrl, appName }),
51
53
  new blocto_1.default({ appLogoUrl, appName }),
54
+ new BloctoEvm_1.default({ evmNetworks }),
52
55
  new BloctoInjected_1.default({ evmNetworks }),
53
56
  new walletConnect_1.default({ evmNetworks, walletName: 'WalletConnect' }),
54
57
  new BraveSol_1.default(),
@@ -59,6 +62,7 @@ const getSupportedWallets = ({ appLogoUrl, appName, evmNetworks, skipMemo } = {
59
62
  new ExodusSol_1.default(),
60
63
  new Opera_1.default({ evmNetworks }),
61
64
  new myalgo_1.default(),
65
+ new phantom_ledger_1.default(),
62
66
  ...filtered,
63
67
  ];
64
68
  // Memoize the wallets
@@ -1 +1 @@
1
- {"version":3,"file":"multi-wallet.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/multi-wallet.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,6EAAoD;AAEpD,2EAAmD;AACnD,mEAA2C;AAC3C,yEAAiD;AACjD,iEAAyC;AACzC,4EAAoD;AACpD,mEAA2C;AAC3C,mEAA2C;AAE3C,+CAA8D;AAC9D,qDAAqD;AACrD,qEAAkE;AAClE,yDAG+B;AAC/B,uEAA+C;AAC/C,oFAA4D;AAC5D,8EAAsD;AACtD,kFAA0D;AAC1D,8GAAsF;AACtF,oFAA4D;AAC5D,sFAA8D;AAC9D,oFAA4D;AAC5D,gGAAwE;AAExE,IAAI,OAAO,GAAsB,EAAE,CAAC;AAC7B,MAAM,mBAAmB,GAAwB,CACtD,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG;IAC/C,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,KAAK;CAChB,EACD,EAAE;IACF,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACnC,OAAO,OAAO,CAAC;KAChB;IAED,MAAM,oBAAoB,GAAG,IAAA,yCAAyB,EAAC,WAAW,CAAC,CAAC;IAEpE,2EAA2E;IAC3E,yBAAyB;IACzB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAC1C,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,CAClC,CAAC;IAEF,MAAM,UAAU,GAAG;QACjB,IAAI,iBAAO,EAAE;QACb,IAAI,mBAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7B,IAAI,kBAAQ,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;QAClD,IAAI,kBAAQ,EAAE;QACd,IAAI,cAAI,EAAE;QACV,IAAI,eAAK,EAAE;QACX,IAAI,gBAAM,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;QACnC,IAAI,gBAAM,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;QACnC,IAAI,wBAAc,CAAC,EAAE,WAAW,EAAE,CAAC;QACnC,IAAI,uBAAa,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;QAC/D,IAAI,kBAAQ,EAAE;QACd,IAAI,kBAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7B,IAAI,+BAAqB,CAAC,EAAE,WAAW,EAAE,CAAC;QAC1C,IAAI,kBAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7B,IAAI,mBAAS,CAAC,EAAE,WAAW,EAAE,CAAC;QAC9B,IAAI,mBAAS,EAAE;QACf,IAAI,eAAK,CAAC,EAAE,WAAW,EAAE,CAAC;QAC1B,IAAI,gBAAM,EAAE;QACZ,GAAG,QAAQ;KACZ,CAAC;IAEF,sBAAsB;IACtB,OAAO,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AA7CW,QAAA,mBAAmB,uBA6C9B;AAEF,MAAM,wBAAwB,GAAG,CAAC,OAA0B,EAAE,EAAE;IAC9D,IAAI,CAAC,IAAA,mBAAQ,GAAE,EAAE;QACf,uCAAuC;QACvC,OAAO,OAAO,CAAC;KAChB;IAED,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QAC/B,iEAAiE;QACjE,IAAI,MAAM,CAAC,oBAAoB,EAAE,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;QAED,MAAM,KAAK,GAAG,IAAA,4BAAc,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAExC,MAAM,qBAAqB,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEpE;;;;;WAKG;QAEH,MAAM,oBAAoB,GACxB,qBAAqB;YACrB,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC9C,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAElD,MAAM,qBAAqB,GAAG,qBAAqB,KAAK,SAAS,CAAC;QAClE;;;;WAIG;QACH,IAAI,IAAA,iBAAM,GAAE,IAAI,IAAA,mBAAQ,GAAE,EAAE;YAC1B,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,CAAC;YAC3C,OAAO,CAAC,qBAAqB;gBAC3B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,UAAU,IAAI,oBAAoB,CAAC;YAEvC,0BAA0B;SAC3B;aAAM;YACL,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC;YACnD,OAAO,CAAC,qBAAqB;gBAC3B,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,cAAc,IAAI,oBAAoB,CAAC;SAC5C;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAA4B;IACnD,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEK,MAAM,oCAAoC,GAAG,CAClD,eAAgC,EACvB,EAAE;IACX,MAAM,QAAQ,GAAG,IAAA,wCAAwB,EAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAChE,gFAAgF;IAChF,IAAI,QAAQ,EAAE;QACZ;;;;;;;;WAQG;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAS,CAAC;QAClC,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxC,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAChD,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;KACtB;IAED,OAAO,eAAe,CAAC,eAAe,CAAC;AACzC,CAAC,CAAC;AA5BW,QAAA,oCAAoC,wCA4B/C;AAEK,MAAM,iBAAiB,GAAG,CAAC,KAIjC,EAAqB,EAAE;IACtB,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,EAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC3E,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,MAAM,CAC/C,CAAC,MAAM,EAAE,EAAE,CACT,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACjC,IAAA,4CAAoC,EAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC7D,IAAI,MAAM,CAAC,oBAAoB,EAAE,KAAK,KAAK,CAAC,SAAS,CACzD,CAAC;IAEF,OAAO,IAAA,oBAAY,EAAC,iBAAiB,CAAC,CAAC;AACzC,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B;AAEF,kBAAkB;AAClB,gGAAgG;AACzF,MAAM,YAAY,GAAG,CAAC,OAA0B,EAAqB,EAAE;IAC5E,MAAM,QAAQ,GAAG;QACf,UAAU;QACV,SAAS;QACT,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,eAAe;QACf,QAAQ;QACR,OAAO;QACP,MAAM;QACN,OAAO;KACR,CAAC;IACF,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEjE,kEAAkE;IAClE,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CACtC,CAAC;IAEF,OAAO,iBAAiB,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;AACxD,CAAC,CAAC;AAtBW,QAAA,YAAY,gBAsBvB;AAEF,MAAM,mBAAmB,GAAG,CAC1B,OAA0B,EAC1B,KAAe,EACI,EAAE,CACrB,KAAK;KACF,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;KAC9D,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC/B,MAAM,aAAa,GAAG,CAAC,MAAuB,EAAE,IAAY,EAAW,EAAE,CACvE,IAAA,yCAAmB,EAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAE5C,MAAM,iBAAiB,GAAG,CACxB,IAAiC,EACR,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"multi-wallet.js","sourceRoot":"","sources":["../../../../packages/multi-wallet/src/multi-wallet.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export interface MessageParameters {
2
- chain: string;
2
+ blockchain: string;
3
+ chainId?: number;
3
4
  domain: string;
4
5
  issuedAt?: string;
5
6
  nonce: string;
@@ -8,5 +9,5 @@ export interface MessageParameters {
8
9
  statement?: string;
9
10
  uri: string;
10
11
  }
11
- export declare const generateMessageToSign: ({ chain, domain, nonce, uri, publicKey, issuedAt, statement, requestId, }: MessageParameters) => string;
12
- export declare const getEip55Address: (publicKey: string, chainId?: string) => string;
12
+ export declare const generateMessageToSign: ({ blockchain, domain, chainId, nonce, uri, publicKey, issuedAt, statement, requestId, }: MessageParameters) => string;
13
+ export declare const getEip55Address: (publicKey: string, chainId?: number) => string;
@@ -6,35 +6,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getEip55Address = exports.generateMessageToSign = void 0;
7
7
  const utils_1 = require("ethers/lib/utils");
8
8
  const console_1 = __importDefault(require("./console"));
9
- // Util class to generate a message to sign, inspired by EIP-4361
10
- // https://docs.login.xyz/general-information/siwe-overview/eip-4361
11
- // TODO:
12
- // - We might need to add prefix: \x19Ethereum Signed Message:\n<length of message> as per EIP-712
13
- // - This implementation is missing some of the optional values
14
- // - The work above and more should be covered in DYN-252
15
- // internal mapping of blockchain abbrev to full network name
16
- const networkNames = {
9
+ const fullBlockchainNames = {
17
10
  ALGO: 'Algorand',
18
11
  ETH: 'Ethereum',
19
12
  EVM: 'Ethereum',
20
13
  SOL: 'Solana',
21
14
  };
22
- // see: https://eips.ethereum.org/EIPS/eip-155#list-of-chain-ids
23
- // this is an ethereum standard, so does not currently support solana
24
- const chainIds = {
25
- ETH: '1',
26
- EVM: '1',
27
- SOL: undefined,
28
- };
29
- const generateMessageToSign = ({ chain, domain, nonce, uri, publicKey, issuedAt = new Date().toISOString(), statement, requestId, }) => {
15
+ const generateMessageToSign = ({ blockchain, domain, chainId, nonce, uri, publicKey, issuedAt = new Date().toISOString(), statement, requestId, }) => {
30
16
  // This format follows the sign-in with ethereum (SIWE) standard,
31
17
  // but we are using it also for non-ethereum wallets for now (eg. Solana)
32
18
  // for more context on format and fields, please see:
33
19
  // https://docs.login.xyz/general-information/siwe-overview/eip-4361
34
- const networkName = networkNames[chain.toUpperCase()];
35
- const header = `${domain} wants you to sign in with your ${networkName} account:`;
20
+ const blockchainName = fullBlockchainNames[blockchain.toUpperCase()];
21
+ const header = `${domain} wants you to sign in with your ${blockchainName} account:`;
36
22
  // This is only required for Ethereum-based wallets
37
- const chainId = chainIds[chain.toUpperCase()];
38
23
  const messageAddress = (0, exports.getEip55Address)(publicKey, chainId);
39
24
  const prefix = [header, messageAddress].join('\n');
40
25
  const prefixWithStatement = `${[prefix, statement].join('\n\n')}\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/utils/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../packages/multi-wallet/src/utils/message.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA8C;AAE9C,wDAAgC;AAEhC,MAAM,mBAAmB,GAA8B;IACrD,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,QAAQ;CACd,CAAC;AAcK,MAAM,qBAAqB,GAAG,CAAC,EACpC,UAAU,EACV,MAAM,EACN,OAAO,EACP,KAAK,EACL,GAAG,EACH,SAAS,EACT,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EACnC,SAAS,EACT,SAAS,GACS,EAAU,EAAE;IAC9B,iEAAiE;IACjE,yEAAyE;IACzE,qDAAqD;IACrD,oEAAoE;IACpE,MAAM,cAAc,GAAG,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,GAAG,MAAM,mCAAmC,cAAc,WAAW,CAAC;IACrF,mDAAmD;IACnD,MAAM,cAAc,GAAG,IAAA,uBAAe,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAEpE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,YAAY,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;IACjC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAChC,IAAI,OAAO,EAAE;QACX,YAAY,CAAC,IAAI,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;KAC3C;IAED,oEAAoE;IACpE,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAClC,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;IAE5D,YAAY,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;IACrC,YAAY,CAAC,IAAI,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;IAC5C,YAAY,CAAC,IAAI,CAAC,oBAAoB,gBAAgB,EAAE,CAAC,CAAC;IAE1D,IAAI,SAAS,EAAE;QACb,YAAY,CAAC,IAAI,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC;KAC/C;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvC,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClD,CAAC,CAAC;AA/CW,QAAA,qBAAqB,yBA+ChC;AAEF,4EAA4E;AAC5E,2EAA2E;AAC3E,6CAA6C;AACtC,MAAM,eAAe,GAAG,CAC7B,SAAiB,EACjB,OAAgB,EACR,EAAE;IACV,IAAI;QACF,IAAI,OAAO,EAAE;YACX,OAAO,IAAA,kBAAU,EAAC,SAAS,CAAC,CAAC;SAC9B;KACF;IAAC,OAAO,GAAG,EAAE;QACZ,iBAAO,CAAC,GAAG,CAAC,6CAA6C,SAAS,EAAE,CAAC,CAAC;KACvE;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAZW,QAAA,eAAe,mBAY1B"}
@@ -0,0 +1,32 @@
1
+ import BloctoSDK from '@blocto/sdk';
2
+ import { Chain, WalletConnector } from '../wallet-connector';
3
+ import { EvmNetwork } from './evm-network';
4
+ declare class BloctoEvm implements WalletConnector {
5
+ private client?;
6
+ name: string;
7
+ evmNetworks: EvmNetwork[];
8
+ canConnectViaQrCode: boolean;
9
+ canConnectViaCustodialService: boolean;
10
+ connectedChain: Chain;
11
+ supportedChains: Chain[];
12
+ chainID: string;
13
+ constructor({ evmNetworks }: {
14
+ evmNetworks: EvmNetwork[];
15
+ });
16
+ private getClient;
17
+ fetchPublicAddress(): Promise<string | undefined>;
18
+ connect(): Promise<void>;
19
+ getBalance(): Promise<string | undefined>;
20
+ getConnectedAccounts(): Promise<string[]>;
21
+ getSigner(): Promise<BloctoSDK>;
22
+ getWeb3Provider(): undefined;
23
+ isInstalledOnBrowser(): boolean;
24
+ proveOwnership(messageToSign: string): Promise<string | undefined>;
25
+ signMessage(messageToSign: string): Promise<string | undefined>;
26
+ supportsNetworkSwitching(): boolean;
27
+ switchNetwork(): Promise<void>;
28
+ setupEventListeners(): void;
29
+ teardownEventListeners(): void;
30
+ endSession?(): Promise<void>;
31
+ }
32
+ export default BloctoEvm;
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const sdk_1 = __importDefault(require("@blocto/sdk"));
16
+ const utils_1 = require("ethers/lib/utils");
17
+ const ethers_1 = require("ethers");
18
+ const constants_1 = require("../constants");
19
+ //TODO - DYN-1020 Add support for multi-chain-IDs
20
+ class BloctoEvm {
21
+ constructor({ evmNetworks }) {
22
+ this.name = 'bloctoevm';
23
+ this.canConnectViaQrCode = false;
24
+ this.canConnectViaCustodialService = true;
25
+ this.connectedChain = 'EVM';
26
+ this.supportedChains = ['EVM', 'ETH'];
27
+ this.chainID = '0x89'; // Polygon
28
+ //filter out networks that are not supported by Blocto
29
+ this.evmNetworks = evmNetworks;
30
+ }
31
+ // TODO add cache for chainID to switch it
32
+ getClient() {
33
+ if (!this.client) {
34
+ this.client = new sdk_1.default({
35
+ ethereum: {
36
+ chainId: this.chainID,
37
+ //TODO we need to support different RPCs for different networks
38
+ rpc: `https://polygon-mainnet.infura.io/v3/${constants_1.infuraId}`,
39
+ },
40
+ });
41
+ }
42
+ return this.client;
43
+ }
44
+ fetchPublicAddress() {
45
+ return __awaiter(this, void 0, void 0, function* () {
46
+ const client = this.getClient();
47
+ if (client.ethereum) {
48
+ const addresses = yield client.ethereum.request({
49
+ method: 'eth_requestAccounts',
50
+ });
51
+ if (addresses.length > 0) {
52
+ return addresses[0];
53
+ }
54
+ }
55
+ return undefined;
56
+ });
57
+ }
58
+ connect() {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ yield this.fetchPublicAddress();
61
+ });
62
+ }
63
+ //TODO - DYN-1020 Add support for multi-chain
64
+ getBalance() {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ const address = yield this.fetchPublicAddress();
67
+ if (address) {
68
+ const provider = ethers_1.ethers.getDefaultProvider('matic', {
69
+ infura: constants_1.infuraId,
70
+ });
71
+ const result = yield provider.getBalance(address);
72
+ if (!result)
73
+ return;
74
+ return ethers_1.ethers.utils.formatEther(result);
75
+ }
76
+ return undefined;
77
+ });
78
+ }
79
+ getConnectedAccounts() {
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ const client = this.getClient();
82
+ let accounts = [];
83
+ if (client.ethereum) {
84
+ accounts = yield client.ethereum.request({ method: 'eth_accounts' });
85
+ }
86
+ return accounts;
87
+ });
88
+ }
89
+ getSigner() {
90
+ return Promise.resolve(this.getClient());
91
+ }
92
+ getWeb3Provider() {
93
+ return undefined;
94
+ }
95
+ isInstalledOnBrowser() {
96
+ return false;
97
+ }
98
+ proveOwnership(messageToSign) {
99
+ return this.signMessage(messageToSign);
100
+ }
101
+ signMessage(messageToSign) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ const client = this.getClient();
104
+ const hexMessageToSign = (0, utils_1.hexlify)((0, utils_1.toUtf8Bytes)(messageToSign));
105
+ let signedMessage;
106
+ if (client.ethereum) {
107
+ signedMessage = yield client.ethereum.request({
108
+ method: 'personal_sign',
109
+ params: [hexMessageToSign],
110
+ });
111
+ }
112
+ return signedMessage;
113
+ });
114
+ }
115
+ supportsNetworkSwitching() {
116
+ return false;
117
+ }
118
+ // *********************
119
+ // Unimplemented methods
120
+ // *********************
121
+ // TODO implement as part of DYN-1020
122
+ switchNetwork() {
123
+ return __awaiter(this, void 0, void 0, function* () {
124
+ return Promise.resolve();
125
+ });
126
+ }
127
+ setupEventListeners() {
128
+ return;
129
+ }
130
+ teardownEventListeners() {
131
+ return;
132
+ }
133
+ endSession() {
134
+ return Promise.resolve();
135
+ }
136
+ }
137
+ exports.default = BloctoEvm;
138
+ //# sourceMappingURL=BloctoEvm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BloctoEvm.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/ethereum/BloctoEvm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ import Phantom from './phantom';
3
+ export declare const MEMO_PROGRAM_ID: PublicKey;
4
+ declare class PhantomLedger extends Phantom {
5
+ name: string;
6
+ signMessage(): Promise<string | undefined>;
7
+ proveOwnership(messageToSign: string): Promise<string | undefined>;
8
+ signMessageViaTransaction(messageToSign: string): Promise<string>;
9
+ private buildAuthTx;
10
+ }
11
+ export default PhantomLedger;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.MEMO_PROGRAM_ID = void 0;
16
+ const web3_js_1 = require("@solana/web3.js");
17
+ const errors_1 = require("../../errors");
18
+ const extractNonce_1 = require("../../utils/extractNonce");
19
+ const phantom_1 = __importDefault(require("./phantom"));
20
+ exports.MEMO_PROGRAM_ID = new web3_js_1.PublicKey('MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr');
21
+ class PhantomLedger extends phantom_1.default {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.name = 'Phantom Ledger';
25
+ this.buildAuthTx = (message) => {
26
+ const transaction = new web3_js_1.Transaction();
27
+ transaction.add(new web3_js_1.TransactionInstruction({
28
+ data: Buffer.from(message, 'utf8'),
29
+ keys: [],
30
+ programId: exports.MEMO_PROGRAM_ID,
31
+ }));
32
+ return transaction;
33
+ };
34
+ }
35
+ signMessage() {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ throw new errors_1.NotSupportedError(`Message signing is currently not supported on Phantom Ledger
38
+ You can use signMessageViaTransaction instead to achieve similar functionality
39
+ by signing a transaction with a memo instruction.
40
+ You can read more about it here https://github.com/solana-labs/solana/issues/21366`);
41
+ });
42
+ }
43
+ proveOwnership(messageToSign) {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ const nonce = (0, extractNonce_1.extractNonce)(messageToSign);
46
+ if (!nonce) {
47
+ throw new Error('Nonce missing');
48
+ }
49
+ return this.signMessageViaTransaction(nonce);
50
+ });
51
+ }
52
+ signMessageViaTransaction(messageToSign) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ const address = yield this.fetchPublicAddress();
55
+ if (!address) {
56
+ throw new Error('Address missing');
57
+ }
58
+ const transaction = this.buildAuthTx(messageToSign);
59
+ transaction.feePayer = new web3_js_1.PublicKey(address);
60
+ transaction.recentBlockhash = (yield this.getWeb3Provider().getLatestBlockhash()).blockhash;
61
+ const signer = yield this.getSigner();
62
+ if (!signer) {
63
+ throw new Error('Signer not found');
64
+ }
65
+ const signedTransaction = yield signer.signTransaction(transaction);
66
+ return JSON.stringify({
67
+ signedTransaction: signedTransaction.serialize(),
68
+ });
69
+ });
70
+ }
71
+ }
72
+ exports.default = PhantomLedger;
73
+ //# sourceMappingURL=phantom-ledger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phantom-ledger.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/phantom-ledger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAIyB;AAEzB,yCAAiD;AACjD,2DAAwD;AAExD,wDAAgC;AAEnB,QAAA,eAAe,GAAG,IAAI,mBAAS,CAC1C,6CAA6C,CAC9C,CAAC;AAEF,MAAM,aAAc,SAAQ,iBAAO;IAAnC;;QACW,SAAI,GAAG,gBAAgB,CAAC;QAgDzB,gBAAW,GAAG,CAAC,OAAe,EAAe,EAAE;YACrD,MAAM,WAAW,GAAG,IAAI,qBAAW,EAAE,CAAC;YAEtC,WAAW,CAAC,GAAG,CACb,IAAI,gCAAsB,CAAC;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;gBAClC,IAAI,EAAE,EAAE;gBACR,SAAS,EAAE,uBAAe;aAC3B,CAAC,CACH,CAAC;YACF,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC;IACJ,CAAC;IA1DgB,WAAW;;YACxB,MAAM,IAAI,0BAAiB,CACzB;;;yFAGmF,CACpF,CAAC;QACJ,CAAC;KAAA;IAEc,cAAc,CAC3B,aAAqB;;YAErB,MAAM,KAAK,GAAG,IAAA,2BAAY,EAAC,aAAa,CAAC,CAAC;YAE1C,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;aAClC;YAED,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;KAAA;IAEK,yBAAyB,CAAC,aAAqB;;YACnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAEhD,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;aACpC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YACpD,WAAW,CAAC,QAAQ,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,CAAC;YAC9C,WAAW,CAAC,eAAe,GAAG,CAC5B,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,kBAAkB,EAAE,CAClD,CAAC,SAAS,CAAC;YAEZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YAEtC,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;aACrC;YAED,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACpE,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,iBAAiB,EAAE,iBAAiB,CAAC,SAAS,EAAE;aACjD,CAAC,CAAC;QACL,CAAC;KAAA;CAcF;AAED,kBAAe,aAAa,CAAC"}
@@ -35,6 +35,7 @@ class SolProviderHelper {
35
35
  exodussol: this.ExodusProvider,
36
36
  glow: this.GlowProvider,
37
37
  phantom: this.PhantomProvider,
38
+ phantomledger: this.PhantomProvider,
38
39
  solflare: this.SolflareProvider,
39
40
  };
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"solProviderHelper.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/solProviderHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,uDAAwD;AACxD,yEAAsE;AAEtE,sDAAmD;AAenD,MAAa,iBAAiB;IAA9B;QACE,iBAAY,GAAa,GAAG,EAAE,CAC5B,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAElE,oBAAe,GAAa,GAAG,EAAE,CAC/B,IAAI,CAAC,uBAAuB,CAAC;YAC3B,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;YAClC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE;YACvC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE;SACnC,CAAC,CAAC;QAEL,qBAAgB,GAAa,GAAG,EAAE,CAChC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEtE,kBAAa,GAAa,GAAG,EAAE,CAC7B,IAAI,CAAC,uBAAuB,CAAC;YAC3B,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;YAClC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE;SACvC,CAAC,CAAC;QAEL,mBAAc,GAAa,GAAG,EAAE,CAC9B,IAAI,CAAC,uBAAuB,CAAC;YAC3B,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE;YAClC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE;SAClC,CAAC,CAAC;QAEL,cAAS,GAEL;YACF,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,SAAS,EAAE,IAAI,CAAC,cAAc;YAC9B,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,QAAQ,EAAE,IAAI,CAAC,gBAAgB;SAChC,CAAC;IAgIJ,CAAC;IA9HC,uBAAuB,CACrB,aAAuC;QAEvC,OAAO,IAAA,+BAAc,EAAU,IAAI,CAAC,qBAAqB,EAAE,EAAE,aAAa,CAAC,CAAC;IAC9E,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CACnD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,EACzC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,MAAgB;QAClC,MAAM,eAAe,GAAc,EAAE,CAAC;QAEtC,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;YAC/B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;aAAM,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,EAAE;YACrC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACpC,eAAe,CAAC,IAAI,CAAC,QAAmB,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,iBAAiB,CAAC,UAAkB;QAClC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,UAAkB;;QAC7B,OAAO,MAAA,MAAA,IAAI,CAAC,SAAS,EAAC,IAAA,yCAAmB,EAAC,UAAU,CAAC,CAAC,kDAAI,CAAC;IAC7D,CAAC;IAEK,0BAA0B,CAAC,IAAY;;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEzC,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YAED,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;YAEzB,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC;YAC/B,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC;KAAA;IAEK,eAAe,CAAC,IAAY;;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEzC,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YACD,IAAI;gBACF,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC;aACjB;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO,SAAS,CAAC;aAClB;QACH,CAAC;KAAA;IACK,mBAAmB,CACvB,aAAqB,EACrB,IAAY;;YAEZ,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;YAElE,IAAI,CAAC,aAAa,EAAE;gBAClB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEzC,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YAED,MAAM,cAAc,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC/D,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAS,EAAE;gBACxC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,QAAQ,CAAC,WAAW,CAC/C,cAAc,EACd,MAAM,CACP,CAAkB,CAAC;gBAEpB,OAAO,IAAA,2BAAc,EAAC,SAAS,CAAC,CAAC;YACnC,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED,oBAAoB,CAClB,SAA+B,EAC/B,YAAsB;QAEtB,MAAM,mBAAmB,GAA8B,CAAO,OAAO,EAAE,EAAE;;YACvE,IAAI,OAAO,CAAC,QAAQ,EAAE,EAAE;gBACtB,MAAM,CAAA,MAAA,SAAS,CAAC,eAAe,0DAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA,CAAC;aACzD;QACH,CAAC,CAAA,CAAC;QAEF,MAAM,gBAAgB,GAA2B,GAAS,EAAE;;YAC1D,MAAM,CAAA,MAAA,SAAS,CAAC,YAAY,yDAAI,CAAA,CAAC;QACnC,CAAC,CAAA,CAAC;QAEF,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;QACxD,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAEjD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IAED,uBAAuB,CAAC,IAAY;QAClC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QAED,YAAY,CAAC,kBAAkB,EAAE,CAAC;IACpC,CAAC;IAEK,4BAA4B,CAAC,IAAY;;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEzC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;gBACpC,OAAO,EAAE,CAAC;aACX;YAED,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzC,CAAC;KAAA;CACF;AAlKD,8CAkKC"}
1
+ {"version":3,"file":"solProviderHelper.js","sourceRoot":"","sources":["../../../../../../packages/multi-wallet/src/wallets/solana/solProviderHelper.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { ethers } from 'ethers';
2
2
  import { Connection } from '@solana/web3.js';
3
+ import BloctoSDK from '@blocto/sdk';
3
4
  import { ISolana } from './window';
4
5
  import { IMyAlgoSigner } from './algorand/myalgoSigner';
5
6
  export declare type Chain = 'ETH' | 'FLOW' | 'SOL' | 'EVM' | 'ALGO';
@@ -28,7 +29,7 @@ export interface WalletConnector {
28
29
  fetchPublicAddress(opts?: FetchPublicAddressOpts, nonce?: string): Promise<string | undefined>;
29
30
  getBalance(): Promise<string | undefined>;
30
31
  getConnectedAccounts(): Promise<string[]>;
31
- getSigner(): Promise<ethers.providers.JsonRpcSigner | ISolana | IMyAlgoSigner | undefined>;
32
+ getSigner(): Promise<ethers.providers.JsonRpcSigner | ISolana | IMyAlgoSigner | BloctoSDK | undefined>;
32
33
  getWeb3Provider(): ethers.providers.Web3Provider | Connection | undefined | void;
33
34
  isInstalledOnBrowser(): boolean;
34
35
  name: string;
@@ -5,6 +5,7 @@
5
5
  * Coinbase adds itself to window.coinbaseWalletExtension
6
6
  * and also provider and previousProvider
7
7
  */
8
+ import { Transaction } from '@solana/web3.js';
8
9
  export interface IProvider {
9
10
  isBlocto?: boolean;
10
11
  isBraveWallet?: boolean;
@@ -59,4 +60,5 @@ export interface ISolana {
59
60
  removeAllListeners: () => void;
60
61
  removeListener: (eventMessage: string, callback?: (publickey: string) => void) => Promise<void | object>;
61
62
  signMessage: (message: Uint8Array, encoding?: string) => Promise<void | object>;
63
+ signTransaction: (transaction: Transaction) => Promise<Transaction>;
62
64
  }