@rango-dev/provider-okx 0.5.1-next.0 → 0.5.1-next.10
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/dist/helpers.d.ts +2 -2
- package/dist/helpers.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +3 -3
- package/package.json +4 -4
- package/src/helpers.ts +23 -23
- package/src/index.ts +6 -6
- package/src/signer.ts +3 -3
package/dist/helpers.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Networks, ProviderConnectResult } from '@rango-dev/wallets-shared';
|
|
2
2
|
export declare function okx_instance(): Map<any, any> | null;
|
|
3
3
|
export declare function getSolanaAccounts(instance: any): Promise<ProviderConnectResult[]>;
|
|
4
|
-
export declare const OKX_WALLET_SUPPORTED_CHAINS:
|
|
4
|
+
export declare const OKX_WALLET_SUPPORTED_CHAINS: Networks[];
|
|
5
5
|
//# sourceMappingURL=helpers.d.ts.map
|
package/dist/helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE5E,wBAAgB,YAAY,yBAQ3B;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,GAAG,GACZ,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAelC;AAED,eAAO,MAAM,2BAA2B,YAkBvC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { WalletTypes, CanSwitchNetwork, Connect, Subscribe, SwitchNetwork, WalletInfo } from '@rango-dev/wallets-shared';
|
|
2
2
|
import { okx_instance } from './helpers';
|
|
3
3
|
import { SignerFactory, BlockchainMeta } from 'rango-types';
|
|
4
|
+
import { Networks } from '@rango-dev/wallets-shared';
|
|
4
5
|
export declare const config: {
|
|
5
6
|
type: WalletTypes;
|
|
6
|
-
defaultNetwork:
|
|
7
|
+
defaultNetwork: Networks;
|
|
7
8
|
};
|
|
8
9
|
export declare const getInstance: typeof okx_instance;
|
|
9
10
|
export declare const connect: Connect;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,OAAO,EAEP,SAAS,EACT,aAAa,EAKb,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAEL,YAAY,EAEb,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAmB,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAIrD,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,eAAO,MAAM,WAAW,qBAAe,CAAC;AACxC,eAAO,MAAM,OAAO,EAAE,OAerB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,SAYvB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,aAU3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,gBAAwC,CAAC;AAE1E,eAAO,MAAM,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,aAAsB,CAAC;AAEnE,eAAO,MAAM,aAAa,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,KAAK,UAiBhE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var k=Object.defineProperty;var c=(t,o)=>k(t,"name",{value:o,configurable:!0});import{
|
|
1
|
+
var k=Object.defineProperty;var c=(t,o)=>k(t,"name",{value:o,configurable:!0});import{WalletTypes as T,canSwitchNetworkToEvm as d,chooseInstance as m,getEvmAccounts as x,switchNetworkForEvm as I}from"@rango-dev/wallets-shared";import{Networks as e}from"@rango-dev/wallets-shared";function g(){let{okxwallet:t}=window;if(!t)return null;let o=new Map;return t&&o.set(e.ETHEREUM,t),t.solana&&o.set(e.SOLANA,t.solana),o}c(g,"okx_instance");async function l(t){let o=await t.get(e.SOLANA),n=[];if(o){let s=(await o.connect()).publicKey.toString();n.push({accounts:s?[s]:[],chainId:e.SOLANA})}return n}c(l,"getSolanaAccounts");var h=[e.ETHEREUM,e.BTC,e.BSC,e.TRON,e.SOLANA,e.POLYGON,e.FANTOM,e.ARBITRUM,e.OPTIMISM,e.CRONOS,e.BOBA,e.GNOSIS,e.MOONBEAM,e.MOONRIVER,e.HARMONY,e.LTC,e.AVAX_CCHAIN];import{DefaultEvmSigner as A}from"@rango-dev/signer-evm";import{DefaultSolanaSigner as O}from"@rango-dev/signer-solana";import{Networks as p,getNetworkInstance as S}from"@rango-dev/wallets-shared";import{DefaultSignerFactory as R,TransactionType as u}from"rango-types";function w(t){let o=S(t,p.ETHEREUM),n=S(t,p.SOLANA),r=new R;return r.registerSigner(u.EVM,new A(o)),r.registerSigner(u.SOLANA,new O(n)),r}c(w,"getSigners");import{isEvmBlockchain as C}from"rango-types";import{Networks as a}from"@rango-dev/wallets-shared";var M=T.OKX,et={type:M,defaultNetwork:a.ETHEREUM},ot=g,nt=c(async({instance:t,meta:o})=>{let n=[],r=m(t,o,a.ETHEREUM);if(r){let i=await x(r);n.push(i)}let s=await l(t);return n=[...n,...s],n},"connect"),ct=c(({instance:t,updateAccounts:o,meta:n})=>{m(t,n,a.ETHEREUM)?.on("accountsChanged",async s=>{let i=n.filter(C).find(N=>N.name===a.ETHEREUM)?.chainId;o(s,i);let[{accounts:E,chainId:f}]=await l(t);o(E,f)})},"subscribe"),rt=c(async t=>{let o=m(t.instance,t.meta,t.network);return I({...t,instance:o})},"switchNetwork"),st=d,at=w,it=c(t=>({name:"OKX",img:"https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/okx.png",installLink:{CHROME:"https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge",BRAVE:"https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge",FIREFOX:"https://addons.mozilla.org/en-US/firefox/addon/okexwallet",DEFAULT:"https://www.okx.com/web3"},color:"white",supportedChains:t.filter(o=>h.includes(o.name))}),"getWalletInfo");export{st as canSwitchNetworkTo,et as config,nt as connect,ot as getInstance,at as getSigners,it as getWalletInfo,ct as subscribe,rt as switchNetwork};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts", "../src/helpers.ts", "../src/signer.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n
|
|
5
|
-
"mappings": "+EAAA,OACE,
|
|
6
|
-
"names": ["
|
|
4
|
+
"sourcesContent": ["import {\n WalletTypes,\n CanSwitchNetwork,\n Connect,\n ProviderConnectResult,\n Subscribe,\n SwitchNetwork,\n canSwitchNetworkToEvm,\n chooseInstance,\n getEvmAccounts,\n switchNetworkForEvm,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\n\nimport {\n getSolanaAccounts,\n okx_instance,\n OKX_WALLET_SUPPORTED_CHAINS,\n} from './helpers';\nimport signer from './signer';\nimport { SignerFactory, isEvmBlockchain, BlockchainMeta } from 'rango-types';\nimport { Networks } from '@rango-dev/wallets-shared';\n\nconst WALLET = WalletTypes.OKX;\n\nexport const config = {\n type: WALLET,\n defaultNetwork: Networks.ETHEREUM,\n};\n\nexport const getInstance = okx_instance;\nexport const connect: Connect = async ({ instance, meta }) => {\n let results: ProviderConnectResult[] = [];\n\n const evm_instance = chooseInstance(instance, meta, Networks.ETHEREUM);\n\n if (evm_instance) {\n const evm = await getEvmAccounts(evm_instance);\n results.push(evm);\n }\n\n const solanaResults = await getSolanaAccounts(instance);\n\n results = [...results, ...solanaResults];\n\n return results;\n};\n\nexport const subscribe: Subscribe = ({ instance, updateAccounts, meta }) => {\n const ethInstance = chooseInstance(instance, meta, Networks.ETHEREUM);\n\n ethInstance?.on('accountsChanged', async (addresses: string[]) => {\n const eth_chainId = meta\n .filter(isEvmBlockchain)\n .find((blockchain) => blockchain.name === Networks.ETHEREUM)?.chainId;\n\n updateAccounts(addresses, eth_chainId);\n const [{ accounts, chainId }] = await getSolanaAccounts(instance);\n updateAccounts(accounts, chainId);\n });\n};\n\nexport const switchNetwork: SwitchNetwork = async (options) => {\n const instance = chooseInstance(\n options.instance,\n options.meta,\n options.network\n );\n return switchNetworkForEvm({\n ...options,\n instance,\n });\n};\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => SignerFactory = signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => ({\n name: 'OKX',\n img: 'https://raw.githubusercontent.com/rango-exchange/rango-types/main/assets/icons/wallets/okx.png',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/okx-wallet/mcohilncbfahbmgdjkbpemcciiolgcge',\n FIREFOX: 'https://addons.mozilla.org/en-US/firefox/addon/okexwallet',\n DEFAULT: 'https://www.okx.com/web3',\n },\n color: 'white',\n supportedChains: allBlockChains.filter((blockchainMeta) =>\n OKX_WALLET_SUPPORTED_CHAINS.includes(blockchainMeta.name as Networks)\n ),\n});\n", "import { Networks, ProviderConnectResult } from '@rango-dev/wallets-shared';\n\nexport function okx_instance() {\n const { okxwallet } = window;\n if (!okxwallet) return null;\n const instances = new Map();\n if (okxwallet) instances.set(Networks.ETHEREUM, okxwallet);\n if (okxwallet.solana) instances.set(Networks.SOLANA, okxwallet.solana);\n\n return instances;\n}\n\nexport async function getSolanaAccounts(\n instance: any\n): Promise<ProviderConnectResult[]> {\n const solanaInstance = await instance.get(Networks.SOLANA);\n const results: ProviderConnectResult[] = [];\n\n if (solanaInstance) {\n const solanaResponse = await solanaInstance.connect();\n const account = solanaResponse.publicKey.toString();\n\n results.push({\n accounts: account ? [account] : [],\n chainId: Networks.SOLANA,\n });\n }\n\n return results;\n}\n\nexport const OKX_WALLET_SUPPORTED_CHAINS = [\n Networks.ETHEREUM,\n Networks.BTC,\n Networks.BSC,\n Networks.TRON,\n Networks.SOLANA,\n Networks.POLYGON,\n Networks.FANTOM,\n Networks.ARBITRUM,\n Networks.OPTIMISM,\n Networks.CRONOS,\n Networks.BOBA,\n Networks.GNOSIS,\n Networks.MOONBEAM,\n Networks.MOONRIVER,\n Networks.HARMONY,\n Networks.LTC,\n Networks.AVAX_CCHAIN,\n];\n", "import { DefaultEvmSigner } from '@rango-dev/signer-evm';\nimport { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport { Networks, getNetworkInstance } from '@rango-dev/wallets-shared';\nimport {\n DefaultSignerFactory,\n SignerFactory,\n TransactionType as TxType,\n} from 'rango-types';\n\nexport default function getSigners(provider: any): SignerFactory {\n const ethProvider = getNetworkInstance(provider, Networks.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Networks.SOLANA);\n const signers = new DefaultSignerFactory();\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));\n return signers;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["WalletTypes", "canSwitchNetworkToEvm", "chooseInstance", "getEvmAccounts", "switchNetworkForEvm", "Networks", "okx_instance", "okxwallet", "instances", "Networks", "__name", "getSolanaAccounts", "instance", "solanaInstance", "results", "account", "OKX_WALLET_SUPPORTED_CHAINS", "DefaultEvmSigner", "DefaultSolanaSigner", "Networks", "getNetworkInstance", "DefaultSignerFactory", "TxType", "getSigners", "provider", "ethProvider", "getNetworkInstance", "Networks", "solProvider", "signers", "DefaultSignerFactory", "TxType", "DefaultEvmSigner", "DefaultSolanaSigner", "__name", "isEvmBlockchain", "Networks", "WALLET", "WalletTypes", "config", "Networks", "getInstance", "okx_instance", "connect", "__name", "instance", "meta", "results", "evm_instance", "chooseInstance", "evm", "getEvmAccounts", "solanaResults", "getSolanaAccounts", "subscribe", "updateAccounts", "addresses", "eth_chainId", "isEvmBlockchain", "blockchain", "accounts", "chainId", "switchNetwork", "options", "switchNetworkForEvm", "canSwitchNetworkTo", "canSwitchNetworkToEvm", "getSigners", "getWalletInfo", "allBlockChains", "blockchainMeta", "OKX_WALLET_SUPPORTED_CHAINS"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rango-dev/provider-okx",
|
|
3
|
-
"version": "0.5.1-next.
|
|
3
|
+
"version": "0.5.1-next.10",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"lint": "eslint \"**/*.{ts,tsx}\" --ignore-path ../../.eslintignore"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@rango-dev/signer-evm": "^0.5.1-next.
|
|
24
|
-
"@rango-dev/signer-solana": "^0.5.1-next.
|
|
25
|
-
"@rango-dev/wallets-shared": "^0.5.
|
|
23
|
+
"@rango-dev/signer-evm": "^0.5.1-next.2",
|
|
24
|
+
"@rango-dev/signer-solana": "^0.5.1-next.1",
|
|
25
|
+
"@rango-dev/wallets-shared": "^0.5.1-next.10",
|
|
26
26
|
"rango-types": "^0.1.39"
|
|
27
27
|
},
|
|
28
28
|
"publishConfig": {
|
package/src/helpers.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Networks, ProviderConnectResult } from '@rango-dev/wallets-shared';
|
|
2
2
|
|
|
3
3
|
export function okx_instance() {
|
|
4
4
|
const { okxwallet } = window;
|
|
5
5
|
if (!okxwallet) return null;
|
|
6
6
|
const instances = new Map();
|
|
7
|
-
if (okxwallet) instances.set(
|
|
8
|
-
if (okxwallet.solana) instances.set(
|
|
7
|
+
if (okxwallet) instances.set(Networks.ETHEREUM, okxwallet);
|
|
8
|
+
if (okxwallet.solana) instances.set(Networks.SOLANA, okxwallet.solana);
|
|
9
9
|
|
|
10
10
|
return instances;
|
|
11
11
|
}
|
|
@@ -13,16 +13,16 @@ export function okx_instance() {
|
|
|
13
13
|
export async function getSolanaAccounts(
|
|
14
14
|
instance: any
|
|
15
15
|
): Promise<ProviderConnectResult[]> {
|
|
16
|
-
const solanaInstance = await instance.get(
|
|
16
|
+
const solanaInstance = await instance.get(Networks.SOLANA);
|
|
17
17
|
const results: ProviderConnectResult[] = [];
|
|
18
18
|
|
|
19
|
-
if (
|
|
19
|
+
if (solanaInstance) {
|
|
20
20
|
const solanaResponse = await solanaInstance.connect();
|
|
21
21
|
const account = solanaResponse.publicKey.toString();
|
|
22
22
|
|
|
23
23
|
results.push({
|
|
24
24
|
accounts: account ? [account] : [],
|
|
25
|
-
chainId:
|
|
25
|
+
chainId: Networks.SOLANA,
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
28
|
|
|
@@ -30,21 +30,21 @@ export async function getSolanaAccounts(
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export const OKX_WALLET_SUPPORTED_CHAINS = [
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
33
|
+
Networks.ETHEREUM,
|
|
34
|
+
Networks.BTC,
|
|
35
|
+
Networks.BSC,
|
|
36
|
+
Networks.TRON,
|
|
37
|
+
Networks.SOLANA,
|
|
38
|
+
Networks.POLYGON,
|
|
39
|
+
Networks.FANTOM,
|
|
40
|
+
Networks.ARBITRUM,
|
|
41
|
+
Networks.OPTIMISM,
|
|
42
|
+
Networks.CRONOS,
|
|
43
|
+
Networks.BOBA,
|
|
44
|
+
Networks.GNOSIS,
|
|
45
|
+
Networks.MOONBEAM,
|
|
46
|
+
Networks.MOONRIVER,
|
|
47
|
+
Networks.HARMONY,
|
|
48
|
+
Networks.LTC,
|
|
49
|
+
Networks.AVAX_CCHAIN,
|
|
50
50
|
];
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Network,
|
|
3
2
|
WalletTypes,
|
|
4
3
|
CanSwitchNetwork,
|
|
5
4
|
Connect,
|
|
@@ -20,19 +19,20 @@ import {
|
|
|
20
19
|
} from './helpers';
|
|
21
20
|
import signer from './signer';
|
|
22
21
|
import { SignerFactory, isEvmBlockchain, BlockchainMeta } from 'rango-types';
|
|
22
|
+
import { Networks } from '@rango-dev/wallets-shared';
|
|
23
23
|
|
|
24
24
|
const WALLET = WalletTypes.OKX;
|
|
25
25
|
|
|
26
26
|
export const config = {
|
|
27
27
|
type: WALLET,
|
|
28
|
-
defaultNetwork:
|
|
28
|
+
defaultNetwork: Networks.ETHEREUM,
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
export const getInstance = okx_instance;
|
|
32
32
|
export const connect: Connect = async ({ instance, meta }) => {
|
|
33
33
|
let results: ProviderConnectResult[] = [];
|
|
34
34
|
|
|
35
|
-
const evm_instance = chooseInstance(instance, meta,
|
|
35
|
+
const evm_instance = chooseInstance(instance, meta, Networks.ETHEREUM);
|
|
36
36
|
|
|
37
37
|
if (evm_instance) {
|
|
38
38
|
const evm = await getEvmAccounts(evm_instance);
|
|
@@ -47,12 +47,12 @@ export const connect: Connect = async ({ instance, meta }) => {
|
|
|
47
47
|
};
|
|
48
48
|
|
|
49
49
|
export const subscribe: Subscribe = ({ instance, updateAccounts, meta }) => {
|
|
50
|
-
const ethInstance = chooseInstance(instance, meta,
|
|
50
|
+
const ethInstance = chooseInstance(instance, meta, Networks.ETHEREUM);
|
|
51
51
|
|
|
52
52
|
ethInstance?.on('accountsChanged', async (addresses: string[]) => {
|
|
53
53
|
const eth_chainId = meta
|
|
54
54
|
.filter(isEvmBlockchain)
|
|
55
|
-
.find((blockchain) => blockchain.name ===
|
|
55
|
+
.find((blockchain) => blockchain.name === Networks.ETHEREUM)?.chainId;
|
|
56
56
|
|
|
57
57
|
updateAccounts(addresses, eth_chainId);
|
|
58
58
|
const [{ accounts, chainId }] = await getSolanaAccounts(instance);
|
|
@@ -91,6 +91,6 @@ export const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (
|
|
|
91
91
|
},
|
|
92
92
|
color: 'white',
|
|
93
93
|
supportedChains: allBlockChains.filter((blockchainMeta) =>
|
|
94
|
-
OKX_WALLET_SUPPORTED_CHAINS.includes(blockchainMeta.name as
|
|
94
|
+
OKX_WALLET_SUPPORTED_CHAINS.includes(blockchainMeta.name as Networks)
|
|
95
95
|
),
|
|
96
96
|
});
|
package/src/signer.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DefaultEvmSigner } from '@rango-dev/signer-evm';
|
|
2
2
|
import { DefaultSolanaSigner } from '@rango-dev/signer-solana';
|
|
3
|
-
import {
|
|
3
|
+
import { Networks, getNetworkInstance } from '@rango-dev/wallets-shared';
|
|
4
4
|
import {
|
|
5
5
|
DefaultSignerFactory,
|
|
6
6
|
SignerFactory,
|
|
@@ -8,8 +8,8 @@ import {
|
|
|
8
8
|
} from 'rango-types';
|
|
9
9
|
|
|
10
10
|
export default function getSigners(provider: any): SignerFactory {
|
|
11
|
-
const ethProvider = getNetworkInstance(provider,
|
|
12
|
-
const solProvider = getNetworkInstance(provider,
|
|
11
|
+
const ethProvider = getNetworkInstance(provider, Networks.ETHEREUM);
|
|
12
|
+
const solProvider = getNetworkInstance(provider, Networks.SOLANA);
|
|
13
13
|
const signers = new DefaultSignerFactory();
|
|
14
14
|
signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));
|
|
15
15
|
signers.registerSigner(TxType.SOLANA, new DefaultSolanaSigner(solProvider));
|