@privy-io/react-auth 2.14.2 → 2.15.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.
Files changed (57) hide show
  1. package/dist/cjs/abstract-smart-wallets.js +1 -1
  2. package/dist/cjs/extended-chains.js +1 -0
  3. package/dist/cjs/farcaster.js +1 -1
  4. package/dist/cjs/frame-B38H7ILa.js +1 -0
  5. package/dist/cjs/index.js +1 -1
  6. package/dist/cjs/internal-context-CrTqNb_c.js +1 -0
  7. package/dist/cjs/paths-CdRs2pll.js +1 -0
  8. package/dist/cjs/privy-provider-BH0F7-54.js +28 -0
  9. package/dist/cjs/smart-wallets-DvmTShkt.js +1 -0
  10. package/dist/cjs/smart-wallets.js +1 -1
  11. package/dist/cjs/solana.js +1 -1
  12. package/dist/cjs/ui.js +2 -2
  13. package/dist/cjs/use-sign-with-user-signer-h5JGn1CY.js +1 -0
  14. package/dist/cjs/useActiveWallet-XehugIB6.js +1 -0
  15. package/dist/cjs/{useFundWallet-IzxVl7fC.js → useFundWallet-hXyQXO7U.js} +1 -1
  16. package/dist/dts/extended-chains.d.mts +53 -0
  17. package/dist/dts/extended-chains.d.ts +53 -0
  18. package/dist/dts/farcaster.d.mts +1 -1
  19. package/dist/dts/farcaster.d.ts +1 -1
  20. package/dist/dts/index.d.mts +84 -9
  21. package/dist/dts/index.d.ts +84 -9
  22. package/dist/dts/smart-wallets.d.mts +1 -1
  23. package/dist/dts/smart-wallets.d.ts +1 -1
  24. package/dist/dts/solana.d.mts +4 -4
  25. package/dist/dts/solana.d.ts +4 -4
  26. package/dist/dts/{types-CCLHKw4p.d.mts → types-BVjRQyBr.d.mts} +2 -2
  27. package/dist/dts/{types-CCLHKw4p.d.ts → types-BVjRQyBr.d.ts} +2 -2
  28. package/dist/dts/ui.d.mts +1 -1
  29. package/dist/dts/ui.d.ts +1 -1
  30. package/dist/dts/{useSolanaWallets-CbaQnTe_.d.mts → useSolanaWallets-B9ju3nTn.d.mts} +1 -1
  31. package/dist/dts/{useSolanaWallets-CbaQnTe_.d.ts → useSolanaWallets-B9ju3nTn.d.ts} +1 -1
  32. package/dist/esm/abstract-smart-wallets.mjs +1 -1
  33. package/dist/esm/extended-chains.mjs +1 -0
  34. package/dist/esm/farcaster.mjs +1 -1
  35. package/dist/esm/frame-UsDF_L76.mjs +1 -0
  36. package/dist/esm/index.mjs +1 -1
  37. package/dist/esm/internal-context-Bxhby7Hv.mjs +1 -0
  38. package/dist/esm/paths-j39vuJt8.mjs +1 -0
  39. package/dist/esm/privy-provider-DyqReHyu.mjs +28 -0
  40. package/dist/esm/smart-wallets-BuJFWcoC.mjs +1 -0
  41. package/dist/esm/smart-wallets.mjs +1 -1
  42. package/dist/esm/solana.mjs +1 -1
  43. package/dist/esm/ui.mjs +2 -2
  44. package/dist/esm/use-sign-with-user-signer-CEyk1z8w.mjs +1 -0
  45. package/dist/esm/useActiveWallet-CKb44UC5.mjs +1 -0
  46. package/dist/esm/{useFundWallet-3u6nKvq9.mjs → useFundWallet-BjWNYKHD.mjs} +1 -1
  47. package/package.json +16 -3
  48. package/dist/cjs/frame-Czznns2Z.js +0 -1
  49. package/dist/cjs/internal-context-VGU3duZo.js +0 -1
  50. package/dist/cjs/privy-provider-CtJSaVGS.js +0 -28
  51. package/dist/cjs/smart-wallets-DamcfGy2.js +0 -1
  52. package/dist/cjs/useActiveWallet-CLlUzbbD.js +0 -1
  53. package/dist/esm/frame-S_4wR3Zf.mjs +0 -1
  54. package/dist/esm/internal-context-pX7RZwl3.mjs +0 -1
  55. package/dist/esm/privy-provider-B_tc-pgO.mjs +0 -28
  56. package/dist/esm/smart-wallets-CLORSRVb.mjs +0 -1
  57. package/dist/esm/useActiveWallet-mXvtXdOw.mjs +0 -1
