@rango-dev/provider-trustwallet 0.47.1-next.0 → 0.47.1-next.2
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/constants.d.ts.map +1 -1
- package/dist/legacy/index.d.ts.map +1 -1
- package/dist/mod.js +1 -1
- package/dist/mod.js.map +4 -4
- package/dist/namespaces/evm.d.ts.map +1 -1
- package/dist/provider-trustwallet.build.json +1 -1
- package/dist/{legacy/signer.d.ts → signer.d.ts} +1 -1
- package/dist/signer.d.ts.map +1 -0
- package/dist/signers/solanaSigner.d.ts.map +1 -0
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/constants.ts +7 -0
- package/src/legacy/index.ts +1 -2
- package/src/namespaces/evm.ts +6 -0
- package/src/{legacy/signer.ts → signer.ts} +1 -1
- package/src/utils.ts +10 -0
- package/dist/legacy/signer.d.ts.map +0 -1
- package/dist/legacy/signers/solanaSigner.d.ts.map +0 -1
- /package/dist/{legacy/signers → signers}/solanaSigner.d.ts +0 -0
- /package/src/{legacy/signers → signers}/solanaSigner.ts +0 -0
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAU5D,eAAO,MAAM,SAAS,iBAAiB,CAAC;AAExC,eAAO,MAAM,IAAI,EAAE,YAsClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/legacy/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,SAAS,EACT,aAAa,EACb,UAAU,EACX,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAKL,WAAW,EACZ,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/legacy/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,SAAS,EACT,aAAa,EACb,UAAU,EACX,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAKL,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,KAAK,QAAQ,EACb,WAAW,IAAI,oBAAoB,EACpC,MAAM,aAAa,CAAC;AAIrB,eAAO,MAAM,MAAM;;CAElB,CAAC;AAEF,eAAO,MAAM,WAAW,6BAAuB,CAAC;AAGhD,eAAO,MAAM,OAAO,EAAE,OAMrB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,SAA0B,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,aAAmC,CAAC;AAEhE,eAAO,MAAM,kBAAkB,EAAE,gBAAwC,CAAC;AAE1E,eAAO,MAAM,UAAU,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,aAAa,CAC9D,CAAC;AAET,eAAO,MAAM,aAAa,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,KAAK,UAsCjE,CAAC;AAEF,QAAA,MAAM,mBAAmB,EAAE,MAAM,uBAS/B,CAAC;AAEH,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
package/dist/mod.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var
|
|
1
|
+
var g=Object.defineProperty;var o=(e,t)=>g(e,"name",{value:t,configurable:!0});var C=(e,t)=>()=>(e&&(t=e(e=0)),t);var j=(e,t)=>{for(var r in t)g(e,r,{get:t[r],enumerable:!0})};var w={};j(w,{CustomSolanaSigner:()=>p});import{DefaultSolanaSigner as O}from"@rango-dev/signer-solana";import V from"bs58";var p,f=C(()=>{"use strict";p=class extends O{static{o(this,"CustomSolanaSigner")}async signMessage(t){let r=(await this.provider.signMessage(t))?.signature;return V.encode(r)}}});import{defineVersions as fe}from"@rango-dev/wallets-core/utils";import"@rango-dev/wallets-core/legacy";import{canSwitchNetworkToEvm as F,getEvmAccounts as R,subscribeToEvm as _,switchNetworkForEvm as H,WalletTypes as U}from"@rango-dev/wallets-shared";import{evmBlockchains as E,solanaBlockchain as A}from"rango-types";import{LegacyNetworks as h}from"@rango-dev/wallets-core/legacy";import{getNetworkInstance as b}from"@rango-dev/wallets-shared";import{DefaultSignerFactory as D,TransactionType as v}from"rango-types";async function i(e){let t=b(e,h.ETHEREUM),r=b(e,h.SOLANA),n=new D,{DefaultEvmSigner:M}=await import("@rango-dev/signer-evm"),{CustomSolanaSigner:B}=await Promise.resolve().then(()=>(f(),w));return n.registerSigner(v.EVM,new M(t)),n.registerSigner(v.SOLANA,new B(r)),n}o(i,"getSigners");import{LegacyNetworks as c}from"@rango-dev/wallets-core/legacy";function a(){let{trustwallet:e}=window;if(!e||!(e?.isTrust||e?.isTrustWallet))return null;let t=new Map;t.set(c.ETHEREUM,e);let{solana:r}=e;return r&&r.isTrustWallet&&t.set(c.SOLANA,r),t}o(a,"trustWallet");function S(){let e=a();if(!e)throw new Error("Trust Wallet is not injected. Please check your wallet.");return e}o(S,"getInstanceOrThrow");function m(){let t=a()?.get(c.ETHEREUM);if(!t)throw new Error("TrustWallet not injected or EVM not enabled. Please check your wallet.");return t}o(m,"evmTrustWallet");function d(){let t=a()?.get(c.SOLANA);if(!t)throw new Error("TrustWallet not injected or Solana not enabled. Please check your wallet.");return t}o(d,"solanaTrustWallet");function l(e,t){if(typeof t=="string"&&t==="cancelled"){let r=new Error("User rejected the request");return r.code=4001,r}return t}o(l,"standardizeTrustWalletInAppBrowserError");var z=U.TRUST_WALLET,q={type:z},G=a,J=o(async({instance:e})=>{let{accounts:t,chainId:r}=await R(e);return{accounts:t,chainId:r}},"connect"),K=_,Q=H,X=F,Y=i,Z=o(e=>{let t=E(e),r=A(e);return{name:"Trust Wallet",img:"https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg",installLink:{CHROME:"https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph",BRAVE:"https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph",DEFAULT:"https://trustwallet.com/browser-extension"},color:"#ffffff",supportedChains:[...t,...r],needsNamespace:{selection:"multiple",data:[{label:"EVM",value:"EVM",id:"ETH",getSupportedChains:n=>E(n)},{label:"Solana",value:"Solana",id:"SOLANA",getSupportedChains:n=>A(n)}]}}},"getWalletInfo"),T=o(()=>({config:q,getInstance:G,connect:J,subscribe:K,switchNetwork:Q,canSwitchNetworkTo:X,getSigners:Y,getWalletInfo:Z}),"buildLegacyProvider");import{ProviderBuilder as we}from"@rango-dev/wallets-core";import"@rango-dev/wallets-core";import{evmBlockchains as $,solanaBlockchain as ee}from"rango-types";var s="trust-wallet",y={name:"Trust Wallet",icon:"https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg",extensions:{chrome:"https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph",brave:"https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph",homepage:"https://trustwallet.com/browser-extension"},properties:[{name:"namespaces",value:{selection:"multiple",data:[{label:"EVM",value:"EVM",id:"ETH",getSupportedChains:e=>$(e)},{label:"Solana",value:"Solana",id:"SOLANA",getSupportedChains:e=>ee(e)}]}},{name:"signers",value:{getSigners:async()=>i(S())}}]};import{NamespaceBuilder as te}from"@rango-dev/wallets-core";import{builders as oe,standardizeAndThrowError as re}from"@rango-dev/wallets-core/namespaces/common";import{actions as u,builders as P}from"@rango-dev/wallets-core/namespaces/evm";var[ne,x]=u.changeAccountSubscriber(m),ae=P.connect().action(u.connect(m)).before(ne).or(x).or(l).or(re).build(),se=oe.disconnect().after(x).build(),ie=P.canSwitchNetwork().action(u.canSwitchNetwork()).build(),k=new te("EVM",s).action(ae).action(se).action(ie).build();import{NamespaceBuilder as ce}from"@rango-dev/wallets-core";import{builders as le,standardizeAndThrowError as pe}from"@rango-dev/wallets-core/namespaces/common";import{actions as W,builders as me}from"@rango-dev/wallets-core/namespaces/solana";var[de,L]=W.changeAccountSubscriber(d),ue=me.connect().action(W.connect(d)).before(de).or(L).or(l).or(pe).build(),ge=le.disconnect().after(L).build(),I=new ce("Solana",s).action(ue).action(ge).build();var N=o(()=>new we(s).init(function(e){let[,t]=e.state();a()&&(t("installed",!0),console.debug("[trustwallet] instance detected.",e))}).config("info",y).add("evm",k).add("solana",I).build(),"buildProvider");var lt=o(()=>fe().version("0.0.0",T()).version("1.0.0",N()).build(),"versions");export{lt as versions};
|
|
2
2
|
//# sourceMappingURL=mod.js.map
|
package/dist/mod.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/
|
|
4
|
-
"sourcesContent": ["import { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport base58 from 'bs58';\n\nexport class CustomSolanaSigner extends DefaultSolanaSigner {\n async signMessage(msg: string): Promise<string> {\n const signature = (await this.provider.signMessage(msg))?.signature;\n return base58.encode(signature);\n }\n}\n", "import { defineVersions } from '@rango-dev/wallets-core/utils';\n\nimport { buildLegacyProvider } from './legacy/index.js';\nimport { buildProvider } from './provider.js';\n\nconst versions = () =>\n defineVersions()\n .version('0.0.0', buildLegacyProvider())\n .version('1.0.0', buildProvider())\n .build();\n\nexport { versions };\n", "import type {\n CanSwitchNetwork,\n Connect,\n Subscribe,\n SwitchNetwork,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport type { BlockchainMeta, SignerFactory } from 'rango-types';\n\nimport { type LegacyProviderInterface } from '@rango-dev/wallets-core/legacy';\nimport {\n canSwitchNetworkToEvm,\n getEvmAccounts,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletTypes,\n} from '@rango-dev/wallets-shared';\nimport { evmBlockchains, solanaBlockchain } from 'rango-types';\n\nimport {\n type Provider,\n trustWallet as trustwallet_instance,\n} from '../utils.js';\n\nimport signer from './signer.js';\n\nconst WALLET = WalletTypes.TRUST_WALLET;\n\nexport const config = {\n type: WALLET,\n};\n\nexport const getInstance = trustwallet_instance;\n\n// doc: https://developer.trustwallet.com/trust-wallet-browser-extension/extension-guide\nexport const connect: Connect = async ({ instance }) => {\n const { accounts, chainId } = await getEvmAccounts(instance);\n return {\n accounts,\n chainId,\n };\n};\n\nexport const subscribe: Subscribe = subscribeToEvm;\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: Provider) => Promise<SignerFactory> =\n signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n const solana = solanaBlockchain(allBlockChains);\n\n return {\n name: 'Trust Wallet',\n img: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n DEFAULT: 'https://trustwallet.com/browser-extension',\n },\n color: '#ffffff',\n supportedChains: [...evms, ...solana],\n needsNamespace: {\n selection: 'multiple',\n data: [\n {\n label: 'EVM',\n value: 'EVM',\n id: 'ETH',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n evmBlockchains(allBlockchains),\n },\n {\n label: 'Solana',\n value: 'Solana',\n id: 'SOLANA',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n solanaBlockchain(allBlockchains),\n },\n ],\n },\n };\n};\n\nconst buildLegacyProvider: () => LegacyProviderInterface = () => ({\n config,\n getInstance,\n connect,\n subscribe,\n switchNetwork,\n canSwitchNetworkTo,\n getSigners,\n getWalletInfo,\n});\n\nexport { buildLegacyProvider };\n", "import type { Context } from '@rango-dev/wallets-core';\nimport type { ProviderAPI as EvmProviderApi } from '@rango-dev/wallets-core/namespaces/evm';\nimport type { ProviderAPI as SolanaProviderApi } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { LegacyNetworks } from '@rango-dev/wallets-core/legacy';\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Provider = Record<string, any>;\nexport function trustWallet(): Provider | null {\n const { trustwallet } = window;\n\n if (!trustwallet || !(trustwallet?.isTrust || trustwallet?.isTrustWallet)) {\n return null;\n }\n\n const instances = new Map();\n\n instances.set(LegacyNetworks.ETHEREUM, trustwallet);\n const { solana } = trustwallet;\n if (solana && solana.isTrustWallet) {\n instances.set(LegacyNetworks.SOLANA, solana);\n }\n\n return instances;\n}\n\nexport function evmTrustWallet(): EvmProviderApi {\n const instances = trustWallet();\n\n const evmInstance = instances?.get(LegacyNetworks.ETHEREUM);\n\n if (!evmInstance) {\n throw new Error(\n 'TrustWallet not injected or EVM not enabled. Please check your wallet.'\n );\n }\n\n return evmInstance as EvmProviderApi;\n}\n\nexport function solanaTrustWallet(): SolanaProviderApi {\n const instance = trustWallet();\n const solanaInstance = instance?.get(LegacyNetworks.SOLANA);\n\n if (!solanaInstance) {\n throw new Error(\n 'TrustWallet not injected or Solana not enabled. Please check your wallet.'\n );\n }\n\n return solanaInstance as SolanaProviderApi;\n}\n\n// Considering that the errors thrown in Trust Wallet in-app browser do not follow EIP-1193, we detect such errors and standardize them.\nexport function standardizeTrustWalletInAppBrowserError(\n _context: Context,\n error: unknown\n) {\n if (typeof error === 'string' && error === 'cancelled') {\n const error = new Error('User rejected the request') as Error & {\n code: number;\n };\n error.code = 4001;\n return error;\n }\n return error;\n}\n", "import type { Provider } from '../utils.js';\nimport type { SignerFactory } from 'rango-types';\n\nimport { LegacyNetworks as Networks } from '@rango-dev/wallets-core/legacy';\nimport { getNetworkInstance } from '@rango-dev/wallets-shared';\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider: Provider\n): Promise<SignerFactory> {\n const ethProvider = getNetworkInstance(provider, Networks.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Networks.SOLANA);\n\n const signers = new DefaultSignerFactory();\n const { DefaultEvmSigner } = await import('@rango-dev/signer-evm');\n const { CustomSolanaSigner } = await import('./signers/solanaSigner.js');\n\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new CustomSolanaSigner(solProvider));\n\n return signers;\n}\n", "import { ProviderBuilder } from '@rango-dev/wallets-core';\n\nimport { info, WALLET_ID } from './constants.js';\nimport { evm } from './namespaces/evm.js';\nimport { solana } from './namespaces/solana.js';\nimport { trustWallet as trustwalletInstance } from './utils.js';\n\nconst buildProvider = () =>\n new ProviderBuilder(WALLET_ID)\n .init(function (context) {\n const [, setState] = context.state();\n\n if (trustwalletInstance()) {\n setState('installed', true);\n console.debug('[trustwallet] instance detected.', context);\n }\n })\n .config('info', info)\n .add('evm', evm)\n .add('solana', solana)\n .build();\n\nexport { buildProvider };\n", "import { type ProviderInfo } from '@rango-dev/wallets-core';\nimport {\n type BlockchainMeta,\n evmBlockchains,\n solanaBlockchain,\n} from 'rango-types';\n\nexport const WALLET_ID = 'trust-wallet';\n\nexport const info: ProviderInfo = {\n name: 'Trust Wallet',\n icon: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg',\n extensions: {\n chrome:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n brave:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n homepage: 'https://trustwallet.com/browser-extension',\n },\n properties: [\n {\n name: 'namespaces',\n value: {\n selection: 'multiple',\n data: [\n {\n label: 'EVM',\n value: 'EVM',\n id: 'ETH',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n evmBlockchains(allBlockchains),\n },\n {\n label: 'Solana',\n value: 'Solana',\n id: 'SOLANA',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n solanaBlockchain(allBlockchains),\n },\n ],\n },\n },\n ],\n};\n", "import type { EvmActions } from '@rango-dev/wallets-core/namespaces/evm';\n\nimport { NamespaceBuilder } from '@rango-dev/wallets-core';\nimport {\n builders as commonBuilders,\n standardizeAndThrowError,\n} from '@rango-dev/wallets-core/namespaces/common';\nimport { actions, builders } from '@rango-dev/wallets-core/namespaces/evm';\n\nimport { WALLET_ID } from '../constants.js';\nimport {\n evmTrustWallet,\n standardizeTrustWalletInAppBrowserError,\n} from '../utils.js';\n\nconst [changeAccountSubscriber, changeAccountCleanup] =\n actions.changeAccountSubscriber(evmTrustWallet);\n\nconst connect = builders\n .connect()\n .action(actions.connect(evmTrustWallet))\n .before(changeAccountSubscriber)\n .or(changeAccountCleanup)\n .or(standardizeTrustWalletInAppBrowserError)\n .or(standardizeAndThrowError)\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<EvmActions>()\n .after(changeAccountCleanup)\n .build();\n\nconst evm = new NamespaceBuilder<EvmActions>('EVM', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .build();\n\nexport { evm };\n", "import type { SolanaActions } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { NamespaceBuilder } from '@rango-dev/wallets-core';\nimport {\n builders as commonBuilders,\n standardizeAndThrowError,\n} from '@rango-dev/wallets-core/namespaces/common';\nimport { actions, builders } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { WALLET_ID } from '../constants.js';\nimport {\n solanaTrustWallet,\n standardizeTrustWalletInAppBrowserError,\n} from '../utils.js';\n\nconst [changeAccountSubscriber, changeAccountCleanup] =\n actions.changeAccountSubscriber(solanaTrustWallet);\n\nconst connect = builders\n .connect()\n .action(actions.connect(solanaTrustWallet))\n .before(changeAccountSubscriber)\n .or(changeAccountCleanup)\n .or(standardizeTrustWalletInAppBrowserError)\n .or(standardizeAndThrowError)\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<SolanaActions>()\n .after(changeAccountCleanup)\n .build();\n\nconst solana = new NamespaceBuilder<SolanaActions>('Solana', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .build();\n\nexport { solana };\n"],
|
|
5
|
-
"mappings": "gLAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,OAAS,uBAAAC,MAA2B,2BACpC,OAAOC,MAAY,OADnB,IAGaF,EAHbG,EAAAC,EAAA,kBAGaJ,EAAN,cAAiCC,CAAoB,CAH5D,MAG4D,CAAAI,EAAA,2BAC1D,MAAM,YAAYC,EAA8B,CAC9C,IAAMC,GAAa,MAAM,KAAK,SAAS,YAAYD,CAAG,IAAI,UAC1D,OAAOJ,EAAO,OAAOK,CAAS,CAChC,CACF,ICRA,OAAS,kBAAAC,OAAsB,gCCS/B,MAA6C,iCAC7C,OACE,yBAAAC,EACA,kBAAAC,EACA,kBAAAC,EACA,uBAAAC,EACA,eAAAC,MACK,4BACP,OAAS,kBAAAC,EAAgB,oBAAAC,MAAwB,
|
|
6
|
-
"names": ["solanaSigner_exports", "__export", "CustomSolanaSigner", "DefaultSolanaSigner", "base58", "init_solanaSigner", "__esmMin", "__name", "msg", "signature", "defineVersions", "canSwitchNetworkToEvm", "getEvmAccounts", "subscribeToEvm", "switchNetworkForEvm", "WalletTypes", "evmBlockchains", "solanaBlockchain", "
|
|
3
|
+
"sources": ["../src/signers/solanaSigner.ts", "../src/mod.ts", "../src/legacy/index.ts", "../src/signer.ts", "../src/utils.ts", "../src/provider.ts", "../src/constants.ts", "../src/namespaces/evm.ts", "../src/namespaces/solana.ts"],
|
|
4
|
+
"sourcesContent": ["import { DefaultSolanaSigner } from '@rango-dev/signer-solana';\nimport base58 from 'bs58';\n\nexport class CustomSolanaSigner extends DefaultSolanaSigner {\n async signMessage(msg: string): Promise<string> {\n const signature = (await this.provider.signMessage(msg))?.signature;\n return base58.encode(signature);\n }\n}\n", "import { defineVersions } from '@rango-dev/wallets-core/utils';\n\nimport { buildLegacyProvider } from './legacy/index.js';\nimport { buildProvider } from './provider.js';\n\nconst versions = () =>\n defineVersions()\n .version('0.0.0', buildLegacyProvider())\n .version('1.0.0', buildProvider())\n .build();\n\nexport { versions };\n", "import type {\n CanSwitchNetwork,\n Connect,\n Subscribe,\n SwitchNetwork,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport type { BlockchainMeta, SignerFactory } from 'rango-types';\n\nimport { type LegacyProviderInterface } from '@rango-dev/wallets-core/legacy';\nimport {\n canSwitchNetworkToEvm,\n getEvmAccounts,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletTypes,\n} from '@rango-dev/wallets-shared';\nimport { evmBlockchains, solanaBlockchain } from 'rango-types';\n\nimport signer from '../signer.js';\nimport {\n type Provider,\n trustWallet as trustwallet_instance,\n} from '../utils.js';\n\nconst WALLET = WalletTypes.TRUST_WALLET;\n\nexport const config = {\n type: WALLET,\n};\n\nexport const getInstance = trustwallet_instance;\n\n// doc: https://developer.trustwallet.com/trust-wallet-browser-extension/extension-guide\nexport const connect: Connect = async ({ instance }) => {\n const { accounts, chainId } = await getEvmAccounts(instance);\n return {\n accounts,\n chainId,\n };\n};\n\nexport const subscribe: Subscribe = subscribeToEvm;\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: Provider) => Promise<SignerFactory> =\n signer;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n const solana = solanaBlockchain(allBlockChains);\n\n return {\n name: 'Trust Wallet',\n img: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg',\n installLink: {\n CHROME:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n BRAVE:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n DEFAULT: 'https://trustwallet.com/browser-extension',\n },\n color: '#ffffff',\n supportedChains: [...evms, ...solana],\n needsNamespace: {\n selection: 'multiple',\n data: [\n {\n label: 'EVM',\n value: 'EVM',\n id: 'ETH',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n evmBlockchains(allBlockchains),\n },\n {\n label: 'Solana',\n value: 'Solana',\n id: 'SOLANA',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n solanaBlockchain(allBlockchains),\n },\n ],\n },\n };\n};\n\nconst buildLegacyProvider: () => LegacyProviderInterface = () => ({\n config,\n getInstance,\n connect,\n subscribe,\n switchNetwork,\n canSwitchNetworkTo,\n getSigners,\n getWalletInfo,\n});\n\nexport { buildLegacyProvider };\n", "import type { Provider } from './utils.js';\nimport type { SignerFactory } from 'rango-types';\n\nimport { LegacyNetworks as Networks } from '@rango-dev/wallets-core/legacy';\nimport { getNetworkInstance } from '@rango-dev/wallets-shared';\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider: Provider\n): Promise<SignerFactory> {\n const ethProvider = getNetworkInstance(provider, Networks.ETHEREUM);\n const solProvider = getNetworkInstance(provider, Networks.SOLANA);\n\n const signers = new DefaultSignerFactory();\n const { DefaultEvmSigner } = await import('@rango-dev/signer-evm');\n const { CustomSolanaSigner } = await import('./signers/solanaSigner.js');\n\n signers.registerSigner(TxType.EVM, new DefaultEvmSigner(ethProvider));\n signers.registerSigner(TxType.SOLANA, new CustomSolanaSigner(solProvider));\n\n return signers;\n}\n", "import type { Context } from '@rango-dev/wallets-core';\nimport type { ProviderAPI as EvmProviderApi } from '@rango-dev/wallets-core/namespaces/evm';\nimport type { ProviderAPI as SolanaProviderApi } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { LegacyNetworks } from '@rango-dev/wallets-core/legacy';\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Provider = Record<string, any>;\nexport function trustWallet(): Provider | null {\n const { trustwallet } = window;\n\n if (!trustwallet || !(trustwallet?.isTrust || trustwallet?.isTrustWallet)) {\n return null;\n }\n\n const instances = new Map();\n\n instances.set(LegacyNetworks.ETHEREUM, trustwallet);\n const { solana } = trustwallet;\n if (solana && solana.isTrustWallet) {\n instances.set(LegacyNetworks.SOLANA, solana);\n }\n\n return instances;\n}\n\nexport function getInstanceOrThrow(): Provider {\n const instances = trustWallet();\n\n if (!instances) {\n throw new Error('Trust Wallet is not injected. Please check your wallet.');\n }\n\n return instances;\n}\n\nexport function evmTrustWallet(): EvmProviderApi {\n const instances = trustWallet();\n\n const evmInstance = instances?.get(LegacyNetworks.ETHEREUM);\n\n if (!evmInstance) {\n throw new Error(\n 'TrustWallet not injected or EVM not enabled. Please check your wallet.'\n );\n }\n\n return evmInstance as EvmProviderApi;\n}\n\nexport function solanaTrustWallet(): SolanaProviderApi {\n const instance = trustWallet();\n const solanaInstance = instance?.get(LegacyNetworks.SOLANA);\n\n if (!solanaInstance) {\n throw new Error(\n 'TrustWallet not injected or Solana not enabled. Please check your wallet.'\n );\n }\n\n return solanaInstance as SolanaProviderApi;\n}\n\n// Considering that the errors thrown in Trust Wallet in-app browser do not follow EIP-1193, we detect such errors and standardize them.\nexport function standardizeTrustWalletInAppBrowserError(\n _context: Context,\n error: unknown\n) {\n if (typeof error === 'string' && error === 'cancelled') {\n const error = new Error('User rejected the request') as Error & {\n code: number;\n };\n error.code = 4001;\n return error;\n }\n return error;\n}\n", "import { ProviderBuilder } from '@rango-dev/wallets-core';\n\nimport { info, WALLET_ID } from './constants.js';\nimport { evm } from './namespaces/evm.js';\nimport { solana } from './namespaces/solana.js';\nimport { trustWallet as trustwalletInstance } from './utils.js';\n\nconst buildProvider = () =>\n new ProviderBuilder(WALLET_ID)\n .init(function (context) {\n const [, setState] = context.state();\n\n if (trustwalletInstance()) {\n setState('installed', true);\n console.debug('[trustwallet] instance detected.', context);\n }\n })\n .config('info', info)\n .add('evm', evm)\n .add('solana', solana)\n .build();\n\nexport { buildProvider };\n", "import { type ProviderInfo } from '@rango-dev/wallets-core';\nimport {\n type BlockchainMeta,\n evmBlockchains,\n solanaBlockchain,\n} from 'rango-types';\n\nimport getSigners from './signer.js';\nimport { getInstanceOrThrow } from './utils.js';\n\nexport const WALLET_ID = 'trust-wallet';\n\nexport const info: ProviderInfo = {\n name: 'Trust Wallet',\n icon: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/trustwallet/icon.svg',\n extensions: {\n chrome:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n brave:\n 'https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph',\n homepage: 'https://trustwallet.com/browser-extension',\n },\n properties: [\n {\n name: 'namespaces',\n value: {\n selection: 'multiple',\n data: [\n {\n label: 'EVM',\n value: 'EVM',\n id: 'ETH',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n evmBlockchains(allBlockchains),\n },\n {\n label: 'Solana',\n value: 'Solana',\n id: 'SOLANA',\n getSupportedChains: (allBlockchains: BlockchainMeta[]) =>\n solanaBlockchain(allBlockchains),\n },\n ],\n },\n },\n {\n name: 'signers',\n value: { getSigners: async () => getSigners(getInstanceOrThrow()) },\n },\n ],\n};\n", "import type { EvmActions } from '@rango-dev/wallets-core/namespaces/evm';\n\nimport { NamespaceBuilder } from '@rango-dev/wallets-core';\nimport {\n builders as commonBuilders,\n standardizeAndThrowError,\n} from '@rango-dev/wallets-core/namespaces/common';\nimport { actions, builders } from '@rango-dev/wallets-core/namespaces/evm';\n\nimport { WALLET_ID } from '../constants.js';\nimport {\n evmTrustWallet,\n standardizeTrustWalletInAppBrowserError,\n} from '../utils.js';\n\nconst [changeAccountSubscriber, changeAccountCleanup] =\n actions.changeAccountSubscriber(evmTrustWallet);\n\nconst connect = builders\n .connect()\n .action(actions.connect(evmTrustWallet))\n .before(changeAccountSubscriber)\n .or(changeAccountCleanup)\n .or(standardizeTrustWalletInAppBrowserError)\n .or(standardizeAndThrowError)\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<EvmActions>()\n .after(changeAccountCleanup)\n .build();\n\nconst canSwitchNetwork = builders\n .canSwitchNetwork()\n .action(actions.canSwitchNetwork())\n .build();\n\nconst evm = new NamespaceBuilder<EvmActions>('EVM', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .action(canSwitchNetwork)\n .build();\n\nexport { evm };\n", "import type { SolanaActions } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { NamespaceBuilder } from '@rango-dev/wallets-core';\nimport {\n builders as commonBuilders,\n standardizeAndThrowError,\n} from '@rango-dev/wallets-core/namespaces/common';\nimport { actions, builders } from '@rango-dev/wallets-core/namespaces/solana';\n\nimport { WALLET_ID } from '../constants.js';\nimport {\n solanaTrustWallet,\n standardizeTrustWalletInAppBrowserError,\n} from '../utils.js';\n\nconst [changeAccountSubscriber, changeAccountCleanup] =\n actions.changeAccountSubscriber(solanaTrustWallet);\n\nconst connect = builders\n .connect()\n .action(actions.connect(solanaTrustWallet))\n .before(changeAccountSubscriber)\n .or(changeAccountCleanup)\n .or(standardizeTrustWalletInAppBrowserError)\n .or(standardizeAndThrowError)\n .build();\n\nconst disconnect = commonBuilders\n .disconnect<SolanaActions>()\n .after(changeAccountCleanup)\n .build();\n\nconst solana = new NamespaceBuilder<SolanaActions>('Solana', WALLET_ID)\n .action(connect)\n .action(disconnect)\n .build();\n\nexport { solana };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["solanaSigner_exports", "__export", "CustomSolanaSigner", "DefaultSolanaSigner", "base58", "init_solanaSigner", "__esmMin", "__name", "msg", "signature", "defineVersions", "canSwitchNetworkToEvm", "getEvmAccounts", "subscribeToEvm", "switchNetworkForEvm", "WalletTypes", "evmBlockchains", "solanaBlockchain", "Networks", "getNetworkInstance", "DefaultSignerFactory", "TxType", "getSigners", "provider", "ethProvider", "getNetworkInstance", "Networks", "solProvider", "signers", "DefaultSignerFactory", "DefaultEvmSigner", "CustomSolanaSigner", "TxType", "__name", "LegacyNetworks", "trustWallet", "trustwallet", "instances", "LegacyNetworks", "solana", "__name", "getInstanceOrThrow", "evmTrustWallet", "evmInstance", "solanaTrustWallet", "solanaInstance", "standardizeTrustWalletInAppBrowserError", "_context", "error", "WALLET", "WalletTypes", "config", "getInstance", "trustWallet", "connect", "__name", "instance", "accounts", "chainId", "getEvmAccounts", "subscribe", "subscribeToEvm", "switchNetwork", "switchNetworkForEvm", "canSwitchNetworkTo", "canSwitchNetworkToEvm", "getSigners", "getWalletInfo", "allBlockChains", "evms", "evmBlockchains", "solana", "solanaBlockchain", "allBlockchains", "buildLegacyProvider", "ProviderBuilder", "evmBlockchains", "solanaBlockchain", "WALLET_ID", "info", "allBlockchains", "evmBlockchains", "solanaBlockchain", "getSigners", "getInstanceOrThrow", "NamespaceBuilder", "commonBuilders", "standardizeAndThrowError", "actions", "builders", "changeAccountSubscriber", "changeAccountCleanup", "actions", "evmTrustWallet", "connect", "builders", "standardizeTrustWalletInAppBrowserError", "standardizeAndThrowError", "disconnect", "commonBuilders", "canSwitchNetwork", "evm", "NamespaceBuilder", "WALLET_ID", "NamespaceBuilder", "commonBuilders", "standardizeAndThrowError", "actions", "builders", "changeAccountSubscriber", "changeAccountCleanup", "actions", "solanaTrustWallet", "connect", "builders", "standardizeTrustWalletInAppBrowserError", "standardizeAndThrowError", "disconnect", "commonBuilders", "solana", "NamespaceBuilder", "WALLET_ID", "buildProvider", "__name", "ProviderBuilder", "WALLET_ID", "context", "setState", "trustWallet", "info", "evm", "solana", "versions", "__name", "defineVersions", "buildLegacyProvider", "buildProvider"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../src/namespaces/evm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../src/namespaces/evm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAqCzE,QAAA,MAAM,GAAG,gEAIC,CAAC;AAEX,OAAO,EAAE,GAAG,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"src/
|
|
1
|
+
{"inputs":{"src/signers/solanaSigner.ts":{"bytes":322,"imports":[{"path":"@rango-dev/signer-solana","kind":"import-statement","external":true},{"path":"bs58","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signer.ts":{"bytes":913,"imports":[{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/signer-evm","kind":"dynamic-import","external":true},{"path":"src/signers/solanaSigner.ts","kind":"dynamic-import","original":"./signers/solanaSigner.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/utils.ts":{"bytes":2186,"imports":[{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/legacy/index.ts":{"bytes":2725,"imports":[{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signer.ts","kind":"import-statement","original":"../signer.js"},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/constants.ts":{"bytes":1441,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signer.ts","kind":"import-statement","original":"./signer.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"}],"format":"esm"},"src/namespaces/evm.ts":{"bytes":1187,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/evm","kind":"import-statement","external":true},{"path":"src/constants.ts","kind":"import-statement","original":"../constants.js"},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"}],"format":"esm"},"src/namespaces/solana.ts":{"bytes":1085,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/solana","kind":"import-statement","external":true},{"path":"src/constants.ts","kind":"import-statement","original":"../constants.js"},{"path":"src/utils.ts","kind":"import-statement","original":"../utils.js"}],"format":"esm"},"src/provider.ts":{"bytes":675,"imports":[{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"src/constants.ts","kind":"import-statement","original":"./constants.js"},{"path":"src/namespaces/evm.ts","kind":"import-statement","original":"./namespaces/evm.js"},{"path":"src/namespaces/solana.ts","kind":"import-statement","original":"./namespaces/solana.js"},{"path":"src/utils.ts","kind":"import-statement","original":"./utils.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/mod.ts":{"bytes":332,"imports":[{"path":"@rango-dev/wallets-core/utils","kind":"import-statement","external":true},{"path":"src/legacy/index.ts","kind":"import-statement","original":"./legacy/index.js"},{"path":"src/provider.ts","kind":"import-statement","original":"./provider.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/mod.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":18161},"dist/mod.js":{"imports":[{"path":"@rango-dev/signer-solana","kind":"import-statement","external":true},{"path":"bs58","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/utils","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/signer-evm","kind":"dynamic-import","external":true},{"path":"@rango-dev/wallets-core/legacy","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/evm","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/common","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-core/namespaces/solana","kind":"import-statement","external":true}],"exports":["versions"],"entryPoint":"src/mod.ts","inputs":{"src/signers/solanaSigner.ts":{"bytesInOutput":304},"src/mod.ts":{"bytesInOutput":144},"src/legacy/index.ts":{"bytesInOutput":1205},"src/signer.ts":{"bytesInOutput":485},"src/utils.ts":{"bytesInOutput":925},"src/provider.ts":{"bytesInOutput":266},"src/constants.ts":{"bytesInOutput":756},"src/namespaces/evm.ts":{"bytesInOutput":509},"src/namespaces/solana.ts":{"bytesInOutput":445}},"bytes":5271}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMjD,wBAA8B,UAAU,CACtC,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,aAAa,CAAC,CAYxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solanaSigner.d.ts","sourceRoot":"","sources":["../../src/signers/solanaSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,qBAAa,kBAAmB,SAAQ,mBAAmB;IACnD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAIhD"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { ProviderAPI as EvmProviderApi } from '@rango-dev/wallets-core/name
|
|
|
3
3
|
import type { ProviderAPI as SolanaProviderApi } from '@rango-dev/wallets-core/namespaces/solana';
|
|
4
4
|
export type Provider = Record<string, any>;
|
|
5
5
|
export declare function trustWallet(): Provider | null;
|
|
6
|
+
export declare function getInstanceOrThrow(): Provider;
|
|
6
7
|
export declare function evmTrustWallet(): EvmProviderApi;
|
|
7
8
|
export declare function solanaTrustWallet(): SolanaProviderApi;
|
|
8
9
|
export declare function standardizeTrustWalletInAppBrowserError(_context: Context, error: unknown): unknown;
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC5F,OAAO,KAAK,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAIlG,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC3C,wBAAgB,WAAW,IAAI,QAAQ,GAAG,IAAI,CAgB7C;AAED,wBAAgB,cAAc,IAAI,cAAc,CAY/C;AAED,wBAAgB,iBAAiB,IAAI,iBAAiB,CAWrD;AAGD,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,OAAO,WAUf"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC5F,OAAO,KAAK,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAIlG,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC3C,wBAAgB,WAAW,IAAI,QAAQ,GAAG,IAAI,CAgB7C;AAED,wBAAgB,kBAAkB,IAAI,QAAQ,CAQ7C;AAED,wBAAgB,cAAc,IAAI,cAAc,CAY/C;AAED,wBAAgB,iBAAiB,IAAI,iBAAiB,CAWrD;AAGD,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,OAAO,EACjB,KAAK,EAAE,OAAO,WAUf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rango-dev/provider-trustwallet",
|
|
3
|
-
"version": "0.47.1-next.
|
|
3
|
+
"version": "0.47.1-next.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"source": "./src/mod.ts",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@rango-dev/signer-evm": "^0.38.1-next.0",
|
|
25
|
-
"@rango-dev/wallets-shared": "^0.47.1-next.
|
|
25
|
+
"@rango-dev/wallets-shared": "^0.47.1-next.2",
|
|
26
26
|
"bs58": "^5.0.0",
|
|
27
27
|
"rango-types": "^0.1.88"
|
|
28
28
|
},
|
package/src/constants.ts
CHANGED
|
@@ -5,6 +5,9 @@ import {
|
|
|
5
5
|
solanaBlockchain,
|
|
6
6
|
} from 'rango-types';
|
|
7
7
|
|
|
8
|
+
import getSigners from './signer.js';
|
|
9
|
+
import { getInstanceOrThrow } from './utils.js';
|
|
10
|
+
|
|
8
11
|
export const WALLET_ID = 'trust-wallet';
|
|
9
12
|
|
|
10
13
|
export const info: ProviderInfo = {
|
|
@@ -40,5 +43,9 @@ export const info: ProviderInfo = {
|
|
|
40
43
|
],
|
|
41
44
|
},
|
|
42
45
|
},
|
|
46
|
+
{
|
|
47
|
+
name: 'signers',
|
|
48
|
+
value: { getSigners: async () => getSigners(getInstanceOrThrow()) },
|
|
49
|
+
},
|
|
43
50
|
],
|
|
44
51
|
};
|
package/src/legacy/index.ts
CHANGED
|
@@ -17,13 +17,12 @@ import {
|
|
|
17
17
|
} from '@rango-dev/wallets-shared';
|
|
18
18
|
import { evmBlockchains, solanaBlockchain } from 'rango-types';
|
|
19
19
|
|
|
20
|
+
import signer from '../signer.js';
|
|
20
21
|
import {
|
|
21
22
|
type Provider,
|
|
22
23
|
trustWallet as trustwallet_instance,
|
|
23
24
|
} from '../utils.js';
|
|
24
25
|
|
|
25
|
-
import signer from './signer.js';
|
|
26
|
-
|
|
27
26
|
const WALLET = WalletTypes.TRUST_WALLET;
|
|
28
27
|
|
|
29
28
|
export const config = {
|
package/src/namespaces/evm.ts
CHANGED
|
@@ -30,9 +30,15 @@ const disconnect = commonBuilders
|
|
|
30
30
|
.after(changeAccountCleanup)
|
|
31
31
|
.build();
|
|
32
32
|
|
|
33
|
+
const canSwitchNetwork = builders
|
|
34
|
+
.canSwitchNetwork()
|
|
35
|
+
.action(actions.canSwitchNetwork())
|
|
36
|
+
.build();
|
|
37
|
+
|
|
33
38
|
const evm = new NamespaceBuilder<EvmActions>('EVM', WALLET_ID)
|
|
34
39
|
.action(connect)
|
|
35
40
|
.action(disconnect)
|
|
41
|
+
.action(canSwitchNetwork)
|
|
36
42
|
.build();
|
|
37
43
|
|
|
38
44
|
export { evm };
|
package/src/utils.ts
CHANGED
|
@@ -23,6 +23,16 @@ export function trustWallet(): Provider | null {
|
|
|
23
23
|
return instances;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
+
export function getInstanceOrThrow(): Provider {
|
|
27
|
+
const instances = trustWallet();
|
|
28
|
+
|
|
29
|
+
if (!instances) {
|
|
30
|
+
throw new Error('Trust Wallet is not injected. Please check your wallet.');
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return instances;
|
|
34
|
+
}
|
|
35
|
+
|
|
26
36
|
export function evmTrustWallet(): EvmProviderApi {
|
|
27
37
|
const instances = trustWallet();
|
|
28
38
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/legacy/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMjD,wBAA8B,UAAU,CACtC,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,aAAa,CAAC,CAYxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"solanaSigner.d.ts","sourceRoot":"","sources":["../../../src/legacy/signers/solanaSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,qBAAa,kBAAmB,SAAQ,mBAAmB;IACnD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAIhD"}
|
|
File without changes
|
|
File without changes
|