@liberfi.io/ui-tokens 3.0.21 → 3.0.23

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/index.js CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';var react=require('react'),reactWindow=require('react-window'),ui$1=require('@liberfi.io/ui'),i18n=require('@liberfi.io/i18n'),jsxRuntime=require('react/jsx-runtime'),hooks=require('@liberfi.io/hooks'),utils=require('@liberfi.io/utils'),types=require('@liberfi.io/types'),react$1=require('@liberfi.io/react'),uiScaffold=require('@liberfi.io/ui-scaffold'),jotai=require('jotai'),utils$1=require('jotai/utils'),reactWindowInfiniteLoader=require('react-window-infinite-loader');function Pr({title:e,isPaused:t,extra:o,className:r}){let{t:s}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-12 px-3 flex-none bg-[#0a0a0b] flex items-center justify-between gap-4 border-b border-[rgba(39,39,42,0.6)]",r),children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("h2",{className:"font-semibold",children:e}),t&&jsxRuntime.jsxs("div",{className:"flex items-center gap-1 text-primary",children:[jsxRuntime.jsx(ui$1.PauseIcon,{className:"w-4 h-4"}),jsxRuntime.jsx("span",{className:"text-xs hidden sm:inline",children:s("tokens.pulse.paused")})]})]}),o&&jsxRuntime.jsx("div",{className:"flex items-center gap-3",children:o})]})}function Rr({isLast:e=false,className:t}){return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full overflow-hidden px-4 py-3 animate-pulse border-b",t),style:e?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-20 h-20 rounded-sm bg-content2"}),jsxRuntime.jsx("div",{className:"w-14 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1.5",children:[jsxRuntime.jsx("div",{className:"w-16 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-20 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-8 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5",children:[jsxRuntime.jsx("div",{className:"flex flex-col items-end gap-1",children:jsxRuntime.jsx("div",{className:"w-16 h-4 rounded bg-content2"})}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-14 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-10 h-2.5 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-center gap-4",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-1",children:[jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-16 h-7 rounded-md bg-content2 flex-none"})]})]})}function $({icon:e,value:t,tooltip:o,warning:r,disable:s=false,className:n,tooltipPlacement:i="top"}){return jsxRuntime.jsx(ui$1.StyledTooltip,{content:o,placement:i,children:jsxRuntime.jsxs("div",{className:ui$1.cn("shrink-0 px-2 py-0.5 flex items-center gap-1 rounded-full text-xs border border-border/60",r?"text-danger-500":s?"text-neutral":"text-primary",n),children:[e,jsxRuntime.jsx("span",{children:t})]})})}var Io={kol:{label:"KOL",bgClass:"bg-yellow-500/15",textClass:"text-yellow-400"},smart:{label:"Smart",bgClass:"bg-sky-500/15",textClass:"text-sky-400"},sniper:{label:"Sniper",bgClass:"bg-red-500/15",textClass:"text-red-400"},dev:{label:"Dev",bgClass:"bg-orange-500/15",textClass:"text-orange-400"},bundle:{label:"Bundle",bgClass:"bg-purple-500/15",textClass:"text-purple-400"},bluechip:{label:"Bluechip",bgClass:"bg-emerald-500/15",textClass:"text-emerald-400"},insider:{label:"Insider",bgClass:"bg-fuchsia-500/15",textClass:"text-fuchsia-400"},fresh:{label:"Fresh",bgClass:"bg-teal-500/15",textClass:"text-teal-400"}};function xl({tag:e,className:t}){let o=Io[e]??{label:e,bgClass:"bg-default/20",textClass:"text-default-500"};return jsxRuntime.jsx("span",{className:ui$1.cn("inline-flex items-center rounded px-1.5 py-0.5 text-[10px] font-medium uppercase leading-none tracking-wide",o.bgClass,o.textClass,t),children:o.label})}function Mr({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,s=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-1",t),children:[r.map(n=>jsxRuntime.jsx(xl,{tag:n},n)),s>0&&jsxRuntime.jsxs("span",{className:"inline-flex items-center rounded bg-default/20 px-1.5 py-0.5 text-[10px] font-medium text-default-500",children:["+",s]})]})}function kl({tag:e,className:t}){let o=Io[e]??{label:e,bgClass:"bg-default/20",textClass:"text-default-500"};return jsxRuntime.jsx("span",{className:ui$1.cn("inline-flex items-center rounded px-1.5 py-0.5 text-[10px] font-medium uppercase leading-none tracking-wide",o.bgClass,o.textClass,t),children:o.label})}function Ot({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,s=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-1",t),children:[r.map(n=>jsxRuntime.jsx(kl,{tag:n},n)),s>0&&jsxRuntime.jsxs("span",{className:"inline-flex items-center rounded bg-default/20 px-1.5 py-0.5 text-[10px] font-medium text-default-500",children:["+",s]})]})}var hl={[types.SolanaTokenProtocol.BAGS]:{text:"text-bags",bg:"bg-bags",bg5:"bg-bags/5",bg20:"bg-bags/20",border:"border-bags"},[types.SolanaTokenProtocol.BELIEVE]:{text:"text-believe",bg:"bg-believe",bg5:"bg-believe/5",bg20:"bg-believe/20",border:"border-believe"},[types.SolanaTokenProtocol.BONK]:{text:"text-bonk",bg:"bg-bonk",bg5:"bg-bonk/5",bg20:"bg-bonk/20",border:"border-bonk"},[types.SolanaTokenProtocol.BOOP]:{text:"text-boop",bg:"bg-boop",bg5:"bg-boop/5",bg20:"bg-boop/20",border:"border-boop"},[types.SolanaTokenProtocol.HEAVEN]:{text:"text-heaven",bg:"bg-heaven",bg5:"bg-heaven/5",bg20:"bg-heaven/20",border:"border-heaven"},[types.SolanaTokenProtocol.JUPSTUDIO]:{text:"text-jupstudio",bg:"bg-jupstudio",bg5:"bg-jupstudio/5",bg20:"bg-jupstudio/20",border:"border-jupstudio"},[types.SolanaTokenProtocol.LAUNCHLAB]:{text:"text-launchlab",bg:"bg-launchlab",bg5:"bg-launchlab/5",bg20:"bg-launchlab/20",border:"border-launchlab"},[types.SolanaTokenProtocol.METEORA]:{text:"text-meteora",bg:"bg-meteora",bg5:"bg-meteora/5",bg20:"bg-meteora/20",border:"border-meteora"},[types.SolanaTokenProtocol.MOONIT]:{text:"text-moonit",bg:"bg-moonit",bg5:"bg-moonit/5",bg20:"bg-moonit/20",border:"border-moonit"},[types.SolanaTokenProtocol.MOONSHOT]:{text:"text-moonshot",bg:"bg-moonshot",bg5:"bg-moonshot/5",bg20:"bg-moonshot/20",border:"border-moonshot"},[types.SolanaTokenProtocol.ORCA]:{text:"text-orca",bg:"bg-orca",bg5:"bg-orca/5",bg20:"bg-orca/20",border:"border-orca"},[types.SolanaTokenProtocol.PUMP]:{text:"text-pump",bg:"bg-pump",bg5:"bg-pump/5",bg20:"bg-pump/20",border:"border-pump"},[types.SolanaTokenProtocol.RAYDIUM]:{text:"text-raydium",bg:"bg-raydium",bg5:"bg-raydium/5",bg20:"bg-raydium/20",border:"border-raydium"},[types.SolanaTokenProtocol.SUGAR]:{text:"text-sugar",bg:"bg-sugar",bg5:"bg-sugar/5",bg20:"bg-sugar/20",border:"border-sugar"},[types.SolanaTokenProtocol.VIRTUAL_CURVE]:{text:"text-virtual-curve",bg:"bg-virtual-curve",bg5:"bg-virtual-curve/5",bg20:"bg-virtual-curve/20",border:"border-virtual-curve"},[types.SolanaTokenProtocol.PUMP_AMM]:{text:"text-pump-amm",bg:"bg-pump-amm",bg5:"bg-pump-amm/5",bg20:"bg-pump-amm/20",border:"border-pump-amm"}},bl={text:"text-neutral",bg:"bg-neutral",bg5:"bg-neutral/5",bg20:"bg-neutral/20",border:"border-neutral"};function Me(e){return hl[e]??bl}function ce({token:e,enablePreview:t=true,enableSearch:o=true,showProgress:r=true,showProtocolFamily:s=true,radius:n="sm",className:i,classNames:a}){let l=react.useMemo(()=>e.launchedFrom?.protocolFamily?utils.parseTokenProtocolFamily(e.chain,e.launchedFrom.protocolFamily):void 0,[e.chain,e.launchedFrom?.protocolFamily]),d=react.useMemo(()=>s&&l,[s,l]),m=react.useMemo(()=>r&&e.migrateProgress&&new utils.SafeBigNumber(e.migrateProgress).lt(100),[r,e.migrateProgress]),c=react.useMemo(()=>o&&e.image,[o,e.image]),p=react.useMemo(()=>(e.symbol??e.name??e.address??"L").slice(0,1).toUpperCase(),[e.symbol,e.name,e.address]),[u,f]=react.useState(false),k=react.useCallback(()=>{f(true);},[]),x=react.useCallback(()=>{f(false);},[]),g=react.useCallback(h=>{if(h.stopPropagation(),!e.image)return;let b=utils.searchImageUrl(e.image);window.open(b,"_blank");},[e.image]);return jsxRuntime.jsxs("div",{className:ui$1.cn("relative justify-center items-center",i??"w-15 h-15"),children:[!m&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0",`rounded-${n}`,l?Me(l).bg:"bg-[rgba(39,39,42,0.6)]",a?.background)}),m&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute -inset-0.5",`rounded-${n}`),children:jsxRuntime.jsx(Cl,{className:ui$1.cn(l?Me(l).text:"text-[rgba(39,39,42,0.6)]",a?.progress),progress:e.migrateProgress??"0"})}),jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 p-px flex items-center justify-center",`rounded-${n}`,l?Me(l).bg20:"bg-[rgba(39,39,42,0.12)]",a?.avatarWrapper),children:jsxRuntime.jsx(Nl,{token:e,radius:n,enableSearch:o,enablePreview:t,classNames:a,children:jsxRuntime.jsxs("div",{className:ui$1.cn("relative w-full h-full bg-content1 flex items-center justify-center p-0.5",`rounded-${n}`,u&&c&&"cursor-pointer"),onMouseEnter:k,onMouseLeave:x,children:[jsxRuntime.jsx(ui$1.Avatar,{showFallback:true,src:e.image,name:p,className:ui$1.cn("w-full h-full bg-content1 text-neutral text-2xl",`rounded-${n}`,a?.avatar)}),u&&c&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${n}`,a?.searchWrapper),onClick:g,children:jsxRuntime.jsx(ui$1.CameraIcon,{className:ui$1.cn("w-6 h-6",a?.searchIcon)})})]})})}),d&&jsxRuntime.jsx("div",{className:"contents",children:jsxRuntime.jsx(ui$1.StyledTooltip,{content:e.launchedFrom?.protocolFamily??l,placement:"bottom",children:jsxRuntime.jsx("div",{className:ui$1.cn("absolute -bottom-1 -right-1 rounded-full p-px w-4 h-4",l&&Me(l).bg,a?.protocolFamilyIconWrapper),children:jsxRuntime.jsx(ui$1.Image,{removeWrapper:true,src:`/images/protocols/${l}.svg`,className:ui$1.cn("w-full h-full rounded-full bg-content1",a?.protocolFamilyIcon)})})})})]})}function Nl({token:e,radius:t,enableSearch:o,enablePreview:r,classNames:s,children:n}){return react.useMemo(()=>r&&e.image,[r,e.image])?jsxRuntime.jsx(ui$1.StyledTooltip,{content:jsxRuntime.jsx(Sl,{token:e,radius:t,enableSearch:o,classNames:s}),closeDelay:100,placement:"bottom-start",classNames:{content:"p-1"},children:n}):n}function Sl({token:e,enableSearch:t,radius:o,classNames:r}){let s=react.useMemo(()=>t&&e.image,[t,e.image]),n=react.useMemo(()=>(e.symbol??e.name??e.address??"L").slice(0,1).toUpperCase(),[e.symbol,e.name,e.address]),[i,a]=react.useState(false),l=react.useCallback(()=>{a(true);},[]),d=react.useCallback(()=>{a(false);},[]),m=react.useCallback(c=>{if(c.stopPropagation(),!e.image)return;let p=utils.searchImageUrl(e.image);window.open(p,"_blank");},[e.image]);return jsxRuntime.jsxs("div",{className:ui$1.cn("relative flex items-center justify-center w-60 h-60",`rounded-${o}`,i&&s&&"cursor-pointer",r?.previewWrapper),onMouseEnter:l,onMouseLeave:d,children:[jsxRuntime.jsx(ui$1.Avatar,{showFallback:true,src:e.image,name:n,className:ui$1.cn("w-full h-full bg-content1 text-neutral text-3xl",`rounded-${o}`,r?.previewAvatar)}),i&&s&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${o}`,r?.previewSearchWrapper),onClick:m,children:jsxRuntime.jsx(ui$1.CameraIcon,{className:ui$1.cn("w-10 h-10",r?.previewSearchIcon)})})]})}function Cl({progress:e,className:t}){let o=react.useMemo(()=>296-Number(e)*296/100,[e]);return jsxRuntime.jsxs("svg",{viewBox:"0 0 78 78",className:"w-full h-full",children:[jsxRuntime.jsx("path",{className:`${t} opacity-40`,stroke:"currentColor",fill:"transparent",strokeWidth:"1",d:`
1
+ 'use strict';var react=require('react'),reactWindow=require('react-window'),ui=require('@liberfi.io/ui'),jsxRuntime=require('react/jsx-runtime'),hooks=require('@liberfi.io/hooks'),i18n=require('@liberfi.io/i18n'),utils=require('@liberfi.io/utils'),types=require('@liberfi.io/types'),react$1=require('@liberfi.io/react'),uiScaffold=require('@liberfi.io/ui-scaffold'),jotai=require('jotai'),utils$1=require('jotai/utils'),reactWindowInfiniteLoader=require('react-window-infinite-loader');function Ur({title:e,isPaused:t,extra:o,className:r}){return jsxRuntime.jsxs("div",{className:ui.cn("w-full h-12 px-3 flex-none bg-[#0a0a0b] flex items-center justify-between gap-4 border-b border-[rgba(39,39,42,0.6)]",r),children:[jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[jsxRuntime.jsx("h2",{className:"min-w-0 truncate font-semibold",children:e}),t&&jsxRuntime.jsx("div",{className:"flex flex-none items-center gap-1 text-primary",children:jsxRuntime.jsx(ui.PauseIcon,{className:"w-4 h-4"})})]}),o&&jsxRuntime.jsx("div",{className:"flex min-w-0 items-center gap-3",children:o})]})}function Ho({isLast:e=false,className:t}){return jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full overflow-hidden px-4 py-3 animate-pulse",t),style:{borderBottom:e?"none":"1px solid rgba(39,39,42,0.6)"},children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-20 h-20 rounded-sm bg-content2"}),jsxRuntime.jsx("div",{className:"w-14 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1.5",children:[jsxRuntime.jsx("div",{className:"w-16 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-20 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-8 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5",children:[jsxRuntime.jsx("div",{className:"flex flex-col items-end gap-1",children:jsxRuntime.jsx("div",{className:"w-16 h-4 rounded bg-content2"})}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-14 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-10 h-2.5 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-center gap-4",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-1",children:[jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-16 h-7 rounded-md bg-content2 flex-none"})]})]})}function z({icon:e,value:t,tooltip:o,warning:r,disable:s=false,className:n,tooltipPlacement:i="top"}){return jsxRuntime.jsx(ui.StyledTooltip,{content:o,placement:i,children:jsxRuntime.jsxs("div",{className:ui.cn("shrink-0 px-2 py-0.5 flex items-center gap-1 rounded-full text-xs border border-border/60",r?"text-danger-500":s?"text-neutral":"text-primary",n),children:[e,jsxRuntime.jsx("span",{children:t})]})})}var Fo={kol:{label:"KOL",bgClass:"bg-yellow-500/15",textClass:"text-yellow-400"},smart:{label:"Smart",bgClass:"bg-sky-500/15",textClass:"text-sky-400"},sniper:{label:"Sniper",bgClass:"bg-red-500/15",textClass:"text-red-400"},dev:{label:"Dev",bgClass:"bg-orange-500/15",textClass:"text-orange-400"},bundle:{label:"Bundle",bgClass:"bg-purple-500/15",textClass:"text-purple-400"},bluechip:{label:"Bluechip",bgClass:"bg-emerald-500/15",textClass:"text-emerald-400"},insider:{label:"Insider",bgClass:"bg-fuchsia-500/15",textClass:"text-fuchsia-400"},fresh:{label:"Fresh",bgClass:"bg-teal-500/15",textClass:"text-teal-400"}};function Nl({tag:e,className:t}){let o=Fo[e]??{label:e,bgClass:"bg-default/20",textClass:"text-default-500"};return jsxRuntime.jsx("span",{className:ui.cn("inline-flex items-center rounded px-1.5 py-0.5 text-[10px] font-medium uppercase leading-none tracking-wide",o.bgClass,o.textClass,t),children:o.label})}function Br({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,s=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-1",t),children:[r.map(n=>jsxRuntime.jsx(Nl,{tag:n},n)),s>0&&jsxRuntime.jsxs("span",{className:"inline-flex items-center rounded bg-default/20 px-1.5 py-0.5 text-[10px] font-medium text-default-500",children:["+",s]})]})}function Sl({tag:e,className:t}){let o=Fo[e]??{label:e,bgClass:"bg-default/20",textClass:"text-default-500"};return jsxRuntime.jsx("span",{className:ui.cn("inline-flex items-center rounded px-1.5 py-0.5 text-[10px] font-medium uppercase leading-none tracking-wide",o.bgClass,o.textClass,t),children:o.label})}function Dt({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,s=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-1",t),children:[r.map(n=>jsxRuntime.jsx(Sl,{tag:n},n)),s>0&&jsxRuntime.jsxs("span",{className:"inline-flex items-center rounded bg-default/20 px-1.5 py-0.5 text-[10px] font-medium text-default-500",children:["+",s]})]})}var Cl={[types.SolanaTokenProtocol.BAGS]:{text:"text-bags",bg:"bg-bags",bg5:"bg-bags/5",bg20:"bg-bags/20",border:"border-bags"},[types.SolanaTokenProtocol.BELIEVE]:{text:"text-believe",bg:"bg-believe",bg5:"bg-believe/5",bg20:"bg-believe/20",border:"border-believe"},[types.SolanaTokenProtocol.BONK]:{text:"text-bonk",bg:"bg-bonk",bg5:"bg-bonk/5",bg20:"bg-bonk/20",border:"border-bonk"},[types.SolanaTokenProtocol.BOOP]:{text:"text-boop",bg:"bg-boop",bg5:"bg-boop/5",bg20:"bg-boop/20",border:"border-boop"},[types.SolanaTokenProtocol.HEAVEN]:{text:"text-heaven",bg:"bg-heaven",bg5:"bg-heaven/5",bg20:"bg-heaven/20",border:"border-heaven"},[types.SolanaTokenProtocol.JUPSTUDIO]:{text:"text-jupstudio",bg:"bg-jupstudio",bg5:"bg-jupstudio/5",bg20:"bg-jupstudio/20",border:"border-jupstudio"},[types.SolanaTokenProtocol.LAUNCHLAB]:{text:"text-launchlab",bg:"bg-launchlab",bg5:"bg-launchlab/5",bg20:"bg-launchlab/20",border:"border-launchlab"},[types.SolanaTokenProtocol.METEORA]:{text:"text-meteora",bg:"bg-meteora",bg5:"bg-meteora/5",bg20:"bg-meteora/20",border:"border-meteora"},[types.SolanaTokenProtocol.MOONIT]:{text:"text-moonit",bg:"bg-moonit",bg5:"bg-moonit/5",bg20:"bg-moonit/20",border:"border-moonit"},[types.SolanaTokenProtocol.MOONSHOT]:{text:"text-moonshot",bg:"bg-moonshot",bg5:"bg-moonshot/5",bg20:"bg-moonshot/20",border:"border-moonshot"},[types.SolanaTokenProtocol.ORCA]:{text:"text-orca",bg:"bg-orca",bg5:"bg-orca/5",bg20:"bg-orca/20",border:"border-orca"},[types.SolanaTokenProtocol.PUMP]:{text:"text-pump",bg:"bg-pump",bg5:"bg-pump/5",bg20:"bg-pump/20",border:"border-pump"},[types.SolanaTokenProtocol.RAYDIUM]:{text:"text-raydium",bg:"bg-raydium",bg5:"bg-raydium/5",bg20:"bg-raydium/20",border:"border-raydium"},[types.SolanaTokenProtocol.SUGAR]:{text:"text-sugar",bg:"bg-sugar",bg5:"bg-sugar/5",bg20:"bg-sugar/20",border:"border-sugar"},[types.SolanaTokenProtocol.VIRTUAL_CURVE]:{text:"text-virtual-curve",bg:"bg-virtual-curve",bg5:"bg-virtual-curve/5",bg20:"bg-virtual-curve/20",border:"border-virtual-curve"},[types.SolanaTokenProtocol.PUMP_AMM]:{text:"text-pump-amm",bg:"bg-pump-amm",bg5:"bg-pump-amm/5",bg20:"bg-pump-amm/20",border:"border-pump-amm"}},wl={text:"text-neutral",bg:"bg-neutral",bg5:"bg-neutral/5",bg20:"bg-neutral/20",border:"border-neutral"};function Oe(e){return Cl[e]??wl}function fe({token:e,enablePreview:t=true,enableSearch:o=true,showProgress:r=true,showProtocolFamily:s=true,radius:n="sm",className:i,classNames:l}){let a=react.useMemo(()=>e.launchedFrom?.protocolFamily?utils.parseTokenProtocolFamily(e.chain,e.launchedFrom.protocolFamily):void 0,[e.chain,e.launchedFrom?.protocolFamily]),d=react.useMemo(()=>s&&a,[s,a]),m=react.useMemo(()=>r&&e.migrateProgress&&new utils.SafeBigNumber(e.migrateProgress).lt(100),[r,e.migrateProgress]),c=react.useMemo(()=>o&&e.image,[o,e.image]),p=react.useMemo(()=>(e.symbol??e.name??e.address??"L").slice(0,1).toUpperCase(),[e.symbol,e.name,e.address]),[u,g]=react.useState(false),f=react.useCallback(()=>{g(true);},[]),x=react.useCallback(()=>{g(false);},[]),b=react.useCallback(h=>{if(h.stopPropagation(),!e.image)return;let k=utils.searchImageUrl(e.image);window.open(k,"_blank");},[e.image]);return jsxRuntime.jsxs("div",{className:ui.cn("relative justify-center items-center",i??"w-15 h-15"),children:[!m&&jsxRuntime.jsx("div",{className:ui.cn("absolute inset-0",`rounded-${n}`,a?Oe(a).bg:"bg-[rgba(39,39,42,0.6)]",l?.background)}),m&&jsxRuntime.jsx("div",{className:ui.cn("absolute -inset-0.5",`rounded-${n}`),children:jsxRuntime.jsx(Hl,{className:ui.cn(a?Oe(a).text:"text-[rgba(39,39,42,0.6)]",l?.progress),progress:e.migrateProgress??"0"})}),jsxRuntime.jsx("div",{className:ui.cn("absolute inset-0 p-px flex items-center justify-center",`rounded-${n}`,a?Oe(a).bg20:"bg-[rgba(39,39,42,0.12)]",l?.avatarWrapper),children:jsxRuntime.jsx(Al,{token:e,radius:n,enableSearch:o,enablePreview:t,classNames:l,children:jsxRuntime.jsxs("div",{className:ui.cn("relative w-full h-full bg-content1 flex items-center justify-center p-0.5",`rounded-${n}`,u&&c&&"cursor-pointer"),onMouseEnter:f,onMouseLeave:x,children:[jsxRuntime.jsx(ui.Avatar,{showFallback:true,src:e.image,name:p,className:ui.cn("w-full h-full bg-content1 text-neutral text-2xl",`rounded-${n}`,l?.avatar)}),u&&c&&jsxRuntime.jsx("div",{className:ui.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${n}`,l?.searchWrapper),onClick:b,children:jsxRuntime.jsx(ui.CameraIcon,{className:ui.cn("w-6 h-6",l?.searchIcon)})})]})})}),d&&jsxRuntime.jsx("div",{className:"contents",children:jsxRuntime.jsx(ui.StyledTooltip,{content:e.launchedFrom?.protocolFamily??a,placement:"bottom",children:jsxRuntime.jsx("div",{className:ui.cn("absolute -bottom-1 -right-1 rounded-full p-px w-4 h-4",a&&Oe(a).bg,l?.protocolFamilyIconWrapper),children:jsxRuntime.jsx(ui.Image,{removeWrapper:true,src:`/images/protocols/${a}.svg`,className:ui.cn("w-full h-full rounded-full bg-content1",l?.protocolFamilyIcon)})})})})]})}function Al({token:e,radius:t,enableSearch:o,enablePreview:r,classNames:s,children:n}){return react.useMemo(()=>r&&e.image,[r,e.image])?jsxRuntime.jsx(ui.StyledTooltip,{content:jsxRuntime.jsx(Il,{token:e,radius:t,enableSearch:o,classNames:s}),closeDelay:100,placement:"bottom-start",classNames:{content:"p-1"},children:n}):n}function Il({token:e,enableSearch:t,radius:o,classNames:r}){let s=react.useMemo(()=>t&&e.image,[t,e.image]),n=react.useMemo(()=>(e.symbol??e.name??e.address??"L").slice(0,1).toUpperCase(),[e.symbol,e.name,e.address]),[i,l]=react.useState(false),a=react.useCallback(()=>{l(true);},[]),d=react.useCallback(()=>{l(false);},[]),m=react.useCallback(c=>{if(c.stopPropagation(),!e.image)return;let p=utils.searchImageUrl(e.image);window.open(p,"_blank");},[e.image]);return jsxRuntime.jsxs("div",{className:ui.cn("relative flex items-center justify-center w-60 h-60",`rounded-${o}`,i&&s&&"cursor-pointer",r?.previewWrapper),onMouseEnter:a,onMouseLeave:d,children:[jsxRuntime.jsx(ui.Avatar,{showFallback:true,src:e.image,name:n,className:ui.cn("w-full h-full bg-content1 text-neutral text-3xl",`rounded-${o}`,r?.previewAvatar)}),i&&s&&jsxRuntime.jsx("div",{className:ui.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${o}`,r?.previewSearchWrapper),onClick:m,children:jsxRuntime.jsx(ui.CameraIcon,{className:ui.cn("w-10 h-10",r?.previewSearchIcon)})})]})}function Hl({progress:e,className:t}){let o=react.useMemo(()=>296-Number(e)*296/100,[e]);return jsxRuntime.jsxs("svg",{viewBox:"0 0 78 78",className:"w-full h-full",children:[jsxRuntime.jsx("path",{className:`${t} opacity-40`,stroke:"currentColor",fill:"transparent",strokeWidth:"1",d:`
2
2
  M 76 76
3
3
  L 6 76
4
4
  Q 2 76 2 72
@@ -18,7 +18,7 @@
18
18
  Q 76 2 76 6
19
19
  L 76 72
20
20
  Q 76 76 76 76
21
- `})]})}function Kr({token:e,renderAction:t,isLast:o=false,onSelectToken:r,className:s}){let{t:n}=i18n.useTranslation(),i=ui$1.useCopyToClipboard(),a=hooks.useTickAge(e.createdAt),l=e.marketData,d=e.stats?.["1h"],m=react.useCallback(()=>{r?.(e);},[r,e]),c=react.useCallback(U=>{U.stopPropagation(),i(e.address,()=>ui$1.toast.success(n("tokens.copied.address")));},[i,e.address,n]),p=react.useMemo(()=>d?.volumesInUsd,[d?.volumesInUsd]),u=react.useMemo(()=>d?.buyVolumesInUsd,[d?.buyVolumesInUsd]),f=react.useMemo(()=>d?.sellVolumesInUsd,[d?.sellVolumesInUsd]),k=react.useMemo(()=>d?.trades,[d?.trades]),x=react.useMemo(()=>l?.marketCapInUsd,[l?.marketCapInUsd]),g=react.useMemo(()=>l?.tvlInUsd,[l?.tvlInUsd]),h=react.useMemo(()=>{let U=new utils.SafeBigNumber(x);return U.lt(1e3)?"text-foreground":U.lt(1e6)?"text-secondary":"text-primary"},[x]),b=react.useMemo(()=>new utils.SafeBigNumber(l?.top10HoldingsRatio).gte(.1),[l?.top10HoldingsRatio]),T=react.useMemo(()=>new utils.SafeBigNumber(l?.devHoldingsRatio).gte(.1),[l?.devHoldingsRatio]),I=react.useMemo(()=>new utils.SafeBigNumber(l?.insiderHoldingsRatio).gte(.1),[l?.insiderHoldingsRatio]),M=react.useMemo(()=>new utils.SafeBigNumber(l?.sniperHoldingsRatio).gte(.1),[l?.sniperHoldingsRatio]),Q=react.useMemo(()=>new utils.SafeBigNumber(l?.bundleHoldingsRatio).gte(.1),[l?.bundleHoldingsRatio]),[Se,_]=react.useMemo(()=>{let U=Number(d?.buys??0),P=Number(d?.sells??0),W=U+P;if(W===0)return [12,12];let ft=Math.round(U/W*24);return [ft,24-ft]},[d?.buys,d?.sells]),be=l?.holders!==void 0&&l.holders>0,Te=l?.proHolders!==void 0&&l.proHolders>0,F=l?.kolHolders!==void 0&&l.kolHolders>0,ne=be||Te||F;return jsxRuntime.jsxs("div",{className:ui$1.cn("relative w-full h-full overflow-hidden px-4 py-3 hover:bg-content2/40 cursor-pointer border-b",s),style:o?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:r?m:void 0,children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx(ce,{token:e,enableSearch:true,enablePreview:!!e.image,showProgress:true,className:"w-20 h-20"}),jsxRuntime.jsxs("button",{type:"button",className:"text-xs font-mono text-neutral hover:text-foreground leading-none",onClick:c,"aria-label":n("tokens.copied.address"),title:n("tokens.copied.address"),children:[e.address.slice(0,4),"...",e.address.slice(-4)]})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("button",{type:"button",className:"flex items-center gap-1.5 min-w-0 text-left",onClick:c,"aria-label":n("tokens.copied.address"),title:n("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"flex-none text-sm font-semibold leading-none whitespace-nowrap overflow-hidden text-ellipsis max-w-24",children:e.symbol}),jsxRuntime.jsx(ui$1.StyledTooltip,{content:e.name,children:jsxRuntime.jsx("span",{className:"text-[13px] leading-none text-neutral truncate max-w-20",children:e.name})}),jsxRuntime.jsx(ui$1.CopyIcon,{className:"flex-none w-3.5 h-3.5 text-neutral"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 leading-none",children:[jsxRuntime.jsx("span",{className:"text-[13px] font-mono font-medium text-neutral",children:utils.formatAge(a)}),e.socialMedias?.website&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.website,className:"text-neutral hover:text-primary",target:"_blank",onClick:U=>U.stopPropagation(),children:jsxRuntime.jsx(ui$1.WebsiteIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.twitter,className:"text-neutral hover:text-primary",target:"_blank",onClick:U=>U.stopPropagation(),children:jsxRuntime.jsx(ui$1.TwitterIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.telegram,className:"text-neutral hover:text-primary",target:"_blank",onClick:U=>U.stopPropagation(),children:jsxRuntime.jsx(ui$1.TelegramIcon,{className:"w-3.5 h-3.5"})}),jsxRuntime.jsx(ui$1.Link,{href:utils.searchTwitterUrl(`${e.symbol} OR ${e.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",onClick:U=>U.stopPropagation(),children:jsxRuntime.jsx(ui$1.SearchIcon,{className:"w-3.5 h-3.5"})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-foreground/80 leading-none",children:[jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"MC"}),jsxRuntime.jsx("span",{className:ui$1.cn(h),children:utils.formatAmountUSDCompact(x)})]}),jsxRuntime.jsx("span",{className:"text-neutral/30",children:"\xB7"}),jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"Liq"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(g)})]})]}),ne&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[be&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:n("tokens.tokenInfo.holders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.PeopleIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(l?.holders)]})}),Te&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:n("tokens.tokenInfo.proHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.KlineCandlesIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(l?.proHolders)]})}),F&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:n("tokens.tokenInfo.kolHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.StarIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(l?.kolHolders)]})})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5 leading-none font-mono",children:[jsxRuntime.jsx("div",{className:"flex flex-col items-end gap-1",children:jsxRuntime.jsx("span",{className:ui$1.cn("text-base font-bold leading-none",h),children:utils.formatAmountUSDCompact(x)})}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"V"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmountUSDCompact(p)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(u)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(f)})]})]}),jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"TX"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmount(k)})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-start gap-4 relative",children:[jsxRuntime.jsx(ui$1.HorizontalScrollContainer,{className:"flex-auto min-w-0",forceShowArrows:true,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(l?.top10HoldingsRatio),tooltip:n("tokens.tokenInfo.top10HoldingsRatio"),warning:b,disable:!l?.top10HoldingsRatio||l?.top10HoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(l?.devHoldingsRatio),tooltip:n("tokens.tokenInfo.devHoldingsRatio"),warning:T,disable:!l?.devHoldingsRatio||l?.devHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(l?.sniperHoldingsRatio),tooltip:n("tokens.tokenInfo.sniperHoldingsRatio"),warning:M,disable:!l?.sniperHoldingsRatio||l?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(l?.insiderHoldingsRatio),tooltip:n("tokens.tokenInfo.insiderHoldingsRatio"),warning:I,disable:!l?.insiderHoldingsRatio||l?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(l?.bundleHoldingsRatio),tooltip:n("tokens.tokenInfo.bundleHoldingsRatio"),warning:Q,disable:!l?.bundleHoldingsRatio||l?.bundleHoldingsRatio==="0"})]})}),t&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:U=>U.stopPropagation(),children:t(e)})]})]})}var Jl=152,qr=10;function Yl({index:e,style:t,data:o,skeletonCount:r,renderItemAction:s,onSelectToken:n}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Kr,{token:o[e],isLast:e===o.length-1,renderAction:s,onSelectToken:n})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Rr,{isLast:e===r-1})})}function Ge({title:e,tokens:t,isLoading:o,itemHeight:r=Jl,renderHeaderExtra:s,renderItemAction:n,onSelectToken:i,onPauseChange:a,className:l,hideHeader:d}){let m=o||!t?void 0:t,c=m?m.length:qr,p=react.useMemo(()=>({data:m,skeletonCount:qr,renderItemAction:n,onSelectToken:i}),[m,n,i]),[u,f]=react.useState(false),k=react.useCallback(()=>{f(true),a?.(true);},[a]),x=react.useCallback(()=>{f(false),a?.(false);},[a]);return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full bg-[#0a0a0b] overflow-hidden flex flex-col border border-[rgba(39,39,42,0.6)] rounded-lg",l),onMouseEnter:k,onMouseLeave:x,children:[!d&&jsxRuntime.jsx(Pr,{title:e,isPaused:u,extra:s}),jsxRuntime.jsx("div",{className:"flex-1 w-full overflow-hidden",children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",rowCount:c,rowHeight:r,rowComponent:Yl,rowProps:p,overscanCount:5})})]})}function Fo(e,t){let o={...e};for(let r of Object.keys(t))t[r]!==void 0&&(o[r]=t[r]);return o}var jl=["1m","5m","15m","30m","1h","4h","24h"];function ed(e,t){if(!t)return e;if(!e)return t;let o={...e};for(let r of jl)t[r]&&(o[r]=e[r]?Fo(e[r],t[r]):t[r]);return o}function td(e,t){return t?e?Fo(e,t):t:e}function Vt(e,t){return t?e?Fo(e,t):t:e}function X(e,t){let{chain:o,address:r,stats:s,marketData:n,socialMedias:i,security:a,launchedFrom:l,migratedTo:d,...m}=t,c={...e};for(let p of Object.keys(m))m[p]!==void 0&&(c[p]=m[p]);return c.stats=ed(e.stats,s),c.marketData=td(e.marketData,n),c.socialMedias=Vt(e.socialMedias,i),c.security=Vt(e.security,a),c.launchedFrom=Vt(e.launchedFrom,l),c.migratedTo=Vt(e.migratedTo,d),c}function Xe(e,t){let o=new Map(e.map(r=>[r.address,r]));return t.map(r=>{let s=o.get(r.address);return s?X(s,r):r})}function od(e){return e.chain!==void 0&&e.address!==void 0&&e.address!==""&&e.name!==void 0&&e.symbol!==void 0&&e.decimals!==void 0}function Ce(e,t){if(t.length===0)return e;let o=[...e],r=false;for(let s of t){let n=o.findIndex(i=>i.address===s.address);if(n>=0){o[n]=X(o[n],s),r=true;continue}od(s)&&(o.push(s),r=true);}return r?o:e}function Jr({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let{subscribeClient:s}=react$1.useDexClient(),n=react.useRef(new Map),i=react.useRef(o);i.current=o;let a=react.useMemo(()=>Array.from(new Set(t.map(m=>m.address.trim()).filter(Boolean))).sort().join(","),[t]),l=react.useMemo(()=>a?a.split(","):[],[a]),d=()=>{n.current.forEach(m=>m.unsubscribe()),n.current.clear();};react.useEffect(()=>d,[e,s,r]),react.useEffect(()=>{if(!r){d();return}let m=new Set(l),c=n.current;for(let[p,u]of c)m.has(p)||(u.unsubscribe(),c.delete(p));for(let p of l)c.has(p)||c.set(p,s.subscribeToken(e,p,u=>{i.current(u);}));},[l,e,r,s]);}var id=80;function rn(e){return {chain:e.chain,address:e.address,name:e.name??"",symbol:e.symbol??"",decimals:e.decimals??0,image:e.image,description:e.description,socialMedias:e.socialMedias,launchedFrom:e.launchedFrom,migratedTo:e.migratedTo,createdAt:e.createdAt}}function ad(e,t,o){return e===t?o:e===o?t:o||t}function Uo(e){let t=e.token?.address??e.tokenAAddress??"",o=e.token;return {...o,chain:e.chain,address:t,name:o?.name??"",symbol:o?.symbol??"",decimals:o?.decimals??0,createdAt:o?.createdAt??e.createdAt,liquidities:[{poolAddress:e.poolAddress,pairAddress:ad(t,e.tokenAAddress,e.tokenBAddress),image:e.dex?.image,programAddress:e.dex?.programAddress,protocolFamily:e.dex?.protocolFamily,protocolName:e.dex?.protocolName}]}}function ld(e){return {...rn(Uo(e)),...e.token??{},liquidities:Uo(e).liquidities,createdAt:e.token?.createdAt??e.createdAt}}function on(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,id)}function nn({chain:e,isPaused:t=false}){let o=react.useMemo(()=>({chain:e}),[e]),r=react.useRef(t);r.current=t;let s=react.useRef(e),[n,i]=react.useState(true),[a,l]=react.useState([]);react.useEffect(()=>{e!==s.current&&(i(true),l([]),s.current=e);},[e]);let{data:d,isPending:m}=react$1.useNewPoolsQuery(o);react.useEffect(()=>{d&&(l(f=>{let k=r.current,x=f.length===0&&d.length>0,g=[...f];for(let h of d){let b=ld(h),T=g.findIndex(I=>I.address===b.address);T>=0?g[T]=X(g[T],b):(!k||x)&&g.push(b);}return k?g:on(g)}),i(false));},[d]);let c=react.useCallback(f=>{l(k=>{let x=r.current,g=[...k],h=false;for(let b of f){let T=g.findIndex(I=>I.address===b.address);T>=0?(h=true,g[T]=X(g[T],b)):x||(h=true,g.push(rn(b)));}return h?x?g:on(g):k});},[]),p=react.useCallback(f=>{c(f.map(Uo));},[c]);react$1.useNewPoolsSubscription({chain:e},p),Jr({chain:e,tokens:a,onUpdate:c});let u=react.useMemo(()=>m||n,[m,n]);return {tokens:a,isLoading:u}}function Xk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,className:n,hideHeader:i}){let[a,l]=react.useState(false),{tokens:d,isLoading:m}=nn({chain:e,isPaused:a}),c=react.useCallback(p=>{l(p);},[]);return jsxRuntime.jsx(Ge,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,onPauseChange:c,className:n,hideHeader:i})}function we({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let s=react.useMemo(()=>Array.from(new Set(t.map(i=>i.address.trim()).filter(Boolean))).sort().join(","),[t]),n=react.useMemo(()=>s?s.split(","):[],[s]);react$1.useTokensSubscription({chain:e,addresses:n},o,{enabled:r&&n.length>0});}function mn({chain:e,isPaused:t=false,refetchInterval:o=3e4}){let r=react.useMemo(()=>({chain:e}),[e]),s=react.useRef(t);s.current=t;let n=react.useRef(e),[i,a]=react.useState(true),[l,d]=react.useState([]);react.useEffect(()=>{e!==n.current&&(a(true),d([]),n.current=e);},[e]);let{data:m,isPending:c}=react$1.useMigratedTokensQuery(r,{refetchInterval:o});react.useEffect(()=>{m&&(d(f=>{let k=s.current,x=[...f];for(let g of m){let h=x.findIndex(b=>b.address===g.address);h>=0?x[h]=X(x[h],g):k||x.unshift(g);}return x}),a(false));},[m]);let p=react.useCallback(f=>{d(k=>Ce(k,f));},[]);we({chain:e,tokens:l,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:l,isLoading:u}}function ch({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,className:n,hideHeader:i}){let[a,l]=react.useState(false),{tokens:d,isLoading:m}=mn({chain:e,isPaused:a}),c=react.useCallback(p=>{l(p);},[]);return jsxRuntime.jsx(Ge,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,onPauseChange:c,className:n,hideHeader:i})}function Td(e){return e.sort((t,o)=>{let r=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-r})}function xn({chain:e,isPaused:t=false,refetchInterval:o=15e3}){let r=react.useMemo(()=>({chain:e}),[e]),s=react.useRef(t);s.current=t;let n=react.useRef(e),[i,a]=react.useState(true),[l,d]=react.useState([]);react.useEffect(()=>{e!==n.current&&(a(true),d([]),n.current=e);},[e]);let{data:m,isPending:c}=react$1.useFinalStretchTokensQuery(r,{refetchInterval:o});react.useEffect(()=>{m&&(d(f=>{let k=s.current,x=f.length===0&&m.length>0,g=[...f];for(let h of m){let b=g.findIndex(T=>T.address===h.address);b>=0?g[b]=X(g[b],h):(!k||x)&&g.push(h);}return k?g:Td(g)}),a(false));},[m]);let p=react.useCallback(f=>{d(k=>Ce(k,f));},[]);we({chain:e,tokens:l,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:l,isLoading:u}}function vh({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,className:n,hideHeader:i}){let[a,l]=react.useState(false),{tokens:d,isLoading:m}=xn({chain:e,isPaused:a}),c=react.useCallback(p=>{l(p);},[]);return jsxRuntime.jsx(Ge,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:s,onPauseChange:c,className:n,hideHeader:i})}var wd=10,Ld=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function _t(){let[e,t]=jotai.useAtom(Ld),o=react.useCallback(s=>{let n=s.trim();n&&t(i=>{let a=i.filter(l=>l!==n);return [n,...a].slice(0,wd)});},[t]),r=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:r}}function Tn({histories:e,onSelect:t,onClear:o,className:r}){let{t:s}=i18n.useTranslation();return e.length===0?null:jsxRuntime.jsxs("div",{className:ui$1.cn("px-4 pb-4",r),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:s("tokens.search.history")}),jsxRuntime.jsx(ui$1.Button,{isIconOnly:true,size:"sm",className:"bg-transparent min-w-6 w-6 h-6 text-neutral",onPress:o,children:jsxRuntime.jsx(ui$1.TrashIcon,{width:20,height:20})})]}),jsxRuntime.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:e.map(n=>jsxRuntime.jsx(ui$1.Chip,{size:"sm",variant:"bordered",className:ui$1.cn("text-neutral","border-border border-1","cursor-pointer","hover:opacity-hover"),onClick:()=>t?.(n),children:n},n))})]})}function yn({onSelect:e,className:t}){let{histories:o,clearHistories:r}=_t();return jsxRuntime.jsx(Tn,{className:ui$1.cn(t),histories:o,onSelect:e,onClear:r})}function vn({value:e,onValueChange:t,onClear:o,onEscape:r,className:s}){let{t:n}=i18n.useTranslation();return jsxRuntime.jsx("div",{className:s,children:jsxRuntime.jsx(ui$1.StyledInput,{autoFocus:true,variant:"bordered",radius:"full",value:e,onValueChange:t,placeholder:n("tokens.search.placeholder"),classNames:{inputWrapper:["!bg-[rgba(39,39,42,0.6)]","!border-[rgba(63,63,70,0.5)]","data-[hover=true]:!bg-[rgba(39,39,42,1)]","group-data-[focus=true]:!bg-[rgba(39,39,42,1)]","group-data-[focus=true]:!border-[rgba(63,63,70,0.8)]"].join(" ")},startContent:jsxRuntime.jsx(ui$1.SearchIcon,{width:20,height:20,className:"text-neutral"}),endContent:e?jsxRuntime.jsx(ui$1.Button,{isIconOnly:true,className:"bg-transparent min-w-6 w-6 h-6 text-neutral",onPress:o,children:jsxRuntime.jsx(ui$1.XCloseIcon,{width:20,height:20})}):jsxRuntime.jsx(ui$1.Kbd,{className:"min-w-8 justify-center text-xs text-neutral bg-transparent border border-[rgba(63,63,70,0.5)] rounded-full cursor-pointer select-none",onMouseDown:i=>{i.preventDefault(),r?.();},children:"Esc"})})})}function $t({token:e,className:t}){let{t:o}=i18n.useTranslation(),r=hooks.useTickAge(e.createdAt),s=react.useMemo(()=>e.marketData?.priceInUsd,[e]),n=react.useMemo(()=>e.marketData?.marketCapInUsd,[e]),i=react.useMemo(()=>e.marketData?.tvlInUsd,[e]),a=react.useMemo(()=>e.stats?.["24h"]?.priceChange,[e]),l=react.useMemo(()=>a?new utils.SafeBigNumber(a).abs().toString():void 0,[a]),d=react.useMemo(()=>a!=null&&new utils.SafeBigNumber(a).gte(0),[a]);return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full px-3 flex items-center justify-between gap-2","hover:cursor-pointer hover:bg-content2 rounded-lg",t),children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2.5",children:[jsxRuntime.jsx(ce,{token:e,className:"w-10 h-10 flex-none",showProtocolFamily:true,classNames:{searchIcon:"w-5 h-5"}}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-0.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx("span",{className:"font-medium text-sm truncate",children:e.symbol}),jsxRuntime.jsx("span",{className:"text-xs text-primary font-medium",children:utils.formatAge(r)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1 text-xs text-neutral",children:[jsxRuntime.jsxs("span",{children:[o("tokens.listHeader.mcShort")," ",utils.formatAmountUSD(n)]}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsxs("span",{children:[o("tokens.listHeader.liqShort")," ",utils.formatAmountUSD(i)]})]})]})]}),jsxRuntime.jsxs("div",{className:"flex-none w-20 flex flex-col items-end",children:[jsxRuntime.jsx("span",{className:"text-xs",children:utils.formatPriceUSD(s)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex gap-0.5 items-center text-xs",d?"text-bullish":"text-bearish"),children:[d?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:8,height:8}),jsxRuntime.jsx("span",{children:utils.formatPercent(l)})]})]})]})}function Kt({className:e}){let{t}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:ui$1.cn("h-9 px-3 flex items-center justify-between","text-xs font-medium text-neutral","sticky top-0 z-10",e),children:[jsxRuntime.jsx("div",{className:"flex-1",children:jsxRuntime.jsxs("span",{children:[t("tokens.listHeader.token")," / ",t("tokens.listHeader.age")," /"," ",t("tokens.listHeader.marketCap")," /"," ",t("tokens.listHeader.liquidity")]})}),jsxRuntime.jsx("div",{className:"flex-none w-20 text-right",children:jsxRuntime.jsxs("span",{children:[t("tokens.listHeader.price")," / ",t("tokens.listHeader.24hChange")]})})]})}function Jd(){return jsxRuntime.jsxs("div",{className:"w-full h-14 px-3 flex items-center justify-between gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2",children:[jsxRuntime.jsx(ui$1.Skeleton,{className:"flex-none w-8 h-8 rounded-full"}),jsxRuntime.jsxs("div",{className:"flex flex-col gap-1.5",children:[jsxRuntime.jsx(ui$1.Skeleton,{className:"w-24 h-4 rounded-md"}),jsxRuntime.jsx(ui$1.Skeleton,{className:"w-36 h-3 rounded-md"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none w-20 flex flex-col items-end gap-1.5",children:[jsxRuntime.jsx(ui$1.Skeleton,{className:"w-14 h-4 rounded-md"}),jsxRuntime.jsx(ui$1.Skeleton,{className:"w-10 h-3 rounded-md"})]})]})}function qt({rows:e=6,className:t}){return jsxRuntime.jsx("div",{className:ui$1.cn("w-full",t),children:Array.from({length:e}).map((o,r)=>jsxRuntime.jsx(Jd,{},r))})}function Pn({keyword:e,chains:t,limit:o=50}){let r=react.useMemo(()=>({keyword:e,chains:t,limit:o}),[e,t,o]),{data:s,isLoading:n,isFetchingNextPage:i,hasNextPage:a,fetchNextPage:l}=react$1.useSearchTokensInfiniteQuery(r,{enabled:!!e});return {tokens:react.useMemo(()=>s?.pages.flatMap(m=>m.data)??[],[s]),isLoading:n,isFetchingNextPage:i,hasNextPage:a??false,fetchNextPage:l}}var ic=56;function An({onSelectToken:e,className:t,...o}){let{tokens:r,isLoading:s,isFetchingNextPage:n,hasNextPage:i,fetchNextPage:a}=Pn(o),l=react.useRef(null),{height:d}=hooks.useResizeObserver({ref:l}),m=react.useCallback(f=>f<r.length,[r]),c=react.useCallback(async()=>{i&&!n&&await a();},[i,n,a]),p=react.useMemo(()=>i?r.length+1:r.length,[r,i]),u=reactWindowInfiniteLoader.useInfiniteLoader({isRowLoaded:m,loadMoreRows:c,rowCount:p,threshold:5});return s?jsxRuntime.jsxs("div",{className:ui$1.cn("w-full",t),children:[jsxRuntime.jsx(Kt,{}),jsxRuntime.jsx(qt,{})]}):r.length===0?jsxRuntime.jsxs("div",{className:ui$1.cn("w-full",t),children:[jsxRuntime.jsx(Kt,{}),jsxRuntime.jsx(lc,{})]}):jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Kt,{className:"flex-none"}),jsxRuntime.jsx("div",{className:"flex-auto min-h-0",ref:l,children:jsxRuntime.jsx(reactWindow.List,{style:{height:d},onRowsRendered:u,rowComponent:ac,rowCount:p,rowHeight:ic,rowProps:{tokens:r,onSelectToken:e},overscanCount:5})})]})}function ac({index:e,style:t,tokens:o,onSelectToken:r}){let s=o[e];return s?jsxRuntime.jsx("div",{style:t,onClick:()=>r?.(s),children:jsxRuntime.jsx($t,{token:s})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui$1.Spinner,{size:"sm"})})}function lc(){let{t:e}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:"flex flex-col items-center justify-center py-16",children:[jsxRuntime.jsx(ui$1.EmptyIcon,{width:28,height:28,className:"text-neutral"}),jsxRuntime.jsx("p",{className:"mt-2 text-sm text-neutral",children:e("tokens.search.noResults")})]})}var cc=["24h","12h","30m","15m","30s","15s","1m","5m","1h","4h","1s"],mc=new Set(["price","marketCap","tvl","holders","top10Holdings","top10Ratio","top100Holdings","top100Ratio","creatorsHoldings","creatorsRatio","createdAt","launchedFromProtocolFamily","migratedToProtocolFamily","tag"]),pc=new Set(["priceChange","volumes","trades","traders","buys","sells"]);function J(e){if(e==null||e==="")return;let t=Number(e);return Number.isFinite(t)?t:void 0}function In(e){for(let t of cc){if(!e.endsWith(t))continue;let o=e.slice(0,-t.length);return o?{metric:o,resolution:t}:void 0}}function Mn(e){if(mc.has(e))return true;let t=In(e);return t?pc.has(t.metric):false}function Gt(e,t){switch(t){case "price":return J(e.marketData?.priceInUsd);case "marketCap":return J(e.marketData?.marketCapInUsd);case "tvl":return J(e.marketData?.tvlInUsd);case "holders":return J(e.marketData?.holders);case "top10Holdings":return J(e.marketData?.top10Holdings);case "top10Ratio":return J(e.marketData?.top10HoldingsRatio);case "top100Holdings":return J(e.marketData?.top100Holdings);case "top100Ratio":return J(e.marketData?.top100HoldingsRatio);case "creatorsHoldings":return J(e.marketData?.devHoldings);case "creatorsRatio":return J(e.marketData?.devHoldingsRatio);case "createdAt":return e.createdAt?.getTime();case "launchedFromProtocolFamily":return Hn(e,e.launchedFrom?.protocolFamily);case "migratedToProtocolFamily":return Hn(e,e.migratedTo?.protocolFamily);case "tag":return e.tags?.[0];}let o=In(t);if(!o)return;let r=e.stats?.[o.resolution];switch(o.metric){case "priceChange":return J(r?.priceChange);case "volumes":return J(r?.volumesInUsd);case "trades":return J(r?.trades);case "traders":return J(r?.traders);case "buys":return J(r?.buys);case "sells":return J(r?.sells);default:return}}function Hn(e,t){if(t)return utils.parseTokenProtocolFamily(e.chain,t)??t}var uc=new Set(["top10Ratio","top100Ratio","creatorsRatio"]);function Fn(e){let t=e.trim().toLowerCase();return t.length>0?t:void 0}function fc(e){return [e.name,e.symbol].filter(Boolean).join(" ").toLowerCase()}function gc(e){return Array.isArray(e)?e:void 0}function xc(e){return Array.isArray(e)?void 0:e}function Un(e,t){if(!uc.has(e))return t;let o=Number(t);return Number.isFinite(o)?o/100:t}function me(e,t){let o=xc(t);return o===void 0?void 0:Un(e,o)}function Eo(e,t){return gc(t)?.map(o=>Un(e,o))}function Ze(e,t){if(typeof e=="number"){let o=Number(t);return Number.isFinite(o)?e-o:void 0}if(typeof e=="string")return e.localeCompare(String(t))}function Xt(e,t){if(typeof e=="number"){let o=Number(t);return Number.isFinite(o)&&e===o}return String(e)===String(t)}function kc(e,t){if(!Mn(t.field))return false;let o=Gt(e,t.field),r=o===void 0;if(t.operator==="isNull")return r;if(t.operator==="isNotNull")return !r;if(r)return false;switch(t.operator){case "eq":{let s=me(t.field,t.value);return s!==void 0&&Xt(o,s)}case "ne":{let s=me(t.field,t.value);return s!==void 0&&!Xt(o,s)}case "gt":{let s=me(t.field,t.value),n=s!==void 0?Ze(o,s):void 0;return n!==void 0&&n>0}case "gte":{let s=me(t.field,t.value),n=s!==void 0?Ze(o,s):void 0;return n!==void 0&&n>=0}case "lt":{let s=me(t.field,t.value),n=s!==void 0?Ze(o,s):void 0;return n!==void 0&&n<0}case "lte":{let s=me(t.field,t.value),n=s!==void 0?Ze(o,s):void 0;return n!==void 0&&n<=0}case "between":{let s=Eo(t.field,t.value);if(!s||s.length<2)return false;let n=Ze(o,s[0]),i=Ze(o,s[1]);return n!==void 0&&i!==void 0&&n>=0&&i<=0}case "in":{let s=Eo(t.field,t.value);return s?s.some(n=>Xt(o,n)):false}case "nin":{let s=Eo(t.field,t.value);return s?s.every(n=>!Xt(o,n)):false}case "contains":{let s=me(t.field,t.value);return s!==void 0&&String(o).includes(String(s))}case "notContains":{let s=me(t.field,t.value);return s!==void 0&&!String(o).includes(String(s))}case "startsWith":{let s=me(t.field,t.value);return s!==void 0&&String(o).startsWith(String(s))}case "endsWith":{let s=me(t.field,t.value);return s!==void 0&&String(o).endsWith(String(s))}default:return false}}function Jt(e,t){let o=t?.keywords?.map(Fn).filter(n=>n!==void 0),r=t?.excludeKeywords?.map(Fn).filter(n=>n!==void 0),s=t?.filters;return !o?.length&&!r?.length&&!s?.length?e:e.filter(n=>{let i=fc(n);return !(o?.length&&!o.some(a=>i.includes(a))||r?.length&&r.some(a=>i.includes(a))||s?.length&&!s.every(a=>kc(n,a)))})}function hc(e,t){return typeof e=="number"&&typeof t=="number"?e-t:String(e).localeCompare(String(t))}function Yt(e,t){let o=Object.keys(t??{})[0];if(!o)return e;let r=t?.[o];if(r!=="asc"&&r!=="desc")return e;let s=e.map((n,i)=>({token:n,index:i,value:Gt(n,o)}));return s.every(({value:n})=>n===void 0)?e:s.sort((n,i)=>{let a=n.value===void 0,l=i.value===void 0;if(a&&l)return n.index-i.index;if(a)return 1;if(l)return -1;let d=hc(n.value,i.value);return d===0?n.index-i.index:r==="asc"?d:-d}).map(({token:n})=>n)}function je({applyUpdates:e,paused:t=false,flushInterval:o=500}){let r=react.useRef(e),s=react.useRef(t),n=react.useRef([]),i=react.useRef(),a=react.useRef();r.current=e,s.current=t;let l=react.useCallback(()=>{i.current!==void 0&&(clearTimeout(i.current),i.current=void 0),a.current!==void 0&&(cancelAnimationFrame(a.current),a.current=void 0);},[]),d=react.useCallback(()=>{if(l(),s.current){i.current=setTimeout(d,o);return}let p=n.current;p.length!==0&&(n.current=[],r.current(p));},[l,o]),m=react.useCallback(()=>{i.current!==void 0||a.current!==void 0||(i.current=setTimeout(()=>{i.current=void 0,a.current=requestAnimationFrame(()=>{a.current=void 0,d();});},o));},[d,o]),c=react.useCallback(p=>{p.length!==0&&(n.current.push(...p),m());},[m]);return react.useEffect(()=>{t||d();},[d,t]),react.useEffect(()=>l,[l]),{enqueueUpdates:c,flush:d}}function eo({chain:e,resolution:t,filters:o,sortDirections:r,refetchInterval:s=12e3,deferUpdates:n=false,updateFlushInterval:i}){let a=react.useMemo(()=>({chain:e,resolution:t}),[e,t]),l=react.useRef(a),[d,m]=react.useState(true);react.useEffect(()=>{JSON.stringify(a)!==JSON.stringify(l.current)&&(m(true),l.current=a);},[a]);let[c,p]=react.useState([]),{data:u,isPending:f}=react$1.useTrendingTokensQuery(a,{refetchInterval:s});react.useEffect(()=>{u&&(p(T=>Xe(T,u)),m(false));},[u]);let k=react.useCallback(T=>{p(I=>Ce(I,T));},[]),{enqueueUpdates:x}=je({applyUpdates:k,paused:n,flushInterval:i});react$1.useTrendingTokensSubscription({chain:e},x),we({chain:e,tokens:c,onUpdate:x});let g=react.useMemo(()=>!!(f||d),[f,d]),h=react.useMemo(()=>Jt(c,o),[c,o]);return {tokens:react.useMemo(()=>Yt(h,r),[h,r]),isLoading:g}}var Cc=types.Chain.ETHEREUM,wc="24h",Lc=56;function Wn({chains:e,onSelectToken:t,className:o}){let r=e?.length===1?e[0]:e?.[0]??Cc,{tokens:s,isLoading:n}=eo({chain:r,resolution:wc});return jsxRuntime.jsx("div",{className:ui$1.cn("w-full flex flex-col overflow-hidden",o),children:n?jsxRuntime.jsx(qt,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:s.map(i=>jsxRuntime.jsx("div",{style:{height:Lc},onClick:()=>t?.(i),children:jsxRuntime.jsx($t,{token:i,className:"h-full"})},i.address))})})}function _n({onKeywordChange:e}){let[t,o]=react.useState(""),[r,s]=react.useState(""),{addHistory:n}=_t(),i=hooks.useCallbackRef(e),a=hooks.useCallbackRef(n),l=react.useMemo(()=>utils.debounce(p=>{s(p),i(p),p&&a(p);},500),[i,a]),d=react.useCallback(p=>{o(p),l(p);},[l]),m=react.useCallback(p=>{l.cancel(),o(p),s(p),i(p),p&&a(p);},[l,i,a]),c=react.useCallback(()=>m(""),[m]);return {text:t,keyword:r,setText:d,setKeyword:m,clearKeyword:c}}function Kn({chains:e,onKeywordChange:t,onSelectToken:o,onEscape:r}){let{text:s,keyword:n,setText:i,setKeyword:a,clearKeyword:l}=_n({onKeywordChange:t});return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsxRuntime.jsx(vn,{value:s,onValueChange:i,onClear:l,onPaste:a,onEscape:r}),n?jsxRuntime.jsx(An,{className:"flex-auto min-h-0",keyword:n,chains:e,onSelectToken:o}):jsxRuntime.jsxs("div",{className:"flex-auto min-h-0 flex flex-col overflow-hidden",children:[jsxRuntime.jsx(yn,{onSelect:a}),jsxRuntime.jsx(Wn,{className:"flex-auto min-h-0",chains:e,onSelectToken:o})]})]})}var Bo="search";function hT({id:e=Bo}){return jsxRuntime.jsx(uiScaffold.AsyncModal,{id:e,children:t=>jsxRuntime.jsx(Bc,{...t})})}function Bc({params:e,isOpen:t,onOpenChange:o,onResult:r}){let{t:s}=i18n.useTranslation(),{isMobile:n}=ui$1.useScreen(),i=react.useCallback(a=>{r(a);},[r]);return jsxRuntime.jsx(ui$1.StyledModal,{isOpen:t,onOpenChange:o,size:n?"full":"lg",hideCloseButton:true,backdrop:"blur",radius:"lg",children:jsxRuntime.jsxs(ui$1.ModalContent,{className:"w-full h-full",style:{borderRadius:n?void 0:14,border:n?void 0:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:n?void 0:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},children:[jsxRuntime.jsxs(ui$1.ModalHeader,{className:"sm:hidden flex items-center justify-between pt-4 pb-2",children:[jsxRuntime.jsx("span",{className:"text-base font-semibold",children:s("tokens.search.title")}),jsxRuntime.jsx(ui$1.Button,{isIconOnly:true,onPress:()=>o(false),size:"sm",className:"bg-transparent min-w-6 w-6 h-6",children:jsxRuntime.jsx(ui$1.XCloseIcon,{width:20,height:20})})]}),jsxRuntime.jsx(ui$1.ModalBody,{className:"p-4",children:jsxRuntime.jsx(Kn,{chains:e?.chains,onSelectToken:i,onEscape:()=>o(false)})})]})})}function LT({chains:e,onSelectToken:t,className:o}){let{t:r}=i18n.useTranslation(),{isDesktop:s}=ui$1.useScreen(),{onOpen:n,onClose:i}=uiScaffold.useAsyncModal(Bo),a=hooks.useCallbackRef(t),l=hooks.useCallbackRef(async()=>{let m=await n({params:{chains:e}});m&&a(m);}),d=hooks.useCallbackRef(()=>{i();});return react.useEffect(()=>{let m=c=>{let p=document.activeElement,u=!!p&&(p.tagName==="INPUT"||p.tagName==="TEXTAREA"||p.getAttribute("contenteditable")==="true");c.key==="/"&&!u&&(c.preventDefault(),l()),c.key==="Escape"&&(c.preventDefault(),d());};return window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m);}},[l,d]),s?jsxRuntime.jsx(ui$1.Button,{size:"sm",radius:"full",onPress:l,variant:"bordered",startContent:jsxRuntime.jsx(ui$1.SearchIcon,{width:16,height:16,className:"text-foreground"}),endContent:jsxRuntime.jsx(ui$1.Kbd,{className:"min-w-6 justify-center text-xs text-foreground bg-content3 rounded-lg",children:"/"}),className:ui$1.cn("w-56 min-w-0 h-8 min-h-0 border-transparent hover:border-border bg-content2 pl-3 pr-1.5 text-neutral",o),children:r("tokens.search.placeholder")}):jsxRuntime.jsx(ui$1.Button,{size:"sm",radius:"full",isIconOnly:true,onPress:l,variant:"bordered",className:ui$1.cn("w-8 min-w-0 h-8 min-h-0 border-1 border-border bg-content2",o),children:jsxRuntime.jsx(ui$1.SearchIcon,{width:16,height:16,className:"text-foreground"})})}function Oe(e){return e==null||e===""?"--":utils.formatPercent(Number(e)/100)}function pe(e,t=4,o=4){return e?e.length<=t+o+1?e:`${e.slice(0,t)}\u2026${e.slice(-o)}`:"--"}function Ne(e,t=Date.now()){if(e==null)return "--";let o=typeof e=="string"||typeof e=="number"?new Date(e):e,r=typeof t=="number"?new Date(t):t,s=Math.max(0,Math.floor((r.getTime()-o.getTime())/1e3));if(s<60)return `${s}s`;let n=Math.floor(s/60);if(n<60)return `${n}m`;let i=Math.floor(n/60);if(i<24)return `${i}h`;let a=Math.floor(i/24);if(a<30)return `${a}d`;let l=Math.floor(a/30);return l<12?`${l}mo`:`${Math.floor(a/365)}y`}function A(e,t){let{data:o,isLoading:r}=react$1.useTokenQuery({chain:e,address:t}),[s,n]=react.useState(o);return react.useEffect(()=>{o&&n(o);},[o]),react$1.useTokenSubscription({chain:e,address:t},i=>{i?.length&&n(a=>{if(!a)return a;let l=a;for(let d of i)l=X(l,d);return l});}),{token:s,isLoading:r}}function et({label:e,totalFormatted:t,buysFormatted:o,sellsFormatted:r,totalValue:s=0,buysValue:n=0,className:i}){let a=new utils.SafeBigNumber(s??0),l=new utils.SafeBigNumber(n??0),d=a.eq(0)?0:l.div(a).times(100).toNumber();return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-1",i),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-xs text-default-500",children:e}),jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:t})]}),jsxRuntime.jsx(ui$1.Progress,{size:"sm",value:d,classNames:{track:"bg-bearish/40",indicator:"bg-bullish"},"aria-label":`${e} buy share`}),jsxRuntime.jsxs("div",{className:"flex justify-between gap-4 text-[10px]",children:[jsxRuntime.jsxs("span",{className:"text-bullish",children:["Buys: ",o]}),jsxRuntime.jsxs("span",{className:"text-bearish",children:["Sells: ",r]})]})]})}function Jn({token:e,actions:t,dataStrip:o,className:r,onCopyAddress:s}){let n=e?.address;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex w-full flex-wrap items-center gap-4 px-4 py-3",r),children:[jsxRuntime.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[e&&jsxRuntime.jsx(ce,{token:e,radius:"lg",className:"h-10 w-10"}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col gap-0.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("span",{className:"truncate text-base font-semibold text-foreground",children:e?.symbol??"--"}),jsxRuntime.jsx("span",{className:"truncate text-xs text-default-400",children:e?.name})]}),n&&jsxRuntime.jsxs("button",{type:"button",onClick:()=>s?.(n),className:"flex items-center gap-1 text-[11px] text-default-400 transition-colors hover:text-foreground",title:n,children:[pe(n,6,6),jsxRuntime.jsx(ui$1.CopyIcon,{width:12,height:12})]})]})]}),o&&jsxRuntime.jsx("div",{className:"flex-1 min-w-0",children:o}),t&&jsxRuntime.jsx("div",{className:"ml-auto flex items-center gap-2",children:t})]})}function Yn(e,t){return A(e,t)}function jn({price:e,marketCap:t,volume:o,holdersCount:r,socialMedia:s,className:n}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-x-6 gap-y-3",n),children:[e,jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center gap-x-6 gap-y-3",children:[t,o,r]}),jsxRuntime.jsx("div",{className:"ml-auto",children:s})]})}function ky(e,t){return A(e,t)}function ts({holders:e,top10HoldingsRatio:t,top100HoldingsRatio:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e!=null?utils.formatAmount(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Oe(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Oe(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"Holders / Top10 / Top100"})]})}function os(e,t){return A(e,t)}function rs({chain:e,address:t,className:o}){let{token:r}=os(e,t);return jsxRuntime.jsx(ts,{holders:r?.marketData?.holders,top10HoldingsRatio:r?.marketData?.top10HoldingsRatio,top100HoldingsRatio:r?.marketData?.top100HoldingsRatio,className:o})}function is({marketCapInUsd:e,tvlInUsd:t,createdAt:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t?utils.formatAmountUSDCompact(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ne(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"MC / Liq / Age"})]})}function as(e,t){return A(e,t)}function ls({chain:e,address:t,className:o}){let{token:r}=as(e,t);return jsxRuntime.jsx(is,{marketCapInUsd:r?.marketData?.marketCapInUsd,tvlInUsd:r?.marketData?.tvlInUsd,createdAt:r?.createdAt,className:o})}function ms({priceInUsd:e,price24hAgoInUsd:t,className:o}){let{bearish:r,priceChange:s}=react.useMemo(()=>{if(!e||!t)return {bearish:false,priceChange:void 0};let n=new utils.SafeBigNumber(e),i=new utils.SafeBigNumber(t);return i.lte(0)?{bearish:false,priceChange:void 0}:{bearish:n.lt(i),priceChange:n.minus(i).div(i).abs().toNumber()}},[e,t]);return jsxRuntime.jsxs("div",{className:ui$1.cn("group flex flex-col gap-1",o),"data-bearish":r,children:[jsxRuntime.jsx("div",{className:"text-base font-medium leading-none text-bullish group-data-[bearish=true]:text-bearish",children:e?utils.formatPriceUSD(e):"--"}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-default-400",children:"24h"}),jsxRuntime.jsx("span",{className:"text-bullish group-data-[bearish=true]:text-bearish",children:s!=null?utils.formatPercent(s):"--"})]})]})}function ps(e,t){return A(e,t)}function us({chain:e,address:t,className:o}){let{token:r}=ps(e,t);return jsxRuntime.jsx(ms,{priceInUsd:r?.marketData?.priceInUsd,price24hAgoInUsd:r?.stats?.["24h"]?.openPriceInUsd,className:o})}function hm(e,t){switch(e){case "website":return jsxRuntime.jsx(ui$1.WebsiteIcon,{width:t,height:t});case "twitter":return jsxRuntime.jsx(ui$1.TwitterIcon,{width:t,height:t});case "telegram":return jsxRuntime.jsx(ui$1.TelegramIcon,{width:t,height:t});case "discord":return jsxRuntime.jsx(ui$1.DiscordIcon,{width:t,height:t});default:return jsxRuntime.jsx("span",{className:"text-[9px] font-medium uppercase",children:e.slice(0,2)})}}function fs({socials:e,className:t,iconSize:o=16}){if(!e)return null;let s=["website","twitter","telegram","discord","github","reddit","youtube","medium"].filter(n=>!!e[n]);return s.length===0?null:jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center gap-3",t),children:s.map(n=>jsxRuntime.jsx("a",{href:e[n],target:"_blank",rel:"noreferrer noopener",className:"flex items-center justify-center text-default-400 transition-colors hover:text-foreground",style:{width:o,height:o},children:hm(n,o)},n))})}function gs(e,t){return A(e,t)}function xs({chain:e,address:t,className:o,iconSize:r}){let{token:s}=gs(e,t);return jsxRuntime.jsx(fs,{socials:s?.socialMedias,className:o,iconSize:r})}function bs({volumesInUsd:e,trades:t,traders:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t!=null?utils.formatAmount(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:o!=null?utils.formatAmount(o):"--"})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"24h Vol / Txs / Traders"})]})}function Ts(e,t){return A(e,t)}function ys({chain:e,address:t,className:o}){let{token:r}=Ts(e,t),s=r?.stats?.["24h"];return jsxRuntime.jsx(bs,{volumesInUsd:s?.volumesInUsd,trades:s?.trades,traders:s?.traders,className:o})}function vs({chain:e,address:t,className:o}){return jsxRuntime.jsx(jn,{className:o,price:jsxRuntime.jsx(us,{chain:e,address:t}),marketCap:jsxRuntime.jsx(ls,{chain:e,address:t}),volume:jsxRuntime.jsx(ys,{chain:e,address:t}),holdersCount:jsxRuntime.jsx(rs,{chain:e,address:t}),socialMedia:jsxRuntime.jsx(xs,{chain:e,address:t})})}function Zv({chain:e,address:t,actions:o,dataStrip:r,className:s,onCopyAddress:n}){let{token:i}=Yn(e,t);return jsxRuntime.jsx(Jn,{token:i,actions:o,dataStrip:r===void 0?jsxRuntime.jsx(vs,{chain:e,address:t}):r,className:s,onCopyAddress:n})}var Cm=[{value:"holdingUsd",label:"Value"},{value:"lastActiveAt",label:"Last active"}];function Cs({holders:e,isLoading:t,sortBy:o,onSortByChange:r,onlyTracked:s=false,onOnlyTrackedChange:n,onLoadMore:i,hasMore:a,now:l=Date.now(),wellKnownAddresses:d,className:m,renderAddress:c}){let p=s?e.filter(u=>u.tags&&u.tags.length>0):e;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",m),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Holders"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:s,onChange:u=>n?.(u.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Cm.map(u=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(u.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",o===u.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:u.label},u.value))})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[640px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[30%] px-3 py-2 text-left font-normal",children:"Wallet"}),jsxRuntime.jsx("th",{className:"w-[20%] px-3 py-2 text-left font-normal",children:"Tags"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Value"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"%"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"First held"}),jsxRuntime.jsx("th",{className:"w-[13%] px-3 py-2 text-right font-normal",children:"Last active"})]})}),jsxRuntime.jsxs("tbody",{children:[p.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No holders"})}),p.map(u=>jsxRuntime.jsx(wm,{holder:u,now:l,wellKnownAddresses:d,renderAddress:c},u.address)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),a&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:i,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function wm({holder:e,now:t,wellKnownAddresses:o,renderAddress:r}){let s=o?.[e.address],n=react.useMemo(()=>r?r(e.address):s?jsxRuntime.jsx("span",{className:"rounded bg-default-100 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-default-600",children:s}):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:pe(e.address,6,6)}),[e.address,r,s]);return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:n}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Ot,{tags:e.tags,max:3})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:utils.formatAmountUSDCompact(e.amountInUsd)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:Oe(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.startHoldingAt?Ne(e.startHoldingAt,t):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?Ne(e.lastActiveAt,t):"--"})]})}function Ps({chain:e,address:t,limit:o=50,initialSortBy:r="holdingUsd"}){let[s,n]=react.useState(r),[i,a]=react.useState(void 0),[l,d]=react.useState([]),m=react.useCallback(()=>{a(void 0),d([]);},[]),c=react.useCallback(T=>{T!==s&&(n(T),m());},[s,m]);react.useEffect(()=>{m();},[e,t,m]);let p=react.useMemo(()=>({chain:e,address:t,cursor:i,limit:o,sortBy:s}),[e,t,i,o,s]),{data:u,isPending:f,isFetching:k}=react$1.useTokenHoldersQuery(p);react.useEffect(()=>{u&&d(T=>i==null?[u]:T[T.length-1]?.endCursor===u.endCursor?T:[...T,u]);},[u,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let x=react.useMemo(()=>l.flatMap(T=>T.data),[l]),g=l[l.length-1],h=!!(g?.hasNext&&g.endCursor),b=react.useCallback(()=>{!g?.endCursor||!g.hasNext||a(g.endCursor);},[g]);return {holders:x,isLoading:f||k,sortBy:s,setSortBy:c,hasMore:h,loadMore:b}}function b0({chain:e,address:t,limit:o,initialSortBy:r,initialOnlyTracked:s=false,wellKnownAddresses:n,className:i,renderAddress:a}){let[l,d]=react.useState(s),{holders:m,isLoading:c,sortBy:p,setSortBy:u,hasMore:f,loadMore:k}=Ps({chain:e,address:t,limit:o,initialSortBy:r});return jsxRuntime.jsx(Cs,{holders:m,isLoading:c,sortBy:p,onSortByChange:u,onlyTracked:l,onOnlyTrackedChange:d,wellKnownAddresses:n,hasMore:f,onLoadMore:k,className:i,renderAddress:a})}var Mm=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Fm=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],Um=[{value:"all",label:"All"},{value:"dev",label:"DEV"},{value:"tracked",label:"TRACKED"},{value:"you",label:"YOU"}];function Rs({activities:e,isLoading:t,sortBy:o,onSortByChange:r,typeFilter:s="all",onTypeFilterChange:n,traderFilter:i="all",onTraderFilterChange:a,youWalletAddress:l,currency:d="usd",onCurrencyChange:m,onLoadMore:c,hasMore:p,now:u=Date.now(),nativeDecimals:f=9,nativeSymbol:k="SOL",className:x,onRowClick:g}){let h=Dm(e,i,l);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",x),children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[Fm.map(b=>jsxRuntime.jsx("button",{type:"button",onClick:()=>n?.(b.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",s===b.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:b.label},b.value)),jsxRuntime.jsx("span",{className:"mx-1 h-3 w-px bg-default-200","aria-hidden":true}),Um.map(b=>{let T=i===b.value,I=b.value==="you"&&!l;return jsxRuntime.jsx("button",{type:"button",disabled:I,onClick:()=>a?.(b.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",T?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground",I&&"cursor-not-allowed opacity-50"),children:b.label},b.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(Em,{value:d,nativeSymbol:k,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Mm.map(b=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(b.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",o===b.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:b.label},b.value))})]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[780px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-left font-normal",children:"Side"}),jsxRuntime.jsx("th",{className:"w-[25%] px-3 py-2 text-left font-normal",children:"Trader"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Amount"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"USD"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Price"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Gas"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Age"})]})}),jsxRuntime.jsxs("tbody",{children:[h.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-8 text-center text-default-400",children:"No activities"})}),h.map(b=>jsxRuntime.jsx(Bm,{activity:b,now:u,nativeDecimals:f,nativeSymbol:k,currency:d,onRowClick:g},b.txHash)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),p&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:c,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Om(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function Dm(e,t,o){if(t==="all")return e;if(t==="you"){if(!o)return [];let s=o.toLowerCase();return e.filter(n=>n.walletAddress?.toLowerCase()===s)}if(t==="dev")return e.filter(s=>s.traderTags?.some(n=>n==="dev"));let r=new Set(["kol","smart","bluechip"]);return e.filter(s=>s.traderTags?.some(n=>r.has(n)))}function Em({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[22px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui$1.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Wm(e,t,o){if(!e)return "--";let r=Number(e)/Math.pow(10,t);return Number.isFinite(r)?`${utils.formatAmount(r)} ${o}`:"--"}function Bm({activity:e,now:t,nativeDecimals:o,nativeSymbol:r,currency:s,onRowClick:n}){let i=Om(e),a=e.type==="buy"?"Buy":e.type==="sell"?"Sell":e.type.replace(/_/g," "),l=e.type==="buy"?"text-bullish":e.type==="sell"?"text-bearish":"text-default-500";return jsxRuntime.jsxs("tr",{className:ui$1.cn("border-b border-default-50 hover:bg-default-50/60",n&&"cursor-pointer"),onClick:n?()=>n(e):void 0,children:[jsxRuntime.jsx("td",{className:ui$1.cn("px-3 py-2 align-middle font-medium capitalize",l),children:a}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsxs("div",{className:"flex flex-col gap-0.5",children:[jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:pe(e.walletAddress,6,6)}),jsxRuntime.jsx(Mr,{tags:e.traderTags,max:2})]})}),jsxRuntime.jsxs("td",{className:"px-3 py-2 text-right align-middle",children:[utils.formatAmount(i.amount)," ",i.symbol]}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s==="native"&&i.amountInNative?`${utils.formatAmount(i.amountInNative)} ${i.symbol}`:i.amountInUsd?utils.formatAmountUSDCompact(i.amountInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:i.priceInUsd?`$${utils.formatPrice(i.priceInUsd)}`:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:Wm(e.gasFee,o,r)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:Ne(e.time,t)})]})}function Is({chain:e,address:t,limit:o=50,initialSortBy:r="timestamp",initialTypeFilter:s="all"}){let[n,i]=react.useState(r),[a,l]=react.useState(s),[d,m]=react.useState(void 0),[c,p]=react.useState([]),[u,f]=react.useState([]),k=react.useCallback(()=>{m(void 0),p([]),f([]);},[]),x=react.useCallback(F=>{F!==n&&(i(F),k());},[n,k]),g=react.useCallback(F=>{F!==a&&(l(F),k());},[a,k]);react.useEffect(()=>{k();},[e,t,k]);let h=a==="all"?void 0:a,b=react.useMemo(()=>({chain:e,address:t,cursor:d,limit:o,sortBy:n,type:h}),[e,t,d,o,n,h]),{data:T,isPending:I,isFetching:M}=react$1.useTokenActivitiesQuery(b);react.useEffect(()=>{T&&p(F=>d==null?[T]:F[F.length-1]?.endCursor===T.endCursor?F:[...F,T]);},[T,d]);let Q=n==="timestamp"&&a==="all"&&d==null;react$1.useTokenActivitiesSubscription({chain:e,address:t},F=>{!Q||!F?.length||f(ne=>{let U=new Set(ne.map(W=>W.txHash)),P=F.filter(W=>!U.has(W.txHash));return P.length===0?ne:[...P,...ne].slice(0,100)});});let Se=react.useMemo(()=>{let F=c.flatMap(P=>P.data);if(!Q||u.length===0)return F;let ne=new Set(F.map(P=>P.txHash));return [...u.filter(P=>!ne.has(P.txHash)),...F]},[c,u,Q]),_=c[c.length-1],be=!!(_?.hasNext&&_.endCursor),Te=react.useCallback(()=>{!_?.endCursor||!_.hasNext||m(_.endCursor);},[_]);return {activities:Se,isLoading:I||M,sortBy:n,setSortBy:x,typeFilter:a,setTypeFilter:g,hasMore:be,loadMore:Te}}function E0({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:s,initialTraderFilter:n="all",initialCurrency:i="usd",youWalletAddress:a,nativeDecimals:l,nativeSymbol:d,className:m,onRowClick:c}){let[p,u]=react.useState(n),[f,k]=react.useState(i),{activities:x,isLoading:g,sortBy:h,setSortBy:b,typeFilter:T,setTypeFilter:I,hasMore:M,loadMore:Q}=Is({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:s});return jsxRuntime.jsx(Rs,{activities:x,isLoading:g,sortBy:h,onSortByChange:b,typeFilter:T,onTypeFilterChange:I,traderFilter:p,onTraderFilterChange:u,youWalletAddress:a,currency:f,onCurrencyChange:k,hasMore:M,onLoadMore:Q,className:m,nativeDecimals:l,nativeSymbol:d,onRowClick:c})}function Fs({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.traders??0,n=r?.buyers??0,i=r?.sellers??0;return jsxRuntime.jsx(et,{className:o,label:`Traders (${t})`,totalFormatted:utils.formatAmount(s),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:s,buysValue:n})}function Us(e,t){return A(e,t)}function j0({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=Us(e,t);return jsxRuntime.jsx(Fs,{stats:s?.stats,resolution:o,className:r})}function Os({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.trades??0,n=r?.buys??0,i=r?.sells??0;return jsxRuntime.jsx(et,{className:o,label:`Transactions (${t})`,totalFormatted:utils.formatAmount(s),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:s,buysValue:n})}function Ds(e,t){return A(e,t)}function fN({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=Ds(e,t);return jsxRuntime.jsx(Os,{stats:s?.stats,resolution:o,className:r})}function Es({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.volumesInUsd??"0",n=r?.buyVolumesInUsd??"0",i=r?.sellVolumesInUsd??"0";return jsxRuntime.jsx(et,{className:o,label:`Volume (${t})`,totalFormatted:utils.formatAmountUSDCompact(s),buysFormatted:utils.formatAmountUSDCompact(n),sellsFormatted:utils.formatAmountUSDCompact(i),totalValue:s,buysValue:n})}function Ws(e,t){return A(e,t)}function RN({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=Ws(e,t);return jsxRuntime.jsx(Es,{stats:s?.stats,resolution:o,className:r})}function Bs({security:e,externalUrl:t,externalLabel:o,className:r}){let s=[{title:"Transfer fee",value:e?.hasTransferFee,safeWhen:false,description:"Whether the token charges a fee on transfer."},{title:"Fee not upgradable",value:e?.isTransferFeeUpgradable,safeWhen:false,description:"Whether the transfer fee can be raised by the token owner."},{title:"Transferable",value:e?.isTransferable,safeWhen:true,description:"Whether token holders can freely transfer the token."},{title:"Not freezable",value:e?.isFreezable,safeWhen:false,description:"Whether the token authority can freeze holder balances."},{title:"Not closable",value:e?.isClosable,safeWhen:false,description:"Whether the token program can be closed by its owner."}],n=s.every(i=>i.value!==void 0&&i.value===i.safeWhen);return jsxRuntime.jsxs("section",{className:ui$1.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Security"}),jsxRuntime.jsx("span",{className:ui$1.cn("text-xs",e===void 0?"text-default-400":n?"text-success-500":"text-danger-500"),children:e===void 0?"--":n?"Safe":"Review"})]}),jsxRuntime.jsx("div",{className:"flex flex-col",children:s.map(i=>jsxRuntime.jsx(Jm,{...i},i.title))}),t&&o&&jsxRuntime.jsx("div",{className:"flex justify-center",children:jsxRuntime.jsx("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:"text-xs text-default-400 transition-colors hover:text-foreground",children:o})})]})}function Jm({title:e,value:t,safeWhen:o,description:r}){let s=t!==void 0&&t===o,n=t===void 0?"--":s?"OK":"Risk";return jsxRuntime.jsxs("div",{className:"flex h-8 items-center justify-between gap-2",children:[jsxRuntime.jsx("span",{className:"text-xs text-default-500",title:r,children:e}),jsxRuntime.jsx("span",{className:ui$1.cn("text-xs",t===void 0?"text-default-400":s?"text-success-500":"text-danger-500"),children:n})]})}function Vs(e,t){let{data:o,isLoading:r}=react$1.useTokenSecurityQuery({chain:e,address:t});return {security:o,isLoading:r}}function $N({chain:e,address:t,externalUrl:o,externalLabel:r,className:s}){let{security:n}=Vs(e,t);return jsxRuntime.jsx(Bs,{security:n,externalUrl:o,externalLabel:r,className:s})}function Ks({token:e,className:t}){return e?jsxRuntime.jsxs("section",{className:ui$1.cn("flex w-full flex-col gap-2",t),children:[jsxRuntime.jsxs("div",{className:"text-sm font-medium text-foreground",children:["About ",e.symbol]}),e.description?jsxRuntime.jsx("p",{className:"whitespace-pre-line text-xs text-default-500",children:e.description}):jsxRuntime.jsx("p",{className:"text-xs text-default-400",children:"No description provided."})]}):null}function zs(e,t){return A(e,t)}function rS({chain:e,address:t,className:o}){let{token:r}=zs(e,t);return jsxRuntime.jsx(Ks,{token:r,className:o})}function Gs({liquidities:e,totalTvlInUsd:t,collapseAt:o=3,className:r,onPoolClick:s}){let[n,i]=react.useState(!e||e.length<=o),a=react.useCallback(()=>i(l=>!l),[]);return jsxRuntime.jsxs("section",{className:ui$1.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Liquidity"}),t&&jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:utils.formatAmountUSDCompact(t)})]}),(!e||e.length===0)&&jsxRuntime.jsx("div",{className:"py-4 text-center text-xs text-default-400",children:"No pools"}),e&&e.length>0&&jsxRuntime.jsxs("div",{className:"flex flex-col gap-2",children:[e.map((l,d)=>jsxRuntime.jsxs("div",{className:ui$1.cn("flex h-10 w-full items-center justify-between overflow-hidden text-xs",d>=o&&!n&&"hidden",s&&"cursor-pointer hover:bg-default-50"),onClick:s?()=>s(l):void 0,children:[jsxRuntime.jsxs("div",{className:"flex flex-col gap-0.5",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:l.protocolFamily??l.protocolName??"Unknown"}),l.poolAddress&&jsxRuntime.jsxs("span",{className:"font-mono text-[10px] text-default-400",children:["Pool: ",pe(l.poolAddress,6,6)]})]}),jsxRuntime.jsx("div",{className:"text-default-500",children:utils.formatAmountUSDCompact(l.tvlInUsd??0)})]},l.poolAddress??`${l.protocolFamily}-${d}`)),e.length>o&&jsxRuntime.jsx("div",{className:"flex justify-center pt-1",children:jsxRuntime.jsx("button",{type:"button",onClick:a,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:n?"Show less":"Show more"})})]})]})}function Xs(e,t){return A(e,t)}function TS({chain:e,address:t,collapseAt:o,className:r,onPoolClick:s}){let{token:n}=Xs(e,t);return jsxRuntime.jsx(Gs,{liquidities:n?.liquidities,totalTvlInUsd:n?.marketData?.tvlInUsd,collapseAt:o,className:r,onPoolClick:s})}function Js({cexes:e,collapseAt:t=4,className:o}){let[r,s]=react.useState(!e||e.length<=t),n=react.useCallback(()=>s(i=>!i),[]);return !e||e.length===0?null:jsxRuntime.jsxs("section",{className:ui$1.cn("w-full",o),children:[jsxRuntime.jsx("div",{className:"text-sm font-medium text-foreground",children:"CEX listings"}),jsxRuntime.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:e.map((i,a)=>{let l=a>=t&&!r,d=jsxRuntime.jsx(ui$1.Chip,{startContent:i.logo?jsxRuntime.jsx(ui$1.Image,{src:i.logo,width:20,height:20,alt:i.name}):void 0,className:ui$1.cn("bg-default-100 text-xs",l&&"hidden"),children:i.name},i.id);return i.url?jsxRuntime.jsx("a",{href:i.url,target:"_blank",rel:"noreferrer noopener",className:ui$1.cn(l&&"hidden"),children:d},i.id):d})}),e.length>t&&jsxRuntime.jsx("div",{className:"mt-3 flex justify-center",children:jsxRuntime.jsx("button",{type:"button",onClick:n,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:r?"Show less":"Show more"})})]})}function Ys(e){return {cexes:e}}function FS({cexes:e,collapseAt:t,className:o}){let{cexes:r}=Ys(e);return jsxRuntime.jsx(Js,{cexes:r,collapseAt:t,className:o})}function js({categories:e,collapseAt:t=4,className:o,onCategoryClick:r}){let[s,n]=react.useState(!e||e.length<=t),i=react.useCallback(()=>n(a=>!a),[]);return !e||e.length===0?null:jsxRuntime.jsxs("section",{className:ui$1.cn("w-full",o),children:[jsxRuntime.jsx("div",{className:"text-sm font-medium text-foreground",children:"Categories"}),jsxRuntime.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:e.map((a,l)=>{let d=l>=t&&!s;return jsxRuntime.jsx(ui$1.Chip,{size:"sm",className:ui$1.cn("bg-default-100",d&&"hidden",r&&"cursor-pointer"),onClick:r?()=>r(a):void 0,children:a},a)})}),e.length>t&&jsxRuntime.jsx("div",{className:"mt-3 flex justify-center",children:jsxRuntime.jsx("button",{type:"button",onClick:i,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:s?"Show less":"Show more"})})]})}function ei(e,t){return A(e,t)}function XS({chain:e,address:t,collapseAt:o,className:r,onCategoryClick:s}){let{token:n}=ei(e,t);return jsxRuntime.jsx(js,{categories:n?.tags,collapseAt:o,className:r,onCategoryClick:s})}var ti=["5m","1h","4h","24h"];function oi({stats:e,resolution:t,className:o}){let r=e?.[t],s=new utils.SafeBigNumber(r?.buyVolumesInUsd??0),n=new utils.SafeBigNumber(r?.sellVolumesInUsd??0),i=s.plus(n),a=s.minus(n),l=i.eq(0)?50:Math.min(100,Math.max(0,s.div(i).times(100).toNumber())),d=[{label:`${t} Vol`,value:utils.formatAmountUSDCompact(i.toString()),className:"text-foreground"},{label:"Buys",value:utils.formatAmountUSDCompact(s.toString()),className:"text-bullish"},{label:"Sells",value:utils.formatAmountUSDCompact(n.toString()),className:"text-bearish"},{label:"Net Vol.",value:utils.formatAmountUSDCompact(a.abs().toString()),className:a.gte(0)?"text-bullish":"text-bearish"}];return jsxRuntime.jsxs("div",{className:ui$1.cn("flex h-full w-full flex-col",o),children:[jsxRuntime.jsx("div",{className:"grid flex-1 grid-cols-4 items-center",children:d.map(m=>jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] px-2",children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:m.label}),jsxRuntime.jsx("span",{className:ui$1.cn("text-[13px] font-medium leading-none tabular-nums",m.className),children:m.value})]},m.label))}),jsxRuntime.jsx("div",{className:"relative h-[2px] w-full overflow-hidden bg-bearish",children:jsxRuntime.jsx("div",{className:"absolute inset-y-0 left-0 bg-bullish transition-[width] duration-200 ease-out",style:{width:`${l}%`}})})]})}function ri({stats:e,resolutions:t,className:o}){return jsxRuntime.jsx("div",{className:ui$1.cn("grid h-full w-full grid-cols-4 items-center",o),children:t.map(r=>{let n=e?.[r]?.priceChange,i=n?new utils.SafeBigNumber(n):void 0,a=i?i.gte(0):void 0,l=r,d=i?utils.formatPercent(i,{showPlusGtThanZero:true}):"\u2014";return jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] px-2",children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:l}),jsxRuntime.jsx("span",{className:ui$1.cn("text-[13px] font-medium leading-none tabular-nums",a===void 0?"text-foreground":a?"text-bullish":"text-bearish"),children:d})]},r)})})}function ni({chain:e,address:t}){let{data:o,isLoading:r}=react$1.useTokenStatsQuery({chain:e,address:t});return {stats:o,isLoading:r}}function mC({chain:e,address:t,baseResolution:o="5m",hoverResolutions:r=ti,height:s=64,className:n}){let{stats:i}=ni({chain:e,address:t});return jsxRuntime.jsx(uiScaffold.StatsFlipPanel,{className:n,height:s,base:jsxRuntime.jsx(oi,{stats:i,resolution:o}),hover:jsxRuntime.jsx(ri,{stats:i,resolutions:r})})}function si({positions:e,isLoading:t,hasMore:o,onLoadMore:r,currency:s="usd",onCurrencyChange:n,showHidden:i=false,onShowHiddenChange:a,nativeSymbol:l="Native",renderActions:d,className:m}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",m),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Positions"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:i,onChange:c=>a?.(c.target.checked)}),"Show Hidden"]})]}),jsxRuntime.jsx(vp,{value:s,nativeSymbol:l,onChange:n})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[720px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[26%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Bought"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Sold"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Remaining"}),jsxRuntime.jsx("th",{className:"w-[18%] px-3 py-2 text-right font-normal",children:"PnL"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"Actions"})]})}),jsxRuntime.jsxs("tbody",{children:[e.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No open positions"})}),e.map(c=>jsxRuntime.jsx(Np,{position:c,currency:s,renderActions:d},`${c.chain}:${c.address}`)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),o&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:r,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function vp({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui$1.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Np({position:e,currency:t,renderActions:o}){let{bought:r,sold:s,remaining:n,pnl:i}=react.useMemo(()=>Sp(e,t),[e,t]),a=jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui$1.Avatar,{src:e.image??void 0,name:(e.symbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:e.name})]})]});return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:a}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:n}),jsxRuntime.jsx("td",{className:ui$1.cn("px-3 py-2 text-right align-middle font-medium",i.isPositive===void 0?"text-default-400":i.isPositive?"text-bullish":"text-bearish"),children:jsxRuntime.jsxs("div",{className:"flex flex-col items-end leading-tight",children:[jsxRuntime.jsx("span",{children:i.amount}),i.ratio?jsxRuntime.jsx("span",{className:"text-[10px]",children:i.ratio}):null]})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle",children:o?o(e):jsxRuntime.jsx("span",{className:"text-default-400",children:"--"})})]})}function Sp(e,t){let o=t==="usd"?e.buyVolumesInUsd:e.buyVolumes,r=t==="usd"?e.sellVolumesInUsd:e.sellVolumes,s=t==="usd"?e.amountInUsd:e.amount,n=e.totalProfitInUsd,i=t==="usd"?utils.formatAmountUSDCompact(o??0):utils.formatAmount(o??0),a=t==="usd"?utils.formatAmountUSDCompact(r??0):utils.formatAmount(r??0),l=t==="usd"?utils.formatAmountUSDCompact(s??0):utils.formatAmount(s??0),d=n?new utils.SafeBigNumber(n):void 0,m=d?d.gte(0):void 0,c=d?(m?"+":"")+utils.formatAmountUSDCompact(d.toString()):"--",p=e.totalProfitRatio?utils.formatPercent(e.totalProfitRatio,{showPlusGtThanZero:true}):void 0;return {bought:i,sold:a,remaining:l,pnl:{amount:c,ratio:p,isPositive:m}}}function li({chain:e,wallet:t,limit:o=50,initialShowHidden:r=false}){let[s,n]=react.useState(void 0),[i,a]=react.useState([]),[l,d]=react.useState(r);react.useEffect(()=>{n(void 0),a([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t??"",cursor:s,limit:o,positionState:"open"}),[e,t,s,o]),{data:c,isPending:p,isFetching:u}=react$1.useWalletTokenPositionsQuery(m,{enabled:!!t});react.useEffect(()=>{c&&a(h=>s==null?[c]:h[h.length-1]?.endCursor===c.endCursor?h:[...h,c]);},[c,s]);let f=react.useMemo(()=>i.flatMap(h=>h.portfolios),[i]),k=i[i.length-1],x=!!(k?.hasNext&&k.endCursor),g=react.useCallback(()=>{!k?.endCursor||!k.hasNext||n(k.endCursor);},[k]);return {positions:f,isLoading:!!t&&(p||u),hasMore:x,loadMore:g,showHidden:l,setShowHidden:d}}function RC({chain:e,wallet:t,limit:o,initialCurrency:r="usd",nativeSymbol:s,renderActions:n,className:i}){let[a,l]=react.useState(r),{positions:d,isLoading:m,hasMore:c,loadMore:p,showHidden:u,setShowHidden:f}=li({chain:e,wallet:t,limit:o});return jsxRuntime.jsx(si,{className:i,positions:d,isLoading:m,hasMore:c,onLoadMore:p,currency:a,onCurrencyChange:l,showHidden:u,onShowHiddenChange:f,nativeSymbol:s,renderActions:n})}function di({orders:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:s,stateFilter:n,onStateFilterChange:i,onlyThisToken:a=false,onOnlyThisTokenChange:l,tokenSymbol:d,currency:m="usd",onCurrencyChange:c,nativeSymbol:p="Native",onCancelAll:u,renderActions:f,className:k}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",k),children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"active",label:"Active Orders"},{k:"history",label:"Order History"}].map(x=>jsxRuntime.jsx("button",{type:"button",onClick:()=>i(x.k),className:ui$1.cn("rounded px-2 transition-colors",n===x.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:x.label},x.k))}),d?jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:a,onChange:x=>l?.(x.target.checked)}),"Only ",d]}):null]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[u?jsxRuntime.jsx("button",{type:"button",onClick:u,className:"rounded px-2 py-1 text-[11px] text-bearish transition-colors hover:bg-default-100",children:"Cancel All"}):null,jsxRuntime.jsx(Ip,{value:m,nativeSymbol:p,onChange:c})]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[760px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[22%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-left font-normal",children:"Type"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Amount"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Current MC"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Target MC"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Settings"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"Action"})]})}),jsxRuntime.jsxs("tbody",{children:[o?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-10 text-center text-default-400",children:"Limit orders are coming soon."})}):e.length===0&&!t?jsxRuntime.jsx("tr",{children:jsxRuntime.jsxs("td",{colSpan:7,className:"py-10 text-center text-default-400",children:["No ",n==="active"?"active":"historical"," orders"]})}):e.map(x=>jsxRuntime.jsx(Mp,{order:x,currency:m,renderActions:f},x.id)),t&&!o&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),!o&&r&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:s,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Ip({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui$1.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Mp({order:e,currency:t,renderActions:o}){let r=react.useMemo(()=>t==="usd"&&e.amountInUsd?utils.formatAmountUSDCompact(e.amountInUsd):utils.formatAmount(e.amount),[t,e.amount,e.amountInUsd]),s=e.side==="buy"?"Buy":"Sell",n=e.side==="buy"?"text-bullish":"text-bearish";return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui$1.Avatar,{src:e.tokenImage??void 0,name:(e.tokenSymbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.tokenSymbol??"--"})]})}),jsxRuntime.jsx("td",{className:ui$1.cn("px-3 py-2 align-middle font-medium",n),children:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:e.currentMarketCapInUsd?utils.formatAmountUSDCompact(e.currentMarketCapInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:e.targetMarketCapInUsd?utils.formatAmountUSDCompact(e.targetMarketCapInUsd):e.targetPriceInUsd?utils.formatAmountUSDCompact(e.targetPriceInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.slippage!=null?`Slip ${e.slippage}%`:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle",children:o?o(e):jsxRuntime.jsx("span",{className:"text-default-400",children:"--"})})]})}function Up(e){return e instanceof Error&&e.code==="NotImplemented"}function Op(e){return e==="active"?"active":"filled"}function ui({chain:e,wallet:t,tokenAddress:o,limit:r=50,initialStateFilter:s="active",initialOnlyThisToken:n=false}){let[i,a]=react.useState(s),[l,d]=react.useState(n),[m,c]=react.useState(void 0),[p,u]=react.useState([]);react.useEffect(()=>{c(void 0),u([]);},[e,t,i,l,o]);let f=react.useCallback(_=>{_!==i&&a(_);},[i]),k=react.useMemo(()=>({chain:e,address:t??"",cursor:m,limit:r,state:Op(i),tokenAddress:l?o:void 0}),[e,t,m,r,i,l,o]),{data:x,isPending:g,isFetching:h,error:b}=react$1.useWalletLimitOrdersQuery(k,{enabled:!!t});react.useEffect(()=>{x&&u(_=>m==null?[x]:_[_.length-1]?.endCursor===x.endCursor?_:[..._,x]);},[x,m]);let T=!!b&&Up(b),I=react.useMemo(()=>p.flatMap(_=>_.data),[p]),M=p[p.length-1],Q=!!(M?.hasNext&&M.endCursor),Se=react.useCallback(()=>{!M?.endCursor||!M.hasNext||c(M.endCursor);},[M]);return {orders:I,isLoading:!!t&&!T&&(g||h),unavailable:T,hasMore:Q,loadMore:Se,stateFilter:i,setStateFilter:f,onlyThisToken:l,setOnlyThisToken:d}}function QC({chain:e,wallet:t,tokenAddress:o,tokenSymbol:r,limit:s,initialStateFilter:n="active",initialCurrency:i="usd",nativeSymbol:a,onCancelAll:l,renderActions:d,className:m}){let[c,p]=react.useState(i),{orders:u,isLoading:f,unavailable:k,hasMore:x,loadMore:g,stateFilter:h,setStateFilter:b,onlyThisToken:T,setOnlyThisToken:I}=ui({chain:e,wallet:t,tokenAddress:o,limit:s,initialStateFilter:n});return jsxRuntime.jsx(di,{className:m,orders:u,isLoading:f,unavailable:k,hasMore:x,onLoadMore:g,stateFilter:h,onStateFilterChange:b,onlyThisToken:T,onOnlyThisTokenChange:I,tokenSymbol:r,currency:c,onCurrencyChange:p,nativeSymbol:a,onCancelAll:k?void 0:l,renderActions:d})}function fi({traders:e,isLoading:t,hasMore:o,onLoadMore:r,onlyTracked:s=false,onOnlyTrackedChange:n,now:i=Date.now(),renderAddress:a,className:l}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",l),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Top Traders"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:s,onChange:d=>n?.(d.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[680px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[28%] px-3 py-2 text-left font-normal",children:"Wallet"}),jsxRuntime.jsx("th",{className:"w-[20%] px-3 py-2 text-left font-normal",children:"Tags"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Value"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"%"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Realized PnL"}),jsxRuntime.jsx("th",{className:"w-[13%] px-3 py-2 text-right font-normal",children:"Last active"})]})}),jsxRuntime.jsxs("tbody",{children:[e.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No top traders yet"})}),e.map(d=>jsxRuntime.jsx(_p,{trader:d,now:i,renderAddress:a},d.address)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),o&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:r,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function _p({trader:e,now:t,renderAddress:o}){let r=react.useMemo(()=>o?o(e.address):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:pe(e.address,6,6)}),[e.address,o]);return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Ot,{tags:e.tags,max:3})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:utils.formatAmountUSDCompact(e.amountInUsd)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:Oe(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:"\u2014"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?Ne(e.lastActiveAt,t):"--"})]})}function xi({chain:e,address:t,limit:o=50,initialOnlyTracked:r=false}){let[s,n]=react.useState(void 0),[i,a]=react.useState([]),[l,d]=react.useState(r);react.useEffect(()=>{n(void 0),a([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t,cursor:s,limit:o,sortBy:"realizedPnl"}),[e,t,s,o]),{data:c,isPending:p,isFetching:u}=react$1.useTokenTopTradersQuery(m);react.useEffect(()=>{c&&a(b=>s==null?[c]:b[b.length-1]?.endCursor===c.endCursor?b:[...b,c]);},[c,s]);let f=react.useMemo(()=>i.flatMap(b=>b.data),[i]),k=react.useMemo(()=>l?f.filter(b=>b.tags&&b.tags.length>0):f,[f,l]),x=i[i.length-1],g=!!(x?.hasNext&&x.endCursor),h=react.useCallback(()=>{!x?.endCursor||!x.hasNext||n(x.endCursor);},[x]);return {traders:k,isLoading:p||u,hasMore:g,loadMore:h,onlyTracked:l,setOnlyTracked:d}}function pw({chain:e,address:t,limit:o,className:r,renderAddress:s}){let{traders:n,isLoading:i,hasMore:a,loadMore:l,onlyTracked:d,setOnlyTracked:m}=xi({chain:e,address:t,limit:o});return jsxRuntime.jsx(fi,{className:r,traders:n,isLoading:i,hasMore:a,onLoadMore:l,onlyTracked:d,onOnlyTrackedChange:m,renderAddress:s})}function hi({tokens:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:s,renderTokenLink:n,className:i}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",i),children:[jsxRuntime.jsx("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Dev Tokens"})}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[700px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[28%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-center font-normal",children:"Migrated"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Market Cap"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"ATH"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Liquidity"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"1h Volume"})]})}),jsxRuntime.jsxs("tbody",{children:[o?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-10 text-center text-default-400",children:"Dev tokens index is coming soon."})}):e.length===0&&!t?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No dev tokens"})}):e.map(a=>jsxRuntime.jsx(Qp,{token:a,renderTokenLink:n},`${a.chain}:${a.address}`)),!o&&t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),!o&&r&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:s,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Qp({token:e,renderTokenLink:t}){let o=e.marketData?.marketCapInUsd??e.marketData?.marketCap,r=e.marketData?.tvlInUsd,n=e.stats?.["1h"]?.volumesInUsd,i=!!e.migratedTo,a=t?t(e):jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui$1.Avatar,{src:e.image??void 0,name:(e.symbol??e.name??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:e.name})]})]});return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:a}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-center align-middle",children:i?jsxRuntime.jsx("span",{className:"text-bullish",children:"\u2713"}):jsxRuntime.jsx("span",{className:"text-default-400",children:"\u2014"})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:o?utils.formatAmountUSDCompact(o):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r?utils.formatAmountUSDCompact(r):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:n?utils.formatAmountUSDCompact(n):"--"})]})}function bi({tokens:e,className:t}){let o=e.length,r=e.filter(a=>!!a.migratedTo).length,s=o===0?0:Math.round(r/o*100),n=e.map(a=>a.stats?.["1h"]?.volumesInUsd??"0").reduce((a,l)=>a.plus(new utils.SafeBigNumber(l)),new utils.SafeBigNumber(0)),i=e.map(a=>a.marketData?.marketCapInUsd??a.marketData?.marketCap??"0").reduce((a,l)=>a.plus(new utils.SafeBigNumber(l)),new utils.SafeBigNumber(0));return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-2 p-3",t),children:[jsxRuntime.jsx("div",{className:"flex items-center justify-between",children:jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Token Stats"})}),jsxRuntime.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[jsxRuntime.jsx(mo,{label:"Total",value:String(o)}),jsxRuntime.jsx(mo,{label:"Migrated",value:`${r} (${s}%)`}),jsxRuntime.jsx(mo,{label:"Total Market Cap",value:utils.formatAmountUSDCompact(i.toString())}),jsxRuntime.jsx(mo,{label:"Total 1h Volume",value:utils.formatAmountUSDCompact(n.toString())})]})]})}function mo({label:e,value:t}){return jsxRuntime.jsxs("div",{className:"flex flex-col gap-[2px]",children:[jsxRuntime.jsx("span",{className:"text-[10px] text-default-400",children:e}),jsxRuntime.jsx("span",{className:"text-[13px] font-medium text-foreground",children:t})]})}function Jp(e){return e instanceof Error&&e.code==="NotImplemented"}function Ni({chain:e,creator:t,limit:o=20}){let[r,s]=react.useState(void 0),[n,i]=react.useState([]);react.useEffect(()=>{s(void 0),i([]);},[e,t]);let a=react.useMemo(()=>({chain:e,creator:t??"",cursor:r,limit:o}),[e,t,r,o]),{data:l,isPending:d,isFetching:m,error:c}=react$1.useTokensByCreatorQuery(a,{enabled:!!t});react.useEffect(()=>{l&&i(g=>r==null?[l]:g[g.length-1]?.endCursor===l.endCursor?g:[...g,l]);},[l,r]);let p=!!c&&Jp(c),u=react.useMemo(()=>n.flatMap(g=>g.data),[n]),f=n[n.length-1],k=!!(f?.hasNext&&f.endCursor),x=react.useCallback(()=>{!f?.endCursor||!f.hasNext||s(f.endCursor);},[f]);return {tokens:u,isLoading:!!t&&!p&&(d||m),unavailable:p,hasMore:k,loadMore:x}}function Pw({chain:e,creator:t,limit:o,showSummary:r=false,renderTokenLink:s,className:n}){let{tokens:i,isLoading:a,unavailable:l,hasMore:d,loadMore:m}=Ni({chain:e,creator:t,limit:o});return jsxRuntime.jsxs("div",{className:n,children:[jsxRuntime.jsx(hi,{tokens:i,isLoading:a,unavailable:l,hasMore:d,onLoadMore:m,renderTokenLink:s}),r&&!l?jsxRuntime.jsx(bi,{tokens:i}):null]})}function wi({token:e,athInUsd:t,athAt:o,globalFeesPaidInUsd:r,rank:s,onTogglePin:n,pinned:i,className:a}){let l=e?.marketData?.priceInUsd,d=e?.marketData?.tvlInUsd,m=e?.marketData?.totalSupply;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex h-[48px] w-full flex-row items-center gap-4 overflow-x-auto px-3 text-[12px]",a),children:[jsxRuntime.jsx(lt,{label:"Price",value:l?utils.formatPriceUSD(l):"--"}),jsxRuntime.jsx(lt,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(lt,{label:"Supply",value:m?utils.formatAmount(m):"--"}),r?jsxRuntime.jsx(lt,{label:"Fees Paid",value:utils.formatAmountUSDCompact(r)}):null,t?jsxRuntime.jsx(lt,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,s!==void 0?jsxRuntime.jsx(lt,{label:"Rank",value:`#${s}`}):null,jsxRuntime.jsx("div",{className:"flex-1"}),n?jsxRuntime.jsx("button",{type:"button",onClick:n,"aria-pressed":i,className:ui$1.cn("flex size-[26px] items-center justify-center rounded text-default-400 transition-colors hover:bg-default-100 hover:text-foreground",i&&"text-foreground"),title:i?"Unpin token":"Pin token",children:i?"\u2605":"\u2606"}):null]})}function lt({label:e,value:t,title:o}){return jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] whitespace-nowrap",title:o,children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:e}),jsxRuntime.jsx("span",{className:"text-[13px] font-medium leading-none tabular-nums text-foreground",children:t})]})}function Pi({chain:e,address:t}){return A(e,t)}function $w({chain:e,address:t,athInUsd:o,athAt:r,globalFeesPaidInUsd:s,rank:n,pinned:i,onTogglePin:a,className:l}){let{token:d}=Pi({chain:e,address:t});return jsxRuntime.jsx(wi,{className:l,token:d,athInUsd:o,athAt:r,globalFeesPaidInUsd:s,rank:n,pinned:i,onTogglePin:a})}function Ri({tokens:e,isLoading:t,unavailable:o,onTokenClick:r,className:s}){return o?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",s),children:"Similar tokens coming soon."}):!t&&e.length===0?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",s),children:"No similar tokens found."}):jsxRuntime.jsxs("ul",{className:ui$1.cn("flex flex-col",s),children:[e.map(n=>jsxRuntime.jsxs("li",{className:ui$1.cn("flex cursor-pointer items-center gap-2 border-b border-default-50 px-3 py-2 last:border-0 hover:bg-default-50/60",!r&&"cursor-default"),onClick:r?()=>r(n):void 0,children:[jsxRuntime.jsx(ui$1.Avatar,{src:n.image??void 0,name:(n.symbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-[12px] text-foreground",children:n.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:n.name})]}),jsxRuntime.jsx("span",{className:"text-[11px] tabular-nums text-default-500",children:n.marketData?.marketCapInUsd?utils.formatAmountUSDCompact(n.marketData.marketCapInUsd):"--"})]},`${n.chain}:${n.address}`)),t&&jsxRuntime.jsx("li",{className:"py-2 text-center text-[11px] text-default-400",children:"Loading\u2026"})]})}function Ai({chain:e,address:t,keyword:o,limit:r=10}){let s=!!o&&o.length>0,{data:n,isPending:i,isFetching:a}=react$1.useSearchTokensQuery({chains:[e],keyword:o,limit:r+1},{enabled:s});return {tokens:react.useMemo(()=>{if(!n)return [];let d=t.toLowerCase();return (n.data??[]).filter(m=>m.address.toLowerCase()!==d).slice(0,r)},[n,t,r]),isLoading:s&&(i||a),unavailable:!s}}function sL({chain:e,address:t,keyword:o,limit:r,onTokenClick:s,className:n}){let{tokens:i,isLoading:a,unavailable:l}=Ai({chain:e,address:t,keyword:o,limit:r});return jsxRuntime.jsx(Ri,{className:n,tokens:i,isLoading:a,unavailable:l,onTokenClick:s})}function Hi({tokens:e=[],unavailable:t=true,onTokenClick:o,className:r}){return t?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"Image-similarity search is coming soon."}):e.length===0?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"No reused-image tokens found."}):jsxRuntime.jsx("div",{className:ui$1.cn("flex flex-row flex-wrap gap-2 p-3",r),children:e.map(s=>jsxRuntime.jsx("button",{type:"button",onClick:o?()=>o(s):void 0,className:"flex size-10 items-center justify-center overflow-hidden rounded-full border border-default-100 transition-opacity hover:opacity-80",title:s.symbol,children:jsxRuntime.jsx(ui$1.Avatar,{src:s.image??void 0,name:(s.symbol??"?").slice(0,1),className:"size-full bg-default-100 text-[10px] text-default-400",showFallback:true})},`${s.chain}:${s.address}`))})}function Ii(e){return {tokens:[],isLoading:false,unavailable:true}}function hL({chain:e,address:t,onTokenClick:o,className:r}){let{tokens:s,unavailable:n}=Ii();return jsxRuntime.jsx(Hi,{className:r,tokens:s,unavailable:n,onTokenClick:o})}function Di({keywords:e,excludeKeywords:t,onKeywordsChange:o,onExcludeKeywordsChange:r,className:s}){let{t:n}=i18n.useTranslation(),[i,a]=react.useState(e?.join(", ")??""),[l,d]=react.useState(t?.join(", ")??"");react.useEffect(()=>{a(p=>{let u=uo(p);return u===void 0&&e===void 0?p:u===void 0?e?.join(", ")??"":e===void 0?"":u.join("")===e.join("")?p:e.join(", ")});},[e]),react.useEffect(()=>{d(p=>{let u=uo(p);return u===void 0&&t===void 0?p:u===void 0?t?.join(", ")??"":t===void 0?"":u.join("")===t.join("")?p:t.join(", ")});},[t]);let m=react.useCallback(p=>{a(p),o?.(uo(p));},[o]),c=react.useCallback(p=>{d(p),r?.(uo(p));},[r]);return jsxRuntime.jsxs("div",{className:ui$1.cn("grid grid-cols-2 gap-3 px-4",s),children:[jsxRuntime.jsxs("div",{className:"flex flex-col gap-3",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:n("tokens.filters.keywords.title")}),jsxRuntime.jsx(ui$1.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.keywords.placeholder"),value:i,onValueChange:m})]}),jsxRuntime.jsxs("div",{className:"flex flex-col gap-3",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:n("tokens.filters.keywords.exclude.title")}),jsxRuntime.jsx(ui$1.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.keywords.placeholder"),value:l,onValueChange:c})]})]})}function uo(e){let t=e.split(",").map(o=>o.trim()).filter(Boolean);return t.length>0?t:void 0}function $i({protocols:e,selectedProtocols:t=[],onSelectedProtocolsChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let a=react.useMemo(()=>e.every(m=>n.includes(m)),[e,n]),l=react.useCallback(()=>{if(a){let m=[];i(m),o?.(m);}else {let m=[...e];i(m),o?.(m);}},[e,o,a]),d=react.useCallback(m=>()=>{if(n.includes(m)){let c=n.filter(p=>p!==m);i(c),o?.(c);}else {let c=[...n,m];i(c),o?.(c);}},[n,o]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-center",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:s("tokens.filters.protocols.title")}),jsxRuntime.jsx(ui$1.Button,{variant:"light",color:"default",size:"sm",radius:"full",onPress:l,children:s(a?"tokens.filters.protocols.unselectAll":"tokens.filters.protocols.selectAll")})]}),jsxRuntime.jsx("div",{className:"grid grid-cols-3 gap-3",children:e.map(m=>{let c=Me(m);return jsxRuntime.jsx(ui$1.Button,{variant:"bordered",size:"sm",radius:"full",className:ui$1.cn("w-fit h-6 px-2.5",c.text,c.bg5,"border",c.border,{"opacity-40 data-[hover=true]:!opacity-30":!n.includes(m)}),startContent:jsxRuntime.jsx(ui$1.Image,{width:14,height:14,src:`/images/protocols/${m}.svg`,alt:utils.formatTokenProtocolName(m)}),onPress:d(m),children:utils.formatTokenProtocolName(m)},m)})})]})}function xe({title:e,field:t,value:o,onChange:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(o?mr(o).min:NaN),[a,l]=react.useState(o?mr(o).max:NaN);react.useEffect(()=>{if(o===void 0)i(NaN),l(NaN);else {let{min:c,max:p}=mr(o);i(c),l(p);}},[o]);let d=react.useCallback(c=>{i(c),r?.(Qi(t,c,a));},[t,r,a]),m=react.useCallback(c=>{l(c),r?.(Qi(t,n,c));},[t,r,n]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1",children:[e&&jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:e}),jsxRuntime.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[jsxRuntime.jsx(ui$1.StyledNumberInput,{value:n,onValueChange:d,variant:"bordered",radius:"lg",size:"sm",placeholder:s("tokens.filters.stats.min"),"aria-label":`${e} min`}),jsxRuntime.jsx(ui$1.StyledNumberInput,{value:a,onValueChange:m,variant:"bordered",radius:"lg",size:"sm",placeholder:s("tokens.filters.stats.max"),"aria-label":`${e} max`})]})]})}function mr(e){if(e.operator==="between"){let[t,o]=e.value;return {min:t,max:o}}return e.operator==="gte"?{min:e.value,max:NaN}:e.operator==="lte"?{min:NaN,max:e.value}:{min:NaN,max:NaN}}function Qi(e,t,o){if(!(isNaN(t)&&isNaN(o)))return isNaN(t)?{field:e,operator:"lte",value:o}:isNaN(o)?{field:e,operator:"gte",value:t}:{field:e,operator:"between",value:[t,o]}}function Xi({values:e,onValuesChange:t,className:o}){let{t:r}=i18n.useTranslation(),[s,n]=react.useState(e);react.useEffect(()=>{n(e);},[e]);let i=react.useCallback(a=>l=>{if(l===void 0){let d=(s??[]).filter(m=>m.field!==a);d=d.length>0?d:void 0,n(d),t?.(d);}else {let d=[...(s??[]).filter(m=>m.field!==a),l];n(d),t?.(d);}},[s,t]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-4",o),children:[jsxRuntime.jsx(xe,{field:"holders",title:r("tokens.filters.stats.audits.holders"),value:s?.find(a=>a.field==="holders"),onChange:i("holders")}),jsxRuntime.jsx(xe,{field:"top10Ratio",title:r("tokens.filters.stats.audits.top10HoldingsRatio"),value:s?.find(a=>a.field==="top10Ratio"),onChange:i("top10Ratio")}),jsxRuntime.jsx(xe,{field:"top100Ratio",title:r("tokens.filters.stats.audits.top100HoldingsRatio"),value:s?.find(a=>a.field==="top100Ratio"),onChange:i("top100Ratio")}),jsxRuntime.jsx(xe,{field:"creatorsRatio",title:r("tokens.filters.stats.audits.devHoldingsRatio"),value:s?.find(a=>a.field==="creatorsRatio"),onChange:i("creatorsRatio")})]})}function Ji({resolution:e,values:t,onValuesChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let a=react.useCallback(l=>d=>{if(d===void 0){let m=(n??[]).filter(c=>c.field!==l);m=m.length>0?m:void 0,i(m),o?.(m);}else {let m=[...(n??[]).filter(c=>c.field!==l),d];i(m),o?.(m);}},[n,o]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-4",r),children:[jsxRuntime.jsx(xe,{field:"marketCap",title:s("tokens.filters.stats.metrics.marketCap"),value:n?.find(l=>l.field==="marketCap"),onChange:a("marketCap")}),jsxRuntime.jsx(xe,{field:"tvl",title:s("tokens.filters.stats.metrics.liquidity"),value:n?.find(l=>l.field==="tvl"),onChange:a("tvl")}),jsxRuntime.jsx(xe,{field:`volumes${e}`,title:s("tokens.filters.stats.metrics.volumes",{resolution:s(`common.resolution.${e}`)}),value:n?.find(l=>l.field===`volumes${e}`),onChange:a(`volumes${e}`)}),jsxRuntime.jsx(xe,{field:`trades${e}`,title:s("tokens.filters.stats.metrics.txns",{resolution:s(`common.resolution.${e}`)}),value:n?.find(l=>l.field===`trades${e}`),onChange:a(`trades${e}`)})]})}function oa({resolution:e,values:t,onValuesChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState("audits"),[a,l]=react.useState(t);react.useEffect(()=>{l(t);},[t]);let d=react.useCallback(p=>{l(p),o?.(p);},[o]),m=react.useMemo(()=>{let p=["holders","top10Ratio","top100Ratio","creatorsRatio"];return a?.filter(u=>p.includes(u.field))?.length??0},[a]),c=react.useMemo(()=>{let p=["marketCap","tvl",`volumes${e}`,`trades${e}`];return a?.filter(u=>p.includes(u.field)).length??0},[a,e]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs(ui$1.StyledLightTabs,{color:"default",radius:"full",size:"sm",selectedKey:n,onSelectionChange:i,children:[jsxRuntime.jsx(ui$1.Tab,{title:m===0?s("tokens.filters.stats.audits"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:m,shape:"circle",children:s("tokens.filters.stats.audits")})},"audits"),jsxRuntime.jsx(ui$1.Tab,{title:c===0?s("tokens.filters.stats.metrics"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:c,shape:"circle",children:s("tokens.filters.stats.metrics")})},"metrics")]}),jsxRuntime.jsx(Xi,{values:a,onValuesChange:d,className:ui$1.cn({hidden:n!=="audits"})}),jsxRuntime.jsx(Ji,{values:a,onValuesChange:d,resolution:e,className:ui$1.cn({hidden:n!=="metrics"})})]})}function yo({protocols:e,resolution:t,filters:o,onFiltersChange:r,className:s}){let[n,i]=react.useState(ra(o?.filters,e));react.useEffect(()=>{i(ra(o?.filters,e));},[o?.filters,e]);let[a,l]=react.useState(o?.keywords);react.useEffect(()=>{l(o?.keywords);},[o?.keywords]);let[d,m]=react.useState(o?.excludeKeywords);react.useEffect(()=>{m(o?.excludeKeywords);},[o?.excludeKeywords]);let[c,p]=react.useState(o?.filters);react.useEffect(()=>{p(o?.filters);},[o?.filters]);let u=react.useCallback(g=>{i(g),r?.(To(e,g,a,d,c));},[e,a,d,c,r]),f=react.useCallback(g=>{l(g),r?.(To(e,n,g,d,c));},[e,n,d,c,r]),k=react.useCallback(g=>{m(g),r?.(To(e,n,a,g,c));},[e,n,a,c,r]),x=react.useCallback(g=>{p(g),r?.(To(e,n,a,d,g));},[e,n,a,d,r]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-4",s),children:[e&&e.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx($i,{protocols:e,selectedProtocols:n,onSelectedProtocolsChange:u}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}})]}),jsxRuntime.jsx(Di,{keywords:a,excludeKeywords:d,onKeywordsChange:f,onExcludeKeywordsChange:k}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}}),jsxRuntime.jsx(oa,{resolution:t,values:c,onValuesChange:x})]})}function ra(e,t){let o=e?.find(r=>r.field==="launchedFromProtocolFamily");return o?o.operator==="in"?o.value:(console.warn("invalid token protocols filter",o),[...t||[]]):[...t||[]]}function To(e,t,o,r,s){let n=s?[...s.filter(i=>i.field!=="launchedFromProtocolFamily")]:[];return e&&e.length>0&&(e.every(a=>t.includes(a))||n.push({field:"launchedFromProtocolFamily",operator:"in",value:t})),o===void 0&&r===void 0&&n.length===0?void 0:{keywords:o,excludeKeywords:r,filters:n.length>0?n:void 0}}function aa({protocols:e,resolution:t,filters:o,onFiltersChange:r}){let{t:s}=i18n.useTranslation(),{isOpen:n,onOpen:i,onClose:a,onOpenChange:l}=ui$1.useDisclosure(),[d,m]=react.useState(o),c=react.useCallback(()=>{m(void 0);},[]),p=react.useCallback(()=>{r?.(d),a();},[d,r,a]);react.useEffect(()=>{m(o);},[n,o]);let u=react.useMemo(()=>Object.values(o||{}).every(f=>f===void 0),[o]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:i,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"rgba(39,39,42,0.6)",width:32,height:32,minHeight:32,cursor:"pointer",position:"relative"},children:[jsxRuntime.jsx(ui$1.FilterIcon,{width:16,height:16,className:"text-zinc-400"}),!u&&jsxRuntime.jsx("span",{style:{position:"absolute",top:-2,right:-2,width:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),jsxRuntime.jsx(ui$1.StyledModal,{isOpen:n,onOpenChange:l,size:"md",scrollBehavior:"inside",children:jsxRuntime.jsxs(ui$1.ModalContent,{className:"w-full h-full",children:[jsxRuntime.jsx(ui$1.ModalHeader,{className:"px-4 py-2",children:jsxRuntime.jsx("span",{className:"text-base font-semibold",children:s("tokens.filters.modal.title")})}),jsxRuntime.jsx(ui$1.ModalBody,{className:"px-0 pt-0 pb-4",children:jsxRuntime.jsx(ui$1.ScrollShadow,{children:jsxRuntime.jsx(yo,{protocols:e,resolution:t,filters:d,onFiltersChange:m,className:"pb-4"})})}),jsxRuntime.jsx(ui$1.ModalFooter,{className:"px-4",children:jsxRuntime.jsxs("div",{className:"w-full flex justify-between items-center",children:[jsxRuntime.jsx(ui$1.Button,{variant:"light",color:"default",size:"sm",radius:"full",startContent:jsxRuntime.jsx(ui$1.RefreshIcon,{width:16,height:16}),onPress:c,children:s("common.reset")}),jsxRuntime.jsx(ui$1.Button,{color:"primary",size:"sm",radius:"full",onPress:p,children:s("common.apply")})]})})]})})]})}var tf={display:"inline-flex",alignItems:"center",gap:8,borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"rgba(39,39,42,0.6)",padding:"6px 12px",fontSize:14,fontWeight:700,color:"#d4d4d8",cursor:"pointer",transition:"all 0.15s",height:32},of={position:"absolute",right:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},rf={height:1,background:"rgba(39,39,42,1)",margin:0};function ma({protocols:e,resolution:t,filters:o,onFiltersChange:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(false),a=react.useRef(null),[l,d]=react.useState(o),m=react.useCallback(()=>{d(void 0);},[]),c=react.useCallback(()=>{r?.(l),i(false);},[l,r]);react.useEffect(()=>{d(o);},[n,o]),react.useEffect(()=>{let u=f=>{a.current&&!a.current.contains(f.target)&&i(false);};return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[]),react.useEffect(()=>{if(!n)return;let u=f=>{f.key==="Escape"&&i(false);};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[n]);let p=react.useMemo(()=>Object.values(o||{}).every(u=>u===void 0),[o]);return jsxRuntime.jsxs("div",{ref:a,style:{position:"relative"},children:[jsxRuntime.jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxRuntime.jsxs("button",{type:"button",style:tf,onMouseEnter:u=>{u.currentTarget.style.background="rgba(39,39,42,1)";},onMouseLeave:u=>{u.currentTarget.style.background="rgba(39,39,42,0.6)";},onClick:()=>i(u=>!u),children:[jsxRuntime.jsx(ui$1.FilterIcon,{width:16,height:16,className:"flex-none"}),jsxRuntime.jsx("span",{className:"hidden sm:block",children:s("tokens.listHeader.filter")}),jsxRuntime.jsx(nf,{open:n})]}),!p&&jsxRuntime.jsx("span",{style:{position:"absolute",top:-4,right:-4,minWidth:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),n&&jsxRuntime.jsxs("div",{style:{...of,width:420},children:[jsxRuntime.jsx("div",{style:{padding:"16px 0"},children:jsxRuntime.jsx(ui$1.ScrollShadow,{className:"w-full max-h-120 px-4",children:jsxRuntime.jsx(yo,{protocols:e,resolution:t,filters:l,onFiltersChange:d})})}),jsxRuntime.jsx("div",{style:rf}),jsxRuntime.jsxs("div",{style:{padding:"12px 16px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsxRuntime.jsx(ui$1.Button,{variant:"light",size:"sm",color:"default",radius:"full",startContent:jsxRuntime.jsx(ui$1.RefreshIcon,{width:16,height:16}),onPress:m,children:s("common.reset")}),jsxRuntime.jsx(ui$1.Button,{variant:"solid",size:"sm",color:"primary",radius:"full",onPress:c,children:s("common.apply")})]})]})]})}function nf({open:e}){return jsxRuntime.jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"#71717a",transition:"transform 0.15s",transform:e?"rotate(180deg)":void 0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsxRuntime.jsx("path",{d:"m6 9 6 6 6-6"})})}function c1({popoverPlacement:e="bottom-end",...t}){let{isMobile:o}=ui$1.useScreen();return o?jsxRuntime.jsx(aa,{...t}):jsxRuntime.jsx(ma,{placement:e,...t})}function fa({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),s=react.useCallback(n=>{t?.(n);},[t]);return jsxRuntime.jsx(ui$1.StyledPlainTabs,{color:"primary",radius:"lg",selectedKey:e,onSelectionChange:s,"aria-label":"Select Resolution",classNames:{tabList:"gap-0",tab:"px-2",tabContent:"!text-zinc-500 group-data-[hover=true]:!text-foreground group-data-[selected=true]:!text-primary"},children:o.map(n=>jsxRuntime.jsx(ui$1.Tab,{title:r(`common.resolution.${n}`)},n))})}var hf={display:"inline-flex",alignItems:"center",gap:4,borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"rgba(39,39,42,0.6)",padding:"0 10px",fontSize:12,fontWeight:500,color:"#d4d4d8",cursor:"pointer",height:32,minHeight:32},bf={position:"absolute",left:0,top:"100%",zIndex:20,marginTop:6,borderRadius:14,border:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden",padding:"6px",minWidth:"100%"};function xa({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),[s,n]=react.useState(false),i=react.useRef(null),a=react.useCallback(l=>{t?.(l),n(false);},[t]);return react.useEffect(()=>{if(!s)return;let l=m=>{i.current&&!i.current.contains(m.target)&&n(false);},d=m=>{m.key==="Escape"&&n(false);};return document.addEventListener("mousedown",l),document.addEventListener("keydown",d),()=>{document.removeEventListener("mousedown",l),document.removeEventListener("keydown",d);}},[s]),jsxRuntime.jsxs("div",{ref:i,style:{position:"relative",zIndex:50},children:[jsxRuntime.jsxs("button",{type:"button",style:hf,onClick:()=>n(l=>!l),children:[jsxRuntime.jsx("span",{children:e?r(`common.resolution.${e}`):"\u2014"}),jsxRuntime.jsx(ui$1.ChevronDownIcon,{width:14,height:14,className:"text-zinc-500",style:{transition:"transform 0.15s",transform:s?"rotate(180deg)":void 0}})]}),s&&jsxRuntime.jsx("div",{style:bf,children:o.map(l=>jsxRuntime.jsx("button",{type:"button",onClick:()=>a(l),className:ui$1.cn("w-full text-left px-3 py-1.5 rounded-lg text-xs font-medium transition-colors cursor-pointer",l===e?"text-primary bg-primary/10":"text-zinc-400 hover:text-foreground hover:bg-zinc-800"),children:r(`common.resolution.${l}`)},l))})]})}function L1(e){let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(xa,{...e}):jsxRuntime.jsx(fa,{...e})}var ba=react.memo(function({token:t}){let{t:o}=i18n.useTranslation(),r=react.useMemo(()=>t.marketData?.bluechipHoldingsRatio,[t.marketData?.bluechipHoldingsRatio]),s=react.useMemo(()=>r!==void 0&&new utils.SafeBigNumber(r).gte(.1),[r]),n=react.useMemo(()=>r===void 0||new utils.SafeBigNumber(r).lt(.05),[r]);return jsxRuntime.jsx(ui$1.StyledTooltip,{content:o("tokens.bluechip.explained"),children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2.5",children:[s&&jsxRuntime.jsx(ui$1.HorsePowerHighIcon,{}),n&&jsxRuntime.jsx(ui$1.HorsePowerLowIcon,{}),!s&&!n&&jsxRuntime.jsx(ui$1.HorsePowerIcon,{}),jsxRuntime.jsx("span",{className:ui$1.cn(s&&"text-bullish",!s&&!n&&"text-bearish",r===void 0&&"text-neutral"),children:utils.formatPercent(r)})]})})});function $f(e){return e.length<=10?e:`${e.slice(0,4)}...${e.slice(-4)}`}var wa=react.memo(function({token:t}){let o=ui$1.useCopyToClipboard(),[r,s]=react.useState(false),[n,i]=react.useState(false),a=react.useRef(void 0),l=react.useRef(void 0),{t:d}=i18n.useTranslation(),m=react.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(t.name,()=>{ui$1.toast.success(d("tokens.copied.name")),s(true),a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{s(false);},2e3);});},[o,t.name,d]),c=react.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(t.address,()=>{ui$1.toast.success(d("tokens.copied.address")),i(true),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{i(false);},2e3);});},[o,t.address,d]);react.useEffect(()=>()=>{a.current&&clearTimeout(a.current),l.current&&clearTimeout(l.current);},[]);let p=hooks.useTickAge(t.createdAt);return jsxRuntime.jsxs("div",{className:"w-full flex justify-start items-center gap-3",children:[jsxRuntime.jsx(ce,{token:t,showProgress:false,className:"w-10 h-10 sm:w-16 sm:h-16 flex-none"}),jsxRuntime.jsxs("div",{className:"flex-auto flex flex-col gap-1 min-w-0",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx("span",{className:"flex-none font-medium tracking-[-0.02em]",children:t.symbol}),jsxRuntime.jsx(ui$1.StyledTooltip,{content:t.name,children:jsxRuntime.jsxs("div",{className:"flex-initial flex items-center gap-1 min-w-0 text-neutral hover:text-primary-200 cursor-pointer",onClick:m,children:[jsxRuntime.jsx("div",{className:"flex-initial whitespace-nowrap truncate",children:t.name}),r?jsxRuntime.jsx(ui$1.CheckIcon,{className:"flex-none w-3 h-3 sm:w-3.5 sm:h-3.5"}):jsxRuntime.jsx(ui$1.CopyIcon,{className:"flex-none w-3 h-3 sm:w-3.5 sm:h-3.5"})]})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("span",{className:"text-primary text-xs sm:text-sm font-medium",children:utils.formatAge(p)}),jsxRuntime.jsxs("button",{type:"button",className:"group flex items-center gap-1 min-w-0 max-w-28 sm:max-w-36 text-neutral hover:text-primary-200 cursor-pointer",onClick:c,"aria-label":d("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate text-left text-xs font-mono text-neutral/70 group-hover:text-primary-200",children:$f(t.address)}),n?jsxRuntime.jsx(ui$1.CheckIcon,{className:"flex-none w-3 h-3"}):jsxRuntime.jsx(ui$1.CopyIcon,{className:"flex-none w-3 h-3"})]}),t.socialMedias?.website&&jsxRuntime.jsx(ui$1.Link,{href:t.socialMedias.website,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui$1.WebsiteIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.twitter&&jsxRuntime.jsx(ui$1.Link,{href:t.socialMedias.twitter,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui$1.TwitterIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.telegram&&jsxRuntime.jsx(ui$1.Link,{href:t.socialMedias.telegram,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui$1.TelegramIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.discord&&jsxRuntime.jsx(ui$1.Link,{href:t.socialMedias.discord,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui$1.DiscordIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),jsxRuntime.jsx(ui$1.Link,{href:utils.searchTwitterUrl(`${t.symbol} OR ${t.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui$1.SearchIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})})]})]})]})});var La=react.memo(function({token:t}){let{t:o}=i18n.useTranslation(),r=t.marketData,s=react.useMemo(()=>new utils.SafeBigNumber(r?.top10HoldingsRatio).gte(.1),[r?.top10HoldingsRatio]),n=react.useMemo(()=>new utils.SafeBigNumber(r?.devHoldingsRatio).gte(.1),[r?.devHoldingsRatio]),i=react.useMemo(()=>new utils.SafeBigNumber(r?.sniperHoldingsRatio).gte(.1),[r?.sniperHoldingsRatio]),a=react.useMemo(()=>new utils.SafeBigNumber(r?.insiderHoldingsRatio).gte(.1),[r?.insiderHoldingsRatio]),l=react.useMemo(()=>new utils.SafeBigNumber(r?.bundleHoldingsRatio).gte(.1),[r?.bundleHoldingsRatio]);return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-1 justify-center",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.PeopleIcon,{width:12,height:12}),value:utils.formatAmount(r?.holders),tooltip:o("tokens.tokenInfo.holders"),warning:false,disable:!r?.holders}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.KlineCandlesIcon,{width:12,height:12}),value:utils.formatAmount(r?.proHolders),tooltip:o("tokens.tokenInfo.proHolders"),warning:false,disable:!r?.proHolders}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.StarIcon,{width:12,height:12}),value:utils.formatAmount(r?.kolHolders),tooltip:o("tokens.tokenInfo.kolHolders"),warning:false,disable:!r?.kolHolders}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(r?.top10HoldingsRatio),tooltip:o("tokens.tokenInfo.top10HoldingsRatio"),warning:s,disable:!r?.top10HoldingsRatio||r?.top10HoldingsRatio==="0"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(r?.devHoldingsRatio),tooltip:o("tokens.tokenInfo.devHoldingsRatio"),warning:n,disable:!r?.devHoldingsRatio||r?.devHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(r?.sniperHoldingsRatio),tooltip:o("tokens.tokenInfo.sniperHoldingsRatio"),warning:i,disable:!r?.sniperHoldingsRatio||r?.sniperHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(r?.insiderHoldingsRatio),tooltip:o("tokens.tokenInfo.insiderHoldingsRatio"),warning:a,disable:!r?.insiderHoldingsRatio||r?.insiderHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(r?.bundleHoldingsRatio),tooltip:o("tokens.tokenInfo.bundleHoldingsRatio"),warning:l,disable:!r?.bundleHoldingsRatio||r?.bundleHoldingsRatio==="0",tooltipPlacement:"bottom"})]})]})});var Pa=react.memo(function({token:t}){let o=react.useMemo(()=>t.marketData?.tvlInUsd,[t.marketData?.tvlInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(o)})});var Ra=react.memo(function({token:t}){let o=react.useMemo(()=>t.marketData?.marketCapInUsd,[t.marketData?.marketCapInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(o)})});var Ia=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.marketData?.priceInUsd,[t.marketData?.priceInUsd]),s=react.useMemo(()=>t.stats?.[o]?.priceChange,[t,o]),n=react.useMemo(()=>s?new utils.SafeBigNumber(s).abs().toString():void 0,[s]),i=react.useMemo(()=>s&&new utils.SafeBigNumber(s).gte(0),[s]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatPriceUSD(r)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex gap-1 items-center text-xs",i?"text-bullish":"text-bearish"),children:[i?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:10,height:10}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:10,height:10}),jsxRuntime.jsx("span",{children:utils.formatPercent(n)})]})]})});var Fa=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.traders,[t.stats?.[o]?.traders]),s=react.useMemo(()=>t.stats?.[o]?.buyers,[t.stats?.[o]?.buyers]),n=react.useMemo(()=>t.stats?.[o]?.sellers,[t.stats?.[o]?.sellers]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})});var Oa=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.trades,[t.stats?.[o]?.trades]),s=react.useMemo(()=>t.stats?.[o]?.buys,[t.stats?.[o]?.buys]),n=react.useMemo(()=>t.stats?.[o]?.sells,[t.stats?.[o]?.sells]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})});var Ea=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.volumesInUsd,[t.stats?.[o]?.volumesInUsd]),s=react.useMemo(()=>t.stats?.[o]?.buyVolumesInUsd,[t.stats?.[o]?.buyVolumesInUsd]),n=react.useMemo(()=>t.stats?.[o]?.sellVolumesInUsd,[t.stats?.[o]?.sellVolumesInUsd]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmountUSD(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSD(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSD(n)})]})]})});var bg=`
21
+ `})]})}function Jr({token:e,renderAction:t,isLast:o=false,onSelectToken:r,className:s}){let{t:n}=i18n.useTranslation(),i=ui.useCopyToClipboard(),l=hooks.useTickAge(e.createdAt),a=e.marketData,d=e.stats?.["1h"],m=react.useCallback(()=>{r?.(e);},[r,e]),c=react.useCallback(D=>{D.stopPropagation(),i(e.address,()=>ui.toast.success(n("tokens.copied.address")));},[i,e.address,n]),p=react.useMemo(()=>d?.volumesInUsd,[d?.volumesInUsd]),u=react.useMemo(()=>d?.buyVolumesInUsd,[d?.buyVolumesInUsd]),g=react.useMemo(()=>d?.sellVolumesInUsd,[d?.sellVolumesInUsd]),f=react.useMemo(()=>d?.trades,[d?.trades]),x=react.useMemo(()=>a?.marketCapInUsd,[a?.marketCapInUsd]),b=react.useMemo(()=>a?.tvlInUsd,[a?.tvlInUsd]),h=react.useMemo(()=>{let D=new utils.SafeBigNumber(x);return D.lt(1e3)?"text-foreground":D.lt(1e6)?"text-secondary":"text-primary"},[x]),k=react.useMemo(()=>new utils.SafeBigNumber(a?.top10HoldingsRatio).gte(.1),[a?.top10HoldingsRatio]),T=react.useMemo(()=>new utils.SafeBigNumber(a?.devHoldingsRatio).gte(.1),[a?.devHoldingsRatio]),C=react.useMemo(()=>new utils.SafeBigNumber(a?.insiderHoldingsRatio).gte(.1),[a?.insiderHoldingsRatio]),y=react.useMemo(()=>new utils.SafeBigNumber(a?.sniperHoldingsRatio).gte(.1),[a?.sniperHoldingsRatio]),L=react.useMemo(()=>new utils.SafeBigNumber(a?.bundleHoldingsRatio).gte(.1),[a?.bundleHoldingsRatio]),[W,I]=react.useMemo(()=>{let D=Number(d?.buys??0),H=Number(d?.sells??0),_=D+H;if(_===0)return [12,12];let xt=Math.round(D/_*24);return [xt,24-xt]},[d?.buys,d?.sells]),te=a?.holders!==void 0&&a.holders>0,Se=a?.proHolders!==void 0&&a.proHolders>0,O=a?.kolHolders!==void 0&&a.kolHolders>0,ie=te||Se||O;return jsxRuntime.jsxs("div",{className:ui.cn("relative w-full h-full overflow-hidden px-4 py-3 hover:bg-content2/40 cursor-pointer",s),style:{borderBottom:o?"none":"1px solid rgba(39,39,42,0.6)"},onClick:r?m:void 0,children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx(fe,{token:e,enableSearch:true,enablePreview:!!e.image,showProgress:true,className:"w-20 h-20"}),jsxRuntime.jsxs("button",{type:"button",className:"text-xs font-mono text-neutral hover:text-foreground leading-none",onClick:c,"aria-label":n("tokens.copied.address"),title:n("tokens.copied.address"),children:[e.address.slice(0,4),"...",e.address.slice(-4)]})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("button",{type:"button",className:"flex items-center gap-1.5 min-w-0 text-left",onClick:c,"aria-label":n("tokens.copied.address"),title:n("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"flex-none text-sm font-semibold leading-none whitespace-nowrap overflow-hidden text-ellipsis max-w-24",children:e.symbol}),jsxRuntime.jsx(ui.StyledTooltip,{content:e.name,children:jsxRuntime.jsx("span",{className:"text-[13px] leading-none text-neutral truncate max-w-20",children:e.name})}),jsxRuntime.jsx(ui.CopyIcon,{className:"flex-none w-3.5 h-3.5 text-neutral"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 leading-none",children:[jsxRuntime.jsx("span",{className:"text-[13px] font-mono font-medium text-neutral",children:utils.formatAge(l)}),e.socialMedias?.website&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.website,className:"text-neutral hover:text-primary",target:"_blank",onClick:D=>D.stopPropagation(),children:jsxRuntime.jsx(ui.WebsiteIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.twitter,className:"text-neutral hover:text-primary",target:"_blank",onClick:D=>D.stopPropagation(),children:jsxRuntime.jsx(ui.TwitterIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.telegram,className:"text-neutral hover:text-primary",target:"_blank",onClick:D=>D.stopPropagation(),children:jsxRuntime.jsx(ui.TelegramIcon,{className:"w-3.5 h-3.5"})}),jsxRuntime.jsx(ui.Link,{href:utils.searchTwitterUrl(`${e.symbol} OR ${e.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",onClick:D=>D.stopPropagation(),children:jsxRuntime.jsx(ui.SearchIcon,{className:"w-3.5 h-3.5"})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-foreground/80 leading-none",children:[jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"MC"}),jsxRuntime.jsx("span",{className:ui.cn(h),children:utils.formatAmountUSDCompact(x)})]}),jsxRuntime.jsx("span",{className:"text-neutral/30",children:"\xB7"}),jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"Liq"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(b)})]})]}),ie&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[te&&jsxRuntime.jsx(ui.StyledTooltip,{content:n("tokens.tokenInfo.holders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.PeopleIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(a?.holders)]})}),Se&&jsxRuntime.jsx(ui.StyledTooltip,{content:n("tokens.tokenInfo.proHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.KlineCandlesIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(a?.proHolders)]})}),O&&jsxRuntime.jsx(ui.StyledTooltip,{content:n("tokens.tokenInfo.kolHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.StarIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(a?.kolHolders)]})})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5 leading-none font-mono",children:[jsxRuntime.jsx("div",{className:"flex flex-col items-end gap-1",children:jsxRuntime.jsx("span",{className:ui.cn("text-base font-bold leading-none",h),children:utils.formatAmountUSDCompact(x)})}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"V"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmountUSDCompact(p)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(u)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(g)})]})]}),jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"TX"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmount(f)})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-start gap-4 relative",children:[jsxRuntime.jsx(ui.HorizontalScrollContainer,{className:"flex-auto min-w-0",forceShowArrows:true,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(a?.top10HoldingsRatio),tooltip:n("tokens.tokenInfo.top10HoldingsRatio"),warning:k,disable:!a?.top10HoldingsRatio||a?.top10HoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(a?.devHoldingsRatio),tooltip:n("tokens.tokenInfo.devHoldingsRatio"),warning:T,disable:!a?.devHoldingsRatio||a?.devHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(a?.sniperHoldingsRatio),tooltip:n("tokens.tokenInfo.sniperHoldingsRatio"),warning:y,disable:!a?.sniperHoldingsRatio||a?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(a?.insiderHoldingsRatio),tooltip:n("tokens.tokenInfo.insiderHoldingsRatio"),warning:C,disable:!a?.insiderHoldingsRatio||a?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(a?.bundleHoldingsRatio),tooltip:n("tokens.tokenInfo.bundleHoldingsRatio"),warning:L,disable:!a?.bundleHoldingsRatio||a?.bundleHoldingsRatio==="0"})]})}),t&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:D=>D.stopPropagation(),children:t(e)})]})]})}var nd=152,Zr=10;function sd({index:e,style:t,data:o,skeletonCount:r,renderItemAction:s,onSelectToken:n}){if(!o)return jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Ho,{isLast:e===r-1})});let i=o[e];return i?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Jr,{token:i,isLast:e===o.length-1,renderAction:s,onSelectToken:n})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Ho,{isLast:e===o.length-1})})}function Je({title:e,tokens:t,isLoading:o,itemHeight:r=nd,renderHeaderExtra:s,renderItemAction:n,onSelectToken:i,onPauseChange:l,onScrollingChange:a,className:d,hideHeader:m}){let c=o||!t?void 0:t,p=c?c.length:Zr,u=react.useMemo(()=>({data:c,skeletonCount:Zr,renderItemAction:n,onSelectToken:i}),[c,n,i]),[g,f]=react.useState(false),x=react.useRef(void 0),b=react.useRef(false),h=react.useCallback(()=>{f(true),l?.(true);},[l]),k=react.useCallback(()=>{f(false),l?.(false);},[l]),T=react.useCallback(()=>{b.current||(b.current=true,a?.(true)),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{b.current=false,a?.(false);},180);},[a]);return react.useEffect(()=>()=>{x.current&&clearTimeout(x.current),b.current&&a?.(false);},[a]),jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full bg-[#0a0a0b] overflow-hidden flex flex-col border border-[rgba(39,39,42,0.6)] rounded-lg",d),onMouseEnter:h,onMouseLeave:k,children:[!m&&jsxRuntime.jsx(Ur,{title:e,isPaused:g,extra:s}),jsxRuntime.jsx("div",{className:"flex-1 w-full overflow-hidden",onScrollCapture:T,children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",rowCount:p,rowHeight:r,rowComponent:sd,rowProps:u,overscanCount:10})})]})}function Oo(e,t){let o={...e};for(let r of Object.keys(t))t[r]!==void 0&&(o[r]=t[r]);return o}var ad=["1m","5m","15m","30m","1h","4h","24h"];function ld(e,t){if(!t)return e;if(!e)return t;let o={...e};for(let r of ad)t[r]&&(o[r]=e[r]?Oo(e[r],t[r]):t[r]);return o}function dd(e,t){return t?e?Oo(e,t):t:e}function _t(e,t){return t?e?Oo(e,t):t:e}function X(e,t){let{chain:o,address:r,stats:s,marketData:n,socialMedias:i,security:l,launchedFrom:a,migratedTo:d,...m}=t,c={...e};for(let p of Object.keys(m))m[p]!==void 0&&(c[p]=m[p]);return c.stats=ld(e.stats,s),c.marketData=dd(e.marketData,n),c.socialMedias=_t(e.socialMedias,i),c.security=_t(e.security,l),c.launchedFrom=_t(e.launchedFrom,a),c.migratedTo=_t(e.migratedTo,d),c}function $t(e,t){let o=new Map(e.map(r=>[r.address,r]));return t.map(r=>{let s=o.get(r.address);return s?X(s,r):r})}function cd(e){return e.chain!==void 0&&e.address!==void 0&&e.address!==""&&e.name!==void 0&&e.symbol!==void 0&&e.decimals!==void 0}function Re(e,t){if(t.length===0)return e;let o=[...e],r=false;for(let s of t){let n=o.findIndex(i=>i.address===s.address);if(n>=0){o[n]=X(o[n],s),r=true;continue}cd(s)&&(o.push(s),r=true);}return r?o:e}var pd=["24h","12h","30m","15m","30s","15s","1m","5m","1h","4h","1s"],ud=new Set(["price","marketCap","tvl","holders","top10Holdings","top10Ratio","top100Holdings","top100Ratio","creatorsHoldings","creatorsRatio","createdAt","launchedFromProtocolFamily","migratedToProtocolFamily","tag"]),fd=new Set(["priceChange","volumes","trades","traders","buys","sells"]);function Y(e){if(e==null||e==="")return;let t=Number(e);return Number.isFinite(t)?t:void 0}function en(e){for(let t of pd){if(!e.endsWith(t))continue;let o=e.slice(0,-t.length);return o?{metric:o,resolution:t}:void 0}}function tn(e){if(ud.has(e))return true;let t=en(e);return t?fd.has(t.metric):false}function Kt(e,t){switch(t){case "price":return Y(e.marketData?.priceInUsd);case "marketCap":return Y(e.marketData?.marketCapInUsd);case "tvl":return Y(e.marketData?.tvlInUsd);case "holders":return Y(e.marketData?.holders);case "top10Holdings":return Y(e.marketData?.top10Holdings);case "top10Ratio":return Y(e.marketData?.top10HoldingsRatio);case "top100Holdings":return Y(e.marketData?.top100Holdings);case "top100Ratio":return Y(e.marketData?.top100HoldingsRatio);case "creatorsHoldings":return Y(e.marketData?.devHoldings);case "creatorsRatio":return Y(e.marketData?.devHoldingsRatio);case "createdAt":return e.createdAt?.getTime();case "launchedFromProtocolFamily":return jr(e,e.launchedFrom?.protocolFamily);case "migratedToProtocolFamily":return jr(e,e.migratedTo?.protocolFamily);case "tag":return e.tags?.[0];}let o=en(t);if(!o)return;let r=e.stats?.[o.resolution];switch(o.metric){case "priceChange":return Y(r?.priceChange);case "volumes":return Y(r?.volumesInUsd);case "trades":return Y(r?.trades);case "traders":return Y(r?.traders);case "buys":return Y(r?.buys);case "sells":return Y(r?.sells);default:return}}function jr(e,t){if(t)return utils.parseTokenProtocolFamily(e.chain,t)??t}var gd=new Set(["top10Ratio","top100Ratio","creatorsRatio"]);function on(e){let t=e.trim().toLowerCase();return t.length>0?t:void 0}function xd(e){return [e.name,e.symbol].filter(Boolean).join(" ").toLowerCase()}function kd(e){return Array.isArray(e)?e:void 0}function bd(e){return Array.isArray(e)?void 0:e}function rn(e,t){if(!gd.has(e))return t;let o=Number(t);return Number.isFinite(o)?o/100:t}function ge(e,t){let o=bd(t);return o===void 0?void 0:rn(e,o)}function Do(e,t){return kd(t)?.map(o=>rn(e,o))}function Ye(e,t){if(typeof e=="number"){let o=Number(t);return Number.isFinite(o)?e-o:void 0}if(typeof e=="string")return e.localeCompare(String(t))}function zt(e,t){if(typeof e=="number"){let o=Number(t);return Number.isFinite(o)&&e===o}return String(e)===String(t)}function hd(e,t){if(!tn(t.field))return false;let o=Kt(e,t.field),r=o===void 0;if(t.operator==="isNull")return r;if(t.operator==="isNotNull")return !r;if(r)return false;switch(t.operator){case "eq":{let s=ge(t.field,t.value);return s!==void 0&&zt(o,s)}case "ne":{let s=ge(t.field,t.value);return s!==void 0&&!zt(o,s)}case "gt":{let s=ge(t.field,t.value),n=s!==void 0?Ye(o,s):void 0;return n!==void 0&&n>0}case "gte":{let s=ge(t.field,t.value),n=s!==void 0?Ye(o,s):void 0;return n!==void 0&&n>=0}case "lt":{let s=ge(t.field,t.value),n=s!==void 0?Ye(o,s):void 0;return n!==void 0&&n<0}case "lte":{let s=ge(t.field,t.value),n=s!==void 0?Ye(o,s):void 0;return n!==void 0&&n<=0}case "between":{let s=Do(t.field,t.value);if(!s||s.length<2)return false;let n=Ye(o,s[0]),i=Ye(o,s[1]);return n!==void 0&&i!==void 0&&n>=0&&i<=0}case "in":{let s=Do(t.field,t.value);return s?s.some(n=>zt(o,n)):false}case "nin":{let s=Do(t.field,t.value);return s?s.every(n=>!zt(o,n)):false}case "contains":{let s=ge(t.field,t.value);return s!==void 0&&String(o).includes(String(s))}case "notContains":{let s=ge(t.field,t.value);return s!==void 0&&!String(o).includes(String(s))}case "startsWith":{let s=ge(t.field,t.value);return s!==void 0&&String(o).startsWith(String(s))}case "endsWith":{let s=ge(t.field,t.value);return s!==void 0&&String(o).endsWith(String(s))}default:return false}}function le(e,t){let o=t?.keywords?.map(on).filter(n=>n!==void 0),r=t?.excludeKeywords?.map(on).filter(n=>n!==void 0),s=t?.filters;return !o?.length&&!r?.length&&!s?.length?e:e.filter(n=>{let i=xd(n);return !(o?.length&&!o.some(l=>i.includes(l))||r?.length&&r.some(l=>i.includes(l))||s?.length&&!s.every(l=>hd(n,l)))})}function de({applyUpdates:e,paused:t=false,flushInterval:o=500}){let r=react.useRef(e),s=react.useRef(t),n=react.useRef([]),i=react.useRef(),l=react.useRef();r.current=e,s.current=t;let a=react.useCallback(()=>{i.current!==void 0&&(clearTimeout(i.current),i.current=void 0),l.current!==void 0&&(cancelAnimationFrame(l.current),l.current=void 0);},[]),d=react.useCallback(()=>{if(a(),s.current){i.current=setTimeout(d,o);return}let p=n.current;p.length!==0&&(n.current=[],r.current(p));},[a,o]),m=react.useCallback(()=>{i.current!==void 0||l.current!==void 0||(i.current=setTimeout(()=>{i.current=void 0,l.current=requestAnimationFrame(()=>{l.current=void 0,d();});},o));},[d,o]),c=react.useCallback(p=>{p.length!==0&&(n.current.push(...p),m());},[m]);return react.useEffect(()=>{t||d();},[d,t]),react.useEffect(()=>a,[a]),{enqueueUpdates:c,flush:d}}function dn({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let{subscribeClient:s}=react$1.useDexClient(),n=react.useRef(new Map),i=react.useRef(o);i.current=o;let l=react.useMemo(()=>Array.from(new Set(t.map(m=>m.address.trim()).filter(Boolean))).sort().join(","),[t]),a=react.useMemo(()=>l?l.split(","):[],[l]),d=()=>{n.current.forEach(m=>m.unsubscribe()),n.current.clear();};react.useEffect(()=>d,[e,s,r]),react.useEffect(()=>{if(!r){d();return}let m=new Set(a),c=n.current;for(let[p,u]of c)m.has(p)||(u.unsubscribe(),c.delete(p));for(let p of a)c.has(p)||c.set(p,s.subscribeToken(e,p,u=>{i.current(u);}));},[a,e,r,s]);}var Nd=80;function gn(e){return {chain:e.chain,address:e.address,name:e.name??"",symbol:e.symbol??"",decimals:e.decimals??0,image:e.image,description:e.description,socialMedias:e.socialMedias,launchedFrom:e.launchedFrom,migratedTo:e.migratedTo,createdAt:e.createdAt}}function Sd(e,t,o){return e===t?o:e===o?t:o||t}function Bo(e){let t=e.token?.address??e.tokenAAddress??"",o=e.token;return {...o,chain:e.chain,address:t,name:o?.name??"",symbol:o?.symbol??"",decimals:o?.decimals??0,createdAt:o?.createdAt??e.createdAt,liquidities:[{poolAddress:e.poolAddress,pairAddress:Sd(t,e.tokenAAddress,e.tokenBAddress),image:e.dex?.image,programAddress:e.dex?.programAddress,protocolFamily:e.dex?.protocolFamily,protocolName:e.dex?.protocolName}]}}function Cd(e){return {...gn(Bo(e)),...e.token??{},liquidities:Bo(e).liquidities,createdAt:e.token?.createdAt??e.createdAt}}function fn(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,Nd)}function xn({chain:e,filters:t,isPaused:o=false,deferUpdates:r=false,updateFlushInterval:s}){let n=react.useMemo(()=>({chain:e}),[e]),i=react.useRef(o);i.current=o;let l=react.useRef(e),[a,d]=react.useState(true),[m,c]=react.useState([]);react.useEffect(()=>{e!==l.current&&(d(true),c([]),l.current=e);},[e]);let{data:p,isPending:u}=react$1.useNewPoolsQuery(n);react.useEffect(()=>{p&&(c(k=>{let T=i.current,C=k.length===0&&p.length>0,y=[...k];for(let L of p){let W=Cd(L),I=y.findIndex(te=>te.address===W.address);I>=0?y[I]=X(y[I],W):(!T||C)&&y.push(W);}return T?y:fn(y)}),d(false));},[p]);let g=react.useCallback(k=>{c(T=>{let C=i.current,y=[...T],L=false;for(let W of k){let I=y.findIndex(te=>te.address===W.address);I>=0?(L=true,y[I]=X(y[I],W)):C||(L=true,y.push(gn(W)));}return L?C?y:fn(y):T});},[]),{enqueueUpdates:f}=de({applyUpdates:g,paused:r,flushInterval:s}),x=react.useCallback(k=>{f(k.map(Bo));},[f]);react$1.useNewPoolsSubscription({chain:e},x),dn({chain:e,tokens:m,onUpdate:f});let b=react.useMemo(()=>u||a,[u,a]);return {tokens:react.useMemo(()=>le(m,t),[m,t]),isLoading:b}}function db({chain:e,filters:t,title:o,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,className:i,hideHeader:l}){let[a,d]=react.useState(false),[m,c]=react.useState(false),{tokens:p,isLoading:u}=xn({chain:e,filters:t,isPaused:a,deferUpdates:m}),g=react.useCallback(f=>{d(f);},[]);return jsxRuntime.jsx(Je,{title:o,tokens:p,isLoading:u,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,onPauseChange:g,onScrollingChange:c,className:i,hideHeader:l})}function xe({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let s=react.useMemo(()=>Array.from(new Set(t.map(i=>i.address.trim()).filter(Boolean))).sort().join(","),[t]),n=react.useMemo(()=>s?s.split(","):[],[s]);react$1.useTokensSubscription({chain:e,addresses:n},o,{enabled:r&&n.length>0});}function vn({chain:e,filters:t,isPaused:o=false,refetchInterval:r=3e4,deferUpdates:s=false,updateFlushInterval:n}){let i=react.useMemo(()=>({chain:e}),[e]),l=react.useRef(o);l.current=o;let a=react.useRef(e),[d,m]=react.useState(true),[c,p]=react.useState([]);react.useEffect(()=>{e!==a.current&&(m(true),p([]),a.current=e);},[e]);let{data:u,isPending:g}=react$1.useMigratedTokensQuery(i,{refetchInterval:r});react.useEffect(()=>{u&&(p(k=>{let T=l.current,C=[...k];for(let y of u){let L=C.findIndex(W=>W.address===y.address);L>=0?C[L]=X(C[L],y):T||C.unshift(y);}return C}),m(false));},[u]);let f=react.useCallback(k=>{p(T=>Re(T,k));},[]),{enqueueUpdates:x}=de({applyUpdates:f,paused:s,flushInterval:n});xe({chain:e,tokens:c,onUpdate:x});let b=react.useMemo(()=>g||d,[g,d]);return {tokens:react.useMemo(()=>le(c,t),[c,t]),isLoading:b}}function wb({chain:e,filters:t,title:o,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,className:i,hideHeader:l}){let[a,d]=react.useState(false),[m,c]=react.useState(false),{tokens:p,isLoading:u}=vn({chain:e,filters:t,isPaused:a,deferUpdates:m}),g=react.useCallback(f=>{d(f);},[]);return jsxRuntime.jsx(Je,{title:o,tokens:p,isLoading:u,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,onPauseChange:g,onScrollingChange:c,className:i,hideHeader:l})}function Ud(e){return e.sort((t,o)=>{let r=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-r})}function Ln({chain:e,filters:t,isPaused:o=false,refetchInterval:r=15e3,deferUpdates:s=false,updateFlushInterval:n}){let i=react.useMemo(()=>({chain:e}),[e]),l=react.useRef(o);l.current=o;let a=react.useRef(e),[d,m]=react.useState(true),[c,p]=react.useState([]);react.useEffect(()=>{e!==a.current&&(m(true),p([]),a.current=e);},[e]);let{data:u,isPending:g}=react$1.useFinalStretchTokensQuery(i,{refetchInterval:r});react.useEffect(()=>{u&&(p(k=>{let T=l.current,C=k.length===0&&u.length>0,y=[...k];for(let L of u){let W=y.findIndex(I=>I.address===L.address);W>=0?y[W]=X(y[W],L):(!T||C)&&y.push(L);}return T?y:Ud(y)}),m(false));},[u]);let f=react.useCallback(k=>{p(T=>Re(T,k));},[]),{enqueueUpdates:x}=de({applyUpdates:f,paused:s,flushInterval:n});xe({chain:e,tokens:c,onUpdate:x});let b=react.useMemo(()=>g||d,[g,d]);return {tokens:react.useMemo(()=>le(c,t),[c,t]),isLoading:b}}function Wb({chain:e,filters:t,title:o,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,className:i,hideHeader:l}){let[a,d]=react.useState(false),[m,c]=react.useState(false),{tokens:p,isLoading:u}=Ln({chain:e,filters:t,isPaused:a,deferUpdates:m}),g=react.useCallback(f=>{d(f);},[]);return jsxRuntime.jsx(Je,{title:o,tokens:p,isLoading:u,renderHeaderExtra:r,renderItemAction:s,onSelectToken:n,onPauseChange:g,onScrollingChange:c,className:i,hideHeader:l})}var Wd=10,Vd=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function Qt(){let[e,t]=jotai.useAtom(Vd),o=react.useCallback(s=>{let n=s.trim();n&&t(i=>{let l=i.filter(a=>a!==n);return [n,...l].slice(0,Wd)});},[t]),r=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:r}}function Hn({histories:e,onSelect:t,onClear:o,className:r}){let{t:s}=i18n.useTranslation();return e.length===0?null:jsxRuntime.jsxs("div",{className:ui.cn("px-4 pb-4",r),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:s("tokens.search.history")}),jsxRuntime.jsx(ui.Button,{isIconOnly:true,size:"sm",className:"bg-transparent min-w-6 w-6 h-6 text-neutral",onPress:o,children:jsxRuntime.jsx(ui.TrashIcon,{width:20,height:20})})]}),jsxRuntime.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:e.map(n=>jsxRuntime.jsx(ui.Chip,{size:"sm",variant:"bordered",className:ui.cn("text-neutral","border-border border-1","cursor-pointer","hover:opacity-hover"),onClick:()=>t?.(n),children:n},n))})]})}function Fn({onSelect:e,className:t}){let{histories:o,clearHistories:r}=Qt();return jsxRuntime.jsx(Hn,{className:ui.cn(t),histories:o,onSelect:e,onClear:r})}function Mn({value:e,onValueChange:t,onClear:o,onEscape:r,className:s}){let{t:n}=i18n.useTranslation();return jsxRuntime.jsx("div",{className:s,children:jsxRuntime.jsx(ui.StyledInput,{autoFocus:true,variant:"bordered",radius:"full",value:e,onValueChange:t,placeholder:n("tokens.search.placeholder"),classNames:{inputWrapper:["!bg-[rgba(39,39,42,0.6)]","!border-[rgba(63,63,70,0.5)]","data-[hover=true]:!bg-[rgba(39,39,42,1)]","group-data-[focus=true]:!bg-[rgba(39,39,42,1)]","group-data-[focus=true]:!border-[rgba(63,63,70,0.8)]"].join(" ")},startContent:jsxRuntime.jsx(ui.SearchIcon,{width:20,height:20,className:"text-neutral"}),endContent:e?jsxRuntime.jsx(ui.Button,{isIconOnly:true,className:"bg-transparent min-w-6 w-6 h-6 text-neutral",onPress:o,children:jsxRuntime.jsx(ui.XCloseIcon,{width:20,height:20})}):jsxRuntime.jsx(ui.Kbd,{className:"min-w-8 justify-center text-xs text-neutral bg-transparent border border-[rgba(63,63,70,0.5)] rounded-full cursor-pointer select-none",onMouseDown:i=>{i.preventDefault(),r?.();},children:"Esc"})})})}function Gt({token:e,className:t}){let{t:o}=i18n.useTranslation(),r=hooks.useTickAge(e.createdAt),s=react.useMemo(()=>e.marketData?.priceInUsd,[e]),n=react.useMemo(()=>e.marketData?.marketCapInUsd,[e]),i=react.useMemo(()=>e.marketData?.tvlInUsd,[e]),l=react.useMemo(()=>e.stats?.["24h"]?.priceChange,[e]),a=react.useMemo(()=>l?new utils.SafeBigNumber(l).abs().toString():void 0,[l]),d=react.useMemo(()=>l!=null&&new utils.SafeBigNumber(l).gte(0),[l]);return jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full px-3 flex items-center justify-between gap-2","hover:cursor-pointer hover:bg-content2 rounded-lg",t),children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2.5",children:[jsxRuntime.jsx(fe,{token:e,className:"w-10 h-10 flex-none",showProtocolFamily:true,classNames:{searchIcon:"w-5 h-5"}}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-0.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx("span",{className:"font-medium text-sm truncate",children:e.symbol}),jsxRuntime.jsx("span",{className:"text-xs text-primary font-medium",children:utils.formatAge(r)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1 text-xs text-neutral",children:[jsxRuntime.jsxs("span",{children:[o("tokens.listHeader.mcShort")," ",utils.formatAmountUSD(n)]}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsxs("span",{children:[o("tokens.listHeader.liqShort")," ",utils.formatAmountUSD(i)]})]})]})]}),jsxRuntime.jsxs("div",{className:"flex-none w-20 flex flex-col items-end",children:[jsxRuntime.jsx("span",{className:"text-xs",children:utils.formatPriceUSD(s)}),jsxRuntime.jsxs("span",{className:ui.cn("inline-flex gap-0.5 items-center text-xs",d?"text-bullish":"text-bearish"),children:[d?jsxRuntime.jsx(ui.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui.TriangleDownIcon,{width:8,height:8}),jsxRuntime.jsx("span",{children:utils.formatPercent(a)})]})]})]})}function Xt({className:e}){let{t}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:ui.cn("h-9 px-3 flex items-center justify-between","text-xs font-medium text-neutral","sticky top-0 z-10",e),children:[jsxRuntime.jsx("div",{className:"flex-1",children:jsxRuntime.jsxs("span",{children:[t("tokens.listHeader.token")," / ",t("tokens.listHeader.age")," /"," ",t("tokens.listHeader.marketCap")," /"," ",t("tokens.listHeader.liquidity")]})}),jsxRuntime.jsx("div",{className:"flex-none w-20 text-right",children:jsxRuntime.jsxs("span",{children:[t("tokens.listHeader.price")," / ",t("tokens.listHeader.24hChange")]})})]})}function cc(){return jsxRuntime.jsxs("div",{className:"w-full h-14 px-3 flex items-center justify-between gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-2",children:[jsxRuntime.jsx(ui.Skeleton,{className:"flex-none w-8 h-8 rounded-full"}),jsxRuntime.jsxs("div",{className:"flex flex-col gap-1.5",children:[jsxRuntime.jsx(ui.Skeleton,{className:"w-24 h-4 rounded-md"}),jsxRuntime.jsx(ui.Skeleton,{className:"w-36 h-3 rounded-md"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none w-20 flex flex-col items-end gap-1.5",children:[jsxRuntime.jsx(ui.Skeleton,{className:"w-14 h-4 rounded-md"}),jsxRuntime.jsx(ui.Skeleton,{className:"w-10 h-3 rounded-md"})]})]})}function Yt({rows:e=6,className:t}){return jsxRuntime.jsx("div",{className:ui.cn("w-full",t),children:Array.from({length:e}).map((o,r)=>jsxRuntime.jsx(cc,{},r))})}function Wn({keyword:e,chains:t,limit:o=50}){let r=react.useMemo(()=>({keyword:e,chains:t,limit:o}),[e,t,o]),{data:s,isLoading:n,isFetchingNextPage:i,hasNextPage:l,fetchNextPage:a}=react$1.useSearchTokensInfiniteQuery(r,{enabled:!!e});return {tokens:react.useMemo(()=>s?.pages.flatMap(m=>m.data)??[],[s]),isLoading:n,isFetchingNextPage:i,hasNextPage:l??false,fetchNextPage:a}}var Tc=56;function _n({onSelectToken:e,className:t,...o}){let{tokens:r,isLoading:s,isFetchingNextPage:n,hasNextPage:i,fetchNextPage:l}=Wn(o),a=react.useRef(null),{height:d}=hooks.useResizeObserver({ref:a}),m=react.useCallback(g=>g<r.length,[r]),c=react.useCallback(async()=>{i&&!n&&await l();},[i,n,l]),p=react.useMemo(()=>i?r.length+1:r.length,[r,i]),u=reactWindowInfiniteLoader.useInfiniteLoader({isRowLoaded:m,loadMoreRows:c,rowCount:p,threshold:5});return s?jsxRuntime.jsxs("div",{className:ui.cn("w-full",t),children:[jsxRuntime.jsx(Xt,{}),jsxRuntime.jsx(Yt,{})]}):r.length===0?jsxRuntime.jsxs("div",{className:ui.cn("w-full",t),children:[jsxRuntime.jsx(Xt,{}),jsxRuntime.jsx(vc,{})]}):jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Xt,{className:"flex-none"}),jsxRuntime.jsx("div",{className:"flex-auto min-h-0",ref:a,children:jsxRuntime.jsx(reactWindow.List,{style:{height:d},onRowsRendered:u,rowComponent:yc,rowCount:p,rowHeight:Tc,rowProps:{tokens:r,onSelectToken:e},overscanCount:5})})]})}function yc({index:e,style:t,tokens:o,onSelectToken:r}){let s=o[e];return s?jsxRuntime.jsx("div",{style:t,onClick:()=>r?.(s),children:jsxRuntime.jsx(Gt,{token:s})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui.Spinner,{size:"sm"})})}function vc(){let{t:e}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:"flex flex-col items-center justify-center py-16",children:[jsxRuntime.jsx(ui.EmptyIcon,{width:28,height:28,className:"text-neutral"}),jsxRuntime.jsx("p",{className:"mt-2 text-sm text-neutral",children:e("tokens.search.noResults")})]})}function Nc(e,t){return typeof e=="number"&&typeof t=="number"?e-t:String(e).localeCompare(String(t))}function et(e,t){let o=Object.keys(t??{})[0];if(!o)return e;let r=t?.[o];if(r!=="asc"&&r!=="desc")return e;let s=e.map((n,i)=>({token:n,index:i,value:Kt(n,o)}));return s.every(({value:n})=>n===void 0)?e:s.sort((n,i)=>{let l=n.value===void 0,a=i.value===void 0;if(l&&a)return n.index-i.index;if(l)return 1;if(a)return -1;let d=Nc(n.value,i.value);return d===0?n.index-i.index:r==="asc"?d:-d}).map(({token:n})=>n)}function eo({chain:e,resolution:t,filters:o,sortDirections:r,refetchInterval:s=12e3,deferUpdates:n=false,updateFlushInterval:i}){let l=react.useMemo(()=>({chain:e,resolution:t}),[e,t]),a=react.useRef(l),[d,m]=react.useState(true);react.useEffect(()=>{JSON.stringify(l)!==JSON.stringify(a.current)&&(m(true),a.current=l);},[l]);let[c,p]=react.useState([]),{data:u,isPending:g}=react$1.useTrendingTokensQuery(l,{refetchInterval:s});react.useEffect(()=>{u&&(p(T=>$t(T,u)),m(false));},[u]);let f=react.useCallback(T=>{p(C=>Re(C,T));},[]),{enqueueUpdates:x}=de({applyUpdates:f,paused:n,flushInterval:i});react$1.useTrendingTokensSubscription({chain:e},x),xe({chain:e,tokens:c,onUpdate:x});let b=react.useMemo(()=>!!(g||d),[g,d]),h=react.useMemo(()=>le(c,o),[c,o]);return {tokens:react.useMemo(()=>et(h,r),[h,r]),isLoading:b}}var Ac=types.Chain.ETHEREUM,Ic="24h",Hc=56;function zn({chains:e,onSelectToken:t,className:o}){let r=e?.length===1?e[0]:e?.[0]??Ac,{tokens:s,isLoading:n}=eo({chain:r,resolution:Ic});return jsxRuntime.jsx("div",{className:ui.cn("w-full flex flex-col overflow-hidden",o),children:n?jsxRuntime.jsx(Yt,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:s.map(i=>jsxRuntime.jsx("div",{style:{height:Hc},onClick:()=>t?.(i),children:jsxRuntime.jsx(Gt,{token:i,className:"h-full"})},i.address))})})}function Gn({onKeywordChange:e}){let[t,o]=react.useState(""),[r,s]=react.useState(""),{addHistory:n}=Qt(),i=hooks.useCallbackRef(e),l=hooks.useCallbackRef(n),a=react.useMemo(()=>utils.debounce(p=>{s(p),i(p),p&&l(p);},500),[i,l]),d=react.useCallback(p=>{o(p),a(p);},[a]),m=react.useCallback(p=>{a.cancel(),o(p),s(p),i(p),p&&l(p);},[a,i,l]),c=react.useCallback(()=>m(""),[m]);return {text:t,keyword:r,setText:d,setKeyword:m,clearKeyword:c}}function Jn({chains:e,onKeywordChange:t,onSelectToken:o,onEscape:r}){let{text:s,keyword:n,setText:i,setKeyword:l,clearKeyword:a}=Gn({onKeywordChange:t});return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsxRuntime.jsx(Mn,{value:s,onValueChange:i,onClear:a,onPaste:l,onEscape:r}),n?jsxRuntime.jsx(_n,{className:"flex-auto min-h-0",keyword:n,chains:e,onSelectToken:o}):jsxRuntime.jsxs("div",{className:"flex-auto min-h-0 flex flex-col overflow-hidden",children:[jsxRuntime.jsx(Fn,{onSelect:l}),jsxRuntime.jsx(zn,{className:"flex-auto min-h-0",chains:e,onSelectToken:o})]})]})}var zo="search";function AT({id:e=zo}){return jsxRuntime.jsx(uiScaffold.AsyncModal,{id:e,children:t=>jsxRuntime.jsx(zc,{...t})})}function zc({params:e,isOpen:t,onOpenChange:o,onResult:r}){let{t:s}=i18n.useTranslation(),{isMobile:n}=ui.useScreen(),i=react.useCallback(l=>{r(l);},[r]);return jsxRuntime.jsx(ui.StyledModal,{isOpen:t,onOpenChange:o,size:n?"full":"lg",hideCloseButton:true,backdrop:"blur",radius:"lg",children:jsxRuntime.jsxs(ui.ModalContent,{className:"w-full h-full",style:{borderRadius:n?void 0:14,border:n?void 0:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:n?void 0:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},children:[jsxRuntime.jsxs(ui.ModalHeader,{className:"sm:hidden flex items-center justify-between pt-4 pb-2",children:[jsxRuntime.jsx("span",{className:"text-base font-semibold",children:s("tokens.search.title")}),jsxRuntime.jsx(ui.Button,{isIconOnly:true,onPress:()=>o(false),size:"sm",className:"bg-transparent min-w-6 w-6 h-6",children:jsxRuntime.jsx(ui.XCloseIcon,{width:20,height:20})})]}),jsxRuntime.jsx(ui.ModalBody,{className:"p-4",children:jsxRuntime.jsx(Jn,{chains:e?.chains,onSelectToken:i,onEscape:()=>o(false)})})]})})}function BT({chains:e,onSelectToken:t,className:o}){let{t:r}=i18n.useTranslation(),{isDesktop:s}=ui.useScreen(),{onOpen:n,onClose:i}=uiScaffold.useAsyncModal(zo),l=hooks.useCallbackRef(t),a=hooks.useCallbackRef(async()=>{let m=await n({params:{chains:e}});m&&l(m);}),d=hooks.useCallbackRef(()=>{i();});return react.useEffect(()=>{let m=c=>{let p=document.activeElement,u=!!p&&(p.tagName==="INPUT"||p.tagName==="TEXTAREA"||p.getAttribute("contenteditable")==="true");c.key==="/"&&!u&&(c.preventDefault(),a()),c.key==="Escape"&&(c.preventDefault(),d());};return window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m);}},[a,d]),s?jsxRuntime.jsx(ui.Button,{size:"sm",radius:"full",onPress:a,variant:"bordered",startContent:jsxRuntime.jsx(ui.SearchIcon,{width:16,height:16,className:"text-foreground"}),endContent:jsxRuntime.jsx(ui.Kbd,{className:"min-w-6 justify-center text-xs text-foreground bg-content3 rounded-lg",children:"/"}),className:ui.cn("w-56 min-w-0 h-8 min-h-0 border-transparent hover:border-border bg-content2 pl-3 pr-1.5 text-neutral",o),children:r("tokens.search.placeholder")}):jsxRuntime.jsx(ui.Button,{size:"sm",radius:"full",isIconOnly:true,onPress:a,variant:"bordered",className:ui.cn("w-8 min-w-0 h-8 min-h-0 border-1 border-border bg-content2",o),children:jsxRuntime.jsx(ui.SearchIcon,{width:16,height:16,className:"text-foreground"})})}function Ee(e){return e==null||e===""?"--":utils.formatPercent(Number(e)/100)}function ke(e,t=4,o=4){return e?e.length<=t+o+1?e:`${e.slice(0,t)}\u2026${e.slice(-o)}`:"--"}function Pe(e,t=Date.now()){if(e==null)return "--";let o=typeof e=="string"||typeof e=="number"?new Date(e):e,r=typeof t=="number"?new Date(t):t,s=Math.max(0,Math.floor((r.getTime()-o.getTime())/1e3));if(s<60)return `${s}s`;let n=Math.floor(s/60);if(n<60)return `${n}m`;let i=Math.floor(n/60);if(i<24)return `${i}h`;let l=Math.floor(i/24);if(l<30)return `${l}d`;let a=Math.floor(l/30);return a<12?`${a}mo`:`${Math.floor(l/365)}y`}function M(e,t){let{data:o,isLoading:r}=react$1.useTokenQuery({chain:e,address:t}),[s,n]=react.useState(o);return react.useEffect(()=>{o&&n(o);},[o]),react$1.useTokenSubscription({chain:e,address:t},i=>{i?.length&&n(l=>{if(!l)return l;let a=l;for(let d of i)a=X(a,d);return a});}),{token:s,isLoading:r}}function tt({label:e,totalFormatted:t,buysFormatted:o,sellsFormatted:r,totalValue:s=0,buysValue:n=0,className:i}){let l=new utils.SafeBigNumber(s??0),a=new utils.SafeBigNumber(n??0),d=l.eq(0)?0:a.div(l).times(100).toNumber();return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-1",i),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-xs text-default-500",children:e}),jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:t})]}),jsxRuntime.jsx(ui.Progress,{size:"sm",value:d,classNames:{track:"bg-bearish/40",indicator:"bg-bullish"},"aria-label":`${e} buy share`}),jsxRuntime.jsxs("div",{className:"flex justify-between gap-4 text-[10px]",children:[jsxRuntime.jsxs("span",{className:"text-bullish",children:["Buys: ",o]}),jsxRuntime.jsxs("span",{className:"text-bearish",children:["Sells: ",r]})]})]})}function os({token:e,actions:t,dataStrip:o,className:r,onCopyAddress:s}){let n=e?.address;return jsxRuntime.jsxs("div",{className:ui.cn("flex w-full flex-wrap items-center gap-4 px-4 py-3",r),children:[jsxRuntime.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[e&&jsxRuntime.jsx(fe,{token:e,radius:"lg",className:"h-10 w-10"}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col gap-0.5",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("span",{className:"truncate text-base font-semibold text-foreground",children:e?.symbol??"--"}),jsxRuntime.jsx("span",{className:"truncate text-xs text-default-400",children:e?.name})]}),n&&jsxRuntime.jsxs("button",{type:"button",onClick:()=>s?.(n),className:"flex items-center gap-1 text-[11px] text-default-400 transition-colors hover:text-foreground",title:n,children:[ke(n,6,6),jsxRuntime.jsx(ui.CopyIcon,{width:12,height:12})]})]})]}),o&&jsxRuntime.jsx("div",{className:"flex-1 min-w-0",children:o}),t&&jsxRuntime.jsx("div",{className:"ml-auto flex items-center gap-2",children:t})]})}function rs(e,t){return M(e,t)}function ss({price:e,marketCap:t,volume:o,holdersCount:r,socialMedia:s,className:n}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-x-6 gap-y-3",n),children:[e,jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center gap-x-6 gap-y-3",children:[t,o,r]}),jsxRuntime.jsx("div",{className:"ml-auto",children:s})]})}function Ry(e,t){return M(e,t)}function as({holders:e,top10HoldingsRatio:t,top100HoldingsRatio:o,className:r}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e!=null?utils.formatAmount(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ee(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ee(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"Holders / Top10 / Top100"})]})}function ls(e,t){return M(e,t)}function ds({chain:e,address:t,className:o}){let{token:r}=ls(e,t);return jsxRuntime.jsx(as,{holders:r?.marketData?.holders,top10HoldingsRatio:r?.marketData?.top10HoldingsRatio,top100HoldingsRatio:r?.marketData?.top100HoldingsRatio,className:o})}function ps({marketCapInUsd:e,tvlInUsd:t,createdAt:o,className:r}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t?utils.formatAmountUSDCompact(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Pe(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"MC / Liq / Age"})]})}function us(e,t){return M(e,t)}function fs({chain:e,address:t,className:o}){let{token:r}=us(e,t);return jsxRuntime.jsx(ps,{marketCapInUsd:r?.marketData?.marketCapInUsd,tvlInUsd:r?.marketData?.tvlInUsd,createdAt:r?.createdAt,className:o})}function ks({priceInUsd:e,price24hAgoInUsd:t,className:o}){let{bearish:r,priceChange:s}=react.useMemo(()=>{if(!e||!t)return {bearish:false,priceChange:void 0};let n=new utils.SafeBigNumber(e),i=new utils.SafeBigNumber(t);return i.lte(0)?{bearish:false,priceChange:void 0}:{bearish:n.lt(i),priceChange:n.minus(i).div(i).abs().toNumber()}},[e,t]);return jsxRuntime.jsxs("div",{className:ui.cn("group flex flex-col gap-1",o),"data-bearish":r,children:[jsxRuntime.jsx("div",{className:"text-base font-medium leading-none text-bullish group-data-[bearish=true]:text-bearish",children:e?utils.formatPriceUSD(e):"--"}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-default-400",children:"24h"}),jsxRuntime.jsx("span",{className:"text-bullish group-data-[bearish=true]:text-bearish",children:s!=null?utils.formatPercent(s):"--"})]})]})}function bs(e,t){return M(e,t)}function hs({chain:e,address:t,className:o}){let{token:r}=bs(e,t);return jsxRuntime.jsx(ks,{priceInUsd:r?.marketData?.priceInUsd,price24hAgoInUsd:r?.stats?.["24h"]?.openPriceInUsd,className:o})}function Nm(e,t){switch(e){case "website":return jsxRuntime.jsx(ui.WebsiteIcon,{width:t,height:t});case "twitter":return jsxRuntime.jsx(ui.TwitterIcon,{width:t,height:t});case "telegram":return jsxRuntime.jsx(ui.TelegramIcon,{width:t,height:t});case "discord":return jsxRuntime.jsx(ui.DiscordIcon,{width:t,height:t});default:return jsxRuntime.jsx("span",{className:"text-[9px] font-medium uppercase",children:e.slice(0,2)})}}function Ts({socials:e,className:t,iconSize:o=16}){if(!e)return null;let s=["website","twitter","telegram","discord","github","reddit","youtube","medium"].filter(n=>!!e[n]);return s.length===0?null:jsxRuntime.jsx("div",{className:ui.cn("flex items-center gap-3",t),children:s.map(n=>jsxRuntime.jsx("a",{href:e[n],target:"_blank",rel:"noreferrer noopener",className:"flex items-center justify-center text-default-400 transition-colors hover:text-foreground",style:{width:o,height:o},children:Nm(n,o)},n))})}function ys(e,t){return M(e,t)}function vs({chain:e,address:t,className:o,iconSize:r}){let{token:s}=ys(e,t);return jsxRuntime.jsx(Ts,{socials:s?.socialMedias,className:o,iconSize:r})}function Cs({volumesInUsd:e,trades:t,traders:o,className:r}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t!=null?utils.formatAmount(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:o!=null?utils.formatAmount(o):"--"})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"24h Vol / Txs / Traders"})]})}function ws(e,t){return M(e,t)}function Ls({chain:e,address:t,className:o}){let{token:r}=ws(e,t),s=r?.stats?.["24h"];return jsxRuntime.jsx(Cs,{volumesInUsd:s?.volumesInUsd,trades:s?.trades,traders:s?.traders,className:o})}function Ps({chain:e,address:t,className:o}){return jsxRuntime.jsx(ss,{className:o,price:jsxRuntime.jsx(hs,{chain:e,address:t}),marketCap:jsxRuntime.jsx(fs,{chain:e,address:t}),volume:jsxRuntime.jsx(Ls,{chain:e,address:t}),holdersCount:jsxRuntime.jsx(ds,{chain:e,address:t}),socialMedia:jsxRuntime.jsx(vs,{chain:e,address:t})})}function c0({chain:e,address:t,actions:o,dataStrip:r,className:s,onCopyAddress:n}){let{token:i}=rs(e,t);return jsxRuntime.jsx(os,{token:i,actions:o,dataStrip:r===void 0?jsxRuntime.jsx(Ps,{chain:e,address:t}):r,className:s,onCopyAddress:n})}var Am=[{value:"holdingUsd",label:"Value"},{value:"lastActiveAt",label:"Last active"}];function Is({holders:e,isLoading:t,sortBy:o,onSortByChange:r,onlyTracked:s=false,onOnlyTrackedChange:n,onLoadMore:i,hasMore:l,now:a=Date.now(),wellKnownAddresses:d,className:m,renderAddress:c}){let p=s?e.filter(u=>u.tags&&u.tags.length>0):e;return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",m),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Holders"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:s,onChange:u=>n?.(u.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Am.map(u=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(u.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",o===u.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:u.label},u.value))})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[640px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[30%] px-3 py-2 text-left font-normal",children:"Wallet"}),jsxRuntime.jsx("th",{className:"w-[20%] px-3 py-2 text-left font-normal",children:"Tags"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Value"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"%"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"First held"}),jsxRuntime.jsx("th",{className:"w-[13%] px-3 py-2 text-right font-normal",children:"Last active"})]})}),jsxRuntime.jsxs("tbody",{children:[p.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No holders"})}),p.map(u=>jsxRuntime.jsx(Im,{holder:u,now:a,wellKnownAddresses:d,renderAddress:c},u.address)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),l&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:i,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Im({holder:e,now:t,wellKnownAddresses:o,renderAddress:r}){let s=o?.[e.address],n=react.useMemo(()=>r?r(e.address):s?jsxRuntime.jsx("span",{className:"rounded bg-default-100 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-default-600",children:s}):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ke(e.address,6,6)}),[e.address,r,s]);return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:n}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Dt,{tags:e.tags,max:3})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:utils.formatAmountUSDCompact(e.amountInUsd)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:Ee(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.startHoldingAt?Pe(e.startHoldingAt,t):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?Pe(e.lastActiveAt,t):"--"})]})}function Ms({chain:e,address:t,limit:o=50,initialSortBy:r="holdingUsd"}){let[s,n]=react.useState(r),[i,l]=react.useState(void 0),[a,d]=react.useState([]),m=react.useCallback(()=>{l(void 0),d([]);},[]),c=react.useCallback(T=>{T!==s&&(n(T),m());},[s,m]);react.useEffect(()=>{m();},[e,t,m]);let p=react.useMemo(()=>({chain:e,address:t,cursor:i,limit:o,sortBy:s}),[e,t,i,o,s]),{data:u,isPending:g,isFetching:f}=react$1.useTokenHoldersQuery(p);react.useEffect(()=>{u&&d(T=>i==null?[u]:T[T.length-1]?.endCursor===u.endCursor?T:[...T,u]);},[u,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let x=react.useMemo(()=>a.flatMap(T=>T.data),[a]),b=a[a.length-1],h=!!(b?.hasNext&&b.endCursor),k=react.useCallback(()=>{!b?.endCursor||!b.hasNext||l(b.endCursor);},[b]);return {holders:x,isLoading:g||f,sortBy:s,setSortBy:c,hasMore:h,loadMore:k}}function I0({chain:e,address:t,limit:o,initialSortBy:r,initialOnlyTracked:s=false,wellKnownAddresses:n,className:i,renderAddress:l}){let[a,d]=react.useState(s),{holders:m,isLoading:c,sortBy:p,setSortBy:u,hasMore:g,loadMore:f}=Ms({chain:e,address:t,limit:o,initialSortBy:r});return jsxRuntime.jsx(Is,{holders:m,isLoading:c,sortBy:p,onSortByChange:u,onlyTracked:a,onOnlyTrackedChange:d,wellKnownAddresses:n,hasMore:g,onLoadMore:f,className:i,renderAddress:l})}var Em=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Bm=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],Wm=[{value:"all",label:"All"},{value:"dev",label:"DEV"},{value:"tracked",label:"TRACKED"},{value:"you",label:"YOU"}];function Us({activities:e,isLoading:t,sortBy:o,onSortByChange:r,typeFilter:s="all",onTypeFilterChange:n,traderFilter:i="all",onTraderFilterChange:l,youWalletAddress:a,currency:d="usd",onCurrencyChange:m,onLoadMore:c,hasMore:p,now:u=Date.now(),nativeDecimals:g=9,nativeSymbol:f="SOL",className:x,onRowClick:b}){let h=_m(e,i,a);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",x),children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[Bm.map(k=>jsxRuntime.jsx("button",{type:"button",onClick:()=>n?.(k.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",s===k.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:k.label},k.value)),jsxRuntime.jsx("span",{className:"mx-1 h-3 w-px bg-default-200","aria-hidden":true}),Wm.map(k=>{let T=i===k.value,C=k.value==="you"&&!a;return jsxRuntime.jsx("button",{type:"button",disabled:C,onClick:()=>l?.(k.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",T?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground",C&&"cursor-not-allowed opacity-50"),children:k.label},k.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx($m,{value:d,nativeSymbol:f,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Em.map(k=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(k.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",o===k.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:k.label},k.value))})]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[780px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-left font-normal",children:"Side"}),jsxRuntime.jsx("th",{className:"w-[25%] px-3 py-2 text-left font-normal",children:"Trader"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Amount"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"USD"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Price"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Gas"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Age"})]})}),jsxRuntime.jsxs("tbody",{children:[h.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-8 text-center text-default-400",children:"No activities"})}),h.map(k=>jsxRuntime.jsx(zm,{activity:k,now:u,nativeDecimals:g,nativeSymbol:f,currency:d,onRowClick:b},k.txHash)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),p&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:c,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Vm(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function _m(e,t,o){if(t==="all")return e;if(t==="you"){if(!o)return [];let s=o.toLowerCase();return e.filter(n=>n.walletAddress?.toLowerCase()===s)}if(t==="dev")return e.filter(s=>s.traderTags?.some(n=>n==="dev"));let r=new Set(["kol","smart","bluechip"]);return e.filter(s=>s.traderTags?.some(n=>r.has(n)))}function $m({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[22px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Km(e,t,o){if(!e)return "--";let r=Number(e)/Math.pow(10,t);return Number.isFinite(r)?`${utils.formatAmount(r)} ${o}`:"--"}function zm({activity:e,now:t,nativeDecimals:o,nativeSymbol:r,currency:s,onRowClick:n}){let i=Vm(e),l=e.type==="buy"?"Buy":e.type==="sell"?"Sell":e.type.replace(/_/g," "),a=e.type==="buy"?"text-bullish":e.type==="sell"?"text-bearish":"text-default-500";return jsxRuntime.jsxs("tr",{className:ui.cn("border-b border-default-50 hover:bg-default-50/60",n&&"cursor-pointer"),onClick:n?()=>n(e):void 0,children:[jsxRuntime.jsx("td",{className:ui.cn("px-3 py-2 align-middle font-medium capitalize",a),children:l}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsxs("div",{className:"flex flex-col gap-0.5",children:[jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ke(e.walletAddress,6,6)}),jsxRuntime.jsx(Br,{tags:e.traderTags,max:2})]})}),jsxRuntime.jsxs("td",{className:"px-3 py-2 text-right align-middle",children:[utils.formatAmount(i.amount)," ",i.symbol]}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s==="native"&&i.amountInNative?`${utils.formatAmount(i.amountInNative)} ${i.symbol}`:i.amountInUsd?utils.formatAmountUSDCompact(i.amountInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:i.priceInUsd?`$${utils.formatPrice(i.priceInUsd)}`:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:Km(e.gasFee,o,r)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:Pe(e.time,t)})]})}function Es({chain:e,address:t,limit:o=50,initialSortBy:r="timestamp",initialTypeFilter:s="all"}){let[n,i]=react.useState(r),[l,a]=react.useState(s),[d,m]=react.useState(void 0),[c,p]=react.useState([]),[u,g]=react.useState([]),f=react.useCallback(()=>{m(void 0),p([]),g([]);},[]),x=react.useCallback(O=>{O!==n&&(i(O),f());},[n,f]),b=react.useCallback(O=>{O!==l&&(a(O),f());},[l,f]);react.useEffect(()=>{f();},[e,t,f]);let h=l==="all"?void 0:l,k=react.useMemo(()=>({chain:e,address:t,cursor:d,limit:o,sortBy:n,type:h}),[e,t,d,o,n,h]),{data:T,isPending:C,isFetching:y}=react$1.useTokenActivitiesQuery(k);react.useEffect(()=>{T&&p(O=>d==null?[T]:O[O.length-1]?.endCursor===T.endCursor?O:[...O,T]);},[T,d]);let L=n==="timestamp"&&l==="all"&&d==null;react$1.useTokenActivitiesSubscription({chain:e,address:t},O=>{!L||!O?.length||g(ie=>{let D=new Set(ie.map(_=>_.txHash)),H=O.filter(_=>!D.has(_.txHash));return H.length===0?ie:[...H,...ie].slice(0,100)});});let W=react.useMemo(()=>{let O=c.flatMap(H=>H.data);if(!L||u.length===0)return O;let ie=new Set(O.map(H=>H.txHash));return [...u.filter(H=>!ie.has(H.txHash)),...O]},[c,u,L]),I=c[c.length-1],te=!!(I?.hasNext&&I.endCursor),Se=react.useCallback(()=>{!I?.endCursor||!I.hasNext||m(I.endCursor);},[I]);return {activities:W,isLoading:C||y,sortBy:n,setSortBy:x,typeFilter:l,setTypeFilter:b,hasMore:te,loadMore:Se}}function J0({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:s,initialTraderFilter:n="all",initialCurrency:i="usd",youWalletAddress:l,nativeDecimals:a,nativeSymbol:d,className:m,onRowClick:c}){let[p,u]=react.useState(n),[g,f]=react.useState(i),{activities:x,isLoading:b,sortBy:h,setSortBy:k,typeFilter:T,setTypeFilter:C,hasMore:y,loadMore:L}=Es({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:s});return jsxRuntime.jsx(Us,{activities:x,isLoading:b,sortBy:h,onSortByChange:k,typeFilter:T,onTypeFilterChange:C,traderFilter:p,onTraderFilterChange:u,youWalletAddress:l,currency:g,onCurrencyChange:f,hasMore:y,onLoadMore:L,className:m,nativeDecimals:a,nativeSymbol:d,onRowClick:c})}function Ws({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.traders??0,n=r?.buyers??0,i=r?.sellers??0;return jsxRuntime.jsx(tt,{className:o,label:`Traders (${t})`,totalFormatted:utils.formatAmount(s),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:s,buysValue:n})}function Vs(e,t){return M(e,t)}function mN({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=Vs(e,t);return jsxRuntime.jsx(Ws,{stats:s?.stats,resolution:o,className:r})}function _s({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.trades??0,n=r?.buys??0,i=r?.sells??0;return jsxRuntime.jsx(tt,{className:o,label:`Transactions (${t})`,totalFormatted:utils.formatAmount(s),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:s,buysValue:n})}function $s(e,t){return M(e,t)}function wN({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=$s(e,t);return jsxRuntime.jsx(_s,{stats:s?.stats,resolution:o,className:r})}function Ks({stats:e,resolution:t,className:o}){let r=e?.[t],s=r?.volumesInUsd??"0",n=r?.buyVolumesInUsd??"0",i=r?.sellVolumesInUsd??"0";return jsxRuntime.jsx(tt,{className:o,label:`Volume (${t})`,totalFormatted:utils.formatAmountUSDCompact(s),buysFormatted:utils.formatAmountUSDCompact(n),sellsFormatted:utils.formatAmountUSDCompact(i),totalValue:s,buysValue:n})}function zs(e,t){return M(e,t)}function VN({chain:e,address:t,resolution:o="24h",className:r}){let{token:s}=zs(e,t);return jsxRuntime.jsx(Ks,{stats:s?.stats,resolution:o,className:r})}function qs({security:e,externalUrl:t,externalLabel:o,className:r}){let s=[{title:"Transfer fee",value:e?.hasTransferFee,safeWhen:false,description:"Whether the token charges a fee on transfer."},{title:"Fee not upgradable",value:e?.isTransferFeeUpgradable,safeWhen:false,description:"Whether the transfer fee can be raised by the token owner."},{title:"Transferable",value:e?.isTransferable,safeWhen:true,description:"Whether token holders can freely transfer the token."},{title:"Not freezable",value:e?.isFreezable,safeWhen:false,description:"Whether the token authority can freeze holder balances."},{title:"Not closable",value:e?.isClosable,safeWhen:false,description:"Whether the token program can be closed by its owner."}],n=s.every(i=>i.value!==void 0&&i.value===i.safeWhen);return jsxRuntime.jsxs("section",{className:ui.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Security"}),jsxRuntime.jsx("span",{className:ui.cn("text-xs",e===void 0?"text-default-400":n?"text-success-500":"text-danger-500"),children:e===void 0?"--":n?"Safe":"Review"})]}),jsxRuntime.jsx("div",{className:"flex flex-col",children:s.map(i=>jsxRuntime.jsx(tp,{...i},i.title))}),t&&o&&jsxRuntime.jsx("div",{className:"flex justify-center",children:jsxRuntime.jsx("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:"text-xs text-default-400 transition-colors hover:text-foreground",children:o})})]})}function tp({title:e,value:t,safeWhen:o,description:r}){let s=t!==void 0&&t===o,n=t===void 0?"--":s?"OK":"Risk";return jsxRuntime.jsxs("div",{className:"flex h-8 items-center justify-between gap-2",children:[jsxRuntime.jsx("span",{className:"text-xs text-default-500",title:r,children:e}),jsxRuntime.jsx("span",{className:ui.cn("text-xs",t===void 0?"text-default-400":s?"text-success-500":"text-danger-500"),children:n})]})}function Qs(e,t){let{data:o,isLoading:r}=react$1.useTokenSecurityQuery({chain:e,address:t});return {security:o,isLoading:r}}function tS({chain:e,address:t,externalUrl:o,externalLabel:r,className:s}){let{security:n}=Qs(e,t);return jsxRuntime.jsx(qs,{security:n,externalUrl:o,externalLabel:r,className:s})}function Js({token:e,className:t}){return e?jsxRuntime.jsxs("section",{className:ui.cn("flex w-full flex-col gap-2",t),children:[jsxRuntime.jsxs("div",{className:"text-sm font-medium text-foreground",children:["About ",e.symbol]}),e.description?jsxRuntime.jsx("p",{className:"whitespace-pre-line text-xs text-default-500",children:e.description}):jsxRuntime.jsx("p",{className:"text-xs text-default-400",children:"No description provided."})]}):null}function Ys(e,t){return M(e,t)}function gS({chain:e,address:t,className:o}){let{token:r}=Ys(e,t);return jsxRuntime.jsx(Js,{token:r,className:o})}function ei({liquidities:e,totalTvlInUsd:t,collapseAt:o=3,className:r,onPoolClick:s}){let[n,i]=react.useState(!e||e.length<=o),l=react.useCallback(()=>i(a=>!a),[]);return jsxRuntime.jsxs("section",{className:ui.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Liquidity"}),t&&jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:utils.formatAmountUSDCompact(t)})]}),(!e||e.length===0)&&jsxRuntime.jsx("div",{className:"py-4 text-center text-xs text-default-400",children:"No pools"}),e&&e.length>0&&jsxRuntime.jsxs("div",{className:"flex flex-col gap-2",children:[e.map((a,d)=>jsxRuntime.jsxs("div",{className:ui.cn("flex h-10 w-full items-center justify-between overflow-hidden text-xs",d>=o&&!n&&"hidden",s&&"cursor-pointer hover:bg-default-50"),onClick:s?()=>s(a):void 0,children:[jsxRuntime.jsxs("div",{className:"flex flex-col gap-0.5",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:a.protocolFamily??a.protocolName??"Unknown"}),a.poolAddress&&jsxRuntime.jsxs("span",{className:"font-mono text-[10px] text-default-400",children:["Pool: ",ke(a.poolAddress,6,6)]})]}),jsxRuntime.jsx("div",{className:"text-default-500",children:utils.formatAmountUSDCompact(a.tvlInUsd??0)})]},a.poolAddress??`${a.protocolFamily}-${d}`)),e.length>o&&jsxRuntime.jsx("div",{className:"flex justify-center pt-1",children:jsxRuntime.jsx("button",{type:"button",onClick:l,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:n?"Show less":"Show more"})})]})]})}function ti(e,t){return M(e,t)}function HS({chain:e,address:t,collapseAt:o,className:r,onPoolClick:s}){let{token:n}=ti(e,t);return jsxRuntime.jsx(ei,{liquidities:n?.liquidities,totalTvlInUsd:n?.marketData?.tvlInUsd,collapseAt:o,className:r,onPoolClick:s})}function oi({cexes:e,collapseAt:t=4,className:o}){let[r,s]=react.useState(!e||e.length<=t),n=react.useCallback(()=>s(i=>!i),[]);return !e||e.length===0?null:jsxRuntime.jsxs("section",{className:ui.cn("w-full",o),children:[jsxRuntime.jsx("div",{className:"text-sm font-medium text-foreground",children:"CEX listings"}),jsxRuntime.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:e.map((i,l)=>{let a=l>=t&&!r,d=jsxRuntime.jsx(ui.Chip,{startContent:i.logo?jsxRuntime.jsx(ui.Image,{src:i.logo,width:20,height:20,alt:i.name}):void 0,className:ui.cn("bg-default-100 text-xs",a&&"hidden"),children:i.name},i.id);return i.url?jsxRuntime.jsx("a",{href:i.url,target:"_blank",rel:"noreferrer noopener",className:ui.cn(a&&"hidden"),children:d},i.id):d})}),e.length>t&&jsxRuntime.jsx("div",{className:"mt-3 flex justify-center",children:jsxRuntime.jsx("button",{type:"button",onClick:n,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:r?"Show less":"Show more"})})]})}function ri(e){return {cexes:e}}function qS({cexes:e,collapseAt:t,className:o}){let{cexes:r}=ri(e);return jsxRuntime.jsx(oi,{cexes:r,collapseAt:t,className:o})}function si({categories:e,collapseAt:t=4,className:o,onCategoryClick:r}){let[s,n]=react.useState(!e||e.length<=t),i=react.useCallback(()=>n(l=>!l),[]);return !e||e.length===0?null:jsxRuntime.jsxs("section",{className:ui.cn("w-full",o),children:[jsxRuntime.jsx("div",{className:"text-sm font-medium text-foreground",children:"Categories"}),jsxRuntime.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:e.map((l,a)=>{let d=a>=t&&!s;return jsxRuntime.jsx(ui.Chip,{size:"sm",className:ui.cn("bg-default-100",d&&"hidden",r&&"cursor-pointer"),onClick:r?()=>r(l):void 0,children:l},l)})}),e.length>t&&jsxRuntime.jsx("div",{className:"mt-3 flex justify-center",children:jsxRuntime.jsx("button",{type:"button",onClick:i,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:s?"Show less":"Show more"})})]})}function ii(e,t){return M(e,t)}function aC({chain:e,address:t,collapseAt:o,className:r,onCategoryClick:s}){let{token:n}=ii(e,t);return jsxRuntime.jsx(si,{categories:n?.tags,collapseAt:o,className:r,onCategoryClick:s})}var ai=["5m","1h","4h","24h"];function li({stats:e,resolution:t,className:o}){let r=e?.[t],s=new utils.SafeBigNumber(r?.buyVolumesInUsd??0),n=new utils.SafeBigNumber(r?.sellVolumesInUsd??0),i=s.plus(n),l=s.minus(n),a=i.eq(0)?50:Math.min(100,Math.max(0,s.div(i).times(100).toNumber())),d=[{label:`${t} Vol`,value:utils.formatAmountUSDCompact(i.toString()),className:"text-foreground"},{label:"Buys",value:utils.formatAmountUSDCompact(s.toString()),className:"text-bullish"},{label:"Sells",value:utils.formatAmountUSDCompact(n.toString()),className:"text-bearish"},{label:"Net Vol.",value:utils.formatAmountUSDCompact(l.abs().toString()),className:l.gte(0)?"text-bullish":"text-bearish"}];return jsxRuntime.jsxs("div",{className:ui.cn("flex h-full w-full flex-col",o),children:[jsxRuntime.jsx("div",{className:"grid flex-1 grid-cols-4 items-center",children:d.map(m=>jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] px-2",children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:m.label}),jsxRuntime.jsx("span",{className:ui.cn("text-[13px] font-medium leading-none tabular-nums",m.className),children:m.value})]},m.label))}),jsxRuntime.jsx("div",{className:"relative h-[2px] w-full overflow-hidden bg-bearish",children:jsxRuntime.jsx("div",{className:"absolute inset-y-0 left-0 bg-bullish transition-[width] duration-200 ease-out",style:{width:`${a}%`}})})]})}function di({stats:e,resolutions:t,className:o}){return jsxRuntime.jsx("div",{className:ui.cn("grid h-full w-full grid-cols-4 items-center",o),children:t.map(r=>{let n=e?.[r]?.priceChange,i=n?new utils.SafeBigNumber(n):void 0,l=i?i.gte(0):void 0,a=r,d=i?utils.formatPercent(i,{showPlusGtThanZero:true}):"\u2014";return jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] px-2",children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:a}),jsxRuntime.jsx("span",{className:ui.cn("text-[13px] font-medium leading-none tabular-nums",l===void 0?"text-foreground":l?"text-bullish":"text-bearish"),children:d})]},r)})})}function ci({chain:e,address:t}){let{data:o,isLoading:r}=react$1.useTokenStatsQuery({chain:e,address:t});return {stats:o,isLoading:r}}function NC({chain:e,address:t,baseResolution:o="5m",hoverResolutions:r=ai,height:s=64,className:n}){let{stats:i}=ci({chain:e,address:t});return jsxRuntime.jsx(uiScaffold.StatsFlipPanel,{className:n,height:s,base:jsxRuntime.jsx(li,{stats:i,resolution:o}),hover:jsxRuntime.jsx(di,{stats:i,resolutions:r})})}function mi({positions:e,isLoading:t,hasMore:o,onLoadMore:r,currency:s="usd",onCurrencyChange:n,showHidden:i=false,onShowHiddenChange:l,nativeSymbol:a="Native",renderActions:d,className:m}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",m),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Positions"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:i,onChange:c=>l?.(c.target.checked)}),"Show Hidden"]})]}),jsxRuntime.jsx(Lp,{value:s,nativeSymbol:a,onChange:n})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[720px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[26%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Bought"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Sold"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Remaining"}),jsxRuntime.jsx("th",{className:"w-[18%] px-3 py-2 text-right font-normal",children:"PnL"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"Actions"})]})}),jsxRuntime.jsxs("tbody",{children:[e.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No open positions"})}),e.map(c=>jsxRuntime.jsx(Pp,{position:c,currency:s,renderActions:d},`${c.chain}:${c.address}`)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),o&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:r,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Lp({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Pp({position:e,currency:t,renderActions:o}){let{bought:r,sold:s,remaining:n,pnl:i}=react.useMemo(()=>Rp(e,t),[e,t]),l=jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui.Avatar,{src:e.image??void 0,name:(e.symbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:e.name})]})]});return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:l}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:n}),jsxRuntime.jsx("td",{className:ui.cn("px-3 py-2 text-right align-middle font-medium",i.isPositive===void 0?"text-default-400":i.isPositive?"text-bullish":"text-bearish"),children:jsxRuntime.jsxs("div",{className:"flex flex-col items-end leading-tight",children:[jsxRuntime.jsx("span",{children:i.amount}),i.ratio?jsxRuntime.jsx("span",{className:"text-[10px]",children:i.ratio}):null]})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle",children:o?o(e):jsxRuntime.jsx("span",{className:"text-default-400",children:"--"})})]})}function Rp(e,t){let o=t==="usd"?e.buyVolumesInUsd:e.buyVolumes,r=t==="usd"?e.sellVolumesInUsd:e.sellVolumes,s=t==="usd"?e.amountInUsd:e.amount,n=e.totalProfitInUsd,i=t==="usd"?utils.formatAmountUSDCompact(o??0):utils.formatAmount(o??0),l=t==="usd"?utils.formatAmountUSDCompact(r??0):utils.formatAmount(r??0),a=t==="usd"?utils.formatAmountUSDCompact(s??0):utils.formatAmount(s??0),d=n?new utils.SafeBigNumber(n):void 0,m=d?d.gte(0):void 0,c=d?(m?"+":"")+utils.formatAmountUSDCompact(d.toString()):"--",p=e.totalProfitRatio?utils.formatPercent(e.totalProfitRatio,{showPlusGtThanZero:true}):void 0;return {bought:i,sold:l,remaining:a,pnl:{amount:c,ratio:p,isPositive:m}}}function fi({chain:e,wallet:t,limit:o=50,initialShowHidden:r=false}){let[s,n]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(r);react.useEffect(()=>{n(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t??"",cursor:s,limit:o,positionState:"open"}),[e,t,s,o]),{data:c,isPending:p,isFetching:u}=react$1.useWalletTokenPositionsQuery(m,{enabled:!!t});react.useEffect(()=>{c&&l(h=>s==null?[c]:h[h.length-1]?.endCursor===c.endCursor?h:[...h,c]);},[c,s]);let g=react.useMemo(()=>i.flatMap(h=>h.portfolios),[i]),f=i[i.length-1],x=!!(f?.hasNext&&f.endCursor),b=react.useCallback(()=>{!f?.endCursor||!f.hasNext||n(f.endCursor);},[f]);return {positions:g,isLoading:!!t&&(p||u),hasMore:x,loadMore:b,showHidden:a,setShowHidden:d}}function VC({chain:e,wallet:t,limit:o,initialCurrency:r="usd",nativeSymbol:s,renderActions:n,className:i}){let[l,a]=react.useState(r),{positions:d,isLoading:m,hasMore:c,loadMore:p,showHidden:u,setShowHidden:g}=fi({chain:e,wallet:t,limit:o});return jsxRuntime.jsx(mi,{className:i,positions:d,isLoading:m,hasMore:c,onLoadMore:p,currency:l,onCurrencyChange:a,showHidden:u,onShowHiddenChange:g,nativeSymbol:s,renderActions:n})}function gi({orders:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:s,stateFilter:n,onStateFilterChange:i,onlyThisToken:l=false,onOnlyThisTokenChange:a,tokenSymbol:d,currency:m="usd",onCurrencyChange:c,nativeSymbol:p="Native",onCancelAll:u,renderActions:g,className:f}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",f),children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"active",label:"Active Orders"},{k:"history",label:"Order History"}].map(x=>jsxRuntime.jsx("button",{type:"button",onClick:()=>i(x.k),className:ui.cn("rounded px-2 transition-colors",n===x.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:x.label},x.k))}),d?jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:l,onChange:x=>a?.(x.target.checked)}),"Only ",d]}):null]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[u?jsxRuntime.jsx("button",{type:"button",onClick:u,className:"rounded px-2 py-1 text-[11px] text-bearish transition-colors hover:bg-default-100",children:"Cancel All"}):null,jsxRuntime.jsx(Dp,{value:m,nativeSymbol:p,onChange:c})]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[760px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[22%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-left font-normal",children:"Type"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Amount"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Current MC"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Target MC"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Settings"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"Action"})]})}),jsxRuntime.jsxs("tbody",{children:[o?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-10 text-center text-default-400",children:"Limit orders are coming soon."})}):e.length===0&&!t?jsxRuntime.jsx("tr",{children:jsxRuntime.jsxs("td",{colSpan:7,className:"py-10 text-center text-default-400",children:["No ",n==="active"?"active":"historical"," orders"]})}):e.map(x=>jsxRuntime.jsx(Ep,{order:x,currency:m,renderActions:g},x.id)),t&&!o&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),!o&&r&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:s,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Dp({value:e,nativeSymbol:t,onChange:o}){return jsxRuntime.jsx("div",{className:"flex h-[24px] items-center rounded bg-default-100 p-[2px] text-[11px]",children:[{k:"usd",label:"USD"},{k:"native",label:t}].map(s=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(s.k),className:ui.cn("rounded px-2 transition-colors",e===s.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:s.label},s.k))})}function Ep({order:e,currency:t,renderActions:o}){let r=react.useMemo(()=>t==="usd"&&e.amountInUsd?utils.formatAmountUSDCompact(e.amountInUsd):utils.formatAmount(e.amount),[t,e.amount,e.amountInUsd]),s=e.side==="buy"?"Buy":"Sell",n=e.side==="buy"?"text-bullish":"text-bearish";return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui.Avatar,{src:e.tokenImage??void 0,name:(e.tokenSymbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.tokenSymbol??"--"})]})}),jsxRuntime.jsx("td",{className:ui.cn("px-3 py-2 align-middle font-medium",n),children:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:e.currentMarketCapInUsd?utils.formatAmountUSDCompact(e.currentMarketCapInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:e.targetMarketCapInUsd?utils.formatAmountUSDCompact(e.targetMarketCapInUsd):e.targetPriceInUsd?utils.formatAmountUSDCompact(e.targetPriceInUsd):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.slippage!=null?`Slip ${e.slippage}%`:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle",children:o?o(e):jsxRuntime.jsx("span",{className:"text-default-400",children:"--"})})]})}function Wp(e){return e instanceof Error&&e.code==="NotImplemented"}function Vp(e){return e==="active"?"active":"filled"}function hi({chain:e,wallet:t,tokenAddress:o,limit:r=50,initialStateFilter:s="active",initialOnlyThisToken:n=false}){let[i,l]=react.useState(s),[a,d]=react.useState(n),[m,c]=react.useState(void 0),[p,u]=react.useState([]);react.useEffect(()=>{c(void 0),u([]);},[e,t,i,a,o]);let g=react.useCallback(I=>{I!==i&&l(I);},[i]),f=react.useMemo(()=>({chain:e,address:t??"",cursor:m,limit:r,state:Vp(i),tokenAddress:a?o:void 0}),[e,t,m,r,i,a,o]),{data:x,isPending:b,isFetching:h,error:k}=react$1.useWalletLimitOrdersQuery(f,{enabled:!!t});react.useEffect(()=>{x&&u(I=>m==null?[x]:I[I.length-1]?.endCursor===x.endCursor?I:[...I,x]);},[x,m]);let T=!!k&&Wp(k),C=react.useMemo(()=>p.flatMap(I=>I.data),[p]),y=p[p.length-1],L=!!(y?.hasNext&&y.endCursor),W=react.useCallback(()=>{!y?.endCursor||!y.hasNext||c(y.endCursor);},[y]);return {orders:C,isLoading:!!t&&!T&&(b||h),unavailable:T,hasMore:L,loadMore:W,stateFilter:i,setStateFilter:g,onlyThisToken:a,setOnlyThisToken:d}}function sw({chain:e,wallet:t,tokenAddress:o,tokenSymbol:r,limit:s,initialStateFilter:n="active",initialCurrency:i="usd",nativeSymbol:l,onCancelAll:a,renderActions:d,className:m}){let[c,p]=react.useState(i),{orders:u,isLoading:g,unavailable:f,hasMore:x,loadMore:b,stateFilter:h,setStateFilter:k,onlyThisToken:T,setOnlyThisToken:C}=hi({chain:e,wallet:t,tokenAddress:o,limit:s,initialStateFilter:n});return jsxRuntime.jsx(gi,{className:m,orders:u,isLoading:g,unavailable:f,hasMore:x,onLoadMore:b,stateFilter:h,onStateFilterChange:k,onlyThisToken:T,onOnlyThisTokenChange:C,tokenSymbol:r,currency:c,onCurrencyChange:p,nativeSymbol:l,onCancelAll:f?void 0:a,renderActions:d})}function Ti({traders:e,isLoading:t,hasMore:o,onLoadMore:r,onlyTracked:s=false,onOnlyTrackedChange:n,now:i=Date.now(),renderAddress:l,className:a}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",a),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Top Traders"}),jsxRuntime.jsxs("label",{className:"flex cursor-pointer items-center gap-1 text-[11px] text-default-400",children:[jsxRuntime.jsx("input",{type:"checkbox",className:"size-3 accent-primary",checked:s,onChange:d=>n?.(d.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[680px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[28%] px-3 py-2 text-left font-normal",children:"Wallet"}),jsxRuntime.jsx("th",{className:"w-[20%] px-3 py-2 text-left font-normal",children:"Tags"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Value"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"%"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"Realized PnL"}),jsxRuntime.jsx("th",{className:"w-[13%] px-3 py-2 text-right font-normal",children:"Last active"})]})}),jsxRuntime.jsxs("tbody",{children:[e.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No top traders yet"})}),e.map(d=>jsxRuntime.jsx(Qp,{trader:d,now:i,renderAddress:l},d.address)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),o&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:r,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Qp({trader:e,now:t,renderAddress:o}){let r=react.useMemo(()=>o?o(e.address):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ke(e.address,6,6)}),[e.address,o]);return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:r}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Dt,{tags:e.tags,max:3})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:utils.formatAmountUSDCompact(e.amountInUsd)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-500",children:Ee(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:"\u2014"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?Pe(e.lastActiveAt,t):"--"})]})}function vi({chain:e,address:t,limit:o=50,initialOnlyTracked:r=false}){let[s,n]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(r);react.useEffect(()=>{n(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t,cursor:s,limit:o,sortBy:"realizedPnl"}),[e,t,s,o]),{data:c,isPending:p,isFetching:u}=react$1.useTokenTopTradersQuery(m);react.useEffect(()=>{c&&l(k=>s==null?[c]:k[k.length-1]?.endCursor===c.endCursor?k:[...k,c]);},[c,s]);let g=react.useMemo(()=>i.flatMap(k=>k.data),[i]),f=react.useMemo(()=>a?g.filter(k=>k.tags&&k.tags.length>0):g,[g,a]),x=i[i.length-1],b=!!(x?.hasNext&&x.endCursor),h=react.useCallback(()=>{!x?.endCursor||!x.hasNext||n(x.endCursor);},[x]);return {traders:f,isLoading:p||u,hasMore:b,loadMore:h,onlyTracked:a,setOnlyTracked:d}}function Sw({chain:e,address:t,limit:o,className:r,renderAddress:s}){let{traders:n,isLoading:i,hasMore:l,loadMore:a,onlyTracked:d,setOnlyTracked:m}=vi({chain:e,address:t,limit:o});return jsxRuntime.jsx(Ti,{className:r,traders:n,isLoading:i,hasMore:l,onLoadMore:a,onlyTracked:d,onOnlyTrackedChange:m,renderAddress:s})}function Si({tokens:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:s,renderTokenLink:n,className:i}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",i),children:[jsxRuntime.jsx("div",{className:"flex items-center justify-between gap-4 px-3 py-2",children:jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Dev Tokens"})}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[700px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[28%] px-3 py-2 text-left font-normal",children:"Token"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-center font-normal",children:"Migrated"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Market Cap"}),jsxRuntime.jsx("th",{className:"w-[14%] px-3 py-2 text-right font-normal",children:"ATH"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"Liquidity"}),jsxRuntime.jsx("th",{className:"w-[16%] px-3 py-2 text-right font-normal",children:"1h Volume"})]})}),jsxRuntime.jsxs("tbody",{children:[o?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-10 text-center text-default-400",children:"Dev tokens index is coming soon."})}):e.length===0&&!t?jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No dev tokens"})}):e.map(l=>jsxRuntime.jsx(Zp,{token:l,renderTokenLink:n},`${l.chain}:${l.address}`)),!o&&t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),!o&&r&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:s,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Zp({token:e,renderTokenLink:t}){let o=e.marketData?.marketCapInUsd??e.marketData?.marketCap,r=e.marketData?.tvlInUsd,n=e.stats?.["1h"]?.volumesInUsd,i=!!e.migratedTo,l=t?t(e):jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ui.Avatar,{src:e.image??void 0,name:(e.symbol??e.name??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-foreground",children:e.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:e.name})]})]});return jsxRuntime.jsxs("tr",{className:"border-b border-default-50 hover:bg-default-50/60",children:[jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:l}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-center align-middle",children:i?jsxRuntime.jsx("span",{className:"text-bullish",children:"\u2713"}):jsxRuntime.jsx("span",{className:"text-default-400",children:"\u2014"})}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:o?utils.formatAmountUSDCompact(o):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:r?utils.formatAmountUSDCompact(r):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:n?utils.formatAmountUSDCompact(n):"--"})]})}function Ci({tokens:e,className:t}){let o=e.length,r=e.filter(l=>!!l.migratedTo).length,s=o===0?0:Math.round(r/o*100),n=e.map(l=>l.stats?.["1h"]?.volumesInUsd??"0").reduce((l,a)=>l.plus(new utils.SafeBigNumber(a)),new utils.SafeBigNumber(0)),i=e.map(l=>l.marketData?.marketCapInUsd??l.marketData?.marketCap??"0").reduce((l,a)=>l.plus(new utils.SafeBigNumber(a)),new utils.SafeBigNumber(0));return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-2 p-3",t),children:[jsxRuntime.jsx("div",{className:"flex items-center justify-between",children:jsxRuntime.jsx("span",{className:"text-xs font-medium text-default-500",children:"Token Stats"})}),jsxRuntime.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[jsxRuntime.jsx(mo,{label:"Total",value:String(o)}),jsxRuntime.jsx(mo,{label:"Migrated",value:`${r} (${s}%)`}),jsxRuntime.jsx(mo,{label:"Total Market Cap",value:utils.formatAmountUSDCompact(i.toString())}),jsxRuntime.jsx(mo,{label:"Total 1h Volume",value:utils.formatAmountUSDCompact(n.toString())})]})]})}function mo({label:e,value:t}){return jsxRuntime.jsxs("div",{className:"flex flex-col gap-[2px]",children:[jsxRuntime.jsx("span",{className:"text-[10px] text-default-400",children:e}),jsxRuntime.jsx("span",{className:"text-[13px] font-medium text-foreground",children:t})]})}function tu(e){return e instanceof Error&&e.code==="NotImplemented"}function Ri({chain:e,creator:t,limit:o=20}){let[r,s]=react.useState(void 0),[n,i]=react.useState([]);react.useEffect(()=>{s(void 0),i([]);},[e,t]);let l=react.useMemo(()=>({chain:e,creator:t??"",cursor:r,limit:o}),[e,t,r,o]),{data:a,isPending:d,isFetching:m,error:c}=react$1.useTokensByCreatorQuery(l,{enabled:!!t});react.useEffect(()=>{a&&i(b=>r==null?[a]:b[b.length-1]?.endCursor===a.endCursor?b:[...b,a]);},[a,r]);let p=!!c&&tu(c),u=react.useMemo(()=>n.flatMap(b=>b.data),[n]),g=n[n.length-1],f=!!(g?.hasNext&&g.endCursor),x=react.useCallback(()=>{!g?.endCursor||!g.hasNext||s(g.endCursor);},[g]);return {tokens:u,isLoading:!!t&&!p&&(d||m),unavailable:p,hasMore:f,loadMore:x}}function Ww({chain:e,creator:t,limit:o,showSummary:r=false,renderTokenLink:s,className:n}){let{tokens:i,isLoading:l,unavailable:a,hasMore:d,loadMore:m}=Ri({chain:e,creator:t,limit:o});return jsxRuntime.jsxs("div",{className:n,children:[jsxRuntime.jsx(Si,{tokens:i,isLoading:l,unavailable:a,hasMore:d,onLoadMore:m,renderTokenLink:s}),r&&!a?jsxRuntime.jsx(Ci,{tokens:i}):null]})}function Hi({token:e,athInUsd:t,athAt:o,globalFeesPaidInUsd:r,rank:s,onTogglePin:n,pinned:i,className:l}){let a=e?.marketData?.priceInUsd,d=e?.marketData?.tvlInUsd,m=e?.marketData?.totalSupply;return jsxRuntime.jsxs("div",{className:ui.cn("flex h-[48px] w-full flex-row items-center gap-4 overflow-x-auto px-3 text-[12px]",l),children:[jsxRuntime.jsx(dt,{label:"Price",value:a?utils.formatPriceUSD(a):"--"}),jsxRuntime.jsx(dt,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(dt,{label:"Supply",value:m?utils.formatAmount(m):"--"}),r?jsxRuntime.jsx(dt,{label:"Fees Paid",value:utils.formatAmountUSDCompact(r)}):null,t?jsxRuntime.jsx(dt,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,s!==void 0?jsxRuntime.jsx(dt,{label:"Rank",value:`#${s}`}):null,jsxRuntime.jsx("div",{className:"flex-1"}),n?jsxRuntime.jsx("button",{type:"button",onClick:n,"aria-pressed":i,className:ui.cn("flex size-[26px] items-center justify-center rounded text-default-400 transition-colors hover:bg-default-100 hover:text-foreground",i&&"text-foreground"),title:i?"Unpin token":"Pin token",children:i?"\u2605":"\u2606"}):null]})}function dt({label:e,value:t,title:o}){return jsxRuntime.jsxs("div",{className:"flex flex-col items-start justify-center gap-[2px] whitespace-nowrap",title:o,children:[jsxRuntime.jsx("span",{className:"text-[10px] leading-none text-default-400",children:e}),jsxRuntime.jsx("span",{className:"text-[13px] font-medium leading-none tabular-nums text-foreground",children:t})]})}function Mi({chain:e,address:t}){return M(e,t)}function tL({chain:e,address:t,athInUsd:o,athAt:r,globalFeesPaidInUsd:s,rank:n,pinned:i,onTogglePin:l,className:a}){let{token:d}=Mi({chain:e,address:t});return jsxRuntime.jsx(Hi,{className:a,token:d,athInUsd:o,athAt:r,globalFeesPaidInUsd:s,rank:n,pinned:i,onTogglePin:l})}function Ui({tokens:e,isLoading:t,unavailable:o,onTokenClick:r,className:s}){return o?jsxRuntime.jsx("div",{className:ui.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",s),children:"Similar tokens coming soon."}):!t&&e.length===0?jsxRuntime.jsx("div",{className:ui.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",s),children:"No similar tokens found."}):jsxRuntime.jsxs("ul",{className:ui.cn("flex flex-col",s),children:[e.map(n=>jsxRuntime.jsxs("li",{className:ui.cn("flex cursor-pointer items-center gap-2 border-b border-default-50 px-3 py-2 last:border-0 hover:bg-default-50/60",!r&&"cursor-default"),onClick:r?()=>r(n):void 0,children:[jsxRuntime.jsx(ui.Avatar,{src:n.image??void 0,name:(n.symbol??"?").slice(0,1),className:"size-5 shrink-0 rounded-full bg-default-200 text-[10px]",showFallback:true}),jsxRuntime.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[jsxRuntime.jsx("span",{className:"truncate text-[12px] text-foreground",children:n.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:n.name})]}),jsxRuntime.jsx("span",{className:"text-[11px] tabular-nums text-default-500",children:n.marketData?.marketCapInUsd?utils.formatAmountUSDCompact(n.marketData.marketCapInUsd):"--"})]},`${n.chain}:${n.address}`)),t&&jsxRuntime.jsx("li",{className:"py-2 text-center text-[11px] text-default-400",children:"Loading\u2026"})]})}function Oi({chain:e,address:t,keyword:o,limit:r=10}){let s=!!o&&o.length>0,{data:n,isPending:i,isFetching:l}=react$1.useSearchTokensQuery({chains:[e],keyword:o,limit:r+1},{enabled:s});return {tokens:react.useMemo(()=>{if(!n)return [];let d=t.toLowerCase();return (n.data??[]).filter(m=>m.address.toLowerCase()!==d).slice(0,r)},[n,t,r]),isLoading:s&&(i||l),unavailable:!s}}function kL({chain:e,address:t,keyword:o,limit:r,onTokenClick:s,className:n}){let{tokens:i,isLoading:l,unavailable:a}=Oi({chain:e,address:t,keyword:o,limit:r});return jsxRuntime.jsx(Ui,{className:n,tokens:i,isLoading:l,unavailable:a,onTokenClick:s})}function Di({tokens:e=[],unavailable:t=true,onTokenClick:o,className:r}){return t?jsxRuntime.jsx("div",{className:ui.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"Image-similarity search is coming soon."}):e.length===0?jsxRuntime.jsx("div",{className:ui.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"No reused-image tokens found."}):jsxRuntime.jsx("div",{className:ui.cn("flex flex-row flex-wrap gap-2 p-3",r),children:e.map(s=>jsxRuntime.jsx("button",{type:"button",onClick:o?()=>o(s):void 0,className:"flex size-10 items-center justify-center overflow-hidden rounded-full border border-default-100 transition-opacity hover:opacity-80",title:s.symbol,children:jsxRuntime.jsx(ui.Avatar,{src:s.image??void 0,name:(s.symbol??"?").slice(0,1),className:"size-full bg-default-100 text-[10px] text-default-400",showFallback:true})},`${s.chain}:${s.address}`))})}function Ei(e){return {tokens:[],isLoading:false,unavailable:true}}function AL({chain:e,address:t,onTokenClick:o,className:r}){let{tokens:s,unavailable:n}=Ei();return jsxRuntime.jsx(Di,{className:r,tokens:s,unavailable:n,onTokenClick:o})}function $i({keywords:e,excludeKeywords:t,onKeywordsChange:o,onExcludeKeywordsChange:r,className:s}){let{t:n}=i18n.useTranslation(),[i,l]=react.useState(e?.join(", ")??""),[a,d]=react.useState(t?.join(", ")??"");react.useEffect(()=>{l(p=>{let u=uo(p);return u===void 0&&e===void 0?p:u===void 0?e?.join(", ")??"":e===void 0?"":u.join("")===e.join("")?p:e.join(", ")});},[e]),react.useEffect(()=>{d(p=>{let u=uo(p);return u===void 0&&t===void 0?p:u===void 0?t?.join(", ")??"":t===void 0?"":u.join("")===t.join("")?p:t.join(", ")});},[t]);let m=react.useCallback(p=>{l(p),o?.(uo(p));},[o]),c=react.useCallback(p=>{d(p),r?.(uo(p));},[r]);return jsxRuntime.jsxs("div",{className:ui.cn("grid grid-cols-2 gap-3 px-4",s),children:[jsxRuntime.jsxs("div",{className:"flex flex-col gap-3",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:n("tokens.filters.keywords.title")}),jsxRuntime.jsx(ui.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.keywords.placeholder"),value:i,onValueChange:m})]}),jsxRuntime.jsxs("div",{className:"flex flex-col gap-3",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:n("tokens.filters.keywords.exclude.title")}),jsxRuntime.jsx(ui.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.keywords.placeholder"),value:a,onValueChange:c})]})]})}function uo(e){let t=e.split(",").map(o=>o.trim()).filter(Boolean);return t.length>0?t:void 0}function Xi({protocols:e,selectedProtocols:t=[],onSelectedProtocolsChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let l=react.useMemo(()=>e.every(m=>n.includes(m)),[e,n]),a=react.useCallback(()=>{if(l){let m=[];i(m),o?.(m);}else {let m=[...e];i(m),o?.(m);}},[e,o,l]),d=react.useCallback(m=>()=>{if(n.includes(m)){let c=n.filter(p=>p!==m);i(c),o?.(c);}else {let c=[...n,m];i(c),o?.(c);}},[n,o]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-center",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:s("tokens.filters.protocols.title")}),jsxRuntime.jsx(ui.Button,{variant:"light",color:"default",size:"sm",radius:"full",onPress:a,children:s(l?"tokens.filters.protocols.unselectAll":"tokens.filters.protocols.selectAll")})]}),jsxRuntime.jsx("div",{className:"grid grid-cols-3 gap-3",children:e.map(m=>{let c=Oe(m);return jsxRuntime.jsx(ui.Button,{variant:"bordered",size:"sm",radius:"full",className:ui.cn("w-fit h-6 px-2.5",c.text,c.bg5,"border",c.border,{"opacity-40 data-[hover=true]:!opacity-30":!n.includes(m)}),startContent:jsxRuntime.jsx(ui.Image,{width:14,height:14,src:`/images/protocols/${m}.svg`,alt:utils.formatTokenProtocolName(m)}),onPress:d(m),children:utils.formatTokenProtocolName(m)},m)})})]})}function ye({title:e,field:t,value:o,onChange:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(o?xr(o).min:NaN),[l,a]=react.useState(o?xr(o).max:NaN);react.useEffect(()=>{if(o===void 0)i(NaN),a(NaN);else {let{min:c,max:p}=xr(o);i(c),a(p);}},[o]);let d=react.useCallback(c=>{i(c),r?.(ji(t,c,l));},[t,r,l]),m=react.useCallback(c=>{a(c),r?.(ji(t,n,c));},[t,r,n]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1",children:[e&&jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:e}),jsxRuntime.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[jsxRuntime.jsx(ui.StyledNumberInput,{value:n,onValueChange:d,variant:"bordered",radius:"lg",size:"sm",placeholder:s("tokens.filters.stats.min"),"aria-label":`${e} min`}),jsxRuntime.jsx(ui.StyledNumberInput,{value:l,onValueChange:m,variant:"bordered",radius:"lg",size:"sm",placeholder:s("tokens.filters.stats.max"),"aria-label":`${e} max`})]})]})}function xr(e){if(e.operator==="between"){let[t,o]=e.value;return {min:t,max:o}}return e.operator==="gte"?{min:e.value,max:NaN}:e.operator==="lte"?{min:NaN,max:e.value}:{min:NaN,max:NaN}}function ji(e,t,o){if(!(isNaN(t)&&isNaN(o)))return isNaN(t)?{field:e,operator:"lte",value:o}:isNaN(o)?{field:e,operator:"gte",value:t}:{field:e,operator:"between",value:[t,o]}}function ta({values:e,onValuesChange:t,className:o}){let{t:r}=i18n.useTranslation(),[s,n]=react.useState(e);react.useEffect(()=>{n(e);},[e]);let i=react.useCallback(l=>a=>{if(a===void 0){let d=(s??[]).filter(m=>m.field!==l);d=d.length>0?d:void 0,n(d),t?.(d);}else {let d=[...(s??[]).filter(m=>m.field!==l),a];n(d),t?.(d);}},[s,t]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",o),children:[jsxRuntime.jsx(ye,{field:"holders",title:r("tokens.filters.stats.audits.holders"),value:s?.find(l=>l.field==="holders"),onChange:i("holders")}),jsxRuntime.jsx(ye,{field:"top10Ratio",title:r("tokens.filters.stats.audits.top10HoldingsRatio"),value:s?.find(l=>l.field==="top10Ratio"),onChange:i("top10Ratio")}),jsxRuntime.jsx(ye,{field:"top100Ratio",title:r("tokens.filters.stats.audits.top100HoldingsRatio"),value:s?.find(l=>l.field==="top100Ratio"),onChange:i("top100Ratio")}),jsxRuntime.jsx(ye,{field:"creatorsRatio",title:r("tokens.filters.stats.audits.devHoldingsRatio"),value:s?.find(l=>l.field==="creatorsRatio"),onChange:i("creatorsRatio")})]})}function oa({resolution:e,values:t,onValuesChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let l=react.useCallback(a=>d=>{if(d===void 0){let m=(n??[]).filter(c=>c.field!==a);m=m.length>0?m:void 0,i(m),o?.(m);}else {let m=[...(n??[]).filter(c=>c.field!==a),d];i(m),o?.(m);}},[n,o]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",r),children:[jsxRuntime.jsx(ye,{field:"marketCap",title:s("tokens.filters.stats.metrics.marketCap"),value:n?.find(a=>a.field==="marketCap"),onChange:l("marketCap")}),jsxRuntime.jsx(ye,{field:"tvl",title:s("tokens.filters.stats.metrics.liquidity"),value:n?.find(a=>a.field==="tvl"),onChange:l("tvl")}),jsxRuntime.jsx(ye,{field:`volumes${e}`,title:s("tokens.filters.stats.metrics.volumes",{resolution:s(`common.resolution.${e}`)}),value:n?.find(a=>a.field===`volumes${e}`),onChange:l(`volumes${e}`)}),jsxRuntime.jsx(ye,{field:`trades${e}`,title:s("tokens.filters.stats.metrics.txns",{resolution:s(`common.resolution.${e}`)}),value:n?.find(a=>a.field===`trades${e}`),onChange:l(`trades${e}`)})]})}function la({resolution:e,values:t,onValuesChange:o,className:r}){let{t:s}=i18n.useTranslation(),[n,i]=react.useState("audits"),[l,a]=react.useState(t);react.useEffect(()=>{a(t);},[t]);let d=react.useCallback(p=>{a(p),o?.(p);},[o]),m=react.useMemo(()=>{let p=["holders","top10Ratio","top100Ratio","creatorsRatio"];return l?.filter(u=>p.includes(u.field))?.length??0},[l]),c=react.useMemo(()=>{let p=["marketCap","tvl",`volumes${e}`,`trades${e}`];return l?.filter(u=>p.includes(u.field)).length??0},[l,e]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs(ui.StyledLightTabs,{color:"default",radius:"full",size:"sm",selectedKey:n,onSelectionChange:i,children:[jsxRuntime.jsx(ui.Tab,{title:m===0?s("tokens.filters.stats.audits"):jsxRuntime.jsx(ui.StyledBadge,{color:"primary",size:"sm",content:m,shape:"circle",children:s("tokens.filters.stats.audits")})},"audits"),jsxRuntime.jsx(ui.Tab,{title:c===0?s("tokens.filters.stats.metrics"):jsxRuntime.jsx(ui.StyledBadge,{color:"primary",size:"sm",content:c,shape:"circle",children:s("tokens.filters.stats.metrics")})},"metrics")]}),jsxRuntime.jsx(ta,{values:l,onValuesChange:d,className:ui.cn({hidden:n!=="audits"})}),jsxRuntime.jsx(oa,{values:l,onValuesChange:d,resolution:e,className:ui.cn({hidden:n!=="metrics"})})]})}function yo({protocols:e,resolution:t,filters:o,onFiltersChange:r,className:s}){let[n,i]=react.useState(da(o?.filters,e));react.useEffect(()=>{i(da(o?.filters,e));},[o?.filters,e]);let[l,a]=react.useState(o?.keywords);react.useEffect(()=>{a(o?.keywords);},[o?.keywords]);let[d,m]=react.useState(o?.excludeKeywords);react.useEffect(()=>{m(o?.excludeKeywords);},[o?.excludeKeywords]);let[c,p]=react.useState(o?.filters);react.useEffect(()=>{p(o?.filters);},[o?.filters]);let u=react.useCallback(b=>{i(b),r?.(To(e,b,l,d,c));},[e,l,d,c,r]),g=react.useCallback(b=>{a(b),r?.(To(e,n,b,d,c));},[e,n,d,c,r]),f=react.useCallback(b=>{m(b),r?.(To(e,n,l,b,c));},[e,n,l,c,r]),x=react.useCallback(b=>{p(b),r?.(To(e,n,l,d,b));},[e,n,l,d,r]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",s),children:[e&&e.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Xi,{protocols:e,selectedProtocols:n,onSelectedProtocolsChange:u}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}})]}),jsxRuntime.jsx($i,{keywords:l,excludeKeywords:d,onKeywordsChange:g,onExcludeKeywordsChange:f}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}}),jsxRuntime.jsx(la,{resolution:t,values:c,onValuesChange:x})]})}function da(e,t){let o=e?.find(r=>r.field==="launchedFromProtocolFamily");return o?o.operator==="in"?o.value:(console.warn("invalid token protocols filter",o),[...t||[]]):[...t||[]]}function To(e,t,o,r,s){let n=s?[...s.filter(i=>i.field!=="launchedFromProtocolFamily")]:[];return e&&e.length>0&&(e.every(l=>t.includes(l))||n.push({field:"launchedFromProtocolFamily",operator:"in",value:t})),o===void 0&&r===void 0&&n.length===0?void 0:{keywords:o,excludeKeywords:r,filters:n.length>0?n:void 0}}function ua({protocols:e,resolution:t,filters:o,onFiltersChange:r,triggerVariant:s="default",badgePlacement:n="outer",className:i}){let{t:l}=i18n.useTranslation(),{isOpen:a,onOpen:d,onClose:m,onOpenChange:c}=ui.useDisclosure(),[p,u]=react.useState(o),g=react.useCallback(()=>{u(void 0);},[]),f=react.useCallback(()=>{r?.(p),m();},[p,r,m]);react.useEffect(()=>{u(o);},[a,o]);let x=react.useMemo(()=>Object.values(o||{}).every(b=>b===void 0),[o]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",className:i,onClick:d,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",borderRadius:9999,border:s==="plain"?"none":"1px solid rgba(63,63,70,0.5)",background:s==="plain"?"transparent":"rgba(39,39,42,0.6)",width:32,height:32,minHeight:32,padding:0,cursor:"pointer",position:"relative"},children:[jsxRuntime.jsx(ui.FilterIcon,{width:16,height:16,className:"text-zinc-400"}),!x&&jsxRuntime.jsx("span",{style:{position:"absolute",top:n==="icon"?6:-2,right:n==="icon"?6:-2,width:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),jsxRuntime.jsx(ui.StyledModal,{isOpen:a,onOpenChange:c,size:"md",scrollBehavior:"inside",children:jsxRuntime.jsxs(ui.ModalContent,{className:"w-full h-full",children:[jsxRuntime.jsx(ui.ModalHeader,{className:"px-4 py-2",children:jsxRuntime.jsx("span",{className:"text-base font-semibold",children:l("tokens.filters.modal.title")})}),jsxRuntime.jsx(ui.ModalBody,{className:"px-0 pt-0 pb-4",children:jsxRuntime.jsx(ui.ScrollShadow,{children:jsxRuntime.jsx(yo,{protocols:e,resolution:t,filters:p,onFiltersChange:u,className:"pb-4"})})}),jsxRuntime.jsx(ui.ModalFooter,{className:"px-4",children:jsxRuntime.jsxs("div",{className:"w-full flex justify-between items-center",children:[jsxRuntime.jsx(ui.Button,{variant:"light",color:"default",size:"sm",radius:"full",startContent:jsxRuntime.jsx(ui.RefreshIcon,{width:16,height:16}),onPress:g,children:l("common.reset")}),jsxRuntime.jsx(ui.Button,{color:"primary",size:"sm",radius:"full",onPress:f,children:l("common.apply")})]})})]})})]})}var ka={display:"inline-flex",alignItems:"center",gap:8,borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"rgba(39,39,42,0.6)",padding:"6px 12px",fontSize:14,fontWeight:700,color:"#d4d4d8",cursor:"pointer",transition:"all 0.15s",height:32},af={position:"absolute",right:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},lf={height:1,background:"rgba(39,39,42,1)",margin:0};function ba({protocols:e,resolution:t,filters:o,onFiltersChange:r,iconOnly:s=false,className:n}){let{t:i}=i18n.useTranslation(),[l,a]=react.useState(false),d=react.useRef(null),[m,c]=react.useState(o),p=react.useCallback(()=>{c(void 0);},[]),u=react.useCallback(()=>{r?.(m),a(false);},[m,r]);react.useEffect(()=>{c(o);},[l,o]),react.useEffect(()=>{let f=x=>{d.current&&!d.current.contains(x.target)&&a(false);};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[]),react.useEffect(()=>{if(!l)return;let f=x=>{x.key==="Escape"&&a(false);};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)},[l]);let g=react.useMemo(()=>Object.values(o||{}).every(f=>f===void 0),[o]);return jsxRuntime.jsxs("div",{ref:d,style:{position:"relative"},children:[jsxRuntime.jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxRuntime.jsxs("button",{type:"button",className:n,style:s?{...ka,justifyContent:"center",gap:0,width:32,minWidth:32,padding:0}:ka,onMouseEnter:f=>{f.currentTarget.style.background="rgba(39,39,42,1)";},onMouseLeave:f=>{f.currentTarget.style.background="rgba(39,39,42,0.6)";},onClick:()=>a(f=>!f),children:[jsxRuntime.jsx(ui.FilterIcon,{width:16,height:16,className:"flex-none"}),!s&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{className:"hidden sm:block",children:i("tokens.listHeader.filter")}),jsxRuntime.jsx(df,{open:l})]})]}),!g&&jsxRuntime.jsx("span",{style:{position:"absolute",top:-4,right:-4,minWidth:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),l&&jsxRuntime.jsxs("div",{style:{...af,width:420},children:[jsxRuntime.jsx("div",{style:{padding:"16px 0"},children:jsxRuntime.jsx(ui.ScrollShadow,{className:"w-full max-h-120 px-4",children:jsxRuntime.jsx(yo,{protocols:e,resolution:t,filters:m,onFiltersChange:c})})}),jsxRuntime.jsx("div",{style:lf}),jsxRuntime.jsxs("div",{style:{padding:"12px 16px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[jsxRuntime.jsx(ui.Button,{variant:"light",size:"sm",color:"default",radius:"full",startContent:jsxRuntime.jsx(ui.RefreshIcon,{width:16,height:16}),onPress:p,children:i("common.reset")}),jsxRuntime.jsx(ui.Button,{variant:"solid",size:"sm",color:"primary",radius:"full",onPress:u,children:i("common.apply")})]})]})]})}function df({open:e}){return jsxRuntime.jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"#71717a",transition:"transform 0.15s",transform:e?"rotate(180deg)":void 0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsxRuntime.jsx("path",{d:"m6 9 6 6 6-6"})})}function v1({popoverPlacement:e="bottom-end",iconOnly:t,className:o,desktopOverlay:r="popover",...s}){let{isMobile:n}=ui.useScreen();return n||r==="modal"?jsxRuntime.jsx(ua,{className:o,...s}):jsxRuntime.jsx(ba,{placement:e,iconOnly:t,className:o,...s})}function ya({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),s=react.useCallback(n=>{t?.(n);},[t]);return jsxRuntime.jsx(ui.StyledPlainTabs,{color:"primary",radius:"lg",selectedKey:e,onSelectionChange:s,"aria-label":"Select Resolution",classNames:{tabList:"gap-0",tab:"px-2",tabContent:"!text-zinc-500 group-data-[hover=true]:!text-foreground group-data-[selected=true]:!text-primary"},children:o.map(n=>jsxRuntime.jsx(ui.Tab,{title:r(`common.resolution.${n}`)},n))})}var Nf={display:"inline-flex",alignItems:"center",gap:4,borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"rgba(39,39,42,0.6)",padding:"0 10px",fontSize:12,fontWeight:500,color:"#d4d4d8",cursor:"pointer",height:32,minHeight:32},Sf={position:"absolute",left:0,top:"100%",zIndex:20,marginTop:6,borderRadius:14,border:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden",padding:"6px",minWidth:"100%"};function Na({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),[s,n]=react.useState(false),i=react.useRef(null),l=react.useCallback(a=>{t?.(a),n(false);},[t]);return react.useEffect(()=>{if(!s)return;let a=m=>{i.current&&!i.current.contains(m.target)&&n(false);},d=m=>{m.key==="Escape"&&n(false);};return document.addEventListener("mousedown",a),document.addEventListener("keydown",d),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",d);}},[s]),jsxRuntime.jsxs("div",{ref:i,style:{position:"relative",zIndex:50},children:[jsxRuntime.jsxs("button",{type:"button",style:Nf,onClick:()=>n(a=>!a),children:[jsxRuntime.jsx("span",{children:e?r(`common.resolution.${e}`):"\u2014"}),jsxRuntime.jsx(ui.ChevronDownIcon,{width:14,height:14,className:"text-zinc-500",style:{transition:"transform 0.15s",transform:s?"rotate(180deg)":void 0}})]}),s&&jsxRuntime.jsx("div",{style:Sf,children:o.map(a=>jsxRuntime.jsx("button",{type:"button",onClick:()=>l(a),className:ui.cn("w-full text-left px-3 py-1.5 rounded-lg text-xs font-medium transition-colors cursor-pointer",a===e?"text-primary bg-primary/10":"text-zinc-400 hover:text-foreground hover:bg-zinc-800"),children:r(`common.resolution.${a}`)},a))})]})}function B1(e){let{isMobile:t}=ui.useScreen();return t?jsxRuntime.jsx(Na,{...e}):jsxRuntime.jsx(ya,{...e})}var wa=react.memo(function({token:t}){let{t:o}=i18n.useTranslation(),r=react.useMemo(()=>t.marketData?.bluechipHoldingsRatio,[t.marketData?.bluechipHoldingsRatio]),s=react.useMemo(()=>r!==void 0&&new utils.SafeBigNumber(r).gte(.1),[r]),n=react.useMemo(()=>r===void 0||new utils.SafeBigNumber(r).lt(.05),[r]);return jsxRuntime.jsx(ui.StyledTooltip,{content:o("tokens.bluechip.explained"),children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2.5",children:[s&&jsxRuntime.jsx(ui.HorsePowerHighIcon,{}),n&&jsxRuntime.jsx(ui.HorsePowerLowIcon,{}),!s&&!n&&jsxRuntime.jsx(ui.HorsePowerIcon,{}),jsxRuntime.jsx("span",{className:ui.cn(s&&"text-bullish",!s&&!n&&"text-bearish",r===void 0&&"text-neutral"),children:utils.formatPercent(r)})]})})});function Gf(e){return e.length<=10?e:`${e.slice(0,4)}...${e.slice(-4)}`}var Fa=react.memo(function({token:t}){let o=ui.useCopyToClipboard(),[r,s]=react.useState(false),[n,i]=react.useState(false),l=react.useRef(void 0),a=react.useRef(void 0),{t:d}=i18n.useTranslation(),m=react.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(t.name,()=>{ui.toast.success(d("tokens.copied.name")),s(true),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(false);},2e3);});},[o,t.name,d]),c=react.useCallback(u=>{u.preventDefault(),u.stopPropagation(),o(t.address,()=>{ui.toast.success(d("tokens.copied.address")),i(true),a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{i(false);},2e3);});},[o,t.address,d]);react.useEffect(()=>()=>{l.current&&clearTimeout(l.current),a.current&&clearTimeout(a.current);},[]);let p=hooks.useTickAge(t.createdAt);return jsxRuntime.jsxs("div",{className:"w-full flex justify-start items-center gap-3",children:[jsxRuntime.jsx(fe,{token:t,showProgress:false,className:"w-10 h-10 sm:w-16 sm:h-16 flex-none"}),jsxRuntime.jsxs("div",{className:"flex-auto flex flex-col gap-1 min-w-0",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx("span",{className:"flex-none font-medium tracking-[-0.02em]",children:t.symbol}),jsxRuntime.jsx(ui.StyledTooltip,{content:t.name,children:jsxRuntime.jsxs("div",{className:"flex-initial flex items-center gap-1 min-w-0 text-neutral hover:text-primary-200 cursor-pointer",onClick:m,children:[jsxRuntime.jsx("div",{className:"flex-initial whitespace-nowrap truncate",children:t.name}),r?jsxRuntime.jsx(ui.CheckIcon,{className:"flex-none w-3 h-3 sm:w-3.5 sm:h-3.5"}):jsxRuntime.jsx(ui.CopyIcon,{className:"flex-none w-3 h-3 sm:w-3.5 sm:h-3.5"})]})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("span",{className:"text-primary text-xs sm:text-sm font-medium",children:utils.formatAge(p)}),jsxRuntime.jsxs("button",{type:"button",className:"group flex items-center gap-1 min-w-0 max-w-28 sm:max-w-36 text-neutral hover:text-primary-200 cursor-pointer",onClick:c,"aria-label":d("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"min-w-0 truncate text-left text-xs font-mono text-neutral/70 group-hover:text-primary-200",children:Gf(t.address)}),n?jsxRuntime.jsx(ui.CheckIcon,{className:"flex-none w-3 h-3"}):jsxRuntime.jsx(ui.CopyIcon,{className:"flex-none w-3 h-3"})]}),t.socialMedias?.website&&jsxRuntime.jsx(ui.Link,{href:t.socialMedias.website,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui.WebsiteIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.twitter&&jsxRuntime.jsx(ui.Link,{href:t.socialMedias.twitter,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui.TwitterIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.telegram&&jsxRuntime.jsx(ui.Link,{href:t.socialMedias.telegram,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui.TelegramIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),t.socialMedias?.discord&&jsxRuntime.jsx(ui.Link,{href:t.socialMedias.discord,className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui.DiscordIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})}),jsxRuntime.jsx(ui.Link,{href:utils.searchTwitterUrl(`${t.symbol} OR ${t.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",children:jsxRuntime.jsx(ui.SearchIcon,{className:"w-3.5 h-3.5 sm:w-4 sm:h-4"})})]})]})]})});var Ma=react.memo(function({token:t}){let{t:o}=i18n.useTranslation(),r=t.marketData,s=react.useMemo(()=>new utils.SafeBigNumber(r?.top10HoldingsRatio).gte(.1),[r?.top10HoldingsRatio]),n=react.useMemo(()=>new utils.SafeBigNumber(r?.devHoldingsRatio).gte(.1),[r?.devHoldingsRatio]),i=react.useMemo(()=>new utils.SafeBigNumber(r?.sniperHoldingsRatio).gte(.1),[r?.sniperHoldingsRatio]),l=react.useMemo(()=>new utils.SafeBigNumber(r?.insiderHoldingsRatio).gte(.1),[r?.insiderHoldingsRatio]),a=react.useMemo(()=>new utils.SafeBigNumber(r?.bundleHoldingsRatio).gte(.1),[r?.bundleHoldingsRatio]);return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-1 justify-center",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.PeopleIcon,{width:12,height:12}),value:utils.formatAmount(r?.holders),tooltip:o("tokens.tokenInfo.holders"),warning:false,disable:!r?.holders}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.KlineCandlesIcon,{width:12,height:12}),value:utils.formatAmount(r?.proHolders),tooltip:o("tokens.tokenInfo.proHolders"),warning:false,disable:!r?.proHolders}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.StarIcon,{width:12,height:12}),value:utils.formatAmount(r?.kolHolders),tooltip:o("tokens.tokenInfo.kolHolders"),warning:false,disable:!r?.kolHolders}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(r?.top10HoldingsRatio),tooltip:o("tokens.tokenInfo.top10HoldingsRatio"),warning:s,disable:!r?.top10HoldingsRatio||r?.top10HoldingsRatio==="0"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(r?.devHoldingsRatio),tooltip:o("tokens.tokenInfo.devHoldingsRatio"),warning:n,disable:!r?.devHoldingsRatio||r?.devHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(r?.sniperHoldingsRatio),tooltip:o("tokens.tokenInfo.sniperHoldingsRatio"),warning:i,disable:!r?.sniperHoldingsRatio||r?.sniperHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(r?.insiderHoldingsRatio),tooltip:o("tokens.tokenInfo.insiderHoldingsRatio"),warning:l,disable:!r?.insiderHoldingsRatio||r?.insiderHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(r?.bundleHoldingsRatio),tooltip:o("tokens.tokenInfo.bundleHoldingsRatio"),warning:a,disable:!r?.bundleHoldingsRatio||r?.bundleHoldingsRatio==="0",tooltipPlacement:"bottom"})]})]})});var Ua=react.memo(function({token:t}){let o=react.useMemo(()=>t.marketData?.tvlInUsd,[t.marketData?.tvlInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(o)})});var Oa=react.memo(function({token:t}){let o=react.useMemo(()=>t.marketData?.marketCapInUsd,[t.marketData?.marketCapInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(o)})});var Ba=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.marketData?.priceInUsd,[t.marketData?.priceInUsd]),s=react.useMemo(()=>t.stats?.[o]?.priceChange,[t,o]),n=react.useMemo(()=>s?new utils.SafeBigNumber(s).abs().toString():void 0,[s]),i=react.useMemo(()=>s&&new utils.SafeBigNumber(s).gte(0),[s]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatPriceUSD(r)}),jsxRuntime.jsxs("span",{className:ui.cn("inline-flex gap-1 items-center text-xs",i?"text-bullish":"text-bearish"),children:[i?jsxRuntime.jsx(ui.TriangleUpIcon,{width:10,height:10}):jsxRuntime.jsx(ui.TriangleDownIcon,{width:10,height:10}),jsxRuntime.jsx("span",{children:utils.formatPercent(n)})]})]})});var Va=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.traders,[t.stats?.[o]?.traders]),s=react.useMemo(()=>t.stats?.[o]?.buyers,[t.stats?.[o]?.buyers]),n=react.useMemo(()=>t.stats?.[o]?.sellers,[t.stats?.[o]?.sellers]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})});var $a=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.trades,[t.stats?.[o]?.trades]),s=react.useMemo(()=>t.stats?.[o]?.buys,[t.stats?.[o]?.buys]),n=react.useMemo(()=>t.stats?.[o]?.sells,[t.stats?.[o]?.sells]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})});var za=react.memo(function({token:t,resolution:o}){let r=react.useMemo(()=>t.stats?.[o]?.volumesInUsd,[t.stats?.[o]?.volumesInUsd]),s=react.useMemo(()=>t.stats?.[o]?.buyVolumesInUsd,[t.stats?.[o]?.buyVolumesInUsd]),n=react.useMemo(()=>t.stats?.[o]?.sellVolumesInUsd,[t.stats?.[o]?.sellVolumesInUsd]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmountUSD(r)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSD(s)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSD(n)})]})]})});var Sg=`
22
22
  @keyframes tklShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
23
- `,Tg={background:"linear-gradient(90deg, rgba(255,255,255,0.03) 25%, rgba(255,255,255,0.06) 50%, rgba(255,255,255,0.03) 75%)",backgroundSize:"200% 100%",animation:"tklShimmer 1.8s ease-in-out infinite",borderRadius:6};function E(e,t,o,r){return {...Tg,animationDelay:`${e}ms`,width:t,height:o,...r}}var Wa=10;function Ba({rowHeight:e,hasActions:t,isMobile:o}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{children:bg}),Array.from({length:Wa}).map((r,s)=>jsxRuntime.jsx(yg,{index:s,rowHeight:e,hasActions:t,isMobile:o,isLast:s===Wa-1},s))]})}function yg({index:e,rowHeight:t,hasActions:o,isMobile:r,isLast:s}){let n=e*80,i=r?208:320,a=r?40:64,l=r?72:124,d=r?64:97;return jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",height:t,borderBottom:s?void 0:"1px solid rgba(39,39,42,0.3)"},children:[jsxRuntime.jsxs("div",{style:{width:i,padding:r?"0 12px":"0 12px 0 24px",display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[jsxRuntime.jsx("div",{style:E(n,a,a,{borderRadius:8,flexShrink:0})}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:1},children:[jsxRuntime.jsx("div",{style:E(n+30,"60%",20)}),jsxRuntime.jsx("div",{style:E(n+60,"80%",16)})]})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:E(n+20,72,20)}),jsxRuntime.jsx("div",{style:E(n+40,52,16)})]}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:E(n+30,64,20)})}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:E(n+40,60,20)})}),jsxRuntime.jsxs("div",{style:{width:138,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:E(n+50,72,20)}),jsxRuntime.jsx("div",{style:E(n+70,100,16)})]}),jsxRuntime.jsxs("div",{style:{width:126,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:E(n+60,48,20)}),jsxRuntime.jsx("div",{style:E(n+80,80,16)})]}),jsxRuntime.jsxs("div",{style:{width:126,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:E(n+70,40,20)}),jsxRuntime.jsx("div",{style:E(n+90,72,16)})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",alignItems:"center",gap:10},children:[jsxRuntime.jsx("div",{style:E(n+80,20,20,{borderRadius:4})}),jsxRuntime.jsx("div",{style:E(n+90,52,20)})]}),jsxRuntime.jsxs("div",{style:{width:308,padding:"0 12px",display:"flex",alignItems:"center",gap:20},children:[jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:E(n+80,52,16)}),jsxRuntime.jsx("div",{style:E(n+100,40,16)}),jsxRuntime.jsx("div",{style:E(n+120,36,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:E(n+90,48,16)}),jsxRuntime.jsx("div",{style:E(n+110,40,16)}),jsxRuntime.jsx("div",{style:E(n+130,40,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:E(n+100,40,16)}),jsxRuntime.jsx("div",{style:E(n+120,36,16)})]})]}),o&&jsxRuntime.jsx("div",{style:{width:l,padding:r?"0 12px 0 0":"0 24px 0 12px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:jsxRuntime.jsx("div",{style:E(n+100,d,32,{borderRadius:8})})})]})}var Rg=100,Ag=200,Hg=72;function mt({tokens:e,resolution:t="24h",isLoading:o,ActionsComponent:r,onSelectToken:s,sortDirections:n,onSortChange:i,onScrollingChange:a,height:l=600,itemHeight:d=88,itemHeightMobile:m=72,className:c}){let{isMobile:p}=ui$1.useScreen(),u=p?m:d,f=react.useMemo(()=>e.slice(0,Rg),[e]),k=o&&e.length===0,x=react.useRef(void 0),g=react.useRef(false),{t:h}=i18n.useTranslation(),b=react.useCallback(P=>W=>{W.preventDefault(),W.stopPropagation(),s?.(P);},[s]),[T,I]=react.useState(n??{});react.useEffect(()=>{I(n??{});},[n]);let M=react.useCallback(P=>W=>{let ft={[P]:W};I(ft),i?.(ft);},[i]),Q=react.useCallback(()=>{g.current||(g.current=true,a?.(true)),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{g.current=false,a?.(false);},180);},[a]);react.useEffect(()=>()=>{x.current&&clearTimeout(x.current),g.current&&a?.(false);},[a]);let Se=ui$1.cn("h-full mx-auto",c??(r?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),_=r?"!w-[1438px] min-w-[1438px] max-w-[1438px]":"!w-[1366px] min-w-[1366px] max-w-[1366px]",be=[jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.token"),width:p?Ag:320,className:ui$1.cn("bg-[#0a0a0b] sticky left-0 z-10",p&&"!w-[200px] min-w-[200px] max-w-[200px] overflow-hidden","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]"),children:h("tokens.listHeader.token")},"token"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.price"),width:128,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.Sortable,{sort:T.price,onSortChange:M("price"),children:h("tokens.listHeader.price")}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsx(ui$1.Sortable,{sort:T[`priceChange${t}`],onSortChange:M(`priceChange${t}`),children:h("tokens.listHeader.priceChange",{resolution:t})})]})},"price"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.marketCap"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:T.marketCap,onSortChange:M("marketCap"),children:h("tokens.listHeader.marketCap")})},"marketCap"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.liquidity"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:T.tvl,onSortChange:M("tvl"),children:h("tokens.listHeader.liquidity")})},"liquidity"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.volumes",{resolution:t}),width:138,children:jsxRuntime.jsx(ui$1.Sortable,{sort:T[`volumes${t}`],onSortChange:M(`volumes${t}`),children:h("tokens.listHeader.volumes",{resolution:t})})},"volumes"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.txs",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:T[`trades${t}`],onSortChange:M(`trades${t}`),children:h("tokens.listHeader.txs",{resolution:t})})},"txs"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.traders",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:T[`traders${t}`],onSortChange:M(`traders${t}`),children:h("tokens.listHeader.traders",{resolution:t})})},"traders"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.bluechip"),width:128,children:h("tokens.listHeader.bluechip")},"bluechip"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.tokenInfo"),width:308,children:h("tokens.listHeader.tokenInfo")},"tokenInfo"),r?jsxRuntime.jsx(ui$1.TableColumn,{textValue:h("tokens.listHeader.actions"),width:p?Hg:124,align:"end",className:ui$1.cn("bg-[#0a0a0b] sticky right-0 z-10",p&&"!w-[72px] min-w-[72px] max-w-[72px]","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]"),children:h("tokens.listHeader.actions")},"actions"):void 0].filter(Boolean),Te=jsxRuntime.jsx(Ba,{rowHeight:u,hasActions:!!r,isMobile:p}),F=jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(ui$1.EmptyIcon,{className:"w-10 h-10 mx-auto text-neutral"}),jsxRuntime.jsx("p",{className:"mt-2 text-sm text-neutral text-center",children:h("common.empty")})]}),ne=P=>[jsxRuntime.jsx(ui$1.TableCell,{className:ui$1.cn("sticky left-0 z-10 bg-[#0a0a0b]",p&&"!w-[200px] min-w-[200px] max-w-[200px] overflow-hidden","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:!bg-[#101211]"),children:jsxRuntime.jsx(wa,{token:P,resolution:t})},"token"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Ia,{token:P,resolution:t})},"price"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Ra,{token:P,resolution:t})},"marketCap"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Pa,{token:P,resolution:t})},"liquidity"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Ea,{token:P,resolution:t})},"volumes"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Oa,{token:P,resolution:t})},"trades"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Fa,{token:P,resolution:t})},"traders"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ba,{token:P,resolution:t})},"bluechip"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(La,{token:P,resolution:t})},"tokenInfo"),r?jsxRuntime.jsx(ui$1.TableCell,{className:ui$1.cn("sticky right-0 z-10 bg-[#0a0a0b]",p&&"!w-[72px] min-w-[72px] max-w-[72px]","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:!bg-[#101211]"),children:jsxRuntime.jsx("div",{className:ui$1.cn("!absolute inset-y-0 right-3 z-1 w-fit","flex items-center justify-end"),children:jsxRuntime.jsx(r,{token:P,resolution:t})})},"actions"):void 0].filter(Boolean),U=P=>jsxRuntime.jsx(ui$1.TableRow,{onClick:s?b(P):void 0,children:ne(P)},P.address);return p?jsxRuntime.jsx("div",{"data-token-list-mobile-scroll":true,className:ui$1.cn("h-full min-h-0 w-full overflow-y-auto overflow-x-hidden overscroll-contain","mx-auto",c??(r?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),style:{height:l},onScroll:Q,children:jsxRuntime.jsx("div",{"data-token-list-horizontal-scroll":true,className:"w-full overflow-x-auto overflow-y-visible",children:jsxRuntime.jsxs(ui$1.StyledTable,{isHeaderSticky:true,radius:"none",classNames:{table:ui$1.cn("table-fixed",_),wrapper:"p-0 w-full !max-h-none !overflow-x-visible !overflow-y-visible bg-transparent rounded-none shadow-none",loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},"aria-label":"Tokens",children:[jsxRuntime.jsx(ui$1.TableHeader,{children:be}),jsxRuntime.jsx(ui$1.TableBody,{items:f,isLoading:k,loadingContent:Te,emptyContent:F,children:U})]})})}):jsxRuntime.jsxs(ui$1.StyledTable,{isHeaderSticky:true,isVirtualized:true,radius:"lg",className:Se,classNames:{loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},onScrollCapture:Q,maxTableHeight:l,rowHeight:u,"aria-label":"Tokens",children:[jsxRuntime.jsx(ui$1.TableHeader,{children:be}),jsxRuntime.jsx(ui$1.TableBody,{items:e,isLoading:k,loadingContent:Te,emptyContent:F,children:U})]})}function Ga({token:e,resolution:t,renderAction:o,isLast:r=false,onSelectToken:s,className:n}){let{t:i}=i18n.useTranslation(),a=ui$1.useCopyToClipboard(),l=hooks.useTickAge(e.createdAt),d=react.useCallback(()=>{s?.(e);},[s,e]),m=react.useCallback(W=>{W.stopPropagation(),a(e.address,()=>ui$1.toast.success(i("tokens.copied.address")));},[a,e.address,i]),c=e.marketData,p=e.stats?.[t],u=react.useMemo(()=>c?.priceInUsd,[c?.priceInUsd]),f=react.useMemo(()=>p?.priceChange,[p?.priceChange]),k=react.useMemo(()=>f&&new utils.SafeBigNumber(f).gte(0),[f]),x=react.useMemo(()=>f?new utils.SafeBigNumber(f).abs().toString():void 0,[f]),g=react.useMemo(()=>p?.volumesInUsd,[p?.volumesInUsd]),h=react.useMemo(()=>p?.buyVolumesInUsd,[p?.buyVolumesInUsd]),b=react.useMemo(()=>p?.sellVolumesInUsd,[p?.sellVolumesInUsd]),T=react.useMemo(()=>p?.trades,[p?.trades]),I=react.useMemo(()=>c?.marketCapInUsd,[c?.marketCapInUsd]),M=react.useMemo(()=>c?.tvlInUsd,[c?.tvlInUsd]),Q=react.useMemo(()=>new utils.SafeBigNumber(c?.top10HoldingsRatio).gte(.1),[c?.top10HoldingsRatio]),Se=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),_=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),be=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Te=react.useMemo(()=>new utils.SafeBigNumber(c?.bundleHoldingsRatio).gte(.1),[c?.bundleHoldingsRatio]),F=c?.holders!==void 0&&c.holders>0,ne=c?.kolHolders!==void 0&&c.kolHolders>0,U=c?.bluechipHolders!==void 0&&c.bluechipHolders>0,P=F||ne||U;return jsxRuntime.jsxs("div",{className:ui$1.cn("relative w-full h-full overflow-hidden px-4 py-3 hover:bg-content2/40 cursor-pointer",!r&&"border-b",n),style:r?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:s?d:void 0,children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx(ce,{token:e,enableSearch:true,enablePreview:!!e.image,showProgress:false,className:"w-20 h-20"}),jsxRuntime.jsxs("button",{type:"button",className:"text-xs font-mono text-neutral hover:text-foreground leading-none",onClick:m,"aria-label":i("tokens.copied.address"),title:i("tokens.copied.address"),children:[e.address.slice(0,4),"...",e.address.slice(-4)]})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("button",{type:"button",className:"flex items-center gap-1.5 min-w-0 text-left",onClick:m,"aria-label":i("tokens.copied.address"),title:i("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"flex-none text-sm font-semibold leading-none whitespace-nowrap overflow-hidden text-ellipsis max-w-24",children:e.symbol}),jsxRuntime.jsx(ui$1.StyledTooltip,{content:e.name,children:jsxRuntime.jsx("span",{className:"text-[13px] leading-none text-neutral truncate max-w-20",children:e.name})}),jsxRuntime.jsx(ui$1.CopyIcon,{className:"flex-none w-3.5 h-3.5 text-neutral"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 leading-none",children:[jsxRuntime.jsx("span",{className:"text-[13px] font-mono font-medium text-neutral",children:utils.formatAge(l)}),e.socialMedias?.website&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.website,className:"text-neutral hover:text-primary",target:"_blank",onClick:W=>W.stopPropagation(),children:jsxRuntime.jsx(ui$1.WebsiteIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.twitter,className:"text-neutral hover:text-primary",target:"_blank",onClick:W=>W.stopPropagation(),children:jsxRuntime.jsx(ui$1.TwitterIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.telegram,className:"text-neutral hover:text-primary",target:"_blank",onClick:W=>W.stopPropagation(),children:jsxRuntime.jsx(ui$1.TelegramIcon,{className:"w-3.5 h-3.5"})}),jsxRuntime.jsx(ui$1.Link,{href:utils.searchTwitterUrl(`${e.symbol} OR ${e.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",onClick:W=>W.stopPropagation(),children:jsxRuntime.jsx(ui$1.SearchIcon,{className:"w-3.5 h-3.5"})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-foreground/80 leading-none",children:[jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"MC"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(I)})]}),jsxRuntime.jsx("span",{className:"text-neutral/30",children:"\xB7"}),jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"Liq"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(M)})]})]}),P&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[F&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:i("tokens.tokenInfo.holders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.PeopleIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.holders)]})}),ne&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:i("tokens.tokenInfo.kolHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.CrownIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.kolHolders)]})}),U&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:i("tokens.listHeader.bluechip"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.ShiningStarIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.bluechipHolders)]})})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5 leading-none font-mono",children:[jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("span",{className:"text-base font-bold text-foreground leading-none",children:utils.formatPriceUSD(u)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex items-center gap-0.5 text-[10px] leading-none",k?"text-bullish":"text-bearish"),children:[k?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:8,height:8}),f===void 0?"--":utils.formatPercent(x)]})]}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"V"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmountUSDCompact(g)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(h)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(b)})]})]}),jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"TX"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmount(T)})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-start gap-4 relative",children:[jsxRuntime.jsx(ui$1.HorizontalScrollContainer,{className:"flex-auto min-w-0",forceShowArrows:true,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(c?.top10HoldingsRatio),tooltip:i("tokens.tokenInfo.top10HoldingsRatio"),warning:Q,disable:!c?.top10HoldingsRatio||c?.top10HoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(c?.devHoldingsRatio),tooltip:i("tokens.tokenInfo.devHoldingsRatio"),warning:Se,disable:!c?.devHoldingsRatio||c?.devHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(c?.sniperHoldingsRatio),tooltip:i("tokens.tokenInfo.sniperHoldingsRatio"),warning:_,disable:!c?.sniperHoldingsRatio||c?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(c?.insiderHoldingsRatio),tooltip:i("tokens.tokenInfo.insiderHoldingsRatio"),warning:be,disable:!c?.insiderHoldingsRatio||c?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx($,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(c?.bundleHoldingsRatio),tooltip:i("tokens.tokenInfo.bundleHoldingsRatio"),warning:Te,disable:!c?.bundleHoldingsRatio||c?.bundleHoldingsRatio==="0"})]})}),o&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:W=>W.stopPropagation(),children:o(e)})]})]})}function Xa({isLast:e=false}){return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full overflow-hidden px-4 py-3 animate-pulse",!e&&"border-b"),style:e?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-20 h-20 rounded-lg bg-content2"}),jsxRuntime.jsx("div",{className:"w-14 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1.5",children:[jsxRuntime.jsx("div",{className:"w-16 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-20 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-8 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-3",children:[jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-16 h-4 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-14 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-center gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-1 overflow-hidden",children:[jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-16 h-7 rounded-md bg-content2 flex-none"})]})]})}var sx=154,Ja=10;function ix({index:e,style:t,tokens:o,skeletonCount:r,resolution:s,renderAction:n,onSelectToken:i}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Ga,{token:o[e],resolution:s,isLast:e===o.length-1,renderAction:n,onSelectToken:i})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Xa,{isLast:e===r-1})})}function bR({tokens:e,resolution:t="24h",isLoading:o,height:r=600,renderAction:s,onSelectToken:n,className:i}){let a=o||!e?void 0:e,l=a?a.length:Ja,d=react.useMemo(()=>({tokens:a,skeletonCount:Ja,resolution:t,renderAction:s,onSelectToken:n}),[a,t,s,n]);return jsxRuntime.jsx("div",{className:ui$1.cn("w-full h-full overflow-hidden border rounded-lg",i),style:{background:"rgba(24,24,27,0.4)",borderColor:"rgba(39,39,42,0.6)"},children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",style:{height:r},rowCount:l,rowHeight:sx,overscanCount:5,rowComponent:ix,rowProps:d})})}var mx=80;function px(e){return {chain:e.chain,address:e.address,name:e.name??"",symbol:e.symbol??"",decimals:e.decimals??0,image:e.image,description:e.description,socialMedias:e.socialMedias,launchedFrom:e.launchedFrom,migratedTo:e.migratedTo,createdAt:e.createdAt}}function el(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,mx)}function tl({chain:e,resolution:t,options:o,refetchInterval:r=12e3,deferUpdates:s=false,updateFlushInterval:n}){let i=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),a=react.useRef(i),[l,d]=react.useState(true);react.useEffect(()=>{JSON.stringify(i)!==JSON.stringify(a.current)&&(d(true),a.current=i);},[i]);let[m,c]=react.useState([]),{data:p,isPending:u}=react$1.useNewTokensQuery(i,{refetchInterval:r});react.useEffect(()=>{p&&(c(g=>el(Xe(g,p))),d(false));},[p]);let f=react.useCallback(g=>{c(h=>{let b=[...h],T=false;for(let I of g){let M=b.findIndex(Q=>Q.address===I.address);M>=0?(T=true,b[M]=X(b[M],I)):(T=true,b.push(px(I)));}return T?el(b):h});},[]),{enqueueUpdates:k}=je({applyUpdates:f,paused:s,flushInterval:n});react$1.useNewTokensSubscription({chain:e},k);let x=react.useMemo(()=>!!(u||l),[u,l]);return {tokens:m,isLoading:x}}function IR({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:a,className:l}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let u=react.useMemo(()=>{let x=Object.keys(d??{})[0],g=d?.[x];return {...o,...x&&g?{sortBy:x,sortDirection:g}:void 0}},[o,d]),{tokens:f,isLoading:k}=tl({chain:e,resolution:t,options:u,deferUpdates:c});return jsxRuntime.jsx(mt,{tokens:f,isLoading:k,resolution:t,height:n,itemHeight:i,itemHeightMobile:a,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:l})}function sl({chain:e,filters:t,sortDirections:o,refetchInterval:r=12e3,deferUpdates:s=false,updateFlushInterval:n}){let i=react.useMemo(()=>({chain:e}),[e]),a=react.useRef(i),[l,d]=react.useState(true);react.useEffect(()=>{JSON.stringify(i)!==JSON.stringify(a.current)&&(d(true),a.current=i);},[i]);let[m,c]=react.useState([]),{data:p,isPending:u}=react$1.useStockTokensQuery(i,{refetchInterval:r});react.useEffect(()=>{p&&(c(b=>Xe(b,p)),d(false));},[p]);let f=react.useCallback(b=>{c(T=>Ce(T,b));},[]),{enqueueUpdates:k}=je({applyUpdates:f,paused:s,flushInterval:n});react$1.useStockTokensSubscription({chain:e},k),we({chain:e,tokens:m,onUpdate:k});let x=react.useMemo(()=>!!(u||l),[u,l]),g=react.useMemo(()=>Jt(m,t),[m,t]);return {tokens:react.useMemo(()=>Yt(g,o),[g,o]),isLoading:x}}function GR({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:a,className:l}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let{tokens:u,isLoading:f}=sl({chain:e,filters:o,sortDirections:d,deferUpdates:c});return jsxRuntime.jsx(mt,{tokens:u,isLoading:f,resolution:t,height:n,itemHeight:i,itemHeightMobile:a,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:l})}function oA({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:a,className:l}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let{tokens:u,isLoading:f}=eo({chain:e,resolution:t,filters:o,sortDirections:d,deferUpdates:c});return jsxRuntime.jsx(mt,{tokens:u,isLoading:f,resolution:t,height:n,itemHeight:i,itemHeightMobile:a,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:l})}var Rx=15e3;function Ax({chain:e,addresses:t,pollMs:o=Rx}){let r=t.length>0,[s,n]=react.useState({}),i=react$1.useTokensQuery({chain:e,addresses:t},{enabled:r,refetchInterval:o});react.useEffect(()=>{i.data&&n(c=>{let p={};for(let u of i.data){let f=c[u.address];p[u.address]=f?X(f,u):u;}return p});},[i.data]);let{subscribeClient:a}=react$1.useDexClient(),l=react.useRef(""),d=t.slice().sort().join(",");d!==l.current&&(l.current=d),react.useEffect(()=>{if(!r)return;let c=[];for(let p of t)c.push(a.subscribeToken(e,p,u=>{n(f=>{let k=f;for(let x of u){let g=k[x.address];if(!g)continue;let h=X(g,x);h!==g&&(k=k===f?{...f}:k,k[x.address]=h);}return k});}));return ()=>{for(let p of c)p.unsubscribe();}},[a,e,d,r]);let m=react.useCallback(async()=>{await i.refetch();},[i.refetch]);return {tokens:s,isPending:i.isPending,isFetching:i.isFetching,isError:i.isError,isSuccess:i.isSuccess,error:i.error,refetch:m}}Object.defineProperty(exports,"formatAmount",{enumerable:true,get:function(){return utils.formatAmount}});exports.DEFAULT_FLIP_HOVER_RESOLUTIONS=ti;exports.HolderTagBadge=kl;exports.HolderTagBadgeList=Ot;exports.HoldingRatioChip=$;exports.NewTokenListWidget=IR;exports.PulseFinalStretchListWidget=vh;exports.PulseList=Ge;exports.PulseListHeader=Pr;exports.PulseListItem=Kr;exports.PulseListItemSkeleton=Rr;exports.PulseMigratedListWidget=ch;exports.PulseNewListWidget=Xk;exports.SEARCH_MODAL_ID=Bo;exports.SearchHistoryUI=Tn;exports.SearchHistoryWidget=yn;exports.SearchInputUI=vn;exports.SearchModal=hT;exports.SearchResultItemUI=$t;exports.SearchResultListHeader=Kt;exports.SearchResultListSkeleton=qt;exports.SearchResultListWidget=An;exports.SearchTokensButton=LT;exports.SearchWidget=Kn;exports.StockTokenListWidget=GR;exports.TRADER_TAG_META=Io;exports.TokenAbout=Ks;exports.TokenAboutWidget=rS;exports.TokenActivitiesList=Rs;exports.TokenActivitiesListWidget=E0;exports.TokenAvatar=ce;exports.TokenBasicInfo=jn;exports.TokenBasicInfoWidget=vs;exports.TokenCategories=js;exports.TokenCategoriesWidget=XS;exports.TokenCexListing=Js;exports.TokenCexListingWidget=FS;exports.TokenChartBanner=wi;exports.TokenChartBannerWidget=$w;exports.TokenDetailHeader=Jn;exports.TokenDetailHeaderWidget=Zv;exports.TokenDevTokensList=hi;exports.TokenDevTokensListWidget=Pw;exports.TokenDevTokensSummary=bi;exports.TokenHoldersCount=ts;exports.TokenHoldersCountWidget=rs;exports.TokenHoldersList=Cs;exports.TokenHoldersListWidget=b0;exports.TokenLiquidities=Gs;exports.TokenLiquiditiesWidget=TS;exports.TokenList=mt;exports.TokenListFilter=yo;exports.TokenListFilterModal=aa;exports.TokenListFilterPopover=ma;exports.TokenListFilterWidget=c1;exports.TokenListResolutionSelectorDesktop=fa;exports.TokenListResolutionSelectorMobile=xa;exports.TokenListResolutionSelectorWidget=L1;exports.TokenMarketCap=is;exports.TokenMarketCapWidget=ls;exports.TokenOrdersList=di;exports.TokenOrdersListWidget=QC;exports.TokenPositionsList=si;exports.TokenPositionsListWidget=RC;exports.TokenPrice=ms;exports.TokenPriceWidget=us;exports.TokenReusedImageList=Hi;exports.TokenReusedImageListWidget=hL;exports.TokenSecurity=Bs;exports.TokenSecurityWidget=$N;exports.TokenSimilarTokens=Ri;exports.TokenSimilarTokensWidget=sL;exports.TokenSocialMedia=fs;exports.TokenSocialMediaWidget=xs;exports.TokenStatsFlipBase=oi;exports.TokenStatsFlipHover=ri;exports.TokenStatsFlipWidget=mC;exports.TokenTopTradersList=fi;exports.TokenTopTradersListWidget=pw;exports.TokenTradersOverview=Fs;exports.TokenTradersOverviewWidget=j0;exports.TokenTransactionsOverview=Os;exports.TokenTransactionsOverviewWidget=fN;exports.TokenVolume=bs;exports.TokenVolumeWidget=ys;exports.TokenVolumesOverview=Es;exports.TokenVolumesOverviewWidget=RN;exports.TraderTagBadge=xl;exports.TraderTagBadgeList=Mr;exports.TrendingTokenCard=Ga;exports.TrendingTokenCardList=bR;exports.TrendingTokenCardSkeleton=Xa;exports.TrendingTokenListWidget=oA;exports.useNewTokensScript=tl;exports.usePulseFinalStretchListScript=xn;exports.usePulseMigratedListScript=mn;exports.usePulseNewListScript=nn;exports.useSearchHistory=_t;exports.useSearchResultListScript=Pn;exports.useSearchScript=_n;exports.useStockTokensScript=sl;exports.useTokenAboutScript=zs;exports.useTokenActivitiesListScript=Is;exports.useTokenBasicInfoScript=ky;exports.useTokenCategoriesScript=ei;exports.useTokenCexListingScript=Ys;exports.useTokenChartBannerScript=Pi;exports.useTokenDetailHeaderScript=Yn;exports.useTokenDevTokensListScript=Ni;exports.useTokenHoldersCountScript=os;exports.useTokenHoldersListScript=Ps;exports.useTokenLiquiditiesScript=Xs;exports.useTokenMarketCapScript=as;exports.useTokenOrdersListScript=ui;exports.useTokenPositionsListScript=li;exports.useTokenPriceScript=ps;exports.useTokenReusedImageListScript=Ii;exports.useTokenSecurityScript=Vs;exports.useTokenSimilarTokensScript=Ai;exports.useTokenSocialMediaScript=gs;exports.useTokenStatsFlipScript=ni;exports.useTokenTopTradersListScript=xi;exports.useTokenTradersOverviewScript=Us;exports.useTokenTransactionsOverviewScript=Ds;exports.useTokenVolumeScript=Ts;exports.useTokenVolumesOverviewScript=Ws;exports.useTokens=Ax;exports.useTrendingTokensScript=eo;//# sourceMappingURL=index.js.map
23
+ `,Cg={background:"linear-gradient(90deg, rgba(255,255,255,0.03) 25%, rgba(255,255,255,0.06) 50%, rgba(255,255,255,0.03) 75%)",backgroundSize:"200% 100%",animation:"tklShimmer 1.8s ease-in-out infinite",borderRadius:6};function V(e,t,o,r){return {...Cg,animationDelay:`${e}ms`,width:t,height:o,...r}}var qa=10;function Qa({rowHeight:e,hasActions:t,isMobile:o}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{children:Sg}),Array.from({length:qa}).map((r,s)=>jsxRuntime.jsx(wg,{index:s,rowHeight:e,hasActions:t,isMobile:o,isLast:s===qa-1},s))]})}function wg({index:e,rowHeight:t,hasActions:o,isMobile:r,isLast:s}){let n=e*80,i=r?208:320,l=r?40:64,a=r?72:124,d=r?64:97;return jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",height:t,borderBottom:s?void 0:"1px solid rgba(39,39,42,0.3)"},children:[jsxRuntime.jsxs("div",{style:{width:i,padding:r?"0 12px":"0 12px 0 24px",display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[jsxRuntime.jsx("div",{style:V(n,l,l,{borderRadius:8,flexShrink:0})}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:1},children:[jsxRuntime.jsx("div",{style:V(n+30,"60%",20)}),jsxRuntime.jsx("div",{style:V(n+60,"80%",16)})]})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:V(n+20,72,20)}),jsxRuntime.jsx("div",{style:V(n+40,52,16)})]}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:V(n+30,64,20)})}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:V(n+40,60,20)})}),jsxRuntime.jsxs("div",{style:{width:138,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:V(n+50,72,20)}),jsxRuntime.jsx("div",{style:V(n+70,100,16)})]}),jsxRuntime.jsxs("div",{style:{width:126,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:V(n+60,48,20)}),jsxRuntime.jsx("div",{style:V(n+80,80,16)})]}),jsxRuntime.jsxs("div",{style:{width:126,padding:"0 12px",display:"flex",flexDirection:"column",justifyContent:"center",gap:4},children:[jsxRuntime.jsx("div",{style:V(n+70,40,20)}),jsxRuntime.jsx("div",{style:V(n+90,72,16)})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",alignItems:"center",gap:10},children:[jsxRuntime.jsx("div",{style:V(n+80,20,20,{borderRadius:4})}),jsxRuntime.jsx("div",{style:V(n+90,52,20)})]}),jsxRuntime.jsxs("div",{style:{width:308,padding:"0 12px",display:"flex",alignItems:"center",gap:20},children:[jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:V(n+80,52,16)}),jsxRuntime.jsx("div",{style:V(n+100,40,16)}),jsxRuntime.jsx("div",{style:V(n+120,36,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:V(n+90,48,16)}),jsxRuntime.jsx("div",{style:V(n+110,40,16)}),jsxRuntime.jsx("div",{style:V(n+130,40,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:V(n+100,40,16)}),jsxRuntime.jsx("div",{style:V(n+120,36,16)})]})]}),o&&jsxRuntime.jsx("div",{style:{width:a,padding:r?"0 12px 0 0":"0 24px 0 12px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:jsxRuntime.jsx("div",{style:V(n+100,d,32,{borderRadius:8})})})]})}var Mg=100,Ug=200,Og=72;function ut({tokens:e,resolution:t="24h",isLoading:o,ActionsComponent:r,onSelectToken:s,sortDirections:n,onSortChange:i,onScrollingChange:l,height:a=600,itemHeight:d=88,itemHeightMobile:m=72,className:c}){let{isMobile:p}=ui.useScreen(),u=p?m:d,g=react.useMemo(()=>e.slice(0,Mg),[e]),f=o&&e.length===0,x=react.useRef(void 0),b=react.useRef(false),{t:h}=i18n.useTranslation(),k=react.useCallback(H=>_=>{_.preventDefault(),_.stopPropagation(),s?.(H);},[s]),[T,C]=react.useState(n??{});react.useEffect(()=>{C(n??{});},[n]);let y=react.useCallback(H=>_=>{let xt={[H]:_};C(xt),i?.(xt);},[i]),L=react.useCallback(()=>{b.current||(b.current=true,l?.(true)),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{b.current=false,l?.(false);},180);},[l]);react.useEffect(()=>()=>{x.current&&clearTimeout(x.current),b.current&&l?.(false);},[l]);let W=ui.cn("h-full mx-auto",c??(r?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),I=r?"!w-[1438px] min-w-[1438px] max-w-[1438px]":"!w-[1366px] min-w-[1366px] max-w-[1366px]",te=[jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.token"),width:p?Ug:320,className:ui.cn("bg-[#0a0a0b] sticky left-0 z-10",p&&"!w-[200px] min-w-[200px] max-w-[200px] overflow-hidden","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]"),children:h("tokens.listHeader.token")},"token"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.price"),width:128,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(ui.Sortable,{sort:T.price,onSortChange:y("price"),children:h("tokens.listHeader.price")}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsx(ui.Sortable,{sort:T[`priceChange${t}`],onSortChange:y(`priceChange${t}`),children:h("tokens.listHeader.priceChange",{resolution:t})})]})},"price"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.marketCap"),width:106,children:jsxRuntime.jsx(ui.Sortable,{sort:T.marketCap,onSortChange:y("marketCap"),children:h("tokens.listHeader.marketCap")})},"marketCap"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.liquidity"),width:106,children:jsxRuntime.jsx(ui.Sortable,{sort:T.tvl,onSortChange:y("tvl"),children:h("tokens.listHeader.liquidity")})},"liquidity"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.volumes",{resolution:t}),width:138,children:jsxRuntime.jsx(ui.Sortable,{sort:T[`volumes${t}`],onSortChange:y(`volumes${t}`),children:h("tokens.listHeader.volumes",{resolution:t})})},"volumes"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.txs",{resolution:t}),width:126,children:jsxRuntime.jsx(ui.Sortable,{sort:T[`trades${t}`],onSortChange:y(`trades${t}`),children:h("tokens.listHeader.txs",{resolution:t})})},"txs"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.traders",{resolution:t}),width:126,children:jsxRuntime.jsx(ui.Sortable,{sort:T[`traders${t}`],onSortChange:y(`traders${t}`),children:h("tokens.listHeader.traders",{resolution:t})})},"traders"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.bluechip"),width:128,children:h("tokens.listHeader.bluechip")},"bluechip"),jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.tokenInfo"),width:308,children:h("tokens.listHeader.tokenInfo")},"tokenInfo"),r?jsxRuntime.jsx(ui.TableColumn,{textValue:h("tokens.listHeader.actions"),width:p?Og:124,align:"end",className:ui.cn("bg-[#0a0a0b] sticky right-0 z-10",p&&"!w-[72px] min-w-[72px] max-w-[72px]","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]"),children:h("tokens.listHeader.actions")},"actions"):void 0].filter(Boolean),Se=jsxRuntime.jsx(Qa,{rowHeight:u,hasActions:!!r,isMobile:p}),O=jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx(ui.EmptyIcon,{className:"w-10 h-10 mx-auto text-neutral"}),jsxRuntime.jsx("p",{className:"mt-2 text-sm text-neutral text-center",children:h("common.empty")})]}),ie=H=>[jsxRuntime.jsx(ui.TableCell,{className:ui.cn("sticky left-0 z-10 bg-[#0a0a0b]",p&&"!w-[200px] min-w-[200px] max-w-[200px] overflow-hidden","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:!bg-[#101211]"),children:jsxRuntime.jsx(Fa,{token:H,resolution:t})},"token"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Ba,{token:H,resolution:t})},"price"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Oa,{token:H,resolution:t})},"marketCap"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Ua,{token:H,resolution:t})},"liquidity"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(za,{token:H,resolution:t})},"volumes"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx($a,{token:H,resolution:t})},"trades"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Va,{token:H,resolution:t})},"traders"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(wa,{token:H,resolution:t})},"bluechip"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Ma,{token:H,resolution:t})},"tokenInfo"),r?jsxRuntime.jsx(ui.TableCell,{className:ui.cn("sticky right-0 z-10 bg-[#0a0a0b]",p&&"!w-[72px] min-w-[72px] max-w-[72px]","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:!bg-[#101211]"),children:jsxRuntime.jsx("div",{className:ui.cn("!absolute inset-y-0 right-3 z-1 w-fit","flex items-center justify-end"),children:jsxRuntime.jsx(r,{token:H,resolution:t})})},"actions"):void 0].filter(Boolean),D=H=>jsxRuntime.jsx(ui.TableRow,{onClick:s?k(H):void 0,children:ie(H)},H.address);return p?jsxRuntime.jsx("div",{"data-token-list-mobile-scroll":true,className:ui.cn("h-full min-h-0 w-full overflow-y-auto overflow-x-hidden overscroll-contain","mx-auto",c??(r?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),style:{height:a},onScroll:L,children:jsxRuntime.jsx("div",{"data-token-list-horizontal-scroll":true,className:"w-full overflow-x-auto overflow-y-visible",children:jsxRuntime.jsxs(ui.StyledTable,{isHeaderSticky:true,radius:"none",classNames:{table:ui.cn("table-fixed",I),wrapper:"p-0 w-full !max-h-none !overflow-x-visible !overflow-y-visible bg-transparent rounded-none shadow-none",loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},"aria-label":"Tokens",children:[jsxRuntime.jsx(ui.TableHeader,{children:te}),jsxRuntime.jsx(ui.TableBody,{items:g,isLoading:f,loadingContent:Se,emptyContent:O,children:D})]})})}):jsxRuntime.jsxs(ui.StyledTable,{isHeaderSticky:true,isVirtualized:true,radius:"lg",className:W,classNames:{loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},onScrollCapture:L,maxTableHeight:a,rowHeight:u,"aria-label":"Tokens",children:[jsxRuntime.jsx(ui.TableHeader,{children:te}),jsxRuntime.jsx(ui.TableBody,{items:e,isLoading:f,loadingContent:Se,emptyContent:O,children:D})]})}function tl({token:e,resolution:t,renderAction:o,isLast:r=false,onSelectToken:s,className:n}){let{t:i}=i18n.useTranslation(),l=ui.useCopyToClipboard(),a=hooks.useTickAge(e.createdAt),d=react.useCallback(()=>{s?.(e);},[s,e]),m=react.useCallback(_=>{_.stopPropagation(),l(e.address,()=>ui.toast.success(i("tokens.copied.address")));},[l,e.address,i]),c=e.marketData,p=e.stats?.[t],u=react.useMemo(()=>c?.priceInUsd,[c?.priceInUsd]),g=react.useMemo(()=>p?.priceChange,[p?.priceChange]),f=react.useMemo(()=>g&&new utils.SafeBigNumber(g).gte(0),[g]),x=react.useMemo(()=>g?new utils.SafeBigNumber(g).abs().toString():void 0,[g]),b=react.useMemo(()=>p?.volumesInUsd,[p?.volumesInUsd]),h=react.useMemo(()=>p?.buyVolumesInUsd,[p?.buyVolumesInUsd]),k=react.useMemo(()=>p?.sellVolumesInUsd,[p?.sellVolumesInUsd]),T=react.useMemo(()=>p?.trades,[p?.trades]),C=react.useMemo(()=>c?.marketCapInUsd,[c?.marketCapInUsd]),y=react.useMemo(()=>c?.tvlInUsd,[c?.tvlInUsd]),L=react.useMemo(()=>new utils.SafeBigNumber(c?.top10HoldingsRatio).gte(.1),[c?.top10HoldingsRatio]),W=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),I=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),te=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Se=react.useMemo(()=>new utils.SafeBigNumber(c?.bundleHoldingsRatio).gte(.1),[c?.bundleHoldingsRatio]),O=c?.holders!==void 0&&c.holders>0,ie=c?.kolHolders!==void 0&&c.kolHolders>0,D=c?.bluechipHolders!==void 0&&c.bluechipHolders>0,H=O||ie||D;return jsxRuntime.jsxs("div",{className:ui.cn("relative w-full h-full overflow-hidden px-4 py-3 hover:bg-content2/40 cursor-pointer",!r&&"border-b",n),style:r?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:s?d:void 0,children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx(fe,{token:e,enableSearch:true,enablePreview:!!e.image,showProgress:false,className:"w-20 h-20"}),jsxRuntime.jsxs("button",{type:"button",className:"text-xs font-mono text-neutral hover:text-foreground leading-none",onClick:m,"aria-label":i("tokens.copied.address"),title:i("tokens.copied.address"),children:[e.address.slice(0,4),"...",e.address.slice(-4)]})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2.5",children:[jsxRuntime.jsxs("button",{type:"button",className:"flex items-center gap-1.5 min-w-0 text-left",onClick:m,"aria-label":i("tokens.copied.address"),title:i("tokens.copied.address"),children:[jsxRuntime.jsx("span",{className:"flex-none text-sm font-semibold leading-none whitespace-nowrap overflow-hidden text-ellipsis max-w-24",children:e.symbol}),jsxRuntime.jsx(ui.StyledTooltip,{content:e.name,children:jsxRuntime.jsx("span",{className:"text-[13px] leading-none text-neutral truncate max-w-20",children:e.name})}),jsxRuntime.jsx(ui.CopyIcon,{className:"flex-none w-3.5 h-3.5 text-neutral"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 leading-none",children:[jsxRuntime.jsx("span",{className:"text-[13px] font-mono font-medium text-neutral",children:utils.formatAge(a)}),e.socialMedias?.website&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.website,className:"text-neutral hover:text-primary",target:"_blank",onClick:_=>_.stopPropagation(),children:jsxRuntime.jsx(ui.WebsiteIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.twitter,className:"text-neutral hover:text-primary",target:"_blank",onClick:_=>_.stopPropagation(),children:jsxRuntime.jsx(ui.TwitterIcon,{className:"w-3.5 h-3.5"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.telegram,className:"text-neutral hover:text-primary",target:"_blank",onClick:_=>_.stopPropagation(),children:jsxRuntime.jsx(ui.TelegramIcon,{className:"w-3.5 h-3.5"})}),jsxRuntime.jsx(ui.Link,{href:utils.searchTwitterUrl(`${e.symbol} OR ${e.address}`),className:"max-sm:hidden text-neutral hover:text-primary",target:"_blank",onClick:_=>_.stopPropagation(),children:jsxRuntime.jsx(ui.SearchIcon,{className:"w-3.5 h-3.5"})})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-foreground/80 leading-none",children:[jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"MC"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(C)})]}),jsxRuntime.jsx("span",{className:"text-neutral/30",children:"\xB7"}),jsxRuntime.jsxs("span",{className:"inline-flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-neutral",children:"Liq"}),jsxRuntime.jsx("span",{children:utils.formatAmountUSDCompact(y)})]})]}),H&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[O&&jsxRuntime.jsx(ui.StyledTooltip,{content:i("tokens.tokenInfo.holders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.PeopleIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.holders)]})}),ie&&jsxRuntime.jsx(ui.StyledTooltip,{content:i("tokens.tokenInfo.kolHolders"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.CrownIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.kolHolders)]})}),D&&jsxRuntime.jsx(ui.StyledTooltip,{content:i("tokens.listHeader.bluechip"),children:jsxRuntime.jsxs("span",{className:"inline-flex items-center gap-1",children:[jsxRuntime.jsx(ui.ShiningStarIcon,{className:"w-3 h-3 text-neutral"}),utils.formatAmount(c?.bluechipHolders)]})})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-2.5 leading-none font-mono",children:[jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("span",{className:"text-base font-bold text-foreground leading-none",children:utils.formatPriceUSD(u)}),jsxRuntime.jsxs("span",{className:ui.cn("inline-flex items-center gap-0.5 text-[10px] leading-none",f?"text-bullish":"text-bearish"),children:[f?jsxRuntime.jsx(ui.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui.TriangleDownIcon,{width:8,height:8}),g===void 0?"--":utils.formatPercent(x)]})]}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"V"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmountUSDCompact(b)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(h)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(k)})]})]}),jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"TX"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmount(T)})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-start gap-4 relative",children:[jsxRuntime.jsx(ui.HorizontalScrollContainer,{className:"flex-auto min-w-0",forceShowArrows:true,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(c?.top10HoldingsRatio),tooltip:i("tokens.tokenInfo.top10HoldingsRatio"),warning:L,disable:!c?.top10HoldingsRatio||c?.top10HoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(c?.devHoldingsRatio),tooltip:i("tokens.tokenInfo.devHoldingsRatio"),warning:W,disable:!c?.devHoldingsRatio||c?.devHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(c?.sniperHoldingsRatio),tooltip:i("tokens.tokenInfo.sniperHoldingsRatio"),warning:I,disable:!c?.sniperHoldingsRatio||c?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(c?.insiderHoldingsRatio),tooltip:i("tokens.tokenInfo.insiderHoldingsRatio"),warning:te,disable:!c?.insiderHoldingsRatio||c?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(z,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(c?.bundleHoldingsRatio),tooltip:i("tokens.tokenInfo.bundleHoldingsRatio"),warning:Se,disable:!c?.bundleHoldingsRatio||c?.bundleHoldingsRatio==="0"})]})}),o&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:_=>_.stopPropagation(),children:o(e)})]})]})}function ol({isLast:e=false}){return jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full overflow-hidden px-4 py-3 animate-pulse",!e&&"border-b"),style:e?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},children:[jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-20 h-20 rounded-lg bg-content2"}),jsxRuntime.jsx("div",{className:"w-14 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1.5",children:[jsxRuntime.jsx("div",{className:"w-16 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-20 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-8 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-3.5 h-3.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-10 h-3 rounded bg-content2"})]})]}),jsxRuntime.jsxs("div",{className:"flex-none flex flex-col items-end gap-3",children:[jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-16 h-4 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]}),jsxRuntime.jsxs("div",{className:"flex flex-col items-end gap-1",children:[jsxRuntime.jsx("div",{className:"w-14 h-3 rounded bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-2.5 rounded bg-content2"})]})]})]}),jsxRuntime.jsxs("div",{className:"mt-2.5 flex items-center gap-2",children:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0 flex items-center gap-1 overflow-hidden",children:[jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"}),jsxRuntime.jsx("div",{className:"w-12 h-5 rounded-full bg-content2"})]}),jsxRuntime.jsx("div",{className:"w-16 h-7 rounded-md bg-content2 flex-none"})]})]})}var cx=154,rl=10;function mx({index:e,style:t,tokens:o,skeletonCount:r,resolution:s,renderAction:n,onSelectToken:i}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(tl,{token:o[e],resolution:s,isLast:e===o.length-1,renderAction:n,onSelectToken:i})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(ol,{isLast:e===r-1})})}function IR({tokens:e,resolution:t="24h",isLoading:o,height:r=600,renderAction:s,onSelectToken:n,className:i}){let l=o||!e?void 0:e,a=l?l.length:rl,d=react.useMemo(()=>({tokens:l,skeletonCount:rl,resolution:t,renderAction:s,onSelectToken:n}),[l,t,s,n]);return jsxRuntime.jsx("div",{className:ui.cn("w-full h-full overflow-hidden border rounded-lg",i),style:{background:"rgba(24,24,27,0.4)",borderColor:"rgba(39,39,42,0.6)"},children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",style:{height:r},rowCount:a,rowHeight:cx,overscanCount:5,rowComponent:mx,rowProps:d})})}var gx=80;function ll(e){return {chain:e.chain,address:e.address,name:e.name??"",symbol:e.symbol??"",decimals:e.decimals??0,image:e.image,description:e.description,socialMedias:e.socialMedias,launchedFrom:e.launchedFrom,migratedTo:e.migratedTo,createdAt:e.createdAt}}function xx(e,t,o){return e===t?o:e===o?t:o||t}function Fr(e){let t=e.token?.address??e.tokenAAddress??"",o=e.token;return {...o,chain:e.chain,address:t,name:o?.name??"",symbol:o?.symbol??"",decimals:o?.decimals??0,createdAt:o?.createdAt??e.createdAt,liquidities:[{poolAddress:e.poolAddress,pairAddress:xx(t,e.tokenAAddress,e.tokenBAddress),image:e.dex?.image,programAddress:e.dex?.programAddress,protocolFamily:e.dex?.protocolFamily,protocolName:e.dex?.protocolName}]}}function kx(e){return {...ll(Fr(e)),...e.token??{},liquidities:Fr(e).liquidities,createdAt:e.token?.createdAt??e.createdAt}}function al(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,gx)}function bx(e){if(!(!e?.filters&&!e?.keywords&&!e?.excludeKeywords))return {filters:e.filters,keywords:e.keywords,excludeKeywords:e.excludeKeywords}}function hx(e){if(!(!e?.sortBy||!e.sortDirection))return {[e.sortBy]:e.sortDirection}}function dl({chain:e,options:t,deferUpdates:o=false,updateFlushInterval:r}){let s=react.useMemo(()=>({chain:e}),[e]),n=react.useRef(s),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{JSON.stringify(s)!==JSON.stringify(n.current)&&(l(true),d([]),n.current=s);},[s]);let{data:m,isPending:c}=react$1.useNewPoolsQuery(s);react.useEffect(()=>{m&&(d(h=>{let k=[...h];for(let T of m){let C=kx(T),y=k.findIndex(L=>L.address===C.address);y>=0?k[y]=X(k[y],C):k.push(C);}return al(k)}),l(false));},[m]);let p=react.useCallback(h=>{d(k=>{let T=[...k],C=false;for(let y of h){let L=T.findIndex(W=>W.address===y.address);L>=0?(C=true,T[L]=X(T[L],y)):(C=true,T.push(ll(y)));}return C?al(T):k});},[]),{enqueueUpdates:u}=de({applyUpdates:p,paused:o,flushInterval:r}),g=react.useCallback(h=>{u(h.map(Fr));},[u]);react$1.useNewPoolsSubscription({chain:e},g),xe({chain:e,tokens:a,onUpdate:u});let f=react.useMemo(()=>!!(c||i),[c,i]),x=react.useMemo(()=>le(a,bx(t)),[a,t]);return {tokens:react.useMemo(()=>et(x,hx(t)),[x,t]),isLoading:f}}function QR({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let u=react.useMemo(()=>{let x=Object.keys(d??{})[0],b=d?.[x];return {...o,...x&&b?{sortBy:x,sortDirection:b}:void 0}},[o,d]),{tokens:g,isLoading:f}=dl({chain:e,options:u,deferUpdates:c});return jsxRuntime.jsx(ut,{tokens:g,isLoading:f,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:a})}function ul({chain:e,filters:t,sortDirections:o,refetchInterval:r=12e3,deferUpdates:s=false,updateFlushInterval:n}){let i=react.useMemo(()=>({chain:e}),[e]),l=react.useRef(i),[a,d]=react.useState(true);react.useEffect(()=>{JSON.stringify(i)!==JSON.stringify(l.current)&&(d(true),l.current=i);},[i]);let[m,c]=react.useState([]),{data:p,isPending:u}=react$1.useStockTokensQuery(i,{refetchInterval:r});react.useEffect(()=>{p&&(c(k=>$t(k,p)),d(false));},[p]);let g=react.useCallback(k=>{c(T=>Re(T,k));},[]),{enqueueUpdates:f}=de({applyUpdates:g,paused:s,flushInterval:n});react$1.useStockTokensSubscription({chain:e},f),xe({chain:e,tokens:m,onUpdate:f});let x=react.useMemo(()=>!!(u||a),[u,a]),b=react.useMemo(()=>le(m,t),[m,t]);return {tokens:react.useMemo(()=>et(b,o),[b,o]),isLoading:x}}function dA({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let{tokens:u,isLoading:g}=ul({chain:e,filters:o,sortDirections:d,deferUpdates:c});return jsxRuntime.jsx(ut,{tokens:u,isLoading:g,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:a})}function kA({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:s,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState(),[c,p]=react.useState(false);react.useEffect(()=>{m(void 0);},[e]);let{tokens:u,isLoading:g}=eo({chain:e,resolution:t,filters:o,sortDirections:d,deferUpdates:c});return jsxRuntime.jsx(ut,{tokens:u,isLoading:g,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:s,sortDirections:d,onSortChange:m,onScrollingChange:p,className:a})}var Ox=15e3;function Dx({chain:e,addresses:t,pollMs:o=Ox}){let r=t.length>0,[s,n]=react.useState({}),i=react$1.useTokensQuery({chain:e,addresses:t},{enabled:r,refetchInterval:o});react.useEffect(()=>{i.data&&n(c=>{let p={};for(let u of i.data){let g=c[u.address];p[u.address]=g?X(g,u):u;}return p});},[i.data]);let{subscribeClient:l}=react$1.useDexClient(),a=react.useRef(""),d=t.slice().sort().join(",");d!==a.current&&(a.current=d),react.useEffect(()=>{if(!r)return;let c=[];for(let p of t)c.push(l.subscribeToken(e,p,u=>{n(g=>{let f=g;for(let x of u){let b=f[x.address];if(!b)continue;let h=X(b,x);h!==b&&(f=f===g?{...g}:f,f[x.address]=h);}return f});}));return ()=>{for(let p of c)p.unsubscribe();}},[l,e,d,r]);let m=react.useCallback(async()=>{await i.refetch();},[i.refetch]);return {tokens:s,isPending:i.isPending,isFetching:i.isFetching,isError:i.isError,isSuccess:i.isSuccess,error:i.error,refetch:m}}Object.defineProperty(exports,"formatAmount",{enumerable:true,get:function(){return utils.formatAmount}});exports.DEFAULT_FLIP_HOVER_RESOLUTIONS=ai;exports.HolderTagBadge=Sl;exports.HolderTagBadgeList=Dt;exports.HoldingRatioChip=z;exports.NewTokenListWidget=QR;exports.PulseFinalStretchListWidget=Wb;exports.PulseList=Je;exports.PulseListHeader=Ur;exports.PulseListItem=Jr;exports.PulseListItemSkeleton=Ho;exports.PulseMigratedListWidget=wb;exports.PulseNewListWidget=db;exports.SEARCH_MODAL_ID=zo;exports.SearchHistoryUI=Hn;exports.SearchHistoryWidget=Fn;exports.SearchInputUI=Mn;exports.SearchModal=AT;exports.SearchResultItemUI=Gt;exports.SearchResultListHeader=Xt;exports.SearchResultListSkeleton=Yt;exports.SearchResultListWidget=_n;exports.SearchTokensButton=BT;exports.SearchWidget=Jn;exports.StockTokenListWidget=dA;exports.TRADER_TAG_META=Fo;exports.TokenAbout=Js;exports.TokenAboutWidget=gS;exports.TokenActivitiesList=Us;exports.TokenActivitiesListWidget=J0;exports.TokenAvatar=fe;exports.TokenBasicInfo=ss;exports.TokenBasicInfoWidget=Ps;exports.TokenCategories=si;exports.TokenCategoriesWidget=aC;exports.TokenCexListing=oi;exports.TokenCexListingWidget=qS;exports.TokenChartBanner=Hi;exports.TokenChartBannerWidget=tL;exports.TokenDetailHeader=os;exports.TokenDetailHeaderWidget=c0;exports.TokenDevTokensList=Si;exports.TokenDevTokensListWidget=Ww;exports.TokenDevTokensSummary=Ci;exports.TokenHoldersCount=as;exports.TokenHoldersCountWidget=ds;exports.TokenHoldersList=Is;exports.TokenHoldersListWidget=I0;exports.TokenLiquidities=ei;exports.TokenLiquiditiesWidget=HS;exports.TokenList=ut;exports.TokenListFilter=yo;exports.TokenListFilterModal=ua;exports.TokenListFilterPopover=ba;exports.TokenListFilterWidget=v1;exports.TokenListResolutionSelectorDesktop=ya;exports.TokenListResolutionSelectorMobile=Na;exports.TokenListResolutionSelectorWidget=B1;exports.TokenMarketCap=ps;exports.TokenMarketCapWidget=fs;exports.TokenOrdersList=gi;exports.TokenOrdersListWidget=sw;exports.TokenPositionsList=mi;exports.TokenPositionsListWidget=VC;exports.TokenPrice=ks;exports.TokenPriceWidget=hs;exports.TokenReusedImageList=Di;exports.TokenReusedImageListWidget=AL;exports.TokenSecurity=qs;exports.TokenSecurityWidget=tS;exports.TokenSimilarTokens=Ui;exports.TokenSimilarTokensWidget=kL;exports.TokenSocialMedia=Ts;exports.TokenSocialMediaWidget=vs;exports.TokenStatsFlipBase=li;exports.TokenStatsFlipHover=di;exports.TokenStatsFlipWidget=NC;exports.TokenTopTradersList=Ti;exports.TokenTopTradersListWidget=Sw;exports.TokenTradersOverview=Ws;exports.TokenTradersOverviewWidget=mN;exports.TokenTransactionsOverview=_s;exports.TokenTransactionsOverviewWidget=wN;exports.TokenVolume=Cs;exports.TokenVolumeWidget=Ls;exports.TokenVolumesOverview=Ks;exports.TokenVolumesOverviewWidget=VN;exports.TraderTagBadge=Nl;exports.TraderTagBadgeList=Br;exports.TrendingTokenCard=tl;exports.TrendingTokenCardList=IR;exports.TrendingTokenCardSkeleton=ol;exports.TrendingTokenListWidget=kA;exports.useNewTokensScript=dl;exports.usePulseFinalStretchListScript=Ln;exports.usePulseMigratedListScript=vn;exports.usePulseNewListScript=xn;exports.useSearchHistory=Qt;exports.useSearchResultListScript=Wn;exports.useSearchScript=Gn;exports.useStockTokensScript=ul;exports.useTokenAboutScript=Ys;exports.useTokenActivitiesListScript=Es;exports.useTokenBasicInfoScript=Ry;exports.useTokenCategoriesScript=ii;exports.useTokenCexListingScript=ri;exports.useTokenChartBannerScript=Mi;exports.useTokenDetailHeaderScript=rs;exports.useTokenDevTokensListScript=Ri;exports.useTokenHoldersCountScript=ls;exports.useTokenHoldersListScript=Ms;exports.useTokenLiquiditiesScript=ti;exports.useTokenMarketCapScript=us;exports.useTokenOrdersListScript=hi;exports.useTokenPositionsListScript=fi;exports.useTokenPriceScript=bs;exports.useTokenReusedImageListScript=Ei;exports.useTokenSecurityScript=Qs;exports.useTokenSimilarTokensScript=Oi;exports.useTokenSocialMediaScript=ys;exports.useTokenStatsFlipScript=ci;exports.useTokenTopTradersListScript=vi;exports.useTokenTradersOverviewScript=Vs;exports.useTokenTransactionsOverviewScript=$s;exports.useTokenVolumeScript=ws;exports.useTokenVolumesOverviewScript=zs;exports.useTokens=Dx;exports.useTrendingTokensScript=eo;//# sourceMappingURL=index.js.map
24
24
  //# sourceMappingURL=index.js.map