@tuwaio/nova-connect 0.1.9 → 0.1.10

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.
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkY3SFEPYJ_cjs=require('../chunk-Y3SFEPYJ.cjs');require('../chunk-NMQZA377.cjs'),require('../chunk-7FTV55DQ.cjs'),require('../chunk-QERPNHKX.cjs'),require('../chunk-OA6MB7CZ.cjs');Object.defineProperty(exports,"AboutWallets",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.C}});Object.defineProperty(exports,"ChainListRenderer",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.a}});Object.defineProperty(exports,"ChainSelector",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.p}});Object.defineProperty(exports,"ConnectButton",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.u}});Object.defineProperty(exports,"ConnectCard",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.E}});Object.defineProperty(exports,"ConnectedContent",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.s}});Object.defineProperty(exports,"ConnectedModal",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.B}});Object.defineProperty(exports,"ConnectedModalFooter",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.v}});Object.defineProperty(exports,"ConnectedModalMainContent",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.z}});Object.defineProperty(exports,"ConnectedModalNameAndBalance",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.w}});Object.defineProperty(exports,"ConnectedModalTxHistory",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.A}});Object.defineProperty(exports,"Connecting",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.F}});Object.defineProperty(exports,"ConnectorsBlock",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.G}});Object.defineProperty(exports,"ConnectorsSelections",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.I}});Object.defineProperty(exports,"Disclaimer",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.H}});Object.defineProperty(exports,"GetWallet",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.J}});Object.defineProperty(exports,"IconButton",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.y}});Object.defineProperty(exports,"ImpersonateForm",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.K}});Object.defineProperty(exports,"NetworkSelections",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.L}});Object.defineProperty(exports,"NetworkTabs",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.M}});Object.defineProperty(exports,"RecentBadge",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.D}});Object.defineProperty(exports,"ScrollableChainList",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.o}});Object.defineProperty(exports,"SelectContentAnimated",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.n}});Object.defineProperty(exports,"StatusIcon",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.r}});Object.defineProperty(exports,"ToBottomButton",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.l}});Object.defineProperty(exports,"ToTopButton",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.m}});Object.defineProperty(exports,"ToastError",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.N}});Object.defineProperty(exports,"WaitForConnectionContent",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.t}});Object.defineProperty(exports,"WalletAvatar",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.q}});Object.defineProperty(exports,"WalletIcon",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.x}});//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var chunkB26D6OI7_cjs=require('../chunk-B26D6OI7.cjs');require('../chunk-NMQZA377.cjs'),require('../chunk-7FTV55DQ.cjs'),require('../chunk-QERPNHKX.cjs'),require('../chunk-OA6MB7CZ.cjs');Object.defineProperty(exports,"AboutWallets",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.C}});Object.defineProperty(exports,"ChainListRenderer",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.a}});Object.defineProperty(exports,"ChainSelector",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.p}});Object.defineProperty(exports,"ConnectButton",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.u}});Object.defineProperty(exports,"ConnectCard",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.E}});Object.defineProperty(exports,"ConnectedContent",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.s}});Object.defineProperty(exports,"ConnectedModal",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.B}});Object.defineProperty(exports,"ConnectedModalFooter",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.v}});Object.defineProperty(exports,"ConnectedModalMainContent",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.z}});Object.defineProperty(exports,"ConnectedModalNameAndBalance",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.w}});Object.defineProperty(exports,"ConnectedModalTxHistory",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.A}});Object.defineProperty(exports,"Connecting",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.F}});Object.defineProperty(exports,"ConnectorsBlock",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.G}});Object.defineProperty(exports,"ConnectorsSelections",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.I}});Object.defineProperty(exports,"Disclaimer",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.H}});Object.defineProperty(exports,"GetWallet",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.J}});Object.defineProperty(exports,"IconButton",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.y}});Object.defineProperty(exports,"ImpersonateForm",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.K}});Object.defineProperty(exports,"NetworkSelections",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.L}});Object.defineProperty(exports,"NetworkTabs",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.M}});Object.defineProperty(exports,"RecentBadge",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.D}});Object.defineProperty(exports,"ScrollableChainList",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.o}});Object.defineProperty(exports,"SelectContentAnimated",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.n}});Object.defineProperty(exports,"StatusIcon",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.r}});Object.defineProperty(exports,"ToBottomButton",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.l}});Object.defineProperty(exports,"ToTopButton",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.m}});Object.defineProperty(exports,"ToastError",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.N}});Object.defineProperty(exports,"WaitForConnectionContent",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.t}});Object.defineProperty(exports,"WalletAvatar",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.q}});Object.defineProperty(exports,"WalletIcon",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.x}});//# sourceMappingURL=index.cjs.map
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,2 +1,2 @@
1
- export{C as AboutWallets,a as ChainListRenderer,p as ChainSelector,u as ConnectButton,E as ConnectCard,s as ConnectedContent,B as ConnectedModal,v as ConnectedModalFooter,z as ConnectedModalMainContent,w as ConnectedModalNameAndBalance,A as ConnectedModalTxHistory,F as Connecting,G as ConnectorsBlock,I as ConnectorsSelections,H as Disclaimer,J as GetWallet,y as IconButton,K as ImpersonateForm,L as NetworkSelections,M as NetworkTabs,D as RecentBadge,o as ScrollableChainList,n as SelectContentAnimated,r as StatusIcon,l as ToBottomButton,m as ToTopButton,N as ToastError,t as WaitForConnectionContent,q as WalletAvatar,x as WalletIcon}from'../chunk-JVVOBSVI.js';import'../chunk-MQGDTFY7.js';import'../chunk-S5WT3DLF.js';import'../chunk-TAV7EL23.js';import'../chunk-MPEJHQKC.js';//# sourceMappingURL=index.js.map
1
+ export{C as AboutWallets,a as ChainListRenderer,p as ChainSelector,u as ConnectButton,E as ConnectCard,s as ConnectedContent,B as ConnectedModal,v as ConnectedModalFooter,z as ConnectedModalMainContent,w as ConnectedModalNameAndBalance,A as ConnectedModalTxHistory,F as Connecting,G as ConnectorsBlock,I as ConnectorsSelections,H as Disclaimer,J as GetWallet,y as IconButton,K as ImpersonateForm,L as NetworkSelections,M as NetworkTabs,D as RecentBadge,o as ScrollableChainList,n as SelectContentAnimated,r as StatusIcon,l as ToBottomButton,m as ToTopButton,N as ToastError,t as WaitForConnectionContent,q as WalletAvatar,x as WalletIcon}from'../chunk-7F5QM2LC.js';import'../chunk-MQGDTFY7.js';import'../chunk-S5WT3DLF.js';import'../chunk-TAV7EL23.js';import'../chunk-MPEJHQKC.js';//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkY3SFEPYJ_cjs=require('./chunk-Y3SFEPYJ.cjs'),chunkNMQZA377_cjs=require('./chunk-NMQZA377.cjs'),chunk7FTV55DQ_cjs=require('./chunk-7FTV55DQ.cjs'),chunkQERPNHKX_cjs=require('./chunk-QERPNHKX.cjs'),chunkOA6MB7CZ_cjs=require('./chunk-OA6MB7CZ.cjs'),orbitCore=require('@tuwaio/orbit-core'),novaCore=require('@tuwaio/nova-core'),react=require('react'),reactToastify=require('react-toastify'),jsxRuntime=require('react/jsx-runtime'),outline=require('@heroicons/react/24/outline'),framerMotion=require('framer-motion'),gill=require('gill');var pe=({title:o,rawError:e,onCopyComplete:a,errorType:r,isConnected:t,...f})=>jsxRuntime.jsx(chunkY3SFEPYJ_cjs.N,{title:o,rawError:e,onCopyComplete:a,customization:f.customization}),ue=o=>{let e=chunk7FTV55DQ_cjs.h();return jsxRuntime.jsx(reactToastify.ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":e.somethingWentWrong})},Ce=(o,e)=>{o(e.title,e.rawError,e.errorKey);},fe=o=>{o();},ve=(o,e)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",e.substring(0,100));},ye=o=>o,ge=o=>o;function Mo({containerId:o="nova-connect-errors",position:e="top-center",autoClose:a=7e3,draggable:r=false,customization:t}){let f=chunk7FTV55DQ_cjs.h(),u=chunkOA6MB7CZ_cjs.h(l=>l.switchNetworkError),R=chunkOA6MB7CZ_cjs.h(l=>l.activeWallet),B=chunkOA6MB7CZ_cjs.h(l=>l.walletConnectionError),{ToastError:N=pe,Container:y=ue}=t?.components??{},{showError:d=Ce,dismissError:O=fe,onCopyComplete:S=ve}=t?.handlers??{},{errorTitle:D=ye,errorHash:E=ge}=t??{},M=react.useRef(new Set),x=react.useRef(null),s=react.useMemo(()=>{let l=!!B,b=!!u,P=!!R?.isConnected;return {hasWalletError:l,hasSwitchError:b,isConnected:P,hasAnyError:l||b,primaryError:B||u||null,errorType:l?"wallet":b?"switch":null}},[B,u,R?.isConnected]),H=react.useMemo(()=>{switch(s.errorType){case "wallet":return f.walletConnectionError;case "switch":return f.errorWhenChainSwitching;default:return f.somethingWentWrong}},[s.errorType,f]),m=react.useMemo(()=>D(H,{errorType:s.errorType}),[D,H,s.errorType]),z=react.useMemo(()=>s.primaryError?`${s.errorType}-${s.primaryError.substring(0,50)}`:null,[s.primaryError,s.errorType]),C=react.useMemo(()=>E(z,{primaryError:s.primaryError,errorType:s.errorType}),[E,z,s.primaryError,s.errorType]),T=react.useCallback(()=>{O(()=>{x.current&&(reactToastify.toast.dismiss(x.current),x.current=null),reactToastify.toast.dismiss({containerId:o});});},[o,O]),F=react.useCallback((l,b)=>{S(l,b,s.errorType);},[S,s.errorType]),n=react.useCallback((l,b,P)=>{if(T(),!M.current.has(P))try{let V={containerId:o,toastId:P,onClose:()=>{M.current.delete(P),x.current=null;}},_=t?.toastOptions?.error?.({title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected}),q={...V,..._};reactToastify.toast.error(jsxRuntime.jsx(N,{title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected,onCopyComplete:J=>F(J,b),customization:t?.toastErrorCustomization}),q),M.current.add(P),x.current=P;}catch(V){console.error("Failed to show error toast:",V);}},[T,o,t?.toastOptions?.error,t?.toastErrorCustomization,N,s.errorType,s.isConnected,F]),v=react.useCallback((l,b,P)=>{d(n,{title:l,rawError:b,errorKey:P,errorType:s.errorType});},[n,d,s.errorType]);react.useEffect(()=>{let{hasAnyError:l,isConnected:b,primaryError:P}=s;if(b&&!l){T(),M.current.clear();return}if(l&&P&&C){if(b&&s.errorType!=="switch")return;v(m,P,C);}},[s,m,C,v,T]),react.useEffect(()=>()=>{T(),M.current.clear();},[T]);let g=react.useMemo(()=>t?.classNames?.container?t.classNames.container({hasErrors:s.hasAnyError,errorType:s.errorType}):"novacon:p-0 novacon:bg-transparent",[t,s.hasAnyError,s.errorType]),p=react.useMemo(()=>({containerId:o,position:e,closeOnClick:false,icon:false,closeButton:novaCore.ToastCloseButton,autoClose:a,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:r,pauseOnHover:true,theme:"light",transition:reactToastify.Bounce}),[o,e,a,r]),h=react.useMemo(()=>({...p,...t?.containerProps,className:g}),[p,t?.containerProps,g]);return jsxRuntime.jsx(y,{...h})}Mo.displayName="ErrorsProvider";function Po({labels:o,children:e}){let a=react.useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let t=["connectWallet","disconnect","connecting","connected","error","success"].filter(f=>!(f in o));t.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${t.join(", ")}`);}return jsxRuntime.jsx(chunk7FTV55DQ_cjs.g.Provider,{value:a,children:e})}Po.displayName="NovaConnectLabelsProvider";function He(o,e){if(!o||!Array.isArray(o)||!e)return;let a=o.find(r=>r&&typeof r=="object"&&"name"in r&&typeof r.name=="string"?orbitCore.formatWalletName(r.name)===e:false);return a&&typeof a=="object"&&"name"in a&&typeof a.name=="string"?a.name:void 0}var qo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("div",{ref:t,className:novaCore.cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...r,children:e}));qo.displayName="DefaultModalContainer";var Jo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("div",{ref:t,className:o,...r,children:jsxRuntime.jsx(novaCore.DialogHeader,{children:e})}));Jo.displayName="DefaultModalHeader";var Qo=react.forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsxRuntime.jsx("button",{ref:t,className:novaCore.cn("novacon:cursor-pointer novacon:text-[var(--tuwa-text-secondary)] novacon:transition novacon:duration-300 novacon:ease-in-out novacon:active:scale-75 novacon:hover:scale-110",o),type:"button",onClick:e,...r,children:jsxRuntime.jsx(outline.InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Qo.displayName="DefaultInfoButton";var Xo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx(novaCore.DialogTitle,{ref:t,className:novaCore.cn("novacon:flex novacon:items-center",o),...r,children:e}));Xo.displayName="DefaultTitle";var Yo=react.forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{ref:t,type:"button",onClick:e,className:novaCore.cn("novacon:cursor-pointer novacon:rounded-full novacon:p-1 novacon:text-[var(--tuwa-text-tertiary)] novacon:transition-colors novacon:hover:bg-[var(--tuwa-bg-muted)] novacon:hover:text-[var(--tuwa-text-primary)]",o),...r,children:jsxRuntime.jsx(novaCore.CloseIcon,{"aria-hidden":"true"})})}));Yo.displayName="DefaultCloseButton";var Zo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("main",{ref:t,className:novaCore.cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...r,children:e}));Zo.displayName="DefaultMainContent";var oe=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("footer",{ref:t,className:novaCore.cn("novacon:flex novacon:w-full novacon:items-center novacon:justify-between novacon:border-t novacon:border-[var(--tuwa-border-primary)] novacon:p-4",o),role:"contentinfo",...r,children:e}));oe.displayName="DefaultFooter";var ee=react.forwardRef(({className:o,onClick:e,children:a,modalData:r,...t},f)=>jsxRuntime.jsx("button",{ref:f,type:"button",onClick:e,className:novaCore.cn(novaCore.standardButtonClasses,o),...t,children:a}));ee.displayName="DefaultBackButton";var te=react.forwardRef(({className:o,onClick:e,children:a,disabled:r,loading:t,buttonConfig:f,modalData:u,...R},B)=>jsxRuntime.jsx("button",{ref:B,type:"button",onClick:e,disabled:r||t,className:novaCore.cn(novaCore.standardButtonClasses,o),...R,children:t?"Loading...":a}));te.displayName="DefaultActionButton";var ne=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("span",{ref:t,className:novaCore.cn("novacon:sr-only",o),...r,children:e}));ne.displayName="DefaultActionDescription";var re=react.forwardRef(({children:o,className:e,...a},r)=>{let{modalData:t,...f}=a;return jsxRuntime.jsx("div",{ref:r,className:e,...f,children:o})});re.displayName="DefaultEmptyState";var No=react.memo(({appChains:o,solanaRPCUrls:e,withImpersonated:a,customization:r={}})=>{let{isConnectModalOpen:t,setIsConnectModalOpen:f,setConnectModalContentType:u,setActiveConnector:R,setImpersonatedAddress:B,setIsConnected:N,connectModalContentType:y,selectedAdapter:d,setSelectedAdapter:O,isConnected:S,activeConnector:D,impersonatedAddress:E}=chunk7FTV55DQ_cjs.d(),M=chunkOA6MB7CZ_cjs.h(c=>c.walletConnectionError),x=chunkOA6MB7CZ_cjs.h(c=>c.getConnectors),s=chunkOA6MB7CZ_cjs.h(c=>c.connect),H=chunkOA6MB7CZ_cjs.h(c=>c.activeWallet),m=chunk7FTV55DQ_cjs.h(),z=react.useContext(chunkOA6MB7CZ_cjs.f),C=react.useMemo(()=>{if(t)return x()},[t,x]),T=react.useMemo(()=>chunkY3SFEPYJ_cjs.f({connectors:C,selectedAdapter:d}),[C,d]),F=react.useMemo(()=>M?typeof M=="string"?new Error(M):M:null,[M]),n=react.useMemo(()=>({contentType:y,selectedAdapter:d,activeConnector:D,impersonatedAddress:E,isConnected:S,isOpen:t,error:F,connectors:C,filteredConnectors:T,labels:m}),[y,d,D,E,S,t,F,C,T,m]);react.useEffect(()=>{t&&(u("connectors"),O(void 0),R(void 0),B(""),N(false));},[t]);let{components:v={},classNames:g={},handlers:p={},config:h={},childComponents:l={}}=r,b=v.ModalContainer||qo,P=v.ModalHeader||Jo,V=v.InfoButton||Qo,_=v.Title||Xo,q=v.CloseButton||Yo,J=v.MainContent||Zo,Q=v.Footer||oe,so=v.BackButton||ee,X=v.ActionButton||te,io=v.ActionDescription||ne,G=v.EmptyState||re,Co=v.Dialog||novaCore.Dialog,lo=v.DialogContent||novaCore.DialogContent,eo=v.MotionDiv||framerMotion.motion.div,to=react.useCallback(()=>{switch(y){case "about":return m.aboutWallets;case "getWallet":return m.getWallet;case "connecting":return d&&D&&C&&He(C[d],D)||m.connectingEllipsis;case "impersonate":return m.connectImpersonatedWallet;default:return m.connectWallet}},[y,d,D,C,m]),Y=react.useCallback(()=>"connectors",[y]),Z=react.useCallback(c=>{p?.onOpenChange?p.onOpenChange(c,n):f(c);},[p?.onOpenChange,n,f]),fo=react.useCallback(()=>{let c=()=>u(Y());p?.onBack?p.onBack(n,c):c();},[p?.onBack,n,u,Y]),vo=react.useCallback(()=>{p?.onInfoClick?p.onInfoClick(n):u("about");},[p?.onInfoClick,n,u]),$=react.useCallback(async(c,yo)=>{await s({walletType:c,chainId:chunkY3SFEPYJ_cjs.b({appChains:o,selectedAdapter:yo,solanaRPCUrls:e})});try{await orbitCore.waitFor(()=>z?.getState().activeWallet?.isConnected),N(!0);let go=setTimeout(()=>f(!1),400),le=setTimeout(()=>N(!1),500);await orbitCore.delay(null,500),clearTimeout(go),clearTimeout(le);}catch(go){console.error(go);}},[s,o,d,e]),j=react.useCallback(async(c,yo)=>{O(c),u("connecting"),await $(yo,c);},[$]),Bo=react.useCallback(c=>{R(orbitCore.formatWalletName(c.name)),c.adapters.length===1?(O(c.adapters[0]),u(orbitCore.formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting")):d?u(orbitCore.formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting"):orbitCore.formatWalletName(c.name)==="impersonatedwallet"?u("impersonate"):u("network");},[d]),se=react.useCallback(()=>{switch(y){case "network":return jsxRuntime.jsx(chunkY3SFEPYJ_cjs.L,{activeConnector:D,connectors:T,onClick:j,customization:l.networkSelections});case "connectors":return C?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(chunkY3SFEPYJ_cjs.M,{networks:Object.keys(C),selectedAdapter:d,onSelect:c=>O(c),customization:l.networkTabs}),jsxRuntime.jsx(chunkY3SFEPYJ_cjs.I,{isOnlyOneNetwork:Object.keys(C).length===1,connectors:T,selectedAdapter:d,onClick:Bo,setContentType:u,appChains:o,solanaRPCUrls:e,setIsConnected:N,setIsOpen:f,withImpersonated:a,customization:l.connectorsSelections})]}):jsxRuntime.jsx(G,{className:g.emptyConnectors?.({modalData:n}),modalData:n,children:"No connectors available"});case "about":return jsxRuntime.jsx(chunkY3SFEPYJ_cjs.C,{customization:l.aboutWallets});case "getWallet":return jsxRuntime.jsx(chunkY3SFEPYJ_cjs.J,{customization:l.getWallet});case "connecting":return jsxRuntime.jsx(chunkY3SFEPYJ_cjs.F,{selectedAdapter:d,connectors:T,activeConnector:D,isConnected:S,customization:l.connecting});case "impersonate":return jsxRuntime.jsx(chunkY3SFEPYJ_cjs.K,{impersonatedAddress:E,setImpersonatedAddress:B,customization:l.impersonateForm})}},[y,D,T,j,l,C,d,Bo,S,E]),K=react.useCallback(()=>{switch(y){case "connectors":return {title:m.iDontHaveWallet,onClick:()=>{p.onActionClick?.connectors?p.onActionClick.connectors(n):u("getWallet");}};case "getWallet":return {title:m.choseWallet,onClick:()=>{p.onActionClick?.getWallet?p.onActionClick.getWallet(n):window.open(chunkY3SFEPYJ_cjs.i[d??Object.keys(C)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:m.learnMore,onClick:()=>{p.onActionClick?.about?p.onActionClick.about(n):window.open(chunkY3SFEPYJ_cjs.i[d??Object.keys(C)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:m.connect,onClick:async()=>{if(p.onActionClick?.impersonate)await p.onActionClick.impersonate(n);else {let c=E.trim();if(M||!c||gill.isAddress(c)||H?.isConnected)return;orbitCore.impersonatedHelpers.setImpersonated(c),await $(`${d??orbitCore.OrbitAdapter.EVM}:impersonatedwallet`,d??orbitCore.OrbitAdapter.EVM),u("connecting");}}};case "connecting":return M&&d&&D?{title:m.tryAgain,onClick:async()=>{p.onActionClick?.connecting?await p.onActionClick.connecting(n):await $(orbitCore.getWalletTypeFromConnectorName(d,D),d);}}:void 0}},[y,m,p,n,d,C,E,M,$,D])(),ie=react.useCallback(()=>{switch(y){case "getWallet":return "Opens external wallet selection page";case "about":return "Opens external documentation";case "impersonate":return "Connects with impersonated wallet address";case "connecting":return "Retries wallet connection";default:return ""}},[y]);return jsxRuntime.jsx(Co,{open:t,onOpenChange:Z,children:jsxRuntime.jsx(lo,{className:novaCore.cn("novacon:w-full novacon:sm:max-w-md"),children:jsxRuntime.jsx(eo,{layout:true,transition:{layout:{duration:h.animation?.disabled?0:h.animation?.layoutDuration??1e-4}},children:jsxRuntime.jsxs(b,{className:g.modalContainer?.({modalData:n}),modalData:n,children:[jsxRuntime.jsxs(P,{className:g.header?.({modalData:n}),modalData:n,children:[jsxRuntime.jsxs(_,{className:g.title?.({modalData:n}),modalData:n,children:[y==="connectors"&&jsxRuntime.jsx(V,{className:g.infoButton?.({modalData:n}),onClick:vo,"aria-label":h.ariaLabels?.infoButton?.(n)||`${m.learnMore} ${m.aboutWallets}`,modalData:n}),to()]}),jsxRuntime.jsx(q,{className:g.closeButton?.({modalData:n}),onClick:()=>Z(false),"aria-label":h.ariaLabels?.closeButton?.(n)||m.closeModal,modalData:n})]}),jsxRuntime.jsx(J,{className:g.mainContent?.({modalData:n}),modalData:n,children:se()}),jsxRuntime.jsxs(Q,{className:g.footer?.({modalData:n}),modalData:n,children:[jsxRuntime.jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:y!=="connectors"&&jsxRuntime.jsx(so,{className:g.backButton?.({modalData:n}),onClick:fo,"aria-label":h.ariaLabels?.backButton?.(n)||`${m.back} to previous step`,modalData:n,children:m.back})}),K&&jsxRuntime.jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsxRuntime.jsx(X,{className:g.actionButton?.({modalData:n,buttonConfig:K}),onClick:K.onClick,disabled:K.disabled,loading:K.loading,"aria-describedby":"bottom-action-description",modalData:n,buttonConfig:K,children:K.title}),jsxRuntime.jsx(io,{id:"bottom-action-description",className:g.actionDescription?.({modalData:n}),modalData:n,children:ie()})]})]})]})})})})});No.displayName="ConnectModal";var Fe=({labels:o,children:e})=>jsxRuntime.jsx(Po,{labels:o,children:e}),Ve=({customization:o})=>jsxRuntime.jsx(Mo,{customization:o}),Ue=(o,e)=>novaCore.deepMerge(o,e||{}),Ge=o=>o,$e=o=>o,je=(o,e,a)=>o;function Ke({labels:o,children:e,appChains:a,solanaRPCUrls:r,transactionPool:t,pulsarAdapter:f,withImpersonated:u,withBalance:R,withChain:B,customization:N}){let y=chunkOA6MB7CZ_cjs.h(j=>j.activeWallet),d=chunkOA6MB7CZ_cjs.h(j=>j.walletConnectionError),{LabelsProvider:O=Fe,ErrorsProvider:S=Ve}=N?.components??{},{merge:D=Ue,transform:E=Ge}=N?.labels??{},{transform:M=$e}=N?.contextValue??{},{providerTree:x=je}=N?.rendering??{},s=react.useMemo(()=>D(chunkQERPNHKX_cjs.a,o||{}),[o,D]),[H,m]=react.useState(false),[z,C]=react.useState(false),[T,F]=react.useState(false),[n,v]=react.useState(false),[g,p]=react.useState("idle"),[h,l]=react.useState("connectors"),[b,P]=react.useState(void 0),[V,_]=react.useState(void 0),[q,J]=react.useState(""),[Q,so]=react.useState(false),[X,io]=react.useState("main"),G=react.useMemo(()=>({isConnected:Q,activeWallet:y,walletConnectionError:d,modalStates:{isConnectModalOpen:H,isConnectedModalOpen:z,isChainsListOpen:T,isChainsListOpenMobile:n},contentTypes:{connectModal:h,connectedModal:X},statuses:{connectedButton:g}}),[Q,y,d,H,z,T,n,h,X,g]),Co=react.useMemo(()=>E(s,G),[s,E,G]),lo=react.useMemo(()=>M({appChains:a,solanaRPCUrls:r,withImpersonated:u,withBalance:R,withChain:B,isConnectModalOpen:H,setIsConnectModalOpen:m,isConnectedModalOpen:z,setIsConnectedModalOpen:C,isChainsListOpen:T,setIsChainsListOpen:F,isChainsListOpenMobile:n,setIsChainsListOpenMobile:v,connectedButtonStatus:g,setConnectedButtonStatus:p,connectedModalContentType:X,setConnectedModalContentType:io,connectModalContentType:h,setConnectModalContentType:l,selectedAdapter:b,setSelectedAdapter:P,activeConnector:V,setActiveConnector:_,impersonatedAddress:q,setImpersonatedAddress:J,isConnected:Q,setIsConnected:so},G),[a,r,u,R,B,H,m,z,C,T,F,n,v,g,p,X,io,h,l,b,P,V,_,q,J,Q,so,M,G]),eo=jsxRuntime.jsx(S,{customization:N?.errors}),to=jsxRuntime.jsx(O,{labels:Co,children:e}),Y=a||r?jsxRuntime.jsx(No,{withImpersonated:u,solanaRPCUrls:r,appChains:a,customization:N?.modals?.connectModal}):null,Z=a||r?jsxRuntime.jsx(chunkY3SFEPYJ_cjs.B,{solanaRPCUrls:r,appChains:a,transactionPool:t,pulsarAdapter:f,customization:N?.modals?.connectedModal}):null,fo=jsxRuntime.jsxs(chunk7FTV55DQ_cjs.c.Provider,{value:lo,children:[eo,to,Y,Z]}),vo=jsxRuntime.jsxs(chunk7FTV55DQ_cjs.c.Provider,{value:lo,children:[eo,to,Y,Z]}),$=x(vo,{ErrorsProvider:eo,LabelsProvider:to,MainContent:fo,ConnectModal:Y||jsxRuntime.jsx(jsxRuntime.Fragment,{}),ConnectedModal:Z||jsxRuntime.jsx(jsxRuntime.Fragment,{})},G);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:$})}Ke.displayName="NovaConnectProvider";async function qn(){let{getAllAdaptersStatus:o}=await import('./getChainsListByWalletType-CDPECVNS.cjs');return {hasEvmUtils:await ho(),hasSolanaUtils:await wo(),adaptersStatus:o()}}async function ho(){try{return await import('./utils-DZB4ZTS4.cjs'),!0}catch{return false}}async function wo(){try{return await import('./utils-H5O25MTI.cjs'),!0}catch{return false}}async function Jn(){try{return {available:!0,...await import('./evm/index.cjs')}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function Qn(){try{return {available:!0,...await import('./solana/index.cjs')}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function Xn(){let o={evm:false,solana:false,errors:[]};try{let{preloadChainAdapters:e}=await import('./getChainsListByWalletType-CDPECVNS.cjs');await e([orbitCore.OrbitAdapter.EVM,orbitCore.OrbitAdapter.SOLANA]),o.evm=await ho(),o.solana=await wo();}catch(e){let a=e instanceof Error?e.message:"Unknown initialization error";o.errors.push(a);}return o}async function Yn(o){switch(o){case orbitCore.OrbitAdapter.EVM:return ho();case orbitCore.OrbitAdapter.SOLANA:return wo();case orbitCore.OrbitAdapter.Starknet:return false;default:return false}}Object.defineProperty(exports,"getAvailableChainIds",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.c}});Object.defineProperty(exports,"getAvailableSolanaClusters",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.j}});Object.defineProperty(exports,"getConnectChainId",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.b}});Object.defineProperty(exports,"getFilteredConnectors",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.f}});Object.defineProperty(exports,"getGroupedConnectors",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.d}});Object.defineProperty(exports,"getNetworkIcon",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.h}});Object.defineProperty(exports,"hasAvailableConnectors",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.e}});Object.defineProperty(exports,"hasConnectorsForAdapter",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.g}});Object.defineProperty(exports,"isValidSolanaCluster",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.k}});Object.defineProperty(exports,"networksLinks",{enumerable:true,get:function(){return chunkY3SFEPYJ_cjs.i}});Object.defineProperty(exports,"getAdapterStatus",{enumerable:true,get:function(){return chunkNMQZA377_cjs.k}});Object.defineProperty(exports,"getAllAdaptersStatus",{enumerable:true,get:function(){return chunkNMQZA377_cjs.l}});Object.defineProperty(exports,"getAvailableSolanaClustersAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.g}});Object.defineProperty(exports,"getChainsListByWalletType",{enumerable:true,get:function(){return chunkNMQZA377_cjs.b}});Object.defineProperty(exports,"getChainsListByWalletTypeAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.a}});Object.defineProperty(exports,"getChainsListByWalletTypeSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.b}});Object.defineProperty(exports,"getWalletChains",{enumerable:true,get:function(){return chunkNMQZA377_cjs.i}});Object.defineProperty(exports,"isEvmChainList",{enumerable:true,get:function(){return chunkNMQZA377_cjs.e}});Object.defineProperty(exports,"isEvmChainListAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.c}});Object.defineProperty(exports,"isEvmChainListSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.e}});Object.defineProperty(exports,"isSolanaChainList",{enumerable:true,get:function(){return chunkNMQZA377_cjs.f}});Object.defineProperty(exports,"isSolanaChainListAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.d}});Object.defineProperty(exports,"isSolanaChainListSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.f}});Object.defineProperty(exports,"isValidSolanaClusterAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.h}});Object.defineProperty(exports,"preloadChainAdapters",{enumerable:true,get:function(){return chunkNMQZA377_cjs.j}});Object.defineProperty(exports,"NovaConnectLabelsContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.g}});Object.defineProperty(exports,"NovaConnectProviderContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.c}});Object.defineProperty(exports,"NovaConnectProviderError",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.b}});Object.defineProperty(exports,"createLabelsSubset",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.o}});Object.defineProperty(exports,"getLabelWithFallback",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.n}});Object.defineProperty(exports,"hasLabel",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.k}});Object.defineProperty(exports,"isDefaultLabels",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.m}});Object.defineProperty(exports,"useGetWalletNameAndAvatar",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.a}});Object.defineProperty(exports,"useHasNovaConnectContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.e}});Object.defineProperty(exports,"useLabelsByCategory",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.l}});Object.defineProperty(exports,"useNovaConnect",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.d}});Object.defineProperty(exports,"useNovaConnectLabel",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.i}});Object.defineProperty(exports,"useNovaConnectLabels",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.h}});Object.defineProperty(exports,"useNovaConnectLabelsSubset",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.j}});Object.defineProperty(exports,"useNovaConnectOptional",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.f}});Object.defineProperty(exports,"useWalletNativeBalance",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.p}});exports.ErrorsProvider=Mo;exports.NovaConnectLabelsProvider=Po;exports.NovaConnectProvider=Ke;exports.getBlockchainUtilities=qn;exports.getEvmUtils=Jn;exports.getSolanaUtils=Qn;exports.initializeBlockchainSupport=Xn;exports.isAdapterSupported=Yn;//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var chunkB26D6OI7_cjs=require('./chunk-B26D6OI7.cjs'),chunkNMQZA377_cjs=require('./chunk-NMQZA377.cjs'),chunk7FTV55DQ_cjs=require('./chunk-7FTV55DQ.cjs'),chunkQERPNHKX_cjs=require('./chunk-QERPNHKX.cjs'),chunkOA6MB7CZ_cjs=require('./chunk-OA6MB7CZ.cjs'),orbitCore=require('@tuwaio/orbit-core'),novaCore=require('@tuwaio/nova-core'),react=require('react'),reactToastify=require('react-toastify'),jsxRuntime=require('react/jsx-runtime'),outline=require('@heroicons/react/24/outline'),framerMotion=require('framer-motion'),gill=require('gill');var pe=({title:o,rawError:e,onCopyComplete:a,errorType:r,isConnected:t,...f})=>jsxRuntime.jsx(chunkB26D6OI7_cjs.N,{title:o,rawError:e,onCopyComplete:a,customization:f.customization}),ue=o=>{let e=chunk7FTV55DQ_cjs.h();return jsxRuntime.jsx(reactToastify.ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":e.somethingWentWrong})},Ce=(o,e)=>{o(e.title,e.rawError,e.errorKey);},fe=o=>{o();},ve=(o,e)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",e.substring(0,100));},ye=o=>o,ge=o=>o;function Mo({containerId:o="nova-connect-errors",position:e="top-center",autoClose:a=7e3,draggable:r=false,customization:t}){let f=chunk7FTV55DQ_cjs.h(),u=chunkOA6MB7CZ_cjs.h(l=>l.switchNetworkError),R=chunkOA6MB7CZ_cjs.h(l=>l.activeWallet),B=chunkOA6MB7CZ_cjs.h(l=>l.walletConnectionError),{ToastError:N=pe,Container:y=ue}=t?.components??{},{showError:d=Ce,dismissError:O=fe,onCopyComplete:S=ve}=t?.handlers??{},{errorTitle:D=ye,errorHash:E=ge}=t??{},M=react.useRef(new Set),x=react.useRef(null),s=react.useMemo(()=>{let l=!!B,b=!!u,P=!!R?.isConnected;return {hasWalletError:l,hasSwitchError:b,isConnected:P,hasAnyError:l||b,primaryError:B||u||null,errorType:l?"wallet":b?"switch":null}},[B,u,R?.isConnected]),H=react.useMemo(()=>{switch(s.errorType){case "wallet":return f.walletConnectionError;case "switch":return f.errorWhenChainSwitching;default:return f.somethingWentWrong}},[s.errorType,f]),m=react.useMemo(()=>D(H,{errorType:s.errorType}),[D,H,s.errorType]),z=react.useMemo(()=>s.primaryError?`${s.errorType}-${s.primaryError.substring(0,50)}`:null,[s.primaryError,s.errorType]),C=react.useMemo(()=>E(z,{primaryError:s.primaryError,errorType:s.errorType}),[E,z,s.primaryError,s.errorType]),T=react.useCallback(()=>{O(()=>{x.current&&(reactToastify.toast.dismiss(x.current),x.current=null),reactToastify.toast.dismiss({containerId:o});});},[o,O]),F=react.useCallback((l,b)=>{S(l,b,s.errorType);},[S,s.errorType]),n=react.useCallback((l,b,P)=>{if(T(),!M.current.has(P))try{let V={containerId:o,toastId:P,onClose:()=>{M.current.delete(P),x.current=null;}},_=t?.toastOptions?.error?.({title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected}),q={...V,..._};reactToastify.toast.error(jsxRuntime.jsx(N,{title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected,onCopyComplete:J=>F(J,b),customization:t?.toastErrorCustomization}),q),M.current.add(P),x.current=P;}catch(V){console.error("Failed to show error toast:",V);}},[T,o,t?.toastOptions?.error,t?.toastErrorCustomization,N,s.errorType,s.isConnected,F]),v=react.useCallback((l,b,P)=>{d(n,{title:l,rawError:b,errorKey:P,errorType:s.errorType});},[n,d,s.errorType]);react.useEffect(()=>{let{hasAnyError:l,isConnected:b,primaryError:P}=s;if(b&&!l){T(),M.current.clear();return}if(l&&P&&C){if(b&&s.errorType!=="switch")return;v(m,P,C);}},[s,m,C,v,T]),react.useEffect(()=>()=>{T(),M.current.clear();},[T]);let g=react.useMemo(()=>t?.classNames?.container?t.classNames.container({hasErrors:s.hasAnyError,errorType:s.errorType}):"novacon:p-0 novacon:bg-transparent",[t,s.hasAnyError,s.errorType]),p=react.useMemo(()=>({containerId:o,position:e,closeOnClick:false,icon:false,closeButton:novaCore.ToastCloseButton,autoClose:a,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:r,pauseOnHover:true,theme:"light",transition:reactToastify.Bounce}),[o,e,a,r]),h=react.useMemo(()=>({...p,...t?.containerProps,className:g}),[p,t?.containerProps,g]);return jsxRuntime.jsx(y,{...h})}Mo.displayName="ErrorsProvider";function Po({labels:o,children:e}){let a=react.useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let t=["connectWallet","disconnect","connecting","connected","error","success"].filter(f=>!(f in o));t.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${t.join(", ")}`);}return jsxRuntime.jsx(chunk7FTV55DQ_cjs.g.Provider,{value:a,children:e})}Po.displayName="NovaConnectLabelsProvider";function He(o,e){if(!o||!Array.isArray(o)||!e)return;let a=o.find(r=>r&&typeof r=="object"&&"name"in r&&typeof r.name=="string"?orbitCore.formatWalletName(r.name)===e:false);return a&&typeof a=="object"&&"name"in a&&typeof a.name=="string"?a.name:void 0}var qo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("div",{ref:t,className:novaCore.cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...r,children:e}));qo.displayName="DefaultModalContainer";var Jo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("div",{ref:t,className:o,...r,children:jsxRuntime.jsx(novaCore.DialogHeader,{children:e})}));Jo.displayName="DefaultModalHeader";var Qo=react.forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsxRuntime.jsx("button",{ref:t,className:novaCore.cn("novacon:cursor-pointer novacon:text-[var(--tuwa-text-secondary)] novacon:transition novacon:duration-300 novacon:ease-in-out novacon:active:scale-75 novacon:hover:scale-110",o),type:"button",onClick:e,...r,children:jsxRuntime.jsx(outline.InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Qo.displayName="DefaultInfoButton";var Xo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx(novaCore.DialogTitle,{ref:t,className:novaCore.cn("novacon:flex novacon:items-center",o),...r,children:e}));Xo.displayName="DefaultTitle";var Yo=react.forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{ref:t,type:"button",onClick:e,className:novaCore.cn("novacon:cursor-pointer novacon:rounded-full novacon:p-1 novacon:text-[var(--tuwa-text-tertiary)] novacon:transition-colors novacon:hover:bg-[var(--tuwa-bg-muted)] novacon:hover:text-[var(--tuwa-text-primary)]",o),...r,children:jsxRuntime.jsx(novaCore.CloseIcon,{"aria-hidden":"true"})})}));Yo.displayName="DefaultCloseButton";var Zo=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("main",{ref:t,className:novaCore.cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...r,children:e}));Zo.displayName="DefaultMainContent";var oe=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("footer",{ref:t,className:novaCore.cn("novacon:flex novacon:w-full novacon:items-center novacon:justify-between novacon:border-t novacon:border-[var(--tuwa-border-primary)] novacon:p-4",o),role:"contentinfo",...r,children:e}));oe.displayName="DefaultFooter";var ee=react.forwardRef(({className:o,onClick:e,children:a,modalData:r,...t},f)=>jsxRuntime.jsx("button",{ref:f,type:"button",onClick:e,className:novaCore.cn(novaCore.standardButtonClasses,o),...t,children:a}));ee.displayName="DefaultBackButton";var te=react.forwardRef(({className:o,onClick:e,children:a,disabled:r,loading:t,buttonConfig:f,modalData:u,...R},B)=>jsxRuntime.jsx("button",{ref:B,type:"button",onClick:e,disabled:r||t,className:novaCore.cn(novaCore.standardButtonClasses,o),...R,children:t?"Loading...":a}));te.displayName="DefaultActionButton";var ne=react.forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsxRuntime.jsx("span",{ref:t,className:novaCore.cn("novacon:sr-only",o),...r,children:e}));ne.displayName="DefaultActionDescription";var re=react.forwardRef(({children:o,className:e,...a},r)=>{let{modalData:t,...f}=a;return jsxRuntime.jsx("div",{ref:r,className:e,...f,children:o})});re.displayName="DefaultEmptyState";var No=react.memo(({appChains:o,solanaRPCUrls:e,withImpersonated:a,customization:r={}})=>{let{isConnectModalOpen:t,setIsConnectModalOpen:f,setConnectModalContentType:u,setActiveConnector:R,setImpersonatedAddress:B,setIsConnected:N,connectModalContentType:y,selectedAdapter:d,setSelectedAdapter:O,isConnected:S,activeConnector:D,impersonatedAddress:E}=chunk7FTV55DQ_cjs.d(),M=chunkOA6MB7CZ_cjs.h(c=>c.walletConnectionError),x=chunkOA6MB7CZ_cjs.h(c=>c.getConnectors),s=chunkOA6MB7CZ_cjs.h(c=>c.connect),H=chunkOA6MB7CZ_cjs.h(c=>c.activeWallet),m=chunk7FTV55DQ_cjs.h(),z=react.useContext(chunkOA6MB7CZ_cjs.f),C=react.useMemo(()=>{if(t)return x()},[t,x]),T=react.useMemo(()=>chunkB26D6OI7_cjs.f({connectors:C,selectedAdapter:d}),[C,d]),F=react.useMemo(()=>M?typeof M=="string"?new Error(M):M:null,[M]),n=react.useMemo(()=>({contentType:y,selectedAdapter:d,activeConnector:D,impersonatedAddress:E,isConnected:S,isOpen:t,error:F,connectors:C,filteredConnectors:T,labels:m}),[y,d,D,E,S,t,F,C,T,m]);react.useEffect(()=>{t&&(u("connectors"),O(void 0),R(void 0),B(""),N(false));},[t]);let{components:v={},classNames:g={},handlers:p={},config:h={},childComponents:l={}}=r,b=v.ModalContainer||qo,P=v.ModalHeader||Jo,V=v.InfoButton||Qo,_=v.Title||Xo,q=v.CloseButton||Yo,J=v.MainContent||Zo,Q=v.Footer||oe,so=v.BackButton||ee,X=v.ActionButton||te,io=v.ActionDescription||ne,G=v.EmptyState||re,Co=v.Dialog||novaCore.Dialog,lo=v.DialogContent||novaCore.DialogContent,eo=v.MotionDiv||framerMotion.motion.div,to=react.useCallback(()=>{switch(y){case "about":return m.aboutWallets;case "getWallet":return m.getWallet;case "connecting":return d&&D&&C&&He(C[d],D)||m.connectingEllipsis;case "impersonate":return m.connectImpersonatedWallet;default:return m.connectWallet}},[y,d,D,C,m]),Y=react.useCallback(()=>"connectors",[y]),Z=react.useCallback(c=>{p?.onOpenChange?p.onOpenChange(c,n):f(c);},[p?.onOpenChange,n,f]),fo=react.useCallback(()=>{let c=()=>u(Y());p?.onBack?p.onBack(n,c):c();},[p?.onBack,n,u,Y]),vo=react.useCallback(()=>{p?.onInfoClick?p.onInfoClick(n):u("about");},[p?.onInfoClick,n,u]),$=react.useCallback(async(c,yo)=>{await s({walletType:c,chainId:chunkB26D6OI7_cjs.b({appChains:o,selectedAdapter:yo,solanaRPCUrls:e})});try{await orbitCore.waitFor(()=>z?.getState().activeWallet?.isConnected),N(!0);let go=setTimeout(()=>f(!1),400),le=setTimeout(()=>N(!1),500);await orbitCore.delay(null,500),clearTimeout(go),clearTimeout(le);}catch(go){console.error(go);}},[s,o,d,e]),j=react.useCallback(async(c,yo)=>{O(c),u("connecting"),await $(yo,c);},[$]),Bo=react.useCallback(c=>{R(orbitCore.formatWalletName(c.name)),c.adapters.length===1?(O(c.adapters[0]),u(orbitCore.formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting")):d?u(orbitCore.formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting"):orbitCore.formatWalletName(c.name)==="impersonatedwallet"?u("impersonate"):u("network");},[d]),se=react.useCallback(()=>{switch(y){case "network":return jsxRuntime.jsx(chunkB26D6OI7_cjs.L,{activeConnector:D,connectors:T,onClick:j,customization:l.networkSelections});case "connectors":return C?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(chunkB26D6OI7_cjs.M,{networks:Object.keys(C),selectedAdapter:d,onSelect:c=>O(c),customization:l.networkTabs}),jsxRuntime.jsx(chunkB26D6OI7_cjs.I,{isOnlyOneNetwork:Object.keys(C).length===1,connectors:T,selectedAdapter:d,onClick:Bo,setContentType:u,appChains:o,solanaRPCUrls:e,setIsConnected:N,setIsOpen:f,withImpersonated:a,customization:l.connectorsSelections})]}):jsxRuntime.jsx(G,{className:g.emptyConnectors?.({modalData:n}),modalData:n,children:"No connectors available"});case "about":return jsxRuntime.jsx(chunkB26D6OI7_cjs.C,{customization:l.aboutWallets});case "getWallet":return jsxRuntime.jsx(chunkB26D6OI7_cjs.J,{customization:l.getWallet});case "connecting":return jsxRuntime.jsx(chunkB26D6OI7_cjs.F,{selectedAdapter:d,connectors:T,activeConnector:D,isConnected:S,customization:l.connecting});case "impersonate":return jsxRuntime.jsx(chunkB26D6OI7_cjs.K,{impersonatedAddress:E,setImpersonatedAddress:B,customization:l.impersonateForm})}},[y,D,T,j,l,C,d,Bo,S,E]),K=react.useCallback(()=>{switch(y){case "connectors":return {title:m.iDontHaveWallet,onClick:()=>{p.onActionClick?.connectors?p.onActionClick.connectors(n):u("getWallet");}};case "getWallet":return {title:m.choseWallet,onClick:()=>{p.onActionClick?.getWallet?p.onActionClick.getWallet(n):window.open(chunkB26D6OI7_cjs.i[d??Object.keys(C)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:m.learnMore,onClick:()=>{p.onActionClick?.about?p.onActionClick.about(n):window.open(chunkB26D6OI7_cjs.i[d??Object.keys(C)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:m.connect,onClick:async()=>{if(p.onActionClick?.impersonate)await p.onActionClick.impersonate(n);else {let c=E.trim();if(M||!c||gill.isAddress(c)||H?.isConnected)return;orbitCore.impersonatedHelpers.setImpersonated(c),await $(`${d??orbitCore.OrbitAdapter.EVM}:impersonatedwallet`,d??orbitCore.OrbitAdapter.EVM),u("connecting");}}};case "connecting":return M&&d&&D?{title:m.tryAgain,onClick:async()=>{p.onActionClick?.connecting?await p.onActionClick.connecting(n):await $(orbitCore.getWalletTypeFromConnectorName(d,D),d);}}:void 0}},[y,m,p,n,d,C,E,M,$,D])(),ie=react.useCallback(()=>{switch(y){case "getWallet":return "Opens external wallet selection page";case "about":return "Opens external documentation";case "impersonate":return "Connects with impersonated wallet address";case "connecting":return "Retries wallet connection";default:return ""}},[y]);return jsxRuntime.jsx(Co,{open:t,onOpenChange:Z,children:jsxRuntime.jsx(lo,{className:novaCore.cn("novacon:w-full novacon:sm:max-w-md"),children:jsxRuntime.jsx(eo,{layout:true,transition:{layout:{duration:h.animation?.disabled?0:h.animation?.layoutDuration??1e-4}},children:jsxRuntime.jsxs(b,{className:g.modalContainer?.({modalData:n}),modalData:n,children:[jsxRuntime.jsxs(P,{className:g.header?.({modalData:n}),modalData:n,children:[jsxRuntime.jsxs(_,{className:g.title?.({modalData:n}),modalData:n,children:[y==="connectors"&&jsxRuntime.jsx(V,{className:g.infoButton?.({modalData:n}),onClick:vo,"aria-label":h.ariaLabels?.infoButton?.(n)||`${m.learnMore} ${m.aboutWallets}`,modalData:n}),to()]}),jsxRuntime.jsx(q,{className:g.closeButton?.({modalData:n}),onClick:()=>Z(false),"aria-label":h.ariaLabels?.closeButton?.(n)||m.closeModal,modalData:n})]}),jsxRuntime.jsx(J,{className:g.mainContent?.({modalData:n}),modalData:n,children:se()}),jsxRuntime.jsxs(Q,{className:g.footer?.({modalData:n}),modalData:n,children:[jsxRuntime.jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:y!=="connectors"&&jsxRuntime.jsx(so,{className:g.backButton?.({modalData:n}),onClick:fo,"aria-label":h.ariaLabels?.backButton?.(n)||`${m.back} to previous step`,modalData:n,children:m.back})}),K&&jsxRuntime.jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsxRuntime.jsx(X,{className:g.actionButton?.({modalData:n,buttonConfig:K}),onClick:K.onClick,disabled:K.disabled,loading:K.loading,"aria-describedby":"bottom-action-description",modalData:n,buttonConfig:K,children:K.title}),jsxRuntime.jsx(io,{id:"bottom-action-description",className:g.actionDescription?.({modalData:n}),modalData:n,children:ie()})]})]})]})})})})});No.displayName="ConnectModal";var Fe=({labels:o,children:e})=>jsxRuntime.jsx(Po,{labels:o,children:e}),Ve=({customization:o})=>jsxRuntime.jsx(Mo,{customization:o}),Ue=(o,e)=>novaCore.deepMerge(o,e||{}),Ge=o=>o,$e=o=>o,je=(o,e,a)=>o;function Ke({labels:o,children:e,appChains:a,solanaRPCUrls:r,transactionPool:t,pulsarAdapter:f,withImpersonated:u,withBalance:R,withChain:B,customization:N}){let y=chunkOA6MB7CZ_cjs.h(j=>j.activeWallet),d=chunkOA6MB7CZ_cjs.h(j=>j.walletConnectionError),{LabelsProvider:O=Fe,ErrorsProvider:S=Ve}=N?.components??{},{merge:D=Ue,transform:E=Ge}=N?.labels??{},{transform:M=$e}=N?.contextValue??{},{providerTree:x=je}=N?.rendering??{},s=react.useMemo(()=>D(chunkQERPNHKX_cjs.a,o||{}),[o,D]),[H,m]=react.useState(false),[z,C]=react.useState(false),[T,F]=react.useState(false),[n,v]=react.useState(false),[g,p]=react.useState("idle"),[h,l]=react.useState("connectors"),[b,P]=react.useState(void 0),[V,_]=react.useState(void 0),[q,J]=react.useState(""),[Q,so]=react.useState(false),[X,io]=react.useState("main"),G=react.useMemo(()=>({isConnected:Q,activeWallet:y,walletConnectionError:d,modalStates:{isConnectModalOpen:H,isConnectedModalOpen:z,isChainsListOpen:T,isChainsListOpenMobile:n},contentTypes:{connectModal:h,connectedModal:X},statuses:{connectedButton:g}}),[Q,y,d,H,z,T,n,h,X,g]),Co=react.useMemo(()=>E(s,G),[s,E,G]),lo=react.useMemo(()=>M({appChains:a,solanaRPCUrls:r,withImpersonated:u,withBalance:R,withChain:B,isConnectModalOpen:H,setIsConnectModalOpen:m,isConnectedModalOpen:z,setIsConnectedModalOpen:C,isChainsListOpen:T,setIsChainsListOpen:F,isChainsListOpenMobile:n,setIsChainsListOpenMobile:v,connectedButtonStatus:g,setConnectedButtonStatus:p,connectedModalContentType:X,setConnectedModalContentType:io,connectModalContentType:h,setConnectModalContentType:l,selectedAdapter:b,setSelectedAdapter:P,activeConnector:V,setActiveConnector:_,impersonatedAddress:q,setImpersonatedAddress:J,isConnected:Q,setIsConnected:so},G),[a,r,u,R,B,H,m,z,C,T,F,n,v,g,p,X,io,h,l,b,P,V,_,q,J,Q,so,M,G]),eo=jsxRuntime.jsx(S,{customization:N?.errors}),to=jsxRuntime.jsx(O,{labels:Co,children:e}),Y=a||r?jsxRuntime.jsx(No,{withImpersonated:u,solanaRPCUrls:r,appChains:a,customization:N?.modals?.connectModal}):null,Z=a||r?jsxRuntime.jsx(chunkB26D6OI7_cjs.B,{solanaRPCUrls:r,appChains:a,transactionPool:t,pulsarAdapter:f,customization:N?.modals?.connectedModal}):null,fo=jsxRuntime.jsxs(chunk7FTV55DQ_cjs.c.Provider,{value:lo,children:[eo,to,Y,Z]}),vo=jsxRuntime.jsxs(chunk7FTV55DQ_cjs.c.Provider,{value:lo,children:[eo,to,Y,Z]}),$=x(vo,{ErrorsProvider:eo,LabelsProvider:to,MainContent:fo,ConnectModal:Y||jsxRuntime.jsx(jsxRuntime.Fragment,{}),ConnectedModal:Z||jsxRuntime.jsx(jsxRuntime.Fragment,{})},G);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:$})}Ke.displayName="NovaConnectProvider";async function qn(){let{getAllAdaptersStatus:o}=await import('./getChainsListByWalletType-CDPECVNS.cjs');return {hasEvmUtils:await ho(),hasSolanaUtils:await wo(),adaptersStatus:o()}}async function ho(){try{return await import('./utils-DZB4ZTS4.cjs'),!0}catch{return false}}async function wo(){try{return await import('./utils-H5O25MTI.cjs'),!0}catch{return false}}async function Jn(){try{return {available:!0,...await import('./evm/index.cjs')}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function Qn(){try{return {available:!0,...await import('./solana/index.cjs')}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function Xn(){let o={evm:false,solana:false,errors:[]};try{let{preloadChainAdapters:e}=await import('./getChainsListByWalletType-CDPECVNS.cjs');await e([orbitCore.OrbitAdapter.EVM,orbitCore.OrbitAdapter.SOLANA]),o.evm=await ho(),o.solana=await wo();}catch(e){let a=e instanceof Error?e.message:"Unknown initialization error";o.errors.push(a);}return o}async function Yn(o){switch(o){case orbitCore.OrbitAdapter.EVM:return ho();case orbitCore.OrbitAdapter.SOLANA:return wo();case orbitCore.OrbitAdapter.Starknet:return false;default:return false}}Object.defineProperty(exports,"getAvailableChainIds",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.c}});Object.defineProperty(exports,"getAvailableSolanaClusters",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.j}});Object.defineProperty(exports,"getConnectChainId",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.b}});Object.defineProperty(exports,"getFilteredConnectors",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.f}});Object.defineProperty(exports,"getGroupedConnectors",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.d}});Object.defineProperty(exports,"getNetworkIcon",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.h}});Object.defineProperty(exports,"hasAvailableConnectors",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.e}});Object.defineProperty(exports,"hasConnectorsForAdapter",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.g}});Object.defineProperty(exports,"isValidSolanaCluster",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.k}});Object.defineProperty(exports,"networksLinks",{enumerable:true,get:function(){return chunkB26D6OI7_cjs.i}});Object.defineProperty(exports,"getAdapterStatus",{enumerable:true,get:function(){return chunkNMQZA377_cjs.k}});Object.defineProperty(exports,"getAllAdaptersStatus",{enumerable:true,get:function(){return chunkNMQZA377_cjs.l}});Object.defineProperty(exports,"getAvailableSolanaClustersAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.g}});Object.defineProperty(exports,"getChainsListByWalletType",{enumerable:true,get:function(){return chunkNMQZA377_cjs.b}});Object.defineProperty(exports,"getChainsListByWalletTypeAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.a}});Object.defineProperty(exports,"getChainsListByWalletTypeSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.b}});Object.defineProperty(exports,"getWalletChains",{enumerable:true,get:function(){return chunkNMQZA377_cjs.i}});Object.defineProperty(exports,"isEvmChainList",{enumerable:true,get:function(){return chunkNMQZA377_cjs.e}});Object.defineProperty(exports,"isEvmChainListAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.c}});Object.defineProperty(exports,"isEvmChainListSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.e}});Object.defineProperty(exports,"isSolanaChainList",{enumerable:true,get:function(){return chunkNMQZA377_cjs.f}});Object.defineProperty(exports,"isSolanaChainListAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.d}});Object.defineProperty(exports,"isSolanaChainListSync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.f}});Object.defineProperty(exports,"isValidSolanaClusterAsync",{enumerable:true,get:function(){return chunkNMQZA377_cjs.h}});Object.defineProperty(exports,"preloadChainAdapters",{enumerable:true,get:function(){return chunkNMQZA377_cjs.j}});Object.defineProperty(exports,"NovaConnectLabelsContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.g}});Object.defineProperty(exports,"NovaConnectProviderContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.c}});Object.defineProperty(exports,"NovaConnectProviderError",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.b}});Object.defineProperty(exports,"createLabelsSubset",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.o}});Object.defineProperty(exports,"getLabelWithFallback",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.n}});Object.defineProperty(exports,"hasLabel",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.k}});Object.defineProperty(exports,"isDefaultLabels",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.m}});Object.defineProperty(exports,"useGetWalletNameAndAvatar",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.a}});Object.defineProperty(exports,"useHasNovaConnectContext",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.e}});Object.defineProperty(exports,"useLabelsByCategory",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.l}});Object.defineProperty(exports,"useNovaConnect",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.d}});Object.defineProperty(exports,"useNovaConnectLabel",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.i}});Object.defineProperty(exports,"useNovaConnectLabels",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.h}});Object.defineProperty(exports,"useNovaConnectLabelsSubset",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.j}});Object.defineProperty(exports,"useNovaConnectOptional",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.f}});Object.defineProperty(exports,"useWalletNativeBalance",{enumerable:true,get:function(){return chunk7FTV55DQ_cjs.p}});exports.ErrorsProvider=Mo;exports.NovaConnectLabelsProvider=Po;exports.NovaConnectProvider=Ke;exports.getBlockchainUtilities=qn;exports.getEvmUtils=Jn;exports.getSolanaUtils=Qn;exports.initializeBlockchainSupport=Xn;exports.isAdapterSupported=Yn;//# sourceMappingURL=index.cjs.map
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.css CHANGED
@@ -598,12 +598,6 @@
598
598
  background-color: color-mix(in oklab, var(--tuwa-bg-primary) 50%, transparent);
