@tuwaio/nova-transactions 1.0.0-fix-integrate-orbit-alpha.22.648b8ee → 1.0.0-fix-integrate-orbit-alpha.23.c69d70b

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,16 +1,16 @@
1
- 'use strict';var react=require('react'),jsxRuntime=require('react/jsx-runtime'),novaCore=require('@tuwaio/nova-core'),pulsarCore=require('@tuwaio/pulsar-core'),reactToastify=require('react-toastify'),solid=require('@heroicons/react/24/solid'),reactWeb3Icons=require('@bgd-labs/react-web3-icons'),utils=require('@bgd-labs/react-web3-icons/dist/utils'),orbitCore=require('@tuwaio/orbit-core'),St=require('dayjs'),Qe=require('dayjs/plugin/relativeTime');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var St__default=/*#__PURE__*/_interopDefault(St);var Qe__default=/*#__PURE__*/_interopDefault(Qe);var z={transactionsModal:{history:{title:"Transactions History",connectWalletTitle:"Connect Wallet",connectWalletMessage:"Please connect your wallet to see your past activity.",noTransactionsTitle:"No Transactions Yet",noTransactionsMessage:"Once you interact with the app, your transaction history will appear here."}},toast:{openTransactionsInfo:"Open transactions"},statuses:{pending:"Pending",success:"Success",failed:"Failed",reverted:"Reverted",replaced:"Replaced",unknown:"Unknown",confirmationsLabel:"Confirmations"},hashLabels:{gelato:"Gelato Task ID",safe:"Safe Tx Hash",original:"Original Tx Hash",replaced:"Replaced Tx Hash",default:"Tx Hash",recentBlockhash:"Recent Blockhash",solana:"Signature"},txInfo:{started:"Started",network:"Network",slot:"Slot"},txError:{title:"Error",copied:"Copied!"},trackingModal:{title:"Transaction Overview",processing:"Processing...",close:"Close",allTransactions:"All transactions",retry:"Retry",progressIndicator:{created:"Created",processing:"Processing",succeed:"Succeed"}},trackedTxButton:{loading:"Processing...",succeed:"Success",failed:"Failed",replaced:"Replaced"},actions:{copy:"Copy address",viewOnExplorer:"View on explorer",close:"Close",cancel:"Cancel",speedUp:"Speed up"}};var nt=react.createContext(z),it=({labels:t,children:e})=>jsxRuntime.jsx(nt.Provider,{value:t,children:e}),m=()=>react.useContext(nt);function E({label:t,hash:e,explorerUrl:r,variant:s="default",className:n}){let{isCopied:l,copy:c}=novaCore.useCopyToClipboard(),{actions:i,txError:p}=m(),o=novaCore.cn("flex items-center justify-between",{"text-sm":s==="default","text-xs":s==="compact"},n),a=novaCore.cn("pr-1",{"font-bold text-[var(--tuwa-text-primary)]":s==="default","font-medium text-[var(--tuwa-text-secondary)]":s==="compact"}),d=jsxRuntime.jsx("span",{className:"font-mono",children:novaCore.textCenterEllipsis(e,5,5)});return jsxRuntime.jsxs("div",{className:o,children:[t&&jsxRuntime.jsxs("span",{className:a,children:[t,":"]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-x-2",children:[r?jsxRuntime.jsxs("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-x-1 text-[var(--tuwa-text-accent)] transition-colors hover:underline",title:i.viewOnExplorer,"aria-label":i.viewOnExplorer,children:[d,jsxRuntime.jsx(solid.ArrowTopRightOnSquareIcon,{className:"h-4 w-4"})]}):jsxRuntime.jsx("span",{className:"text-[var(--tuwa-text-primary)]",children:d}),jsxRuntime.jsx("button",{type:"button",onClick:()=>c(e),className:"cursor-pointer text-[var(--tuwa-text-tertiary)] transition-colors hover:text-[var(--tuwa-text-secondary)]",title:l?p.copied:i.copy,"aria-label":l?p.copied:i.copy,children:l?jsxRuntime.jsx(solid.CheckIcon,{className:"h-4 w-4 text-[var(--tuwa-success-icon)]"}):jsxRuntime.jsx(solid.DocumentDuplicateIcon,{className:"h-4 w-4"})})]})]})}var lt={[pulsarCore.TransactionStatus.Success]:{index:1,colorClass:"text-[var(--tuwa-success-text)]"},[pulsarCore.TransactionStatus.Failed]:{index:2,colorClass:"text-[var(--tuwa-error-text)]"},[pulsarCore.TransactionStatus.Replaced]:{index:3,colorClass:"text-[var(--tuwa-text-secondary)]"},default:{index:0,colorClass:"text-[var(--tuwa-text-primary)]"}};function A({txStatus:t,source:e,fallback:r,variant:s,className:n,applyColor:l=false}){let c,i="";if(typeof e=="string")c=e;else if(Array.isArray(e)){let a=lt[t||"default"]??lt.default;c=e[a.index],l&&(i=a.colorClass);}else c=r;return c?jsxRuntime.jsx("div",{className:novaCore.cn(s==="title"?"text-sm font-semibold text-[var(--tuwa-text-primary)]":"mt-1 text-xs text-[var(--tuwa-text-secondary)]",i,n),children:c}):null}function dt({closeToast:t}){let{actions:e}=m();return jsxRuntime.jsx("button",{type:"button",onClick:t,"aria-label":e.close,title:e.close,className:novaCore.cn("absolute top-2 right-2 cursor-pointer rounded-full p-1","text-[var(--tuwa-text-tertiary)] transition-colors","hover:bg-[var(--tuwa-bg-muted)] hover:text-[var(--tuwa-text-primary)]"),children:jsxRuntime.jsx(solid.XMarkIcon,{className:"h-5 w-5"})})}function R({tx:t,adapter:e,variant:r="toast",className:s,renderHashLink:n,confirmations:l}){let{hashLabels:c,statuses:i}=m(),p=orbitCore.selectAdapterByKey({adapterKey:t.adapter,adapter:e});if(!p)return null;let o=T=>n?n(T):jsxRuntime.jsx(E,{...T}),a=r==="toast"?"mt-2 flex w-full flex-col gap-y-2 border-t border-[var(--tuwa-border-primary)] pt-2":"flex w-full flex-col gap-y-2",d=c[String(t.tracker)],x=d?o({label:d,hash:t.txKey,variant:t.tracker!==pulsarCore.TransactionTracker.Solana?"compact":"default",explorerUrl:p.getExplorerTxUrl&&t.tracker===pulsarCore.TransactionTracker.Solana?p?.getExplorerTxUrl(t):void 0}):null,C=(()=>{let T=t.hash,f=t.replacedTxHash;return !T&&!f?null:f?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[T&&o({label:c.original,hash:T,variant:"compact"}),typeof p.getExplorerTxUrl<"u"&&o({label:c.replaced,hash:f,explorerUrl:p.getExplorerTxUrl(t)})]}):T&&typeof p.getExplorerTxUrl<"u"&&o({label:c.default,hash:T,explorerUrl:p.getExplorerTxUrl(t)})})(),g=d&&d!==c.default&&t.txKey!==t.hash;return jsxRuntime.jsxs("div",{className:novaCore.cn(a,s),children:[g&&x,C,typeof l=="number"&&jsxRuntime.jsxs("p",{className:"text-xs text-[var(--tuwa-text-tertiary)]",children:[i.confirmationsLabel,": ",l]})]})}var re=t=>({Pending:{label:t.pending,Icon:solid.ArrowPathIcon,badgeClasses:"bg-[var(--tuwa-pending-bg)] text-[var(--tuwa-pending-text)]",iconClasses:"animate-spin text-[var(--tuwa-pending-icon)]"},[pulsarCore.TransactionStatus.Success]:{label:t.success,Icon:solid.CheckCircleIcon,badgeClasses:"bg-[var(--tuwa-success-bg)] text-[var(--tuwa-success-text)]",iconClasses:"text-[var(--tuwa-success-icon)]"},[pulsarCore.TransactionStatus.Failed]:{label:t.failed,Icon:solid.XCircleIcon,badgeClasses:"bg-[var(--tuwa-error-bg)] text-[var(--tuwa-error-text)]",iconClasses:"text-[var(--tuwa-error-icon)]"},[pulsarCore.TransactionStatus.Replaced]:{label:t.replaced,Icon:solid.ArrowPathIcon,badgeClasses:"bg-[var(--tuwa-info-bg)] text-[var(--tuwa-info-text)]",iconClasses:"text-[var(--tuwa-info-icon)]"}});function _({tx:t,className:e}){let{statuses:r}=m(),s=react.useMemo(()=>re(r),[r]),n="inline-flex items-center gap-x-1.5 rounded-full px-2 py-1 text-xs font-medium",l=t.pending?"Pending":t.status,c=l?s[l]:null;if(!c)return jsxRuntime.jsx("div",{className:novaCore.cn(n,"bg-[var(--tuwa-info-bg)] text-[var(--tuwa-info-text)]",e),children:t.status??r.unknown});let{label:i,Icon:p,badgeClasses:o,iconClasses:a}=c;return jsxRuntime.jsxs("div",{className:novaCore.cn(n,o,e),children:[jsxRuntime.jsx(p,{className:novaCore.cn("h-4 w-4",a)}),i]})}var pe=({onClick:t,children:e})=>jsxRuntime.jsx("button",{onClick:t,type:"button",className:"cursor-pointer text-sm font-medium text-[var(--tuwa-text-accent)] transition-opacity hover:opacity-80",children:e}),de=({onClick:t,children:e})=>jsxRuntime.jsx("button",{onClick:t,type:"button",className:"cursor-pointer text-sm font-medium text-[var(--tuwa-text-secondary)] transition-opacity hover:opacity-80",children:e}),ue=({onClick:t,children:e})=>jsxRuntime.jsx("button",{className:"cursor-pointer rounded-md bg-gradient-to-r from-[var(--tuwa-button-gradient-from)] to-[var(--tuwa-button-gradient-to)] px-3 py-1 text-xs font-bold text-[var(--tuwa-text-on-accent)] shadow-lg transition-all duration-200 ease-in-out hover:shadow-xl hover:from-[var(--tuwa-button-gradient-from-hover)] hover:to-[var(--tuwa-button-gradient-to-hover)] active:scale-95",onClick:t,type:"button",children:e});function xt({openTxInfoModal:t,tx:e,icon:r,className:s,customization:n,connectedWalletAddress:l,adapter:c}){let{actions:i,toast:p}=m(),o=orbitCore.selectAdapterByKey({adapterKey:e.adapter,adapter:c}),a=!!(e.tracker==="ethereum"&&e.pending&&o?.speedUpTxAction&&o?.cancelTxAction&&e.from.toLowerCase()===l?.toLowerCase()),d=()=>{a&&o.cancelTxAction(e);},x=()=>{a&&o.speedUpTxAction(e);},{StatusAwareText:C=A,TransactionKey:g=R,StatusBadge:T=_,SpeedUpButton:f=pe,CancelButton:S=de,TxInfoButton:v=ue}=n?.components??{};return jsxRuntime.jsxs("div",{className:novaCore.cn("flex w-full flex-col gap-3 rounded-lg bg-[var(--tuwa-bg-primary)] p-4 shadow-md",s),children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx("div",{className:"w-[40px] flex-shrink-0 [&>img]:w-full [&>img]:h-auto",title:utils.getChainName(orbitCore.setChainId(e.chainId)),children:r??jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(e.chainId)})}),jsxRuntime.jsxs("div",{className:"flex-1",children:[jsxRuntime.jsx(C,{txStatus:e.status,source:e.title,fallback:e.type,variant:"title",applyColor:true}),jsxRuntime.jsx(C,{txStatus:e.status,source:e.description,variant:"description"})]})]}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(g,{adapter:c,tx:e,variant:"toast"}),jsxRuntime.jsxs("div",{className:"mt-3 flex items-center justify-between",children:[jsxRuntime.jsx(T,{tx:e}),a?jsxRuntime.jsxs("div",{className:"flex items-center gap-4",children:[jsxRuntime.jsx(f,{onClick:x,children:i.speedUp}),jsxRuntime.jsx(S,{onClick:d,children:i.cancel})]}):t&&!!l&&jsxRuntime.jsx(v,{onClick:t,children:p.openTransactionsInfo})]})]})]})}function bt({adapter:t,onClose:e,onOpenAllTransactions:r,className:s,customization:n,transactionsPool:l,executeTxAction:c,initialTx:i,connectedWalletAddress:p}){let o=react.useMemo(()=>i?.lastTxKey?l[i.lastTxKey]:void 0,[l,i]),a=o??i,d=i?.withTrackedModal&&!o||(o?.isTrackedModalOpen??false),{isProcessing:x,isSucceed:C,isFailed:g,isReplaced:T}=react.useMemo(()=>{let H=o?.status,Et=i?.isInitializing??false,Ot=o?.pending??false;return {isProcessing:Et||Ot,isSucceed:H===pulsarCore.TransactionStatus.Success,isFailed:o?.isError||!!i?.errorMessage,isReplaced:H===pulsarCore.TransactionStatus.Replaced}},[o,i]),f=react.useMemo(()=>a?orbitCore.selectAdapterByKey({adapterKey:a.adapter,adapter:t}):void 0,[a,t]),S=!!(g&&a&&i?.actionFunction&&c),v=!!(f?.speedUpTxAction&&f?.cancelTxAction&&o?.pending&&o.tracker==="ethereum"),U=()=>{if(!S||!f?.retryTxAction)return;let H={adapter:a.adapter,type:a.type,desiredChainID:"desiredChainID"in a?a.desiredChainID:a.chainId,actionFunction:i?.actionFunction,title:a.title,description:a.description,payload:a.payload,rpcUrl:"rpcUrl"in a?a?.rpcUrl:"desiredChainID"in a?a.desiredChainID:a.chainId.split(":")[1],withTrackedModal:"withTrackedModal"in a?a.withTrackedModal:false};f.retryTxAction({tx:H,txKey:o?.txKey??"",onClose:e,executeTxAction:c});},F=()=>{v&&o&&f.cancelTxAction(o);},y=()=>{v&&o&&f.speedUpTxAction(o);},h=n?.components?.Header,I=n?.components?.Footer,W=n?.components?.StatusVisual,at=n?.components?.ProgressIndicator,rt=n?.components?.InfoBlock,st=n?.components?.ErrorBlock;return a?jsxRuntime.jsx(novaCore.Dialog,{open:d,onOpenChange:H=>!H&&e(o?.txKey),children:jsxRuntime.jsx(novaCore.DialogContent,{className:novaCore.cn("w-full sm:max-w-md",n?.modalProps?.className),...n?.modalProps,children:jsxRuntime.jsxs("div",{className:novaCore.cn("relative flex w-full flex-col",s),children:[h?jsxRuntime.jsx(h,{onClose:()=>e(o?.txKey),title:jsxRuntime.jsx(yt,{tx:a})}):jsxRuntime.jsx(be,{onClose:()=>e(o?.txKey),title:jsxRuntime.jsx(yt,{tx:a})}),jsxRuntime.jsxs("main",{className:"flex flex-col gap-4 p-4",children:[W?jsxRuntime.jsx(W,{isProcessing:x,isSucceed:C,isFailed:g,isReplaced:T}):jsxRuntime.jsx(Pt,{isProcessing:x,isSucceed:C,isFailed:g,isReplaced:T}),at?jsxRuntime.jsx(at,{isProcessing:x,isSucceed:C,isFailed:g,isReplaced:T}):jsxRuntime.jsx(ht,{isProcessing:x,isSucceed:C,isFailed:g,isReplaced:T}),rt?jsxRuntime.jsx(rt,{tx:a,adapter:t}):jsxRuntime.jsx(wt,{tx:a,adapter:t}),st?jsxRuntime.jsx(st,{error:o?.errorMessage||i?.errorMessage}):jsxRuntime.jsx(Ct,{error:o?.errorMessage||i?.errorMessage})]}),I?jsxRuntime.jsx(I,{onClose:()=>e(o?.txKey),onOpenAllTransactions:r,isProcessing:x,isFailed:g,canReplace:v,onRetry:S?U:void 0,onSpeedUp:v?y:void 0,onCancel:v?F:void 0,connectedWalletAddress:p}):jsxRuntime.jsx(Ce,{onClose:()=>e(o?.txKey),onOpenAllTransactions:r,isProcessing:x,isFailed:g,canReplace:v,onRetry:S?U:void 0,onSpeedUp:v?y:void 0,onCancel:v?F:void 0,connectedWalletAddress:p})]})})}):null}function yt({tx:t}){return jsxRuntime.jsx(A,{txStatus:"status"in t?t.status:void 0,source:t.title,fallback:t.type,variant:"title",className:"text-lg"})}var be=({onClose:t,title:e})=>{let{actions:r}=m();return jsxRuntime.jsxs(novaCore.DialogHeader,{children:[jsxRuntime.jsx(novaCore.DialogTitle,{children:e}),jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{type:"button",onClick:()=>t(),"aria-label":r.close,className:`cursor-pointer rounded-full p-1
2
- text-[var(--tuwa-text-tertiary)] transition-colors
3
- hover:bg-[var(--tuwa-bg-muted)] hover:text-[var(--tuwa-text-primary)]`,children:jsxRuntime.jsx(novaCore.CloseIcon,{})})})]})},Ce=({onClose:t,onOpenAllTransactions:e,isProcessing:r,onRetry:s,onSpeedUp:n,onCancel:l,canReplace:c,isFailed:i,connectedWalletAddress:p})=>{let{trackingModal:o,actions:a}=m(),d=()=>i&&s?jsxRuntime.jsx("button",{type:"button",onClick:s,className:`cursor-pointer rounded-t-md sm:rounded-md
4
- bg-gradient-to-r from-[var(--tuwa-button-gradient-from)] to-[var(--tuwa-button-gradient-to)]
5
- px-4 py-2 text-sm font-semibold text-[var(--tuwa-text-on-accent)] transition-opacity
6
- hover:from-[var(--tuwa-button-gradient-from-hover)] hover:to-[var(--tuwa-button-gradient-to-hover)]`,children:o.retry}):!r&&!c&&p?jsxRuntime.jsx("button",{type:"button",onClick:e,className:`cursor-pointer rounded-md
7
- bg-[var(--tuwa-bg-muted)] px-4 py-2 text-sm font-semibold text-[var(--tuwa-text-primary)]
8
- transition-colors hover:bg-[var(--tuwa-border-primary)]`,children:o.allTransactions}):null;return jsxRuntime.jsxs("footer",{className:`flex w-full items-center justify-between
9
- border-t border-[var(--tuwa-border-primary)] p-4`,children:[jsxRuntime.jsx("div",{className:"flex items-center gap-4",children:c&&n&&l&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("button",{type:"button",onClick:n,className:`cursor-pointer text-sm font-medium
10
- text-[var(--tuwa-text-accent)] transition-opacity hover:opacity-80`,children:a.speedUp}),jsxRuntime.jsx("button",{type:"button",onClick:l,className:`cursor-pointer text-sm font-medium
11
- text-[var(--tuwa-text-secondary)] transition-opacity hover:opacity-80`,children:a.cancel})]})}),jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx(d,{}),jsxRuntime.jsx("button",{type:"button",onClick:t,disabled:r&&!c,className:`cursor-pointer rounded-md bg-[var(--tuwa-bg-muted)] px-4 py-2 text-sm font-semibold
12
- text-[var(--tuwa-text-primary)] transition-colors hover:bg-[var(--tuwa-border-primary)]
13
- disabled:cursor-not-allowed disabled:opacity-50`,children:r&&!c?o.processing:o.close})]})]})};function Ct({error:t,className:e}){let{isCopied:r,copy:s}=novaCore.useCopyToClipboard(),{actions:n,txError:l}=m();return t?jsxRuntime.jsxs("div",{className:novaCore.cn("rounded-lg border border-[var(--tuwa-error-icon)]/30 bg-[var(--tuwa-error-bg)] p-3 text-sm",e),children:[jsxRuntime.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2 font-bold text-[var(--tuwa-error-icon)]",children:[jsxRuntime.jsx(solid.ExclamationTriangleIcon,{className:"h-5 w-5"}),jsxRuntime.jsx("span",{children:l.title})]}),jsxRuntime.jsx("button",{type:"button",onClick:()=>s(t),title:r?l.copied:n.copy,"aria-label":r?l.copied:`${n.copy} error message`,className:"cursor-pointer text-[var(--tuwa-error-icon)]/50 transition-colors hover:text-[var(--tuwa-error-icon)]",children:r?jsxRuntime.jsx(solid.CheckIcon,{className:"h-5 w-5 text-[var(--tuwa-success-icon)]"}):jsxRuntime.jsx(solid.DocumentDuplicateIcon,{className:"h-5 w-5"})})]}),jsxRuntime.jsx("div",{className:"max-h-24 overflow-y-auto rounded bg-[var(--tuwa-bg-primary)] p-2",children:jsxRuntime.jsx("p",{className:"font-mono text-xs text-[var(--tuwa-error-text)] break-all",children:t})})]}):null}function Re({label:t,value:e}){return jsxRuntime.jsxs("div",{className:"flex items-center justify-between text-sm",children:[jsxRuntime.jsx("span",{className:"text-[var(--tuwa-text-secondary)]",children:t}),jsxRuntime.jsx("span",{className:"font-medium text-[var(--tuwa-text-primary)]",children:e})]})}function wt({tx:t,adapter:e,className:r,customization:s}){let{txInfo:n,statuses:l,hashLabels:c}=m(),i=orbitCore.selectAdapterByKey({adapterKey:t.adapter,adapter:e});if(!i)return null;let{InfoRow:p=Re}=s?.components??{},o="chainId"in t?t.chainId:t.desiredChainID,a=t.adapter===orbitCore.OrbitAdapter.SOLANA,d=a?t:void 0;return jsxRuntime.jsxs("div",{className:novaCore.cn("flex flex-col gap-3 rounded-lg border border-[var(--tuwa-border-primary)] bg-[var(--tuwa-bg-primary)] p-3",r),children:[jsxRuntime.jsx(p,{label:n.network,value:jsxRuntime.jsxs("div",{className:"flex items-center justify-end gap-2",children:[jsxRuntime.jsx("div",{className:"h-4 w-4",children:jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(o)})}),jsxRuntime.jsx("span",{children:utils.getChainName(orbitCore.setChainId(o))})]})}),t.localTimestamp&&jsxRuntime.jsx(p,{label:n.started,value:St__default.default.unix(t.localTimestamp).format("MMM D, HH:mm:ss")}),a&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[d?.slot&&jsxRuntime.jsx(p,{label:n.slot,value:jsxRuntime.jsx(E,{hash:d.slot.toString(),explorerUrl:i?.getExplorerUrl?`${i?.getExplorerUrl(`/block/${d.slot}`)}`:void 0})}),(typeof d?.confirmations=="number"||typeof d?.confirmations=="string")&&jsxRuntime.jsx(p,{label:l.confirmationsLabel,value:d.confirmations}),d?.recentBlockhash&&jsxRuntime.jsx(p,{label:c.recentBlockhash,value:jsxRuntime.jsx(E,{hash:d.recentBlockhash})})]}),"txKey"in t&&t.txKey&&jsxRuntime.jsx("div",{className:"border-t border-[var(--tuwa-border-primary)] pt-3",children:jsxRuntime.jsx(R,{tx:t,adapter:e,variant:"history",renderHashLink:s?.components?.transactionKey})})]})}var Fe={completed:{line:"bg-[var(--tuwa-success-icon)]",border:"border-[var(--tuwa-success-icon)]",fill:"bg-[var(--tuwa-success-icon)]"},error:{line:"bg-[var(--tuwa-error-icon)]",border:"border-[var(--tuwa-error-icon)]",fill:"bg-[var(--tuwa-error-icon)]"},replaced:{line:"bg-[var(--tuwa-info-icon)]",border:"border-[var(--tuwa-info-icon)]",fill:"bg-[var(--tuwa-info-icon)]"},active:{line:"bg-[var(--tuwa-pending-icon)]",border:"border-[var(--tuwa-pending-icon)]",fill:"bg-transparent",pulse:"bg-[var(--tuwa-pending-icon)]"},inactive:{line:"bg-[var(--tuwa-border-primary)]",border:"border-[var(--tuwa-border-primary)]",fill:"bg-transparent"}};function We({status:t,label:e,isFirst:r=false}){let s=Fe[t],n=()=>{switch(t){case "completed":return jsxRuntime.jsx(solid.CheckIcon,{className:"h-3 w-3 text-white"});case "error":return jsxRuntime.jsx(solid.ExclamationTriangleIcon,{className:"h-3 w-3 text-white"});case "replaced":return jsxRuntime.jsx(solid.ArrowPathIcon,{className:"h-3 w-3 text-white"});case "active":return jsxRuntime.jsx("div",{className:novaCore.cn("h-2 w-2 animate-pulse rounded-full",s.pulse)});default:return null}};return jsxRuntime.jsxs("div",{className:"relative flex min-w-[80px] flex-1 flex-col items-center",children:[!r&&jsxRuntime.jsx("div",{className:novaCore.cn("absolute right-1/2 top-[10px] h-0.5 w-full",s.line)}),jsxRuntime.jsx("div",{className:novaCore.cn("relative z-10 flex h-5 w-5 items-center justify-center rounded-full border-2",s.border,s.fill),children:n()}),jsxRuntime.jsx("span",{className:novaCore.cn("mt-2 text-center text-xs",t!=="inactive"?"font-semibold text-[var(--tuwa-text-primary)]":"text-[var(--tuwa-text-secondary)]"),children:e})]})}function ht({isProcessing:t,isSucceed:e,isFailed:r,isReplaced:s,className:n,StepComponent:l=We}){let{trackingModal:c,statuses:i}=m(),p=react.useMemo(()=>{let o=d=>{if(d===1)return "completed";if(d===2){if(e||r||s)return "completed";if(t)return "active"}if(d===3){if(e)return "completed";if(r)return "error";if(s)return "replaced";if(t)return "active"}return "inactive"},a=d=>d===1?c.progressIndicator.created:d===2?c.progressIndicator.processing:r?i.failed:s?i.replaced:c.progressIndicator.succeed;return [{status:o(1),label:a(1),isFirst:true},{status:o(2),label:a(2)},{status:o(3),label:a(3),isLast:true}]},[t,e,r,s,c,i]);return jsxRuntime.jsx("div",{className:novaCore.cn("flex w-full items-start px-4 pt-2 pb-1",n),children:p.map((o,a)=>jsxRuntime.jsx(l,{...o},a))})}var Ge={succeed:{Icon:solid.CheckCircleIcon,className:"text-[var(--tuwa-success-icon)]"},failed:{Icon:solid.ExclamationCircleIcon,className:"text-[var(--tuwa-error-icon)]"},replaced:{Icon:solid.ArrowPathIcon,className:"text-[var(--tuwa-info-icon)]"},processing:{Icon:solid.ArrowPathIcon,className:"animate-spin text-[var(--tuwa-text-accent)]"},initializing:{Icon:solid.ClockIcon,className:"animate-pulse text-[var(--tuwa-pending-icon)]"}};function Pt({isProcessing:t,isSucceed:e,isFailed:r,isReplaced:s}){let n=e&&"succeed"||r&&"failed"||s&&"replaced"||t&&"processing"||"initializing",{Icon:l,className:c}=Ge[n];return jsxRuntime.jsx("div",{className:"flex justify-center py-4",children:jsxRuntime.jsx(l,{className:novaCore.cn("h-16 w-16",c)})})}St__default.default.extend(Qe__default.default);var Ze=({chainId:t})=>jsxRuntime.jsx("div",{className:"h-8 w-8 text-[var(--tuwa-text-secondary)]",children:jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(t)})}),je=({timestamp:t})=>jsxRuntime.jsx("span",{className:"mb-1 block text-xs text-[var(--tuwa-text-secondary)]",children:t?St__default.default.unix(t).fromNow():"..."});function At({tx:t,adapter:e,className:r,customization:s}){let{Icon:n=Ze,Title:l=A,Description:c=A,Timestamp:i=je,StatusBadge:p=_,TransactionKey:o=R}=s?.components??{};return jsxRuntime.jsxs("div",{className:novaCore.cn("flex flex-col gap-2 border-b border-[var(--tuwa-border-secondary)] p-3 transition-colors hover:bg-[var(--tuwa-bg-secondary)]",r),children:[jsxRuntime.jsxs("div",{className:"flex items-start justify-between",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-4",children:[jsxRuntime.jsx("div",{className:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-[var(--tuwa-bg-muted)]",children:jsxRuntime.jsx(n,{chainId:t.chainId})}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(l,{txStatus:t.status,source:t.title,fallback:t.type,variant:"title",applyColor:true}),jsxRuntime.jsx(i,{timestamp:t.localTimestamp}),jsxRuntime.jsx(c,{txStatus:t.status,source:t.description,variant:"description"})]})]}),jsxRuntime.jsx(p,{tx:t})]}),jsxRuntime.jsx(o,{tx:t,adapter:e,variant:"history"})]})}function oo({title:t,message:e,className:r}){return jsxRuntime.jsxs("div",{className:novaCore.cn("rounded-lg bg-[var(--tuwa-bg-muted)] p-8 text-center",r),children:[jsxRuntime.jsx("h4",{className:"font-semibold text-[var(--tuwa-text-primary)]",children:t}),jsxRuntime.jsx("p",{className:"mt-1 text-sm text-[var(--tuwa-text-secondary)]",children:e})]})}function Bt({adapter:t,connectedWalletAddress:e,transactionsPool:r,className:s,customization:n}){let{transactionsModal:l}=m(),c=react.useMemo(()=>e?pulsarCore.selectAllTransactionsByActiveWallet(r,e).sort((d,x)=>(x.localTimestamp??0)-(d.localTimestamp??0)):[],[r,e]),{Placeholder:i=oo,HistoryItem:p=At}=n?.components??{},o=()=>e?c.length>0?jsxRuntime.jsx("div",{className:novaCore.cn("NovaCustomScroll max-h-[400px] overflow-y-auto rounded-lg border border-[var(--tuwa-border-primary)] bg-[var(--tuwa-bg-primary)]",n?.classNames?.listWrapper),children:c.map(a=>jsxRuntime.jsx(p,{tx:a,adapter:t},a.txKey))}):jsxRuntime.jsx(i,{title:l.history.noTransactionsTitle,message:l.history.noTransactionsMessage}):jsxRuntime.jsx(i,{title:l.history.connectWalletTitle,message:l.history.connectWalletMessage});return jsxRuntime.jsxs("div",{className:novaCore.cn("flex flex-col gap-y-3",s),children:[n?.title&&jsxRuntime.jsx("h3",{className:"text-lg font-bold text-[var(--tuwa-text-primary)]",children:n?.title}),o()]})}var lo=({closeModal:t,title:e})=>{let{actions:r}=m();return jsxRuntime.jsxs(novaCore.DialogHeader,{children:[jsxRuntime.jsx(novaCore.DialogTitle,{children:e}),jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{type:"button",onClick:t,"aria-label":r.close,className:`cursor-pointer rounded-full p-1
14
- text-[var(--tuwa-text-tertiary)] transition-colors
15
- hover:bg-[var(--tuwa-bg-muted)] hover:text-[var(--tuwa-text-primary)]`,children:jsxRuntime.jsx(novaCore.CloseIcon,{})})})]})};function Lt({isOpen:t,setIsOpen:e,customization:r,adapter:s,connectedWalletAddress:n,transactionsPool:l}){let{transactionsModal:c}=m(),i=()=>e(false),p=r?.components?.Header,o=r?.components?.History;return jsxRuntime.jsx(novaCore.Dialog,{open:t,onOpenChange:a=>!a&&i(),children:jsxRuntime.jsx(novaCore.DialogContent,{className:novaCore.cn("w-full sm:max-w-2xl",r?.modalProps?.className),...r?.modalProps,children:jsxRuntime.jsxs("div",{className:novaCore.cn("relative max-h-[95dvh] w-full flex flex-col",r?.classNames?.contentWrapper),children:[p?jsxRuntime.jsx(p,{closeModal:i}):jsxRuntime.jsx(lo,{closeModal:i,title:c.history.title}),o?jsxRuntime.jsx(o,{adapter:s,transactionsPool:l,connectedWalletAddress:n}):jsxRuntime.jsx(Bt,{adapter:s,transactionsPool:l,connectedWalletAddress:n})]})})})}var go={[pulsarCore.TransactionStatus.Success]:"success",[pulsarCore.TransactionStatus.Failed]:"error",[pulsarCore.TransactionStatus.Replaced]:"info"};function Js({adapter:t,connectedWalletAddress:e,connectedAdapterType:r,transactionsPool:s,initialTx:n,executeTxAction:l,closeTxTrackedModal:c,labels:i,features:p,customization:o,...a}){let[d,x]=react.useState(false),C=react.useRef(s),g="nova-transactions",T=novaCore.useMediaQuery("(max-width: 767px)"),f=react.useMemo(()=>({toasts:p?.toasts??true,transactionsModal:p?.transactionsModal??true,trackingTxModal:p?.trackingTxModal??true}),[p]),S=react.useMemo(()=>novaCore.deepMerge(z,i||{}),[i]),v=react.useCallback(y=>{if(!f.toasts)return;let h=y.pending?"info":go[y.status]??"info",I=W=>jsxRuntime.jsx(xt,{...W,tx:y,openTxInfoModal:f.transactionsModal?()=>x(true):void 0,customization:o?.toast,adapter:t,connectedWalletAddress:e});reactToastify.toast.isActive(y.txKey)?reactToastify.toast.update(y.txKey,{render:I,type:h,containerId:g}):reactToastify.toast(I,{toastId:y.txKey,type:h,closeOnClick:false,containerId:g});},[s,f,o?.toast,t,e]);react.useEffect(()=>{let y=C.current;Object.values(s).forEach(h=>{let I=y[h.txKey];if(!I&&h.pending){v(h);return}I&&JSON.stringify(I)!==JSON.stringify(h)&&v(h);}),C.current=s;},[s,v]),react.useEffect(()=>{Object.values(s).forEach(y=>{reactToastify.toast.isActive(y.txKey,g)&&v(y);});},[e,v,s]);let U=!!n?.withTrackedModal&&s[n?.lastTxKey??""]?.isTrackedModalOpen,F=f.toasts&&(!T||!U&&!d);return jsxRuntime.jsxs(it,{labels:S,children:[F&&jsxRuntime.jsx(reactToastify.ToastContainer,{position:"bottom-right",stacked:true,autoClose:false,hideProgressBar:true,closeOnClick:false,icon:false,closeButton:dt,containerId:g,toastClassName:"!p-0 !bg-transparent !shadow-none !min-h-0",...a}),f.transactionsModal&&jsxRuntime.jsx(Lt,{isOpen:d,setIsOpen:x,customization:o?.transactionsInfoModal,adapter:t,connectedWalletAddress:e,connectedAdapterType:r,transactionsPool:s}),f.trackingTxModal&&jsxRuntime.jsx(bt,{initialTx:n,onClose:c,onOpenAllTransactions:()=>x(true),transactionsPool:s,customization:o?.trackingTxModal,executeTxAction:l,adapter:t,connectedWalletAddress:e})]})}exports.LabelsProvider=it;exports.NovaProvider=Js;exports.useLabels=m;//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var react=require('react'),jsxRuntime=require('react/jsx-runtime'),novaCore=require('@tuwaio/nova-core'),pulsarCore=require('@tuwaio/pulsar-core'),reactToastify=require('react-toastify'),solid=require('@heroicons/react/24/solid'),reactWeb3Icons=require('@bgd-labs/react-web3-icons'),utils=require('@bgd-labs/react-web3-icons/dist/utils'),orbitCore=require('@tuwaio/orbit-core'),St=require('dayjs'),Zo=require('dayjs/plugin/relativeTime');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var St__default=/*#__PURE__*/_interopDefault(St);var Zo__default=/*#__PURE__*/_interopDefault(Zo);var z={transactionsModal:{history:{title:"Transactions History",connectWalletTitle:"Connect Wallet",connectWalletMessage:"Please connect your wallet to see your past activity.",noTransactionsTitle:"No Transactions Yet",noTransactionsMessage:"Once you interact with the app, your transaction history will appear here."}},toast:{openTransactionsInfo:"Open transactions"},statuses:{pending:"Pending",success:"Success",failed:"Failed",reverted:"Reverted",replaced:"Replaced",unknown:"Unknown",confirmationsLabel:"Confirmations"},hashLabels:{gelato:"Gelato Task ID",safe:"Safe Tx Hash",original:"Original Tx Hash",replaced:"Replaced Tx Hash",default:"Tx Hash",recentBlockhash:"Recent Blockhash",solana:"Signature"},txInfo:{started:"Started",network:"Network",slot:"Slot"},txError:{title:"Error",copied:"Copied!"},trackingModal:{title:"Transaction Overview",processing:"Processing...",close:"Close",allTransactions:"All transactions",retry:"Retry",progressIndicator:{created:"Created",processing:"Processing",succeed:"Succeed"}},trackedTxButton:{loading:"Processing...",succeed:"Success",failed:"Failed",replaced:"Replaced"},actions:{copy:"Copy address",viewOnExplorer:"View on explorer",close:"Close",cancel:"Cancel",speedUp:"Speed up"}};var st=react.createContext(z),it=({labels:t,children:o})=>jsxRuntime.jsx(st.Provider,{value:t,children:o}),v=()=>react.useContext(st);function E({label:t,hash:o,explorerUrl:n,variant:r="default",className:s}){let{isCopied:l,copy:c}=novaCore.useCopyToClipboard(),{actions:i,txError:p}=v(),a=novaCore.cn("novatx:flex novatx:items-center novatx:justify-between",{"novatx:text-sm":r==="default","novatx:text-xs":r==="compact"},s),e=novaCore.cn("novatx:pr-1",{"novatx:font-bold novatx:text-[var(--tuwa-text-primary)]":r==="default","novatx:font-medium novatx:text-[var(--tuwa-text-secondary)]":r==="compact"}),x=jsxRuntime.jsx("span",{className:"novatx:font-mono",children:novaCore.textCenterEllipsis(o,5,5)});return jsxRuntime.jsxs("div",{className:a,children:[t&&jsxRuntime.jsxs("span",{className:e,children:[t,":"]}),jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-x-2",children:[n?jsxRuntime.jsxs("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"novatx:flex novatx:items-center novatx:gap-x-1 novatx:text-[var(--tuwa-text-accent)] novatx:transition-colors novatx:hover:underline",title:i.viewOnExplorer,"aria-label":i.viewOnExplorer,children:[x,jsxRuntime.jsx(solid.ArrowTopRightOnSquareIcon,{className:"novatx:h-4 novatx:w-4"})]}):jsxRuntime.jsx("span",{className:"novatx:text-[var(--tuwa-text-primary)]",children:x}),jsxRuntime.jsx("button",{type:"button",onClick:()=>c(o),className:"novatx:cursor-pointer novatx:text-[var(--tuwa-text-tertiary)] novatx:transition-colors novatx:hover:text-[var(--tuwa-text-secondary)]",title:l?p.copied:i.copy,"aria-label":l?p.copied:i.copy,children:l?jsxRuntime.jsx(solid.CheckIcon,{className:"novatx:h-4 novatx:w-4 novatx:text-[var(--tuwa-success-icon)]"}):jsxRuntime.jsx(solid.DocumentDuplicateIcon,{className:"novatx:h-4 novatx:w-4"})})]})]})}var lt={[pulsarCore.TransactionStatus.Success]:{index:1,colorClass:"novatx:text-[var(--tuwa-success-text)]"},[pulsarCore.TransactionStatus.Failed]:{index:2,colorClass:"novatx:text-[var(--tuwa-error-text)]"},[pulsarCore.TransactionStatus.Replaced]:{index:3,colorClass:"novatx:text-[var(--tuwa-text-secondary)]"},default:{index:0,colorClass:"novatx:text-[var(--tuwa-text-primary)]"}};function A({txStatus:t,source:o,fallback:n,variant:r,className:s,applyColor:l=false}){let c,i="";if(typeof o=="string")c=o;else if(Array.isArray(o)){let e=lt[t||"default"]??lt.default;c=o[e.index],l&&(i=e.colorClass);}else c=n;return c?jsxRuntime.jsx("div",{className:novaCore.cn(r==="title"?"novatx:text-sm novatx:font-semibold novatx:text-[var(--tuwa-text-primary)]":"novatx:mt-1 novatx:text-xs novatx:text-[var(--tuwa-text-secondary)]",i,s),children:c}):null}function xt({closeToast:t}){let{actions:o}=v();return jsxRuntime.jsx("button",{type:"button",onClick:t,"aria-label":o.close,title:o.close,className:novaCore.cn("novatx:absolute novatx:top-2 novatx:right-2 novatx:cursor-pointer novatx:rounded-full novatx:p-1","novatx:text-[var(--tuwa-text-tertiary)] novatx:transition-colors","novatx:hover:bg-[var(--tuwa-bg-muted)] novatx:hover:text-[var(--tuwa-text-primary)]"),children:jsxRuntime.jsx(solid.XMarkIcon,{className:"novatx:h-5 novatx:w-5"})})}function R({tx:t,adapter:o,variant:n="toast",className:r,renderHashLink:s,confirmations:l}){let{hashLabels:c,statuses:i}=v(),p=orbitCore.selectAdapterByKey({adapterKey:t.adapter,adapter:o});if(!p)return null;let a=m=>s?s(m):jsxRuntime.jsx(E,{...m}),e=n==="toast"?"novatx:mt-2 novatx:flex novatx:w-full novatx:flex-col novatx:gap-y-2 novatx:border-t novatx:border-[var(--tuwa-border-primary)] novatx:pt-2":"novatx:flex novatx:w-full novatx:flex-col novatx:gap-y-2",x=c[String(t.tracker)],f=x?a({label:x,hash:t.txKey,variant:t.tracker!==pulsarCore.TransactionTracker.Solana?"compact":"default",explorerUrl:p.getExplorerTxUrl&&t.tracker===pulsarCore.TransactionTracker.Solana?p?.getExplorerTxUrl(t):void 0}):null,C=(()=>{let m=t.hash,u=t.replacedTxHash;return !m&&!u?null:u?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[m&&a({label:c.original,hash:m,variant:"compact"}),typeof p.getExplorerTxUrl<"u"&&a({label:c.replaced,hash:u,explorerUrl:p.getExplorerTxUrl(t)})]}):m&&typeof p.getExplorerTxUrl<"u"&&a({label:c.default,hash:m,explorerUrl:p.getExplorerTxUrl(t)})})(),T=x&&x!==c.default&&t.txKey!==t.hash;return jsxRuntime.jsxs("div",{className:novaCore.cn(e,r),children:[T&&f,C,typeof l=="number"&&jsxRuntime.jsxs("p",{className:"novatx:text-xs novatx:text-[var(--tuwa-text-tertiary)]",children:[i.confirmationsLabel,": ",l]})]})}var no=t=>({Pending:{label:t.pending,Icon:solid.ArrowPathIcon,badgeClasses:"novatx:bg-[var(--tuwa-pending-bg)] novatx:text-[var(--tuwa-pending-text)]",iconClasses:"novatx:animate-spin novatx:text-[var(--tuwa-pending-icon)]"},[pulsarCore.TransactionStatus.Success]:{label:t.success,Icon:solid.CheckCircleIcon,badgeClasses:"novatx:bg-[var(--tuwa-success-bg)] novatx:text-[var(--tuwa-success-text)]",iconClasses:"novatx:text-[var(--tuwa-success-icon)]"},[pulsarCore.TransactionStatus.Failed]:{label:t.failed,Icon:solid.XCircleIcon,badgeClasses:"novatx:bg-[var(--tuwa-error-bg)] novatx:text-[var(--tuwa-error-text)]",iconClasses:"novatx:text-[var(--tuwa-error-icon)]"},[pulsarCore.TransactionStatus.Replaced]:{label:t.replaced,Icon:solid.ArrowPathIcon,badgeClasses:"novatx:bg-[var(--tuwa-info-bg)] novatx:text-[var(--tuwa-info-text)]",iconClasses:"novatx:text-[var(--tuwa-info-icon)]"}});function _({tx:t,className:o}){let{statuses:n}=v(),r=react.useMemo(()=>no(n),[n]),s="novatx:inline-flex novatx:items-center novatx:gap-x-1.5 novatx:rounded-full novatx:px-2 novatx:py-1 novatx:text-xs novatx:font-medium",l=t.pending?"Pending":t.status,c=l?r[l]:null;if(!c)return jsxRuntime.jsx("div",{className:novaCore.cn(s,"novatx:bg-[var(--tuwa-info-bg)] novatx:text-[var(--tuwa-info-text)]",o),children:t.status??n.unknown});let{label:i,Icon:p,badgeClasses:a,iconClasses:e}=c;return jsxRuntime.jsxs("div",{className:novaCore.cn(s,a,o),children:[jsxRuntime.jsx(p,{className:novaCore.cn("novatx:h-4 novatx:w-4",e)}),i]})}var po=({onClick:t,children:o})=>jsxRuntime.jsx("button",{onClick:t,type:"button",className:"novatx:cursor-pointer novatx:text-sm novatx:font-medium novatx:text-[var(--tuwa-text-accent)] novatx:transition-opacity novatx:hover:opacity-80",children:o}),xo=({onClick:t,children:o})=>jsxRuntime.jsx("button",{onClick:t,type:"button",className:"novatx:cursor-pointer novatx:text-sm novatx:font-medium novatx:text-[var(--tuwa-text-secondary)] novatx:transition-opacity novatx:hover:opacity-80",children:o}),vo=({onClick:t,children:o})=>jsxRuntime.jsx("button",{className:"novatx:cursor-pointer novatx:rounded-md novatx:bg-gradient-to-r novatx:from-[var(--tuwa-button-gradient-from)] novatx:to-[var(--tuwa-button-gradient-to)] novatx:px-3 novatx:py-1 novatx:text-xs novatx:font-bold novatx:text-[var(--tuwa-text-on-accent)] novatx:shadow-lg novatx:transition-all novatx:duration-200 novatx:ease-in-out novatx:hover:shadow-xl novatx:hover:from-[var(--tuwa-button-gradient-from-hover)] novatx:hover:to-[var(--tuwa-button-gradient-to-hover)] novatx:active:scale-95",onClick:t,type:"button",children:o});function ft({openTxInfoModal:t,tx:o,icon:n,className:r,customization:s,connectedWalletAddress:l,adapter:c}){let{actions:i,toast:p}=v(),a=orbitCore.selectAdapterByKey({adapterKey:o.adapter,adapter:c}),e=!!(o.tracker==="ethereum"&&o.pending&&a?.speedUpTxAction&&a?.cancelTxAction&&o.from.toLowerCase()===l?.toLowerCase()),x=()=>{e&&a.cancelTxAction(o);},f=()=>{e&&a.speedUpTxAction(o);},{StatusAwareText:C=A,TransactionKey:T=R,StatusBadge:m=_,SpeedUpButton:u=po,CancelButton:S=xo,TxInfoButton:g=vo}=s?.components??{};return jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:flex novatx:w-full novatx:flex-col novatx:gap-3 novatx:rounded-lg novatx:bg-[var(--tuwa-bg-primary)] novatx:p-4 novatx:shadow-md",r),children:[jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-3",children:[jsxRuntime.jsx("div",{className:"novatx:w-[40px] novatx:flex-shrink-0 [&>img]:novatx:w-full [&>img]:novatx:h-auto",title:utils.getChainName(orbitCore.setChainId(o.chainId)),children:n??jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(o.chainId)})}),jsxRuntime.jsxs("div",{className:"novatx:flex-1",children:[jsxRuntime.jsx(C,{txStatus:o.status,source:o.title,fallback:o.type,variant:"title",applyColor:true}),jsxRuntime.jsx(C,{txStatus:o.status,source:o.description,variant:"description"})]})]}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(T,{adapter:c,tx:o,variant:"toast"}),jsxRuntime.jsxs("div",{className:"novatx:mt-3 novatx:flex novatx:items-center novatx:justify-between",children:[jsxRuntime.jsx(m,{tx:o}),e?jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-4",children:[jsxRuntime.jsx(u,{onClick:f,children:i.speedUp}),jsxRuntime.jsx(S,{onClick:x,children:i.cancel})]}):t&&!!l&&jsxRuntime.jsx(g,{onClick:t,children:p.openTransactionsInfo})]})]})]})}function bt({adapter:t,onClose:o,onOpenAllTransactions:n,className:r,customization:s,transactionsPool:l,executeTxAction:c,initialTx:i,connectedWalletAddress:p}){let a=react.useMemo(()=>i?.lastTxKey?l[i.lastTxKey]:void 0,[l,i]),e=a??i,x=i?.withTrackedModal&&!a||(a?.isTrackedModalOpen??false),{isProcessing:f,isSucceed:C,isFailed:T,isReplaced:m}=react.useMemo(()=>{let H=a?.status,Et=i?.isInitializing??false,Ot=a?.pending??false;return {isProcessing:Et||Ot,isSucceed:H===pulsarCore.TransactionStatus.Success,isFailed:a?.isError||!!i?.errorMessage,isReplaced:H===pulsarCore.TransactionStatus.Replaced}},[a,i]),u=react.useMemo(()=>e?orbitCore.selectAdapterByKey({adapterKey:e.adapter,adapter:t}):void 0,[e,t]),S=!!(T&&e&&i?.actionFunction&&c),g=!!(u?.speedUpTxAction&&u?.cancelTxAction&&a?.pending&&a.tracker==="ethereum"),U=()=>{if(!S||!u?.retryTxAction)return;let H={adapter:e.adapter,type:e.type,desiredChainID:"desiredChainID"in e?e.desiredChainID:e.chainId,actionFunction:i?.actionFunction,title:e.title,description:e.description,payload:e.payload,rpcUrl:"rpcUrl"in e?e?.rpcUrl:"desiredChainID"in e?e.desiredChainID:e.chainId.split(":")[1],withTrackedModal:"withTrackedModal"in e?e.withTrackedModal:false};u.retryTxAction({tx:H,txKey:a?.txKey??"",onClose:o,executeTxAction:c});},F=()=>{g&&a&&u.cancelTxAction(a);},y=()=>{g&&a&&u.speedUpTxAction(a);},h=s?.components?.Header,I=s?.components?.Footer,W=s?.components?.StatusVisual,et=s?.components?.ProgressIndicator,nt=s?.components?.InfoBlock,rt=s?.components?.ErrorBlock;return e?jsxRuntime.jsx(novaCore.Dialog,{open:x,onOpenChange:H=>!H&&o(a?.txKey),children:jsxRuntime.jsx(novaCore.DialogContent,{className:novaCore.cn("novatx:w-full novatx:sm:max-w-md",s?.modalProps?.className),...s?.modalProps,children:jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:relative novatx:flex novatx:w-full novatx:flex-col",r),children:[h?jsxRuntime.jsx(h,{onClose:()=>o(a?.txKey),title:jsxRuntime.jsx(yt,{tx:e})}):jsxRuntime.jsx(Co,{onClose:()=>o(a?.txKey),title:jsxRuntime.jsx(yt,{tx:e})}),jsxRuntime.jsxs("main",{className:"novatx:flex novatx:flex-col novatx:gap-4 novatx:p-4",children:[W?jsxRuntime.jsx(W,{isProcessing:f,isSucceed:C,isFailed:T,isReplaced:m}):jsxRuntime.jsx(Pt,{isProcessing:f,isSucceed:C,isFailed:T,isReplaced:m}),et?jsxRuntime.jsx(et,{isProcessing:f,isSucceed:C,isFailed:T,isReplaced:m}):jsxRuntime.jsx(ht,{isProcessing:f,isSucceed:C,isFailed:T,isReplaced:m}),nt?jsxRuntime.jsx(nt,{tx:e,adapter:t}):jsxRuntime.jsx(wt,{tx:e,adapter:t}),rt?jsxRuntime.jsx(rt,{error:a?.errorMessage||i?.errorMessage}):jsxRuntime.jsx(Ct,{error:a?.errorMessage||i?.errorMessage})]}),I?jsxRuntime.jsx(I,{onClose:()=>o(a?.txKey),onOpenAllTransactions:n,isProcessing:f,isFailed:T,canReplace:g,onRetry:S?U:void 0,onSpeedUp:g?y:void 0,onCancel:g?F:void 0,connectedWalletAddress:p}):jsxRuntime.jsx(wo,{onClose:()=>o(a?.txKey),onOpenAllTransactions:n,isProcessing:f,isFailed:T,canReplace:g,onRetry:S?U:void 0,onSpeedUp:g?y:void 0,onCancel:g?F:void 0,connectedWalletAddress:p})]})})}):null}function yt({tx:t}){return jsxRuntime.jsx(A,{txStatus:"status"in t?t.status:void 0,source:t.title,fallback:t.type,variant:"title",className:"novatx:text-lg"})}var Co=({onClose:t,title:o})=>{let{actions:n}=v();return jsxRuntime.jsxs(novaCore.DialogHeader,{children:[jsxRuntime.jsx(novaCore.DialogTitle,{children:o}),jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{type:"button",onClick:()=>t(),"aria-label":n.close,className:`novatx:cursor-pointer novatx:rounded-full novatx:p-1
2
+ novatx:text-[var(--tuwa-text-tertiary)] novatx:transition-colors
3
+ novatx:hover:bg-[var(--tuwa-bg-muted)] novatx:hover:text-[var(--tuwa-text-primary)]`,children:jsxRuntime.jsx(novaCore.CloseIcon,{})})})]})},wo=({onClose:t,onOpenAllTransactions:o,isProcessing:n,onRetry:r,onSpeedUp:s,onCancel:l,canReplace:c,isFailed:i,connectedWalletAddress:p})=>{let{trackingModal:a,actions:e}=v(),x=()=>i&&r?jsxRuntime.jsx("button",{type:"button",onClick:r,className:`novatx:cursor-pointer novatx:rounded-t-md novatx:sm:rounded-md
4
+ novatx:bg-gradient-to-r novatx:from-[var(--tuwa-button-gradient-from)] novatx:to-[var(--tuwa-button-gradient-to)]
5
+ novatx:px-4 novatx:py-2 novatx:text-sm novatx:font-semibold novatx:text-[var(--tuwa-text-on-accent)] novatx:transition-opacity
6
+ novatx:hover:from-[var(--tuwa-button-gradient-from-hover)] novatx:hover:to-[var(--tuwa-button-gradient-to-hover)]`,children:a.retry}):!n&&!c&&p?jsxRuntime.jsx("button",{type:"button",onClick:o,className:`novatx:cursor-pointer novatx:rounded-md
7
+ novatx:bg-[var(--tuwa-bg-muted)] novatx:px-4 novatx:py-2 novatx:text-sm novatx:font-semibold novatx:text-[var(--tuwa-text-primary)]
8
+ novatx:transition-colors novatx:hover:bg-[var(--tuwa-border-primary)]`,children:a.allTransactions}):null;return jsxRuntime.jsxs("footer",{className:`novatx:flex novatx:w-full novatx:items-center novatx:justify-between
9
+ novatx:border-t novatx:border-[var(--tuwa-border-primary)] novatx:p-4`,children:[jsxRuntime.jsx("div",{className:"novatx:flex novatx:items-center novatx:gap-4",children:c&&s&&l&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("button",{type:"button",onClick:s,className:`novatx:cursor-pointer novatx:text-sm novatx:font-medium
10
+ novatx:text-[var(--tuwa-text-accent)] novatx:transition-opacity novatx:hover:opacity-80`,children:e.speedUp}),jsxRuntime.jsx("button",{type:"button",onClick:l,className:`novatx:cursor-pointer novatx:text-sm novatx:font-medium
11
+ novatx:text-[var(--tuwa-text-secondary)] novatx:transition-opacity novatx:hover:opacity-80`,children:e.cancel})]})}),jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-3",children:[jsxRuntime.jsx(x,{}),jsxRuntime.jsx("button",{type:"button",onClick:t,disabled:n&&!c,className:`novatx:cursor-pointer novatx:rounded-md novatx:bg-[var(--tuwa-bg-muted)] novatx:px-4 novatx:py-2 novatx:text-sm novatx:font-semibold
12
+ novatx:text-[var(--tuwa-text-primary)] novatx:transition-colors novatx:hover:bg-[var(--tuwa-border-primary)]
13
+ novatx:disabled:cursor-not-allowed novatx:disabled:opacity-50`,children:n&&!c?a.processing:a.close})]})]})};function Ct({error:t,className:o}){let{isCopied:n,copy:r}=novaCore.useCopyToClipboard(),{actions:s,txError:l}=v();return t?jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:rounded-lg novatx:border novatx:border-[var(--tuwa-error-icon)]/30 novatx:bg-[var(--tuwa-error-bg)] novatx:p-3 novatx:text-sm",o),children:[jsxRuntime.jsxs("div",{className:"novatx:mb-2 novatx:flex novatx:items-center novatx:justify-between",children:[jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-2 novatx:font-bold novatx:text-[var(--tuwa-error-icon)]",children:[jsxRuntime.jsx(solid.ExclamationTriangleIcon,{className:"novatx:h-5 novatx:w-5"}),jsxRuntime.jsx("span",{children:l.title})]}),jsxRuntime.jsx("button",{type:"button",onClick:()=>r(t),title:n?l.copied:s.copy,"aria-label":n?l.copied:`${s.copy} error message`,className:"novatx:cursor-pointer novatx:text-[var(--tuwa-error-icon)]/50 novatx:transition-colors novatx:hover:text-[var(--tuwa-error-icon)]",children:n?jsxRuntime.jsx(solid.CheckIcon,{className:"novatx:h-5 novatx:w-5 novatx:text-[var(--tuwa-success-icon)]"}):jsxRuntime.jsx(solid.DocumentDuplicateIcon,{className:"novatx:h-5 novatx:w-5"})})]}),jsxRuntime.jsx("div",{className:"novatx:max-h-24 novatx:overflow-y-auto novatx:rounded novatx:bg-[var(--tuwa-bg-primary)] novatx:p-2",children:jsxRuntime.jsx("p",{className:"novatx:font-mono novatx:text-xs novatx:text-[var(--tuwa-error-text)] novatx:break-all",children:t})})]}):null}function Ko({label:t,value:o}){return jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:justify-between novatx:text-sm",children:[jsxRuntime.jsx("span",{className:"novatx:text-[var(--tuwa-text-secondary)]",children:t}),jsxRuntime.jsx("span",{className:"novatx:font-medium novatx:text-[var(--tuwa-text-primary)]",children:o})]})}function wt({tx:t,adapter:o,className:n,customization:r}){let{txInfo:s,statuses:l,hashLabels:c}=v(),i=orbitCore.selectAdapterByKey({adapterKey:t.adapter,adapter:o});if(!i)return null;let{InfoRow:p=Ko}=r?.components??{},a="chainId"in t?t.chainId:t.desiredChainID,e=t.adapter===orbitCore.OrbitAdapter.SOLANA,x=e?t:void 0;return jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:flex novatx:flex-col novatx:gap-3 novatx:rounded-lg novatx:border novatx:border-[var(--tuwa-border-primary)] novatx:bg-[var(--tuwa-bg-primary)] novatx:p-3",n),children:[jsxRuntime.jsx(p,{label:s.network,value:jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:justify-end novatx:gap-2",children:[jsxRuntime.jsx("div",{className:"novatx:h-4 novatx:w-4",children:jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(a)})}),jsxRuntime.jsx("span",{children:utils.getChainName(orbitCore.setChainId(a))})]})}),t.localTimestamp&&jsxRuntime.jsx(p,{label:s.started,value:St__default.default.unix(t.localTimestamp).format("MMM D, HH:mm:ss")}),e&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[x?.slot&&jsxRuntime.jsx(p,{label:s.slot,value:jsxRuntime.jsx(E,{hash:x.slot.toString(),explorerUrl:i?.getExplorerUrl?`${i?.getExplorerUrl(`/block/${x.slot}`)}`:void 0})}),(typeof x?.confirmations=="number"||typeof x?.confirmations=="string")&&jsxRuntime.jsx(p,{label:l.confirmationsLabel,value:x.confirmations}),x?.recentBlockhash&&jsxRuntime.jsx(p,{label:c.recentBlockhash,value:jsxRuntime.jsx(E,{hash:x.recentBlockhash})})]}),"txKey"in t&&t.txKey&&jsxRuntime.jsx("div",{className:"novatx:border-t novatx:border-[var(--tuwa-border-primary)] novatx:pt-3",children:jsxRuntime.jsx(R,{tx:t,adapter:o,variant:"history",renderHashLink:r?.components?.transactionKey})})]})}var Wo={completed:{line:"novatx:bg-[var(--tuwa-success-icon)]",border:"novatx:border-[var(--tuwa-success-icon)]",fill:"novatx:bg-[var(--tuwa-success-icon)]"},error:{line:"novatx:bg-[var(--tuwa-error-icon)]",border:"novatx:border-[var(--tuwa-error-icon)]",fill:"novatx:bg-[var(--tuwa-error-icon)]"},replaced:{line:"novatx:bg-[var(--tuwa-info-icon)]",border:"novatx:border-[var(--tuwa-info-icon)]",fill:"novatx:bg-[var(--tuwa-info-icon)]"},active:{line:"novatx:bg-[var(--tuwa-pending-icon)]",border:"novatx:border-[var(--tuwa-pending-icon)]",fill:"novatx:bg-transparent",pulse:"novatx:bg-[var(--tuwa-pending-icon)]"},inactive:{line:"novatx:bg-[var(--tuwa-border-primary)]",border:"novatx:border-[var(--tuwa-border-primary)]",fill:"novatx:bg-transparent"}};function zo({status:t,label:o,isFirst:n=false}){let r=Wo[t],s=()=>{switch(t){case "completed":return jsxRuntime.jsx(solid.CheckIcon,{className:"novatx:h-3 novatx:w-3 novatx:text-white"});case "error":return jsxRuntime.jsx(solid.ExclamationTriangleIcon,{className:"novatx:h-3 novatx:w-3 novatx:text-white"});case "replaced":return jsxRuntime.jsx(solid.ArrowPathIcon,{className:"novatx:h-3 novatx:w-3 novatx:text-white"});case "active":return jsxRuntime.jsx("div",{className:novaCore.cn("novatx:h-2 novatx:w-2 novatx:animate-pulse novatx:rounded-full",r.pulse)});default:return null}};return jsxRuntime.jsxs("div",{className:"novatx:relative novatx:flex novatx:min-w-[80px] novatx:flex-1 novatx:flex-col novatx:items-center",children:[!n&&jsxRuntime.jsx("div",{className:novaCore.cn("novatx:absolute novatx:right-1/2 novatx:top-[10px] novatx:h-0.5 novatx:w-full",r.line)}),jsxRuntime.jsx("div",{className:novaCore.cn("novatx:relative novatx:z-10 novatx:flex novatx:h-5 novatx:w-5 novatx:items-center novatx:justify-center novatx:rounded-full novatx:border-2",r.border,r.fill),children:s()}),jsxRuntime.jsx("span",{className:novaCore.cn("novatx:mt-2 novatx:text-center novatx:text-xs",t!=="inactive"?"novatx:font-semibold novatx:text-[var(--tuwa-text-primary)]":"novatx:text-[var(--tuwa-text-secondary)]"),children:o})]})}function ht({isProcessing:t,isSucceed:o,isFailed:n,isReplaced:r,className:s,StepComponent:l=zo}){let{trackingModal:c,statuses:i}=v(),p=react.useMemo(()=>{let a=x=>{if(x===1)return "completed";if(x===2){if(o||n||r)return "completed";if(t)return "active"}if(x===3){if(o)return "completed";if(n)return "error";if(r)return "replaced";if(t)return "active"}return "inactive"},e=x=>x===1?c.progressIndicator.created:x===2?c.progressIndicator.processing:n?i.failed:r?i.replaced:c.progressIndicator.succeed;return [{status:a(1),label:e(1),isFirst:true},{status:a(2),label:e(2)},{status:a(3),label:e(3),isLast:true}]},[t,o,n,r,c,i]);return jsxRuntime.jsx("div",{className:novaCore.cn("novatx:flex novatx:w-full novatx:items-start novatx:px-4 novatx:pt-2 novatx:pb-1",s),children:p.map((a,e)=>jsxRuntime.jsx(l,{...a},e))})}var Yo={succeed:{Icon:solid.CheckCircleIcon,className:"novatx:text-[var(--tuwa-success-icon)]"},failed:{Icon:solid.ExclamationCircleIcon,className:"novatx:text-[var(--tuwa-error-icon)]"},replaced:{Icon:solid.ArrowPathIcon,className:"novatx:text-[var(--tuwa-info-icon)]"},processing:{Icon:solid.ArrowPathIcon,className:"novatx:animate-spin novatx:text-[var(--tuwa-text-accent)]"},initializing:{Icon:solid.ClockIcon,className:"novatx:animate-pulse novatx:text-[var(--tuwa-pending-icon)]"}};function Pt({isProcessing:t,isSucceed:o,isFailed:n,isReplaced:r}){let s=o&&"succeed"||n&&"failed"||r&&"replaced"||t&&"processing"||"initializing",{Icon:l,className:c}=Yo[s];return jsxRuntime.jsx("div",{className:"novatx:flex novatx:justify-center novatx:py-4",children:jsxRuntime.jsx(l,{className:novaCore.cn("novatx:h-16 novatx:w-16",c)})})}St__default.default.extend(Zo__default.default);var jo=({chainId:t})=>jsxRuntime.jsx("div",{className:"novatx:h-8 novatx:w-8 novatx:text-[var(--tuwa-text-secondary)]",children:jsxRuntime.jsx(reactWeb3Icons.Web3Icon,{chainId:orbitCore.setChainId(t)})}),ta=({timestamp:t})=>jsxRuntime.jsx("span",{className:"novatx:mb-1 novatx:block novatx:text-xs novatx:text-[var(--tuwa-text-secondary)]",children:t?St__default.default.unix(t).fromNow():"..."});function At({tx:t,adapter:o,className:n,customization:r}){let{Icon:s=jo,Title:l=A,Description:c=A,Timestamp:i=ta,StatusBadge:p=_,TransactionKey:a=R}=r?.components??{};return jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:flex novatx:flex-col novatx:gap-2 novatx:border-b novatx:border-[var(--tuwa-border-secondary)] novatx:p-3 novatx:transition-colors novatx:hover:bg-[var(--tuwa-bg-secondary)]",n),children:[jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-start novatx:justify-between",children:[jsxRuntime.jsxs("div",{className:"novatx:flex novatx:items-center novatx:gap-4",children:[jsxRuntime.jsx("div",{className:"novatx:flex novatx:h-10 novatx:w-10 novatx:flex-shrink-0 novatx:items-center novatx:justify-center novatx:rounded-full novatx:bg-[var(--tuwa-bg-muted)]",children:jsxRuntime.jsx(s,{chainId:t.chainId})}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(l,{txStatus:t.status,source:t.title,fallback:t.type,variant:"title",applyColor:true}),jsxRuntime.jsx(i,{timestamp:t.localTimestamp}),jsxRuntime.jsx(c,{txStatus:t.status,source:t.description,variant:"description"})]})]}),jsxRuntime.jsx(p,{tx:t})]}),jsxRuntime.jsx(a,{tx:t,adapter:o,variant:"history"})]})}function ea({title:t,message:o,className:n}){return jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:rounded-lg novatx:bg-[var(--tuwa-bg-muted)] novatx:p-8 novatx:text-center",n),children:[jsxRuntime.jsx("h4",{className:"novatx:font-semibold novatx:text-[var(--tuwa-text-primary)]",children:t}),jsxRuntime.jsx("p",{className:"novatx:mt-1 novatx:text-sm novatx:text-[var(--tuwa-text-secondary)]",children:o})]})}function Bt({adapter:t,connectedWalletAddress:o,transactionsPool:n,className:r,customization:s}){let{transactionsModal:l}=v(),c=react.useMemo(()=>o?pulsarCore.selectAllTransactionsByActiveWallet(n,o).sort((x,f)=>(f.localTimestamp??0)-(x.localTimestamp??0)):[],[n,o]),{Placeholder:i=ea,HistoryItem:p=At}=s?.components??{},a=()=>o?c.length>0?jsxRuntime.jsx("div",{className:novaCore.cn("NovaCustomScroll novatx:max-h-[400px] novatx:overflow-y-auto novatx:rounded-lg novatx:border novatx:border-[var(--tuwa-border-primary)] novatx:bg-[var(--tuwa-bg-primary)]",s?.classNames?.listWrapper),children:c.map(e=>jsxRuntime.jsx(p,{tx:e,adapter:t},e.txKey))}):jsxRuntime.jsx(i,{title:l.history.noTransactionsTitle,message:l.history.noTransactionsMessage}):jsxRuntime.jsx(i,{title:l.history.connectWalletTitle,message:l.history.connectWalletMessage});return jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:flex novatx:flex-col novatx:gap-y-3",r),children:[s?.title&&jsxRuntime.jsx("h3",{className:"novatx:text-lg novatx:font-bold novatx:text-[var(--tuwa-text-primary)]",children:s?.title}),a()]})}var pa=({closeModal:t,title:o})=>{let{actions:n}=v();return jsxRuntime.jsxs(novaCore.DialogHeader,{children:[jsxRuntime.jsx(novaCore.DialogTitle,{children:o}),jsxRuntime.jsx(novaCore.DialogClose,{asChild:true,children:jsxRuntime.jsx("button",{type:"button",onClick:t,"aria-label":n.close,className:`novatx:cursor-pointer novatx:rounded-full novatx:p-1
14
+ novatx:text-[var(--tuwa-text-tertiary)] novatx:transition-colors
15
+ novatx:hover:bg-[var(--tuwa-bg-muted)] novatx:hover:text-[var(--tuwa-text-primary)]`,children:jsxRuntime.jsx(novaCore.CloseIcon,{})})})]})};function Lt({isOpen:t,setIsOpen:o,customization:n,adapter:r,connectedWalletAddress:s,transactionsPool:l}){let{transactionsModal:c}=v(),i=()=>o(false),p=n?.components?.Header,a=n?.components?.History;return jsxRuntime.jsx(novaCore.Dialog,{open:t,onOpenChange:e=>!e&&i(),children:jsxRuntime.jsx(novaCore.DialogContent,{className:novaCore.cn("novatx:w-full novatx:sm:max-w-2xl",n?.modalProps?.className),...n?.modalProps,children:jsxRuntime.jsxs("div",{className:novaCore.cn("novatx:relative novatx:max-h-[95dvh] novatx:w-full novatx:flex novatx:flex-col",n?.classNames?.contentWrapper),children:[p?jsxRuntime.jsx(p,{closeModal:i}):jsxRuntime.jsx(pa,{closeModal:i,title:c.history.title}),a?jsxRuntime.jsx(a,{adapter:r,transactionsPool:l,connectedWalletAddress:s}):jsxRuntime.jsx(Bt,{adapter:r,transactionsPool:l,connectedWalletAddress:s})]})})})}var Ta={[pulsarCore.TransactionStatus.Success]:"success",[pulsarCore.TransactionStatus.Failed]:"error",[pulsarCore.TransactionStatus.Replaced]:"info"};function Xr({adapter:t,connectedWalletAddress:o,connectedAdapterType:n,transactionsPool:r,initialTx:s,executeTxAction:l,closeTxTrackedModal:c,labels:i,features:p,customization:a,...e}){let[x,f]=react.useState(false),C=react.useRef(r),T="nova-transactions",m=novaCore.useMediaQuery("(max-width: 767px)"),u=react.useMemo(()=>({toasts:p?.toasts??true,transactionsModal:p?.transactionsModal??true,trackingTxModal:p?.trackingTxModal??true}),[p]),S=react.useMemo(()=>novaCore.deepMerge(z,i||{}),[i]),g=react.useCallback(y=>{if(!u.toasts)return;let h=y.pending?"info":Ta[y.status]??"info",I=W=>jsxRuntime.jsx(ft,{...W,tx:y,openTxInfoModal:u.transactionsModal?()=>f(true):void 0,customization:a?.toast,adapter:t,connectedWalletAddress:o});reactToastify.toast.isActive(y.txKey)?reactToastify.toast.update(y.txKey,{render:I,type:h,containerId:T}):reactToastify.toast(I,{toastId:y.txKey,type:h,closeOnClick:false,containerId:T});},[r,u,a?.toast,t,o]);react.useEffect(()=>{let y=C.current;Object.values(r).forEach(h=>{let I=y[h.txKey];if(!I&&h.pending){g(h);return}I&&JSON.stringify(I)!==JSON.stringify(h)&&g(h);}),C.current=r;},[r,g]),react.useEffect(()=>{Object.values(r).forEach(y=>{reactToastify.toast.isActive(y.txKey,T)&&g(y);});},[o,g,r]);let U=!!s?.withTrackedModal&&r[s?.lastTxKey??""]?.isTrackedModalOpen,F=u.toasts&&(!m||!U&&!x);return jsxRuntime.jsxs(it,{labels:S,children:[F&&jsxRuntime.jsx(reactToastify.ToastContainer,{position:"bottom-right",stacked:true,autoClose:false,hideProgressBar:true,closeOnClick:false,icon:false,closeButton:xt,containerId:T,toastClassName:"novatx:!p-0 novatx:!bg-transparent novatx:!shadow-none novatx:!min-h-0",...e}),u.transactionsModal&&jsxRuntime.jsx(Lt,{isOpen:x,setIsOpen:f,customization:a?.transactionsInfoModal,adapter:t,connectedWalletAddress:o,connectedAdapterType:n,transactionsPool:r}),u.trackingTxModal&&jsxRuntime.jsx(bt,{initialTx:s,onClose:c,onOpenAllTransactions:()=>f(true),transactionsPool:r,customization:a?.trackingTxModal,executeTxAction:l,adapter:t,connectedWalletAddress:o})]})}exports.LabelsProvider=it;exports.NovaProvider=Xr;exports.useLabels=v;//# sourceMappingURL=index.cjs.map
16
16
  //# sourceMappingURL=index.cjs.map