@liberfi.io/ui-tokens 3.0.14 → 3.0.16
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.d.mts +1 -3
- package/dist/index.d.ts +1 -3
- 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=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 At({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 Le(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(h=>{if(h.stopPropagation(),!e.image)return;let b=utils.searchImageUrl(e.image);window.open(b,"_blank");},[e.image]);return jsxRuntime.jsxs("div",{className:ui.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?Le(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?Le(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?Le(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&&Le(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:`
|
|
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 fr({title:e,isPaused:t,extra:o,className:r}){let{t:n}=i18n.useTranslation();return jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-12 px-3 flex-none bg-[#0a0a0b] flex items-center justify-between gap-4 border-b border-[rgba(39,39,42,0.6)]",r),children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("h2",{className:"font-semibold",children:e}),t&&jsxRuntime.jsxs("div",{className:"flex items-center gap-1 text-primary",children:[jsxRuntime.jsx(ui$1.PauseIcon,{className:"w-4 h-4"}),jsxRuntime.jsx("span",{className:"text-xs hidden sm:inline",children:n("tokens.pulse.paused")})]})]}),o&&jsxRuntime.jsx("div",{className:"flex items-center gap-3",children:o})]})}function gr({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 W({icon:e,value:t,tooltip:o,warning:r,disable:n=false,className:s,tooltipPlacement:i="top"}){return jsxRuntime.jsx(ui$1.StyledTooltip,{content:o,placement:i,children:jsxRuntime.jsxs("div",{className:ui$1.cn("shrink-0 px-2 py-0.5 flex items-center gap-1 rounded-full text-xs border border-border/60",r?"text-danger-500":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 Ba({tag:e,className:t}){let o=ho[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 br({tags:e,className:t,max:o}){if(!e||e.length===0)return null;let r=o!=null&&o>0?e.slice(0,o):e,n=e.length-r.length;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-wrap items-center gap-1",t),children:[r.map(s=>jsxRuntime.jsx(Ba,{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 Ea({tag:e,className:t}){let o=ho[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 At({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$1.cn("flex flex-wrap items-center gap-1",t),children:[r.map(s=>jsxRuntime.jsx(Ea,{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 Va={[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"}},_a={text:"text-neutral",bg:"bg-neutral",bg5:"bg-neutral/5",bg20:"bg-neutral/20",border:"border-neutral"};function Le(e){return Va[e]??_a}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$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-${s}`,a?Le(a).bg:"bg-[rgba(39,39,42,0.6)]",l?.background)}),m&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute -inset-0.5",`rounded-${s}`),children:jsxRuntime.jsx(Ga,{className:ui$1.cn(a?Le(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-${s}`,a?Le(a).bg20:"bg-[rgba(39,39,42,0.12)]",l?.avatarWrapper),children:jsxRuntime.jsx(qa,{token:e,radius:s,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-${s}`,u&&c&&"cursor-pointer"),onMouseEnter:g,onMouseLeave:k,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-${s}`,l?.avatar)}),u&&c&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${s}`,l?.searchWrapper),onClick:x,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&&Le(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 qa({token:e,radius:t,enableSearch:o,enablePreview:r,classNames:n,children:s}){return react.useMemo(()=>r&&e.image,[r,e.image])?jsxRuntime.jsx(ui$1.StyledTooltip,{content:jsxRuntime.jsx(Qa,{token:e,radius:t,enableSearch:o,classNames:n}),closeDelay:100,placement:"bottom-start",classNames:{content:"p-1"},children:s}):s}function Qa({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$1.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$1.Avatar,{showFallback:true,src:e.image,name:s,className:ui$1.cn("w-full h-full bg-content1 text-neutral text-3xl",`rounded-${o}`,r?.previewAvatar)}),i&&n&&jsxRuntime.jsx("div",{className:ui$1.cn("absolute inset-0 bg-content1/80 flex items-center justify-center",`rounded-${o}`,r?.previewSearchWrapper),onClick:m,children:jsxRuntime.jsx(ui$1.CameraIcon,{className:ui$1.cn("w-10 h-10",r?.previewSearchIcon)})})]})}function Ga({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 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]),h=react.useMemo(()=>{let U=new utils.SafeBigNumber(k);return U.lt(1e3)?"text-foreground":U.lt(1e6)?"text-secondary":"text-primary"},[k]),b=react.useMemo(()=>new utils.SafeBigNumber(a?.top10HoldingsRatio).gte(.1),[a?.top10HoldingsRatio]),N=react.useMemo(()=>new utils.SafeBigNumber(a?.devHoldingsRatio).gte(.1),[a?.devHoldingsRatio]),$=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]),[Be,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]),Ee=a?.holders!==void 0&&a.holders>0,Ve=a?.proHolders!==void 0&&a.proHolders>0,F=a?.kolHolders!==void 0&&a.kolHolders>0,le=Ee||Ve||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(h),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:[Ee&&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)]})}),Ve&&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",h),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:b,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:N,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:$,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 ze({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 To(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]?To(e[r],t[r]):t[r]);return o}function kl(e,t){return t?e?To(e,t):t:e}function Ut(e,t){return t?e?To(e,t):t:e}function z(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=Ut(e.socialMedias,i),c.security=Ut(e.security,l),c.launchedFrom=Ut(e.launchedFrom,a),c.migratedTo=Ut(e.migratedTo,d),c}function qe(e,t){let o=new Map(e.map(r=>[r.address,r]));return t.map(r=>{let n=o.get(r.address);return n?z(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 Te(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]=z(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 h of m){let b=x.findIndex(N=>N.address===h.address);b>=0?x[b]=z(x[b],h):(!g||k)&&x.push(h);}return g?x:Or(x)}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=n.current,x=[...g],h=false;for(let b of f){let N=x.findIndex($=>$.address===b.address);N>=0?(h=true,x[N]=z(x[N],b)):k||(h=true,x.push(Nl(b)));}return h?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 Qx({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(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function ye({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 $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 h=k.findIndex(b=>b.address===x.address);h>=0?k[h]=z(k[h],x):g||k.unshift(x);}return k}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Te(g,f));},[]);ye({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function lk({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(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function Ul(e){return e.sort((t,o)=>{let r=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-r})}function Gr({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 h of m){let b=x.findIndex(N=>N.address===h.address);b>=0?x[b]=z(x[b],h):(!g||k)&&x.push(h);}return g?x:Ul(x)}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Te(g,f));},[]);ye({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function Tk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Gr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}var Vl=10,_l=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function Ot(){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,Vl)});},[t]),r=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:r}}function Zr({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 jr({onSelect:e,className:t}){let{histories:o,clearHistories:r}=Ot();return jsxRuntime.jsx(Zr,{className:ui.cn(t),histories:o,onSelect:e,onClear:r})}function es({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 Dt({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 Wt({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 md(){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 Et({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(md,{},r))})}function is({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 yd=56;function ls({onSelectToken:e,className:t,...o}){let{tokens:r,isLoading:n,isFetchingNextPage:s,hasNextPage:i,fetchNextPage:l}=is(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(Wt,{}),jsxRuntime.jsx(Et,{})]}):r.length===0?jsxRuntime.jsxs("div",{className:ui.cn("w-full",t),children:[jsxRuntime.jsx(Wt,{}),jsxRuntime.jsx(Nd,{})]}):jsxRuntime.jsxs("div",{className:ui.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Wt,{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:vd,rowCount:p,rowHeight:yd,rowProps:{tokens:r,onSelectToken:e},overscanCount:5})})]})}function vd({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(Dt,{token:n})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui.Spinner,{size:"sm"})})}function Nd(){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 _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=>qe(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Te(g,f));},[]);react$1.useTrendingTokensSubscription({chain:e},p),ye({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}var Ad=types.Chain.ETHEREUM,Hd="24h",Md=56;function ps({chains:e,onSelectToken:t,className:o}){let r=e?.length===1?e[0]:e?.[0]??Ad,{tokens:n,isLoading:s}=_t({chain:r,resolution:Hd});return jsxRuntime.jsx("div",{className:ui.cn("w-full flex flex-col overflow-hidden",o),children:s?jsxRuntime.jsx(Et,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:n.map(i=>jsxRuntime.jsx("div",{style:{height:Md},onClick:()=>t?.(i),children:jsxRuntime.jsx(Dt,{token:i,className:"h-full"})},i.address))})})}function gs({onKeywordChange:e}){let[t,o]=react.useState(""),[r,n]=react.useState(""),{addHistory:s}=Ot(),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(es,{value:n,onValueChange:i,onClear:a,onPaste:l,onEscape:r}),s?jsxRuntime.jsx(ls,{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(jr,{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(zd,{...t})})}function zd({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 Ae(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=z(a,d);return a});}),{token:n,isLoading:r}}function Xe({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 sT(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:Ae(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ae(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 Nc(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:Nc(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 By({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 Ac=[{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:Ac.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(Hc,{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 Hc({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(At,{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:Ae(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(N=>{N!==n&&(s(N),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(N=>i==null?[u]:N[N.length-1]?.endCursor===u.endCursor?N:[...N,u]);},[u,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let k=react.useMemo(()=>a.flatMap(N=>N.data),[a]),x=a[a.length-1],h=!!(x?.hasNext&&x.endCursor),b=react.useCallback(()=>{!x?.endCursor||!x.hasNext||l(x.endCursor);},[x]);return {holders:k,isLoading:f||g,sortBy:n,setSortBy:c,hasMore:h,loadMore:b}}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 Wc=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Bc=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],Ec=[{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 h=_c(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:[Bc.map(b=>jsxRuntime.jsx("button",{type:"button",onClick:()=>s?.(b.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",n===b.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:b.label},b.value)),jsxRuntime.jsx("span",{className:"mx-1 h-3 w-px bg-default-200","aria-hidden":true}),Ec.map(b=>{let N=i===b.value,$=b.value==="you"&&!a;return jsxRuntime.jsx("button",{type:"button",disabled:$,onClick:()=>l?.(b.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",N?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground",$&&"cursor-not-allowed opacity-50"),children:b.label},b.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx($c,{value:d,nativeSymbol:g,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Wc.map(b=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(b.value),className:ui.cn("rounded px-2 py-1 text-[11px] transition-colors",o===b.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:b.label},b.value))})]})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[780px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-left font-normal",children:"Side"}),jsxRuntime.jsx("th",{className:"w-[25%] px-3 py-2 text-left font-normal",children:"Trader"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Amount"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"USD"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Price"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Gas"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"Age"})]})}),jsxRuntime.jsxs("tbody",{children:[h.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-8 text-center text-default-400",children:"No activities"})}),h.map(b=>jsxRuntime.jsx(zc,{activity:b,now:u,nativeDecimals:f,nativeSymbol:g,currency:d,onRowClick:x},b.txHash)),t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:7,className:"py-4 text-center text-default-400",children:"Loading\u2026"})})]})]})}),p&&jsxRuntime.jsx("div",{className:"flex justify-center px-3 py-2",children:jsxRuntime.jsx("button",{type:"button",onClick:c,disabled:t,className:"rounded bg-default-100 px-3 py-1 text-[11px] text-default-600 transition-colors hover:bg-default-200 disabled:opacity-50",children:"Load more"})})]})}function Vc(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function _c(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 $c({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 Kc(e,t,o){if(!e)return "--";let r=Number(e)/Math.pow(10,t);return Number.isFinite(r)?`${utils.formatAmount(r)} ${o}`:"--"}function zc({activity:e,now:t,nativeDecimals:o,nativeSymbol:r,currency:n,onRowClick:s}){let i=Vc(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:Kc(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 h=l==="all"?void 0:l,b=react.useMemo(()=>({chain:e,address:t,cursor:d,limit:o,sortBy:s,type:h}),[e,t,d,o,s,h]),{data:N,isPending:$,isFetching:J}=react$1.useTokenActivitiesQuery(b);react.useEffect(()=>{N&&p(F=>d==null?[N]:F[F.length-1]?.endCursor===N.endCursor?F:[...F,N]);},[N,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 Be=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],Ee=!!(E?.hasNext&&E.endCursor),Ve=react.useCallback(()=>{!E?.endCursor||!E.hasNext||m(E.endCursor);},[E]);return {activities:Be,isLoading:$||J,sortBy:s,setSortBy:k,typeFilter:l,setTypeFilter:x,hasMore:Ee,loadMore:Ve}}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:h,setSortBy:b,typeFilter:N,setTypeFilter:$,hasMore:J,loadMore:ne}=nn({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:n});return jsxRuntime.jsx(on,{activities:k,isLoading:x,sortBy:h,onSortByChange:b,typeFilter:N,onTypeFilterChange:$,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(Xe,{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(Xe,{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(Xe,{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(tm,{...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 tm({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 yN({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(Lm,{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(Pm,{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 Lm({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 Pm({position:e,currency:t,renderActions:o}){let{bought:r,sold:n,remaining:s,pnl:i}=react.useMemo(()=>Rm(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 Rm(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(h=>n==null?[c]:h[h.length-1]?.endCursor===c.endCursor?h:[...h,c]);},[c,n]);let f=react.useMemo(()=>i.flatMap(h=>h.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(Dm,{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(Wm,{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 Dm({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 Wm({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 Em(e){return e instanceof Error&&e.code==="NotImplemented"}function Vm(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:Vm(i),tokenAddress:a?o:void 0}),[e,t,m,r,i,a,o]),{data:k,isPending:x,isFetching:h,error:b}=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 N=!!b&&Em(b),$=react.useMemo(()=>p.flatMap(E=>E.data),[p]),J=p[p.length-1],ne=!!(J?.hasNext&&J.endCursor),Be=react.useCallback(()=>{!J?.endCursor||!J.hasNext||c(J.endCursor);},[J]);return {orders:$,isLoading:!!t&&!N&&(x||h),unavailable:N,hasMore:ne,loadMore:Be,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:h,setStateFilter:b,onlyThisToken:N,setOnlyThisToken:$}=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:h,onStateFilterChange:b,onlyThisToken:N,onOnlyThisTokenChange:$,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(Qm,{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 Qm({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(At,{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:Ae(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(b=>n==null?[c]:b[b.length-1]?.endCursor===c.endCursor?b:[...b,c]);},[c,n]);let f=react.useMemo(()=>i.flatMap(b=>b.data),[i]),g=react.useMemo(()=>a?f.filter(b=>b.tags&&b.tags.length>0):f,[f,a]),k=i[i.length-1],x=!!(k?.hasNext&&k.endCursor),h=react.useCallback(()=>{!k?.endCursor||!k.hasNext||s(k.endCursor);},[k]);return {traders:g,isLoading:p||u,hasMore:x,loadMore:h,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(Zm,{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 Zm({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 tp(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&&tp(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(rt,{label:"Price",value:a?utils.formatPriceUSD(a):"--"}),jsxRuntime.jsx(rt,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(rt,{label:"Supply",value:m?utils.formatAmount(m):"--"}),r?jsxRuntime.jsx(rt,{label:"Fees Paid",value:utils.formatAmountUSDCompact(r)}):null,t?jsxRuntime.jsx(rt,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,n!==void 0?jsxRuntime.jsx(rt,{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 rt({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=Le(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?.(yi(t,c,l));},[t,r,l]),m=react.useCallback(c=>{a(c),r?.(yi(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 yi(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 iu={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},au={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"},lu={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:iu,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(du,{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:{...au,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:lu}),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 du({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 vu={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},Nu={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:vu,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:Nu,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 xf=`
|
|
21
|
+
`})]})}function Ar({token:e,renderAction:t,isLast:o=false,onSelectToken:r,className:n}){let{t:s}=i18n.useTranslation(),i=ui$1.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$1.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]),N=react.useMemo(()=>new utils.SafeBigNumber(a?.devHoldingsRatio).gte(.1),[a?.devHoldingsRatio]),_=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]),[Be,E]=react.useMemo(()=>{let U=Number(d?.buys??0),te=Number(d?.sells??0),$=U+te;if($===0)return [12,12];let ur=Math.round(U/$*24);return [ur,24-ur]},[d?.buys,d?.sells]),Ee=a?.holders!==void 0&&a.holders>0,Ve=a?.proHolders!==void 0&&a.proHolders>0,F=a?.kolHolders!==void 0&&a.kolHolders>0,le=Ee||Ve||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",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$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(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:[Ee&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:s("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)]})}),Ve&&jsxRuntime.jsx(ui$1.StyledTooltip,{content:s("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:s("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(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$1.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$1.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$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(a?.devHoldingsRatio),tooltip:s("tokens.tokenInfo.devHoldingsRatio"),warning:N,disable:!a?.devHoldingsRatio||a?.devHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui$1.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$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(a?.insiderHoldingsRatio),tooltip:s("tokens.tokenInfo.insiderHoldingsRatio"),warning:_,disable:!a?.insiderHoldingsRatio||a?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui$1.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 bl=152,Mr=10;function yl({index:e,style:t,data:o,skeletonCount:r,renderItemAction:n,onSelectToken:s}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(Ar,{token:o[e],isLast:e===o.length-1,renderAction:n,onSelectToken:s})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(gr,{isLast:e===r-1})})}function ze({title:e,tokens:t,isLoading:o,itemHeight:r=bl,renderHeaderExtra:n,renderItemAction:s,onSelectToken:i,onPauseChange:l,className:a,hideHeader:d}){let m=o||!t?void 0:t,c=m?m.length:Mr,p=react.useMemo(()=>({data:m,skeletonCount:Mr,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$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:g,onMouseLeave:k,children:[!d&&jsxRuntime.jsx(fr,{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:yl,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 vl=["1m","5m","15m","30m","1h","4h","24h"];function Nl(e,t){if(!t)return e;if(!e)return t;let o={...e};for(let r of vl)t[r]&&(o[r]=e[r]?yo(e[r],t[r]):t[r]);return o}function Sl(e,t){return t?e?yo(e,t):t:e}function Ut(e,t){return t?e?yo(e,t):t:e}function z(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=Nl(e.stats,n),c.marketData=Sl(e.marketData,s),c.socialMedias=Ut(e.socialMedias,i),c.security=Ut(e.security,l),c.launchedFrom=Ut(e.launchedFrom,a),c.migratedTo=Ut(e.migratedTo,d),c}function qe(e,t){let o=new Map(e.map(r=>[r.address,r]));return t.map(r=>{let n=o.get(r.address);return n?z(n,r):r})}function Cl(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 ye(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]=z(o[s],n),r=true;continue}Cl(n)&&(o.push(n),r=true);}return r?o:e}function Or({chain:e,tokens:t,onUpdate:o,enabled:r=true}){let{subscribeClient:n}=react$1.useDexClient(),s=react.useRef(new Map),i=react.useRef(o);i.current=o;let l=react.useMemo(()=>Array.from(new Set(t.map(m=>m.address.trim()).filter(Boolean))).sort().join(","),[t]),a=react.useMemo(()=>l?l.split(","):[],[l]),d=()=>{s.current.forEach(m=>m.unsubscribe()),s.current.clear();};react.useEffect(()=>d,[e,n,r]),react.useEffect(()=>{if(!r){d();return}let m=new Set(a),c=s.current;for(let[p,u]of c)m.has(p)||(u.unsubscribe(),c.delete(p));for(let p of a)c.has(p)||c.set(p,n.subscribeToken(e,p,u=>{i.current(u);}));},[a,e,r,n]);}var Rl=80;function $r(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 Al(e,t,o){return e===t?o:e===o?t:o||t}function To(e){let t=e.token?.address??e.tokenAAddress??"",o=e.token;return {...o,chain:e.chain,address:t,name:o?.name??"",symbol:o?.symbol??"",decimals:o?.decimals??0,createdAt:o?.createdAt??e.createdAt,liquidities:[{poolAddress:e.poolAddress,pairAddress:Al(t,e.tokenAAddress,e.tokenBAddress),image:e.dex?.image,programAddress:e.dex?.programAddress,protocolFamily:e.dex?.protocolFamily,protocolName:e.dex?.protocolName}]}}function Hl(e){return {...$r(To(e)),...e.token??{},liquidities:To(e).liquidities,createdAt:e.token?.createdAt??e.createdAt}}function _r(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,Rl)}function Kr({chain:e,isPaused:t=false}){let o=react.useMemo(()=>({chain:e}),[e]),r=react.useRef(t);r.current=t;let n=react.useRef(e),[s,i]=react.useState(true),[l,a]=react.useState([]);react.useEffect(()=>{e!==n.current&&(i(true),a([]),n.current=e);},[e]);let{data:d,isPending:m}=react$1.useNewPoolsQuery(o);react.useEffect(()=>{d&&(a(f=>{let g=r.current,k=f.length===0&&d.length>0,x=[...f];for(let b of d){let h=Hl(b),N=x.findIndex(_=>_.address===h.address);N>=0?x[N]=z(x[N],h):(!g||k)&&x.push(h);}return g?x:_r(x)}),i(false));},[d]);let c=react.useCallback(f=>{a(g=>{let k=r.current,x=[...g],b=false;for(let h of f){let N=x.findIndex(_=>_.address===h.address);N>=0?(b=true,x[N]=z(x[N],h)):k||(b=true,x.push($r(h)));}return b?k?x:_r(x):g});},[]),p=react.useCallback(f=>{c(f.map(To));},[c]);react$1.useNewPoolsSubscription({chain:e},p),Or({chain:e,tokens:l,onUpdate:c});let u=react.useMemo(()=>m||s,[m,s]);return {tokens:l,isLoading:u}}function nk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,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(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function Te({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 Jr({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]=z(k[b],x):g||k.unshift(x);}return k}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>ye(g,f));},[]);Te({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function yk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=Jr({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}function $l(e){return e.sort((t,o)=>{let r=Number(t.migrateProgress??0);return Number(o.migrateProgress??0)-r})}function ts({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(N=>N.address===b.address);h>=0?x[h]=z(x[h],b):(!g||k)&&x.push(b);}return g?x:$l(x)}),l(false));},[m]);let p=react.useCallback(f=>{d(g=>ye(g,f));},[]);Te({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>c||i,[c,i]);return {tokens:a,isLoading:u}}function Mk({chain:e,title:t,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,className:s,hideHeader:i}){let[l,a]=react.useState(false),{tokens:d,isLoading:m}=ts({chain:e,isPaused:l}),c=react.useCallback(p=>{a(p);},[]);return jsxRuntime.jsx(ze,{title:t,tokens:d,isLoading:m,renderHeaderExtra:o,renderItemAction:r,onSelectToken:n,onPauseChange:c,className:s,hideHeader:i})}var Xl=10,Jl=utils$1.atomWithStorage("liberfi:search_histories",[],void 0,{getOnInit:true});function Ot(){let[e,t]=jotai.useAtom(Jl),o=react.useCallback(n=>{let s=n.trim();s&&t(i=>{let l=i.filter(a=>a!==s);return [s,...l].slice(0,Xl)});},[t]),r=react.useCallback(()=>{t([]);},[t]);return {histories:e,addHistory:o,clearHistories:r}}function ns({histories:e,onSelect:t,onClear:o,className:r}){let{t:n}=i18n.useTranslation();return e.length===0?null:jsxRuntime.jsxs("div",{className:ui$1.cn("px-4 pb-4",r),children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium",children:n("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(s=>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?.(s),children:s},s))})]})}function is({onSelect:e,className:t}){let{histories:o,clearHistories:r}=Ot();return jsxRuntime.jsx(ns,{className:ui$1.cn(t),histories:o,onSelect:e,onClear:r})}function as({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$1.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$1.SearchIcon,{width:20,height:20,className:"text-neutral"}),endContent:e?jsxRuntime.jsx(ui$1.Button,{isIconOnly:true,className:"bg-transparent min-w-6 w-6 h-6 text-neutral",onPress:o,children:jsxRuntime.jsx(ui$1.XCloseIcon,{width:20,height:20})}):jsxRuntime.jsx(ui$1.Kbd,{className:"min-w-8 justify-center text-xs text-neutral bg-transparent border border-[rgba(63,63,70,0.5)] rounded-full cursor-pointer select-none",onMouseDown:i=>{i.preventDefault(),r?.();},children:"Esc"})})})}function Dt({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$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(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$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 Wt({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 bd(){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 Et({rows:e=6,className:t}){return jsxRuntime.jsx("div",{className:ui$1.cn("w-full",t),children:Array.from({length:e}).map((o,r)=>jsxRuntime.jsx(bd,{},r))})}function us({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 Rd=56;function gs({onSelectToken:e,className:t,...o}){let{tokens:r,isLoading:n,isFetchingNextPage:s,hasNextPage:i,fetchNextPage:l}=us(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$1.cn("w-full",t),children:[jsxRuntime.jsx(Wt,{}),jsxRuntime.jsx(Et,{})]}):r.length===0?jsxRuntime.jsxs("div",{className:ui$1.cn("w-full",t),children:[jsxRuntime.jsx(Wt,{}),jsxRuntime.jsx(Hd,{})]}):jsxRuntime.jsxs("div",{className:ui$1.cn("w-full h-full flex flex-col",t),children:[jsxRuntime.jsx(Wt,{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:Ad,rowCount:p,rowHeight:Rd,rowProps:{tokens:r,onSelectToken:e},overscanCount:5})})]})}function Ad({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(Dt,{token:n})}):jsxRuntime.jsx("div",{style:t,className:"flex items-center justify-center",children:jsxRuntime.jsx(ui$1.Spinner,{size:"sm"})})}function Hd(){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 _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=>qe(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>ye(g,f));},[]);react$1.useTrendingTokensSubscription({chain:e},p),Te({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}var Wd=types.Chain.ETHEREUM,Bd="24h",Ed=56;function bs({chains:e,onSelectToken:t,className:o}){let r=e?.length===1?e[0]:e?.[0]??Wd,{tokens:n,isLoading:s}=_t({chain:r,resolution:Bd});return jsxRuntime.jsx("div",{className:ui$1.cn("w-full flex flex-col overflow-hidden",o),children:s?jsxRuntime.jsx(Et,{}):jsxRuntime.jsx("div",{className:"overflow-y-auto",children:n.map(i=>jsxRuntime.jsx("div",{style:{height:Ed},onClick:()=>t?.(i),children:jsxRuntime.jsx(Dt,{token:i,className:"h-full"})},i.address))})})}function vs({onKeywordChange:e}){let[t,o]=react.useState(""),[r,n]=react.useState(""),{addHistory:s}=Ot(),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 Ss({chains:e,onKeywordChange:t,onSelectToken:o,onEscape:r}){let{text:n,keyword:s,setText:i,setKeyword:l,clearKeyword:a}=vs({onKeywordChange:t});return jsxRuntime.jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsxRuntime.jsx(as,{value:n,onValueChange:i,onClear:a,onPaste:l,onEscape:r}),s?jsxRuntime.jsx(gs,{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(is,{onSelect:l}),jsxRuntime.jsx(bs,{className:"flex-auto min-h-0",chains:e,onSelectToken:o})]})]})}var Co="search";function kb({id:e=Co}){return jsxRuntime.jsx(uiScaffold.AsyncModal,{id:e,children:t=>jsxRuntime.jsx(jd,{...t})})}function jd({params:e,isOpen:t,onOpenChange:o,onResult:r}){let{t:n}=i18n.useTranslation(),{isMobile:s}=ui$1.useScreen(),i=react.useCallback(l=>{r(l);},[r]);return jsxRuntime.jsx(ui$1.StyledModal,{isOpen:t,onOpenChange:o,size:s?"full":"lg",hideCloseButton:true,backdrop:"blur",radius:"lg",children:jsxRuntime.jsxs(ui$1.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$1.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$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(Ss,{chains:e?.chains,onSelectToken:i,onEscape:()=>o(false)})})]})})}function wb({chains:e,onSelectToken:t,className:o}){let{t:r}=i18n.useTranslation(),{isDesktop:n}=ui$1.useScreen(),{onOpen:s,onClose:i}=uiScaffold.useAsyncModal(Co),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$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:r("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 Ae(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=z(a,d);return a});}),{token:n,isLoading:r}}function Xe({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$1.cn("flex flex-col gap-1",i),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-xs text-default-500",children:e}),jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:t})]}),jsxRuntime.jsx(ui$1.Progress,{size:"sm",value:d,classNames:{track:"bg-bearish/40",indicator:"bg-bullish"},"aria-label":`${e} buy share`}),jsxRuntime.jsxs("div",{className:"flex justify-between gap-4 text-[10px]",children:[jsxRuntime.jsxs("span",{className:"text-bullish",children:["Buys: ",o]}),jsxRuntime.jsxs("span",{className:"text-bearish",children:["Sells: ",r]})]})]})}function As({token:e,actions:t,dataStrip:o,className:r,onCopyAddress:n}){let s=e?.address;return jsxRuntime.jsxs("div",{className:ui$1.cn("flex w-full flex-wrap items-center gap-4 px-4 py-3",r),children:[jsxRuntime.jsxs("div",{className:"flex min-w-0 items-center gap-3",children:[e&&jsxRuntime.jsx(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$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 Hs(e,t){return R(e,t)}function Is({price:e,marketCap:t,volume:o,holdersCount:r,socialMedia:n,className:s}){return jsxRuntime.jsxs("div",{className:ui$1.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 xy(e,t){return R(e,t)}function Us({holders:e,top10HoldingsRatio:t,top100HoldingsRatio:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e!=null?utils.formatAmount(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ae(t)}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:Ae(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"Holders / Top10 / Top100"})]})}function Os(e,t){return R(e,t)}function Ds({chain:e,address:t,className:o}){let{token:r}=Os(e,t);return jsxRuntime.jsx(Us,{holders:r?.marketData?.holders,top10HoldingsRatio:r?.marketData?.top10HoldingsRatio,top100HoldingsRatio:r?.marketData?.top100HoldingsRatio,className:o})}function Es({marketCapInUsd:e,tvlInUsd:t,createdAt:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t?utils.formatAmountUSDCompact(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:be(o)})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"MC / Liq / Age"})]})}function Vs(e,t){return R(e,t)}function _s({chain:e,address:t,className:o}){let{token:r}=Vs(e,t);return jsxRuntime.jsx(Es,{marketCapInUsd:r?.marketData?.marketCapInUsd,tvlInUsd:r?.marketData?.tvlInUsd,createdAt:r?.createdAt,className:o})}function zs({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$1.cn("group flex flex-col gap-1",o),"data-bearish":r,children:[jsxRuntime.jsx("div",{className:"text-base font-medium leading-none text-bullish group-data-[bearish=true]:text-bearish",children:e?utils.formatPriceUSD(e):"--"}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2 text-[10px] leading-none",children:[jsxRuntime.jsx("span",{className:"text-default-400",children:"24h"}),jsxRuntime.jsx("span",{className:"text-bullish group-data-[bearish=true]:text-bearish",children:n!=null?utils.formatPercent(n):"--"})]})]})}function qs(e,t){return R(e,t)}function Qs({chain:e,address:t,className:o}){let{token:r}=qs(e,t);return jsxRuntime.jsx(zs,{priceInUsd:r?.marketData?.priceInUsd,price24hAgoInUsd:r?.stats?.["24h"]?.openPriceInUsd,className:o})}function Hc(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 Gs({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$1.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:Hc(s,o)},s))})}function Xs(e,t){return R(e,t)}function Js({chain:e,address:t,className:o,iconSize:r}){let{token:n}=Xs(e,t);return jsxRuntime.jsx(Gs,{socials:n?.socialMedias,className:o,iconSize:r})}function js({volumesInUsd:e,trades:t,traders:o,className:r}){return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col items-start justify-center gap-0.5",r),children:[jsxRuntime.jsxs("div",{className:"text-xs font-medium text-default-500",children:[jsxRuntime.jsx("span",{className:"text-foreground",children:e?utils.formatAmountUSDCompact(e):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:t!=null?utils.formatAmount(t):"--"}),jsxRuntime.jsx("span",{className:"px-1",children:"/"}),jsxRuntime.jsx("span",{children:o!=null?utils.formatAmount(o):"--"})]}),jsxRuntime.jsx("div",{className:"text-[10px] text-default-400",children:"24h Vol / Txs / Traders"})]})}function en(e,t){return R(e,t)}function tn({chain:e,address:t,className:o}){let{token:r}=en(e,t),n=r?.stats?.["24h"];return jsxRuntime.jsx(js,{volumesInUsd:n?.volumesInUsd,trades:n?.trades,traders:n?.traders,className:o})}function on({chain:e,address:t,className:o}){return jsxRuntime.jsx(Is,{className:o,price:jsxRuntime.jsx(Qs,{chain:e,address:t}),marketCap:jsxRuntime.jsx(_s,{chain:e,address:t}),volume:jsxRuntime.jsx(tn,{chain:e,address:t}),holdersCount:jsxRuntime.jsx(Ds,{chain:e,address:t}),socialMedia:jsxRuntime.jsx(Js,{chain:e,address:t})})}function YT({chain:e,address:t,actions:o,dataStrip:r,className:n,onCopyAddress:s}){let{token:i}=Hs(e,t);return jsxRuntime.jsx(As,{token:i,actions:o,dataStrip:r===void 0?jsxRuntime.jsx(on,{chain:e,address:t}):r,className:n,onCopyAddress:s})}var Wc=[{value:"holdingUsd",label:"Value"},{value:"lastActiveAt",label:"Last active"}];function nn({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$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:n,onChange:u=>s?.(u.target.checked)}),"Only Tracked"]})]}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:Wc.map(u=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(u.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",o===u.value?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground"),children:u.label},u.value))})]}),jsxRuntime.jsx("div",{className:"overflow-x-auto",children:jsxRuntime.jsxs("table",{className:"w-full min-w-[640px] table-fixed text-[12px]",children:[jsxRuntime.jsx("thead",{className:"text-default-400",children:jsxRuntime.jsxs("tr",{className:"border-b border-default-100",children:[jsxRuntime.jsx("th",{className:"w-[30%] px-3 py-2 text-left font-normal",children:"Wallet"}),jsxRuntime.jsx("th",{className:"w-[20%] px-3 py-2 text-left font-normal",children:"Tags"}),jsxRuntime.jsx("th",{className:"w-[15%] px-3 py-2 text-right font-normal",children:"Value"}),jsxRuntime.jsx("th",{className:"w-[10%] px-3 py-2 text-right font-normal",children:"%"}),jsxRuntime.jsx("th",{className:"w-[12%] px-3 py-2 text-right font-normal",children:"First held"}),jsxRuntime.jsx("th",{className:"w-[13%] px-3 py-2 text-right font-normal",children:"Last active"})]})}),jsxRuntime.jsxs("tbody",{children:[p.length===0&&!t&&jsxRuntime.jsx("tr",{children:jsxRuntime.jsx("td",{colSpan:6,className:"py-8 text-center text-default-400",children:"No holders"})}),p.map(u=>jsxRuntime.jsx(Bc,{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 Bc({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(At,{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:Ae(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 dn({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(N=>{N!==n&&(s(N),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(N=>i==null?[u]:N[N.length-1]?.endCursor===u.endCursor?N:[...N,u]);},[u,i]),react$1.useTokenSubscription({chain:e,address:t},()=>{});let k=react.useMemo(()=>a.flatMap(N=>N.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 hv({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}=dn({chain:e,address:t,limit:o,initialSortBy:r});return jsxRuntime.jsx(nn,{holders:m,isLoading:c,sortBy:p,onSortByChange:u,onlyTracked:a,onOnlyTrackedChange:d,wellKnownAddresses:s,hasMore:f,onLoadMore:g,className:i,renderAddress:l})}var qc=[{value:"timestamp",label:"Latest"},{value:"totalUsd",label:"Top USD"}],Qc=[{value:"all",label:"All"},{value:"buy",label:"Buys"},{value:"sell",label:"Sells"}],Gc=[{value:"all",label:"All"},{value:"dev",label:"DEV"},{value:"tracked",label:"TRACKED"},{value:"you",label:"YOU"}];function cn({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=Jc(e,i,a);return jsxRuntime.jsxs("div",{className:ui$1.cn("flex flex-col",k),children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 px-3 py-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[Qc.map(h=>jsxRuntime.jsx("button",{type:"button",onClick:()=>s?.(h.value),className:ui$1.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}),Gc.map(h=>{let N=i===h.value,_=h.value==="you"&&!a;return jsxRuntime.jsx("button",{type:"button",disabled:_,onClick:()=>l?.(h.value),className:ui$1.cn("rounded px-2 py-1 text-[11px] transition-colors",N?"bg-default-100 text-foreground":"text-default-400 hover:text-foreground",_&&"cursor-not-allowed opacity-50"),children:h.label},h.value)})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(Yc,{value:d,nativeSymbol:g,onChange:m}),jsxRuntime.jsx("div",{className:"flex items-center gap-1",children:qc.map(h=>jsxRuntime.jsx("button",{type:"button",onClick:()=>r(h.value),className:ui$1.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(jc,{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 Xc(e){return e.type==="buy"?e.to:e.type==="sell"?e.from:e.to}function Jc(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 Yc({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$1.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 Zc(e,t,o){if(!e)return "--";let r=Number(e)/Math.pow(10,t);return Number.isFinite(r)?`${utils.formatAmount(r)} ${o}`:"--"}function jc({activity:e,now:t,nativeDecimals:o,nativeSymbol:r,currency:n,onRowClick:s}){let i=Xc(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",s&&"cursor-pointer"),onClick:s?()=>s(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(br,{tags:e.traderTags,max:2})]})}),jsxRuntime.jsxs("td",{className:"px-3 py-2 text-right align-middle",children:[utils.formatAmount(i.amount)," ",i.symbol]}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children: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:Zc(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 un({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:N,isPending:_,isFetching:J}=react$1.useTokenActivitiesQuery(h);react.useEffect(()=>{N&&p(F=>d==null?[N]:F[F.length-1]?.endCursor===N.endCursor?F:[...F,N]);},[N,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 Be=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],Ee=!!(E?.hasNext&&E.endCursor),Ve=react.useCallback(()=>{!E?.endCursor||!E.hasNext||m(E.endCursor);},[E]);return {activities:Be,isLoading:_||J,sortBy:s,setSortBy:k,typeFilter:l,setTypeFilter:x,hasMore:Ee,loadMore:Ve}}function Dv({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:N,setTypeFilter:_,hasMore:J,loadMore:ne}=un({chain:e,address:t,limit:o,initialSortBy:r,initialTypeFilter:n});return jsxRuntime.jsx(cn,{activities:k,isLoading:x,sortBy:b,onSortByChange:h,typeFilter:N,onTypeFilterChange:_,traderFilter:p,onTraderFilterChange:u,youWalletAddress:l,currency:f,onCurrencyChange:g,hasMore:J,onLoadMore:ne,className:m,nativeDecimals:a,nativeSymbol:d,onRowClick:c})}function gn({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(Xe,{className:o,label:`Traders (${t})`,totalFormatted:utils.formatAmount(n),buysFormatted:utils.formatAmount(s),sellsFormatted:utils.formatAmount(i),totalValue:n,buysValue:s})}function xn(e,t){return R(e,t)}function Zv({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=xn(e,t);return jsxRuntime.jsx(gn,{stats:n?.stats,resolution:o,className:r})}function kn({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(Xe,{className:o,label:`Transactions (${t})`,totalFormatted:utils.formatAmount(n),buysFormatted:utils.formatAmount(s),sellsFormatted:utils.formatAmount(i),totalValue:n,buysValue:s})}function hn(e,t){return R(e,t)}function u0({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=hn(e,t);return jsxRuntime.jsx(kn,{stats:n?.stats,resolution:o,className:r})}function bn({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(Xe,{className:o,label:`Volume (${t})`,totalFormatted:utils.formatAmountUSDCompact(n),buysFormatted:utils.formatAmountUSDCompact(s),sellsFormatted:utils.formatAmountUSDCompact(i),totalValue:n,buysValue:s})}function yn(e,t){return R(e,t)}function P0({chain:e,address:t,resolution:o="24h",className:r}){let{token:n}=yn(e,t);return jsxRuntime.jsx(bn,{stats:n?.stats,resolution:o,className:r})}function Tn({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$1.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Security"}),jsxRuntime.jsx("span",{className:ui$1.cn("text-xs",e===void 0?"text-default-400":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(dm,{...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 dm({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$1.cn("text-xs",t===void 0?"text-default-400":n?"text-success-500":"text-danger-500"),children:s})]})}function vn(e,t){let{data:o,isLoading:r}=react$1.useTokenSecurityQuery({chain:e,address:t});return {security:o,isLoading:r}}function _0({chain:e,address:t,externalUrl:o,externalLabel:r,className:n}){let{security:s}=vn(e,t);return jsxRuntime.jsx(Tn,{security:s,externalUrl:o,externalLabel:r,className:n})}function Cn({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 wn(e,t){return R(e,t)}function oN({chain:e,address:t,className:o}){let{token:r}=wn(e,t);return jsxRuntime.jsx(Cn,{token:r,className:o})}function Rn({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$1.cn("flex w-full flex-col gap-3",r),children:[jsxRuntime.jsxs("div",{className:"flex items-baseline justify-between",children:[jsxRuntime.jsx("span",{className:"text-sm font-medium text-foreground",children:"Liquidity"}),t&&jsxRuntime.jsx("span",{className:"text-xs text-foreground",children:utils.formatAmountUSDCompact(t)})]}),(!e||e.length===0)&&jsxRuntime.jsx("div",{className:"py-4 text-center text-xs text-default-400",children:"No pools"}),e&&e.length>0&&jsxRuntime.jsxs("div",{className:"flex flex-col gap-2",children:[e.map((a,d)=>jsxRuntime.jsxs("div",{className:ui$1.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 An(e,t){return R(e,t)}function bN({chain:e,address:t,collapseAt:o,className:r,onPoolClick:n}){let{token:s}=An(e,t);return jsxRuntime.jsx(Rn,{liquidities:s?.liquidities,totalTvlInUsd:s?.marketData?.tvlInUsd,collapseAt:o,className:r,onPoolClick:n})}function Hn({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$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&&!r,d=jsxRuntime.jsx(ui$1.Chip,{startContent:i.logo?jsxRuntime.jsx(ui$1.Image,{src:i.logo,width:20,height:20,alt:i.name}):void 0,className:ui$1.cn("bg-default-100 text-xs",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:s,className:"rounded px-2 py-1 text-xs text-default-400 transition-colors hover:text-foreground",children:r?"Show less":"Show more"})})]})}function Mn(e){return {cexes:e}}function IN({cexes:e,collapseAt:t,className:o}){let{cexes:r}=Mn(e);return jsxRuntime.jsx(Hn,{cexes:r,collapseAt:t,className:o})}function Fn({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$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&&!n;return jsxRuntime.jsx(ui$1.Chip,{size:"sm",className:ui$1.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 Un(e,t){return R(e,t)}function GN({chain:e,address:t,collapseAt:o,className:r,onCategoryClick:n}){let{token:s}=Un(e,t);return jsxRuntime.jsx(Fn,{categories:s?.tags,collapseAt:o,className:r,onCategoryClick:n})}var On=["5m","1h","4h","24h"];function Dn({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$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 Wn({stats:e,resolutions:t,className:o}){return jsxRuntime.jsx("div",{className:ui$1.cn("grid h-full w-full grid-cols-4 items-center",o),children:t.map(r=>{let 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$1.cn("text-[13px] font-medium leading-none tabular-nums",l===void 0?"text-foreground":l?"text-bullish":"text-bearish"),children:d})]},r)})})}function Bn({chain:e,address:t}){let{data:o,isLoading:r}=react$1.useTokenStatsQuery({chain:e,address:t});return {stats:o,isLoading:r}}function cS({chain:e,address:t,baseResolution:o="5m",hoverResolutions:r=On,height:n=64,className:s}){let{stats:i}=Bn({chain:e,address:t});return jsxRuntime.jsx(uiScaffold.StatsFlipPanel,{className:s,height:n,base:jsxRuntime.jsx(Dn,{stats:i,resolution:o}),hover:jsxRuntime.jsx(Wn,{stats:i,resolutions:r})})}function En({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$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(Um,{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(Om,{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 Um({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$1.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 Om({position:e,currency:t,renderActions:o}){let{bought:r,sold:n,remaining:s,pnl:i}=react.useMemo(()=>Dm(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: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$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 Dm(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 $n({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 PS({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}=$n({chain:e,wallet:t,limit:o});return jsxRuntime.jsx(En,{className:i,positions:d,isLoading:m,hasMore:c,onLoadMore:p,currency:l,onCurrencyChange:a,showHidden:u,onShowHiddenChange:f,nativeSymbol:n,renderActions:s})}function Kn({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$1.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$1.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(zm,{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(qm,{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 zm({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$1.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 qm({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$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",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 Gm(e){return e instanceof Error&&e.code==="NotImplemented"}function Xm(e){return e==="active"?"active":"filled"}function Gn({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:Xm(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 N=!!h&&Gm(h),_=react.useMemo(()=>p.flatMap(E=>E.data),[p]),J=p[p.length-1],ne=!!(J?.hasNext&&J.endCursor),Be=react.useCallback(()=>{!J?.endCursor||!J.hasNext||c(J.endCursor);},[J]);return {orders:_,isLoading:!!t&&!N&&(x||b),unavailable:N,hasMore:ne,loadMore:Be,stateFilter:i,setStateFilter:f,onlyThisToken:a,setOnlyThisToken:d}}function qS({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:N,setOnlyThisToken:_}=Gn({chain:e,wallet:t,tokenAddress:o,limit:n,initialStateFilter:s});return jsxRuntime.jsx(Kn,{className:m,orders:u,isLoading:f,unavailable:g,hasMore:k,onLoadMore:x,stateFilter:b,onStateFilterChange:h,onlyThisToken:N,onOnlyThisTokenChange:_,tokenSymbol:r,currency:c,onCurrencyChange:p,nativeSymbol:l,onCancelAll:g?void 0:a,renderActions:d})}function Xn({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$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: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(tp,{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 tp({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(At,{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:Ae(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 Yn({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 mC({chain:e,address:t,limit:o,className:r,renderAddress:n}){let{traders:s,isLoading:i,hasMore:l,loadMore:a,onlyTracked:d,setOnlyTracked:m}=Yn({chain:e,address:t,limit:o});return jsxRuntime.jsx(Xn,{className:r,traders:s,isLoading:i,hasMore:l,onLoadMore:a,onlyTracked:d,onOnlyTrackedChange:m,renderAddress:n})}function jn({tokens:e,isLoading:t,unavailable:o,hasMore:r,onLoadMore:n,renderTokenLink:s,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(ip,{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 ip({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$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:r?utils.formatAmountUSDCompact(r):"--"}),jsxRuntime.jsx("td",{className:"px-3 py-2 text-right align-middle text-foreground",children:s?utils.formatAmountUSDCompact(s):"--"})]})}function ei({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$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(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 dp(e){return e instanceof Error&&e.code==="NotImplemented"}function si({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&&dp(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 LC({chain:e,creator:t,limit:o,showSummary:r=false,renderTokenLink:n,className:s}){let{tokens:i,isLoading:l,unavailable:a,hasMore:d,loadMore:m}=si({chain:e,creator:t,limit:o});return jsxRuntime.jsxs("div",{className:s,children:[jsxRuntime.jsx(jn,{tokens:i,isLoading:l,unavailable:a,hasMore:d,onLoadMore:m,renderTokenLink:n}),r&&!a?jsxRuntime.jsx(ei,{tokens:i}):null]})}function ai({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$1.cn("flex h-[48px] w-full flex-row items-center gap-4 overflow-x-auto px-3 text-[12px]",l),children:[jsxRuntime.jsx(rt,{label:"Price",value:a?utils.formatPriceUSD(a):"--"}),jsxRuntime.jsx(rt,{label:"Liquidity",value:d?utils.formatAmountUSDCompact(d):"--"}),jsxRuntime.jsx(rt,{label:"Supply",value:m?utils.formatAmount(m):"--"}),r?jsxRuntime.jsx(rt,{label:"Fees Paid",value:utils.formatAmountUSDCompact(r)}):null,t?jsxRuntime.jsx(rt,{label:"ATH",value:utils.formatAmountUSDCompact(t),title:o?`All-time high at ${o.toLocaleDateString()}`:void 0}):null,n!==void 0?jsxRuntime.jsx(rt,{label:"Rank",value:`#${n}`}):null,jsxRuntime.jsx("div",{className:"flex-1"}),s?jsxRuntime.jsx("button",{type:"button",onClick:s,"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 rt({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 di({chain:e,address:t}){return R(e,t)}function _C({chain:e,address:t,athInUsd:o,athAt:r,globalFeesPaidInUsd:n,rank:s,pinned:i,onTogglePin:l,className:a}){let{token:d}=di({chain:e,address:t});return jsxRuntime.jsx(ai,{className:a,token:d,athInUsd:o,athAt:r,globalFeesPaidInUsd:n,rank:s,pinned:i,onTogglePin:l})}function ci({tokens:e,isLoading:t,unavailable:o,onTokenClick:r,className:n}){return o?jsxRuntime.jsx("div",{className:ui$1.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$1.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$1.cn("flex flex-col",n),children:[e.map(s=>jsxRuntime.jsxs("li",{className:ui$1.cn("flex cursor-pointer items-center gap-2 border-b border-default-50 px-3 py-2 last:border-0 hover:bg-default-50/60",!r&&"cursor-default"),onClick:r?()=>r(s):void 0,children:[jsxRuntime.jsx(ui$1.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 mi({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 sw({chain:e,address:t,keyword:o,limit:r,onTokenClick:n,className:s}){let{tokens:i,isLoading:l,unavailable:a}=mi({chain:e,address:t,keyword:o,limit:r});return jsxRuntime.jsx(ci,{className:s,tokens:i,isLoading:l,unavailable:a,onTokenClick:n})}function pi({tokens:e=[],unavailable:t=true,onTokenClick:o,className:r}){return t?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"Image-similarity search is coming soon."}):e.length===0?jsxRuntime.jsx("div",{className:ui$1.cn("flex items-center justify-center p-4 text-center text-[11px] text-default-400",r),children:"No reused-image tokens found."}):jsxRuntime.jsx("div",{className:ui$1.cn("flex flex-row flex-wrap gap-2 p-3",r),children:e.map(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$1.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 ui(e){return {tokens:[],isLoading:false,unavailable:true}}function kw({chain:e,address:t,onTokenClick:o,className:r}){let{tokens:n,unavailable:s}=ui();return jsxRuntime.jsx(pi,{className:r,tokens:n,unavailable:s,onTokenClick:o})}function hi({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$1.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$1.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$1.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 Si({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$1.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-center",children:[jsxRuntime.jsx("h3",{className:"text-xs text-neutral",children:n("tokens.filters.protocols.title")}),jsxRuntime.jsx(ui$1.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=Le(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":!s.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:r}){let{t:n}=i18n.useTranslation(),[s,i]=react.useState(o?Jo(o).min:NaN),[l,a]=react.useState(o?Jo(o).max:NaN);react.useEffect(()=>{if(o===void 0)i(NaN),a(NaN);else {let{min:c,max:p}=Jo(o);i(c),a(p);}},[o]);let d=react.useCallback(c=>{i(c),r?.(Pi(t,c,l));},[t,r,l]),m=react.useCallback(c=>{a(c),r?.(Pi(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$1.StyledNumberInput,{value:s,onValueChange:d,variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.stats.min"),"aria-label":`${e} min`}),jsxRuntime.jsx(ui$1.StyledNumberInput,{value:l,onValueChange:m,variant:"bordered",radius:"lg",size:"sm",placeholder:n("tokens.filters.stats.max"),"aria-label":`${e} max`})]})]})}function Jo(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 Pi(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 Ai({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$1.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 Hi({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$1.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 Di({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$1.cn("flex flex-col gap-3 px-4",r),children:[jsxRuntime.jsxs(ui$1.StyledLightTabs,{color:"default",radius:"full",size:"sm",selectedKey:s,onSelectionChange:i,children:[jsxRuntime.jsx(ui$1.Tab,{title:m===0?n("tokens.filters.stats.audits"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:m,shape:"circle",children:n("tokens.filters.stats.audits")})},"audits"),jsxRuntime.jsx(ui$1.Tab,{title:c===0?n("tokens.filters.stats.metrics"):jsxRuntime.jsx(ui$1.StyledBadge,{color:"primary",size:"sm",content:c,shape:"circle",children:n("tokens.filters.stats.metrics")})},"metrics")]}),jsxRuntime.jsx(Ai,{values:l,onValuesChange:d,className:ui$1.cn({hidden:s!=="audits"})}),jsxRuntime.jsx(Hi,{values:l,onValuesChange:d,resolution:e,className:ui$1.cn({hidden:s!=="metrics"})})]})}function lo({protocols:e,resolution:t,filters:o,onFiltersChange:r,className:n}){let[s,i]=react.useState(Wi(o?.filters,e));react.useEffect(()=>{i(Wi(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$1.cn("flex flex-col gap-4",n),children:[e&&e.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Si,{protocols:e,selectedProtocols:s,onSelectedProtocolsChange:u}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}})]}),jsxRuntime.jsx(hi,{keywords:l,excludeKeywords:d,onKeywordsChange:f,onExcludeKeywordsChange:g}),jsxRuntime.jsx("div",{style:{height:1,background:"rgba(39,39,42,1)"}}),jsxRuntime.jsx(Di,{resolution:t,values:c,onValuesChange:k})]})}function Wi(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 _i({protocols:e,resolution:t,filters:o,onFiltersChange:r}){let{t:n}=i18n.useTranslation(),{isOpen:s,onOpen:i,onClose:l,onOpenChange:a}=ui$1.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$1.FilterIcon,{width:16,height:16,className:"text-zinc-400"}),!u&&jsxRuntime.jsx("span",{style:{position:"absolute",top:-2,right:-2,width:8,height:8,borderRadius:4,background:"#c7ff2e"}})]}),jsxRuntime.jsx(ui$1.StyledModal,{isOpen:s,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:n("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(lo,{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:n("common.reset")}),jsxRuntime.jsx(ui$1.Button,{color:"primary",size:"sm",radius:"full",onPress:p,children:n("common.apply")})]})})]})})]})}var fu={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},gu={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"},xu={height:1,background:"rgba(39,39,42,1)",margin:0};function qi({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:fu,onMouseEnter:u=>{u.currentTarget.style.background="rgba(39,39,42,1)";},onMouseLeave:u=>{u.currentTarget.style.background="rgba(39,39,42,0.6)";},onClick:()=>i(u=>!u),children:[jsxRuntime.jsx(ui$1.FilterIcon,{width:16,height:16,className:"flex-none"}),jsxRuntime.jsx("span",{className:"hidden sm:block",children:n("tokens.listHeader.filter")}),jsxRuntime.jsx(ku,{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:{...gu,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(lo,{protocols:e,resolution:t,filters:a,onFiltersChange:d})})}),jsxRuntime.jsx("div",{style:xu}),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:n("common.reset")}),jsxRuntime.jsx(ui$1.Button,{variant:"solid",size:"sm",color:"primary",radius:"full",onPress:c,children:n("common.apply")})]})]})]})}function ku({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 dP({popoverPlacement:e="bottom-end",...t}){let{isMobile:o}=ui$1.useScreen();return o?jsxRuntime.jsx(_i,{...t}):jsxRuntime.jsx(qi,{placement:e,...t})}function Xi({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$1.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$1.Tab,{title:r(`common.resolution.${s}`)},s))})}var Au={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},Hu={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 Yi({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:Au,onClick:()=>s(a=>!a),children:[jsxRuntime.jsx("span",{children:e?r(`common.resolution.${e}`):"\u2014"}),jsxRuntime.jsx(ui$1.ChevronDownIcon,{width:14,height:14,className:"text-zinc-500",style:{transition:"transform 0.15s",transform:n?"rotate(180deg)":void 0}})]}),n&&jsxRuntime.jsx("div",{style:Hu,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:r(`common.resolution.${a}`)},a))})]})}function wP(e){let{isMobile:t}=ui$1.useScreen();return t?jsxRuntime.jsx(Yi,{...e}):jsxRuntime.jsx(Xi,{...e})}function ea({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$1.StyledTooltip,{content:t("tokens.bluechip.explained"),children:jsxRuntime.jsxs("div",{className:"flex items-center gap-2.5",children:[r&&jsxRuntime.jsx(ui$1.HorsePowerHighIcon,{}),n&&jsxRuntime.jsx(ui$1.HorsePowerLowIcon,{}),!r&&!n&&jsxRuntime.jsx(ui$1.HorsePowerIcon,{}),jsxRuntime.jsx("span",{className:ui$1.cn(r&&"text-bullish",!r&&!n&&"text-bearish",o===void 0&&"text-neutral"),children:utils.formatPercent(o)})]})})}function ta({token:e}){let t=ui$1.useCopyToClipboard(),{t:o}=i18n.useTranslation(),r=react.useCallback(s=>{s.preventDefault(),s.stopPropagation(),t(e.address,()=>ui$1.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$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:r,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(n)}),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 oa({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$1.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$1.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$1.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$1.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$1.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$1.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$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(W,{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 ra({token:e}){let t=react.useMemo(()=>e.marketData?.tvlInUsd,[e.marketData?.tvlInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function sa({token:e}){let t=react.useMemo(()=>e.marketData?.marketCapInUsd,[e.marketData?.marketCapInUsd]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:utils.formatAmountUSD(t)})}function aa({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$1.cn("inline-flex gap-1 items-center text-xs",s?"text-bullish":"text-bearish"),children:[s?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:10,height:10}):jsxRuntime.jsx(ui$1.TriangleDownIcon,{width:10,height:10}),jsxRuntime.jsx("span",{children:utils.formatPercent(n)})]})]})}function da({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 ma({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 ua({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 Sf=`
|
|
22
22
|
@keyframes tklShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
|
|
23
|
-
`,kf={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 {...kf,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:xf}),Array.from({length:aa}).map((r,n)=>jsxRuntime.jsx(hf,{index:n,rowHeight:e,hasActions:t,isMobile:o,isLast:n===aa-1},n))]})}function hf({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 it({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(h=>b=>{b.preventDefault(),b.stopPropagation(),n?.(h);},[n]),[g,k]=react.useState(s??{});react.useEffect(()=>{k(s??{});},[s]);let x=react.useCallback(h=>b=>{let N={[h]:b};k(N),i?.(N);},[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:h=>jsxRuntime.jsx(ui.TableRow,{onClick:n?f(h):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:h,resolution:t})},"token"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(ea,{token:h,resolution:t})},"price"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Yi,{token:h,resolution:t})},"marketCap"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Ji,{token:h,resolution:t})},"liquidity"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(ia,{token:h,resolution:t})},"volumes"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(sa,{token:h,resolution:t})},"trades"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(oa,{token:h,resolution:t})},"traders"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Qi,{token:h,resolution:t})},"bluechip"),jsxRuntime.jsx(ui.TableCell,{children:jsxRuntime.jsx(Xi,{token:h,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:h,resolution:t})})},"actions"):void 0].filter(Boolean)},h.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]),h=react.useMemo(()=>p?.buyVolumesInUsd,[p?.buyVolumesInUsd]),b=react.useMemo(()=>p?.sellVolumesInUsd,[p?.sellVolumesInUsd]),N=react.useMemo(()=>p?.trades,[p?.trades]),$=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]),Be=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),E=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),Ee=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Ve=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($)})]}),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(h)}),jsxRuntime.jsx("span",{className:"text-neutral/50 mx-0.5",children:"/"}),jsxRuntime.jsx("span",{className:"text-bearish",children:utils.formatAmountUSDCompact(b)})]})]}),jsxRuntime.jsxs("div",{className:"flex items-baseline gap-1",children:[jsxRuntime.jsx("span",{className:"text-xs text-neutral",children:"TX"}),jsxRuntime.jsx("span",{className:"text-xs text-foreground/80",children:utils.formatAmount(N)})]})]})]}),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:Be,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:Ee,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:Ve,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 og=154,fa=10;function rg({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:og,overscanCount:5,rowComponent:rg,rowProps:d})})}var lg=80;function dg(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,lg)}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(qe(f,m))),l(false));},[m]);let p=react.useCallback(f=>{d(g=>{let k=[...g],x=false;for(let h of f){let b=k.findIndex(N=>N.address===h.address);b>=0?(x=true,k[b]=z(k[b],h)):(x=true,k.push(dg(h)));}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(it,{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=>qe(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>Te(g,f));},[]);react$1.useStockTokensSubscription({chain:e},p),ye({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(it,{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(it,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}var Hg=15e3;function Mg({chain:e,addresses:t,pollMs:o=Hg}){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?z(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 h=z(x,k);h!==x&&(g=g===f?{...f}:g,g[k.address]=h);}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=At;exports.HoldingRatioChip=W;exports.NewTokenListWidget=h2;exports.PulseFinalStretchListWidget=Tk;exports.PulseList=ze;exports.PulseListHeader=ur;exports.PulseListItem=Rr;exports.PulseListItemSkeleton=fr;exports.PulseMigratedListWidget=lk;exports.PulseNewListWidget=Qx;exports.SEARCH_MODAL_ID=So;exports.SearchHistoryUI=Zr;exports.SearchHistoryWidget=jr;exports.SearchInputUI=es;exports.SearchModal=nb;exports.SearchResultItemUI=Dt;exports.SearchResultListHeader=Wt;exports.SearchResultListSkeleton=Et;exports.SearchResultListWidget=ls;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=yN;exports.TokenChartBanner=ei;exports.TokenChartBannerWidget=AC;exports.TokenDetailHeader=Ns;exports.TokenDetailHeaderWidget=By;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=it;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=Gr;exports.usePulseMigratedListScript=$r;exports.usePulseNewListScript=Dr;exports.useSearchHistory=Ot;exports.useSearchResultListScript=is;exports.useSearchScript=gs;exports.useStockTokensScript=Na;exports.useTokenAboutScript=bn;exports.useTokenActivitiesListScript=nn;exports.useTokenBasicInfoScript=sT;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=Mg;exports.useTrendingTokensScript=_t;//# sourceMappingURL=index.js.map
|
|
23
|
+
`,Cf={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 {...Cf,animationDelay:`${e}ms`,width:t,height:o,...r}}var fa=10;function ga({rowHeight:e,hasActions:t,isMobile:o}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("style",{children:Sf}),Array.from({length:fa}).map((r,n)=>jsxRuntime.jsx(wf,{index:n,rowHeight:e,hasActions:t,isMobile:o,isLast:n===fa-1},n))]})}function wf({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 it({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$1.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 N={[b]:h};k(N),i?.(N);},[i]);return jsxRuntime.jsxs(ui$1.StyledTable,{isHeaderSticky:true,isVirtualized:true,radius:"lg",className:ui$1.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$1.TableHeader,{children:[jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("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:u("tokens.listHeader.token")},"token"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.price"),width:128,children:jsxRuntime.jsxs("div",{className:"flex items-center gap-1",children:[jsxRuntime.jsx(ui$1.Sortable,{sort:g.price,onSortChange:x("price"),children:u("tokens.listHeader.price")}),jsxRuntime.jsx("span",{children:"/"}),jsxRuntime.jsx(ui$1.Sortable,{sort:g[`priceChange${t}`],onSortChange:x(`priceChange${t}`),children:u("tokens.listHeader.priceChange",{resolution:t})})]})},"price"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.marketCap"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:g.marketCap,onSortChange:x("marketCap"),children:u("tokens.listHeader.marketCap")})},"marketCap"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.liquidity"),width:106,children:jsxRuntime.jsx(ui$1.Sortable,{sort:g.tvl,onSortChange:x("tvl"),children:u("tokens.listHeader.liquidity")})},"liquidity"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.volumes",{resolution:t}),width:138,children:jsxRuntime.jsx(ui$1.Sortable,{sort:g[`volumes${t}`],onSortChange:x(`volumes${t}`),children:u("tokens.listHeader.volumes",{resolution:t})})},"volumes"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.txs",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:g[`trades${t}`],onSortChange:x(`trades${t}`),children:u("tokens.listHeader.txs",{resolution:t})})},"txs"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.traders",{resolution:t}),width:126,children:jsxRuntime.jsx(ui$1.Sortable,{sort:g[`traders${t}`],onSortChange:x(`traders${t}`),children:u("tokens.listHeader.traders",{resolution:t})})},"traders"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.bluechip"),width:128,children:u("tokens.listHeader.bluechip")},"bluechip"),jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("tokens.listHeader.tokenInfo"),width:308,children:u("tokens.listHeader.tokenInfo")},"tokenInfo"),r?jsxRuntime.jsx(ui$1.TableColumn,{textValue:u("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:u("tokens.listHeader.actions")},"actions"):void 0].filter(Boolean)}),jsxRuntime.jsx(ui$1.TableBody,{items:e,isLoading:p,loadingContent:jsxRuntime.jsx(ga,{rowHeight:c?d:a,hasActions:!!r,isMobile:c}),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:u("common.empty")})]}),children:b=>jsxRuntime.jsx(ui$1.TableRow,{onClick:n?f(b):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(ta,{token:b,resolution:t})},"token"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(aa,{token:b,resolution:t})},"price"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(sa,{token:b,resolution:t})},"marketCap"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ra,{token:b,resolution:t})},"liquidity"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ua,{token:b,resolution:t})},"volumes"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ma,{token:b,resolution:t})},"trades"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(da,{token:b,resolution:t})},"traders"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(ea,{token:b,resolution:t})},"bluechip"),jsxRuntime.jsx(ui$1.TableCell,{children:jsxRuntime.jsx(oa,{token:b,resolution:t})},"tokenInfo"),r?jsxRuntime.jsx(ui$1.TableCell,{className:ui$1.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$1.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 ba({token:e,resolution:t,renderAction:o,isLast:r=false,onSelectToken:n,className:s}){let{t:i}=i18n.useTranslation(),l=ui$1.useCopyToClipboard(),a=hooks.useTickAge(e.createdAt),d=react.useCallback(()=>{n?.(e);},[n,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],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]),N=react.useMemo(()=>p?.trades,[p?.trades]),_=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]),Be=react.useMemo(()=>new utils.SafeBigNumber(c?.devHoldingsRatio).gte(.1),[c?.devHoldingsRatio]),E=react.useMemo(()=>new utils.SafeBigNumber(c?.sniperHoldingsRatio).gte(.1),[c?.sniperHoldingsRatio]),Ee=react.useMemo(()=>new utils.SafeBigNumber(c?.insiderHoldingsRatio).gte(.1),[c?.insiderHoldingsRatio]),Ve=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",!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$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(_)})]}),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(u)}),jsxRuntime.jsxs("span",{className:ui$1.cn("inline-flex items-center gap-0.5 text-[10px] leading-none",g?"text-bullish":"text-bearish"),children:[g?jsxRuntime.jsx(ui$1.TriangleUpIcon,{width:8,height:8}):jsxRuntime.jsx(ui$1.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(N)})]})]})]}),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(W,{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(W,{icon:jsxRuntime.jsx(ui$1.CookIcon,{width:12,height:12}),value:utils.formatPercent(c?.devHoldingsRatio),tooltip:i("tokens.tokenInfo.devHoldingsRatio"),warning:Be,disable:!c?.devHoldingsRatio||c?.devHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui$1.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$1.RatIcon,{width:12,height:12}),value:utils.formatPercent(c?.insiderHoldingsRatio),tooltip:i("tokens.tokenInfo.insiderHoldingsRatio"),warning:Ee,disable:!c?.insiderHoldingsRatio||c?.insiderHoldingsRatio==="0"}),jsxRuntime.jsx(W,{icon:jsxRuntime.jsx(ui$1.BundlesIcon,{width:12,height:12}),value:utils.formatPercent(c?.bundleHoldingsRatio),tooltip:i("tokens.tokenInfo.bundleHoldingsRatio"),warning:Ve,disable:!c?.bundleHoldingsRatio||c?.bundleHoldingsRatio==="0"})]})}),o&&jsxRuntime.jsx("div",{className:"flex-none relative",onClick:$=>$.stopPropagation(),children:o(e)})]})]})}function ya({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 cg=154,Ta=10;function mg({index:e,style:t,tokens:o,skeletonCount:r,resolution:n,renderAction:s,onSelectToken:i}){return o?jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(ba,{token:o[e],resolution:n,isLast:e===o.length-1,renderAction:s,onSelectToken:i})}):jsxRuntime.jsx("div",{style:t,children:jsxRuntime.jsx(ya,{isLast:e===r-1})})}function h2({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:Ta,d=react.useMemo(()=>({tokens:l,skeletonCount:Ta,resolution:t,renderAction:n,onSelectToken:s}),[l,t,n,s]);return jsxRuntime.jsx("div",{className:ui$1.cn("w-full h-full overflow-hidden border rounded-lg",i),style:{background:"rgba(24,24,27,0.4)",borderColor:"rgba(39,39,42,0.6)"},children:jsxRuntime.jsx(reactWindow.List,{className:"h-full w-full",style:{height:r},rowCount:a,rowHeight:cg,overscanCount:5,rowComponent:mg,rowProps:d})})}var xg=80;function kg(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 Ca(e){return e.sort((t,o)=>{let r=t.createdAt?.getTime()??0;return (o.createdAt?.getTime()??0)-r}),e.slice(0,xg)}function wa({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=>Ca(qe(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(N=>N.address===b.address);h>=0?(x=true,k[h]=z(k[h],b)):(x=true,k.push(kg(b)));}return x?Ca(k):g});},[]);react$1.useNewTokensSubscription({chain:e},p);let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}function A2({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}=wa({chain:e,resolution:t,options:c});return jsxRuntime.jsx(it,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}function Aa({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=>qe(f,m)),l(false));},[m]);let p=react.useCallback(f=>{d(g=>ye(g,f));},[]);react$1.useStockTokensSubscription({chain:e},p),Te({chain:e,tokens:a,onUpdate:p});let u=react.useMemo(()=>!!(c||i),[c,i]);return {tokens:a,isLoading:u}}function $2({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}=Aa({chain:e,resolution:t,options:c});return jsxRuntime.jsx(it,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}function Y2({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(it,{tokens:p,isLoading:u,resolution:t,height:s,itemHeight:i,itemHeightMobile:l,ActionsComponent:r,onSelectToken:n,sortDirections:d,onSortChange:m,className:a})}var Bg=15e3;function Eg({chain:e,addresses:t,pollMs:o=Bg}){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?z(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=z(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=On;exports.HolderTagBadge=Ea;exports.HolderTagBadgeList=At;exports.HoldingRatioChip=W;exports.NewTokenListWidget=A2;exports.PulseFinalStretchListWidget=Mk;exports.PulseList=ze;exports.PulseListHeader=fr;exports.PulseListItem=Ar;exports.PulseListItemSkeleton=gr;exports.PulseMigratedListWidget=yk;exports.PulseNewListWidget=nk;exports.SEARCH_MODAL_ID=Co;exports.SearchHistoryUI=ns;exports.SearchHistoryWidget=is;exports.SearchInputUI=as;exports.SearchModal=kb;exports.SearchResultItemUI=Dt;exports.SearchResultListHeader=Wt;exports.SearchResultListSkeleton=Et;exports.SearchResultListWidget=gs;exports.SearchTokensButton=wb;exports.SearchWidget=Ss;exports.StockTokenListWidget=$2;exports.TRADER_TAG_META=ho;exports.TokenAbout=Cn;exports.TokenAboutWidget=oN;exports.TokenActivitiesList=cn;exports.TokenActivitiesListWidget=Dv;exports.TokenAvatar=de;exports.TokenBasicInfo=Is;exports.TokenBasicInfoWidget=on;exports.TokenCategories=Fn;exports.TokenCategoriesWidget=GN;exports.TokenCexListing=Hn;exports.TokenCexListingWidget=IN;exports.TokenChartBanner=ai;exports.TokenChartBannerWidget=_C;exports.TokenDetailHeader=As;exports.TokenDetailHeaderWidget=YT;exports.TokenDevTokensList=jn;exports.TokenDevTokensListWidget=LC;exports.TokenDevTokensSummary=ei;exports.TokenHoldersCount=Us;exports.TokenHoldersCountWidget=Ds;exports.TokenHoldersList=nn;exports.TokenHoldersListWidget=hv;exports.TokenLiquidities=Rn;exports.TokenLiquiditiesWidget=bN;exports.TokenList=it;exports.TokenListFilter=lo;exports.TokenListFilterModal=_i;exports.TokenListFilterPopover=qi;exports.TokenListFilterWidget=dP;exports.TokenListResolutionSelectorDesktop=Xi;exports.TokenListResolutionSelectorMobile=Yi;exports.TokenListResolutionSelectorWidget=wP;exports.TokenMarketCap=Es;exports.TokenMarketCapWidget=_s;exports.TokenOrdersList=Kn;exports.TokenOrdersListWidget=qS;exports.TokenPositionsList=En;exports.TokenPositionsListWidget=PS;exports.TokenPrice=zs;exports.TokenPriceWidget=Qs;exports.TokenReusedImageList=pi;exports.TokenReusedImageListWidget=kw;exports.TokenSecurity=Tn;exports.TokenSecurityWidget=_0;exports.TokenSimilarTokens=ci;exports.TokenSimilarTokensWidget=sw;exports.TokenSocialMedia=Gs;exports.TokenSocialMediaWidget=Js;exports.TokenStatsFlipBase=Dn;exports.TokenStatsFlipHover=Wn;exports.TokenStatsFlipWidget=cS;exports.TokenTopTradersList=Xn;exports.TokenTopTradersListWidget=mC;exports.TokenTradersOverview=gn;exports.TokenTradersOverviewWidget=Zv;exports.TokenTransactionsOverview=kn;exports.TokenTransactionsOverviewWidget=u0;exports.TokenVolume=js;exports.TokenVolumeWidget=tn;exports.TokenVolumesOverview=bn;exports.TokenVolumesOverviewWidget=P0;exports.TraderTagBadge=Ba;exports.TraderTagBadgeList=br;exports.TrendingTokenCard=ba;exports.TrendingTokenCardList=h2;exports.TrendingTokenCardSkeleton=ya;exports.TrendingTokenListWidget=Y2;exports.useNewTokensScript=wa;exports.usePulseFinalStretchListScript=ts;exports.usePulseMigratedListScript=Jr;exports.usePulseNewListScript=Kr;exports.useSearchHistory=Ot;exports.useSearchResultListScript=us;exports.useSearchScript=vs;exports.useStockTokensScript=Aa;exports.useTokenAboutScript=wn;exports.useTokenActivitiesListScript=un;exports.useTokenBasicInfoScript=xy;exports.useTokenCategoriesScript=Un;exports.useTokenCexListingScript=Mn;exports.useTokenChartBannerScript=di;exports.useTokenDetailHeaderScript=Hs;exports.useTokenDevTokensListScript=si;exports.useTokenHoldersCountScript=Os;exports.useTokenHoldersListScript=dn;exports.useTokenLiquiditiesScript=An;exports.useTokenMarketCapScript=Vs;exports.useTokenOrdersListScript=Gn;exports.useTokenPositionsListScript=$n;exports.useTokenPriceScript=qs;exports.useTokenReusedImageListScript=ui;exports.useTokenSecurityScript=vn;exports.useTokenSimilarTokensScript=mi;exports.useTokenSocialMediaScript=Xs;exports.useTokenStatsFlipScript=Bn;exports.useTokenTopTradersListScript=Yn;exports.useTokenTradersOverviewScript=xn;exports.useTokenTransactionsOverviewScript=hn;exports.useTokenVolumeScript=en;exports.useTokenVolumesOverviewScript=yn;exports.useTokens=Eg;exports.useTrendingTokensScript=_t;//# sourceMappingURL=index.js.map
|
|
24
24
|
//# sourceMappingURL=index.js.map
|