599
599
  }
600
600
  }
601
- .novacon\:bg-\[var\(--tuwa-bg-primary\)\]\/\[0\.19\] {
602
- background-color: var(--tuwa-bg-primary);
603
- @supports (color: color-mix(in lab, red, red)) {
604
- background-color: color-mix(in oklab, var(--tuwa-bg-primary) 19%, transparent);
605
- }
606
- }
607
601
  .novacon\:bg-\[var\(--tuwa-bg-secondary\)\] {
608
602
  background-color: var(--tuwa-bg-secondary);
609
603
  }
@@ -871,10 +865,6 @@
871
865
  .novacon\:ring-\[var\(--tuwa-text-accent\)\] {
872
866
  --tw-ring-color: var(--tuwa-text-accent);
873
867
  }
874
- .novacon\:backdrop-blur-\[8\.5px\] {
875
- --tw-backdrop-blur: blur(8.5px);
876
- backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
877
- }
878
868
  .novacon\:transition {
879
869
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
880
870
  transition-timing-function: var(--tw-ease, var(--novacon-default-transition-timing-function));
@@ -1914,42 +1904,6 @@ div[data-radix-popper-content-wrapper] {
1914
1904
  inherits: false;
1915
1905
  initial-value: 0 0 #0000;
1916
1906
  }
1917
- @property --tw-backdrop-blur {
1918
- syntax: "*";
1919
- inherits: false;
1920
- }
1921
- @property --tw-backdrop-brightness {
1922
- syntax: "*";
1923
- inherits: false;
1924
- }
1925
- @property --tw-backdrop-contrast {
1926
- syntax: "*";
1927
- inherits: false;
1928
- }
1929
- @property --tw-backdrop-grayscale {
1930
- syntax: "*";
1931
- inherits: false;
1932
- }
1933
- @property --tw-backdrop-hue-rotate {
1934
- syntax: "*";
1935
- inherits: false;
1936
- }
1937
- @property --tw-backdrop-invert {
1938
- syntax: "*";
1939
- inherits: false;
1940
- }
1941
- @property --tw-backdrop-opacity {
1942
- syntax: "*";
1943
- inherits: false;
1944
- }
1945
- @property --tw-backdrop-saturate {
1946
- syntax: "*";
1947
- inherits: false;
1948
- }
1949
- @property --tw-backdrop-sepia {
1950
- syntax: "*";
1951
- inherits: false;
1952
- }
1953
1907
  @property --tw-duration {
1954
1908
  syntax: "*";
1955
1909
  inherits: false;
@@ -2061,15 +2015,6 @@ div[data-radix-popper-content-wrapper] {
2061
2015
  --tw-ring-offset-width: 0px;
2062
2016
  --tw-ring-offset-color: #fff;
2063
2017
  --tw-ring-offset-shadow: 0 0 #0000;
2064
- --tw-backdrop-blur: initial;
2065
- --tw-backdrop-brightness: initial;
2066
- --tw-backdrop-contrast: initial;
2067
- --tw-backdrop-grayscale: initial;
2068
- --tw-backdrop-hue-rotate: initial;
2069
- --tw-backdrop-invert: initial;
2070
- --tw-backdrop-opacity: initial;
2071
- --tw-backdrop-saturate: initial;
2072
- --tw-backdrop-sepia: initial;
2073
2018
  --tw-duration: initial;
2074
2019
  --tw-ease: initial;
2075
2020
  --tw-scale-x: 1;
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import {f as f$1,b,K,F,J,C,M,I,L,i,B,N}from'./chunk-JVVOBSVI.js';export{c as getAvailableChainIds,j as getAvailableSolanaClusters,b as getConnectChainId,f as getFilteredConnectors,d as getGroupedConnectors,h as getNetworkIcon,e as hasAvailableConnectors,g as hasConnectorsForAdapter,k as isValidSolanaCluster,i as networksLinks}from'./chunk-JVVOBSVI.js';export{k as getAdapterStatus,l as getAllAdaptersStatus,g as getAvailableSolanaClustersAsync,b as getChainsListByWalletType,a as getChainsListByWalletTypeAsync,b as getChainsListByWalletTypeSync,i as getWalletChains,e as isEvmChainList,c as isEvmChainListAsync,e as isEvmChainListSync,f as isSolanaChainList,d as isSolanaChainListAsync,f as isSolanaChainListSync,h as isValidSolanaClusterAsync,j as preloadChainAdapters}from'./chunk-MQGDTFY7.js';import {d,h as h$1,g,c}from'./chunk-S5WT3DLF.js';export{g as NovaConnectLabelsContext,c as NovaConnectProviderContext,b as NovaConnectProviderError,o as createLabelsSubset,n as getLabelWithFallback,k as hasLabel,m as isDefaultLabels,a as useGetWalletNameAndAvatar,e as useHasNovaConnectContext,l as useLabelsByCategory,d as useNovaConnect,i as useNovaConnectLabel,h as useNovaConnectLabels,j as useNovaConnectLabelsSubset,f as useNovaConnectOptional,p as useWalletNativeBalance}from'./chunk-S5WT3DLF.js';import {a}from'./chunk-TAV7EL23.js';import {h,f}from'./chunk-MPEJHQKC.js';import {waitFor,delay,formatWalletName,getWalletTypeFromConnectorName,impersonatedHelpers,OrbitAdapter}from'@tuwaio/orbit-core';import {cn,DialogHeader,DialogTitle,DialogClose,CloseIcon,standardButtonClasses,Dialog,DialogContent,ToastCloseButton,deepMerge}from'@tuwaio/nova-core';import {forwardRef,memo,useContext,useMemo,useEffect,useCallback,useRef,useState}from'react';import {toast,Bounce,ToastContainer}from'react-toastify';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {InformationCircleIcon}from'@heroicons/react/24/outline';import {motion}from'framer-motion';import {isAddress}from'gill';var pe=({title:o,rawError:e,onCopyComplete:a,errorType:r,isConnected:t,...f})=>jsx(N,{title:o,rawError:e,onCopyComplete:a,customization:f.customization}),ue=o=>{let e=h$1();return jsx(ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":e.somethingWentWrong})},Ce=(o,e)=>{o(e.title,e.rawError,e.errorKey);},fe=o=>{o();},ve=(o,e)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",e.substring(0,100));},ye=o=>o,ge=o=>o;function Mo({containerId:o="nova-connect-errors",position:e="top-center",autoClose:a=7e3,draggable:r=false,customization:t}){let f=h$1(),u=h(l=>l.switchNetworkError),R=h(l=>l.activeWallet),B=h(l=>l.walletConnectionError),{ToastError:N=pe,Container:y=ue}=t?.components??{},{showError:d=Ce,dismissError:O=fe,onCopyComplete:S=ve}=t?.handlers??{},{errorTitle:D=ye,errorHash:E=ge}=t??{},M=useRef(new Set),x=useRef(null),s=useMemo(()=>{let l=!!B,b=!!u,P=!!R?.isConnected;return {hasWalletError:l,hasSwitchError:b,isConnected:P,hasAnyError:l||b,primaryError:B||u||null,errorType:l?"wallet":b?"switch":null}},[B,u,R?.isConnected]),H=useMemo(()=>{switch(s.errorType){case "wallet":return f.walletConnectionError;case "switch":return f.errorWhenChainSwitching;default:return f.somethingWentWrong}},[s.errorType,f]),m=useMemo(()=>D(H,{errorType:s.errorType}),[D,H,s.errorType]),z=useMemo(()=>s.primaryError?`${s.errorType}-${s.primaryError.substring(0,50)}`:null,[s.primaryError,s.errorType]),C=useMemo(()=>E(z,{primaryError:s.primaryError,errorType:s.errorType}),[E,z,s.primaryError,s.errorType]),T=useCallback(()=>{O(()=>{x.current&&(toast.dismiss(x.current),x.current=null),toast.dismiss({containerId:o});});},[o,O]),F=useCallback((l,b)=>{S(l,b,s.errorType);},[S,s.errorType]),n=useCallback((l,b,P)=>{if(T(),!M.current.has(P))try{let V={containerId:o,toastId:P,onClose:()=>{M.current.delete(P),x.current=null;}},_=t?.toastOptions?.error?.({title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected}),q={...V,..._};toast.error(jsx(N,{title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected,onCopyComplete:J=>F(J,b),customization:t?.toastErrorCustomization}),q),M.current.add(P),x.current=P;}catch(V){console.error("Failed to show error toast:",V);}},[T,o,t?.toastOptions?.error,t?.toastErrorCustomization,N,s.errorType,s.isConnected,F]),v=useCallback((l,b,P)=>{d(n,{title:l,rawError:b,errorKey:P,errorType:s.errorType});},[n,d,s.errorType]);useEffect(()=>{let{hasAnyError:l,isConnected:b,primaryError:P}=s;if(b&&!l){T(),M.current.clear();return}if(l&&P&&C){if(b&&s.errorType!=="switch")return;v(m,P,C);}},[s,m,C,v,T]),useEffect(()=>()=>{T(),M.current.clear();},[T]);let g=useMemo(()=>t?.classNames?.container?t.classNames.container({hasErrors:s.hasAnyError,errorType:s.errorType}):"novacon:p-0 novacon:bg-transparent",[t,s.hasAnyError,s.errorType]),p=useMemo(()=>({containerId:o,position:e,closeOnClick:false,icon:false,closeButton:ToastCloseButton,autoClose:a,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:r,pauseOnHover:true,theme:"light",transition:Bounce}),[o,e,a,r]),h$2=useMemo(()=>({...p,...t?.containerProps,className:g}),[p,t?.containerProps,g]);return jsx(y,{...h$2})}Mo.displayName="ErrorsProvider";function Po({labels:o,children:e}){let a=useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let t=["connectWallet","disconnect","connecting","connected","error","success"].filter(f=>!(f in o));t.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${t.join(", ")}`);}return jsx(g.Provider,{value:a,children:e})}Po.displayName="NovaConnectLabelsProvider";function He(o,e){if(!o||!Array.isArray(o)||!e)return;let a=o.find(r=>r&&typeof r=="object"&&"name"in r&&typeof r.name=="string"?formatWalletName(r.name)===e:false);return a&&typeof a=="object"&&"name"in a&&typeof a.name=="string"?a.name:void 0}var qo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("div",{ref:t,className:cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...r,children:e}));qo.displayName="DefaultModalContainer";var Jo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("div",{ref:t,className:o,...r,children:jsx(DialogHeader,{children:e})}));Jo.displayName="DefaultModalHeader";var Qo=forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsx("button",{ref:t,className:cn("novacon:cursor-pointer novacon:text-[var(--tuwa-text-secondary)] novacon:transition novacon:duration-300 novacon:ease-in-out novacon:active:scale-75 novacon:hover:scale-110",o),type:"button",onClick:e,...r,children:jsx(InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Qo.displayName="DefaultInfoButton";var Xo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx(DialogTitle,{ref:t,className:cn("novacon:flex novacon:items-center",o),...r,children:e}));Xo.displayName="DefaultTitle";var Yo=forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsx(DialogClose,{asChild:true,children:jsx("button",{ref:t,type:"button",onClick:e,className:cn("novacon:cursor-pointer novacon:rounded-full novacon:p-1 novacon:text-[var(--tuwa-text-tertiary)] novacon:transition-colors novacon:hover:bg-[var(--tuwa-bg-muted)] novacon:hover:text-[var(--tuwa-text-primary)]",o),...r,children:jsx(CloseIcon,{"aria-hidden":"true"})})}));Yo.displayName="DefaultCloseButton";var Zo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("main",{ref:t,className:cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...r,children:e}));Zo.displayName="DefaultMainContent";var oe=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("footer",{ref:t,className:cn("novacon:flex novacon:w-full novacon:items-center novacon:justify-between novacon:border-t novacon:border-[var(--tuwa-border-primary)] novacon:p-4",o),role:"contentinfo",...r,children:e}));oe.displayName="DefaultFooter";var ee=forwardRef(({className:o,onClick:e,children:a,modalData:r,...t},f)=>jsx("button",{ref:f,type:"button",onClick:e,className:cn(standardButtonClasses,o),...t,children:a}));ee.displayName="DefaultBackButton";var te=forwardRef(({className:o,onClick:e,children:a,disabled:r,loading:t,buttonConfig:f,modalData:u,...R},B)=>jsx("button",{ref:B,type:"button",onClick:e,disabled:r||t,className:cn(standardButtonClasses,o),...R,children:t?"Loading...":a}));te.displayName="DefaultActionButton";var ne=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("span",{ref:t,className:cn("novacon:sr-only",o),...r,children:e}));ne.displayName="DefaultActionDescription";var re=forwardRef(({children:o,className:e,...a},r)=>{let{modalData:t,...f}=a;return jsx("div",{ref:r,className:e,...f,children:o})});re.displayName="DefaultEmptyState";var No=memo(({appChains:o,solanaRPCUrls:e,withImpersonated:a,customization:r={}})=>{let{isConnectModalOpen:t,setIsConnectModalOpen:f$2,setConnectModalContentType:u,setActiveConnector:R,setImpersonatedAddress:B,setIsConnected:N,connectModalContentType:y,selectedAdapter:d$1,setSelectedAdapter:O,isConnected:S,activeConnector:D,impersonatedAddress:E}=d(),M$1=h(c=>c.walletConnectionError),x=h(c=>c.getConnectors),s=h(c=>c.connect),H=h(c=>c.activeWallet),m=h$1(),z=useContext(f),C$1=useMemo(()=>{if(t)return x()},[t,x]),T=useMemo(()=>f$1({connectors:C$1,selectedAdapter:d$1}),[C$1,d$1]),F$1=useMemo(()=>M$1?typeof M$1=="string"?new Error(M$1):M$1:null,[M$1]),n=useMemo(()=>({contentType:y,selectedAdapter:d$1,activeConnector:D,impersonatedAddress:E,isConnected:S,isOpen:t,error:F$1,connectors:C$1,filteredConnectors:T,labels:m}),[y,d$1,D,E,S,t,F$1,C$1,T,m]);useEffect(()=>{t&&(u("connectors"),O(void 0),R(void 0),B(""),N(false));},[t]);let{components:v={},classNames:g={},handlers:p={},config:h$2={},childComponents:l={}}=r,b$1=v.ModalContainer||qo,P=v.ModalHeader||Jo,V=v.InfoButton||Qo,_=v.Title||Xo,q=v.CloseButton||Yo,J$1=v.MainContent||Zo,Q=v.Footer||oe,so=v.BackButton||ee,X=v.ActionButton||te,io=v.ActionDescription||ne,G=v.EmptyState||re,Co=v.Dialog||Dialog,lo=v.DialogContent||DialogContent,eo=v.MotionDiv||motion.div,to=useCallback(()=>{switch(y){case "about":return m.aboutWallets;case "getWallet":return m.getWallet;case "connecting":return d$1&&D&&C$1&&He(C$1[d$1],D)||m.connectingEllipsis;case "impersonate":return m.connectImpersonatedWallet;default:return m.connectWallet}},[y,d$1,D,C$1,m]),Y=useCallback(()=>"connectors",[y]),Z=useCallback(c=>{p?.onOpenChange?p.onOpenChange(c,n):f$2(c);},[p?.onOpenChange,n,f$2]),fo=useCallback(()=>{let c=()=>u(Y());p?.onBack?p.onBack(n,c):c();},[p?.onBack,n,u,Y]),vo=useCallback(()=>{p?.onInfoClick?p.onInfoClick(n):u("about");},[p?.onInfoClick,n,u]),$=useCallback(async(c,yo)=>{await s({walletType:c,chainId:b({appChains:o,selectedAdapter:yo,solanaRPCUrls:e})});try{await waitFor(()=>z?.getState().activeWallet?.isConnected),N(!0);let go=setTimeout(()=>f$2(!1),400),le=setTimeout(()=>N(!1),500);await delay(null,500),clearTimeout(go),clearTimeout(le);}catch(go){console.error(go);}},[s,o,d$1,e]),j=useCallback(async(c,yo)=>{O(c),u("connecting"),await $(yo,c);},[$]),Bo=useCallback(c=>{R(formatWalletName(c.name)),c.adapters.length===1?(O(c.adapters[0]),u(formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting")):d$1?u(formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting"):formatWalletName(c.name)==="impersonatedwallet"?u("impersonate"):u("network");},[d$1]),se=useCallback(()=>{switch(y){case "network":return jsx(L,{activeConnector:D,connectors:T,onClick:j,customization:l.networkSelections});case "connectors":return C$1?jsxs(Fragment,{children:[jsx(M,{networks:Object.keys(C$1),selectedAdapter:d$1,onSelect:c=>O(c),customization:l.networkTabs}),jsx(I,{isOnlyOneNetwork:Object.keys(C$1).length===1,connectors:T,selectedAdapter:d$1,onClick:Bo,setContentType:u,appChains:o,solanaRPCUrls:e,setIsConnected:N,setIsOpen:f$2,withImpersonated:a,customization:l.connectorsSelections})]}):jsx(G,{className:g.emptyConnectors?.({modalData:n}),modalData:n,children:"No connectors available"});case "about":return jsx(C,{customization:l.aboutWallets});case "getWallet":return jsx(J,{customization:l.getWallet});case "connecting":return jsx(F,{selectedAdapter:d$1,connectors:T,activeConnector:D,isConnected:S,customization:l.connecting});case "impersonate":return jsx(K,{impersonatedAddress:E,setImpersonatedAddress:B,customization:l.impersonateForm})}},[y,D,T,j,l,C$1,d$1,Bo,S,E]),K$1=useCallback(()=>{switch(y){case "connectors":return {title:m.iDontHaveWallet,onClick:()=>{p.onActionClick?.connectors?p.onActionClick.connectors(n):u("getWallet");}};case "getWallet":return {title:m.choseWallet,onClick:()=>{p.onActionClick?.getWallet?p.onActionClick.getWallet(n):window.open(i[d$1??Object.keys(C$1)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:m.learnMore,onClick:()=>{p.onActionClick?.about?p.onActionClick.about(n):window.open(i[d$1??Object.keys(C$1)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:m.connect,onClick:async()=>{if(p.onActionClick?.impersonate)await p.onActionClick.impersonate(n);else {let c=E.trim();if(M$1||!c||isAddress(c)||H?.isConnected)return;impersonatedHelpers.setImpersonated(c),await $(`${d$1??OrbitAdapter.EVM}:impersonatedwallet`,d$1??OrbitAdapter.EVM),u("connecting");}}};case "connecting":return M$1&&d$1&&D?{title:m.tryAgain,onClick:async()=>{p.onActionClick?.connecting?await p.onActionClick.connecting(n):await $(getWalletTypeFromConnectorName(d$1,D),d$1);}}:void 0}},[y,m,p,n,d$1,C$1,E,M$1,$,D])(),ie=useCallback(()=>{switch(y){case "getWallet":return "Opens external wallet selection page";case "about":return "Opens external documentation";case "impersonate":return "Connects with impersonated wallet address";case "connecting":return "Retries wallet connection";default:return ""}},[y]);return jsx(Co,{open:t,onOpenChange:Z,children:jsx(lo,{className:cn("novacon:w-full novacon:sm:max-w-md"),children:jsx(eo,{layout:true,transition:{layout:{duration:h$2.animation?.disabled?0:h$2.animation?.layoutDuration??1e-4}},children:jsxs(b$1,{className:g.modalContainer?.({modalData:n}),modalData:n,children:[jsxs(P,{className:g.header?.({modalData:n}),modalData:n,children:[jsxs(_,{className:g.title?.({modalData:n}),modalData:n,children:[y==="connectors"&&jsx(V,{className:g.infoButton?.({modalData:n}),onClick:vo,"aria-label":h$2.ariaLabels?.infoButton?.(n)||`${m.learnMore} ${m.aboutWallets}`,modalData:n}),to()]}),jsx(q,{className:g.closeButton?.({modalData:n}),onClick:()=>Z(false),"aria-label":h$2.ariaLabels?.closeButton?.(n)||m.closeModal,modalData:n})]}),jsx(J$1,{className:g.mainContent?.({modalData:n}),modalData:n,children:se()}),jsxs(Q,{className:g.footer?.({modalData:n}),modalData:n,children:[jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:y!=="connectors"&&jsx(so,{className:g.backButton?.({modalData:n}),onClick:fo,"aria-label":h$2.ariaLabels?.backButton?.(n)||`${m.back} to previous step`,modalData:n,children:m.back})}),K$1&&jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsx(X,{className:g.actionButton?.({modalData:n,buttonConfig:K$1}),onClick:K$1.onClick,disabled:K$1.disabled,loading:K$1.loading,"aria-describedby":"bottom-action-description",modalData:n,buttonConfig:K$1,children:K$1.title}),jsx(io,{id:"bottom-action-description",className:g.actionDescription?.({modalData:n}),modalData:n,children:ie()})]})]})]})})})})});No.displayName="ConnectModal";var Fe=({labels:o,children:e})=>jsx(Po,{labels:o,children:e}),Ve=({customization:o})=>jsx(Mo,{customization:o}),Ue=(o,e)=>deepMerge(o,e||{}),Ge=o=>o,$e=o=>o,je=(o,e,a)=>o;function Ke({labels:o,children:e,appChains:a$1,solanaRPCUrls:r,transactionPool:t,pulsarAdapter:f,withImpersonated:u,withBalance:R,withChain:B$1,customization:N}){let y=h(j=>j.activeWallet),d=h(j=>j.walletConnectionError),{LabelsProvider:O=Fe,ErrorsProvider:S=Ve}=N?.components??{},{merge:D=Ue,transform:E=Ge}=N?.labels??{},{transform:M=$e}=N?.contextValue??{},{providerTree:x=je}=N?.rendering??{},s=useMemo(()=>D(a,o||{}),[o,D]),[H,m]=useState(false),[z,C]=useState(false),[T,F]=useState(false),[n,v]=useState(false),[g,p]=useState("idle"),[h$1,l]=useState("connectors"),[b,P]=useState(void 0),[V,_]=useState(void 0),[q,J]=useState(""),[Q,so]=useState(false),[X,io]=useState("main"),G=useMemo(()=>({isConnected:Q,activeWallet:y,walletConnectionError:d,modalStates:{isConnectModalOpen:H,isConnectedModalOpen:z,isChainsListOpen:T,isChainsListOpenMobile:n},contentTypes:{connectModal:h$1,connectedModal:X},statuses:{connectedButton:g}}),[Q,y,d,H,z,T,n,h$1,X,g]),Co=useMemo(()=>E(s,G),[s,E,G]),lo=useMemo(()=>M({appChains:a$1,solanaRPCUrls:r,withImpersonated:u,withBalance:R,withChain:B$1,isConnectModalOpen:H,setIsConnectModalOpen:m,isConnectedModalOpen:z,setIsConnectedModalOpen:C,isChainsListOpen:T,setIsChainsListOpen:F,isChainsListOpenMobile:n,setIsChainsListOpenMobile:v,connectedButtonStatus:g,setConnectedButtonStatus:p,connectedModalContentType:X,setConnectedModalContentType:io,connectModalContentType:h$1,setConnectModalContentType:l,selectedAdapter:b,setSelectedAdapter:P,activeConnector:V,setActiveConnector:_,impersonatedAddress:q,setImpersonatedAddress:J,isConnected:Q,setIsConnected:so},G),[a$1,r,u,R,B$1,H,m,z,C,T,F,n,v,g,p,X,io,h$1,l,b,P,V,_,q,J,Q,so,M,G]),eo=jsx(S,{customization:N?.errors}),to=jsx(O,{labels:Co,children:e}),Y=a$1||r?jsx(No,{withImpersonated:u,solanaRPCUrls:r,appChains:a$1,customization:N?.modals?.connectModal}):null,Z=a$1||r?jsx(B,{solanaRPCUrls:r,appChains:a$1,transactionPool:t,pulsarAdapter:f,customization:N?.modals?.connectedModal}):null,fo=jsxs(c.Provider,{value:lo,children:[eo,to,Y,Z]}),vo=jsxs(c.Provider,{value:lo,children:[eo,to,Y,Z]}),$=x(vo,{ErrorsProvider:eo,LabelsProvider:to,MainContent:fo,ConnectModal:Y||jsx(Fragment,{}),ConnectedModal:Z||jsx(Fragment,{})},G);return jsx(Fragment,{children:$})}Ke.displayName="NovaConnectProvider";async function qn(){let{getAllAdaptersStatus:o}=await import('./getChainsListByWalletType-VMQ4BO2B.js');return {hasEvmUtils:await ho(),hasSolanaUtils:await wo(),adaptersStatus:o()}}async function ho(){try{return await import('./utils-5KC7QXWB.js'),!0}catch{return false}}async function wo(){try{return await import('./utils-SUIRQJIA.js'),!0}catch{return false}}async function Jn(){try{return {available:!0,...await import('./evm/index.js')}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function Qn(){try{return {available:!0,...await import('./solana/index.js')}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function Xn(){let o={evm:false,solana:false,errors:[]};try{let{preloadChainAdapters:e}=await import('./getChainsListByWalletType-VMQ4BO2B.js');await e([OrbitAdapter.EVM,OrbitAdapter.SOLANA]),o.evm=await ho(),o.solana=await wo();}catch(e){let a=e instanceof Error?e.message:"Unknown initialization error";o.errors.push(a);}return o}async function Yn(o){switch(o){case OrbitAdapter.EVM:return ho();case OrbitAdapter.SOLANA:return wo();case OrbitAdapter.Starknet:return false;default:return false}}export{Mo as ErrorsProvider,Po as NovaConnectLabelsProvider,Ke as NovaConnectProvider,qn as getBlockchainUtilities,Jn as getEvmUtils,Qn as getSolanaUtils,Xn as initializeBlockchainSupport,Yn as isAdapterSupported};//# sourceMappingURL=index.js.map
1
+ import {f as f$1,b,K,F,J,C,M,I,L,i,B,N}from'./chunk-7F5QM2LC.js';export{c as getAvailableChainIds,j as getAvailableSolanaClusters,b as getConnectChainId,f as getFilteredConnectors,d as getGroupedConnectors,h as getNetworkIcon,e as hasAvailableConnectors,g as hasConnectorsForAdapter,k as isValidSolanaCluster,i as networksLinks}from'./chunk-7F5QM2LC.js';export{k as getAdapterStatus,l as getAllAdaptersStatus,g as getAvailableSolanaClustersAsync,b as getChainsListByWalletType,a as getChainsListByWalletTypeAsync,b as getChainsListByWalletTypeSync,i as getWalletChains,e as isEvmChainList,c as isEvmChainListAsync,e as isEvmChainListSync,f as isSolanaChainList,d as isSolanaChainListAsync,f as isSolanaChainListSync,h as isValidSolanaClusterAsync,j as preloadChainAdapters}from'./chunk-MQGDTFY7.js';import {d,h as h$1,g,c}from'./chunk-S5WT3DLF.js';export{g as NovaConnectLabelsContext,c as NovaConnectProviderContext,b as NovaConnectProviderError,o as createLabelsSubset,n as getLabelWithFallback,k as hasLabel,m as isDefaultLabels,a as useGetWalletNameAndAvatar,e as useHasNovaConnectContext,l as useLabelsByCategory,d as useNovaConnect,i as useNovaConnectLabel,h as useNovaConnectLabels,j as useNovaConnectLabelsSubset,f as useNovaConnectOptional,p as useWalletNativeBalance}from'./chunk-S5WT3DLF.js';import {a}from'./chunk-TAV7EL23.js';import {h,f}from'./chunk-MPEJHQKC.js';import {waitFor,delay,formatWalletName,getWalletTypeFromConnectorName,impersonatedHelpers,OrbitAdapter}from'@tuwaio/orbit-core';import {cn,DialogHeader,DialogTitle,DialogClose,CloseIcon,standardButtonClasses,Dialog,DialogContent,ToastCloseButton,deepMerge}from'@tuwaio/nova-core';import {forwardRef,memo,useContext,useMemo,useEffect,useCallback,useRef,useState}from'react';import {toast,Bounce,ToastContainer}from'react-toastify';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {InformationCircleIcon}from'@heroicons/react/24/outline';import {motion}from'framer-motion';import {isAddress}from'gill';var pe=({title:o,rawError:e,onCopyComplete:a,errorType:r,isConnected:t,...f})=>jsx(N,{title:o,rawError:e,onCopyComplete:a,customization:f.customization}),ue=o=>{let e=h$1();return jsx(ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":e.somethingWentWrong})},Ce=(o,e)=>{o(e.title,e.rawError,e.errorKey);},fe=o=>{o();},ve=(o,e)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",e.substring(0,100));},ye=o=>o,ge=o=>o;function Mo({containerId:o="nova-connect-errors",position:e="top-center",autoClose:a=7e3,draggable:r=false,customization:t}){let f=h$1(),u=h(l=>l.switchNetworkError),R=h(l=>l.activeWallet),B=h(l=>l.walletConnectionError),{ToastError:N=pe,Container:y=ue}=t?.components??{},{showError:d=Ce,dismissError:O=fe,onCopyComplete:S=ve}=t?.handlers??{},{errorTitle:D=ye,errorHash:E=ge}=t??{},M=useRef(new Set),x=useRef(null),s=useMemo(()=>{let l=!!B,b=!!u,P=!!R?.isConnected;return {hasWalletError:l,hasSwitchError:b,isConnected:P,hasAnyError:l||b,primaryError:B||u||null,errorType:l?"wallet":b?"switch":null}},[B,u,R?.isConnected]),H=useMemo(()=>{switch(s.errorType){case "wallet":return f.walletConnectionError;case "switch":return f.errorWhenChainSwitching;default:return f.somethingWentWrong}},[s.errorType,f]),m=useMemo(()=>D(H,{errorType:s.errorType}),[D,H,s.errorType]),z=useMemo(()=>s.primaryError?`${s.errorType}-${s.primaryError.substring(0,50)}`:null,[s.primaryError,s.errorType]),C=useMemo(()=>E(z,{primaryError:s.primaryError,errorType:s.errorType}),[E,z,s.primaryError,s.errorType]),T=useCallback(()=>{O(()=>{x.current&&(toast.dismiss(x.current),x.current=null),toast.dismiss({containerId:o});});},[o,O]),F=useCallback((l,b)=>{S(l,b,s.errorType);},[S,s.errorType]),n=useCallback((l,b,P)=>{if(T(),!M.current.has(P))try{let V={containerId:o,toastId:P,onClose:()=>{M.current.delete(P),x.current=null;}},_=t?.toastOptions?.error?.({title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected}),q={...V,..._};toast.error(jsx(N,{title:l,rawError:b,errorType:s.errorType,isConnected:s.isConnected,onCopyComplete:J=>F(J,b),customization:t?.toastErrorCustomization}),q),M.current.add(P),x.current=P;}catch(V){console.error("Failed to show error toast:",V);}},[T,o,t?.toastOptions?.error,t?.toastErrorCustomization,N,s.errorType,s.isConnected,F]),v=useCallback((l,b,P)=>{d(n,{title:l,rawError:b,errorKey:P,errorType:s.errorType});},[n,d,s.errorType]);useEffect(()=>{let{hasAnyError:l,isConnected:b,primaryError:P}=s;if(b&&!l){T(),M.current.clear();return}if(l&&P&&C){if(b&&s.errorType!=="switch")return;v(m,P,C);}},[s,m,C,v,T]),useEffect(()=>()=>{T(),M.current.clear();},[T]);let g=useMemo(()=>t?.classNames?.container?t.classNames.container({hasErrors:s.hasAnyError,errorType:s.errorType}):"novacon:p-0 novacon:bg-transparent",[t,s.hasAnyError,s.errorType]),p=useMemo(()=>({containerId:o,position:e,closeOnClick:false,icon:false,closeButton:ToastCloseButton,autoClose:a,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:r,pauseOnHover:true,theme:"light",transition:Bounce}),[o,e,a,r]),h$2=useMemo(()=>({...p,...t?.containerProps,className:g}),[p,t?.containerProps,g]);return jsx(y,{...h$2})}Mo.displayName="ErrorsProvider";function Po({labels:o,children:e}){let a=useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let t=["connectWallet","disconnect","connecting","connected","error","success"].filter(f=>!(f in o));t.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${t.join(", ")}`);}return jsx(g.Provider,{value:a,children:e})}Po.displayName="NovaConnectLabelsProvider";function He(o,e){if(!o||!Array.isArray(o)||!e)return;let a=o.find(r=>r&&typeof r=="object"&&"name"in r&&typeof r.name=="string"?formatWalletName(r.name)===e:false);return a&&typeof a=="object"&&"name"in a&&typeof a.name=="string"?a.name:void 0}var qo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("div",{ref:t,className:cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...r,children:e}));qo.displayName="DefaultModalContainer";var Jo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("div",{ref:t,className:o,...r,children:jsx(DialogHeader,{children:e})}));Jo.displayName="DefaultModalHeader";var Qo=forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsx("button",{ref:t,className:cn("novacon:cursor-pointer novacon:text-[var(--tuwa-text-secondary)] novacon:transition novacon:duration-300 novacon:ease-in-out novacon:active:scale-75 novacon:hover:scale-110",o),type:"button",onClick:e,...r,children:jsx(InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Qo.displayName="DefaultInfoButton";var Xo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx(DialogTitle,{ref:t,className:cn("novacon:flex novacon:items-center",o),...r,children:e}));Xo.displayName="DefaultTitle";var Yo=forwardRef(({className:o,onClick:e,modalData:a,...r},t)=>jsx(DialogClose,{asChild:true,children:jsx("button",{ref:t,type:"button",onClick:e,className:cn("novacon:cursor-pointer novacon:rounded-full novacon:p-1 novacon:text-[var(--tuwa-text-tertiary)] novacon:transition-colors novacon:hover:bg-[var(--tuwa-bg-muted)] novacon:hover:text-[var(--tuwa-text-primary)]",o),...r,children:jsx(CloseIcon,{"aria-hidden":"true"})})}));Yo.displayName="DefaultCloseButton";var Zo=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("main",{ref:t,className:cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...r,children:e}));Zo.displayName="DefaultMainContent";var oe=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("footer",{ref:t,className:cn("novacon:flex novacon:w-full novacon:items-center novacon:justify-between novacon:border-t novacon:border-[var(--tuwa-border-primary)] novacon:p-4",o),role:"contentinfo",...r,children:e}));oe.displayName="DefaultFooter";var ee=forwardRef(({className:o,onClick:e,children:a,modalData:r,...t},f)=>jsx("button",{ref:f,type:"button",onClick:e,className:cn(standardButtonClasses,o),...t,children:a}));ee.displayName="DefaultBackButton";var te=forwardRef(({className:o,onClick:e,children:a,disabled:r,loading:t,buttonConfig:f,modalData:u,...R},B)=>jsx("button",{ref:B,type:"button",onClick:e,disabled:r||t,className:cn(standardButtonClasses,o),...R,children:t?"Loading...":a}));te.displayName="DefaultActionButton";var ne=forwardRef(({className:o,children:e,modalData:a,...r},t)=>jsx("span",{ref:t,className:cn("novacon:sr-only",o),...r,children:e}));ne.displayName="DefaultActionDescription";var re=forwardRef(({children:o,className:e,...a},r)=>{let{modalData:t,...f}=a;return jsx("div",{ref:r,className:e,...f,children:o})});re.displayName="DefaultEmptyState";var No=memo(({appChains:o,solanaRPCUrls:e,withImpersonated:a,customization:r={}})=>{let{isConnectModalOpen:t,setIsConnectModalOpen:f$2,setConnectModalContentType:u,setActiveConnector:R,setImpersonatedAddress:B,setIsConnected:N,connectModalContentType:y,selectedAdapter:d$1,setSelectedAdapter:O,isConnected:S,activeConnector:D,impersonatedAddress:E}=d(),M$1=h(c=>c.walletConnectionError),x=h(c=>c.getConnectors),s=h(c=>c.connect),H=h(c=>c.activeWallet),m=h$1(),z=useContext(f),C$1=useMemo(()=>{if(t)return x()},[t,x]),T=useMemo(()=>f$1({connectors:C$1,selectedAdapter:d$1}),[C$1,d$1]),F$1=useMemo(()=>M$1?typeof M$1=="string"?new Error(M$1):M$1:null,[M$1]),n=useMemo(()=>({contentType:y,selectedAdapter:d$1,activeConnector:D,impersonatedAddress:E,isConnected:S,isOpen:t,error:F$1,connectors:C$1,filteredConnectors:T,labels:m}),[y,d$1,D,E,S,t,F$1,C$1,T,m]);useEffect(()=>{t&&(u("connectors"),O(void 0),R(void 0),B(""),N(false));},[t]);let{components:v={},classNames:g={},handlers:p={},config:h$2={},childComponents:l={}}=r,b$1=v.ModalContainer||qo,P=v.ModalHeader||Jo,V=v.InfoButton||Qo,_=v.Title||Xo,q=v.CloseButton||Yo,J$1=v.MainContent||Zo,Q=v.Footer||oe,so=v.BackButton||ee,X=v.ActionButton||te,io=v.ActionDescription||ne,G=v.EmptyState||re,Co=v.Dialog||Dialog,lo=v.DialogContent||DialogContent,eo=v.MotionDiv||motion.div,to=useCallback(()=>{switch(y){case "about":return m.aboutWallets;case "getWallet":return m.getWallet;case "connecting":return d$1&&D&&C$1&&He(C$1[d$1],D)||m.connectingEllipsis;case "impersonate":return m.connectImpersonatedWallet;default:return m.connectWallet}},[y,d$1,D,C$1,m]),Y=useCallback(()=>"connectors",[y]),Z=useCallback(c=>{p?.onOpenChange?p.onOpenChange(c,n):f$2(c);},[p?.onOpenChange,n,f$2]),fo=useCallback(()=>{let c=()=>u(Y());p?.onBack?p.onBack(n,c):c();},[p?.onBack,n,u,Y]),vo=useCallback(()=>{p?.onInfoClick?p.onInfoClick(n):u("about");},[p?.onInfoClick,n,u]),$=useCallback(async(c,yo)=>{await s({walletType:c,chainId:b({appChains:o,selectedAdapter:yo,solanaRPCUrls:e})});try{await waitFor(()=>z?.getState().activeWallet?.isConnected),N(!0);let go=setTimeout(()=>f$2(!1),400),le=setTimeout(()=>N(!1),500);await delay(null,500),clearTimeout(go),clearTimeout(le);}catch(go){console.error(go);}},[s,o,d$1,e]),j=useCallback(async(c,yo)=>{O(c),u("connecting"),await $(yo,c);},[$]),Bo=useCallback(c=>{R(formatWalletName(c.name)),c.adapters.length===1?(O(c.adapters[0]),u(formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting")):d$1?u(formatWalletName(c.name)==="impersonatedwallet"?"impersonate":"connecting"):formatWalletName(c.name)==="impersonatedwallet"?u("impersonate"):u("network");},[d$1]),se=useCallback(()=>{switch(y){case "network":return jsx(L,{activeConnector:D,connectors:T,onClick:j,customization:l.networkSelections});case "connectors":return C$1?jsxs(Fragment,{children:[jsx(M,{networks:Object.keys(C$1),selectedAdapter:d$1,onSelect:c=>O(c),customization:l.networkTabs}),jsx(I,{isOnlyOneNetwork:Object.keys(C$1).length===1,connectors:T,selectedAdapter:d$1,onClick:Bo,setContentType:u,appChains:o,solanaRPCUrls:e,setIsConnected:N,setIsOpen:f$2,withImpersonated:a,customization:l.connectorsSelections})]}):jsx(G,{className:g.emptyConnectors?.({modalData:n}),modalData:n,children:"No connectors available"});case "about":return jsx(C,{customization:l.aboutWallets});case "getWallet":return jsx(J,{customization:l.getWallet});case "connecting":return jsx(F,{selectedAdapter:d$1,connectors:T,activeConnector:D,isConnected:S,customization:l.connecting});case "impersonate":return jsx(K,{impersonatedAddress:E,setImpersonatedAddress:B,customization:l.impersonateForm})}},[y,D,T,j,l,C$1,d$1,Bo,S,E]),K$1=useCallback(()=>{switch(y){case "connectors":return {title:m.iDontHaveWallet,onClick:()=>{p.onActionClick?.connectors?p.onActionClick.connectors(n):u("getWallet");}};case "getWallet":return {title:m.choseWallet,onClick:()=>{p.onActionClick?.getWallet?p.onActionClick.getWallet(n):window.open(i[d$1??Object.keys(C$1)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:m.learnMore,onClick:()=>{p.onActionClick?.about?p.onActionClick.about(n):window.open(i[d$1??Object.keys(C$1)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:m.connect,onClick:async()=>{if(p.onActionClick?.impersonate)await p.onActionClick.impersonate(n);else {let c=E.trim();if(M$1||!c||isAddress(c)||H?.isConnected)return;impersonatedHelpers.setImpersonated(c),await $(`${d$1??OrbitAdapter.EVM}:impersonatedwallet`,d$1??OrbitAdapter.EVM),u("connecting");}}};case "connecting":return M$1&&d$1&&D?{title:m.tryAgain,onClick:async()=>{p.onActionClick?.connecting?await p.onActionClick.connecting(n):await $(getWalletTypeFromConnectorName(d$1,D),d$1);}}:void 0}},[y,m,p,n,d$1,C$1,E,M$1,$,D])(),ie=useCallback(()=>{switch(y){case "getWallet":return "Opens external wallet selection page";case "about":return "Opens external documentation";case "impersonate":return "Connects with impersonated wallet address";case "connecting":return "Retries wallet connection";default:return ""}},[y]);return jsx(Co,{open:t,onOpenChange:Z,children:jsx(lo,{className:cn("novacon:w-full novacon:sm:max-w-md"),children:jsx(eo,{layout:true,transition:{layout:{duration:h$2.animation?.disabled?0:h$2.animation?.layoutDuration??1e-4}},children:jsxs(b$1,{className:g.modalContainer?.({modalData:n}),modalData:n,children:[jsxs(P,{className:g.header?.({modalData:n}),modalData:n,children:[jsxs(_,{className:g.title?.({modalData:n}),modalData:n,children:[y==="connectors"&&jsx(V,{className:g.infoButton?.({modalData:n}),onClick:vo,"aria-label":h$2.ariaLabels?.infoButton?.(n)||`${m.learnMore} ${m.aboutWallets}`,modalData:n}),to()]}),jsx(q,{className:g.closeButton?.({modalData:n}),onClick:()=>Z(false),"aria-label":h$2.ariaLabels?.closeButton?.(n)||m.closeModal,modalData:n})]}),jsx(J$1,{className:g.mainContent?.({modalData:n}),modalData:n,children:se()}),jsxs(Q,{className:g.footer?.({modalData:n}),modalData:n,children:[jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:y!=="connectors"&&jsx(so,{className:g.backButton?.({modalData:n}),onClick:fo,"aria-label":h$2.ariaLabels?.backButton?.(n)||`${m.back} to previous step`,modalData:n,children:m.back})}),K$1&&jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsx(X,{className:g.actionButton?.({modalData:n,buttonConfig:K$1}),onClick:K$1.onClick,disabled:K$1.disabled,loading:K$1.loading,"aria-describedby":"bottom-action-description",modalData:n,buttonConfig:K$1,children:K$1.title}),jsx(io,{id:"bottom-action-description",className:g.actionDescription?.({modalData:n}),modalData:n,children:ie()})]})]})]})})})})});No.displayName="ConnectModal";var Fe=({labels:o,children:e})=>jsx(Po,{labels:o,children:e}),Ve=({customization:o})=>jsx(Mo,{customization:o}),Ue=(o,e)=>deepMerge(o,e||{}),Ge=o=>o,$e=o=>o,je=(o,e,a)=>o;function Ke({labels:o,children:e,appChains:a$1,solanaRPCUrls:r,transactionPool:t,pulsarAdapter:f,withImpersonated:u,withBalance:R,withChain:B$1,customization:N}){let y=h(j=>j.activeWallet),d=h(j=>j.walletConnectionError),{LabelsProvider:O=Fe,ErrorsProvider:S=Ve}=N?.components??{},{merge:D=Ue,transform:E=Ge}=N?.labels??{},{transform:M=$e}=N?.contextValue??{},{providerTree:x=je}=N?.rendering??{},s=useMemo(()=>D(a,o||{}),[o,D]),[H,m]=useState(false),[z,C]=useState(false),[T,F]=useState(false),[n,v]=useState(false),[g,p]=useState("idle"),[h$1,l]=useState("connectors"),[b,P]=useState(void 0),[V,_]=useState(void 0),[q,J]=useState(""),[Q,so]=useState(false),[X,io]=useState("main"),G=useMemo(()=>({isConnected:Q,activeWallet:y,walletConnectionError:d,modalStates:{isConnectModalOpen:H,isConnectedModalOpen:z,isChainsListOpen:T,isChainsListOpenMobile:n},contentTypes:{connectModal:h$1,connectedModal:X},statuses:{connectedButton:g}}),[Q,y,d,H,z,T,n,h$1,X,g]),Co=useMemo(()=>E(s,G),[s,E,G]),lo=useMemo(()=>M({appChains:a$1,solanaRPCUrls:r,withImpersonated:u,withBalance:R,withChain:B$1,isConnectModalOpen:H,setIsConnectModalOpen:m,isConnectedModalOpen:z,setIsConnectedModalOpen:C,isChainsListOpen:T,setIsChainsListOpen:F,isChainsListOpenMobile:n,setIsChainsListOpenMobile:v,connectedButtonStatus:g,setConnectedButtonStatus:p,connectedModalContentType:X,setConnectedModalContentType:io,connectModalContentType:h$1,setConnectModalContentType:l,selectedAdapter:b,setSelectedAdapter:P,activeConnector:V,setActiveConnector:_,impersonatedAddress:q,setImpersonatedAddress:J,isConnected:Q,setIsConnected:so},G),[a$1,r,u,R,B$1,H,m,z,C,T,F,n,v,g,p,X,io,h$1,l,b,P,V,_,q,J,Q,so,M,G]),eo=jsx(S,{customization:N?.errors}),to=jsx(O,{labels:Co,children:e}),Y=a$1||r?jsx(No,{withImpersonated:u,solanaRPCUrls:r,appChains:a$1,customization:N?.modals?.connectModal}):null,Z=a$1||r?jsx(B,{solanaRPCUrls:r,appChains:a$1,transactionPool:t,pulsarAdapter:f,customization:N?.modals?.connectedModal}):null,fo=jsxs(c.Provider,{value:lo,children:[eo,to,Y,Z]}),vo=jsxs(c.Provider,{value:lo,children:[eo,to,Y,Z]}),$=x(vo,{ErrorsProvider:eo,LabelsProvider:to,MainContent:fo,ConnectModal:Y||jsx(Fragment,{}),ConnectedModal:Z||jsx(Fragment,{})},G);return jsx(Fragment,{children:$})}Ke.displayName="NovaConnectProvider";async function qn(){let{getAllAdaptersStatus:o}=await import('./getChainsListByWalletType-VMQ4BO2B.js');return {hasEvmUtils:await ho(),hasSolanaUtils:await wo(),adaptersStatus:o()}}async function ho(){try{return await import('./utils-5KC7QXWB.js'),!0}catch{return false}}async function wo(){try{return await import('./utils-SUIRQJIA.js'),!0}catch{return false}}async function Jn(){try{return {available:!0,...await import('./evm/index.js')}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function Qn(){try{return {available:!0,...await import('./solana/index.js')}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function Xn(){let o={evm:false,solana:false,errors:[]};try{let{preloadChainAdapters:e}=await import('./getChainsListByWalletType-VMQ4BO2B.js');await e([OrbitAdapter.EVM,OrbitAdapter.SOLANA]),o.evm=await ho(),o.solana=await wo();}catch(e){let a=e instanceof Error?e.message:"Unknown initialization error";o.errors.push(a);}return o}async function Yn(o){switch(o){case OrbitAdapter.EVM:return ho();case OrbitAdapter.SOLANA:return wo();case OrbitAdapter.Starknet:return false;default:return false}}export{Mo as ErrorsProvider,Po as NovaConnectLabelsProvider,Ke as NovaConnectProvider,qn as getBlockchainUtilities,Jn as getEvmUtils,Qn as getSolanaUtils,Xn as initializeBlockchainSupport,Yn as isAdapterSupported};//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tuwaio/nova-connect",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "private": false,
5
5
  "author": "Oleksandr Tkach",
6
6
  "license": "Apache-2.0",
@@ -232,7 +232,7 @@
232
232
  "tw-animate-css": "^1.4.0",
233
233
  "typescript": "^5.9.3",
234
234
  "tsup": "^8.5.0",
235
- "@tuwaio/nova-core": "^0.1.3",
235
+ "@tuwaio/nova-core": "^0.1.4",
236
236
  "@tuwaio/nova-transactions": "^0.1.2"
237
237
  },
238
238
  "scripts": {