@tuwaio/nova-connect 1.0.0-fix-indep-alpha.6.bc09cf6 → 1.0.0-fix-indep-alpha.7.285558c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-7EUQO34W.js → chunk-3LHD7CNB.js} +3 -3
- package/dist/{chunk-7EUQO34W.js.map → chunk-3LHD7CNB.js.map} +1 -1
- package/dist/{chunk-4GXQK7LW.js → chunk-4WDAZUTQ.js} +2 -2
- package/dist/{chunk-4GXQK7LW.js.map → chunk-4WDAZUTQ.js.map} +1 -1
- package/dist/{chunk-F4INBENJ.cjs → chunk-7SKDH7XL.cjs} +3 -3
- package/dist/{chunk-F4INBENJ.cjs.map → chunk-7SKDH7XL.cjs.map} +1 -1
- package/dist/{chunk-4WY4LVQ2.cjs → chunk-7YWQRWYN.cjs} +4 -4
- package/dist/{chunk-4WY4LVQ2.cjs.map → chunk-7YWQRWYN.cjs.map} +1 -1
- package/dist/{chunk-CKCFLRRG.js → chunk-IMRNX2S7.js} +3 -3
- package/dist/{chunk-CKCFLRRG.js.map → chunk-IMRNX2S7.js.map} +1 -1
- package/dist/{chunk-EWPT6HNX.cjs → chunk-L7YY2MZS.cjs} +2 -2
- package/dist/{chunk-EWPT6HNX.cjs.map → chunk-L7YY2MZS.cjs.map} +1 -1
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.js +1 -1
- package/dist/evm/index.cjs +1 -1
- package/dist/evm/index.cjs.map +1 -1
- package/dist/evm/index.d.cts +11 -0
- package/dist/evm/index.d.ts +11 -0
- package/dist/evm/index.js +1 -1
- package/dist/evm/index.js.map +1 -1
- package/dist/{evm-Y352LZL3.cjs → evm-3XUGTMPL.cjs} +2 -2
- package/dist/{evm-Y352LZL3.cjs.map → evm-3XUGTMPL.cjs.map} +1 -1
- package/dist/{evm-KPV5OJOP.js → evm-5RQC7QOS.js} +2 -2
- package/dist/{evm-KPV5OJOP.js.map → evm-5RQC7QOS.js.map} +1 -1
- package/dist/getChainsListByConnectorType-LXHMQP2F.cjs +2 -0
- package/dist/{getChainsListByConnectorType-RKKDUHIO.cjs.map → getChainsListByConnectorType-LXHMQP2F.cjs.map} +1 -1
- package/dist/{getChainsListByConnectorType-6UA3PPII.js → getChainsListByConnectorType-TP2GS4LA.js} +2 -2
- package/dist/{getChainsListByConnectorType-6UA3PPII.js.map → getChainsListByConnectorType-TP2GS4LA.js.map} +1 -1
- package/dist/hooks/index.cjs +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/solana/index.cjs +1 -1
- package/dist/solana/index.cjs.map +1 -1
- package/dist/solana/index.d.cts +12 -3
- package/dist/solana/index.d.ts +12 -3
- package/dist/solana/index.js +1 -1
- package/dist/solana/index.js.map +1 -1
- package/dist/{solana-KISWBTPH.cjs → solana-H5F4APJH.cjs} +2 -2
- package/dist/{solana-KISWBTPH.cjs.map → solana-H5F4APJH.cjs.map} +1 -1
- package/dist/{solana-2KX5XQPR.js → solana-TKICEEDG.js} +2 -2
- package/dist/{solana-2KX5XQPR.js.map → solana-TKICEEDG.js.map} +1 -1
- package/package.json +3 -3
- package/dist/getChainsListByConnectorType-RKKDUHIO.cjs +0 -2
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use strict';var chunk4WY4LVQ2_cjs=require('./chunk-4WY4LVQ2.cjs'),chunkF4INBENJ_cjs=require('./chunk-F4INBENJ.cjs'),chunkEWPT6HNX_cjs=require('./chunk-EWPT6HNX.cjs'),chunkPTHXIVB5_cjs=require('./chunk-PTHXIVB5.cjs'),chunkPUEGOPQT_cjs=require('./chunk-PUEGOPQT.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');var fe=({title:o,rawError:t,onCopyComplete:r,errorType:n,isConnected:e,...l})=>jsxRuntime.jsx(chunk4WY4LVQ2_cjs.D,{title:o,rawError:t,onCopyComplete:r,customization:l.customization}),ve=o=>{let t=chunkF4INBENJ_cjs.h();return jsxRuntime.jsx(reactToastify.ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":t.somethingWentWrong})},ge=(o,t)=>{o(t.title,t.rawError,t.errorKey);},be=o=>{o();},ye=(o,t)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",t.substring(0,100));},Te=o=>o,Ee=o=>o;function Po({containerId:o="nova-connect-errors",position:t="top-center",autoClose:r=7e3,draggable:n=false,customization:e}){let l=chunkF4INBENJ_cjs.h(),s=chunkPUEGOPQT_cjs.i(d=>d.switchNetworkError),x=chunkPUEGOPQT_cjs.i(d=>d.activeConnection),k=chunkPUEGOPQT_cjs.i(d=>d.connectionError),{ToastError:h=fe,Container:g=ve}=e?.components??{},{showError:u=ge,dismissError:O=be,onCopyComplete:H=ye}=e?.handlers??{},{errorTitle:T=Te,errorHash:P=Ee}=e??{},M=react.useRef(new Set),R=react.useRef(null),i=react.useMemo(()=>{let d=!!k,y=!!s,D=!!x?.isConnected;return {hasWalletError:d,hasSwitchError:y,isConnected:D,hasAnyError:d||y,primaryError:k||s||null,errorType:d?"wallet":y?"switch":null}},[k,s,x?.isConnected]),z=react.useMemo(()=>{switch(i.errorType){case "wallet":return l.connectionError;case "switch":return l.errorWhenChainSwitching;default:return l.somethingWentWrong}},[i.errorType,l]),p=react.useMemo(()=>T(z,{errorType:i.errorType}),[T,z,i.errorType]),I=react.useMemo(()=>i.primaryError?`${i.errorType}-${i.primaryError.substring(0,50)}`:null,[i.primaryError,i.errorType]),f=react.useMemo(()=>P(I,{primaryError:i.primaryError,errorType:i.errorType}),[P,I,i.primaryError,i.errorType]),E=react.useCallback(()=>{O(()=>{R.current&&(reactToastify.toast.dismiss(R.current),R.current=null),reactToastify.toast.dismiss({containerId:o});});},[o,O]),F=react.useCallback((d,y)=>{H(d,y,i.errorType);},[H,i.errorType]),a=react.useCallback((d,y,D)=>{if(E(),!M.current.has(D))try{let V={containerId:o,toastId:D,onClose:()=>{M.current.delete(D),R.current=null;}},K=e?.toastOptions?.error?.({title:d,rawError:y,errorType:i.errorType,isConnected:i.isConnected}),J={...V,...K};reactToastify.toast.error(jsxRuntime.jsx(h,{title:d,rawError:y,errorType:i.errorType,isConnected:i.isConnected,onCopyComplete:Q=>F(Q,y),customization:e?.toastErrorCustomization}),J),M.current.add(D),R.current=D;}catch(V){console.error("Failed to show error toast:",V);}},[E,o,e?.toastOptions?.error,e?.toastErrorCustomization,h,i.errorType,i.isConnected,F]),v=react.useCallback((d,y,D)=>{u(a,{title:d,rawError:y,errorKey:D,errorType:i.errorType});},[a,u,i.errorType]);react.useEffect(()=>{let{hasAnyError:d,isConnected:y,primaryError:D}=i;if(y&&!d){E(),M.current.clear();return}if(d&&D&&f){if(y&&i.errorType!=="switch")return;v(p,D,f);}},[i,p,f,v,E]),react.useEffect(()=>()=>{E(),M.current.clear();},[E]);let b=react.useMemo(()=>e?.classNames?.container?e.classNames.container({hasErrors:i.hasAnyError,errorType:i.errorType}):"novacon:p-0 novacon:bg-transparent",[e,i.hasAnyError,i.errorType]),C=react.useMemo(()=>({containerId:o,position:t,closeOnClick:false,icon:false,closeButton:novaCore.ToastCloseButton,autoClose:r,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:n,pauseOnHover:true,theme:"light",transition:reactToastify.Bounce}),[o,t,r,n]),N=react.useMemo(()=>({...C,...e?.containerProps,className:b}),[C,e?.containerProps,b]);return jsxRuntime.jsx(g,{...N})}Po.displayName="ErrorsProvider";function No({labels:o,children:t}){let r=react.useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let e=["connectWallet","disconnect","connecting","connected","error","success"].filter(l=>!(l in o));e.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${e.join(", ")}`);}return jsxRuntime.jsx(chunkF4INBENJ_cjs.g.Provider,{value:r,children:t})}No.displayName="NovaConnectLabelsProvider";function Ie(o,t){if(!o||!Array.isArray(o)||!t)return;let r=o.find(n=>n&&typeof n=="object"&&"name"in n&&typeof n.name=="string"?orbitCore.formatConnectorName(n.name)===t:false);if(r&&typeof r=="object"&&"name"in r&&typeof r.name=="string")return r.name}var Xo=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("div",{ref:e,className:novaCore.cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...n,children:t}));Xo.displayName="DefaultModalContainer";var Yo=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("div",{ref:e,className:o,...n,children:jsxRuntime.jsx(novaCore.DialogHeader,{children:t})}));Yo.displayName="DefaultModalHeader";var Zo=react.forwardRef(({className:o,onClick:t,modalData:r,...n},e)=>jsxRuntime.jsx("button",{ref:e,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:t,...n,children:jsxRuntime.jsx(outline.InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Zo.displayName="DefaultInfoButton";var oe=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx(novaCore.DialogTitle,{ref:e,className:novaCore.cn("novacon:flex novacon:items-center",o),...n,children:t}));oe.displayName="DefaultTitle";var ee=react.forwardRef(({className:o,onClick:t,modalData:r,...n},e)=>jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{ref:e,type:"button",onClick:t,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),...n,children:jsxRuntime.jsx(novaCore.CloseIcon,{"aria-hidden":"true"})})}));ee.displayName="DefaultCloseButton";var te=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("main",{ref:e,className:novaCore.cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...n,children:t}));te.displayName="DefaultMainContent";var ne=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("footer",{ref:e,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",...n,children:t}));ne.displayName="DefaultFooter";var re=react.forwardRef(({className:o,onClick:t,children:r,modalData:n,...e},l)=>jsxRuntime.jsx("button",{ref:l,type:"button",onClick:t,className:novaCore.cn(novaCore.standardButtonClasses,o),...e,children:r}));re.displayName="DefaultBackButton";var ae=react.forwardRef(({className:o,onClick:t,children:r,disabled:n,loading:e,buttonConfig:l,modalData:s,...x},k)=>jsxRuntime.jsx("button",{ref:k,type:"button",onClick:t,disabled:n||e,className:novaCore.cn(novaCore.standardButtonClasses,o),...x,children:e?"Loading...":r}));ae.displayName="DefaultActionButton";var se=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("span",{ref:e,className:novaCore.cn("novacon:sr-only",o),...n,children:t}));se.displayName="DefaultActionDescription";var ie=react.forwardRef(({children:o,className:t,...r},n)=>{let{modalData:e,...l}=r;return jsxRuntime.jsx("div",{ref:n,className:t,...l,children:o})});ie.displayName="DefaultEmptyState";var wo=react.memo(({appChains:o,solanaRPCUrls:t,withImpersonated:r,customization:n={}})=>{let{isConnectModalOpen:e,setIsConnectModalOpen:l,setConnectModalContentType:s,setActiveConnector:x,setImpersonatedAddress:k,setIsConnected:h,connectModalContentType:g,selectedAdapter:u,setSelectedAdapter:O,isConnected:H,activeConnector:T,impersonatedAddress:P}=chunkF4INBENJ_cjs.d(),M=chunkPUEGOPQT_cjs.i(m=>m.connectionError),R=chunkPUEGOPQT_cjs.i(m=>m.getConnectors),i=chunkPUEGOPQT_cjs.i(m=>m.connect),z=chunkPUEGOPQT_cjs.i(m=>m.activeConnection),p=chunkF4INBENJ_cjs.h(),I=react.useContext(chunkPUEGOPQT_cjs.g),f=react.useMemo(()=>{if(e)return R()},[e,R]),E=react.useMemo(()=>chunkF4INBENJ_cjs.u({connectors:f,selectedAdapter:u}),[f,u]),F=react.useMemo(()=>M?typeof M=="string"?new Error(M):M:null,[M]),a=react.useMemo(()=>({contentType:g,selectedAdapter:u,activeConnector:T,impersonatedAddress:P,isConnected:H,isOpen:e,error:F,connectors:f,filteredConnectors:E,labels:p}),[g,u,T,P,H,e,F,f,E,p]);react.useEffect(()=>{e&&(s("connectors"),O(void 0),x(void 0),k(""),h(false));},[e]);let{components:v={},classNames:b={},handlers:C={},config:N={},childComponents:d={}}=n,y=v.ModalContainer||Xo,D=v.ModalHeader||Yo,V=v.InfoButton||Zo,K=v.Title||oe,J=v.CloseButton||ee,Q=v.MainContent||te,X=v.Footer||ne,io=v.BackButton||re,Y=v.ActionButton||ae,lo=v.ActionDescription||se,G=v.EmptyState||ie,go=v.Dialog||novaCore.Dialog,co=v.DialogContent||novaCore.DialogContent,to=v.MotionDiv||framerMotion.motion.div,no=react.useCallback(()=>{switch(g){case "about":return p.aboutWallets;case "getWallet":return p.getWallet;case "connecting":return u&&T&&f&&Ie(f[u],T)||p.connectingEllipsis;case "impersonate":return p.connectImpersonatedWallet;default:return p.connectWallet}},[g,u,T,f,p]),Z=react.useCallback(()=>"connectors",[g]),oo=react.useCallback(m=>{C?.onOpenChange?C.onOpenChange(m,a):l(m);},[C?.onOpenChange,a,l]),bo=react.useCallback(()=>{let m=()=>s(Z());C?.onBack?C.onBack(a,m):m();},[C?.onBack,a,s,Z]),yo=react.useCallback(()=>{C?.onInfoClick?C.onInfoClick(a):s("about");},[C?.onInfoClick,a,s]),_=react.useCallback(async(m,To)=>{await i({connectorType:m,chainId:chunkF4INBENJ_cjs.q({appChains:o,selectedAdapter:To,solanaRPCUrls:t})});try{await orbitCore.waitFor(()=>I?.getState().activeConnection?.isConnected),h(!0);let Eo=setTimeout(()=>l(!1),400),me=setTimeout(()=>h(!1),500);await orbitCore.delay(null,500),clearTimeout(Eo),clearTimeout(me);}catch(Eo){console.error(Eo);}},[i,o,u,t]),j=react.useCallback(async(m,To)=>{O(m),s("connecting"),await _(To,m);},[_]),Bo=react.useCallback(m=>{x(orbitCore.formatConnectorName(m.name)),m.adapters.length===1?(O(m.adapters[0]),s(orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?"impersonate":"connecting")):u?s(orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?"impersonate":"connecting"):orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?s("impersonate"):s("network");},[u]),ce=react.useCallback(()=>{switch(g){case "network":return jsxRuntime.jsx(chunk4WY4LVQ2_cjs.B,{activeConnector:T,connectors:E,onClick:j,customization:d.networkSelections});case "connectors":return f?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(chunk4WY4LVQ2_cjs.C,{networks:Object.keys(f),selectedAdapter:u,onSelect:m=>O(m),customization:d.networkTabs}),jsxRuntime.jsx(chunk4WY4LVQ2_cjs.y,{isOnlyOneNetwork:Object.keys(f).length===1,connectors:E,selectedAdapter:u,onClick:Bo,setContentType:s,appChains:o,solanaRPCUrls:t,setIsConnected:h,setIsOpen:l,withImpersonated:r,customization:d.connectorsSelections})]}):jsxRuntime.jsx(G,{className:b.emptyConnectors?.({modalData:a}),modalData:a,children:"No connectors available"});case "about":return jsxRuntime.jsx(chunk4WY4LVQ2_cjs.s,{customization:d.aboutWallets});case "getWallet":return jsxRuntime.jsx(chunk4WY4LVQ2_cjs.z,{customization:d.getWallet});case "connecting":return jsxRuntime.jsx(chunk4WY4LVQ2_cjs.v,{selectedAdapter:u,connectors:E,activeConnector:T,isConnected:H,customization:d.connecting});case "impersonate":return jsxRuntime.jsx(chunk4WY4LVQ2_cjs.A,{selectedAdapter:u,impersonatedAddress:P,setImpersonatedAddress:k,customization:d.impersonateForm})}},[g,T,E,j,d,f,u,Bo,H,P]),$=react.useCallback(()=>{switch(g){case "connectors":return {title:p.iDontHaveWallet,onClick:()=>{C.onActionClick?.connectors?C.onActionClick.connectors(a):s("getWallet");}};case "getWallet":return {title:p.choseWallet,onClick:()=>{C.onActionClick?.getWallet?C.onActionClick.getWallet(a):window.open(chunkF4INBENJ_cjs.x[u??Object.keys(f)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:p.learnMore,onClick:()=>{C.onActionClick?.about?C.onActionClick.about(a):window.open(chunkF4INBENJ_cjs.x[u??Object.keys(f)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:p.connect,onClick:async()=>{if(C.onActionClick?.impersonate)await C.onActionClick.impersonate(a);else {let m=P.trim();if(M||!m||chunkF4INBENJ_cjs.p(m)||z?.isConnected)return;orbitCore.impersonatedHelpers.setImpersonated(m),s("connecting"),await _(orbitCore.getConnectorTypeFromName(u??orbitCore.OrbitAdapter.EVM,T??""),u??orbitCore.OrbitAdapter.EVM);}}};case "connecting":return M&&u&&T?{title:p.tryAgain,onClick:async()=>{C.onActionClick?.connecting?await C.onActionClick.connecting(a):await _(orbitCore.getConnectorTypeFromName(u,T),u);}}:void 0}},[g,p,C,a,u,f,P,M,_,T])(),de=react.useCallback(()=>{switch(g){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 ""}},[g]);return jsxRuntime.jsx(go,{open:e,onOpenChange:oo,children:jsxRuntime.jsx(co,{className:novaCore.cn("novacon:w-full novacon:sm:max-w-md"),children:jsxRuntime.jsx(to,{layout:true,transition:{layout:{duration:N.animation?.disabled?0:N.animation?.layoutDuration??1e-4}},children:jsxRuntime.jsxs(y,{className:b.modalContainer?.({modalData:a}),modalData:a,children:[jsxRuntime.jsxs(D,{className:b.header?.({modalData:a}),modalData:a,children:[jsxRuntime.jsxs(K,{className:b.title?.({modalData:a}),modalData:a,children:[g==="connectors"&&jsxRuntime.jsx(V,{className:b.infoButton?.({modalData:a}),onClick:yo,"aria-label":N.ariaLabels?.infoButton?.(a)||`${p.learnMore} ${p.aboutWallets}`,modalData:a}),no()]}),jsxRuntime.jsx(J,{className:b.closeButton?.({modalData:a}),onClick:()=>oo(false),"aria-label":N.ariaLabels?.closeButton?.(a)||p.closeModal,modalData:a})]}),jsxRuntime.jsx(Q,{className:b.mainContent?.({modalData:a}),modalData:a,children:ce()}),jsxRuntime.jsxs(X,{className:b.footer?.({modalData:a}),modalData:a,children:[jsxRuntime.jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:g!=="connectors"&&jsxRuntime.jsx(io,{className:b.backButton?.({modalData:a}),onClick:bo,"aria-label":N.ariaLabels?.backButton?.(a)||`${p.back} to previous step`,modalData:a,children:p.back})}),$&&jsxRuntime.jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsxRuntime.jsx(Y,{className:b.actionButton?.({modalData:a,buttonConfig:$}),onClick:$.onClick,disabled:$.disabled,loading:$.loading,"aria-describedby":"bottom-action-description",modalData:a,buttonConfig:$,children:$.title}),jsxRuntime.jsx(lo,{id:"bottom-action-description",className:b.actionDescription?.({modalData:a}),modalData:a,children:de()})]})]})]})})})})});wo.displayName="ConnectModal";var Ve=({labels:o,children:t})=>jsxRuntime.jsx(No,{labels:o,children:t}),Ue=({customization:o})=>jsxRuntime.jsx(Po,{customization:o}),qe=(o,t)=>novaCore.deepMerge(o,t||{}),Ge=o=>o,_e=o=>o,je=(o,t,r)=>o;function $e({labels:o,children:t,appChains:r,solanaRPCUrls:n,transactionPool:e,pulsarAdapter:l,withImpersonated:s,withBalance:x,withChain:k,customization:h}){let g=chunkPUEGOPQT_cjs.i(j=>j.activeConnection),u=chunkPUEGOPQT_cjs.i(j=>j.connectionError),{LabelsProvider:O=Ve,ErrorsProvider:H=Ue}=h?.components??{},{merge:T=qe,transform:P=Ge}=h?.labels??{},{transform:M=_e}=h?.contextValue??{},{providerTree:R=je}=h?.rendering??{},i=react.useMemo(()=>T(chunkPTHXIVB5_cjs.a,o||{}),[o,T]),[z,p]=react.useState(false),[I,f]=react.useState(false),[E,F]=react.useState(false),[a,v]=react.useState(false),[b,C]=react.useState("idle"),[N,d]=react.useState("connectors"),[y,D]=react.useState(void 0),[V,K]=react.useState(void 0),[J,Q]=react.useState(""),[X,io]=react.useState(false),[Y,lo]=react.useState("main"),G=react.useMemo(()=>({isConnected:X,activeConnection:g,connectionError:u,modalStates:{isConnectModalOpen:z,isConnectedModalOpen:I,isChainsListOpen:E,isChainsListOpenMobile:a},contentTypes:{connectModal:N,connectedModal:Y},statuses:{connectedButton:b}}),[X,g,u,z,I,E,a,N,Y,b]),go=react.useMemo(()=>P(i,G),[i,P,G]),co=react.useMemo(()=>M({appChains:r,solanaRPCUrls:n,withImpersonated:s,withBalance:x,withChain:k,isConnectModalOpen:z,setIsConnectModalOpen:p,isConnectedModalOpen:I,setIsConnectedModalOpen:f,isChainsListOpen:E,setIsChainsListOpen:F,isChainsListOpenMobile:a,setIsChainsListOpenMobile:v,connectedButtonStatus:b,setConnectedButtonStatus:C,connectedModalContentType:Y,setConnectedModalContentType:lo,connectModalContentType:N,setConnectModalContentType:d,selectedAdapter:y,setSelectedAdapter:D,activeConnector:V,setActiveConnector:K,impersonatedAddress:J,setImpersonatedAddress:Q,isConnected:X,setIsConnected:io},G),[r,n,s,x,k,z,p,I,f,E,F,a,v,b,C,Y,lo,N,d,y,D,V,K,J,Q,X,io,M,G]),to=jsxRuntime.jsx(H,{customization:h?.errors}),no=jsxRuntime.jsx(O,{labels:go,children:t}),Z=r||n?jsxRuntime.jsx(wo,{withImpersonated:s,solanaRPCUrls:n,appChains:r,customization:h?.modals?.connectModal}):null,oo=r||n?jsxRuntime.jsx(chunk4WY4LVQ2_cjs.r,{solanaRPCUrls:n,appChains:r,transactionPool:e,pulsarAdapter:l,customization:h?.modals?.connectedModal}):null,bo=jsxRuntime.jsxs(chunkF4INBENJ_cjs.c.Provider,{value:co,children:[to,no,Z,oo]}),yo=jsxRuntime.jsxs(chunkF4INBENJ_cjs.c.Provider,{value:co,children:[to,no,Z,oo]}),_=R(yo,{ErrorsProvider:to,LabelsProvider:no,MainContent:bo,ConnectModal:Z||jsxRuntime.jsx(jsxRuntime.Fragment,{}),ConnectedModal:oo||jsxRuntime.jsx(jsxRuntime.Fragment,{})},G);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:_})}$e.displayName="NovaConnectProvider";var so=typeof process<"u"&&process.env?.NODE_ENV==="production";async function nr(){let{getAllAdaptersStatus:o}=await import('./getChainsListByConnectorType-RKKDUHIO.cjs');return {hasEvmUtils:await fo(),hasSolanaUtils:await vo(),adaptersStatus:o()}}async function fo(){if(so)try{return new Function('try { return Boolean(require("@tuwaio/orbit-evm") && require("viem")); } catch { return false; }')()}catch{return false}try{return await import('viem'),await import('@tuwaio/orbit-evm'),!0}catch{return false}}async function vo(){if(so)try{return new Function('try { return Boolean(require("@tuwaio/orbit-solana") && require("gill")); } catch { return false; }')()}catch{return false}try{return await import('gill'),await import('@tuwaio/orbit-solana'),!0}catch{return false}}async function rr(){try{if(!await fo())return {available:!1,error:"EVM packages (viem, @tuwaio/orbit-evm) not available"};if(so)try{let e=new Function('try { return require("./evm"); } catch { return null; }')();return e?new Promise(l=>{if(typeof e.getEvmExports!="function"){l({available:!1,error:"EVM module does not have getEvmExports function"});return}e.getEvmExports().then(s=>{if(!s.available){l({available:!1,error:s.error||"Failed to load EVM exports"});return}l({...e,...s});}).catch(s=>{l({available:!1,error:s instanceof Error?s.message:"Failed to load EVM exports"});});}):{available:!1,error:"Failed to load EVM module"}}catch(n){return {available:!1,error:n instanceof Error?n.message:"Failed to load EVM module"}}let t=await import('./evm/index.cjs'),r=await t.getEvmExports();return r.available?{...t,...r}:{available:!1,error:r.error||"Failed to load EVM exports"}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function ar(){try{if(!await vo())return {available:!1,error:"Solana packages (gill, @tuwaio/orbit-solana) not available"};if(so)try{let e=new Function('try { return require("./solana"); } catch { return null; }')();return e?new Promise(l=>{if(typeof e.getSolanaExports!="function"){l({available:!1,error:"Solana module does not have getSolanaExports function"});return}e.getSolanaExports().then(s=>{if(!s.available){l({available:!1,error:s.error||"Failed to load Solana exports"});return}l({...e,...s});}).catch(s=>{l({available:!1,error:s instanceof Error?s.message:"Failed to load Solana exports"});});}):{available:!1,error:"Failed to load Solana module"}}catch(n){return {available:!1,error:n instanceof Error?n.message:"Failed to load Solana module"}}let t=await import('./solana/index.cjs'),r=await t.getSolanaExports();return r.available?{...t,...r}:{available:!1,error:r.error||"Failed to load Solana exports"}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function sr(){let o={evm:false,solana:false,errors:[]};try{let t=await fo(),r=await vo();if(t||r)if(so)try{let e=new Function('try { return require("./utils/getChainsListByConnectorType"); } catch { return null; }')();if(!e)return o.errors.push("Failed to load chain adapter utilities"),o;let l=[];t&&l.push(orbitCore.OrbitAdapter.EVM),r&&l.push(orbitCore.OrbitAdapter.SOLANA),await e.preloadChainAdapters(l),o.evm=t,o.solana=r;}catch(n){let e=n instanceof Error?n.message:"Failed to initialize chain adapters";o.errors.push(e);}else {let{preloadChainAdapters:n}=await import('./getChainsListByConnectorType-RKKDUHIO.cjs'),e=[];t&&e.push(orbitCore.OrbitAdapter.EVM),r&&e.push(orbitCore.OrbitAdapter.SOLANA),await n(e),o.evm=t,o.solana=r;}else o.errors.push("No blockchain packages available for initialization");}catch(t){let r=t instanceof Error?t.message:"Unknown initialization error";o.errors.push(r);}return o}async function ir(o){return o===orbitCore.OrbitAdapter.Starknet||o!==orbitCore.OrbitAdapter.EVM&&o!==orbitCore.OrbitAdapter.SOLANA?false:o===orbitCore.OrbitAdapter.EVM?fo():vo()}Object.defineProperty(exports,"NovaConnectLabelsContext",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.g}});Object.defineProperty(exports,"NovaConnectProviderContext",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.c}});Object.defineProperty(exports,"NovaConnectProviderError",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.b}});Object.defineProperty(exports,"createLabelsSubset",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.o}});Object.defineProperty(exports,"getAvailableChainIds",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.r}});Object.defineProperty(exports,"getAvailableSolanaClusters",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.y}});Object.defineProperty(exports,"getConnectChainId",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.q}});Object.defineProperty(exports,"getFilteredConnectors",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.u}});Object.defineProperty(exports,"getGroupedConnectors",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.s}});Object.defineProperty(exports,"getLabelWithFallback",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.n}});Object.defineProperty(exports,"getNetworkIcon",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.w}});Object.defineProperty(exports,"hasAvailableConnectors",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.t}});Object.defineProperty(exports,"hasConnectorsForAdapter",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.v}});Object.defineProperty(exports,"hasLabel",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.k}});Object.defineProperty(exports,"isAddress",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.p}});Object.defineProperty(exports,"isDefaultLabels",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.m}});Object.defineProperty(exports,"isValidSolanaCluster",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.z}});Object.defineProperty(exports,"networksLinks",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.x}});Object.defineProperty(exports,"useGetWalletNameAndAvatar",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.a}});Object.defineProperty(exports,"useHasNovaConnectContext",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.e}});Object.defineProperty(exports,"useLabelsByCategory",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.l}});Object.defineProperty(exports,"useNovaConnect",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.d}});Object.defineProperty(exports,"useNovaConnectLabel",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.i}});Object.defineProperty(exports,"useNovaConnectLabels",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.h}});Object.defineProperty(exports,"useNovaConnectLabelsSubset",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.j}});Object.defineProperty(exports,"useNovaConnectOptional",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.f}});Object.defineProperty(exports,"useWalletChainsList",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.A}});Object.defineProperty(exports,"useWalletNativeBalance",{enumerable:true,get:function(){return chunkF4INBENJ_cjs.B}});Object.defineProperty(exports,"getAdapterStatus",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.k}});Object.defineProperty(exports,"getAllAdaptersStatus",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.l}});Object.defineProperty(exports,"getAvailableSolanaClustersAsync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.g}});Object.defineProperty(exports,"getChainsListByConnectorType",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.b}});Object.defineProperty(exports,"getChainsListByConnectorTypeAsync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.a}});Object.defineProperty(exports,"getChainsListByConnectorTypeSync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.b}});Object.defineProperty(exports,"getWalletChains",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.i}});Object.defineProperty(exports,"isEvmChainList",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.e}});Object.defineProperty(exports,"isEvmChainListAsync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.c}});Object.defineProperty(exports,"isEvmChainListSync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.e}});Object.defineProperty(exports,"isSolanaChainList",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.f}});Object.defineProperty(exports,"isSolanaChainListAsync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.d}});Object.defineProperty(exports,"isSolanaChainListSync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.f}});Object.defineProperty(exports,"isValidSolanaClusterAsync",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.h}});Object.defineProperty(exports,"preloadChainAdapters",{enumerable:true,get:function(){return chunkEWPT6HNX_cjs.j}});Object.defineProperty(exports,"AllConnectors",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.b}});Object.defineProperty(exports,"Connection",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.c}});Object.defineProperty(exports,"Connector",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.d}});Object.defineProperty(exports,"SatelliteConnectProvider",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.e}});Object.defineProperty(exports,"SatelliteConnectProviderProps",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.f}});Object.defineProperty(exports,"SatelliteStoreContext",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.g}});Object.defineProperty(exports,"getSatelliteExports",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.a}});Object.defineProperty(exports,"useInitializeAutoConnect",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.h}});Object.defineProperty(exports,"useSatelliteConnectStore",{enumerable:true,get:function(){return chunkPUEGOPQT_cjs.i}});exports.ErrorsProvider=Po;exports.NovaConnectLabelsProvider=No;exports.NovaConnectProvider=$e;exports.getBlockchainUtilities=nr;exports.getEvmUtils=rr;exports.getSolanaUtils=ar;exports.initializeBlockchainSupport=sr;exports.isAdapterSupported=ir;//# sourceMappingURL=index.cjs.map
|
|
1
|
+
'use strict';var chunk7YWQRWYN_cjs=require('./chunk-7YWQRWYN.cjs'),chunk7SKDH7XL_cjs=require('./chunk-7SKDH7XL.cjs'),chunkL7YY2MZS_cjs=require('./chunk-L7YY2MZS.cjs'),chunkPTHXIVB5_cjs=require('./chunk-PTHXIVB5.cjs'),chunkPUEGOPQT_cjs=require('./chunk-PUEGOPQT.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');var fe=({title:o,rawError:t,onCopyComplete:r,errorType:n,isConnected:e,...l})=>jsxRuntime.jsx(chunk7YWQRWYN_cjs.D,{title:o,rawError:t,onCopyComplete:r,customization:l.customization}),ve=o=>{let t=chunk7SKDH7XL_cjs.h();return jsxRuntime.jsx(reactToastify.ToastContainer,{...o,role:"alert","aria-live":"assertive","aria-label":t.somethingWentWrong})},ge=(o,t)=>{o(t.title,t.rawError,t.errorKey);},be=o=>{o();},ye=(o,t)=>{o&&process.env.NODE_ENV==="development"&&console.log("Error copied to clipboard:",t.substring(0,100));},Te=o=>o,Ee=o=>o;function Po({containerId:o="nova-connect-errors",position:t="top-center",autoClose:r=7e3,draggable:n=false,customization:e}){let l=chunk7SKDH7XL_cjs.h(),s=chunkPUEGOPQT_cjs.i(d=>d.switchNetworkError),x=chunkPUEGOPQT_cjs.i(d=>d.activeConnection),k=chunkPUEGOPQT_cjs.i(d=>d.connectionError),{ToastError:h=fe,Container:g=ve}=e?.components??{},{showError:u=ge,dismissError:O=be,onCopyComplete:H=ye}=e?.handlers??{},{errorTitle:T=Te,errorHash:P=Ee}=e??{},M=react.useRef(new Set),R=react.useRef(null),i=react.useMemo(()=>{let d=!!k,y=!!s,D=!!x?.isConnected;return {hasWalletError:d,hasSwitchError:y,isConnected:D,hasAnyError:d||y,primaryError:k||s||null,errorType:d?"wallet":y?"switch":null}},[k,s,x?.isConnected]),z=react.useMemo(()=>{switch(i.errorType){case "wallet":return l.connectionError;case "switch":return l.errorWhenChainSwitching;default:return l.somethingWentWrong}},[i.errorType,l]),p=react.useMemo(()=>T(z,{errorType:i.errorType}),[T,z,i.errorType]),I=react.useMemo(()=>i.primaryError?`${i.errorType}-${i.primaryError.substring(0,50)}`:null,[i.primaryError,i.errorType]),f=react.useMemo(()=>P(I,{primaryError:i.primaryError,errorType:i.errorType}),[P,I,i.primaryError,i.errorType]),E=react.useCallback(()=>{O(()=>{R.current&&(reactToastify.toast.dismiss(R.current),R.current=null),reactToastify.toast.dismiss({containerId:o});});},[o,O]),F=react.useCallback((d,y)=>{H(d,y,i.errorType);},[H,i.errorType]),a=react.useCallback((d,y,D)=>{if(E(),!M.current.has(D))try{let V={containerId:o,toastId:D,onClose:()=>{M.current.delete(D),R.current=null;}},K=e?.toastOptions?.error?.({title:d,rawError:y,errorType:i.errorType,isConnected:i.isConnected}),J={...V,...K};reactToastify.toast.error(jsxRuntime.jsx(h,{title:d,rawError:y,errorType:i.errorType,isConnected:i.isConnected,onCopyComplete:Q=>F(Q,y),customization:e?.toastErrorCustomization}),J),M.current.add(D),R.current=D;}catch(V){console.error("Failed to show error toast:",V);}},[E,o,e?.toastOptions?.error,e?.toastErrorCustomization,h,i.errorType,i.isConnected,F]),v=react.useCallback((d,y,D)=>{u(a,{title:d,rawError:y,errorKey:D,errorType:i.errorType});},[a,u,i.errorType]);react.useEffect(()=>{let{hasAnyError:d,isConnected:y,primaryError:D}=i;if(y&&!d){E(),M.current.clear();return}if(d&&D&&f){if(y&&i.errorType!=="switch")return;v(p,D,f);}},[i,p,f,v,E]),react.useEffect(()=>()=>{E(),M.current.clear();},[E]);let b=react.useMemo(()=>e?.classNames?.container?e.classNames.container({hasErrors:i.hasAnyError,errorType:i.errorType}):"novacon:p-0 novacon:bg-transparent",[e,i.hasAnyError,i.errorType]),C=react.useMemo(()=>({containerId:o,position:t,closeOnClick:false,icon:false,closeButton:novaCore.ToastCloseButton,autoClose:r,hideProgressBar:false,newestOnTop:false,pauseOnFocusLoss:false,draggable:n,pauseOnHover:true,theme:"light",transition:reactToastify.Bounce}),[o,t,r,n]),N=react.useMemo(()=>({...C,...e?.containerProps,className:b}),[C,e?.containerProps,b]);return jsxRuntime.jsx(g,{...N})}Po.displayName="ErrorsProvider";function No({labels:o,children:t}){let r=react.useMemo(()=>o,[o]);if(process.env.NODE_ENV==="development"){(!o||typeof o!="object")&&console.warn("NovaConnectLabelsProvider: labels prop should be an object");let e=["connectWallet","disconnect","connecting","connected","error","success"].filter(l=>!(l in o));e.length>0&&console.warn(`NovaConnectLabelsProvider: Missing required labels: ${e.join(", ")}`);}return jsxRuntime.jsx(chunk7SKDH7XL_cjs.g.Provider,{value:r,children:t})}No.displayName="NovaConnectLabelsProvider";function Ie(o,t){if(!o||!Array.isArray(o)||!t)return;let r=o.find(n=>n&&typeof n=="object"&&"name"in n&&typeof n.name=="string"?orbitCore.formatConnectorName(n.name)===t:false);if(r&&typeof r=="object"&&"name"in r&&typeof r.name=="string")return r.name}var Xo=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("div",{ref:e,className:novaCore.cn("novacon:relative novacon:flex novacon:w-full novacon:flex-col",o),...n,children:t}));Xo.displayName="DefaultModalContainer";var Yo=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("div",{ref:e,className:o,...n,children:jsxRuntime.jsx(novaCore.DialogHeader,{children:t})}));Yo.displayName="DefaultModalHeader";var Zo=react.forwardRef(({className:o,onClick:t,modalData:r,...n},e)=>jsxRuntime.jsx("button",{ref:e,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:t,...n,children:jsxRuntime.jsx(outline.InformationCircleIcon,{width:20,height:20,className:"novacon:mr-1","aria-hidden":"true"})}));Zo.displayName="DefaultInfoButton";var oe=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx(novaCore.DialogTitle,{ref:e,className:novaCore.cn("novacon:flex novacon:items-center",o),...n,children:t}));oe.displayName="DefaultTitle";var ee=react.forwardRef(({className:o,onClick:t,modalData:r,...n},e)=>jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{ref:e,type:"button",onClick:t,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),...n,children:jsxRuntime.jsx(novaCore.CloseIcon,{"aria-hidden":"true"})})}));ee.displayName="DefaultCloseButton";var te=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("main",{ref:e,className:novaCore.cn("novacon:flex novacon:flex-col novacon:gap-4 novacon:p-4",o),id:"connect-modal-content",role:"main",...n,children:t}));te.displayName="DefaultMainContent";var ne=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("footer",{ref:e,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",...n,children:t}));ne.displayName="DefaultFooter";var re=react.forwardRef(({className:o,onClick:t,children:r,modalData:n,...e},l)=>jsxRuntime.jsx("button",{ref:l,type:"button",onClick:t,className:novaCore.cn(novaCore.standardButtonClasses,o),...e,children:r}));re.displayName="DefaultBackButton";var ae=react.forwardRef(({className:o,onClick:t,children:r,disabled:n,loading:e,buttonConfig:l,modalData:s,...x},k)=>jsxRuntime.jsx("button",{ref:k,type:"button",onClick:t,disabled:n||e,className:novaCore.cn(novaCore.standardButtonClasses,o),...x,children:e?"Loading...":r}));ae.displayName="DefaultActionButton";var se=react.forwardRef(({className:o,children:t,modalData:r,...n},e)=>jsxRuntime.jsx("span",{ref:e,className:novaCore.cn("novacon:sr-only",o),...n,children:t}));se.displayName="DefaultActionDescription";var ie=react.forwardRef(({children:o,className:t,...r},n)=>{let{modalData:e,...l}=r;return jsxRuntime.jsx("div",{ref:n,className:t,...l,children:o})});ie.displayName="DefaultEmptyState";var wo=react.memo(({appChains:o,solanaRPCUrls:t,withImpersonated:r,customization:n={}})=>{let{isConnectModalOpen:e,setIsConnectModalOpen:l,setConnectModalContentType:s,setActiveConnector:x,setImpersonatedAddress:k,setIsConnected:h,connectModalContentType:g,selectedAdapter:u,setSelectedAdapter:O,isConnected:H,activeConnector:T,impersonatedAddress:P}=chunk7SKDH7XL_cjs.d(),M=chunkPUEGOPQT_cjs.i(m=>m.connectionError),R=chunkPUEGOPQT_cjs.i(m=>m.getConnectors),i=chunkPUEGOPQT_cjs.i(m=>m.connect),z=chunkPUEGOPQT_cjs.i(m=>m.activeConnection),p=chunk7SKDH7XL_cjs.h(),I=react.useContext(chunkPUEGOPQT_cjs.g),f=react.useMemo(()=>{if(e)return R()},[e,R]),E=react.useMemo(()=>chunk7SKDH7XL_cjs.u({connectors:f,selectedAdapter:u}),[f,u]),F=react.useMemo(()=>M?typeof M=="string"?new Error(M):M:null,[M]),a=react.useMemo(()=>({contentType:g,selectedAdapter:u,activeConnector:T,impersonatedAddress:P,isConnected:H,isOpen:e,error:F,connectors:f,filteredConnectors:E,labels:p}),[g,u,T,P,H,e,F,f,E,p]);react.useEffect(()=>{e&&(s("connectors"),O(void 0),x(void 0),k(""),h(false));},[e]);let{components:v={},classNames:b={},handlers:C={},config:N={},childComponents:d={}}=n,y=v.ModalContainer||Xo,D=v.ModalHeader||Yo,V=v.InfoButton||Zo,K=v.Title||oe,J=v.CloseButton||ee,Q=v.MainContent||te,X=v.Footer||ne,io=v.BackButton||re,Y=v.ActionButton||ae,lo=v.ActionDescription||se,G=v.EmptyState||ie,go=v.Dialog||novaCore.Dialog,co=v.DialogContent||novaCore.DialogContent,to=v.MotionDiv||framerMotion.motion.div,no=react.useCallback(()=>{switch(g){case "about":return p.aboutWallets;case "getWallet":return p.getWallet;case "connecting":return u&&T&&f&&Ie(f[u],T)||p.connectingEllipsis;case "impersonate":return p.connectImpersonatedWallet;default:return p.connectWallet}},[g,u,T,f,p]),Z=react.useCallback(()=>"connectors",[g]),oo=react.useCallback(m=>{C?.onOpenChange?C.onOpenChange(m,a):l(m);},[C?.onOpenChange,a,l]),bo=react.useCallback(()=>{let m=()=>s(Z());C?.onBack?C.onBack(a,m):m();},[C?.onBack,a,s,Z]),yo=react.useCallback(()=>{C?.onInfoClick?C.onInfoClick(a):s("about");},[C?.onInfoClick,a,s]),_=react.useCallback(async(m,To)=>{await i({connectorType:m,chainId:chunk7SKDH7XL_cjs.q({appChains:o,selectedAdapter:To,solanaRPCUrls:t})});try{await orbitCore.waitFor(()=>I?.getState().activeConnection?.isConnected),h(!0);let Eo=setTimeout(()=>l(!1),400),me=setTimeout(()=>h(!1),500);await orbitCore.delay(null,500),clearTimeout(Eo),clearTimeout(me);}catch(Eo){console.error(Eo);}},[i,o,u,t]),j=react.useCallback(async(m,To)=>{O(m),s("connecting"),await _(To,m);},[_]),Bo=react.useCallback(m=>{x(orbitCore.formatConnectorName(m.name)),m.adapters.length===1?(O(m.adapters[0]),s(orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?"impersonate":"connecting")):u?s(orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?"impersonate":"connecting"):orbitCore.formatConnectorName(m.name)==="impersonatedwallet"?s("impersonate"):s("network");},[u]),ce=react.useCallback(()=>{switch(g){case "network":return jsxRuntime.jsx(chunk7YWQRWYN_cjs.B,{activeConnector:T,connectors:E,onClick:j,customization:d.networkSelections});case "connectors":return f?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(chunk7YWQRWYN_cjs.C,{networks:Object.keys(f),selectedAdapter:u,onSelect:m=>O(m),customization:d.networkTabs}),jsxRuntime.jsx(chunk7YWQRWYN_cjs.y,{isOnlyOneNetwork:Object.keys(f).length===1,connectors:E,selectedAdapter:u,onClick:Bo,setContentType:s,appChains:o,solanaRPCUrls:t,setIsConnected:h,setIsOpen:l,withImpersonated:r,customization:d.connectorsSelections})]}):jsxRuntime.jsx(G,{className:b.emptyConnectors?.({modalData:a}),modalData:a,children:"No connectors available"});case "about":return jsxRuntime.jsx(chunk7YWQRWYN_cjs.s,{customization:d.aboutWallets});case "getWallet":return jsxRuntime.jsx(chunk7YWQRWYN_cjs.z,{customization:d.getWallet});case "connecting":return jsxRuntime.jsx(chunk7YWQRWYN_cjs.v,{selectedAdapter:u,connectors:E,activeConnector:T,isConnected:H,customization:d.connecting});case "impersonate":return jsxRuntime.jsx(chunk7YWQRWYN_cjs.A,{selectedAdapter:u,impersonatedAddress:P,setImpersonatedAddress:k,customization:d.impersonateForm})}},[g,T,E,j,d,f,u,Bo,H,P]),$=react.useCallback(()=>{switch(g){case "connectors":return {title:p.iDontHaveWallet,onClick:()=>{C.onActionClick?.connectors?C.onActionClick.connectors(a):s("getWallet");}};case "getWallet":return {title:p.choseWallet,onClick:()=>{C.onActionClick?.getWallet?C.onActionClick.getWallet(a):window.open(chunk7SKDH7XL_cjs.x[u??Object.keys(f)[0]]?.choseWallet,"_blank","noopener,noreferrer");}};case "about":return {title:p.learnMore,onClick:()=>{C.onActionClick?.about?C.onActionClick.about(a):window.open(chunk7SKDH7XL_cjs.x[u??Object.keys(f)[0]]?.about,"_blank","noopener,noreferrer");}};case "impersonate":return {title:p.connect,onClick:async()=>{if(C.onActionClick?.impersonate)await C.onActionClick.impersonate(a);else {let m=P.trim();if(M||!m||chunk7SKDH7XL_cjs.p(m)||z?.isConnected)return;orbitCore.impersonatedHelpers.setImpersonated(m),s("connecting"),await _(orbitCore.getConnectorTypeFromName(u??orbitCore.OrbitAdapter.EVM,T??""),u??orbitCore.OrbitAdapter.EVM);}}};case "connecting":return M&&u&&T?{title:p.tryAgain,onClick:async()=>{C.onActionClick?.connecting?await C.onActionClick.connecting(a):await _(orbitCore.getConnectorTypeFromName(u,T),u);}}:void 0}},[g,p,C,a,u,f,P,M,_,T])(),de=react.useCallback(()=>{switch(g){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 ""}},[g]);return jsxRuntime.jsx(go,{open:e,onOpenChange:oo,children:jsxRuntime.jsx(co,{className:novaCore.cn("novacon:w-full novacon:sm:max-w-md"),children:jsxRuntime.jsx(to,{layout:true,transition:{layout:{duration:N.animation?.disabled?0:N.animation?.layoutDuration??1e-4}},children:jsxRuntime.jsxs(y,{className:b.modalContainer?.({modalData:a}),modalData:a,children:[jsxRuntime.jsxs(D,{className:b.header?.({modalData:a}),modalData:a,children:[jsxRuntime.jsxs(K,{className:b.title?.({modalData:a}),modalData:a,children:[g==="connectors"&&jsxRuntime.jsx(V,{className:b.infoButton?.({modalData:a}),onClick:yo,"aria-label":N.ariaLabels?.infoButton?.(a)||`${p.learnMore} ${p.aboutWallets}`,modalData:a}),no()]}),jsxRuntime.jsx(J,{className:b.closeButton?.({modalData:a}),onClick:()=>oo(false),"aria-label":N.ariaLabels?.closeButton?.(a)||p.closeModal,modalData:a})]}),jsxRuntime.jsx(Q,{className:b.mainContent?.({modalData:a}),modalData:a,children:ce()}),jsxRuntime.jsxs(X,{className:b.footer?.({modalData:a}),modalData:a,children:[jsxRuntime.jsx("div",{className:"novacon:flex novacon:items-center novacon:gap-4",children:g!=="connectors"&&jsxRuntime.jsx(io,{className:b.backButton?.({modalData:a}),onClick:bo,"aria-label":N.ariaLabels?.backButton?.(a)||`${p.back} to previous step`,modalData:a,children:p.back})}),$&&jsxRuntime.jsxs("div",{className:"novacon:flex novacon:items-center novacon:gap-3",children:[jsxRuntime.jsx(Y,{className:b.actionButton?.({modalData:a,buttonConfig:$}),onClick:$.onClick,disabled:$.disabled,loading:$.loading,"aria-describedby":"bottom-action-description",modalData:a,buttonConfig:$,children:$.title}),jsxRuntime.jsx(lo,{id:"bottom-action-description",className:b.actionDescription?.({modalData:a}),modalData:a,children:de()})]})]})]})})})})});wo.displayName="ConnectModal";var Ve=({labels:o,children:t})=>jsxRuntime.jsx(No,{labels:o,children:t}),Ue=({customization:o})=>jsxRuntime.jsx(Po,{customization:o}),qe=(o,t)=>novaCore.deepMerge(o,t||{}),Ge=o=>o,_e=o=>o,je=(o,t,r)=>o;function $e({labels:o,children:t,appChains:r,solanaRPCUrls:n,transactionPool:e,pulsarAdapter:l,withImpersonated:s,withBalance:x,withChain:k,customization:h}){let g=chunkPUEGOPQT_cjs.i(j=>j.activeConnection),u=chunkPUEGOPQT_cjs.i(j=>j.connectionError),{LabelsProvider:O=Ve,ErrorsProvider:H=Ue}=h?.components??{},{merge:T=qe,transform:P=Ge}=h?.labels??{},{transform:M=_e}=h?.contextValue??{},{providerTree:R=je}=h?.rendering??{},i=react.useMemo(()=>T(chunkPTHXIVB5_cjs.a,o||{}),[o,T]),[z,p]=react.useState(false),[I,f]=react.useState(false),[E,F]=react.useState(false),[a,v]=react.useState(false),[b,C]=react.useState("idle"),[N,d]=react.useState("connectors"),[y,D]=react.useState(void 0),[V,K]=react.useState(void 0),[J,Q]=react.useState(""),[X,io]=react.useState(false),[Y,lo]=react.useState("main"),G=react.useMemo(()=>({isConnected:X,activeConnection:g,connectionError:u,modalStates:{isConnectModalOpen:z,isConnectedModalOpen:I,isChainsListOpen:E,isChainsListOpenMobile:a},contentTypes:{connectModal:N,connectedModal:Y},statuses:{connectedButton:b}}),[X,g,u,z,I,E,a,N,Y,b]),go=react.useMemo(()=>P(i,G),[i,P,G]),co=react.useMemo(()=>M({appChains:r,solanaRPCUrls:n,withImpersonated:s,withBalance:x,withChain:k,isConnectModalOpen:z,setIsConnectModalOpen:p,isConnectedModalOpen:I,setIsConnectedModalOpen:f,isChainsListOpen:E,setIsChainsListOpen:F,isChainsListOpenMobile:a,setIsChainsListOpenMobile:v,connectedButtonStatus:b,setConnectedButtonStatus:C,connectedModalContentType:Y,setConnectedModalContentType:lo,connectModalContentType:N,setConnectModalContentType:d,selectedAdapter:y,setSelectedAdapter:D,activeConnector:V,setActiveConnector:K,impersonatedAddress:J,setImpersonatedAddress:Q,isConnected:X,setIsConnected:io},G),[r,n,s,x,k,z,p,I,f,E,F,a,v,b,C,Y,lo,N,d,y,D,V,K,J,Q,X,io,M,G]),to=jsxRuntime.jsx(H,{customization:h?.errors}),no=jsxRuntime.jsx(O,{labels:go,children:t}),Z=r||n?jsxRuntime.jsx(wo,{withImpersonated:s,solanaRPCUrls:n,appChains:r,customization:h?.modals?.connectModal}):null,oo=r||n?jsxRuntime.jsx(chunk7YWQRWYN_cjs.r,{solanaRPCUrls:n,appChains:r,transactionPool:e,pulsarAdapter:l,customization:h?.modals?.connectedModal}):null,bo=jsxRuntime.jsxs(chunk7SKDH7XL_cjs.c.Provider,{value:co,children:[to,no,Z,oo]}),yo=jsxRuntime.jsxs(chunk7SKDH7XL_cjs.c.Provider,{value:co,children:[to,no,Z,oo]}),_=R(yo,{ErrorsProvider:to,LabelsProvider:no,MainContent:bo,ConnectModal:Z||jsxRuntime.jsx(jsxRuntime.Fragment,{}),ConnectedModal:oo||jsxRuntime.jsx(jsxRuntime.Fragment,{})},G);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:_})}$e.displayName="NovaConnectProvider";var so=typeof process<"u"&&process.env?.NODE_ENV==="production";async function Qn(){let{getAllAdaptersStatus:o}=await import('./getChainsListByConnectorType-LXHMQP2F.cjs');return {hasEvmUtils:await fo(),hasSolanaUtils:await vo(),adaptersStatus:o()}}async function fo(){if(so)try{return new Function('try { return Boolean(require("@tuwaio/orbit-evm") && require("viem")); } catch { return false; }')()}catch{return false}try{return await import('viem'),await import('@tuwaio/orbit-evm'),!0}catch{return false}}async function vo(){if(so)try{return new Function('try { return Boolean(require("@tuwaio/orbit-solana") && require("gill")); } catch { return false; }')()}catch{return false}try{return await import('gill'),await import('@tuwaio/orbit-solana'),!0}catch{return false}}async function Xn(){try{if(!await fo())return {available:!1,error:"EVM packages (viem, @tuwaio/orbit-evm) not available"};if(so)try{let e=new Function('try { return require("./evm"); } catch { return null; }')();return e?new Promise(l=>{if(typeof e.getEvmExports!="function"){l({available:!1,error:"EVM module does not have getEvmExports function"});return}e.getEvmExports().then(s=>{if(!s.available){l({available:!1,error:s.error||"Failed to load EVM exports"});return}l({...e,...s});}).catch(s=>{l({available:!1,error:s instanceof Error?s.message:"Failed to load EVM exports"});});}):{available:!1,error:"Failed to load EVM module"}}catch(n){return {available:!1,error:n instanceof Error?n.message:"Failed to load EVM module"}}let t=await import('./evm/index.cjs'),r=await t.getEvmExports();return r.available?{...t,...r}:{available:!1,error:r.error||"Failed to load EVM exports"}}catch(o){return {available:false,error:o instanceof Error?o.message:"EVM utilities not available"}}}async function Yn(){try{if(!await vo())return {available:!1,error:"Solana packages (gill, @tuwaio/orbit-solana) not available"};if(so)try{let e=new Function('try { return require("./solana"); } catch { return null; }')();return e?new Promise(l=>{if(typeof e.getSolanaExports!="function"){l({available:!1,error:"Solana module does not have getSolanaExports function"});return}e.getSolanaExports().then(s=>{if(!s.available){l({available:!1,error:s.error||"Failed to load Solana exports"});return}l({...e,...s});}).catch(s=>{l({available:!1,error:s instanceof Error?s.message:"Failed to load Solana exports"});});}):{available:!1,error:"Failed to load Solana module"}}catch(n){return {available:!1,error:n instanceof Error?n.message:"Failed to load Solana module"}}let t=await import('./solana/index.cjs'),r=await t.getSolanaExports();return r.available?{...t,...r}:{available:!1,error:r.error||"Failed to load Solana exports"}}catch(o){return {available:false,error:o instanceof Error?o.message:"Solana utilities not available"}}}async function Zn(){let o={evm:false,solana:false,errors:[]};try{let t=await fo(),r=await vo();if(t||r)if(so)try{let e=new Function('try { return require("./utils/getChainsListByConnectorType"); } catch { return null; }')();if(!e)return o.errors.push("Failed to load chain adapter utilities"),o;let l=[];t&&l.push(orbitCore.OrbitAdapter.EVM),r&&l.push(orbitCore.OrbitAdapter.SOLANA),await e.preloadChainAdapters(l),o.evm=t,o.solana=r;}catch(n){let e=n instanceof Error?n.message:"Failed to initialize chain adapters";o.errors.push(e);}else {let{preloadChainAdapters:n}=await import('./getChainsListByConnectorType-LXHMQP2F.cjs'),e=[];t&&e.push(orbitCore.OrbitAdapter.EVM),r&&e.push(orbitCore.OrbitAdapter.SOLANA),await n(e),o.evm=t,o.solana=r;}else o.errors.push("No blockchain packages available for initialization");}catch(t){let r=t instanceof Error?t.message:"Unknown initialization error";o.errors.push(r);}return o}async function or(o){return o===orbitCore.OrbitAdapter.Starknet||o!==orbitCore.OrbitAdapter.EVM&&o!==orbitCore.OrbitAdapter.SOLANA?false:o===orbitCore.OrbitAdapter.EVM?fo():vo()}Object.defineProperty(exports,"NovaConnectLabelsContext",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.g}});Object.defineProperty(exports,"NovaConnectProviderContext",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.c}});Object.defineProperty(exports,"NovaConnectProviderError",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.b}});Object.defineProperty(exports,"createLabelsSubset",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.o}});Object.defineProperty(exports,"getAvailableChainIds",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.r}});Object.defineProperty(exports,"getAvailableSolanaClusters",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.y}});Object.defineProperty(exports,"getConnectChainId",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.q}});Object.defineProperty(exports,"getFilteredConnectors",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.u}});Object.defineProperty(exports,"getGroupedConnectors",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.s}});Object.defineProperty(exports,"getLabelWithFallback",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.n}});Object.defineProperty(exports,"getNetworkIcon",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.w}});Object.defineProperty(exports,"hasAvailableConnectors",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.t}});Object.defineProperty(exports,"hasConnectorsForAdapter",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.v}});Object.defineProperty(exports,"hasLabel",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.k}});Object.defineProperty(exports,"isAddress",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.p}});Object.defineProperty(exports,"isDefaultLabels",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.m}});Object.defineProperty(exports,"isValidSolanaCluster",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.z}});Object.defineProperty(exports,"networksLinks",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.x}});Object.defineProperty(exports,"useGetWalletNameAndAvatar",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.a}});Object.defineProperty(exports,"useHasNovaConnectContext",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.e}});Object.defineProperty(exports,"useLabelsByCategory",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.l}});Object.defineProperty(exports,"useNovaConnect",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.d}});Object.defineProperty(exports,"useNovaConnectLabel",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.i}});Object.defineProperty(exports,"useNovaConnectLabels",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.h}});Object.defineProperty(exports,"useNovaConnectLabelsSubset",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.j}});Object.defineProperty(exports,"useNovaConnectOptional",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.f}});Object.defineProperty(exports,"useWalletChainsList",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.A}});Object.defineProperty(exports,"useWalletNativeBalance",{enumerable:true,get:function(){return chunk7SKDH7XL_cjs.B}});Object.defineProperty(exports,"getAdapterStatus",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.k}});Object.defineProperty(exports,"getAllAdaptersStatus",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.l}});Object.defineProperty(exports,"getAvailableSolanaClustersAsync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.g}});Object.defineProperty(exports,"getChainsListByConnectorType",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.b}});Object.defineProperty(exports,"getChainsListByConnectorTypeAsync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.a}});Object.defineProperty(exports,"getChainsListByConnectorTypeSync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.b}});Object.defineProperty(exports,"getWalletChains",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.i}});Object.defineProperty(exports,"isEvmChainList",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.e}});Object.defineProperty(exports,"isEvmChainListAsync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.c}});Object.defineProperty(exports,"isEvmChainListSync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.e}});Object.defineProperty(exports,"isSolanaChainList",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.f}});Object.defineProperty(exports,"isSolanaChainListAsync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.d}});Object.defineProperty(exports,"isSolanaChainListSync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.f}});Object.defineProperty(exports,"isValidSolanaClusterAsync",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.h}});Object.defineProperty(exports,"preloadChainAdapters",{enumerable:true,get:function(){return chunkL7YY2MZS_cjs.j}});exports.ErrorsProvider=Po;exports.NovaConnectLabelsProvider=No;exports.NovaConnectProvider=$e;exports.getBlockchainUtilities=Qn;exports.getEvmUtils=Xn;exports.getSolanaUtils=Yn;exports.initializeBlockchainSupport=Zn;exports.isAdapterSupported=or;//# sourceMappingURL=index.cjs.map
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|