@liberfi.io/ui-tokens 3.0.11 → 3.0.13
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 +3 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +13 -13
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 cr({title:e,isPaused:t,extra:o,className:s}){let{t:r}=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)]",s),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:r("tokens.pulse.paused")})]})]}),o&&jsxRuntime.jsx("div",{className:"flex items-center gap-3",children:o})]})}function mr({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 B({icon:e,value:t,tooltip:o,warning:s,disable:r=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",s?"text-danger-500":r?"text-neutral":"text-primary",n),children:[e,jsxRuntime.jsx("span",{children:t})]})})}var go={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 Pa({tag:e,className:t}){let o=go[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 gr({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let s=o!=null&&o>0?e.slice(0,o):e,r=e.length-s.length;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-1",t),children:[s.map(n=>jsxRuntime.jsx(Pa,{tag:n},n)),r>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:["+",r]})]})}function Ra({tag:e,className:t}){let o=go[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 Lt({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let s=o!=null&&o>0?e.slice(0,o):e,r=e.length-s.length;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-1",t),children:[s.map(n=>jsxRuntime.jsx(Ra,{tag:n},n)),r>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:["+",r]})]})}var Aa={[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"}},Ha={text:"text-neutral",bg:"bg-neutral",bg5:"bg-neutral/5",bg20:"bg-neutral/20",border:"border-neutral"};function Ce(e){return Aa[e]??Ha}function de({token:e,enablePreview:t=true,enableSearch:o=true,showProgress:s=true,showProtocolFamily:r=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(()=>r&&a,[r,a]),m=react.useMemo(()=>s&&e.migrateProgress&&new utils.SafeBigNumber(e.migrateProgress).lt(100),[s,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]),[g,x]=react.useState(false),h=react.useCallback(()=>{x(true);},[]),f=react.useCallback(()=>{x(false);},[]),u=react.useCallback(b=>{if(b.stopPropagation(),!e.image)return;let k=utils.searchImageUrl(e.image);window.open(k,"_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}`,a?Ce(a).bg:"bg-[rgba(39,39,42,0.6)]",l?.background)}),m&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute -inset-0.5",`rounded-${n}`),children:jsxRuntime.jsx(Da,{className:ui$1.cn(a?Ce(a).text:"text-[rgba(39,39,42,0.6)]",l?.progress),progress:e.migrateProgress??"0"})}),jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 p-px flex items-center justify-center",`rounded-${n}`,a?Ce(a).bg20:"bg-[rgba(39,39,42,0.12)]",l?.avatarWrapper),children:jsxRuntime.jsx(Ua,{token:e,radius:n,enableSearch:o,enablePreview:t,classNames:l,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}`,g&&c&&"cursor-pointer"),onMouseEnter:h,onMouseLeave:f,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}`,l?.avatar)}),g&&c&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${n}`,l?.searchWrapper),onClick:u,children:jsxRuntime.jsx(ui$1.CameraIcon,{className:ui$1.cn("w-6 h-6",l?.searchIcon)})})]})})}),d&&jsxRuntime.jsx("div",{className:"contents",children:jsxRuntime.jsx(ui$1.StyledTooltip,{content:e.launchedFrom?.protocolFamily??a,placement:"bottom",children:jsxRuntime.jsx("div",{className:ui$1.cn("absolute -bottom-1 -right-1 rounded-full p-px w-4 h-4",a&&Ce(a).bg,l?.protocolFamilyIconWrapper),children:jsxRuntime.jsx(ui$1.Image,{removeWrapper:true,src:`/images/protocols/${a}.svg`,className:ui$1.cn("w-full h-full rounded-full bg-content1",l?.protocolFamilyIcon)})})})})]})}function Ua({token:e,radius:t,enableSearch:o,enablePreview:s,classNames:r,children:n}){return react.useMemo(()=>s&&e.image,[s,e.image])?jsxRuntime.jsx(ui$1.StyledTooltip,{content:jsxRuntime.jsx(Oa,{token:e,radius:t,enableSearch:o,classNames:r}),closeDelay:100,placement:"bottom-start",classNames:{content:"p-1"},children:n}):n}function Oa({token:e,enableSearch:t,radius:o,classNames:s}){let r=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$1.cn("relative flex items-center justify-center w-60 h-60",`rounded-${o}`,i&&r&&"cursor-pointer",s?.previewWrapper),onMouseEnter:a,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}`,s?.previewAvatar)}),i&&r&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${o}`,s?.previewSearchWrapper),onClick:m,children:jsxRuntime.jsx(ui$1.CameraIcon,{className:ui$1.cn("w-10 h-10",s?.previewSearchIcon)})})]})}function Da({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'),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 ur({title:e,isPaused:t,extra:o,className:r}){let{t:n}=i18n.useTranslation();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 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.PauseIcon,{className:"w-4 h-4"}),jsxRuntime.jsx("span",{className:"text-xs hidden sm:inline",children:n("tokens.pulse.paused")})]})]}),o&&jsxRuntime.jsx("div",{className:"flex items-center gap-3",children:o})]})}function fr({isLast:e=false,className:t}){return jsxRuntime.jsxs("div",{className:ui.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 W({icon:e,value:t,tooltip:o,warning:r,disable:n=false,className:s,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":n?"text-neutral":"text-primary",s),children:[e,jsxRuntime.jsx("span",{children:t})]})})}var ho={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 Ma({tag:e,className:t}){let o=ho[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 hr({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,n=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-1",t),children:[r.map(s=>jsxRuntime.jsx(Ma,{tag:s},s)),n>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:["+",n]})]})}function Ia({tag:e,className:t}){let o=ho[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 Pt({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,n=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-1",t),children:[r.map(s=>jsxRuntime.jsx(Ia,{tag:s},s)),n>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:["+",n]})]})}var Fa={[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"}},Ua={text:"text-neutral",bg:"bg-neutral",bg5:"bg-neutral/5",bg20:"bg-neutral/20",border:"border-neutral"};function Ce(e){return Fa[e]??Ua}function de({token:e,enablePreview:t=true,enableSearch:o=true,showProgress:r=true,showProtocolFamily:n=true,radius:s="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(()=>n&&a,[n,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,f]=react.useState(false),g=react.useCallback(()=>{f(true);},[]),k=react.useCallback(()=>{f(false);},[]),x=react.useCallback(b=>{if(b.stopPropagation(),!e.image)return;let h=utils.searchImageUrl(e.image);window.open(h,"_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-${s}`,a?Ce(a).bg:"bg-[rgba(39,39,42,0.6)]",l?.background)}),m&&jsxRuntime.jsx("div",{className:ui.cn("absolute -inset-0.5",`rounded-${s}`),children:jsxRuntime.jsx(Va,{className:ui.cn(a?Ce(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-${s}`,a?Ce(a).bg20:"bg-[rgba(39,39,42,0.12)]",l?.avatarWrapper),children:jsxRuntime.jsx(Ba,{token:e,radius:s,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-${s}`,u&&c&&"cursor-pointer"),onMouseEnter:g,onMouseLeave:k,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-${s}`,l?.avatar)}),u&&c&&jsxRuntime.jsx("div",{className:ui.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${s}`,l?.searchWrapper),onClick:x,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&&Ce(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 Ba({token:e,radius:t,enableSearch:o,enablePreview:r,classNames:n,children:s}){return react.useMemo(()=>r&&e.image,[r,e.image])?jsxRuntime.jsx(ui.StyledTooltip,{content:jsxRuntime.jsx(Ea,{token:e,radius:t,enableSearch:o,classNames:n}),closeDelay:100,placement:"bottom-start",classNames:{content:"p-1"},children:s}):s}function Ea({token:e,enableSearch:t,radius:o,classNames:r}){let n=react.useMemo(()=>t&&e.image,[t,e.image]),s=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&&n&&"cursor-pointer",r?.previewWrapper),onMouseEnter:a,onMouseLeave:d,children:[jsxRuntime.jsx(ui.Avatar,{showFallback:true,src:e.image,name:s,className:ui.cn("w-full h-full bg-content1 text-neutral text-3xl",`rounded-${o}`,r?.previewAvatar)}),i&&n&&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 Va({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 wr({token:e,renderAction:t,isLast:o=false,onSelectToken:s,className:r}){let{t:n}=i18n.useTranslation(),i=ui$1.useCopyToClipboard(),l=hooks.useTickAge(e.createdAt),a=e.marketData,d=e.stats?.["1h"],m=react.useCallback(()=>{s?.(e);},[s,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]),g=react.useMemo(()=>d?.buyVolumesInUsd,[d?.buyVolumesInUsd]),x=react.useMemo(()=>d?.sellVolumesInUsd,[d?.sellVolumesInUsd]),h=react.useMemo(()=>d?.trades,[d?.trades]),f=react.useMemo(()=>a?.marketCapInUsd,[a?.marketCapInUsd]),u=react.useMemo(()=>a?.tvlInUsd,[a?.tvlInUsd]),b=react.useMemo(()=>{let U=new utils.SafeBigNumber(f);return U.lt(1e3)?"text-foreground":U.lt(1e6)?"text-secondary":"text-primary"},[f]),k=react.useMemo(()=>new utils.SafeBigNumber(a?.top10HoldingsRatio).gte(.1),[a?.top10HoldingsRatio]),T=react.useMemo(()=>new utils.SafeBigNumber(a?.devHoldingsRatio).gte(.1),[a?.devHoldingsRatio]),K=react.useMemo(()=>new utils.SafeBigNumber(a?.insiderHoldingsRatio).gte(.1),[a?.insiderHoldingsRatio]),J=react.useMemo(()=>new utils.SafeBigNumber(a?.sniperHoldingsRatio).gte(.1),[a?.sniperHoldingsRatio]),ne=react.useMemo(()=>new utils.SafeBigNumber(a?.bundleHoldingsRatio).gte(.1),[a?.bundleHoldingsRatio]),[De,V]=react.useMemo(()=>{let U=Number(d?.buys??0),te=Number(d?.sells??0),$=U+te;if($===0)return [12,12];let dr=Math.round(U/$*24);return [dr,24-dr]},[d?.buys,d?.sells]),We=a?.holders!==void 0&&a.holders>0,Be=a?.proHolders!==void 0&&a.proHolders>0,F=a?.kolHolders!==void 0&&a.kolHolders>0,le=We||Be||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",r),style:o?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:s?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(de,{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(l)}),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(b),children:utils.formatAmountUSDCompact(f)})]}),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(u)})]})]}),le&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[We&&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(a?.holders)]})}),Be&&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(a?.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(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$1.cn("text-base font-bold leading-none",b),children:utils.formatAmountUSDCompact(f)})}),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(g)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(x)})]})]}),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(h)})]})]})]}),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(B,{icon:jsxRuntime.jsx(ui$1.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(B,{icon:jsxRuntime.jsx(ui$1.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(B,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(a?.sniperHoldingsRatio),tooltip:n("tokens.tokenInfo.sniperHoldingsRatio"),warning:J,disable:!a?.sniperHoldingsRatio||a?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(a?.insiderHoldingsRatio),tooltip:n("tokens.tokenInfo.insiderHoldingsRatio"),warning:K,disable:!a?.insiderHoldingsRatio||a?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(a?.bundleHoldingsRatio),tooltip:n("tokens.tokenInfo.bundleHoldingsRatio"),warning:ne,disable:!a?.bundleHoldingsRatio||a?.bundleHoldingsRatio==="0"})]})}),t&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:U=>U.stopPropagation(),children:t(e)})]})]})}var ll=152,Pr=10;function dl({index:e,style:t,data:o,skeletonCount:s,renderItemAction:r,onSelectToken:n}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(wr,{token:o[e],isLast:e===o.length-1,renderAction:r,onSelectToken:n})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(mr,{isLast:e===s-1})})}function $e({title:e,tokens:t,isLoading:o,itemHeight:s=ll,renderHeaderExtra:r,renderItemAction:n,onSelectToken:i,onPauseChange:l,className:a,hideHeader:d}){let m=o||!t?void 0:t,c=m?m.length:Pr,p=react.useMemo(()=>({data:m,skeletonCount:Pr,renderItemAction:n,onSelectToken:i}),[m,n,i]),[g,x]=react.useState(false),h=react.useCallback(()=>{x(true),l?.(true);},[l]),f=react.useCallback(()=>{x(false),l?.(false);},[l]);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",a),onMouseEnter:h,onMouseLeave:f,children:[!d&&jsxRuntime.jsx(cr,{title:e,isPaused:g,extra:r}),jsxRuntime.jsx("div",{className:"flex-1 w-full overflow-hidden",children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",rowCount:c,rowHeight:s,rowComponent:dl,rowProps:p,overscanCount:5})})]})}function ho(e,t){let o={...e};for(let s of Object.keys(t))t[s]!==void 0&&(o[s]=t[s]);return o}var ml=["1m","5m","15m","30m","1h","4h","24h"];function pl(e,t){if(!t)return e;if(!e)return t;let o={...e};for(let s of ml)t[s]&&(o[s]=e[s]?ho(e[s],t[s]):t[s]);return o}function ul(e,t){return t?e?ho(e,t):t:e}function Mt(e,t){return t?e?ho(e,t):t:e}function O(e,t){let{chain:o,address:s,stats:r,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=pl(e.stats,r),c.marketData=ul(e.marketData,n),c.socialMedias=Mt(e.socialMedias,i),c.security=Mt(e.security,l),c.launchedFrom=Mt(e.launchedFrom,a),c.migratedTo=Mt(e.migratedTo,d),c}var hl=80;function kl(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 Ir(e){return e.sort((t,o)=>{let s=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-s}),e.slice(0,hl)}function Fr({chain:e,isPaused:t=false,refetchInterval:o=1e4}){let s=react.useMemo(()=>({chain:e}),[e]),r=react.useRef(t);r.current=t;let n=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==n.current&&(l(true),d([]),n.current=e);},[e]);let{data:m,isPending:c}=react$1.useNewTokensQuery(s,{refetchInterval:o});react.useEffect(()=>{m&&(d(x=>{let h=r.current,f=x.length===0&&m.length>0,u=[...x];for(let b of m){let k=u.findIndex(T=>T.address===b.address);k>=0?u[k]=O(u[k],b):(!h||f)&&u.push(b);}return h?u:Ir(u)}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=r.current,u=[...h],b=false;for(let k of x){let T=u.findIndex(K=>K.address===k.address);T>=0?(b=true,u[T]=O(u[T],k)):f||(b=true,u.push(kl(k)));}return b?f?u:Ir(u):h});},[]);react$1.useNewTokensSubscription({chain:e},p);let g=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:g}}function $x({chain:e,title:t,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,className:n,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Fr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,onPauseChange:c,className:n,hideHeader:i})}function Br({chain:e,isPaused:t=false,refetchInterval:o=3e4}){let s=react.useMemo(()=>({chain:e}),[e]),r=react.useRef(t);r.current=t;let n=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==n.current&&(l(true),d([]),n.current=e);},[e]);let{data:m,isPending:c}=react$1.useMigratedTokensQuery(s,{refetchInterval:o});react.useEffect(()=>{m&&(d(x=>{let h=r.current,f=[...x];for(let u of m){let b=f.findIndex(k=>k.address===u.address);b>=0?f[b]=O(f[b],u):h||f.unshift(u);}return f}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=[...h],u=false;for(let b of x){let k=f.findIndex(T=>T.address===b.address);k>=0&&(u=true,f[k]=O(f[k],b));}return u?f:h});},[]);react$1.useMigratedTokensSubscription({chain:e},p);let g=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:g}}function eh({chain:e,title:t,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,className:n,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Br({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,onPauseChange:c,className:n,hideHeader:i})}function Hl(e){return e.sort((t,o)=>{let s=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-s})}function Kr({chain:e,isPaused:t=false,refetchInterval:o=15e3}){let s=react.useMemo(()=>({chain:e}),[e]),r=react.useRef(t);r.current=t;let n=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==n.current&&(l(true),d([]),n.current=e);},[e]);let{data:m,isPending:c}=react$1.useFinalStretchTokensQuery(s,{refetchInterval:o});react.useEffect(()=>{m&&(d(x=>{let h=r.current,f=x.length===0&&m.length>0,u=[...x];for(let b of m){let k=u.findIndex(T=>T.address===b.address);k>=0?u[k]=O(u[k],b):(!h||f)&&u.push(b);}return h?u:Hl(u)}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=[...h],u=false;for(let b of x){let k=f.findIndex(T=>T.address===b.address);k>=0&&(u=true,f[k]=O(f[k],b));}return u?f:h});},[]);react$1.useFinalStretchTokensSubscription({chain:e},p);let g=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:g}}function mh({chain:e,title:t,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,className:n,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Kr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:s,onSelectToken:r,onPauseChange:c,className:n,hideHeader:i})}var Dl=10,Wl=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function It(){let[e,t]=jotai.useAtom(Wl),o=react.useCallback(r=>{let n=r.trim();n&&t(i=>{let l=i.filter(a=>a!==n);return [n,...l].slice(0,Dl)});},[t]),s=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:s}}function Gr({histories:e,onSelect:t,onClear:o,className:s}){let{t:r}=i18n.useTranslation();return e.length===0?null:jsxRuntime.jsxs("div",{className:ui$1.cn("px-4 pb-4",s),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:r("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 Xr({onSelect:e,className:t}){let{histories:o,clearHistories:s}=It();return jsxRuntime.jsx(Gr,{className:ui$1.cn(t),histories:o,onSelect:e,onClear:s})}function Jr({value:e,onValueChange:t,onClear:o,onEscape:s,className:r}){let{t:n}=i18n.useTranslation();return jsxRuntime.jsx("div",{className:r,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(),s?.();},children:"Esc"})})})}function Ft({token:e,className:t}){let{t:o}=i18n.useTranslation(),s=hooks.useTickAge(e.createdAt),r=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$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(de,{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(s)})]}),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(r)}),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(a)})]})]})]})}function Ut({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 ad(){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 Dt({rows:e=6,className:t}){return jsxRuntime.jsx("div",{className:ui$1.cn("w-full",t),children:Array.from({length:e}).map((o,s)=>jsxRuntime.jsx(ad,{},s))})}function os({keyword:e,chains:t,limit:o=50}){let s=react.useMemo(()=>({keyword:e,chains:t,limit:o}),[e,t,o]),{data:r,isLoading:n,isFetchingNextPage:i,hasNextPage:l,fetchNextPage:a}=react$1.useSearchTokensInfiniteQuery(s,{enabled:!!e});return {tokens:react.useMemo(()=>r?.pages.flatMap(m=>m.data)??[],[r]),isLoading:n,isFetchingNextPage:i,hasNextPage:l??false,fetchNextPage:a}}var hd=56;function ss({onSelectToken:e,className:t,...o}){let{tokens:s,isLoading:r,isFetchingNextPage:n,hasNextPage:i,fetchNextPage:l}=os(o),a=react.useRef(null),{height:d}=hooks.useResizeObserver({ref:a}),m=react.useCallback(x=>x<s.length,[s]),c=react.useCallback(async()=>{i&&!n&&await l();},[i,n,l]),p=react.useMemo(()=>i?s.length+1:s.length,[s,i]),g=reactWindowInfiniteLoader.useInfiniteLoader({isRowLoaded:m,loadMoreRows:c,rowCount:p,threshold:5});return r?jsxRuntime.jsxs("div",{className:ui$1.cn("w-full",t),children:[jsxRuntime.jsx(Ut,{}),jsxRuntime.jsx(Dt,{})]}):s.length===0?jsxRuntime.jsxs("div",{className:ui$1.cn("w-full",t),children:[jsxRuntime.jsx(Ut,{}),jsxRuntime.jsx(bd,{})]}):jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Ut,{className:"flex-none"}),jsxRuntime.jsx("div",{className:"flex-auto min-h-0",ref:a,children:jsxRuntime.jsx(reactWindow.List,{style:{height:d},onRowsRendered:g,rowComponent:kd,rowCount:p,rowHeight:hd,rowProps:{tokens:s,onSelectToken:e},overscanCount:5})})]})}function kd({index:e,style:t,tokens:o,onSelectToken:s}){let r=o[e];return r?jsxRuntime.jsx("div",{style:t,onClick:()=>s?.(r),children:jsxRuntime.jsx(Ft,{token:r})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui$1.Spinner,{size:"sm"})})}function bd(){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")})]})}function Bt({chain:e,resolution:t,options:o,refetchInterval:s=12e3}){let r=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),n=react.useRef(r),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(r)!==JSON.stringify(n.current)&&(l(true),d([]),n.current=r);},[r]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useTrendingTokensQuery(r,{refetchInterval:s});react.useEffect(()=>{m&&(d(x=>{let h=[];for(let f of m){let u=x.find(b=>b.address===f.address);h.push(u?O(u,f):f);}return h}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=[...h],u=false;for(let b of x){let k=f.findIndex(T=>T.address===b.address);k>=0&&(u=true,f[k]=O(f[k],b));}return u?f:h});},[]);react$1.useTrendingTokensSubscription({chain:e},p);let g=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:g}}var wd=types.Chain.ETHEREUM,Ld="24h",Pd=56;function ls({chains:e,onSelectToken:t,className:o}){let s=e?.length===1?e[0]:e?.[0]??wd,{tokens:r,isLoading:n}=Bt({chain:s,resolution:Ld});return jsxRuntime.jsx("div",{className:ui$1.cn("w-full flex flex-col overflow-hidden",o),children:n?jsxRuntime.jsx(Dt,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:r.map(i=>jsxRuntime.jsx("div",{style:{height:Pd},onClick:()=>t?.(i),children:jsxRuntime.jsx(Ft,{token:i,className:"h-full"})},i.address))})})}function ms({onKeywordChange:e}){let[t,o]=react.useState(""),[s,r]=react.useState(""),{addHistory:n}=It(),i=hooks.useCallbackRef(e),l=hooks.useCallbackRef(n),a=react.useMemo(()=>utils.debounce(p=>{r(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),r(p),i(p),p&&l(p);},[a,i,l]),c=react.useCallback(()=>m(""),[m]);return {text:t,keyword:s,setText:d,setKeyword:m,clearKeyword:c}}function us({chains:e,onKeywordChange:t,onSelectToken:o,onEscape:s}){let{text:r,keyword:n,setText:i,setKeyword:l,clearKeyword:a}=ms({onKeywordChange:t});return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsxRuntime.jsx(Jr,{value:r,onValueChange:i,onClear:a,onPaste:l,onEscape:s}),n?jsxRuntime.jsx(ss,{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(Xr,{onSelect:l}),jsxRuntime.jsx(ls,{className:"flex-auto min-h-0",chains:e,onSelectToken:o})]})]})}var To="search";function Xk({id:e=To}){return jsxRuntime.jsx(uiScaffold.AsyncModal,{id:e,children:t=>jsxRuntime.jsx(Vd,{...t})})}function Vd({params:e,isOpen:t,onOpenChange:o,onResult:s}){let{t:r}=i18n.useTranslation(),{isMobile:n}=ui$1.useScreen(),i=react.useCallback(l=>{s(l);},[s]);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:r("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(us,{chains:e?.chains,onSelectToken:i,onEscape:()=>o(false)})})]})})}function sb({chains:e,onSelectToken:t,className:o}){let{t:s}=i18n.useTranslation(),{isDesktop:r}=ui$1.useScreen(),{onOpen:n,onClose:i}=uiScaffold.useAsyncModal(To),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,g=!!p&&(p.tagName==="INPUT"||p.tagName==="TEXTAREA"||p.getAttribute("contenteditable")==="true");c.key==="/"&&!g&&(c.preventDefault(),a()),c.key==="Escape"&&(c.preventDefault(),d());};return window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m);}},[a,d]),r?jsxRuntime.jsx(ui$1.Button,{size:"sm",radius:"full",onPress:a,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:s("tokens.search.placeholder")}):jsxRuntime.jsx(ui$1.Button,{size:"sm",radius:"full",isIconOnly:true,onPress:a,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 Pe(e){return e==null||e===""?"--":utils.formatPercent(Number(e)/100)}function ce(e,t=4,o=4){return e?e.length<=t+o+1?e:`${e.slice(0,t)}\u2026${e.slice(-o)}`:"--"}function be(e,t=Date.now()){if(e==null)return "--";let o=typeof e=="string"||typeof e=="number"?new Date(e):e,s=typeof t=="number"?new Date(t):t,r=Math.max(0,Math.floor((s.getTime()-o.getTime())/1e3));if(r<60)return `${r}s`;let n=Math.floor(r/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 R(e,t){let{data:o,isLoading:s}=react$1.useTokenQuery({chain:e,address:t}),[r,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=O(a,d);return a});}),{token:r,isLoading:s}}function qe({label:e,totalFormatted:t,buysFormatted:o,sellsFormatted:s,totalValue:r=0,buysValue:n=0,className:i}){let l=new utils.SafeBigNumber(r??0),a=new utils.SafeBigNumber(n??0),d=l.eq(0)?0:a.div(l).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: ",s]})]})]})}function bs({token:e,actions:t,dataStrip:o,className:s,onCopyAddress:r}){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",s),children:[jsxRuntime.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[e&&jsxRuntime.jsx(de,{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:()=>r?.(n),className:"flex items-center gap-1 text-[11px] text-default-400 transition-colors hover:text-foreground",title:n,children:[ce(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 ys(e,t){return R(e,t)}function vs({price:e,marketCap:t,volume:o,holdersCount:s,socialMedia:r,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,s]}),jsxRuntime.jsx("div",{className:"ml-auto",children:r})]})}function Gb(e,t){return R(e,t)}function Ss({holders:e,top10HoldingsRatio:t,top100HoldingsRatio:o,className:s}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",s),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:Pe(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Pe(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"Holders / Top10 / Top100"})]})}function Cs(e,t){return R(e,t)}function ws({chain:e,address:t,className:o}){let{token:s}=Cs(e,t);return jsxRuntime.jsx(Ss,{holders:s?.marketData?.holders,top10HoldingsRatio:s?.marketData?.top10HoldingsRatio,top100HoldingsRatio:s?.marketData?.top100HoldingsRatio,className:o})}function Rs({marketCapInUsd:e,tvlInUsd:t,createdAt:o,className:s}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",s),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:be(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"MC / Liq / Age"})]})}function As(e,t){return R(e,t)}function Hs({chain:e,address:t,className:o}){let{token:s}=As(e,t);return jsxRuntime.jsx(Rs,{marketCapInUsd:s?.marketData?.marketCapInUsd,tvlInUsd:s?.marketData?.tvlInUsd,createdAt:s?.createdAt,className:o})}function Fs({priceInUsd:e,price24hAgoInUsd:t,className:o}){let{bearish:s,priceChange:r}=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":s,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:r!=null?utils.formatPercent(r):"--"})]})]})}function Us(e,t){return R(e,t)}function Os({chain:e,address:t,className:o}){let{token:s}=Us(e,t);return jsxRuntime.jsx(Fs,{priceInUsd:s?.marketData?.priceInUsd,price24hAgoInUsd:s?.stats?.["24h"]?.openPriceInUsd,className:o})}function bc(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 Ds({socials:e,className:t,iconSize:o=16}){if(!e)return null;let r=["website","twitter","telegram","discord","github","reddit","youtube","medium"].filter(n=>!!e[n]);return r.length===0?null:jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center gap-3",t),children:r.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:bc(n,o)},n))})}function Ws(e,t){return R(e,t)}function Bs({chain:e,address:t,className:o,iconSize:s}){let{token:r}=Ws(e,t);return jsxRuntime.jsx(Ds,{socials:r?.socialMedias,className:o,iconSize:s})}function _s({volumesInUsd:e,trades:t,traders:o,className:s}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",s),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 $s(e,t){return R(e,t)}function Ks({chain:e,address:t,className:o}){let{token:s}=$s(e,t),r=s?.stats?.["24h"];return jsxRuntime.jsx(_s,{volumesInUsd:r?.volumesInUsd,trades:r?.trades,traders:r?.traders,className:o})}function zs({chain:e,address:t,className:o}){return jsxRuntime.jsx(vs,{className:o,price:jsxRuntime.jsx(Os,{chain:e,address:t}),marketCap:jsxRuntime.jsx(Hs,{chain:e,address:t}),volume:jsxRuntime.jsx(Ks,{chain:e,address:t}),holdersCount:jsxRuntime.jsx(ws,{chain:e,address:t}),socialMedia:jsxRuntime.jsx(Bs,{chain:e,address:t})})}function RT({chain:e,address:t,actions:o,dataStrip:s,className:r,onCopyAddress:n}){let{token:i}=ys(e,t);return jsxRuntime.jsx(bs,{token:i,actions:o,dataStrip:s===void 0?jsxRuntime.jsx(zs,{chain:e,address:t}):s,className:r,onCopyAddress:n})}var wc=[{value:"holdingUsd",label:"Value"},{value:"lastActiveAt",label:"Last active"}];function Gs({holders:e,isLoading:t,sortBy:o,onSortByChange:s,onlyTracked:r=false,onOnlyTrackedChange:n,onLoadMore:i,hasMore:l,now:a=Date.now(),wellKnownAddresses:d,className:m,renderAddress:c}){let p=r?e.filter(g=>g.tags&&g.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:r,onChange:g=>n?.(g.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:wc.map(g=>jsxRuntime.jsx("button",{type:"button",onClick:()=>s(g.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",o===g.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:g.label},g.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(g=>jsxRuntime.jsx(Lc,{holder:g,now:a,wellKnownAddresses:d,renderAddress:c},g.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 Lc({holder:e,now:t,wellKnownAddresses:o,renderAddress:s}){let r=o?.[e.address],n=react.useMemo(()=>s?s(e.address):r?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:r}):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ce(e.address,6,6)}),[e.address,s,r]);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(Lt,{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:Pe(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.startHoldingAt?be(e.startHoldingAt,t):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?be(e.lastActiveAt,t):"--"})]})}function Ys({chain:e,address:t,limit:o=50,initialSortBy:s="holdingUsd"}){let[r,n]=react.useState(s),[i,l]=react.useState(void 0),[a,d]=react.useState([]),m=react.useCallback(()=>{l(void 0),d([]);},[]),c=react.useCallback(T=>{T!==r&&(n(T),m());},[r,m]);react.useEffect(()=>{m();},[e,t,m]);let p=react.useMemo(()=>({chain:e,address:t,cursor:i,limit:o,sortBy:r}),[e,t,i,o,r]),{data:g,isPending:x,isFetching:h}=react$1.useTokenHoldersQuery(p);react.useEffect(()=>{g&&d(T=>i==null?[g]:T[T.length-1]?.endCursor===g.endCursor?T:[...T,g]);},[g,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let f=react.useMemo(()=>a.flatMap(T=>T.data),[a]),u=a[a.length-1],b=!!(u?.hasNext&&u.endCursor),k=react.useCallback(()=>{!u?.endCursor||!u.hasNext||l(u.endCursor);},[u]);return {holders:f,isLoading:x||h,sortBy:r,setSortBy:c,hasMore:b,loadMore:k}}function JT({chain:e,address:t,limit:o,initialSortBy:s,initialOnlyTracked:r=false,wellKnownAddresses:n,className:i,renderAddress:l}){let[a,d]=react.useState(r),{holders:m,isLoading:c,sortBy:p,setSortBy:g,hasMore:x,loadMore:h}=Ys({chain:e,address:t,limit:o,initialSortBy:s});return jsxRuntime.jsx(Gs,{holders:m,isLoading:c,sortBy:p,onSortByChange:g,onlyTracked:a,onOnlyTrackedChange:d,wellKnownAddresses:n,hasMore:x,onLoadMore:h,className:i,renderAddress:l})}var Fc=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Uc=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],Oc=[{value:"all",label:"All"},{value:"dev",label:"DEV"},{value:"tracked",label:"TRACKED"},{value:"you",label:"YOU"}];function Zs({activities:e,isLoading:t,sortBy:o,onSortByChange:s,typeFilter:r="all",onTypeFilterChange:n,traderFilter:i="all",onTraderFilterChange:l,youWalletAddress:a,currency:d="usd",onCurrencyChange:m,onLoadMore:c,hasMore:p,now:g=Date.now(),nativeDecimals:x=9,nativeSymbol:h="SOL",className:f,onRowClick:u}){let b=Wc(e,i,a);return jsxRuntime.jsxs("div",{className:ui$1.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-1",children:[Uc.map(k=>jsxRuntime.jsx("button",{type:"button",onClick:()=>n?.(k.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",r===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}),Oc.map(k=>{let T=i===k.value,K=k.value==="you"&&!a;return jsxRuntime.jsx("button",{type:"button",disabled:K,onClick:()=>l?.(k.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",K&&"cursor-not-allowed opacity-50"),children:k.label},k.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(Bc,{value:d,nativeSymbol:h,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Fc.map(k=>jsxRuntime.jsx("button",{type:"button",onClick:()=>s(k.value),className:ui$1.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:[b.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-8 text-center text-default-400",children:"No activities"})}),b.map(k=>jsxRuntime.jsx(Vc,{activity:k,now:g,nativeDecimals:x,nativeSymbol:h,currency:d,onRowClick:u},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 Dc(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function Wc(e,t,o){if(t==="all")return e;if(t==="you"){if(!o)return [];let r=o.toLowerCase();return e.filter(n=>n.walletAddress?.toLowerCase()===r)}if(t==="dev")return e.filter(r=>r.traderTags?.some(n=>n==="dev"));let s=new Set(["kol","smart","bluechip"]);return e.filter(r=>r.traderTags?.some(n=>s.has(n)))}function Bc({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(r=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(r.k),className:ui$1.cn("rounded px-2 transition-colors",e===r.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:r.label},r.k))})}function Ec(e,t,o){if(!e)return "--";let s=Number(e)/Math.pow(10,t);return Number.isFinite(s)?`${utils.formatAmount(s)} ${o}`:"--"}function Vc({activity:e,now:t,nativeDecimals:o,nativeSymbol:s,currency:r,onRowClick:n}){let i=Dc(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$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",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:ce(e.walletAddress,6,6)}),jsxRuntime.jsx(gr,{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:r==="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:Ec(e.gasFee,o,s)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:be(e.time,t)})]})}function tn({chain:e,address:t,limit:o=50,initialSortBy:s="timestamp",initialTypeFilter:r="all"}){let[n,i]=react.useState(s),[l,a]=react.useState(r),[d,m]=react.useState(void 0),[c,p]=react.useState([]),[g,x]=react.useState([]),h=react.useCallback(()=>{m(void 0),p([]),x([]);},[]),f=react.useCallback(F=>{F!==n&&(i(F),h());},[n,h]),u=react.useCallback(F=>{F!==l&&(a(F),h());},[l,h]);react.useEffect(()=>{h();},[e,t,h]);let b=l==="all"?void 0:l,k=react.useMemo(()=>({chain:e,address:t,cursor:d,limit:o,sortBy:n,type:b}),[e,t,d,o,n,b]),{data:T,isPending:K,isFetching:J}=react$1.useTokenActivitiesQuery(k);react.useEffect(()=>{T&&p(F=>d==null?[T]:F[F.length-1]?.endCursor===T.endCursor?F:[...F,T]);},[T,d]);let ne=n==="timestamp"&&l==="all"&&d==null;react$1.useTokenActivitiesSubscription({chain:e,address:t},F=>{!ne||!F?.length||x(le=>{let U=new Set(le.map($=>$.txHash)),te=F.filter($=>!U.has($.txHash));return te.length===0?le:[...te,...le].slice(0,100)});});let De=react.useMemo(()=>{let F=c.flatMap(te=>te.data);if(!ne||g.length===0)return F;let le=new Set(F.map(te=>te.txHash));return [...g.filter(te=>!le.has(te.txHash)),...F]},[c,g,ne]),V=c[c.length-1],We=!!(V?.hasNext&&V.endCursor),Be=react.useCallback(()=>{!V?.endCursor||!V.hasNext||m(V.endCursor);},[V]);return {activities:De,isLoading:K||J,sortBy:n,setSortBy:f,typeFilter:l,setTypeFilter:u,hasMore:We,loadMore:Be}}function gv({chain:e,address:t,limit:o,initialSortBy:s,initialTypeFilter:r,initialTraderFilter:n="all",initialCurrency:i="usd",youWalletAddress:l,nativeDecimals:a,nativeSymbol:d,className:m,onRowClick:c}){let[p,g]=react.useState(n),[x,h]=react.useState(i),{activities:f,isLoading:u,sortBy:b,setSortBy:k,typeFilter:T,setTypeFilter:K,hasMore:J,loadMore:ne}=tn({chain:e,address:t,limit:o,initialSortBy:s,initialTypeFilter:r});return jsxRuntime.jsx(Zs,{activities:f,isLoading:u,sortBy:b,onSortByChange:k,typeFilter:T,onTypeFilterChange:K,traderFilter:p,onTraderFilterChange:g,youWalletAddress:l,currency:x,onCurrencyChange:h,hasMore:J,onLoadMore:ne,className:m,nativeDecimals:a,nativeSymbol:d,onRowClick:c})}function rn({stats:e,resolution:t,className:o}){let s=e?.[t],r=s?.traders??0,n=s?.buyers??0,i=s?.sellers??0;return jsxRuntime.jsx(qe,{className:o,label:`Traders (${t})`,totalFormatted:utils.formatAmount(r),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:r,buysValue:n})}function sn(e,t){return R(e,t)}function Av({chain:e,address:t,resolution:o="24h",className:s}){let{token:r}=sn(e,t);return jsxRuntime.jsx(rn,{stats:r?.stats,resolution:o,className:s})}function nn({stats:e,resolution:t,className:o}){let s=e?.[t],r=s?.trades??0,n=s?.buys??0,i=s?.sells??0;return jsxRuntime.jsx(qe,{className:o,label:`Transactions (${t})`,totalFormatted:utils.formatAmount(r),buysFormatted:utils.formatAmount(n),sellsFormatted:utils.formatAmount(i),totalValue:r,buysValue:n})}function an(e,t){return R(e,t)}function zv({chain:e,address:t,resolution:o="24h",className:s}){let{token:r}=an(e,t);return jsxRuntime.jsx(nn,{stats:r?.stats,resolution:o,className:s})}function ln({stats:e,resolution:t,className:o}){let s=e?.[t],r=s?.volumesInUsd??"0",n=s?.buyVolumesInUsd??"0",i=s?.sellVolumesInUsd??"0";return jsxRuntime.jsx(qe,{className:o,label:`Volume (${t})`,totalFormatted:utils.formatAmountUSDCompact(r),buysFormatted:utils.formatAmountUSDCompact(n),sellsFormatted:utils.formatAmountUSDCompact(i),totalValue:r,buysValue:n})}function dn(e,t){return R(e,t)}function i0({chain:e,address:t,resolution:o="24h",className:s}){let{token:r}=dn(e,t);return jsxRuntime.jsx(ln,{stats:r?.stats,resolution:o,className:s})}function cn({security:e,externalUrl:t,externalLabel:o,className:s}){let r=[{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=r.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",s),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:r.map(i=>jsxRuntime.jsx(Yc,{...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 Yc({title:e,value:t,safeWhen:o,description:s}){let r=t!==void 0&&t===o,n=t===void 0?"--":r?"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:s,children:e}),jsxRuntime.jsx("span",{className:ui$1.cn("text-xs",t===void 0?"text-default-400":r?"text-success-500":"text-danger-500"),children:n})]})}function mn(e,t){let{data:o,isLoading:s}=react$1.useTokenSecurityQuery({chain:e,address:t});return {security:o,isLoading:s}}function y0({chain:e,address:t,externalUrl:o,externalLabel:s,className:r}){let{security:n}=mn(e,t);return jsxRuntime.jsx(cn,{security:n,externalUrl:o,externalLabel:s,className:r})}function fn({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 gn(e,t){return R(e,t)}function F0({chain:e,address:t,className:o}){let{token:s}=gn(e,t);return jsxRuntime.jsx(fn,{token:s,className:o})}function kn({liquidities:e,totalTvlInUsd:t,collapseAt:o=3,className:s,onPoolClick:r}){let[n,i]=react.useState(!e||e.length<=o),l=react.useCallback(()=>i(a=>!a),[]);return jsxRuntime.jsxs("section",{className:ui$1.cn("flex w-full flex-col gap-3",s),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$1.cn("flex h-10 w-full items-center justify-between overflow-hidden text-xs",d>=o&&!n&&"hidden",r&&"cursor-pointer hover:bg-default-50"),onClick:r?()=>r(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: ",ce(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 bn(e,t){return R(e,t)}function Y0({chain:e,address:t,collapseAt:o,className:s,onPoolClick:r}){let{token:n}=bn(e,t);return jsxRuntime.jsx(kn,{liquidities:n?.liquidities,totalTvlInUsd:n?.marketData?.tvlInUsd,collapseAt:o,className:s,onPoolClick:r})}function yn({cexes:e,collapseAt:t=4,className:o}){let[s,r]=react.useState(!e||e.length<=t),n=react.useCallback(()=>r(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,l)=>{let a=l>=t&&!s,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",a&&"hidden"),children:i.name},i.id);return i.url?jsxRuntime.jsx("a",{href:i.url,target:"_blank",rel:"noreferrer noopener",className:ui$1.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:s?"Show less":"Show more"})})]})}function Tn(e){return {cexes:e}}function mN({cexes:e,collapseAt:t,className:o}){let{cexes:s}=Tn(e);return jsxRuntime.jsx(yn,{cexes:s,collapseAt:t,className:o})}function Nn({categories:e,collapseAt:t=4,className:o,onCategoryClick:s}){let[r,n]=react.useState(!e||e.length<=t),i=react.useCallback(()=>n(l=>!l),[]);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((l,a)=>{let d=a>=t&&!r;return jsxRuntime.jsx(ui$1.Chip,{size:"sm",className:ui$1.cn("bg-default-100",d&&"hidden",s&&"cursor-pointer"),onClick:s?()=>s(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:r?"Show less":"Show more"})})]})}function Sn(e,t){return R(e,t)}function wN({chain:e,address:t,collapseAt:o,className:s,onCategoryClick:r}){let{token:n}=Sn(e,t);return jsxRuntime.jsx(Nn,{categories:n?.tags,collapseAt:o,className:s,onCategoryClick:r})}var Cn=["5m","1h","4h","24h"];function wn({stats:e,resolution:t,className:o}){let s=e?.[t],r=new utils.SafeBigNumber(s?.buyVolumesInUsd??0),n=new utils.SafeBigNumber(s?.sellVolumesInUsd??0),i=r.plus(n),l=r.minus(n),a=i.eq(0)?50:Math.min(100,Math.max(0,r.div(i).times(100).toNumber())),d=[{label:`${t} Vol`,value:utils.formatAmountUSDCompact(i.toString()),className:"text-foreground"},{label:"Buys",value:utils.formatAmountUSDCompact(r.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$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:`${a}%`}})})]})}function Ln({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(s=>{let n=e?.[s]?.priceChange,i=n?new utils.SafeBigNumber(n):void 0,l=i?i.gte(0):void 0,a=s,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$1.cn("text-[13px] font-medium leading-none tabular-nums",l===void 0?"text-foreground":l?"text-bullish":"text-bearish"),children:d})]},s)})})}function Pn({chain:e,address:t}){let{data:o,isLoading:s}=react$1.useTokenStatsQuery({chain:e,address:t});return {stats:o,isLoading:s}}function _N({chain:e,address:t,baseResolution:o="5m",hoverResolutions:s=Cn,height:r=64,className:n}){let{stats:i}=Pn({chain:e,address:t});return jsxRuntime.jsx(uiScaffold.StatsFlipPanel,{className:n,height:r,base:jsxRuntime.jsx(wn,{stats:i,resolution:o}),hover:jsxRuntime.jsx(Ln,{stats:i,resolutions:s})})}function Rn({positions:e,isLoading:t,hasMore:o,onLoadMore:s,currency:r="usd",onCurrencyChange:n,showHidden:i=false,onShowHiddenChange:l,nativeSymbol:a="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=>l?.(c.target.checked)}),"Show Hidden"]})]}),jsxRuntime.jsx(Nm,{value:r,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(Sm,{position:c,currency:r,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: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 Nm({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(r=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(r.k),className:ui$1.cn("rounded px-2 transition-colors",e===r.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:r.label},r.k))})}function Sm({position:e,currency:t,renderActions:o}){let{bought:s,sold:r,remaining:n,pnl:i}=react.useMemo(()=>Cm(e,t),[e,t]),l=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:l}),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:r}),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 Cm(e,t){let o=t==="usd"?e.buyVolumesInUsd:e.buyVolumes,s=t==="usd"?e.sellVolumesInUsd:e.sellVolumes,r=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(s??0):utils.formatAmount(s??0),a=t==="usd"?utils.formatAmountUSDCompact(r??0):utils.formatAmount(r??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 Mn({chain:e,wallet:t,limit:o=50,initialShowHidden:s=false}){let[r,n]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(s);react.useEffect(()=>{n(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t??"",cursor:r,limit:o,positionState:"open"}),[e,t,r,o]),{data:c,isPending:p,isFetching:g}=react$1.useWalletTokenPositionsQuery(m,{enabled:!!t});react.useEffect(()=>{c&&l(b=>r==null?[c]:b[b.length-1]?.endCursor===c.endCursor?b:[...b,c]);},[c,r]);let x=react.useMemo(()=>i.flatMap(b=>b.portfolios),[i]),h=i[i.length-1],f=!!(h?.hasNext&&h.endCursor),u=react.useCallback(()=>{!h?.endCursor||!h.hasNext||n(h.endCursor);},[h]);return {positions:x,isLoading:!!t&&(p||g),hasMore:f,loadMore:u,showHidden:a,setShowHidden:d}}function iS({chain:e,wallet:t,limit:o,initialCurrency:s="usd",nativeSymbol:r,renderActions:n,className:i}){let[l,a]=react.useState(s),{positions:d,isLoading:m,hasMore:c,loadMore:p,showHidden:g,setShowHidden:x}=Mn({chain:e,wallet:t,limit:o});return jsxRuntime.jsx(Rn,{className:i,positions:d,isLoading:m,hasMore:c,onLoadMore:p,currency:l,onCurrencyChange:a,showHidden:g,onShowHiddenChange:x,nativeSymbol:r,renderActions:n})}function In({orders:e,isLoading:t,unavailable:o,hasMore:s,onLoadMore:r,stateFilter:n,onStateFilterChange:i,onlyThisToken:l=false,onOnlyThisTokenChange:a,tokenSymbol:d,currency:m="usd",onCurrencyChange:c,nativeSymbol:p="Native",onCancelAll:g,renderActions:x,className:h}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",h),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(f=>jsxRuntime.jsx("button",{type:"button",onClick:()=>i(f.k),className:ui$1.cn("rounded px-2 transition-colors",n===f.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:f.label},f.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:f=>a?.(f.target.checked)}),"Only ",d]}):null]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[g?jsxRuntime.jsx("button",{type:"button",onClick:g,className:"rounded px-2 py-1 text-[11px] text-bearish transition-colors hover:bg-default-100",children:"Cancel All"}):null,jsxRuntime.jsx(Im,{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(f=>jsxRuntime.jsx(Fm,{order:f,currency:m,renderActions:x},f.id)),t&&!o&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),!o&&s&&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 Im({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(r=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(r.k),className:ui$1.cn("rounded px-2 transition-colors",e===r.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:r.label},r.k))})}function Fm({order:e,currency:t,renderActions:o}){let s=react.useMemo(()=>t==="usd"&&e.amountInUsd?utils.formatAmountUSDCompact(e.amountInUsd):utils.formatAmount(e.amount),[t,e.amount,e.amountInUsd]),r=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: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-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 Om(e){return e instanceof Error&&e.code==="NotImplemented"}function Dm(e){return e==="active"?"active":"filled"}function Dn({chain:e,wallet:t,tokenAddress:o,limit:s=50,initialStateFilter:r="active",initialOnlyThisToken:n=false}){let[i,l]=react.useState(r),[a,d]=react.useState(n),[m,c]=react.useState(void 0),[p,g]=react.useState([]);react.useEffect(()=>{c(void 0),g([]);},[e,t,i,a,o]);let x=react.useCallback(V=>{V!==i&&l(V);},[i]),h=react.useMemo(()=>({chain:e,address:t??"",cursor:m,limit:s,state:Dm(i),tokenAddress:a?o:void 0}),[e,t,m,s,i,a,o]),{data:f,isPending:u,isFetching:b,error:k}=react$1.useWalletLimitOrdersQuery(h,{enabled:!!t});react.useEffect(()=>{f&&g(V=>m==null?[f]:V[V.length-1]?.endCursor===f.endCursor?V:[...V,f]);},[f,m]);let T=!!k&&Om(k),K=react.useMemo(()=>p.flatMap(V=>V.data),[p]),J=p[p.length-1],ne=!!(J?.hasNext&&J.endCursor),De=react.useCallback(()=>{!J?.endCursor||!J.hasNext||c(J.endCursor);},[J]);return {orders:K,isLoading:!!t&&!T&&(u||b),unavailable:T,hasMore:ne,loadMore:De,stateFilter:i,setStateFilter:x,onlyThisToken:a,setOnlyThisToken:d}}function SS({chain:e,wallet:t,tokenAddress:o,tokenSymbol:s,limit:r,initialStateFilter:n="active",initialCurrency:i="usd",nativeSymbol:l,onCancelAll:a,renderActions:d,className:m}){let[c,p]=react.useState(i),{orders:g,isLoading:x,unavailable:h,hasMore:f,loadMore:u,stateFilter:b,setStateFilter:k,onlyThisToken:T,setOnlyThisToken:K}=Dn({chain:e,wallet:t,tokenAddress:o,limit:r,initialStateFilter:n});return jsxRuntime.jsx(In,{className:m,orders:g,isLoading:x,unavailable:h,hasMore:f,onLoadMore:u,stateFilter:b,onStateFilterChange:k,onlyThisToken:T,onOnlyThisTokenChange:K,tokenSymbol:s,currency:c,onCurrencyChange:p,nativeSymbol:l,onCancelAll:h?void 0:a,renderActions:d})}function Wn({traders:e,isLoading:t,hasMore:o,onLoadMore:s,onlyTracked:r=false,onOnlyTrackedChange:n,now:i=Date.now(),renderAddress:l,className:a}){return jsxRuntime.jsxs("div",{className:ui$1.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:r,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($m,{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: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 $m({trader:e,now:t,renderAddress:o}){let s=react.useMemo(()=>o?o(e.address):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ce(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:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Lt,{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:Pe(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?be(e.lastActiveAt,t):"--"})]})}function En({chain:e,address:t,limit:o=50,initialOnlyTracked:s=false}){let[r,n]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(s);react.useEffect(()=>{n(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t,cursor:r,limit:o,sortBy:"realizedPnl"}),[e,t,r,o]),{data:c,isPending:p,isFetching:g}=react$1.useTokenTopTradersQuery(m);react.useEffect(()=>{c&&l(k=>r==null?[c]:k[k.length-1]?.endCursor===c.endCursor?k:[...k,c]);},[c,r]);let x=react.useMemo(()=>i.flatMap(k=>k.data),[i]),h=react.useMemo(()=>a?x.filter(k=>k.tags&&k.tags.length>0):x,[x,a]),f=i[i.length-1],u=!!(f?.hasNext&&f.endCursor),b=react.useCallback(()=>{!f?.endCursor||!f.hasNext||n(f.endCursor);},[f]);return {traders:h,isLoading:p||g,hasMore:u,loadMore:b,onlyTracked:a,setOnlyTracked:d}}function $S({chain:e,address:t,limit:o,className:s,renderAddress:r}){let{traders:n,isLoading:i,hasMore:l,loadMore:a,onlyTracked:d,setOnlyTracked:m}=En({chain:e,address:t,limit:o});return jsxRuntime.jsx(Wn,{className:s,traders:n,isLoading:i,hasMore:l,onLoadMore:a,onlyTracked:d,onOnlyTrackedChange:m,renderAddress:r})}function _n({tokens:e,isLoading:t,unavailable:o,hasMore:s,onLoadMore:r,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(l=>jsxRuntime.jsx(Gm,{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&&s&&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 Gm({token:e,renderTokenLink:t}){let o=e.marketData?.marketCapInUsd??e.marketData?.marketCap,s=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$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: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:s?utils.formatAmountUSDCompact(s):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:n?utils.formatAmountUSDCompact(n):"--"})]})}function $n({tokens:e,className:t}){let o=e.length,s=e.filter(l=>!!l.migratedTo).length,r=o===0?0:Math.round(s/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$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(Xt,{label:"Total",value:String(o)}),jsxRuntime.jsx(Xt,{label:"Migrated",value:`${s} (${r}%)`}),jsxRuntime.jsx(Xt,{label:"Total Market Cap",value:utils.formatAmountUSDCompact(i.toString())}),jsxRuntime.jsx(Xt,{label:"Total 1h Volume",value:utils.formatAmountUSDCompact(n.toString())})]})]})}function Xt({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 Ym(e){return e instanceof Error&&e.code==="NotImplemented"}function Qn({chain:e,creator:t,limit:o=20}){let[s,r]=react.useState(void 0),[n,i]=react.useState([]);react.useEffect(()=>{r(void 0),i([]);},[e,t]);let l=react.useMemo(()=>({chain:e,creator:t??"",cursor:s,limit:o}),[e,t,s,o]),{data:a,isPending:d,isFetching:m,error:c}=react$1.useTokensByCreatorQuery(l,{enabled:!!t});react.useEffect(()=>{a&&i(u=>s==null?[a]:u[u.length-1]?.endCursor===a.endCursor?u:[...u,a]);},[a,s]);let p=!!c&&Ym(c),g=react.useMemo(()=>n.flatMap(u=>u.data),[n]),x=n[n.length-1],h=!!(x?.hasNext&&x.endCursor),f=react.useCallback(()=>{!x?.endCursor||!x.hasNext||r(x.endCursor);},[x]);return {tokens:g,isLoading:!!t&&!p&&(d||m),unavailable:p,hasMore:h,loadMore:f}}function nC({chain:e,creator:t,limit:o,showSummary:s=false,renderTokenLink:r,className:n}){let{tokens:i,isLoading:l,unavailable:a,hasMore:d,loadMore:m}=Qn({chain:e,creator:t,limit:o});return jsxRuntime.jsxs("div",{className:n,children:[jsxRuntime.jsx(_n,{tokens:i,isLoading:l,unavailable:a,hasMore:d,onLoadMore:m,renderTokenLink:r}),s&&!a?jsxRuntime.jsx($n,{tokens:i}):null]})}function Jn({token:e,athInUsd:t,athAt:o,globalFeesPaidInUsd:s,rank:r,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$1.cn("flex h-[48px] w-full flex-row items-center gap-4 overflow-x-auto px-3 text-[12px]",l),children:[jsxRuntime.jsx(et,{label:"Price",value:a?utils.formatPriceUSD(a):"--"}),jsxRuntime.jsx(et,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(et,{label:"Supply",value:m?utils.formatAmount(m):"--"}),s?jsxRuntime.jsx(et,{label:"Fees Paid",value:utils.formatAmountUSDCompact(s)}):null,t?jsxRuntime.jsx(et,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,r!==void 0?jsxRuntime.jsx(et,{label:"Rank",value:`#${r}`}):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 et({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 Zn({chain:e,address:t}){return R(e,t)}function yC({chain:e,address:t,athInUsd:o,athAt:s,globalFeesPaidInUsd:r,rank:n,pinned:i,onTogglePin:l,className:a}){let{token:d}=Zn({chain:e,address:t});return jsxRuntime.jsx(Jn,{className:a,token:d,athInUsd:o,athAt:s,globalFeesPaidInUsd:r,rank:n,pinned:i,onTogglePin:l})}function jn({tokens:e,isLoading:t,unavailable:o,onTokenClick:s,className:r}){return o?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),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",r),children:"No similar tokens found."}):jsxRuntime.jsxs("ul",{className:ui$1.cn("flex flex-col",r),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",!s&&"cursor-default"),onClick:s?()=>s(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 ei({chain:e,address:t,keyword:o,limit:s=10}){let r=!!o&&o.length>0,{data:n,isPending:i,isFetching:l}=react$1.useSearchTokensQuery({chains:[e],keyword:o,limit:s+1},{enabled:r});return {tokens:react.useMemo(()=>{if(!n)return [];let d=t.toLowerCase();return (n.data??[]).filter(m=>m.address.toLowerCase()!==d).slice(0,s)},[n,t,s]),isLoading:r&&(i||l),unavailable:!r}}function OC({chain:e,address:t,keyword:o,limit:s,onTokenClick:r,className:n}){let{tokens:i,isLoading:l,unavailable:a}=ei({chain:e,address:t,keyword:o,limit:s});return jsxRuntime.jsx(jn,{className:n,tokens:i,isLoading:l,unavailable:a,onTokenClick:r})}function ti({tokens:e=[],unavailable:t=true,onTokenClick:o,className:s}){return t?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",s),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",s),children:"No reused-image tokens found."}):jsxRuntime.jsx("div",{className:ui$1.cn("flex flex-row flex-wrap gap-2 p-3",s),children:e.map(r=>jsxRuntime.jsx("button",{type:"button",onClick:o?()=>o(r):void 0,className:"flex size-10 items-center justify-center overflow-hidden rounded-full border border-default-100 transition-opacity hover:opacity-80",title:r.symbol,children:jsxRuntime.jsx(ui$1.Avatar,{src:r.image??void 0,name:(r.symbol??"?").slice(0,1),className:"size-full bg-default-100 text-[10px] text-default-400",showFallback:true})},`${r.chain}:${r.address}`))})}function oi(e){return {tokens:[],isLoading:false,unavailable:true}}function XC({chain:e,address:t,onTokenClick:o,className:s}){let{tokens:r,unavailable:n}=oi();return jsxRuntime.jsx(ti,{className:s,tokens:r,unavailable:n,onTokenClick:o})}function ai({keywords:e,excludeKeywords:t,onKeywordsChange:o,onExcludeKeywordsChange:s,className:r}){let{t:n}=i18n.useTranslation(),[i,l]=react.useState(e?.join(", ")??""),[a,d]=react.useState(t?.join(", ")??"");react.useEffect(()=>{l(p=>{let g=Yt(p);return g===void 0&&e===void 0?p:g===void 0?e?.join(", ")??"":e===void 0?"":g.join("")===e.join("")?p:e.join(", ")});},[e]),react.useEffect(()=>{d(p=>{let g=Yt(p);return g===void 0&&t===void 0?p:g===void 0?t?.join(", ")??"":t===void 0?"":g.join("")===t.join("")?p:t.join(", ")});},[t]);let m=react.useCallback(p=>{l(p),o?.(Yt(p));},[o]),c=react.useCallback(p=>{d(p),s?.(Yt(p));},[s]);return jsxRuntime.jsxs("div",{className:ui$1.cn("grid grid-cols-2 gap-3 px-4",r),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:a,onValueChange:c})]})]})}function Yt(e){let t=e.split(",").map(o=>o.trim()).filter(Boolean);return t.length>0?t:void 0}function ui({protocols:e,selectedProtocols:t=[],onSelectedProtocolsChange:o,className:s}){let{t:r}=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$1.cn("flex flex-col gap-3 px-4",s),children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-center",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:r("tokens.filters.protocols.title")}),jsxRuntime.jsx(ui$1.Button,{variant:"light",color:"default",size:"sm",radius:"full",onPress:a,children:r(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=Ce(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 fe({title:e,field:t,value:o,onChange:s}){let{t:r}=i18n.useTranslation(),[n,i]=react.useState(o?qo(o).min:NaN),[l,a]=react.useState(o?qo(o).max:NaN);react.useEffect(()=>{if(o===void 0)i(NaN),a(NaN);else {let{min:c,max:p}=qo(o);i(c),a(p);}},[o]);let d=react.useCallback(c=>{i(c),s?.(hi(t,c,l));},[t,s,l]),m=react.useCallback(c=>{a(c),s?.(hi(t,n,c));},[t,s,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:r("tokens.filters.stats.min"),"aria-label":`${e} min`}),jsxRuntime.jsx(ui$1.StyledNumberInput,{value:l,onValueChange:m,variant:"bordered",radius:"lg",size:"sm",placeholder:r("tokens.filters.stats.max"),"aria-label":`${e} max`})]})]})}function qo(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 hi(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 bi({values:e,onValuesChange:t,className:o}){let{t:s}=i18n.useTranslation(),[r,n]=react.useState(e);react.useEffect(()=>{n(e);},[e]);let i=react.useCallback(l=>a=>{if(a===void 0){let d=(r??[]).filter(m=>m.field!==l);d=d.length>0?d:void 0,n(d),t?.(d);}else {let d=[...(r??[]).filter(m=>m.field!==l),a];n(d),t?.(d);}},[r,t]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-4",o),children:[jsxRuntime.jsx(fe,{field:"holders",title:s("tokens.filters.stats.audits.holders"),value:r?.find(l=>l.field==="holders"),onChange:i("holders")}),jsxRuntime.jsx(fe,{field:"top10Ratio",title:s("tokens.filters.stats.audits.top10HoldingsRatio"),value:r?.find(l=>l.field==="top10Ratio"),onChange:i("top10Ratio")}),jsxRuntime.jsx(fe,{field:"top100Ratio",title:s("tokens.filters.stats.audits.top100HoldingsRatio"),value:r?.find(l=>l.field==="top100Ratio"),onChange:i("top100Ratio")}),jsxRuntime.jsx(fe,{field:"creatorsRatio",title:s("tokens.filters.stats.audits.devHoldingsRatio"),value:r?.find(l=>l.field==="creatorsRatio"),onChange:i("creatorsRatio")})]})}function yi({resolution:e,values:t,onValuesChange:o,className:s}){let{t:r}=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$1.cn("flex flex-col gap-4",s),children:[jsxRuntime.jsx(fe,{field:"marketCap",title:r("tokens.filters.stats.metrics.marketCap"),value:n?.find(a=>a.field==="marketCap"),onChange:l("marketCap")}),jsxRuntime.jsx(fe,{field:"tvl",title:r("tokens.filters.stats.metrics.liquidity"),value:n?.find(a=>a.field==="tvl"),onChange:l("tvl")}),jsxRuntime.jsx(fe,{field:`volumes${e}`,title:r("tokens.filters.stats.metrics.volumes",{resolution:r(`common.resolution.${e}`)}),value:n?.find(a=>a.field===`volumes${e}`),onChange:l(`volumes${e}`)}),jsxRuntime.jsx(fe,{field:`trades${e}`,title:r("tokens.filters.stats.metrics.txns",{resolution:r(`common.resolution.${e}`)}),value:n?.find(a=>a.field===`trades${e}`),onChange:l(`trades${e}`)})]})}function wi({resolution:e,values:t,onValuesChange:o,className:s}){let{t:r}=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(g=>p.includes(g.field))?.length??0},[l]),c=react.useMemo(()=>{let p=["marketCap","tvl",`volumes${e}`,`trades${e}`];return l?.filter(g=>p.includes(g.field)).length??0},[l,e]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-3 px-4",s),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?r("tokens.filters.stats.audits"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:m,shape:"circle",children:r("tokens.filters.stats.audits")})},"audits"),jsxRuntime.jsx(ui$1.Tab,{title:c===0?r("tokens.filters.stats.metrics"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:c,shape:"circle",children:r("tokens.filters.stats.metrics")})},"metrics")]}),jsxRuntime.jsx(bi,{values:l,onValuesChange:d,className:ui$1.cn({hidden:n!=="audits"})}),jsxRuntime.jsx(yi,{values:l,onValuesChange:d,resolution:e,className:ui$1.cn({hidden:n!=="metrics"})})]})}function no({protocols:e,resolution:t,filters:o,onFiltersChange:s,className:r}){let[n,i]=react.useState(Li(o?.filters,e));react.useEffect(()=>{i(Li(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 g=react.useCallback(u=>{i(u),s?.(so(e,u,l,d,c));},[e,l,d,c,s]),x=react.useCallback(u=>{a(u),s?.(so(e,n,u,d,c));},[e,n,d,c,s]),h=react.useCallback(u=>{m(u),s?.(so(e,n,l,u,c));},[e,n,l,c,s]),f=react.useCallback(u=>{p(u),s?.(so(e,n,l,d,u));},[e,n,l,d,s]);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col gap-4",r),children:[e&&e.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ui,{protocols:e,selectedProtocols:n,onSelectedProtocolsChange:g}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}})]}),jsxRuntime.jsx(ai,{keywords:l,excludeKeywords:d,onKeywordsChange:x,onExcludeKeywordsChange:h}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}}),jsxRuntime.jsx(wi,{resolution:t,values:c,onValuesChange:f})]})}function Li(e,t){let o=e?.find(s=>s.field==="launchedFromProtocolFamily");return o?o.operator==="in"?o.value:(console.warn("invalid token protocols filter",o),[...t||[]]):[...t||[]]}function so(e,t,o,s,r){let n=r?[...r.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&&s===void 0&&n.length===0?void 0:{keywords:o,excludeKeywords:s,filters:n.length>0?n:void 0}}function Hi({protocols:e,resolution:t,filters:o,onFiltersChange:s}){let{t:r}=i18n.useTranslation(),{isOpen:n,onOpen:i,onClose:l,onOpenChange:a}=ui$1.useDisclosure(),[d,m]=react.useState(o),c=react.useCallback(()=>{m(void 0);},[]),p=react.useCallback(()=>{s?.(d),l();},[d,s,l]);react.useEffect(()=>{m(o);},[n,o]);let g=react.useMemo(()=>Object.values(o||{}).every(x=>x===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"}),!g&&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:a,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:r("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(no,{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:r("common.reset")}),jsxRuntime.jsx(ui$1.Button,{color:"primary",size:"sm",radius:"full",onPress:p,children:r("common.apply")})]})})]})})]})}var ou={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},ru={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"},su={height:1,background:"rgba(39,39,42,1)",margin:0};function Ui({protocols:e,resolution:t,filters:o,onFiltersChange:s}){let{t:r}=i18n.useTranslation(),[n,i]=react.useState(false),l=react.useRef(null),[a,d]=react.useState(o),m=react.useCallback(()=>{d(void 0);},[]),c=react.useCallback(()=>{s?.(a),i(false);},[a,s]);react.useEffect(()=>{d(o);},[n,o]),react.useEffect(()=>{let g=x=>{l.current&&!l.current.contains(x.target)&&i(false);};return document.addEventListener("mousedown",g),()=>document.removeEventListener("mousedown",g)},[]),react.useEffect(()=>{if(!n)return;let g=x=>{x.key==="Escape"&&i(false);};return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[n]);let p=react.useMemo(()=>Object.values(o||{}).every(g=>g===void 0),[o]);return jsxRuntime.jsxs("div",{ref:l,style:{position:"relative"},children:[jsxRuntime.jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxRuntime.jsxs("button",{type:"button",style:ou,onMouseEnter:g=>{g.currentTarget.style.background="rgba(39,39,42,1)";},onMouseLeave:g=>{g.currentTarget.style.background="rgba(39,39,42,0.6)";},onClick:()=>i(g=>!g),children:[jsxRuntime.jsx(ui$1.FilterIcon,{width:16,height:16,className:"flex-none"}),jsxRuntime.jsx("span",{className:"hidden sm:block",children:r("tokens.listHeader.filter")}),jsxRuntime.jsx(nu,{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:{...ru,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(no,{protocols:e,resolution:t,filters:a,onFiltersChange:d})})}),jsxRuntime.jsx("div",{style:su}),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:r("common.reset")}),jsxRuntime.jsx(ui$1.Button,{variant:"solid",size:"sm",color:"primary",radius:"full",onPress:c,children:r("common.apply")})]})]})]})}function nu({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 VL({popoverPlacement:e="bottom-end",...t}){let{isMobile:o}=ui$1.useScreen();return o?jsxRuntime.jsx(Hi,{...t}):jsxRuntime.jsx(Ui,{placement:e,...t})}function Wi({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:s}=i18n.useTranslation(),r=react.useCallback(n=>{t?.(n);},[t]);return jsxRuntime.jsx(ui$1.StyledPlainTabs,{color:"primary",radius:"lg",selectedKey:e,onSelectionChange:r,"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:s(`common.resolution.${n}`)},n))})}var ku={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},bu={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 Ei({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:s}=i18n.useTranslation(),[r,n]=react.useState(false),i=react.useRef(null),l=react.useCallback(a=>{t?.(a),n(false);},[t]);return react.useEffect(()=>{if(!r)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);}},[r]),jsxRuntime.jsxs("div",{ref:i,style:{position:"relative",zIndex:50},children:[jsxRuntime.jsxs("button",{type:"button",style:ku,onClick:()=>n(a=>!a),children:[jsxRuntime.jsx("span",{children:e?s(`common.resolution.${e}`):"\u2014"}),jsxRuntime.jsx(ui$1.ChevronDownIcon,{width:14,height:14,className:"text-zinc-500",style:{transition:"transform 0.15s",transform:r?"rotate(180deg)":void 0}})]}),r&&jsxRuntime.jsx("div",{style:bu,children:o.map(a=>jsxRuntime.jsx("button",{type:"button",onClick:()=>l(a),className:ui$1.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:s(`common.resolution.${a}`)},a))})]})}function sP(e){let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(Ei,{...e}):jsxRuntime.jsx(Wi,{...e})}function $i({token:e}){let{t}=i18n.useTranslation(),o=react.useMemo(()=>e.marketData?.bluechipHoldingsRatio,[e.marketData?.bluechipHoldingsRatio]),s=react.useMemo(()=>o!==void 0&&new utils.SafeBigNumber(o).gte(.1),[o]),r=react.useMemo(()=>o===void 0||new utils.SafeBigNumber(o).lt(.05),[o]);return jsxRuntime.jsx(ui$1.StyledTooltip,{content:t("tokens.bluechip.explained"),children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2.5",children:[s&&jsxRuntime.jsx(ui$1.HorsePowerHighIcon,{}),r&&jsxRuntime.jsx(ui$1.HorsePowerLowIcon,{}),!s&&!r&&jsxRuntime.jsx(ui$1.HorsePowerIcon,{}),jsxRuntime.jsx("span",{className:ui$1.cn(s&&"text-bullish",!s&&!r&&"text-bearish",o===void 0&&"text-neutral"),children:utils.formatPercent(o)})]})})}function Ki({token:e}){let t=ui$1.useCopyToClipboard(),{t:o}=i18n.useTranslation(),s=react.useCallback(n=>{n.preventDefault(),n.stopPropagation(),t(e.address,()=>ui$1.toast.success(o("tokens.copied.address")));},[t,e.address,o]),r=hooks.useTickAge(e.createdAt);return jsxRuntime.jsxs("div",{className:"w-full flex justify-start items-center gap-3",children:[jsxRuntime.jsx(de,{token:e,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:e.symbol}),jsxRuntime.jsx(ui$1.StyledTooltip,{content:e.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:s,children:[jsxRuntime.jsx("div",{className:"flex-initial whitespace-nowrap truncate",children:e.name}),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(r)}),e.socialMedias?.website&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.website,className:"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"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.twitter,className:"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"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.telegram,className:"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"})}),e.socialMedias?.discord&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.discord,className:"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(`${e.symbol} OR ${e.address}`),className:"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"})})]})]})]})}function zi({token:e}){let{t}=i18n.useTranslation(),o=e.marketData,s=react.useMemo(()=>new utils.SafeBigNumber(o?.top10HoldingsRatio).gte(.1),[o?.top10HoldingsRatio]),r=react.useMemo(()=>new utils.SafeBigNumber(o?.devHoldingsRatio).gte(.1),[o?.devHoldingsRatio]),n=react.useMemo(()=>new utils.SafeBigNumber(o?.sniperHoldingsRatio).gte(.1),[o?.sniperHoldingsRatio]),i=react.useMemo(()=>new utils.SafeBigNumber(o?.insiderHoldingsRatio).gte(.1),[o?.insiderHoldingsRatio]),l=react.useMemo(()=>new utils.SafeBigNumber(o?.bundleHoldingsRatio).gte(.1),[o?.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(B,{icon:jsxRuntime.jsx(ui$1.PeopleIcon,{width:12,height:12}),value:utils.formatAmount(o?.holders),tooltip:t("tokens.tokenInfo.holders"),warning:false,disable:!o?.holders}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.KlineCandlesIcon,{width:12,height:12}),value:utils.formatAmount(o?.proHolders),tooltip:t("tokens.tokenInfo.proHolders"),warning:false,disable:!o?.proHolders}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.StarIcon,{width:12,height:12}),value:utils.formatAmount(o?.kolHolders),tooltip:t("tokens.tokenInfo.kolHolders"),warning:false,disable:!o?.kolHolders}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(o?.top10HoldingsRatio),tooltip:t("tokens.tokenInfo.top10HoldingsRatio"),warning:s,disable:!o?.top10HoldingsRatio||o?.top10HoldingsRatio==="0"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(o?.devHoldingsRatio),tooltip:t("tokens.tokenInfo.devHoldingsRatio"),warning:r,disable:!o?.devHoldingsRatio||o?.devHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(o?.sniperHoldingsRatio),tooltip:t("tokens.tokenInfo.sniperHoldingsRatio"),warning:n,disable:!o?.sniperHoldingsRatio||o?.sniperHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(o?.insiderHoldingsRatio),tooltip:t("tokens.tokenInfo.insiderHoldingsRatio"),warning:i,disable:!o?.insiderHoldingsRatio||o?.insiderHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(o?.bundleHoldingsRatio),tooltip:t("tokens.tokenInfo.bundleHoldingsRatio"),warning:l,disable:!o?.bundleHoldingsRatio||o?.bundleHoldingsRatio==="0",tooltipPlacement:"bottom"})]})]})}function qi({token:e}){let t=react.useMemo(()=>e.marketData?.tvlInUsd,[e.marketData?.tvlInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function Qi({token:e}){let t=react.useMemo(()=>e.marketData?.marketCapInUsd,[e.marketData?.marketCapInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function Ji({token:e,resolution:t}){let o=react.useMemo(()=>e.marketData?.priceInUsd,[e]),s=react.useMemo(()=>e.stats?.[t]?.priceChange,[e,t]),r=react.useMemo(()=>s?new utils.SafeBigNumber(s).abs().toString():void 0,[s]),n=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(o)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex gap-1 items-center text-xs",n?"text-bullish":"text-bearish"),children:[n?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:10,height:10}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:10,height:10}),jsxRuntime.jsx("span",{children:utils.formatPercent(r)})]})]})}function Zi({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.traders,[e.stats?.[t]?.traders]),s=react.useMemo(()=>e.stats?.[t]?.buyers,[e.stats?.[t]?.buyers]),r=react.useMemo(()=>e.stats?.[t]?.sellers,[e.stats?.[t]?.sellers]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(o)}),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(r)})]})]})}function ea({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.trades,[e.stats?.[t]?.trades]),s=react.useMemo(()=>e.stats?.[t]?.buys,[e.stats?.[t]?.buys]),r=react.useMemo(()=>e.stats?.[t]?.sells,[e.stats?.[t]?.sells]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(o)}),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(r)})]})]})}function oa({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.volumesInUsd,[e.stats?.[t]?.volumesInUsd]),s=react.useMemo(()=>e.stats?.[t]?.buyVolumesInUsd,[e.stats?.[t]?.buyVolumesInUsd]),r=react.useMemo(()=>e.stats?.[t]?.sellVolumesInUsd,[e.stats?.[t]?.sellVolumesInUsd]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmountUSD(o)}),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(r)})]})]})}var pf=`
|
|
21
|
+
`})]})}function Rr({token:e,renderAction:t,isLast:o=false,onSelectToken:r,className:n}){let{t:s}=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(U=>{U.stopPropagation(),i(e.address,()=>ui.toast.success(s("tokens.copied.address")));},[i,e.address,s]),p=react.useMemo(()=>d?.volumesInUsd,[d?.volumesInUsd]),u=react.useMemo(()=>d?.buyVolumesInUsd,[d?.buyVolumesInUsd]),f=react.useMemo(()=>d?.sellVolumesInUsd,[d?.sellVolumesInUsd]),g=react.useMemo(()=>d?.trades,[d?.trades]),k=react.useMemo(()=>a?.marketCapInUsd,[a?.marketCapInUsd]),x=react.useMemo(()=>a?.tvlInUsd,[a?.tvlInUsd]),b=react.useMemo(()=>{let U=new utils.SafeBigNumber(k);return U.lt(1e3)?"text-foreground":U.lt(1e6)?"text-secondary":"text-primary"},[k]),h=react.useMemo(()=>new utils.SafeBigNumber(a?.top10HoldingsRatio).gte(.1),[a?.top10HoldingsRatio]),v=react.useMemo(()=>new utils.SafeBigNumber(a?.devHoldingsRatio).gte(.1),[a?.devHoldingsRatio]),K=react.useMemo(()=>new utils.SafeBigNumber(a?.insiderHoldingsRatio).gte(.1),[a?.insiderHoldingsRatio]),J=react.useMemo(()=>new utils.SafeBigNumber(a?.sniperHoldingsRatio).gte(.1),[a?.sniperHoldingsRatio]),ne=react.useMemo(()=>new utils.SafeBigNumber(a?.bundleHoldingsRatio).gte(.1),[a?.bundleHoldingsRatio]),[De,E]=react.useMemo(()=>{let U=Number(d?.buys??0),te=Number(d?.sells??0),_=U+te;if(_===0)return [12,12];let pr=Math.round(U/_*24);return [pr,24-pr]},[d?.buys,d?.sells]),We=a?.holders!==void 0&&a.holders>0,Be=a?.proHolders!==void 0&&a.proHolders>0,F=a?.kolHolders!==void 0&&a.kolHolders>0,le=We||Be||F;return jsxRuntime.jsxs("div",{className:ui.cn("relative w-full h-full overflow-hidden px-4 py-3 hover:bg-content2/40 cursor-pointer border-b",n),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(de,{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":s("tokens.copied.address"),title:s("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":s("tokens.copied.address"),title:s("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:U=>U.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:U=>U.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:U=>U.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:U=>U.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(b),children:utils.formatAmountUSDCompact(k)})]}),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(x)})]})]}),le&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[We&&jsxRuntime.jsx(ui.StyledTooltip,{content:s("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)]})}),Be&&jsxRuntime.jsx(ui.StyledTooltip,{content:s("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)]})}),F&&jsxRuntime.jsx(ui.StyledTooltip,{content:s("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",b),children:utils.formatAmountUSDCompact(k)})}),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(g)})]})]})]}),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(W,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(a?.top10HoldingsRatio),tooltip:s("tokens.tokenInfo.top10HoldingsRatio"),warning:h,disable:!a?.top10HoldingsRatio||a?.top10HoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(a?.devHoldingsRatio),tooltip:s("tokens.tokenInfo.devHoldingsRatio"),warning:v,disable:!a?.devHoldingsRatio||a?.devHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(a?.sniperHoldingsRatio),tooltip:s("tokens.tokenInfo.sniperHoldingsRatio"),warning:J,disable:!a?.sniperHoldingsRatio||a?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(a?.insiderHoldingsRatio),tooltip:s("tokens.tokenInfo.insiderHoldingsRatio"),warning:K,disable:!a?.insiderHoldingsRatio||a?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(a?.bundleHoldingsRatio),tooltip:s("tokens.tokenInfo.bundleHoldingsRatio"),warning:ne,disable:!a?.bundleHoldingsRatio||a?.bundleHoldingsRatio==="0"})]})}),t&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:U=>U.stopPropagation(),children:t(e)})]})]})}var pl=152,Hr=10;function ul({index:e,style:t,data:o,skeletonCount:r,renderItemAction:n,onSelectToken:s}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Rr,{token:o[e],isLast:e===o.length-1,renderAction:n,onSelectToken:s})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(fr,{isLast:e===r-1})})}function $e({title:e,tokens:t,isLoading:o,itemHeight:r=pl,renderHeaderExtra:n,renderItemAction:s,onSelectToken:i,onPauseChange:l,className:a,hideHeader:d}){let m=o||!t?void 0:t,c=m?m.length:Hr,p=react.useMemo(()=>({data:m,skeletonCount:Hr,renderItemAction:s,onSelectToken:i}),[m,s,i]),[u,f]=react.useState(false),g=react.useCallback(()=>{f(true),l?.(true);},[l]),k=react.useCallback(()=>{f(false),l?.(false);},[l]);return 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",a),onMouseEnter:g,onMouseLeave:k,children:[!d&&jsxRuntime.jsx(ur,{title:e,isPaused:u,extra:n}),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:ul,rowProps:p,overscanCount:5})})]})}function yo(e,t){let o={...e};for(let r of Object.keys(t))t[r]!==void 0&&(o[r]=t[r]);return o}var gl=["1m","5m","15m","30m","1h","4h","24h"];function xl(e,t){if(!t)return e;if(!e)return t;let o={...e};for(let r of gl)t[r]&&(o[r]=e[r]?yo(e[r],t[r]):t[r]);return o}function kl(e,t){return t?e?yo(e,t):t:e}function It(e,t){return t?e?yo(e,t):t:e}function $(e,t){let{chain:o,address:r,stats:n,marketData:s,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=xl(e.stats,n),c.marketData=kl(e.marketData,s),c.socialMedias=It(e.socialMedias,i),c.security=It(e.security,l),c.launchedFrom=It(e.launchedFrom,a),c.migratedTo=It(e.migratedTo,d),c}function Ke(e,t){let o=new Map(e.map(r=>[r.address,r]));return t.map(r=>{let n=o.get(r.address);return n?$(n,r):r})}function hl(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 Ft(e,t){if(t.length===0)return e;let o=[...e],r=false;for(let n of t){let s=o.findIndex(i=>i.address===n.address);if(s>=0){o[s]=$(o[s],n),r=true;continue}hl(n)&&(o.push(n),r=true);}return r?o:e}var vl=80;function Nl(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 Or(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,vl)}function Dr({chain:e,isPaused:t=false,refetchInterval:o=1e4}){let r=react.useMemo(()=>({chain:e}),[e]),n=react.useRef(t);n.current=t;let s=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==s.current&&(l(true),d([]),s.current=e);},[e]);let{data:m,isPending:c}=react$1.useNewTokensQuery(r,{refetchInterval:o});react.useEffect(()=>{m&&(d(f=>{let g=n.current,k=f.length===0&&m.length>0,x=[...f];for(let b of m){let h=x.findIndex(v=>v.address===b.address);h>=0?x[h]=$(x[h],b):(!g||k)&&x.push(b);}return g?x:Or(x)}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=n.current,x=[...g],b=false;for(let h of f){let v=x.findIndex(K=>K.address===h.address);v>=0?(b=true,x[v]=$(x[v],h)):k||(b=true,x.push(Nl(h)));}return b?k?x:Or(x):g});},[]);react$1.useNewTokensSubscription({chain:e},p);let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function Xx({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Dr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function _r({chain:e,isPaused:t=false,refetchInterval:o=3e4}){let r=react.useMemo(()=>({chain:e}),[e]),n=react.useRef(t);n.current=t;let s=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==s.current&&(l(true),d([]),s.current=e);},[e]);let{data:m,isPending:c}=react$1.useMigratedTokensQuery(r,{refetchInterval:o});react.useEffect(()=>{m&&(d(f=>{let g=n.current,k=[...f];for(let x of m){let b=k.findIndex(h=>h.address===x.address);b>=0?k[b]=$(k[b],x):g||k.unshift(x);}return k}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=[...g],x=false;for(let b of f){let h=k.findIndex(v=>v.address===b.address);h>=0&&(x=true,k[h]=$(k[h],b));}return x?k:g});},[]);react$1.useMigratedTokensSubscription({chain:e},p);let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function ik({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=_r({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function Ol(e){return e.sort((t,o)=>{let r=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-r})}function Qr({chain:e,isPaused:t=false,refetchInterval:o=15e3}){let r=react.useMemo(()=>({chain:e}),[e]),n=react.useRef(t);n.current=t;let s=react.useRef(e),[i,l]=react.useState(true),[a,d]=react.useState([]);react.useEffect(()=>{e!==s.current&&(l(true),d([]),s.current=e);},[e]);let{data:m,isPending:c}=react$1.useFinalStretchTokensQuery(r,{refetchInterval:o});react.useEffect(()=>{m&&(d(f=>{let g=n.current,k=f.length===0&&m.length>0,x=[...f];for(let b of m){let h=x.findIndex(v=>v.address===b.address);h>=0?x[h]=$(x[h],b):(!g||k)&&x.push(b);}return g?x:Ol(x)}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=[...g],x=false;for(let b of f){let h=k.findIndex(v=>v.address===b.address);h>=0&&(x=true,k[h]=$(k[h],b));}return x?k:g});},[]);react$1.useFinalStretchTokensSubscription({chain:e},p);let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function kk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Qr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx($e,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}var _l=10,$l=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function Ut(){let[e,t]=jotai.useAtom($l),o=react.useCallback(n=>{let s=n.trim();s&&t(i=>{let l=i.filter(a=>a!==s);return [s,...l].slice(0,_l)});},[t]),r=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:r}}function Yr({histories:e,onSelect:t,onClear:o,className:r}){let{t:n}=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:n("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(s=>jsxRuntime.jsx(ui.Chip,{size:"sm",variant:"bordered",className:ui.cn("text-neutral","border-border border-1","cursor-pointer","hover:opacity-hover"),onClick:()=>t?.(s),children:s},s))})]})}function Zr({onSelect:e,className:t}){let{histories:o,clearHistories:r}=Ut();return jsxRuntime.jsx(Yr,{className:ui.cn(t),histories:o,onSelect:e,onClear:r})}function jr({value:e,onValueChange:t,onClear:o,onEscape:r,className:n}){let{t:s}=i18n.useTranslation();return jsxRuntime.jsx("div",{className:n,children:jsxRuntime.jsx(ui.StyledInput,{autoFocus:true,variant:"bordered",radius:"full",value:e,onValueChange:t,placeholder:s("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 Ot({token:e,className:t}){let{t:o}=i18n.useTranslation(),r=hooks.useTickAge(e.createdAt),n=react.useMemo(()=>e.marketData?.priceInUsd,[e]),s=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(de,{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(s)]}),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(n)}),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 Dt({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 pd(){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 Bt({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(pd,{},r))})}function ns({keyword:e,chains:t,limit:o=50}){let r=react.useMemo(()=>({keyword:e,chains:t,limit:o}),[e,t,o]),{data:n,isLoading:s,isFetchingNextPage:i,hasNextPage:l,fetchNextPage:a}=react$1.useSearchTokensInfiniteQuery(r,{enabled:!!e});return {tokens:react.useMemo(()=>n?.pages.flatMap(m=>m.data)??[],[n]),isLoading:s,isFetchingNextPage:i,hasNextPage:l??false,fetchNextPage:a}}var vd=56;function as({onSelectToken:e,className:t,...o}){let{tokens:r,isLoading:n,isFetchingNextPage:s,hasNextPage:i,fetchNextPage:l}=ns(o),a=react.useRef(null),{height:d}=hooks.useResizeObserver({ref:a}),m=react.useCallback(f=>f<r.length,[r]),c=react.useCallback(async()=>{i&&!s&&await l();},[i,s,l]),p=react.useMemo(()=>i?r.length+1:r.length,[r,i]),u=reactWindowInfiniteLoader.useInfiniteLoader({isRowLoaded:m,loadMoreRows:c,rowCount:p,threshold:5});return n?jsxRuntime.jsxs("div",{className:ui.cn("w-full",t),children:[jsxRuntime.jsx(Dt,{}),jsxRuntime.jsx(Bt,{})]}):r.length===0?jsxRuntime.jsxs("div",{className:ui.cn("w-full",t),children:[jsxRuntime.jsx(Dt,{}),jsxRuntime.jsx(Sd,{})]}):jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Dt,{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:Nd,rowCount:p,rowHeight:vd,rowProps:{tokens:r,onSelectToken:e},overscanCount:5})})]})}function Nd({index:e,style:t,tokens:o,onSelectToken:r}){let n=o[e];return n?jsxRuntime.jsx("div",{style:t,onClick:()=>r?.(n),children:jsxRuntime.jsx(Ot,{token:n})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui.Spinner,{size:"sm"})})}function Sd(){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 Vt({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let n=react.useMemo(()=>Array.from(new Set(t.map(i=>i.address.trim()).filter(Boolean))).sort().join(","),[t]),s=react.useMemo(()=>n?n.split(","):[],[n]);react$1.useTokensSubscription({chain:e,addresses:s},o,{enabled:r&&s.length>0});}function _t({chain:e,resolution:t,options:o,refetchInterval:r=12e3}){let n=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),s=react.useRef(n),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(n)!==JSON.stringify(s.current)&&(l(true),s.current=n);},[n]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useTrendingTokensQuery(n,{refetchInterval:r});react.useEffect(()=>{m&&(d(f=>Ke(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Ft(g,f));},[]);react$1.useTrendingTokensSubscription({chain:e},p),Vt({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}var Md=types.Chain.ETHEREUM,Id="24h",Fd=56;function ps({chains:e,onSelectToken:t,className:o}){let r=e?.length===1?e[0]:e?.[0]??Md,{tokens:n,isLoading:s}=_t({chain:r,resolution:Id});return jsxRuntime.jsx("div",{className:ui.cn("w-full flex flex-col overflow-hidden",o),children:s?jsxRuntime.jsx(Bt,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:n.map(i=>jsxRuntime.jsx("div",{style:{height:Fd},onClick:()=>t?.(i),children:jsxRuntime.jsx(Ot,{token:i,className:"h-full"})},i.address))})})}function gs({onKeywordChange:e}){let[t,o]=react.useState(""),[r,n]=react.useState(""),{addHistory:s}=Ut(),i=hooks.useCallbackRef(e),l=hooks.useCallbackRef(s),a=react.useMemo(()=>utils.debounce(p=>{n(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),n(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 ks({chains:e,onKeywordChange:t,onSelectToken:o,onEscape:r}){let{text:n,keyword:s,setText:i,setKeyword:l,clearKeyword:a}=gs({onKeywordChange:t});return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsxRuntime.jsx(jr,{value:n,onValueChange:i,onClear:a,onPaste:l,onEscape:r}),s?jsxRuntime.jsx(as,{className:"flex-auto min-h-0",keyword:s,chains:e,onSelectToken:o}):jsxRuntime.jsxs("div",{className:"flex-auto min-h-0 flex flex-col overflow-hidden",children:[jsxRuntime.jsx(Zr,{onSelect:l}),jsxRuntime.jsx(ps,{className:"flex-auto min-h-0",chains:e,onSelectToken:o})]})]})}var So="search";function nb({id:e=So}){return jsxRuntime.jsx(uiScaffold.AsyncModal,{id:e,children:t=>jsxRuntime.jsx(Qd,{...t})})}function Qd({params:e,isOpen:t,onOpenChange:o,onResult:r}){let{t:n}=i18n.useTranslation(),{isMobile:s}=ui.useScreen(),i=react.useCallback(l=>{r(l);},[r]);return jsxRuntime.jsx(ui.StyledModal,{isOpen:t,onOpenChange:o,size:s?"full":"lg",hideCloseButton:true,backdrop:"blur",radius:"lg",children:jsxRuntime.jsxs(ui.ModalContent,{className:"w-full h-full",style:{borderRadius:s?void 0:14,border:s?void 0:"1px solid rgba(39,39,42,1)",background:"rgba(24,24,27,1)",boxShadow:s?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:n("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(ks,{chains:e?.chains,onSelectToken:i,onEscape:()=>o(false)})})]})})}function fb({chains:e,onSelectToken:t,className:o}){let{t:r}=i18n.useTranslation(),{isDesktop:n}=ui.useScreen(),{onOpen:s,onClose:i}=uiScaffold.useAsyncModal(So),l=hooks.useCallbackRef(t),a=hooks.useCallbackRef(async()=>{let m=await s({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]),n?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 Pe(e){return e==null||e===""?"--":utils.formatPercent(Number(e)/100)}function ce(e,t=4,o=4){return e?e.length<=t+o+1?e:`${e.slice(0,t)}\u2026${e.slice(-o)}`:"--"}function be(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,n=Math.max(0,Math.floor((r.getTime()-o.getTime())/1e3));if(n<60)return `${n}s`;let s=Math.floor(n/60);if(s<60)return `${s}m`;let i=Math.floor(s/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 R(e,t){let{data:o,isLoading:r}=react$1.useTokenQuery({chain:e,address:t}),[n,s]=react.useState(o);return react.useEffect(()=>{o&&s(o);},[o]),react$1.useTokenSubscription({chain:e,address:t},i=>{i?.length&&s(l=>{if(!l)return l;let a=l;for(let d of i)a=$(a,d);return a});}),{token:n,isLoading:r}}function Qe({label:e,totalFormatted:t,buysFormatted:o,sellsFormatted:r,totalValue:n=0,buysValue:s=0,className:i}){let l=new utils.SafeBigNumber(n??0),a=new utils.SafeBigNumber(s??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 Ns({token:e,actions:t,dataStrip:o,className:r,onCopyAddress:n}){let s=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(de,{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})]}),s&&jsxRuntime.jsxs("button",{type:"button",onClick:()=>n?.(s),className:"flex items-center gap-1 text-[11px] text-default-400 transition-colors hover:text-foreground",title:s,children:[ce(s,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 Ss(e,t){return R(e,t)}function ws({price:e,marketCap:t,volume:o,holdersCount:r,socialMedia:n,className:s}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-wrap items-center gap-x-6 gap-y-3",s),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:n})]})}function sy(e,t){return R(e,t)}function Ps({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:Pe(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Pe(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"Holders / Top10 / Top100"})]})}function Rs(e,t){return R(e,t)}function As({chain:e,address:t,className:o}){let{token:r}=Rs(e,t);return jsxRuntime.jsx(Ps,{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.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:be(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"MC / Liq / Age"})]})}function Fs(e,t){return R(e,t)}function Us({chain:e,address:t,className:o}){let{token:r}=Fs(e,t);return jsxRuntime.jsx(Is,{marketCapInUsd:r?.marketData?.marketCapInUsd,tvlInUsd:r?.marketData?.tvlInUsd,createdAt:r?.createdAt,className:o})}function Ws({priceInUsd:e,price24hAgoInUsd:t,className:o}){let{bearish:r,priceChange:n}=react.useMemo(()=>{if(!e||!t)return {bearish:false,priceChange:void 0};let s=new utils.SafeBigNumber(e),i=new utils.SafeBigNumber(t);return i.lte(0)?{bearish:false,priceChange:void 0}:{bearish:s.lt(i),priceChange:s.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:n!=null?utils.formatPercent(n):"--"})]})]})}function Bs(e,t){return R(e,t)}function Es({chain:e,address:t,className:o}){let{token:r}=Bs(e,t);return jsxRuntime.jsx(Ws,{priceInUsd:r?.marketData?.priceInUsd,price24hAgoInUsd:r?.stats?.["24h"]?.openPriceInUsd,className:o})}function Cc(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 Vs({socials:e,className:t,iconSize:o=16}){if(!e)return null;let n=["website","twitter","telegram","discord","github","reddit","youtube","medium"].filter(s=>!!e[s]);return n.length===0?null:jsxRuntime.jsx("div",{className:ui.cn("flex items-center gap-3",t),children:n.map(s=>jsxRuntime.jsx("a",{href:e[s],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:Cc(s,o)},s))})}function _s(e,t){return R(e,t)}function $s({chain:e,address:t,className:o,iconSize:r}){let{token:n}=_s(e,t);return jsxRuntime.jsx(Vs,{socials:n?.socialMedias,className:o,iconSize:r})}function qs({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 Qs(e,t){return R(e,t)}function Gs({chain:e,address:t,className:o}){let{token:r}=Qs(e,t),n=r?.stats?.["24h"];return jsxRuntime.jsx(qs,{volumesInUsd:n?.volumesInUsd,trades:n?.trades,traders:n?.traders,className:o})}function Xs({chain:e,address:t,className:o}){return jsxRuntime.jsx(ws,{className:o,price:jsxRuntime.jsx(Es,{chain:e,address:t}),marketCap:jsxRuntime.jsx(Us,{chain:e,address:t}),volume:jsxRuntime.jsx(Gs,{chain:e,address:t}),holdersCount:jsxRuntime.jsx(As,{chain:e,address:t}),socialMedia:jsxRuntime.jsx($s,{chain:e,address:t})})}function BT({chain:e,address:t,actions:o,dataStrip:r,className:n,onCopyAddress:s}){let{token:i}=Ss(e,t);return jsxRuntime.jsx(Ns,{token:i,actions:o,dataStrip:r===void 0?jsxRuntime.jsx(Xs,{chain:e,address:t}):r,className:n,onCopyAddress:s})}var Mc=[{value:"holdingUsd",label:"Value"},{value:"lastActiveAt",label:"Last active"}];function Zs({holders:e,isLoading:t,sortBy:o,onSortByChange:r,onlyTracked:n=false,onOnlyTrackedChange:s,onLoadMore:i,hasMore:l,now:a=Date.now(),wellKnownAddresses:d,className:m,renderAddress:c}){let p=n?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:n,onChange:u=>s?.(u.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Mc.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(Ic,{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 Ic({holder:e,now:t,wellKnownAddresses:o,renderAddress:r}){let n=o?.[e.address],s=react.useMemo(()=>r?r(e.address):n?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:n}):jsxRuntime.jsx("span",{className:"font-mono text-[11px] text-default-500",children:ce(e.address,6,6)}),[e.address,r,n]);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:s}),jsxRuntime.jsx("td",{className:"px-3 py-2 align-middle",children:jsxRuntime.jsx(Pt,{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:Pe(e.ratio)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.startHoldingAt?be(e.startHoldingAt,t):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:e.lastActiveAt?be(e.lastActiveAt,t):"--"})]})}function tn({chain:e,address:t,limit:o=50,initialSortBy:r="holdingUsd"}){let[n,s]=react.useState(r),[i,l]=react.useState(void 0),[a,d]=react.useState([]),m=react.useCallback(()=>{l(void 0),d([]);},[]),c=react.useCallback(v=>{v!==n&&(s(v),m());},[n,m]);react.useEffect(()=>{m();},[e,t,m]);let p=react.useMemo(()=>({chain:e,address:t,cursor:i,limit:o,sortBy:n}),[e,t,i,o,n]),{data:u,isPending:f,isFetching:g}=react$1.useTokenHoldersQuery(p);react.useEffect(()=>{u&&d(v=>i==null?[u]:v[v.length-1]?.endCursor===u.endCursor?v:[...v,u]);},[u,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let k=react.useMemo(()=>a.flatMap(v=>v.data),[a]),x=a[a.length-1],b=!!(x?.hasNext&&x.endCursor),h=react.useCallback(()=>{!x?.endCursor||!x.hasNext||l(x.endCursor);},[x]);return {holders:k,isLoading:f||g,sortBy:n,setSortBy:c,hasMore:b,loadMore:h}}function iv({chain:e,address:t,limit:o,initialSortBy:r,initialOnlyTracked:n=false,wellKnownAddresses:s,className:i,renderAddress:l}){let[a,d]=react.useState(n),{holders:m,isLoading:c,sortBy:p,setSortBy:u,hasMore:f,loadMore:g}=tn({chain:e,address:t,limit:o,initialSortBy:r});return jsxRuntime.jsx(Zs,{holders:m,isLoading:c,sortBy:p,onSortByChange:u,onlyTracked:a,onOnlyTrackedChange:d,wellKnownAddresses:s,hasMore:f,onLoadMore:g,className:i,renderAddress:l})}var Ec=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Vc=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],_c=[{value:"all",label:"All"},{value:"dev",label:"DEV"},{value:"tracked",label:"TRACKED"},{value:"you",label:"YOU"}];function on({activities:e,isLoading:t,sortBy:o,onSortByChange:r,typeFilter:n="all",onTypeFilterChange:s,traderFilter:i="all",onTraderFilterChange:l,youWalletAddress:a,currency:d="usd",onCurrencyChange:m,onLoadMore:c,hasMore:p,now:u=Date.now(),nativeDecimals:f=9,nativeSymbol:g="SOL",className:k,onRowClick:x}){let b=Kc(e,i,a);return jsxRuntime.jsxs("div",{className:ui.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-1",children:[Vc.map(h=>jsxRuntime.jsx("button",{type:"button",onClick:()=>s?.(h.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",n===h.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:h.label},h.value)),jsxRuntime.jsx("span",{className:"mx-1 h-3 w-px bg-default-200","aria-hidden":true}),_c.map(h=>{let v=i===h.value,K=h.value==="you"&&!a;return jsxRuntime.jsx("button",{type:"button",disabled:K,onClick:()=>l?.(h.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",v?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground",K&&"cursor-not-allowed opacity-50"),children:h.label},h.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(zc,{value:d,nativeSymbol:g,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Ec.map(h=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(h.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",o===h.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:h.label},h.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:[b.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-8 text-center text-default-400",children:"No activities"})}),b.map(h=>jsxRuntime.jsx(Qc,{activity:h,now:u,nativeDecimals:f,nativeSymbol:g,currency:d,onRowClick:x},h.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 $c(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function Kc(e,t,o){if(t==="all")return e;if(t==="you"){if(!o)return [];let n=o.toLowerCase();return e.filter(s=>s.walletAddress?.toLowerCase()===n)}if(t==="dev")return e.filter(n=>n.traderTags?.some(s=>s==="dev"));let r=new Set(["kol","smart","bluechip"]);return e.filter(n=>n.traderTags?.some(s=>r.has(s)))}function zc({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(n=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(n.k),className:ui.cn("rounded px-2 transition-colors",e===n.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:n.label},n.k))})}function qc(e,t,o){if(!e)return "--";let r=Number(e)/Math.pow(10,t);return Number.isFinite(r)?`${utils.formatAmount(r)} ${o}`:"--"}function Qc({activity:e,now:t,nativeDecimals:o,nativeSymbol:r,currency:n,onRowClick:s}){let i=$c(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",s&&"cursor-pointer"),onClick:s?()=>s(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:ce(e.walletAddress,6,6)}),jsxRuntime.jsx(hr,{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:n==="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:qc(e.gasFee,o,r)}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-default-400",children:be(e.time,t)})]})}function nn({chain:e,address:t,limit:o=50,initialSortBy:r="timestamp",initialTypeFilter:n="all"}){let[s,i]=react.useState(r),[l,a]=react.useState(n),[d,m]=react.useState(void 0),[c,p]=react.useState([]),[u,f]=react.useState([]),g=react.useCallback(()=>{m(void 0),p([]),f([]);},[]),k=react.useCallback(F=>{F!==s&&(i(F),g());},[s,g]),x=react.useCallback(F=>{F!==l&&(a(F),g());},[l,g]);react.useEffect(()=>{g();},[e,t,g]);let b=l==="all"?void 0:l,h=react.useMemo(()=>({chain:e,address:t,cursor:d,limit:o,sortBy:s,type:b}),[e,t,d,o,s,b]),{data:v,isPending:K,isFetching:J}=react$1.useTokenActivitiesQuery(h);react.useEffect(()=>{v&&p(F=>d==null?[v]:F[F.length-1]?.endCursor===v.endCursor?F:[...F,v]);},[v,d]);let ne=s==="timestamp"&&l==="all"&&d==null;react$1.useTokenActivitiesSubscription({chain:e,address:t},F=>{!ne||!F?.length||f(le=>{let U=new Set(le.map(_=>_.txHash)),te=F.filter(_=>!U.has(_.txHash));return te.length===0?le:[...te,...le].slice(0,100)});});let De=react.useMemo(()=>{let F=c.flatMap(te=>te.data);if(!ne||u.length===0)return F;let le=new Set(F.map(te=>te.txHash));return [...u.filter(te=>!le.has(te.txHash)),...F]},[c,u,ne]),E=c[c.length-1],We=!!(E?.hasNext&&E.endCursor),Be=react.useCallback(()=>{!E?.endCursor||!E.hasNext||m(E.endCursor);},[E]);return {activities:De,isLoading:K||J,sortBy:s,setSortBy:k,typeFilter:l,setTypeFilter:x,hasMore:We,loadMore:Be}}function Cv({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:n,initialTraderFilter:s="all",initialCurrency:i="usd",youWalletAddress:l,nativeDecimals:a,nativeSymbol:d,className:m,onRowClick:c}){let[p,u]=react.useState(s),[f,g]=react.useState(i),{activities:k,isLoading:x,sortBy:b,setSortBy:h,typeFilter:v,setTypeFilter:K,hasMore:J,loadMore:ne}=nn({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:n});return jsxRuntime.jsx(on,{activities:k,isLoading:x,sortBy:b,onSortByChange:h,typeFilter:v,onTypeFilterChange:K,traderFilter:p,onTraderFilterChange:u,youWalletAddress:l,currency:f,onCurrencyChange:g,hasMore:J,onLoadMore:ne,className:m,nativeDecimals:a,nativeSymbol:d,onRowClick:c})}function ln({stats:e,resolution:t,className:o}){let r=e?.[t],n=r?.traders??0,s=r?.buyers??0,i=r?.sellers??0;return jsxRuntime.jsx(Qe,{className:o,label:`Traders (${t})`,totalFormatted:utils.formatAmount(n),buysFormatted:utils.formatAmount(s),sellsFormatted:utils.formatAmount(i),totalValue:n,buysValue:s})}function dn(e,t){return R(e,t)}function Ev({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=dn(e,t);return jsxRuntime.jsx(ln,{stats:n?.stats,resolution:o,className:r})}function cn({stats:e,resolution:t,className:o}){let r=e?.[t],n=r?.trades??0,s=r?.buys??0,i=r?.sells??0;return jsxRuntime.jsx(Qe,{className:o,label:`Transactions (${t})`,totalFormatted:utils.formatAmount(n),buysFormatted:utils.formatAmount(s),sellsFormatted:utils.formatAmount(i),totalValue:n,buysValue:s})}function mn(e,t){return R(e,t)}function t0({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=mn(e,t);return jsxRuntime.jsx(cn,{stats:n?.stats,resolution:o,className:r})}function pn({stats:e,resolution:t,className:o}){let r=e?.[t],n=r?.volumesInUsd??"0",s=r?.buyVolumesInUsd??"0",i=r?.sellVolumesInUsd??"0";return jsxRuntime.jsx(Qe,{className:o,label:`Volume (${t})`,totalFormatted:utils.formatAmountUSDCompact(n),buysFormatted:utils.formatAmountUSDCompact(s),sellsFormatted:utils.formatAmountUSDCompact(i),totalValue:n,buysValue:s})}function un(e,t){return R(e,t)}function x0({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=un(e,t);return jsxRuntime.jsx(pn,{stats:n?.stats,resolution:o,className:r})}function fn({security:e,externalUrl:t,externalLabel:o,className:r}){let n=[{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."}],s=n.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":s?"text-success-500":"text-danger-500"),children:e===void 0?"--":s?"Safe":"Review"})]}),jsxRuntime.jsx("div",{className:"flex flex-col",children:n.map(i=>jsxRuntime.jsx(rm,{...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 rm({title:e,value:t,safeWhen:o,description:r}){let n=t!==void 0&&t===o,s=t===void 0?"--":n?"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":n?"text-success-500":"text-danger-500"),children:s})]})}function gn(e,t){let{data:o,isLoading:r}=react$1.useTokenSecurityQuery({chain:e,address:t});return {security:o,isLoading:r}}function A0({chain:e,address:t,externalUrl:o,externalLabel:r,className:n}){let{security:s}=gn(e,t);return jsxRuntime.jsx(fn,{security:s,externalUrl:o,externalLabel:r,className:n})}function hn({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 bn(e,t){return R(e,t)}function K0({chain:e,address:t,className:o}){let{token:r}=bn(e,t);return jsxRuntime.jsx(hn,{token:r,className:o})}function vn({liquidities:e,totalTvlInUsd:t,collapseAt:o=3,className:r,onPoolClick:n}){let[s,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&&!s&&"hidden",n&&"cursor-pointer hover:bg-default-50"),onClick:n?()=>n(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: ",ce(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:s?"Show less":"Show more"})})]})]})}function Nn(e,t){return R(e,t)}function aN({chain:e,address:t,collapseAt:o,className:r,onPoolClick:n}){let{token:s}=Nn(e,t);return jsxRuntime.jsx(vn,{liquidities:s?.liquidities,totalTvlInUsd:s?.marketData?.tvlInUsd,collapseAt:o,className:r,onPoolClick:n})}function Sn({cexes:e,collapseAt:t=4,className:o}){let[r,n]=react.useState(!e||e.length<=t),s=react.useCallback(()=>n(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:s,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:r?"Show less":"Show more"})})]})}function Cn(e){return {cexes:e}}function TN({cexes:e,collapseAt:t,className:o}){let{cexes:r}=Cn(e);return jsxRuntime.jsx(Sn,{cexes:r,collapseAt:t,className:o})}function Ln({categories:e,collapseAt:t=4,className:o,onCategoryClick:r}){let[n,s]=react.useState(!e||e.length<=t),i=react.useCallback(()=>s(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&&!n;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:n?"Show less":"Show more"})})]})}function Pn(e,t){return R(e,t)}function ON({chain:e,address:t,collapseAt:o,className:r,onCategoryClick:n}){let{token:s}=Pn(e,t);return jsxRuntime.jsx(Ln,{categories:s?.tags,collapseAt:o,className:r,onCategoryClick:n})}var Rn=["5m","1h","4h","24h"];function An({stats:e,resolution:t,className:o}){let r=e?.[t],n=new utils.SafeBigNumber(r?.buyVolumesInUsd??0),s=new utils.SafeBigNumber(r?.sellVolumesInUsd??0),i=n.plus(s),l=n.minus(s),a=i.eq(0)?50:Math.min(100,Math.max(0,n.div(i).times(100).toNumber())),d=[{label:`${t} Vol`,value:utils.formatAmountUSDCompact(i.toString()),className:"text-foreground"},{label:"Buys",value:utils.formatAmountUSDCompact(n.toString()),className:"text-bullish"},{label:"Sells",value:utils.formatAmountUSDCompact(s.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 Hn({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 s=e?.[r]?.priceChange,i=s?new utils.SafeBigNumber(s):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 Mn({chain:e,address:t}){let{data:o,isLoading:r}=react$1.useTokenStatsQuery({chain:e,address:t});return {stats:o,isLoading:r}}function ZN({chain:e,address:t,baseResolution:o="5m",hoverResolutions:r=Rn,height:n=64,className:s}){let{stats:i}=Mn({chain:e,address:t});return jsxRuntime.jsx(uiScaffold.StatsFlipPanel,{className:s,height:n,base:jsxRuntime.jsx(An,{stats:i,resolution:o}),hover:jsxRuntime.jsx(Hn,{stats:i,resolutions:r})})}function In({positions:e,isLoading:t,hasMore:o,onLoadMore:r,currency:n="usd",onCurrencyChange:s,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(Rm,{value:n,nativeSymbol:a,onChange:s})]}),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(Am,{position:c,currency:n,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 Rm({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(n=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(n.k),className:ui.cn("rounded px-2 transition-colors",e===n.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:n.label},n.k))})}function Am({position:e,currency:t,renderActions:o}){let{bought:r,sold:n,remaining:s,pnl:i}=react.useMemo(()=>Hm(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:n}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s}),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 Hm(e,t){let o=t==="usd"?e.buyVolumesInUsd:e.buyVolumes,r=t==="usd"?e.sellVolumesInUsd:e.sellVolumes,n=t==="usd"?e.amountInUsd:e.amount,s=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(n??0):utils.formatAmount(n??0),d=s?new utils.SafeBigNumber(s):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 On({chain:e,wallet:t,limit:o=50,initialShowHidden:r=false}){let[n,s]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(r);react.useEffect(()=>{s(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t??"",cursor:n,limit:o,positionState:"open"}),[e,t,n,o]),{data:c,isPending:p,isFetching:u}=react$1.useWalletTokenPositionsQuery(m,{enabled:!!t});react.useEffect(()=>{c&&l(b=>n==null?[c]:b[b.length-1]?.endCursor===c.endCursor?b:[...b,c]);},[c,n]);let f=react.useMemo(()=>i.flatMap(b=>b.portfolios),[i]),g=i[i.length-1],k=!!(g?.hasNext&&g.endCursor),x=react.useCallback(()=>{!g?.endCursor||!g.hasNext||s(g.endCursor);},[g]);return {positions:f,isLoading:!!t&&(p||u),hasMore:k,loadMore:x,showHidden:a,setShowHidden:d}}function xS({chain:e,wallet:t,limit:o,initialCurrency:r="usd",nativeSymbol:n,renderActions:s,className:i}){let[l,a]=react.useState(r),{positions:d,isLoading:m,hasMore:c,loadMore:p,showHidden:u,setShowHidden:f}=On({chain:e,wallet:t,limit:o});return jsxRuntime.jsx(In,{className:i,positions:d,isLoading:m,hasMore:c,onLoadMore:p,currency:l,onCurrencyChange:a,showHidden:u,onShowHiddenChange:f,nativeSymbol:n,renderActions:s})}function Dn({orders:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:n,stateFilter:s,onStateFilterChange:i,onlyThisToken:l=false,onOnlyThisTokenChange:a,tokenSymbol:d,currency:m="usd",onCurrencyChange:c,nativeSymbol:p="Native",onCancelAll:u,renderActions:f,className:g}){return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col",g),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(k=>jsxRuntime.jsx("button",{type:"button",onClick:()=>i(k.k),className:ui.cn("rounded px-2 transition-colors",s===k.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:k.label},k.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:k=>a?.(k.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(Bm,{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 ",s==="active"?"active":"historical"," orders"]})}):e.map(k=>jsxRuntime.jsx(Em,{order:k,currency:m,renderActions:f},k.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:n,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 Bm({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(n=>jsxRuntime.jsx("button",{type:"button",onClick:()=>o?.(n.k),className:ui.cn("rounded px-2 transition-colors",e===n.k?"bg-default-200 text-foreground":"text-default-400 hover:text-foreground"),children:n.label},n.k))})}function Em({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]),n=e.side==="buy"?"Buy":"Sell",s=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",s),children:n}),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 _m(e){return e instanceof Error&&e.code==="NotImplemented"}function $m(e){return e==="active"?"active":"filled"}function Vn({chain:e,wallet:t,tokenAddress:o,limit:r=50,initialStateFilter:n="active",initialOnlyThisToken:s=false}){let[i,l]=react.useState(n),[a,d]=react.useState(s),[m,c]=react.useState(void 0),[p,u]=react.useState([]);react.useEffect(()=>{c(void 0),u([]);},[e,t,i,a,o]);let f=react.useCallback(E=>{E!==i&&l(E);},[i]),g=react.useMemo(()=>({chain:e,address:t??"",cursor:m,limit:r,state:$m(i),tokenAddress:a?o:void 0}),[e,t,m,r,i,a,o]),{data:k,isPending:x,isFetching:b,error:h}=react$1.useWalletLimitOrdersQuery(g,{enabled:!!t});react.useEffect(()=>{k&&u(E=>m==null?[k]:E[E.length-1]?.endCursor===k.endCursor?E:[...E,k]);},[k,m]);let v=!!h&&_m(h),K=react.useMemo(()=>p.flatMap(E=>E.data),[p]),J=p[p.length-1],ne=!!(J?.hasNext&&J.endCursor),De=react.useCallback(()=>{!J?.endCursor||!J.hasNext||c(J.endCursor);},[J]);return {orders:K,isLoading:!!t&&!v&&(x||b),unavailable:v,hasMore:ne,loadMore:De,stateFilter:i,setStateFilter:f,onlyThisToken:a,setOnlyThisToken:d}}function FS({chain:e,wallet:t,tokenAddress:o,tokenSymbol:r,limit:n,initialStateFilter:s="active",initialCurrency:i="usd",nativeSymbol:l,onCancelAll:a,renderActions:d,className:m}){let[c,p]=react.useState(i),{orders:u,isLoading:f,unavailable:g,hasMore:k,loadMore:x,stateFilter:b,setStateFilter:h,onlyThisToken:v,setOnlyThisToken:K}=Vn({chain:e,wallet:t,tokenAddress:o,limit:n,initialStateFilter:s});return jsxRuntime.jsx(Dn,{className:m,orders:u,isLoading:f,unavailable:g,hasMore:k,onLoadMore:x,stateFilter:b,onStateFilterChange:h,onlyThisToken:v,onOnlyThisTokenChange:K,tokenSymbol:r,currency:c,onCurrencyChange:p,nativeSymbol:l,onCancelAll:g?void 0:a,renderActions:d})}function _n({traders:e,isLoading:t,hasMore:o,onLoadMore:r,onlyTracked:n=false,onOnlyTrackedChange:s,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:n,onChange:d=>s?.(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(Xm,{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 Xm({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:ce(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(Pt,{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:Pe(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?be(e.lastActiveAt,t):"--"})]})}function Kn({chain:e,address:t,limit:o=50,initialOnlyTracked:r=false}){let[n,s]=react.useState(void 0),[i,l]=react.useState([]),[a,d]=react.useState(r);react.useEffect(()=>{s(void 0),l([]);},[e,t]);let m=react.useMemo(()=>({chain:e,address:t,cursor:n,limit:o,sortBy:"realizedPnl"}),[e,t,n,o]),{data:c,isPending:p,isFetching:u}=react$1.useTokenTopTradersQuery(m);react.useEffect(()=>{c&&l(h=>n==null?[c]:h[h.length-1]?.endCursor===c.endCursor?h:[...h,c]);},[c,n]);let f=react.useMemo(()=>i.flatMap(h=>h.data),[i]),g=react.useMemo(()=>a?f.filter(h=>h.tags&&h.tags.length>0):f,[f,a]),k=i[i.length-1],x=!!(k?.hasNext&&k.endCursor),b=react.useCallback(()=>{!k?.endCursor||!k.hasNext||s(k.endCursor);},[k]);return {traders:g,isLoading:p||u,hasMore:x,loadMore:b,onlyTracked:a,setOnlyTracked:d}}function jS({chain:e,address:t,limit:o,className:r,renderAddress:n}){let{traders:s,isLoading:i,hasMore:l,loadMore:a,onlyTracked:d,setOnlyTracked:m}=Kn({chain:e,address:t,limit:o});return jsxRuntime.jsx(_n,{className:r,traders:s,isLoading:i,hasMore:l,onLoadMore:a,onlyTracked:d,onOnlyTrackedChange:m,renderAddress:n})}function qn({tokens:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:n,renderTokenLink:s,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(ep,{token:l,renderTokenLink:s},`${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:n,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 ep({token:e,renderTokenLink:t}){let o=e.marketData?.marketCapInUsd??e.marketData?.marketCap,r=e.marketData?.tvlInUsd,s=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:s?utils.formatAmountUSDCompact(s):"--"})]})}function Qn({tokens:e,className:t}){let o=e.length,r=e.filter(l=>!!l.migratedTo).length,n=o===0?0:Math.round(r/o*100),s=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(Zt,{label:"Total",value:String(o)}),jsxRuntime.jsx(Zt,{label:"Migrated",value:`${r} (${n}%)`}),jsxRuntime.jsx(Zt,{label:"Total Market Cap",value:utils.formatAmountUSDCompact(i.toString())}),jsxRuntime.jsx(Zt,{label:"Total 1h Volume",value:utils.formatAmountUSDCompact(s.toString())})]})]})}function Zt({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 rp(e){return e instanceof Error&&e.code==="NotImplemented"}function Yn({chain:e,creator:t,limit:o=20}){let[r,n]=react.useState(void 0),[s,i]=react.useState([]);react.useEffect(()=>{n(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(x=>r==null?[a]:x[x.length-1]?.endCursor===a.endCursor?x:[...x,a]);},[a,r]);let p=!!c&&rp(c),u=react.useMemo(()=>s.flatMap(x=>x.data),[s]),f=s[s.length-1],g=!!(f?.hasNext&&f.endCursor),k=react.useCallback(()=>{!f?.endCursor||!f.hasNext||n(f.endCursor);},[f]);return {tokens:u,isLoading:!!t&&!p&&(d||m),unavailable:p,hasMore:g,loadMore:k}}function gC({chain:e,creator:t,limit:o,showSummary:r=false,renderTokenLink:n,className:s}){let{tokens:i,isLoading:l,unavailable:a,hasMore:d,loadMore:m}=Yn({chain:e,creator:t,limit:o});return jsxRuntime.jsxs("div",{className:s,children:[jsxRuntime.jsx(qn,{tokens:i,isLoading:l,unavailable:a,hasMore:d,onLoadMore:m,renderTokenLink:n}),r&&!a?jsxRuntime.jsx(Qn,{tokens:i}):null]})}function ei({token:e,athInUsd:t,athAt:o,globalFeesPaidInUsd:r,rank:n,onTogglePin:s,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(tt,{label:"Price",value:a?utils.formatPriceUSD(a):"--"}),jsxRuntime.jsx(tt,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(tt,{label:"Supply",value:m?utils.formatAmount(m):"--"}),r?jsxRuntime.jsx(tt,{label:"Fees Paid",value:utils.formatAmountUSDCompact(r)}):null,t?jsxRuntime.jsx(tt,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,n!==void 0?jsxRuntime.jsx(tt,{label:"Rank",value:`#${n}`}):null,jsxRuntime.jsx("div",{className:"flex-1"}),s?jsxRuntime.jsx("button",{type:"button",onClick:s,"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 tt({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 oi({chain:e,address:t}){return R(e,t)}function AC({chain:e,address:t,athInUsd:o,athAt:r,globalFeesPaidInUsd:n,rank:s,pinned:i,onTogglePin:l,className:a}){let{token:d}=oi({chain:e,address:t});return jsxRuntime.jsx(ei,{className:a,token:d,athInUsd:o,athAt:r,globalFeesPaidInUsd:n,rank:s,pinned:i,onTogglePin:l})}function ri({tokens:e,isLoading:t,unavailable:o,onTokenClick:r,className:n}){return o?jsxRuntime.jsx("div",{className:ui.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",n),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",n),children:"No similar tokens found."}):jsxRuntime.jsxs("ul",{className:ui.cn("flex flex-col",n),children:[e.map(s=>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(s):void 0,children:[jsxRuntime.jsx(ui.Avatar,{src:s.image??void 0,name:(s.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:s.symbol}),jsxRuntime.jsx("span",{className:"truncate text-[10px] text-default-400",children:s.name})]}),jsxRuntime.jsx("span",{className:"text-[11px] tabular-nums text-default-500",children:s.marketData?.marketCapInUsd?utils.formatAmountUSDCompact(s.marketData.marketCapInUsd):"--"})]},`${s.chain}:${s.address}`)),t&&jsxRuntime.jsx("li",{className:"py-2 text-center text-[11px] text-default-400",children:"Loading\u2026"})]})}function si({chain:e,address:t,keyword:o,limit:r=10}){let n=!!o&&o.length>0,{data:s,isPending:i,isFetching:l}=react$1.useSearchTokensQuery({chains:[e],keyword:o,limit:r+1},{enabled:n});return {tokens:react.useMemo(()=>{if(!s)return [];let d=t.toLowerCase();return (s.data??[]).filter(m=>m.address.toLowerCase()!==d).slice(0,r)},[s,t,r]),isLoading:n&&(i||l),unavailable:!n}}function qC({chain:e,address:t,keyword:o,limit:r,onTokenClick:n,className:s}){let{tokens:i,isLoading:l,unavailable:a}=si({chain:e,address:t,keyword:o,limit:r});return jsxRuntime.jsx(ri,{className:s,tokens:i,isLoading:l,unavailable:a,onTokenClick:n})}function ni({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(n=>jsxRuntime.jsx("button",{type:"button",onClick:o?()=>o(n):void 0,className:"flex size-10 items-center justify-center overflow-hidden rounded-full border border-default-100 transition-opacity hover:opacity-80",title:n.symbol,children:jsxRuntime.jsx(ui.Avatar,{src:n.image??void 0,name:(n.symbol??"?").slice(0,1),className:"size-full bg-default-100 text-[10px] text-default-400",showFallback:true})},`${n.chain}:${n.address}`))})}function ii(e){return {tokens:[],isLoading:false,unavailable:true}}function nw({chain:e,address:t,onTokenClick:o,className:r}){let{tokens:n,unavailable:s}=ii();return jsxRuntime.jsx(ni,{className:r,tokens:n,unavailable:s,onTokenClick:o})}function mi({keywords:e,excludeKeywords:t,onKeywordsChange:o,onExcludeKeywordsChange:r,className:n}){let{t:s}=i18n.useTranslation(),[i,l]=react.useState(e?.join(", ")??""),[a,d]=react.useState(t?.join(", ")??"");react.useEffect(()=>{l(p=>{let u=eo(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=eo(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?.(eo(p));},[o]),c=react.useCallback(p=>{d(p),r?.(eo(p));},[r]);return jsxRuntime.jsxs("div",{className:ui.cn("grid grid-cols-2 gap-3 px-4",n),children:[jsxRuntime.jsxs("div",{className:"flex flex-col gap-3",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:s("tokens.filters.keywords.title")}),jsxRuntime.jsx(ui.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:s("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:s("tokens.filters.keywords.exclude.title")}),jsxRuntime.jsx(ui.StyledInput,{variant:"bordered",radius:"lg",size:"sm",placeholder:s("tokens.filters.keywords.placeholder"),value:a,onValueChange:c})]})]})}function eo(e){let t=e.split(",").map(o=>o.trim()).filter(Boolean);return t.length>0?t:void 0}function ki({protocols:e,selectedProtocols:t=[],onSelectedProtocolsChange:o,className:r}){let{t:n}=i18n.useTranslation(),[s,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let l=react.useMemo(()=>e.every(m=>s.includes(m)),[e,s]),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(s.includes(m)){let c=s.filter(p=>p!==m);i(c),o?.(c);}else {let c=[...s,m];i(c),o?.(c);}},[s,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:n("tokens.filters.protocols.title")}),jsxRuntime.jsx(ui.Button,{variant:"light",color:"default",size:"sm",radius:"full",onPress:a,children:n(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=Ce(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":!s.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 fe({title:e,field:t,value:o,onChange:r}){let{t:n}=i18n.useTranslation(),[s,i]=react.useState(o?Xo(o).min:NaN),[l,a]=react.useState(o?Xo(o).max:NaN);react.useEffect(()=>{if(o===void 0)i(NaN),a(NaN);else {let{min:c,max:p}=Xo(o);i(c),a(p);}},[o]);let d=react.useCallback(c=>{i(c),r?.(Ti(t,c,l));},[t,r,l]),m=react.useCallback(c=>{a(c),r?.(Ti(t,s,c));},[t,r,s]);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:s,onValueChange:d,variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.stats.min"),"aria-label":`${e} min`}),jsxRuntime.jsx(ui.StyledNumberInput,{value:l,onValueChange:m,variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.stats.max"),"aria-label":`${e} max`})]})]})}function Xo(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 Ti(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 Ni({values:e,onValuesChange:t,className:o}){let{t:r}=i18n.useTranslation(),[n,s]=react.useState(e);react.useEffect(()=>{s(e);},[e]);let i=react.useCallback(l=>a=>{if(a===void 0){let d=(n??[]).filter(m=>m.field!==l);d=d.length>0?d:void 0,s(d),t?.(d);}else {let d=[...(n??[]).filter(m=>m.field!==l),a];s(d),t?.(d);}},[n,t]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",o),children:[jsxRuntime.jsx(fe,{field:"holders",title:r("tokens.filters.stats.audits.holders"),value:n?.find(l=>l.field==="holders"),onChange:i("holders")}),jsxRuntime.jsx(fe,{field:"top10Ratio",title:r("tokens.filters.stats.audits.top10HoldingsRatio"),value:n?.find(l=>l.field==="top10Ratio"),onChange:i("top10Ratio")}),jsxRuntime.jsx(fe,{field:"top100Ratio",title:r("tokens.filters.stats.audits.top100HoldingsRatio"),value:n?.find(l=>l.field==="top100Ratio"),onChange:i("top100Ratio")}),jsxRuntime.jsx(fe,{field:"creatorsRatio",title:r("tokens.filters.stats.audits.devHoldingsRatio"),value:n?.find(l=>l.field==="creatorsRatio"),onChange:i("creatorsRatio")})]})}function Si({resolution:e,values:t,onValuesChange:o,className:r}){let{t:n}=i18n.useTranslation(),[s,i]=react.useState(t);react.useEffect(()=>{i(t);},[t]);let l=react.useCallback(a=>d=>{if(d===void 0){let m=(s??[]).filter(c=>c.field!==a);m=m.length>0?m:void 0,i(m),o?.(m);}else {let m=[...(s??[]).filter(c=>c.field!==a),d];i(m),o?.(m);}},[s,o]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",r),children:[jsxRuntime.jsx(fe,{field:"marketCap",title:n("tokens.filters.stats.metrics.marketCap"),value:s?.find(a=>a.field==="marketCap"),onChange:l("marketCap")}),jsxRuntime.jsx(fe,{field:"tvl",title:n("tokens.filters.stats.metrics.liquidity"),value:s?.find(a=>a.field==="tvl"),onChange:l("tvl")}),jsxRuntime.jsx(fe,{field:`volumes${e}`,title:n("tokens.filters.stats.metrics.volumes",{resolution:n(`common.resolution.${e}`)}),value:s?.find(a=>a.field===`volumes${e}`),onChange:l(`volumes${e}`)}),jsxRuntime.jsx(fe,{field:`trades${e}`,title:n("tokens.filters.stats.metrics.txns",{resolution:n(`common.resolution.${e}`)}),value:s?.find(a=>a.field===`trades${e}`),onChange:l(`trades${e}`)})]})}function Ai({resolution:e,values:t,onValuesChange:o,className:r}){let{t:n}=i18n.useTranslation(),[s,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:s,onSelectionChange:i,children:[jsxRuntime.jsx(ui.Tab,{title:m===0?n("tokens.filters.stats.audits"):jsxRuntime.jsx(ui.StyledBadge,{color:"primary",size:"sm",content:m,shape:"circle",children:n("tokens.filters.stats.audits")})},"audits"),jsxRuntime.jsx(ui.Tab,{title:c===0?n("tokens.filters.stats.metrics"):jsxRuntime.jsx(ui.StyledBadge,{color:"primary",size:"sm",content:c,shape:"circle",children:n("tokens.filters.stats.metrics")})},"metrics")]}),jsxRuntime.jsx(Ni,{values:l,onValuesChange:d,className:ui.cn({hidden:s!=="audits"})}),jsxRuntime.jsx(Si,{values:l,onValuesChange:d,resolution:e,className:ui.cn({hidden:s!=="metrics"})})]})}function lo({protocols:e,resolution:t,filters:o,onFiltersChange:r,className:n}){let[s,i]=react.useState(Hi(o?.filters,e));react.useEffect(()=>{i(Hi(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(x=>{i(x),r?.(ao(e,x,l,d,c));},[e,l,d,c,r]),f=react.useCallback(x=>{a(x),r?.(ao(e,s,x,d,c));},[e,s,d,c,r]),g=react.useCallback(x=>{m(x),r?.(ao(e,s,l,x,c));},[e,s,l,c,r]),k=react.useCallback(x=>{p(x),r?.(ao(e,s,l,d,x));},[e,s,l,d,r]);return jsxRuntime.jsxs("div",{className:ui.cn("flex flex-col gap-4",n),children:[e&&e.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ki,{protocols:e,selectedProtocols:s,onSelectedProtocolsChange:u}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}})]}),jsxRuntime.jsx(mi,{keywords:l,excludeKeywords:d,onKeywordsChange:f,onExcludeKeywordsChange:g}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}}),jsxRuntime.jsx(Ai,{resolution:t,values:c,onValuesChange:k})]})}function Hi(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 ao(e,t,o,r,n){let s=n?[...n.filter(i=>i.field!=="launchedFromProtocolFamily")]:[];return e&&e.length>0&&(e.every(l=>t.includes(l))||s.push({field:"launchedFromProtocolFamily",operator:"in",value:t})),o===void 0&&r===void 0&&s.length===0?void 0:{keywords:o,excludeKeywords:r,filters:s.length>0?s:void 0}}function Ui({protocols:e,resolution:t,filters:o,onFiltersChange:r}){let{t:n}=i18n.useTranslation(),{isOpen:s,onOpen:i,onClose:l,onOpenChange:a}=ui.useDisclosure(),[d,m]=react.useState(o),c=react.useCallback(()=>{m(void 0);},[]),p=react.useCallback(()=>{r?.(d),l();},[d,r,l]);react.useEffect(()=>{m(o);},[s,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.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.StyledModal,{isOpen:s,onOpenChange:a,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:n("tokens.filters.modal.title")})}),jsxRuntime.jsx(ui.ModalBody,{className:"px-0 pt-0 pb-4",children:jsxRuntime.jsx(ui.ScrollShadow,{children:jsxRuntime.jsx(lo,{protocols:e,resolution:t,filters:d,onFiltersChange:m,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:c,children:n("common.reset")}),jsxRuntime.jsx(ui.Button,{color:"primary",size:"sm",radius:"full",onPress:p,children:n("common.apply")})]})})]})})]})}var lu={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},du={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"},cu={height:1,background:"rgba(39,39,42,1)",margin:0};function Bi({protocols:e,resolution:t,filters:o,onFiltersChange:r}){let{t:n}=i18n.useTranslation(),[s,i]=react.useState(false),l=react.useRef(null),[a,d]=react.useState(o),m=react.useCallback(()=>{d(void 0);},[]),c=react.useCallback(()=>{r?.(a),i(false);},[a,r]);react.useEffect(()=>{d(o);},[s,o]),react.useEffect(()=>{let u=f=>{l.current&&!l.current.contains(f.target)&&i(false);};return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[]),react.useEffect(()=>{if(!s)return;let u=f=>{f.key==="Escape"&&i(false);};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[s]);let p=react.useMemo(()=>Object.values(o||{}).every(u=>u===void 0),[o]);return jsxRuntime.jsxs("div",{ref:l,style:{position:"relative"},children:[jsxRuntime.jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxRuntime.jsxs("button",{type:"button",style:lu,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.FilterIcon,{width:16,height:16,className:"flex-none"}),jsxRuntime.jsx("span",{className:"hidden sm:block",children:n("tokens.listHeader.filter")}),jsxRuntime.jsx(mu,{open:s})]}),!p&&jsxRuntime.jsx("span",{style:{position:"absolute",top:-4,right:-4,minWidth:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),s&&jsxRuntime.jsxs("div",{style:{...du,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(lo,{protocols:e,resolution:t,filters:a,onFiltersChange:d})})}),jsxRuntime.jsx("div",{style:cu}),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:m,children:n("common.reset")}),jsxRuntime.jsx(ui.Button,{variant:"solid",size:"sm",color:"primary",radius:"full",onPress:c,children:n("common.apply")})]})]})]})}function mu({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 YL({popoverPlacement:e="bottom-end",...t}){let{isMobile:o}=ui.useScreen();return o?jsxRuntime.jsx(Ui,{...t}):jsxRuntime.jsx(Bi,{placement:e,...t})}function _i({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),n=react.useCallback(s=>{t?.(s);},[t]);return jsxRuntime.jsx(ui.StyledPlainTabs,{color:"primary",radius:"lg",selectedKey:e,onSelectionChange:n,"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(s=>jsxRuntime.jsx(ui.Tab,{title:r(`common.resolution.${s}`)},s))})}var Su={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},Cu={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 Ki({resolution:e,onResolutionChange:t,resolutionOptions:o=["1m","5m","1h","4h","24h"]}){let{t:r}=i18n.useTranslation(),[n,s]=react.useState(false),i=react.useRef(null),l=react.useCallback(a=>{t?.(a),s(false);},[t]);return react.useEffect(()=>{if(!n)return;let a=m=>{i.current&&!i.current.contains(m.target)&&s(false);},d=m=>{m.key==="Escape"&&s(false);};return document.addEventListener("mousedown",a),document.addEventListener("keydown",d),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",d);}},[n]),jsxRuntime.jsxs("div",{ref:i,style:{position:"relative",zIndex:50},children:[jsxRuntime.jsxs("button",{type:"button",style:Su,onClick:()=>s(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:n?"rotate(180deg)":void 0}})]}),n&&jsxRuntime.jsx("div",{style:Cu,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 fP(e){let{isMobile:t}=ui.useScreen();return t?jsxRuntime.jsx(Ki,{...e}):jsxRuntime.jsx(_i,{...e})}function Qi({token:e}){let{t}=i18n.useTranslation(),o=react.useMemo(()=>e.marketData?.bluechipHoldingsRatio,[e.marketData?.bluechipHoldingsRatio]),r=react.useMemo(()=>o!==void 0&&new utils.SafeBigNumber(o).gte(.1),[o]),n=react.useMemo(()=>o===void 0||new utils.SafeBigNumber(o).lt(.05),[o]);return jsxRuntime.jsx(ui.StyledTooltip,{content:t("tokens.bluechip.explained"),children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2.5",children:[r&&jsxRuntime.jsx(ui.HorsePowerHighIcon,{}),n&&jsxRuntime.jsx(ui.HorsePowerLowIcon,{}),!r&&!n&&jsxRuntime.jsx(ui.HorsePowerIcon,{}),jsxRuntime.jsx("span",{className:ui.cn(r&&"text-bullish",!r&&!n&&"text-bearish",o===void 0&&"text-neutral"),children:utils.formatPercent(o)})]})})}function Gi({token:e}){let t=ui.useCopyToClipboard(),{t:o}=i18n.useTranslation(),r=react.useCallback(s=>{s.preventDefault(),s.stopPropagation(),t(e.address,()=>ui.toast.success(o("tokens.copied.address")));},[t,e.address,o]),n=hooks.useTickAge(e.createdAt);return jsxRuntime.jsxs("div",{className:"w-full flex justify-start items-center gap-3",children:[jsxRuntime.jsx(de,{token:e,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:e.symbol}),jsxRuntime.jsx(ui.StyledTooltip,{content:e.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:r,children:[jsxRuntime.jsx("div",{className:"flex-initial whitespace-nowrap truncate",children:e.name}),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(n)}),e.socialMedias?.website&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.website,className:"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"})}),e.socialMedias?.twitter&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.twitter,className:"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"})}),e.socialMedias?.telegram&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.telegram,className:"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"})}),e.socialMedias?.discord&&jsxRuntime.jsx(ui.Link,{href:e.socialMedias.discord,className:"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(`${e.symbol} OR ${e.address}`),className:"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"})})]})]})]})}function Xi({token:e}){let{t}=i18n.useTranslation(),o=e.marketData,r=react.useMemo(()=>new utils.SafeBigNumber(o?.top10HoldingsRatio).gte(.1),[o?.top10HoldingsRatio]),n=react.useMemo(()=>new utils.SafeBigNumber(o?.devHoldingsRatio).gte(.1),[o?.devHoldingsRatio]),s=react.useMemo(()=>new utils.SafeBigNumber(o?.sniperHoldingsRatio).gte(.1),[o?.sniperHoldingsRatio]),i=react.useMemo(()=>new utils.SafeBigNumber(o?.insiderHoldingsRatio).gte(.1),[o?.insiderHoldingsRatio]),l=react.useMemo(()=>new utils.SafeBigNumber(o?.bundleHoldingsRatio).gte(.1),[o?.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(W,{icon:jsxRuntime.jsx(ui.PeopleIcon,{width:12,height:12}),value:utils.formatAmount(o?.holders),tooltip:t("tokens.tokenInfo.holders"),warning:false,disable:!o?.holders}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.KlineCandlesIcon,{width:12,height:12}),value:utils.formatAmount(o?.proHolders),tooltip:t("tokens.tokenInfo.proHolders"),warning:false,disable:!o?.proHolders}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.StarIcon,{width:12,height:12}),value:utils.formatAmount(o?.kolHolders),tooltip:t("tokens.tokenInfo.kolHolders"),warning:false,disable:!o?.kolHolders}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(o?.top10HoldingsRatio),tooltip:t("tokens.tokenInfo.top10HoldingsRatio"),warning:r,disable:!o?.top10HoldingsRatio||o?.top10HoldingsRatio==="0"})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(o?.devHoldingsRatio),tooltip:t("tokens.tokenInfo.devHoldingsRatio"),warning:n,disable:!o?.devHoldingsRatio||o?.devHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(o?.sniperHoldingsRatio),tooltip:t("tokens.tokenInfo.sniperHoldingsRatio"),warning:s,disable:!o?.sniperHoldingsRatio||o?.sniperHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(o?.insiderHoldingsRatio),tooltip:t("tokens.tokenInfo.insiderHoldingsRatio"),warning:i,disable:!o?.insiderHoldingsRatio||o?.insiderHoldingsRatio==="0",tooltipPlacement:"bottom"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(o?.bundleHoldingsRatio),tooltip:t("tokens.tokenInfo.bundleHoldingsRatio"),warning:l,disable:!o?.bundleHoldingsRatio||o?.bundleHoldingsRatio==="0",tooltipPlacement:"bottom"})]})]})}function Ji({token:e}){let t=react.useMemo(()=>e.marketData?.tvlInUsd,[e.marketData?.tvlInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function Yi({token:e}){let t=react.useMemo(()=>e.marketData?.marketCapInUsd,[e.marketData?.marketCapInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function ea({token:e,resolution:t}){let o=react.useMemo(()=>e.marketData?.priceInUsd,[e]),r=react.useMemo(()=>e.stats?.[t]?.priceChange,[e,t]),n=react.useMemo(()=>r?new utils.SafeBigNumber(r).abs().toString():void 0,[r]),s=react.useMemo(()=>r&&new utils.SafeBigNumber(r).gte(0),[r]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatPriceUSD(o)}),jsxRuntime.jsxs("span",{className:ui.cn("inline-flex gap-1 items-center text-xs",s?"text-bullish":"text-bearish"),children:[s?jsxRuntime.jsx(ui.TriangleUpIcon,{width:10,height:10}):jsxRuntime.jsx(ui.TriangleDownIcon,{width:10,height:10}),jsxRuntime.jsx("span",{children:utils.formatPercent(n)})]})]})}function oa({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.traders,[e.stats?.[t]?.traders]),r=react.useMemo(()=>e.stats?.[t]?.buyers,[e.stats?.[t]?.buyers]),n=react.useMemo(()=>e.stats?.[t]?.sellers,[e.stats?.[t]?.sellers]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(o)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(r)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})}function sa({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.trades,[e.stats?.[t]?.trades]),r=react.useMemo(()=>e.stats?.[t]?.buys,[e.stats?.[t]?.buys]),n=react.useMemo(()=>e.stats?.[t]?.sells,[e.stats?.[t]?.sells]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmount(o)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmount(r)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmount(n)})]})]})}function ia({token:e,resolution:t}){let o=react.useMemo(()=>e.stats?.[t]?.volumesInUsd,[e.stats?.[t]?.volumesInUsd]),r=react.useMemo(()=>e.stats?.[t]?.buyVolumesInUsd,[e.stats?.[t]?.buyVolumesInUsd]),n=react.useMemo(()=>e.stats?.[t]?.sellVolumesInUsd,[e.stats?.[t]?.sellVolumesInUsd]);return jsxRuntime.jsxs("div",{className:"flex flex-col gap-1 justify-center items-start",children:[jsxRuntime.jsx("span",{children:utils.formatAmountUSD(o)}),jsxRuntime.jsxs("div",{className:"flex gap-1 text-xs",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSD(r)}),"/",jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSD(n)})]})]})}var hf=`
|
|
22
22
|
@keyframes tklShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
|
|
23
|
-
`,uf={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 I(e,t,o,s){return {...uf,animationDelay:`${e}ms`,width:t,height:o,...s}}var ra=10;function sa({rowHeight:e,hasActions:t}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{children:pf}),Array.from({length:ra}).map((o,s)=>jsxRuntime.jsx(ff,{index:s,rowHeight:e,hasActions:t,isLast:s===ra-1},s))]})}function ff({index:e,rowHeight:t,hasActions:o,isLast:s}){let r=e*80;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:320,padding:"0 12px 0 24px",display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[jsxRuntime.jsx("div",{style:I(r,64,64,{borderRadius:8,flexShrink:0})}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:1},children:[jsxRuntime.jsx("div",{style:I(r+30,"60%",20)}),jsxRuntime.jsx("div",{style:I(r+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:I(r+20,72,20)}),jsxRuntime.jsx("div",{style:I(r+40,52,16)})]}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:I(r+30,64,20)})}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:I(r+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:I(r+50,72,20)}),jsxRuntime.jsx("div",{style:I(r+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:I(r+60,48,20)}),jsxRuntime.jsx("div",{style:I(r+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:I(r+70,40,20)}),jsxRuntime.jsx("div",{style:I(r+90,72,16)})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",alignItems:"center",gap:10},children:[jsxRuntime.jsx("div",{style:I(r+80,20,20,{borderRadius:4})}),jsxRuntime.jsx("div",{style:I(r+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:I(r+80,52,16)}),jsxRuntime.jsx("div",{style:I(r+100,40,16)}),jsxRuntime.jsx("div",{style:I(r+120,36,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:I(r+90,48,16)}),jsxRuntime.jsx("div",{style:I(r+110,40,16)}),jsxRuntime.jsx("div",{style:I(r+130,40,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:I(r+100,40,16)}),jsxRuntime.jsx("div",{style:I(r+120,36,16)})]})]}),o&&jsxRuntime.jsx("div",{style:{width:124,padding:"0 24px 0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:I(r+100,97,32,{borderRadius:8})})})]})}function rt({tokens:e,resolution:t="24h",isLoading:o,ActionsComponent:s,onSelectToken:r,sortDirections:n,onSortChange:i,height:l=600,itemHeight:a=88,itemHeightMobile:d=72,className:m}){let{isMobile:c}=ui$1.useScreen(),{t:p}=i18n.useTranslation(),g=react.useCallback(u=>b=>{b.preventDefault(),b.stopPropagation(),r?.(u);},[r]),[x,h]=react.useState(n??{});react.useEffect(()=>{h(n??{});},[n]);let f=react.useCallback(u=>b=>{let k={[u]:b};h(k),i?.(k);},[i]);return jsxRuntime.jsxs(ui$1.StyledTable,{isHeaderSticky:true,isVirtualized:true,radius:"lg",className:ui$1.cn("h-full mx-auto",m??(s?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),classNames:{loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},maxTableHeight:l,rowHeight:c?d:a,"aria-label":"Tokens",children:[jsxRuntime.jsx(ui$1.TableHeader,{children:[jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.token"),width:c?208:320,className:ui$1.cn("bg-[#0a0a0b] sticky left-0 z-10","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]"),children:p("tokens.listHeader.token")},"token"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.price"),width:128,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.Sortable,{sort:x.price,onSortChange:f("price"),children:p("tokens.listHeader.price")}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsx(ui$1.Sortable,{sort:x[`priceChange${t}`],onSortChange:f(`priceChange${t}`),children:p("tokens.listHeader.priceChange",{resolution:t})})]})},"price"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.marketCap"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:x.marketCap,onSortChange:f("marketCap"),children:p("tokens.listHeader.marketCap")})},"marketCap"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.liquidity"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:x.tvl,onSortChange:f("tvl"),children:p("tokens.listHeader.liquidity")})},"liquidity"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.volumes",{resolution:t}),width:138,children:jsxRuntime.jsx(ui$1.Sortable,{sort:x[`volumes${t}`],onSortChange:f(`volumes${t}`),children:p("tokens.listHeader.volumes",{resolution:t})})},"volumes"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.txs",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:x[`trades${t}`],onSortChange:f(`trades${t}`),children:p("tokens.listHeader.txs",{resolution:t})})},"txs"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.traders",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:x[`traders${t}`],onSortChange:f(`traders${t}`),children:p("tokens.listHeader.traders",{resolution:t})})},"traders"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.bluechip"),width:128,children:p("tokens.listHeader.bluechip")},"bluechip"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.tokenInfo"),width:308,children:p("tokens.listHeader.tokenInfo")},"tokenInfo"),s?jsxRuntime.jsx(ui$1.TableColumn,{textValue:p("tokens.listHeader.actions"),width:c?72:124,align:"end",className:ui$1.cn("bg-[#0a0a0b] sticky right-0 z-10","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]"),children:p("tokens.listHeader.actions")},"actions"):void 0].filter(Boolean)}),jsxRuntime.jsx(ui$1.TableBody,{items:o?[]:e,isLoading:o,loadingContent:jsxRuntime.jsx(sa,{rowHeight:c?d:a,hasActions:!!s}),emptyContent: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:p("common.empty")})]}),children:u=>jsxRuntime.jsx(ui$1.TableRow,{onClick:r?g(u):void 0,children:[jsxRuntime.jsx(ui$1.TableCell,{className:ui$1.cn("sticky left-0 z-10 bg-[#0a0a0b]","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:bg-[#161617]"),children:jsxRuntime.jsx(Ki,{token:u,resolution:t})},"token"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Ji,{token:u,resolution:t})},"price"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Qi,{token:u,resolution:t})},"marketCap"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(qi,{token:u,resolution:t})},"liquidity"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(oa,{token:u,resolution:t})},"volumes"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ea,{token:u,resolution:t})},"trades"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(Zi,{token:u,resolution:t})},"traders"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx($i,{token:u,resolution:t})},"bluechip"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(zi,{token:u,resolution:t})},"tokenInfo"),s?jsxRuntime.jsx(ui$1.TableCell,{className:ui$1.cn("sticky right-0 z-10 bg-[#0a0a0b]","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:bg-[#161617]"),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(s,{token:u,resolution:t})})},"actions"):void 0].filter(Boolean)},u.address)})]})}function la({token:e,resolution:t,renderAction:o,isLast:s=false,onSelectToken:r,className:n}){let{t:i}=i18n.useTranslation(),l=ui$1.useCopyToClipboard(),a=hooks.useTickAge(e.createdAt),d=react.useCallback(()=>{r?.(e);},[r,e]),m=react.useCallback($=>{$.stopPropagation(),l(e.address,()=>ui$1.toast.success(i("tokens.copied.address")));},[l,e.address,i]),c=e.marketData,p=e.stats?.[t],g=react.useMemo(()=>c?.priceInUsd,[c?.priceInUsd]),x=react.useMemo(()=>p?.priceChange,[p?.priceChange]),h=react.useMemo(()=>x&&new utils.SafeBigNumber(x).gte(0),[x]),f=react.useMemo(()=>x?new utils.SafeBigNumber(x).abs().toString():void 0,[x]),u=react.useMemo(()=>p?.volumesInUsd,[p?.volumesInUsd]),b=react.useMemo(()=>p?.buyVolumesInUsd,[p?.buyVolumesInUsd]),k=react.useMemo(()=>p?.sellVolumesInUsd,[p?.sellVolumesInUsd]),T=react.useMemo(()=>p?.trades,[p?.trades]),K=react.useMemo(()=>c?.marketCapInUsd,[c?.marketCapInUsd]),J=react.useMemo(()=>c?.tvlInUsd,[c?.tvlInUsd]),ne=react.useMemo(()=>new utils.SafeBigNumber(c?.top10HoldingsRatio).gte(.1),[c?.top10HoldingsRatio]),De=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),V=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),We=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Be=react.useMemo(()=>new utils.SafeBigNumber(c?.bundleHoldingsRatio).gte(.1),[c?.bundleHoldingsRatio]),F=c?.holders!==void 0&&c.holders>0,le=c?.kolHolders!==void 0&&c.kolHolders>0,U=c?.bluechipHolders!==void 0&&c.bluechipHolders>0,te=F||le||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",!s&&"border-b",n),style:s?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:r?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(de,{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(a)}),e.socialMedias?.website&&jsxRuntime.jsx(ui$1.Link,{href:e.socialMedias.website,className:"text-neutral hover:text-primary",target:"_blank",onClick:$=>$.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:$=>$.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:$=>$.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:$=>$.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(K)})]}),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(J)})]})]}),te&&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)]})}),le&&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(g)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex items-center gap-0.5 text-[10px] leading-none",h?"text-bullish":"text-bearish"),children:[h?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:8,height:8}),x===void 0?"--":utils.formatPercent(f)]})]}),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(u)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(b)}),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$1.HorizontalScrollContainer,{className:"flex-auto min-w-0",forceShowArrows:true,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(c?.top10HoldingsRatio),tooltip:i("tokens.tokenInfo.top10HoldingsRatio"),warning:ne,disable:!c?.top10HoldingsRatio||c?.top10HoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(c?.devHoldingsRatio),tooltip:i("tokens.tokenInfo.devHoldingsRatio"),warning:De,disable:!c?.devHoldingsRatio||c?.devHoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.SniperIcon,{width:12,height:12}),value:utils.formatPercent(c?.sniperHoldingsRatio),tooltip:i("tokens.tokenInfo.sniperHoldingsRatio"),warning:V,disable:!c?.sniperHoldingsRatio||c?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(c?.insiderHoldingsRatio),tooltip:i("tokens.tokenInfo.insiderHoldingsRatio"),warning:We,disable:!c?.insiderHoldingsRatio||c?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(B,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(c?.bundleHoldingsRatio),tooltip:i("tokens.tokenInfo.bundleHoldingsRatio"),warning:Be,disable:!c?.bundleHoldingsRatio||c?.bundleHoldingsRatio==="0"})]})}),o&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:$=>$.stopPropagation(),children:o(e)})]})]})}function da({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 Zf=154,ca=10;function jf({index:e,style:t,tokens:o,skeletonCount:s,resolution:r,renderAction:n,onSelectToken:i}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(la,{token:o[e],resolution:r,isLast:e===o.length-1,renderAction:n,onSelectToken:i})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(da,{isLast:e===s-1})})}function J1({tokens:e,resolution:t="24h",isLoading:o,height:s=600,renderAction:r,onSelectToken:n,className:i}){let l=o||!e?void 0:e,a=l?l.length:ca,d=react.useMemo(()=>({tokens:l,skeletonCount:ca,resolution:t,renderAction:r,onSelectToken:n}),[l,t,r,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:s},rowCount:a,rowHeight:Zf,overscanCount:5,rowComponent:jf,rowProps:d})})}var sg=80;function ng(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 fa(e){return e.sort((t,o)=>{let s=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-s}),e.slice(0,sg)}function ga({chain:e,resolution:t,options:o,refetchInterval:s=12e3}){let r=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),n=react.useRef(r),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(r)!==JSON.stringify(n.current)&&(l(true),d([]),n.current=r);},[r]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useNewTokensQuery(r,{refetchInterval:s});react.useEffect(()=>{m&&(d(x=>{let h=[...x];for(let f of m){let u=h.findIndex(b=>b.address===f.address);u>=0?h[u]=O(h[u],f):h.push(f);}return fa(h)}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=[...h],u=false;for(let b of x){let k=f.findIndex(T=>T.address===b.address);k>=0?(u=true,f[k]=O(f[k],b)):(u=true,f.push(ng(b)));}return u?fa(f):h});},[]);react$1.useNewTokensSubscription({chain:e},p);let g=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:g}}function l2({chain:e,resolution:t,filters:o,ActionsComponent:s,onSelectToken:r,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let x=Object.keys(d??{})[0],h=d?.[x];return {...o,...x&&h?{sortBy:x,sortDirection:h}:void 0}},[o,d]),{tokens:p,isLoading:g}=ga({chain:e,resolution:t,options:c});return jsxRuntime.jsx(rt,{tokens:p,isLoading:g,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:s,onSelectToken:r,sortDirections:d,onSortChange:m,className:a})}function ba({chain:e,resolution:t,options:o,refetchInterval:s=12e3}){let r=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),n=react.useRef(r),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(r)!==JSON.stringify(n.current)&&(l(true),d([]),n.current=r);},[r]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useStockTokensQuery(r,{refetchInterval:s});react.useEffect(()=>{m&&(d(x=>{let h=[];for(let f of m){let u=x.find(b=>b.address===f.address);h.push(u?O(u,f):f);}return h}),l(false));},[m]);let p=react.useCallback(x=>{d(h=>{let f=[...h],u=false;for(let b of x){let k=f.findIndex(T=>T.address===b.address);k>=0&&(u=true,f[k]=O(f[k],b));}return u?f:h});},[]);react$1.useStockTokensSubscription({chain:e},p);let g=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:g}}function y2({chain:e,resolution:t,filters:o,ActionsComponent:s,onSelectToken:r,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let x=Object.keys(d??{})[0],h=d?.[x];return {...o,...x&&h?{sortBy:x,sortDirection:h}:void 0}},[o,d]),{tokens:p,isLoading:g}=ba({chain:e,resolution:t,options:c});return jsxRuntime.jsx(rt,{tokens:p,isLoading:g,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:s,onSelectToken:r,sortDirections:d,onSortChange:m,className:a})}function P2({chain:e,resolution:t,filters:o,ActionsComponent:s,onSelectToken:r,height:n,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let x=Object.keys(d??{})[0],h=d?.[x];return {...o,...x&&h?{sortBy:x,sortDirection:h}:void 0}},[o,d]),{tokens:p,isLoading:g}=Bt({chain:e,resolution:t,options:c});return jsxRuntime.jsx(rt,{tokens:p,isLoading:g,resolution:t,height:n,itemHeight:i,itemHeightMobile:l,ActionsComponent:s,onSelectToken:r,sortDirections:d,onSortChange:m,className:a})}var Lg=15e3;function Pg({chain:e,addresses:t,pollMs:o=Lg}){let s=t.length>0,[r,n]=react.useState({}),i=react$1.useTokensQuery({chain:e,addresses:t},{enabled:s,refetchInterval:o});react.useEffect(()=>{i.data&&n(c=>{let p={};for(let g of i.data){let x=c[g.address];p[g.address]=x?O(x,g):g;}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(!s)return;let c=[];for(let p of t)c.push(l.subscribeToken(e,p,g=>{n(x=>{let h=x;for(let f of g){let u=h[f.address];if(!u)continue;let b=O(u,f);b!==u&&(h=h===x?{...x}:h,h[f.address]=b);}return h});}));return ()=>{for(let p of c)p.unsubscribe();}},[l,e,d,s]);let m=react.useCallback(async()=>{await i.refetch();},[i.refetch]);return {tokens:r,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=Cn;exports.HolderTagBadge=Ra;exports.HolderTagBadgeList=Lt;exports.HoldingRatioChip=B;exports.NewTokenListWidget=l2;exports.PulseFinalStretchListWidget=mh;exports.PulseList=$e;exports.PulseListHeader=cr;exports.PulseListItem=wr;exports.PulseListItemSkeleton=mr;exports.PulseMigratedListWidget=eh;exports.PulseNewListWidget=$x;exports.SEARCH_MODAL_ID=To;exports.SearchHistoryUI=Gr;exports.SearchHistoryWidget=Xr;exports.SearchInputUI=Jr;exports.SearchModal=Xk;exports.SearchResultItemUI=Ft;exports.SearchResultListHeader=Ut;exports.SearchResultListSkeleton=Dt;exports.SearchResultListWidget=ss;exports.SearchTokensButton=sb;exports.SearchWidget=us;exports.StockTokenListWidget=y2;exports.TRADER_TAG_META=go;exports.TokenAbout=fn;exports.TokenAboutWidget=F0;exports.TokenActivitiesList=Zs;exports.TokenActivitiesListWidget=gv;exports.TokenAvatar=de;exports.TokenBasicInfo=vs;exports.TokenBasicInfoWidget=zs;exports.TokenCategories=Nn;exports.TokenCategoriesWidget=wN;exports.TokenCexListing=yn;exports.TokenCexListingWidget=mN;exports.TokenChartBanner=Jn;exports.TokenChartBannerWidget=yC;exports.TokenDetailHeader=bs;exports.TokenDetailHeaderWidget=RT;exports.TokenDevTokensList=_n;exports.TokenDevTokensListWidget=nC;exports.TokenDevTokensSummary=$n;exports.TokenHoldersCount=Ss;exports.TokenHoldersCountWidget=ws;exports.TokenHoldersList=Gs;exports.TokenHoldersListWidget=JT;exports.TokenLiquidities=kn;exports.TokenLiquiditiesWidget=Y0;exports.TokenList=rt;exports.TokenListFilter=no;exports.TokenListFilterModal=Hi;exports.TokenListFilterPopover=Ui;exports.TokenListFilterWidget=VL;exports.TokenListResolutionSelectorDesktop=Wi;exports.TokenListResolutionSelectorMobile=Ei;exports.TokenListResolutionSelectorWidget=sP;exports.TokenMarketCap=Rs;exports.TokenMarketCapWidget=Hs;exports.TokenOrdersList=In;exports.TokenOrdersListWidget=SS;exports.TokenPositionsList=Rn;exports.TokenPositionsListWidget=iS;exports.TokenPrice=Fs;exports.TokenPriceWidget=Os;exports.TokenReusedImageList=ti;exports.TokenReusedImageListWidget=XC;exports.TokenSecurity=cn;exports.TokenSecurityWidget=y0;exports.TokenSimilarTokens=jn;exports.TokenSimilarTokensWidget=OC;exports.TokenSocialMedia=Ds;exports.TokenSocialMediaWidget=Bs;exports.TokenStatsFlipBase=wn;exports.TokenStatsFlipHover=Ln;exports.TokenStatsFlipWidget=_N;exports.TokenTopTradersList=Wn;exports.TokenTopTradersListWidget=$S;exports.TokenTradersOverview=rn;exports.TokenTradersOverviewWidget=Av;exports.TokenTransactionsOverview=nn;exports.TokenTransactionsOverviewWidget=zv;exports.TokenVolume=_s;exports.TokenVolumeWidget=Ks;exports.TokenVolumesOverview=ln;exports.TokenVolumesOverviewWidget=i0;exports.TraderTagBadge=Pa;exports.TraderTagBadgeList=gr;exports.TrendingTokenCard=la;exports.TrendingTokenCardList=J1;exports.TrendingTokenCardSkeleton=da;exports.TrendingTokenListWidget=P2;exports.useNewTokensScript=ga;exports.usePulseFinalStretchListScript=Kr;exports.usePulseMigratedListScript=Br;exports.usePulseNewListScript=Fr;exports.useSearchHistory=It;exports.useSearchResultListScript=os;exports.useSearchScript=ms;exports.useStockTokensScript=ba;exports.useTokenAboutScript=gn;exports.useTokenActivitiesListScript=tn;exports.useTokenBasicInfoScript=Gb;exports.useTokenCategoriesScript=Sn;exports.useTokenCexListingScript=Tn;exports.useTokenChartBannerScript=Zn;exports.useTokenDetailHeaderScript=ys;exports.useTokenDevTokensListScript=Qn;exports.useTokenHoldersCountScript=Cs;exports.useTokenHoldersListScript=Ys;exports.useTokenLiquiditiesScript=bn;exports.useTokenMarketCapScript=As;exports.useTokenOrdersListScript=Dn;exports.useTokenPositionsListScript=Mn;exports.useTokenPriceScript=Us;exports.useTokenReusedImageListScript=oi;exports.useTokenSecurityScript=mn;exports.useTokenSimilarTokensScript=ei;exports.useTokenSocialMediaScript=Ws;exports.useTokenStatsFlipScript=Pn;exports.useTokenTopTradersListScript=En;exports.useTokenTradersOverviewScript=sn;exports.useTokenTransactionsOverviewScript=an;exports.useTokenVolumeScript=$s;exports.useTokenVolumesOverviewScript=dn;exports.useTokens=Pg;exports.useTrendingTokensScript=Bt;//# sourceMappingURL=index.js.map
|
|
23
|
+
`,bf={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 I(e,t,o,r){return {...bf,animationDelay:`${e}ms`,width:t,height:o,...r}}var aa=10;function la({rowHeight:e,hasActions:t,isMobile:o}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{children:hf}),Array.from({length:aa}).map((r,n)=>jsxRuntime.jsx(yf,{index:n,rowHeight:e,hasActions:t,isMobile:o,isLast:n===aa-1},n))]})}function yf({index:e,rowHeight:t,hasActions:o,isMobile:r,isLast:n}){let s=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:n?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:I(s,l,l,{borderRadius:8,flexShrink:0})}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,flex:1},children:[jsxRuntime.jsx("div",{style:I(s+30,"60%",20)}),jsxRuntime.jsx("div",{style:I(s+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:I(s+20,72,20)}),jsxRuntime.jsx("div",{style:I(s+40,52,16)})]}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:I(s+30,64,20)})}),jsxRuntime.jsx("div",{style:{width:106,padding:"0 12px",display:"flex",alignItems:"center"},children:jsxRuntime.jsx("div",{style:I(s+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:I(s+50,72,20)}),jsxRuntime.jsx("div",{style:I(s+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:I(s+60,48,20)}),jsxRuntime.jsx("div",{style:I(s+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:I(s+70,40,20)}),jsxRuntime.jsx("div",{style:I(s+90,72,16)})]}),jsxRuntime.jsxs("div",{style:{width:128,padding:"0 12px",display:"flex",alignItems:"center",gap:10},children:[jsxRuntime.jsx("div",{style:I(s+80,20,20,{borderRadius:4})}),jsxRuntime.jsx("div",{style:I(s+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:I(s+80,52,16)}),jsxRuntime.jsx("div",{style:I(s+100,40,16)}),jsxRuntime.jsx("div",{style:I(s+120,36,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:I(s+90,48,16)}),jsxRuntime.jsx("div",{style:I(s+110,40,16)}),jsxRuntime.jsx("div",{style:I(s+130,40,16)})]}),jsxRuntime.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsxRuntime.jsx("div",{style:I(s+100,40,16)}),jsxRuntime.jsx("div",{style:I(s+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:I(s+100,d,32,{borderRadius:8})})})]})}function st({tokens:e,resolution:t="24h",isLoading:o,ActionsComponent:r,onSelectToken:n,sortDirections:s,onSortChange:i,height:l=600,itemHeight:a=88,itemHeightMobile:d=72,className:m}){let{isMobile:c}=ui.useScreen(),p=o&&e.length===0,{t:u}=i18n.useTranslation(),f=react.useCallback(b=>h=>{h.preventDefault(),h.stopPropagation(),n?.(b);},[n]),[g,k]=react.useState(s??{});react.useEffect(()=>{k(s??{});},[s]);let x=react.useCallback(b=>h=>{let v={[b]:h};k(v),i?.(v);},[i]);return jsxRuntime.jsxs(ui.StyledTable,{isHeaderSticky:true,isVirtualized:true,radius:"lg",className:ui.cn("h-full mx-auto",m??(r?"max-w-362 sm:max-w-403":"max-w-331 sm:max-w-372")),classNames:{loadingWrapper:"flex-col justify-start items-start",emptyWrapper:"pt-30"},maxTableHeight:l,rowHeight:c?d:a,"aria-label":"Tokens",children:[jsxRuntime.jsx(ui.TableHeader,{children:[jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.token"),width:c?208:320,className:ui.cn("bg-[#0a0a0b] sticky left-0 z-10","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]"),children:u("tokens.listHeader.token")},"token"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.price"),width:128,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(ui.Sortable,{sort:g.price,onSortChange:x("price"),children:u("tokens.listHeader.price")}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsx(ui.Sortable,{sort:g[`priceChange${t}`],onSortChange:x(`priceChange${t}`),children:u("tokens.listHeader.priceChange",{resolution:t})})]})},"price"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.marketCap"),width:106,children:jsxRuntime.jsx(ui.Sortable,{sort:g.marketCap,onSortChange:x("marketCap"),children:u("tokens.listHeader.marketCap")})},"marketCap"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.liquidity"),width:106,children:jsxRuntime.jsx(ui.Sortable,{sort:g.tvl,onSortChange:x("tvl"),children:u("tokens.listHeader.liquidity")})},"liquidity"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.volumes",{resolution:t}),width:138,children:jsxRuntime.jsx(ui.Sortable,{sort:g[`volumes${t}`],onSortChange:x(`volumes${t}`),children:u("tokens.listHeader.volumes",{resolution:t})})},"volumes"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.txs",{resolution:t}),width:126,children:jsxRuntime.jsx(ui.Sortable,{sort:g[`trades${t}`],onSortChange:x(`trades${t}`),children:u("tokens.listHeader.txs",{resolution:t})})},"txs"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.traders",{resolution:t}),width:126,children:jsxRuntime.jsx(ui.Sortable,{sort:g[`traders${t}`],onSortChange:x(`traders${t}`),children:u("tokens.listHeader.traders",{resolution:t})})},"traders"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.bluechip"),width:128,children:u("tokens.listHeader.bluechip")},"bluechip"),jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.tokenInfo"),width:308,children:u("tokens.listHeader.tokenInfo")},"tokenInfo"),r?jsxRuntime.jsx(ui.TableColumn,{textValue:u("tokens.listHeader.actions"),width:c?72:124,align:"end",className:ui.cn("bg-[#0a0a0b] sticky right-0 z-10","shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]"),children:u("tokens.listHeader.actions")},"actions"):void 0].filter(Boolean)}),jsxRuntime.jsx(ui.TableBody,{items:e,isLoading:p,loadingContent:jsxRuntime.jsx(la,{rowHeight:c?d:a,hasActions:!!r,isMobile:c}),emptyContent: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:u("common.empty")})]}),children:b=>jsxRuntime.jsx(ui.TableRow,{onClick:n?f(b):void 0,children:[jsxRuntime.jsx(ui.TableCell,{className:ui.cn("sticky left-0 z-10 bg-[#0a0a0b]","shadow-[1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150","[tr:hover_&]:bg-[#161617]"),children:jsxRuntime.jsx(Gi,{token:b,resolution:t})},"token"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(ea,{token:b,resolution:t})},"price"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Yi,{token:b,resolution:t})},"marketCap"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Ji,{token:b,resolution:t})},"liquidity"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(ia,{token:b,resolution:t})},"volumes"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(sa,{token:b,resolution:t})},"trades"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(oa,{token:b,resolution:t})},"traders"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Qi,{token:b,resolution:t})},"bluechip"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Xi,{token:b,resolution:t})},"tokenInfo"),r?jsxRuntime.jsx(ui.TableCell,{className:ui.cn("sticky right-0 z-10",c?"bg-transparent":"bg-[#0a0a0b]",!c&&"shadow-[-1px_0_0_0_rgba(39,39,42,0.6)]","transition-colors duration-150",!c&&"[tr:hover_&]:bg-[#161617]"),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:b,resolution:t})})},"actions"):void 0].filter(Boolean)},b.address)})]})}function pa({token:e,resolution:t,renderAction:o,isLast:r=false,onSelectToken:n,className:s}){let{t:i}=i18n.useTranslation(),l=ui.useCopyToClipboard(),a=hooks.useTickAge(e.createdAt),d=react.useCallback(()=>{n?.(e);},[n,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]),f=react.useMemo(()=>p?.priceChange,[p?.priceChange]),g=react.useMemo(()=>f&&new utils.SafeBigNumber(f).gte(0),[f]),k=react.useMemo(()=>f?new utils.SafeBigNumber(f).abs().toString():void 0,[f]),x=react.useMemo(()=>p?.volumesInUsd,[p?.volumesInUsd]),b=react.useMemo(()=>p?.buyVolumesInUsd,[p?.buyVolumesInUsd]),h=react.useMemo(()=>p?.sellVolumesInUsd,[p?.sellVolumesInUsd]),v=react.useMemo(()=>p?.trades,[p?.trades]),K=react.useMemo(()=>c?.marketCapInUsd,[c?.marketCapInUsd]),J=react.useMemo(()=>c?.tvlInUsd,[c?.tvlInUsd]),ne=react.useMemo(()=>new utils.SafeBigNumber(c?.top10HoldingsRatio).gte(.1),[c?.top10HoldingsRatio]),De=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),E=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),We=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Be=react.useMemo(()=>new utils.SafeBigNumber(c?.bundleHoldingsRatio).gte(.1),[c?.bundleHoldingsRatio]),F=c?.holders!==void 0&&c.holders>0,le=c?.kolHolders!==void 0&&c.kolHolders>0,U=c?.bluechipHolders!==void 0&&c.bluechipHolders>0,te=F||le||U;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",s),style:r?void 0:{borderBottomColor:"rgba(39,39,42,0.6)"},onClick:n?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(de,{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(K)})]}),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(J)})]})]}),te&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-xs font-mono text-neutral leading-none",children:[F&&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)]})}),le&&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)]})}),U&&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",g?"text-bullish":"text-bearish"),children:[g?jsxRuntime.jsx(ui.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui.TriangleDownIcon,{width:8,height:8}),f===void 0?"--":utils.formatPercent(k)]})]}),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(x)})]}),jsxRuntime.jsxs("span",{className:"text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-bullish",children:utils.formatAmountUSDCompact(b)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(h)})]})]}),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(v)})]})]})]}),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(W,{icon:jsxRuntime.jsx(ui.UserWithStarBadgeIcon,{width:12,height:12}),value:utils.formatPercent(c?.top10HoldingsRatio),tooltip:i("tokens.tokenInfo.top10HoldingsRatio"),warning:ne,disable:!c?.top10HoldingsRatio||c?.top10HoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.CookIcon,{width:12,height:12}),value:utils.formatPercent(c?.devHoldingsRatio),tooltip:i("tokens.tokenInfo.devHoldingsRatio"),warning:De,disable:!c?.devHoldingsRatio||c?.devHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.SniperIcon,{width:12,height:12}),value:utils.formatPercent(c?.sniperHoldingsRatio),tooltip:i("tokens.tokenInfo.sniperHoldingsRatio"),warning:E,disable:!c?.sniperHoldingsRatio||c?.sniperHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.RatIcon,{width:12,height:12}),value:utils.formatPercent(c?.insiderHoldingsRatio),tooltip:i("tokens.tokenInfo.insiderHoldingsRatio"),warning:We,disable:!c?.insiderHoldingsRatio||c?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(c?.bundleHoldingsRatio),tooltip:i("tokens.tokenInfo.bundleHoldingsRatio"),warning:Be,disable:!c?.bundleHoldingsRatio||c?.bundleHoldingsRatio==="0"})]})}),o&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:_=>_.stopPropagation(),children:o(e)})]})]})}function ua({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 sg=154,fa=10;function ng({index:e,style:t,tokens:o,skeletonCount:r,resolution:n,renderAction:s,onSelectToken:i}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(pa,{token:o[e],resolution:n,isLast:e===o.length-1,renderAction:s,onSelectToken:i})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(ua,{isLast:e===r-1})})}function i2({tokens:e,resolution:t="24h",isLoading:o,height:r=600,renderAction:n,onSelectToken:s,className:i}){let l=o||!e?void 0:e,a=l?l.length:fa,d=react.useMemo(()=>({tokens:l,skeletonCount:fa,resolution:t,renderAction:n,onSelectToken:s}),[l,t,n,s]);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:sg,overscanCount:5,rowComponent:ng,rowProps:d})})}var cg=80;function mg(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 ha(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,cg)}function ba({chain:e,resolution:t,options:o,refetchInterval:r=12e3}){let n=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),s=react.useRef(n),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(n)!==JSON.stringify(s.current)&&(l(true),s.current=n);},[n]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useNewTokensQuery(n,{refetchInterval:r});react.useEffect(()=>{m&&(d(f=>ha(Ke(f,m))),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=[...g],x=false;for(let b of f){let h=k.findIndex(v=>v.address===b.address);h>=0?(x=true,k[h]=$(k[h],b)):(x=true,k.push(mg(b)));}return x?ha(k):g});},[]);react$1.useNewTokensSubscription({chain:e},p);let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}function h2({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:n,height:s,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let f=Object.keys(d??{})[0],g=d?.[f];return {...o,...f&&g?{sortBy:f,sortDirection:g}:void 0}},[o,d]),{tokens:p,isLoading:u}=ba({chain:e,resolution:t,options:c});return jsxRuntime.jsx(st,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}function Na({chain:e,resolution:t,options:o,refetchInterval:r=12e3}){let n=react.useMemo(()=>({chain:e,resolution:t,...o}),[e,t,o]),s=react.useRef(n),[i,l]=react.useState(true);react.useEffect(()=>{JSON.stringify(n)!==JSON.stringify(s.current)&&(l(true),s.current=n);},[n]);let[a,d]=react.useState([]),{data:m,isPending:c}=react$1.useStockTokensQuery(n,{refetchInterval:r});react.useEffect(()=>{m&&(d(f=>Ke(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Ft(g,f));},[]);react$1.useStockTokensSubscription({chain:e},p),Vt({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}function H2({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:n,height:s,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let f=Object.keys(d??{})[0],g=d?.[f];return {...o,...f&&g?{sortBy:f,sortDirection:g}:void 0}},[o,d]),{tokens:p,isLoading:u}=Na({chain:e,resolution:t,options:c});return jsxRuntime.jsx(st,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}function B2({chain:e,resolution:t,filters:o,ActionsComponent:r,onSelectToken:n,height:s,itemHeight:i,itemHeightMobile:l,className:a}){let[d,m]=react.useState();react.useEffect(()=>{m(void 0);},[e]);let c=react.useMemo(()=>{let f=Object.keys(d??{})[0],g=d?.[f];return {...o,...f&&g?{sortBy:f,sortDirection:g}:void 0}},[o,d]),{tokens:p,isLoading:u}=_t({chain:e,resolution:t,options:c});return jsxRuntime.jsx(st,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}var Ig=15e3;function Fg({chain:e,addresses:t,pollMs:o=Ig}){let r=t.length>0,[n,s]=react.useState({}),i=react$1.useTokensQuery({chain:e,addresses:t},{enabled:r,refetchInterval:o});react.useEffect(()=>{i.data&&s(c=>{let p={};for(let u of i.data){let f=c[u.address];p[u.address]=f?$(f,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=>{s(f=>{let g=f;for(let k of u){let x=g[k.address];if(!x)continue;let b=$(x,k);b!==x&&(g=g===f?{...f}:g,g[k.address]=b);}return g});}));return ()=>{for(let p of c)p.unsubscribe();}},[l,e,d,r]);let m=react.useCallback(async()=>{await i.refetch();},[i.refetch]);return {tokens:n,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=Rn;exports.HolderTagBadge=Ia;exports.HolderTagBadgeList=Pt;exports.HoldingRatioChip=W;exports.NewTokenListWidget=h2;exports.PulseFinalStretchListWidget=kk;exports.PulseList=$e;exports.PulseListHeader=ur;exports.PulseListItem=Rr;exports.PulseListItemSkeleton=fr;exports.PulseMigratedListWidget=ik;exports.PulseNewListWidget=Xx;exports.SEARCH_MODAL_ID=So;exports.SearchHistoryUI=Yr;exports.SearchHistoryWidget=Zr;exports.SearchInputUI=jr;exports.SearchModal=nb;exports.SearchResultItemUI=Ot;exports.SearchResultListHeader=Dt;exports.SearchResultListSkeleton=Bt;exports.SearchResultListWidget=as;exports.SearchTokensButton=fb;exports.SearchWidget=ks;exports.StockTokenListWidget=H2;exports.TRADER_TAG_META=ho;exports.TokenAbout=hn;exports.TokenAboutWidget=K0;exports.TokenActivitiesList=on;exports.TokenActivitiesListWidget=Cv;exports.TokenAvatar=de;exports.TokenBasicInfo=ws;exports.TokenBasicInfoWidget=Xs;exports.TokenCategories=Ln;exports.TokenCategoriesWidget=ON;exports.TokenCexListing=Sn;exports.TokenCexListingWidget=TN;exports.TokenChartBanner=ei;exports.TokenChartBannerWidget=AC;exports.TokenDetailHeader=Ns;exports.TokenDetailHeaderWidget=BT;exports.TokenDevTokensList=qn;exports.TokenDevTokensListWidget=gC;exports.TokenDevTokensSummary=Qn;exports.TokenHoldersCount=Ps;exports.TokenHoldersCountWidget=As;exports.TokenHoldersList=Zs;exports.TokenHoldersListWidget=iv;exports.TokenLiquidities=vn;exports.TokenLiquiditiesWidget=aN;exports.TokenList=st;exports.TokenListFilter=lo;exports.TokenListFilterModal=Ui;exports.TokenListFilterPopover=Bi;exports.TokenListFilterWidget=YL;exports.TokenListResolutionSelectorDesktop=_i;exports.TokenListResolutionSelectorMobile=Ki;exports.TokenListResolutionSelectorWidget=fP;exports.TokenMarketCap=Is;exports.TokenMarketCapWidget=Us;exports.TokenOrdersList=Dn;exports.TokenOrdersListWidget=FS;exports.TokenPositionsList=In;exports.TokenPositionsListWidget=xS;exports.TokenPrice=Ws;exports.TokenPriceWidget=Es;exports.TokenReusedImageList=ni;exports.TokenReusedImageListWidget=nw;exports.TokenSecurity=fn;exports.TokenSecurityWidget=A0;exports.TokenSimilarTokens=ri;exports.TokenSimilarTokensWidget=qC;exports.TokenSocialMedia=Vs;exports.TokenSocialMediaWidget=$s;exports.TokenStatsFlipBase=An;exports.TokenStatsFlipHover=Hn;exports.TokenStatsFlipWidget=ZN;exports.TokenTopTradersList=_n;exports.TokenTopTradersListWidget=jS;exports.TokenTradersOverview=ln;exports.TokenTradersOverviewWidget=Ev;exports.TokenTransactionsOverview=cn;exports.TokenTransactionsOverviewWidget=t0;exports.TokenVolume=qs;exports.TokenVolumeWidget=Gs;exports.TokenVolumesOverview=pn;exports.TokenVolumesOverviewWidget=x0;exports.TraderTagBadge=Ma;exports.TraderTagBadgeList=hr;exports.TrendingTokenCard=pa;exports.TrendingTokenCardList=i2;exports.TrendingTokenCardSkeleton=ua;exports.TrendingTokenListWidget=B2;exports.useNewTokensScript=ba;exports.usePulseFinalStretchListScript=Qr;exports.usePulseMigratedListScript=_r;exports.usePulseNewListScript=Dr;exports.useSearchHistory=Ut;exports.useSearchResultListScript=ns;exports.useSearchScript=gs;exports.useStockTokensScript=Na;exports.useTokenAboutScript=bn;exports.useTokenActivitiesListScript=nn;exports.useTokenBasicInfoScript=sy;exports.useTokenCategoriesScript=Pn;exports.useTokenCexListingScript=Cn;exports.useTokenChartBannerScript=oi;exports.useTokenDetailHeaderScript=Ss;exports.useTokenDevTokensListScript=Yn;exports.useTokenHoldersCountScript=Rs;exports.useTokenHoldersListScript=tn;exports.useTokenLiquiditiesScript=Nn;exports.useTokenMarketCapScript=Fs;exports.useTokenOrdersListScript=Vn;exports.useTokenPositionsListScript=On;exports.useTokenPriceScript=Bs;exports.useTokenReusedImageListScript=ii;exports.useTokenSecurityScript=gn;exports.useTokenSimilarTokensScript=si;exports.useTokenSocialMediaScript=_s;exports.useTokenStatsFlipScript=Mn;exports.useTokenTopTradersListScript=Kn;exports.useTokenTradersOverviewScript=dn;exports.useTokenTransactionsOverviewScript=mn;exports.useTokenVolumeScript=Qs;exports.useTokenVolumesOverviewScript=un;exports.useTokens=Fg;exports.useTrendingTokensScript=_t;//# sourceMappingURL=index.js.map
|
|
24
24
|
//# sourceMappingURL=index.js.map
|