@solana/react-hooks 1.1.11 → 1.2.0
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/README.md +42 -7
- package/dist/index.browser.mjs +1 -1
- package/dist/index.native.mjs +1 -1
- package/dist/index.node.mjs +114 -6
- package/dist/types/context.d.ts +19 -0
- package/dist/types/context.d.ts.map +1 -1
- package/dist/types/hooks.d.ts +48 -2
- package/dist/types/hooks.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/ui.d.ts +1 -1
- package/dist/types/ui.d.ts.map +1 -1
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -199,34 +199,61 @@ function NonceInfo({ address }: { address: string }) {
|
|
|
199
199
|
|
|
200
200
|
```tsx
|
|
201
201
|
import type { TransactionInstructionInput } from "@solana/client";
|
|
202
|
-
import { useTransactionPool } from "@solana/react-hooks";
|
|
202
|
+
import { useTransactionPool, useWalletSession } from "@solana/react-hooks";
|
|
203
203
|
|
|
204
204
|
function TransactionFlow({ ix }: { ix: TransactionInstructionInput }) {
|
|
205
|
-
const
|
|
205
|
+
const session = useWalletSession();
|
|
206
|
+
const {
|
|
207
|
+
addInstruction,
|
|
208
|
+
prepareAndSend,
|
|
209
|
+
isSending,
|
|
210
|
+
sendSignature,
|
|
211
|
+
sendError,
|
|
212
|
+
latestBlockhash,
|
|
213
|
+
} = useTransactionPool();
|
|
214
|
+
|
|
206
215
|
return (
|
|
207
216
|
<div>
|
|
208
|
-
<button onClick={() =>
|
|
209
|
-
<button
|
|
210
|
-
{
|
|
217
|
+
<button onClick={() => addInstruction(ix)}>Add instruction</button>
|
|
218
|
+
<button
|
|
219
|
+
disabled={isSending || !session}
|
|
220
|
+
onClick={() => prepareAndSend({ authority: session })}
|
|
221
|
+
>
|
|
222
|
+
{isSending ? "Sending…" : "Prepare & Send"}
|
|
211
223
|
</button>
|
|
212
|
-
<p>Blockhash: {
|
|
224
|
+
<p>Blockhash: {latestBlockhash.blockhash ?? "loading…"}</p>
|
|
225
|
+
{sendSignature ? <p>Signature: {sendSignature}</p> : null}
|
|
226
|
+
{sendError ? <p role="alert">{String(sendError)}</p> : null}
|
|
213
227
|
</div>
|
|
214
228
|
);
|
|
215
229
|
}
|
|
216
230
|
```
|
|
217
231
|
|
|
232
|
+
**Available properties:**
|
|
233
|
+
- `addInstruction(ix)` / `addInstructions(ixs)` — queue instructions
|
|
234
|
+
- `removeInstruction(index)` / `clearInstructions()` / `replaceInstructions(ixs)` — manage queue
|
|
235
|
+
- `instructions` — current instruction queue
|
|
236
|
+
- `prepare(opts)` / `prepareAndSend(opts)` — build and optionally send
|
|
237
|
+
- `send(opts)` / `sign(opts)` — send or sign prepared transaction
|
|
238
|
+
- `isPreparing` / `prepareStatus` / `prepareError` — prepare state
|
|
239
|
+
- `isSending` / `sendStatus` / `sendError` / `sendSignature` — send state
|
|
240
|
+
- `latestBlockhash` — current blockhash for lifetime
|
|
241
|
+
- `prepared` / `toWire()` — access prepared transaction
|
|
242
|
+
- `reset()` — clear all state
|
|
243
|
+
|
|
218
244
|
### Simple mutation helper (when you already have instructions)
|
|
219
245
|
|
|
220
246
|
```tsx
|
|
221
247
|
import { useSendTransaction } from "@solana/react-hooks";
|
|
222
248
|
|
|
223
249
|
function SendPrepared({ instructions }) {
|
|
224
|
-
const { send, isSending, signature, error } = useSendTransaction();
|
|
250
|
+
const { send, isSending, status, signature, error } = useSendTransaction();
|
|
225
251
|
return (
|
|
226
252
|
<div>
|
|
227
253
|
<button disabled={isSending} onClick={() => send({ instructions })}>
|
|
228
254
|
{isSending ? "Submitting…" : "Send transaction"}
|
|
229
255
|
</button>
|
|
256
|
+
<p>Status: {status}</p>
|
|
230
257
|
{signature ? <p>Signature: {signature}</p> : null}
|
|
231
258
|
{error ? <p role="alert">{String(error)}</p> : null}
|
|
232
259
|
</div>
|
|
@@ -234,6 +261,14 @@ function SendPrepared({ instructions }) {
|
|
|
234
261
|
}
|
|
235
262
|
```
|
|
236
263
|
|
|
264
|
+
> **Note:** This hook automatically uses the connected wallet session — no need to pass `authority` explicitly.
|
|
265
|
+
|
|
266
|
+
**Available properties:**
|
|
267
|
+
- `send(request, opts?)` — build and send transaction
|
|
268
|
+
- `sendPrepared(prepared, opts?)` — send already-prepared transaction
|
|
269
|
+
- `isSending` / `status` / `signature` / `error` — transaction state
|
|
270
|
+
- `reset()` — clear state for new transaction
|
|
271
|
+
|
|
237
272
|
### Track confirmations for a signature
|
|
238
273
|
|
|
239
274
|
```tsx
|
package/dist/index.browser.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {createClient,toAddress,toAddressString,stableStringify,createSolTransferController,createStakeController,createSplTransferController,createTransactionPoolController,createInitialAsyncState,createAsyncState,normalizeSignature,SIGNATURE_STATUS_TIMEOUT_MS,deriveConfirmationStatus,confirmationMeetsCommitment,resolveClientConfig,deserializeSolanaState,subscribeSolanaState,serializeSolanaState}from'@solana/client';import {createContext,useMemo,useEffect,useContext,useCallback,useRef,useSyncExternalStore,useState}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import De,{SWRConfig}from'swr';import {useStore}from'zustand';import {getBase64EncodedWireTransaction}from'@solana/kit';var Pe=Object.defineProperty;var c=(e,t)=>Pe(e,"name",{value:t,configurable:true});var ne=createContext(null);function Ae(e){return resolveClientConfig(e??{})}c(Ae,"normalizeConfig");function K({children:e,client:t,config:r}){let n=useMemo(()=>Ae(r),[r]),i=useMemo(()=>t||createClient(n),[n,t]);return useEffect(()=>{if(!t)return ()=>{i.destroy();}},[i,t]),jsx(ne.Provider,{value:i,children:e})}c(K,"SolanaClientProvider");function T(){let e=useContext(ne);if(!e)throw new Error("useSolanaClient must be used within a SolanaClientProvider.");return e}c(T,"useSolanaClient");var N=createContext(void 0);function I(){return useContext(N)}c(I,"useQuerySuspensePreference");var Ie=c(e=>e,"identitySelector");function b(e){let t=T(),r=e??Ie,n=useStore(t.store,r);return n}c(b,"useClientStore");var Fe="@solana/react-hooks";function A(e,t,r,n={}){let i=T(),s=b(h=>h.cluster),{disabled:l=false,swr:a}=n,S=I(),p={...a??{},suspense:!l&&!!S},d=useMemo(()=>l?null:[Fe,e,s.endpoint,s.commitment,...t],[s.commitment,s.endpoint,t,e,l]),u=De(d,()=>r(i),p),[y,m]=useState(()=>u.data!==void 0?Date.now():void 0);useEffect(()=>{u.data!==void 0&&m(Date.now());},[u.data]);let f=u.error?"error":u.isLoading?"loading":u.data!==void 0?"success":"idle",P=useCallback(()=>u.mutate(void 0,{revalidate:true}),[u.mutate]);return {data:u.data,dataUpdatedAt:y,error:u.error??null,isError:f==="error",isLoading:u.isLoading,isSuccess:f==="success",isValidating:u.isValidating,mutate:u.mutate,refresh:P,status:f}}c(A,"useSolanaRpcQuery");function H(e={}){let{commitment:t=null,minContextSlot:r=null}=e;return ["latestBlockhash",t,He(r)]}c(H,"getLatestBlockhashKey");function z(e={}){let{programAddress:t,config:r}=e,n=t?toAddress(t):void 0,i=n?toAddressString(n):null,s=stableStringify(r??null);return ["programAccounts",i,s]}c(z,"getProgramAccountsKey");function q(e={}){let{transaction:t,config:r}=e,n=t?ze(t):null,i=stableStringify(r??null);return ["simulateTransaction",n,i]}c(q,"getSimulateTransactionKey");function _(e={}){let{config:t,signature:r}=e,n=r?.toString()??null,i=JSON.stringify(t??null);return ["signatureStatus",n,i]}c(_,"getSignatureStatusKey");function He(e){return e==null?null:typeof e=="bigint"?e:BigInt(Math.floor(e))}c(He,"normalizeBigint");function ze(e){return e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null}c(ze,"normalizeWire");var Ge=3e4;function G(e={}){let{commitment:t,minContextSlot:r,refreshInterval:n=Ge,disabled:i=false,swr:s}=e,l=useCallback(async S=>{let o=t??S.store.getState().cluster.commitment;return S.runtime.rpc.getLatestBlockhash({commitment:o,minContextSlot:Xe(r)}).send({abortSignal:AbortSignal.timeout(15e3)})},[t,r]),a=A("latestBlockhash",H(e),l,{disabled:i,swr:{refreshInterval:n,...s}});return {...a,blockhash:a.data?.value.blockhash??null,contextSlot:a.data?.context.slot,lastValidBlockHeight:a.data?.value.lastValidBlockHeight??null}}c(G,"useLatestBlockhash");function Je(e,t){let{commitment:r,config:n,swr:i,disabled:s}=t??{},l=useCallback(async o=>{let p=e?toAddress(e):void 0;if(!p)throw new Error("Provide a program address before querying program accounts.");let d=r??n?.commitment??o.store.getState().cluster.commitment,u={...n??{},commitment:d};return o.runtime.rpc.getProgramAccounts(p,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,e]),a=s??!e,S=A("programAccounts",z({programAddress:e,config:n}),l,{disabled:a,swr:i});return {...S,accounts:S.data??[]}}c(Je,"useProgramAccounts");function Ye(e,t){let{commitment:r,config:n,refreshInterval:i,disabled:s,swr:l}=t??{},a=useMemo(()=>e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null,[e]),S=useCallback(async d=>{if(!a)throw new Error("Provide a transaction payload before simulating.");let u={...n??{},commitment:r??n?.commitment??d.store.getState().cluster.commitment};return d.runtime.rpc.simulateTransaction(a,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,a]),o=s??!a,p=A("simulateTransaction",q({transaction:e,config:n}),S,{disabled:o,swr:{refreshInterval:i,revalidateIfStale:false,revalidateOnFocus:false,...l}});return {...p,logs:p.data?.value.logs??[]}}c(Ye,"useSimulateTransaction");function Xe(e){if(e!==void 0)return typeof e=="bigint"?e:BigInt(Math.floor(e))}c(Xe,"normalizeMinContextSlot");function ot(){return e=>e.cluster}c(ot,"createClusterSelector");function st(){return e=>e.cluster.status}c(st,"createClusterStatusSelector");function it(){return e=>e.wallet}c(it,"createWalletSelector");function ie(e){return t=>e?t.accounts[e]:void 0}c(ie,"createAccountSelector");function le(e){let r=!!I()&&e.enabled,n=useRef(null);if(useEffect(()=>{if(!r){n.current=null;return}n.current&&n.current.key!==e.key&&(n.current=null);},[e.key,r]),n.current&&n.current.key!==e.key&&(n.current=null),r&&e.key&&!e.ready){if(!n.current){let i=e.fetcher();n.current={key:e.key,promise:i.finally(()=>{n.current?.promise===i&&(n.current=null);})};}throw n.current.promise}}c(le,"useSuspenseFetcher");function lt(){let e=useMemo(ot,[]);return b(e)}c(lt,"useClusterState");function ct(){let e=useMemo(st,[]);return b(e)}c(ct,"useClusterStatus");function O(){let e=useMemo(it,[]);return b(e)}c(O,"useWallet");function L(){let e=O();if(e.status==="connected")return e.session}c(L,"useWalletSession");function ut(){return T().actions}c(ut,"useWalletActions");function E(){let e=T();return useCallback((t,r)=>e.actions.connectWallet(t,r),[e])}c(E,"useConnectWallet");function Y(){let e=T();return useCallback(()=>e.actions.disconnectWallet(),[e])}c(Y,"useDisconnectWallet");function dt(){let e=T(),t=L(),r=e.solTransfer,n=useRef(t);useEffect(()=>{n.current=t;},[t]);let i=useMemo(()=>createSolTransferController({authorityProvider:c(()=>n.current,"authorityProvider"),helper:r}),[r]),s=useSyncExternalStore(i.subscribe,i.getState,i.getState),l=useCallback((a,S)=>i.send(a,S),[i]);return {error:s.error??null,helper:r,isSending:s.status==="loading",reset:i.reset,send:l,signature:s.data??null,status:s.status}}c(dt,"useSolTransfer");function pt(e){let t=T(),r=L(),n=t.stake,i=useRef(r),s=useMemo(()=>String(e),[e]);useEffect(()=>{i.current=r;},[r]);let l=useMemo(()=>createStakeController({authorityProvider:c(()=>i.current,"authorityProvider"),helper:n}),[n]),a=useSyncExternalStore(l.subscribe,l.getState,l.getState),S=useSyncExternalStore(l.subscribeUnstake,l.getUnstakeState,l.getUnstakeState),o=useSyncExternalStore(l.subscribeWithdraw,l.getWithdrawState,l.getWithdrawState),p=useCallback((m,f)=>l.stake({...m,validatorId:s},f),[l,s]),d=useCallback((m,f)=>l.unstake({...m},f),[l]),u=useCallback((m,f)=>l.withdraw({...m},f),[l]),y=useCallback(async(m,f)=>{if(!n.getStakeAccounts)throw new Error("getStakeAccounts is not available. Make sure you have the latest version of @solana/client package.");let P=typeof m=="string"?m:String(m),h=f?typeof f=="string"?f:String(f):void 0;return n.getStakeAccounts(P,h)},[n]);return {error:a.error??null,getStakeAccounts:y,helper:n,isStaking:a.status==="loading",isUnstaking:S.status==="loading",isWithdrawing:o.status==="loading",reset:l.reset,resetUnstake:l.resetUnstake,resetWithdraw:l.resetWithdraw,stake:p,unstake:d,withdraw:u,signature:a.data??null,unstakeSignature:S.data??null,withdrawSignature:o.data??null,status:a.status,unstakeStatus:S.status,withdrawStatus:o.status,unstakeError:S.error??null,withdrawError:o.error??null,validatorId:s}}c(pt,"useStake");function St(e,t={}){let r=T(),n=L(),i=!!I(),s=useMemo(()=>String(e),[e]),l=useMemo(()=>({commitment:t.commitment,mint:s,...t.config??{}}),[s,t.commitment,t.config]),a=useMemo(()=>r.splToken(l),[r,l]),S=t.owner??n?.account.address,o=useMemo(()=>S?String(S):null,[S]),p=o?["spl-balance",s,o,t.commitment??null]:null,d=useCallback(()=>{if(!o)throw new Error("Unable to fetch SPL balance without an owner.");return a.fetchBalance(o,t.commitment)},[a,o,t.commitment]),u=useMemo(()=>({revalidateOnFocus:t.revalidateOnFocus??false,suspense:i,...t.swr??{}}),[t.revalidateOnFocus,t.swr,i]),{data:y,error:m,isLoading:f,isValidating:P,mutate:h}=De(p,d,u),x=useRef(n);useEffect(()=>{x.current=n;},[n]);let v=useRef(o);useEffect(()=>{v.current=o;},[o]);let U=useMemo(()=>createSplTransferController({authorityProvider:c(()=>x.current??void 0,"authorityProvider"),helper:a,sourceOwnerProvider:c(()=>v.current??void 0,"sourceOwnerProvider")}),[a]),R=useSyncExternalStore(U.subscribe,U.getState,U.getState),M=useCallback(()=>o?h(()=>a.fetchBalance(o,t.commitment),{revalidate:false}):Promise.resolve(void 0),[a,h,o,t.commitment]),ye=useCallback(async(Te,Ce)=>{let he=await U.send(Te,Ce);return o&&await h(()=>a.fetchBalance(o,t.commitment),{revalidate:false}),he},[U,a,h,t.commitment,o]),fe=useCallback(()=>{U.reset();},[U]),ge=o===null?"disconnected":m?"error":f&&!y?"loading":"ready";return {balance:y??null,error:m??null,helper:a,isFetching:!!o&&(f||P),isSending:R.status==="loading",owner:o,refresh:M,refreshing:!!o&&P,resetSend:fe,send:ye,sendError:R.error??null,sendSignature:R.data??null,sendStatus:R.status,status:ge}}c(St,"useSplToken");function mt(e,t={}){let r=T(),n=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),i=n.skip??!e,{address:s,addressError:l}=useMemo(()=>{if(i||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(p){return {address:void 0,addressError:p}}},[e,i]);useEffect(()=>{l&&console.warn("[useAccount] Invalid address provided:",l);},[l]);let a=useMemo(()=>s?.toString(),[s]),S=useMemo(()=>ie(a),[a]),o=b(S);return le({enabled:n.fetch!==false&&!i&&!!s,fetcher:c(()=>{if(!s)throw new Error("Provide an address before fetching account data.");return r.actions.fetchAccount(s,n.commitment)},"fetcher"),key:a??null,ready:o!==void 0}),useEffect(()=>{if(!s)return;let p=n.commitment;if(n.fetch!==false&&o===void 0&&r.actions.fetchAccount(s,p).catch(()=>{}),n.watch){let d=r.watchers.watchAccount({address:s,commitment:p},()=>{});return ()=>{d.abort();}}},[o,s,r,n.commitment,n.fetch,n.watch]),o}c(mt,"useAccount");function yt(e,t={}){let r=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),n=T(),i=r.skip??!e,{address:s,addressError:l}=useMemo(()=>{if(i||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(m){return {address:void 0,addressError:m}}},[e,i]);useEffect(()=>{l&&console.warn("[useBalance] Invalid address provided:",l);},[l]);let a=useMemo(()=>s?.toString(),[s]),S=useMemo(()=>ie(a),[a]),o=b(S);le({enabled:r.fetch!==false&&!i&&!!s,fetcher:c(()=>{if(!s)throw new Error("Provide an address before fetching balance.");return n.actions.fetchBalance(s,r.commitment)},"fetcher"),key:a??null,ready:o!==void 0}),useEffect(()=>{if(!s)return;let m=r.commitment;if(r.fetch!==false&&o===void 0&&n.actions.fetchBalance(s,m).catch(()=>{}),r.watch){let f=n.watchers.watchBalance({address:s,commitment:m},()=>{});return ()=>{f.abort();}}},[o,s,n,r.commitment,r.fetch,r.watch]);let p=o?.lamports??null,d=o?.fetching??false,u=o?.slot,y=l??o?.error;return useMemo(()=>({account:o,error:y,fetching:d,lamports:p,slot:u}),[o,y,d,p,u])}c(yt,"useBalance");function ft(e={}){let t=useMemo(()=>e.instructions??[],[e.instructions]),n=T().helpers.transaction,i=e.latestBlockhash?.swr?.refreshInterval,l=e.latestBlockhash?.refreshInterval??(typeof i=="number"?i:void 0)??3e4,a=useMemo(()=>createTransactionPoolController({blockhashMaxAgeMs:l,helper:n,initialInstructions:t}),[l,n,t]),S=G(e.latestBlockhash);useEffect(()=>{let y=S.data?.value;if(!y){a.setLatestBlockhashCache(void 0);return}let m={updatedAt:S.dataUpdatedAt??Date.now(),value:y};a.setLatestBlockhashCache(m);},[a,S.data,S.dataUpdatedAt]);let o=useSyncExternalStore(a.subscribeInstructions,a.getInstructions,a.getInstructions),p=useSyncExternalStore(a.subscribePrepared,a.getPrepared,a.getPrepared),d=useSyncExternalStore(a.subscribePrepareState,a.getPrepareState,a.getPrepareState),u=useSyncExternalStore(a.subscribeSendState,a.getSendState,a.getSendState);return {addInstruction:a.addInstruction,addInstructions:a.addInstructions,clearInstructions:a.clearInstructions,instructions:o,isPreparing:d.status==="loading",isSending:u.status==="loading",prepared:p,prepare:a.prepare,prepareError:d.error??null,prepareStatus:d.status,removeInstruction:a.removeInstruction,replaceInstructions:a.replaceInstructions,reset:a.reset,send:a.send,sendError:u.error??null,sendSignature:u.data??null,sendStatus:u.status,prepareAndSend:a.prepareAndSend,sign:a.sign,toWire:a.toWire,latestBlockhash:S}}c(ft,"useTransactionPool");function gt(){let t=T().transaction,r=L(),[n,i]=useState(()=>createInitialAsyncState()),s=useCallback(async p=>{i(createAsyncState("loading"));try{let d=await p();return i(createAsyncState("success",{data:d})),d}catch(d){throw i(createAsyncState("error",{error:d})),d}},[]),l=useCallback(p=>{if(p.authority)return p;if(!r)throw new Error("Connect a wallet or supply an `authority` before sending transactions.");return {...p,authority:r}},[r]),a=useCallback(async(p,d)=>{let u=l(p);return s(()=>t.prepareAndSend(u,d))},[l,s,t]),S=useCallback(async(p,d)=>s(()=>t.send(p,d)),[s,t]),o=useCallback(()=>{i(createInitialAsyncState());},[]);return {error:n.error??null,isSending:n.status==="loading",reset:o,send:a,sendPrepared:S,signature:n.data??null,status:n.status}}c(gt,"useSendTransaction");function ce(e,t={}){let{config:r,disabled:n,swr:i}=t,s=useMemo(()=>normalizeSignature(e),[e]),l=s?.toString()??null,a=useCallback(async d=>{if(!l)throw new Error("Provide a signature before querying its status.");if(!s)throw new Error("Provide a signature before querying its status.");return (await d.runtime.rpc.getSignatureStatuses([s],r).send({abortSignal:AbortSignal.timeout(SIGNATURE_STATUS_TIMEOUT_MS)})).value[0]??null},[r,s,l]),S=n??!l,o=A("signatureStatus",_({signature:e,config:r}),a,{disabled:S,swr:i}),p=deriveConfirmationStatus(o.data??null);return {...o,confirmationStatus:p,signatureStatus:o.data??null}}c(ce,"useSignatureStatus");function Tt(e,t={}){let{commitment:r="confirmed",disabled:n,subscribe:i=true,watchCommitment:s,...l}=t,{swr:a,...S}=l,o=s??r,p=T(),d=useMemo(()=>normalizeSignature(e),[e]),u=n??!d,y=ce(e,{...S,swr:{refreshInterval:2e3,...a},disabled:u}),[m,f]=useState(false);useEffect(()=>{if(d===void 0){f(false);return}f(false);},[d]),useEffect(()=>{if(!d||u||!i)return;let M=p.watchers.watchSignature({commitment:o,enableReceivedNotification:true,signature:d},()=>{f(true);});return ()=>{M.abort();}},[p,u,d,i,o]);let P=!!d&&!u,h=y.signatureStatus?.err??null,x=y.error??h??null,v=confirmationMeetsCommitment(y.confirmationStatus,r),U=m||v,R="idle";return P?x?R="error":U?R="success":R="waiting":R="idle",{...y,isError:R==="error",isSuccess:R==="success",isWaiting:R==="waiting",waitError:x,waitStatus:R}}c(Tt,"useWaitForSignature");function Ct(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,i=useCallback(async s=>{if(!r)throw new Error("Address required");return s.actions.fetchLookupTable(r,t.commitment)},[r,t.commitment]);return A("lookupTable",[n,t.commitment],i,{disabled:!r,swr:t.swr})}c(Ct,"useLookupTable");function ht(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,i=useCallback(async s=>{if(!r)throw new Error("Address required");return s.actions.fetchNonceAccount(r,t.commitment)},[r,t.commitment]);return A("nonceAccount",[n,t.commitment],i,{disabled:!r,swr:t.swr})}c(ht,"useNonceAccount");var X=c(()=>new Map,"createCache"),kt=Object.freeze({dedupingInterval:2e3,focusThrottleInterval:5e3,provider:c(()=>X(),"provider"),revalidateIfStale:true,revalidateOnFocus:true,revalidateOnReconnect:true});function $({children:e,config:t,resetOnClusterChange:r=true,suspense:n}){let i=b(o=>o.cluster),s=useRef(new Map),l=r?`${i.endpoint}|${i.commitment}`:"global",a=useMemo(()=>{let o=s.current;if(!r){let d=o.get("global");if(d)return d;let u=X();return o.set("global",u),u}let p=X();return o.set(l,p),p},[l,r]),S=useMemo(()=>{let o={...kt,...t};return t?.provider||(o.provider=()=>a),o.suspense===void 0&&n!==void 0&&(o.suspense=n),o},[a,t,n]);return jsx(N.Provider,{value:n,children:jsx(SWRConfig,{value:S,children:e})})}c($,"SolanaQueryProvider");function Wt({children:e,client:t,config:r,query:n,walletPersistence:i}){let s=n!==false&&n?.disabled!==true,l=s&&n?n:{},a=i===false?void 0:i??{},S=a?a.storage??Z():null,o=a?.storageKey??me,p=a?xt(S,o):{legacyConnectorId:null,state:null},d=r?resolveClientConfig(r):resolveClientConfig(),u=a?{...d,initialState:d.initialState??p.state??void 0}:d,y=s?jsx($,{config:l.config,resetOnClusterChange:l.resetOnClusterChange,suspense:l.suspense,children:e}):e;return jsxs(K,{client:t,config:u,children:[a?jsx(Ot,{autoConnect:a.autoConnect,initialState:u?.initialState??p.state,legacyConnectorId:p.legacyConnectorId,storage:S,storageKey:o}):null,y]})}c(Wt,"SolanaProvider");var me="solana:last-connector";function xt(e,t){if(!e)return {legacyConnectorId:null,state:null};let r=vt(()=>e.getItem(t));if(!r)return {legacyConnectorId:null,state:null};let n=deserializeSolanaState(r);return n?{legacyConnectorId:null,state:n}:{legacyConnectorId:r,state:null}}c(xt,"readPersistedState");function Ot({autoConnect:e=true,initialState:t=null,legacyConnectorId:r=null,storage:n,storageKey:i=me}){let s=O(),l=E(),a=T(),S=useRef(n??Z()),[o,p]=useState(false),d=useRef(null),u=useRef(t),y=useRef(r);return useEffect(()=>{S.current=n??Z();},[n]),useEffect(()=>{d.current!==a&&(d.current=a,p(false));},[a]),useEffect(()=>{let m=S.current;if(!m)return;let f=subscribeSolanaState(a,P=>{u.current=P,y.current=null,It(()=>m.setItem(i,serializeSolanaState(P)));});return ()=>{f();}},[a,i]),useEffect(()=>{u.current=t??u.current,y.current=r;},[t,r]),useEffect(()=>{let m=u.current??t,P=(m?.autoconnect??false)||e;if(!P||o)return;if(s.status==="connected"||s.status==="connecting"){p(true);return}let h=m?.lastConnectorId??y.current;!(P&&h)||!h||!a.connectors.get(h)||(async()=>{try{await l(h,{autoConnect:!0,allowInteractiveFallback:!1});}catch{}finally{p(true);}})();},[e,a,l,o,t,s.status]),null}c(Ot,"WalletPersistence");function vt(e){try{return e()}catch{return null}}c(vt,"safelyRead");function It(e){try{e();}catch{}}c(It,"safelyWrite");function Z(){if(typeof globalThis!="object"||globalThis===null)return null;let e=globalThis.localStorage;return e||null}c(Z,"getDefaultStorage");function ee(e={}){let t=O(),r=E(),n=Y(),i=T(),[s,l]=useState(false);useEffect(()=>{l(true);},[]);let a=s?e.connectors??i.connectors.all:[],S=useCallback((d,u)=>r(d,u),[r]),o=useCallback(()=>n(),[n]);return useMemo(()=>{let d="connectorId"in t?t.connectorId:void 0,u=d?a.find(f=>f.id===d):void 0,y=t.status==="connected"?t.session:void 0,m=t.status==="error"?t.error??null:null;return {connect:S,connected:t.status==="connected",connecting:t.status==="connecting",connectors:a,connectorId:d,currentConnector:u,disconnect:o,error:m,status:t.status,wallet:y}},[S,a,o,t])}c(ee,"useWalletConnection");function Qt({children:e,connectors:t}){let r=ee({connectors:t});return jsx(Fragment,{children:e(r)})}c(Qt,"WalletConnectionManager");function Dt(e={}){let t=ee(e),[r,n]=useState(e.initialOpen??false),[i,s]=useState(null),l=e.closeOnConnect??true,a=useCallback(()=>n(true),[]),S=useCallback(()=>n(false),[]),o=useCallback(()=>n(u=>!u),[]),p=useCallback(u=>s(u),[]),d=useCallback(async(u,y)=>{await t.connect(u,y),s(u),l&&n(false);},[l,t]);return {...t,close:S,connect:d,isOpen:r,open:a,selectedConnector:i,select:p,toggle:o}}c(Dt,"useWalletModalState");export{K as SolanaClientProvider,Wt as SolanaProvider,$ as SolanaQueryProvider,Qt as WalletConnectionManager,H as getLatestBlockhashKey,z as getProgramAccountsKey,_ as getSignatureStatusKey,q as getSimulateTransactionKey,mt as useAccount,yt as useBalance,b as useClientStore,lt as useClusterState,ct as useClusterStatus,E as useConnectWallet,Y as useDisconnectWallet,G as useLatestBlockhash,Ct as useLookupTable,ht as useNonceAccount,Je as useProgramAccounts,gt as useSendTransaction,ce as useSignatureStatus,Ye as useSimulateTransaction,dt as useSolTransfer,T as useSolanaClient,St as useSplToken,pt as useStake,ft as useTransactionPool,Tt as useWaitForSignature,O as useWallet,ut as useWalletActions,ee as useWalletConnection,Dt as useWalletModalState,L as useWalletSession};//# sourceMappingURL=index.browser.mjs.map
|
|
1
|
+
import {createClient,toAddress,toAddressString,stableStringify,createSolTransferController,createStakeController,createSplTransferController,createTransactionPoolController,createInitialAsyncState,createAsyncState,createWsolController,normalizeSignature,SIGNATURE_STATUS_TIMEOUT_MS,deriveConfirmationStatus,confirmationMeetsCommitment,resolveClientConfig,deserializeSolanaState,subscribeSolanaState,serializeSolanaState}from'@solana/client';import {createContext,useMemo,useEffect,useContext,useCallback,useRef,useSyncExternalStore,useState}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import me,{SWRConfig}from'swr';import {useStore}from'zustand';import {getBase64EncodedWireTransaction}from'@solana/kit';var Pe=Object.defineProperty;var c=(e,t)=>Pe(e,"name",{value:t,configurable:true});var G=createContext(null);function Oe(e){return resolveClientConfig(e??{})}c(Oe,"normalizeConfig");function J({children:e,client:t,config:r}){let n=useMemo(()=>Oe(r),[r]),s=useMemo(()=>t||createClient(n),[n,t]);return useEffect(()=>{if(!t)return ()=>{s.destroy();}},[s,t]),jsx(G.Provider,{value:s,children:e})}c(J,"SolanaClientProvider");function h(){let e=useContext(G);if(!e)throw new Error("useSolanaClient must be used within a SolanaClientProvider.");return e}c(h,"useSolanaClient");var Y=createContext(void 0);function B(){return useContext(Y)}c(B,"useQuerySuspensePreference");var Le=c(e=>e,"identitySelector");function b(e){let t=h(),r=e??Le,n=useStore(t.store,r);return n}c(b,"useClientStore");var Ke="@solana/react-hooks";function O(e,t,r,n={}){let s=h(),l=b(g=>g.cluster),{disabled:o=false,swr:a}=n,S=B(),d={...a??{},suspense:!o&&!!S},p=useMemo(()=>o?null:[Ke,e,l.endpoint,l.commitment,...t],[l.commitment,l.endpoint,t,e,o]),u=me(p,()=>r(s),d),[y,m]=useState(()=>u.data!==void 0?Date.now():void 0);useEffect(()=>{u.data!==void 0&&m(Date.now());},[u.data]);let f=u.error?"error":u.isLoading?"loading":u.data!==void 0?"success":"idle",w=useCallback(()=>u.mutate(void 0,{revalidate:true}),[u.mutate]);return {data:u.data,dataUpdatedAt:y,error:u.error??null,isError:f==="error",isLoading:u.isLoading,isSuccess:f==="success",isValidating:u.isValidating,mutate:u.mutate,refresh:w,status:f}}c(O,"useSolanaRpcQuery");function X(e={}){let{commitment:t=null,minContextSlot:r=null}=e;return ["latestBlockhash",t,qe(r)]}c(X,"getLatestBlockhashKey");function $(e={}){let{programAddress:t,config:r}=e,n=t?toAddress(t):void 0,s=n?toAddressString(n):null,l=stableStringify(r??null);return ["programAccounts",s,l]}c($,"getProgramAccountsKey");function Z(e={}){let{transaction:t,config:r}=e,n=t?_e(t):null,s=stableStringify(r??null);return ["simulateTransaction",n,s]}c(Z,"getSimulateTransactionKey");function j(e={}){let{config:t,signature:r}=e,n=r?.toString()??null,s=JSON.stringify(t??null);return ["signatureStatus",n,s]}c(j,"getSignatureStatusKey");function qe(e){return e==null?null:typeof e=="bigint"?e:BigInt(Math.floor(e))}c(qe,"normalizeBigint");function _e(e){return e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null}c(_e,"normalizeWire");var Ye=3e4;function te(e={}){let{commitment:t,minContextSlot:r,refreshInterval:n=Ye,disabled:s=false,swr:l}=e,o=useCallback(async S=>{let i=t??S.store.getState().cluster.commitment;return S.runtime.rpc.getLatestBlockhash({commitment:i,minContextSlot:Ze(r)}).send({abortSignal:AbortSignal.timeout(15e3)})},[t,r]),a=O("latestBlockhash",X(e),o,{disabled:s,swr:{refreshInterval:n,...l}});return {...a,blockhash:a.data?.value.blockhash??null,contextSlot:a.data?.context.slot,lastValidBlockHeight:a.data?.value.lastValidBlockHeight??null}}c(te,"useLatestBlockhash");function Xe(e,t){let{commitment:r,config:n,swr:s,disabled:l}=t??{},o=useCallback(async i=>{let d=e?toAddress(e):void 0;if(!d)throw new Error("Provide a program address before querying program accounts.");let p=r??n?.commitment??i.store.getState().cluster.commitment,u={...n??{},commitment:p};return i.runtime.rpc.getProgramAccounts(d,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,e]),a=l??!e,S=O("programAccounts",$({programAddress:e,config:n}),o,{disabled:a,swr:s});return {...S,accounts:S.data??[]}}c(Xe,"useProgramAccounts");function $e(e,t){let{commitment:r,config:n,refreshInterval:s,disabled:l,swr:o}=t??{},a=useMemo(()=>e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null,[e]),S=useCallback(async p=>{if(!a)throw new Error("Provide a transaction payload before simulating.");let u={...n??{},commitment:r??n?.commitment??p.store.getState().cluster.commitment};return p.runtime.rpc.simulateTransaction(a,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,a]),i=l??!a,d=O("simulateTransaction",Z({transaction:e,config:n}),S,{disabled:i,swr:{refreshInterval:s,revalidateIfStale:false,revalidateOnFocus:false,...o}});return {...d,logs:d.data?.value.logs??[]}}c($e,"useSimulateTransaction");function Ze(e){if(e!==void 0)return typeof e=="bigint"?e:BigInt(Math.floor(e))}c(Ze,"normalizeMinContextSlot");function it(){return e=>e.cluster}c(it,"createClusterSelector");function lt(){return e=>e.cluster.status}c(lt,"createClusterStatusSelector");function ct(){return e=>e.wallet}c(ct,"createWalletSelector");function ye(e){return t=>e?t.accounts[e]:void 0}c(ye,"createAccountSelector");function fe(e){let r=!!B()&&e.enabled,n=useRef(null);if(useEffect(()=>{if(!r){n.current=null;return}n.current&&n.current.key!==e.key&&(n.current=null);},[e.key,r]),n.current&&n.current.key!==e.key&&(n.current=null),r&&e.key&&!e.ready){if(!n.current){let s=e.fetcher();n.current={key:e.key,promise:s.finally(()=>{n.current?.promise===s&&(n.current=null);})};}throw n.current.promise}}c(fe,"useSuspenseFetcher");function ut(){let e=useMemo(it,[]);return b(e)}c(ut,"useClusterState");function pt(){let e=useMemo(lt,[]);return b(e)}c(pt,"useClusterStatus");function L(){let e=useMemo(ct,[]);return b(e)}c(L,"useWallet");function E(){let e=L();if(e.status==="connected")return e.session}c(E,"useWalletSession");function dt(){return h().actions}c(dt,"useWalletActions");function M(){let e=h();return useCallback((t,r)=>e.actions.connectWallet(t,r),[e])}c(M,"useConnectWallet");function re(){let e=h();return useCallback(()=>e.actions.disconnectWallet(),[e])}c(re,"useDisconnectWallet");function St(){let e=h(),t=E(),r=e.solTransfer,n=useRef(t);useEffect(()=>{n.current=t;},[t]);let s=useMemo(()=>createSolTransferController({authorityProvider:c(()=>n.current,"authorityProvider"),helper:r}),[r]),l=useSyncExternalStore(s.subscribe,s.getState,s.getState),o=useCallback((a,S)=>s.send(a,S),[s]);return {error:l.error??null,helper:r,isSending:l.status==="loading",reset:s.reset,send:o,signature:l.data??null,status:l.status}}c(St,"useSolTransfer");function mt(e){let t=h(),r=E(),n=t.stake,s=useRef(r),l=useMemo(()=>String(e),[e]);useEffect(()=>{s.current=r;},[r]);let o=useMemo(()=>createStakeController({authorityProvider:c(()=>s.current,"authorityProvider"),helper:n}),[n]),a=useSyncExternalStore(o.subscribe,o.getState,o.getState),S=useSyncExternalStore(o.subscribeUnstake,o.getUnstakeState,o.getUnstakeState),i=useSyncExternalStore(o.subscribeWithdraw,o.getWithdrawState,o.getWithdrawState),d=useCallback((m,f)=>o.stake({...m,validatorId:l},f),[o,l]),p=useCallback((m,f)=>o.unstake({...m},f),[o]),u=useCallback((m,f)=>o.withdraw({...m},f),[o]),y=useCallback(async(m,f)=>{if(!n.getStakeAccounts)throw new Error("getStakeAccounts is not available. Make sure you have the latest version of @solana/client package.");let w=typeof m=="string"?m:String(m),g=f?typeof f=="string"?f:String(f):void 0;return n.getStakeAccounts(w,g)},[n]);return {error:a.error??null,getStakeAccounts:y,helper:n,isStaking:a.status==="loading",isUnstaking:S.status==="loading",isWithdrawing:i.status==="loading",reset:o.reset,resetUnstake:o.resetUnstake,resetWithdraw:o.resetWithdraw,stake:d,unstake:p,withdraw:u,signature:a.data??null,unstakeSignature:S.data??null,withdrawSignature:i.data??null,status:a.status,unstakeStatus:S.status,withdrawStatus:i.status,unstakeError:S.error??null,withdrawError:i.error??null,validatorId:l}}c(mt,"useStake");function yt(e,t={}){let r=h(),n=E(),s=!!B(),l=useMemo(()=>String(e),[e]),o=useMemo(()=>({commitment:t.commitment,mint:l,...t.config??{}}),[l,t.commitment,t.config]),a=useMemo(()=>r.splToken(o),[r,o]),S=t.owner??n?.account.address,i=useMemo(()=>S?String(S):null,[S]),d=i?["spl-balance",l,i,t.commitment??null]:null,p=useCallback(()=>{if(!i)throw new Error("Unable to fetch SPL balance without an owner.");return a.fetchBalance(i,t.commitment)},[a,i,t.commitment]),u=useMemo(()=>({revalidateOnFocus:t.revalidateOnFocus??false,suspense:s,...t.swr??{}}),[t.revalidateOnFocus,t.swr,s]),{data:y,error:m,isLoading:f,isValidating:w,mutate:g}=me(d,p,u),k=useRef(n);useEffect(()=>{k.current=n;},[n]);let A=useRef(i);useEffect(()=>{A.current=i;},[i]);let U=useMemo(()=>createSplTransferController({authorityProvider:c(()=>k.current??void 0,"authorityProvider"),helper:a,sourceOwnerProvider:c(()=>A.current??void 0,"sourceOwnerProvider")}),[a]),R=useSyncExternalStore(U.subscribe,U.getState,U.getState),Q=useCallback(()=>i?g(()=>a.fetchBalance(i,t.commitment),{revalidate:false}):Promise.resolve(void 0),[a,g,i,t.commitment]),z=useCallback(async(x,D)=>{let F=await U.send(x,D);return i&&await g(()=>a.fetchBalance(i,t.commitment),{revalidate:false}),F},[U,a,g,t.commitment,i]),q=useCallback(()=>{U.reset();},[U]),_=i===null?"disconnected":m?"error":f&&!y?"loading":"ready";return {balance:y??null,error:m??null,helper:a,isFetching:!!i&&(f||w),isSending:R.status==="loading",owner:i,refresh:Q,refreshing:!!i&&w,resetSend:q,send:z,sendError:R.error??null,sendSignature:R.data??null,sendStatus:R.status,status:_}}c(yt,"useSplToken");function ft(e,t={}){let r=h(),n=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),s=n.skip??!e,{address:l,addressError:o}=useMemo(()=>{if(s||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(d){return {address:void 0,addressError:d}}},[e,s]);useEffect(()=>{o&&console.warn("[useAccount] Invalid address provided:",o);},[o]);let a=useMemo(()=>l?.toString(),[l]),S=useMemo(()=>ye(a),[a]),i=b(S);return fe({enabled:n.fetch!==false&&!s&&!!l,fetcher:c(()=>{if(!l)throw new Error("Provide an address before fetching account data.");return r.actions.fetchAccount(l,n.commitment)},"fetcher"),key:a??null,ready:i!==void 0}),useEffect(()=>{if(!l)return;let d=n.commitment;if(n.fetch!==false&&i===void 0&&r.actions.fetchAccount(l,d).catch(()=>{}),n.watch){let p=r.watchers.watchAccount({address:l,commitment:d},()=>{});return ()=>{p.abort();}}},[i,l,r,n.commitment,n.fetch,n.watch]),i}c(ft,"useAccount");function gt(e,t={}){let r=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),n=h(),s=r.skip??!e,{address:l,addressError:o}=useMemo(()=>{if(s||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(m){return {address:void 0,addressError:m}}},[e,s]);useEffect(()=>{o&&console.warn("[useBalance] Invalid address provided:",o);},[o]);let a=useMemo(()=>l?.toString(),[l]),S=useMemo(()=>ye(a),[a]),i=b(S);fe({enabled:r.fetch!==false&&!s&&!!l,fetcher:c(()=>{if(!l)throw new Error("Provide an address before fetching balance.");return n.actions.fetchBalance(l,r.commitment)},"fetcher"),key:a??null,ready:i!==void 0}),useEffect(()=>{if(!l)return;let m=r.commitment;if(r.fetch!==false&&i===void 0&&n.actions.fetchBalance(l,m).catch(()=>{}),r.watch){let f=n.watchers.watchBalance({address:l,commitment:m},()=>{});return ()=>{f.abort();}}},[i,l,n,r.commitment,r.fetch,r.watch]);let d=i?.lamports??null,p=i?.fetching??false,u=i?.slot,y=o??i?.error;return useMemo(()=>({account:i,error:y,fetching:p,lamports:d,slot:u}),[i,y,p,d,u])}c(gt,"useBalance");function Tt(e={}){let t=useMemo(()=>e.instructions??[],[e.instructions]),n=h().helpers.transaction,s=e.latestBlockhash?.swr?.refreshInterval,o=e.latestBlockhash?.refreshInterval??(typeof s=="number"?s:void 0)??3e4,a=useMemo(()=>createTransactionPoolController({blockhashMaxAgeMs:o,helper:n,initialInstructions:t}),[o,n,t]),S=te(e.latestBlockhash);useEffect(()=>{let y=S.data?.value;if(!y){a.setLatestBlockhashCache(void 0);return}let m={updatedAt:S.dataUpdatedAt??Date.now(),value:y};a.setLatestBlockhashCache(m);},[a,S.data,S.dataUpdatedAt]);let i=useSyncExternalStore(a.subscribeInstructions,a.getInstructions,a.getInstructions),d=useSyncExternalStore(a.subscribePrepared,a.getPrepared,a.getPrepared),p=useSyncExternalStore(a.subscribePrepareState,a.getPrepareState,a.getPrepareState),u=useSyncExternalStore(a.subscribeSendState,a.getSendState,a.getSendState);return {addInstruction:a.addInstruction,addInstructions:a.addInstructions,clearInstructions:a.clearInstructions,instructions:i,isPreparing:p.status==="loading",isSending:u.status==="loading",prepared:d,prepare:a.prepare,prepareError:p.error??null,prepareStatus:p.status,removeInstruction:a.removeInstruction,replaceInstructions:a.replaceInstructions,reset:a.reset,send:a.send,sendError:u.error??null,sendSignature:u.data??null,sendStatus:u.status,prepareAndSend:a.prepareAndSend,sign:a.sign,toWire:a.toWire,latestBlockhash:S}}c(Tt,"useTransactionPool");function Ct(){let t=h().transaction,r=E(),[n,s]=useState(()=>createInitialAsyncState()),l=useCallback(async d=>{s(createAsyncState("loading"));try{let p=await d();return s(createAsyncState("success",{data:p})),p}catch(p){throw s(createAsyncState("error",{error:p})),p}},[]),o=useCallback(d=>{if(d.authority)return d;if(!r)throw new Error("Connect a wallet or supply an `authority` before sending transactions.");return {...d,authority:r}},[r]),a=useCallback(async(d,p)=>{let u=o(d);return l(()=>t.prepareAndSend(u,p))},[o,l,t]),S=useCallback(async(d,p)=>l(()=>t.send(d,p)),[l,t]),i=useCallback(()=>{s(createInitialAsyncState());},[]);return {error:n.error??null,isSending:n.status==="loading",reset:i,send:a,sendPrepared:S,signature:n.data??null,status:n.status}}c(Ct,"useSendTransaction");function ht(e={}){let t=h(),r=E(),n=!!B(),s=t.wsol,l=e.owner??r?.account.address,o=useMemo(()=>l?String(l):null,[l]),a=o?["wsol-balance",o,e.commitment??null]:null,S=useCallback(()=>{if(!o)throw new Error("Unable to fetch wSOL balance without an owner.");return s.fetchWsolBalance(o,e.commitment)},[s,o,e.commitment]),i=useMemo(()=>({revalidateOnFocus:e.revalidateOnFocus??false,suspense:n,...e.swr??{}}),[e.revalidateOnFocus,e.swr,n]),{data:d,error:p,isLoading:u,isValidating:y,mutate:m}=me(a,S,i),f=useRef(r);useEffect(()=>{f.current=r;},[r]);let w=useRef(o);useEffect(()=>{w.current=o;},[o]);let g=useMemo(()=>createWsolController({authorityProvider:c(()=>f.current??void 0,"authorityProvider"),helper:s}),[s]),k=useSyncExternalStore(g.subscribeWrap,g.getWrapState,g.getWrapState),A=useSyncExternalStore(g.subscribeUnwrap,g.getUnwrapState,g.getUnwrapState),U=useCallback(()=>o?m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}):Promise.resolve(void 0),[s,m,o,e.commitment]),R=useCallback(async(x,D)=>{let F=w.current?{...x,owner:w.current}:x,V=await g.wrap(F,D);return o&&await m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}),V},[g,s,m,e.commitment,o]),Q=useCallback(async(x,D)=>{let F=w.current?{...x,owner:w.current}:x,V=await g.unwrap(F,D);return o&&await m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}),V},[g,s,m,e.commitment,o]),z=useCallback(()=>{g.resetWrap();},[g]),q=useCallback(()=>{g.resetUnwrap();},[g]),_=o===null?"disconnected":p?"error":u&&!d?"loading":"ready";return {balance:d??null,error:p??null,helper:s,isFetching:!!o&&(u||y),isUnwrapping:A.status==="loading",isWrapping:k.status==="loading",owner:o,refresh:U,refreshing:!!o&&y,resetUnwrap:q,resetWrap:z,unwrap:Q,unwrapError:A.error??null,unwrapSignature:A.data??null,unwrapStatus:A.status,wrap:R,wrapError:k.error??null,wrapSignature:k.data??null,wrapStatus:k.status,status:_}}c(ht,"useWrapSol");function ge(e,t={}){let{config:r,disabled:n,swr:s}=t,l=useMemo(()=>normalizeSignature(e),[e]),o=l?.toString()??null,a=useCallback(async p=>{if(!o)throw new Error("Provide a signature before querying its status.");if(!l)throw new Error("Provide a signature before querying its status.");return (await p.runtime.rpc.getSignatureStatuses([l],r).send({abortSignal:AbortSignal.timeout(SIGNATURE_STATUS_TIMEOUT_MS)})).value[0]??null},[r,l,o]),S=n??!o,i=O("signatureStatus",j({signature:e,config:r}),a,{disabled:S,swr:s}),d=deriveConfirmationStatus(i.data??null);return {...i,confirmationStatus:d,signatureStatus:i.data??null}}c(ge,"useSignatureStatus");function wt(e,t={}){let{commitment:r="confirmed",disabled:n,subscribe:s=true,watchCommitment:l,...o}=t,{swr:a,...S}=o,i=l??r,d=h(),p=useMemo(()=>normalizeSignature(e),[e]),u=n??!p,y=ge(e,{...S,swr:{refreshInterval:2e3,...a},disabled:u}),[m,f]=useState(false);useEffect(()=>{if(p===void 0){f(false);return}f(false);},[p]),useEffect(()=>{if(!p||u||!s)return;let Q=d.watchers.watchSignature({commitment:i,enableReceivedNotification:true,signature:p},()=>{f(true);});return ()=>{Q.abort();}},[d,u,p,s,i]);let w=!!p&&!u,g=y.signatureStatus?.err??null,k=y.error??g??null,A=confirmationMeetsCommitment(y.confirmationStatus,r),U=m||A,R="idle";return w?k?R="error":U?R="success":R="waiting":R="idle",{...y,isError:R==="error",isSuccess:R==="success",isWaiting:R==="waiting",waitError:k,waitStatus:R}}c(wt,"useWaitForSignature");function Rt(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,s=useCallback(async l=>{if(!r)throw new Error("Address required");return l.actions.fetchLookupTable(r,t.commitment)},[r,t.commitment]);return O("lookupTable",[n,t.commitment],s,{disabled:!r,swr:t.swr})}c(Rt,"useLookupTable");function Pt(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,s=useCallback(async l=>{if(!r)throw new Error("Address required");return l.actions.fetchNonceAccount(r,t.commitment)},[r,t.commitment]);return O("nonceAccount",[n,t.commitment],s,{disabled:!r,swr:t.swr})}c(Pt,"useNonceAccount");var ae=c(()=>new Map,"createCache"),bt=Object.freeze({dedupingInterval:2e3,focusThrottleInterval:5e3,provider:c(()=>ae(),"provider"),revalidateIfStale:true,revalidateOnFocus:true,revalidateOnReconnect:true});function oe({children:e,config:t,resetOnClusterChange:r=true,suspense:n}){let s=b(i=>i.cluster),l=useRef(new Map),o=r?`${s.endpoint}|${s.commitment}`:"global",a=useMemo(()=>{let i=l.current;if(!r){let p=i.get("global");if(p)return p;let u=ae();return i.set("global",u),u}let d=ae();return i.set(o,d),d},[o,r]),S=useMemo(()=>{let i={...bt,...t};return t?.provider||(i.provider=()=>a),i.suspense===void 0&&n!==void 0&&(i.suspense=n),i},[a,t,n]);return jsx(Y.Provider,{value:n,children:jsx(SWRConfig,{value:S,children:e})})}c(oe,"SolanaQueryProvider");function vt({children:e,client:t,config:r,query:n,walletPersistence:s}){let l=n!==false&&n?.disabled!==true,o=l&&n?n:{},a=s===false?void 0:s??{},S=a?a.storage??se():null,i=a?.storageKey??Re,d=a?It(S,i):{legacyConnectorId:null,state:null},p=r?resolveClientConfig(r):resolveClientConfig(),u=a?{...p,initialState:p.initialState??d.state??void 0}:p,y=l?jsx(oe,{config:o.config,resetOnClusterChange:o.resetOnClusterChange,suspense:o.suspense,children:e}):e;return jsxs(J,{client:t,config:u,children:[a?jsx(Bt,{autoConnect:a.autoConnect,initialState:u?.initialState??d.state,legacyConnectorId:d.legacyConnectorId,storage:S,storageKey:i}):null,y]})}c(vt,"SolanaProvider");var Re="solana:last-connector";function It(e,t){if(!e)return {legacyConnectorId:null,state:null};let r=Lt(()=>e.getItem(t));if(!r)return {legacyConnectorId:null,state:null};let n=deserializeSolanaState(r);return n?{legacyConnectorId:null,state:n}:{legacyConnectorId:r,state:null}}c(It,"readPersistedState");function Bt({autoConnect:e=true,initialState:t=null,legacyConnectorId:r=null,storage:n,storageKey:s=Re}){let l=L(),o=M(),a=h(),S=useRef(n??se()),[i,d]=useState(false),p=useRef(null),u=useRef(t),y=useRef(r);return useEffect(()=>{S.current=n??se();},[n]),useEffect(()=>{p.current!==a&&(p.current=a,d(false));},[a]),useEffect(()=>{let m=S.current;if(!m)return;let f=subscribeSolanaState(a,w=>{u.current=w,y.current=null,Et(()=>m.setItem(s,serializeSolanaState(w)));});return ()=>{f();}},[a,s]),useEffect(()=>{u.current=t??u.current,y.current=r;},[t,r]),useEffect(()=>{let m=u.current??t,w=(m?.autoconnect??false)||e;if(!w||i)return;if(l.status==="connected"||l.status==="connecting"){d(true);return}let g=m?.lastConnectorId??y.current;!(w&&g)||!g||!a.connectors.get(g)||(async()=>{try{await o(g,{autoConnect:!0,allowInteractiveFallback:!1});}catch{}finally{d(true);}})();},[e,a,o,i,t,l.status]),null}c(Bt,"WalletPersistence");function Lt(e){try{return e()}catch{return null}}c(Lt,"safelyRead");function Et(e){try{e();}catch{}}c(Et,"safelyWrite");function se(){if(typeof globalThis!="object"||globalThis===null)return null;let e=globalThis.localStorage;return e||null}c(se,"getDefaultStorage");function le(e={}){let t=L(),r=M(),n=re(),s=h(),[l,o]=useState(false);useEffect(()=>{o(true);},[]);let a=l?e.connectors??s.connectors.all:[],S=useCallback((p,u)=>r(p,u),[r]),i=useCallback(()=>n(),[n]);return useMemo(()=>{let p="connectorId"in t?t.connectorId:void 0,u=p?a.find(f=>f.id===p):void 0,y=t.status==="connected"?t.session:void 0,m=t.status==="error"?t.error??null:null;return {connect:S,connected:t.status==="connected",connecting:t.status==="connecting",connectors:a,connectorId:p,currentConnector:u,disconnect:i,error:m,status:t.status,wallet:y}},[S,a,i,t])}c(le,"useWalletConnection");function Mt({children:e,connectors:t}){let r=le({connectors:t});return jsx(Fragment,{children:e(r)})}c(Mt,"WalletConnectionManager");function Kt(e={}){let t=le(e),[r,n]=useState(e.initialOpen??false),[s,l]=useState(null),o=e.closeOnConnect??true,a=useCallback(()=>n(true),[]),S=useCallback(()=>n(false),[]),i=useCallback(()=>n(u=>!u),[]),d=useCallback(u=>l(u),[]),p=useCallback(async(u,y)=>{let m=await t.connect(u,y);return l(u),o&&n(false),m},[o,t]);return {...t,close:S,connect:p,isOpen:r,open:a,selectedConnector:s,select:d,toggle:i}}c(Kt,"useWalletModalState");export{G as SolanaClientContext,J as SolanaClientProvider,vt as SolanaProvider,oe as SolanaQueryProvider,Mt as WalletConnectionManager,X as getLatestBlockhashKey,$ as getProgramAccountsKey,j as getSignatureStatusKey,Z as getSimulateTransactionKey,ft as useAccount,gt as useBalance,b as useClientStore,ut as useClusterState,pt as useClusterStatus,M as useConnectWallet,re as useDisconnectWallet,te as useLatestBlockhash,Rt as useLookupTable,Pt as useNonceAccount,Xe as useProgramAccounts,Ct as useSendTransaction,ge as useSignatureStatus,$e as useSimulateTransaction,St as useSolTransfer,h as useSolanaClient,yt as useSplToken,mt as useStake,Tt as useTransactionPool,wt as useWaitForSignature,L as useWallet,dt as useWalletActions,le as useWalletConnection,Kt as useWalletModalState,E as useWalletSession,ht as useWrapSol};//# sourceMappingURL=index.browser.mjs.map
|
|
2
2
|
//# sourceMappingURL=index.browser.mjs.map
|
package/dist/index.native.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {createClient,toAddress,toAddressString,stableStringify,createSolTransferController,createStakeController,createSplTransferController,createTransactionPoolController,createInitialAsyncState,createAsyncState,normalizeSignature,SIGNATURE_STATUS_TIMEOUT_MS,deriveConfirmationStatus,confirmationMeetsCommitment,resolveClientConfig,deserializeSolanaState,subscribeSolanaState,serializeSolanaState}from'@solana/client';import {createContext,useMemo,useEffect,useContext,useCallback,useRef,useSyncExternalStore,useState}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import De,{SWRConfig}from'swr';import {useStore}from'zustand';import {getBase64EncodedWireTransaction}from'@solana/kit';var Pe=Object.defineProperty;var c=(e,t)=>Pe(e,"name",{value:t,configurable:true});var ne=createContext(null);function Ae(e){return resolveClientConfig(e??{})}c(Ae,"normalizeConfig");function K({children:e,client:t,config:r}){let n=useMemo(()=>Ae(r),[r]),i=useMemo(()=>t||createClient(n),[n,t]);return useEffect(()=>{if(!t)return ()=>{i.destroy();}},[i,t]),jsx(ne.Provider,{value:i,children:e})}c(K,"SolanaClientProvider");function T(){let e=useContext(ne);if(!e)throw new Error("useSolanaClient must be used within a SolanaClientProvider.");return e}c(T,"useSolanaClient");var N=createContext(void 0);function I(){return useContext(N)}c(I,"useQuerySuspensePreference");var Ie=c(e=>e,"identitySelector");function b(e){let t=T(),r=e??Ie,n=useStore(t.store,r);return n}c(b,"useClientStore");var Fe="@solana/react-hooks";function A(e,t,r,n={}){let i=T(),s=b(h=>h.cluster),{disabled:l=false,swr:a}=n,S=I(),p={...a??{},suspense:!l&&!!S},d=useMemo(()=>l?null:[Fe,e,s.endpoint,s.commitment,...t],[s.commitment,s.endpoint,t,e,l]),u=De(d,()=>r(i),p),[y,m]=useState(()=>u.data!==void 0?Date.now():void 0);useEffect(()=>{u.data!==void 0&&m(Date.now());},[u.data]);let f=u.error?"error":u.isLoading?"loading":u.data!==void 0?"success":"idle",P=useCallback(()=>u.mutate(void 0,{revalidate:true}),[u.mutate]);return {data:u.data,dataUpdatedAt:y,error:u.error??null,isError:f==="error",isLoading:u.isLoading,isSuccess:f==="success",isValidating:u.isValidating,mutate:u.mutate,refresh:P,status:f}}c(A,"useSolanaRpcQuery");function H(e={}){let{commitment:t=null,minContextSlot:r=null}=e;return ["latestBlockhash",t,He(r)]}c(H,"getLatestBlockhashKey");function z(e={}){let{programAddress:t,config:r}=e,n=t?toAddress(t):void 0,i=n?toAddressString(n):null,s=stableStringify(r??null);return ["programAccounts",i,s]}c(z,"getProgramAccountsKey");function q(e={}){let{transaction:t,config:r}=e,n=t?ze(t):null,i=stableStringify(r??null);return ["simulateTransaction",n,i]}c(q,"getSimulateTransactionKey");function _(e={}){let{config:t,signature:r}=e,n=r?.toString()??null,i=JSON.stringify(t??null);return ["signatureStatus",n,i]}c(_,"getSignatureStatusKey");function He(e){return e==null?null:typeof e=="bigint"?e:BigInt(Math.floor(e))}c(He,"normalizeBigint");function ze(e){return e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null}c(ze,"normalizeWire");var Ge=3e4;function G(e={}){let{commitment:t,minContextSlot:r,refreshInterval:n=Ge,disabled:i=false,swr:s}=e,l=useCallback(async S=>{let o=t??S.store.getState().cluster.commitment;return S.runtime.rpc.getLatestBlockhash({commitment:o,minContextSlot:Xe(r)}).send({abortSignal:AbortSignal.timeout(15e3)})},[t,r]),a=A("latestBlockhash",H(e),l,{disabled:i,swr:{refreshInterval:n,...s}});return {...a,blockhash:a.data?.value.blockhash??null,contextSlot:a.data?.context.slot,lastValidBlockHeight:a.data?.value.lastValidBlockHeight??null}}c(G,"useLatestBlockhash");function Je(e,t){let{commitment:r,config:n,swr:i,disabled:s}=t??{},l=useCallback(async o=>{let p=e?toAddress(e):void 0;if(!p)throw new Error("Provide a program address before querying program accounts.");let d=r??n?.commitment??o.store.getState().cluster.commitment,u={...n??{},commitment:d};return o.runtime.rpc.getProgramAccounts(p,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,e]),a=s??!e,S=A("programAccounts",z({programAddress:e,config:n}),l,{disabled:a,swr:i});return {...S,accounts:S.data??[]}}c(Je,"useProgramAccounts");function Ye(e,t){let{commitment:r,config:n,refreshInterval:i,disabled:s,swr:l}=t??{},a=useMemo(()=>e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null,[e]),S=useCallback(async d=>{if(!a)throw new Error("Provide a transaction payload before simulating.");let u={...n??{},commitment:r??n?.commitment??d.store.getState().cluster.commitment};return d.runtime.rpc.simulateTransaction(a,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,a]),o=s??!a,p=A("simulateTransaction",q({transaction:e,config:n}),S,{disabled:o,swr:{refreshInterval:i,revalidateIfStale:false,revalidateOnFocus:false,...l}});return {...p,logs:p.data?.value.logs??[]}}c(Ye,"useSimulateTransaction");function Xe(e){if(e!==void 0)return typeof e=="bigint"?e:BigInt(Math.floor(e))}c(Xe,"normalizeMinContextSlot");function ot(){return e=>e.cluster}c(ot,"createClusterSelector");function st(){return e=>e.cluster.status}c(st,"createClusterStatusSelector");function it(){return e=>e.wallet}c(it,"createWalletSelector");function ie(e){return t=>e?t.accounts[e]:void 0}c(ie,"createAccountSelector");function le(e){let r=!!I()&&e.enabled,n=useRef(null);if(useEffect(()=>{if(!r){n.current=null;return}n.current&&n.current.key!==e.key&&(n.current=null);},[e.key,r]),n.current&&n.current.key!==e.key&&(n.current=null),r&&e.key&&!e.ready){if(!n.current){let i=e.fetcher();n.current={key:e.key,promise:i.finally(()=>{n.current?.promise===i&&(n.current=null);})};}throw n.current.promise}}c(le,"useSuspenseFetcher");function lt(){let e=useMemo(ot,[]);return b(e)}c(lt,"useClusterState");function ct(){let e=useMemo(st,[]);return b(e)}c(ct,"useClusterStatus");function O(){let e=useMemo(it,[]);return b(e)}c(O,"useWallet");function L(){let e=O();if(e.status==="connected")return e.session}c(L,"useWalletSession");function ut(){return T().actions}c(ut,"useWalletActions");function E(){let e=T();return useCallback((t,r)=>e.actions.connectWallet(t,r),[e])}c(E,"useConnectWallet");function Y(){let e=T();return useCallback(()=>e.actions.disconnectWallet(),[e])}c(Y,"useDisconnectWallet");function dt(){let e=T(),t=L(),r=e.solTransfer,n=useRef(t);useEffect(()=>{n.current=t;},[t]);let i=useMemo(()=>createSolTransferController({authorityProvider:c(()=>n.current,"authorityProvider"),helper:r}),[r]),s=useSyncExternalStore(i.subscribe,i.getState,i.getState),l=useCallback((a,S)=>i.send(a,S),[i]);return {error:s.error??null,helper:r,isSending:s.status==="loading",reset:i.reset,send:l,signature:s.data??null,status:s.status}}c(dt,"useSolTransfer");function pt(e){let t=T(),r=L(),n=t.stake,i=useRef(r),s=useMemo(()=>String(e),[e]);useEffect(()=>{i.current=r;},[r]);let l=useMemo(()=>createStakeController({authorityProvider:c(()=>i.current,"authorityProvider"),helper:n}),[n]),a=useSyncExternalStore(l.subscribe,l.getState,l.getState),S=useSyncExternalStore(l.subscribeUnstake,l.getUnstakeState,l.getUnstakeState),o=useSyncExternalStore(l.subscribeWithdraw,l.getWithdrawState,l.getWithdrawState),p=useCallback((m,f)=>l.stake({...m,validatorId:s},f),[l,s]),d=useCallback((m,f)=>l.unstake({...m},f),[l]),u=useCallback((m,f)=>l.withdraw({...m},f),[l]),y=useCallback(async(m,f)=>{if(!n.getStakeAccounts)throw new Error("getStakeAccounts is not available. Make sure you have the latest version of @solana/client package.");let P=typeof m=="string"?m:String(m),h=f?typeof f=="string"?f:String(f):void 0;return n.getStakeAccounts(P,h)},[n]);return {error:a.error??null,getStakeAccounts:y,helper:n,isStaking:a.status==="loading",isUnstaking:S.status==="loading",isWithdrawing:o.status==="loading",reset:l.reset,resetUnstake:l.resetUnstake,resetWithdraw:l.resetWithdraw,stake:p,unstake:d,withdraw:u,signature:a.data??null,unstakeSignature:S.data??null,withdrawSignature:o.data??null,status:a.status,unstakeStatus:S.status,withdrawStatus:o.status,unstakeError:S.error??null,withdrawError:o.error??null,validatorId:s}}c(pt,"useStake");function St(e,t={}){let r=T(),n=L(),i=!!I(),s=useMemo(()=>String(e),[e]),l=useMemo(()=>({commitment:t.commitment,mint:s,...t.config??{}}),[s,t.commitment,t.config]),a=useMemo(()=>r.splToken(l),[r,l]),S=t.owner??n?.account.address,o=useMemo(()=>S?String(S):null,[S]),p=o?["spl-balance",s,o,t.commitment??null]:null,d=useCallback(()=>{if(!o)throw new Error("Unable to fetch SPL balance without an owner.");return a.fetchBalance(o,t.commitment)},[a,o,t.commitment]),u=useMemo(()=>({revalidateOnFocus:t.revalidateOnFocus??false,suspense:i,...t.swr??{}}),[t.revalidateOnFocus,t.swr,i]),{data:y,error:m,isLoading:f,isValidating:P,mutate:h}=De(p,d,u),x=useRef(n);useEffect(()=>{x.current=n;},[n]);let v=useRef(o);useEffect(()=>{v.current=o;},[o]);let U=useMemo(()=>createSplTransferController({authorityProvider:c(()=>x.current??void 0,"authorityProvider"),helper:a,sourceOwnerProvider:c(()=>v.current??void 0,"sourceOwnerProvider")}),[a]),R=useSyncExternalStore(U.subscribe,U.getState,U.getState),M=useCallback(()=>o?h(()=>a.fetchBalance(o,t.commitment),{revalidate:false}):Promise.resolve(void 0),[a,h,o,t.commitment]),ye=useCallback(async(Te,Ce)=>{let he=await U.send(Te,Ce);return o&&await h(()=>a.fetchBalance(o,t.commitment),{revalidate:false}),he},[U,a,h,t.commitment,o]),fe=useCallback(()=>{U.reset();},[U]),ge=o===null?"disconnected":m?"error":f&&!y?"loading":"ready";return {balance:y??null,error:m??null,helper:a,isFetching:!!o&&(f||P),isSending:R.status==="loading",owner:o,refresh:M,refreshing:!!o&&P,resetSend:fe,send:ye,sendError:R.error??null,sendSignature:R.data??null,sendStatus:R.status,status:ge}}c(St,"useSplToken");function mt(e,t={}){let r=T(),n=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),i=n.skip??!e,{address:s,addressError:l}=useMemo(()=>{if(i||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(p){return {address:void 0,addressError:p}}},[e,i]);useEffect(()=>{l&&console.warn("[useAccount] Invalid address provided:",l);},[l]);let a=useMemo(()=>s?.toString(),[s]),S=useMemo(()=>ie(a),[a]),o=b(S);return le({enabled:n.fetch!==false&&!i&&!!s,fetcher:c(()=>{if(!s)throw new Error("Provide an address before fetching account data.");return r.actions.fetchAccount(s,n.commitment)},"fetcher"),key:a??null,ready:o!==void 0}),useEffect(()=>{if(!s)return;let p=n.commitment;if(n.fetch!==false&&o===void 0&&r.actions.fetchAccount(s,p).catch(()=>{}),n.watch){let d=r.watchers.watchAccount({address:s,commitment:p},()=>{});return ()=>{d.abort();}}},[o,s,r,n.commitment,n.fetch,n.watch]),o}c(mt,"useAccount");function yt(e,t={}){let r=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),n=T(),i=r.skip??!e,{address:s,addressError:l}=useMemo(()=>{if(i||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(m){return {address:void 0,addressError:m}}},[e,i]);useEffect(()=>{l&&console.warn("[useBalance] Invalid address provided:",l);},[l]);let a=useMemo(()=>s?.toString(),[s]),S=useMemo(()=>ie(a),[a]),o=b(S);le({enabled:r.fetch!==false&&!i&&!!s,fetcher:c(()=>{if(!s)throw new Error("Provide an address before fetching balance.");return n.actions.fetchBalance(s,r.commitment)},"fetcher"),key:a??null,ready:o!==void 0}),useEffect(()=>{if(!s)return;let m=r.commitment;if(r.fetch!==false&&o===void 0&&n.actions.fetchBalance(s,m).catch(()=>{}),r.watch){let f=n.watchers.watchBalance({address:s,commitment:m},()=>{});return ()=>{f.abort();}}},[o,s,n,r.commitment,r.fetch,r.watch]);let p=o?.lamports??null,d=o?.fetching??false,u=o?.slot,y=l??o?.error;return useMemo(()=>({account:o,error:y,fetching:d,lamports:p,slot:u}),[o,y,d,p,u])}c(yt,"useBalance");function ft(e={}){let t=useMemo(()=>e.instructions??[],[e.instructions]),n=T().helpers.transaction,i=e.latestBlockhash?.swr?.refreshInterval,l=e.latestBlockhash?.refreshInterval??(typeof i=="number"?i:void 0)??3e4,a=useMemo(()=>createTransactionPoolController({blockhashMaxAgeMs:l,helper:n,initialInstructions:t}),[l,n,t]),S=G(e.latestBlockhash);useEffect(()=>{let y=S.data?.value;if(!y){a.setLatestBlockhashCache(void 0);return}let m={updatedAt:S.dataUpdatedAt??Date.now(),value:y};a.setLatestBlockhashCache(m);},[a,S.data,S.dataUpdatedAt]);let o=useSyncExternalStore(a.subscribeInstructions,a.getInstructions,a.getInstructions),p=useSyncExternalStore(a.subscribePrepared,a.getPrepared,a.getPrepared),d=useSyncExternalStore(a.subscribePrepareState,a.getPrepareState,a.getPrepareState),u=useSyncExternalStore(a.subscribeSendState,a.getSendState,a.getSendState);return {addInstruction:a.addInstruction,addInstructions:a.addInstructions,clearInstructions:a.clearInstructions,instructions:o,isPreparing:d.status==="loading",isSending:u.status==="loading",prepared:p,prepare:a.prepare,prepareError:d.error??null,prepareStatus:d.status,removeInstruction:a.removeInstruction,replaceInstructions:a.replaceInstructions,reset:a.reset,send:a.send,sendError:u.error??null,sendSignature:u.data??null,sendStatus:u.status,prepareAndSend:a.prepareAndSend,sign:a.sign,toWire:a.toWire,latestBlockhash:S}}c(ft,"useTransactionPool");function gt(){let t=T().transaction,r=L(),[n,i]=useState(()=>createInitialAsyncState()),s=useCallback(async p=>{i(createAsyncState("loading"));try{let d=await p();return i(createAsyncState("success",{data:d})),d}catch(d){throw i(createAsyncState("error",{error:d})),d}},[]),l=useCallback(p=>{if(p.authority)return p;if(!r)throw new Error("Connect a wallet or supply an `authority` before sending transactions.");return {...p,authority:r}},[r]),a=useCallback(async(p,d)=>{let u=l(p);return s(()=>t.prepareAndSend(u,d))},[l,s,t]),S=useCallback(async(p,d)=>s(()=>t.send(p,d)),[s,t]),o=useCallback(()=>{i(createInitialAsyncState());},[]);return {error:n.error??null,isSending:n.status==="loading",reset:o,send:a,sendPrepared:S,signature:n.data??null,status:n.status}}c(gt,"useSendTransaction");function ce(e,t={}){let{config:r,disabled:n,swr:i}=t,s=useMemo(()=>normalizeSignature(e),[e]),l=s?.toString()??null,a=useCallback(async d=>{if(!l)throw new Error("Provide a signature before querying its status.");if(!s)throw new Error("Provide a signature before querying its status.");return (await d.runtime.rpc.getSignatureStatuses([s],r).send({abortSignal:AbortSignal.timeout(SIGNATURE_STATUS_TIMEOUT_MS)})).value[0]??null},[r,s,l]),S=n??!l,o=A("signatureStatus",_({signature:e,config:r}),a,{disabled:S,swr:i}),p=deriveConfirmationStatus(o.data??null);return {...o,confirmationStatus:p,signatureStatus:o.data??null}}c(ce,"useSignatureStatus");function Tt(e,t={}){let{commitment:r="confirmed",disabled:n,subscribe:i=true,watchCommitment:s,...l}=t,{swr:a,...S}=l,o=s??r,p=T(),d=useMemo(()=>normalizeSignature(e),[e]),u=n??!d,y=ce(e,{...S,swr:{refreshInterval:2e3,...a},disabled:u}),[m,f]=useState(false);useEffect(()=>{if(d===void 0){f(false);return}f(false);},[d]),useEffect(()=>{if(!d||u||!i)return;let M=p.watchers.watchSignature({commitment:o,enableReceivedNotification:true,signature:d},()=>{f(true);});return ()=>{M.abort();}},[p,u,d,i,o]);let P=!!d&&!u,h=y.signatureStatus?.err??null,x=y.error??h??null,v=confirmationMeetsCommitment(y.confirmationStatus,r),U=m||v,R="idle";return P?x?R="error":U?R="success":R="waiting":R="idle",{...y,isError:R==="error",isSuccess:R==="success",isWaiting:R==="waiting",waitError:x,waitStatus:R}}c(Tt,"useWaitForSignature");function Ct(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,i=useCallback(async s=>{if(!r)throw new Error("Address required");return s.actions.fetchLookupTable(r,t.commitment)},[r,t.commitment]);return A("lookupTable",[n,t.commitment],i,{disabled:!r,swr:t.swr})}c(Ct,"useLookupTable");function ht(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,i=useCallback(async s=>{if(!r)throw new Error("Address required");return s.actions.fetchNonceAccount(r,t.commitment)},[r,t.commitment]);return A("nonceAccount",[n,t.commitment],i,{disabled:!r,swr:t.swr})}c(ht,"useNonceAccount");var X=c(()=>new Map,"createCache"),kt=Object.freeze({dedupingInterval:2e3,focusThrottleInterval:5e3,provider:c(()=>X(),"provider"),revalidateIfStale:true,revalidateOnFocus:true,revalidateOnReconnect:true});function $({children:e,config:t,resetOnClusterChange:r=true,suspense:n}){let i=b(o=>o.cluster),s=useRef(new Map),l=r?`${i.endpoint}|${i.commitment}`:"global",a=useMemo(()=>{let o=s.current;if(!r){let d=o.get("global");if(d)return d;let u=X();return o.set("global",u),u}let p=X();return o.set(l,p),p},[l,r]),S=useMemo(()=>{let o={...kt,...t};return t?.provider||(o.provider=()=>a),o.suspense===void 0&&n!==void 0&&(o.suspense=n),o},[a,t,n]);return jsx(N.Provider,{value:n,children:jsx(SWRConfig,{value:S,children:e})})}c($,"SolanaQueryProvider");function Wt({children:e,client:t,config:r,query:n,walletPersistence:i}){let s=n!==false&&n?.disabled!==true,l=s&&n?n:{},a=i===false?void 0:i??{},S=a?a.storage??Z():null,o=a?.storageKey??me,p=a?xt(S,o):{legacyConnectorId:null,state:null},d=r?resolveClientConfig(r):resolveClientConfig(),u=a?{...d,initialState:d.initialState??p.state??void 0}:d,y=s?jsx($,{config:l.config,resetOnClusterChange:l.resetOnClusterChange,suspense:l.suspense,children:e}):e;return jsxs(K,{client:t,config:u,children:[a?jsx(Ot,{autoConnect:a.autoConnect,initialState:u?.initialState??p.state,legacyConnectorId:p.legacyConnectorId,storage:S,storageKey:o}):null,y]})}c(Wt,"SolanaProvider");var me="solana:last-connector";function xt(e,t){if(!e)return {legacyConnectorId:null,state:null};let r=vt(()=>e.getItem(t));if(!r)return {legacyConnectorId:null,state:null};let n=deserializeSolanaState(r);return n?{legacyConnectorId:null,state:n}:{legacyConnectorId:r,state:null}}c(xt,"readPersistedState");function Ot({autoConnect:e=true,initialState:t=null,legacyConnectorId:r=null,storage:n,storageKey:i=me}){let s=O(),l=E(),a=T(),S=useRef(n??Z()),[o,p]=useState(false),d=useRef(null),u=useRef(t),y=useRef(r);return useEffect(()=>{S.current=n??Z();},[n]),useEffect(()=>{d.current!==a&&(d.current=a,p(false));},[a]),useEffect(()=>{let m=S.current;if(!m)return;let f=subscribeSolanaState(a,P=>{u.current=P,y.current=null,It(()=>m.setItem(i,serializeSolanaState(P)));});return ()=>{f();}},[a,i]),useEffect(()=>{u.current=t??u.current,y.current=r;},[t,r]),useEffect(()=>{let m=u.current??t,P=(m?.autoconnect??false)||e;if(!P||o)return;if(s.status==="connected"||s.status==="connecting"){p(true);return}let h=m?.lastConnectorId??y.current;!(P&&h)||!h||!a.connectors.get(h)||(async()=>{try{await l(h,{autoConnect:!0,allowInteractiveFallback:!1});}catch{}finally{p(true);}})();},[e,a,l,o,t,s.status]),null}c(Ot,"WalletPersistence");function vt(e){try{return e()}catch{return null}}c(vt,"safelyRead");function It(e){try{e();}catch{}}c(It,"safelyWrite");function Z(){if(typeof globalThis!="object"||globalThis===null)return null;let e=globalThis.localStorage;return e||null}c(Z,"getDefaultStorage");function ee(e={}){let t=O(),r=E(),n=Y(),i=T(),[s,l]=useState(false);useEffect(()=>{l(true);},[]);let a=s?e.connectors??i.connectors.all:[],S=useCallback((d,u)=>r(d,u),[r]),o=useCallback(()=>n(),[n]);return useMemo(()=>{let d="connectorId"in t?t.connectorId:void 0,u=d?a.find(f=>f.id===d):void 0,y=t.status==="connected"?t.session:void 0,m=t.status==="error"?t.error??null:null;return {connect:S,connected:t.status==="connected",connecting:t.status==="connecting",connectors:a,connectorId:d,currentConnector:u,disconnect:o,error:m,status:t.status,wallet:y}},[S,a,o,t])}c(ee,"useWalletConnection");function Qt({children:e,connectors:t}){let r=ee({connectors:t});return jsx(Fragment,{children:e(r)})}c(Qt,"WalletConnectionManager");function Dt(e={}){let t=ee(e),[r,n]=useState(e.initialOpen??false),[i,s]=useState(null),l=e.closeOnConnect??true,a=useCallback(()=>n(true),[]),S=useCallback(()=>n(false),[]),o=useCallback(()=>n(u=>!u),[]),p=useCallback(u=>s(u),[]),d=useCallback(async(u,y)=>{await t.connect(u,y),s(u),l&&n(false);},[l,t]);return {...t,close:S,connect:d,isOpen:r,open:a,selectedConnector:i,select:p,toggle:o}}c(Dt,"useWalletModalState");export{K as SolanaClientProvider,Wt as SolanaProvider,$ as SolanaQueryProvider,Qt as WalletConnectionManager,H as getLatestBlockhashKey,z as getProgramAccountsKey,_ as getSignatureStatusKey,q as getSimulateTransactionKey,mt as useAccount,yt as useBalance,b as useClientStore,lt as useClusterState,ct as useClusterStatus,E as useConnectWallet,Y as useDisconnectWallet,G as useLatestBlockhash,Ct as useLookupTable,ht as useNonceAccount,Je as useProgramAccounts,gt as useSendTransaction,ce as useSignatureStatus,Ye as useSimulateTransaction,dt as useSolTransfer,T as useSolanaClient,St as useSplToken,pt as useStake,ft as useTransactionPool,Tt as useWaitForSignature,O as useWallet,ut as useWalletActions,ee as useWalletConnection,Dt as useWalletModalState,L as useWalletSession};//# sourceMappingURL=index.native.mjs.map
|
|
1
|
+
import {createClient,toAddress,toAddressString,stableStringify,createSolTransferController,createStakeController,createSplTransferController,createTransactionPoolController,createInitialAsyncState,createAsyncState,createWsolController,normalizeSignature,SIGNATURE_STATUS_TIMEOUT_MS,deriveConfirmationStatus,confirmationMeetsCommitment,resolveClientConfig,deserializeSolanaState,subscribeSolanaState,serializeSolanaState}from'@solana/client';import {createContext,useMemo,useEffect,useContext,useCallback,useRef,useSyncExternalStore,useState}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import me,{SWRConfig}from'swr';import {useStore}from'zustand';import {getBase64EncodedWireTransaction}from'@solana/kit';var Pe=Object.defineProperty;var c=(e,t)=>Pe(e,"name",{value:t,configurable:true});var G=createContext(null);function Oe(e){return resolveClientConfig(e??{})}c(Oe,"normalizeConfig");function J({children:e,client:t,config:r}){let n=useMemo(()=>Oe(r),[r]),s=useMemo(()=>t||createClient(n),[n,t]);return useEffect(()=>{if(!t)return ()=>{s.destroy();}},[s,t]),jsx(G.Provider,{value:s,children:e})}c(J,"SolanaClientProvider");function h(){let e=useContext(G);if(!e)throw new Error("useSolanaClient must be used within a SolanaClientProvider.");return e}c(h,"useSolanaClient");var Y=createContext(void 0);function B(){return useContext(Y)}c(B,"useQuerySuspensePreference");var Le=c(e=>e,"identitySelector");function b(e){let t=h(),r=e??Le,n=useStore(t.store,r);return n}c(b,"useClientStore");var Ke="@solana/react-hooks";function O(e,t,r,n={}){let s=h(),l=b(g=>g.cluster),{disabled:o=false,swr:a}=n,S=B(),d={...a??{},suspense:!o&&!!S},p=useMemo(()=>o?null:[Ke,e,l.endpoint,l.commitment,...t],[l.commitment,l.endpoint,t,e,o]),u=me(p,()=>r(s),d),[y,m]=useState(()=>u.data!==void 0?Date.now():void 0);useEffect(()=>{u.data!==void 0&&m(Date.now());},[u.data]);let f=u.error?"error":u.isLoading?"loading":u.data!==void 0?"success":"idle",w=useCallback(()=>u.mutate(void 0,{revalidate:true}),[u.mutate]);return {data:u.data,dataUpdatedAt:y,error:u.error??null,isError:f==="error",isLoading:u.isLoading,isSuccess:f==="success",isValidating:u.isValidating,mutate:u.mutate,refresh:w,status:f}}c(O,"useSolanaRpcQuery");function X(e={}){let{commitment:t=null,minContextSlot:r=null}=e;return ["latestBlockhash",t,qe(r)]}c(X,"getLatestBlockhashKey");function $(e={}){let{programAddress:t,config:r}=e,n=t?toAddress(t):void 0,s=n?toAddressString(n):null,l=stableStringify(r??null);return ["programAccounts",s,l]}c($,"getProgramAccountsKey");function Z(e={}){let{transaction:t,config:r}=e,n=t?_e(t):null,s=stableStringify(r??null);return ["simulateTransaction",n,s]}c(Z,"getSimulateTransactionKey");function j(e={}){let{config:t,signature:r}=e,n=r?.toString()??null,s=JSON.stringify(t??null);return ["signatureStatus",n,s]}c(j,"getSignatureStatusKey");function qe(e){return e==null?null:typeof e=="bigint"?e:BigInt(Math.floor(e))}c(qe,"normalizeBigint");function _e(e){return e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null}c(_e,"normalizeWire");var Ye=3e4;function te(e={}){let{commitment:t,minContextSlot:r,refreshInterval:n=Ye,disabled:s=false,swr:l}=e,o=useCallback(async S=>{let i=t??S.store.getState().cluster.commitment;return S.runtime.rpc.getLatestBlockhash({commitment:i,minContextSlot:Ze(r)}).send({abortSignal:AbortSignal.timeout(15e3)})},[t,r]),a=O("latestBlockhash",X(e),o,{disabled:s,swr:{refreshInterval:n,...l}});return {...a,blockhash:a.data?.value.blockhash??null,contextSlot:a.data?.context.slot,lastValidBlockHeight:a.data?.value.lastValidBlockHeight??null}}c(te,"useLatestBlockhash");function Xe(e,t){let{commitment:r,config:n,swr:s,disabled:l}=t??{},o=useCallback(async i=>{let d=e?toAddress(e):void 0;if(!d)throw new Error("Provide a program address before querying program accounts.");let p=r??n?.commitment??i.store.getState().cluster.commitment,u={...n??{},commitment:p};return i.runtime.rpc.getProgramAccounts(d,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,e]),a=l??!e,S=O("programAccounts",$({programAddress:e,config:n}),o,{disabled:a,swr:s});return {...S,accounts:S.data??[]}}c(Xe,"useProgramAccounts");function $e(e,t){let{commitment:r,config:n,refreshInterval:s,disabled:l,swr:o}=t??{},a=useMemo(()=>e?typeof e=="string"?e:getBase64EncodedWireTransaction(e):null,[e]),S=useCallback(async p=>{if(!a)throw new Error("Provide a transaction payload before simulating.");let u={...n??{},commitment:r??n?.commitment??p.store.getState().cluster.commitment};return p.runtime.rpc.simulateTransaction(a,u).send({abortSignal:AbortSignal.timeout(2e4)})},[r,n,a]),i=l??!a,d=O("simulateTransaction",Z({transaction:e,config:n}),S,{disabled:i,swr:{refreshInterval:s,revalidateIfStale:false,revalidateOnFocus:false,...o}});return {...d,logs:d.data?.value.logs??[]}}c($e,"useSimulateTransaction");function Ze(e){if(e!==void 0)return typeof e=="bigint"?e:BigInt(Math.floor(e))}c(Ze,"normalizeMinContextSlot");function it(){return e=>e.cluster}c(it,"createClusterSelector");function lt(){return e=>e.cluster.status}c(lt,"createClusterStatusSelector");function ct(){return e=>e.wallet}c(ct,"createWalletSelector");function ye(e){return t=>e?t.accounts[e]:void 0}c(ye,"createAccountSelector");function fe(e){let r=!!B()&&e.enabled,n=useRef(null);if(useEffect(()=>{if(!r){n.current=null;return}n.current&&n.current.key!==e.key&&(n.current=null);},[e.key,r]),n.current&&n.current.key!==e.key&&(n.current=null),r&&e.key&&!e.ready){if(!n.current){let s=e.fetcher();n.current={key:e.key,promise:s.finally(()=>{n.current?.promise===s&&(n.current=null);})};}throw n.current.promise}}c(fe,"useSuspenseFetcher");function ut(){let e=useMemo(it,[]);return b(e)}c(ut,"useClusterState");function pt(){let e=useMemo(lt,[]);return b(e)}c(pt,"useClusterStatus");function L(){let e=useMemo(ct,[]);return b(e)}c(L,"useWallet");function E(){let e=L();if(e.status==="connected")return e.session}c(E,"useWalletSession");function dt(){return h().actions}c(dt,"useWalletActions");function M(){let e=h();return useCallback((t,r)=>e.actions.connectWallet(t,r),[e])}c(M,"useConnectWallet");function re(){let e=h();return useCallback(()=>e.actions.disconnectWallet(),[e])}c(re,"useDisconnectWallet");function St(){let e=h(),t=E(),r=e.solTransfer,n=useRef(t);useEffect(()=>{n.current=t;},[t]);let s=useMemo(()=>createSolTransferController({authorityProvider:c(()=>n.current,"authorityProvider"),helper:r}),[r]),l=useSyncExternalStore(s.subscribe,s.getState,s.getState),o=useCallback((a,S)=>s.send(a,S),[s]);return {error:l.error??null,helper:r,isSending:l.status==="loading",reset:s.reset,send:o,signature:l.data??null,status:l.status}}c(St,"useSolTransfer");function mt(e){let t=h(),r=E(),n=t.stake,s=useRef(r),l=useMemo(()=>String(e),[e]);useEffect(()=>{s.current=r;},[r]);let o=useMemo(()=>createStakeController({authorityProvider:c(()=>s.current,"authorityProvider"),helper:n}),[n]),a=useSyncExternalStore(o.subscribe,o.getState,o.getState),S=useSyncExternalStore(o.subscribeUnstake,o.getUnstakeState,o.getUnstakeState),i=useSyncExternalStore(o.subscribeWithdraw,o.getWithdrawState,o.getWithdrawState),d=useCallback((m,f)=>o.stake({...m,validatorId:l},f),[o,l]),p=useCallback((m,f)=>o.unstake({...m},f),[o]),u=useCallback((m,f)=>o.withdraw({...m},f),[o]),y=useCallback(async(m,f)=>{if(!n.getStakeAccounts)throw new Error("getStakeAccounts is not available. Make sure you have the latest version of @solana/client package.");let w=typeof m=="string"?m:String(m),g=f?typeof f=="string"?f:String(f):void 0;return n.getStakeAccounts(w,g)},[n]);return {error:a.error??null,getStakeAccounts:y,helper:n,isStaking:a.status==="loading",isUnstaking:S.status==="loading",isWithdrawing:i.status==="loading",reset:o.reset,resetUnstake:o.resetUnstake,resetWithdraw:o.resetWithdraw,stake:d,unstake:p,withdraw:u,signature:a.data??null,unstakeSignature:S.data??null,withdrawSignature:i.data??null,status:a.status,unstakeStatus:S.status,withdrawStatus:i.status,unstakeError:S.error??null,withdrawError:i.error??null,validatorId:l}}c(mt,"useStake");function yt(e,t={}){let r=h(),n=E(),s=!!B(),l=useMemo(()=>String(e),[e]),o=useMemo(()=>({commitment:t.commitment,mint:l,...t.config??{}}),[l,t.commitment,t.config]),a=useMemo(()=>r.splToken(o),[r,o]),S=t.owner??n?.account.address,i=useMemo(()=>S?String(S):null,[S]),d=i?["spl-balance",l,i,t.commitment??null]:null,p=useCallback(()=>{if(!i)throw new Error("Unable to fetch SPL balance without an owner.");return a.fetchBalance(i,t.commitment)},[a,i,t.commitment]),u=useMemo(()=>({revalidateOnFocus:t.revalidateOnFocus??false,suspense:s,...t.swr??{}}),[t.revalidateOnFocus,t.swr,s]),{data:y,error:m,isLoading:f,isValidating:w,mutate:g}=me(d,p,u),k=useRef(n);useEffect(()=>{k.current=n;},[n]);let A=useRef(i);useEffect(()=>{A.current=i;},[i]);let U=useMemo(()=>createSplTransferController({authorityProvider:c(()=>k.current??void 0,"authorityProvider"),helper:a,sourceOwnerProvider:c(()=>A.current??void 0,"sourceOwnerProvider")}),[a]),R=useSyncExternalStore(U.subscribe,U.getState,U.getState),Q=useCallback(()=>i?g(()=>a.fetchBalance(i,t.commitment),{revalidate:false}):Promise.resolve(void 0),[a,g,i,t.commitment]),z=useCallback(async(x,D)=>{let F=await U.send(x,D);return i&&await g(()=>a.fetchBalance(i,t.commitment),{revalidate:false}),F},[U,a,g,t.commitment,i]),q=useCallback(()=>{U.reset();},[U]),_=i===null?"disconnected":m?"error":f&&!y?"loading":"ready";return {balance:y??null,error:m??null,helper:a,isFetching:!!i&&(f||w),isSending:R.status==="loading",owner:i,refresh:Q,refreshing:!!i&&w,resetSend:q,send:z,sendError:R.error??null,sendSignature:R.data??null,sendStatus:R.status,status:_}}c(yt,"useSplToken");function ft(e,t={}){let r=h(),n=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),s=n.skip??!e,{address:l,addressError:o}=useMemo(()=>{if(s||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(d){return {address:void 0,addressError:d}}},[e,s]);useEffect(()=>{o&&console.warn("[useAccount] Invalid address provided:",o);},[o]);let a=useMemo(()=>l?.toString(),[l]),S=useMemo(()=>ye(a),[a]),i=b(S);return fe({enabled:n.fetch!==false&&!s&&!!l,fetcher:c(()=>{if(!l)throw new Error("Provide an address before fetching account data.");return r.actions.fetchAccount(l,n.commitment)},"fetcher"),key:a??null,ready:i!==void 0}),useEffect(()=>{if(!l)return;let d=n.commitment;if(n.fetch!==false&&i===void 0&&r.actions.fetchAccount(l,d).catch(()=>{}),n.watch){let p=r.watchers.watchAccount({address:l,commitment:d},()=>{});return ()=>{p.abort();}}},[i,l,r,n.commitment,n.fetch,n.watch]),i}c(ft,"useAccount");function gt(e,t={}){let r=useMemo(()=>({commitment:t.commitment,fetch:t.fetch??true,skip:t.skip,watch:t.watch??true}),[t.commitment,t.fetch,t.skip,t.watch]),n=h(),s=r.skip??!e,{address:l,addressError:o}=useMemo(()=>{if(s||!e)return {address:void 0,addressError:void 0};try{return {address:toAddress(e),addressError:void 0}}catch(m){return {address:void 0,addressError:m}}},[e,s]);useEffect(()=>{o&&console.warn("[useBalance] Invalid address provided:",o);},[o]);let a=useMemo(()=>l?.toString(),[l]),S=useMemo(()=>ye(a),[a]),i=b(S);fe({enabled:r.fetch!==false&&!s&&!!l,fetcher:c(()=>{if(!l)throw new Error("Provide an address before fetching balance.");return n.actions.fetchBalance(l,r.commitment)},"fetcher"),key:a??null,ready:i!==void 0}),useEffect(()=>{if(!l)return;let m=r.commitment;if(r.fetch!==false&&i===void 0&&n.actions.fetchBalance(l,m).catch(()=>{}),r.watch){let f=n.watchers.watchBalance({address:l,commitment:m},()=>{});return ()=>{f.abort();}}},[i,l,n,r.commitment,r.fetch,r.watch]);let d=i?.lamports??null,p=i?.fetching??false,u=i?.slot,y=o??i?.error;return useMemo(()=>({account:i,error:y,fetching:p,lamports:d,slot:u}),[i,y,p,d,u])}c(gt,"useBalance");function Tt(e={}){let t=useMemo(()=>e.instructions??[],[e.instructions]),n=h().helpers.transaction,s=e.latestBlockhash?.swr?.refreshInterval,o=e.latestBlockhash?.refreshInterval??(typeof s=="number"?s:void 0)??3e4,a=useMemo(()=>createTransactionPoolController({blockhashMaxAgeMs:o,helper:n,initialInstructions:t}),[o,n,t]),S=te(e.latestBlockhash);useEffect(()=>{let y=S.data?.value;if(!y){a.setLatestBlockhashCache(void 0);return}let m={updatedAt:S.dataUpdatedAt??Date.now(),value:y};a.setLatestBlockhashCache(m);},[a,S.data,S.dataUpdatedAt]);let i=useSyncExternalStore(a.subscribeInstructions,a.getInstructions,a.getInstructions),d=useSyncExternalStore(a.subscribePrepared,a.getPrepared,a.getPrepared),p=useSyncExternalStore(a.subscribePrepareState,a.getPrepareState,a.getPrepareState),u=useSyncExternalStore(a.subscribeSendState,a.getSendState,a.getSendState);return {addInstruction:a.addInstruction,addInstructions:a.addInstructions,clearInstructions:a.clearInstructions,instructions:i,isPreparing:p.status==="loading",isSending:u.status==="loading",prepared:d,prepare:a.prepare,prepareError:p.error??null,prepareStatus:p.status,removeInstruction:a.removeInstruction,replaceInstructions:a.replaceInstructions,reset:a.reset,send:a.send,sendError:u.error??null,sendSignature:u.data??null,sendStatus:u.status,prepareAndSend:a.prepareAndSend,sign:a.sign,toWire:a.toWire,latestBlockhash:S}}c(Tt,"useTransactionPool");function Ct(){let t=h().transaction,r=E(),[n,s]=useState(()=>createInitialAsyncState()),l=useCallback(async d=>{s(createAsyncState("loading"));try{let p=await d();return s(createAsyncState("success",{data:p})),p}catch(p){throw s(createAsyncState("error",{error:p})),p}},[]),o=useCallback(d=>{if(d.authority)return d;if(!r)throw new Error("Connect a wallet or supply an `authority` before sending transactions.");return {...d,authority:r}},[r]),a=useCallback(async(d,p)=>{let u=o(d);return l(()=>t.prepareAndSend(u,p))},[o,l,t]),S=useCallback(async(d,p)=>l(()=>t.send(d,p)),[l,t]),i=useCallback(()=>{s(createInitialAsyncState());},[]);return {error:n.error??null,isSending:n.status==="loading",reset:i,send:a,sendPrepared:S,signature:n.data??null,status:n.status}}c(Ct,"useSendTransaction");function ht(e={}){let t=h(),r=E(),n=!!B(),s=t.wsol,l=e.owner??r?.account.address,o=useMemo(()=>l?String(l):null,[l]),a=o?["wsol-balance",o,e.commitment??null]:null,S=useCallback(()=>{if(!o)throw new Error("Unable to fetch wSOL balance without an owner.");return s.fetchWsolBalance(o,e.commitment)},[s,o,e.commitment]),i=useMemo(()=>({revalidateOnFocus:e.revalidateOnFocus??false,suspense:n,...e.swr??{}}),[e.revalidateOnFocus,e.swr,n]),{data:d,error:p,isLoading:u,isValidating:y,mutate:m}=me(a,S,i),f=useRef(r);useEffect(()=>{f.current=r;},[r]);let w=useRef(o);useEffect(()=>{w.current=o;},[o]);let g=useMemo(()=>createWsolController({authorityProvider:c(()=>f.current??void 0,"authorityProvider"),helper:s}),[s]),k=useSyncExternalStore(g.subscribeWrap,g.getWrapState,g.getWrapState),A=useSyncExternalStore(g.subscribeUnwrap,g.getUnwrapState,g.getUnwrapState),U=useCallback(()=>o?m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}):Promise.resolve(void 0),[s,m,o,e.commitment]),R=useCallback(async(x,D)=>{let F=w.current?{...x,owner:w.current}:x,V=await g.wrap(F,D);return o&&await m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}),V},[g,s,m,e.commitment,o]),Q=useCallback(async(x,D)=>{let F=w.current?{...x,owner:w.current}:x,V=await g.unwrap(F,D);return o&&await m(()=>s.fetchWsolBalance(o,e.commitment),{revalidate:false}),V},[g,s,m,e.commitment,o]),z=useCallback(()=>{g.resetWrap();},[g]),q=useCallback(()=>{g.resetUnwrap();},[g]),_=o===null?"disconnected":p?"error":u&&!d?"loading":"ready";return {balance:d??null,error:p??null,helper:s,isFetching:!!o&&(u||y),isUnwrapping:A.status==="loading",isWrapping:k.status==="loading",owner:o,refresh:U,refreshing:!!o&&y,resetUnwrap:q,resetWrap:z,unwrap:Q,unwrapError:A.error??null,unwrapSignature:A.data??null,unwrapStatus:A.status,wrap:R,wrapError:k.error??null,wrapSignature:k.data??null,wrapStatus:k.status,status:_}}c(ht,"useWrapSol");function ge(e,t={}){let{config:r,disabled:n,swr:s}=t,l=useMemo(()=>normalizeSignature(e),[e]),o=l?.toString()??null,a=useCallback(async p=>{if(!o)throw new Error("Provide a signature before querying its status.");if(!l)throw new Error("Provide a signature before querying its status.");return (await p.runtime.rpc.getSignatureStatuses([l],r).send({abortSignal:AbortSignal.timeout(SIGNATURE_STATUS_TIMEOUT_MS)})).value[0]??null},[r,l,o]),S=n??!o,i=O("signatureStatus",j({signature:e,config:r}),a,{disabled:S,swr:s}),d=deriveConfirmationStatus(i.data??null);return {...i,confirmationStatus:d,signatureStatus:i.data??null}}c(ge,"useSignatureStatus");function wt(e,t={}){let{commitment:r="confirmed",disabled:n,subscribe:s=true,watchCommitment:l,...o}=t,{swr:a,...S}=o,i=l??r,d=h(),p=useMemo(()=>normalizeSignature(e),[e]),u=n??!p,y=ge(e,{...S,swr:{refreshInterval:2e3,...a},disabled:u}),[m,f]=useState(false);useEffect(()=>{if(p===void 0){f(false);return}f(false);},[p]),useEffect(()=>{if(!p||u||!s)return;let Q=d.watchers.watchSignature({commitment:i,enableReceivedNotification:true,signature:p},()=>{f(true);});return ()=>{Q.abort();}},[d,u,p,s,i]);let w=!!p&&!u,g=y.signatureStatus?.err??null,k=y.error??g??null,A=confirmationMeetsCommitment(y.confirmationStatus,r),U=m||A,R="idle";return w?k?R="error":U?R="success":R="waiting":R="idle",{...y,isError:R==="error",isSuccess:R==="success",isWaiting:R==="waiting",waitError:k,waitStatus:R}}c(wt,"useWaitForSignature");function Rt(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,s=useCallback(async l=>{if(!r)throw new Error("Address required");return l.actions.fetchLookupTable(r,t.commitment)},[r,t.commitment]);return O("lookupTable",[n,t.commitment],s,{disabled:!r,swr:t.swr})}c(Rt,"useLookupTable");function Pt(e,t={}){let r=useMemo(()=>e?toAddress(e):void 0,[e]),n=r?.toString()??null,s=useCallback(async l=>{if(!r)throw new Error("Address required");return l.actions.fetchNonceAccount(r,t.commitment)},[r,t.commitment]);return O("nonceAccount",[n,t.commitment],s,{disabled:!r,swr:t.swr})}c(Pt,"useNonceAccount");var ae=c(()=>new Map,"createCache"),bt=Object.freeze({dedupingInterval:2e3,focusThrottleInterval:5e3,provider:c(()=>ae(),"provider"),revalidateIfStale:true,revalidateOnFocus:true,revalidateOnReconnect:true});function oe({children:e,config:t,resetOnClusterChange:r=true,suspense:n}){let s=b(i=>i.cluster),l=useRef(new Map),o=r?`${s.endpoint}|${s.commitment}`:"global",a=useMemo(()=>{let i=l.current;if(!r){let p=i.get("global");if(p)return p;let u=ae();return i.set("global",u),u}let d=ae();return i.set(o,d),d},[o,r]),S=useMemo(()=>{let i={...bt,...t};return t?.provider||(i.provider=()=>a),i.suspense===void 0&&n!==void 0&&(i.suspense=n),i},[a,t,n]);return jsx(Y.Provider,{value:n,children:jsx(SWRConfig,{value:S,children:e})})}c(oe,"SolanaQueryProvider");function vt({children:e,client:t,config:r,query:n,walletPersistence:s}){let l=n!==false&&n?.disabled!==true,o=l&&n?n:{},a=s===false?void 0:s??{},S=a?a.storage??se():null,i=a?.storageKey??Re,d=a?It(S,i):{legacyConnectorId:null,state:null},p=r?resolveClientConfig(r):resolveClientConfig(),u=a?{...p,initialState:p.initialState??d.state??void 0}:p,y=l?jsx(oe,{config:o.config,resetOnClusterChange:o.resetOnClusterChange,suspense:o.suspense,children:e}):e;return jsxs(J,{client:t,config:u,children:[a?jsx(Bt,{autoConnect:a.autoConnect,initialState:u?.initialState??d.state,legacyConnectorId:d.legacyConnectorId,storage:S,storageKey:i}):null,y]})}c(vt,"SolanaProvider");var Re="solana:last-connector";function It(e,t){if(!e)return {legacyConnectorId:null,state:null};let r=Lt(()=>e.getItem(t));if(!r)return {legacyConnectorId:null,state:null};let n=deserializeSolanaState(r);return n?{legacyConnectorId:null,state:n}:{legacyConnectorId:r,state:null}}c(It,"readPersistedState");function Bt({autoConnect:e=true,initialState:t=null,legacyConnectorId:r=null,storage:n,storageKey:s=Re}){let l=L(),o=M(),a=h(),S=useRef(n??se()),[i,d]=useState(false),p=useRef(null),u=useRef(t),y=useRef(r);return useEffect(()=>{S.current=n??se();},[n]),useEffect(()=>{p.current!==a&&(p.current=a,d(false));},[a]),useEffect(()=>{let m=S.current;if(!m)return;let f=subscribeSolanaState(a,w=>{u.current=w,y.current=null,Et(()=>m.setItem(s,serializeSolanaState(w)));});return ()=>{f();}},[a,s]),useEffect(()=>{u.current=t??u.current,y.current=r;},[t,r]),useEffect(()=>{let m=u.current??t,w=(m?.autoconnect??false)||e;if(!w||i)return;if(l.status==="connected"||l.status==="connecting"){d(true);return}let g=m?.lastConnectorId??y.current;!(w&&g)||!g||!a.connectors.get(g)||(async()=>{try{await o(g,{autoConnect:!0,allowInteractiveFallback:!1});}catch{}finally{d(true);}})();},[e,a,o,i,t,l.status]),null}c(Bt,"WalletPersistence");function Lt(e){try{return e()}catch{return null}}c(Lt,"safelyRead");function Et(e){try{e();}catch{}}c(Et,"safelyWrite");function se(){if(typeof globalThis!="object"||globalThis===null)return null;let e=globalThis.localStorage;return e||null}c(se,"getDefaultStorage");function le(e={}){let t=L(),r=M(),n=re(),s=h(),[l,o]=useState(false);useEffect(()=>{o(true);},[]);let a=l?e.connectors??s.connectors.all:[],S=useCallback((p,u)=>r(p,u),[r]),i=useCallback(()=>n(),[n]);return useMemo(()=>{let p="connectorId"in t?t.connectorId:void 0,u=p?a.find(f=>f.id===p):void 0,y=t.status==="connected"?t.session:void 0,m=t.status==="error"?t.error??null:null;return {connect:S,connected:t.status==="connected",connecting:t.status==="connecting",connectors:a,connectorId:p,currentConnector:u,disconnect:i,error:m,status:t.status,wallet:y}},[S,a,i,t])}c(le,"useWalletConnection");function Mt({children:e,connectors:t}){let r=le({connectors:t});return jsx(Fragment,{children:e(r)})}c(Mt,"WalletConnectionManager");function Kt(e={}){let t=le(e),[r,n]=useState(e.initialOpen??false),[s,l]=useState(null),o=e.closeOnConnect??true,a=useCallback(()=>n(true),[]),S=useCallback(()=>n(false),[]),i=useCallback(()=>n(u=>!u),[]),d=useCallback(u=>l(u),[]),p=useCallback(async(u,y)=>{let m=await t.connect(u,y);return l(u),o&&n(false),m},[o,t]);return {...t,close:S,connect:p,isOpen:r,open:a,selectedConnector:s,select:d,toggle:i}}c(Kt,"useWalletModalState");export{G as SolanaClientContext,J as SolanaClientProvider,vt as SolanaProvider,oe as SolanaQueryProvider,Mt as WalletConnectionManager,X as getLatestBlockhashKey,$ as getProgramAccountsKey,j as getSignatureStatusKey,Z as getSimulateTransactionKey,ft as useAccount,gt as useBalance,b as useClientStore,ut as useClusterState,pt as useClusterStatus,M as useConnectWallet,re as useDisconnectWallet,te as useLatestBlockhash,Rt as useLookupTable,Pt as useNonceAccount,Xe as useProgramAccounts,Ct as useSendTransaction,ge as useSignatureStatus,$e as useSimulateTransaction,St as useSolTransfer,h as useSolanaClient,yt as useSplToken,mt as useStake,Tt as useTransactionPool,wt as useWaitForSignature,L as useWallet,dt as useWalletActions,le as useWalletConnection,Kt as useWalletModalState,E as useWalletSession,ht as useWrapSol};//# sourceMappingURL=index.native.mjs.map
|
|
2
2
|
//# sourceMappingURL=index.native.mjs.map
|
package/dist/index.node.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { createClient, toAddress, toAddressString, stableStringify, createSolTransferController, createStakeController, createSplTransferController, createTransactionPoolController, createInitialAsyncState, createAsyncState, normalizeSignature, SIGNATURE_STATUS_TIMEOUT_MS, deriveConfirmationStatus, confirmationMeetsCommitment, resolveClientConfig, deserializeSolanaState, subscribeSolanaState, serializeSolanaState } from '@solana/client';
|
|
1
|
+
import { createClient, toAddress, toAddressString, stableStringify, createSolTransferController, createStakeController, createSplTransferController, createTransactionPoolController, createInitialAsyncState, createAsyncState, createWsolController, normalizeSignature, SIGNATURE_STATUS_TIMEOUT_MS, deriveConfirmationStatus, confirmationMeetsCommitment, resolveClientConfig, deserializeSolanaState, subscribeSolanaState, serializeSolanaState } from '@solana/client';
|
|
2
2
|
import { createContext, useMemo, useEffect, useContext, useCallback, useRef, useSyncExternalStore, useState } from 'react';
|
|
3
3
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
|
-
import
|
|
4
|
+
import useSWR2, { SWRConfig } from 'swr';
|
|
5
5
|
import { useStore } from 'zustand';
|
|
6
6
|
import { getBase64EncodedWireTransaction } from '@solana/kit';
|
|
7
7
|
|
|
@@ -71,7 +71,7 @@ function useSolanaRpcQuery(scope, args, fetcher, options = {}) {
|
|
|
71
71
|
}
|
|
72
72
|
return [QUERY_NAMESPACE, scope, cluster.endpoint, cluster.commitment, ...args];
|
|
73
73
|
}, [cluster.commitment, cluster.endpoint, args, scope, disabled]);
|
|
74
|
-
const swrResponse =
|
|
74
|
+
const swrResponse = useSWR2(key, () => fetcher(client), swrOptions);
|
|
75
75
|
const [dataUpdatedAt, setDataUpdatedAt] = useState(
|
|
76
76
|
() => swrResponse.data !== void 0 ? Date.now() : void 0
|
|
77
77
|
);
|
|
@@ -501,7 +501,7 @@ function useSplToken(mint, options = {}) {
|
|
|
501
501
|
}),
|
|
502
502
|
[options.revalidateOnFocus, options.swr, suspense]
|
|
503
503
|
);
|
|
504
|
-
const { data, error, isLoading, isValidating, mutate } =
|
|
504
|
+
const { data, error, isLoading, isValidating, mutate } = useSWR2(
|
|
505
505
|
balanceKey,
|
|
506
506
|
fetchBalance,
|
|
507
507
|
swrOptions
|
|
@@ -832,6 +832,113 @@ function useSendTransaction() {
|
|
|
832
832
|
};
|
|
833
833
|
}
|
|
834
834
|
__name(useSendTransaction, "useSendTransaction");
|
|
835
|
+
function useWrapSol(options = {}) {
|
|
836
|
+
const client = useSolanaClient();
|
|
837
|
+
const session = useWalletSession();
|
|
838
|
+
const suspense = Boolean(useQuerySuspensePreference());
|
|
839
|
+
const helper = client.wsol;
|
|
840
|
+
const ownerRaw = options.owner ?? session?.account.address;
|
|
841
|
+
const owner = useMemo(() => ownerRaw ? String(ownerRaw) : null, [ownerRaw]);
|
|
842
|
+
const balanceKey = owner ? ["wsol-balance", owner, options.commitment ?? null] : null;
|
|
843
|
+
const fetchBalance = useCallback(() => {
|
|
844
|
+
if (!owner) {
|
|
845
|
+
throw new Error("Unable to fetch wSOL balance without an owner.");
|
|
846
|
+
}
|
|
847
|
+
return helper.fetchWsolBalance(owner, options.commitment);
|
|
848
|
+
}, [helper, owner, options.commitment]);
|
|
849
|
+
const swrOptions = useMemo(
|
|
850
|
+
() => ({
|
|
851
|
+
revalidateOnFocus: options.revalidateOnFocus ?? false,
|
|
852
|
+
suspense,
|
|
853
|
+
...options.swr ?? {}
|
|
854
|
+
}),
|
|
855
|
+
[options.revalidateOnFocus, options.swr, suspense]
|
|
856
|
+
);
|
|
857
|
+
const { data, error, isLoading, isValidating, mutate } = useSWR2(balanceKey, fetchBalance, swrOptions);
|
|
858
|
+
const sessionRef = useRef(session);
|
|
859
|
+
useEffect(() => {
|
|
860
|
+
sessionRef.current = session;
|
|
861
|
+
}, [session]);
|
|
862
|
+
const ownerRef = useRef(owner);
|
|
863
|
+
useEffect(() => {
|
|
864
|
+
ownerRef.current = owner;
|
|
865
|
+
}, [owner]);
|
|
866
|
+
const controller = useMemo(
|
|
867
|
+
() => createWsolController({
|
|
868
|
+
authorityProvider: /* @__PURE__ */ __name(() => sessionRef.current ?? void 0, "authorityProvider"),
|
|
869
|
+
helper
|
|
870
|
+
}),
|
|
871
|
+
[helper]
|
|
872
|
+
);
|
|
873
|
+
const wrapState = useSyncExternalStore(
|
|
874
|
+
controller.subscribeWrap,
|
|
875
|
+
controller.getWrapState,
|
|
876
|
+
controller.getWrapState
|
|
877
|
+
);
|
|
878
|
+
const unwrapState = useSyncExternalStore(
|
|
879
|
+
controller.subscribeUnwrap,
|
|
880
|
+
controller.getUnwrapState,
|
|
881
|
+
controller.getUnwrapState
|
|
882
|
+
);
|
|
883
|
+
const refresh = useCallback(() => {
|
|
884
|
+
if (!owner) {
|
|
885
|
+
return Promise.resolve(void 0);
|
|
886
|
+
}
|
|
887
|
+
return mutate(() => helper.fetchWsolBalance(owner, options.commitment), { revalidate: false });
|
|
888
|
+
}, [helper, mutate, owner, options.commitment]);
|
|
889
|
+
const wrap = useCallback(
|
|
890
|
+
async (config, sendOptions) => {
|
|
891
|
+
const fullConfig = ownerRef.current ? { ...config, owner: ownerRef.current } : config;
|
|
892
|
+
const signature = await controller.wrap(fullConfig, sendOptions);
|
|
893
|
+
if (owner) {
|
|
894
|
+
await mutate(() => helper.fetchWsolBalance(owner, options.commitment), { revalidate: false });
|
|
895
|
+
}
|
|
896
|
+
return signature;
|
|
897
|
+
},
|
|
898
|
+
[controller, helper, mutate, options.commitment, owner]
|
|
899
|
+
);
|
|
900
|
+
const unwrap = useCallback(
|
|
901
|
+
async (config, sendOptions) => {
|
|
902
|
+
const fullConfig = ownerRef.current ? { ...config, owner: ownerRef.current } : config;
|
|
903
|
+
const signature = await controller.unwrap(fullConfig, sendOptions);
|
|
904
|
+
if (owner) {
|
|
905
|
+
await mutate(() => helper.fetchWsolBalance(owner, options.commitment), { revalidate: false });
|
|
906
|
+
}
|
|
907
|
+
return signature;
|
|
908
|
+
},
|
|
909
|
+
[controller, helper, mutate, options.commitment, owner]
|
|
910
|
+
);
|
|
911
|
+
const resetWrap = useCallback(() => {
|
|
912
|
+
controller.resetWrap();
|
|
913
|
+
}, [controller]);
|
|
914
|
+
const resetUnwrap = useCallback(() => {
|
|
915
|
+
controller.resetUnwrap();
|
|
916
|
+
}, [controller]);
|
|
917
|
+
const status = owner === null ? "disconnected" : error ? "error" : isLoading && !data ? "loading" : "ready";
|
|
918
|
+
return {
|
|
919
|
+
balance: data ?? null,
|
|
920
|
+
error: error ?? null,
|
|
921
|
+
helper,
|
|
922
|
+
isFetching: Boolean(owner) && (isLoading || isValidating),
|
|
923
|
+
isUnwrapping: unwrapState.status === "loading",
|
|
924
|
+
isWrapping: wrapState.status === "loading",
|
|
925
|
+
owner,
|
|
926
|
+
refresh,
|
|
927
|
+
refreshing: Boolean(owner) && isValidating,
|
|
928
|
+
resetUnwrap,
|
|
929
|
+
resetWrap,
|
|
930
|
+
unwrap,
|
|
931
|
+
unwrapError: unwrapState.error ?? null,
|
|
932
|
+
unwrapSignature: unwrapState.data ?? null,
|
|
933
|
+
unwrapStatus: unwrapState.status,
|
|
934
|
+
wrap,
|
|
935
|
+
wrapError: wrapState.error ?? null,
|
|
936
|
+
wrapSignature: wrapState.data ?? null,
|
|
937
|
+
wrapStatus: wrapState.status,
|
|
938
|
+
status
|
|
939
|
+
};
|
|
940
|
+
}
|
|
941
|
+
__name(useWrapSol, "useWrapSol");
|
|
835
942
|
function useSignatureStatus(signatureInput, options = {}) {
|
|
836
943
|
const { config, disabled: disabledOption, swr } = options;
|
|
837
944
|
const signature = useMemo(() => normalizeSignature(signatureInput), [signatureInput]);
|
|
@@ -1216,11 +1323,12 @@ function useWalletModalState(options = {}) {
|
|
|
1216
1323
|
const select = useCallback((connectorId) => setSelectedConnector(connectorId), []);
|
|
1217
1324
|
const connect = useCallback(
|
|
1218
1325
|
async (connectorId, connectOptions) => {
|
|
1219
|
-
await connection.connect(connectorId, connectOptions);
|
|
1326
|
+
const session = await connection.connect(connectorId, connectOptions);
|
|
1220
1327
|
setSelectedConnector(connectorId);
|
|
1221
1328
|
if (closeOnConnect) {
|
|
1222
1329
|
setIsOpen(false);
|
|
1223
1330
|
}
|
|
1331
|
+
return session;
|
|
1224
1332
|
},
|
|
1225
1333
|
[closeOnConnect, connection]
|
|
1226
1334
|
);
|
|
@@ -1237,6 +1345,6 @@ function useWalletModalState(options = {}) {
|
|
|
1237
1345
|
}
|
|
1238
1346
|
__name(useWalletModalState, "useWalletModalState");
|
|
1239
1347
|
|
|
1240
|
-
export { SolanaClientProvider, SolanaProvider, SolanaQueryProvider, WalletConnectionManager, getLatestBlockhashKey, getProgramAccountsKey, getSignatureStatusKey, getSimulateTransactionKey, useAccount, useBalance, useClientStore, useClusterState, useClusterStatus, useConnectWallet, useDisconnectWallet, useLatestBlockhash, useLookupTable, useNonceAccount, useProgramAccounts, useSendTransaction, useSignatureStatus, useSimulateTransaction, useSolTransfer, useSolanaClient, useSplToken, useStake, useTransactionPool, useWaitForSignature, useWallet, useWalletActions, useWalletConnection, useWalletModalState, useWalletSession };
|
|
1348
|
+
export { SolanaClientContext, SolanaClientProvider, SolanaProvider, SolanaQueryProvider, WalletConnectionManager, getLatestBlockhashKey, getProgramAccountsKey, getSignatureStatusKey, getSimulateTransactionKey, useAccount, useBalance, useClientStore, useClusterState, useClusterStatus, useConnectWallet, useDisconnectWallet, useLatestBlockhash, useLookupTable, useNonceAccount, useProgramAccounts, useSendTransaction, useSignatureStatus, useSimulateTransaction, useSolTransfer, useSolanaClient, useSplToken, useStake, useTransactionPool, useWaitForSignature, useWallet, useWalletActions, useWalletConnection, useWalletModalState, useWalletSession, useWrapSol };
|
|
1241
1349
|
//# sourceMappingURL=index.node.mjs.map
|
|
1242
1350
|
//# sourceMappingURL=index.node.mjs.map
|
package/dist/types/context.d.ts
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
import { type CreateDefaultClientOptions, type SolanaClient, type SolanaClientConfig } from '@solana/client';
|
|
2
2
|
import type { ReactNode } from 'react';
|
|
3
|
+
export declare const SolanaClientContext: import("react").Context<Readonly<{
|
|
4
|
+
actions: import("@solana/client").ClientActions;
|
|
5
|
+
config: SolanaClientConfig;
|
|
6
|
+
connectors: import("@solana/client").WalletRegistry;
|
|
7
|
+
destroy(): void;
|
|
8
|
+
runtime: Readonly<import("@solana/client").SolanaClientRuntime>;
|
|
9
|
+
store: import("@solana/client").ClientStore;
|
|
10
|
+
watchers: import("@solana/client").ClientWatchers;
|
|
11
|
+
helpers: import("@solana/client").ClientHelpers;
|
|
12
|
+
solTransfer: import("@solana/client").SolTransferHelper;
|
|
13
|
+
SolTransfer: import("@solana/client").SolTransferHelper;
|
|
14
|
+
splToken(config: import("@solana/client").SplTokenHelperConfig): import("@solana/client").SplTokenHelper;
|
|
15
|
+
SplToken(config: import("@solana/client").SplTokenHelperConfig): import("@solana/client").SplTokenHelper;
|
|
16
|
+
SplHelper(config: import("@solana/client").SplTokenHelperConfig): import("@solana/client").SplTokenHelper;
|
|
17
|
+
stake: import("@solana/client").StakeHelper;
|
|
18
|
+
transaction: import("@solana/client").TransactionHelper;
|
|
19
|
+
wsol: import("@solana/client").WsolHelper;
|
|
20
|
+
prepareTransaction: import("@solana/client").ClientHelpers["prepareTransaction"];
|
|
21
|
+
}> | null>;
|
|
3
22
|
type ProviderProps = Readonly<{
|
|
4
23
|
children: ReactNode;
|
|
5
24
|
client?: SolanaClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,0BAA0B,EAG/B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,0BAA0B,EAG/B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;UAA2C,CAAC;AAE5E,KAAK,aAAa,GAAG,QAAQ,CAAC;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,kBAAkB,GAAG,0BAA0B,CAAC;CACzD,CAAC,CAAC;AAMH;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,aAAa,2CAmB/F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAM9C;AAED,MAAM,MAAM,yBAAyB,GAAG,aAAa,CAAC;AACtD,MAAM,MAAM,yBAAyB,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC"}
|
package/dist/types/hooks.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AccountCacheEntry, type AddressLike, type AddressLookupTableData, type AsyncState, type ClientState, type ConfirmationCommitment, type NonceAccountData, type SignatureLike, type SolanaClient, type SolTransferHelper, type SolTransferInput, type SolTransferSendOptions, type SplTokenBalance, type SplTokenHelper, type SplTokenHelperConfig, type SplTransferInput, type StakeAccount, type StakeHelper, type StakeInput, type StakeSendOptions, type TransactionHelper, type TransactionInstructionInput, type TransactionInstructionList, type TransactionPoolPrepareAndSendOptions, type TransactionPoolPrepareOptions, type TransactionPoolSendOptions, type TransactionPoolSignOptions, type TransactionPrepareAndSendRequest, type TransactionPrepared, type TransactionSendOptions, type UnstakeInput, type UnstakeSendOptions, type WalletSession, type WalletStatus, type WithdrawInput, type WithdrawSendOptions } from '@solana/client';
|
|
1
|
+
import { type AccountCacheEntry, type AddressLike, type AddressLookupTableData, type AsyncState, type ClientState, type ConfirmationCommitment, type NonceAccountData, type SignatureLike, type SolanaClient, type SolTransferHelper, type SolTransferInput, type SolTransferSendOptions, type SplTokenBalance, type SplTokenHelper, type SplTokenHelperConfig, type SplTransferInput, type StakeAccount, type StakeHelper, type StakeInput, type StakeSendOptions, type TransactionHelper, type TransactionInstructionInput, type TransactionInstructionList, type TransactionPoolPrepareAndSendOptions, type TransactionPoolPrepareOptions, type TransactionPoolSendOptions, type TransactionPoolSignOptions, type TransactionPrepareAndSendRequest, type TransactionPrepared, type TransactionSendOptions, type UnstakeInput, type UnstakeSendOptions, type WalletSession, type WalletStatus, type WithdrawInput, type WithdrawSendOptions, type WsolBalance, type WsolHelper, type WsolUnwrapInput, type WsolWrapInput } from '@solana/client';
|
|
2
2
|
import type { Commitment, Lamports, Signature } from '@solana/kit';
|
|
3
3
|
import { type BareFetcher, type SWRConfiguration } from 'swr';
|
|
4
4
|
import { type SolanaQueryResult, type UseSolanaRpcQueryOptions } from './query';
|
|
@@ -95,7 +95,7 @@ export declare function useWalletActions(): Readonly<{
|
|
|
95
95
|
export declare function useConnectWallet(): (connectorId: string, options?: Readonly<{
|
|
96
96
|
autoConnect?: boolean;
|
|
97
97
|
allowInteractiveFallback?: boolean;
|
|
98
|
-
}>) => Promise<
|
|
98
|
+
}>) => Promise<WalletSession>;
|
|
99
99
|
/**
|
|
100
100
|
* Stable disconnect helper mapping to {@link ClientActions.disconnectWallet}.
|
|
101
101
|
*
|
|
@@ -280,6 +280,48 @@ type UseSendTransactionResult = Readonly<{
|
|
|
280
280
|
* ```
|
|
281
281
|
*/
|
|
282
282
|
export declare function useSendTransaction(): UseSendTransactionResult;
|
|
283
|
+
type WsolWrapSignature = Awaited<ReturnType<WsolHelper['sendWrap']>>;
|
|
284
|
+
type WsolUnwrapSignature = Awaited<ReturnType<WsolHelper['sendUnwrap']>>;
|
|
285
|
+
type UseWrapSolOptions = Readonly<{
|
|
286
|
+
commitment?: Commitment;
|
|
287
|
+
owner?: AddressLike;
|
|
288
|
+
revalidateOnFocus?: boolean;
|
|
289
|
+
swr?: Omit<SWRConfiguration<WsolBalance, unknown, BareFetcher<WsolBalance>>, 'fallback' | 'suspense'>;
|
|
290
|
+
}>;
|
|
291
|
+
/**
|
|
292
|
+
* Convenience hook for wrapping and unwrapping SOL to/from wSOL.
|
|
293
|
+
*
|
|
294
|
+
* @example
|
|
295
|
+
* ```ts
|
|
296
|
+
* const { balance, wrap, unwrap, isWrapping, isUnwrapping } = useWrapSol();
|
|
297
|
+
* // Wrap 1 SOL to wSOL
|
|
298
|
+
* await wrap({ amount: 1_000_000_000n });
|
|
299
|
+
* // Unwrap all wSOL back to SOL
|
|
300
|
+
* await unwrap({});
|
|
301
|
+
* ```
|
|
302
|
+
*/
|
|
303
|
+
export declare function useWrapSol(options?: UseWrapSolOptions): Readonly<{
|
|
304
|
+
balance: WsolBalance | null;
|
|
305
|
+
error: unknown;
|
|
306
|
+
helper: WsolHelper;
|
|
307
|
+
isFetching: boolean;
|
|
308
|
+
isUnwrapping: boolean;
|
|
309
|
+
isWrapping: boolean;
|
|
310
|
+
owner: string | null;
|
|
311
|
+
refresh(): Promise<WsolBalance | undefined>;
|
|
312
|
+
refreshing: boolean;
|
|
313
|
+
resetUnwrap(): void;
|
|
314
|
+
resetWrap(): void;
|
|
315
|
+
unwrap(config: Omit<WsolUnwrapInput, 'owner'>, options?: SolTransferSendOptions): Promise<WsolUnwrapSignature>;
|
|
316
|
+
unwrapError: unknown;
|
|
317
|
+
unwrapSignature: WsolUnwrapSignature | null;
|
|
318
|
+
unwrapStatus: AsyncState<WsolUnwrapSignature>['status'];
|
|
319
|
+
wrap(config: Omit<WsolWrapInput, 'owner'>, options?: SolTransferSendOptions): Promise<WsolWrapSignature>;
|
|
320
|
+
wrapError: unknown;
|
|
321
|
+
wrapSignature: WsolWrapSignature | null;
|
|
322
|
+
wrapStatus: AsyncState<WsolWrapSignature>['status'];
|
|
323
|
+
status: 'disconnected' | 'error' | 'loading' | 'ready';
|
|
324
|
+
}>;
|
|
283
325
|
export type UseSignatureStatusOptions = Readonly<{
|
|
284
326
|
config?: SignatureStatusConfig;
|
|
285
327
|
disabled?: boolean;
|
|
@@ -403,5 +445,9 @@ export type UseNonceAccountParameters = Readonly<{
|
|
|
403
445
|
options?: UseNonceAccountOptions;
|
|
404
446
|
}>;
|
|
405
447
|
export type UseNonceAccountReturnType = ReturnType<typeof useNonceAccount>;
|
|
448
|
+
export type UseWrapSolParameters = Readonly<{
|
|
449
|
+
options?: UseWrapSolOptions;
|
|
450
|
+
}>;
|
|
451
|
+
export type UseWrapSolReturnType = ReturnType<typeof useWrapSol>;
|
|
406
452
|
export {};
|
|
407
453
|
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAU3B,KAAK,gBAAgB,EAGrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAE/B,KAAK,oCAAoC,EACzC,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EACrC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAE3B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEnE,OAAe,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,KAAK,CAAC;AAGtE,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,wBAAwB,EAAqB,MAAM,SAAS,CAAC;AACnG,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,4BAA4B,EAAsB,MAAM,cAAc,CAAC;AAKxH,KAAK,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;AAC3C,KAAK,aAAa,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AACtD,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE3D,KAAK,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;AAElD,KAAK,qBAAqB,GAAG,UAAU,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC;AAE7E,KAAK,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEpF,KAAK,oBAAoB,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,KAAK,qBAAqB,GAAG,UAAU,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhF,KAAK,iBAAiB,GAAG,QAAQ,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC,CAAC;AAEH,KAAK,iBAAiB,GAAG,QAAQ,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC,GACD,iBAAiB,CAAC;AAiEnB;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAG9C;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAGhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,IAAI,YAAY,CAGxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,SAAS,CAM5D;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB;;;;;;;;;;;GAG/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,IAAI,CACnC,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,QAAQ,CAAC;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,KAC7E,OAAO,CAAC,IAAI,CAAC,CAOjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAGzD;AAED,KAAK,oBAAoB,GAAG,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AAEzF;;;;;;;;;GASG;AACH,wBAAgB,cAAc,IAAI,QAAQ,CAAC;IAC1C,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChG,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACvC,MAAM,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC;CACnD,CAAC,CAuCD;AAED,KAAK,cAAc,GAAG,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAC1E,KAAK,gBAAgB,GAAG,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAC9E,KAAK,iBAAiB,GAAG,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AAEhF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC5D,KAAK,EAAE,OAAO,CAAC;IACf,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,iBAAiB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAChG,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,IAAI,IAAI,CAAC;IACd,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,IAAI,CAAC;IACtB,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACpG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5G,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChH,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IACjC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC5C,MAAM,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7C,aAAa,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC;IACtD,cAAc,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxD,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC,CAiGD;AAED,KAAK,qBAAqB,GAAG,eAAe,CAAC;AAC7C,KAAK,oBAAoB,GAAG,aAAa,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AACtF,KAAK,kBAAkB,GAAG,QAAQ,CAAC;IAClC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,YAAY,GAAG,MAAM,CAAC,CAAC;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,GAAG,CAAC,EAAE,IAAI,CACT,gBAAgB,CAAC,qBAAqB,EAAE,OAAO,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC,EACpF,UAAU,GAAG,UAAU,CACvB,CAAC;CACF,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAC1B,IAAI,EAAE,WAAW,EACjB,OAAO,GAAE,kBAAuB,GAC9B,QAAQ,CAAC;IACX,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,IAAI,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAC;IACtD,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,IAAI,IAAI,CAAC;IAClB,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChG,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC3C,UAAU,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;CACvD,CAAC,CAgHD;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,OAAO,GAAE,iBAAsB,GAAG,iBAAiB,GAAG,SAAS,CA+DpH;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACzB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,iBAAsB,GAC7B,QAAQ,CAAC;IACX,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAChC,CAAC,CA6ED;AAED,KAAK,wBAAwB,GAAG,QAAQ,CAAC;IACxC,YAAY,CAAC,EAAE,0BAA0B,CAAC;IAC1C,eAAe,CAAC,EAAE,4BAA4B,CAAC;CAC/C,CAAC,CAAC;AAEH,KAAK,gCAAgC,GAAG,6BAA6B,CAAC;AAEtE,KAAK,6BAA6B,GAAG,0BAA0B,CAAC;AAEhE,KAAK,6BAA6B,GAAG,0BAA0B,CAAC;AAEhE,KAAK,uCAAuC,GAAG,oCAAoC,CAAC;AAEpF,KAAK,oBAAoB,GAAG,SAAS,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,GAAE,wBAA6B,GAAG,QAAQ,CAAC;IACnF,cAAc,CAAC,WAAW,EAAE,2BAA2B,GAAG,IAAI,CAAC;IAC/D,eAAe,CAAC,cAAc,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAClE,iBAAiB,IAAI,IAAI,CAAC;IAC1B,YAAY,EAAE,0BAA0B,CAAC;IACzC,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,OAAO,CAAC,EAAE,gCAAgC,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClF,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,mBAAmB,CAAC,cAAc,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACtE,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,CAAC,OAAO,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC7E,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC3C,UAAU,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvD,cAAc,CACb,OAAO,CAAC,EAAE,uCAAuC,EACjD,WAAW,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACjC,IAAI,CAAC,OAAO,CAAC,EAAE,6BAA6B,GAAG,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IACrF,MAAM,CAAC,OAAO,CAAC,EAAE,6BAA6B,GAAG,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzF,eAAe,EAAE,4BAA4B,CAAC;CAC9C,CAAC,CAgFD;AAED,KAAK,wBAAwB,GAAG,SAAS,CAAC;AAE1C,KAAK,wBAAwB,GAAG,QAAQ,CAAC;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,CACH,OAAO,EAAE,gCAAgC,EACzC,OAAO,CAAC,EAAE,sBAAsB,GAC9B,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACrC,YAAY,CAAC,QAAQ,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACjH,SAAS,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC3C,MAAM,EAAE,UAAU,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,CAAC;CACvD,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,wBAAwB,CA+D7D;AAED,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC;IAChD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,wBAAwB,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;CACnE,CAAC,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,yBAAyB,GACnE,QAAQ,CAAC;IACR,SAAS,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC,CAAC;AAEJ,KAAK,oBAAoB,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,IAAI,CAAC,GACzE,QAAQ,CAAC;IACR,kBAAkB,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAClD,eAAe,EAAE,oBAAoB,GAAG,IAAI,CAAC;CAC7C,CAAC,CAAC;AAEJ;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CACjC,cAAc,CAAC,EAAE,aAAa,EAC9B,OAAO,GAAE,yBAA8B,GACrC,oBAAoB,CAkCtB;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAE3E,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAAC,yBAAyB,EAAE,UAAU,CAAC,GACnF,QAAQ,CAAC;IACR,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,sBAAsB,CAAC;CACzC,CAAC,CAAC;AAEJ,KAAK,qBAAqB,GAAG,oBAAoB,GAChD,QAAQ,CAAC;IACR,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,mBAAmB,CAAC;CAChC,CAAC,CAAC;AAEJ;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAClC,cAAc,CAAC,EAAE,aAAa,EAC9B,OAAO,GAAE,0BAA+B,GACtC,qBAAqB,CA2EvB;AAED,KAAK,qBAAqB,GAAG,QAAQ,CAAC;IACrC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,GAAG,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;CAC/G,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC7B,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,qBAA0B,GACjC,iBAAiB,CAAC,sBAAsB,CAAC,CAc3C;AAED,KAAK,sBAAsB,GAAG,QAAQ,CAAC;IACtC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,GAAG,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;CACnG,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC9B,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,sBAA2B,GAClC,iBAAiB,CAAC,gBAAgB,CAAC,CAcrC;AAGD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAAE,OAAO,CAAC,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,iBAAiB,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAEjE,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAAE,OAAO,CAAC,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,iBAAiB,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAEjE,MAAM,MAAM,yBAAyB,GAAG,SAAS,CAAC;AAClD,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAE3E,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACnD,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7E,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACnD,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7E,MAAM,MAAM,6BAA6B,GAAG,SAAS,CAAC;AACtD,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEnF,MAAM,MAAM,4BAA4B,GAAG,SAAS,CAAC;AACrD,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEjF,MAAM,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAEhE,MAAM,MAAM,6BAA6B,GAAG,QAAQ,CAAC;IACpD,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,SAAS,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAElE,MAAM,MAAM,wBAAwB,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AACzE,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC,CAAC;AAClG,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAEnE,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CAAC;IAAE,MAAM,CAAC,EAAE,wBAAwB,CAAA;CAAE,CAAC,CAAC;AAC3F,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEjF,MAAM,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAC5C,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAE/D,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACnD,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7E,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACnD,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7E,MAAM,MAAM,wBAAwB,GAAG,QAAQ,CAAC;IAAE,OAAO,CAAC,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,qBAAqB,CAAA;CAAE,CAAC,CAAC;AAC5G,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAEzE,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC;IAAE,OAAO,CAAC,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAA;CAAE,CAAC,CAAC;AAC9G,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export type { StakeAccount } from '@solana/client';
|
|
2
2
|
export type { SolanaClientProviderProps, UseSolanaClientParameters, UseSolanaClientReturnType, } from './context';
|
|
3
|
-
export { SolanaClientProvider, useSolanaClient } from './context';
|
|
4
|
-
export type { SignatureWaitStatus, UseAccountParameters, UseAccountReturnType, UseBalanceParameters, UseBalanceReturnType, UseClusterStateParameters, UseClusterStateReturnType, UseClusterStatusParameters, UseClusterStatusReturnType, UseConnectWalletParameters, UseConnectWalletReturnType, UseDisconnectWalletParameters, UseDisconnectWalletReturnType, UseLookupTableParameters, UseLookupTableReturnType, UseNonceAccountParameters, UseNonceAccountReturnType, UseSendTransactionParameters, UseSendTransactionReturnType, UseSignatureStatusOptions, UseSignatureStatusParameters, UseSignatureStatusReturnType, UseSolTransferParameters, UseSolTransferReturnType, UseSplTokenParameters, UseSplTokenReturnType, UseTransactionPoolParameters, UseTransactionPoolReturnType, UseWaitForSignatureOptions, UseWaitForSignatureParameters, UseWaitForSignatureReturnType, UseWalletActionsParameters, UseWalletActionsReturnType, UseWalletParameters, UseWalletReturnType, UseWalletSessionParameters, UseWalletSessionReturnType, } from './hooks';
|
|
5
|
-
export { useAccount, useBalance, useClusterState, useClusterStatus, useConnectWallet, useDisconnectWallet, useLookupTable, useNonceAccount, useSendTransaction, useSignatureStatus, useSolTransfer, useSplToken, useStake, useTransactionPool, useWaitForSignature, useWallet, useWalletActions, useWalletSession, } from './hooks';
|
|
3
|
+
export { SolanaClientContext, SolanaClientProvider, useSolanaClient } from './context';
|
|
4
|
+
export type { SignatureWaitStatus, UseAccountParameters, UseAccountReturnType, UseBalanceParameters, UseBalanceReturnType, UseClusterStateParameters, UseClusterStateReturnType, UseClusterStatusParameters, UseClusterStatusReturnType, UseConnectWalletParameters, UseConnectWalletReturnType, UseDisconnectWalletParameters, UseDisconnectWalletReturnType, UseLookupTableParameters, UseLookupTableReturnType, UseNonceAccountParameters, UseNonceAccountReturnType, UseSendTransactionParameters, UseSendTransactionReturnType, UseSignatureStatusOptions, UseSignatureStatusParameters, UseSignatureStatusReturnType, UseSolTransferParameters, UseSolTransferReturnType, UseSplTokenParameters, UseSplTokenReturnType, UseTransactionPoolParameters, UseTransactionPoolReturnType, UseWaitForSignatureOptions, UseWaitForSignatureParameters, UseWaitForSignatureReturnType, UseWalletActionsParameters, UseWalletActionsReturnType, UseWalletParameters, UseWalletReturnType, UseWalletSessionParameters, UseWalletSessionReturnType, UseWrapSolParameters, UseWrapSolReturnType, } from './hooks';
|
|
5
|
+
export { useAccount, useBalance, useClusterState, useClusterStatus, useConnectWallet, useDisconnectWallet, useLookupTable, useNonceAccount, useSendTransaction, useSignatureStatus, useSolTransfer, useSplToken, useStake, useTransactionPool, useWaitForSignature, useWallet, useWalletActions, useWalletSession, useWrapSol, } from './hooks';
|
|
6
6
|
export { SolanaQueryProvider } from './QueryProvider';
|
|
7
7
|
export type { QueryStatus, SolanaQueryResult, UseSolanaRpcQueryOptions } from './query';
|
|
8
8
|
export type { UseLatestBlockhashParameters, UseLatestBlockhashReturnType, UseProgramAccountsParameters, UseProgramAccountsReturnType, UseSimulateTransactionParameters, UseSimulateTransactionReturnType, } from './queryHooks';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EACX,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,GACzB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EACX,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,GACzB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACvF,YAAY,EACX,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,6BAA6B,EAC7B,6BAA6B,EAC7B,0BAA0B,EAC1B,0BAA0B,EAC1B,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,SAAS,CAAC;AACjB,OAAO,EACN,UAAU,EACV,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACxF,YAAY,EACX,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,EAChC,gCAAgC,GAChC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC9F,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACN,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACX,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,gBAAgB,GAChB,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,MAAM,CAAC;AACzF,YAAY,EACX,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/types/ui.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ type WalletConnectionState = Readonly<{
|
|
|
4
4
|
connect(connectorId: string, options?: Readonly<{
|
|
5
5
|
autoConnect?: boolean;
|
|
6
6
|
allowInteractiveFallback?: boolean;
|
|
7
|
-
}>): Promise<
|
|
7
|
+
}>): Promise<WalletSession>;
|
|
8
8
|
connected: boolean;
|
|
9
9
|
connecting: boolean;
|
|
10
10
|
connectors: readonly WalletConnector[];
|
package/dist/types/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/ui.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,KAAK,qBAAqB,GAAG,QAAQ,CAAC;IACrC,OAAO,CACN,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,QAAQ,CAAC;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAC/E,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/ui.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvC,KAAK,qBAAqB,GAAG,QAAQ,CAAC;IACrC,OAAO,CACN,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,QAAQ,CAAC;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,wBAAwB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAC/E,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;IACvC,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC;CAClC,CAAC,CAAC;AAEH,KAAK,uBAAuB,GAAG,QAAQ,CAAC;IACvC,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACxC,CAAC,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,uBAAuB,CAAC;AACpE,MAAM,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,uBAA4B,GAAG,qBAAqB,CAwChG;AAED,KAAK,4BAA4B,GAAG,QAAQ,CAAC;IAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,SAAS,CAAC;IACtD,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACxC,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,4BAA4B,2CAG7F;AAED,KAAK,uBAAuB,GAAG,uBAAuB,GACrD,QAAQ,CAAC;IACR,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GACnD,QAAQ,CAAC;IACR,KAAK,IAAI,IAAI,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,IAAI,IAAI,CAAC;IACb,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACzC,MAAM,IAAI,IAAI,CAAC;CACf,CAAC,CAAC;AAEJ,MAAM,MAAM,6BAA6B,GAAG,uBAAuB,CAAC;AACpE,MAAM,MAAM,6BAA6B,GAAG,gBAAgB,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,uBAA4B,GAAG,gBAAgB,CAiC3F"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solana/react-hooks",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "React hooks for the @solana/client Solana client",
|
|
5
5
|
"exports": {
|
|
6
6
|
"browser": "./dist/index.browser.mjs",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"@solana/kit": "^5.0.0",
|
|
45
45
|
"swr": "^2.3.6",
|
|
46
46
|
"zustand": "^5.0.0",
|
|
47
|
-
"@solana/client": "1.
|
|
47
|
+
"@solana/client": "1.4.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@types/react": "^19.0.0",
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"lint": "biome check src",
|
|
65
65
|
"test:typecheck": "tsc --noEmit",
|
|
66
66
|
"test": "vitest run --config ../../vitest.config.ts",
|
|
67
|
-
"typecheck": "pnpm test:typecheck"
|
|
67
|
+
"typecheck": "pnpm test:typecheck",
|
|
68
|
+
"check:circular-deps": "madge --circular $(find ./src -name '*.ts' -o -name '*.tsx')"
|
|
68
69
|
}
|
|
69
70
|
}
|