@aptos-labs/react
Version:
React library for Aptos applications.
2 lines • 2.15 kB
JavaScript
import{AptosJSProClient as m,convertAptosAccountToAccountInfo as x,convertAptosAccountToSigner as f}from"@aptos-labs/js-pro";import{useEffect as i,useMemo as g}from"react";import{Account as A,Network as v}from"@aptos-labs/ts-sdk";import{Network as I,NetworkToFaucetAPI as S,NetworkToIndexerAPI as T,NetworkToNodeAPI as k,NetworkToPepperAPI as C,NetworkToProverAPI as N}from"@aptos-labs/ts-sdk";import{AptosBaseError as w}from"@aptos-labs/js-pro";var c=class extends w{constructor(){super(...arguments);this.docsBaseUrl="https://js-pro.aptos.dev/react";this.name="AptosReactError"}};var l=class extends c{constructor(o){super(`${o} is required`,{longMessage:`This argument ${o} is required to be provided for this hook.`});this.name="MissingRequiredArgumentError"}};var u=e=>{if(e!==null)return e.name===I.CUSTOM?{pepperUrl:C[e.name],indexerUrl:T[e.name],proverUrl:N[e.name],faucetUrl:S[e.name],nodeUrl:e.url??k[e.name],network:e.name}:{network:e.name}},d=e=>e?{address:e.address,publicKey:e.publicKey}:void 0,p=e=>e?{type:"adapter",signAndSubmitTransaction:async({aptos:t,transaction:o,payload:n})=>{if(o){let r=await e.signTransaction({transactionOrPayload:o});return t.transaction.submit.simple({senderAuthenticator:r.authenticator,transaction:o})}if(n){let{hash:r}=await e.signAndSubmitTransaction(n);return t.getTransactionByHash({transactionHash:r})}throw new l("transaction or payload")},signTransaction:async({transaction:t})=>await e.signTransaction({transactionOrPayload:t})}:void 0;var z=({defaultNetwork:e={network:v.MAINNET},wallet:t,config:o})=>{let n=u(t.network),r=d(t.account),a=p(t),s=g(()=>new m({account:r,config:o,network:n??e,signer:a}),[]);return i(()=>{n&&s.setNetwork(n)},[t.network]),i(()=>{s.setAccount(r)},[t.account]),i(()=>{s.setSigner(a)},[a]),s},D=({account:e,config:t,network:o,signer:n})=>{let r=e instanceof A?x(e):e,a;e instanceof A?a=f(e):n!==void 0&&(a=f(n));let s=g(()=>new m({account:r,config:t,network:o,signer:a}),[]);return i(()=>s.setNetwork(o),[o]),i(()=>s.setSigner(a),[a]),i(()=>s.setAccount(r),[r]),s};export{z as useWalletAdapterCore,D as useWalletSignerCore};
//# sourceMappingURL=connectors.mjs.map