@@ -0,0 +1 @@
1
+ "use strict";var e=require("react"),t=require("viem"),r=require("./use-sign-with-user-signer-h5JGn1CY.js"),n=require("./privy-provider-BH0F7-54.js"),a=require("./paths-CdRs2pll.js"),i=require("./internal-context-CrTqNb_c.js"),s=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),o=require("permissionless"),l=require("permissionless/accounts"),c=require("permissionless/clients/pimlico"),d=require("viem/account-abstraction"),u=require("@privy-io/js-sdk-core");let p={address:d.entryPoint06Address,version:"0.6"},y={address:d.entryPoint07Address,version:"0.7"},m=({owner:e,smartWalletType:t,publicClient:r})=>{switch(t){case u.SAFE:return l.toSafeSmartAccount({client:r,entryPoint:y,owners:[e],version:"1.4.1"});case u.KERNEL:return l.toKernelSmartAccount({client:r,version:"0.3.1",entryPoint:y,useMetaFactory:"optional",owners:[e]});case u.BICONOMY:return l.toBiconomySmartAccount({client:r,owners:[e],entryPoint:p});case u.LIGHT_ACCOUNT:return l.toLightSmartAccount({client:r,entryPoint:p,owner:e,version:"1.1.0"});case u.COINBASE_SMART_WALLET:return async function({client:e,owner:t}){let[r]=await t.request({method:"eth_accounts"});if(!r)throw Error("Unable to request embedded owner for eth_accounts");return await d.toCoinbaseSmartAccount({client:e,owners:[{type:"local",source:"privy",address:r,sign:async({hash:e})=>await t.request({method:"secp256k1_sign",params:[e]})}]})}({client:r,owner:e});case u.THIRDWEB:return l.toThirdwebSmartAccount({client:r,entryPoint:y,owner:e});default:throw Error(`Invalid smart account type: ${t}.`)}};const g=({calls:e,chain:t,maxPriorityFeePerGas:r,maxFeePerGas:n,nonce:a})=>e.map((e=>({to:e.to||void 0,data:e.data,value:e.value,chainId:t.id,nonce:a,maxFeePerGas:n,maxPriorityFeePerGas:r}))),h=async({chain:e,paymasterContext:r,account:i,signer:s,user:l,smartWalletsConfig:d,rpcConfig:u,privyAppId:p})=>{if(!(d?.enabled&&l&&i&&s))return;let y=d?.configuredNetworks.find((t=>t.chainId===`eip155:${e.id}`));if(!y)throw new a.PrivyClientError(`The chain ${e.name} (eip155:${e.id}) must be configured in the smart wallet configuration in your dashboard`);let g=l.smartWallet?.smartWalletType??d.smartWalletType,h=n.getJsonRpcEndpointFromChain(e,u,p),P=t.createPublicClient({chain:e,transport:t.http(h)}),f=r??y.paymasterContext,w=await(async({owner:e,smartWalletType:r,chain:n,publicClient:a,bundlerUrl:i,paymasterUrl:s,paymasterContext:l})=>{let d=await m({owner:e,smartWalletType:r,publicClient:a}),u=c.createPimlicoClient({transport:t.http(i),entryPoint:d.entryPoint}),p=s?c.createPimlicoClient({transport:t.http(s),entryPoint:d.entryPoint}):void 0;return o.createSmartAccountClient({account:d,chain:n,paymaster:p,paymasterContext:l,bundlerTransport:t.http(i),userOperation:{estimateFeesPerGas:async()=>{if(["public.pimlico.io","api.pimlico.io"].some((e=>i.includes(e))))return await u.getUserOperationGasPrice().then((e=>e.fast));if(["rpc.zerodev.app"].some((e=>i.includes(e))))return(await u.request({method:"zd_getUserOperationGasPrice",params:[]})).fast;if(["g.alchemy.com"].some((e=>i.includes(e)))){let[e,t]=await Promise.all([a.getBlock({blockTag:"latest"}),u.request({method:"rundler_maxPriorityFeePerGas",params:[]})]);if(!e.baseFeePerGas||!t)throw Error("Failed to get block or maxPriorityFeePerGasEstimate");return{maxFeePerGas:150n*e.baseFeePerGas/100n+BigInt(t.toString()),maxPriorityFeePerGas:BigInt(t.toString())}}{let e=await a.estimateFeesPerGas(),t=i.includes("api.developer.coinbase.com")?175n:150n;return{...e,maxFeePerGas:e.maxFeePerGas*t/100n,maxPriorityFeePerGas:e.maxPriorityFeePerGas*t/100n}}}}})})({owner:s,smartWalletType:g,chain:e,publicClient:P,paymasterContext:f,...y});if(!w)throw new a.PrivyClientError(`Failed to create smart wallet client for chain ${e.name} (eip155:${e.id})`);return w};exports.callsToTransactionRequests=g,exports.getSmartWalletClient=h,exports.useSmartWalletsUIWrapper=()=>{let{hideWalletUIs:e,openPrivyModal:t,isHeadlessSigning:a}=i.usePrivyInternal(),{setModalData:s}=n.usePrivyModal(),{user:o}=r.usePrivyContext(),l=r.getPrivyEthereumWallet(o),c=!!l&&r.getIsUnifiedWallet(l);return{wrapSmartAccountClientWithUIs:r=>({...r,sendTransaction:async(i,d)=>{if(a({showWalletUIs:d?.uiOptions?.showWalletUIs}))return e.current=!0,await r.sendTransaction(i).finally((()=>e.current=!1));let u=[];"calls"in i&&void 0!==i.calls?u=[...i.calls]:"to"in i&&(u=[{to:i.to,value:i.value||BigInt(0),data:i.data||"0x"}]);let p=async()=>{if(!r.paymaster)return!1;let{paymasterData:e,paymasterAndData:t}=await r.prepareUserOperation({calls:u,maxFeePerGas:i.maxFeePerGas,maxPriorityFeePerGas:i.maxPriorityFeePerGas,nonce:i.nonce?BigInt(i.nonce):void 0});return Number(t??e??0)>0};return new Promise((async(a,y)=>{e.current=!0;let{entropyId:m,entropyIdVerifier:h}=n.getEntropyDetailsForUser(o);s({connectWallet:{recoveryMethod:l.recoveryMethod,connectingWalletAddress:l.address,isUnifiedWallet:c,entropyId:m,entropyIdVerifier:h,onCompleteNavigateTo:n.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:g({calls:u,chain:r.chain,maxPriorityFeePerGas:i.maxPriorityFeePerGas,maxFeePerGas:i.maxFeePerGas,nonce:i.nonce?BigInt(i.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:m,entropyIdVerifier:h,getIsSponsored:p,signOnly:!1,onConfirm:()=>r.sendTransaction(i),onSuccess:e=>a(e.hash),onFailure:y,uiOptions:d?.uiOptions??{}}}),t(n.EmbeddedWalletConnectingScreen)})).finally((()=>{e.current=!1}))},signMessage:async(i,d)=>a({showWalletUIs:d?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signMessage(i).finally((()=>e.current=!1))):new Promise((async(a,u)=>{let{entropyId:p,entropyIdVerifier:y}=n.getEntropyDetailsForUser(o);e.current=!0,s({connectWallet:{recoveryMethod:l.recoveryMethod,connectingWalletAddress:l.address,isUnifiedWallet:c,entropyId:p,entropyIdVerifier:y,onCompleteNavigateTo:n.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof i.message?i.message:i.message.raw.toString(),confirmAndSign:()=>r.signMessage(i),onSuccess:e=>a(e),onFailure:u,uiOptions:d?.uiOptions??{}}}),t(n.EmbeddedWalletConnectingScreen)})).finally((()=>{e.current=!1})),signTypedData:async(i,d)=>a({showWalletUIs:d?.uiOptions?.showWalletUIs})?(e.current=!0,await r.signTypedData(i).finally((()=>e.current=!1))):new Promise((async(a,u)=>{e.current=!0;let{entropyId:p,entropyIdVerifier:y}=n.getEntropyDetailsForUser(o);s({connectWallet:{recoveryMethod:l.recoveryMethod,connectingWalletAddress:l.address,isUnifiedWallet:c,entropyId:p,entropyIdVerifier:y,onCompleteNavigateTo:n.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:i,confirmAndSign:()=>r.signTypedData(i),onSuccess:e=>a(e),onFailure:u,uiOptions:d?.uiOptions??{}}}),t(n.EmbeddedWalletConnectingScreen)})).finally((()=>{e.current=!1}))})}},exports.useSmartWalletsWrapper=({clientConfig:t,smartWalletsConfig:o})=>{let{hideWalletUIs:l,openPrivyModal:c,appId:d,isHeadlessSigning:u}=i.usePrivyInternal(),p=n.useAppConfig(),{setModalData:y}=n.usePrivyModal(),{user:m}=r.usePrivyContext(),{chains:P}=n.useAppConfig(),{chainId:f,clients:w,setChainId:I,chainIdState:v}=(()=>{let t=e.useRef(),[r,n]=e.useState();return{clients:e.useRef({}),setChainId:e=>{t.current=e,n(e)},chainId:t,chainIdState:r}})(),W=P.find((e=>e.id===v)),{wallets:C}=n.useWallets(),S=r.getPrivyEthereumWallet(m),F=s.getEmbeddedConnectedWallet(C),x=!!S&&r.getIsUnifiedWallet(S),T=e.useCallback((async()=>f.current),[f]),U=e.useCallback((async({id:e})=>{if(!w.current[e]){let r=await h({chain:P.find((t=>t.id===e)),account:S,signer:await(F?.getEthereumProvider()),user:m,paymasterContext:t?.paymasterContext,smartWalletsConfig:o,rpcConfig:p.rpcConfig,privyAppId:d});r&&(w.current[e]=r)}I(e)}),[P,t,C,m,o]);return{wrapSmartAccountClient:e=>{w.current[e.chain.id]=e,v||I(e.chain.id);return{...e,sendTransaction:async(e,t)=>{let r=w.current[f.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${f.current}) not found`);if(delete e.account,u({showWalletUIs:t?.uiOptions?.showWalletUIs}))return l.current=!0,await r.sendTransaction(e).finally((()=>l.current=!1));let i=[];"calls"in e&&void 0!==e.calls?i=[...e.calls]:"to"in e&&(i=[{to:e.to,value:e.value||BigInt(0),data:e.data||"0x"}]);let s=async()=>{let{paymasterAndData:t,paymasterData:n,maxFeePerGas:a,maxPriorityFeePerGas:s}=await r.prepareUserOperation({calls:i,maxFeePerGas:e.maxFeePerGas,maxPriorityFeePerGas:e.maxPriorityFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0});return 0===Number(a)&&0===Number(s)||Number(t??n??0)>0};return new Promise((async(a,o)=>{l.current=!0;let{entropyId:d,entropyIdVerifier:u}=n.getEntropyDetailsForUser(m);y({connectWallet:{recoveryMethod:S.recoveryMethod,connectingWalletAddress:S.address,isUnifiedWallet:x,entropyId:d,entropyIdVerifier:u,onCompleteNavigateTo:n.SendTransactionScreen,onFailure:()=>{}},sendTransaction:{transactionRequests:g({calls:i,chain:r.chain,maxPriorityFeePerGas:e.maxPriorityFeePerGas,maxFeePerGas:e.maxFeePerGas,nonce:e.nonce?BigInt(e.nonce):void 0}),transactingWalletIndex:0,transactingWalletAddress:r.account.address,entropyId:d,entropyIdVerifier:u,getIsSponsored:s,signOnly:!1,onConfirm:()=>r.sendTransaction(e),onSuccess:e=>a(e.hash),onFailure:o,uiOptions:t?.uiOptions??{}}}),c(n.EmbeddedWalletConnectingScreen)})).finally((()=>{l.current=!1}))},signMessage:async(e,t)=>{let r=w.current[f.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${f.current}) not found`);return u({showWalletUIs:t?.uiOptions?.showWalletUIs})?(l.current=!0,await r.signMessage(e).finally((()=>l.current=!1))):new Promise((async(a,i)=>{let{entropyId:s,entropyIdVerifier:o}=n.getEntropyDetailsForUser(m);l.current=!0,y({connectWallet:{recoveryMethod:S.recoveryMethod,connectingWalletAddress:S.address,isUnifiedWallet:x,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:n.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"personal_sign",data:"string"==typeof e.message?e.message:e.message.raw.toString(),confirmAndSign:()=>r.signMessage(e),onSuccess:e=>a(e),onFailure:i,uiOptions:t?.uiOptions??{}}}),c(n.EmbeddedWalletConnectingScreen)})).finally((()=>{l.current=!1}))},signTypedData:async(e,t)=>{let r=w.current[f.current];if(!r)throw new a.PrivyClientError(`Smart wallet client for chain (eip155:${f.current}) not found`);return delete e.account,u({showWalletUIs:t?.uiOptions?.showWalletUIs})?(l.current=!0,await r.signTypedData(e).finally((()=>l.current=!1))):new Promise((async(a,i)=>{l.current=!0;let{entropyId:s,entropyIdVerifier:o}=n.getEntropyDetailsForUser(m);y({connectWallet:{recoveryMethod:S.recoveryMethod,connectingWalletAddress:S.address,isUnifiedWallet:x,entropyId:s,entropyIdVerifier:o,onCompleteNavigateTo:n.SignRequestScreen,onFailure:()=>{}},signMessage:{method:"eth_signTypedData_v4",data:e,confirmAndSign:()=>r.signTypedData(e),onSuccess:e=>a(e),onFailure:i,uiOptions:t?.uiOptions??{}}}),c(n.EmbeddedWalletConnectingScreen)})).finally((()=>{l.current=!1}))},getChainId:T,chain:W,switchChain:U}}}};
@@ -1 +1 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),i=require("./privy-provider-CtJSaVGS.js"),o=require("./internal-context-VGU3duZo.js"),t=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),n=require("./smart-wallets-DamcfGy2.js");require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let c=/*#__PURE__*/r.createContext({client:void 0,getClientForChain:o.notImplemented});let a=/*#__PURE__*/r.createContext({config:void 0}),l=()=>{let{config:e}=r.useContext(a);return{config:e}},s=({children:i})=>{let[t,n]=r.useState(void 0),{client:c}=o.usePrivyInternal();return r.useEffect((()=>{!t&&c&&(async()=>{try{if(!c)return void console.warn("No client found");let e=await c.getSmartWalletsConfig();n(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!c]),/*#__PURE__*/e.jsx(a.Provider,{value:{config:t},children:i})},u=({config:c,children:a})=>{let{config:s}=l(),{appId:u}=o.usePrivyInternal(),{chains:d,defaultChain:q,rpcConfig:C}=i.useAppConfig(),{wallets:g}=i.useWallets(),{user:I}=i.usePrivyContext(),[m,f]=r.useState(),{wrapSmartAccountClientWithUIs:p}=n.useSmartWalletsUIWrapper(),v=i.getPrivyEthereumWallet(I),w=t.getEmbeddedConnectedWallet(g);r.useEffect((()=>{(async()=>{if(!s?.enabled)return;let e=s.configuredNetworks.find((e=>e.chainId===`eip155:${q.id}`))?q:d.find((e=>s.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new o.PrivyClientError("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");f(await n.getSmartWalletClient({chain:e,privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,account:v,signer:await(w?.getEthereumProvider()),user:I,smartWalletsConfig:s}))})()}),[!!s?.enabled,!!I?.smartWallet,!!w,!!v]);/*#__PURE__*/return e.jsx(h.Provider,{value:{client:m,config:c,getClientForChain:async({id:e})=>{let r=await n.getSmartWalletClient({chain:d.find((r=>r.id===e)),privyAppId:u,paymasterContext:c?.paymasterContext,rpcConfig:C,account:v,signer:await(w?.getEthereumProvider()),user:I,smartWalletsConfig:s});if(!r)throw new o.PrivyClientError(`Failed to create smart wallet client for chain id: ${e}`);return p(r)}},children:a})},h=/*#__PURE__*/r.createContext({client:void 0,config:void 0,getClientForChain:o.notImplemented}),d=({children:t})=>{let{client:a,config:s,getClientForChain:u}=(()=>{let{client:e,config:i,getClientForChain:o}=r.useContext(h);return{client:e,config:i,getClientForChain:o}})(),{config:d}=l(),{wrapSmartAccountClient:q}=n.useSmartWalletsWrapper({clientConfig:s,smartWalletsConfig:d}),{user:C}=i.usePrivyContext(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:I,hideWalletUIs:m}=o.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(a&&C&&!C?.smartWallet&&d?.enabled)try{let e=await g({address:a.account.address,chainId:`eip155:${a.chain.id}`});m.current=!0;let r=await a.signMessage({message:e});await I({signature:r,message:e,smartWalletType:d.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{m.current=!1}})()}),[!!a,!!C?.smartWallet,!!d?.enabled]),/*#__PURE__*/e.jsx(c.Provider,{value:{client:C?.smartWallet&&a?q(a):void 0,getClientForChain:u},children:t})};exports.SmartWalletsProvider=({config:r,children:i})=>/*#__PURE__*/e.jsx(s,{children:/*#__PURE__*/e.jsx(u,{config:r,children:/*#__PURE__*/e.jsx(d,{children:i})})}),exports.useSmartWallets=()=>{let{client:e,getClientForChain:i}=r.useContext(c);return{client:e,getClientForChain:i}};
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("react"),i=require("./use-sign-with-user-signer-h5JGn1CY.js"),t=require("./privy-provider-BH0F7-54.js"),o=require("./paths-CdRs2pll.js"),n=require("./getEmbeddedConnectedWallet-DTU4T9TJ.js"),c=require("./smart-wallets-DvmTShkt.js"),a=require("./internal-context-CrTqNb_c.js");require("viem"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("uuid"),require("jose"),require("eventemitter3"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("permissionless"),require("permissionless/accounts"),require("permissionless/clients/pimlico"),require("viem/account-abstraction");let l=/*#__PURE__*/r.createContext({client:void 0,getClientForChain:a.notImplemented});let s=/*#__PURE__*/r.createContext({config:void 0}),u=()=>{let{config:e}=r.useContext(s);return{config:e}},h=({children:i})=>{let[t,o]=r.useState(void 0),{client:n}=a.usePrivyInternal();return r.useEffect((()=>{!t&&n&&(async()=>{try{if(!n)return void console.warn("No client found");let e=await n.getSmartWalletsConfig();o(e)}catch(e){console.warn("Error generating smart wallet config: ",e)}})()}),[!!n]),/*#__PURE__*/e.jsx(s.Provider,{value:{config:t},children:i})},d=({config:l,children:s})=>{let{config:h}=u(),{appId:d}=a.usePrivyInternal(),{chains:C,defaultChain:g,rpcConfig:I}=t.useAppConfig(),{wallets:m}=t.useWallets(),{user:f}=i.usePrivyContext(),[p,v]=r.useState(),{wrapSmartAccountClientWithUIs:w}=c.useSmartWalletsUIWrapper(),y=i.getPrivyEthereumWallet(f),W=n.getEmbeddedConnectedWallet(m);r.useEffect((()=>{(async()=>{if(!h?.enabled)return;let e=h.configuredNetworks.find((e=>e.chainId===`eip155:${g.id}`))?g:C.find((e=>h.configuredNetworks.map((e=>e.chainId)).includes(`eip155:${e.id}`)));if(!e)throw new o.PrivyClientError("Could not find smart wallets chain configurations for any Privy client configured chains. Please configure smart wallets for your chains in the Privy dashboard.");v(await c.getSmartWalletClient({chain:e,privyAppId:d,paymasterContext:l?.paymasterContext,rpcConfig:I,account:y,signer:await(W?.getEthereumProvider()),user:f,smartWalletsConfig:h}))})()}),[!!h?.enabled,!!f?.smartWallet,!!W,!!y]);/*#__PURE__*/return e.jsx(q.Provider,{value:{client:p,config:l,getClientForChain:async({id:e})=>{let r=await c.getSmartWalletClient({chain:C.find((r=>r.id===e)),privyAppId:d,paymasterContext:l?.paymasterContext,rpcConfig:I,account:y,signer:await(W?.getEthereumProvider()),user:f,smartWalletsConfig:h});if(!r)throw new o.PrivyClientError(`Failed to create smart wallet client for chain id: ${e}`);return w(r)}},children:s})},q=/*#__PURE__*/r.createContext({client:void 0,config:void 0,getClientForChain:a.notImplemented}),C=({children:t})=>{let{client:o,config:n,getClientForChain:s}=(()=>{let{client:e,config:i,getClientForChain:t}=r.useContext(q);return{client:e,config:i,getClientForChain:t}})(),{config:h}=u(),{wrapSmartAccountClient:d}=c.useSmartWalletsWrapper({clientConfig:n,smartWalletsConfig:h}),{user:C}=i.usePrivyContext(),{generateSiweMessageForSmartWallet:g,linkSmartWallet:I,hideWalletUIs:m}=a.usePrivyInternal();return r.useEffect((()=>{(async()=>{if(o&&C&&!C?.smartWallet&&h?.enabled)try{let e=await g({address:o.account.address,chainId:`eip155:${o.chain.id}`});m.current=!0;let r=await o.signMessage({message:e});await I({signature:r,message:e,smartWalletType:h.smartWalletType})}catch(e){console.error("Error creating smart wallet:",e)}finally{m.current=!1}})()}),[!!o,!!C?.smartWallet,!!h?.enabled]),/*#__PURE__*/e.jsx(l.Provider,{value:{client:C?.smartWallet&&o?d(o):void 0,getClientForChain:s},children:t})};exports.SmartWalletsProvider=({config:r,children:i})=>/*#__PURE__*/e.jsx(h,{children:/*#__PURE__*/e.jsx(d,{config:r,children:/*#__PURE__*/e.jsx(C,{children:i})})}),exports.useSmartWallets=()=>{let{client:e,getClientForChain:i}=r.useContext(l);return{client:e,getClientForChain:i}};
@@ -1 +1 @@
1
- "use strict";var e=require("@solana/wallet-adapter-base"),n=require("@solana/wallet-standard-wallet-adapter-base"),r=require("@wallet-standard/app"),t=require("./privy-provider-CtJSaVGS.js"),i=require("react"),s=require("./internal-context-VGU3duZo.js"),o=require("@solana/web3.js"),a=require("eventemitter3"),c=require("@scure/base"),l=require("./useFundWallet-IzxVl7fC.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("viem"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("ofetch"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("@solana/spl-token");var d=/*#__PURE__*/u(a);let h=r=>r.filter((n=>e.isWalletAdapterCompatibleStandardWallet(n)&&!(n.features["privy:"]&&"isPrivyWallet"in n&&n.isPrivyWallet))).map((e=>new n.StandardWalletAdapter({wallet:e})));const g=["solana:mainnet","solana:devnet","solana:testnet"];function p(e){switch(e){case"solana:mainnet":return"mainnet-beta";case"solana:devnet":return"devnet";case"solana:testnet":return"testnet";default:throw Error(`Unknown chain: ${e}`)}}function v(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var A=0,y="__private_"+A+++"__implementation";class f extends d.default{setImplementation(e){v(this,y)[y]=e}async signMessage(e,n){return v(this,y)[y].signMessage(e,n)}async signAndSendTransaction(e,n,r,t){return v(this,y)[y].signAndSendTransaction(e,n,r,t)}async signTransaction(e,n,r,t){return v(this,y)[y].signTransaction(e,n,r,t)}constructor(e){super(),Object.defineProperty(this,y,{writable:!0,value:void 0}),v(this,y)[y]=e}}function w(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var q=0;function b(e){return"__private_"+q+++"_"+e}var I=/*#__PURE__*/b("_address"),m=/*#__PURE__*/b("_publicKey"),P=/*#__PURE__*/b("_chains"),S=/*#__PURE__*/b("_features"),T=/*#__PURE__*/b("_label"),C=/*#__PURE__*/b("_icon");class j{get address(){return w(this,I)[I]}get publicKey(){return w(this,m)[m].slice()}get chains(){return w(this,P)[P].slice()}get features(){return w(this,S)[S].slice()}get label(){return w(this,T)[T]}get icon(){return w(this,C)[C]}constructor({address:e,publicKey:n,label:r,icon:t}){Object.defineProperty(this,I,{writable:!0,value:void 0}),Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,T,{writable:!0,value:void 0}),Object.defineProperty(this,C,{writable:!0,value:void 0}),w(this,I)[I]=e,w(this,m)[m]=n,w(this,P)[P]=g,w(this,T)[T]=r,w(this,C)[C]=t,w(this,S)[S]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===j&&Object.freeze(this)}}function W(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var E=0;function O(e){return"__private_"+E+++"_"+e}var M=/*#__PURE__*/O("_listeners"),_=/*#__PURE__*/O("_version"),k=/*#__PURE__*/O("_name"),x=/*#__PURE__*/O("_icon"),B=/*#__PURE__*/O("_injection"),D=/*#__PURE__*/O("_isPrivyWallet"),F=/*#__PURE__*/O("_accounts"),U=/*#__PURE__*/O("_on"),V=/*#__PURE__*/O("_emit"),K=/*#__PURE__*/O("_off"),R=/*#__PURE__*/O("_connected"),Q=/*#__PURE__*/O("_connect"),G=/*#__PURE__*/O("_disconnect"),J=/*#__PURE__*/O("_signMessage"),z=/*#__PURE__*/O("_signAndSendTransaction"),L=/*#__PURE__*/O("_signTransaction");function Y(e,...n){W(this,M)[M][e]?.forEach((e=>e.apply(null,n)))}function H(e,n){W(this,M)[M][e]=W(this,M)[M][e]?.filter((e=>n!==e))}function N(e){let n=t.useAppConfig(),{getAccessToken:r,user:i}=t.usePrivy(),{setModalData:o}=t.usePrivyModal(),{isHeadlessSigning:a,openModal:c,walletProxy:l,recoverEmbeddedWallet:u,privy:d}=s.usePrivyInternal(),h=t.useEmitPrivyEvent(),{signWithUserSigner:g}=t.useSignWithUserSigner();return t.usePrivyEventSubscription("signSolanaTransaction",e),{signTransaction:async({transaction:e,connection:s,uiOptions:p,transactionOptions:v,address:A})=>{let{signedTransaction:y}=await t.signOrSendSolanaTransactionInternal({privy:d,appConfig:n,getAccessToken:r,isHeadlessSigning:a,emitPrivyEvent:h,setModalData:o,openModal:c,walletProxy:l,user:i,recoverEmbeddedWallet:u,signWithUserSigner:g},{transaction:e,connection:s,transactionOptions:v,uiOptions:p,address:A,signOnly:!0});return y}}}let Z=new f({signTransaction:s.notImplementedWithMessage("signTransaction was not injected"),signAndSendTransaction:s.notImplementedWithMessage("signAndSendTransaction was not injected"),signMessage:s.notImplementedWithMessage("signMessage was not injected")}),X=new class{get version(){return W(this,_)[_]}get name(){return W(this,k)[k]}get icon(){return W(this,x)[x]}get chains(){return g.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:W(this,Q)[Q]},"standard:disconnect":{version:"1.0.0",disconnect:W(this,G)[G]},"standard:events":{version:"1.0.0",on:W(this,U)[U]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:W(this,z)[z]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:W(this,L)[L]},"solana:signMessage":{version:"1.0.0",signMessage:W(this,J)[J]},"privy:":{privy:{signMessage:W(this,B)[B].signMessage,signTransaction:W(this,B)[B].signTransaction,signAndSendTransaction:W(this,B)[B].signAndSendTransaction}}}}get accounts(){return W(this,F)[F].slice()}get isPrivyWallet(){return W(this,D)[D]}constructor({name:e,icon:n,version:r,injection:i,wallets:s}){Object.defineProperty(this,V,{value:Y}),Object.defineProperty(this,K,{value:H}),Object.defineProperty(this,M,{writable:!0,value:void 0}),Object.defineProperty(this,_,{writable:!0,value:void 0}),Object.defineProperty(this,k,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,R,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),W(this,M)[M]={},W(this,U)[U]=(e,n)=>(W(this,M)[M][e]?.push(n)||(W(this,M)[M][e]=[n]),()=>W(this,K)[K](e,n)),W(this,R)[R]=e=>{null!=e&&(W(this,F)[F]=e.map((({address:e})=>new j({address:e,publicKey:c.base58.decode(e)})))),W(this,V)[V]("change",{accounts:this.accounts})},W(this,Q)[Q]=async()=>(W(this,V)[V]("change",{accounts:this.accounts}),{accounts:this.accounts}),W(this,G)[G]=async()=>{W(this,V)[V]("change",{accounts:this.accounts})},W(this,J)[J]=async(...e)=>{let n=[];for(let{message:r,account:t}of e){let{signature:e}=await W(this,B)[B].signMessage(r,t.address);n.push({signedMessage:r,signature:e})}return n},W(this,z)[z]=async(...e)=>{let n=[];for(let{transaction:r,account:t,options:i,chain:s}of e){let{signature:e}=await W(this,B)[B].signAndSendTransaction(o.VersionedTransaction.deserialize(r),t.address,p(s||"solana:mainnet"),i);n.push({signature:c.base58.decode(e)})}return n},W(this,L)[L]=async(...e)=>{let n=[];for(let{transaction:r,account:i,options:s,chain:a}of e){let e=await W(this,B)[B].signTransaction(o.VersionedTransaction.deserialize(r),i.address,p(a||"solana:mainnet"),s),c=t.isVersionedTransaction(e)?e.serialize():new Uint8Array(e.serialize({requireAllSignatures:!1,verifySignatures:!1}));n.push({signedTransaction:c})}return n},W(this,k)[k]=e,W(this,x)[x]=n,W(this,_)[_]=r,W(this,B)[B]=i,W(this,F)[F]=[],W(this,D)[D]=!0,i.on("accountChanged",W(this,R)[R],this),W(this,R)[R](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:Z});function $(){let{solanaClusters:e}=t.useAppConfig(),{ready:n}=t.useWallets(),{user:r}=t.usePrivy(),{signMessage:s}=t.useSignMessage(),{signTransaction:a}=N(),{sendTransaction:c}=t.useSendTransaction(),l=i.useMemo((()=>{let e=[...t.getPrivySolanaHDWallets(r).sort(((e,n)=>(e.walletIndex??0)-(n.walletIndex??0)))],n=t.getImportedPrivySolanaWallet(r);return n?[...e,n]:e}),[r]),u=i.useMemo((()=>({signMessage:async(e,n)=>({signature:await s({message:e,options:{address:n}})}),async signTransaction(n,r,t){let i=new o.Connection(e[t].rpcUrl);return await a({transaction:n,address:r,connection:i})},async signAndSendTransaction(n,r,t,i){let s=new o.Connection(e[t].rpcUrl),{signature:a}=await c({transaction:n,connection:s,address:r,transactionOptions:i});return{signature:a}}})),[s,a,c,e]);return i.useEffect((()=>{Z?.setImplementation(u)}),[u]),i.useEffect((()=>{var e;!n||(e=X.accounts).length===l.length&&e.every(((e,n)=>e.address===l[n]?.address))||Z?.emit("accountChanged",l)}),[n,l]),{ready:n,wallet:X}}var ee={id:t.SOLANA_LEDGER_PLUGIN_ID,prepareSiwsTransactionWithMemo:({address:e,nonce:n})=>{let r=t.prepareSiwsMessageWithNonce({address:e,nonce:n}),i=new o.Transaction,s=new o.TransactionInstruction({keys:[{pubkey:new o.PublicKey(e),isSigner:!0,isWritable:!1}],programId:new o.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),data:Buffer.from(r,"utf-8")});return i.add(s),i.feePayer=new o.PublicKey(e),i.recentBlockhash="GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN",i.serialize({requireAllSignatures:!1}).toString("base64")},deserializeTransactionFromB64String:e=>o.Transaction.from(t.bufferFrom(e,"base64"))};exports.SolanaAdapterConnector=t.SolanaWalletConnector,exports.useSendTransaction=t.useSendTransaction,exports.useSignMessage=t.useSignMessage,exports.useSolanaWallets=t.useSolanaWallets,exports.useFundWallet=l.useFundWallet,exports.toSolanaWalletConnectors=e=>{let n,{get:i,on:s}=r.getWallets(),o=e?.shouldAutoConnect??!0,a=new Map,c=[];function l(...e){h(e).forEach((e=>!a.has(e.wallet)&&a.set(e.wallet,e))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),n?.(c)}function u(...e){Array.from(a.keys()).forEach((n=>!e.includes(n)&&a.delete(n))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),n?.(c)}let d=[s("register",l),s("unregister",u)];return h(i()).forEach((e=>!a.has(e.wallet)&&a.set(e.wallet,e))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),{_setOnConnectorsUpdated:e=>{n=e},onMount:()=>{d[0]||(d[0]=s("register",l)),d[1]||(d[1]=s("unregister",u))},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop()},get:()=>c}},exports.useImportWallet=()=>{let{getAccessToken:e,user:n}=t.usePrivyContext(),{refreshSessionAndUser:r,initializeWalletProxy:o}=s.usePrivyInternal(),a=t.useEmitPrivyEvent();return{importWallet:i.useCallback((({privateKey:i})=>t.importWallet({getAccessToken:e,user:n,initializeWalletProxy:o,refreshSessionAndUser:r,emitPrivyEvent:a},{privateKey:i,chainType:"solana"})),[n,e,r,o,a])}},exports.usePrivyStandardWallet=$,exports.useSignTransaction=N,exports.useSolanaFundingPlugin=()=>t.useRegisterPlugin(l.t),exports.useSolanaLedgerPlugin=()=>t.useRegisterPlugin(ee),exports.useSolanaStandardWallets=function(){let{client:e}=s.usePrivyInternal(),{ready:n,wallet:r}=$(),[t,o]=i.useState([]),[a,c]=i.useState([]);return i.useEffect((()=>{let e=[r,...t.filter((e=>"solana"===e.chainType)).map((e=>e.wallet))];c(e);let n=e.map((n=>n.features["standard:events"]?.on("change",(()=>{c([...e])}))));return()=>{n.forEach((e=>e?.()))}}),[t]),i.useEffect((()=>{if(!n)return;o(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let r=()=>{o(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",r),()=>{e.connectors?.off("connectorInitialized",r)}}),[n,e.connectors]),{ready:n,wallets:a}};
1
+ "use strict";var e=require("@solana/wallet-adapter-base"),n=require("@solana/wallet-standard-wallet-adapter-base"),r=require("@wallet-standard/app"),t=require("./privy-provider-BH0F7-54.js"),i=require("react"),s=require("./internal-context-CrTqNb_c.js"),o=require("./use-sign-with-user-signer-h5JGn1CY.js"),a=require("@solana/web3.js"),c=require("eventemitter3"),l=require("@scure/base"),u=require("./useFundWallet-hXyQXO7U.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("react/jsx-runtime"),require("mipd"),require("react-device-detect"),require("viem/utils"),require("@privy-io/js-sdk-core"),require("./paths-CdRs2pll.js"),require("ofetch"),require("viem"),require("uuid"),require("jose"),require("@coinbase/wallet-sdk"),require("@privy-io/ethereum"),require("@marsidev/react-turnstile"),require("styled-components"),require("tinycolor2"),require("@heroicons/react/24/outline/DevicePhoneMobileIcon"),require("@heroicons/react/24/outline/FingerPrintIcon"),require("@heroicons/react/24/outline/PhoneIcon"),require("@heroicons/react/24/outline/ShieldCheckIcon"),require("@heroicons/react/24/outline/ArrowLeftIcon"),require("@heroicons/react/24/outline/ArrowRightIcon"),require("@heroicons/react/24/outline/QuestionMarkCircleIcon"),require("@heroicons/react/24/outline/XMarkIcon"),require("@heroicons/react/24/outline/ChevronDownIcon"),require("@heroicons/react/24/outline/CalendarIcon"),require("@heroicons/react/24/outline/ExclamationTriangleIcon"),require("@headlessui/react"),require("@walletconnect/ethereum-provider"),require("zustand"),require("fast-password-entropy"),require("secure-password-utilities"),require("secure-password-utilities/wordlists"),require("@heroicons/react/24/outline/UserCircleIcon"),require("@heroicons/react/24/outline/EnvelopeIcon"),require("@heroicons/react/20/solid/CheckIcon"),require("@heroicons/react/24/outline/WalletIcon"),require("@heroicons/react/24/outline/CheckIcon"),require("@heroicons/react/24/outline/Square2StackIcon"),require("@heroicons/react/24/outline/ExclamationCircleIcon"),require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"),require("@heroicons/react/24/solid/DocumentCheckIcon"),require("@heroicons/react/24/solid/XCircleIcon"),require("@heroicons/react/24/solid/CheckCircleIcon"),require("qrcode"),require("@heroicons/react/24/solid/ArrowsRightLeftIcon"),require("@heroicons/react/24/outline/ChevronRightIcon"),require("@heroicons/react/24/outline/LockClosedIcon"),require("@heroicons/react/24/outline/PencilSquareIcon"),require("@heroicons/react/24/outline/ArrowPathIcon"),require("@heroicons/react/24/outline/EyeIcon"),require("@heroicons/react/24/outline/EyeSlashIcon"),require("@heroicons/react/24/outline/KeyIcon"),require("@heroicons/react/24/outline/ArrowDownTrayIcon"),require("@heroicons/react/24/outline/ClipboardDocumentCheckIcon"),require("@heroicons/react/24/outline/DocumentDuplicateIcon"),require("@heroicons/react/24/solid/LockClosedIcon"),require("@heroicons/react/24/outline/CheckCircleIcon"),require("@heroicons/react/24/outline/InformationCircleIcon"),require("@heroicons/react/24/outline/CreditCardIcon"),require("@heroicons/react/24/outline/QrCodeIcon"),require("@heroicons/react/24/outline/GlobeAltIcon"),require("@heroicons/react/24/outline"),require("@heroicons/react/24/outline/ClipboardDocumentIcon"),require("@heroicons/react/24/outline/CloudArrowUpIcon"),require("@heroicons/react/24/outline/NoSymbolIcon"),require("@heroicons/react/24/outline/ClockIcon"),require("@heroicons/react/24/outline/TrashIcon"),require("@heroicons/react/24/solid/CheckBadgeIcon"),require("@heroicons/react/24/solid/IdentificationIcon"),require("@heroicons/react/24/outline/MinusCircleIcon"),require("@heroicons/react/24/outline/ArrowRightEndOnRectangleIcon"),require("@heroicons/react/24/solid/ShieldCheckIcon"),require("js-cookie"),require("@solana/spl-token");var h=/*#__PURE__*/d(c);let g=r=>r.filter((n=>e.isWalletAdapterCompatibleStandardWallet(n)&&!(n.features["privy:"]&&"isPrivyWallet"in n&&n.isPrivyWallet))).map((e=>new n.StandardWalletAdapter({wallet:e})));const p=["solana:mainnet","solana:devnet","solana:testnet"];function v(e){switch(e){case"solana:mainnet":return"mainnet-beta";case"solana:devnet":return"devnet";case"solana:testnet":return"testnet";default:throw Error(`Unknown chain: ${e}`)}}function A(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var y=0,f="__private_"+y+++"__implementation";class w extends h.default{setImplementation(e){A(this,f)[f]=e}async signMessage(e,n){return A(this,f)[f].signMessage(e,n)}async signAndSendTransaction(e,n,r,t){return A(this,f)[f].signAndSendTransaction(e,n,r,t)}async signTransaction(e,n,r,t){return A(this,f)[f].signTransaction(e,n,r,t)}constructor(e){super(),Object.defineProperty(this,f,{writable:!0,value:void 0}),A(this,f)[f]=e}}function q(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var b=0;function I(e){return"__private_"+b+++"_"+e}var m=/*#__PURE__*/I("_address"),P=/*#__PURE__*/I("_publicKey"),S=/*#__PURE__*/I("_chains"),T=/*#__PURE__*/I("_features"),C=/*#__PURE__*/I("_label"),j=/*#__PURE__*/I("_icon");class W{get address(){return q(this,m)[m]}get publicKey(){return q(this,P)[P].slice()}get chains(){return q(this,S)[S].slice()}get features(){return q(this,T)[T].slice()}get label(){return q(this,C)[C]}get icon(){return q(this,j)[j]}constructor({address:e,publicKey:n,label:r,icon:t}){Object.defineProperty(this,m,{writable:!0,value:void 0}),Object.defineProperty(this,P,{writable:!0,value:void 0}),Object.defineProperty(this,S,{writable:!0,value:void 0}),Object.defineProperty(this,T,{writable:!0,value:void 0}),Object.defineProperty(this,C,{writable:!0,value:void 0}),Object.defineProperty(this,j,{writable:!0,value:void 0}),q(this,m)[m]=e,q(this,P)[P]=n,q(this,S)[S]=p,q(this,C)[C]=r,q(this,j)[j]=t,q(this,T)[T]=["solana:signAndSendTransaction","solana:signTransaction","solana:signMessage"],new.target===W&&Object.freeze(this)}}function E(e,n){if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError("attempted to use private field on non-instance");return e}var O=0;function M(e){return"__private_"+O+++"_"+e}var _=/*#__PURE__*/M("_listeners"),k=/*#__PURE__*/M("_version"),x=/*#__PURE__*/M("_name"),B=/*#__PURE__*/M("_icon"),D=/*#__PURE__*/M("_injection"),F=/*#__PURE__*/M("_isPrivyWallet"),U=/*#__PURE__*/M("_accounts"),V=/*#__PURE__*/M("_on"),K=/*#__PURE__*/M("_emit"),R=/*#__PURE__*/M("_off"),Q=/*#__PURE__*/M("_connected"),G=/*#__PURE__*/M("_connect"),J=/*#__PURE__*/M("_disconnect"),z=/*#__PURE__*/M("_signMessage"),L=/*#__PURE__*/M("_signAndSendTransaction"),Y=/*#__PURE__*/M("_signTransaction");function H(e,...n){E(this,_)[_][e]?.forEach((e=>e.apply(null,n)))}function N(e,n){E(this,_)[_][e]=E(this,_)[_][e]?.filter((e=>n!==e))}function Z(e){let n=t.useAppConfig(),{getAccessToken:r,user:i}=t.usePrivy(),{setModalData:a}=t.usePrivyModal(),{isHeadlessSigning:c,openModal:l,walletProxy:u,recoverEmbeddedWallet:d,privy:h}=s.usePrivyInternal(),g=t.useEmitPrivyEvent(),{signWithUserSigner:p}=o.useSignWithUserSigner();return t.usePrivyEventSubscription("signSolanaTransaction",e),{signTransaction:async({transaction:e,connection:s,uiOptions:o,transactionOptions:v,address:A})=>{let{signedTransaction:y}=await t.signOrSendSolanaTransactionInternal({privy:h,appConfig:n,getAccessToken:r,isHeadlessSigning:c,emitPrivyEvent:g,setModalData:a,openModal:l,walletProxy:u,user:i,recoverEmbeddedWallet:d,signWithUserSigner:p},{transaction:e,connection:s,transactionOptions:v,uiOptions:o,address:A,signOnly:!0});return y}}}let X=new w({signTransaction:s.notImplementedWithMessage("signTransaction was not injected"),signAndSendTransaction:s.notImplementedWithMessage("signAndSendTransaction was not injected"),signMessage:s.notImplementedWithMessage("signMessage was not injected")}),$=new class{get version(){return E(this,k)[k]}get name(){return E(this,x)[x]}get icon(){return E(this,B)[B]}get chains(){return p.slice()}get features(){return{"standard:connect":{version:"1.0.0",connect:E(this,G)[G]},"standard:disconnect":{version:"1.0.0",disconnect:E(this,J)[J]},"standard:events":{version:"1.0.0",on:E(this,V)[V]},"solana:signAndSendTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signAndSendTransaction:E(this,L)[L]},"solana:signTransaction":{version:"1.0.0",supportedTransactionVersions:["legacy",0],signTransaction:E(this,Y)[Y]},"solana:signMessage":{version:"1.0.0",signMessage:E(this,z)[z]},"privy:":{privy:{signMessage:E(this,D)[D].signMessage,signTransaction:E(this,D)[D].signTransaction,signAndSendTransaction:E(this,D)[D].signAndSendTransaction}}}}get accounts(){return E(this,U)[U].slice()}get isPrivyWallet(){return E(this,F)[F]}constructor({name:e,icon:n,version:r,injection:i,wallets:s}){Object.defineProperty(this,K,{value:H}),Object.defineProperty(this,R,{value:N}),Object.defineProperty(this,_,{writable:!0,value:void 0}),Object.defineProperty(this,k,{writable:!0,value:void 0}),Object.defineProperty(this,x,{writable:!0,value:void 0}),Object.defineProperty(this,B,{writable:!0,value:void 0}),Object.defineProperty(this,D,{writable:!0,value:void 0}),Object.defineProperty(this,F,{writable:!0,value:void 0}),Object.defineProperty(this,U,{writable:!0,value:void 0}),Object.defineProperty(this,V,{writable:!0,value:void 0}),Object.defineProperty(this,Q,{writable:!0,value:void 0}),Object.defineProperty(this,G,{writable:!0,value:void 0}),Object.defineProperty(this,J,{writable:!0,value:void 0}),Object.defineProperty(this,z,{writable:!0,value:void 0}),Object.defineProperty(this,L,{writable:!0,value:void 0}),Object.defineProperty(this,Y,{writable:!0,value:void 0}),E(this,_)[_]={},E(this,V)[V]=(e,n)=>(E(this,_)[_][e]?.push(n)||(E(this,_)[_][e]=[n]),()=>E(this,R)[R](e,n)),E(this,Q)[Q]=e=>{null!=e&&(E(this,U)[U]=e.map((({address:e})=>new W({address:e,publicKey:l.base58.decode(e)})))),E(this,K)[K]("change",{accounts:this.accounts})},E(this,G)[G]=async()=>(E(this,K)[K]("change",{accounts:this.accounts}),{accounts:this.accounts}),E(this,J)[J]=async()=>{E(this,K)[K]("change",{accounts:this.accounts})},E(this,z)[z]=async(...e)=>{let n=[];for(let{message:r,account:t}of e){let{signature:e}=await E(this,D)[D].signMessage(r,t.address);n.push({signedMessage:r,signature:e})}return n},E(this,L)[L]=async(...e)=>{let n=[];for(let{transaction:r,account:t,options:i,chain:s}of e){let{signature:e}=await E(this,D)[D].signAndSendTransaction(a.VersionedTransaction.deserialize(r),t.address,v(s||"solana:mainnet"),i);n.push({signature:l.base58.decode(e)})}return n},E(this,Y)[Y]=async(...e)=>{let n=[];for(let{transaction:r,account:i,options:s,chain:o}of e){let e=await E(this,D)[D].signTransaction(a.VersionedTransaction.deserialize(r),i.address,v(o||"solana:mainnet"),s),c=t.isVersionedTransaction(e)?e.serialize():new Uint8Array(e.serialize({requireAllSignatures:!1,verifySignatures:!1}));n.push({signedTransaction:c})}return n},E(this,x)[x]=e,E(this,B)[B]=n,E(this,k)[k]=r,E(this,D)[D]=i,E(this,U)[U]=[],E(this,F)[F]=!0,i.on("accountChanged",E(this,Q)[Q],this),E(this,Q)[Q](s)}}({name:"Privy",version:"1.0.0",icon:"data:image/png;base64,AAABAAEAFBQAAAAAIABlAQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAUAAAAFAgGAAAAjYkdDQAAAAlwSFlzAAAOwwAADsMBx2+oZAAAAQVJREFUeJxiYMANZIC4E4ivAPFPIP4FxDeAuB+IlfDowwBMQFwJxF+B+D8O/AOI66Bq8QJGIF6ExyB0vAqImfEZmEeCYTDcgMswPiB+T4aB34FYApuBsWQYBsP52AycToGBK7EZuJECAw9jM3AVBQbuwWZgIwUGTsZmoDkFBnpiMxAEjpJh2FV8iVsbiD+TYBgoDVrgMgwGnID4HRGGgTKBGyHDYEAaiBdCSxh0g/5AU4Q8sYYhAzEgjoGmABBOgFo2eACowFABYn0oVgViAVINkQTiZUD8DIj/ATF6GILEXgLxCiCWIsZAbiAuBeKtQHwHiEHJ6C8UfwHie0C8E4jLoWpRAAAAAP//rcbhsQAAAAZJREFUAwBYFs3VKJ0cuQAAAABJRU5ErkJggg==",wallets:[],injection:X});function ee(){let{solanaClusters:e}=t.useAppConfig(),{ready:n}=t.useWallets(),{user:r}=t.usePrivy(),{signMessage:s}=t.useSignMessage(),{signTransaction:c}=Z(),{sendTransaction:l}=t.useSendTransaction(),u=i.useMemo((()=>{let e=[...o.getPrivySolanaHDWallets(r).sort(((e,n)=>(e.walletIndex??0)-(n.walletIndex??0)))],n=o.getImportedPrivySolanaWallet(r);return n?[...e,n]:e}),[r]),d=i.useMemo((()=>({signMessage:async(e,n)=>({signature:await s({message:e,options:{address:n}})}),async signTransaction(n,r,t){let i=new a.Connection(e[t].rpcUrl);return await c({transaction:n,address:r,connection:i})},async signAndSendTransaction(n,r,t,i){let s=new a.Connection(e[t].rpcUrl),{signature:o}=await l({transaction:n,connection:s,address:r,transactionOptions:i});return{signature:o}}})),[s,c,l,e]);return i.useEffect((()=>{X?.setImplementation(d)}),[d]),i.useEffect((()=>{var e;!n||(e=$.accounts).length===u.length&&e.every(((e,n)=>e.address===u[n]?.address))||X?.emit("accountChanged",u)}),[n,u]),{ready:n,wallet:$}}var ne={id:t.SOLANA_LEDGER_PLUGIN_ID,prepareSiwsTransactionWithMemo:({address:e,nonce:n})=>{let r=t.prepareSiwsMessageWithNonce({address:e,nonce:n}),i=new a.Transaction,s=new a.TransactionInstruction({keys:[{pubkey:new a.PublicKey(e),isSigner:!0,isWritable:!1}],programId:new a.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"),data:Buffer.from(r,"utf-8")});return i.add(s),i.feePayer=new a.PublicKey(e),i.recentBlockhash="GfVcyD5fWFJ6hRm8bsy7CoVPsLSoJhtJKRJYk8T2VVFN",i.serialize({requireAllSignatures:!1}).toString("base64")},deserializeTransactionFromB64String:e=>a.Transaction.from(t.bufferFrom(e,"base64"))};exports.SolanaAdapterConnector=t.SolanaWalletConnector,exports.useSendTransaction=t.useSendTransaction,exports.useSignMessage=t.useSignMessage,exports.useSolanaWallets=t.useSolanaWallets,exports.useFundWallet=u.useFundWallet,exports.toSolanaWalletConnectors=e=>{let n,{get:i,on:s}=r.getWallets(),o=e?.shouldAutoConnect??!0,a=new Map,c=[];function l(...e){g(e).forEach((e=>!a.has(e.wallet)&&a.set(e.wallet,e))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),n?.(c)}function u(...e){Array.from(a.keys()).forEach((n=>!e.includes(n)&&a.delete(n))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),n?.(c)}let d=[s("register",l),s("unregister",u)];return g(i()).forEach((e=>!a.has(e.wallet)&&a.set(e.wallet,e))),c=Array.from(a.values()).map((e=>new t.SolanaWalletConnector(e,o))),{_setOnConnectorsUpdated:e=>{n=e},onMount:()=>{d[0]||(d[0]=s("register",l)),d[1]||(d[1]=s("unregister",u))},onUnmount:()=>{let e=d.pop();for(;e;)e(),e=d.pop()},get:()=>c}},exports.useImportWallet=()=>{let{getAccessToken:e,user:n}=o.usePrivyContext(),{refreshSessionAndUser:r,initializeWalletProxy:a}=s.usePrivyInternal(),c=t.useEmitPrivyEvent();return{importWallet:i.useCallback((({privateKey:i})=>t.importWallet({getAccessToken:e,user:n,initializeWalletProxy:a,refreshSessionAndUser:r,emitPrivyEvent:c},{privateKey:i,chainType:"solana"})),[n,e,r,a,c])}},exports.usePrivyStandardWallet=ee,exports.useSignTransaction=Z,exports.useSolanaFundingPlugin=()=>t.useRegisterPlugin(u.t),exports.useSolanaLedgerPlugin=()=>t.useRegisterPlugin(ne),exports.useSolanaStandardWallets=function(){let{client:e}=s.usePrivyInternal(),{ready:n,wallet:r}=ee(),[t,o]=i.useState([]),[a,c]=i.useState([]);return i.useEffect((()=>{let e=[r,...t.filter((e=>"solana"===e.chainType)).map((e=>e.wallet))];c(e);let n=e.map((n=>n.features["standard:events"]?.on("change",(()=>{c([...e])}))));return()=>{n.forEach((e=>e?.()))}}),[t]),i.useEffect((()=>{if(!n)return;o(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[]);let r=()=>{o(e.connectors?.walletConnectors.filter((e=>"solana"===e.chainType))??[])};return e.connectors?.on("connectorInitialized",r),()=>{e.connectors?.off("connectorInitialized",r)}}),[n,e.connectors]),{ready:n,wallets:a}};