@rango-dev/provider-safe 0.41.0 → 0.41.1-next.1
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/CHANGELOG.md +4 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +3 -3
- package/dist/provider-safe.build.json +1 -1
- package/dist/signer.d.ts +2 -1
- package/package.json +5 -4
- package/src/signer.ts +6 -2
package/CHANGELOG.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as
|
|
1
|
+
import{a as o,c}from"./chunk-5CP7BBMP.js";import{canEagerlyConnectToEvm as y,canSwitchNetworkToEvm as h,subscribeToEvm as u,switchNetworkForEvm as S,WalletTypes as v}from"@rango-dev/wallets-shared";import{evmBlockchains as k,isEvmBlockchain as C}from"rango-types";import{retryLazyImport as g}from"@rango-dev/wallets-shared";import{DefaultSignerFactory as f,TransactionType as w}from"rango-types";async function r(t){let e=new f,{CustomEvmSigner:n}=await g(async()=>await import("./evm-TZ6OXXGG.js"));return e.registerSigner(w.EVM,new n(t)),e}o(r,"getSigners");var E=v.SAFE,B={type:E,isAsyncInstance:!0},P=o(async()=>await c(),"getInstance"),W=o(async({instance:t})=>{let e=await t.request({method:"eth_accounts"}),{chainId:n}=t;return{accounts:e,chainId:n}},"connect"),L=o(({instance:t,state:e,updateChainId:n,updateAccounts:s,meta:i,connect:m,disconnect:p})=>{let l=i.filter(C),a=u({instance:t,state:e,updateChainId:n,updateAccounts:s,meta:l,connect:m,disconnect:p});return()=>{a&&a()}},"subscribe"),M=S,D=h,G=r,q=y,z=o(t=>{let e=k(t);return{name:"Safe",img:"https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/safe/icon.svg",installLink:{DEFAULT:"https://app.safe.global/"},color:"#ffffff",supportedChains:e,isContractWallet:!0}},"getWalletInfo");export{q as canEagerConnect,D as canSwitchNetworkTo,B as config,W as connect,P as getInstance,G as getSigners,z as getWalletInfo,L as subscribe,M 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/signer.ts"],
|
|
4
|
-
"sourcesContent": ["import type {\n CanEagerConnect,\n CanSwitchNetwork,\n Connect,\n GetInstance,\n Subscribe,\n SwitchNetwork,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport type { BlockchainMeta, SignerFactory } from 'rango-types';\n\nimport {\n canEagerlyConnectToEvm,\n canSwitchNetworkToEvm,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletTypes,\n} from '@rango-dev/wallets-shared';\nimport { evmBlockchains, isEvmBlockchain } from 'rango-types';\n\nimport { getSafeInstance } from './helpers.js';\nimport signer from './signer.js';\n\nconst WALLET = WalletTypes.SAFE;\n\nexport const config = {\n type: WALLET,\n isAsyncInstance: true,\n};\n\nexport const getInstance: GetInstance = async () => {\n return await getSafeInstance();\n};\n\nexport const connect: Connect = async ({ instance }) => {\n const accounts = await instance.request({\n method: 'eth_accounts',\n });\n\n const { chainId } = instance;\n\n return { accounts, chainId };\n};\n\nexport const subscribe: Subscribe = ({\n instance,\n state,\n updateChainId,\n updateAccounts,\n meta,\n connect,\n disconnect,\n}) => {\n const evmBlockchainMeta = meta.filter(isEvmBlockchain);\n\n const cleanup = subscribeToEvm({\n instance,\n state,\n updateChainId,\n updateAccounts,\n meta: evmBlockchainMeta,\n connect,\n disconnect,\n });\n return () => {\n if (cleanup) {\n cleanup();\n }\n };\n};\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => Promise<SignerFactory> = signer;\n\nexport const canEagerConnect: CanEagerConnect = canEagerlyConnectToEvm;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n return {\n name: 'Safe',\n img: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/safe/icon.svg',\n installLink: {\n DEFAULT: 'https://app.safe.global/',\n },\n color: '#ffffff',\n supportedChains: evms,\n isContractWallet: true,\n };\n};\n", "import type { SignerFactory } from 'rango-types';\n\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider:
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["canEagerlyConnectToEvm", "canSwitchNetworkToEvm", "subscribeToEvm", "switchNetworkForEvm", "WalletTypes", "evmBlockchains", "isEvmBlockchain", "DefaultSignerFactory", "TxType", "getSigners", "provider", "signers", "DefaultSignerFactory", "CustomEvmSigner", "TxType", "__name", "WALLET", "WalletTypes", "config", "getInstance", "__name", "getSafeInstance", "connect", "instance", "accounts", "chainId", "subscribe", "state", "updateChainId", "updateAccounts", "meta", "disconnect", "evmBlockchainMeta", "isEvmBlockchain", "cleanup", "subscribeToEvm", "switchNetwork", "switchNetworkForEvm", "canSwitchNetworkTo", "canSwitchNetworkToEvm", "getSigners", "canEagerConnect", "canEagerlyConnectToEvm", "getWalletInfo", "allBlockChains", "evms", "evmBlockchains"]
|
|
4
|
+
"sourcesContent": ["import type {\n CanEagerConnect,\n CanSwitchNetwork,\n Connect,\n GetInstance,\n Subscribe,\n SwitchNetwork,\n WalletInfo,\n} from '@rango-dev/wallets-shared';\nimport type { BlockchainMeta, SignerFactory } from 'rango-types';\n\nimport {\n canEagerlyConnectToEvm,\n canSwitchNetworkToEvm,\n subscribeToEvm,\n switchNetworkForEvm,\n WalletTypes,\n} from '@rango-dev/wallets-shared';\nimport { evmBlockchains, isEvmBlockchain } from 'rango-types';\n\nimport { getSafeInstance } from './helpers.js';\nimport signer from './signer.js';\n\nconst WALLET = WalletTypes.SAFE;\n\nexport const config = {\n type: WALLET,\n isAsyncInstance: true,\n};\n\nexport const getInstance: GetInstance = async () => {\n return await getSafeInstance();\n};\n\nexport const connect: Connect = async ({ instance }) => {\n const accounts = await instance.request({\n method: 'eth_accounts',\n });\n\n const { chainId } = instance;\n\n return { accounts, chainId };\n};\n\nexport const subscribe: Subscribe = ({\n instance,\n state,\n updateChainId,\n updateAccounts,\n meta,\n connect,\n disconnect,\n}) => {\n const evmBlockchainMeta = meta.filter(isEvmBlockchain);\n\n const cleanup = subscribeToEvm({\n instance,\n state,\n updateChainId,\n updateAccounts,\n meta: evmBlockchainMeta,\n connect,\n disconnect,\n });\n return () => {\n if (cleanup) {\n cleanup();\n }\n };\n};\n\nexport const switchNetwork: SwitchNetwork = switchNetworkForEvm;\n\nexport const canSwitchNetworkTo: CanSwitchNetwork = canSwitchNetworkToEvm;\n\nexport const getSigners: (provider: any) => Promise<SignerFactory> = signer;\n\nexport const canEagerConnect: CanEagerConnect = canEagerlyConnectToEvm;\n\nexport const getWalletInfo: (allBlockChains: BlockchainMeta[]) => WalletInfo = (\n allBlockChains\n) => {\n const evms = evmBlockchains(allBlockChains);\n return {\n name: 'Safe',\n img: 'https://raw.githubusercontent.com/rango-exchange/assets/main/wallets/safe/icon.svg',\n installLink: {\n DEFAULT: 'https://app.safe.global/',\n },\n color: '#ffffff',\n supportedChains: evms,\n isContractWallet: true,\n };\n};\n", "import type { ProviderAPI } from '@rango-dev/wallets-core/namespaces/evm';\nimport type { SignerFactory } from 'rango-types';\n\nimport { retryLazyImport } from '@rango-dev/wallets-shared';\nimport { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';\n\nexport default async function getSigners(\n provider: ProviderAPI\n): Promise<SignerFactory> {\n const signers = new DefaultSignerFactory();\n const { CustomEvmSigner } = await retryLazyImport(\n async () => await import('./signers/evm.js')\n );\n signers.registerSigner(TxType.EVM, new CustomEvmSigner(provider));\n\n return signers;\n}\n"],
|
|
5
|
+
"mappings": "0CAWA,OACE,0BAAAA,EACA,yBAAAC,EACA,kBAAAC,EACA,uBAAAC,EACA,eAAAC,MACK,4BACP,OAAS,kBAAAC,EAAgB,mBAAAC,MAAuB,cCfhD,OAAS,mBAAAC,MAAuB,4BAChC,OAAS,wBAAAC,EAAsB,mBAAmBC,MAAc,cAEhE,eAAOC,EACLC,EACwB,CACxB,IAAMC,EAAU,IAAIC,EACd,CAAE,gBAAAC,CAAgB,EAAI,MAAMC,EAChC,SAAY,KAAM,QAAO,mBAAkB,CAC7C,EACA,OAAAH,EAAQ,eAAeI,EAAO,IAAK,IAAIF,EAAgBH,CAAQ,CAAC,EAEzDC,CACT,CAV8BK,EAAAP,EAAA,cDiB9B,IAAMQ,EAASC,EAAY,KAEdC,EAAS,CACpB,KAAMF,EACN,gBAAiB,EACnB,EAEaG,EAA2BC,EAAA,SAC/B,MAAMC,EAAgB,EADS,eAI3BC,EAAmBF,EAAA,MAAO,CAAE,SAAAG,CAAS,IAAM,CACtD,IAAMC,EAAW,MAAMD,EAAS,QAAQ,CACtC,OAAQ,cACV,CAAC,EAEK,CAAE,QAAAE,CAAQ,EAAIF,EAEpB,MAAO,CAAE,SAAAC,EAAU,QAAAC,CAAQ,CAC7B,EARgC,WAUnBC,EAAuBN,EAAA,CAAC,CACnC,SAAAG,EACA,MAAAI,EACA,cAAAC,EACA,eAAAC,EACA,KAAAC,EACA,QAAAR,EACA,WAAAS,CACF,IAAM,CACJ,IAAMC,EAAoBF,EAAK,OAAOG,CAAe,EAE/CC,EAAUC,EAAe,CAC7B,SAAAZ,EACA,MAAAI,EACA,cAAAC,EACA,eAAAC,EACA,KAAMG,EACN,QAAAV,EACA,WAAAS,CACF,CAAC,EACD,MAAO,IAAM,CACPG,GACFA,EAAQ,CAEZ,CACF,EAzBoC,aA2BvBE,EAA+BC,EAE/BC,EAAuCC,EAEvCC,EAAwDA,EAExDC,EAAmCC,EAEnCC,EAAkEvB,EAC7EwB,GACG,CACH,IAAMC,EAAOC,EAAeF,CAAc,EAC1C,MAAO,CACL,KAAM,OACN,IAAK,qFACL,YAAa,CACX,QAAS,0BACX,EACA,MAAO,UACP,gBAAiBC,EACjB,iBAAkB,EACpB,CACF,EAd+E",
|
|
6
|
+
"names": ["canEagerlyConnectToEvm", "canSwitchNetworkToEvm", "subscribeToEvm", "switchNetworkForEvm", "WalletTypes", "evmBlockchains", "isEvmBlockchain", "retryLazyImport", "DefaultSignerFactory", "TxType", "getSigners", "provider", "signers", "DefaultSignerFactory", "CustomEvmSigner", "retryLazyImport", "TxType", "__name", "WALLET", "WalletTypes", "config", "getInstance", "__name", "getSafeInstance", "connect", "instance", "accounts", "chainId", "subscribe", "state", "updateChainId", "updateAccounts", "meta", "disconnect", "evmBlockchainMeta", "isEvmBlockchain", "cleanup", "subscribeToEvm", "switchNetwork", "switchNetworkForEvm", "canSwitchNetworkTo", "canSwitchNetworkToEvm", "getSigners", "canEagerConnect", "canEagerlyConnectToEvm", "getWalletInfo", "allBlockChains", "evms", "evmBlockchains"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"src/helpers.ts":{"bytes":836,"imports":[{"path":"@safe-global/safe-apps-provider","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signers/evm.ts":{"bytes":2352,"imports":[{"path":"@rango-dev/signer-evm","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true},{"path":"src/helpers.ts","kind":"import-statement","original":"../helpers.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signer.ts":{"bytes":
|
|
1
|
+
{"inputs":{"src/helpers.ts":{"bytes":836,"imports":[{"path":"@safe-global/safe-apps-provider","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signers/evm.ts":{"bytes":2352,"imports":[{"path":"@rango-dev/signer-evm","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true},{"path":"src/helpers.ts","kind":"import-statement","original":"../helpers.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/signer.ts":{"bytes":604,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/signers/evm.ts","kind":"dynamic-import","original":"./signers/evm.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"},"src/index.ts":{"bytes":2075,"imports":[{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers.js"},{"path":"src/signer.ts","kind":"import-statement","original":"./signer.js"},{"path":"<runtime>","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/index.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":4895},"dist/index.js":{"imports":[{"path":"dist/chunk-5CP7BBMP.js","kind":"import-statement"},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"@rango-dev/wallets-shared","kind":"import-statement","external":true},{"path":"rango-types","kind":"import-statement","external":true},{"path":"dist/evm-TZ6OXXGG.js","kind":"dynamic-import"}],"exports":["canEagerConnect","canSwitchNetworkTo","config","connect","getInstance","getSigners","getWalletInfo","subscribe","switchNetwork"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":928},"src/signer.ts":{"bytesInOutput":296}},"bytes":1465},"dist/evm-TZ6OXXGG.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":3700},"dist/evm-TZ6OXXGG.js":{"imports":[{"path":"dist/chunk-5CP7BBMP.js","kind":"import-statement"},{"path":"@rango-dev/signer-evm","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true}],"exports":["CustomEvmSigner","getTxHash"],"entryPoint":"src/signers/evm.ts","inputs":{"src/signers/evm.ts":{"bytesInOutput":747}},"bytes":880},"dist/chunk-5CP7BBMP.js.map":{"imports":[],"exports":[],"inputs":{},"bytes":1501},"dist/chunk-5CP7BBMP.js":{"imports":[{"path":"@safe-global/safe-apps-provider","kind":"import-statement","external":true},{"path":"@safe-global/safe-apps-sdk","kind":"import-statement","external":true}],"exports":["a","b","c"],"inputs":{"src/helpers.ts":{"bytesInOutput":356}},"bytes":508}}}
|
package/dist/signer.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
+
import type { ProviderAPI } from '@rango-dev/wallets-core/namespaces/evm';
|
|
1
2
|
import type { SignerFactory } from 'rango-types';
|
|
2
|
-
export default function getSigners(provider:
|
|
3
|
+
export default function getSigners(provider: ProviderAPI): Promise<SignerFactory>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rango-dev/provider-safe",
|
|
3
|
-
"version": "0.41.
|
|
3
|
+
"version": "0.41.1-next.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"source": "./src/index.ts",
|
|
@@ -21,12 +21,13 @@
|
|
|
21
21
|
"lint": "eslint \"**/*.{ts,tsx}\""
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@rango-dev/signer-evm": "^0.39.0",
|
|
25
|
-
"@rango-dev/wallets-
|
|
24
|
+
"@rango-dev/signer-evm": "^0.39.1-next.0",
|
|
25
|
+
"@rango-dev/wallets-core": "^0.47.1-next.1",
|
|
26
|
+
"@rango-dev/wallets-shared": "^0.48.1-next.1",
|
|
26
27
|
"@safe-global/safe-apps-provider": "^0.17.0",
|
|
27
28
|
"@safe-global/safe-apps-sdk": "^9.1.0",
|
|
28
29
|
"ethers": "^6.13.2",
|
|
29
|
-
"rango-types": "^0.1.
|
|
30
|
+
"rango-types": "^0.1.89"
|
|
30
31
|
},
|
|
31
32
|
"publishConfig": {
|
|
32
33
|
"access": "public"
|
package/src/signer.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
|
+
import type { ProviderAPI } from '@rango-dev/wallets-core/namespaces/evm';
|
|
1
2
|
import type { SignerFactory } from 'rango-types';
|
|
2
3
|
|
|
4
|
+
import { retryLazyImport } from '@rango-dev/wallets-shared';
|
|
3
5
|
import { DefaultSignerFactory, TransactionType as TxType } from 'rango-types';
|
|
4
6
|
|
|
5
7
|
export default async function getSigners(
|
|
6
|
-
provider:
|
|
8
|
+
provider: ProviderAPI
|
|
7
9
|
): Promise<SignerFactory> {
|
|
8
10
|
const signers = new DefaultSignerFactory();
|
|
9
|
-
const { CustomEvmSigner } = await
|
|
11
|
+
const { CustomEvmSigner } = await retryLazyImport(
|
|
12
|
+
async () => await import('./signers/evm.js')
|
|
13
|
+
);
|
|
10
14
|
signers.registerSigner(TxType.EVM, new CustomEvmSigner(provider));
|
|
11
15
|
|
|
12
16
|
return signers;
|