@dodoex/wallet-web3 0.0.14-7 → 0.0.14-9
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/{blocto-76779529.js → blocto-d52a1c4b.js} +1 -1
- package/dist/cjs/{blocto-7dd2aad5.cjs → blocto-7759f9b8.cjs} +1 -1
- package/dist/cjs/helpers/index.d.ts +0 -1
- package/dist/cjs/{index-617065b5.cjs → index-12fd3907.cjs} +1 -1
- package/dist/cjs/index-62634ced.cjs +1 -0
- package/dist/cjs/{index-87164daf.cjs → index-7c4585fb.cjs} +1 -1
- package/dist/cjs/{index-fa8e35e0.cjs → index-ed3ba9e6.cjs} +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/{portis-9d73aba1.cjs → portis-79a20f0f.cjs} +1 -1
- package/dist/cjs/{provider-08a6f81a.cjs → provider-9c645f94.cjs} +1 -1
- package/dist/cjs/providers/connector/index.d.ts +1 -0
- package/dist/cjs/providers/connector/uniPass/signer.d.ts +2 -1
- package/dist/cjs/providers/wallets/index.d.ts +0 -1
- package/dist/cjs/providers/wallets/types.d.ts +0 -1
- package/dist/cjs/{rainbow-7e60658f.cjs → rainbow-0ba0fb09.cjs} +1 -1
- package/dist/cjs/{uAuth-39119a10.cjs → uAuth-ebdf947a.cjs} +1 -1
- package/dist/cjs/{walletConnect-8508db73.cjs → walletConnect-f4a59868.cjs} +1 -1
- package/dist/cjs/{walletLink-9c173de2.cjs → walletLink-768366a9.cjs} +1 -1
- package/dist/helpers/index.d.ts +0 -1
- package/dist/index-0012d639.js +1 -0
- package/dist/{index-846482ce.js → index-18c36a46.js} +1 -1
- package/dist/{index-5f5f7a25.js → index-4f4992b7.js} +1 -1
- package/dist/{index-814cb242.js → index-ebd3bdf9.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/{portis-5a033e2d.js → portis-55589da0.js} +1 -1
- package/dist/{provider-dc7b204c.js → provider-45ab4fc5.js} +1 -1
- package/dist/providers/connector/index.d.ts +1 -0
- package/dist/providers/connector/uniPass/signer.d.ts +2 -1
- package/dist/providers/wallets/index.d.ts +0 -1
- package/dist/providers/wallets/types.d.ts +0 -1
- package/dist/{rainbow-765f8d7f.js → rainbow-cfa0c610.js} +1 -1
- package/dist/{uAuth-071c98b6.js → uAuth-af956c98.js} +1 -1
- package/dist/{walletConnect-472a94fc.js → walletConnect-30c00f8b.js} +1 -1
- package/dist/{walletLink-807a61d9.js → walletLink-d5d606a2.js} +1 -1
- package/package.json +1 -1
- package/dist/cjs/helpers/wallet.d.ts +0 -1
- package/dist/cjs/index-cbd21545.cjs +0 -1
- package/dist/helpers/wallet.d.ts +0 -1
- package/dist/index-e245abd7.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-ed3ba9e6.cjs");require("@ethersproject/providers"),require("zustand"),require("@ethersproject/strings"),require("@ethersproject/bytes"),require("@ethersproject/constants"),require("@ethersproject/contracts"),require("@ethersproject/address"),require("@ethersproject/properties"),require("@ethersproject/transactions"),require("@ethersproject/keccak256");const t="dapp-inpage-integration",i="openblock-content-integration",n=["https://cocoswap.com","https://app.openocean.finance"],r=["https://oec.cocoswap.com"];class s{constructor(){console.log("start initialize openblockinpage provider"),this.callBackList={},this.eventListener={},this.isMetaMask=!0,this.isOpenBlock=!0,this.chainId=null,this.networkVersion=null,this.selectedAddress=null,this.request=this.request.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this.on=this.on.bind(this),this.isConnected=this.isConnected.bind(this),this.enable=this.enable.bind(this),this._metamask=this._getExperimentalApi(),this._initInpageListener(),this.getProviderData()}getProviderData(){var t;return e.__awaiter(this,void 0,void 0,(function*(){const e=yield this.request("metamask_getProviderState");this.chainId=null==e?void 0:e.chainId,this.networkVersion=null==e?void 0:e.networkVersion,this.selectedAddress=null===(t=null==e?void 0:e.accounts)||void 0===t?void 0:t[0]}))}request(t){return e.__awaiter(this,void 0,void 0,(function*(){if("eth_requestAccounts"===t.method){const e=yield this._hookRequest("eth_accounts");if(e.length)return new Promise((t=>t(e)))}return this._hookRequest(t)}))}send(...t){return e.__awaiter(this,void 0,void 0,(function*(){if("function"!=typeof t[1])return"string"==typeof t[0]?this.request({method:t[0],params:t[1]}):1===t.length?this.request(t):void 0;this.sendAsync(t[0],t[1])}))}sendAsync(...t){return e.__awaiter(this,void 0,void 0,(function*(){const e={method:t[0].method,params:t[0].params},i=t[0].id;this.request(e).then((e=>{t[1](null,{id:i,jsonrpc:"2.0",result:e})})).catch((e=>{t[1](null,{id:i,jsonrpc:"2.0",error:e})}))}))}isConnected(){return!0}enable(){return e.__awaiter(this,void 0,void 0,(function*(){const e=yield this._hookRequest("eth_accounts");return e.length?new Promise((t=>t(e))):this.request({method:"eth_requestAccounts"})}))}on(e,t){"string"==typeof e&&"function"==typeof t&&(this.eventListener[e]&&this.eventListener[e].length>5||(this.eventListener[e]?(this.eventListener[e].push(t),this.eventListener[e]=Array.from(new Set(this.eventListener[e]))):this.eventListener[e]||(this.eventListener=Object.assign(Object.assign({},this.eventListener),{[e]:[t]})),this._registerEvent(e)))}removeListener(){}_initInpageListener(){window.addEventListener("message",(e=>{var i,n,r;if(e.data.target!==t)return;const s=null===(r=null===(n=null===(i=e.data)||void 0===i?void 0:i.value)||void 0===n?void 0:n.data)||void 0===r?void 0:r.mark;s&&("call_method"===s.type?this._handleNormalMethod(s,e):"register_event"===s.type&&this._handleEventMethod(s,e))}),!1)}_handleNormalMethod(e,t){var i,n,r,s,o;(null===(i=t.data.value.data)||void 0===i?void 0:i.error)?null===(n=this.callBackList[e.id])||void 0===n||n.reject(null===(r=t.data.value.data)||void 0===r?void 0:r.error):null===(s=this.callBackList[e.id])||void 0===s||s.resolve(null===(o=t.data.value.data)||void 0===o?void 0:o.result),delete this.callBackList[e.id]}_handleEventMethod(e,t){var i,s,o,a,d,h,l;const c=null===(a=null===(o=null===(s=null===(i=t.data)||void 0===i?void 0:i.value)||void 0===s?void 0:s.data)||void 0===o?void 0:o.mark)||void 0===a?void 0:a.eventName,u=null===(l=null===(h=null===(d=t.data)||void 0===d?void 0:d.value)||void 0===h?void 0:h.data)||void 0===l?void 0:l.params;if(c){const e=this.eventListener[c];if(!e)return void("https://app.openocean.finance"===window.location.origin&&window.location.reload());e.forEach((e=>{"chainChanged"===c&&(this.chainId=u,this.networkVersion=Number(u)),r.includes(window.location.origin)&&"chainChanged"===c||(n.includes(window.location.origin)?window.location.reload():e(u))}))}}_hookRequest(e){return new Promise(((n,r)=>{const s=(()=>{function e(){return(65536*(1+Math.random())|0).toString(16).substring(1)}return e()+e()+e()+e()+e()+e()+e()+e()})();"string"==typeof e&&(e={method:e}),e=Object.assign(Object.assign({},e),{mark:{id:s,method:e.method,type:"call_method"}}),window.parent.postMessage({from:t,target:i,data:e},"*"),this.callBackList[s]={resolve:n,reject:r}}))}_registerEvent(e){const n={mark:{eventName:e,type:"register_event"},eventName:e};window.parent.postMessage({from:t,target:i,data:n},"*")}_getExperimentalApi(){return new Proxy({isUnlocked:()=>new Promise((e=>e(!0)))},{get:(e,t,...i)=>Reflect.get(e,t,...i)})}}exports.default=function(){var e;if(null===(e=window.obethereum)||void 0===e?void 0:e.isOpenBlock)return window.obethereum;let t=new s;t=new Proxy(t,{deleteProperty:()=>!0});try{Object.defineProperty(window,"obethereum",{set(e){console.log("set ethereum",e)},get:()=>t})}catch(e){console.log("initializeProvider error",e),window.obethereum=t}return window.web3=Object.assign({},window.web3),window.web3.currentProvider=t,window.dispatchEvent(new Event("ethereum#initialized")),t};
|
|
@@ -27,6 +27,7 @@ export declare function getUniPassConnector(params: ConnectorParams, events: Con
|
|
|
27
27
|
disconnect(): Promise<void>;
|
|
28
28
|
listAccounts(): Promise<string[]>;
|
|
29
29
|
getAddress(): Promise<string | null>;
|
|
30
|
+
updateUpWalletConfig: (chainId: number) => void;
|
|
30
31
|
readonly connection: import("@ethersproject/web").ConnectionInfo;
|
|
31
32
|
_pendingFilter: Promise<number>;
|
|
32
33
|
_nextId: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Deferrable } from '@ethersproject/properties';
|
|
2
2
|
import { Bytes } from '@ethersproject/bytes';
|
|
3
|
-
import { JsonRpcProvider, JsonRpcSigner, TransactionRequest } from '@ethersproject/providers';
|
|
3
|
+
import { JsonRpcProvider, JsonRpcSigner, TransactionRequest, TransactionResponse } from '@ethersproject/providers';
|
|
4
4
|
import { Signer, TypedDataDomain, TypedDataField } from '@ethersproject/abstract-signer';
|
|
5
5
|
import { UniPassPopupSDK } from '@unipasswallet/popup-sdk';
|
|
6
6
|
export declare class UniPassSigner extends Signer implements JsonRpcSigner {
|
|
@@ -16,6 +16,7 @@ export declare class UniPassSigner extends Signer implements JsonRpcSigner {
|
|
|
16
16
|
signMessage(message: Bytes | string): Promise<string>;
|
|
17
17
|
_signTypedData(domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>): Promise<string>;
|
|
18
18
|
signTransaction(transaction: Deferrable<TransactionRequest>): Promise<string>;
|
|
19
|
+
sendTransaction(transaction: Deferrable<TransactionRequest>): Promise<TransactionResponse>;
|
|
19
20
|
connect(provider?: any): JsonRpcSigner;
|
|
20
21
|
connectUnchecked(): UniPassSigner;
|
|
21
22
|
}
|
|
@@ -46,7 +46,6 @@ export declare const OpenBlockIframeWallet: {
|
|
|
46
46
|
signTypedData?: boolean | undefined;
|
|
47
47
|
sendTransaction?: boolean | undefined;
|
|
48
48
|
} | undefined;
|
|
49
|
-
signType?: "eip1271" | "eip712" | undefined;
|
|
50
49
|
};
|
|
51
50
|
export interface WalletListParams {
|
|
52
51
|
excludes?: WalletType[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-ed3ba9e6.cjs"),r=require("@walletconnect/ethereum-provider");require("@ethersproject/address"),require("@ethersproject/providers"),require("zustand"),require("@ethersproject/strings"),require("@ethersproject/bytes"),require("@ethersproject/constants"),require("@ethersproject/contracts"),require("@ethersproject/properties"),require("@ethersproject/transactions"),require("@ethersproject/keccak256"),exports.default=function({chainId:t,rpcUrl:o,rpc:n,walletConnectParams:i,darkMode:c},a){return e.__awaiter(this,void 0,void 0,(function*(){let s,d,u="wss://relay.walletconnect.com",l=!0;i&&(u=i.bridge||u,l=void 0!==i.qrcode?i.qrcode:l,i.infuraId,d=i.qrModalOptions||void 0),n?s=n:t&&o&&(s={[t]:o});const p=e.getIsMobile(),h=yield r.EthereumProvider.init({projectId:"59e050d1f27ed617e65bb9637c9498d6",chains:t?[t]:[],showQrModal:!p,rpcMap:s,qrModalOptions:Object.assign({themeMode:c?"dark":"light"},d)});return h.on("display_uri",(e=>{(null==d?void 0:d.openCallback)&&d.openCallback(e)})),h.on("connect",a.connect),h.on("disconnect",(e=>{a.disconnect(e),a.accountsChanged([])})),h.on("accountsChanged",a.accountsChanged),h.on("chainChanged",a.chainChanged),h.on("message",(({type:e,data:r})=>a.message(e,r))),new Promise((r=>e.__awaiter(this,void 0,void 0,(function*(){p?(h.once("display_uri",(t=>{let o=t;e.getIsIOS()&&(o=`rainbow://wc?uri=${encodeURIComponent(t)}&connector=rainbowkit`),window.location.href=o,r(e.convertWeb3Provider(h))})),h.enable()):(yield h.enable(),r(e.convertWeb3Provider(h)))}))))}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-ed3ba9e6.cjs"),t=require("@uauth/js");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@ethersproject/providers"),require("zustand"),require("@ethersproject/strings"),require("@ethersproject/bytes"),require("@ethersproject/constants"),require("@ethersproject/contracts"),require("@ethersproject/address"),require("@ethersproject/properties"),require("@ethersproject/transactions"),require("@ethersproject/keccak256");var i=r(t);let o,n=!1;exports.default=function(t,r){return e.__awaiter(this,void 0,void 0,(function*(){if(n)return;const{uAuthParams:s}=t;if(!(null==s?void 0:s.clientID))throw new Error("uAuthParams is not valid.");n=!0;try{const t=Object.assign(Object.assign({},s),{redirectUri:s.redirectUri||window.location.origin});let c,l;o=new i.default(t);try{c=yield o.user()}catch(e){if(!o.fallbackLoginOptions.scope.includes("wallet"))throw new Error('Must request the "wallet" scope for connector to work.');if(t.shouldLoginWithRedirect)throw yield o.login(),yield new Promise((()=>{})),new Error("Should never get here.");yield o.loginWithPopup(),c=yield o.user()}if(null==c.wallet_type_hint)throw new Error("no wallet type present");if(["web3","injected"].includes(c.wallet_type_hint))l=e.injectedConnect(void 0,r);else{if("walletconnect"!==c.wallet_type_hint||!t.walletConnect)throw new Error("Connector not supported");l=t.walletConnect()}return n=!1,l}catch(e){n=!1}}))},exports.disconnectWallet=function(){return null==o?void 0:o.logout()};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-ed3ba9e6.cjs"),r=require("@walletconnect/ethereum-provider");require("@ethersproject/providers"),require("zustand"),require("@ethersproject/strings"),require("@ethersproject/bytes"),require("@ethersproject/constants"),require("@ethersproject/contracts"),require("@ethersproject/address"),require("@ethersproject/properties"),require("@ethersproject/transactions"),require("@ethersproject/keccak256"),exports.default=function({chainId:t,rpcUrl:n,rpc:o,walletConnectParams:c,darkMode:a},i){return e.__awaiter(this,void 0,void 0,(function*(){let s,d,u="wss://relay.walletconnect.com",p=!0;c&&(u=c.bridge||u,p=void 0!==c.qrcode?c.qrcode:p,c.infuraId,d=c.qrModalOptions||void 0),o?s=o:t&&n&&(s={[t]:n});const h=yield r.EthereumProvider.init({projectId:"59e050d1f27ed617e65bb9637c9498d6",chains:t?[t]:[],showQrModal:!0,rpcMap:s,qrModalOptions:Object.assign({themeMode:a?"dark":"light"},d)});return h.on("display_uri",(e=>{(null==d?void 0:d.openCallback)&&d.openCallback(e)})),yield h.enable(),h.on("connect",i.connect),h.on("disconnect",(e=>{i.disconnect(e),i.accountsChanged([])})),h.on("accountsChanged",i.accountsChanged),h.on("chainChanged",i.chainChanged),h.on("message",(({type:e,data:r})=>i.message(e,r))),e.convertWeb3Provider(h)}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("./index-
|
|
1
|
+
"use strict";var e=require("./index-ed3ba9e6.cjs"),r=require("@coinbase/wallet-sdk");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@ethersproject/providers"),require("zustand"),require("@ethersproject/strings"),require("@ethersproject/bytes"),require("@ethersproject/constants"),require("@ethersproject/contracts"),require("@ethersproject/address"),require("@ethersproject/properties"),require("@ethersproject/transactions"),require("@ethersproject/keccak256");var n=t(r);exports.default=function({chainId:r,rpcUrl:t,appName:o,appLogoUrl:i,darkMode:a},c){return e.__awaiter(this,void 0,void 0,(function*(){if(window.ethereum&&(window.ethereum.isWalletLink||window.ethereum.isToshi))return e.injectedConnect(window.ethereum,c);if(!o)throw new Error("walletLink need appName");const s=new n.default({appName:o,appLogoUrl:i,darkMode:a}).makeWeb3Provider(t,r);return yield s.enable(),s.on("connect",c.connect),s.on("disconnect",c.disconnect),s.on("accountsChanged",c.accountsChanged),s.on("chainChanged",c.chainChanged),s.on("message",c.message),e.convertWeb3Provider(s)}))};
|
package/dist/helpers/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as e,u as t}from"./index-ebd3bdf9.js";import{JsonRpcProvider as r}from"@ethersproject/providers";import{getAddress as n}from"@ethersproject/address";import{Signer as o}from"@ethersproject/abstract-signer";import{UniPassPopupSDK as s}from"@unipasswallet/popup-sdk";import{defineReadOnly as i}from"@ethersproject/properties";import"zustand";import"@ethersproject/strings";import"@ethersproject/bytes";import"@ethersproject/constants";import"@ethersproject/contracts";import"@ethersproject/transactions";import"@ethersproject/keccak256";class a extends o{constructor(e,t,r,n){super(),this._address=r,this._index=null!=n?n:0,this.provider=e,this.upWallet=t}_legacySignMessage(e){throw new Error("Method not implemented.")}sendUncheckedTransaction(e){throw new Error("Method not implemented.")}unlock(e){throw new Error("Method not implemented.")}getAddress(){return e(this,void 0,void 0,(function*(){return Promise.resolve(n(this._address))}))}signMessage(t){return e(this,void 0,void 0,(function*(){if(!this.upWallet)throw new Error(`address unknown '${t}'`);return yield this.upWallet.signMessage(t,{isEIP191Prefix:!0,onAuthChain:!0})}))}_signTypedData(t,r,n){return e(this,void 0,void 0,(function*(){throw new Error("Method not implemented.")}))}signTransaction(t){return e(this,void 0,void 0,(function*(){if(!this.upWallet)throw new Error(`address unknown '${t.from}'`);return this.upWallet.sendTransaction({from:t.from,to:t.to,value:t.value,data:t.data})}))}sendTransaction(t){return e(this,void 0,void 0,(function*(){if(!this.upWallet)throw new Error(`address unknown '${t.from}'`);return{hash:yield this.upWallet.sendTransaction({from:t.from,to:t.to,value:t.value,data:t.data}),from:t.from}}))}connect(e){return new a(null!=e?e:this.provider,this.upWallet,this._address,this._index)}connectUnchecked(){return new a(this.provider,this.upWallet,this._address,this._index)}}const c=80001,d=2025,u=9527,l=534354,p=421613,h=42161,v=43113,m=43114,g=2206132,f=210425,w=[1,5,137,c,56,97,d,u,l,p,h,v,m,322,321,65,66,g],W=e=>{switch(Number(e)){case 1:case 5:return"eth";case 137:case c:return"polygon";case 56:case 97:return"bsc";case d:case u:return"rangers";case l:return"scroll";case p:case h:return"arbitrum";case v:case m:return"avalanche";case 322:case 321:return"kcc";case 65:case 66:return"okc";case g:case f:return"platon";default:return"polygon"}},y=e=>{switch(Number(e)){case 1:case 137:case 56:case d:case h:case m:case 321:case f:case 66:return"prod";default:return"test"}};function j(t){var o,c,d;return e(this,void 0,void 0,(function*(){const u=null!==(o=t.chainId)&&void 0!==o?o:1;let l=null!==(c=t.rpcUrl)&&void 0!==c?c:null===(d=t.rpc)||void 0===d?void 0:d[u];const p=new class extends r{constructor(e,r){super(e,r),this.updateUpWalletConfig=e=>{var r,n;if(!w.includes(e))throw new Error(`chainId ${e} not supported`);const o=null!==(r=t.rpcUrl)&&void 0!==r?r:null===(n=t.rpc)||void 0===n?void 0:n[e];this.upWallet.updateConfig({chainType:W(e),nodeRPC:o,appSettings:{chain:W(e)}}),o&&i(this,"connection",Object.freeze({url:o})),this.emit("chainChanged",`0x${e.toString(16)}`)},this.upWallet=new s({env:y(u),chainType:W(u),appSettings:{appIcon:t.appLogoUrl,appName:t.appName,chain:W(u)},rpcUrl:l,storageType:"sessionStorage"})}getSigner(){var e;const t=this.upWallet.getAccount();return new a(p,this.upWallet,null!==(e=null==t?void 0:t.address)&&void 0!==e?e:"",0)}connect(){return e(this,void 0,void 0,(function*(){const e=this.upWallet.getAccount();return e||(yield this.upWallet.login({email:false}))}))}disconnect(){return e(this,void 0,void 0,(function*(){yield this.upWallet.logout()}))}listAccounts(){return e(this,void 0,void 0,(function*(){const e=this.upWallet.getAccount();return(null==e?void 0:e.address)?[null==e?void 0:e.address]:[]}))}getAddress(){const e=this.upWallet.getAccount();return Promise.resolve((null==e?void 0:e.address)?n(null==e?void 0:e.address):null)}}(l);return p}))}function C(t,r){return e(this,void 0,void 0,(function*(){const e=yield j(t);return e.on("connect",r.connect),e.on("disconnect",(e=>{r.disconnect(e),r.accountsChanged([])})),e.on("accountsChanged",r.accountsChanged),e.on("chainChanged",r.chainChanged),e.on("message",(({type:e,data:t})=>r.message(e,t))),yield e.connect(),e}))}function k(){var e;null===(e=t.getState().provider)||void 0===e||e.disconnect()}function b(e){var r,n;return null===(n=null===(r=t.getState().provider)||void 0===r?void 0:r.upWallet)||void 0===n?void 0:n.signTypedData(e)}function x(e){var r;const n=e.addChainParameters.chainId,o="string"==typeof n&&(null==n?void 0:n.startsWith("0x"))?parseInt(n,16):Number(n);if(!w.includes(o))throw new Error(`chainId ${o} not supported`);return null===(r=t.getState().provider)||void 0===r?void 0:r.updateUpWalletConfig(o)}export{j as createProvider,C as default,k as disconnectWallet,b as signTypedData,x as switchChain};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,H as t,c as r}from"./index-
|
|
1
|
+
import{_ as e,H as t,c as r}from"./index-ebd3bdf9.js";export{H as HD_PATH_LIST}from"./index-ebd3bdf9.js";import s from"@ledgerhq/hw-app-eth";import i from"@ledgerhq/hw-transport-webhid";import{JsonRpcProvider as n}from"@ethersproject/providers";import{getAddress as o}from"@ethersproject/address";import{resolveProperties as d}from"@ethersproject/properties";import{hexlify as a,joinSignature as c}from"@ethersproject/bytes";import{serialize as h}from"@ethersproject/transactions";import{_TypedDataEncoder as l}from"@ethersproject/hash";import{Signer as p}from"@ethersproject/abstract-signer";import{toUtf8Bytes as u}from"@ethersproject/strings";import{TypedDataUtils as m,SignTypedDataVersion as v}from"@metamask/eth-sig-util";import"zustand";import"@ethersproject/constants";import"@ethersproject/contracts";import"@ethersproject/keccak256";const f=()=>e(void 0,void 0,void 0,(function*(){return yield i.create()})),g=(t,r,s,i,n,o=[])=>e(void 0,void 0,void 0,(function*(){const e=r.replace(/x/g,String(s+i)),d=yield t.getAddress(e);let a=[...o,{path:e,account:d.address}];return s<n&&(a=yield g(t,r,s+1,i,n,a)),a})),y=(t,r=1,i=5)=>e(void 0,void 0,void 0,(function*(){const e=yield f(),n=new s(e);let o;try{if(-1===t.indexOf("x")){const e=yield n.getAddress(t);return[{path:t,account:e.address}]}const e=r*i-i;o=yield g(n,t,0,e,i-1)}finally{e.close()}return o}));class w extends p{constructor(e,r,s,i,n){super(),this._address=r,this._index=null!=i?i:0,this.path=null!=s?s:t[0].path,this.provider=e,this._fetchGasPrice=n}_legacySignMessage(e){throw new Error("Method not implemented.")}sendUncheckedTransaction(e){throw new Error("Method not implemented.")}unlock(e){throw new Error("Method not implemented.")}getAddress(){return e(this,void 0,void 0,(function*(){return Promise.resolve(o(this._address))}))}signMessage(t){return e(this,void 0,void 0,(function*(){if(!this.path)throw new Error(`address unknown '${this._address}'`);const e=yield f();try{"string"==typeof t&&(t=u(t));const r=new s(e),i=a(t).substring(2),n=yield r.signPersonalMessage(this.path,i);return n.r="0x"+n.r,n.s="0x"+n.s,c(n)}finally{e.close()}}))}_signTypedData(t,r,i){return e(this,void 0,void 0,(function*(){const e=yield f();try{if(!this.path)throw new Error(`address unknown '${this._address}'`);const n=new s(e),o=yield l.resolveNames(t,r,i,(e=>{var t;return null===(t=this.provider)||void 0===t?void 0:t.resolveName(e)})),d=l.getPayload(o.domain,r,o.value),a=m.hashStruct("EIP712Domain",d.domain,r,v.V4).toString("hex"),c=m.hashStruct(d.primaryType,d.message,r,v.V4).toString("hex"),h=yield n.signEIP712HashedMessage(this.path,a,c);let p=parseInt(h.v,10).toString(16);p.length<2&&(p=`0${p}`);return`0x${h.r}${h.s}${p}`}finally{e.close()}}))}signTransaction(t){var i;return e(this,void 0,void 0,(function*(){if(!this.path)throw new Error(`address unknown '${this._address}'`);const e=yield f();try{const n=yield d(t),o=yield r(null!==(i=n.chainId)&&void 0!==i?i:1,n,this._fetchGasPrice);o.nonce=o.nonce?Number(o.nonce):void 0;const a=h(o).substring(2),c=new s(e),l=yield c.signTransaction(this.path,a);return h(o,{v:parseInt(`0x${l.v}`,2),r:"0x"+l.r,s:"0x"+l.s})}finally{e.close()}}))}connect(e){return new w(null!=e?e:this.provider,this._address,this.path,this._index,this._fetchGasPrice)}connectUnchecked(){return new w(this.provider,this._address,this.path,this._index,this._fetchGasPrice)}}function x({rpcUrl:r,fetchGasPrice:s,ledgerParams:i}){var d;return e(this,void 0,void 0,(function*(){if(!r)throw new Error("Ledger USB provider requires rpcUrl");const a=null!==(d=null==i?void 0:i.path)&&void 0!==d?d:t[0].path;let c=null==i?void 0:i.account;const h=yield(yield y(a)).map((e=>e.account));c||(c=h[0]);const l=h.findIndex((e=>e===c));const p=new class extends n{getSigner(){return new w(p,c,a,l,s)}listAccounts(){return e(this,void 0,void 0,(function*(){return yield(yield y(a)).map((e=>e.account))}))}getAddress(){return Promise.resolve(o(c))}}(r);return p}))}function _(t){return e(this,void 0,void 0,(function*(){return yield x(t)}))}export{x as createProvider,_ as default,y as getAccountList,f as getTransport};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as t,a as e,u as r}from"./index-
|
|
1
|
+
import{_ as t,a as e,u as r}from"./index-ebd3bdf9.js";import o from"@safe-global/safe-apps-sdk";import{SafeAppProvider as n}from"@safe-global/safe-apps-provider";import s from"@safe-global/api-kit";import"@ethersproject/providers";import"zustand";import"@ethersproject/strings";import"@ethersproject/bytes";import"@ethersproject/constants";import"@ethersproject/contracts";import"@ethersproject/address";import"@ethersproject/properties";import"@ethersproject/transactions";import"@ethersproject/keccak256";let i,a;function c(){return t(this,void 0,void 0,(function*(){return a||(a=new o),void 0===i&&(i=yield Promise.race([a.safe.getInfo(),new Promise((t=>setTimeout(t,200)))])),i}))}function f(){return t(this,void 0,void 0,(function*(){return!!(yield c())}))}function u(r){return t(this,void 0,void 0,(function*(){const t=yield c();if(!t)throw Error("Could not load Safe information");const o=new n(t,a);return o.on("connect",r.connect),o.on("disconnect",r.disconnect),o.on("accountsChanged",r.accountsChanged),o.on("chainChanged",r.chainChanged),o.on("message",r.message),e(o)}))}const l={1:"https://safe-transaction-mainnet.safe.global/",5:"https://safe-transaction-goerli.safe.global/",42161:"https://safe-transaction-arbitrum.safe.global/",43114:"https://safe-transaction-avalanche.safe.global/",1313161554:"https://safe-transaction-aurora.safe.global/",56:"https://safe-transaction-bsc.safe.global/",10:"https://safe-transaction-optimism.safe.global/",137:"https://safe-transaction-polygon.safe.global/"};let d;function p(e){return t(this,void 0,void 0,(function*(){if((null==d?void 0:d.chainId)===e)return d.safeService;if(!r.getState().provider)throw new Error("provider is undefined");const o=function(){return{getEip3770Address:e=>t(this,void 0,void 0,(function*(){const{address:t,prefix:r}=function(t){const e=t.split(":"),r=e.length>1?e[1]:e[0];return{prefix:e.length>1?e[0]:"",address:r}}(e);return{address:t,prefix:r}}))}}(),n=l[e];if(!n)return;const i=new s({txServiceUrl:n,ethAdapter:o});return d={safeService:i,chainId:e},d.safeService}))}function h(e,r){return t(this,void 0,void 0,(function*(){if(!r)return!1;const t=yield p(e);if(!t)return!1;try{return!!(yield t.getSafeInfo(r))}catch(t){return console.error(t),!1}}))}function g(e,r,o){return t(this,void 0,void 0,(function*(){const t=yield p(e);if(!t)return console.error(`chainId: ${e} is not supported safe`),o;if(o!==r)return o;const n=yield t.getMultisigTransactions(o),[s]=n.results;return s.safeTxHash}))}function m(e,r,o){return t(this,void 0,void 0,(function*(){const t=yield p(e);if(!t)throw new Error(`chainId: ${e} is not supported safe`);try{const{results:e}=yield t.getMultisigTransactions(o),n=e.find((t=>t.safeTxHash.toLocaleLowerCase()===r.toLocaleLowerCase()));if(!n)return null;if(e.some((t=>!(t.nonce!==n.nonce||t.safeTxHash.toLocaleLowerCase()===r.toLocaleLowerCase()||!t.isExecuted||!t.isSuccessful))))return"rejected";if(null===n.isExecuted||null===n.isSuccessful)return null;return{status:n.isExecuted&&n.isSuccessful||!1,transactionHash:n.transactionHash,blockNumber:n.blockNumber||null}}catch(t){throw console.error(t),new Error(`safeTxHash: ${r} is not valid.`)}}))}function v(t,e,r){const o={1:"eth",5:"gor",137:"matic",56:"bnb",42161:"arb1",10:"oeth",43114:"avax",1313161554:"aurora"}[e];if(!o)throw new Error(`Not Supported network: ${e}`);return`https://app.safe.global/transactions/tx?id=multisig_${r}_${t}&safe=${o}%3A${r}`}export{u as default,h as getAccountIsSafe,c as getConnectedSafe,f as getIsSafe,v as getSafeHashDetailUrl,g as getSafeTxHash,m as getSafeTxStatus};
|